body #main_menu {
  display: none;
}

body .mobile__button {
  display: block;
}

.transparentback {
  background-color: transparent !important;
}

#pageWrap {
  /*visibility:hidden;*/
  margin-top: 0;
  z-index: 11;
  position: fixed;
  overflow-y: scroll;
  top: 120px;
  right: 0;
  bottom: 0;
  left: 0;
}

#pageWrap #pageWrapClose {
  position: absolute;
  width: 100%;
  height: calc(100% + 120px);
  top: -120px;
}

@font-face {
  font-family: 'lektonregular';
  src: url("../font/lekton-regular-webfont.woff2") format("woff2"), url("../font/lekton-regular-webfont.woff") format("woff");
  font-weight: normal;
  font-style: normal;
}

::-webkit-scrollbar {
  width: 0px;
  /* remove scrollbar space */
  background: transparent;
  /* optional: just make scrollbar invisible */
}

.social_media__item, .social_media--facebook, .social_media--twitter, .social_media--youtube, .social_media--instagram {
  width: 34px;
  height: 34px;
  float: left;
  padding-right: 5px;
  cursor: pointer;
  transition: all 0.2s linear;
  transform: translateZ(0);
}

.social_media__item a, .social_media--facebook a, .social_media--twitter a, .social_media--youtube a, .social_media--instagram a {
  display: block;
  width: 34px;
  height: 34px;
}

.social_media--facebook {
  background: url("../graphics/social/facebook.png") no-repeat;
}

.social_media--facebook:hover {
  background: url("../graphics/social/facebook-rollover.png") no-repeat;
}

.social_media--twitter {
  background: url("../graphics/social/twitter.png") no-repeat;
}

.social_media--twitter:hover {
  background: url("../graphics/social/twitter-rollover.png") no-repeat;
}

.social_media--youtube {
  background: url("../graphics/social/youtube.png") no-repeat;
}

.social_media--youtube:hover {
  background: url("../graphics/social/youtube-rollover.png") no-repeat;
}

.social_media--instagram {
  background: url("../graphics/social/instagram.png") no-repeat;
}

.social_media--instagram:hover {
  background: url("../graphics/social/instagram-rollover.png") no-repeat;
}

.ie--object-fit {
  background-size: cover;
  background-position: center center;
  transition: all 300ms ease-out;
}

.ie--object-fit img {
  opacity: 0;
}

.lang-float-right-init {
  float: right;
}

.lang-float {
  float: left;
}

.assembly_text_canvas {
  display: none;
}

body[lang="ar"] .lang-float-right-init {
  float: left;
}

body[lang="ar"] .lang-float {
  float: right;
}

body {
  margin: 0;
  padding: 0;
  width: 100%;
  height: 100%;
  font-family: 'lektonregular', sans-serif;
  font-size: 15px;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

body:not(.mce-content-body) {
  background: #333;
}

body.ar .language--text {
  text-align: right;
}

body.ar p {
  text-align: right;
}

.content_container, .widget--copy .widget__detail, .widget--buddy .widget__detail, .widget--summary .widget__detail, .widget--summary.widget--summary--list-image .widget__item .col--container, .widget--contact .widget__detail, .page--gallery .gallery__other, .filters, #header .header__menu {
  width: 90%;
  margin: 0 auto;
}

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

a {
  font-weight: 700;
  color: black;
  text-decoration: none;
}

a[href^="mailto"]:hover {
  color: #b2b2b2;
}

.background--grey {
  background: #f6f6f6;
}

.background--white {
  background: #f7f7f7;
}

.background--dark_grey {
  background: #f2f2f2;
}

img {
  display: block;
}

.audio--play {
  position: relative;
}

.audio--play:after {
  content: '';
  display: block;
  position: absolute;
  width: 12px;
  height: 15px;
  right: -24px;
  top: 4px;
}

.audio--play.play:after {
  background: url(../graphics/icon--play.png) no-repeat center center;
}

.audio--play.pause:after {
  background: url(../graphics/icon--pause.png) no-repeat center center;
}

.owl-item {
  float: left;
}

.owl-dots {
  display: none;
  width: 100%;
  position: absolute;
  bottom: -63px;
  text-align: center;
}

.owl-dots .owl-dot {
  width: 15px;
  height: 15px;
  background: #222221;
  border-radius: 50%;
  display: inline-block;
  margin-left: 7px;
  border: 1px solid transparent;
  cursor: pointer;
}

.owl-dots .owl-dot.active {
  background: #b2b2b2;
}

.logo, #header .header__menu .header__logo, #footer .footer__logo {
  position: relative;
  float: left;
  top: 15px;
  width: 147px;
  height: 47px;
  background: url(../graphics/lwf-logo-black.png) no-repeat;
  background-size: 147px 47px;
  overflow: hidden;
  text-indent: -147px;
}

.button, .button--white, .button--black {
  margin-top: 5px;
  display: inline-block;
  position: relative;
}

.button a, .button--white a, .button--black a {
  display: block;
  font-weight: bold;
  padding: 10px 30px 8px 15px;
  transition: all 0.3s linear;
  transform: translateZ(0);
}

.button a:after, .button--white a:after, .button--black a:after {
  content: "\f105";
  font-family: FontAwesome;
  font-size: 1.4rem;
  display: block;
  position: absolute;
  right: 10px;
  top: 9px;
  width: 12px;
  height: 16px;
}

.button--white.hover a {
  color: white;
  background: black;
}

.button--white a {
  color: black;
  background: white;
}

.button--white a:hover {
  color: white;
  background: black;
}

.button--black a {
  font-size: initial;
  color: white;
  background: black;
}

.button--black a:hover {
  color: black;
  background: white;
}

.widget--gallery {
  width: 90%;
  margin: 0 auto 40px auto;
  position: relative;
}

@media (max-width: 768px) {
  .widget--gallery {
    margin: 0 auto 0px auto;
  }
}

.widget--gallery .widget__gallery {
  width: 100%;
  margin: auto;
  max-height: 880px;
  overflow: visible;
}

.widget--gallery .widget__gallery.widget--active .widget__image {
  opacity: 1;
}

.widget--gallery .widget__image {
  position: relative;
  opacity: 0;
  transition: all 0.6s linear;
  transform: translateZ(0);
  overflow: hidden;
}

.widget--gallery .widget__image img {
  display: block;
  min-width: 100%;
  min-height: 300px;
  max-height: 880px;
  object-fit: cover;
}

@media (max-width: 600px) {
  .widget--gallery .widget__image img {
    min-height: unset;
    max-height: unset;
  }
}

.widget--gallery .widget__image .widget__caption {
  width: 80%;
  height: 100%;
  max-width: 1015px;
  margin: 0 auto;
  position: relative;
}

@media screen and (max-width: 768px) {
  .widget--gallery .widget__image .widget__caption {
    width: 100%;
  }
}

.widget--gallery .widget__image .widget__caption > div {
  position: absolute;
  bottom: 75px;
  max-width: 60%;
}

.widget--gallery .widget__image .widget__caption > div span.s1 {
  font-size: 2rem;
}

.widget--gallery .widget__image .widget__caption > div p {
  font-size: 3rem;
  color: white;
  font-weight: 700;
  margin-bottom: 70px;
  line-height: 3.5rem;
  opacity: 0.4;
  transition: all 0.3s linear;
  transform: translateZ(0);
}

.widget--gallery .widget__image .widget__caption > div p a {
  color: white;
  transition: all 0.3s linear;
  transform: translateZ(0);
}

.widget--gallery .widget__image .widget__caption > div p:hover {
  opacity: 1;
}

.widget--gallery .widget__image .widget__caption > div p.widget__caption--hover {
  opacity: 1;
}

.widget--gallery .widget__image .widget__caption .col--container {
  position: relative;
  max-width: 100%;
}

.widget--gallery .widget__image .widget__caption .widget__caption--hover {
  opacity: 1;
}

.widget__gallery .owl-video-play-icon {
  transition: transform 0.3s ease;
  background-image: url("../graphics/svg/lwf-play.svg") !important;
}

.widget__gallery .owl-video-play-icon:hover {
  transform: scale(1.2);
}

body .page--gallery .widget--gallery .widget__image .widget__caption {
  display: none;
}

body .page--gallery .widget--gallery .widget__image .widget__caption {
  max-width: 100%;
  height: 100px;
  position: absolute;
  bottom: 0;
  text-align: center;
  background: rgba(1, 1, 1, 0.3);
}

body .page--gallery .widget--gallery .widget__image .widget__caption > div {
  position: static;
  margin-top: 20px;
  width: 100%;
  max-width: 100%;
}

body .page--gallery .widget--gallery .widget__image .widget__caption > div p {
  font-size: 1.8rem;
  opacity: 1;
  margin: 0;
  text-align: center;
}

body .page--gallery .gallery__item > div {
  position: relative;
  overflow: hidden;
}

body .page--gallery .gallery__item .title {
  padding: 10px 20px 10px 20px;
  position: absolute;
  bottom: 0;
  min-height: 55px;
  width: 100%;
  background: rgba(255, 255, 255, 0.9);
  box-sizing: border-box;
}

body .page--gallery .gallery__item .title p {
  margin: 0 0 2px 0;
  font-weight: 400;
}

body .page--gallery .gallery__item .title p:first-child {
  margin: 0;
  line-height: 18px;
}

body .page--gallery .gallery__item .title .title--link {
  color: #797777;
  line-height: 1em;
}

body .page--gallery .gallery__item .title .title--link:hover {
  color: black;
  text-decoration: underline;
}

body .page--gallery .gallery__item.active .title--link {
  color: black;
  text-decoration: underline;
}

.owl-nav {
  top: 50%;
  width: 100%;
  position: absolute;
}

.owl-nav.disabled {
  display: none;
}

.owl-nav > div {
  top: -24px;
  position: inherit;
  width: 24px;
  height: 24px;
  background: transparent url("../graphics/svg/lwf-arrow.svg") 41% 50% no-repeat;
  text-indent: -50px;
  overflow: hidden;
  cursor: pointer;
}

.owl-nav > div.disabled {
  display: none;
}

.owl-nav .owl-next {
  transition: all 0.3s ease;
  transform: translateZ(0);
  right: -35px;
}

.owl-nav .owl-next:hover {
  right: -40px;
}

.owl-nav .owl-prev {
  transition: all 0.3s ease;
  transform: translateZ(0);
  transform: rotate(180deg);
  left: -35px;
}

.owl-nav .owl-prev:hover {
  left: -40px;
}

body[lang='ar'] .widget--gallery .widget__image .widget__caption .button--white {
  float: right;
}

body[lang='ar'] .widget--gallery .widget__image .widget__caption > div {
  right: 0;
}

.widget__gallery--inline--parent .widget__gallery--inline--inner {
  width: 90%;
  margin: auto;
  position: relative;
}

.widget__gallery--inline--parent .widget__gallery--inline--inner .widget__gallery--inline {
  width: 45%;
}

.widget__gallery--inline--parent .widget__gallery--inline--inner .widget__caption {
  width: 50%;
  position: absolute;
  top: 0;
  left: 50%;
}

.widget__gallery--inline--parent .widget__gallery--inline--inner .widget__caption div {
  margin-top: 50px;
}

.widget__gallery--inline--parent .widget__gallery--inline--inner .widget__caption div:not(.active) {
  display: none;
}

.widget__gallery--inline--parent .widget__gallery--inline--inner .widget__caption__inline {
  width: 50%;
  position: absolute;
  top: 0;
  left: 50%;
}

.widget__gallery--inline--parent .widget__gallery--inline--inner .widget__caption__inline div {
  margin-top: 50px;
}

.widget__gallery--inline--parent .widget__gallery--inline--inner .widget__caption__inline div:not(.active) {
  display: none;
}

.widget__gallery--inline--parent .widget__gallery--inline--inner .owl-nav .owl-next {
  right: -25px;
}

.widget__gallery--inline--parent .widget__gallery--inline--inner .owl-nav .owl-prev {
  left: -25px;
}

@media screen and (max-width: 1024px) {
  .widget__gallery--inline--parent .widget__gallery--inline--inner .widget__gallery--inline {
    width: 90%;
    margin: auto;
  }
  .widget__gallery--inline--parent .widget__gallery--inline--inner .widget__caption {
    width: 90%;
    margin: auto;
    position: static;
  }
  .widget__gallery--inline--parent .widget__gallery--inline--inner .widget__caption div {
    margin-top: 0;
    margin-bottom: 10px;
  }
  .widget__gallery--inline--parent .widget__gallery--inline--inner .owl-nav .owl-next {
    right: -25px;
  }
  .widget__gallery--inline--parent .widget__gallery--inline--inner .owl-nav .owl-prev {
    left: -25px;
  }
}

.widget--copy {
  margin: auto;
}

.widget--copy:not(:first-child) {
  /*padding: 2% 0;*/
}

.widget--copy .widget__detail {
  padding-right: 10%;
  box-sizing: border-box;
}

.widget--copy .widget__detail h2 {
  font-weight: 400;
}

.widget--copy .widget__detail h4 {
  margin: 0;
}

.widget--person {
  font-style: italic;
  color: #afafaf;
  font-weight: 300;
}

.widget--person .widget__title a {
  color: #fe0000;
  font-style: initial;
}

.widget--person img {
  max-width: 50%;
}

body.ar .widget--copy .widget__detail {
  padding-right: 0;
  padding-left: 10%;
}

body.ar .widget--copy .widget__detail h1, body.ar .widget--copy .widget__detail h2, body.ar .widget--copy .widget__detail h3 {
  text-align: right;
}

.widget--buddy {
  padding: 40px 0 0 0;
}

.widget--buddy .widget__detail {
  box-sizing: border-box;
}

.widget--buddy .widget__detail h3 {
  color: black !important;
  font-weight: bold !important;
  font-size: 1.1em !important;
}

.widget--buddy .widget__detail .item {
  padding-left: 0;
}

.widget--buddy .tab {
  padding: 0;
  cursor: pointer;
  color: white;
  background: none;
  border: 0;
}

.widget--buddy .tab li {
  border: 0;
}

.widget--buddy .tab li:hover a {
  background: black;
  color: white;
}

.widget--buddy .tab li a {
  outline: none;
  border: 0;
  background: white;
}

.widget--buddy .item__tabs {
  font-family: 'lektonregular', sans-serif;
  border: 0 !important;
  padding: 0;
  background: none;
}

.widget--buddy .item__tabs li {
  margin-top: 0 !important;
}

.widget--buddy .item__tabs .ui-tabs-nav {
  border-bottom: 0;
}

.widget--buddy .item__tabs .ui-tabs-active {
  background: black;
  border: 0;
  margin-bottom: 0 !important;
  padding: 0 !important;
}

.widget--buddy .item__tabs .ui-tabs-active a {
  background: black !important;
  color: white;
}

.widget--summary {
  padding: 40px 0 60px 0;
  margin: auto;
  width: 90%;
}

.widget--summary .widget__detail {
  color: black;
  margin: 0 auto;
}

.widget--summary .widget__detail li {
  padding: 20px 0;
  border-bottom: 1px solid #eee;
}

.widget--summary .widget__detail li:first-child {
  padding: 0 0 20px 0;
}

.widget--summary .widget__detail li a {
  text-decoration: none !important;
}

.widget--summary .widget__detail li a h2 {
  text-decoration: underline;
}

.widget--summary .widget__detail li a:hover h2.language--text {
  color: #afafaf;
}

.widget--summary .widget__detail a {
  color: inherit;
}

.widget--summary .widget__detail h2 {
  margin: 0;
  font-size: 1.3em;
  font-weight: 400;
}

.widget--summary .widget__detail h3 {
  font-size: 0.9rem;
  font-weight: 300;
  color: #b2b2b2;
}

.widget--summary .widget__image {
  background: white url("../graphics/gallery-loading.gif") 50% 50% no-repeat !important;
}

.widget--summary .widget__image img {
  opacity: 0;
  width: 100%;
  transition: all 0.6s linear;
  transform: translateZ(0);
}

.widget--summary .widget__item {
  margin: auto;
}

.widget--summary .widget__item .col--container {
  -webkit-display: flex;
  -ms-display: flex;
  display: flex;
}

/* GRID --------------------------------------------------------------------------------------------------------------*/
.widget--summary.widget--summary--grid .col--container {
  margin-left: -10px;
  margin-right: -10px;
}

.widget--summary.widget--summary--grid .col--container > div {
  padding: 10px 5px 5px 10px;
}

.widget--summary.widget--summary--grid .col--container > div .widget__item {
  padding: 25px;
  background: #f2f2f2;
}

.widget--summary.widget--summary--grid .col--container > div .widget__item .widget__date {
  margin-bottom: 10px;
  color: #9d9d9d;
}

.widget--summary.widget--summary--grid .col--container > div .widget__item h2 {
  font-size: 1.6em;
  line-height: 1.5em;
  margin-bottom: 0;
}

/* IMAGE FULL --------------------------------------------------------------------------------------------------------*/
.widget--summary.widget--summary--list .widget__detail {
  padding-top: 80px;
}

.widget--summary.widget--summary--list-image-full .widget__item, .widget--summary.widget--summary--list-image .widget__item {
  overflow: hidden;
}

.widget--summary.widget--summary--list-image-full .widget__item.widget--active .widget__image img, .widget--summary.widget--summary--list-image .widget__item.widget--active .widget__image img {
  opacity: 1;
}

.widget--summary.widget--summary--list-image-full .widget__item .col--container, .widget--summary.widget--summary--list-image .widget__item .col--container {
  overflow: hidden;
  position: relative;
}

.widget--summary.widget--summary--list-image-full .widget__item .col--container .widget__detail, .widget--summary.widget--summary--list-image .widget__item .col--container .widget__detail {
  position: relative;
}

.widget--summary.widget--summary--list-image-full .widget__item img, .widget--summary.widget--summary--list-image .widget__item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.widget--summary.widget--summary--list-image-full .widget__item .widget__detail, .widget--summary.widget--summary--list-image .widget__item .widget__detail {
  color: #6f6f6f;
  background: #ededed;
}

.widget--summary.widget--summary--list-image-full .widget__item .widget__detail .flex--padding, .widget--summary.widget--summary--list-image .widget__item .widget__detail .flex--padding {
  box-sizing: border-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
  flex-direction: column;
  height: 100%;
}

.widget--summary.widget--summary--list-image-full .widget__item .widget__detail *:nth-last-child(2), .widget--summary.widget--summary--list-image .widget__item .widget__detail *:nth-last-child(2) {
  -ms-flex-positive: 2;
  flex-grow: 2;
}

.widget--summary.widget--summary--list-image-full .widget__item .widget__detail .widget__date, .widget--summary.widget--summary--list-image .widget__item .widget__detail .widget__date {
  margin-bottom: 15px;
}

.widget--summary.widget--summary--list-image-full .widget__item .widget__detail [class*="button"], .widget--summary.widget--summary--list-image .widget__item .widget__detail [class*="button"] {
  display: inherit;
  color: black;
  -ms-flex-positive: 0;
  flex-grow: 0;
}

.widget--summary.widget--summary--list-image-full .widget__item .widget__detail h2, .widget--summary.widget--summary--list-image .widget__item .widget__detail h2 {
  color: black;
}

/* IMAGE -------------------------------------------------------------------------------------------------------------*/
.widget--summary.widget--summary--list-image .widget__item:first-child {
  padding: 0 !important;
}

.widget--summary.widget--summary--list-image .widget__item {
  padding: 0 0 50px 0;
}

.widget--summary.widget--summary--list-image .widget__item img {
  max-height: 350px;
}

.widget--summary.widget--summary--list-image .widget__item:first-child {
  padding: 50px 0;
}

.widget--summary.widget--summary--list-image .widget__item:nth-child(odd) {
  background: #f6f6f6;
}

.widget--summary.widget--summary--list-image .widget__item .col--container .col--0_5xs {
  width: 35%;
}

.widget--summary.widget--summary--list-image .widget__item .col--container .col--1_5xs {
  width: 65%;
}

.widget--summary.widget--summary--list-image .widget__item .col--container .widget__detail {
  display: inline-block;
  vertical-align: top;
}

body.ar .widget--summary .widget__detail span {
  width: 100%;
  display: block;
  text-align: right;
}

body.ar .widget--summary .widget__detail [class*="button"] {
  right: 8%;
  margin-right: 1%;
  padding-right: inherit;
}

.flex--padding {
  padding: 15%;
}

.widget--map {
  background: white url("../graphics/gallery-loading.gif") 50% 50% no-repeat !important;
}

.widget--map.widget--active .widget__detail {
  opacity: 1;
}

.widget--map .widget__detail {
  opacity: 0;
  max-height: 500px;
  height: 500px;
  transition: all 0.6s linear;
  transform: translateZ(0);
}

.widget--contact .widget__detail {
  padding-bottom: 100px;
}

.widget--contact .widget__detail .col--2xs {
  padding-right: 7%;
}

.widget--contact .widget__detail form {
  margin-top: 30px;
  text-transform: uppercase;
}

.widget--contact .widget__detail form input {
  font-family: 'Biryani', sans-serif;
  font-size: 14px;
  border: 0;
  padding: 0 0 0 10px;
  width: 100%;
  height: 50px;
  background: #ededed;
  outline: none;
  color: black;
  box-sizing: border-box;
}

.widget--contact .widget__detail form input[type="submit"] {
  font-size: 1em;
  text-transform: uppercase;
  margin-top: 30px;
  color: white;
  width: initial;
  background: black;
  position: relative;
  display: inline-block;
  font-weight: bold;
  padding: 10px;
  height: 40px;
  line-height: 25px;
  cursor: pointer;
  transition: all 0.3s linear;
  transform: translateZ(0);
}

.widget--contact .widget__detail form input[type="submit"]:hover {
  color: black;
  background: white;
}

.widget--contact .widget__detail form textarea {
  margin: 0;
  padding: 0;
  width: 100%;
  border: 0;
  height: 100%;
  min-height: 200px;
  background: #ededed;
}

.widget--contact .widget__detail form label {
  margin: 15px 0 0 0;
  padding: 0;
  display: block;
  padding-bottom: 4px;
  font-weight: 500;
  color: #b2b2b2;
  font-size: 1rem;
}

body.ar label {
  float: right;
}

body.ar .widget--contact .widget__detail form input[type="submit"] {
  width: 80px;
  float: right;
}

body.ar .control-group {
  direction: rtl;
}

.widget--popup {
  display: none;
  top: 40px;
  z-index: 999;
  height: 100vh;
  background-color: transparent;
}

.widget--popup .popup-content-wrapper {
  width: 50%;
  /*height: 250px;*/
  margin-left: auto;
  margin-right: auto;
  position: relative;
  padding: 20px 20px 40px 20px;
  background-color: #ffffff;
}

@media (max-width: 748px) {
  .widget--popup .popup-content-wrapper {
    width: 90%;
  }
}

.widget--popup #close-popup {
  font-size: 26px;
  color: rgba;
  position: absolute;
  right: 15px;
  cursor: pointer;
}

.widget--popup .where-to-book {
  width: -webkit-fit-content;
  width: fit-content;
  background-color: grey;
  margin-top: 2em;
}

.widget--popup .where-to-book a {
  color: #fff;
  padding: 10px 7px;
  background-color: grey;
}

body[lang="ar"] .popup-content-wrapper {
  direction: rtl;
}

body[lang="ar"] .widget--popup #close-popup {
  left: 15px;
  right: unset;
}

.widget:first-child.widget--gallery, .widget:first-child.widget--summary {
  padding-top: 0;
}

.page--homepage .widget:first-child.widget--gallery {
  padding-top: 0;
}

.widget {
  margin-top: 80px;
}

.widget .widget__detail strong {
  font-size: 1.1em;
}

.widget .widget__detail h3 {
  font-weight: 500;
  color: #b2b2b2;
  font-size: 1.5rem;
  padding: 3% 0;
  margin: 0;
}

.widget .widget__image {
  background-color: #f7f7f7;
}

.widget .widget__image .fullscreen-link {
  cursor: pointer;
  text-align: center;
  margin: 0;
  padding-top: 10px;
  padding-bottom: 10px;
  background-color: lightgrey;
}

body[lang='ar'] .widget .widget__detail h3 {
  text-align: right;
}

body[lang='ar'] .ui-tabs .ui-tabs-nav li {
  float: right;
}

body[lang='ar'] .widget--summary .col--container [class*="col"] {
  float: right;
}

body[lang='ar'] .widget--summary .widget__item:nth-child(odd) .widget__image {
  -ms-flex-order: 2;
  order: 2;
}

body[lang='ar'] .widget--summary .widget__item:nth-child(even) .widget__detail {
  -ms-flex-order: 2;
  order: 2;
}

body[lang='ar'] .gallery__other .gallery__item {
  float: right;
}

.col--container [class*="col"] {
  float: left;
  box-sizing: border-box;
}

.col--container:after {
  content: '';
  display: block;
  clear: both;
}

.col--container.col--row3 .col--1xs {
  width: 33.32%;
}

.col--container.col--row3 .col--2xs {
  width: 66.65%;
}

.col--container.col--row2 .col--0_5xs {
  width: 30%;
}

.col--container.col--row2 .col--1xs {
  width: 50%;
}

.col--container.col--row2 .col--1_5xs {
  width: 70%;
}

.col--container.col--row2 .col--2xs {
  width: 100%;
}

#LoaderWrapper {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  margin: 0;
  padding: 0;
  -ms-touch-action: manipulation;
  touch-action: manipulation;
  overflow: hidden;
  font-family: Arial, sans-serif;
  pointer-events: none;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  -moz-tap-highlight-color: rgba(0, 0, 0, 0);
  display: none;
  z-index: 999999;
}

#LoaderWrapper.active {
  opacity: 1;
  display: block;
}

#LoaderWrapper p {
  position: absolute;
  margin: 0;
  top: 50%;
  left: 50%;
  text-align: center;
  font-size: 1rem;
  transform: translate(-50%, -50%);
  color: rgba(255, 255, 255, 0.7);
  font-family: 'lektonregular', sans-serif;
  display: none;
}

#LoaderWrapper.inits p {
  display: block;
}

#LoaderWrapper #loader {
  position: relative;
  left: 50%;
  top: 50%;
  height: 6vw;
  width: 6vw;
  margin: -3vw 0 0 -3vw;
  border: 1px solid transparent;
  border-top-color: rgba(255, 255, 255, 0.6);
  border-bottom-color: rgba(255, 255, 255, 0.6);
  border-radius: 50%;
  z-index: 2;
  animation: spin 2s linear infinite;
}

#LoaderWrapper #loader:before {
  content: "";
  position: absolute;
  top: 2%;
  bottom: 2%;
  left: 2%;
  right: 2%;
  border: 1px solid transparent;
  z-index: 2;
  border-top-color: rgba(255, 255, 255, 0.6);
  border-radius: 50%;
  animation: spin 3s linear infinite;
}

#LoaderWrapper #loader:after {
  content: "";
  position: absolute;
  top: 5%;
  bottom: 5%;
  left: 5%;
  right: 5%;
  border: 1px solid transparent;
  border-top-color: rgba(255, 255, 255, 0.6);
  z-index: 2;
  border-radius: 50%;
  animation: spin 1.5s linear infinite;
}

/*Keyframes for spin animation */

@keyframes spin {
  0% {
    /* Chrome, Opera 15+, Safari 3.1+ */
    /* IE 9 */
    transform: rotate(0deg);
    /* Firefox 16+, IE 10+, Opera */
  }
  50% {
    /* Chrome, Opera 15+, Safari 3.1+ */
    /* IE 9 */
    transform: rotate(180deg);
    /* Firefox 16+, IE 10+, Opera */
  }
  100% {
    /* Chrome, Opera 15+, Safari 3.1+ */
    /* IE 9 */
    transform: rotate(360deg);
    /* Firefox 16+, IE 10+, Opera */
  }
}

@media screen and (max-width: 1024px) {
  #LoaderWrapper p {
    font-size: .7rem;
  }
  #LoaderWrapper #loader {
    height: 22vw;
    width: 22vw;
    margin: -11vw 0 0 -11vw;
  }
}

.page--gallery .owl-dots {
  display: block;
}

.page--gallery .gallery__other .col--container {
  margin-left: -10px;
  margin-right: -10px;
  transition: height 0.6s linear;
  transform: translateZ(0);
}

.page--gallery .gallery__other .col--container .gallery__item {
  transition: position 0.6s linear;
  transform: translateZ(0);
  padding: 10px;
}

.page--gallery .gallery__other .col--container .gallery__item img {
  width: 100%;
  min-height: 220px;
  object-fit: cover;
}

.page--gallery .widget--gallery {
  margin-bottom: 0;
}

.page--gallery .widget--gallery .widget__image {
  display: block;
}

.page--gallery > h2 {
  width: 90%;
  font-weight: 500;
  color: #b2b2b2;
  font-size: 1.5rem;
  margin: 1% auto 3% auto;
}

.filters .col--container .filters__tab {
  padding: 10px;
  cursor: pointer;
}

.filters .col--container .filters__tab .filters__detail {
  background: #f2f2f2;
  min-height: 150px;
}

.filters .col--container .filters__tab .filters__detail a {
  display: block;
  padding: 6%;
  color: #b2b2b2;
  font-weight: 500;
}

.filters .col--container .filters__tab .filters__detail a h3 {
  font-size: 1em;
  font-weight: bold;
  color: black;
  margin: 0;
}

.filters .col--container .filters__tab.filters__tab--active .filters__detail {
  background: #222221;
}

.filters .col--container .filters__tab.filters__tab--active .filters__detail a, .filters .col--container .filters__tab.filters__tab--active .filters__detail h3 {
  color: white;
}

body .widget__gallery .owl-video-wrapper {
  position: absolute;
  width: 100%;
}

body .widget__gallery .owl-video-wrapper img {
  display: none;
}

table {
  outline: none;
  border-color: transparent;
}

.menu__button__desktop {
  z-index: 12;
  width: 100vw;
  height: 100vh;
}

.desktop__button--image:hover {
  opacity: .6;
}

.desktopMenuContent a {
  font-weight: unset;
}

.desktopMenuContent #desktopMenu {
  width: 100vw;
  height: 100vh;
  background-color: #fff;
  z-index: 12;
  position: fixed;
  text-align: center;
  display: none;
  top: 0px;
}

.desktopMenuContent #desktopMenu #lang {
  color: #fff;
}

.desktopMenuContent #desktopMenu .logoMenuDesktop {
  position: relative;
}

.desktopMenuContent #desktopMenu .logoMenuDesktop .header__logo__desktop {
  position: absolute;
  background: url(../graphics/lwf-logo-black.png) no-repeat;
  background-size: 147px 47px;
  width: 147px;
  height: 47px;
  top: 15px;
  left: 5%;
}

@media (max-width: 768px) {
  .desktopMenuContent #desktopMenu .logoMenuDesktop .header__logo__desktop {
    background-size: contain;
    width: 70px;
    height: 47px;
    top: 20px;
  }
}

.desktopMenuContent #desktopMenu .logoMenuDesktop .close-menu-desktop {
  position: absolute;
  right: 6%;
  width: 22px;
  height: 22px;
  top: 30px;
  cursor: pointer;
}

@media (max-width: 768px) {
  .desktopMenuContent #desktopMenu .logoMenuDesktop .close-menu-desktop {
    top: 20px;
  }
}

.desktopMenuContent #desktopMenu .logoMenuDesktop .close-menu-desktop:hover {
  opacity: 0.6;
}

.desktopMenuContent #desktopMenu .title {
  cursor: pointer;
}

.desktopMenuContent #desktopMenu .title:hover {
  opacity: 0.6;
}

.desktopMenuContent #desktopMenu .menu {
  padding-top: 8rem;
}

.desktopMenuContent #desktopMenu ul {
  font-size: 1.5rem;
}

.desktopMenuContent #desktopMenu ul a:hover {
  opacity: .4;
}

.desktopMenuContent #desktopMenu ul li ul {
  display: none;
}

.desktopMenuContent #desktopMenu ul li ul a {
  opacity: .6;
}

.desktopMenuContent #desktopMenu ul li ul a:hover {
  opacity: .4;
}

