@charset "UTF-8";
/*!
 Theme Name:   Ciné Evolène
 Theme URI:    https://espace-trava.ch
 Description:  A Generatepress child theme for the Cinevolene Website
 Author:       Benoit Luisier
 Author URI:   https://novo-media.ch
 Template:     generatepress
 Version:      1.0.0
 Text Domain:  Cinevolene
*/
/* Inlander Regular */
@font-face {
  font-family: "Inlander";
  font-style: normal;
  font-weight: 400;
  src: local("Inlander Regular"), local("Inlander-Regular"), url("/app/themes/alpiness/assets/fonts/inlander/inlander-regular.woff") format("woff"), url("/app/themes/alpiness/assets/fonts/inlander/inlander-regular.ttf") format("truetype"); /* Safari, Android, iOS */
  font-display: swap;
}
/* Quicksand latin regular */
@font-face {
  font-family: "Quicksand";
  font-style: normal;
  font-weight: 400;
  src: url("/app/themes/alpiness/assets/fonts/quicksand/quicksand-v30-latin-regular.eot"); /* IE9 Compat Modes */
  src: local("Quicksand Regular"), local("Quicksand-Regular"), url("/app/themes/alpiness/assets/fonts/quicksand/quicksand-v30-latin-regular.eot?#iefix") format("embedded-opentype"), url("/app/themes/alpiness/assets/fonts/quicksand/quicksand-v30-latin-regular.woff2") format("woff2"), url("/app/themes/alpiness/assets/fonts/quicksand/quicksand-v30-latin-regular.woff") format("woff"), url("/app/themes/alpiness/assets/fonts/quicksand/quicksand-v30-latin-regular.ttf") format("truetype"), url("/app/themes/alpiness/assets/fonts/quicksand/quicksand-v30-latin-regular.svg#Quicksand") format("svg"); /* Legacy iOS */
  font-display: swap;
}
/* open-sans-regular - latin */
@font-face {
  font-family: "Open Sans";
  font-style: normal;
  font-weight: 300;
  src: url("/app/themes/alpiness/assets/fonts/open-sans/open-sans-v34-latin-300.eot"); /* IE9 Compat Modes */
  src: local(""), url("/app/themes/alpiness/assets/fonts/open-sans/open-sans-v34-latin-300.eot?#iefix") format("embedded-opentype"), url("/app/themes/alpiness/assets/fonts/open-sans/open-sans-v34-latin-300.woff2") format("woff2"), url("/app/themes/alpiness/assets/fonts/open-sans/open-sans-v34-latin-300.woff") format("woff"), url("/app/themes/alpiness/assets/fonts/open-sans/open-sans-v34-latin-300.ttf") format("truetype"), url("/app/themes/alpiness/assets/fonts/open-sans/open-sans-v34-latin-300.svg#OpenSans") format("svg"); /* Legacy iOS */
  font-display: swap;
}
/* # base
---------------------------------------------------------------------------------------------------- */
html body {
  overflow-x: hidden;
}
@media (min-width: 1500px) {
  html body {
    font-size: 20px;
  }
}

/* # Elements
---------------------------------------------------------------------------------------------------- */
.wp-block-table table {
  margin-bottom: 30px;
  font-weight: bold;
  color: #0b2744;
}
.wp-block-table table thead {
  background-color: #0b2744;
  color: #ffffff;
}
.wp-block-table figcaption {
  font-style: italic;
}

form input {
  font-size: 22px;
}
form input[type=submit] {
  font-weight: bold;
}

.mgl-justified-container,
.mgl-masonry-container {
  margin: 30px 0px 30px 0px;
}

/* # Headers
---------------------------------------------------------------------------------------------------- */
.site-header {
  position: sticky;
  top: 0;
  z-index: 1000;
}
.site-header .inside-header #site-navigation {
  width: 100%;
  margin-left: 230px;
}
@media (min-width: 1250px) {
  .site-header .inside-header #site-navigation {
    margin-left: 300px;
  }
}
.site-header .inside-header #site-navigation #primary-menu #menu-main-menu {
  width: 100%;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: start;
      justify-content: flex-start;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
}
.site-header .inside-header #site-navigation #primary-menu #menu-main-menu a {
  padding: 0 15px 0 15px;
}
.site-header .inside-header #site-navigation #primary-menu #menu-main-menu a .dropdown-menu-toggle {
  padding-right: 0px;
}

#mobile-header {
  z-index: 100;
}
#mobile-header .inside-navigation {
  padding: 5px 40px 5px 40px;
}
#mobile-header .inside-navigation .mobile-header-logo a img {
  width: 150px;
  height: 150px;
}
#mobile-header .inside-navigation .menu-toggle {
  margin-left: auto;
  padding: 0 10px 0 10px;
}
#mobile-header .inside-navigation #mobile-menu ul {
  background-color: #8dc9b9;
  padding: 20px;
}
@media (min-width: 768px) and (max-width: 1023px) {
  .single-post .title-excerpt h1,
  .blog .title-excerpt h1 {
    font-size: 2.2rem;
  }
}
@media (min-width: 500px) and (max-width: 700px) {
  .single-post .title-excerpt h1,
  .blog .title-excerpt h1 {
    font-size: 1.5rem;
  }
  .single-post .title-excerpt p,
  .blog .title-excerpt p {
    font-size: 20px;
    line-height: 1.2;
  }
}
@media (max-width: 499px) {
  .single-post .title-excerpt h1,
  .blog .title-excerpt h1 {
    font-size: 1.3rem;
  }
  .single-post .title-excerpt p,
  .blog .title-excerpt p {
    font-size: 17px;
    line-height: 1.1;
  }
}

.archive .page-header {
  margin-bottom: 50px;
}
.archive .page-header h1 {
  text-align: center;
}

/* # Content Area
---------------------------------------------------------------------------------------------------- */
.site-content .content-area {
  position: relative;
  z-index: 20;
  background-color: #ffffff;
  padding: 20px;
}
.site-content .content-area a {
  font-weight: bold;
}

.home h1 {
  display: none;
}
.home .home-section-4 hr {
  width: 80%;
  margin: 10px auto 10px auto;
}
.home .home-section-4 ul {
  margin-left: 2em;
}
@media (max-width: 900px) {
  .home .home-section-4 ul {
    margin-left: 1em;
  }
}
.home .home-section-5 hr {
  width: 80%;
  margin: 10px auto 10px auto;
}
.home .home-section-5 ul {
  margin-left: 2em;
}
@media (max-width: 900px) {
  .home .home-section-5 ul {
    margin-left: 1em;
  }
}

@media (min-width: 1500px) {
  .page-id-26 article .entry-content .room {
    padding-left: 10%;
    padding-right: 10%;
  }
}
.page-id-26 article .entry-content .gb-container ul {
  columns: 2;
}
@media (min-width: 769px) and (max-width: 1200px) {
  .page-id-26 article .entry-content .gb-container ul {
    columns: 1;
  }
}
@media (min-width: 401px) and (max-width: 768px) {
  .page-id-26 article .entry-content .gb-container ul {
    columns: 2;
  }
}
@media (max-width: 400px) {
  .page-id-26 article .entry-content .gb-container ul {
    columns: 1;
  }
}

@media (max-width: 440px) {
  .page-id-34 .box .discount {
    height: 180px;
  }
}
@media (min-width: 1300px) {
  .page-id-34 .box .discount img {
    height: 340px;
  }
}
@media (max-width: 440px) {
  .page-id-34 .box .discount img {
    height: 220px;
  }
}
@media (max-width: 440px) {
  .page-id-34 .box .discount .txt-box .discount-txt,
  .page-id-34 .box .discount .txt-box .discount-cite {
    font-size: 13px;
  }
}
.page-id-34 hr {
  color: #cf5c36;
  height: 9px;
  background-color: #ffffff;
  border-top: 1px solid #cf5c36;
  border-bottom: 4px solid #cf5c36;
  margin-bottom: -55px;
}
.page-id-34 .big-button.blue-button a.wp-block-button__link {
  font-weight: normal;
  font-size: 25px;
}
@media (max-width: 600px) {
  .page-id-34 .big-button.blue-button a.wp-block-button__link {
    font-size: 20px;
  }
}
@media (max-width: 440px) {
  .page-id-34 .big-button.blue-button a.wp-block-button__link {
    font-size: 16px;
  }
}

.page-id-2 #page {
  display: none;
}
@media (max-width: 700px) {
  .page-id-2 h2 {
    font-size: 40px;
  }
}
.page-id-2 form {
  width: 100%;
}
.page-id-2 form .sib_signup_box_inside_1 {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -ms-flex-align: center;
      align-items: center;
}
.page-id-2 form .sib_signup_box_inside_1 label {
  display: none;
}
.page-id-2 form .sib_signup_box_inside_1 p {
  max-width: 90%;
  margin-right: 20px;
}
@media (max-width: 500px) {
  .page-id-2 form .sib_signup_box_inside_1 p {
    margin-right: 0px;
  }
}
@media (min-width: 1500px) {
  .page-id-2 form .sib_signup_box_inside_1 p input {
    font-size: 26px;
  }
}
@media (max-width: 500px) {
  .page-id-2 form .sib_signup_box_inside_1 p input {
    font-size: 20px;
    padding: 5px 10px 5px 10px;
  }
}
.page-id-2 form .sib_signup_box_inside_1 p input[type=submit] {
  background-color: black;
}
.page-id-2 form .sib_signup_box_inside_1 p input[type=submit]:hover {
  background-color: indianred;
}

.archive article header,
.blog article header {
  position: absolute;
  top: 50%;
}
.archive article header a,
.blog article header a {
  text-decoration: none;
}
@media (min-width: 1300px) {
  .archive article header h2,
  .blog article header h2 {
    font-size: 28px;
  }
}
@media (max-width: 499px) {
  .archive article header h2,
  .blog article header h2 {
    font-size: 16px;
  }
}
@media (max-width: 499px) {
  .archive article header .date-author time,
  .archive article header .date-author .author,
  .blog article header .date-author time,
  .blog article header .date-author .author {
    font-size: 15px;
  }
}

.comments-area hr {
  width: 50%;
  margin: 50px auto 50px auto;
  color: #0b2744;
}
.comments-area .comment-respond .comment-form .comment-form-subscriptions select {
  display: block;
  margin-top: 10px;
}

.page-id-44 .lightweight-accordion {
  margin-bottom: 4px;
}

.related_content {
  margin-top: 50px;
  margin-bottom: 100px;
}
.related_content h3 {
  font-size: 29px;
  margin-bottom: 75px;
}
@media (min-width: 1351px) {
  .related_content h3 {
    margin-bottom: 100px;
  }
}
.related_content .related-posts {
  margin-left: calc(-50vw + 50%);
  margin-right: calc(-50vw + 50%);
  max-width: 100vw;
  width: auto;
  list-style-type: none;
  background-color: #ffc15e;
  height: 250px;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: row;
      flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -ms-flex-pack: space-evenly;
      justify-content: space-evenly;
}
@media (min-width: 1351px) {
  .related_content .related-posts {
    height: 325px;
  }
}
@media (max-width: 767px) {
  .related_content .related-posts {
    height: 150px;
  }
}
.related_content .related-posts .related-post {
  margin-top: -25px;
  width: 300px;
  height: 300px;
}
@media (min-width: 1351px) {
  .related_content .related-posts .related-post {
    margin-top: -37px;
    width: 400px;
    height: 400px;
  }
}
@media (max-width: 767px) {
  .related_content .related-posts .related-post {
    margin-top: -25px;
    width: 200px;
    height: 200px;
  }
}
@media (max-width: 1023px) {
  .related_content .related-posts .related-post:not(:nth-child(-n+2)) {
    display: none;
  }
}
@media (max-width: 449px) {
  .related_content .related-posts .related-post:not(:first-child) {
    display: none;
  }
}
.related_content .related-posts .related-post a {
  position: relative;
}
.related_content .related-posts .related-post a img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.related_content .related-posts .related-post a span {
  position: absolute;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
  -ms-flex-align: center;
      align-items: center;
  font-weight: bold;
  padding: 10px;
  width: 100%;
  height: 120px;
  left: 0;
  bottom: 5px;
  color: #ffffff;
  background-color: rgba(11, 39, 69, 0.75);
}
.related_content .related-posts .related-post a span:hover {
  color: #ffc15e;
}
@media (min-width: 1351px) {
  .related_content .related-posts .related-post a span {
    height: 150px;
    font-size: 21px;
    padding: 20px;
  }
}
@media (max-width: 767px) {
  .related_content .related-posts .related-post a span {
    height: 85px;
    font-size: 15px;
    padding: 5px;
  }
}

/* # footer
---------------------------------------------------------------------------------------------------- */
.site-footer {
  margin-top: 60px;
}
.site-footer #footer-widgets .inside-footer-widgets {
  margin-left: 0;
}
@media (max-width: 768px) {
  .site-footer #footer-widgets .inside-footer-widgets {
    -ms-flex-direction: row;
        flex-direction: row;
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
  }
}
.site-footer #footer-widgets .inside-footer-widgets .inner-padding {
  padding-left: 0;
}
.site-footer #footer-widgets .inside-footer-widgets .footer-widget-1 {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-pack: center;
      justify-content: center;
  margin: 0;
}
.site-footer #footer-widgets .inside-footer-widgets .footer-widget-1 aside ul li {
  display: inline;
  padding-right: 10px;
  font-family: Quicksand;
  font-size: 16px;
  font-weight: bold;
  text-transform: uppercase;
}
@media (max-width: 1024px) {
  .site-footer #footer-widgets .inside-footer-widgets .footer-widget-1 aside ul li {
    font-size: 14px;
  }
}
@media (max-width: 768px) {
  .site-footer #footer-widgets .inside-footer-widgets .footer-widget-1 aside ul li {
    display: block;
    padding-right: 0;
  }
}
.site-footer #footer-widgets .inside-footer-widgets .footer-widget-1 aside ul li a {
  text-decoration: none;
}
.site-footer #footer-widgets .inside-footer-widgets .footer-widget-2 {
  z-index: 100;
  -ms-flex-positive: 0.6;
      flex-grow: 0.6;
  margin: 0;
}
@media (max-width: 500px) {
  .site-footer #footer-widgets .inside-footer-widgets .footer-widget-2 {
    -ms-flex-positive: 0.7;
        flex-grow: 0.7;
  }
}
.site-footer #footer-widgets .inside-footer-widgets .footer-widget-3 {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-pack: center;
      justify-content: center;
}
.site-footer #footer-widgets .inside-footer-widgets .footer-widget-3 ul li {
  margin: 0;
}
.site-footer #footer-widgets .inside-footer-widgets .footer-widget-3 ul li a svg {
  width: 40px;
  height: 40px;
}
@media (max-width: 500px) {
  .site-footer #footer-widgets .inside-footer-widgets .footer-widget-3 ul li a svg {
    width: 30px;
    height: 30px;
  }
}

@media (max-width: 500px) {
  .site-info {
    font-size: 14px;
  }
}
.site-info a {
  text-decoration: none;
}
.site-info span.heart {
  display: inline-block;
  vertical-align: text-top;
  margin: 0px 2px 2px 2px;
  background-repeat: no-repeat;
  width: 17px;
  height: 17px;
}
.site-info span.heart.lazyloaded {
  background: url("/app/themes/trava/assets/images/heart.svg") no-repeat center;
}