.desktopMenuContent #desktopMenu ul li ul li ul {
  display: none;
}

.fade-out {
  animation: fadeOut ease 8s;
  -webkit-animation: fadeOut ease 8s;
  -moz-animation: fadeOut ease 8s;
  -o-animation: fadeOut ease 8s;
  -ms-animation: fadeOut ease 8s;
}

.fade-in {
  animation: fadeIn ease 10s;
  -webkit-animation: fadeIn ease 10s;
  -moz-animation: fadeIn ease 10s;
  -o-animation: fadeIn ease 10s;
  -ms-animation: fadeIn ease 10s;
}

@keyframes fadeOut {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}

@keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

/* HEADER ------------------------------------------------------------------------------------------------------------*/
#content {
  background: #f7f7f7;
  overflow: hidden;
  width: 90%;
  margin: 0 auto;
  /* Prevent elements to be highlighted on tap */
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  overflow-y: scroll;
  /* has to be scroll, not auto */
  -webkit-overflow-scrolling: touch;
}

#content a {
  text-decoration: underline;
}

#content .button--white a {
  text-decoration: none;
}

#detail_button {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  pointer-events: none;
}

#header {
  position: fixed;
  top: 0;
  height: 90px;
  width: 100%;
  z-index: 10;
  background: white;
  pointer-events: none;
  transition: background 0.3s linear;
  transform: translateZ(0);
}

#header .header__menu {
  height: 100%;
  pointer-events: none;
}

#header .header__menu > * {
  pointer-events: all;
}

#header .header__menu > span {
  float: right;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: row-reverse;
  flex-direction: row-reverse;
  -ms-flex-pack: justify;
  justify-content: space-between;
  margin: 30px -10px 0 -10px;
}

#header .header__menu > span .atom--link svg path {
  fill: white;
}

#header .header__menu > span > * {
  height: 22px;
  padding: 0 10px;
  color: white;
}

#header .header__menu .header__logo {
  float: left;
  transition: all 0.3s linear;
  transform: translateZ(0);
  cursor: pointer;
}

#header .header__menu .header__logo a {
  display: block;
  text-indent: 150px;
  width: 100%;
  height: 100%;
  overflow: hidden;
}

#header .header__menu .atom--link {
  display: block;
  width: 22px;
}

#header .header__menu .mobile__button {
  width: 22px;
  cursor: pointer;
  display: none;
}

#header .header__menu .mobile__button img {
  display: inline;
}

#header .header__menu .desktop__button {
  width: 22px;
  cursor: pointer;
  display: block;
}

#header .header__menu .desktop__button img {
  display: inline;
}

body[lang="ar"] #header .header__menu > span {
  float: left;
  -ms-flex-direction: row;
  flex-direction: row;
}

body[lang="ar"] #header .header__menu .header__logo {
  float: right;
}

#header {
  background: none;
  background-image: none;
}

#header:not(.header--hover) {
  background-image: linear-gradient(to bottom, #333333, rgba(51, 51, 51, 0));
  border-bottom: 0;
}

#header:not(.header--hover) .header__logo {
  background: url(../graphics/lwf-logo-white.png) no-repeat;
  background-size: 147px 47px;
}

#header.header--hover {
  background: white !important;
}

#header.header--hover .header__menu .header__logo {
  background: url(../graphics/lwf-logo-black.png) no-repeat;
  background-size: 147px 47px;
}

#header.header--hover .header__menu .header__logo a {
  display: block;
  color: #000000;
}

#header.header--hover .header__menu #lang {
  color: #000000;
}

#header.header--hover .header__menu .mobile__button {
  background: url(../graphics/mmenu.png) no-repeat;
  background-position: center;
}

/*
#header #main_menu {
  .main_menu__submenu {
    height:0;
    position: absolute;
    width: 100%;
    background: white;
    left:0;
    top:110px;
    @include transition(all .3s linear);
  }
  li {
    position:relative;
    &.on > a { color:#a3a3a3; }
    &:hover ul { height:initial }
    a {
      font-weight:400;
      color:black;
      padding: 0 15px;
      &:hover { color: #a3a3a3; }
    }
    ul {
      padding-right:20px;
      display:none;
      overflow: hidden;
      position: absolute;
      top:85px;
      z-index:10;
      li {
        white-space: nowrap;
        line-height: normal;
        float: none;
        padding: 10px 0;
        &:first-child { 
          margin-top: 0;
          padding-top:0;
        }
      }
    }
  }
}

*/
/* Clear Floats */
.clearfix, #header .header__menu, #header .header__menu > span {
  zoom: 1;
}

.clearfix:after, #header .header__menu:after, #header .header__menu > span:after {
  content: "";
  display: block;
  height: 0;
  clear: both;
  zoom: 1;
}

/* FOOTER ------------------------------------------------------------------------------------------------------------*/
#footer {
  padding-top: 30px;
  position: relative;
  background: #f7f7f7;
  width: 90%;
  margin: auto;
}

#footer .footer_container {
  height: 230px;
  position: relative;
}

#footer .footer_container .footer-content {
  width: 90%;
  margin: auto;
}

#footer .footer__logo {
  position: absolute;
  top: 45%;
  left: 0;
  background: url(../graphics/lwf-logo-black.png) no-repeat;
  background-size: 147px 47px;
}

#footer .footer__logo:hover {
  cursor: pointer;
}

#footer .social_media {
  top: 45%;
  position: absolute;
  right: 0;
}

#mobileMenu {
  display: none;
}

/* MOBILE MENU -------------------------------------------------------------------------------------------------------*/
#mobile__menu li a {
  color: black;
  border-bottom: 1px solid rgba(0, 0, 0, 0.05);
}

#mobile__menu.active {
  display: block;
}

body .mm-menu .mm-list a.mm-subopen:before {
  width: 40px;
  height: 40px;
  background: white url(../graphics/arrow.png) 50% 50% no-repeat;
  border-left: 0;
}

body .mm-menu .mm-list > li > a.mm-subclose {
  background: #f7f7f7;
}

.header--hover .mobile__button {
  background: url(../graphics/mmenu.png);
}

.mm-menu {
  background: #fff;
}

.mm-menu .mm-navbar-bottom {
  border-top: 0;
}

.mm-menu .mm-navbar {
  padding-left: 20px;
}

.mm-menu .mm-navbar .mm-title {
  padding-left: 20px;
}

.mm-menu .mm-navbar {
  text-align: right;
  padding: 0 20px;
}

.mm-highest.mm-opened .mm-navbar .mm-title {
  padding: 8px 20px 0 0;
}

#mm-blocker {
  box-shadow: 0px 0px 30px 0px rgba(0, 0, 0, 0.75);
}

#AIMContainer {
  position: absolute;
  width: 100%;
  height: 100%;
}

/*
body[lang="ar"] {
  #header #main_menu > li:last-of-type a {
    padding-right:0;
  }

  #header #main_menu li ul {
    text-align: right;
    right: -17px;
  }
}
*/
@media screen and (max-width: 1024px) {
  #pageWrap {
    top: 60px;
  }
  #pageWrap #content {
    max-width: initial;
    width: 90%;
  }
  body * {
    -webkit-appearance: none;
  }
  .widget:first-child.widget--gallery, .widget:first-child.widget--summary {
    margin-top: 40px;
  }
  body .widget:first-child {
    padding-top: 60px;
  }
  body .owl-dots {
    bottom: -40px;
  }
  .widget--copy, .widget--contact {
    margin: 0 5%;
  }
  .widget--contact .widget__detail form input[type="submit"] {
    width: 100%;
  }
  .widget--copy .widget__detail {
    padding-right: 0;
    width: 100%;
  }
  body .col--container [class*="col"] {
    float: none;
  }
  body .col--container.col--row2 .col--1_5xs,
  body .col--container.col--row3 .col--1xs,
  body .col--container.col--row2 .col--1xs,
  body .col--container.col--row3 .col--2xs,
  body .col--container.col--row2 .col--0_5xs {
    width: 100% !important;
    padding: 0;
  }
  body .col--container.col--row2 .col--1xs,
  body .col--container.col--row3 .col--1xs {
    margin-bottom: 20px;
  }
  body .widget--summary.widget--summary--list-image-full .widget__item .col--container .widget__detail, body .widget--summary.widget--summary--list-image .widget__item .col--container .widget__detail {
    padding-bottom: 30px !important;
    margin-bottom: 0 !important;
  }
  body .widget--summary.widget--summary--list-image-full .widget__item .col--container .widget__detail .flex--padding, body .widget--summary.widget--summary--list-image .widget__item .col--container .widget__detail .flex--padding {
    padding: 5%;
    height: inherit;
  }
  body .widget--summary {
    width: 100%;
  }
  body .widget--summary .widget__detail {
    box-sizing: border-box;
    padding: 0 5%;
  }
  body .widget--summary.widget--summary--list-image .widget__item {
    padding: 0;
  }
  body .widget--summary .col--container {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
    flex-direction: column;
  }
  body .widget--summary .widget__item .col--container > div:last-child {
    -ms-flex-order: 1;
    order: 1;
  }
  body .widget--summary .widget__item .col--container > div:first-child {
    -ms-flex-order: 2;
    order: 2;
  }
  body .widget--summary .widget__item:nth-child(odd) .col--container > div:last-child {
    -ms-flex-order: 2;
    order: 2;
  }
  body .widget--summary .widget__item:nth-child(odd) .col--container > div:first-child {
    -ms-flex-order: 1;
    order: 1;
  }
  body .widget--summary .col--container.col--row2 {
    margin-bottom: 20px;
  }
}

@media screen and (max-width: 1024px) and (max-width: 768px) {
  body .widget--summary .col--container.col--row2 {
    margin-bottom: 0px;
  }
}

@media screen and (max-width: 1024px) {
  .flex--padding {
    padding: 5%;
  }
  .widget--gallery {
    width: 100%;
  }
  .widget--gallery .owl-nav .owl-next {
    right: -23px;
  }
  .widget--gallery .owl-nav .owl-next:hover {
    right: -28px;
  }
  .widget--gallery .owl-nav .owl-prev {
    transition: all 0.3s ease;
    transform: translateZ(0);
    transform: rotate(180deg);
    left: -23px;
  }
  .widget--gallery .owl-nav .owl-prev:hover {
    left: -28px;
  }
  .widget__gallery--inline--parent .widget__gallery--inline--inner {
    width: 100%;
  }
  .widget__gallery--inline--parent .widget__gallery--inline {
    width: 100%;
  }
  .widget__gallery--inline--parent .widget__caption {
    width: 100%;
  }
  body .widget--gallery .widget__image .widget__caption > div {
    position: static;
    bottom: 0;
    max-width: 100%;
    padding: 5%;
    background: #ededed;
  }
  body .widget--gallery .widget__image .widget__caption > div .button--white {
    margin-top: 20px;
  }
  body .widget--gallery .widget__image .widget__caption > div .button--white a {
    background: black;
    color: white;
  }
  body .widget--gallery .widget__image .widget__caption > div p {
    color: black;
    font-size: 1.5rem;
    line-height: 2rem;
    margin: 0;
  }
  body .widget--gallery .widget__image .widget__caption > div p a {
    color: black;
    opacity: 1;
  }
  body .widget__gallery--inline .widget__gallery .widget_image--container,
  .widget__gallery--inline .widget__gallery .widget__caption {
    float: none;
    width: 100%;
  }
  .widget__gallery--inline .widget__gallery .widget__caption {
    width: 100%;
  }
  body .widget__gallery--inline .widget__gallery .widget__caption > div {
    position: relative;
    width: 100%;
  }
  body .filters .col--container .filters__tab .filters__detail {
    min-height: 50px;
  }
  body .page--gallery .widget--gallery {
    margin-bottom: 60px;
  }
  #footer .footer_container {
    height: auto !important;
  }
  #footer .footer_container .footer-content {
    width: 100%;
  }
  body #footer .footer__logo {
    float: none;
    position: relative;
    margin: auto;
  }
  body #footer .social_media {
    text-align: center;
    display: block;
    position: relative;
    margin-top: 10px;
  }
  body #footer .social_media li {
    float: none;
    display: inline-block;
  }
  body #header {
    height: 40px;
    background: white;
    background-image: none;
  }
  body #header:not(.header--hover) {
    background-image: none;
  }
  body #header .header__menu span .atom--link svg path {
    fill: black;
  }
  body #header .header__menu .header__logo {
    width: 70px;
    top: 11px;
    background: url(../graphics/lwf-logo-black.png) no-repeat;
    background-size: contain;
  }
  body #header .header__menu .header__logo a {
    line-height: 47px;
  }
  #header .header__menu > span {
    margin-top: 8px;
  }
  #header .header__menu > span #lang {
    color: #000000;
  }
  #header .header__menu > span .mobile__button {
    display: block;
  }
  #header .header__menu > span .desktop__button {
    display: none;
  }
}

@media screen and (max-width: 600px) {
  body #header .header__menu .header__logo {
    top: 20px;
  }
  body #header {
    height: 60px;
  }
  #header .header__menu > span {
    margin-top: 20px;
  }
  body .widget:first-child {
    padding-top: 0px;
  }
}