.generate-back-to-top {
  z-index: 1000;
}
/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlLmNzcyIsInN0eWxlLnNjc3MiLCJ1dGlsaXRpZXMvdmFyaWFibGVzL190eXBvZ3JhcGh5LnNjc3MiLCJiYXNlL2luZGV4LnNjc3MiLCJiYXNlL19sYXlvdXQuc2NzcyIsIi4uLy4uL25vZGVfbW9kdWxlcy9pbmNsdWRlLW1lZGlhL2Rpc3QvX2luY2x1ZGUtbWVkaWEuc2NzcyIsImJhc2UvZWxlbWVudHMvaW5kZXguc2NzcyIsImJhc2UvZWxlbWVudHMvX3RhYmxlcy5zY3NzIiwidXRpbGl0aWVzL3ZhcmlhYmxlcy9fY29sb3JzLnNjc3MiLCJiYXNlL2VsZW1lbnRzL19mb3Jtcy5zY3NzIiwiYmFzZS9lbGVtZW50cy9fZ2FsbGVyaWVzLnNjc3MiLCJjb21wb25lbnRzL2hlYWRlci9pbmRleC5zY3NzIiwiY29tcG9uZW50cy9oZWFkZXIvX3NpdGUtaGVhZGVyLnNjc3MiLCJjb21wb25lbnRzL2hlYWRlci9fbW9iaWxlLWhlYWRlci5zY3NzIiwiY29tcG9uZW50cy9oZWFkZXIvX2Z1bGxfd2lkdGhfaW1hZ2VfaGVhZGVyLnNjc3MiLCJjb21wb25lbnRzL2hlYWRlci9fY2F0ZWdvcnlfaGVhZGVyLnNjc3MiLCJjb21wb25lbnRzL2NvbnRlbnQvaW5kZXguc2NzcyIsImNvbXBvbmVudHMvY29udGVudC9fc2l0ZS1jb250ZW50LnNjc3MiLCJjb21wb25lbnRzL2NvbnRlbnQvX2hvbWUuc2NzcyIsImNvbXBvbmVudHMvY29udGVudC9fcm9vbXMuc2NzcyIsImNvbXBvbmVudHMvY29udGVudC9fcHJpY2luZy5zY3NzIiwiY29tcG9uZW50cy9jb250ZW50L19jb21pbmctc29vbi5zY3NzIiwiY29tcG9uZW50cy9jb250ZW50L19wb3N0LWFyY2hpdmUtbGF5b3V0LnNjc3MiLCJjb21wb25lbnRzL2NvbnRlbnQvX2NvbW1lbnRzLnNjc3MiLCJjb21wb25lbnRzL2NvbnRlbnQvX2ZhcS5zY3NzIiwiY29tcG9uZW50cy9jb250ZW50L19yZWxhdGVkX2NvbnRlbnQuc2NzcyIsImNvbXBvbmVudHMvZm9vdGVyL2luZGV4LnNjc3MiLCJjb21wb25lbnRzL2Zvb3Rlci9fc2l0ZS1mb290ZXIuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxnQkFBZ0I7QUNBaEI7Ozs7Ozs7OztDQUFBO0FDRUEscUJBQUE7QUFDQTtFQUNFLHVCQUFBO0VBQ0Esa0JBQUE7RUFDQSxnQkFBQTtFQUNBLDRPQUFBLEVBRTJGLHlCQUFBO0VBQzNGLGtCQUFBO0FGUUY7QUVOQSw0QkFBQTtBQUNBO0VBQ0Usd0JBQUE7RUFDQSxrQkFBQTtFQUNBLGdCQUFBO0VBQ0EsdUZBQUEsRUFBQSxxQkFBQTtFQUNBLCtrQkFBQSxFQUs0RyxlQUFBO0VBQzVHLGtCQUFBO0FGR0Y7QUVEQSw4QkFBQTtBQUNBO0VBQ0Usd0JBQUE7RUFDQSxrQkFBQTtFQUNBLGdCQUFBO0VBQ0EsbUZBQUEsRUFBQSxxQkFBQTtFQUNBLDZnQkFBQSxFQUt1RyxlQUFBO0VBQ3ZHLGtCQUFBO0FGRkY7QUdwQ0E7c0dBQUE7QUNDRTtFQUNFLGtCQUFBO0FKdUNKO0FLOGhCSTtFRHRrQkY7SUFJSSxlQUFBO0VKd0NKO0FBQ0Y7O0FNOUNBO3NHQUFBO0FDRUU7RUFDRSxtQkFBQTtFQUNBLGlCQUFBO0VBQ0EsY0NGRztBUm1EUDtBTy9DSTtFQUNFLHlCQ0xDO0VETUQsY0NERTtBUmtEUjtBTzVDRTtFQUNFLGtCQUFBO0FQOENKOztBUzNERTtFQUNFLGVBQUE7QVQ4REo7QVM1REk7RUFDRSxpQkFBQTtBVDhETjs7QVVwRUE7O0VBRUUseUJBQUE7QVZ1RUY7O0FXekVBO3NHQUFBO0FDQUE7RUFDRSxnQkFBQTtFQUNBLE1BQUE7RUFDQSxhQUFBO0FaOEVGO0FZdEVJO0VBQ0UsV0FBQTtFQUNBLGtCQUFBO0Fad0VOO0FLa2ZJO0VPNWpCQTtJQUtJLGtCQUFBO0VaeUVOO0FBQ0Y7QVlyRVE7RUFDRSxXQUFBO0VBQ0Esb0JBQUE7RUFBQSxhQUFBO0VBQ0Esb0JBQUE7TUFBQSwyQkFBQTtFQUNBLHFCQUFBO01BQUEsaUJBQUE7QVp1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QUNBLFlBQUE7RTNCMmNkO0FBQ0Y7O0FLZ0RJO0VzQmpmSjtJQUVJLGVBQUE7RTNCb2NGO0FBQ0Y7QTJCbGNFO0VBQ0UscUJBQUE7QTNCb2NKO0EyQmpjRTtFQUNFLHFCQUFBO0VBQ0Esd0JBQUE7RUFDQSx1QkFBQTtFQUNBLDRCQUFBO0VBQ0EsV0FBQTtFQUNBLFlBQUE7QTNCbWNKO0EyQmpjSTtFQUNFLDZFQUFBO0EzQm1jTjs7QTJCOWJBO0VBQ0UsYUFBQTtBM0JpY0YiLCJmaWxlIjoic3R5bGUuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiQGNoYXJzZXQgXCJVVEYtOFwiO1xuLyohXG4gVGhlbWUgTmFtZTogICBDaW7DqSBFdm9sw6huZVxuIFRoZW1lIFVSSTogICAgaHR0cHM6Ly9lc3BhY2UtdHJhdmEuY2hcbiBEZXNjcmlwdGlvbjogIEEgR2VuZXJhdGVwcmVzcyBjaGlsZCB0aGVtZSBmb3IgdGhlIENpbmV2b2xlbmUgV2Vic2l0ZVxuIEF1dGhvcjogICAgICAgQmVub2l0IEx1aXNpZXJcbiBBdXRob3IgVVJJOiAgIGh0dHBzOi8vbm92by1tZWRpYS5jaFxuIFRlbXBsYXRlOiAgICAgZ2VuZXJhdGVwcmVzc1xuIFZlcnNpb246ICAgICAgMS4wLjBcbiBUZXh0IERvbWFpbjogIENpbmV2b2xlbmVcbiovXG4vKiBJbmxhbmRlciBSZWd1bGFyICovXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IFwiSW5sYW5kZXJcIjtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogNDAwO1xuICBzcmM6IGxvY2FsKFwiSW5sYW5kZXIgUmVndWxhclwiKSwgbG9jYWwoXCJJbmxhbmRlci1SZWd1bGFyXCIpLCB1cmwoXCIvYXBwL3RoZW1lcy9hbHBpbmVzcy9hc3NldHMvZm9udHMvaW5sYW5kZXIvaW5sYW5kZXItcmVndWxhci53b2ZmXCIpIGZvcm1hdChcIndvZmZcIiksIHVybChcIi9hcHAvdGhlbWVzL2FscGluZXNzL2Fzc2V0cy9mb250cy9pbmxhbmRlci9pbmxhbmRlci1yZWd1bGFyLnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKTsgLyogU2FmYXJpLCBBbmRyb2lkLCBpT1MgKi9cbiAgZm9udC1kaXNwbGF5OiBzd2FwO1xufVxuLyogUXVpY2tzYW5kIGxhdGluIHJlZ3VsYXIgKi9cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogXCJRdWlja3NhbmRcIjtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogNDAwO1xuICBzcmM6IHVybChcIi9hcHAvdGhlbWVzL2FscGluZXNzL2Fzc2V0cy9mb250cy9xdWlja3NhbmQvcXVpY2tzYW5kLXYzMC1sYXRpbi1yZWd1bGFyLmVvdFwiKTsgLyogSUU5IENvbXBhdCBNb2RlcyAqL1xuICBzcmM6IGxvY2FsKFwiUXVpY2tzYW5kIFJlZ3VsYXJcIiksIGxvY2FsKFwiUXVpY2tzYW5kLVJlZ3VsYXJcIiksIHVybChcIi9hcHAvdGhlbWVzL2FscGluZXNzL2Fzc2V0cy9mb250cy9xdWlja3NhbmQvcXVpY2tzYW5kLXYzMC1sYXRpbi1yZWd1bGFyLmVvdD8jaWVmaXhcIikgZm9ybWF0KFwiZW1iZWRkZWQtb3BlbnR5cGVcIiksIHVybChcIi9hcHAvdGhlbWVzL2FscGluZXNzL2Fzc2V0cy9mb250cy9xdWlja3NhbmQvcXVpY2tzYW5kLXYzMC1sYXRpbi1yZWd1bGFyLndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpLCB1cmwoXCIvYXBwL3RoZW1lcy9hbHBpbmVzcy9hc3NldHMvZm9udHMvcXVpY2tzYW5kL3F1aWNrc2FuZC12MzAtbGF0aW4tcmVndWxhci53b2ZmXCIpIGZvcm1hdChcIndvZmZcIiksIHVybChcIi9hcHAvdGhlbWVzL2FscGluZXNzL2Fzc2V0cy9mb250cy9xdWlja3NhbmQvcXVpY2tzYW5kLXYzMC1sYXRpbi1yZWd1bGFyLnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKSwgdXJsKFwiL2FwcC90aGVtZXMvYWxwaW5lc3MvYXNzZXRzL2ZvbnRzL3F1aWNrc2FuZC9xdWlja3NhbmQtdjMwLWxhdGluLXJlZ3VsYXIuc3ZnI1F1aWNrc2FuZFwiKSBmb3JtYXQoXCJzdmdcIik7IC8qIExlZ2FjeSBpT1MgKi9cbiAgZm9udC1kaXNwbGF5OiBzd2FwO1xufVxuLyogb3Blbi1zYW5zLXJlZ3VsYXIgLSBsYXRpbiAqL1xuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBcIk9wZW4gU2Fuc1wiO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIHNyYzogdXJsKFwiL2FwcC90aGVtZXMvYWxwaW5lc3MvYXNzZXRzL2ZvbnRzL29wZW4tc2Fucy9vcGVuLXNhbnMtdjM0LWxhdGluLTMwMC5lb3RcIik7IC8qIElFOSBDb21wYXQgTW9kZXMgKi9cbiAgc3JjOiBsb2NhbChcIlwiKSwgdXJsKFwiL2FwcC90aGVtZXMvYWxwaW5lc3MvYXNzZXRzL2ZvbnRzL29wZW4tc2Fucy9vcGVuLXNhbnMtdjM0LWxhdGluLTMwMC5lb3Q/I2llZml4XCIpIGZvcm1hdChcImVtYmVkZGVkLW9wZW50eXBlXCIpLCB1cmwoXCIvYXBwL3RoZW1lcy9hbHBpbmVzcy9hc3NldHMvZm9udHMvb3Blbi1zYW5zL29wZW4tc2Fucy12MzQtbGF0aW4tMzAwLndvZmYyXCIpIGZvcm1hdChcIndvZmYyXCIpLCB1cmwoXCIvYXBwL3RoZW1lcy9hbHBpbmVzcy9hc3NldHMvZm9udHMvb3Blbi1zYW5zL29wZW4tc2Fucy12MzQtbGF0aW4tMzAwLndvZmZcIikgZm9ybWF0KFwid29mZlwiKSwgdXJsKFwiL2FwcC90aGVtZXMvYWxwaW5lc3MvYXNzZXRzL2ZvbnRzL29wZW4tc2Fucy9vcGVuLXNhbnMtdjM0LWxhdGluLTMwMC50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIiksIHVybChcIi9hcHAvdGhlbWVzL2FscGluZXNzL2Fzc2V0cy9mb250cy9vcGVuLXNhbnMvb3Blbi1zYW5zLXYzNC1sYXRpbi0zMDAuc3ZnI09wZW5TYW5zXCIpIGZvcm1hdChcInN2Z1wiKTsgLyogTGVnYWN5IGlPUyAqL1xuICBmb250LWRpc3BsYXk6IHN3YXA7XG59XG4vKiAjIGJhc2Vcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbmh0bWwgYm9keSB7XG4gIG92ZXJmbG93LXg6IGhpZGRlbjtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxNTAwcHgpIHtcbiAgaHRtbCBib2R5IHtcbiAgICBmb250LXNpemU6IDIwcHg7XG4gIH1cbn1cblxuLyogIyBFbGVtZW50c1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLndwLWJsb2NrLXRhYmxlIHRhYmxlIHtcbiAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGNvbG9yOiAjMGIyNzQ0O1xufVxuLndwLWJsb2NrLXRhYmxlIHRhYmxlIHRoZWFkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzBiMjc0NDtcbiAgY29sb3I6ICNmZmZmZmY7XG59XG4ud3AtYmxvY2stdGFibGUgZmlnY2FwdGlvbiB7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cblxuZm9ybSBpbnB1dCB7XG4gIGZvbnQtc2l6ZTogMjJweDtcbn1cbmZvcm0gaW5wdXRbdHlwZT1zdWJtaXRdIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbi5tZ2wtanVzdGlmaWVkLWNvbnRhaW5lcixcbi5tZ2wtbWFzb25yeS1jb250YWluZXIge1xuICBtYXJnaW46IDMwcHggMHB4IDMwcHggMHB4O1xufVxuXG4vKiAjIEhlYWRlcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5zaXRlLWhlYWRlciB7XG4gIHBvc2l0aW9uOiBzdGlja3k7XG4gIHRvcDogMDtcbiAgei1pbmRleDogMTAwMDtcbn1cbi5zaXRlLWhlYWRlciAuaW5zaWRlLWhlYWRlciAjc2l0ZS1uYXZpZ2F0aW9uIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1sZWZ0OiAyMzBweDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjUwcHgpIHtcbiAgLnNpdGUtaGVhZGVyIC5pbnNpZGUtaGVhZGVyICNzaXRlLW5hdmlnYXRpb24ge1xuICAgIG1hcmdpbi1sZWZ0OiAzMDBweDtcbiAgfVxufVxuLnNpdGUtaGVhZGVyIC5pbnNpZGUtaGVhZGVyICNzaXRlLW5hdmlnYXRpb24gI3ByaW1hcnktbWVudSAjbWVudS1tYWluLW1lbnUge1xuICB3aWR0aDogMTAwJTtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICBmbGV4LXdyYXA6IG5vd3JhcDtcbn1cbi5zaXRlLWhlYWRlciAuaW5zaWRlLWhlYWRlciAjc2l0ZS1uYXZpZ2F0aW9uICNwcmltYXJ5LW1lbnUgI21lbnUtbWFpbi1tZW51IGEge1xuICBwYWRkaW5nOiAwIDE1cHggMCAxNXB4O1xufVxuLnNpdGUtaGVhZGVyIC5pbnNpZGUtaGVhZGVyICNzaXRlLW5hdmlnYXRpb24gI3ByaW1hcnktbWVudSAjbWVudS1tYWluLW1lbnUgYSAuZHJvcGRvd24tbWVudS10b2dnbGUge1xuICBwYWRkaW5nLXJpZ2h0OiAwcHg7XG59XG5cbiNtb2JpbGUtaGVhZGVyIHtcbiAgei1pbmRleDogMTAwO1xufVxuI21vYmlsZS1oZWFkZXIgLmluc2lkZS1uYXZpZ2F0aW9uIHtcbiAgcGFkZGluZzogNXB4IDQwcHggNXB4IDQwcHg7XG59XG4jbW9iaWxlLWhlYWRlciAuaW5zaWRlLW5hdmlnYXRpb24gLm1vYmlsZS1oZWFkZXItbG9nbyBhIGltZyB7XG4gIHdpZHRoOiAxNTBweDtcbiAgaGVpZ2h0OiAxNTBweDtcbn1cbiNtb2JpbGUtaGVhZGVyIC5pbnNpZGUtbmF2aWdhdGlvbiAubWVudS10b2dnbGUge1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgcGFkZGluZzogMCAxMHB4IDAgMTBweDtcbn1cbiNtb2JpbGUtaGVhZGVyIC5pbnNpZGUtbmF2aWdhdGlvbiAjbW9iaWxlLW1lbnUgdWwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjOGRjOWI5O1xuICBwYWRkaW5nOiAyMHB4O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1heC13aWR0aDogMTAyM3B4KSB7XG4gIC5zaW5nbGUtcG9zdCAudGl0bGUtZXhjZXJwdCBoMSxcbiAgLmJsb2cgLnRpdGxlLWV4Y2VycHQgaDEge1xuICAgIGZvbnQtc2l6ZTogMi4ycmVtO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNTAwcHgpIGFuZCAobWF4LXdpZHRoOiA3MDBweCkge1xuICAuc2luZ2xlLXBvc3QgLnRpdGxlLWV4Y2VycHQgaDEsXG4gIC5ibG9nIC50aXRsZS1leGNlcnB0IGgxIHtcbiAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgfVxuICAuc2luZ2xlLXBvc3QgLnRpdGxlLWV4Y2VycHQgcCxcbiAgLmJsb2cgLnRpdGxlLWV4Y2VycHQgcCB7XG4gICAgZm9udC1zaXplOiAyMHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gIH1cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA0OTlweCkge1xuICAuc2luZ2xlLXBvc3QgLnRpdGxlLWV4Y2VycHQgaDEsXG4gIC5ibG9nIC50aXRsZS1leGNlcnB0IGgxIHtcbiAgICBmb250LXNpemU6IDEuM3JlbTtcbiAgfVxuICAuc2luZ2xlLXBvc3QgLnRpdGxlLWV4Y2VycHQgcCxcbiAgLmJsb2cgLnRpdGxlLWV4Y2VycHQgcCB7XG4gICAgZm9udC1zaXplOiAxN3B4O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjE7XG4gIH1cbn1cblxuLmFyY2hpdmUgLnBhZ2UtaGVhZGVyIHtcbiAgbWFyZ2luLWJvdHRvbTogNTBweDtcbn1cbi5hcmNoaXZlIC5wYWdlLWhlYWRlciBoMSB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLyogIyBDb250ZW50IEFyZWFcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5zaXRlLWNvbnRlbnQgLmNvbnRlbnQtYXJlYSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMjA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gIHBhZGRpbmc6IDIwcHg7XG59XG4uc2l0ZS1jb250ZW50IC5jb250ZW50LWFyZWEgYSB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4uaG9tZSBoMSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4uaG9tZSAuaG9tZS1zZWN0aW9uLTQgaHIge1xuICB3aWR0aDogODAlO1xuICBtYXJnaW46IDEwcHggYXV0byAxMHB4IGF1dG87XG59XG4uaG9tZSAuaG9tZS1zZWN0aW9uLTQgdWwge1xuICBtYXJnaW4tbGVmdDogMmVtO1xufVxuQG1lZGlhIChtYXgtd2lkdGg6IDkwMHB4KSB7XG4gIC5ob21lIC5ob21lLXNlY3Rpb24tNCB1bCB7XG4gICAgbWFyZ2luLWxlZnQ6IDFlbTtcbiAgfVxufVxuLmhvbWUgLmhvbWUtc2VjdGlvbi01IGhyIHtcbiAgd2lkdGg6IDgwJTtcbiAgbWFyZ2luOiAxMHB4IGF1dG8gMTBweCBhdXRvO1xufVxuLmhvbWUgLmhvbWUtc2VjdGlvbi01IHVsIHtcbiAgbWFyZ2luLWxlZnQ6IDJlbTtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA5MDBweCkge1xuICAuaG9tZSAuaG9tZS1zZWN0aW9uLTUgdWwge1xuICAgIG1hcmdpbi1sZWZ0OiAxZW07XG4gIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDE1MDBweCkge1xuICAucGFnZS1pZC0yNiBhcnRpY2xlIC5lbnRyeS1jb250ZW50IC5yb29tIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDEwJTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMCU7XG4gIH1cbn1cbi5wYWdlLWlkLTI2IGFydGljbGUgLmVudHJ5LWNvbnRlbnQgLmdiLWNvbnRhaW5lciB1bCB7XG4gIGNvbHVtbnM6IDI7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY5cHgpIGFuZCAobWF4LXdpZHRoOiAxMjAwcHgpIHtcbiAgLnBhZ2UtaWQtMjYgYXJ0aWNsZSAuZW50cnktY29udGVudCAuZ2ItY29udGFpbmVyIHVsIHtcbiAgICBjb2x1bW5zOiAxO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNDAxcHgpIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xuICAucGFnZS1pZC0yNiBhcnRpY2xlIC5lbnRyeS1jb250ZW50IC5nYi1jb250YWluZXIgdWwge1xuICAgIGNvbHVtbnM6IDI7XG4gIH1cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA0MDBweCkge1xuICAucGFnZS1pZC0yNiBhcnRpY2xlIC5lbnRyeS1jb250ZW50IC5nYi1jb250YWluZXIgdWwge1xuICAgIGNvbHVtbnM6IDE7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDQ0MHB4KSB7XG4gIC5wYWdlLWlkLTM0IC5ib3ggLmRpc2NvdW50IHtcbiAgICBoZWlnaHQ6IDE4MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTMwMHB4KSB7XG4gIC5wYWdlLWlkLTM0IC5ib3ggLmRpc2NvdW50IGltZyB7XG4gICAgaGVpZ2h0OiAzNDBweDtcbiAgfVxufVxuQG1lZGlhIChtYXgtd2lkdGg6IDQ0MHB4KSB7XG4gIC5wYWdlLWlkLTM0IC5ib3ggLmRpc2NvdW50IGltZyB7XG4gICAgaGVpZ2h0OiAyMjBweDtcbiAgfVxufVxuQG1lZGlhIChtYXgtd2lkdGg6IDQ0MHB4KSB7XG4gIC5wYWdlLWlkLTM0IC5ib3ggLmRpc2NvdW50IC50eHQtYm94IC5kaXNjb3VudC10eHQsXG4gIC5wYWdlLWlkLTM0IC5ib3ggLmRpc2NvdW50IC50eHQtYm94IC5kaXNjb3VudC1jaXRlIHtcbiAgICBmb250LXNpemU6IDEzcHg7XG4gIH1cbn1cbi5wYWdlLWlkLTM0IGhyIHtcbiAgY29sb3I6ICNjZjVjMzY7XG4gIGhlaWdodDogOXB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgI2NmNWMzNjtcbiAgYm9yZGVyLWJvdHRvbTogNHB4IHNvbGlkICNjZjVjMzY7XG4gIG1hcmdpbi1ib3R0b206IC01NXB4O1xufVxuLnBhZ2UtaWQtMzQgLmJpZy1idXR0b24uYmx1ZS1idXR0b24gYS53cC1ibG9jay1idXR0b25fX2xpbmsge1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXNpemU6IDI1cHg7XG59XG5AbWVkaWEgKG1heC13aWR0aDogNjAwcHgpIHtcbiAgLnBhZ2UtaWQtMzQgLmJpZy1idXR0b24uYmx1ZS1idXR0b24gYS53cC1ibG9jay1idXR0b25fX2xpbmsge1xuICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgfVxufVxuQG1lZGlhIChtYXgtd2lkdGg6IDQ0MHB4KSB7XG4gIC5wYWdlLWlkLTM0IC5iaWctYnV0dG9uLmJsdWUtYnV0dG9uIGEud3AtYmxvY2stYnV0dG9uX19saW5rIHtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gIH1cbn1cblxuLnBhZ2UtaWQtMiAjcGFnZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5AbWVkaWEgKG1heC13aWR0aDogNzAwcHgpIHtcbiAgLnBhZ2UtaWQtMiBoMiB7XG4gICAgZm9udC1zaXplOiA0MHB4O1xuICB9XG59XG4ucGFnZS1pZC0yIGZvcm0ge1xuICB3aWR0aDogMTAwJTtcbn1cbi5wYWdlLWlkLTIgZm9ybSAuc2liX3NpZ251cF9ib3hfaW5zaWRlXzEge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG4ucGFnZS1pZC0yIGZvcm0gLnNpYl9zaWdudXBfYm94X2luc2lkZV8xIGxhYmVsIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi5wYWdlLWlkLTIgZm9ybSAuc2liX3NpZ251cF9ib3hfaW5zaWRlXzEgcCB7XG4gIG1heC13aWR0aDogOTAlO1xuICBtYXJnaW4tcmlnaHQ6IDIwcHg7XG59XG5AbWVkaWEgKG1heC13aWR0aDogNTAwcHgpIHtcbiAgLnBhZ2UtaWQtMiBmb3JtIC5zaWJfc2lnbnVwX2JveF9pbnNpZGVfMSBwIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDE1MDBweCkge1xuICAucGFnZS1pZC0yIGZvcm0gLnNpYl9zaWdudXBfYm94X2luc2lkZV8xIHAgaW5wdXQge1xuICAgIGZvbnQtc2l6ZTogMjZweDtcbiAgfVxufVxuQG1lZGlhIChtYXgtd2lkdGg6IDUwMHB4KSB7XG4gIC5wYWdlLWlkLTIgZm9ybSAuc2liX3NpZ251cF9ib3hfaW5zaWRlXzEgcCBpbnB1dCB7XG4gICAgZm9udC1zaXplOiAyMHB4O1xuICAgIHBhZGRpbmc6IDVweCAxMHB4IDVweCAxMHB4O1xuICB9XG59XG4ucGFnZS1pZC0yIGZvcm0gLnNpYl9zaWdudXBfYm94X2luc2lkZV8xIHAgaW5wdXRbdHlwZT1zdWJtaXRdIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogYmxhY2s7XG59XG4ucGFnZS1pZC0yIGZvcm0gLnNpYl9zaWdudXBfYm94X2luc2lkZV8xIHAgaW5wdXRbdHlwZT1zdWJtaXRdOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogaW5kaWFucmVkO1xufVxuXG4uYXJjaGl2ZSBhcnRpY2xlIGhlYWRlcixcbi5ibG9nIGFydGljbGUgaGVhZGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbn1cbi5hcmNoaXZlIGFydGljbGUgaGVhZGVyIGEsXG4uYmxvZyBhcnRpY2xlIGhlYWRlciBhIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDEzMDBweCkge1xuICAuYXJjaGl2ZSBhcnRpY2xlIGhlYWRlciBoMixcbiAgLmJsb2cgYXJ0aWNsZSBoZWFkZXIgaDIge1xuICAgIGZvbnQtc2l6ZTogMjhweDtcbiAgfVxufVxuQG1lZGlhIChtYXgtd2lkdGg6IDQ5OXB4KSB7XG4gIC5hcmNoaXZlIGFydGljbGUgaGVhZGVyIGgyLFxuICAuYmxvZyBhcnRpY2xlIGhlYWRlciBoMiB7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICB9XG59XG5AbWVkaWEgKG1heC13aWR0aDogNDk5cHgpIHtcbiAgLmFyY2hpdmUgYXJ0aWNsZSBoZWFkZXIgLmRhdGUtYXV0aG9yIHRpbWUsXG4gIC5hcmNoaXZlIGFydGljbGUgaGVhZGVyIC5kYXRlLWF1dGhvciAuYXV0aG9yLFxuICAuYmxvZyBhcnRpY2xlIGhlYWRlciAuZGF0ZS1hdXRob3IgdGltZSxcbiAgLmJsb2cgYXJ0aWNsZSBoZWFkZXIgLmRhdGUtYXV0aG9yIC5hdXRob3Ige1xuICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgfVxufVxuXG4uY29tbWVudHMtYXJlYSBociB7XG4gIHdpZHRoOiA1MCU7XG4gIG1hcmdpbjogNTBweCBhdXRvIDUwcHggYXV0bztcbiAgY29sb3I6ICMwYjI3NDQ7XG59XG4uY29tbWVudHMtYXJlYSAuY29tbWVudC1yZXNwb25kIC5jb21tZW50LWZvcm0gLmNvbW1lbnQtZm9ybS1zdWJzY3JpcHRpb25zIHNlbGVjdCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tdG9wOiAxMHB4O1xufVxuXG4ucGFnZS1pZC00NCAubGlnaHR3ZWlnaHQtYWNjb3JkaW9uIHtcbiAgbWFyZ2luLWJvdHRvbTogNHB4O1xufVxuXG4ucmVsYXRlZF9jb250ZW50IHtcbiAgbWFyZ2luLXRvcDogNTBweDtcbiAgbWFyZ2luLWJvdHRvbTogMTAwcHg7XG59XG4ucmVsYXRlZF9jb250ZW50IGgzIHtcbiAgZm9udC1zaXplOiAyOXB4O1xuICBtYXJnaW4tYm90dG9tOiA3NXB4O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDEzNTFweCkge1xuICAucmVsYXRlZF9jb250ZW50IGgzIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxMDBweDtcbiAgfVxufVxuLnJlbGF0ZWRfY29udGVudCAucmVsYXRlZC1wb3N0cyB7XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKC01MHZ3ICsgNTAlKTtcbiAgbWFyZ2luLXJpZ2h0OiBjYWxjKC01MHZ3ICsgNTAlKTtcbiAgbWF4LXdpZHRoOiAxMDB2dztcbiAgd2lkdGg6IGF1dG87XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmYzE1ZTtcbiAgaGVpZ2h0OiAyNTBweDtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgZmxleC13cmFwOiB3cmFwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWV2ZW5seTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMzUxcHgpIHtcbiAgLnJlbGF0ZWRfY29udGVudCAucmVsYXRlZC1wb3N0cyB7XG4gICAgaGVpZ2h0OiAzMjVweDtcbiAgfVxufVxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5yZWxhdGVkX2NvbnRlbnQgLnJlbGF0ZWQtcG9zdHMge1xuICAgIGhlaWdodDogMTUwcHg7XG4gIH1cbn1cbi5yZWxhdGVkX2NvbnRlbnQgLnJlbGF0ZWQtcG9zdHMgLnJlbGF0ZWQtcG9zdCB7XG4gIG1hcmdpbi10b3A6IC0yNXB4O1xuICB3aWR0aDogMzAwcHg7XG4gIGhlaWdodDogMzAwcHg7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTM1MXB4KSB7XG4gIC5yZWxhdGVkX2NvbnRlbnQgLnJlbGF0ZWQtcG9zdHMgLnJlbGF0ZWQtcG9zdCB7XG4gICAgbWFyZ2luLXRvcDogLTM3cHg7XG4gICAgd2lkdGg6IDQwMHB4O1xuICAgIGhlaWdodDogNDAwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAucmVsYXRlZF9jb250ZW50IC5yZWxhdGVkLXBvc3RzIC5yZWxhdGVkLXBvc3Qge1xuICAgIG1hcmdpbi10b3A6IC0yNXB4O1xuICAgIHdpZHRoOiAyMDBweDtcbiAgICBoZWlnaHQ6IDIwMHB4O1xuICB9XG59XG5AbWVkaWEgKG1heC13aWR0aDogMTAyM3B4KSB7XG4gIC5yZWxhdGVkX2NvbnRlbnQgLnJlbGF0ZWQtcG9zdHMgLnJlbGF0ZWQtcG9zdDpub3QoOm50aC1jaGlsZCgtbisyKSkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA0NDlweCkge1xuICAucmVsYXRlZF9jb250ZW50IC5yZWxhdGVkLXBvc3RzIC5yZWxhdGVkLXBvc3Q6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cbi5yZWxhdGVkX2NvbnRlbnQgLnJlbGF0ZWQtcG9zdHMgLnJlbGF0ZWQtcG9zdCBhIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLnJlbGF0ZWRfY29udGVudCAucmVsYXRlZC1wb3N0cyAucmVsYXRlZC1wb3N0IGEgaW1nIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgb2JqZWN0LWZpdDogY292ZXI7XG59XG4ucmVsYXRlZF9jb250ZW50IC5yZWxhdGVkLXBvc3RzIC5yZWxhdGVkLXBvc3QgYSBzcGFuIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIHBhZGRpbmc6IDEwcHg7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEyMHB4O1xuICBsZWZ0OiAwO1xuICBib3R0b206IDVweDtcbiAgY29sb3I6ICNmZmZmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMTEsIDM5LCA2OSwgMC43NSk7XG59XG4ucmVsYXRlZF9jb250ZW50IC5yZWxhdGVkLXBvc3RzIC5yZWxhdGVkLXBvc3QgYSBzcGFuOmhvdmVyIHtcbiAgY29sb3I6ICNmZmMxNWU7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTM1MXB4KSB7XG4gIC5yZWxhdGVkX2NvbnRlbnQgLnJlbGF0ZWQtcG9zdHMgLnJlbGF0ZWQtcG9zdCBhIHNwYW4ge1xuICAgIGhlaWdodDogMTUwcHg7XG4gICAgZm9udC1zaXplOiAyMXB4O1xuICAgIHBhZGRpbmc6IDIwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAucmVsYXRlZF9jb250ZW50IC5yZWxhdGVkLXBvc3RzIC5yZWxhdGVkLXBvc3QgYSBzcGFuIHtcbiAgICBoZWlnaHQ6IDg1cHg7XG4gICAgZm9udC1zaXplOiAxNXB4O1xuICAgIHBhZGRpbmc6IDVweDtcbiAgfVxufVxuXG4vKiAjIGZvb3RlclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLnNpdGUtZm9vdGVyIHtcbiAgbWFyZ2luLXRvcDogNjBweDtcbn1cbi5zaXRlLWZvb3RlciAjZm9vdGVyLXdpZGdldHMgLmluc2lkZS1mb290ZXItd2lkZ2V0cyB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gIC5zaXRlLWZvb3RlciAjZm9vdGVyLXdpZGdldHMgLmluc2lkZS1mb290ZXItd2lkZ2V0cyB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgfVxufVxuLnNpdGUtZm9vdGVyICNmb290ZXItd2lkZ2V0cyAuaW5zaWRlLWZvb3Rlci13aWRnZXRzIC5pbm5lci1wYWRkaW5nIHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xufVxuLnNpdGUtZm9vdGVyICNmb290ZXItd2lkZ2V0cyAuaW5zaWRlLWZvb3Rlci13aWRnZXRzIC5mb290ZXItd2lkZ2V0LTEge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgbWFyZ2luOiAwO1xufVxuLnNpdGUtZm9vdGVyICNmb290ZXItd2lkZ2V0cyAuaW5zaWRlLWZvb3Rlci13aWRnZXRzIC5mb290ZXItd2lkZ2V0LTEgYXNpZGUgdWwgbGkge1xuICBkaXNwbGF5OiBpbmxpbmU7XG4gIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG4gIGZvbnQtZmFtaWx5OiBRdWlja3NhbmQ7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5AbWVkaWEgKG1heC13aWR0aDogMTAyNHB4KSB7XG4gIC5zaXRlLWZvb3RlciAjZm9vdGVyLXdpZGdldHMgLmluc2lkZS1mb290ZXItd2lkZ2V0cyAuZm9vdGVyLXdpZGdldC0xIGFzaWRlIHVsIGxpIHtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gIH1cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xuICAuc2l0ZS1mb290ZXIgI2Zvb3Rlci13aWRnZXRzIC5pbnNpZGUtZm9vdGVyLXdpZGdldHMgLmZvb3Rlci13aWRnZXQtMSBhc2lkZSB1bCBsaSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgfVxufVxuLnNpdGUtZm9vdGVyICNmb290ZXItd2lkZ2V0cyAuaW5zaWRlLWZvb3Rlci13aWRnZXRzIC5mb290ZXItd2lkZ2V0LTEgYXNpZGUgdWwgbGkgYSB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cbi5zaXRlLWZvb3RlciAjZm9vdGVyLXdpZGdldHMgLmluc2lkZS1mb290ZXItd2lkZ2V0cyAuZm9vdGVyLXdpZGdldC0yIHtcbiAgei1pbmRleDogMTAwO1xuICBmbGV4LWdyb3c6IDAuNjtcbiAgbWFyZ2luOiAwO1xufVxuQG1lZGlhIChtYXgtd2lkdGg6IDUwMHB4KSB7XG4gIC5zaXRlLWZvb3RlciAjZm9vdGVyLXdpZGdldHMgLmluc2lkZS1mb290ZXItd2lkZ2V0cyAuZm9vdGVyLXdpZGdldC0yIHtcbiAgICBmbGV4LWdyb3c6IDAuNztcbiAgfVxufVxuLnNpdGUtZm9vdGVyICNmb290ZXItd2lkZ2V0cyAuaW5zaWRlLWZvb3Rlci13aWRnZXRzIC5mb290ZXItd2lkZ2V0LTMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cbi5zaXRlLWZvb3RlciAjZm9vdGVyLXdpZGdldHMgLmluc2lkZS1mb290ZXItd2lkZ2V0cyAuZm9vdGVyLXdpZGdldC0zIHVsIGxpIHtcbiAgbWFyZ2luOiAwO1xufVxuLnNpdGUtZm9vdGVyICNmb290ZXItd2lkZ2V0cyAuaW5zaWRlLWZvb3Rlci13aWRnZXRzIC5mb290ZXItd2lkZ2V0LTMgdWwgbGkgYSBzdmcge1xuICB3aWR0aDogNDBweDtcbiAgaGVpZ2h0OiA0MHB4O1xufVxuQG1lZGlhIChtYXgtd2lkdGg6IDUwMHB4KSB7XG4gIC5zaXRlLWZvb3RlciAjZm9vdGVyLXdpZGdldHMgLmluc2lkZS1mb290ZXItd2lkZ2V0cyAuZm9vdGVyLXdpZGdldC0zIHVsIGxpIGEgc3ZnIHtcbiAgICB3aWR0aDogMzBweDtcbiAgICBoZWlnaHQ6IDMwcHg7XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDUwMHB4KSB7XG4gIC5zaXRlLWluZm8ge1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgfVxufVxuLnNpdGUtaW5mbyBhIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuLnNpdGUtaW5mbyBzcGFuLmhlYXJ0IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogdGV4dC10b3A7XG4gIG1hcmdpbjogMHB4IDJweCAycHggMnB4O1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICB3aWR0aDogMTdweDtcbiAgaGVpZ2h0OiAxN3B4O1xufVxuLnNpdGUtaW5mbyBzcGFuLmhlYXJ0Lmxhenlsb2FkZWQge1xuICBiYWNrZ3JvdW5kOiB1cmwoXCIvYXBwL3RoZW1lcy90cmF2YS9hc3NldHMvaW1hZ2VzL2hlYXJ0LnN2Z1wiKSBuby1yZXBlYXQgY2VudGVyO1xufVxuXG4uZ2VuZXJhdGUtYmFjay10by10b3Age1xuICB6LWluZGV4OiAxMDAwO1xufSIsIi8qIVxuIFRoZW1lIE5hbWU6ICAgQ2luw6kgRXZvbMOobmVcbiBUaGVtZSBVUkk6ICAgIGh0dHBzOi8vZXNwYWNlLXRyYXZhLmNoXG4gRGVzY3JpcHRpb246ICBBIEdlbmVyYXRlcHJlc3MgY2hpbGQgdGhlbWUgZm9yIHRoZSBDaW5ldm9sZW5lIFdlYnNpdGVcbiBBdXRob3I6ICAgICAgIEJlbm9pdCBMdWlzaWVyXG4gQXV0aG9yIFVSSTogICBodHRwczovL25vdm8tbWVkaWEuY2hcbiBUZW1wbGF0ZTogICAgIGdlbmVyYXRlcHJlc3NcbiBWZXJzaW9uOiAgICAgIDEuMC4wXG4gVGV4dCBEb21haW46ICBDaW5ldm9sZW5lXG4qL1xuQGltcG9ydCAnLi4vLi4vbm9kZV9tb2R1bGVzL3Nhc3MtcmVtL3JlbSc7XG5AaW1wb3J0ICcuLi8uLi9ub2RlX21vZHVsZXMvaW5jbHVkZS1tZWRpYS9kaXN0L2luY2x1ZGUtbWVkaWEnO1xuXG5AaW1wb3J0ICd1dGlsaXRpZXMvaW5kZXgnO1xuQGltcG9ydCAnYmFzZS9pbmRleCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2luZGV4JztcbiIsIi8vIENvbW1vbiBGb250c1xuXG4vKiBJbmxhbmRlciBSZWd1bGFyICovXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdJbmxhbmRlcic7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgc3JjOiBsb2NhbCgnSW5sYW5kZXIgUmVndWxhcicpLCBsb2NhbCgnSW5sYW5kZXItUmVndWxhcicpLFxuICB1cmwoJy9hcHAvdGhlbWVzL2FscGluZXNzL2Fzc2V0cy9mb250cy9pbmxhbmRlci9pbmxhbmRlci1yZWd1bGFyLndvZmYnKSBmb3JtYXQoJ3dvZmYnKSwgLyogTW9kZXJuIEJyb3dzZXJzICovXG4gIHVybCgnL2FwcC90aGVtZXMvYWxwaW5lc3MvYXNzZXRzL2ZvbnRzL2lubGFuZGVyL2lubGFuZGVyLXJlZ3VsYXIudHRmJykgZm9ybWF0KCd0cnVldHlwZScpOyAvKiBTYWZhcmksIEFuZHJvaWQsIGlPUyAqL1xuICBmb250LWRpc3BsYXk6IHN3YXA7XG59XG4vKiBRdWlja3NhbmQgbGF0aW4gcmVndWxhciAqL1xuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnUXVpY2tzYW5kJztcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogNDAwO1xuICBzcmM6IHVybCgnL2FwcC90aGVtZXMvYWxwaW5lc3MvYXNzZXRzL2ZvbnRzL3F1aWNrc2FuZC9xdWlja3NhbmQtdjMwLWxhdGluLXJlZ3VsYXIuZW90Jyk7IC8qIElFOSBDb21wYXQgTW9kZXMgKi9cbiAgc3JjOiBsb2NhbCgnUXVpY2tzYW5kIFJlZ3VsYXInKSwgbG9jYWwoJ1F1aWNrc2FuZC1SZWd1bGFyJyksXG4gIHVybCgnL2FwcC90aGVtZXMvYWxwaW5lc3MvYXNzZXRzL2ZvbnRzL3F1aWNrc2FuZC9xdWlja3NhbmQtdjMwLWxhdGluLXJlZ3VsYXIuZW90PyNpZWZpeCcpIGZvcm1hdCgnZW1iZWRkZWQtb3BlbnR5cGUnKSwgLyogSUU2LUlFOCAqL1xuICB1cmwoJy9hcHAvdGhlbWVzL2FscGluZXNzL2Fzc2V0cy9mb250cy9xdWlja3NhbmQvcXVpY2tzYW5kLXYzMC1sYXRpbi1yZWd1bGFyLndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLCAvKiBTdXBlciBNb2Rlcm4gQnJvd3NlcnMgKi9cbiAgdXJsKCcvYXBwL3RoZW1lcy9hbHBpbmVzcy9hc3NldHMvZm9udHMvcXVpY2tzYW5kL3F1aWNrc2FuZC12MzAtbGF0aW4tcmVndWxhci53b2ZmJykgZm9ybWF0KCd3b2ZmJyksIC8qIE1vZGVybiBCcm93c2VycyAqL1xuICB1cmwoJy9hcHAvdGhlbWVzL2FscGluZXNzL2Fzc2V0cy9mb250cy9xdWlja3NhbmQvcXVpY2tzYW5kLXYzMC1sYXRpbi1yZWd1bGFyLnR0ZicpIGZvcm1hdCgndHJ1ZXR5cGUnKSwgLyogU2FmYXJpLCBBbmRyb2lkLCBpT1MgKi9cbiAgdXJsKCcvYXBwL3RoZW1lcy9hbHBpbmVzcy9hc3NldHMvZm9udHMvcXVpY2tzYW5kL3F1aWNrc2FuZC12MzAtbGF0aW4tcmVndWxhci5zdmcjUXVpY2tzYW5kJykgZm9ybWF0KCdzdmcnKTsgLyogTGVnYWN5IGlPUyAqL1xuICBmb250LWRpc3BsYXk6IHN3YXA7XG59XG4vKiBvcGVuLXNhbnMtcmVndWxhciAtIGxhdGluICovXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdPcGVuIFNhbnMnO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIHNyYzogdXJsKCcvYXBwL3RoZW1lcy9hbHBpbmVzcy9hc3NldHMvZm9udHMvb3Blbi1zYW5zL29wZW4tc2Fucy12MzQtbGF0aW4tMzAwLmVvdCcpOyAvKiBJRTkgQ29tcGF0IE1vZGVzICovXG4gIHNyYzogbG9jYWwoJycpLFxuICB1cmwoJy9hcHAvdGhlbWVzL2FscGluZXNzL2Fzc2V0cy9mb250cy9vcGVuLXNhbnMvb3Blbi1zYW5zLXYzNC1sYXRpbi0zMDAuZW90PyNpZWZpeCcpIGZvcm1hdCgnZW1iZWRkZWQtb3BlbnR5cGUnKSwgLyogSUU2LUlFOCAqL1xuICB1cmwoJy9hcHAvdGhlbWVzL2FscGluZXNzL2Fzc2V0cy9mb250cy9vcGVuLXNhbnMvb3Blbi1zYW5zLXYzNC1sYXRpbi0zMDAud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksIC8qIFN1cGVyIE1vZGVybiBCcm93c2VycyAqL1xuICB1cmwoJy9hcHAvdGhlbWVzL2FscGluZXNzL2Fzc2V0cy9mb250cy9vcGVuLXNhbnMvb3Blbi1zYW5zLXYzNC1sYXRpbi0zMDAud29mZicpIGZvcm1hdCgnd29mZicpLCAvKiBNb2Rlcm4gQnJvd3NlcnMgKi9cbiAgdXJsKCcvYXBwL3RoZW1lcy9hbHBpbmVzcy9hc3NldHMvZm9udHMvb3Blbi1zYW5zL29wZW4tc2Fucy12MzQtbGF0aW4tMzAwLnR0ZicpIGZvcm1hdCgndHJ1ZXR5cGUnKSwgLyogU2FmYXJpLCBBbmRyb2lkLCBpT1MgKi9cbiAgdXJsKCcvYXBwL3RoZW1lcy9hbHBpbmVzcy9hc3NldHMvZm9udHMvb3Blbi1zYW5zL29wZW4tc2Fucy12MzQtbGF0aW4tMzAwLnN2ZyNPcGVuU2FucycpIGZvcm1hdCgnc3ZnJyk7IC8qIExlZ2FjeSBpT1MgKi9cbiAgZm9udC1kaXNwbGF5OiBzd2FwO1xufVxuXG4kZm9udC1mYW1pbHktLWlubGFuZGVyOiAnSW5sYW5kZXInLCBzZXJpZjtcbiRmb250LWZhbWlseS0tcXVpY2tzYW5kOiAnUXVpY2tzYW5kJywgSGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xuJGZvbnQtZmFtaWx5LS1vcGVuLXNhbnM6ICdPcGVuIFNhbnMnLCBzZXJpZjsiLCIvKiAjIGJhc2Vcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbkBpbXBvcnQgXCJsYXlvdXRcIjtcblxuQGltcG9ydCAnZWxlbWVudHMvaW5kZXgnOyIsImh0bWwge1xuICBib2R5IHtcbiAgICBvdmVyZmxvdy14OiBoaWRkZW47XG5cbiAgICBAaW5jbHVkZSBtZWRpYShcIj49MTUwMHB4XCIpe1xuICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgIH1cbiAgfVxufSIsIi8vICAgICBfICAgICAgICAgICAgXyAgICAgICAgICAgXyAgICAgICAgICAgICAgICAgICAgICAgICAgIF8gX1xuLy8gICAgKF8pICAgICAgICAgIHwgfCAgICAgICAgIHwgfCAgICAgICAgICAgICAgICAgICAgICAgICB8IChfKVxuLy8gICAgIF8gXyBfXyAgIF9fX3wgfF8gICBfICBfX3wgfCBfX18gICBfIF9fIF9fXyAgIF9fXyAgX198IHxfICBfXyBfXG4vLyAgICB8IHwgJ18gXFwgLyBfX3wgfCB8IHwgfC8gX2AgfC8gXyBcXCB8ICdfIGAgXyBcXCAvIF8gXFwvIF9gIHwgfC8gX2AgfFxuLy8gICAgfCB8IHwgfCB8IChfX3wgfCB8X3wgfCAoX3wgfCAgX18vIHwgfCB8IHwgfCB8ICBfXy8gKF98IHwgfCAoX3wgfFxuLy8gICAgfF98X3wgfF98XFxfX198X3xcXF9fLF98XFxfXyxffFxcX19ffCB8X3wgfF98IHxffFxcX19ffFxcX18sX3xffFxcX18sX3xcbi8vXG4vLyAgICAgIFNpbXBsZSwgZWxlZ2FudCBhbmQgbWFpbnRhaW5hYmxlIG1lZGlhIHF1ZXJpZXMgaW4gU2Fzc1xuLy8gICAgICAgICAgICAgICAgICAgICAgICB2Mi4wLjBcbi8vXG4vLyAgICAgICAgaHR0cHM6Ly9lZHVhcmRvYm91Y2FzLmdpdGh1Yi5pby9pbmNsdWRlLW1lZGlhXG4vL1xuLy8gICAgICAgICBBdXRob3JzOiBFZHVhcmRvIEJvdWNhcyAoQGVkdWFyZG9ib3VjYXMpXG4vLyAgICAgICAgICAgICAgICAgIEtpdHR5IEdpcmF1ZGVsIChAa2l0dHlnaXJhdWRlbClcbi8vXG4vLyAgICAgIFRoaXMgcHJvamVjdCBpcyBsaWNlbnNlZCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIE1JVCBsaWNlbnNlXG5AY2hhcnNldCBcIlVURi04XCI7XG5cbi8vLy9cbi8vLyBpbmNsdWRlLW1lZGlhIGxpYnJhcnkgcHVibGljIGNvbmZpZ3VyYXRpb25cbi8vLyBAYXV0aG9yIEVkdWFyZG8gQm91Y2FzXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLy9cbkB1c2UgJ3Nhc3M6bWF0aCc7XG5AdXNlICdzYXNzOm1hcCc7XG5AdXNlICdzYXNzOmxpc3QnO1xuQHVzZSAnc2FzczpzdHJpbmcnO1xuQHVzZSAnc2FzczptZXRhJztcblxuLy8vXG4vLy8gQ3JlYXRlcyBhIGxpc3Qgb2YgZ2xvYmFsIGJyZWFrcG9pbnRzXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gQ3JlYXRlcyBhIHNpbmdsZSBicmVha3BvaW50IHdpdGggdGhlIGxhYmVsIGBwaG9uZWBcbi8vLyAgJGJyZWFrcG9pbnRzOiAoJ3Bob25lJzogMzIwcHgpO1xuLy8vXG4kYnJlYWtwb2ludHM6IChcbiAgJ3Bob25lJzogMzIwcHgsXG4gICd0YWJsZXQnOiA3NjhweCxcbiAgJ2Rlc2t0b3AnOiAxMDI0cHgsXG4pICFkZWZhdWx0O1xuXG4vLy9cbi8vLyBDcmVhdGVzIGEgbGlzdCBvZiBzdGF0aWMgZXhwcmVzc2lvbnMgb3IgbWVkaWEgdHlwZXNcbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBDcmVhdGVzIGEgc2luZ2xlIG1lZGlhIHR5cGUgKHNjcmVlbilcbi8vLyAgJG1lZGlhLWV4cHJlc3Npb25zOiAoJ3NjcmVlbic6ICdzY3JlZW4nKTtcbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBDcmVhdGVzIGEgc3RhdGljIGV4cHJlc3Npb24gd2l0aCBsb2dpY2FsIGRpc2p1bmN0aW9uIChPUiBvcGVyYXRvcilcbi8vLyAgJG1lZGlhLWV4cHJlc3Npb25zOiAoXG4vLy8gICAgJ3JldGluYTJ4JzogJygtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDIpLCAobWluLXJlc29sdXRpb246IDE5MmRwaSknXG4vLy8gICk7XG4vLy9cbiRtZWRpYS1leHByZXNzaW9uczogKFxuICAnc2NyZWVuJzogJ3NjcmVlbicsXG4gICdwcmludCc6ICdwcmludCcsXG4gICdoYW5kaGVsZCc6ICdoYW5kaGVsZCcsXG4gICdsYW5kc2NhcGUnOiAnKG9yaWVudGF0aW9uOiBsYW5kc2NhcGUpJyxcbiAgJ3BvcnRyYWl0JzogJyhvcmllbnRhdGlvbjogcG9ydHJhaXQpJyxcbiAgJ3JldGluYTJ4JzpcbiAgICAnKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMiksIChtaW4tcmVzb2x1dGlvbjogMTkyZHBpKSwgKG1pbi1yZXNvbHV0aW9uOiAyZHBweCknLFxuICAncmV0aW5hM3gnOlxuICAgICcoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAzKSwgKG1pbi1yZXNvbHV0aW9uOiAzNTBkcGkpLCAobWluLXJlc29sdXRpb246IDNkcHB4KScsXG4pICFkZWZhdWx0O1xuXG4vLy9cbi8vLyBEZWZpbmVzIGEgbnVtYmVyIHRvIGJlIGFkZGVkIG9yIHN1YnRyYWN0ZWQgZnJvbSBlYWNoIHVuaXQgd2hlbiBkZWNsYXJpbmcgYnJlYWtwb2ludHMgd2l0aCBleGNsdXNpdmUgaW50ZXJ2YWxzXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gSW50ZXJ2YWwgZm9yIHBpeGVscyBpcyBkZWZpbmVkIGFzIGAxYCBieSBkZWZhdWx0XG4vLy8gIEBpbmNsdWRlIG1lZGlhKCc+MTI4cHgnKSB7fVxuLy8vXG4vLy8gIC8qIEdlbmVyYXRlczogKi9cbi8vLyAgQG1lZGlhIChtaW4td2lkdGg6IDEyOXB4KSB7fVxuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIEludGVydmFsIGZvciBlbXMgaXMgZGVmaW5lZCBhcyBgMC4wMWAgYnkgZGVmYXVsdFxuLy8vICBAaW5jbHVkZSBtZWRpYSgnPjIwZW0nKSB7fVxuLy8vXG4vLy8gIC8qIEdlbmVyYXRlczogKi9cbi8vLyAgQG1lZGlhIChtaW4td2lkdGg6IDIwLjAxZW0pIHt9XG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gSW50ZXJ2YWwgZm9yIHJlbXMgaXMgZGVmaW5lZCBhcyBgMC4xYCBieSBkZWZhdWx0LCB0byBiZSB1c2VkIHdpdGggYGZvbnQtc2l6ZTogNjIuNSU7YFxuLy8vICBAaW5jbHVkZSBtZWRpYSgnPjIuMHJlbScpIHt9XG4vLy9cbi8vLyAgLyogR2VuZXJhdGVzOiAqL1xuLy8vICBAbWVkaWEgKG1pbi13aWR0aDogMi4xcmVtKSB7fVxuLy8vXG4kdW5pdC1pbnRlcnZhbHM6IChcbiAgJ3B4JzogMSxcbiAgJ2VtJzogMC4wMSxcbiAgJ3JlbSc6IDAuMSxcbiAgJyc6IDAsXG4pICFkZWZhdWx0O1xuXG4vLy9cbi8vLyBEZWZpbmVzIHdoZXRoZXIgc3VwcG9ydCBmb3IgbWVkaWEgcXVlcmllcyBpcyBhdmFpbGFibGUsIHVzZWZ1bCBmb3IgY3JlYXRpbmcgc2VwYXJhdGUgc3R5bGVzaGVldHNcbi8vLyBmb3IgYnJvd3NlcnMgdGhhdCBkb24ndCBzdXBwb3J0IG1lZGlhIHF1ZXJpZXMuXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gRGlzYWJsZXMgc3VwcG9ydCBmb3IgbWVkaWEgcXVlcmllc1xuLy8vICAkaW0tbWVkaWEtc3VwcG9ydDogZmFsc2U7XG4vLy8gIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcbi8vLyAgICAuZm9vIHtcbi8vLyAgICAgIGNvbG9yOiB0b21hdG87XG4vLy8gICAgfVxuLy8vICB9XG4vLy9cbi8vLyAgLyogR2VuZXJhdGVzOiAqL1xuLy8vICAuZm9vIHtcbi8vLyAgICBjb2xvcjogdG9tYXRvO1xuLy8vICB9XG4vLy9cbiRpbS1tZWRpYS1zdXBwb3J0OiB0cnVlICFkZWZhdWx0O1xuXG4vLy9cbi8vLyBTZWxlY3RzIHdoaWNoIGJyZWFrcG9pbnQgdG8gZW11bGF0ZSB3aGVuIHN1cHBvcnQgZm9yIG1lZGlhIHF1ZXJpZXMgaXMgZGlzYWJsZWQuIE1lZGlhIHF1ZXJpZXMgdGhhdCBzdGFydCBhdCBvclxuLy8vIGludGVyY2VwdCB0aGUgYnJlYWtwb2ludCB3aWxsIGJlIGRpc3BsYXllZCwgYW55IG90aGVycyB3aWxsIGJlIGlnbm9yZWQuXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gVGhpcyBtZWRpYSBxdWVyeSB3aWxsIHNob3cgYmVjYXVzZSBpdCBpbnRlcmNlcHRzIHRoZSBzdGF0aWMgYnJlYWtwb2ludFxuLy8vICAkaW0tbWVkaWEtc3VwcG9ydDogZmFsc2U7XG4vLy8gICRpbS1uby1tZWRpYS1icmVha3BvaW50OiAnZGVza3RvcCc7XG4vLy8gIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcpIHtcbi8vLyAgICAuZm9vIHtcbi8vLyAgICAgIGNvbG9yOiB0b21hdG87XG4vLy8gICAgfVxuLy8vICB9XG4vLy9cbi8vLyAgLyogR2VuZXJhdGVzOiAqL1xuLy8vICAuZm9vIHtcbi8vLyAgICBjb2xvcjogdG9tYXRvO1xuLy8vICB9XG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gVGhpcyBtZWRpYSBxdWVyeSB3aWxsIE5PVCBzaG93IGJlY2F1c2UgaXQgZG9lcyBub3QgaW50ZXJjZXB0IHRoZSBkZXNrdG9wIGJyZWFrcG9pbnRcbi8vLyAgJGltLW1lZGlhLXN1cHBvcnQ6IGZhbHNlO1xuLy8vICAkaW0tbm8tbWVkaWEtYnJlYWtwb2ludDogJ3RhYmxldCc7XG4vLy8gIEBpbmNsdWRlIG1lZGlhKCc+PWRlc2t0b3AnKSB7XG4vLy8gICAgLmZvbyB7XG4vLy8gICAgICBjb2xvcjogdG9tYXRvO1xuLy8vICAgIH1cbi8vLyAgfVxuLy8vXG4vLy8gIC8qIE5vIG91dHB1dCAqL1xuLy8vXG4kaW0tbm8tbWVkaWEtYnJlYWtwb2ludDogJ2Rlc2t0b3AnICFkZWZhdWx0O1xuXG4vLy9cbi8vLyBTZWxlY3RzIHdoaWNoIG1lZGlhIGV4cHJlc3Npb25zIGFyZSBhbGxvd2VkIGluIGFuIGV4cHJlc3Npb24gZm9yIGl0IHRvIGJlIHVzZWQgd2hlbiBtZWRpYSBxdWVyaWVzXG4vLy8gYXJlIG5vdCBzdXBwb3J0ZWQuXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gVGhpcyBtZWRpYSBxdWVyeSB3aWxsIHNob3cgYmVjYXVzZSBpdCBpbnRlcmNlcHRzIHRoZSBzdGF0aWMgYnJlYWtwb2ludCBhbmQgY29udGFpbnMgb25seSBhY2NlcHRlZCBtZWRpYSBleHByZXNzaW9uc1xuLy8vICAkaW0tbWVkaWEtc3VwcG9ydDogZmFsc2U7XG4vLy8gICRpbS1uby1tZWRpYS1icmVha3BvaW50OiAnZGVza3RvcCc7XG4vLy8gICRpbS1uby1tZWRpYS1leHByZXNzaW9uczogKCdzY3JlZW4nKTtcbi8vLyAgQGluY2x1ZGUgbWVkaWEoJz49dGFibGV0JywgJ3NjcmVlbicpIHtcbi8vLyAgICAuZm9vIHtcbi8vLyAgICAgIGNvbG9yOiB0b21hdG87XG4vLy8gICAgfVxuLy8vICB9XG4vLy9cbi8vLyAgIC8qIEdlbmVyYXRlczogKi9cbi8vLyAgIC5mb28ge1xuLy8vICAgICBjb2xvcjogdG9tYXRvO1xuLy8vICAgfVxuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFRoaXMgbWVkaWEgcXVlcnkgd2lsbCBOT1Qgc2hvdyBiZWNhdXNlIGl0IGludGVyY2VwdHMgdGhlIHN0YXRpYyBicmVha3BvaW50IGJ1dCBjb250YWlucyBhIG1lZGlhIGV4cHJlc3Npb24gdGhhdCBpcyBub3QgYWNjZXB0ZWRcbi8vLyAgJGltLW1lZGlhLXN1cHBvcnQ6IGZhbHNlO1xuLy8vICAkaW0tbm8tbWVkaWEtYnJlYWtwb2ludDogJ2Rlc2t0b3AnO1xuLy8vICAkaW0tbm8tbWVkaWEtZXhwcmVzc2lvbnM6ICgnc2NyZWVuJyk7XG4vLy8gIEBpbmNsdWRlIG1lZGlhKCc+PXRhYmxldCcsICdyZXRpbmEyeCcpIHtcbi8vLyAgICAuZm9vIHtcbi8vLyAgICAgIGNvbG9yOiB0b21hdG87XG4vLy8gICAgfVxuLy8vICB9XG4vLy9cbi8vLyAgLyogTm8gb3V0cHV0ICovXG4vLy9cbiRpbS1uby1tZWRpYS1leHByZXNzaW9uczogKCdzY3JlZW4nLCAncG9ydHJhaXQnLCAnbGFuZHNjYXBlJykgIWRlZmF1bHQ7XG5cbi8vLy9cbi8vLyBDcm9zcy1lbmdpbmUgbG9nZ2luZyBlbmdpbmVcbi8vLyBAYXV0aG9yIEtpdHR5IEdpcmF1ZGVsXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy8vXG5cbi8vL1xuLy8vIExvZyBhIG1lc3NhZ2UgZWl0aGVyIHdpdGggYEBlcnJvcmAgaWYgc3VwcG9ydGVkXG4vLy8gZWxzZSB3aXRoIGBAd2FybmAsIHVzaW5nIGBmZWF0dXJlLWV4aXN0cygnYXQtZXJyb3InKWBcbi8vLyB0byBkZXRlY3Qgc3VwcG9ydC5cbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAkbWVzc2FnZSAtIE1lc3NhZ2UgdG8gbG9nXG4vLy9cbkBmdW5jdGlvbiBpbS1sb2coJG1lc3NhZ2UpIHtcbiAgQGlmIG1ldGEuZmVhdHVyZS1leGlzdHMoJ2F0LWVycm9yJykge1xuICAgIEBlcnJvciAkbWVzc2FnZTtcbiAgfSBAZWxzZSB7XG4gICAgQHdhcm4gJG1lc3NhZ2U7XG4gICAgJF86IG5vb3AoKTtcbiAgfVxuXG4gIEByZXR1cm4gJG1lc3NhZ2U7XG59XG5cbi8vL1xuLy8vIFdyYXBwZXIgbWl4aW4gZm9yIHRoZSBsb2cgZnVuY3Rpb24gc28gaXQgY2FuIGJlIHVzZWQgd2l0aCBhIG1vcmUgZnJpZW5kbHlcbi8vLyBBUEkgdGhhbiBgQGlmIGltLWxvZygnLi4nKSB7fWAgb3IgYCRfOiBpbS1sb2coJy4uJylgLiBCYXNpY2FsbHksIHVzZSB0aGUgZnVuY3Rpb25cbi8vLyB3aXRoaW4gZnVuY3Rpb25zIGJlY2F1c2UgaXQgaXMgbm90IHBvc3NpYmxlIHRvIGluY2x1ZGUgYSBtaXhpbiBpbiBhIGZ1bmN0aW9uXG4vLy8gYW5kIHVzZSB0aGUgbWl4aW4gZXZlcnl3aGVyZSBlbHNlIGJlY2F1c2UgaXQncyBtdWNoIG1vcmUgZWxlZ2FudC5cbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAkbWVzc2FnZSAtIE1lc3NhZ2UgdG8gbG9nXG4vLy9cbkBtaXhpbiBsb2coJG1lc3NhZ2UpIHtcbiAgQGlmIGltLWxvZygkbWVzc2FnZSkge1xuICB9XG59XG5cbi8vL1xuLy8vIEZ1bmN0aW9uIHdpdGggbm8gYEByZXR1cm5gIGNhbGxlZCBuZXh0IHRvIGBAd2FybmAgaW4gU2FzcyAzLjNcbi8vLyB0byB0cmlnZ2VyIGEgY29tcGlsaW5nIGVycm9yIGFuZCBzdG9wIHRoZSBwcm9jZXNzLlxuLy8vXG5AZnVuY3Rpb24gbm9vcCgpIHtcbn1cblxuLy8vXG4vLy8gRGV0ZXJtaW5lcyB3aGV0aGVyIGEgbGlzdCBvZiBjb25kaXRpb25zIGlzIGludGVyY2VwdGVkIGJ5IHRoZSBzdGF0aWMgYnJlYWtwb2ludC5cbi8vL1xuLy8vIEBwYXJhbSB7QXJnbGlzdH0gICAkY29uZGl0aW9ucyAgLSBNZWRpYSBxdWVyeSBjb25kaXRpb25zXG4vLy9cbi8vLyBAcmV0dXJuIHtCb29sZWFufSAtIFJldHVybnMgdHJ1ZSBpZiB0aGUgY29uZGl0aW9ucyBhcmUgaW50ZXJjZXB0ZWQgYnkgdGhlIHN0YXRpYyBicmVha3BvaW50XG4vLy9cbkBmdW5jdGlvbiBpbS1pbnRlcmNlcHRzLXN0YXRpYy1icmVha3BvaW50KCRjb25kaXRpb25zLi4uKSB7XG4gICRuby1tZWRpYS1icmVha3BvaW50LXZhbHVlOiBtYXAuZ2V0KCRicmVha3BvaW50cywgJGltLW5vLW1lZGlhLWJyZWFrcG9pbnQpO1xuXG4gIEBpZiBub3QgJG5vLW1lZGlhLWJyZWFrcG9pbnQtdmFsdWUge1xuICAgIEBpZiBpbS1sb2coJ2AjeyRpbS1uby1tZWRpYS1icmVha3BvaW50fWAgaXMgbm90IGEgdmFsaWQgYnJlYWtwb2ludC4nKSB7XG4gICAgfVxuICB9XG5cbiAgQGVhY2ggJGNvbmRpdGlvbiBpbiAkY29uZGl0aW9ucyB7XG4gICAgQGlmIG5vdCBtYXAuaGFzLWtleSgkbWVkaWEtZXhwcmVzc2lvbnMsICRjb25kaXRpb24pIHtcbiAgICAgICRvcGVyYXRvcjogZ2V0LWV4cHJlc3Npb24tb3BlcmF0b3IoJGNvbmRpdGlvbik7XG4gICAgICAkcHJlZml4OiBnZXQtZXhwcmVzc2lvbi1wcmVmaXgoJG9wZXJhdG9yKTtcbiAgICAgICR2YWx1ZTogZ2V0LWV4cHJlc3Npb24tdmFsdWUoJGNvbmRpdGlvbiwgJG9wZXJhdG9yKTtcblxuICAgICAgQGlmICgkcHJlZml4ID09ICdtYXgnIGFuZCAkdmFsdWUgPD0gJG5vLW1lZGlhLWJyZWFrcG9pbnQtdmFsdWUpIG9yXG4gICAgICAgICgkcHJlZml4ID09ICdtaW4nIGFuZCAkdmFsdWUgPiAkbm8tbWVkaWEtYnJlYWtwb2ludC12YWx1ZSlcbiAgICAgIHtcbiAgICAgICAgQHJldHVybiBmYWxzZTtcbiAgICAgIH1cbiAgICB9IEBlbHNlIGlmIG5vdCBsaXN0LmluZGV4KCRpbS1uby1tZWRpYS1leHByZXNzaW9ucywgJGNvbmRpdGlvbikge1xuICAgICAgQHJldHVybiBmYWxzZTtcbiAgICB9XG4gIH1cblxuICBAcmV0dXJuIHRydWU7XG59XG5cbi8vLy9cbi8vLyBQYXJzaW5nIGVuZ2luZVxuLy8vIEBhdXRob3IgS2l0dHkgR2lyYXVkZWxcbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vLy9cblxuLy8vXG4vLy8gR2V0IG9wZXJhdG9yIG9mIGFuIGV4cHJlc3Npb25cbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAkZXhwcmVzc2lvbiAtIEV4cHJlc3Npb24gdG8gZXh0cmFjdCBvcGVyYXRvciBmcm9tXG4vLy9cbi8vLyBAcmV0dXJuIHtTdHJpbmd9IC0gQW55IG9mIGA+PWAsIGA+YCwgYDw9YCwgYDxgLCBg4omlYCwgYOKJpGBcbi8vL1xuQGZ1bmN0aW9uIGdldC1leHByZXNzaW9uLW9wZXJhdG9yKCRleHByZXNzaW9uKSB7XG4gIEBlYWNoICRvcGVyYXRvciBpbiAoJz49JywgJz4nLCAnPD0nLCAnPCcsICfiiaUnLCAn4omkJykge1xuICAgIEBpZiBzdHJpbmcuaW5kZXgoJGV4cHJlc3Npb24sICRvcGVyYXRvcikge1xuICAgICAgQHJldHVybiAkb3BlcmF0b3I7XG4gICAgfVxuICB9XG5cbiAgLy8gSXQgaXMgbm90IHBvc3NpYmxlIHRvIGluY2x1ZGUgYSBtaXhpbiBpbnNpZGUgYSBmdW5jdGlvbiwgc28gd2UgaGF2ZSB0b1xuICAvLyByZWx5IG9uIHRoZSBgaW0tbG9nKC4uKWAgZnVuY3Rpb24gcmF0aGVyIHRoYW4gdGhlIGBsb2coLi4pYCBtaXhpbi4gQmVjYXVzZVxuICAvLyBmdW5jdGlvbnMgY2Fubm90IGJlIGNhbGxlZCBhbnl3aGVyZSBpbiBTYXNzLCB3ZSBuZWVkIHRvIGhhY2sgdGhlIGNhbGwgaW5cbiAgLy8gYSBkdW1teSB2YXJpYWJsZSwgc3VjaCBhcyBgJF9gLiBJZiBhbnlib2R5IGV2ZXIgcmFpc2UgYSBzY29waW5nIGlzc3VlIHdpdGhcbiAgLy8gU2FzcyAzLjMsIGNoYW5nZSB0aGlzIGxpbmUgaW4gYEBpZiBpbS1sb2coLi4pIHt9YCBpbnN0ZWFkLlxuICAkXzogaW0tbG9nKCdObyBvcGVyYXRvciBmb3VuZCBpbiBgI3skZXhwcmVzc2lvbn1gLicpO1xufVxuXG4vLy9cbi8vLyBHZXQgZGltZW5zaW9uIG9mIGFuIGV4cHJlc3Npb24sIGJhc2VkIG9uIGEgZm91bmQgb3BlcmF0b3Jcbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAkZXhwcmVzc2lvbiAtIEV4cHJlc3Npb24gdG8gZXh0cmFjdCBkaW1lbnNpb24gZnJvbVxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkb3BlcmF0b3IgLSBPcGVyYXRvciBmcm9tIGAkZXhwcmVzc2lvbmBcbi8vL1xuLy8vIEByZXR1cm4ge1N0cmluZ30gLSBgd2lkdGhgIG9yIGBoZWlnaHRgIChvciBwb3RlbnRpYWxseSBhbnl0aGluZyBlbHNlKVxuLy8vXG5AZnVuY3Rpb24gZ2V0LWV4cHJlc3Npb24tZGltZW5zaW9uKCRleHByZXNzaW9uLCAkb3BlcmF0b3IpIHtcbiAgJG9wZXJhdG9yLWluZGV4OiBzdHJpbmcuaW5kZXgoJGV4cHJlc3Npb24sICRvcGVyYXRvcik7XG4gICRwYXJzZWQtZGltZW5zaW9uOiBzdHJpbmcuc2xpY2UoJGV4cHJlc3Npb24sIDAsICRvcGVyYXRvci1pbmRleCAtIDEpO1xuICAkZGltZW5zaW9uOiAnd2lkdGgnO1xuXG4gIEBpZiBzdHJpbmcubGVuZ3RoKCRwYXJzZWQtZGltZW5zaW9uKSA+IDAge1xuICAgICRkaW1lbnNpb246ICRwYXJzZWQtZGltZW5zaW9uO1xuICB9XG5cbiAgQHJldHVybiAkZGltZW5zaW9uO1xufVxuXG4vLy9cbi8vLyBHZXQgZGltZW5zaW9uIHByZWZpeCBiYXNlZCBvbiBhbiBvcGVyYXRvclxuLy8vXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRvcGVyYXRvciAtIE9wZXJhdG9yXG4vLy9cbi8vLyBAcmV0dXJuIHtTdHJpbmd9IC0gYG1pbmAgb3IgYG1heGBcbi8vL1xuQGZ1bmN0aW9uIGdldC1leHByZXNzaW9uLXByZWZpeCgkb3BlcmF0b3IpIHtcbiAgQHJldHVybiBpZihsaXN0LmluZGV4KCgnPCcsICc8PScsICfiiaQnKSwgJG9wZXJhdG9yKSwgJ21heCcsICdtaW4nKTtcbn1cblxuLy8vXG4vLy8gR2V0IHZhbHVlIG9mIGFuIGV4cHJlc3Npb24sIGJhc2VkIG9uIGEgZm91bmQgb3BlcmF0b3Jcbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAkZXhwcmVzc2lvbiAtIEV4cHJlc3Npb24gdG8gZXh0cmFjdCB2YWx1ZSBmcm9tXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRvcGVyYXRvciAtIE9wZXJhdG9yIGZyb20gYCRleHByZXNzaW9uYFxuLy8vXG4vLy8gQHJldHVybiB7TnVtYmVyfSAtIEEgbnVtZXJpYyB2YWx1ZVxuLy8vXG5AZnVuY3Rpb24gZ2V0LWV4cHJlc3Npb24tdmFsdWUoJGV4cHJlc3Npb24sICRvcGVyYXRvcikge1xuICAkb3BlcmF0b3ItaW5kZXg6IHN0cmluZy5pbmRleCgkZXhwcmVzc2lvbiwgJG9wZXJhdG9yKTtcbiAgJHZhbHVlOiBzdHJpbmcuc2xpY2UoJGV4cHJlc3Npb24sICRvcGVyYXRvci1pbmRleCArIHN0cmluZy5sZW5ndGgoJG9wZXJhdG9yKSk7XG5cbiAgQGlmIG1hcC5oYXMta2V5KCRicmVha3BvaW50cywgJHZhbHVlKSB7XG4gICAgJHZhbHVlOiBtYXAuZ2V0KCRicmVha3BvaW50cywgJHZhbHVlKTtcbiAgfSBAZWxzZSB7XG4gICAgJHZhbHVlOiB0by1udW1iZXIoJHZhbHVlKTtcbiAgfVxuXG4gICRpbnRlcnZhbDogbWFwLmdldCgkdW5pdC1pbnRlcnZhbHMsIG1hdGgudW5pdCgkdmFsdWUpKTtcblxuICBAaWYgbm90ICRpbnRlcnZhbCB7XG4gICAgLy8gSXQgaXMgbm90IHBvc3NpYmxlIHRvIGluY2x1ZGUgYSBtaXhpbiBpbnNpZGUgYSBmdW5jdGlvbiwgc28gd2UgaGF2ZSB0b1xuICAgIC8vIHJlbHkgb24gdGhlIGBpbS1sb2coLi4pYCBmdW5jdGlvbiByYXRoZXIgdGhhbiB0aGUgYGxvZyguLilgIG1peGluLiBCZWNhdXNlXG4gICAgLy8gZnVuY3Rpb25zIGNhbm5vdCBiZSBjYWxsZWQgYW55d2hlcmUgaW4gU2Fzcywgd2UgbmVlZCB0byBoYWNrIHRoZSBjYWxsIGluXG4gICAgLy8gYSBkdW1teSB2YXJpYWJsZSwgc3VjaCBhcyBgJF9gLiBJZiBhbnlib2R5IGV2ZXIgcmFpc2UgYSBzY29waW5nIGlzc3VlIHdpdGhcbiAgICAvLyBTYXNzIDMuMywgY2hhbmdlIHRoaXMgbGluZSBpbiBgQGlmIGltLWxvZyguLikge31gIGluc3RlYWQuXG4gICAgJF86IGltLWxvZygnVW5rbm93biB1bml0IGAje21hdGgudW5pdCgkdmFsdWUpfWAuJyk7XG4gIH1cblxuICBAaWYgJG9wZXJhdG9yID09ICc+JyB7XG4gICAgJHZhbHVlOiAkdmFsdWUgKyAkaW50ZXJ2YWw7XG4gIH0gQGVsc2UgaWYgJG9wZXJhdG9yID09ICc8JyB7XG4gICAgJHZhbHVlOiAkdmFsdWUgLSAkaW50ZXJ2YWw7XG4gIH1cblxuICBAcmV0dXJuICR2YWx1ZTtcbn1cblxuLy8vXG4vLy8gUGFyc2UgYW4gZXhwcmVzc2lvbiB0byByZXR1cm4gYSB2YWxpZCBtZWRpYS1xdWVyeSBleHByZXNzaW9uXG4vLy9cbi8vLyBAcGFyYW0ge1N0cmluZ30gJGV4cHJlc3Npb24gLSBFeHByZXNzaW9uIHRvIHBhcnNlXG4vLy9cbi8vLyBAcmV0dXJuIHtTdHJpbmd9IC0gVmFsaWQgbWVkaWEgcXVlcnlcbi8vL1xuQGZ1bmN0aW9uIHBhcnNlLWV4cHJlc3Npb24oJGV4cHJlc3Npb24pIHtcbiAgLy8gSWYgaXQgaXMgcGFydCBvZiAkbWVkaWEtZXhwcmVzc2lvbnMsIGl0IGhhcyBubyBvcGVyYXRvclxuICAvLyB0aGVuIHRoZXJlIGlzIG5vIG5lZWQgdG8gZ28gYW55IGZ1cnRoZXIsIGp1c3QgcmV0dXJuIHRoZSB2YWx1ZVxuICBAaWYgbWFwLmhhcy1rZXkoJG1lZGlhLWV4cHJlc3Npb25zLCAkZXhwcmVzc2lvbikge1xuICAgIEByZXR1cm4gbWFwLmdldCgkbWVkaWEtZXhwcmVzc2lvbnMsICRleHByZXNzaW9uKTtcbiAgfVxuXG4gICRvcGVyYXRvcjogZ2V0LWV4cHJlc3Npb24tb3BlcmF0b3IoJGV4cHJlc3Npb24pO1xuICAkZGltZW5zaW9uOiBnZXQtZXhwcmVzc2lvbi1kaW1lbnNpb24oJGV4cHJlc3Npb24sICRvcGVyYXRvcik7XG4gICRwcmVmaXg6IGdldC1leHByZXNzaW9uLXByZWZpeCgkb3BlcmF0b3IpO1xuICAkdmFsdWU6IGdldC1leHByZXNzaW9uLXZhbHVlKCRleHByZXNzaW9uLCAkb3BlcmF0b3IpO1xuXG4gIEByZXR1cm4gJygjeyRwcmVmaXh9LSN7JGRpbWVuc2lvbn06ICN7JHZhbHVlfSknO1xufVxuXG4vLy9cbi8vLyBTbGljZSBgJGxpc3RgIGJldHdlZW4gYCRzdGFydGAgYW5kIGAkZW5kYCBpbmRleGVzXG4vLy9cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7TGlzdH0gJGxpc3QgLSBMaXN0IHRvIHNsaWNlXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRzdGFydCBbMV0gLSBTdGFydCBpbmRleFxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkZW5kIFtsZW5ndGgoJGxpc3QpXSAtIEVuZCBpbmRleFxuLy8vXG4vLy8gQHJldHVybiB7TGlzdH0gU2xpY2VkIGxpc3Rcbi8vL1xuQGZ1bmN0aW9uIHNsaWNlKCRsaXN0LCAkc3RhcnQ6IDEsICRlbmQ6IGxpc3QubGVuZ3RoKCRsaXN0KSkge1xuICBAaWYgbGlzdC5sZW5ndGgoJGxpc3QpIDwgMSBvciAkc3RhcnQgPiAkZW5kIHtcbiAgICBAcmV0dXJuICgpO1xuICB9XG5cbiAgJHJlc3VsdDogKCk7XG5cbiAgQGZvciAkaSBmcm9tICRzdGFydCB0aHJvdWdoICRlbmQge1xuICAgICRyZXN1bHQ6IGxpc3QuYXBwZW5kKCRyZXN1bHQsIGxpc3QubnRoKCRsaXN0LCAkaSksIGNvbW1hKTtcbiAgfVxuXG4gIEByZXR1cm4gJHJlc3VsdDtcbn1cblxuLy8vL1xuLy8vIFN0cmluZyB0byBudW1iZXIgY29udmVydGVyXG4vLy8gQGF1dGhvciBLaXR0eSBHaXJhdWRlbFxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vL1xuXG4vLy9cbi8vLyBDYXN0cyBhIHN0cmluZyBpbnRvIGEgbnVtYmVyXG4vLy9cbi8vLyBAcGFyYW0ge1N0cmluZyB8IE51bWJlcn0gJHZhbHVlIC0gVmFsdWUgdG8gYmUgcGFyc2VkXG4vLy9cbi8vLyBAcmV0dXJuIHtOdW1iZXJ9XG4vLy9cblxuQGZ1bmN0aW9uIHRvLW51bWJlcigkdmFsdWUpIHtcbiAgQGlmIG1ldGEudHlwZS1vZigkdmFsdWUpID09ICdudW1iZXInIHtcbiAgICBAcmV0dXJuICR2YWx1ZTtcbiAgfSBAZWxzZSBpZiBtZXRhLnR5cGUtb2YoJHZhbHVlKSAhPSAnc3RyaW5nJyB7XG4gICAgJF86IGltLWxvZygnVmFsdWUgZm9yIGB0by1udW1iZXJgIHNob3VsZCBiZSBhIG51bWJlciBvciBhIHN0cmluZy4nKTtcbiAgfVxuXG4gICRmaXJzdC1jaGFyYWN0ZXI6IHN0cmluZy5zbGljZSgkdmFsdWUsIDEsIDEpO1xuICAkcmVzdWx0OiAwO1xuICAkZGlnaXRzOiAwO1xuICAkbWludXM6ICgkZmlyc3QtY2hhcmFjdGVyID09ICctJyk7XG4gICRudW1iZXJzOiAoXG4gICAgJzAnOiAwLFxuICAgICcxJzogMSxcbiAgICAnMic6IDIsXG4gICAgJzMnOiAzLFxuICAgICc0JzogNCxcbiAgICAnNSc6IDUsXG4gICAgJzYnOiA2LFxuICAgICc3JzogNyxcbiAgICAnOCc6IDgsXG4gICAgJzknOiA5LFxuICApO1xuXG4gIC8vIFJlbW92ZSArLy0gc2lnbiBpZiBwcmVzZW50IGF0IGZpcnN0IGNoYXJhY3RlclxuICBAaWYgKCRmaXJzdC1jaGFyYWN0ZXIgPT0gJysnIG9yICRmaXJzdC1jaGFyYWN0ZXIgPT0gJy0nKSB7XG4gICAgJHZhbHVlOiBzdHJpbmcuc2xpY2UoJHZhbHVlLCAyKTtcbiAgfVxuXG4gIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggc3RyaW5nLmxlbmd0aCgkdmFsdWUpIHtcbiAgICAkY2hhcmFjdGVyOiBzdHJpbmcuc2xpY2UoJHZhbHVlLCAkaSwgJGkpO1xuXG4gICAgQGlmIG5vdChsaXN0LmluZGV4KG1hcC5rZXlzKCRudW1iZXJzKSwgJGNoYXJhY3Rlcikgb3IgJGNoYXJhY3RlciA9PSAnLicpIHtcbiAgICAgIEByZXR1cm4gdG8tbGVuZ3RoKGlmKCRtaW51cywgLSRyZXN1bHQsICRyZXN1bHQpLCBzdHJpbmcuc2xpY2UoJHZhbHVlLCAkaSkpO1xuICAgIH1cblxuICAgIEBpZiAkY2hhcmFjdGVyID09ICcuJyB7XG4gICAgICAkZGlnaXRzOiAxO1xuICAgIH0gQGVsc2UgaWYgJGRpZ2l0cyA9PSAwIHtcbiAgICAgICRyZXN1bHQ6ICRyZXN1bHQgKiAxMCArIG1hcC5nZXQoJG51bWJlcnMsICRjaGFyYWN0ZXIpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgJGRpZ2l0czogJGRpZ2l0cyAqIDEwO1xuICAgICAgJHJlc3VsdDogJHJlc3VsdCArIG1hdGguZGl2KG1hcC5nZXQoJG51bWJlcnMsICRjaGFyYWN0ZXIpLCAkZGlnaXRzKTtcbiAgICB9XG4gIH1cblxuICBAcmV0dXJuIGlmKCRtaW51cywgLSRyZXN1bHQsICRyZXN1bHQpO1xufVxuXG4vLy9cbi8vLyBBZGQgYCR1bml0YCB0byBgJHZhbHVlYFxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR2YWx1ZSAtIFZhbHVlIHRvIGFkZCB1bml0IHRvXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICR1bml0IC0gU3RyaW5nIHJlcHJlc2VudGF0aW9uIG9mIHRoZSB1bml0XG4vLy9cbi8vLyBAcmV0dXJuIHtOdW1iZXJ9IC0gYCR2YWx1ZWAgZXhwcmVzc2VkIGluIGAkdW5pdGBcbi8vL1xuQGZ1bmN0aW9uIHRvLWxlbmd0aCgkdmFsdWUsICR1bml0KSB7XG4gICR1bml0czogKFxuICAgICdweCc6IDFweCxcbiAgICAnY20nOiAxY20sXG4gICAgJ21tJzogMW1tLFxuICAgICclJzogMSUsXG4gICAgJ2NoJzogMWNoLFxuICAgICdwYyc6IDFwYyxcbiAgICAnaW4nOiAxaW4sXG4gICAgJ2VtJzogMWVtLFxuICAgICdyZW0nOiAxcmVtLFxuICAgICdwdCc6IDFwdCxcbiAgICAnZXgnOiAxZXgsXG4gICAgJ3Z3JzogMXZ3LFxuICAgICd2aCc6IDF2aCxcbiAgICAndm1pbic6IDF2bWluLFxuICAgICd2bWF4JzogMXZtYXgsXG4gICk7XG5cbiAgQGlmIG5vdCBsaXN0LmluZGV4KG1hcC5rZXlzKCR1bml0cyksICR1bml0KSB7XG4gICAgJF86IGltLWxvZygnSW52YWxpZCB1bml0IGAjeyR1bml0fWAuJyk7XG4gIH1cblxuICBAcmV0dXJuICR2YWx1ZSAqIG1hcC5nZXQoJHVuaXRzLCAkdW5pdCk7XG59XG5cbi8vL1xuLy8vIFRoaXMgbWl4aW4gYWltcyBhdCByZWRlZmluaW5nIHRoZSBjb25maWd1cmF0aW9uIGp1c3QgZm9yIHRoZSBzY29wZSBvZlxuLy8vIHRoZSBjYWxsLiBJdCBpcyBoZWxwZnVsIHdoZW4gaGF2aW5nIGEgY29tcG9uZW50IG5lZWRpbmcgYW4gZXh0ZW5kZWRcbi8vLyBjb25maWd1cmF0aW9uIHN1Y2ggYXMgY3VzdG9tIGJyZWFrcG9pbnRzIChyZWZlcnJlZCB0byBhcyB0d2Vha3BvaW50cylcbi8vLyBmb3IgaW5zdGFuY2UuXG4vLy9cbi8vLyBAYXV0aG9yIEtpdHR5IEdpcmF1ZGVsXG4vLy9cbi8vLyBAcGFyYW0ge01hcH0gJHR3ZWFrcG9pbnRzIFsoKV0gLSBNYXAgb2YgdHdlYWtwb2ludHMgdG8gYmUgbWVyZ2VkIHdpdGggYCRicmVha3BvaW50c2Bcbi8vLyBAcGFyYW0ge01hcH0gJHR3ZWFrLW1lZGlhLWV4cHJlc3Npb25zIFsoKV0gLSBNYXAgb2YgdHdlYWtlZCBtZWRpYSBleHByZXNzaW9ucyB0byBiZSBtZXJnZWQgd2l0aCBgJG1lZGlhLWV4cHJlc3Npb25gXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gRXh0ZW5kIHRoZSBnbG9iYWwgYnJlYWtwb2ludHMgd2l0aCBhIHR3ZWFrcG9pbnRcbi8vLyAgQGluY2x1ZGUgbWVkaWEtY29udGV4dCgoJ2N1c3RvbSc6IDY3OHB4KSkge1xuLy8vICAgIC5mb28ge1xuLy8vICAgICAgQGluY2x1ZGUgbWVkaWEoJz5waG9uZScsICc8PWN1c3RvbScpIHtcbi8vLyAgICAgICAvLyAuLi5cbi8vLyAgICAgIH1cbi8vLyAgICB9XG4vLy8gIH1cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBFeHRlbmQgdGhlIGdsb2JhbCBtZWRpYSBleHByZXNzaW9ucyB3aXRoIGEgY3VzdG9tIG9uZVxuLy8vICBAaW5jbHVkZSBtZWRpYS1jb250ZXh0KCR0d2Vhay1tZWRpYS1leHByZXNzaW9uczogKCdhbGwnOiAnYWxsJykpIHtcbi8vLyAgICAuZm9vIHtcbi8vLyAgICAgIEBpbmNsdWRlIG1lZGlhKCdhbGwnLCAnPnBob25lJykge1xuLy8vICAgICAgIC8vIC4uLlxuLy8vICAgICAgfVxuLy8vICAgIH1cbi8vLyAgfVxuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIEV4dGVuZCBib3RoIGNvbmZpZ3VyYXRpb24gbWFwc1xuLy8vICBAaW5jbHVkZSBtZWRpYS1jb250ZXh0KCgnY3VzdG9tJzogNjc4cHgpLCAoJ2FsbCc6ICdhbGwnKSkge1xuLy8vICAgIC5mb28ge1xuLy8vICAgICAgQGluY2x1ZGUgbWVkaWEoJ2FsbCcsICc+cGhvbmUnLCAnPD1jdXN0b20nKSB7XG4vLy8gICAgICAgLy8gLi4uXG4vLy8gICAgICB9XG4vLy8gICAgfVxuLy8vICB9XG4vLy9cbkBtaXhpbiBtZWRpYS1jb250ZXh0KCR0d2Vha3BvaW50czogKCksICR0d2Vhay1tZWRpYS1leHByZXNzaW9uczogKCkpIHtcbiAgLy8gU2F2ZSBnbG9iYWwgY29uZmlndXJhdGlvblxuICAkZ2xvYmFsLWJyZWFrcG9pbnRzOiAkYnJlYWtwb2ludHM7XG4gICRnbG9iYWwtbWVkaWEtZXhwcmVzc2lvbnM6ICRtZWRpYS1leHByZXNzaW9ucztcblxuICAvLyBVcGRhdGUgZ2xvYmFsIGNvbmZpZ3VyYXRpb25cbiAgJGJyZWFrcG9pbnRzOiBtYXAubWVyZ2UoJGJyZWFrcG9pbnRzLCAkdHdlYWtwb2ludHMpICFnbG9iYWw7XG4gICRtZWRpYS1leHByZXNzaW9uczogbWFwLm1lcmdlKCRtZWRpYS1leHByZXNzaW9ucywgJHR3ZWFrLW1lZGlhLWV4cHJlc3Npb25zKSAhZ2xvYmFsO1xuXG4gIEBjb250ZW50O1xuXG4gIC8vIFJlc3RvcmUgZ2xvYmFsIGNvbmZpZ3VyYXRpb25cbiAgJGJyZWFrcG9pbnRzOiAkZ2xvYmFsLWJyZWFrcG9pbnRzICFnbG9iYWw7XG4gICRtZWRpYS1leHByZXNzaW9uczogJGdsb2JhbC1tZWRpYS1leHByZXNzaW9ucyAhZ2xvYmFsO1xufVxuXG4vLy8vXG4vLy8gaW5jbHVkZS1tZWRpYSBwdWJsaWMgZXhwb3NlZCBBUElcbi8vLyBAYXV0aG9yIEVkdWFyZG8gQm91Y2FzXG4vLy8gQGFjY2VzcyBwdWJsaWNcbi8vLy9cblxuLy8vXG4vLy8gR2VuZXJhdGVzIGEgbWVkaWEgcXVlcnkgYmFzZWQgb24gYSBsaXN0IG9mIGNvbmRpdGlvbnNcbi8vL1xuLy8vIEBwYXJhbSB7QXJnbGlzdH0gICAkY29uZGl0aW9ucyAgLSBNZWRpYSBxdWVyeSBjb25kaXRpb25zXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gV2l0aCBhIHNpbmdsZSBzZXQgYnJlYWtwb2ludFxuLy8vICBAaW5jbHVkZSBtZWRpYSgnPnBob25lJykgeyB9XG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gV2l0aCB0d28gc2V0IGJyZWFrcG9pbnRzXG4vLy8gIEBpbmNsdWRlIG1lZGlhKCc+cGhvbmUnLCAnPD10YWJsZXQnKSB7IH1cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBXaXRoIGN1c3RvbSB2YWx1ZXNcbi8vLyAgQGluY2x1ZGUgbWVkaWEoJz49MzU4cHgnLCAnPDg1MHB4JykgeyB9XG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gV2l0aCBzZXQgYnJlYWtwb2ludHMgd2l0aCBjdXN0b20gdmFsdWVzXG4vLy8gIEBpbmNsdWRlIG1lZGlhKCc+ZGVza3RvcCcsICc8PTEzNTBweCcpIHsgfVxuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFdpdGggYSBzdGF0aWMgZXhwcmVzc2lvblxuLy8vICBAaW5jbHVkZSBtZWRpYSgncmV0aW5hMngnKSB7IH1cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBNaXhpbmcgZXZlcnl0aGluZ1xuLy8vICBAaW5jbHVkZSBtZWRpYSgnPj0zNTBweCcsICc8dGFibGV0JywgJ3JldGluYTN4JykgeyB9XG4vLy9cbkBtaXhpbiBtZWRpYSgkY29uZGl0aW9ucy4uLikge1xuICBAaWYgKCRpbS1tZWRpYS1zdXBwb3J0IGFuZCBsaXN0Lmxlbmd0aCgkY29uZGl0aW9ucykgPT0gMCkgb3JcbiAgICAobm90ICRpbS1tZWRpYS1zdXBwb3J0IGFuZCBpbS1pbnRlcmNlcHRzLXN0YXRpYy1icmVha3BvaW50KCRjb25kaXRpb25zLi4uKSlcbiAge1xuICAgIEBjb250ZW50O1xuICB9IEBlbHNlIGlmICgkaW0tbWVkaWEtc3VwcG9ydCBhbmQgbGlzdC5sZW5ndGgoJGNvbmRpdGlvbnMpID4gMCkge1xuICAgIEBtZWRpYSAje3N0cmluZy51bnF1b3RlKHBhcnNlLWV4cHJlc3Npb24obGlzdC5udGgoJGNvbmRpdGlvbnMsIDEpKSl9IHtcbiAgICAgIC8vIFJlY3Vyc2l2ZSBjYWxsXG4gICAgICBAaW5jbHVkZSBtZWRpYShzbGljZSgkY29uZGl0aW9ucywgMikuLi4pIHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvKiAjIEVsZW1lbnRzXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5AaW1wb3J0ICdidXR0b25zJztcbkBpbXBvcnQgJ2hlYWRpbmdzJztcbkBpbXBvcnQgJ3RhYmxlcyc7XG5AaW1wb3J0ICdmb3Jtcyc7XG5AaW1wb3J0ICdnYWxsZXJpZXMnOyIsIi53cC1ibG9jay10YWJsZSB7XG5cbiAgdGFibGUge1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgY29sb3I6ICRibHVlO1xuXG4gICAgdGhlYWQge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJsdWU7XG4gICAgICBjb2xvcjogJHdoaXRlO1xuICAgIH1cblxuICB9XG5cbiAgZmlnY2FwdGlvbiB7XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xuICB9XG59IiwiLy8gQmFzZSBDb2xvcnNcbi8vPT09PT09PT09PT09PT09PT09PVxuJGJsYWNrOiAjMTcyMDIxO1xuJGJsdWU6ICMwYjI3NDQ7XG4kZ3JlZW46ICMxMTUxNDI7XG4kdHVycXVvaXNlOiAjOGRjOWI5O1xuJG9yYW5nZTogI2NmNWMzNjtcbiR5ZWxsb3c6ICNmZmMxNWU7XG4kd2hpdGU6ICNmZmZmZmY7IiwiZm9ybSB7XG5cbiAgaW5wdXQge1xuICAgIGZvbnQtc2l6ZTogMjJweDtcblxuICAgICZbdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICB9XG4gIH1cbn0iLCIubWdsLWp1c3RpZmllZC1jb250YWluZXIsXG4ubWdsLW1hc29ucnktY29udGFpbmVyIHtcbiAgbWFyZ2luOiAzMHB4IDBweCAzMHB4IDBweDtcbn0iLCIvKiAjIEhlYWRlcnNcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuQGltcG9ydCAnc2l0ZS1oZWFkZXInO1xuQGltcG9ydCAnbW9iaWxlLWhlYWRlcic7XG5AaW1wb3J0ICdmdWxsX3dpZHRoX2ltYWdlX2hlYWRlcic7XG5AaW1wb3J0ICdjYXRlZ29yeV9oZWFkZXInOyIsIi5zaXRlLWhlYWRlciB7XG4gIHBvc2l0aW9uOiBzdGlja3k7XG4gIHRvcDogMDtcbiAgei1pbmRleDogMTAwMDtcblxuICAuaW5zaWRlLWhlYWRlciB7XG5cbiAgICAuc2l0ZS1sb2dvIHtcblxuICAgIH1cblxuICAgICNzaXRlLW5hdmlnYXRpb24ge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBtYXJnaW4tbGVmdDogMjMwcHg7XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj0xMjUwcHhcIil7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAzMDBweDtcbiAgICAgIH1cblxuICAgICAgI3ByaW1hcnktbWVudSB7XG5cbiAgICAgICAgI21lbnUtbWFpbi1tZW51IHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICAgICAgICBmbGV4LXdyYXA6IG5vd3JhcDtcblxuICAgICAgICAgIGEge1xuICAgICAgICAgICAgcGFkZGluZzogMCAxNXB4IDAgMTVweDtcblxuICAgICAgICAgICAgLmRyb3Bkb3duLW1lbnUtdG9nZ2xlIHtcbiAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufSIsIiNtb2JpbGUtaGVhZGVyIHtcbiAgei1pbmRleDogMTAwO1xuXG4gIC5pbnNpZGUtbmF2aWdhdGlvbiB7XG4gICAgcGFkZGluZzogNXB4IDQwcHggNXB4IDQwcHg7XG5cbiAgICAubW9iaWxlLWhlYWRlci1sb2dvIHtcblxuICAgICAgYSBpbWcge1xuICAgICAgICB3aWR0aDogMTUwcHg7XG4gICAgICAgIGhlaWdodDogMTUwcHg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLm1lbnUtdG9nZ2xlIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgcGFkZGluZzogMCAxMHB4IDAgMTBweDtcbiAgICB9XG5cbiAgICAjbW9iaWxlLW1lbnUge1xuXG4gICAgICB1bCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0dXJxdW9pc2U7XG4gICAgICAgIHBhZGRpbmc6IDIwcHg7XG5cbiAgICAgICAgJi5tZW51PmxpIHtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICB9XG59IiwiLnNpbmdsZS1wb3N0LFxuLmJsb2cge1xuICAudGl0bGUtZXhjZXJwdCB7XG4gICAgQGluY2x1ZGUgbWVkaWEoXCI+PWdwLXRhYmxldFwiLCBcIjxncC1kZXNrdG9wXCIpIHtcbiAgICAgIGgxIHtcbiAgICAgICAgZm9udC1zaXplOiAyLjJyZW07XG4gICAgICB9XG4gICAgfVxuICAgIEBpbmNsdWRlIG1lZGlhKFwiPj01MDBweFwiLCBcIjw9NzAwcHhcIikge1xuICAgICAgaDEge1xuICAgICAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICAgIH1cblxuICAgICAgcCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICAgIH1cbiAgICB9XG4gICAgQGluY2x1ZGUgbWVkaWEoXCI8NTAwcHhcIikge1xuICAgICAgaDEge1xuICAgICAgICBmb250LXNpemU6IDEuM3JlbTtcbiAgICAgIH1cblxuICAgICAgcCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTdweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn0iLCIuYXJjaGl2ZSB7XG4gIC5wYWdlLWhlYWRlciB7XG4gICAgbWFyZ2luLWJvdHRvbTogNTBweDtcblxuICAgIGgxIHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB9XG4gIH1cbn0iLCIvKiAjIENvbnRlbnQgQXJlYVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuQGltcG9ydCAnc2l0ZS1jb250ZW50JztcbkBpbXBvcnQgJ2hvbWUnO1xuQGltcG9ydCAncm9vbXMnO1xuQGltcG9ydCAncHJpY2luZyc7XG5AaW1wb3J0ICdjb21pbmctc29vbic7XG5AaW1wb3J0ICdwb3N0LWFyY2hpdmUtbGF5b3V0JztcbkBpbXBvcnQgJ2NvbW1lbnRzJztcbkBpbXBvcnQgJ2ZhcSc7XG5AaW1wb3J0ICdyZWxhdGVkX2NvbnRlbnQnOyIsIi5zaXRlLWNvbnRlbnQge1xuXG4gIC5jb250ZW50LWFyZWEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAyMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgcGFkZGluZzogMjBweDtcblxuICAgIGEge1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgfVxuICB9XG59IiwiLmhvbWUge1xuICBoMSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIC5ob21lLXNlY3Rpb24tMSB7XG5cbiAgfVxuXG4gIC5ob21lLXNlY3Rpb24tMiB7XG5cbiAgfVxuXG4gIC5ob21lLXNlY3Rpb24tMyB7XG5cbiAgfVxuXG4gIC5ob21lLXNlY3Rpb24tNCB7XG4gICAgaHIge1xuICAgICAgd2lkdGg6IDgwJTtcbiAgICAgIG1hcmdpbjogMTBweCBhdXRvIDEwcHggYXV0bztcbiAgICB9XG5cbiAgICB1bCB7XG4gICAgICBtYXJnaW4tbGVmdDogMmVtO1xuICAgICAgQGluY2x1ZGUgbWVkaWEoXCI8PTkwMHB4XCIpIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDFlbTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuaG9tZS1zZWN0aW9uLTUge1xuICAgIGhyIHtcbiAgICAgIHdpZHRoOiA4MCU7XG4gICAgICBtYXJnaW46IDEwcHggYXV0byAxMHB4IGF1dG87XG4gICAgfVxuXG4gICAgdWwge1xuICAgICAgbWFyZ2luLWxlZnQ6IDJlbTtcbiAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPD05MDBweFwiKSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAxZW07XG4gICAgICB9XG4gICAgfVxuICB9XG5cbn0iLCIucGFnZS1pZC0yNiB7XG4gIGFydGljbGUge1xuICAgIC5lbnRyeS1jb250ZW50IHtcblxuICAgICAgLnJvb20ge1xuICAgICAgICBAaW5jbHVkZSBtZWRpYSgnPj0xNTAwcHgnKSB7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAxMCU7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMTAlO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5nYi1jb250YWluZXIge1xuICAgICAgICB1bCB7XG4gICAgICAgICAgY29sdW1uczogMjtcblxuICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPmdwLXRhYmxldFwiLCBcIjw9MTIwMHB4XCIpIHtcbiAgICAgICAgICAgIGNvbHVtbnM6IDE7XG4gICAgICAgICAgfVxuICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPjQwMHB4XCIsIFwiPD1ncC10YWJsZXRcIikge1xuICAgICAgICAgICAgY29sdW1uczogMjtcbiAgICAgICAgICB9XG4gICAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI8PTQwMHB4XCIpIHtcbiAgICAgICAgICAgIGNvbHVtbnM6IDE7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59IiwiLnBhZ2UtaWQtMzQge1xuICAuYm94IHtcbiAgICAuZGlzY291bnQge1xuICAgICAgQGluY2x1ZGUgbWVkaWEoXCI8PTQ0MHB4XCIpIHtcbiAgICAgICAgICBoZWlnaHQ6IDE4MHB4O1xuICAgICAgICB9XG5cbiAgICAgIGltZyB7XG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPj0xMzAwcHhcIikge1xuICAgICAgICAgIGhlaWdodDogMzQwcHg7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI8PTQ0MHB4XCIpIHtcbiAgICAgICAgICBoZWlnaHQ6IDIyMHB4O1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC50eHQtYm94IHtcbiAgICAgICAgLmRpc2NvdW50LXR4dCxcbiAgICAgICAgLmRpc2NvdW50LWNpdGUge1xuICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPD00NDBweFwiKSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICB9XG4gIH1cblxuICBociB7XG4gICAgY29sb3I6ICRvcmFuZ2U7XG4gICAgaGVpZ2h0OiA5cHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkb3JhbmdlO1xuICAgIGJvcmRlci1ib3R0b206IDRweCBzb2xpZCAkb3JhbmdlO1xuICAgIG1hcmdpbi1ib3R0b206IC01NXB4O1xuICB9XG5cbiAgLmJpZy1idXR0b24uYmx1ZS1idXR0b24ge1xuXG4gICAgYS53cC1ibG9jay1idXR0b25fX2xpbmsge1xuICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgIGZvbnQtc2l6ZTogMjVweDtcblxuICAgICAgQGluY2x1ZGUgbWVkaWEoXCI8PTYwMHB4XCIpIHtcbiAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSBtZWRpYShcIjw9NDQwcHhcIikge1xuICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICB9XG4gICAgfVxuICB9XG59IiwiLnBhZ2UtaWQtMiB7XG4gICNwYWdlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgaDIge1xuICAgIEBpbmNsdWRlIG1lZGlhKFwiPD03MDBweFwiKSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDQwcHg7XG4gICAgICAgICAgfVxuICB9XG5cbiAgZm9ybSB7XG4gICAgd2lkdGg6IDEwMCU7XG5cbiAgICAuc2liX3NpZ251cF9ib3hfaW5zaWRlXzEge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgICBsYWJlbCB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG5cbiAgICAgIHAge1xuICAgICAgICBtYXgtd2lkdGg6IDkwJTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPD01MDBweFwiKSB7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwcHg7XG4gICAgICAgIH1cblxuICAgICAgICBpbnB1dCB7XG4gICAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PTE1MDBweFwiKSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDI2cHg7XG4gICAgICAgICAgfVxuICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPD01MDBweFwiKSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICAgICAgICBwYWRkaW5nOiA1cHggMTBweCA1cHggMTBweDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBibGFjaztcblxuICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogaW5kaWFucmVkO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufSIsIi5hcmNoaXZlLFxuLmJsb2cge1xuICBhcnRpY2xlIHtcbiAgICBoZWFkZXIge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiA1MCU7XG5cbiAgICAgIGEge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICB9XG5cbiAgICAgIGgyIHtcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+PTEzMDBweFwiKXtcbiAgICAgICAgICBmb250LXNpemU6IDI4cHg7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI8NTAwcHhcIikge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAuZGF0ZS1hdXRob3Ige1xuICAgICAgICB0aW1lLFxuICAgICAgICAuYXV0aG9yIHtcbiAgICAgICAgICBAaW5jbHVkZSBtZWRpYShcIjw1MDBweFwiKSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICB9XG4gIH1cbn0iLCIuY29tbWVudHMtYXJlYSB7XG4gIGhyIHtcbiAgICB3aWR0aDogNTAlO1xuICAgIG1hcmdpbjogNTBweCBhdXRvIDUwcHggYXV0bztcbiAgICBjb2xvcjogJGJsdWU7XG4gIH1cblxuICAuY29tbWVudC1yZXNwb25kIHtcbiAgICAuY29tbWVudC1mb3JtIHtcbiAgICAgIC5jb21tZW50LWZvcm0tc3Vic2NyaXB0aW9ucyB7XG4gICAgICAgIHNlbGVjdCB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufSIsIi5wYWdlLWlkLTQ0IHtcbiAgLmxpZ2h0d2VpZ2h0LWFjY29yZGlvbiB7XG4gICAgbWFyZ2luLWJvdHRvbTogNHB4O1xuICB9XG59IiwiLnJlbGF0ZWRfY29udGVudCB7XG4gIG1hcmdpbi10b3A6IDUwcHg7XG4gIG1hcmdpbi1ib3R0b206IDEwMHB4O1xuXG4gIGgzIHtcbiAgICBmb250LXNpemU6IDI5cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogNzVweDtcblxuICAgIEBpbmNsdWRlIG1lZGlhKFwiPjEzNTBweFwiKSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxMDBweDtcbiAgICB9XG4gIH1cblxuICAucmVsYXRlZC1wb3N0cyB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoIC0xMDB2dyAvIDIgKyAxMDAlIC8gMik7XG4gICAgbWFyZ2luLXJpZ2h0OiBjYWxjKCAtMTAwdncgLyAyICsgMTAwJSAvIDIpO1xuICAgIG1heC13aWR0aDogMTAwdnc7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR5ZWxsb3c7XG4gICAgaGVpZ2h0OiAyNTBweDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtZXZlbmx5O1xuXG4gICAgQGluY2x1ZGUgbWVkaWEoXCI+MTM1MHB4XCIpIHtcbiAgICAgIGhlaWdodDogMzI1cHg7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEoXCI8Z3AtdGFibGV0XCIpIHtcbiAgICAgIGhlaWdodDogMTUwcHg7XG4gICAgfVxuXG4gICAgLnJlbGF0ZWQtcG9zdCB7XG4gICAgICBtYXJnaW4tdG9wOiAtMjVweDtcbiAgICAgIHdpZHRoOiAzMDBweDtcbiAgICAgIGhlaWdodDogMzAwcHg7XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPjEzNTBweFwiKSB7XG4gICAgICAgIG1hcmdpbi10b3A6IC0zN3B4O1xuICAgICAgICB3aWR0aDogNDAwcHg7XG4gICAgICAgIGhlaWdodDogNDAwcHg7XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPGdwLXRhYmxldFwiKSB7XG4gICAgICAgIG1hcmdpbi10b3A6IC0yNXB4O1xuICAgICAgICB3aWR0aDogMjAwcHg7XG4gICAgICAgIGhlaWdodDogMjAwcHg7XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPGdwLWRlc2t0b3BcIikge1xuICAgICAgICAmOm5vdCg6bnRoLWNoaWxkKC1uICsgMikpIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lXG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgbWVkaWEoXCI8NDUwcHhcIikge1xuICAgICAgICAmOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lXG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgYSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICBpbWcge1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgfVxuICAgICAgICBzcGFuIHtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgaGVpZ2h0OiAxMjBweDtcbiAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgIGJvdHRvbTogNXB4O1xuICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxMSwgMzksIDY5LCAwLjc1KTtcblxuICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgY29sb3I6ICR5ZWxsb3c7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI+MTM1MHB4XCIpIHtcbiAgICAgICAgICAgIGhlaWdodDogMTUwcHg7XG4gICAgICAgICAgICBmb250LXNpemU6IDIxcHg7XG4gICAgICAgICAgICBwYWRkaW5nOiAyMHB4O1xuICAgICAgICAgIH1cblxuICAgICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPGdwLXRhYmxldFwiKSB7XG4gICAgICAgICAgICBoZWlnaHQ6IDg1cHg7XG4gICAgICAgICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICAgICAgICBwYWRkaW5nOiA1cHg7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59IiwiLyogIyBmb290ZXJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbkBpbXBvcnQgXCJzaXRlLWZvb3RlclwiOyIsIi5zaXRlLWZvb3RlciB7XG4gIG1hcmdpbi10b3A6IDYwcHg7XG5cbiAgI2Zvb3Rlci13aWRnZXRzIHtcblxuICAgIC5pbnNpZGUtZm9vdGVyLXdpZGdldHMge1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPD1ncC10YWJsZXRcIikge1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICAgIH1cblxuICAgICAgLmlubmVyLXBhZGRpbmcge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICB9XG5cbiAgICAgIC5mb290ZXItd2lkZ2V0LTEge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgbWFyZ2luOiAwO1xuXG4gICAgICAgIGFzaWRlIHtcblxuICAgICAgICAgIHVsIGxpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgICBmb250LWZhbWlseTogUXVpY2tzYW5kO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBtZWRpYShcIjw9Z3AtZGVza3RvcFwiKSB7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgbWVkaWEoXCI8PWdwLXRhYmxldFwiKSB7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAuZm9vdGVyLXdpZGdldC0yIHtcbiAgICAgICAgei1pbmRleDogMTAwO1xuICAgICAgICBmbGV4LWdyb3c6IDAuNjtcbiAgICAgICAgbWFyZ2luOiAwO1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKFwiPD01MDBweFwiKSB7XG4gICAgICAgICAgZmxleC1ncm93OiAwLjc7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLmZvb3Rlci13aWRnZXQtMyB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXG4gICAgICAgIHVsIGxpIHtcbiAgICAgICAgICBtYXJnaW46IDA7XG5cbiAgICAgICAgICBhIHtcblxuICAgICAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgICAgd2lkdGg6IDQwcHg7XG4gICAgICAgICAgICAgIGhlaWdodDogNDBweDtcblxuICAgICAgICAgICAgICBAaW5jbHVkZSBtZWRpYShcIjw9NTAwcHhcIikge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAzMHB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogMzBweDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICB9XG59XG5cbi5zaXRlLWluZm8ge1xuICBAaW5jbHVkZSBtZWRpYShcIjw9NTAwcHhcIikge1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgfVxuXG4gIGEge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuXG4gIHNwYW4uaGVhcnQge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdGV4dC10b3A7XG4gICAgbWFyZ2luOiAwcHggMnB4IDJweCAycHg7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICB3aWR0aDogMTdweDtcbiAgICBoZWlnaHQ6IDE3cHg7XG5cbiAgICAmLmxhenlsb2FkZWQge1xuICAgICAgYmFja2dyb3VuZDogdXJsKCcvYXBwL3RoZW1lcy90cmF2YS9hc3NldHMvaW1hZ2VzL2hlYXJ0LnN2ZycpIG5vLXJlcGVhdCBjZW50ZXI7XG4gICAgfVxuICB9XG59XG5cbi5nZW5lcmF0ZS1iYWNrLXRvLXRvcCB7XG4gIHotaW5kZXg6IDEwMDA7XG59Il19 */