@media screen and (max-width: 768px) {
  #pageWrap {
    top: 88px;
  }
}

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlLnNjc3MiLCJzdHlsZS5jc3MiLCJ3aWRnZXRzL19nYWxsZXJ5LnNjc3MiLCJ3aWRnZXRzL19nYWxsZXJ5LS1pbmxpbmUuc2NzcyIsIndpZGdldHMvX2NvcHkuc2NzcyIsIndpZGdldHMvX2J1ZGR5X3dhbGwuc2NzcyIsIndpZGdldHMvX3N1bW1hcnkuc2NzcyIsIndpZGdldHMvX21hcC5zY3NzIiwid2lkZ2V0cy9fZm9ybS5zY3NzIiwid2lkZ2V0cy9fcG9wdXAuc2NzcyIsIl93aWRnZXRzLnNjc3MiLCJfY29sdW1ucy5zY3NzIiwiX2xvYWRlci5zY3NzIiwicGFnZXMvX2dhbGxlcnkuc2NzcyIsIl90YWJsZXMuc2NzcyIsIl9kZXNrdG9wLW1lbnUuc2NzcyIsIl9tb2JpbGUuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFTQTtFQUNFLGNBQVk7Q0FDYjs7QUFFRDtFQUNFLGVBQWM7Q0FDZjs7QUFFRDtFQUNFLHlDQUF3QztDQUN6Qzs7QUFDRDtFQUVFLHNCQUFzQjtFQUN0QixjQUFZO0VBQ1osWUFBVTtFQUVWLGdCQUFlO0VBQ2YsbUJBQWtCO0VBQ2xCLFdBeEJlO0VBeUJmLFNBQVE7RUFDUixVQUFTO0VBQ1QsUUFBTztDQVVSOztBQXJCRDtFQWNJLG1CQUFpQjtFQUNqQixZQUFVO0VBQ1YsMkJBQWtDO0VBQ2xDLFlBakNhO0NBbUNkOztBQUtIO0VBQ0UsNkJBQTRCO0VBQzVCLDRIQUN5RDtFQUN6RCxvQkFBbUI7RUFDbkIsbUJBQWtCO0NDYm5COztBRGdCRDtFQUNFLFdBQVU7RUFBRyw0QkFBNEI7RUFDekMsd0JBQXVCO0VBQUcsNkNBQTZDO0NBQ3hFOztBQTRCRDtFQUNFLFlBQVU7RUFDVixhQUFXO0VBQ1gsWUFBVTtFQUNWLG1CQUFpQjtFQUNqQixnQkFBYztFQWpCZCw0QkFrQmtDO0VBakJsQyx5QkFBd0I7Q0F1QnpCOztBQVpEO0VBUUksZUFBYTtFQUNiLFlBQVU7RUFDVixhQUFXO0NBQ1o7O0FBU0g7RUFKRSw2REFBaUM7Q0FN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SUFDRSxvQkFBbUI7R0FDcEI7RWhCMlhIO0lnQm5YSSx3QkFBdUI7R0FJeEI7RWhCK1dIO0lnQmpYTSxZQUFXO0dBQ1o7RUFHSDtJQUVJLFlBQVc7SUFDWCxtQkFBa0I7SUFDbEIsYUFBWTtHQUNiO0VBTEg7SUFPSSxtQkFBa0I7SUFDbEIsZUFBYztJQUNkLG1CQUFrQjtJQUNsQixpQkFBZ0I7R0FLakI7RUFmSDtJQVlNLFlBQVU7SUFDVixzQkFBb0I7R0FDckI7RUFLTDtJQUNFLGFBQVc7SUFDWCxrQkFBaUI7SUFDakIsdUJBQXNCO0dBaUJ2QjtFQXBCRDtJQU1JLHVCQUFzQjtHQUN2QjtFQVBIO0lBY1ksWUFBVztHQUNaO0VBUVg7SUFDRSxZQUFVO0lBQ1YsVUFBUTtJQUNSLDBEQUF5RDtJQUN6RCx5QkFBd0I7R0FJekI7RUFSRDtJQU1JLGtCQUFpQjtHQUNsQjtFaEIyR0w7SWdCckdRLGdCQUFlO0dBWWhCO0VBZkw7SUFNUSxlaEI3UWE7R2dCOFFkO0VBUFA7SUFVUSxlQUFjO0dBQ2Y7RUFYUDtJQWFRLGNBQWE7R0FDZDtDZjY5RFI7O0FlcjlERDtFQWhDRTtJQWtDRSxVQUFRO0dBQ1Q7RUExREQ7SUE2REUsYUFBVztHQUdaO0VoQnlFSDtJZ0JyRVEsaUJBQWdCO0dBRWpCO0VBOVJMO0lBbVNFLGlCQUFlO0dBQ2hCO0NmKzhERjs7QUR2akREO0VBM3JCQTtJQTZyQkksVUFBUztHQUNWO0NDMGpERiIsImZpbGUiOiJzdHlsZS5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyIkcmVkOiAjZmUwMDAwO1xuJGxpZ2h0X2dyZXk6ICNhZmFmYWY7XG4kZ3JleTogI2Y2ZjZmNjtcbiRtYXgtaGVpZ2h0OjUwMHB4O1xuJHRvcF9tYXJnaW46MTIwcHg7XG4kbWVudV9oaWdobGlnaHQ6IzAwMDAwMDtcblxuJGhlYWRlcl9iYWNrOnJnYmEoNTEsNTEsNTEsIC44KTtcblxuYm9keSAjbWFpbl9tZW51IHtcbiAgZGlzcGxheTpub25lO1xufVxuXG5ib2R5IC5tb2JpbGVfX2J1dHRvbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4udHJhbnNwYXJlbnRiYWNre1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xufVxuI3BhZ2VXcmFwe1xuXG4gIC8qdmlzaWJpbGl0eTpoaWRkZW47Ki9cbiAgbWFyZ2luLXRvcDowO1xuICB6LWluZGV4OjExO1xuXG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgb3ZlcmZsb3cteTogc2Nyb2xsO1xuICB0b3A6ICR0b3BfbWFyZ2luO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuXG4gICNwYWdlV3JhcENsb3Nle1xuICAgIHBvc2l0aW9uOmFic29sdXRlO1xuICAgIHdpZHRoOjEwMCU7XG4gICAgaGVpZ2h0OmNhbGMoMTAwJSArICN7JHRvcF9tYXJnaW59KTtcbiAgICB0b3A6IC0gJHRvcF9tYXJnaW47XG5cbiAgfVxuXG59XG5cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnbGVrdG9ucmVndWxhcic7XG4gIHNyYzogdXJsKCcuLi9mb250L2xla3Rvbi1yZWd1bGFyLXdlYmZvbnQud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksXG4gIHVybCgnLi4vZm9udC9sZWt0b24tcmVndWxhci13ZWJmb250LndvZmYnKSBmb3JtYXQoJ3dvZmYnKTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuXG46Oi13ZWJraXQtc2Nyb2xsYmFyIHtcbiAgd2lkdGg6IDBweDsgIC8qIHJlbW92ZSBzY3JvbGxiYXIgc3BhY2UgKi9cbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7ICAvKiBvcHRpb25hbDoganVzdCBtYWtlIHNjcm9sbGJhciBpbnZpc2libGUgKi9cbn1cblxuQG1peGluIHByZWZpeCgkcHJvcGVydHksICR2YWx1ZSwgJHByZWZpeGVzOiAoKSkge1xuICBAZWFjaCAkcHJlZml4IGluICRwcmVmaXhlcyB7XG4gICAgI3snLScgKyAkcHJlZml4ICsgJy0nICsgJHByb3BlcnR5fTogJHZhbHVlO1xuICB9XG5cbiAgLy8gT3V0cHV0IHN0YW5kYXJkIG5vbi1wcmVmaXhlZCBkZWNsYXJhdGlvblxuICAjeyRwcm9wZXJ0eX06ICR2YWx1ZTtcbn1cblxuXG5AbWl4aW4gdHJhbnNpdGlvbigkdHJhbnNpdGlvbi4uLikge1xuICAtbW96LXRyYW5zaXRpb246ICR0cmFuc2l0aW9uO1xuICAtby10cmFuc2l0aW9uOiAkdHJhbnNpdGlvbjtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiAkdHJhbnNpdGlvbjtcbiAgdHJhbnNpdGlvbjogJHRyYW5zaXRpb247XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbn1cblxuQG1peGluIHJvdGF0ZSgkZGVnKSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoJGRlZyk7XG4gIC1tb3otdHJhbnNmb3JtOiByb3RhdGUoJGRlZyk7XG4gIC1vLXRyYW5zZm9ybTogcm90YXRlKCRkZWcpO1xuICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoJGRlZyk7XG4gIHRyYW5zZm9ybTogcm90YXRlKCRkZWcpO1xufVxuXG4uc29jaWFsX21lZGlhX19pdGVtIHtcbiAgd2lkdGg6MzRweDtcbiAgaGVpZ2h0OjM0cHg7XG4gIGZsb2F0OmxlZnQ7XG4gIHBhZGRpbmctcmlnaHQ6NXB4O1xuICBjdXJzb3I6cG9pbnRlcjtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwgLjJzIGxpbmVhcik7XG4gIGEge1xuICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgd2lkdGg6MzRweDtcbiAgICBoZWlnaHQ6MzRweDtcbiAgfVxufVxuXG5AbWl4aW4gc29jaWFsX21lZGlhX19pdGVtKCRpbWFnZSwgJGltYWdlX2hvdmVyKSB7XG4gIEBleHRlbmQgLnNvY2lhbF9tZWRpYV9faXRlbTtcbiAgYmFja2dyb3VuZDogdXJsKCRpbWFnZSkgbm8tcmVwZWF0O1xuICAmOmhvdmVyIHsgYmFja2dyb3VuZDogdXJsKCRpbWFnZV9ob3Zlcikgbm8tcmVwZWF0OyB9XG59XG5cbi5zb2NpYWxfbWVkaWEtLWZhY2Vib29rIHtcbiAgQGluY2x1ZGUgc29jaWFsX21lZGlhX19pdGVtKCcuLi9ncmFwaGljcy9zb2NpYWwvZmFjZWJvb2sucG5nJywgJy4uL2dyYXBoaWNzL3NvY2lhbC9mYWNlYm9vay1yb2xsb3Zlci5wbmcnKTtcbn1cblxuLnNvY2lhbF9tZWRpYS0tdHdpdHRlciB7XG4gIEBpbmNsdWRlIHNvY2lhbF9tZWRpYV9faXRlbSgnLi4vZ3JhcGhpY3Mvc29jaWFsL3R3aXR0ZXIucG5nJywgJy4uL2dyYXBoaWNzL3NvY2lhbC90d2l0dGVyLXJvbGxvdmVyLnBuZycpO1xufVxuXG4uc29jaWFsX21lZGlhLS15b3V0dWJlIHtcbiAgQGluY2x1ZGUgc29jaWFsX21lZGlhX19pdGVtKCcuLi9ncmFwaGljcy9zb2NpYWwveW91dHViZS5wbmcnLCAnLi4vZ3JhcGhpY3Mvc29jaWFsL3lvdXR1YmUtcm9sbG92ZXIucG5nJyk7XG59XG5cbi5zb2NpYWxfbWVkaWEtLWluc3RhZ3JhbSB7XG4gIEBpbmNsdWRlIHNvY2lhbF9tZWRpYV9faXRlbSgnLi4vZ3JhcGhpY3Mvc29jaWFsL2luc3RhZ3JhbS5wbmcnLCAnLi4vZ3JhcGhpY3Mvc29jaWFsL2luc3RhZ3JhbS1yb2xsb3Zlci5wbmcnKTtcbn1cblxuQG1peGluIGJveC1zaXppbmcoKSB7XG4gIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG5AbWl4aW4gZmxleC1jZW50ZXIoKSB7XG4gIGRpc3BsYXk6IC13ZWJraXQtYm94O1xuICBkaXNwbGF5OiAtbW96LWJveDtcbiAgZGlzcGxheTogLW1zLWZsZXhib3g7XG4gIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG5cbkBtaXhpbiBmbGV4KCkge1xuICBkaXNwbGF5OiAtd2Via2l0LWJveDtcbiAgZGlzcGxheTogLW1vei1ib3g7XG4gIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xuICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG5cbi5pZS0tb2JqZWN0LWZpdCB7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gIHRyYW5zaXRpb246IGFsbCAzMDBtcyBlYXNlLW91dDtcbn1cblxuLmllLS1vYmplY3QtZml0IGltZyB7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5sYW5nLWZsb2F0LXJpZ2h0LWluaXQge1xuICBmbG9hdDpyaWdodDtcbn1cblxuLmxhbmctZmxvYXQge1xuICBmbG9hdDpsZWZ0O1xufVxuXG4uYXNzZW1ibHlfdGV4dF9jYW52YXN7XG4gIGRpc3BsYXk6bm9uZTtcbn1cblxuYm9keVtsYW5nPVwiYXJcIl0ge1xuICAubGFuZy1mbG9hdC1yaWdodC1pbml0IHtcbiAgICBmbG9hdDpsZWZ0O1xuICB9XG5cbiAgLmxhbmctZmxvYXQge1xuICAgIGZsb2F0OnJpZ2h0O1xuICB9XG59XG5cbmJvZHkge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGZvbnQtZmFtaWx5OiAnbGVrdG9ucmVndWxhcicsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMTVweDtcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiByZ2JhKDAsMCwwLDApO1xuICAmOm5vdCgubWNlLWNvbnRlbnQtYm9keSkge1xuICAgIGJhY2tncm91bmQ6ICMzMzM7XG4gIH1cbn1cblxuYm9keS5hciAubGFuZ3VhZ2UtLXRleHQge1xuICB0ZXh0LWFsaWduOnJpZ2h0O1xufVxuXG5ib2R5LmFyIHAge1xuICB0ZXh0LWFsaWduOnJpZ2h0O1xufVxuXG4uY29udGVudF9jb250YWluZXIge1xuICB3aWR0aDo5MCU7XG4gIG1hcmdpbjowIGF1dG87XG59XG5cbnVsIHtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAwO1xuICBib3JkZXI6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG5cbmEgeyBcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgY29sb3I6YmxhY2s7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgXG59XG5cbmFbaHJlZl49XCJtYWlsdG9cIl06aG92ZXIge1xuICBjb2xvcjojYjJiMmIyO1xufVxuXG4uYmFja2dyb3VuZC0tZ3JleSB7IGJhY2tncm91bmQ6ICRncmV5OyB9XG4uYmFja2dyb3VuZC0td2hpdGUgeyBiYWNrZ3JvdW5kOiAjZjdmN2Y3OyB9XG4uYmFja2dyb3VuZC0tZGFya19ncmV5IHsgYmFja2dyb3VuZDogI2YyZjJmMjsgfVxuXG5pbWcgeyBkaXNwbGF5OiBibG9jazsgfVxuXG4uYXVkaW8tLXBsYXkge1xuICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgJjphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTpibG9jaztcbiAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICB3aWR0aDoxMnB4O1xuICAgIGhlaWdodDoxNXB4O1xuICAgIHJpZ2h0OiAtMjRweDtcbiAgICB0b3A6IDRweDtcbiAgfVxuICAmLnBsYXk6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQ6IHVybCguLi9ncmFwaGljcy9pY29uLS1wbGF5LnBuZykgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXI7XG4gIH1cbiAgJi5wYXVzZTphZnRlciB7XG4gICAgYmFja2dyb3VuZDogdXJsKC4uL2dyYXBoaWNzL2ljb24tLXBhdXNlLnBuZykgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXI7XG4gIH1cbn1cblxuLm93bC1pdGVtIHsgZmxvYXQ6IGxlZnQ7IH1cbi5vd2wtZG90cyB7IFxuICBkaXNwbGF5Om5vbmU7XG4gIHdpZHRoOiAxMDAlO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogLTYzcHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgLm93bC1kb3Qge1xuICAgIHdpZHRoOiAxNXB4O1xuICAgIGhlaWdodDogMTVweDtcbiAgICBiYWNrZ3JvdW5kOiAjMjIyMjIxO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luLWxlZnQ6IDdweDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBjdXJzb3I6cG9pbnRlcjtcbiAgICAmLmFjdGl2ZSB7IGJhY2tncm91bmQ6ICNiMmIyYjI7IH1cbiAgfVxufVxuXG4ubG9nbyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHRvcDogMTVweDtcbiAgd2lkdGg6MTQ3cHg7XG4gIGhlaWdodDo0N3B4O1xuICBiYWNrZ3JvdW5kOiB1cmwoLi4vZ3JhcGhpY3MvbHdmLWxvZ28tYmxhY2sucG5nKSBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtc2l6ZTogMTQ3cHggNDdweDtcbiAgb3ZlcmZsb3c6aGlkZGVuO1xuICB0ZXh0LWluZGVudDotMTQ3cHg7XG59XG5cbi5idXR0b24ge1xuXG4gIG1hcmdpbi10b3A6IDVweDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwb3NpdGlvbjpyZWxhdGl2ZTtcblxuICBhIHtcblxuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIHBhZGRpbmc6IDEwcHggMzBweCA4cHggMTVweDtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGFsbCAuM3MgbGluZWFyKTtcbiAgICAmOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiXFxmMTA1XCI7XG4gICAgICBmb250LWZhbWlseTogRm9udEF3ZXNvbWU7XG4gICAgICBmb250LXNpemU6MS40cmVtO1xuICAgICAgZGlzcGxheTpibG9jaztcbiAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xuICAgICAgcmlnaHQ6IDEwcHg7XG4gICAgICB0b3A6IDlweDtcbiAgICAgIHdpZHRoOjEycHg7XG4gICAgICBoZWlnaHQ6MTZweDtcbiAgICB9XG4gIH1cblxufVxuXG4uYnV0dG9uLS13aGl0ZSB7XG4gIEBleHRlbmQgLmJ1dHRvbjtcbiAgJi5ob3ZlciBhIHtcbiAgICBjb2xvcjp3aGl0ZTtcbiAgICBiYWNrZ3JvdW5kOiBibGFjaztcbiAgfVxuICBhIHtcbiAgICBjb2xvcjogYmxhY2s7XG4gICAgYmFja2dyb3VuZDogd2hpdGU7XG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjp3aGl0ZTtcbiAgICAgIGJhY2tncm91bmQ6IGJsYWNrO1xuICAgIH1cbiAgfVxufVxuXG4uYnV0dG9uLS1ibGFjayB7XG4gIEBleHRlbmQgLmJ1dHRvbjtcbiAgYSB7XG4gICAgZm9udC1zaXplOmluaXRpYWw7XG4gICAgY29sb3I6IHdoaXRlO1xuICAgIGJhY2tncm91bmQ6IGJsYWNrO1xuICAgICY6aG92ZXIge1xuICAgICAgY29sb3I6YmxhY2s7XG4gICAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgICB9XG4gIH1cbn1cblxuXG5AaW1wb3J0ICd3aWRnZXRzJztcbkBpbXBvcnQgJ2NvbHVtbnMnO1xuQGltcG9ydCAnbG9hZGVyJztcbkBpbXBvcnQgJ3BhZ2VzL19nYWxsZXJ5JztcbkBpbXBvcnQgJ3RhYmxlcyc7XG5AaW1wb3J0ICdkZXNrdG9wLW1lbnUnO1xuXG4vKiBIRUFERVIgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbiNjb250ZW50IHtcblxuICBiYWNrZ3JvdW5kOiAjZjdmN2Y3O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB3aWR0aDo5MCU7XG4gIG1hcmdpbjowIGF1dG87XG5cbiAgLyogUHJldmVudCBlbGVtZW50cyB0byBiZSBoaWdobGlnaHRlZCBvbiB0YXAgKi9cbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiByZ2JhKDAsMCwwLDApO1xuXG4gIG92ZXJmbG93LXk6IHNjcm9sbDsgLyogaGFzIHRvIGJlIHNjcm9sbCwgbm90IGF1dG8gKi9cbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuXG4gIGEge1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICB9XG5cbiAgLmJ1dHRvbi0td2hpdGUge1xuICAgIGEge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIH1cbiAgfVxuXG59XG5cbiNkZXRhaWxfYnV0dG9ue1xuICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgdG9wOjA7IHJpZ2h0OjA7IGJvdHRvbTowOyBsZWZ0OjA7XG4gIHBvaW50ZXItZXZlbnRzOm5vbmU7XG59XG5cblxuI2hlYWRlciB7XG5cbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIGhlaWdodDogOTBweDtcbiAgd2lkdGg6IDEwMCU7XG4gIHotaW5kZXg6IDEwO1xuICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgcG9pbnRlci1ldmVudHM6bm9uZTtcblxuICBAaW5jbHVkZSB0cmFuc2l0aW9uKGJhY2tncm91bmQgLjNzIGxpbmVhcik7XG5cbiAgLmhlYWRlcl9fbWVudSB7XG5cbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgQGV4dGVuZCAuY29udGVudF9jb250YWluZXI7XG4gICAgQGV4dGVuZCAuY2xlYXJmaXg7XG5cbiAgICBwb2ludGVyLWV2ZW50czpub25lO1xuXG4gICAgPip7XG4gICAgICBwb2ludGVyLWV2ZW50czphbGw7XG4gICAgfVxuXG4gICAgPiBzcGFue1xuXG4gICAgICBAZXh0ZW5kIC5jbGVhcmZpeDtcbiAgICAgIGZsb2F0OnJpZ2h0O1xuICAgICAgZGlzcGxheTpmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgbWFyZ2luOjMwcHggLTEwcHggMCAtMTBweDtcblxuICAgICAgLmF0b20tLWxpbmsgc3ZnIHBhdGh7XG4gICAgICAgIGZpbGw6d2hpdGU7XG4gICAgICB9XG5cbiAgICAgID4gKntcbiAgICAgICAgaGVpZ2h0OjIycHg7XG4gICAgICAgIHBhZGRpbmc6MCAxMHB4O1xuICAgICAgICBjb2xvcjp3aGl0ZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuaGVhZGVyX19sb2dvIHtcblxuICAgICAgZmxvYXQ6bGVmdDtcbiAgICAgIEBleHRlbmQgLmxvZ287XG4gICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGFsbCAuM3MgbGluZWFyKTtcbiAgICAgIGN1cnNvcjpwb2ludGVyO1xuXG4gICAgICBhIHtcbiAgICAgICAgZGlzcGxheTpibG9jaztcbiAgICAgICAgdGV4dC1pbmRlbnQ6MTUwcHg7XG4gICAgICAgIHdpZHRoOjEwMCU7XG4gICAgICAgIGhlaWdodDoxMDAlO1xuICAgICAgICBvdmVyZmxvdzpoaWRkZW47XG4gICAgICB9XG5cbiAgICB9XG5cbiAgICAuYXRvbS0tbGlua3tcbiAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgICB3aWR0aDoyMnB4O1xuICAgIH1cblxuICAgIC5tb2JpbGVfX2J1dHRvbiB7XG4gICAgICB3aWR0aDogMjJweDtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICBpbWcge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmRlc2t0b3BfX2J1dHRvbiB7XG4gICAgICB3aWR0aDogMjJweDtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgaW1nIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgICAgfVxuICAgIH1cblxuICB9XG5cbn1cblxuYm9keVtsYW5nPVwiYXJcIl17XG5cbiAgI2hlYWRlciB7XG5cbiAgICAuaGVhZGVyX19tZW51IHtcbiAgICAgID4gc3BhbiB7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgfVxuXG4gICAgICAuaGVhZGVyX19sb2dvIHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgfVxuICAgIH1cblxuICB9XG5cbn1cblxuI2hlYWRlciB7XG5cbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcblxuICAmOm5vdCguaGVhZGVyLS1ob3Zlcikge1xuXG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCByZ2JhKDUxLDUxLDUxLDEpLCByZ2JhKDUxLDUxLDUxLDApKTtcbiAgICAgIGJvcmRlci1ib3R0b206IDA7XG5cbiAgICAgIC5oZWFkZXJfX2xvZ28ge1xuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vZ3JhcGhpY3MvbHdmLWxvZ28td2hpdGUucG5nKSBuby1yZXBlYXQ7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTQ3cHggNDdweDtcbiAgICAgIH1cblxuICAgIH1cblxuICAmLmhlYWRlci0taG92ZXIge1xuICAgIGJhY2tncm91bmQ6IHdoaXRlIWltcG9ydGFudDtcblxuICAgIC5oZWFkZXJfX21lbnUge1xuXG4gICAgICAuaGVhZGVyX19sb2dvIHtcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKC4uL2dyYXBoaWNzL2x3Zi1sb2dvLWJsYWNrLnBuZykgbm8tcmVwZWF0O1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDE0N3B4IDQ3cHg7XG4gICAgICB9XG4gICAgICAuaGVhZGVyX19sb2dvIGEge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgY29sb3I6ICRtZW51X2hpZ2hsaWdodDtcbiAgICAgIH1cblxuICAgICAgI2xhbmd7XG4gICAgICAgIGNvbG9yOiRtZW51X2hpZ2hsaWdodDtcbiAgICAgIH1cblxuICAgICAgLm1vYmlsZV9fYnV0dG9uIHtcblxuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vZ3JhcGhpY3MvbW1lbnUucG5nKSBuby1yZXBlYXQ7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcblxuICAgICAgfVxuXG4gICAgfVxuICB9XG5cbn1cblxuLypcbiNoZWFkZXIgI21haW5fbWVudSB7XG4gIC5tYWluX21lbnVfX3N1Ym1lbnUge1xuICAgIGhlaWdodDowO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgICBsZWZ0OjA7XG4gICAgdG9wOjExMHB4O1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oYWxsIC4zcyBsaW5lYXIpO1xuICB9XG4gIGxpIHtcbiAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgICAmLm9uID4gYSB7IGNvbG9yOiNhM2EzYTM7IH1cbiAgICAmOmhvdmVyIHVsIHsgaGVpZ2h0OmluaXRpYWwgfVxuICAgIGEge1xuICAgICAgZm9udC13ZWlnaHQ6NDAwO1xuICAgICAgY29sb3I6YmxhY2s7XG4gICAgICBwYWRkaW5nOiAwIDE1cHg7XG4gICAgICAmOmhvdmVyIHsgY29sb3I6ICNhM2EzYTM7IH1cbiAgICB9XG4gICAgdWwge1xuICAgICAgcGFkZGluZy1yaWdodDoyMHB4O1xuICAgICAgZGlzcGxheTpub25lO1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDo4NXB4O1xuICAgICAgei1pbmRleDoxMDtcbiAgICAgIGxpIHtcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgIHBhZGRpbmc6IDEwcHggMDtcbiAgICAgICAgJjpmaXJzdC1jaGlsZCB7IFxuICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgICAgcGFkZGluZy10b3A6MDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4qL1xuXG4vKiBDbGVhciBGbG9hdHMgKi9cbi5jbGVhcmZpeCB7IHpvb206IDE7IH1cbi5jbGVhcmZpeDphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IDA7XG4gIGNsZWFyOiBib3RoO1xuICB6b29tOiAxO1xufVxuXG4vKiBGT09URVIgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbiNmb290ZXIge1xuICBwYWRkaW5nLXRvcDogMzBweDtcbiAgcG9zaXRpb246cmVsYXRpdmU7XG4gIGJhY2tncm91bmQ6ICNmN2Y3Zjc7XG4gIHdpZHRoOiA5MCU7XG4gIG1hcmdpbjogYXV0bztcbiAgLmZvb3Rlcl9jb250YWluZXIge1xuICAgIGhlaWdodDogMjMwcHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIC5mb290ZXItY29udGVudCB7XG4gICAgICB3aWR0aDogOTAlO1xuICAgICAgbWFyZ2luOiBhdXRvO1xuICAgIH1cbiAgfVxuICAuZm9vdGVyX19sb2dvIHtcbiAgICBAZXh0ZW5kIC5sb2dvO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6NDUlO1xuICAgIGxlZnQ6MDtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vZ3JhcGhpY3MvbHdmLWxvZ28tYmxhY2sucG5nKSBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiAxNDdweCA0N3B4O1xuICAgICY6aG92ZXIge1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIH1cbiAgfVxuICAuc29jaWFsX21lZGlhIHtcbiAgICB0b3A6NDUlO1xuICAgIHBvc2l0aW9uOmFic29sdXRlO1xuICAgIHJpZ2h0OjA7XG4gIH1cbn1cblxuI21vYmlsZU1lbnV7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qIE1PQklMRSBNRU5VIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuI21vYmlsZV9fbWVudSB7XG5cbiAgbGkgYSB7XG4gICAgY29sb3I6YmxhY2s7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4wNSk7XG4gIH1cbiAgXG4gICYuYWN0aXZlIHtcbiAgICBkaXNwbGF5OmJsb2NrO1xuICB9XG5cblxufVxuXG5ib2R5IC5tbS1tZW51IHtcblxuICAubW0tbGlzdCBhLm1tLXN1Ym9wZW46YmVmb3JlIHtcbiAgICB3aWR0aDogNDBweDtcbiAgICBoZWlnaHQ6IDQwcHg7XG4gICAgYmFja2dyb3VuZDogd2hpdGUgdXJsKC4uL2dyYXBoaWNzL2Fycm93LnBuZykgNTAlIDUwJSBuby1yZXBlYXQ7XG4gICAgYm9yZGVyLWxlZnQ6MDtcbiAgfVxuXG4gIC5tbS1saXN0ID4gbGkgPiBhLm1tLXN1YmNsb3NlIHsgYmFja2dyb3VuZDogI2Y3ZjdmNzsgfVxufVxuXG5cbi5oZWFkZXItLWhvdmVye1xuICAubW9iaWxlX19idXR0b257XG4gICAgYmFja2dyb3VuZDogdXJsKC4uL2dyYXBoaWNzL21tZW51LnBuZyk7XG4gIH1cbn1cblxuXG4jbW9iaWxlX21lbnV7XG5cbn1cblxuLm1tLW1lbnUge1xuXG4gIGJhY2tncm91bmQ6I2ZmZjtcblxuICBhIHtcblxuICB9XG5cbiAgLm1tLW5hdmJhci1ib3R0b20ge1xuICAgIGJvcmRlci10b3A6IDA7XG4gIH1cblxuICAubW0tbmF2YmFye1xuICAgIHBhZGRpbmctbGVmdDoyMHB4O1xuXG4gICAgLm1tLXRpdGxlIHtcbiAgICAgIHBhZGRpbmctbGVmdDoyMHB4O1xuICAgIH1cbiAgfVxuXG5cbiAgLm1tLW5hdmJhciB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgcGFkZGluZzogMCAyMHB4O1xuICB9XG59XG5cbi5tbS1oaWdoZXN0Lm1tLW9wZW5lZCB7XG4gIC5tbS1uYXZiYXIge1xuICAgIC5tbS10aXRsZSB7XG4gICAgICBwYWRkaW5nOiA4cHggMjBweCAwIDA7XG4gICAgfVxuICB9XG59XG5cbiNtbS1ibG9ja2VyIHtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMHB4IDMwcHggMHB4IHJnYmEoMCwgMCwgMCwgMC43NSk7XG4gIC1tb3otYm94LXNoYWRvdzogMHB4IDBweCAzMHB4IDBweCByZ2JhKDAsIDAsIDAsIDAuNzUpO1xuICBib3gtc2hhZG93OiAwcHggMHB4IDMwcHggMHB4IHJnYmEoMCwgMCwgMCwgMC43NSk7XG59XG5cblxuI0FJTUNvbnRhaW5lcntcbiAgcG9zaXRpb246YWJzb2x1dGU7XG4gIHdpZHRoOjEwMCU7XG4gIGhlaWdodDoxMDAlO1xufVxuXG4vKlxuYm9keVtsYW5nPVwiYXJcIl0ge1xuICAjaGVhZGVyICNtYWluX21lbnUgPiBsaTpsYXN0LW9mLXR5cGUgYSB7XG4gICAgcGFkZGluZy1yaWdodDowO1xuICB9XG5cbiAgI2hlYWRlciAjbWFpbl9tZW51IGxpIHVsIHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICByaWdodDogLTE3cHg7XG4gIH1cbn1cbiovXG5cbkBpbXBvcnQgJ21vYmlsZSc7XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gICNwYWdlV3JhcHtcbiAgICB0b3A6IDg4cHg7XG4gIH1cbn0iLCJib2R5ICNtYWluX21lbnUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG5ib2R5IC5tb2JpbGVfX2J1dHRvbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4udHJhbnNwYXJlbnRiYWNrIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbn1cblxuI3BhZ2VXcmFwIHtcbiAgLyp2aXNpYmlsaXR5OmhpZGRlbjsqL1xuICBtYXJnaW4tdG9wOiAwO1xuICB6LWluZGV4OiAxMTtcbiAgcG9zaXRpb246IGZpeGVkO1xuICBvdmVyZmxvdy15OiBzY3JvbGw7XG4gIHRvcDogMTIwcHg7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG59XG5cbiNwYWdlV3JhcCAjcGFnZVdyYXBDbG9zZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogY2FsYygxMDAlICsgMTIwcHgpO1xuICB0b3A6IC0xMjBweDtcbn1cblxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnbGVrdG9ucmVndWxhcic7XG4gIHNyYzogdXJsKFwiLi4vZm9udC9sZWt0b24tcmVndWxhci13ZWJmb250LndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpLCB1cmwoXCIuLi9mb250L2xla3Rvbi1yZWd1bGFyLXdlYmZvbnQud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG59XG5cbjo6LXdlYmtpdC1zY3JvbGxiYXIge1xuICB3aWR0aDogMHB4O1xuICAvKiByZW1vdmUgc2Nyb2xsYmFyIHNwYWNlICovXG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAvKiBvcHRpb25hbDoganVzdCBtYWtlIHNjcm9sbGJhciBpbnZpc2libGUgKi9cbn1cblxuLnNvY2lhbF9tZWRpYV9faXRlbSwgLnNvY2lhbF9tZWRpYS0tZmFjZWJvb2ssIC5zb2NpYWxfbWVkaWEtLXR3aXR0ZXIsIC5zb2NpYWxfbWVkaWEtLXlvdXR1YmUsIC5zb2NpYWxfbWVkaWEtLWluc3RhZ3JhbSB7XG4gIHdpZHRoOiAzNHB4O1xuICBoZWlnaHQ6IDM0cHg7XG4gIGZsb2F0OiBsZWZ0O1xuICBwYWRkaW5nLXJpZ2h0OiA1cHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC4ycyBsaW5lYXI7XG4gIC1vLXRyYW5zaXRpb246IGFsbCAwLjJzIGxpbmVhcjtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4ycyBsaW5lYXI7XG4gIHRyYW5zaXRpb246IGFsbCAwLjJzIGxpbmVhcjtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xufVxuXG4uc29jaWFsX21lZGlhX19pdGVtIGEsIC5zb2NpYWxfbWVkaWEtLWZhY2Vib29rIGEsIC5zb2NpYWxfbWVkaWEtLXR3aXR0ZXIgYSwgLnNvY2lhbF9tZWRpYS0teW91dHViZSBhLCAuc29jaWFsX21lZGlhLS1pbnN0YWdyYW0gYSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMzRweDtcbiAgaGVpZ2h0OiAzNHB4O1xufVxuXG4uc29jaWFsX21lZGlhLS1mYWNlYm9vayB7XG4gIGJhY2tncm91bmQ6IHVybChcIi4uL2dyYXBoaWNzL3NvY2lhbC9mYWNlYm9vay5wbmdcIikgbm8tcmVwZWF0O1xufVxuXG4uc29jaWFsX21lZGlhLS1mYWNlYm9vazpob3ZlciB7XG4gIGJhY2tncm91bmQ6IHVybChcIi4uL2dyYXBoaWNzL3NvY2lhbC9mYWNlYm9vay1yb2xsb3Zlci5wbmdcIikgbm8tcmVwZWF0O1xufVxuXG4uc29jaWFsX21lZGlhLS10d2l0dGVyIHtcbiAgYmFja2dyb3VuZDogdXJsKFwiLi4vZ3JhcGhpY3Mvc29jaWFsL3R3aXR0ZXIucG5nXCIpIG5vLXJlcGVhdDtcbn1cblxuLnNvY2lhbF9tZWRpYS0tdHdpdHRlcjpob3ZlciB7XG4gIGJhY2tncm91bmQ6IHVybChcIi4uL2dyYXBoaWNzL3NvY2lhbC90d2l0dGVyLXJvbGxvdmVyLnBuZ1wiKSBuby1yZXBlYXQ7XG59XG5cbi5zb2NpYWxfbWVkaWEtLXlvdXR1YmUge1xuICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9ncmFwaGljcy9zb2NpYWwveW91dHViZS5wbmdcIikgbm8tcmVwZWF0O1xufVxuXG4uc29jaWFsX21lZGlhLS15b3V0dWJlOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogdXJsKFwiLi4vZ3JhcGhpY3Mvc29jaWFsL3lvdXR1YmUtcm9sbG92ZXIucG5nXCIpIG5vLXJlcGVhdDtcbn1cblxuLnNvY2lhbF9tZWRpYS0taW5zdGFncmFtIHtcbiAgYmFja2dyb3VuZDogdXJsKFwiLi4vZ3JhcGhpY3Mvc29jaWFsL2luc3RhZ3JhbS5wbmdcIikgbm8tcmVwZWF0O1xufVxuXG4uc29jaWFsX21lZGlhLS1pbnN0YWdyYW06aG92ZXIge1xuICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9ncmFwaGljcy9zb2NpYWwvaW5zdGFncmFtLXJvbGxvdmVyLnBuZ1wiKSBuby1yZXBlYXQ7XG59XG5cbi5pZS0tb2JqZWN0LWZpdCB7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gIHRyYW5zaXRpb246IGFsbCAzMDBtcyBlYXNlLW91dDtcbn1cblxuLmllLS1vYmplY3QtZml0IGltZyB7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5sYW5nLWZsb2F0LXJpZ2h0LWluaXQge1xuICBmbG9hdDogcmlnaHQ7XG59XG5cbi5sYW5nLWZsb2F0IHtcbiAgZmxvYXQ6IGxlZnQ7XG59XG5cbi5hc3NlbWJseV90ZXh0X2NhbnZhcyB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbmJvZHlbbGFuZz1cImFyXCJdIC5sYW5nLWZsb2F0LXJpZ2h0LWluaXQge1xuICBmbG9hdDogbGVmdDtcbn1cblxuYm9keVtsYW5nPVwiYXJcIl0gLmxhbmctZmxvYXQge1xuICBmbG9hdDogcmlnaHQ7XG59XG5cbmJvZHkge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGZvbnQtZmFtaWx5OiAnbGVrdG9ucmVndWxhcicsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMTVweDtcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiByZ2JhKDAsIDAsIDAsIDApO1xufVxuXG5ib2R5Om5vdCgubWNlLWNvbnRlbnQtYm9keSkge1xuICBiYWNrZ3JvdW5kOiAjMzMzO1xufVxuXG5ib2R5LmFyIC5sYW5ndWFnZS0tdGV4dCB7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xufVxuXG5ib2R5LmFyIHAge1xuICB0ZXh0LWFsaWduOiByaWdodDtcbn1cblxuLmNvbnRlbnRfY29udGFpbmVyLCAud2lkZ2V0LS1jb3B5IC53aWRnZXRfX2RldGFpbCwgLndpZGdldC0tYnVkZHkgLndpZGdldF9fZGV0YWlsLCAud2lkZ2V0LS1zdW1tYXJ5IC53aWRnZXRfX2RldGFpbCwgLndpZGdldC0tc3VtbWFyeS53aWRnZXQtLXN1bW1hcnktLWxpc3QtaW1hZ2UgLndpZGdldF9faXRlbSAuY29sLS1jb250YWluZXIsIC53aWRnZXQtLWNvbnRhY3QgLndpZGdldF9fZGV0YWlsLCAucGFnZS0tZ2FsbGVyeSAuZ2FsbGVyeV9fb3RoZXIsIC5maWx0ZXJzLCAjaGVhZGVyIC5oZWFkZXJfX21lbnUge1xuICB3aWR0aDogOTAlO1xuICBtYXJnaW46IDAgYXV0bztcbn1cblxudWwge1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIGJvcmRlcjogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cblxuYSB7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGNvbG9yOiBibGFjaztcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG5hW2hyZWZePVwibWFpbHRvXCJdOmhvdmVyIHtcbiAgY29sb3I6ICNiMmIyYjI7XG59XG5cbi5iYWNrZ3JvdW5kLS1ncmV5IHtcbiAgYmFja2dyb3VuZDogI2Y2ZjZmNjtcbn1cblxuLmJhY2tncm91bmQtLXdoaXRlIHtcbiAgYmFja2dyb3VuZDogI2Y3ZjdmNztcbn1cblxuLmJhY2tncm91bmQtLWRhcmtfZ3JleSB7XG4gIGJhY2tncm91bmQ6ICNmMmYyZjI7XG59XG5cbmltZyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uYXVkaW8tLXBsYXkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5hdWRpby0tcGxheTphZnRlciB7XG4gIGNvbnRlbnQ6ICcnO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMTJweDtcbiAgaGVpZ2h0OiAxNXB4O1xuICByaWdodDogLTI0cHg7XG4gIHRvcDogNHB4O1xufVxuXG4uYXVkaW8tLXBsYXkucGxheTphZnRlciB7XG4gIGJhY2tncm91bmQ6IHVybCguLi9ncmFwaGljcy9pY29uLS1wbGF5LnBuZykgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXI7XG59XG5cbi5hdWRpby0tcGxheS5wYXVzZTphZnRlciB7XG4gIGJhY2tncm91bmQ6IHVybCguLi9ncmFwaGljcy9pY29uLS1wYXVzZS5wbmcpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyO1xufVxuXG4ub3dsLWl0ZW0ge1xuICBmbG9hdDogbGVmdDtcbn1cblxuLm93bC1kb3RzIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgd2lkdGg6IDEwMCU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAtNjNweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4ub3dsLWRvdHMgLm93bC1kb3Qge1xuICB3aWR0aDogMTVweDtcbiAgaGVpZ2h0OiAxNXB4O1xuICBiYWNrZ3JvdW5kOiAjMjIyMjIxO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLWxlZnQ6IDdweDtcbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLm93bC1kb3RzIC5vd2wtZG90LmFjdGl2ZSB7XG4gIGJhY2tncm91bmQ6ICNiMmIyYjI7XG59XG5cbi5sb2dvLCAjaGVhZGVyIC5oZWFkZXJfX21lbnUgLmhlYWRlcl9fbG9nbywgI2Zvb3RlciAuZm9vdGVyX19sb2dvIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmbG9hdDogbGVmdDtcbiAgdG9wOiAxNXB4O1xuICB3aWR0aDogMTQ3cHg7XG4gIGhlaWdodDogNDdweDtcbiAgYmFja2dyb3VuZDogdXJsKC4uL2dyYXBoaWNzL2x3Zi1sb2dvLWJsYWNrLnBuZykgbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXNpemU6IDE0N3B4IDQ3cHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtaW5kZW50OiAtMTQ3cHg7XG59XG5cbi5idXR0b24sIC5idXR0b24tLXdoaXRlLCAuYnV0dG9uLS1ibGFjayB7XG4gIG1hcmdpbi10b3A6IDVweDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5idXR0b24gYSwgLmJ1dHRvbi0td2hpdGUgYSwgLmJ1dHRvbi0tYmxhY2sgYSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgcGFkZGluZzogMTBweCAzMHB4IDhweCAxNXB4O1xuICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjNzIGxpbmVhcjtcbiAgLW8tdHJhbnNpdGlvbjogYWxsIDAuM3MgbGluZWFyO1xuICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjNzIGxpbmVhcjtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgbGluZWFyO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG59XG5cbi5idXR0b24gYTphZnRlciwgLmJ1dHRvbi0td2hpdGUgYTphZnRlciwgLmJ1dHRvbi0tYmxhY2sgYTphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXFxmMTA1XCI7XG4gIGZvbnQtZmFtaWx5OiBGb250QXdlc29tZTtcbiAgZm9udC1zaXplOiAxLjRyZW07XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAxMHB4O1xuICB0b3A6IDlweDtcbiAgd2lkdGg6IDEycHg7XG4gIGhlaWdodDogMTZweDtcbn1cblxuLmJ1dHRvbi0td2hpdGUuaG92ZXIgYSB7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgYmFja2dyb3VuZDogYmxhY2s7XG59XG5cbi5idXR0b24tLXdoaXRlIGEge1xuICBjb2xvcjogYmxhY2s7XG4gIGJhY2tncm91bmQ6IHdoaXRlO1xufVxuXG4uYnV0dG9uLS13aGl0ZSBhOmhvdmVyIHtcbiAgY29sb3I6IHdoaXRlO1xuICBiYWNrZ3JvdW5kOiBibGFjaztcbn1cblxuLmJ1dHRvbi0tYmxhY2sgYSB7XG4gIGZvbnQtc2l6ZTogaW5pdGlhbDtcbiAgY29sb3I6IHdoaXRlO1xuICBiYWNrZ3JvdW5kOiBibGFjaztcbn1cblxuLmJ1dHRvbi0tYmxhY2sgYTpob3ZlciB7XG4gIGNvbG9yOiBibGFjaztcbiAgYmFja2dyb3VuZDogd2hpdGU7XG59XG5cbi53aWRnZXQtLWdhbGxlcnkge1xuICB3aWR0aDogOTAlO1xuICBtYXJnaW46IDAgYXV0byA0MHB4IGF1dG87XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gIC53aWRnZXQtLWdhbGxlcnkge1xuICAgIG1hcmdpbjogMCBhdXRvIDBweCBhdXRvO1xuICB9XG59XG5cbi53aWRnZXQtLWdhbGxlcnkgLndpZGdldF9fZ2FsbGVyeSB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW46IGF1dG87XG4gIG1heC1oZWlnaHQ6IDg4MHB4O1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbn1cblxuLndpZGdldC0tZ2FsbGVyeSAud2lkZ2V0X19nYWxsZXJ5LndpZGdldC0tYWN0aXZlIC53aWRnZXRfX2ltYWdlIHtcbiAgb3BhY2l0eTogMTtcbn1cblxuLndpZGdldC0tZ2FsbGVyeSAud2lkZ2V0X19pbWFnZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3BhY2l0eTogMDtcbiAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC42cyBsaW5lYXI7XG4gIC1vLXRyYW5zaXRpb246IGFsbCAwLjZzIGxpbmVhcjtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC42cyBsaW5lYXI7XG4gIHRyYW5zaXRpb246IGFsbCAwLjZzIGxpbmVhcjtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4ud2lkZ2V0LS1nYWxsZXJ5IC53aWRnZXRfX2ltYWdlIGltZyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtaW4td2lkdGg6IDEwMCU7XG4gIG1pbi1oZWlnaHQ6IDMwMHB4O1xuICBtYXgtaGVpZ2h0OiA4ODBweDtcbiAgb2JqZWN0LWZpdDogY292ZXI7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA2MDBweCkge1xuICAud2lkZ2V0LS1nYWxsZXJ5IC53aWRnZXRfX2ltYWdlIGltZyB7XG4gICAgbWluLWhlaWdodDogdW5zZXQ7XG4gICAgbWF4LWhlaWdodDogdW5zZXQ7XG4gIH1cbn1cblxuLndpZGdldC0tZ2FsbGVyeSAud2lkZ2V0X19pbWFnZSAud2lkZ2V0X19jYXB0aW9uIHtcbiAgd2lkdGg6IDgwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBtYXgtd2lkdGg6IDEwMTVweDtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgLndpZGdldC0tZ2FsbGVyeSAud2lkZ2V0X19pbWFnZSAud2lkZ2V0X19jYXB0aW9uIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuXG4ud2lkZ2V0LS1nYWxsZXJ5IC53aWRnZXRfX2ltYWdlIC53aWRnZXRfX2NhcHRpb24gPiBkaXYge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogNzVweDtcbiAgbWF4LXdpZHRoOiA2MCU7XG59XG5cbi53aWRnZXQtLWdhbGxlcnkgLndpZGdldF9faW1hZ2UgLndpZGdldF9fY2FwdGlvbiA+IGRpdiBzcGFuLnMxIHtcbiAgZm9udC1zaXplOiAycmVtO1xufVxuXG4ud2lkZ2V0LS1nYWxsZXJ5IC53aWRnZXRfX2ltYWdlIC53aWRnZXRfX2NhcHRpb24gPiBkaXYgcCB7XG4gIGZvbnQtc2l6ZTogM3JlbTtcbiAgY29sb3I6IHdoaXRlO1xuICBmb250LXdlaWdodDogNzAwO1xuICBtYXJnaW4tYm90dG9tOiA3MHB4O1xuICBsaW5lLWhlaWdodDogMy41cmVtO1xuICBvcGFjaXR5OiAwLjQ7XG4gIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuM3MgbGluZWFyO1xuICAtby10cmFuc2l0aW9uOiBhbGwgMC4zcyBsaW5lYXI7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuM3MgbGluZWFyO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBsaW5lYXI7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbn1cblxuLndpZGdldC0tZ2FsbGVyeSAud2lkZ2V0X19pbWFnZSAud2lkZ2V0X19jYXB0aW9uID4gZGl2IHAgYSB7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC4zcyBsaW5lYXI7XG4gIC1vLXRyYW5zaXRpb246IGFsbCAwLjNzIGxpbmVhcjtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4zcyBsaW5lYXI7XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGxpbmVhcjtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xufVxuXG4ud2lkZ2V0LS1nYWxsZXJ5IC53aWRnZXRfX2ltYWdlIC53aWRnZXRfX2NhcHRpb24gPiBkaXYgcDpob3ZlciB7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi53aWRnZXQtLWdhbGxlcnkgLndpZGdldF9faW1hZ2UgLndpZGdldF9fY2FwdGlvbiA+IGRpdiBwLndpZGdldF9fY2FwdGlvbi0taG92ZXIge1xuICBvcGFjaXR5OiAxO1xufVxuXG4ud2lkZ2V0LS1nYWxsZXJ5IC53aWRnZXRfX2ltYWdlIC53aWRnZXRfX2NhcHRpb24gLmNvbC0tY29udGFpbmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXgtd2lkdGg6IDEwMCU7XG59XG5cbi53aWRnZXQtLWdhbGxlcnkgLndpZGdldF9faW1hZ2UgLndpZGdldF9fY2FwdGlvbiAud2lkZ2V0X19jYXB0aW9uLS1ob3ZlciB7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi53aWRnZXRfX2dhbGxlcnkgLm93bC12aWRlby1wbGF5LWljb24ge1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcyBlYXNlO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9ncmFwaGljcy9zdmcvbHdmLXBsYXkuc3ZnXCIpICFpbXBvcnRhbnQ7XG59XG5cbi53aWRnZXRfX2dhbGxlcnkgLm93bC12aWRlby1wbGF5LWljb246aG92ZXIge1xuICB0cmFuc2Zvcm06IHNjYWxlKDEuMik7XG59XG5cbmJvZHkgLnBhZ2UtLWdhbGxlcnkgLndpZGdldC0tZ2FsbGVyeSAud2lkZ2V0X19pbWFnZSAud2lkZ2V0X19jYXB0aW9uIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuYm9keSAucGFnZS0tZ2FsbGVyeSAud2lkZ2V0LS1nYWxsZXJ5IC53aWRnZXRfX2ltYWdlIC53aWRnZXRfX2NhcHRpb24ge1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwcHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQ6IHJnYmEoMSwgMSwgMSwgMC4zKTtcbn1cblxuYm9keSAucGFnZS0tZ2FsbGVyeSAud2lkZ2V0LS1nYWxsZXJ5IC53aWRnZXRfX2ltYWdlIC53aWRnZXRfX2NhcHRpb24gPiBkaXYge1xuICBwb3NpdGlvbjogc3RhdGljO1xuICBtYXJnaW4tdG9wOiAyMHB4O1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xufVxuXG5ib2R5IC5wYWdlLS1nYWxsZXJ5IC53aWRnZXQtLWdhbGxlcnkgLndpZGdldF9faW1hZ2UgLndpZGdldF9fY2FwdGlvbiA+IGRpdiBwIHtcbiAgZm9udC1zaXplOiAxLjhyZW07XG4gIG9wYWNpdHk6IDE7XG4gIG1hcmdpbjogMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG5ib2R5IC5wYWdlLS1nYWxsZXJ5IC5nYWxsZXJ5X19pdGVtID4gZGl2IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG5ib2R5IC5wYWdlLS1nYWxsZXJ5IC5nYWxsZXJ5X19pdGVtIC50aXRsZSB7XG4gIHBhZGRpbmc6IDEwcHggMjBweCAxMHB4IDIwcHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAwO1xuICBtaW4taGVpZ2h0OiA1NXB4O1xuICB3aWR0aDogMTAwJTtcbiAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjkpO1xuICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuYm9keSAucGFnZS0tZ2FsbGVyeSAuZ2FsbGVyeV9faXRlbSAudGl0bGUgcCB7XG4gIG1hcmdpbjogMCAwIDJweCAwO1xuICBmb250LXdlaWdodDogNDAwO1xufVxuXG5ib2R5IC5wYWdlLS1nYWxsZXJ5IC5nYWxsZXJ5X19pdGVtIC50aXRsZSBwOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luOiAwO1xuICBsaW5lLWhlaWdodDogMThweDtcbn1cblxuYm9keSAucGFnZS0tZ2FsbGVyeSAuZ2FsbGVyeV9faXRlbSAudGl0bGUgLnRpdGxlLS1saW5rIHtcbiAgY29sb3I6ICM3OTc3Nzc7XG4gIGxpbmUtaGVpZ2h0OiAxZW07XG59XG5cbmJvZHkgLnBhZ2UtLWdhbGxlcnkgLmdhbGxlcnlfX2l0ZW0gLnRpdGxlIC50aXRsZS0tbGluazpob3ZlciB7XG4gIGNvbG9yOiBibGFjaztcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG5cbmJvZHkgLnBhZ2UtLWdhbGxlcnkgLmdhbGxlcnlfX2l0ZW0uYWN0aXZlIC50aXRsZS0tbGluayB7XG4gIGNvbG9yOiBibGFjaztcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG5cbi5vd2wtbmF2IHtcbiAgdG9wOiA1MCU7XG4gIHdpZHRoOiAxMDAlO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG59XG5cbi5vd2wtbmF2LmRpc2FibGVkIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLm93bC1uYXYgPiBkaXYge1xuICB0b3A6IC0yNHB4O1xuICBwb3NpdGlvbjogaW5oZXJpdDtcbiAgd2lkdGg6IDI0cHg7XG4gIGhlaWdodDogMjRweDtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgdXJsKFwiLi4vZ3JhcGhpY3Mvc3ZnL2x3Zi1hcnJvdy5zdmdcIikgNDElIDUwJSBuby1yZXBlYXQ7XG4gIHRleHQtaW5kZW50OiAtNTBweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4ub3dsLW5hdiA+IGRpdi5kaXNhYmxlZCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5vd2wtbmF2IC5vd2wtbmV4dCB7XG4gIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcbiAgLW8tdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG4gIHJpZ2h0OiAtMzVweDtcbn1cblxuLm93bC1uYXYgLm93bC1uZXh0OmhvdmVyIHtcbiAgcmlnaHQ6IC00MHB4O1xufVxuXG4ub3dsLW5hdiAub3dsLXByZXYge1xuICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XG4gIC1vLXRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xuICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gIC1tb3otdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbiAgLW8tdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbiAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gIGxlZnQ6IC0zNXB4O1xufVxuXG4ub3dsLW5hdiAub3dsLXByZXY6aG92ZXIge1xuICBsZWZ0OiAtNDBweDtcbn1cblxuYm9keVtsYW5nPSdhciddIC53aWRnZXQtLWdhbGxlcnkgLndpZGdldF9faW1hZ2UgLndpZGdldF9fY2FwdGlvbiAuYnV0dG9uLS13aGl0ZSB7XG4gIGZsb2F0OiByaWdodDtcbn1cblxuYm9keVtsYW5nPSdhciddIC53aWRnZXQtLWdhbGxlcnkgLndpZGdldF9faW1hZ2UgLndpZGdldF9fY2FwdGlvbiA+IGRpdiB7XG4gIHJpZ2h0OiAwO1xufVxuXG4ud2lkZ2V0X19nYWxsZXJ5LS1pbmxpbmUtLXBhcmVudCAud2lkZ2V0X19nYWxsZXJ5LS1pbmxpbmUtLWlubmVyIHtcbiAgd2lkdGg6IDkwJTtcbiAgbWFyZ2luOiBhdXRvO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi53aWRnZXRfX2dhbGxlcnktLWlubGluZS0tcGFyZW50IC53aWRnZXRfX2dhbGxlcnktLWlubGluZS0taW5uZXIgLndpZGdldF9fZ2FsbGVyeS0taW5saW5lIHtcbiAgd2lkdGg6IDQ1JTtcbn1cblxuLndpZGdldF9fZ2FsbGVyeS0taW5saW5lLS1wYXJlbnQgLndpZGdldF9fZ2FsbGVyeS0taW5saW5lLS1pbm5lciAud2lkZ2V0X19jYXB0aW9uIHtcbiAgd2lkdGg6IDUwJTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDUwJTtcbn1cblxuLndpZGdldF9fZ2FsbGVyeS0taW5saW5lLS1wYXJlbnQgLndpZGdldF9fZ2FsbGVyeS0taW5saW5lLS1pbm5lciAud2lkZ2V0X19jYXB0aW9uIGRpdiB7XG4gIG1hcmdpbi10b3A6IDUwcHg7XG59XG5cbi53aWRnZXRfX2dhbGxlcnktLWlubGluZS0tcGFyZW50IC53aWRnZXRfX2dhbGxlcnktLWlubGluZS0taW5uZXIgLndpZGdldF9fY2FwdGlvbiBkaXY6bm90KC5hY3RpdmUpIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLndpZGdldF9fZ2FsbGVyeS0taW5saW5lLS1wYXJlbnQgLndpZGdldF9fZ2FsbGVyeS0taW5saW5lLS1pbm5lciAud2lkZ2V0X19jYXB0aW9uX19pbmxpbmUge1xuICB3aWR0aDogNTAlO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogNTAlO1xufVxuXG4ud2lkZ2V0X19nYWxsZXJ5LS1pbmxpbmUtLXBhcmVudCAud2lkZ2V0X19nYWxsZXJ5LS1pbmxpbmUtLWlubmVyIC53aWRnZXRfX2NhcHRpb25fX2lubGluZSBkaXYge1xuICBtYXJnaW4tdG9wOiA1MHB4O1xufVxuXG4ud2lkZ2V0X19nYWxsZXJ5LS1pbmxpbmUtLXBhcmVudCAud2lkZ2V0X19nYWxsZXJ5LS1pbmxpbmUtLWlubmVyIC53aWRnZXRfX2NhcHRpb25fX2lubGluZSBkaXY6bm90KC5hY3RpdmUpIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLndpZGdldF9fZ2FsbGVyeS0taW5saW5lLS1wYXJlbnQgLndpZGdldF9fZ2FsbGVyeS0taW5saW5lLS1pbm5lciAub3dsLW5hdiAub3dsLW5leHQge1xuICByaWdodDogLTI1cHg7XG59XG5cbi53aWRnZXRfX2dhbGxlcnktLWlubGluZS0tcGFyZW50IC53aWRnZXRfX2dhbGxlcnktLWlubGluZS0taW5uZXIgLm93bC1uYXYgLm93bC1wcmV2IHtcbiAgbGVmdDogLTI1cHg7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjRweCkge1xuICAud2lkZ2V0X19nYWxsZXJ5LS1pbmxpbmUtLXBhcmVudCAud2lkZ2V0X19nYWxsZXJ5LS1pbmxpbmUtLWlubmVyIC53aWRnZXRfX2dhbGxlcnktLWlubGluZSB7XG4gICAgd2lkdGg6IDkwJTtcbiAgICBtYXJnaW46IGF1dG87XG4gIH1cbiAgLndpZGdldF9fZ2FsbGVyeS0taW5saW5lLS1wYXJlbnQgLndpZGdldF9fZ2FsbGVyeS0taW5saW5lLS1pbm5lciAud2lkZ2V0X19jYXB0aW9uIHtcbiAgICB3aWR0aDogOTAlO1xuICAgIG1hcmdpbjogYXV0bztcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICB9XG4gIC53aWRnZXRfX2dhbGxlcnktLWlubGluZS0tcGFyZW50IC53aWRnZXRfX2dhbGxlcnktLWlubGluZS0taW5uZXIgLndpZGdldF9fY2FwdGlvbiBkaXYge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgfVxuICAud2lkZ2V0X19nYWxsZXJ5LS1pbmxpbmUtLXBhcmVudCAud2lkZ2V0X19nYWxsZXJ5LS1pbmxpbmUtLWlubmVyIC5vd2wtbmF2IC5vd2wtbmV4dCB7XG4gICAgcmlnaHQ6IC0yNXB4O1xuICB9XG4gIC53aWRnZXRfX2dhbGxlcnktLWlubGluZS0tcGFyZW50IC53aWRnZXRfX2dhbGxlcnktLWlubGluZS0taW5uZXIgLm93bC1uYXYgLm93bC1wcmV2IHtcbiAgICBsZWZ0OiAtMjVweDtcbiAgfVxufVxuXG4ud2lkZ2V0LS1jb3B5IHtcbiAgbWFyZ2luOiBhdXRvO1xufVxuXG4ud2lkZ2V0LS1jb3B5Om5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgLypwYWRkaW5nOiAyJSAwOyovXG59XG5cbi53aWRnZXQtLWNvcHkgLndpZGdldF9fZGV0YWlsIHtcbiAgcGFkZGluZy1yaWdodDogMTAlO1xuICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuLndpZGdldC0tY29weSAud2lkZ2V0X19kZXRhaWwgaDIge1xuICBmb250LXdlaWdodDogNDAwO1xufVxuXG4ud2lkZ2V0LS1jb3B5IC53aWRnZXRfX2RldGFpbCBoNCB7XG4gIG1hcmdpbjogMDtcbn1cblxuLndpZGdldC0tcGVyc29uIHtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBjb2xvcjogI2FmYWZhZjtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbn1cblxuLndpZGdldC0tcGVyc29uIC53aWRnZXRfX3RpdGxlIGEge1xuICBjb2xvcjogI2ZlMDAwMDtcbiAgZm9udC1zdHlsZTogaW5pdGlhbDtcbn1cblxuLndpZGdldC0tcGVyc29uIGltZyB7XG4gIG1heC13aWR0aDogNTAlO1xufVxuXG5ib2R5LmFyIC53aWRnZXQtLWNvcHkgLndpZGdldF9fZGV0YWlsIHtcbiAgcGFkZGluZy1yaWdodDogMDtcbiAgcGFkZGluZy1sZWZ0OiAxMCU7XG59XG5cbmJvZHkuYXIgLndpZGdldC0tY29weSAud2lkZ2V0X19kZXRhaWwgaDEsIGJvZHkuYXIgLndpZGdldC0tY29weSAud2lkZ2V0X19kZXRhaWwgaDIsIGJvZHkuYXIgLndpZGdldC0tY29weSAud2lkZ2V0X19kZXRhaWwgaDMge1xuICB0ZXh0LWFsaWduOiByaWdodDtcbn1cblxuLndpZGdldC0tYnVkZHkge1xuICBwYWRkaW5nOiA0MHB4IDAgMCAwO1xufVxuXG4ud2lkZ2V0LS1idWRkeSAud2lkZ2V0X19kZXRhaWwge1xuICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuLndpZGdldC0tYnVkZHkgLndpZGdldF9fZGV0YWlsIGgzIHtcbiAgY29sb3I6IGJsYWNrICFpbXBvcnRhbnQ7XG4gIGZvbnQtd2VpZ2h0OiBib2xkICFpbXBvcnRhbnQ7XG4gIGZvbnQtc2l6ZTogMS4xZW0gIWltcG9ydGFudDtcbn1cblxuLndpZGdldC0tYnVkZHkgLndpZGdldF9fZGV0YWlsIC5pdGVtIHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xufVxuXG4ud2lkZ2V0LS1idWRkeSAudGFiIHtcbiAgcGFkZGluZzogMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBjb2xvcjogd2hpdGU7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogMDtcbn1cblxuLndpZGdldC0tYnVkZHkgLnRhYiBsaSB7XG4gIGJvcmRlcjogMDtcbn1cblxuLndpZGdldC0tYnVkZHkgLnRhYiBsaTpob3ZlciBhIHtcbiAgYmFja2dyb3VuZDogYmxhY2s7XG4gIGNvbG9yOiB3aGl0ZTtcbn1cblxuLndpZGdldC0tYnVkZHkgLnRhYiBsaSBhIHtcbiAgb3V0bGluZTogbm9uZTtcbiAgYm9yZGVyOiAwO1xuICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbn1cblxuLndpZGdldC0tYnVkZHkgLml0ZW1fX3RhYnMge1xuICBmb250LWZhbWlseTogJ2xla3RvbnJlZ3VsYXInLCBzYW5zLXNlcmlmO1xuICBib3JkZXI6IDAgIWltcG9ydGFudDtcbiAgcGFkZGluZzogMDtcbiAgYmFja2dyb3VuZDogbm9uZTtcbn1cblxuLndpZGdldC0tYnVkZHkgLml0ZW1fX3RhYnMgbGkge1xuICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7XG59XG5cbi53aWRnZXQtLWJ1ZGR5IC5pdGVtX190YWJzIC51aS10YWJzLW5hdiB7XG4gIGJvcmRlci1ib3R0b206IDA7XG59XG5cbi53aWRnZXQtLWJ1ZGR5IC5pdGVtX190YWJzIC51aS10YWJzLWFjdGl2ZSB7XG4gIGJhY2tncm91bmQ6IGJsYWNrO1xuICBib3JkZXI6IDA7XG4gIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcbiAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xufVxuXG4ud2lkZ2V0LS1idWRkeSAuaXRlbV9fdGFicyAudWktdGFicy1hY3RpdmUgYSB7XG4gIGJhY2tncm91bmQ6IGJsYWNrICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiB3aGl0ZTtcbn1cblxuLndpZGdldC0tc3VtbWFyeSB7XG4gIHBhZGRpbmc6IDQwcHggMCA2MHB4IDA7XG4gIG1hcmdpbjogYXV0bztcbiAgd2lkdGg6IDkwJTtcbn1cblxuLndpZGdldC0tc3VtbWFyeSAud2lkZ2V0X19kZXRhaWwge1xuICBjb2xvcjogYmxhY2s7XG4gIG1hcmdpbjogMCBhdXRvO1xufVxuXG4ud2lkZ2V0LS1zdW1tYXJ5IC53aWRnZXRfX2RldGFpbCBsaSB7XG4gIHBhZGRpbmc6IDIwcHggMDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlZWU7XG59XG5cbi53aWRnZXQtLXN1bW1hcnkgLndpZGdldF9fZGV0YWlsIGxpOmZpcnN0LWNoaWxkIHtcbiAgcGFkZGluZzogMCAwIDIwcHggMDtcbn1cblxuLndpZGdldC0tc3VtbWFyeSAud2lkZ2V0X19kZXRhaWwgbGkgYSB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4ud2lkZ2V0LS1zdW1tYXJ5IC53aWRnZXRfX2RldGFpbCBsaSBhIGgyIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG5cbi53aWRnZXQtLXN1bW1hcnkgLndpZGdldF9fZGV0YWlsIGxpIGE6aG92ZXIgaDIubGFuZ3VhZ2UtLXRleHQge1xuICBjb2xvcjogI2FmYWZhZjtcbn1cblxuLndpZGdldC0tc3VtbWFyeSAud2lkZ2V0X19kZXRhaWwgYSB7XG4gIGNvbG9yOiBpbmhlcml0O1xufVxuXG4ud2lkZ2V0LS1zdW1tYXJ5IC53aWRnZXRfX2RldGFpbCBoMiB7XG4gIG1hcmdpbjogMDtcbiAgZm9udC1zaXplOiAxLjNlbTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbn1cblxuLndpZGdldC0tc3VtbWFyeSAud2lkZ2V0X19kZXRhaWwgaDMge1xuICBmb250LXNpemU6IDAuOXJlbTtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgY29sb3I6ICNiMmIyYjI7XG59XG5cbi53aWRnZXQtLXN1bW1hcnkgLndpZGdldF9faW1hZ2Uge1xuICBiYWNrZ3JvdW5kOiB3aGl0ZSB1cmwoXCIuLi9ncmFwaGljcy9nYWxsZXJ5LWxvYWRpbmcuZ2lmXCIpIDUwJSA1MCUgbm8tcmVwZWF0ICFpbXBvcnRhbnQ7XG59XG5cbi53aWRnZXQtLXN1bW1hcnkgLndpZGdldF9faW1hZ2UgaW1nIHtcbiAgb3BhY2l0eTogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuNnMgbGluZWFyO1xuICAtby10cmFuc2l0aW9uOiBhbGwgMC42cyBsaW5lYXI7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuNnMgbGluZWFyO1xuICB0cmFuc2l0aW9uOiBhbGwgMC42cyBsaW5lYXI7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbn1cblxuLndpZGdldC0tc3VtbWFyeSAud2lkZ2V0X19pdGVtIHtcbiAgbWFyZ2luOiBhdXRvO1xufVxuXG4ud2lkZ2V0LS1zdW1tYXJ5IC53aWRnZXRfX2l0ZW0gLmNvbC0tY29udGFpbmVyIHtcbiAgLXdlYmtpdC1kaXNwbGF5OiBmbGV4O1xuICAtbXMtZGlzcGxheTogZmxleDtcbiAgZGlzcGxheTogZmxleDtcbn1cblxuLyogR1JJRCAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4ud2lkZ2V0LS1zdW1tYXJ5LndpZGdldC0tc3VtbWFyeS0tZ3JpZCAuY29sLS1jb250YWluZXIge1xuICBtYXJnaW4tbGVmdDogLTEwcHg7XG4gIG1hcmdpbi1yaWdodDogLTEwcHg7XG59XG5cbi53aWRnZXQtLXN1bW1hcnkud2lkZ2V0LS1zdW1tYXJ5LS1ncmlkIC5jb2wtLWNvbnRhaW5lciA+IGRpdiB7XG4gIHBhZGRpbmc6IDEwcHggNXB4IDVweCAxMHB4O1xufVxuXG4ud2lkZ2V0LS1zdW1tYXJ5LndpZGdldC0tc3VtbWFyeS0tZ3JpZCAuY29sLS1jb250YWluZXIgPiBkaXYgLndpZGdldF9faXRlbSB7XG4gIHBhZGRpbmc6IDI1cHg7XG4gIGJhY2tncm91bmQ6ICNmMmYyZjI7XG59XG5cbi53aWRnZXQtLXN1bW1hcnkud2lkZ2V0LS1zdW1tYXJ5LS1ncmlkIC5jb2wtLWNvbnRhaW5lciA+IGRpdiAud2lkZ2V0X19pdGVtIC53aWRnZXRfX2RhdGUge1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICBjb2xvcjogIzlkOWQ5ZDtcbn1cblxuLndpZGdldC0tc3VtbWFyeS53aWRnZXQtLXN1bW1hcnktLWdyaWQgLmNvbC0tY29udGFpbmVyID4gZGl2IC53aWRnZXRfX2l0ZW0gaDIge1xuICBmb250LXNpemU6IDEuNmVtO1xuICBsaW5lLWhlaWdodDogMS41ZW07XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi8qIElNQUdFIEZVTEwgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLndpZGdldC0tc3VtbWFyeS53aWRnZXQtLXN1bW1hcnktLWxpc3QgLndpZGdldF9fZGV0YWlsIHtcbiAgcGFkZGluZy10b3A6IDgwcHg7XG59XG5cbi53aWRnZXQtLXN1bW1hcnkud2lkZ2V0LS1zdW1tYXJ5LS1saXN0LWltYWdlLWZ1bGwgLndpZGdldF9faXRlbSwgLndpZGdldC0tc3VtbWFyeS53aWRnZXQtLXN1bW1hcnktLWxpc3QtaW1hZ2UgLndpZGdldF9faXRlbSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi53aWRnZXQtLXN1bW1hcnkud2lkZ2V0LS1zdW1tYXJ5LS1saXN0LWltYWdlLWZ1bGwgLndpZGdldF9faXRlbS53aWRnZXQtLWFjdGl2ZSAud2lkZ2V0X19pbWFnZSBpbWcsIC53aWRnZXQtLXN1bW1hcnkud2lkZ2V0LS1zdW1tYXJ5LS1saXN0LWltYWdlIC53aWRnZXRfX2l0ZW0ud2lkZ2V0LS1hY3RpdmUgLndpZGdldF9faW1hZ2UgaW1nIHtcbiAgb3BhY2l0eTogMTtcbn1cblxuLndpZGdldC0tc3VtbWFyeS53aWRnZXQtLXN1bW1hcnktLWxpc3QtaW1hZ2UtZnVsbCAud2lkZ2V0X19pdGVtIC5jb2wtLWNvbnRhaW5lciwgLndpZGdldC0tc3VtbWFyeS53aWRnZXQtLXN1bW1hcnktLWxpc3QtaW1hZ2UgLndpZGdldF9faXRlbSAuY29sLS1jb250YWluZXIge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi53aWRnZXQtLXN1bW1hcnkud2lkZ2V0LS1zdW1tYXJ5LS1saXN0LWltYWdlLWZ1bGwgLndpZGdldF9faXRlbSAuY29sLS1jb250YWluZXIgLndpZGdldF9fZGV0YWlsLCAud2lkZ2V0LS1zdW1tYXJ5LndpZGdldC0tc3VtbWFyeS0tbGlzdC1pbWFnZSAud2lkZ2V0X19pdGVtIC5jb2wtLWNvbnRhaW5lciAud2lkZ2V0X19kZXRhaWwge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi53aWRnZXQtLXN1bW1hcnkud2lkZ2V0LS1zdW1tYXJ5LS1saXN0LWltYWdlLWZ1bGwgLndpZGdldF9faXRlbSBpbWcsIC53aWRnZXQtLXN1bW1hcnkud2lkZ2V0LS1zdW1tYXJ5LS1saXN0LWltYWdlIC53aWRnZXRfX2l0ZW0gaW1nIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgb2JqZWN0LWZpdDogY292ZXI7XG59XG5cbi53aWRnZXQtLXN1bW1hcnkud2lkZ2V0LS1zdW1tYXJ5LS1saXN0LWltYWdlLWZ1bGwgLndpZGdldF9faXRlbSAud2lkZ2V0X19kZXRhaWwsIC53aWRnZXQtLXN1bW1hcnkud2lkZ2V0LS1zdW1tYXJ5LS1saXN0LWltYWdlIC53aWRnZXRfX2l0ZW0gLndpZGdldF9fZGV0YWlsIHtcbiAgY29sb3I6ICM2ZjZmNmY7XG4gIGJhY2tncm91bmQ6ICNlZGVkZWQ7XG59XG5cbi53aWRnZXQtLXN1bW1hcnkud2lkZ2V0LS1zdW1tYXJ5LS1saXN0LWltYWdlLWZ1bGwgLndpZGdldF9faXRlbSAud2lkZ2V0X19kZXRhaWwgLmZsZXgtLXBhZGRpbmcsIC53aWRnZXQtLXN1bW1hcnkud2lkZ2V0LS1zdW1tYXJ5LS1saXN0LWltYWdlIC53aWRnZXRfX2l0ZW0gLndpZGdldF9fZGV0YWlsIC5mbGV4LS1wYWRkaW5nIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gIGRpc3BsYXk6IC1tb3otYm94O1xuICBkaXNwbGF5OiAtbXMtZmxleGJveDtcbiAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBoZWlnaHQ6IDEwMCU7XG59XG5cbi53aWRnZXQtLXN1bW1hcnkud2lkZ2V0LS1zdW1tYXJ5LS1saXN0LWltYWdlLWZ1bGwgLndpZGdldF9faXRlbSAud2lkZ2V0X19kZXRhaWwgKjpudGgtbGFzdC1jaGlsZCgyKSwgLndpZGdldC0tc3VtbWFyeS53aWRnZXQtLXN1bW1hcnktLWxpc3QtaW1hZ2UgLndpZGdldF9faXRlbSAud2lkZ2V0X19kZXRhaWwgKjpudGgtbGFzdC1jaGlsZCgyKSB7XG4gIGZsZXgtZ3JvdzogMjtcbn1cblxuLndpZGdldC0tc3VtbWFyeS53aWRnZXQtLXN1bW1hcnktLWxpc3QtaW1hZ2UtZnVsbCAud2lkZ2V0X19pdGVtIC53aWRnZXRfX2RldGFpbCAud2lkZ2V0X19kYXRlLCAud2lkZ2V0LS1zdW1tYXJ5LndpZGdldC0tc3VtbWFyeS0tbGlzdC1pbWFnZSAud2lkZ2V0X19pdGVtIC53aWRnZXRfX2RldGFpbCAud2lkZ2V0X19kYXRlIHtcbiAgbWFyZ2luLWJvdHRvbTogMTVweDtcbn1cblxuLndpZGdldC0tc3VtbWFyeS53aWRnZXQtLXN1bW1hcnktLWxpc3QtaW1hZ2UtZnVsbCAud2lkZ2V0X19pdGVtIC53aWRnZXRfX2RldGFpbCBbY2xhc3MqPVwiYnV0dG9uXCJdLCAud2lkZ2V0LS1zdW1tYXJ5LndpZGdldC0tc3VtbWFyeS0tbGlzdC1pbWFnZSAud2lkZ2V0X19pdGVtIC53aWRnZXRfX2RldGFpbCBbY2xhc3MqPVwiYnV0dG9uXCJdIHtcbiAgZGlzcGxheTogaW5oZXJpdDtcbiAgY29sb3I6IGJsYWNrO1xuICBmbGV4LWdyb3c6IDA7XG59XG5cbi53aWRnZXQtLXN1bW1hcnkud2lkZ2V0LS1zdW1tYXJ5LS1saXN0LWltYWdlLWZ1bGwgLndpZGdldF9faXRlbSAud2lkZ2V0X19kZXRhaWwgaDIsIC53aWRnZXQtLXN1bW1hcnkud2lkZ2V0LS1zdW1tYXJ5LS1saXN0LWltYWdlIC53aWRnZXRfX2l0ZW0gLndpZGdldF9fZGV0YWlsIGgyIHtcbiAgY29sb3I6IGJsYWNrO1xufVxuXG4vKiBJTUFHRSAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbi53aWRnZXQtLXN1bW1hcnkud2lkZ2V0LS1zdW1tYXJ5LS1saXN0LWltYWdlIC53aWRnZXRfX2l0ZW06Zmlyc3QtY2hpbGQge1xuICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG59XG5cbi53aWRnZXQtLXN1bW1hcnkud2lkZ2V0LS1zdW1tYXJ5LS1saXN0LWltYWdlIC53aWRnZXRfX2l0ZW0ge1xuICBwYWRkaW5nOiAwIDAgNTBweCAwO1xufVxuXG4ud2lkZ2V0LS1zdW1tYXJ5LndpZGdldC0tc3VtbWFyeS0tbGlzdC1pbWFnZSAud2lkZ2V0X19pdGVtIGltZyB7XG4gIG1heC1oZWlnaHQ6IDM1MHB4O1xufVxuXG4ud2lkZ2V0LS1zdW1tYXJ5LndpZGdldC0tc3VtbWFyeS0tbGlzdC1pbWFnZSAud2lkZ2V0X19pdGVtOmZpcnN0LWNoaWxkIHtcbiAgcGFkZGluZzogNTBweCAwO1xufVxuXG4ud2lkZ2V0LS1zdW1tYXJ5LndpZGdldC0tc3VtbWFyeS0tbGlzdC1pbWFnZSAud2lkZ2V0X19pdGVtOm50aC1jaGlsZChvZGQpIHtcbiAgYmFja2dyb3VuZDogI2Y2ZjZmNjtcbn1cblxuLndpZGdldC0tc3VtbWFyeS53aWRnZXQtLXN1bW1hcnktLWxpc3QtaW1hZ2UgLndpZGdldF9faXRlbSAuY29sLS1jb250YWluZXIgLmNvbC0tMF81eHMge1xuICB3aWR0aDogMzUlO1xufVxuXG4ud2lkZ2V0LS1zdW1tYXJ5LndpZGdldC0tc3VtbWFyeS0tbGlzdC1pbWFnZSAud2lkZ2V0X19pdGVtIC5jb2wtLWNvbnRhaW5lciAuY29sLS0xXzV4cyB7XG4gIHdpZHRoOiA2NSU7XG59XG5cbi53aWRnZXQtLXN1bW1hcnkud2lkZ2V0LS1zdW1tYXJ5LS1saXN0LWltYWdlIC53aWRnZXRfX2l0ZW0gLmNvbC0tY29udGFpbmVyIC53aWRnZXRfX2RldGFpbCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbn1cblxuYm9keS5hciAud2lkZ2V0LS1zdW1tYXJ5IC53aWRnZXRfX2RldGFpbCBzcGFuIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB0ZXh0LWFsaWduOiByaWdodDtcbn1cblxuYm9keS5hciAud2lkZ2V0LS1zdW1tYXJ5IC53aWRnZXRfX2RldGFpbCBbY2xhc3MqPVwiYnV0dG9uXCJdIHtcbiAgcmlnaHQ6IDglO1xuICBtYXJnaW4tcmlnaHQ6IDElO1xuICBwYWRkaW5nLXJpZ2h0OiBpbmhlcml0O1xufVxuXG4uZmxleC0tcGFkZGluZyB7XG4gIHBhZGRpbmc6IDE1JTtcbn1cblxuLndpZGdldC0tbWFwIHtcbiAgYmFja2dyb3VuZDogd2hpdGUgdXJsKFwiLi4vZ3JhcGhpY3MvZ2FsbGVyeS1sb2FkaW5nLmdpZlwiKSA1MCUgNTAlIG5vLXJlcGVhdCAhaW1wb3J0YW50O1xufVxuXG4ud2lkZ2V0LS1tYXAud2lkZ2V0LS1hY3RpdmUgLndpZGdldF9fZGV0YWlsIHtcbiAgb3BhY2l0eTogMTtcbn1cblxuLndpZGdldC0tbWFwIC53aWRnZXRfX2RldGFpbCB7XG4gIG9wYWNpdHk6IDA7XG4gIG1heC1oZWlnaHQ6IDUwMHB4O1xuICBoZWlnaHQ6IDUwMHB4O1xuICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjZzIGxpbmVhcjtcbiAgLW8tdHJhbnNpdGlvbjogYWxsIDAuNnMgbGluZWFyO1xuICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjZzIGxpbmVhcjtcbiAgdHJhbnNpdGlvbjogYWxsIDAuNnMgbGluZWFyO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG59XG5cbi53aWRnZXQtLWNvbnRhY3QgLndpZGdldF9fZGV0YWlsIHtcbiAgcGFkZGluZy1ib3R0b206IDEwMHB4O1xufVxuXG4ud2lkZ2V0LS1jb250YWN0IC53aWRnZXRfX2RldGFpbCAuY29sLS0yeHMge1xuICBwYWRkaW5nLXJpZ2h0OiA3JTtcbn1cblxuLndpZGdldC0tY29udGFjdCAud2lkZ2V0X19kZXRhaWwgZm9ybSB7XG4gIG1hcmdpbi10b3A6IDMwcHg7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbi53aWRnZXQtLWNvbnRhY3QgLndpZGdldF9fZGV0YWlsIGZvcm0gaW5wdXQge1xuICBmb250LWZhbWlseTogJ0JpcnlhbmknLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDE0cHg7XG4gIGJvcmRlcjogMDtcbiAgcGFkZGluZzogMCAwIDAgMTBweDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogNTBweDtcbiAgYmFja2dyb3VuZDogI2VkZWRlZDtcbiAgb3V0bGluZTogbm9uZTtcbiAgY29sb3I6IGJsYWNrO1xuICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuLndpZGdldC0tY29udGFjdCAud2lkZ2V0X19kZXRhaWwgZm9ybSBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcbiAgZm9udC1zaXplOiAxZW07XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIG1hcmdpbi10b3A6IDMwcHg7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgd2lkdGg6IGluaXRpYWw7XG4gIGJhY2tncm91bmQ6IGJsYWNrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIHBhZGRpbmc6IDEwcHg7XG4gIGhlaWdodDogNDBweDtcbiAgbGluZS1oZWlnaHQ6IDI1cHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC4zcyBsaW5lYXI7XG4gIC1vLXRyYW5zaXRpb246IGFsbCAwLjNzIGxpbmVhcjtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4zcyBsaW5lYXI7XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGxpbmVhcjtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xufVxuXG4ud2lkZ2V0LS1jb250YWN0IC53aWRnZXRfX2RldGFpbCBmb3JtIGlucHV0W3R5cGU9XCJzdWJtaXRcIl06aG92ZXIge1xuICBjb2xvcjogYmxhY2s7XG4gIGJhY2tncm91bmQ6IHdoaXRlO1xufVxuXG4ud2lkZ2V0LS1jb250YWN0IC53aWRnZXRfX2RldGFpbCBmb3JtIHRleHRhcmVhIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgYm9yZGVyOiAwO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG1pbi1oZWlnaHQ6IDIwMHB4O1xuICBiYWNrZ3JvdW5kOiAjZWRlZGVkO1xufVxuXG4ud2lkZ2V0LS1jb250YWN0IC53aWRnZXRfX2RldGFpbCBmb3JtIGxhYmVsIHtcbiAgbWFyZ2luOiAxNXB4IDAgMCAwO1xuICBwYWRkaW5nOiAwO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZy1ib3R0b206IDRweDtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgY29sb3I6ICNiMmIyYjI7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbn1cblxuYm9keS5hciBsYWJlbCB7XG4gIGZsb2F0OiByaWdodDtcbn1cblxuYm9keS5hciAud2lkZ2V0LS1jb250YWN0IC53aWRnZXRfX2RldGFpbCBmb3JtIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuICB3aWR0aDogODBweDtcbiAgZmxvYXQ6IHJpZ2h0O1xufVxuXG5ib2R5LmFyIC5jb250cm9sLWdyb3VwIHtcbiAgZGlyZWN0aW9uOiBydGw7XG59XG5cbi53aWRnZXQtLXBvcHVwIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgdG9wOiA0MHB4O1xuICB6LWluZGV4OiA5OTk7XG4gIGhlaWdodDogMTAwdmg7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4ud2lkZ2V0LS1wb3B1cCAucG9wdXAtY29udGVudC13cmFwcGVyIHtcbiAgd2lkdGg6IDUwJTtcbiAgLypoZWlnaHQ6IDI1MHB4OyovXG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZzogMjBweCAyMHB4IDQwcHggMjBweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc0OHB4KSB7XG4gIC53aWRnZXQtLXBvcHVwIC5wb3B1cC1jb250ZW50LXdyYXBwZXIge1xuICAgIHdpZHRoOiA5MCU7XG4gIH1cbn1cblxuLndpZGdldC0tcG9wdXAgI2Nsb3NlLXBvcHVwIHtcbiAgZm9udC1zaXplOiAyNnB4O1xuICBjb2xvcjogcmdiYTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMTVweDtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4ud2lkZ2V0LS1wb3B1cCAud2hlcmUtdG8tYm9vayB7XG4gIHdpZHRoOiBmaXQtY29udGVudDtcbiAgYmFja2dyb3VuZC1jb2xvcjogZ3JleTtcbiAgbWFyZ2luLXRvcDogMmVtO1xufVxuXG4ud2lkZ2V0LS1wb3B1cCAud2hlcmUtdG8tYm9vayBhIHtcbiAgY29sb3I6ICNmZmY7XG4gIHBhZGRpbmc6IDEwcHggN3B4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBncmV5O1xufVxuXG5ib2R5W2xhbmc9XCJhclwiXSAucG9wdXAtY29udGVudC13cmFwcGVyIHtcbiAgZGlyZWN0aW9uOiBydGw7XG59XG5cbmJvZHlbbGFuZz1cImFyXCJdIC53aWRnZXQtLXBvcHVwICNjbG9zZS1wb3B1cCB7XG4gIGxlZnQ6IDE1cHg7XG4gIHJpZ2h0OiB1bnNldDtcbn1cblxuLndpZGdldDpmaXJzdC1jaGlsZC53aWRnZXQtLWdhbGxlcnksIC53aWRnZXQ6Zmlyc3QtY2hpbGQud2lkZ2V0LS1zdW1tYXJ5IHtcbiAgcGFkZGluZy10b3A6IDA7XG59XG5cbi5wYWdlLS1ob21lcGFnZSAud2lkZ2V0OmZpcnN0LWNoaWxkLndpZGdldC0tZ2FsbGVyeSB7XG4gIHBhZGRpbmctdG9wOiAwO1xufVxuXG4ud2lkZ2V0IHtcbiAgbWFyZ2luLXRvcDogODBweDtcbn1cblxuLndpZGdldCAud2lkZ2V0X19kZXRhaWwgc3Ryb25nIHtcbiAgZm9udC1zaXplOiAxLjFlbTtcbn1cblxuLndpZGdldCAud2lkZ2V0X19kZXRhaWwgaDMge1xuICBmb250LXdlaWdodDogNTAwO1xuICBjb2xvcjogI2IyYjJiMjtcbiAgZm9udC1zaXplOiAxLjVyZW07XG4gIHBhZGRpbmc6IDMlIDA7XG4gIG1hcmdpbjogMDtcbn1cblxuLndpZGdldCAud2lkZ2V0X19pbWFnZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmN2Y3Zjc7XG59XG5cbi53aWRnZXQgLndpZGdldF9faW1hZ2UgLmZ1bGxzY3JlZW4tbGluayB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmctdG9wOiAxMHB4O1xuICBwYWRkaW5nLWJvdHRvbTogMTBweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogbGlnaHRncmV5O1xufVxuXG5ib2R5W2xhbmc9J2FyJ10gLndpZGdldCAud2lkZ2V0X19kZXRhaWwgaDMge1xuICB0ZXh0LWFsaWduOiByaWdodDtcbn1cblxuYm9keVtsYW5nPSdhciddIC51aS10YWJzIC51aS10YWJzLW5hdiBsaSB7XG4gIGZsb2F0OiByaWdodDtcbn1cblxuYm9keVtsYW5nPSdhciddIC53aWRnZXQtLXN1bW1hcnkgLmNvbC0tY29udGFpbmVyIFtjbGFzcyo9XCJjb2xcIl0ge1xuICBmbG9hdDogcmlnaHQ7XG59XG5cbmJvZHlbbGFuZz0nYXInXSAud2lkZ2V0LS1zdW1tYXJ5IC53aWRnZXRfX2l0ZW06bnRoLWNoaWxkKG9kZCkgLndpZGdldF9faW1hZ2Uge1xuICBvcmRlcjogMjtcbn1cblxuYm9keVtsYW5nPSdhciddIC53aWRnZXQtLXN1bW1hcnkgLndpZGdldF9faXRlbTpudGgtY2hpbGQoZXZlbikgLndpZGdldF9fZGV0YWlsIHtcbiAgb3JkZXI6IDI7XG59XG5cbmJvZHlbbGFuZz0nYXInXSAuZ2FsbGVyeV9fb3RoZXIgLmdhbGxlcnlfX2l0ZW0ge1xuICBmbG9hdDogcmlnaHQ7XG59XG5cbi5jb2wtLWNvbnRhaW5lciBbY2xhc3MqPVwiY29sXCJdIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG4uY29sLS1jb250YWluZXI6YWZ0ZXIge1xuICBjb250ZW50OiAnJztcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNsZWFyOiBib3RoO1xufVxuXG4uY29sLS1jb250YWluZXIuY29sLS1yb3czIC5jb2wtLTF4cyB7XG4gIHdpZHRoOiAzMy4zMiU7XG59XG5cbi5jb2wtLWNvbnRhaW5lci5jb2wtLXJvdzMgLmNvbC0tMnhzIHtcbiAgd2lkdGg6IDY2LjY1JTtcbn1cblxuLmNvbC0tY29udGFpbmVyLmNvbC0tcm93MiAuY29sLS0wXzV4cyB7XG4gIHdpZHRoOiAzMCU7XG59XG5cbi5jb2wtLWNvbnRhaW5lci5jb2wtLXJvdzIgLmNvbC0tMXhzIHtcbiAgd2lkdGg6IDUwJTtcbn1cblxuLmNvbC0tY29udGFpbmVyLmNvbC0tcm93MiAuY29sLS0xXzV4cyB7XG4gIHdpZHRoOiA3MCU7XG59XG5cbi5jb2wtLWNvbnRhaW5lci5jb2wtLXJvdzIgLmNvbC0tMnhzIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbiNMb2FkZXJXcmFwcGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgcmlnaHQ6IDA7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgdG91Y2gtYWN0aW9uOiBtYW5pcHVsYXRpb247XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGZvbnQtZmFtaWx5OiBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIC13ZWJraXQtdG91Y2gtY2FsbG91dDogbm9uZTtcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcbiAgLWtodG1sLXVzZXItc2VsZWN0OiBub25lO1xuICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMCk7XG4gIC1tb3otdGFwLWhpZ2hsaWdodC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwKTtcbiAgZGlzcGxheTogbm9uZTtcbiAgei1pbmRleDogOTk5OTk5O1xufVxuXG4jTG9hZGVyV3JhcHBlci5hY3RpdmUge1xuICBvcGFjaXR5OiAxO1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuI0xvYWRlcldyYXBwZXIgcCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbWFyZ2luOiAwO1xuICB0b3A6IDUwJTtcbiAgbGVmdDogNTAlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNyk7XG4gIGZvbnQtZmFtaWx5OiAnbGVrdG9ucmVndWxhcicsIHNhbnMtc2VyaWY7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbiNMb2FkZXJXcmFwcGVyLmluaXRzIHAge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuI0xvYWRlcldyYXBwZXIgI2xvYWRlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogNTAlO1xuICB0b3A6IDUwJTtcbiAgaGVpZ2h0OiA2dnc7XG4gIHdpZHRoOiA2dnc7XG4gIG1hcmdpbjogLTN2dyAwIDAgLTN2dztcbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci10b3AtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC42KTtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjYpO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIHotaW5kZXg6IDI7XG4gIC13ZWJraXQtYW5pbWF0aW9uOiBzcGluIDJzIGxpbmVhciBpbmZpbml0ZTtcbiAgLW1vei1hbmltYXRpb246IHNwaW4gMnMgbGluZWFyIGluZmluaXRlO1xuICAtby1hbmltYXRpb246IHNwaW4gMnMgbGluZWFyIGluZmluaXRlO1xuICBhbmltYXRpb246IHNwaW4gMnMgbGluZWFyIGluZmluaXRlO1xufVxuXG4jTG9hZGVyV3JhcHBlciAjbG9hZGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAyJTtcbiAgYm90dG9tOiAyJTtcbiAgbGVmdDogMiU7XG4gIHJpZ2h0OiAyJTtcbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIHotaW5kZXg6IDI7XG4gIGJvcmRlci10b3AtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC42KTtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAtd2Via2l0LWFuaW1hdGlvbjogc3BpbiAzcyBsaW5lYXIgaW5maW5pdGU7XG4gIC1tb3otYW5pbWF0aW9uOiBzcGluIDNzIGxpbmVhciBpbmZpbml0ZTtcbiAgLW8tYW5pbWF0aW9uOiBzcGluIDNzIGxpbmVhciBpbmZpbml0ZTtcbiAgYW5pbWF0aW9uOiBzcGluIDNzIGxpbmVhciBpbmZpbml0ZTtcbn1cblxuI0xvYWRlcldyYXBwZXIgI2xvYWRlcjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1JTtcbiAgYm90dG9tOiA1JTtcbiAgbGVmdDogNSU7XG4gIHJpZ2h0OiA1JTtcbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci10b3AtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC42KTtcbiAgei1pbmRleDogMjtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAtd2Via2l0LWFuaW1hdGlvbjogc3BpbiAxLjVzIGxpbmVhciBpbmZpbml0ZTtcbiAgLW1vei1hbmltYXRpb246IHNwaW4gMS41cyBsaW5lYXIgaW5maW5pdGU7XG4gIC1vLWFuaW1hdGlvbjogc3BpbiAxLjVzIGxpbmVhciBpbmZpbml0ZTtcbiAgYW5pbWF0aW9uOiBzcGluIDEuNXMgbGluZWFyIGluZmluaXRlO1xufVxuXG4vKktleWZyYW1lcyBmb3Igc3BpbiBhbmltYXRpb24gKi9cbkAtd2Via2l0LWtleWZyYW1lcyBzcGluIHtcbiAgMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgLyogQ2hyb21lLCBPcGVyYSAxNSssIFNhZmFyaSAzLjErICovXG4gICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgIC8qIElFIDkgKi9cbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICAvKiBGaXJlZm94IDE2KywgSUUgMTArLCBPcGVyYSAqL1xuICB9XG4gIDUwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICAgIC8qIENocm9tZSwgT3BlcmEgMTUrLCBTYWZhcmkgMy4xKyAqL1xuICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICAgIC8qIElFIDkgKi9cbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICAgIC8qIEZpcmVmb3ggMTYrLCBJRSAxMCssIE9wZXJhICovXG4gIH1cbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICAgIC8qIENocm9tZSwgT3BlcmEgMTUrLCBTYWZhcmkgMy4xKyAqL1xuICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICAgIC8qIElFIDkgKi9cbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICAgIC8qIEZpcmVmb3ggMTYrLCBJRSAxMCssIE9wZXJhICovXG4gIH1cbn1cblxuQC1tb3ota2V5ZnJhbWVzIHNwaW4ge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICAvKiBDaHJvbWUsIE9wZXJhIDE1KywgU2FmYXJpIDMuMSsgKi9cbiAgICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgLyogSUUgOSAqL1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgIC8qIEZpcmVmb3ggMTYrLCBJRSAxMCssIE9wZXJhICovXG4gIH1cbiAgNTAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgLyogQ2hyb21lLCBPcGVyYSAxNSssIFNhZmFyaSAzLjErICovXG4gICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgLyogSUUgOSAqL1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gICAgLyogRmlyZWZveCAxNissIElFIDEwKywgT3BlcmEgKi9cbiAgfVxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgLyogQ2hyb21lLCBPcGVyYSAxNSssIFNhZmFyaSAzLjErICovXG4gICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgLyogSUUgOSAqL1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgLyogRmlyZWZveCAxNissIElFIDEwKywgT3BlcmEgKi9cbiAgfVxufVxuXG5ALW8ta2V5ZnJhbWVzIHNwaW4ge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICAvKiBDaHJvbWUsIE9wZXJhIDE1KywgU2FmYXJpIDMuMSsgKi9cbiAgICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgLyogSUUgOSAqL1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgIC8qIEZpcmVmb3ggMTYrLCBJRSAxMCssIE9wZXJhICovXG4gIH1cbiAgNTAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgLyogQ2hyb21lLCBPcGVyYSAxNSssIFNhZmFyaSAzLjErICovXG4gICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgLyogSUUgOSAqL1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gICAgLyogRmlyZWZveCAxNissIElFIDEwKywgT3BlcmEgKi9cbiAgfVxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgLyogQ2hyb21lLCBPcGVyYSAxNSssIFNhZmFyaSAzLjErICovXG4gICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgLyogSUUgOSAqL1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgLyogRmlyZWZveCAxNissIElFIDEwKywgT3BlcmEgKi9cbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHNwaW4ge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICAvKiBDaHJvbWUsIE9wZXJhIDE1KywgU2FmYXJpIDMuMSsgKi9cbiAgICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgLyogSUUgOSAqL1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgIC8qIEZpcmVmb3ggMTYrLCBJRSAxMCssIE9wZXJhICovXG4gIH1cbiAgNTAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgLyogQ2hyb21lLCBPcGVyYSAxNSssIFNhZmFyaSAzLjErICovXG4gICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgLyogSUUgOSAqL1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gICAgLyogRmlyZWZveCAxNissIElFIDEwKywgT3BlcmEgKi9cbiAgfVxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgLyogQ2hyb21lLCBPcGVyYSAxNSssIFNhZmFyaSAzLjErICovXG4gICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgLyogSUUgOSAqL1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgLyogRmlyZWZveCAxNissIElFIDEwKywgT3BlcmEgKi9cbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDI0cHgpIHtcbiAgI0xvYWRlcldyYXBwZXIgcCB7XG4gICAgZm9udC1zaXplOiAuN3JlbTtcbiAgfVxuICAjTG9hZGVyV3JhcHBlciAjbG9hZGVyIHtcbiAgICBoZWlnaHQ6IDIydnc7XG4gICAgd2lkdGg6IDIydnc7XG4gICAgbWFyZ2luOiAtMTF2dyAwIDAgLTExdnc7XG4gIH1cbn1cblxuLnBhZ2UtLWdhbGxlcnkgLm93bC1kb3RzIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5wYWdlLS1nYWxsZXJ5IC5nYWxsZXJ5X19vdGhlciAuY29sLS1jb250YWluZXIge1xuICBtYXJnaW4tbGVmdDogLTEwcHg7XG4gIG1hcmdpbi1yaWdodDogLTEwcHg7XG4gIC1tb3otdHJhbnNpdGlvbjogaGVpZ2h0IDAuNnMgbGluZWFyO1xuICAtby10cmFuc2l0aW9uOiBoZWlnaHQgMC42cyBsaW5lYXI7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogaGVpZ2h0IDAuNnMgbGluZWFyO1xuICB0cmFuc2l0aW9uOiBoZWlnaHQgMC42cyBsaW5lYXI7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbn1cblxuLnBhZ2UtLWdhbGxlcnkgLmdhbGxlcnlfX290aGVyIC5jb2wtLWNvbnRhaW5lciAuZ2FsbGVyeV9faXRlbSB7XG4gIC1tb3otdHJhbnNpdGlvbjogcG9zaXRpb24gMC42cyBsaW5lYXI7XG4gIC1vLXRyYW5zaXRpb246IHBvc2l0aW9uIDAuNnMgbGluZWFyO1xuICAtd2Via2l0LXRyYW5zaXRpb246IHBvc2l0aW9uIDAuNnMgbGluZWFyO1xuICB0cmFuc2l0aW9uOiBwb3NpdGlvbiAwLjZzIGxpbmVhcjtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xuICBwYWRkaW5nOiAxMHB4O1xufVxuXG4ucGFnZS0tZ2FsbGVyeSAuZ2FsbGVyeV9fb3RoZXIgLmNvbC0tY29udGFpbmVyIC5nYWxsZXJ5X19pdGVtIGltZyB7XG4gIHdpZHRoOiAxMDAlO1xuICBtaW4taGVpZ2h0OiAyMjBweDtcbiAgb2JqZWN0LWZpdDogY292ZXI7XG59XG5cbi5wYWdlLS1nYWxsZXJ5IC53aWRnZXQtLWdhbGxlcnkge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4ucGFnZS0tZ2FsbGVyeSAud2lkZ2V0LS1nYWxsZXJ5IC53aWRnZXRfX2ltYWdlIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5wYWdlLS1nYWxsZXJ5ID4gaDIge1xuICB3aWR0aDogOTAlO1xuICBmb250LXdlaWdodDogNTAwO1xuICBjb2xvcjogI2IyYjJiMjtcbiAgZm9udC1zaXplOiAxLjVyZW07XG4gIG1hcmdpbjogMSUgYXV0byAzJSBhdXRvO1xufVxuXG4uZmlsdGVycyAuY29sLS1jb250YWluZXIgLmZpbHRlcnNfX3RhYiB7XG4gIHBhZGRpbmc6IDEwcHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLmZpbHRlcnMgLmNvbC0tY29udGFpbmVyIC5maWx0ZXJzX190YWIgLmZpbHRlcnNfX2RldGFpbCB7XG4gIGJhY2tncm91bmQ6ICNmMmYyZjI7XG4gIG1pbi1oZWlnaHQ6IDE1MHB4O1xufVxuXG4uZmlsdGVycyAuY29sLS1jb250YWluZXIgLmZpbHRlcnNfX3RhYiAuZmlsdGVyc19fZGV0YWlsIGEge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogNiU7XG4gIGNvbG9yOiAjYjJiMmIyO1xuICBmb250LXdlaWdodDogNTAwO1xufVxuXG4uZmlsdGVycyAuY29sLS1jb250YWluZXIgLmZpbHRlcnNfX3RhYiAuZmlsdGVyc19fZGV0YWlsIGEgaDMge1xuICBmb250LXNpemU6IDFlbTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGNvbG9yOiBibGFjaztcbiAgbWFyZ2luOiAwO1xufVxuXG4uZmlsdGVycyAuY29sLS1jb250YWluZXIgLmZpbHRlcnNfX3RhYi5maWx0ZXJzX190YWItLWFjdGl2ZSAuZmlsdGVyc19fZGV0YWlsIHtcbiAgYmFja2dyb3VuZDogIzIyMjIyMTtcbn1cblxuLmZpbHRlcnMgLmNvbC0tY29udGFpbmVyIC5maWx0ZXJzX190YWIuZmlsdGVyc19fdGFiLS1hY3RpdmUgLmZpbHRlcnNfX2RldGFpbCBhLCAuZmlsdGVycyAuY29sLS1jb250YWluZXIgLmZpbHRlcnNfX3RhYi5maWx0ZXJzX190YWItLWFjdGl2ZSAuZmlsdGVyc19fZGV0YWlsIGgzIHtcbiAgY29sb3I6IHdoaXRlO1xufVxuXG5ib2R5IC53aWRnZXRfX2dhbGxlcnkgLm93bC12aWRlby13cmFwcGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMTAwJTtcbn1cblxuYm9keSAud2lkZ2V0X19nYWxsZXJ5IC5vd2wtdmlkZW8td3JhcHBlciBpbWcge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG50YWJsZSB7XG4gIG91dGxpbmU6IG5vbmU7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbi5tZW51X19idXR0b25fX2Rlc2t0b3Age1xuICB6LWluZGV4OiAxMjtcbiAgd2lkdGg6IDEwMHZ3O1xuICBoZWlnaHQ6IDEwMHZoO1xufVxuXG4uZGVza3RvcF9fYnV0dG9uLS1pbWFnZTpob3ZlciB7XG4gIG9wYWNpdHk6IC42O1xufVxuXG4uZGVza3RvcE1lbnVDb250ZW50IGEge1xuICBmb250LXdlaWdodDogdW5zZXQ7XG59XG5cbi5kZXNrdG9wTWVudUNvbnRlbnQgI2Rlc2t0b3BNZW51IHtcbiAgd2lkdGg6IDEwMHZ3O1xuICBoZWlnaHQ6IDEwMHZoO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICB6LWluZGV4OiAxMjtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHRvcDogMHB4O1xufVxuXG4uZGVza3RvcE1lbnVDb250ZW50ICNkZXNrdG9wTWVudSAjbGFuZyB7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG4uZGVza3RvcE1lbnVDb250ZW50ICNkZXNrdG9wTWVudSAubG9nb01lbnVEZXNrdG9wIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uZGVza3RvcE1lbnVDb250ZW50ICNkZXNrdG9wTWVudSAubG9nb01lbnVEZXNrdG9wIC5oZWFkZXJfX2xvZ29fX2Rlc2t0b3Age1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJhY2tncm91bmQ6IHVybCguLi9ncmFwaGljcy9sd2YtbG9nby1ibGFjay5wbmcpIG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1zaXplOiAxNDdweCA0N3B4O1xuICB3aWR0aDogMTQ3cHg7XG4gIGhlaWdodDogNDdweDtcbiAgdG9wOiAxNXB4O1xuICBsZWZ0OiA1JTtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gIC5kZXNrdG9wTWVudUNvbnRlbnQgI2Rlc2t0b3BNZW51IC5sb2dvTWVudURlc2t0b3AgLmhlYWRlcl9fbG9nb19fZGVza3RvcCB7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICAgIHdpZHRoOiA3MHB4O1xuICAgIGhlaWdodDogNDdweDtcbiAgICB0b3A6IDIwcHg7XG4gIH1cbn1cblxuLmRlc2t0b3BNZW51Q29udGVudCAjZGVza3RvcE1lbnUgLmxvZ29NZW51RGVza3RvcCAuY2xvc2UtbWVudS1kZXNrdG9wIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogNiU7XG4gIHdpZHRoOiAyMnB4O1xuICBoZWlnaHQ6IDIycHg7XG4gIHRvcDogMzBweDtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgLmRlc2t0b3BNZW51Q29udGVudCAjZGVza3RvcE1lbnUgLmxvZ29NZW51RGVza3RvcCAuY2xvc2UtbWVudS1kZXNrdG9wIHtcbiAgICB0b3A6IDIwcHg7XG4gIH1cbn1cblxuLmRlc2t0b3BNZW51Q29udGVudCAjZGVza3RvcE1lbnUgLmxvZ29NZW51RGVza3RvcCAuY2xvc2UtbWVudS1kZXNrdG9wOmhvdmVyIHtcbiAgb3BhY2l0eTogMC42O1xufVxuXG4uZGVza3RvcE1lbnVDb250ZW50ICNkZXNrdG9wTWVudSAudGl0bGUge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi5kZXNrdG9wTWVudUNvbnRlbnQgI2Rlc2t0b3BNZW51IC50aXRsZTpob3ZlciB7XG4gIG9wYWNpdHk6IDAuNjtcbn1cblxuLmRlc2t0b3BNZW51Q29udGVudCAjZGVza3RvcE1lbnUgLm1lbnUge1xuICBwYWRkaW5nLXRvcDogOHJlbTtcbn1cblxuLmRlc2t0b3BNZW51Q29udGVudCAjZGVza3RvcE1lbnUgdWwge1xuICBmb250LXNpemU6IDEuNXJlbTtcbn1cblxuLmRlc2t0b3BNZW51Q29udGVudCAjZGVza3RvcE1lbnUgdWwgYTpob3ZlciB7XG4gIG9wYWNpdHk6IC40O1xufVxuXG4uZGVza3RvcE1lbnVDb250ZW50ICNkZXNrdG9wTWVudSB1bCBsaSB1bCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5kZXNrdG9wTWVudUNvbnRlbnQgI2Rlc2t0b3BNZW51IHVsIGxpIHVsIGEge1xuICBvcGFjaXR5OiAuNjtcbn1cblxuLmRlc2t0b3BNZW51Q29udGVudCAjZGVza3RvcE1lbnUgdWwgbGkgdWwgYTpob3ZlciB7XG4gIG9wYWNpdHk6IC40O1xufVxuXG4uZGVza3RvcE1lbnVDb250ZW50ICNkZXNrdG9wTWVudSB1bCBsaSB1bCBsaSB1bCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5mYWRlLW91dCB7XG4gIGFuaW1hdGlvbjogZmFkZU91dCBlYXNlIDhzO1xuICAtd2Via2l0LWFuaW1hdGlvbjogZmFkZU91dCBlYXNlIDhzO1xuICAtbW96LWFuaW1hdGlvbjogZmFkZU91dCBlYXNlIDhzO1xuICAtby1hbmltYXRpb246IGZhZGVPdXQgZWFzZSA4cztcbiAgLW1zLWFuaW1hdGlvbjogZmFkZU91dCBlYXNlIDhzO1xufVxuXG4uZmFkZS1pbiB7XG4gIGFuaW1hdGlvbjogZmFkZUluIGVhc2UgMTBzO1xuICAtd2Via2l0LWFuaW1hdGlvbjogZmFkZUluIGVhc2UgMTBzO1xuICAtbW96LWFuaW1hdGlvbjogZmFkZUluIGVhc2UgMTBzO1xuICAtby1hbmltYXRpb246IGZhZGVJbiBlYXNlIDEwcztcbiAgLW1zLWFuaW1hdGlvbjogZmFkZUluIGVhc2UgMTBzO1xufVxuXG5Aa2V5ZnJhbWVzIGZhZGVPdXQge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5cbkAtbW96LWtleWZyYW1lcyBmYWRlT3V0IHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmFkZU91dCB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cblxuQC1vLWtleWZyYW1lcyBmYWRlT3V0IHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuXG5ALW1zLWtleWZyYW1lcyBmYWRlT3V0IHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGZhZGVJbiB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cblxuQC1tb3ota2V5ZnJhbWVzIGZhZGVJbiB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVJbiB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cblxuQC1vLWtleWZyYW1lcyBmYWRlSW4ge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5cbkAtbXMta2V5ZnJhbWVzIGZhZGVJbiB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cblxuLyogSEVBREVSIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4jY29udGVudCB7XG4gIGJhY2tncm91bmQ6ICNmN2Y3Zjc7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHdpZHRoOiA5MCU7XG4gIG1hcmdpbjogMCBhdXRvO1xuICAvKiBQcmV2ZW50IGVsZW1lbnRzIHRvIGJlIGhpZ2hsaWdodGVkIG9uIHRhcCAqL1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMCk7XG4gIG92ZXJmbG93LXk6IHNjcm9sbDtcbiAgLyogaGFzIHRvIGJlIHNjcm9sbCwgbm90IGF1dG8gKi9cbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xufVxuXG4jY29udGVudCBhIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG5cbiNjb250ZW50IC5idXR0b24tLXdoaXRlIGEge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbiNkZXRhaWxfYnV0dG9uIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuXG4jaGVhZGVyIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIGhlaWdodDogOTBweDtcbiAgd2lkdGg6IDEwMCU7XG4gIHotaW5kZXg6IDEwO1xuICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIC1tb3otdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjNzIGxpbmVhcjtcbiAgLW8tdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjNzIGxpbmVhcjtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuM3MgbGluZWFyO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuM3MgbGluZWFyO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG59XG5cbiNoZWFkZXIgLmhlYWRlcl9fbWVudSB7XG4gIGhlaWdodDogMTAwJTtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cbiNoZWFkZXIgLmhlYWRlcl9fbWVudSA+ICoge1xuICBwb2ludGVyLWV2ZW50czogYWxsO1xufVxuXG4jaGVhZGVyIC5oZWFkZXJfX21lbnUgPiBzcGFuIHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgbWFyZ2luOiAzMHB4IC0xMHB4IDAgLTEwcHg7XG59XG5cbiNoZWFkZXIgLmhlYWRlcl9fbWVudSA+IHNwYW4gLmF0b20tLWxpbmsgc3ZnIHBhdGgge1xuICBmaWxsOiB3aGl0ZTtcbn1cblxuI2hlYWRlciAuaGVhZGVyX19tZW51ID4gc3BhbiA+ICoge1xuICBoZWlnaHQ6IDIycHg7XG4gIHBhZGRpbmc6IDAgMTBweDtcbiAgY29sb3I6IHdoaXRlO1xufVxuXG4jaGVhZGVyIC5oZWFkZXJfX21lbnUgLmhlYWRlcl9fbG9nbyB7XG4gIGZsb2F0OiBsZWZ0O1xuICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjNzIGxpbmVhcjtcbiAgLW8tdHJhbnNpdGlvbjogYWxsIDAuM3MgbGluZWFyO1xuICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjNzIGxpbmVhcjtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgbGluZWFyO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuI2hlYWRlciAuaGVhZGVyX19tZW51IC5oZWFkZXJfX2xvZ28gYSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB0ZXh0LWluZGVudDogMTUwcHg7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbiNoZWFkZXIgLmhlYWRlcl9fbWVudSAuYXRvbS0tbGluayB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMjJweDtcbn1cblxuI2hlYWRlciAuaGVhZGVyX19tZW51IC5tb2JpbGVfX2J1dHRvbiB7XG4gIHdpZHRoOiAyMnB4O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbiNoZWFkZXIgLmhlYWRlcl9fbWVudSAubW9iaWxlX19idXR0b24gaW1nIHtcbiAgZGlzcGxheTogaW5saW5lO1xufVxuXG4jaGVhZGVyIC5oZWFkZXJfX21lbnUgLmRlc2t0b3BfX2J1dHRvbiB7XG4gIHdpZHRoOiAyMnB4O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4jaGVhZGVyIC5oZWFkZXJfX21lbnUgLmRlc2t0b3BfX2J1dHRvbiBpbWcge1xuICBkaXNwbGF5OiBpbmxpbmU7XG59XG5cbmJvZHlbbGFuZz1cImFyXCJdICNoZWFkZXIgLmhlYWRlcl9fbWVudSA+IHNwYW4ge1xuICBmbG9hdDogbGVmdDtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbn1cblxuYm9keVtsYW5nPVwiYXJcIl0gI2hlYWRlciAuaGVhZGVyX19tZW51IC5oZWFkZXJfX2xvZ28ge1xuICBmbG9hdDogcmlnaHQ7XG59XG5cbiNoZWFkZXIge1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xufVxuXG4jaGVhZGVyOm5vdCguaGVhZGVyLS1ob3Zlcikge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAjMzMzMzMzLCByZ2JhKDUxLCA1MSwgNTEsIDApKTtcbiAgYm9yZGVyLWJvdHRvbTogMDtcbn1cblxuI2hlYWRlcjpub3QoLmhlYWRlci0taG92ZXIpIC5oZWFkZXJfX2xvZ28ge1xuICBiYWNrZ3JvdW5kOiB1cmwoLi4vZ3JhcGhpY3MvbHdmLWxvZ28td2hpdGUucG5nKSBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtc2l6ZTogMTQ3cHggNDdweDtcbn1cblxuI2hlYWRlci5oZWFkZXItLWhvdmVyIHtcbiAgYmFja2dyb3VuZDogd2hpdGUgIWltcG9ydGFudDtcbn1cblxuI2hlYWRlci5oZWFkZXItLWhvdmVyIC5oZWFkZXJfX21lbnUgLmhlYWRlcl9fbG9nbyB7XG4gIGJhY2tncm91bmQ6IHVybCguLi9ncmFwaGljcy9sd2YtbG9nby1ibGFjay5wbmcpIG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1zaXplOiAxNDdweCA0N3B4O1xufVxuXG4jaGVhZGVyLmhlYWRlci0taG92ZXIgLmhlYWRlcl9fbWVudSAuaGVhZGVyX19sb2dvIGEge1xuICBkaXNwbGF5OiBibG9jaztcbiAgY29sb3I6ICMwMDAwMDA7XG59XG5cbiNoZWFkZXIuaGVhZGVyLS1ob3ZlciAuaGVhZGVyX19tZW51ICNsYW5nIHtcbiAgY29sb3I6ICMwMDAwMDA7XG59XG5cbiNoZWFkZXIuaGVhZGVyLS1ob3ZlciAuaGVhZGVyX19tZW51IC5tb2JpbGVfX2J1dHRvbiB7XG4gIGJhY2tncm91bmQ6IHVybCguLi9ncmFwaGljcy9tbWVudS5wbmcpIG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xufVxuXG4vKlxuI2hlYWRlciAjbWFpbl9tZW51IHtcbiAgLm1haW5fbWVudV9fc3VibWVudSB7XG4gICAgaGVpZ2h0OjA7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJhY2tncm91bmQ6IHdoaXRlO1xuICAgIGxlZnQ6MDtcbiAgICB0b3A6MTEwcHg7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwgLjNzIGxpbmVhcik7XG4gIH1cbiAgbGkge1xuICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuICAgICYub24gPiBhIHsgY29sb3I6I2EzYTNhMzsgfVxuICAgICY6aG92ZXIgdWwgeyBoZWlnaHQ6aW5pdGlhbCB9XG4gICAgYSB7XG4gICAgICBmb250LXdlaWdodDo0MDA7XG4gICAgICBjb2xvcjpibGFjaztcbiAgICAgIHBhZGRpbmc6IDAgMTVweDtcbiAgICAgICY6aG92ZXIgeyBjb2xvcjogI2EzYTNhMzsgfVxuICAgIH1cbiAgICB1bCB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OjIwcHg7XG4gICAgICBkaXNwbGF5Om5vbmU7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOjg1cHg7XG4gICAgICB6LWluZGV4OjEwO1xuICAgICAgbGkge1xuICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgcGFkZGluZzogMTBweCAwO1xuICAgICAgICAmOmZpcnN0LWNoaWxkIHsgXG4gICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICBwYWRkaW5nLXRvcDowO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbiovXG4vKiBDbGVhciBGbG9hdHMgKi9cbi5jbGVhcmZpeCwgI2hlYWRlciAuaGVhZGVyX19tZW51LCAjaGVhZGVyIC5oZWFkZXJfX21lbnUgPiBzcGFuIHtcbiAgem9vbTogMTtcbn1cblxuLmNsZWFyZml4OmFmdGVyLCAjaGVhZGVyIC5oZWFkZXJfX21lbnU6YWZ0ZXIsICNoZWFkZXIgLmhlYWRlcl9fbWVudSA+IHNwYW46YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiAwO1xuICBjbGVhcjogYm90aDtcbiAgem9vbTogMTtcbn1cblxuLyogRk9PVEVSIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4jZm9vdGVyIHtcbiAgcGFkZGluZy10b3A6IDMwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYmFja2dyb3VuZDogI2Y3ZjdmNztcbiAgd2lkdGg6IDkwJTtcbiAgbWFyZ2luOiBhdXRvO1xufVxuXG4jZm9vdGVyIC5mb290ZXJfY29udGFpbmVyIHtcbiAgaGVpZ2h0OiAyMzBweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4jZm9vdGVyIC5mb290ZXJfY29udGFpbmVyIC5mb290ZXItY29udGVudCB7XG4gIHdpZHRoOiA5MCU7XG4gIG1hcmdpbjogYXV0bztcbn1cblxuI2Zvb3RlciAuZm9vdGVyX19sb2dvIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDQ1JTtcbiAgbGVmdDogMDtcbiAgYmFja2dyb3VuZDogdXJsKC4uL2dyYXBoaWNzL2x3Zi1sb2dvLWJsYWNrLnBuZykgbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXNpemU6IDE0N3B4IDQ3cHg7XG59XG5cbiNmb290ZXIgLmZvb3Rlcl9fbG9nbzpob3ZlciB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuI2Zvb3RlciAuc29jaWFsX21lZGlhIHtcbiAgdG9wOiA0NSU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDA7XG59XG5cbiNtb2JpbGVNZW51IHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLyogTU9CSUxFIE1FTlUgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4jbW9iaWxlX19tZW51IGxpIGEge1xuICBjb2xvcjogYmxhY2s7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMDUpO1xufVxuXG4jbW9iaWxlX19tZW51LmFjdGl2ZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG5ib2R5IC5tbS1tZW51IC5tbS1saXN0IGEubW0tc3Vib3BlbjpiZWZvcmUge1xuICB3aWR0aDogNDBweDtcbiAgaGVpZ2h0OiA0MHB4O1xuICBiYWNrZ3JvdW5kOiB3aGl0ZSB1cmwoLi4vZ3JhcGhpY3MvYXJyb3cucG5nKSA1MCUgNTAlIG5vLXJlcGVhdDtcbiAgYm9yZGVyLWxlZnQ6IDA7XG59XG5cbmJvZHkgLm1tLW1lbnUgLm1tLWxpc3QgPiBsaSA+IGEubW0tc3ViY2xvc2Uge1xuICBiYWNrZ3JvdW5kOiAjZjdmN2Y3O1xufVxuXG4uaGVhZGVyLS1ob3ZlciAubW9iaWxlX19idXR0b24ge1xuICBiYWNrZ3JvdW5kOiB1cmwoLi4vZ3JhcGhpY3MvbW1lbnUucG5nKTtcbn1cblxuLm1tLW1lbnUge1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xufVxuXG4ubW0tbWVudSAubW0tbmF2YmFyLWJvdHRvbSB7XG4gIGJvcmRlci10b3A6IDA7XG59XG5cbi5tbS1tZW51IC5tbS1uYXZiYXIge1xuICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG59XG5cbi5tbS1tZW51IC5tbS1uYXZiYXIgLm1tLXRpdGxlIHtcbiAgcGFkZGluZy1sZWZ0OiAyMHB4O1xufVxuXG4ubW0tbWVudSAubW0tbmF2YmFyIHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIHBhZGRpbmc6IDAgMjBweDtcbn1cblxuLm1tLWhpZ2hlc3QubW0tb3BlbmVkIC5tbS1uYXZiYXIgLm1tLXRpdGxlIHtcbiAgcGFkZGluZzogOHB4IDIwcHggMCAwO1xufVxuXG4jbW0tYmxvY2tlciB7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDBweCAzMHB4IDBweCByZ2JhKDAsIDAsIDAsIDAuNzUpO1xuICAtbW96LWJveC1zaGFkb3c6IDBweCAwcHggMzBweCAwcHggcmdiYSgwLCAwLCAwLCAwLjc1KTtcbiAgYm94LXNoYWRvdzogMHB4IDBweCAzMHB4IDBweCByZ2JhKDAsIDAsIDAsIDAuNzUpO1xufVxuXG4jQUlNQ29udGFpbmVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuXG4vKlxuYm9keVtsYW5nPVwiYXJcIl0ge1xuICAjaGVhZGVyICNtYWluX21lbnUgPiBsaTpsYXN0LW9mLXR5cGUgYSB7XG4gICAgcGFkZGluZy1yaWdodDowO1xuICB9XG5cbiAgI2hlYWRlciAjbWFpbl9tZW51IGxpIHVsIHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICByaWdodDogLTE3cHg7XG4gIH1cbn1cbiovXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDI0cHgpIHtcbiAgI3BhZ2VXcmFwIHtcbiAgICB0b3A6IDYwcHg7XG4gIH1cbiAgI3BhZ2VXcmFwICNjb250ZW50IHtcbiAgICBtYXgtd2lkdGg6IGluaXRpYWw7XG4gICAgd2lkdGg6IDkwJTtcbiAgfVxuICBib2R5ICoge1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgfVxuICAud2lkZ2V0OmZpcnN0LWNoaWxkLndpZGdldC0tZ2FsbGVyeSwgLndpZGdldDpmaXJzdC1jaGlsZC53aWRnZXQtLXN1bW1hcnkge1xuICAgIG1hcmdpbi10b3A6IDQwcHg7XG4gIH1cbiAgYm9keSAud2lkZ2V0OmZpcnN0LWNoaWxkIHtcbiAgICBwYWRkaW5nLXRvcDogNjBweDtcbiAgfVxuICBib2R5IC5vd2wtZG90cyB7XG4gICAgYm90dG9tOiAtNDBweDtcbiAgfVxuICAud2lkZ2V0LS1jb3B5LCAud2lkZ2V0LS1jb250YWN0IHtcbiAgICBtYXJnaW46IDAgNSU7XG4gIH1cbiAgLndpZGdldC0tY29udGFjdCAud2lkZ2V0X19kZXRhaWwgZm9ybSBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAud2lkZ2V0LS1jb3B5IC53aWRnZXRfX2RldGFpbCB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICBib2R5IC5jb2wtLWNvbnRhaW5lciBbY2xhc3MqPVwiY29sXCJdIHtcbiAgICBmbG9hdDogbm9uZTtcbiAgfVxuICBib2R5IC5jb2wtLWNvbnRhaW5lci5jb2wtLXJvdzIgLmNvbC0tMV81eHMsXG4gIGJvZHkgLmNvbC0tY29udGFpbmVyLmNvbC0tcm93MyAuY29sLS0xeHMsXG4gIGJvZHkgLmNvbC0tY29udGFpbmVyLmNvbC0tcm93MiAuY29sLS0xeHMsXG4gIGJvZHkgLmNvbC0tY29udGFpbmVyLmNvbC0tcm93MyAuY29sLS0yeHMsXG4gIGJvZHkgLmNvbC0tY29udGFpbmVyLmNvbC0tcm93MiAuY29sLS0wXzV4cyB7XG4gICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG4gIGJvZHkgLmNvbC0tY29udGFpbmVyLmNvbC0tcm93MiAuY29sLS0xeHMsXG4gIGJvZHkgLmNvbC0tY29udGFpbmVyLmNvbC0tcm93MyAuY29sLS0xeHMge1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIH1cbiAgYm9keSAud2lkZ2V0LS1zdW1tYXJ5LndpZGdldC0tc3VtbWFyeS0tbGlzdC1pbWFnZS1mdWxsIC53aWRnZXRfX2l0ZW0gLmNvbC0tY29udGFpbmVyIC53aWRnZXRfX2RldGFpbCwgYm9keSAud2lkZ2V0LS1zdW1tYXJ5LndpZGdldC0tc3VtbWFyeS0tbGlzdC1pbWFnZSAud2lkZ2V0X19pdGVtIC5jb2wtLWNvbnRhaW5lciAud2lkZ2V0X19kZXRhaWwge1xuICAgIHBhZGRpbmctYm90dG9tOiAzMHB4ICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xuICB9XG4gIGJvZHkgLndpZGdldC0tc3VtbWFyeS53aWRnZXQtLXN1bW1hcnktLWxpc3QtaW1hZ2UtZnVsbCAud2lkZ2V0X19pdGVtIC5jb2wtLWNvbnRhaW5lciAud2lkZ2V0X19kZXRhaWwgLmZsZXgtLXBhZGRpbmcsIGJvZHkgLndpZGdldC0tc3VtbWFyeS53aWRnZXQtLXN1bW1hcnktLWxpc3QtaW1hZ2UgLndpZGdldF9faXRlbSAuY29sLS1jb250YWluZXIgLndpZGdldF9fZGV0YWlsIC5mbGV4LS1wYWRkaW5nIHtcbiAgICBwYWRkaW5nOiA1JTtcbiAgICBoZWlnaHQ6IGluaGVyaXQ7XG4gIH1cbiAgYm9keSAud2lkZ2V0LS1zdW1tYXJ5IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICBib2R5IC53aWRnZXQtLXN1bW1hcnkgLndpZGdldF9fZGV0YWlsIHtcbiAgICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgcGFkZGluZzogMCA1JTtcbiAgfVxuICBib2R5IC53aWRnZXQtLXN1bW1hcnkud2lkZ2V0LS1zdW1tYXJ5LS1saXN0LWltYWdlIC53aWRnZXRfX2l0ZW0ge1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cbiAgYm9keSAud2lkZ2V0LS1zdW1tYXJ5IC5jb2wtLWNvbnRhaW5lciB7XG4gICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gICAgZGlzcGxheTogLW1vei1ib3g7XG4gICAgZGlzcGxheTogLW1zLWZsZXhib3g7XG4gICAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgfVxuICBib2R5IC53aWRnZXQtLXN1bW1hcnkgLndpZGdldF9faXRlbSAuY29sLS1jb250YWluZXIgPiBkaXY6bGFzdC1jaGlsZCB7XG4gICAgb3JkZXI6IDE7XG4gIH1cbiAgYm9keSAud2lkZ2V0LS1zdW1tYXJ5IC53aWRnZXRfX2l0ZW0gLmNvbC0tY29udGFpbmVyID4gZGl2OmZpcnN0LWNoaWxkIHtcbiAgICBvcmRlcjogMjtcbiAgfVxuICBib2R5IC53aWRnZXQtLXN1bW1hcnkgLndpZGdldF9faXRlbTpudGgtY2hpbGQob2RkKSAuY29sLS1jb250YWluZXIgPiBkaXY6bGFzdC1jaGlsZCB7XG4gICAgb3JkZXI6IDI7XG4gIH1cbiAgYm9keSAud2lkZ2V0LS1zdW1tYXJ5IC53aWRnZXRfX2l0ZW06bnRoLWNoaWxkKG9kZCkgLmNvbC0tY29udGFpbmVyID4gZGl2OmZpcnN0LWNoaWxkIHtcbiAgICBvcmRlcjogMTtcbiAgfVxuICBib2R5IC53aWRnZXQtLXN1bW1hcnkgLmNvbC0tY29udGFpbmVyLmNvbC0tcm93MiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDI0cHgpIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xuICBib2R5IC53aWRnZXQtLXN1bW1hcnkgLmNvbC0tY29udGFpbmVyLmNvbC0tcm93MiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMHB4O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjRweCkge1xuICAuZmxleC0tcGFkZGluZyB7XG4gICAgcGFkZGluZzogNSU7XG4gIH1cbiAgLndpZGdldC0tZ2FsbGVyeSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgLndpZGdldC0tZ2FsbGVyeSAub3dsLW5hdiAub3dsLW5leHQge1xuICAgIHJpZ2h0OiAtMjNweDtcbiAgfVxuICAud2lkZ2V0LS1nYWxsZXJ5IC5vd2wtbmF2IC5vd2wtbmV4dDpob3ZlciB7XG4gICAgcmlnaHQ6IC0yOHB4O1xuICB9XG4gIC53aWRnZXQtLWdhbGxlcnkgLm93bC1uYXYgLm93bC1wcmV2IHtcbiAgICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XG4gICAgLW8tdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICAgIC1tb3otdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbiAgICAtby10cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gICAgbGVmdDogLTIzcHg7XG4gIH1cbiAgLndpZGdldC0tZ2FsbGVyeSAub3dsLW5hdiAub3dsLXByZXY6aG92ZXIge1xuICAgIGxlZnQ6IC0yOHB4O1xuICB9XG4gIC53aWRnZXRfX2dhbGxlcnktLWlubGluZS0tcGFyZW50IC53aWRnZXRfX2dhbGxlcnktLWlubGluZS0taW5uZXIge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG4gIC53aWRnZXRfX2dhbGxlcnktLWlubGluZS0tcGFyZW50IC53aWRnZXRfX2dhbGxlcnktLWlubGluZSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgLndpZGdldF9fZ2FsbGVyeS0taW5saW5lLS1wYXJlbnQgLndpZGdldF9fY2FwdGlvbiB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgYm9keSAud2lkZ2V0LS1nYWxsZXJ5IC53aWRnZXRfX2ltYWdlIC53aWRnZXRfX2NhcHRpb24gPiBkaXYge1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgYm90dG9tOiAwO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nOiA1JTtcbiAgICBiYWNrZ3JvdW5kOiAjZWRlZGVkO1xuICB9XG4gIGJvZHkgLndpZGdldC0tZ2FsbGVyeSAud2lkZ2V0X19pbWFnZSAud2lkZ2V0X19jYXB0aW9uID4gZGl2IC5idXR0b24tLXdoaXRlIHtcbiAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICB9XG4gIGJvZHkgLndpZGdldC0tZ2FsbGVyeSAud2lkZ2V0X19pbWFnZSAud2lkZ2V0X19jYXB0aW9uID4gZGl2IC5idXR0b24tLXdoaXRlIGEge1xuICAgIGJhY2tncm91bmQ6IGJsYWNrO1xuICAgIGNvbG9yOiB3aGl0ZTtcbiAgfVxuICBib2R5IC53aWRnZXQtLWdhbGxlcnkgLndpZGdldF9faW1hZ2UgLndpZGdldF9fY2FwdGlvbiA+IGRpdiBwIHtcbiAgICBjb2xvcjogYmxhY2s7XG4gICAgZm9udC1zaXplOiAxLjVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDJyZW07XG4gICAgbWFyZ2luOiAwO1xuICB9XG4gIGJvZHkgLndpZGdldC0tZ2FsbGVyeSAud2lkZ2V0X19pbWFnZSAud2lkZ2V0X19jYXB0aW9uID4gZGl2IHAgYSB7XG4gICAgY29sb3I6IGJsYWNrO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbiAgYm9keSAud2lkZ2V0X19nYWxsZXJ5LS1pbmxpbmUgLndpZGdldF9fZ2FsbGVyeSAud2lkZ2V0X2ltYWdlLS1jb250YWluZXIsXG4gIC53aWRnZXRfX2dhbGxlcnktLWlubGluZSAud2lkZ2V0X19nYWxsZXJ5IC53aWRnZXRfX2NhcHRpb24ge1xuICAgIGZsb2F0OiBub25lO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG4gIC53aWRnZXRfX2dhbGxlcnktLWlubGluZSAud2lkZ2V0X19nYWxsZXJ5IC53aWRnZXRfX2NhcHRpb24ge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG4gIGJvZHkgLndpZGdldF9fZ2FsbGVyeS0taW5saW5lIC53aWRnZXRfX2dhbGxlcnkgLndpZGdldF9fY2FwdGlvbiA+IGRpdiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG4gIGJvZHkgLmZpbHRlcnMgLmNvbC0tY29udGFpbmVyIC5maWx0ZXJzX190YWIgLmZpbHRlcnNfX2RldGFpbCB7XG4gICAgbWluLWhlaWdodDogNTBweDtcbiAgfVxuICBib2R5IC5wYWdlLS1nYWxsZXJ5IC53aWRnZXQtLWdhbGxlcnkge1xuICAgIG1hcmdpbi1ib3R0b206IDYwcHg7XG4gIH1cbiAgI2Zvb3RlciAuZm9vdGVyX2NvbnRhaW5lciB7XG4gICAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gIH1cbiAgI2Zvb3RlciAuZm9vdGVyX2NvbnRhaW5lciAuZm9vdGVyLWNvbnRlbnQge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG4gIGJvZHkgI2Zvb3RlciAuZm9vdGVyX19sb2dvIHtcbiAgICBmbG9hdDogbm9uZTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWFyZ2luOiBhdXRvO1xuICB9XG4gIGJvZHkgI2Zvb3RlciAuc29jaWFsX21lZGlhIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gIH1cbiAgYm9keSAjZm9vdGVyIC5zb2NpYWxfbWVkaWEgbGkge1xuICAgIGZsb2F0OiBub25lO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgfVxuICBib2R5ICNoZWFkZXIge1xuICAgIGhlaWdodDogNDBweDtcbiAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICB9XG4gIGJvZHkgI2hlYWRlcjpub3QoLmhlYWRlci0taG92ZXIpIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICB9XG4gIGJvZHkgI2hlYWRlciAuaGVhZGVyX19tZW51IHNwYW4gLmF0b20tLWxpbmsgc3ZnIHBhdGgge1xuICAgIGZpbGw6IGJsYWNrO1xuICB9XG4gIGJvZHkgI2hlYWRlciAuaGVhZGVyX19tZW51IC5oZWFkZXJfX2xvZ28ge1xuICAgIHdpZHRoOiA3MHB4O1xuICAgIHRvcDogMTFweDtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vZ3JhcGhpY3MvbHdmLWxvZ28tYmxhY2sucG5nKSBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICB9XG4gIGJvZHkgI2hlYWRlciAuaGVhZGVyX19tZW51IC5oZWFkZXJfX2xvZ28gYSB7XG4gICAgbGluZS1oZWlnaHQ6IDQ3cHg7XG4gIH1cbiAgI2hlYWRlciAuaGVhZGVyX19tZW51ID4gc3BhbiB7XG4gICAgbWFyZ2luLXRvcDogOHB4O1xuICB9XG4gICNoZWFkZXIgLmhlYWRlcl9fbWVudSA+IHNwYW4gI2xhbmcge1xuICAgIGNvbG9yOiAjMDAwMDAwO1xuICB9XG4gICNoZWFkZXIgLmhlYWRlcl9fbWVudSA+IHNwYW4gLm1vYmlsZV9fYnV0dG9uIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuICAjaGVhZGVyIC5oZWFkZXJfX21lbnUgPiBzcGFuIC5kZXNrdG9wX19idXR0b24ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjAwcHgpIHtcbiAgYm9keSAjaGVhZGVyIC5oZWFkZXJfX21lbnUgLmhlYWRlcl9fbG9nbyB7XG4gICAgdG9wOiAyMHB4O1xuICB9XG4gIGJvZHkgI2hlYWRlciB7XG4gICAgaGVpZ2h0OiA2MHB4O1xuICB9XG4gICNoZWFkZXIgLmhlYWRlcl9fbWVudSA+IHNwYW4ge1xuICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gIH1cbiAgYm9keSAud2lkZ2V0OmZpcnN0LWNoaWxkIHtcbiAgICBwYWRkaW5nLXRvcDogMHB4O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gICNwYWdlV3JhcCB7XG4gICAgdG9wOiA4OHB4O1xuICB9XG59XG4iLCIud2lkZ2V0LS1nYWxsZXJ5IHtcbiAgd2lkdGg6IDkwJTtcbiAgbWFyZ2luOiAwIGF1dG8gNDBweCBhdXRvO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIEBtZWRpYSAobWF4LXdpZHRoOjc2OHB4KXtcbiAgICBtYXJnaW46IDAgYXV0byAwcHggYXV0bztcbiAgfVxuXG4gIC53aWRnZXRfX2dhbGxlcnkge1xuXG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luOmF1dG87XG4gICAgbWF4LWhlaWdodDogODgwcHg7XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgLy8gYmFja2dyb3VuZDogd2hpdGUgdXJsKCcuLi9ncmFwaGljcy9nYWxsZXJ5LWxvYWRpbmcuZ2lmJykgNTAlIDUwJSBuby1yZXBlYXQhaW1wb3J0YW50O1xuICAgICYud2lkZ2V0LS1hY3RpdmUgLndpZGdldF9faW1hZ2UgeyBvcGFjaXR5OjE7IH1cbiAgIFxuICB9XG5cbiAgLndpZGdldF9faW1hZ2Uge1xuXG4gICAgcG9zaXRpb246cmVsYXRpdmU7XG4gICAgb3BhY2l0eTowO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oYWxsIC42cyBsaW5lYXIpO1xuICAgIFxuICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICBpbWcge1xuICAgICAgZGlzcGxheTpibG9jaztcbiAgICAgIG1pbi13aWR0aDogMTAwJTtcbiAgICAgIG1pbi1oZWlnaHQ6IDMwMHB4O1xuICAgICAgbWF4LWhlaWdodDogODgwcHg7XG4gICAgICBvYmplY3QtZml0OmNvdmVyO1xuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDYwMHB4KSB7XG4gICAgICAgIG1pbi1oZWlnaHQ6IHVuc2V0O1xuICAgICAgICBtYXgtaGVpZ2h0OiB1bnNldDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAud2lkZ2V0X19jYXB0aW9uIHtcbiAgICAgIHdpZHRoOjgwJTtcbiAgICAgIGhlaWdodDoxMDAlO1xuICAgICAgbWF4LXdpZHRoOiAxMDE1cHg7XG4gICAgICBtYXJnaW46MCBhdXRvO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG4gICAgICA+IGRpdiB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgYm90dG9tOiA3NXB4O1xuICAgICAgICBtYXgtd2lkdGg6IDYwJTtcbiAgICAgICAgXG4gICAgICAgIHNwYW4uczEgeyBmb250LXNpemU6MnJlbTsgfVxuICAgICAgICBcbiAgICAgICAgcCB7XG4gICAgICAgICAgZm9udC1zaXplOiAzcmVtO1xuICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206NzBweDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMy41cmVtO1xuICAgICAgICAgIG9wYWNpdHk6MC40O1xuICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oYWxsIC4zcyBsaW5lYXIpO1xuICAgICAgICAgIFxuICAgICAgICAgIGEge1xuICAgICAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwgLjNzIGxpbmVhcik7XG4gICAgICAgICAgfVxuICAgICAgICAgIFxuICAgICAgICAgICY6aG92ZXIgeyBvcGFjaXR5OjE7IH1cbiAgICAgICAgICAmLndpZGdldF9fY2FwdGlvbi0taG92ZXIgeyBvcGFjaXR5OjE7IH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLmNvbC0tY29udGFpbmVyIHtcbiAgICAgICAgcG9zaXRpb246cmVsYXRpdmU7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgIH1cbiAgICAgIC53aWRnZXRfX2NhcHRpb24tLWhvdmVyIHsgb3BhY2l0eToxOyB9XG4gICAgfVxuICB9XG59XG4ud2lkZ2V0X19nYWxsZXJ5IHtcbiAgLm93bC12aWRlby1wbGF5LWljb24ge1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzIGVhc2U7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9ncmFwaGljcy9zdmcvbHdmLXBsYXkuc3ZnJykgIWltcG9ydGFudDtcblxuICAgICY6aG92ZXIge1xuICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjIpO1xuICAgIH1cbiAgfVxufVxuXG5ib2R5IC5wYWdlLS1nYWxsZXJ5IC53aWRnZXQtLWdhbGxlcnkgLndpZGdldF9faW1hZ2Uge1xuICAud2lkZ2V0X19jYXB0aW9uIHtcbiAgICBkaXNwbGF5Om5vbmU7XG4gIH1cbn1cblxuYm9keSAucGFnZS0tZ2FsbGVyeSAud2lkZ2V0LS1nYWxsZXJ5IC53aWRnZXRfX2ltYWdlIHtcbiAgLndpZGdldF9fY2FwdGlvbiB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDoxMDBweDtcbiAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICBib3R0b206MDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgYmFja2dyb3VuZDogcmdiYSgxLDEsMSwwLjMpO1xuICAgID4gZGl2IHtcbiAgICAgIHBvc2l0aW9uOnN0YXRpYztcbiAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgICB3aWR0aDoxMDAlO1xuICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIH1cbiAgICA+IGRpdiBwIHtcbiAgICAgIGZvbnQtc2l6ZTogMS44cmVtO1xuICAgICAgb3BhY2l0eToxO1xuICAgICAgbWFyZ2luOjA7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxuICB9XG59XG5cbmJvZHkgLnBhZ2UtLWdhbGxlcnkgLmdhbGxlcnlfX2l0ZW0ge1xuIFxuICA+IGRpdiB7XG4gICAgcG9zaXRpb246cmVsYXRpdmU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgfVxuXG4gIC50aXRsZSB7XG4gICAgcGFkZGluZzogMTBweCAyMHB4IDEwcHggMjBweDtcbiAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICBib3R0b206MDtcbiAgICBtaW4taGVpZ2h0OjU1cHg7XG4gICAgd2lkdGg6MTAwJTtcbiAgICBiYWNrZ3JvdW5kOnJnYmEoMjU1LDI1NSwyNTUsMC45KTtcbiAgICBAaW5jbHVkZSBib3gtc2l6aW5nKCk7XG4gICAgcCB7XG4gICAgICBtYXJnaW46MCAwIDJweCAwO1xuICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxOHB4O1xuICAgICAgfVxuICAgIH1cbiAgIC50aXRsZS0tbGluayB7XG4gICAgIGNvbG9yOiM3OTc3Nzc7XG4gICAgIGxpbmUtaGVpZ2h0OiAxZW07XG4gICAgICY6aG92ZXIgeyBcbiAgICAgICBjb2xvcjpibGFjaztcbiAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgfVxuICAgfVxuICB9XG5cbiAgJi5hY3RpdmUge1xuICAgIC50aXRsZS0tbGluayB7XG4gICAgICBjb2xvcjpibGFjaztcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgIH1cbiAgfVxufVxuXG4ub3dsLW5hdiB7XG4gIHRvcDogNTAlO1xuICB3aWR0aDogMTAwJTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICAmLmRpc2FibGVkIHsgZGlzcGxheTpub25lOyB9XG4gICYgPiBkaXYge1xuICAgIHRvcDogLTI0cHg7XG4gICAgcG9zaXRpb246IGluaGVyaXQ7XG4gICAgd2lkdGg6IDI0cHg7XG4gICAgaGVpZ2h0OiAyNHB4O1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50IHVybCgnLi4vZ3JhcGhpY3Mvc3ZnL2x3Zi1hcnJvdy5zdmcnKSA0MSUgNTAlIG5vLXJlcGVhdDtcbiAgICB0ZXh0LWluZGVudDogLTUwcHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgJi5kaXNhYmxlZCB7IGRpc3BsYXk6bm9uZTsgfVxuICB9XG4gIC5vd2wtbmV4dCB7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwgLjNzIGVhc2UpO1xuICAgIHJpZ2h0OiAtMzVweDtcbiAgICAmOmhvdmVyIHtcbiAgICAgIHJpZ2h0OiAtNDBweDtcbiAgICB9XG4gIH1cbiAgLm93bC1wcmV2IHtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGFsbCAuM3MgZWFzZSk7XG4gICAgQGluY2x1ZGUgcm90YXRlKDE4MGRlZyk7XG4gICAgbGVmdDogLTM1cHg7XG4gICAgJjpob3ZlciB7XG4gICAgICBsZWZ0OiAtNDBweDtcbiAgICB9XG4gIH1cbn1cblxuYm9keVtsYW5nPSdhciddIHtcbiAgLndpZGdldC0tZ2FsbGVyeSAud2lkZ2V0X19pbWFnZSAud2lkZ2V0X19jYXB0aW9uIC5idXR0b24tLXdoaXRlIHtcbiAgICBmbG9hdDpyaWdodDtcbiAgfVxuXG4gIC53aWRnZXQtLWdhbGxlcnkgLndpZGdldF9faW1hZ2UgLndpZGdldF9fY2FwdGlvbiA+IGRpdiB7XG4gICAgcmlnaHQ6MDtcbiAgfVxufSIsIi53aWRnZXRfX2dhbGxlcnktLWlubGluZS0tcGFyZW50IHtcbiAgLndpZGdldF9fZ2FsbGVyeS0taW5saW5lLS1pbm5lciB7XG4gICAgd2lkdGg6IDkwJTtcbiAgICBtYXJnaW46YXV0bztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgLndpZGdldF9fZ2FsbGVyeS0taW5saW5lIHtcbiAgICAgIHdpZHRoOiA0NSU7XG4gICAgfVxuICAgIC53aWRnZXRfX2NhcHRpb24ge1xuICAgICAgd2lkdGg6IDUwJTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDUwJTtcbiAgICAgIGRpdiB7XG4gICAgICAgIG1hcmdpbi10b3A6IDUwcHg7XG4gICAgICAgICY6bm90KC5hY3RpdmUpIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC53aWRnZXRfX2NhcHRpb25fX2lubGluZSB7XG4gICAgICB3aWR0aDogNTAlO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgZGl2IHtcbiAgICAgICAgbWFyZ2luLXRvcDogNTBweDtcbiAgICAgICAgJjpub3QoLmFjdGl2ZSkge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAub3dsLW5hdiB7XG4gICAgICAub3dsLW5leHQge1xuICAgICAgICByaWdodDogLTI1cHg7XG4gICAgICB9XG4gICAgICAub3dsLXByZXYge1xuICAgICAgICBsZWZ0OiAtMjVweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyNHB4KSB7XG4gIC53aWRnZXRfX2dhbGxlcnktLWlubGluZS0tcGFyZW50IHtcbiAgICAud2lkZ2V0X19nYWxsZXJ5LS1pbmxpbmUtLWlubmVyIHtcbiAgICAgIC53aWRnZXRfX2dhbGxlcnktLWlubGluZSB7XG4gICAgICAgIHdpZHRoOiA5MCU7XG4gICAgICAgIG1hcmdpbjphdXRvO1xuICAgICAgfVxuICAgICAgLndpZGdldF9fY2FwdGlvbiB7XG4gICAgICAgIHdpZHRoOiA5MCU7XG4gICAgICAgIG1hcmdpbjphdXRvO1xuICAgICAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgICAgICBkaXYge1xuICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAub3dsLW5hdiB7XG4gICAgICAgIC5vd2wtbmV4dCB7XG4gICAgICAgICAgcmlnaHQ6IC0yNXB4O1xuICAgICAgICB9XG4gICAgICAgIC5vd2wtcHJldiB7XG4gICAgICAgICAgbGVmdDogLTI1cHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi53aWRnZXQtLWNvcHkge1xuICBtYXJnaW46IGF1dG87XG5cbiAgJjpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgLypwYWRkaW5nOiAyJSAwOyovXG4gIH1cblxuICAud2lkZ2V0X19kZXRhaWwge1xuICAgIHBhZGRpbmctcmlnaHQ6MTAlO1xuICAgIEBleHRlbmQgLmNvbnRlbnRfY29udGFpbmVyO1xuICAgIEBpbmNsdWRlIGJveC1zaXppbmc7XG4gICAgaDIge1xuICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICB9XG4gICAgaDR7XG4gICAgICBtYXJnaW46MDtcbiAgICB9XG4gIH1cbn1cblxuLndpZGdldC0tcGVyc29uIHtcbiAgZm9udC1zdHlsZTppdGFsaWM7XG4gIGNvbG9yOiAkbGlnaHRfZ3JleTtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgLndpZGdldF9fdGl0bGUgYSB7XG4gICAgY29sb3I6JHJlZDtcbiAgICBmb250LXN0eWxlOmluaXRpYWw7XG4gIH1cbiAgaW1nIHsgbWF4LXdpZHRoOjUwJTsgfVxufVxuXG5ib2R5LmFyIHtcbiAgLndpZGdldC0tY29weSAud2lkZ2V0X19kZXRhaWwge1xuICAgIHBhZGRpbmctcmlnaHQ6MDtcbiAgICBwYWRkaW5nLWxlZnQ6MTAlO1xuICAgIGgxLCBoMiwgaDMge1xuICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgfVxuICB9XG59IiwiLndpZGdldC0tYnVkZHkge1xuICBwYWRkaW5nOjQwcHggMCAwIDA7XG4gIC53aWRnZXRfX2RldGFpbCB7XG4gICAgQGV4dGVuZCAuY29udGVudF9jb250YWluZXI7XG4gICAgQGluY2x1ZGUgYm94LXNpemluZztcbiAgICBoMyB7XG4gICAgICBjb2xvcjpibGFjayFpbXBvcnRhbnQ7XG4gICAgICBmb250LXdlaWdodDpib2xkIWltcG9ydGFudDtcbiAgICAgIGZvbnQtc2l6ZTogMS4xZW0haW1wb3J0YW50O1xuICAgIH1cbiAgICAuaXRlbSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6MDtcbiAgICB9XG4gIH1cbn1cblxuLndpZGdldC0tYnVkZHkgLnRhYiB7XG4gIHBhZGRpbmc6MDtcbiAgY3Vyc29yOnBvaW50ZXI7XG4gIGNvbG9yOndoaXRlO1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBib3JkZXI6MDtcbiAgbGkge1xuICAgIGJvcmRlcjowO1xuICAgICY6aG92ZXIgYSB7XG4gICAgICBiYWNrZ3JvdW5kOiBibGFjaztcbiAgICAgIGNvbG9yOndoaXRlO1xuICAgIH1cbiAgfVxuICBsaSBhIHtcbiAgICBvdXRsaW5lOm5vbmU7XG4gICAgYm9yZGVyOjA7XG4gICAgYmFja2dyb3VuZDogd2hpdGU7XG4gIH1cbn1cblxuLndpZGdldC0tYnVkZHkgLml0ZW1fX3RhYnMge1xuICBmb250LWZhbWlseTogJ2xla3RvbnJlZ3VsYXInLCBzYW5zLXNlcmlmO1xuICBib3JkZXI6MCFpbXBvcnRhbnQ7XG4gIHBhZGRpbmc6MDtcbiAgYmFja2dyb3VuZDpub25lO1xuICBsaSB7XG4gICAgbWFyZ2luLXRvcDowIWltcG9ydGFudDtcbiAgfVxuICAudWktdGFicy1uYXYge1xuICAgIGJvcmRlci1ib3R0b206IDA7XG4gIH1cbiAgXG4gIC51aS10YWJzLWFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZDpibGFjaztcbiAgICBib3JkZXI6MDtcbiAgICBtYXJnaW4tYm90dG9tOjAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6MCFpbXBvcnRhbnQ7XG4gICAgYSB7XG4gICAgICBiYWNrZ3JvdW5kOmJsYWNrIWltcG9ydGFudDtcbiAgICAgIGNvbG9yOndoaXRlO1xuICAgIH1cbiAgfVxufVxuIiwiLndpZGdldC0tc3VtbWFyeSB7XG4gIHBhZGRpbmc6NDBweCAwIDYwcHggMDtcbiAgbWFyZ2luOiBhdXRvO1xuICB3aWR0aDogOTAlO1xuICAud2lkZ2V0X19kZXRhaWwge1xuXG4gICAgQGV4dGVuZCAuY29udGVudF9jb250YWluZXI7XG4gICAgY29sb3I6YmxhY2s7XG4gICAgbWFyZ2luOjAgYXV0bztcblxuICAgIGxpIHtcbiAgICAgIHBhZGRpbmc6IDIwcHggMDtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZWVlO1xuICAgICAgJjpmaXJzdC1jaGlsZCB7IHBhZGRpbmc6MCAwIDIwcHggMDsgfVxuICAgICAgYSB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICBoMiB7XG4gICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgIH1cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgaDIubGFuZ3VhZ2UtLXRleHQge1xuICAgICAgICAgICAgY29sb3I6ICRsaWdodF9ncmV5O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICBhIHsgY29sb3I6aW5oZXJpdDsgfVxuICAgIGgyIHtcbiAgICAgIG1hcmdpbjowO1xuICAgICAgZm9udC1zaXplOiAxLjNlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgfVxuICAgIGgzIHtcbiAgICAgIGZvbnQtc2l6ZTowLjlyZW07XG4gICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgY29sb3I6ICNiMmIyYjI7XG4gICAgfVxuICB9XG4gIC53aWRnZXRfX2ltYWdlIHtcbiAgICBiYWNrZ3JvdW5kOiB3aGl0ZSB1cmwoJy4uL2dyYXBoaWNzL2dhbGxlcnktbG9hZGluZy5naWYnKSA1MCUgNTAlIG5vLXJlcGVhdCFpbXBvcnRhbnQ7XG4gICAgaW1nIHtcbiAgICAgIG9wYWNpdHk6MDtcbiAgICAgIHdpZHRoOjEwMCU7XG4gICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGFsbCAuNnMgbGluZWFyKTtcbiAgICB9XG4gIH1cbiAgLndpZGdldF9faXRlbSB7XG4gICAgbWFyZ2luOiBhdXRvO1xuICAgIC5jb2wtLWNvbnRhaW5lciB7XG4gICAgICBAaW5jbHVkZSBwcmVmaXgoZGlzcGxheSwgZmxleCwgd2Via2l0IG1zKTtcbiAgICB9XG4gIH1cbn1cblxuLyogR1JJRCAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG4ud2lkZ2V0LS1zdW1tYXJ5LndpZGdldC0tc3VtbWFyeS0tZ3JpZCB7XG4gIC5jb2wtLWNvbnRhaW5lciB7XG4gICAgbWFyZ2luLWxlZnQ6LTEwcHg7XG4gICAgbWFyZ2luLXJpZ2h0Oi0xMHB4O1xuICAgICYgPiBkaXYge1xuICAgICAgcGFkZGluZzoxMHB4IDVweCA1cHggMTBweDtcbiAgICAgIC53aWRnZXRfX2l0ZW0ge1xuICAgICAgICBwYWRkaW5nOjI1cHg7XG4gICAgICAgIGJhY2tncm91bmQ6ICNmMmYyZjI7XG4gICAgICAgIC53aWRnZXRfX2RhdGUge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206MTBweDtcbiAgICAgICAgICBjb2xvcjojOWQ5ZDlkO1xuICAgICAgICB9XG4gICAgICAgIGgyIHtcbiAgICAgICAgICBmb250LXNpemU6MS42ZW07XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNWVtO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206MDtcblxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8qIElNQUdFIEZVTEwgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLy8ud2lkZ2V0LS1zdW1tYXJ5LndpZGdldC0tc3VtbWFyeS0tbGlzdC1pbWFnZS1mdWxsIHtcbi8vICAud2lkZ2V0X19pdGVtIHtcbi8vICAgIG92ZXJmbG93OiBoaWRkZW47XG4vLyAgICAmLndpZGdldC0tYWN0aXZlIC53aWRnZXRfX2ltYWdlIGltZyB7ICBvcGFjaXR5OjE7IH1cbi8vICAgIC5jb2wtLWNvbnRhaW5lciB7XG4vLyAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4vLyAgICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuLy8gICAgICAud2lkZ2V0X19kZXRhaWwge1xuLy8gICAgICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuLy8gICAgICB9XG4vLyAgICB9XG4vLyAgICBpbWcge1xuLy8gICAgICB3aWR0aDogMTAwJTtcbi8vICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4vLyAgICAgIG1heC1oZWlnaHQ6ICRtYXgtaGVpZ2h0O1xuLy8gICAgfVxuLy8gICAgLndpZGdldF9fZGV0YWlsIHtcbi8vICAgICAgY29sb3I6IzZmNmY2Zjtcbi8vICAgICAgYmFja2dyb3VuZDogI2VkZWRlZDtcbi8vICAgICAgLndpZGdldF9fZGF0ZSB7IG1hcmdpbi1ib3R0b206MTVweDsgfVxuLy8gICAgICBbY2xhc3MqPVwiYnV0dG9uXCJdIHtcbi8vICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbi8vICAgICAgICBib3R0b206IDglO1xuLy8gICAgICAgIGNvbG9yOmJsYWNrO1xuLy8gICAgICB9XG4vLyAgICAgIGgyIHsgY29sb3I6YmxhY2s7IH1cbi8vICAgIH1cbi8vICB9XG4vL31cbi8vXG5cbi53aWRnZXQtLXN1bW1hcnkud2lkZ2V0LS1zdW1tYXJ5LS1saXN0e1xuICAud2lkZ2V0X19kZXRhaWx7XG4gICAgcGFkZGluZy10b3A6ODBweDtcbiAgfVxuICBoMntcblxuICB9XG59XG5cbi53aWRnZXQtLXN1bW1hcnkud2lkZ2V0LS1zdW1tYXJ5LS1saXN0LWltYWdlLWZ1bGwge1xuICAud2lkZ2V0X19pdGVtIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICYud2lkZ2V0LS1hY3RpdmUgLndpZGdldF9faW1hZ2UgaW1nIHsgIG9wYWNpdHk6MTsgfVxuICAgIC5jb2wtLWNvbnRhaW5lciB7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgcG9zaXRpb246cmVsYXRpdmU7XG4gICAgICAud2lkZ2V0X19kZXRhaWwge1xuICAgICAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgICAgIH1cbiAgICB9XG4gICAgaW1nIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgfVxuICAgIC53aWRnZXRfX2RldGFpbCB7XG4gICAgICBjb2xvcjojNmY2ZjZmO1xuICAgICAgYmFja2dyb3VuZDogI2VkZWRlZDtcbiAgICAgIC5mbGV4LS1wYWRkaW5nIHtcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgQGluY2x1ZGUgZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgfVxuICAgICAgKjpudGgtbGFzdC1jaGlsZCgyKSB7XG4gICAgICAgIGZsZXgtZ3JvdzogMjtcbiAgICAgIH1cbiAgICAgIC53aWRnZXRfX2RhdGUgeyBtYXJnaW4tYm90dG9tOjE1cHg7IH1cbiAgICAgIFtjbGFzcyo9XCJidXR0b25cIl0ge1xuICAgICAgICBkaXNwbGF5OiBpbmhlcml0O1xuICAgICAgICBjb2xvcjpibGFjaztcbiAgICAgICAgZmxleC1ncm93OiAwO1xuICAgICAgfVxuICAgICAgaDIgeyBjb2xvcjpibGFjazsgfVxuICAgIH1cbiAgfVxufVxuXG5cbi8qIElNQUdFIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuLndpZGdldC0tc3VtbWFyeS53aWRnZXQtLXN1bW1hcnktLWxpc3QtaW1hZ2Uge1xuICBAZXh0ZW5kIC53aWRnZXQtLXN1bW1hcnktLWxpc3QtaW1hZ2UtZnVsbDtcbiAgLndpZGdldF9faXRlbTpmaXJzdC1jaGlsZCB7XG4gICAgcGFkZGluZzogMCFpbXBvcnRhbnQ7XG4gIH1cbiAgLndpZGdldF9faXRlbSB7XG4gICAgcGFkZGluZzogMCAwIDUwcHggMDtcbiAgICBpbWcgeyBtYXgtaGVpZ2h0OiAzNTBweDsgfVxuICAgICY6Zmlyc3QtY2hpbGQgeyBwYWRkaW5nOiA1MHB4IDA7IH1cbiAgICAmOm50aC1jaGlsZChvZGQpIHtcbiAgICAgIGJhY2tncm91bmQ6ICNmNmY2ZjY7XG4gICAgfVxuICAgIC5jb2wtLWNvbnRhaW5lciB7XG4gICAgICBAZXh0ZW5kIC5jb250ZW50X2NvbnRhaW5lcjtcbiAgICAgIC5jb2wtLTBfNXhzIHsgd2lkdGg6IDM1JTsgfVxuICAgICAgLmNvbC0tMV81eHMgeyB3aWR0aDogNjUlOyB9XG4gICAgICAud2lkZ2V0X19kZXRhaWwge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbmJvZHkuYXIgLndpZGdldC0tc3VtbWFyeSAud2lkZ2V0X19kZXRhaWwge1xuICBzcGFuIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB0ZXh0LWFsaWduOnJpZ2h0O1xuICB9XG5cbiAgW2NsYXNzKj1cImJ1dHRvblwiXSB7XG4gICAgcmlnaHQ6OCU7XG4gICAgbWFyZ2luLXJpZ2h0OjElO1xuICAgIHBhZGRpbmctcmlnaHQ6IGluaGVyaXQ7XG4gIH1cbn1cblxuLmZsZXgtLXBhZGRpbmcge1xuICBwYWRkaW5nOiAxNSU7XG59IiwiLndpZGdldC0tbWFwIHtcbiAgYmFja2dyb3VuZDogd2hpdGUgdXJsKCcuLi9ncmFwaGljcy9nYWxsZXJ5LWxvYWRpbmcuZ2lmJykgNTAlIDUwJSBuby1yZXBlYXQhaW1wb3J0YW50O1xuICAmLndpZGdldC0tYWN0aXZlIC53aWRnZXRfX2RldGFpbCB7XG4gICAgb3BhY2l0eToxO1xuICB9XG4gIC53aWRnZXRfX2RldGFpbCB7XG4gICAgb3BhY2l0eTowO1xuICAgIG1heC1oZWlnaHQ6NTAwcHg7XG4gICAgaGVpZ2h0OjUwMHB4O1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oYWxsIC42cyBsaW5lYXIpO1xuICB9XG59IiwiLndpZGdldC0tY29udGFjdCB7XG4gIC53aWRnZXRfX2RldGFpbCB7XG4gICAgcGFkZGluZy1ib3R0b206MTAwcHg7XG4gICAgQGV4dGVuZCAuY29udGVudF9jb250YWluZXI7XG4gICAgLmNvbC0tMnhzIHsgcGFkZGluZy1yaWdodDogNyU7IH1cbiAgICBmb3JtIHtcbiAgICAgIG1hcmdpbi10b3A6MzBweDtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBpbnB1dCB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAnQmlyeWFuaScsIHNhbnMtc2VyaWY7XG4gICAgICAgIGZvbnQtc2l6ZToxNHB4O1xuICAgICAgICBib3JkZXI6MDtcbiAgICAgICAgcGFkZGluZzowIDAgMCAxMHB4O1xuICAgICAgICB3aWR0aDoxMDAlO1xuICAgICAgICBoZWlnaHQ6IDUwcHg7XG4gICAgICAgIGJhY2tncm91bmQ6ICNlZGVkZWQ7XG4gICAgICAgIG91dGxpbmU6bm9uZTtcbiAgICAgICAgY29sb3I6YmxhY2s7XG4gICAgICAgIEBpbmNsdWRlIGJveC1zaXppbmcoKTtcbiAgICAgICAgJlt0eXBlPVwic3VibWl0XCJdIHtcbiAgICAgICAgICBmb250LXNpemU6IDFlbTtcbiAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgIG1hcmdpbi10b3A6MzBweDtcbiAgICAgICAgICBjb2xvcjp3aGl0ZTtcbiAgICAgICAgICB3aWR0aDppbml0aWFsO1xuICAgICAgICAgIGJhY2tncm91bmQ6IGJsYWNrO1xuICAgICAgICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICBwYWRkaW5nOiAxMHB4O1xuICAgICAgICAgIGhlaWdodDo0MHB4O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyNXB4O1xuICAgICAgICAgIGN1cnNvcjpwb2ludGVyO1xuICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oYWxsIC4zcyBsaW5lYXIpO1xuICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgY29sb3I6YmxhY2s7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgdGV4dGFyZWEge1xuICAgICAgICBtYXJnaW46MDtcbiAgICAgICAgcGFkZGluZzowO1xuICAgICAgICB3aWR0aDoxMDAlO1xuICAgICAgICBib3JkZXI6MDtcbiAgICAgICAgaGVpZ2h0OjEwMCU7XG4gICAgICAgIG1pbi1oZWlnaHQ6MjAwcHg7XG4gICAgICAgIGJhY2tncm91bmQ6ICNlZGVkZWQ7XG4gICAgICB9XG5cbiAgICAgIGxhYmVsIHtcbiAgICAgICAgbWFyZ2luOjE1cHggMCAwIDA7XG4gICAgICAgIHBhZGRpbmc6MDtcbiAgICAgICAgZGlzcGxheTpibG9jaztcbiAgICAgICAgcGFkZGluZy1ib3R0b206NHB4O1xuXG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgIGNvbG9yOiAjYjJiMmIyO1xuICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICB9XG4gICAgfVxuICB9IFxufVxuXG5ib2R5LmFyIHtcbiAgbGFiZWwgeyBmbG9hdDpyaWdodDsgfVxuICAud2lkZ2V0LS1jb250YWN0IC53aWRnZXRfX2RldGFpbCBmb3JtIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuICAgIHdpZHRoOiA4MHB4O1xuICAgIGZsb2F0OnJpZ2h0OyBcbiAgfVxuICAuY29udHJvbC1ncm91cHtcbiAgICBkaXJlY3Rpb246IHJ0bDtcbiAgfVxuICAgIFxufSIsIlxuLndpZGdldC0tcG9wdXAge1xuICBkaXNwbGF5OiBub25lO1xuICAvL3Bvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiA0MHB4O1xuICB6LWluZGV4OiA5OTk7XG4gIC8vd2lkdGg6IDEwMHZ3O1xuICBoZWlnaHQ6IDEwMHZoO1xuICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cblxuICAucG9wdXAtY29udGVudC13cmFwcGVye1xuICAgIHdpZHRoOiA1MCUgO1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NDhweCl7XG4gICAgICB3aWR0aDogOTAlO1xuICAgIH1cbiAgICAvKmhlaWdodDogMjUwcHg7Ki9cbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgLy9tYXJnaW4tdG9wOiA4cmVtO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nOiAyMHB4IDIwcHggNDBweCAyMHB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG5cbiAgfVxuICAjY2xvc2UtcG9wdXB7XG4gICAgZm9udC1zaXplOiAyNnB4OyBcbiAgICBjb2xvcjogcmdiYTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDE1cHg7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG5cbiAgLndoZXJlLXRvLWJvb2t7XG4gICAgd2lkdGg6IGZpdC1jb250ZW50O1xuICAgIGJhY2tncm91bmQtY29sb3I6IGdyZXk7XG4gICAgbWFyZ2luLXRvcDogMmVtO1xuXG4gICAgYXtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgcGFkZGluZzogMTBweCA3cHg7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBncmV5O1xuICAgIH1cbiAgfVxuXG5cbn1cbmJvZHlbbGFuZz1cImFyXCJdIHtcbiAgLnBvcHVwLWNvbnRlbnQtd3JhcHBlcntcbiAgICBkaXJlY3Rpb246IHJ0bDtcbiAgfVxuICAud2lkZ2V0LS1wb3B1cCAjY2xvc2UtcG9wdXB7XG4gICAgbGVmdDogMTVweDtcbiAgICByaWdodDogdW5zZXQ7XG4gIH1cbn0iLCJAaW1wb3J0ICd3aWRnZXRzL19nYWxsZXJ5LnNjc3MnO1xuQGltcG9ydCAnd2lkZ2V0cy9fZ2FsbGVyeS0taW5saW5lLnNjc3MnO1xuQGltcG9ydCAnd2lkZ2V0cy9fY29weS5zY3NzJztcbkBpbXBvcnQgJ3dpZGdldHMvX2J1ZGR5X3dhbGwuc2Nzcyc7XG5AaW1wb3J0ICd3aWRnZXRzL19zdW1tYXJ5LnNjc3MnO1xuQGltcG9ydCAnd2lkZ2V0cy9fbWFwLnNjc3MnO1xuQGltcG9ydCAnd2lkZ2V0cy9fZm9ybS5zY3NzJztcbkBpbXBvcnQgJ3dpZGdldHMvX3BvcHVwLnNjc3MnO1xuXG4ud2lkZ2V0OmZpcnN0LWNoaWxkIHtcbiAgLy9wYWRkaW5nLXRvcDoxNTBweDtcbiAgJi53aWRnZXQtLWdhbGxlcnksICYud2lkZ2V0LS1zdW1tYXJ5IHtcbiAgICAvL21hcmdpbi10b3A6IDExMHB4O1xuICAgIHBhZGRpbmctdG9wOiAwO1xuICB9XG59XG5cbi5wYWdlLS1ob21lcGFnZSAud2lkZ2V0OmZpcnN0LWNoaWxkLndpZGdldC0tZ2FsbGVyeSB7XG4gIHBhZGRpbmctdG9wOjA7XG59XG5cbi53aWRnZXQge1xuICBtYXJnaW4tdG9wOjgwcHg7XG5cbiAgLndpZGdldF9fZGV0YWlsIHtcbiAgICBzdHJvbmcgeyBmb250LXNpemU6IDEuMWVtOyB9XG4gICAgaDMge1xuICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgIGNvbG9yOiAjYjJiMmIyO1xuICAgICAgZm9udC1zaXplOiAxLjVyZW07XG4gICAgICBwYWRkaW5nOiAzJSAwO1xuICAgICAgbWFyZ2luOjA7XG4gICAgfVxuICB9XG4gIC53aWRnZXRfX2ltYWdlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjdmN2Y3O1xuICAgIC5mdWxsc2NyZWVuLWxpbmsge1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZy10b3A6IDEwcHg7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMTBweDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGxpZ2h0Z3JleTtcbiAgICB9XG4gIH1cbn1cblxuYm9keVtsYW5nPSdhciddIHtcbiAgLndpZGdldCB7XG4gICAgLndpZGdldF9fZGV0YWlsIHtcbiAgICAgIGgzIHsgdGV4dC1hbGlnbjogcmlnaHQ7IH1cbiAgICB9XG4gIH1cblxuICAudWktdGFicyAudWktdGFicy1uYXYgbGkge1xuICAgIGZsb2F0OiByaWdodDtcbiAgfVxuXG4gIC53aWRnZXQtLXN1bW1hcnkge1xuICAgIC5jb2wtLWNvbnRhaW5lciBbY2xhc3MqPVwiY29sXCJdIHtcbiAgICAgIGZsb2F0OiByaWdodDtcbiAgICB9XG5cbiAgICAud2lkZ2V0X19pdGVtOm50aC1jaGlsZChvZGQpIC53aWRnZXRfX2ltYWdlICB7XG4gICAgICBvcmRlcjoyO1xuICAgIH1cblxuICAgIC53aWRnZXRfX2l0ZW06bnRoLWNoaWxkKGV2ZW4pIC53aWRnZXRfX2RldGFpbCAge1xuICAgICAgb3JkZXI6MjtcbiAgICB9XG4gIH1cbiAgXG4gIC5nYWxsZXJ5X19vdGhlciB7XG4gICAgLmdhbGxlcnlfX2l0ZW0ge1xuICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgIH1cbiAgfVxufSIsIi5jb2wtLWNvbnRhaW5lciB7XG4gIFtjbGFzcyo9XCJjb2xcIl0ge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIEBpbmNsdWRlIGJveC1zaXppbmcoKTtcbiAgfVxuICAmOmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjbGVhcjogYm90aDtcbiAgfVxufVxuXG4uY29sLS1jb250YWluZXIuY29sLS1yb3czIHtcbiAgLmNvbC0tMXhzIHtcbiAgICB3aWR0aDozMy4zMiU7XG4gIH1cblxuICAuY29sLS0yeHMge1xuICAgIHdpZHRoOjY2LjY1JTtcbiAgfVxufVxuXG4uY29sLS1jb250YWluZXIuY29sLS1yb3cyIHtcbiAgLmNvbC0tMF81eHMge1xuICAgIHdpZHRoOjMwJTtcbiAgfVxuICBcbiAgLmNvbC0tMXhzIHtcbiAgICB3aWR0aDo1MCU7XG4gIH1cblxuICAuY29sLS0xXzV4cyB7XG4gICAgd2lkdGg6NzAlO1xuICB9XG5cbiAgLmNvbC0tMnhzIHtcbiAgICB3aWR0aDoxMDAlO1xuICB9XG59IiwiJGxvYWRlcl9jb2xvdXI6cmdiYSgyNTUsMjU1LDI1NSwuNyk7XG4kbG9hZGVyX2NvbG91cl9hbHBoYTpyZ2JhKDI1NSwyNTUsMjU1LC42KTtcbiR0b3A6NTAlO1xuJGxlZnQ6NTAlO1xuXG4jTG9hZGVyV3JhcHBlcntcblxuICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgdG9wOjA7XG4gIGxlZnQ6MDtcbiAgYm90dG9tOjA7XG4gIHJpZ2h0OjA7XG4gIG1hcmdpbjowO1xuICBwYWRkaW5nOjA7XG4gIHRvdWNoLWFjdGlvbjogbWFuaXB1bGF0aW9uO1xuICBvdmVyZmxvdzpoaWRkZW47XG4gIGZvbnQtZmFtaWx5OiBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgcG9pbnRlci1ldmVudHM6bm9uZTtcblxuICAtd2Via2l0LXRvdWNoLWNhbGxvdXQ6IG5vbmU7XG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1raHRtbC11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiByZ2JhKDAsIDAsIDAsIDApO1xuICAtbW96LXRhcC1oaWdobGlnaHQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMCk7XG5cbiAgZGlzcGxheTpub25lO1xuICB6LWluZGV4Ojk5OTk5OTtcblxuXG4gICYuYWN0aXZlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIGRpc3BsYXk6YmxvY2s7XG4gIH1cblxuICBwe1xuICAgIHBvc2l0aW9uOmFic29sdXRlO1xuICAgIG1hcmdpbjowO1xuICAgIHRvcDokdG9wO1xuICAgIGxlZnQ6JGxlZnQ7XG4gICAgdGV4dC1hbGlnbjpjZW50ZXI7XG4gICAgZm9udC1zaXplOjFyZW07XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgY29sb3I6ICRsb2FkZXJfY29sb3VyO1xuICAgIGZvbnQtZmFtaWx5OiAnbGVrdG9ucmVndWxhcicsIHNhbnMtc2VyaWY7XG4gICAgZGlzcGxheTpub25lO1xuXG4gIH1cblxuICAmLmluaXRzIHB7XG4gICAgZGlzcGxheTpibG9jaztcbiAgfVxuXG4gICNsb2FkZXJ7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6ICRsZWZ0O1xuICAgIHRvcDogJHRvcDtcbiAgICBoZWlnaHQ6IDZ2dztcbiAgICB3aWR0aDogNnZ3O1xuICAgIG1hcmdpbjogLTN2dyAwIDAgLTN2dztcbiAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItdG9wLWNvbG9yOiAkbG9hZGVyX2NvbG91cl9hbHBoYTtcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkbG9hZGVyX2NvbG91cl9hbHBoYTtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgei1pbmRleDogMjtcbiAgICAtd2Via2l0LWFuaW1hdGlvbjogc3BpbiAycyBsaW5lYXIgaW5maW5pdGU7XG4gICAgLW1vei1hbmltYXRpb246IHNwaW4gMnMgbGluZWFyIGluZmluaXRlO1xuICAgIC1vLWFuaW1hdGlvbjogc3BpbiAycyBsaW5lYXIgaW5maW5pdGU7XG4gICAgYW5pbWF0aW9uOiBzcGluIDJzIGxpbmVhciBpbmZpbml0ZTtcblxuICAgICY6YmVmb3Jle1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDoyJTtcbiAgICAgIGJvdHRvbTogMiU7XG4gICAgICBsZWZ0OiAyJTtcbiAgICAgIHJpZ2h0OiAyJTtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgei1pbmRleDogMjtcbiAgICAgIGJvcmRlci10b3AtY29sb3I6ICRsb2FkZXJfY29sb3VyX2FscGhhO1xuICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgLXdlYmtpdC1hbmltYXRpb246IHNwaW4gM3MgbGluZWFyIGluZmluaXRlO1xuICAgICAgLW1vei1hbmltYXRpb246IHNwaW4gM3MgbGluZWFyIGluZmluaXRlO1xuICAgICAgLW8tYW5pbWF0aW9uOiBzcGluIDNzIGxpbmVhciBpbmZpbml0ZTtcbiAgICAgIGFuaW1hdGlvbjogc3BpbiAzcyBsaW5lYXIgaW5maW5pdGU7XG4gICAgfVxuXG4gICAgJjphZnRlcntcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6NSU7XG4gICAgICBib3R0b206IDUlO1xuICAgICAgbGVmdDogNSU7XG4gICAgICByaWdodDogNSU7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci10b3AtY29sb3I6ICRsb2FkZXJfY29sb3VyX2FscGhhO1xuICAgICAgei1pbmRleDogMjtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgIC13ZWJraXQtYW5pbWF0aW9uOiBzcGluIDEuNXMgbGluZWFyIGluZmluaXRlO1xuICAgICAgLW1vei1hbmltYXRpb246IHNwaW4gMS41cyBsaW5lYXIgaW5maW5pdGU7XG4gICAgICAtby1hbmltYXRpb246IHNwaW4gMS41cyBsaW5lYXIgaW5maW5pdGU7XG4gICAgICBhbmltYXRpb246IHNwaW4gMS41cyBsaW5lYXIgaW5maW5pdGU7XG5cbiAgICB9XG4gIH1cblxufVxuXG5cbi8qS2V5ZnJhbWVzIGZvciBzcGluIGFuaW1hdGlvbiAqL1xuQC13ZWJraXQta2V5ZnJhbWVzIHNwaW4ge1xuICAwJSAgIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDBkZWcpOyAgLyogQ2hyb21lLCBPcGVyYSAxNSssIFNhZmFyaSAzLjErICovXG4gICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDBkZWcpOyAgLyogSUUgOSAqL1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpOyAgLyogRmlyZWZveCAxNissIElFIDEwKywgT3BlcmEgKi9cbiAgfVxuXG4gIDUwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpOyAgLyogQ2hyb21lLCBPcGVyYSAxNSssIFNhZmFyaSAzLjErICovXG4gICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7ICAvKiBJRSA5ICovXG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTsgIC8qIEZpcmVmb3ggMTYrLCBJRSAxMCssIE9wZXJhICovXG4gIH1cbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpOyAgLyogQ2hyb21lLCBPcGVyYSAxNSssIFNhZmFyaSAzLjErICovXG4gICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7ICAvKiBJRSA5ICovXG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTsgIC8qIEZpcmVmb3ggMTYrLCBJRSAxMCssIE9wZXJhICovXG4gIH1cbn1cblxuQC1tb3ota2V5ZnJhbWVzIHNwaW4ge1xuICAwJSAgIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDBkZWcpOyAgLyogQ2hyb21lLCBPcGVyYSAxNSssIFNhZmFyaSAzLjErICovXG4gICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDBkZWcpOyAgLyogSUUgOSAqL1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpOyAgLyogRmlyZWZveCAxNissIElFIDEwKywgT3BlcmEgKi9cbiAgfVxuXG4gIDUwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpOyAgLyogQ2hyb21lLCBPcGVyYSAxNSssIFNhZmFyaSAzLjErICovXG4gICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7ICAvKiBJRSA5ICovXG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTsgIC8qIEZpcmVmb3ggMTYrLCBJRSAxMCssIE9wZXJhICovXG4gIH1cbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpOyAgLyogQ2hyb21lLCBPcGVyYSAxNSssIFNhZmFyaSAzLjErICovXG4gICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7ICAvKiBJRSA5ICovXG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTsgIC8qIEZpcmVmb3ggMTYrLCBJRSAxMCssIE9wZXJhICovXG4gIH1cbn1cblxuQC1vLWtleWZyYW1lcyBzcGluIHtcbiAgMCUgICB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTsgIC8qIENocm9tZSwgT3BlcmEgMTUrLCBTYWZhcmkgMy4xKyAqL1xuICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTsgIC8qIElFIDkgKi9cbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTsgIC8qIEZpcmVmb3ggMTYrLCBJRSAxMCssIE9wZXJhICovXG4gIH1cblxuICA1MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTsgIC8qIENocm9tZSwgT3BlcmEgMTUrLCBTYWZhcmkgMy4xKyAqL1xuICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpOyAgLyogSUUgOSAqL1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7ICAvKiBGaXJlZm94IDE2KywgSUUgMTArLCBPcGVyYSAqL1xuICB9XG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTsgIC8qIENocm9tZSwgT3BlcmEgMTUrLCBTYWZhcmkgMy4xKyAqL1xuICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpOyAgLyogSUUgOSAqL1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7ICAvKiBGaXJlZm94IDE2KywgSUUgMTArLCBPcGVyYSAqL1xuICB9XG59XG5cbkBrZXlmcmFtZXMgc3BpbiB7XG4gIDAlICAge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7ICAvKiBDaHJvbWUsIE9wZXJhIDE1KywgU2FmYXJpIDMuMSsgKi9cbiAgICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7ICAvKiBJRSA5ICovXG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7ICAvKiBGaXJlZm94IDE2KywgSUUgMTArLCBPcGVyYSAqL1xuICB9XG5cbiAgNTAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7ICAvKiBDaHJvbWUsIE9wZXJhIDE1KywgU2FmYXJpIDMuMSsgKi9cbiAgICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTsgIC8qIElFIDkgKi9cbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpOyAgLyogRmlyZWZveCAxNissIElFIDEwKywgT3BlcmEgKi9cbiAgfVxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7ICAvKiBDaHJvbWUsIE9wZXJhIDE1KywgU2FmYXJpIDMuMSsgKi9cbiAgICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTsgIC8qIElFIDkgKi9cbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpOyAgLyogRmlyZWZveCAxNissIElFIDEwKywgT3BlcmEgKi9cbiAgfVxufVxuXG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjRweCkge1xuICAjTG9hZGVyV3JhcHBlciB7XG5cbiAgICBwe1xuICAgICAgZm9udC1zaXplOi43cmVtO1xuICAgIH1cblxuICAgICNsb2FkZXIge1xuICAgICAgaGVpZ2h0OiAyMnZ3O1xuICAgICAgd2lkdGg6IDIydnc7XG4gICAgICBtYXJnaW46IC0xMXZ3IDAgMCAtMTF2dztcblxuICAgIH1cblxuXG4gIH1cbn1cbiIsIi5wYWdlLS1nYWxsZXJ5IHtcbiAgLm93bC1kb3RzIHsgZGlzcGxheTpibG9jazsgfVxuICAuZ2FsbGVyeV9fb3RoZXIge1xuICAgIEBleHRlbmQgLmNvbnRlbnRfY29udGFpbmVyO1xuICAgIC5jb2wtLWNvbnRhaW5lciB7XG4gICAgICBtYXJnaW4tbGVmdDogLTEwcHg7XG4gICAgICBtYXJnaW4tcmlnaHQ6IC0xMHB4O1xuICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihoZWlnaHQgLjZzIGxpbmVhcik7XG4gICAgICAuZ2FsbGVyeV9faXRlbSB7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24ocG9zaXRpb24gLjZzIGxpbmVhcik7XG4gICAgICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgICAgIGltZyB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgbWluLWhlaWdodDogMjIwcHg7XG4gICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLndpZGdldC0tZ2FsbGVyeSB7XG4gICAgbWFyZ2luLWJvdHRvbTowO1xuICAgIC53aWRnZXRfX2ltYWdlIHtcbiAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgfVxuICB9XG5cbiAgPmgye1xuICAgIHdpZHRoOjkwJTtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIGNvbG9yOiAjYjJiMmIyO1xuICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgIG1hcmdpbjogMSUgYXV0byAzJSBhdXRvO1xuICB9XG59XG5cbi5maWx0ZXJzIHsgXG4gIEBleHRlbmQgLmNvbnRlbnRfY29udGFpbmVyO1xuICAuY29sLS1jb250YWluZXIge1xuICAgIC5maWx0ZXJzX190YWIge1xuICAgICAgcGFkZGluZzogMTBweDtcbiAgICAgIGN1cnNvcjpwb2ludGVyO1xuICAgICAgLmZpbHRlcnNfX2RldGFpbCB7XG4gICAgICAgIGJhY2tncm91bmQ6ICNmMmYyZjI7XG4gICAgICAgIG1pbi1oZWlnaHQ6MTUwcHg7XG4gICAgICAgIGEge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIHBhZGRpbmc6IDYlO1xuICAgICAgICAgIGNvbG9yOiAjYjJiMmIyO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgaDMge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxZW07XG4gICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgIGNvbG9yOiBibGFjaztcbiAgICAgICAgICAgIG1hcmdpbjogMFxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJi5maWx0ZXJzX190YWItLWFjdGl2ZSAuZmlsdGVyc19fZGV0YWlsIHtcbiAgICAgICAgYmFja2dyb3VuZDogIzIyMjIyMTtcbiAgICAgICAgYSwgaDMgeyBjb2xvcjp3aGl0ZTsgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5ib2R5IC53aWRnZXRfX2dhbGxlcnkgLm93bC12aWRlby13cmFwcGVyIHtcbiAgcG9zaXRpb246YWJzb2x1dGU7XG4gIHdpZHRoOjEwMCU7XG4gIGltZyB7XG4gICAgZGlzcGxheTpub25lO1xuICB9XG59IiwidGFibGUge1xuICBvdXRsaW5lOiBub25lO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xufSIsIi5tZW51X19idXR0b25fX2Rlc2t0b3B7XG4gIHotaW5kZXg6IDEyO1xuICB3aWR0aDogMTAwdnc7XG4gIGhlaWdodDogMTAwdmg7XG59XG4uZGVza3RvcF9fYnV0dG9uLS1pbWFnZTpob3ZlcntcbiAgb3BhY2l0eTogLjY7XG59XG4uZGVza3RvcE1lbnVDb250ZW50e1xuICBhe1xuICAgIGZvbnQtd2VpZ2h0OiB1bnNldDtcbiAgfVxuICAjZGVza3RvcE1lbnV7XG4gICAgd2lkdGg6IDEwMHZ3O1xuICAgIGhlaWdodDogMTAwdmg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICB6LWluZGV4OiAxMjtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgdG9wOiAwcHg7XG4gICAgI2xhbmd7XG4gICAgICBjb2xvcjojZmZmO1xuICAgIH1cbiAgICAubG9nb01lbnVEZXNrdG9we1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgLmhlYWRlcl9fbG9nb19fZGVza3RvcHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vZ3JhcGhpY3MvbHdmLWxvZ28tYmxhY2sucG5nKSBuby1yZXBlYXQ7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTQ3cHggNDdweDtcbiAgICAgICAgd2lkdGg6IDE0N3B4O1xuICAgICAgICBoZWlnaHQ6IDQ3cHg7XG4gICAgICAgIHRvcDogMTVweDtcbiAgICAgICAgbGVmdDogNSU7XG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCl7XG4gICAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICAgICAgICAgIHdpZHRoOiA3MHB4O1xuICAgICAgICAgIGhlaWdodDogNDdweDtcbiAgICAgICAgICB0b3A6IDIwcHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5jbG9zZS1tZW51LWRlc2t0b3B7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgcmlnaHQ6IDYlO1xuICAgICAgICB3aWR0aDogMjJweDtcbiAgICAgICAgaGVpZ2h0OiAyMnB4O1xuICAgICAgICB0b3A6IDMwcHg7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KXtcbiAgICAgICAgICB0b3A6IDIwcHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5jbG9zZS1tZW51LWRlc2t0b3A6aG92ZXJ7XG4gICAgICAgIG9wYWNpdHk6IDAuNjtcbiAgICAgIH1cblxuICAgIH1cbiAgICAudGl0bGV7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgfVxuICAgIC50aXRsZTpob3ZlcntcbiAgICAgIG9wYWNpdHk6IDAuNjtcbiAgICB9XG4gICAgLm1lbnV7XG4gICAgICBwYWRkaW5nLXRvcDogOHJlbTtcbiAgICB9XG4gICAgdWwge1xuICAgICAgZm9udC1zaXplOiAxLjVyZW07XG4gICAgICBhOmhvdmVye1xuICAgICAgICAgb3BhY2l0eTogLjQ7XG4gICAgICB9XG4gICAgICBsaXtcblxuICAgICAgICB1bHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgICAgICAgYSB7XG4gICAgICAgICAgICBvcGFjaXR5OiAuNjtcbiAgICAgICAgICB9XG4gICAgICAgICAgYTpob3ZlcntcbiAgICAgICAgICAgICBvcGFjaXR5OiAuNDtcbiAgICAgICAgICB9XG4gICAgICAgICAgbGl7XG4gICAgICAgICAgICB1bHtcbiAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgfVxuXG4gICAgIFxuICAgIH1cblxuICB9XG5cbn1cblxuLmZhZGUtb3V0IHtcbiAgYW5pbWF0aW9uOiBmYWRlT3V0IGVhc2UgOHM7XG4gIC13ZWJraXQtYW5pbWF0aW9uOiBmYWRlT3V0IGVhc2UgOHM7XG4gIC1tb3otYW5pbWF0aW9uOiBmYWRlT3V0IGVhc2UgOHM7XG4gIC1vLWFuaW1hdGlvbjogZmFkZU91dCBlYXNlIDhzO1xuICAtbXMtYW5pbWF0aW9uOiBmYWRlT3V0IGVhc2UgOHM7XG59XG5cbi5mYWRlLWluIHtcbiAgYW5pbWF0aW9uOiBmYWRlSW4gZWFzZSAxMHM7XG4gIC13ZWJraXQtYW5pbWF0aW9uOiBmYWRlSW4gZWFzZSAxMHM7XG4gIC1tb3otYW5pbWF0aW9uOiBmYWRlSW4gZWFzZSAxMHM7XG4gIC1vLWFuaW1hdGlvbjogZmFkZUluIGVhc2UgMTBzO1xuICAtbXMtYW5pbWF0aW9uOiBmYWRlSW4gZWFzZSAxMHM7XG59XG5Aa2V5ZnJhbWVzIGZhZGVPdXQge1xuICAwJSB7XG4gICAgb3BhY2l0eToxO1xuICB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6MDtcbiAgfVxufVxuXG5ALW1vei1rZXlmcmFtZXMgZmFkZU91dCB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OjE7XG4gIH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTowO1xuICB9XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBmYWRlT3V0IHtcbiAgMCUge1xuICAgIG9wYWNpdHk6MTtcbiAgfVxuICAxMDAlIHtcbiAgICBvcGFjaXR5OjA7XG4gIH1cbn1cblxuQC1vLWtleWZyYW1lcyBmYWRlT3V0IHtcbiAgMCUge1xuICAgIG9wYWNpdHk6MTtcbiAgfVxuICAxMDAlIHtcbiAgICBvcGFjaXR5OjA7XG4gIH1cbn1cblxuQC1tcy1rZXlmcmFtZXMgZmFkZU91dCB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OjE7XG4gIH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTowO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgZmFkZUluIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6MDtcbiAgfVxuICAxMDAlIHtcbiAgICBvcGFjaXR5OjE7XG4gIH1cbn1cblxuQC1tb3ota2V5ZnJhbWVzIGZhZGVJbiB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OjA7XG4gIH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eToxO1xuICB9XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBmYWRlSW4ge1xuICAwJSB7XG4gICAgb3BhY2l0eTowO1xuICB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6MTtcbiAgfVxufVxuXG5ALW8ta2V5ZnJhbWVzIGZhZGVJbiB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OjA7XG4gIH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eToxO1xuICB9XG59XG5cbkAtbXMta2V5ZnJhbWVzIGZhZGVJbiB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OjA7XG4gIH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eToxO1xuICB9XG59IiwiQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyNHB4KSB7XG5cbiAgI3BhZ2VXcmFwe1xuICAgIHRvcDo2MHB4O1xuXG4gICAgI2NvbnRlbnR7XG4gICAgICBtYXgtd2lkdGg6aW5pdGlhbDtcbiAgICAgIHdpZHRoOjkwJTtcbiAgICB9XG4gIH1cblxuICBib2R5ICoge1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgfVxuICBcbiAgLndpZGdldDpmaXJzdC1jaGlsZC53aWRnZXQtLWdhbGxlcnksIC53aWRnZXQ6Zmlyc3QtY2hpbGQud2lkZ2V0LS1zdW1tYXJ5IHtcbiAgICBtYXJnaW4tdG9wOjQwcHg7XG4gIH1cblxuICBib2R5IC53aWRnZXQ6Zmlyc3QtY2hpbGQge1xuICAgIHBhZGRpbmctdG9wOjYwcHg7XG4gIH1cblxuICBib2R5IC5vd2wtZG90cyB7XG4gICAgYm90dG9tOiAtNDBweDtcbiAgfVxuXG4gIC8vQ09QWSBXSURHRVQgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS9cbiAgLndpZGdldC0tY29weSwgLndpZGdldC0tY29udGFjdCB7XG4gICAgbWFyZ2luOjAgNSU7XG4gIH1cblxuXG4gIC53aWRnZXQtLWNvbnRhY3QgLndpZGdldF9fZGV0YWlsIGZvcm0gaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgd2lkdGg6MTAwJTtcbiAgfVxuXG4gIC53aWRnZXQtLWNvcHkgLndpZGdldF9fZGV0YWlsIHtcbiAgICBwYWRkaW5nLXJpZ2h0OjA7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgXG4gIC8vQ09MVU1OUyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS9cbiAgYm9keSAuY29sLS1jb250YWluZXIgW2NsYXNzKj1cImNvbFwiXSB7XG4gICAgZmxvYXQ6bm9uZTtcbiAgfVxuXG4gIGJvZHkgLmNvbC0tY29udGFpbmVyLmNvbC0tcm93MiAuY29sLS0xXzV4cyxcbiAgYm9keSAuY29sLS1jb250YWluZXIuY29sLS1yb3czIC5jb2wtLTF4cyxcbiAgYm9keSAuY29sLS1jb250YWluZXIuY29sLS1yb3cyIC5jb2wtLTF4cyxcbiAgYm9keSAuY29sLS1jb250YWluZXIuY29sLS1yb3czIC5jb2wtLTJ4cyxcbiAgYm9keSAuY29sLS1jb250YWluZXIuY29sLS1yb3cyIC5jb2wtLTBfNXhzIHtcbiAgICB3aWR0aDoxMDAlIWltcG9ydGFudDtcbiAgICBwYWRkaW5nOjA7XG4gIH1cblxuICBib2R5IC5jb2wtLWNvbnRhaW5lci5jb2wtLXJvdzIgLmNvbC0tMXhzLFxuICBib2R5IC5jb2wtLWNvbnRhaW5lci5jb2wtLXJvdzMgLmNvbC0tMXhzIHtcbiAgICBtYXJnaW4tYm90dG9tOjIwcHg7XG4gIH1cblxuICAvL1NVTU1BUlkgV0lER0VUICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0vXG4gIFxuICBib2R5IC53aWRnZXQtLXN1bW1hcnkud2lkZ2V0LS1zdW1tYXJ5LS1saXN0LWltYWdlLWZ1bGwgLndpZGdldF9faXRlbSAuY29sLS1jb250YWluZXIgLndpZGdldF9fZGV0YWlsIHtcbiAgICBwYWRkaW5nLWJvdHRvbTozMHB4IWltcG9ydGFudDtcbiAgICBtYXJnaW4tYm90dG9tOjAhaW1wb3J0YW50O1xuICB9XG5cbiAgYm9keSAud2lkZ2V0LS1zdW1tYXJ5LndpZGdldC0tc3VtbWFyeS0tbGlzdC1pbWFnZS1mdWxsIC53aWRnZXRfX2l0ZW0gLmNvbC0tY29udGFpbmVyIC53aWRnZXRfX2RldGFpbCAuZmxleC0tcGFkZGluZyB7XG4gICAgcGFkZGluZzo1JTtcbiAgICBoZWlnaHQ6IGluaGVyaXQ7XG4gIH1cblxuICBib2R5IC53aWRnZXQtLXN1bW1hcnkud2lkZ2V0LS1zdW1tYXJ5LS1saXN0LWltYWdlLWZ1bGwgLndpZGdldF9faXRlbSAud2lkZ2V0X19kZXRhaWwgW2NsYXNzKj1cImJ1dHRvblwiXSB7XG4vLyAgICBib3R0b206MjBweDtcbiAgfVxuXG4gIGJvZHkgLndpZGdldC0tc3VtbWFyeSB7XG4gICAgIHdpZHRoOiAxMDAlO1xuICAgIC53aWRnZXRfX2RldGFpbCB7XG4gICAgICBAaW5jbHVkZSBib3gtc2l6aW5nKCk7XG4gICAgICBwYWRkaW5nOjAgNSU7XG5cbiAgICB9XG4gIH1cblxuICBib2R5IC53aWRnZXQtLXN1bW1hcnkud2lkZ2V0LS1zdW1tYXJ5LS1saXN0LWltYWdlIC53aWRnZXRfX2l0ZW0ge1xuICAgIHBhZGRpbmc6MDtcbiAgfVxuXG4gIGJvZHkgLndpZGdldC0tc3VtbWFyeSAuY29sLS1jb250YWluZXIge1xuICAgIEBpbmNsdWRlIGZsZXgoKTtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICB9XG5cbiAgYm9keSAud2lkZ2V0LS1zdW1tYXJ5IC53aWRnZXRfX2l0ZW0gLmNvbC0tY29udGFpbmVyID4gZGl2Omxhc3QtY2hpbGQge1xuICAgIG9yZGVyOjE7XG4gIH1cblxuICBib2R5IC53aWRnZXQtLXN1bW1hcnkgLndpZGdldF9faXRlbSAuY29sLS1jb250YWluZXIgPiBkaXY6Zmlyc3QtY2hpbGQge1xuICAgIG9yZGVyOjI7XG4gIH1cblxuICBib2R5IC53aWRnZXQtLXN1bW1hcnkgLndpZGdldF9faXRlbTpudGgtY2hpbGQob2RkKSAuY29sLS1jb250YWluZXIgPiBkaXY6bGFzdC1jaGlsZCB7XG4gICAgb3JkZXI6MjtcbiAgfVxuICBib2R5IC53aWRnZXQtLXN1bW1hcnkgLndpZGdldF9faXRlbTpudGgtY2hpbGQob2RkKSAuY29sLS1jb250YWluZXIgPiBkaXY6Zmlyc3QtY2hpbGQge1xuICAgIG9yZGVyOjE7XG4gIH1cblxuICBib2R5IC53aWRnZXQtLXN1bW1hcnkgLmNvbC0tY29udGFpbmVyLmNvbC0tcm93MiB7XG4gICAgbWFyZ2luLWJvdHRvbToyMHB4O1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCl7XG4gICAgICBtYXJnaW4tYm90dG9tOjBweDtcbiAgICB9XG4gIH1cblxuICAuZmxleC0tcGFkZGluZyB7XG4gICAgcGFkZGluZzo1JTtcbiAgfVxuICBcbiAgLy9HQUxMRVJZIFdJREdFVCAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tL1xuICAud2lkZ2V0LS1nYWxsZXJ5IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICAub3dsLW5hdiB7XG4gICAgICAub3dsLW5leHQge1xuICAgICAgICByaWdodDogLTIzcHg7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgcmlnaHQ6IC0yOHB4O1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5vd2wtcHJldiB7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oYWxsIC4zcyBlYXNlKTtcbiAgICAgICAgQGluY2x1ZGUgcm90YXRlKDE4MGRlZyk7XG4gICAgICAgIGxlZnQ6IC0yM3B4O1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGxlZnQ6IC0yOHB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gICAgLndpZGdldF9fZ2FsbGVyeS0taW5saW5lLS1wYXJlbnQge1xuICAgICAgLndpZGdldF9fZ2FsbGVyeS0taW5saW5lLS1pbm5lciB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgfVxuICAgICAgLndpZGdldF9fZ2FsbGVyeS0taW5saW5lIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB9XG4gICAgICAud2lkZ2V0X19jYXB0aW9uIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB9XG4gICAgfVxuXG4gIGJvZHkgLndpZGdldC0tZ2FsbGVyeSAud2lkZ2V0X19pbWFnZSAud2lkZ2V0X19jYXB0aW9uID4gZGl2IHtcbiAgICBwb3NpdGlvbjpzdGF0aWM7XG4gICAgYm90dG9tOjA7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmc6IDUlO1xuICAgIGJhY2tncm91bmQ6ICNlZGVkZWQ7XG4gICAgLmJ1dHRvbi0td2hpdGUge1xuICAgICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICB9XG4gICAgLmJ1dHRvbi0td2hpdGUgYSB7XG4gICAgICBiYWNrZ3JvdW5kOiBibGFjaztcbiAgICAgIGNvbG9yOndoaXRlO1xuICAgIH1cbiAgICBwIHtcbiAgICAgIGNvbG9yOmJsYWNrO1xuICAgICAgZm9udC1zaXplOiAxLjVyZW07XG4gICAgICBsaW5lLWhlaWdodDogMnJlbTtcbiAgICAgIG1hcmdpbjowO1xuICAgICAgYSB7XG4gICAgICAgIGNvbG9yOmJsYWNrO1xuICAgICAgICBvcGFjaXR5OjE7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIFxuICBib2R5IC53aWRnZXRfX2dhbGxlcnktLWlubGluZSAud2lkZ2V0X19nYWxsZXJ5IC53aWRnZXRfaW1hZ2UtLWNvbnRhaW5lcixcbiAgLndpZGdldF9fZ2FsbGVyeS0taW5saW5lIC53aWRnZXRfX2dhbGxlcnkgLndpZGdldF9fY2FwdGlvbiB7XG4gICAgZmxvYXQ6bm9uZTtcbiAgICB3aWR0aDoxMDAlO1xuICB9XG4gIFxuICAud2lkZ2V0X19nYWxsZXJ5LS1pbmxpbmUgLndpZGdldF9fZ2FsbGVyeSAud2lkZ2V0X19jYXB0aW9uIHtcbiAgICB3aWR0aDoxMDAlO1xuICB9XG5cbiAgYm9keSAud2lkZ2V0X19nYWxsZXJ5LS1pbmxpbmUgLndpZGdldF9fZ2FsbGVyeSAud2lkZ2V0X19jYXB0aW9uID4gZGl2IHtcbiAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgICB3aWR0aDoxMDAlO1xuICB9XG5cbiAgYm9keSAuZmlsdGVycyAuY29sLS1jb250YWluZXIgLmZpbHRlcnNfX3RhYiAuZmlsdGVyc19fZGV0YWlsIHtcbiAgICBtaW4taGVpZ2h0OiA1MHB4O1xuICB9XG5cbiAgYm9keSAucGFnZS0tZ2FsbGVyeSAud2lkZ2V0LS1nYWxsZXJ5IHtcbiAgICBtYXJnaW4tYm90dG9tOiA2MHB4O1xuICB9XG5cbiAgLy9GT09URVIgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tL1xuICBib2R5ICNmb290ZXIge1xuICAgIC8vaGVpZ2h0OjE2MHB4O1xuICB9XG5cbiAgI2Zvb3RlciAuZm9vdGVyX2NvbnRhaW5lciB7XG4gICAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgLmZvb3Rlci1jb250ZW50IHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgfVxuXG4gIGJvZHkgI2Zvb3RlciB7XG4gICAgLmZvb3Rlcl9fbG9nbyB7XG4gICAgICBmbG9hdDogbm9uZTtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIG1hcmdpbjogYXV0bztcbiAgICB9XG4gICAgLnNvY2lhbF9tZWRpYSB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgICBsaSB7XG4gICAgICAgIGZsb2F0Om5vbmU7XG4gICAgICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBcbiAgLy9IRUFERVIgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tL1xuICBib2R5ICNoZWFkZXIge1xuICAgIGhlaWdodDo0MHB4O1xuICAgIGJhY2tncm91bmQ6IHdoaXRlO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG5cbiAgICAmOm5vdCguaGVhZGVyLS1ob3Zlcil7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICAgIH1cblxuICAgIC5oZWFkZXJfX21lbnUge1xuICAgICAgc3BhbiB7XG4gICAgICAgIC5hdG9tLS1saW5rIHtcbiAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgcGF0aCB7XG4gICAgICAgICAgICAgIGZpbGw6IGJsYWNrO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIFxuICBib2R5ICNoZWFkZXIgLmhlYWRlcl9fbWVudSAuaGVhZGVyX19sb2dvIHtcbiAgICB3aWR0aDo3MHB4O1xuICAgIHRvcDoxMXB4O1xuICAgIGJhY2tncm91bmQ6IHVybCguLi9ncmFwaGljcy9sd2YtbG9nby1ibGFjay5wbmcpIG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gICAgYSB7XG4gICAgICBsaW5lLWhlaWdodDogNDdweDtcbiAgICB9XG4gIH1cblxuICAjaGVhZGVye1xuICAgIC5oZWFkZXJfX21lbnV7XG4gICAgICA+c3BhbiB7XG4gICAgICAgIG1hcmdpbi10b3A6IDhweDtcblxuICAgICAgICAjbGFuZ3tcbiAgICAgICAgICBjb2xvcjokbWVudV9oaWdobGlnaHQ7XG4gICAgICAgIH1cblxuICAgICAgICAubW9iaWxlX19idXR0b24ge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG4gICAgICAgIC5kZXNrdG9wX19idXR0b24ge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuXG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYwMHB4KSB7XG4gIGJvZHkgI2hlYWRlciAuaGVhZGVyX19tZW51IC5oZWFkZXJfX2xvZ28ge1xuICAgIHRvcDoyMHB4O1xuICB9XG5cbiAgYm9keSAjaGVhZGVyIHtcbiAgICBoZWlnaHQ6NjBweDtcblxuXG4gIH1cbiAgI2hlYWRlcntcbiAgICAuaGVhZGVyX19tZW51e1xuICAgICAgPnNwYW4ge1xuICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuXG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgYm9keSAud2lkZ2V0OmZpcnN0LWNoaWxkIHtcbiAgICBwYWRkaW5nLXRvcDowcHg7XG4gIH1cblxufVxuIl19 */
