/**
 * Usage:
 *
 *   background-color: color(white);
 */
.u-type--light {
  font-weight: 300;
}

.u-type--regular {
  font-weight: 400;
}

.u-type--medium {
  font-weight: 500;
}

.u-type--bold {
  font-weight: 700;
}

/* breakpoints */
.search-results {
  /* breakpoints */
}
.search-results .ttc-loading {
  height: 100px;
  color: #da251d;
  font-size: 90px;
  text-indent: -9999em;
  overflow: hidden;
  width: 1em;
  height: 1em;
  border-radius: 50%;
  margin: 72px auto;
  position: relative;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-animation: load6 1.7s infinite ease, round 1.7s infinite ease;
  animation: load6 1.7s infinite ease, round 1.7s infinite ease;
}
.search-results .u-type--light {
  font-weight: 300;
}
.search-results .u-type--regular {
  font-weight: 400;
}
.search-results .u-type--medium {
  font-weight: 500;
}
.search-results .u-type--bold {
  font-weight: 700;
}
.search-results input {
  border-radius: 0;
}
.search-results .search-result-list {
  padding-top: 5px;
}
.search-results.vertical .search-result-list > li {
  display: inline-block;
  vertical-align: top;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  position: relative;
  width: 100%;
}
.search-results.vertical .search-result-list > li .field-title {
  display: block;
}
.search-results.vertical .search-result-list > li:hover {
  border-bottom: 1px 1px 2px 1px solid #15909c;
}
.search-results.horizontal .search-result-list {
  width: 100%;
}
.search-results.horizontal .search-result-list:after {
  content: "";
  display: table;
  clear: both;
}
.search-results.horizontal .search-result-list > li {
  display: inline-block;
  float: left;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border: 1px 1px 2px 1px solid #d2d2d2;
  position: relative;
  min-height: 120px;
  height: 100%;
  margin: 0 2% 10px 0;
  padding: 5px;
  width: 23%;
}
.search-results.horizontal .search-result-list > li .field-title {
  display: block;
  padding: 0 5px;
  text-align: center;
}
.search-results.horizontal .search-result-list > li .field-title a {
  font-size: 1.8rem;
  line-height: 20px;
  text-decoration: none;
  font-weight: normal;
}
.search-results.horizontal .search-result-list > li:hover {
  border-bottom: 1px 1px 2px 1px solid #15909c;
}
.search-results .search-results-overlay {
  display: none;
}
.search-results.loading-in-progress {
  min-height: 200px;
}
.search-results.loading-in-progress .search-result-overlay {
  background-color: rgba(255, 255, 255, 0.9);
}
.search-results.loading-in-progress .search-result-overlay:after {
  content: "";
  background-image: url(data:image/svg+xml;charset=utf-8;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAzMiAzMiIgd2lkdGg9IjMyIiBoZWlnaHQ9IjMyIiBmaWxsPSJibGFjayI+CiAgPHBhdGggIG9wYWNpdHk9Ii4yNSIgZD0iTTE2IDAgQTE2IDE2IDAgMCAwIDE2IDMyIEExNiAxNiAwIDAgMCAxNiAwIE0xNiA0IEExMiAxMiAwIDAgMSAxNiAyOCBBMTIgMTIgMCAwIDEgMTYgNCIvPgogIDxwYXRoIGZpbGw9JyNkZGRkZGQnIGQ9Ik0xNiAwIEExNiAxNiAwIDAgMSAzMiAxNiBMMjggMTYgQTEyIDEyIDAgMCAwIDE2IDR6Ij4KICAgIDxhbmltYXRlVHJhbnNmb3JtIGF0dHJpYnV0ZU5hbWU9InRyYW5zZm9ybSIgdHlwZT0icm90YXRlIiBmcm9tPSIwIDE2IDE2IiB0bz0iMzYwIDE2IDE2IiBkdXI9IjAuOHMiIHJlcGVhdENvdW50PSJpbmRlZmluaXRlIiAvPgogIDwvcGF0aD4KPC9zdmc+);
  background-size: 100% 100%;
  background-repeat: no-repeat;
  position: absolute;
  width: 50px;
  height: 0px;
  top: 50%;
  left: 0;
  right: 0;
  margin: -30px auto 0;
}
.search-results.loading-more-in-progress:after {
  content: "";
  display: block;
  background-image: url(data:image/svg+xml;charset=utf-8;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAzMiAzMiIgd2lkdGg9IjMyIiBoZWlnaHQ9IjMyIiBmaWxsPSJibGFjayI+DQogIDxwYXRoICBvcGFjaXR5PSIuMjUiIGQ9Ik0xNiAwIEExNiAxNiAwIDAgMCAxNiAzMiBBMTYgMTYgMCAwIDAgMTYgMCBNMTYgNCBBMTIgMTIgMCAwIDEgMTYgMjggQTEyIDEyIDAgMCAxIDE2IDQiLz4NCiAgPHBhdGggZmlsbD0nIzFhODBiNicgZD0iTTE2IDAgQTE2IDE2IDAgMCAxIDMyIDE2IEwyOCAxNiBBMTIgMTIgMCAwIDAgMTYgNHoiPg0KICAgIDxhbmltYXRlVHJhbnNmb3JtIGF0dHJpYnV0ZU5hbWU9InRyYW5zZm9ybSIgdHlwZT0icm90YXRlIiBmcm9tPSIwIDE2IDE2IiB0bz0iMzYwIDE2IDE2IiBkdXI9IjAuOHMiIHJlcGVhdENvdW50PSJpbmRlZmluaXRlIiAvPg0KICA8L3BhdGg+DQo8L3N2Zz4NCg==);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: 50% 50%;
  height: 100px;
}
.search-results .no-results {
  padding: 5px;
}

.c-news-results li {
  border-bottom: 1px solid #767676;
  padding-bottom: calc(32px - 1px);
  margin-bottom: 32px;
}
.c-news-results li:last-child {
  margin-bottom: 0;
}

.c-news-results__date {
  font-family: Verdana, Tahoma, sans-serif;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-size: 1.6rem;
  line-height: 20px;
  font-style: normal;
  font-weight: 400;
  color: #4a4a4a;
}
@media ( min-width: 768px ) {
  .c-news-results__date {
    font-size: 1.6rem;
    line-height: 24px;
  }
}

.c-news-results__text a {
  font-family: Verdana, Tahoma, sans-serif;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-size: 1.8rem;
  line-height: 24px;
  font-style: normal;
  font-weight: 700;
  color: #0070cd;
  text-decoration: none;
}
@media ( min-width: 768px ) {
  .c-news-results__text a {
    font-size: 2rem;
    line-height: 24px;
  }
}
.c-news-results__text a:hover, .c-news-results__text a:active {
  text-decoration: underline;
}

.c-service-advisories a {
  font-family: Verdana, Tahoma, sans-serif;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-size: 1.8rem;
  line-height: 24px;
  font-style: normal;
  font-weight: 700;
  color: #000000;
  text-decoration: none;
}
@media ( min-width: 768px ) {
  .c-service-advisories a {
    font-size: 2rem;
    line-height: 24px;
  }
}
.c-service-advisories a:hover, .c-service-advisories a:active {
  color: #0070cd;
  text-decoration: underline;
}
.c-service-advisories .field-routename {
  text-transform: capitalize;
}
.c-service-advisories .field-route::after {
  content: " ";
  display: inline;
}
.c-service-advisories .sa-dash::after, .c-service-advisories .sa-dash::before {
  content: " ";
  display: inline;
}

.c-blogs-results .blog-container {
  padding: 30px 0;
  display: -webkit-box;
  display: flex;
  gap: 30px;
  border-bottom: 1px solid #9c9c9c;
}
@media (max-width: 800px) {
  .c-blogs-results .blog-container {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
            flex-direction: column;
  }
}
.c-blogs-results .blog-text-wrapper {
  display: -webkit-box;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
          flex-direction: column;
  gap: 20px;
  -webkit-box-flex: 1;
          flex: 1;
}
.c-blogs-results .blog-image {
  -webkit-box-flex: 1;
          flex: 1;
}
.c-blogs-results .blog-image img {
  border-radius: 5px;
}
.c-blogs-results .blog-link a {
  color: #0070cd;
  font-weight: 400;
  text-decoration: none;
  font-size: 1.6rem;
  display: -webkit-inline-box;
  display: inline-flex;
  -webkit-box-align: center;
          align-items: center;
}
.c-blogs-results .blog-link a::after {
  content: "";
  margin-left: 8px;
  height: 20px;
  width: 20px;
  bottom: 3px;
  background-image: url(/-/media/Project/TTC/DevProto/Icons/arrow-background-right-outline.svg);
  background-size: cover;
  -webkit-transition: all 0.2s ease;
  transition: all 0.2s ease;
}
.c-blogs-results .blog-link a:hover {
  color: #1f5aa5;
}
.c-blogs-results .blog-link a:hover::after {
  -webkit-transform: translateX(3px);
          transform: translateX(3px);
  border-color: #1f5aa5;
}
.c-blogs-results .blog-title {
  font-weight: bold;
}
.c-blogs-results .blog-description {
  font-size: 0.8em;
}

.c-news-results__description {
  font-family: Verdana, Tahoma, sans-serif;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-size: 1.8rem;
  line-height: 28px;
  font-style: normal;
  font-weight: 300;
  color: #4a4a4a;
}
@media ( min-width: 768px ) {
  .c-news-results__description {
    font-size: 2rem;
    line-height: 32px;
  }
}

.c-news-results__tags > a,
.c-news-results__tags > div {
  border: 1px solid #0070cd;
  display: inline-block;
  color: #0070cd;
  padding: 3.2px 8px;
  margin: 0 16px 16px 0;
  -webkit-transition: all 300ms ease-in-out;
  transition: all 300ms ease-in-out;
  font-family: Verdana, Tahoma, sans-serif;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-size: 1.6rem;
  line-height: 24px;
  font-style: normal;
  font-weight: 400;
  text-decoration: none;
}
.c-news-results__tags > a:hover, .c-news-results__tags > a:focus, .c-news-results__tags > a:active,
.c-news-results__tags > div:hover,
.c-news-results__tags > div:focus,
.c-news-results__tags > div:active {
  color: #ffffff;
  background-color: #0070cd;
}
@media (min-width: 768px) {
  .c-news-results__tags > a,
  .c-news-results__tags > div {
    margin: 0 8px 8px 0;
  }
}

.c-search-results {
  padding-top: 40px;
}
@media (min-width: 768px) {
  .c-search-results > .component-content {
    margin-left: calc(8.3333333333% + 6px) !important;
    margin-right: calc(12.5% + 6px) !important;
  }
}
.c-search-results .sa-title:focus {
  border: dotted 2px black;
}
@media (min-width: 1225px) {
  .c-search-results > .component-content {
    margin: 0 auto;
    margin-left: calc(16.6666666667% + 6px) !important;
    margin-right: calc(25% + 6px) !important;
  }
}
.c-search-results .search-term {
  font-family: Verdana, Tahoma, sans-serif;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-size: 2.1rem;
  line-height: 28px;
  font-style: normal;
  font-weight: 700;
}
@media ( min-width: 768px ) {
  .c-search-results .search-term {
    font-size: 2.4rem;
    line-height: 30px;
  }
}
.c-search-results .search-term span {
  font-style: italic;
}
.c-search-results .results {
  font-family: Verdana, Tahoma, sans-serif;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-size: 1.6rem;
  line-height: 24px;
  font-style: normal;
  font-weight: 400;
  margin-bottom: 30px;
  margin-top: 5px;
}
@media ( min-width: 768px ) {
  .c-search-results .results {
    font-size: 1.6rem;
    line-height: 16px;
  }
}
.c-search-results .item-name {
  font-family: Verdana, Tahoma, sans-serif;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-size: 1.8rem;
  line-height: 28px;
  font-style: normal;
  font-weight: 300;
  font-weight: 700 !important;
  color: #000;
  text-decoration: none;
}
@media ( min-width: 768px ) {
  .c-search-results .item-name {
    font-size: 2rem;
    line-height: 32px;
  }
}
.c-search-results .item-name:hover {
  color: #0070cd;
  text-decoration: underline;
}
.c-search-results .item-snippet {
  font-family: Verdana, Tahoma, sans-serif;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-size: 1.6rem;
  line-height: 24px;
  font-style: normal;
  font-weight: 400;
  font-weight: 300 !important;
  color: #4a4a4a;
}
.c-search-results .item-url {
  font-family: Verdana, Tahoma, sans-serif;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-size: 1.6rem;
  line-height: 24px;
  font-style: normal;
  font-weight: 400;
}
.c-search-results .item-url a {
  color: #0070cd;
  text-decoration: none;
  overflow-wrap: break-word;
  word-wrap: break-word;
  word-break: break-word;
}
.c-search-results .item-url a:hover {
  text-decoration: underline;
}
.c-search-results .each-result {
  margin-bottom: 20px;
}
.c-search-results .pagination {
  display: -webkit-box;
  display: flex;
  max-width: 70%;
  -webkit-box-pack: justify;
          justify-content: space-between;
  margin-top: 40px;
}
.c-search-results .pagination a {
  font-family: Verdana, Tahoma, sans-serif;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-size: 1.8rem;
  line-height: 28px;
  font-style: normal;
  font-weight: 500;
  color: #0070cd;
  text-decoration: none;
}
@media ( min-width: 768px ) {
  .c-search-results .pagination a {
    font-size: 2rem;
    line-height: 32px;
  }
}
.c-search-results .pagination a:hover {
  text-decoration: underline;
}
.c-search-results .pagination .active a {
  color: #4a4a4a;
}
/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFic3RyYWN0cy9mdW5jdGlvbnMvX2NvbG9yLnNjc3MiLCJhYnN0cmFjdHMvdmFycy9fdHlwZS5zY3NzIiwiY29tcG9uZW50LXNlYXJjaC1yZXN1bHRzLmNzcyIsImFic3RyYWN0cy9fbWl4aW5zLnNjc3MiLCJjb21wb25lbnQtc2VhcmNoLXJlc3VsdHMuc2NzcyIsImJhc2UvcmVzZXQvaW5wdXRzLnNjc3MiLCJjb21tb24tdWkvdHlwb2dyYXBoeS9fbWl4aW5zLnNjc3MiLCIuLi9ub2RlX21vZHVsZXMvaW90YWNzcy9tb2R1bGVzL2lvdGFjc3MtdG9vbHMtY29yZS91dGlsaXRpZXMvX2V4dHJhY3QtdHlwZS1zaXplcy5zY3NzIiwiLi4vbm9kZV9tb2R1bGVzL2lvdGFjc3MvbW9kdWxlcy9pb3RhY3NzLXRvb2xzLWNvcmUvbGlicmFyaWVzL19nZW5lcmF0ZS10eXBlLXNpemVzLnNjc3MiLCJhYnN0cmFjdHMvbWl4aW5zL190YWcuc2NzcyIsImFic3RyYWN0cy92YXJzL190cmFuc2l0aW9ucy5zY3NzIiwiYWJzdHJhY3RzL21peGlucy9fc2Fzcy1tcS1tb2Quc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7OztFQUFBO0FDa1FFO0VBQ0UsZ0JBQUE7QUM1UEo7O0FEMlBFO0VBQ0UsZ0JBQUE7QUN4UEo7O0FEdVBFO0VBQ0UsZ0JBQUE7QUNwUEo7O0FEbVBFO0VBQ0UsZ0JBQUE7QUNoUEo7O0FDTkEsZ0JBQUE7QUNaQTtFRFlBLGdCQUFBO0FEV0E7QUV0Qkk7RUFDSSxhQUFBO0VBQ0EsY0FBQTtFQUNBLGVBQUE7RUFDQSxvQkFBQTtFQUNBLGdCQUFBO0VBQ0EsVUFBQTtFQUNBLFdBQUE7RUFDQSxrQkFBQTtFQUNBLGlCQUFBO0VBQ0Esa0JBQUE7RUFDQSxnQ0FBQTtFQUVBLHdCQUFBO0VBQ0EscUVBQUE7RUFDQSw2REFBQTtBRndCUjtBRHlORTtFQUNFLGdCQUFBO0FDdk5KO0FEc05FO0VBQ0UsZ0JBQUE7QUNwTko7QURtTkU7RUFDRSxnQkFB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RUFDQSxtQ0FBQTtFQ0hFLGlCQUFBO0VBQ0EsaUJBQUE7RURrQkUsa0JBQUE7RUFBQSxnQkFBQTtFRmlUQSxjQUFBO0VBQ0EscUJBQUE7QUYwSE47QU1wYlE7RUp1VEo7SUdsVUEsZUFBQTtJQUNBLGlCQUFBO0VMbWNGO0FBQ0Y7QUUvSE07RUFDRSwwQkFBQTtBRmlJUjtBRTlISTtFQUNFLGNBQUE7QUZnSU4iLCJmaWxlIjoiY29tcG9uZW50LXNlYXJjaC1yZXN1bHRzLmNzcyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxyXG4gKiBVc2FnZTpcclxuICpcclxuICogICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcih3aGl0ZSk7XHJcbiAqL1xyXG4kY29sb3JzOiAoKSAhZGVmYXVsdDtcclxuJGZ1bmN0aW9uYWwtY29sb3JzOiAoKSAhZGVmYXVsdDtcclxuXHJcbkBmdW5jdGlvbiBjb2xvcigkY29sb3IpIHtcclxuICBAaWYgbWFwLWdldCgkY29sb3JzLCAkY29sb3IpIHtcclxuICAgIEByZXR1cm4gbWFwLWdldCgkY29sb3JzLCAkY29sb3IpO1xyXG4gIH0gQGVsc2UgaWYgbWFwLWdldCgkZnVuY3Rpb25hbC1jb2xvcnMsICRjb2xvcikge1xyXG4gICAgQHJldHVybiBtYXAtZ2V0KCRmdW5jdGlvbmFsLWNvbG9ycywgJGNvbG9yKTtcclxuICB9IEBlbHNlIHtcclxuICAgIC8qIFN0eWxlZm10IGNoYW5nZXMgdGhlIHF1b3RlcyBldmVyeSB0aW1lLCBzbyB0dXJuaW5nIG9mZiB0aGUgZXJyb3IgaGVyZSAqL1xyXG4gICAgLyogc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHN0cmluZy1xdW90ZXMgKi9cclxuICAgIEBlcnJvciBcIkNvbG9yIFxcXCIjeyRjb2xvcn1cXFwiY291bGQgbm90IGJlIGZvdW5kXCI7XHJcbiAgfVxyXG59XHJcbiIsIiR1aS10eXBvZ3JhcGh5LXN0YWNrLWRlZmF1bHQ6IFZlcmRhbmEsIFRhaG9tYSwgc2Fucy1zZXJpZiAhZGVmYXVsdDtcclxuXHJcbiR1aS10eXBvZ3JhcGh5LXN0YWNrLWhlYWRpbmdzOiBWZXJkYW5hLCBUYWhvbWEsIHNhbnMtc2VyaWYgIWRlZmF1bHQ7XHJcblxyXG4kdWktdHlwb2dyYXBoeS1mb250LXdlaWdodHM6IChcclxuICAvLyB0aGluOiAxMDAsXHJcbiAgbGlnaHQ6IDMwMCxcclxuICByZWd1bGFyOiA0MDAsXHJcbiAgbWVkaXVtOiA1MDAsXHJcbiAgYm9sZDogNzAwLFxyXG4gIC8vIGJsYWNrOiA5MDBcclxuKSAhZGVmYXVsdDtcclxuXHJcbiR1aS10eXBvZ3JhcGh5LWRlZmF1bHQ6IChcclxuICBmb250LWZhbWlseTogJHVpLXR5cG9ncmFwaHktc3RhY2stZGVmYXVsdCxcclxuICBmb250LXN0eWxlOiBub3JtYWwsXHJcbiAgZm9udC13ZWlnaHQ6IG1hcC1nZXQoJHVpLXR5cG9ncmFwaHktZm9udC13ZWlnaHRzLCBtZWRpdW0pLFxyXG4gIG1hcmdpbjogMCxcclxuKSAhZGVmYXVsdDtcclxuXHJcblxyXG4kdWktdHlwb2dyYXBoeS1zdHlsZXM6IChcclxuICAvL2hvbWVwYWdlIGhlYWRlclxyXG4gIGQ2LWxoLWxnOiAoXHJcbiAgICBzaXplczogKFxyXG4gICAgICBudWxsOiAoZ2V0LXJlbSgzMnB4KSwgNDBweCksXHJcbiAgICAgIG1kOiAoZ2V0LXJlbSg2MXB4KSwgNzZweCksXHJcbiAgICApLFxyXG4gICAgZm9udC1mYW1pbHk6ICR1aS10eXBvZ3JhcGh5LXN0YWNrLWhlYWRpbmdzLFxyXG4gICAgZm9udC13ZWlnaHQ6IG1hcC1nZXQoJHVpLXR5cG9ncmFwaHktZm9udC13ZWlnaHRzLCBib2xkKSxcclxuICAgIG1hcmdpbjogMCAwIHNwYWNlKCkgMCxcclxuICApLFxyXG4gIGQ2OiAoXHJcbiAgICBzaXplczogKFxyXG4gICAgICBudWxsOiAoZ2V0LXJlbSgzMnB4KSwgNDBweCksXHJcbiAgICAgIG1kOiAoZ2V0LXJlbSg1MHB4KSwgNTZweCksXHJcbiAgICApLFxyXG4gICAgZm9udC1mYW1pbHk6ICR1aS10eXBvZ3JhcGh5LXN0YWNrLWhlYWRpbmdzLFxyXG4gICAgZm9udC13ZWlnaHQ6IG1hcC1nZXQoJHVpLXR5cG9ncmFwaHktZm9udC13ZWlnaHRzLCBib2xkKSxcclxuICAgIG1hcmdpbjogMCAwIHNwYWNlKCkgMCxcclxuICApLFxyXG4gIGQ1OiAoXHJcbiAgICBzaXplczogKFxyXG4gICAgICBudWxsOiAoZ2V0LXJlbSgyOXB4KSwgMzZweCksXHJcbiAgICAgIG1kOiAoZ2V0LXJlbSg0MXB4KSwgNDRweCksXHJcbiAgICApLFxyXG4gICAgZm9udC1mYW1pbHk6ICR1aS10eXBvZ3JhcGh5LXN0YWNrLWhlYWRpbmdzLFxyXG4gICAgZm9udC13ZWlnaHQ6IG1hcC1nZXQoJHVpLXR5cG9ncmFwaHktZm9udC13ZWlnaHRzLCBib2xkKSxcclxuICAgIG1hcmdpbjogMCAwIHNwYWNlKCkgMCxcclxuICApLFxyXG4gIGQ1LWxpZ2h0OiAoXHJcbiAgICBzaXplczogKFxyXG4gICAgICBudWxsOiAoZ2V0LXJlbSgyOXB4KSwgMzZweCksXHJcbiAgICAgIG1kOiAoZ2V0LXJlbSg0MXB4KSwgNDRweCksXHJcbiAgICApLFxyXG4gICAgZm9udC1mYW1pbHk6ICR1aS10eXBvZ3JhcGh5LXN0YWNrLWhlYWRpbmdzLFxyXG4gICAgZm9udC13ZWlnaHQ6IG1hcC1nZXQoJHVpLXR5cG9ncmFwaHktZm9udC13ZWlnaHRzLGxpZ2h0KSxcclxuICAgIG1hcmdpbjogMCAwIHNwYWNlKCkgMCxcclxuICApLFxyXG4gIGQ0OiAoXHJcbiAgICBzaXplczogKFxyXG4gICAgICBudWxsOiAoZ2V0LXJlbSgyNnB4KSwgMzJweCksXHJcbiAgICAgIG1kOiAoZ2V0LXJlbSgzNHB4KSwgNDBweCksXHJcbiAgICApLFxyXG4gICAgZm9udC1mYW1pbHk6ICR1aS10eXBvZ3JhcGh5LXN0YWNrLWhlYWRpbmdzLFxyXG4gICAgZm9udC13ZWlnaHQ6IG1hcC1nZXQoJHVpLXR5cG9ncmFwaHktZm9udC13ZWlnaHRzLCBib2xkKSxcclxuICAgIG1hcmdpbjogMCAwIHNwYWNlKCkgMCxcclxuICApLFxyXG4gIGQzOiAoXHJcbiAgICBzaXplczogKFxyXG4gICAgICBudWxsOiAoZ2V0LXJlbSgyM3B4KSwgMjhweCksXHJcbiAgICAgIG1kOiAoZ2V0LXJlbSgyOHB4KSwgMzZweCksXHJcbiAgICApLFxyXG4gICAgZm9udC1mYW1pbHk6ICR1aS10eXBvZ3JhcGh5LXN0YWNrLWhlYWRpbmdzLFxyXG4gICAgZm9udC13ZWlnaHQ6IG1hcC1nZXQoJHVpLXR5cG9ncmFwaHktZm9udC13ZWlnaHRzLCBib2xkKSxcclxuICAgIG1hcmdpbjogMCAwIHNwYWNlKCkgMCxcclxuICApLFxyXG4gIGQyOiAoXHJcbiAgICBzaXplczogKFxyXG4gICAgICBudWxsOiAoZ2V0LXJlbSgyMXB4KSwgMjhweCksXHJcbiAgICAgIG1kOiAoZ2V0LXJlbSgyNHB4KSwgMzBweCksXHJcbiAgICApLFxyXG4gICAgZm9udC1mYW1pbHk6ICR1aS10eXBvZ3JhcGh5LXN0YWNrLWhlYWRpbmdzLFxyXG4gICAgZm9udC13ZWlnaHQ6IG1hcC1nZXQoJHVpLXR5cG9ncmFwaHktZm9udC13ZWlnaHRzLCBib2xkKSxcclxuICAgIG1hcmdpbjogMCAwIHNwYWNlKCkgMCxcclxuICApLFxyXG4gIGQxOiAoXHJcbiAgICBzaXplczogKFxyXG4gICAgICBudWxsOiAoZ2V0LXJlbSgxOHB4KSwgMjRweCksXHJcbiAgICAgIG1kOiAoZ2V0LXJlbSgyMHB4KSwgMjRweCksXHJcbiAgICApLFxyXG4gICAgZm9udC1mYW1pbHk6ICR1aS10eXBvZ3JhcGh5LXN0YWNrLWhlYWRpbmdzLFxyXG4gICAgZm9udC13ZWlnaHQ6IG1hcC1nZXQoJHVpLXR5cG9ncmFwaHktZm9udC13ZWlnaHRzLCBib2xkKSxcclxuICAgIG1hcmdpbjogMCAwIHNwYWNlKCkgMCxcclxuICApLFxyXG4gIGgyc3o6IChcclxuICAgIHNpemVzOiAyLjlyZW0sXHJcbiAgICBmb250LWZhbWlseTogJHVpLXR5cG9ncmFwaHktc3RhY2staGVhZGluZ3MsXHJcbiAgICBmb250LXdlaWdodDogbWFwLWdldCgkdWktdHlwb2dyYXBoeS1mb250LXdlaWdodHMsIGJvbGQpLFxyXG4gICAgbWFyZ2luOiAwIDAgc3BhY2UoKSAwLFxyXG4gICksXHJcbiAgaDNzejogKFxyXG4gICAgc2l6ZXM6IDIuMnJlbSxcclxuICAgIGZvbnQtZmFtaWx5OiAkdWktdHlwb2dyYXBoeS1zdGFjay1oZWFkaW5ncyxcclxuICAgIGZvbnQtd2VpZ2h0OiBtYXAtZ2V0KCR1aS10eXBvZ3JhcGh5LWZvbnQtd2VpZ2h0cywgYm9sZCksXHJcbiAgICBtYXJnaW46IDAgMCBzcGFjZSgpIDAsXHJcbiAgKSxcclxuXHJcbiAgaDRzejogKFxyXG4gICAgc2l6ZXM6IDEuN3JlbSxcclxuICAgIGZvbnQtZmFtaWx5OiAkdWktdHlwb2dyYXBoeS1zdGFjay1oZWFkaW5ncyxcclxuICAgIGZvbnQtd2VpZ2h0OiBtYXAtZ2V0KCR1aS10eXBvZ3JhcGh5LWZvbnQtd2VpZ2h0cywgYm9sZCksXHJcbiAgICBtYXJnaW46IDAgMCBzcGFjZSgpIDAsXHJcbiAgKSxcclxuICBoNXN6OiAoXHJcbiAgICBzaXplczogMi40cmVtLFxyXG4gICAgZm9udC1mYW1pbHk6ICR1aS10eXBvZ3JhcGh5LXN0YWNrLWhlYWRpbmdzLFxyXG4gICAgZm9udC13ZWlnaHQ6IG1hcC1nZXQoJHVpLXR5cG9ncmFwaHktZm9udC13ZWlnaHRzLCBib2xkKSxcclxuICAgIG1hcmdpbjogMCAwIHNwYWNlKCkgMCxcclxuICApLFxyXG4gIGxlYWQ6IChcclxuICAgIHNpemVzOiAoXHJcbiAgICAgIG51bGw6IChnZXQtcmVtKDIycHgpLCAzMnB4KSxcclxuICAgICAgbWQ6IChnZXQtcmVtKDI0cHgpLCAzNnB4KSxcclxuICAgICksXHJcbiAgICBmb250LWZhbWlseTogJHVpLXR5cG9ncmFwaHktc3RhY2staGVhZGluZ3MsXHJcbiAgICBmb250LXdlaWdodDogbWFwLWdldCgkdWktdHlwb2dyYXBoeS1mb250LXdlaWdodHMsIHJlZ3VsYXIpLFxyXG4gICAgZm9udC1zdHlsZTogaXRhbGljLFxyXG4gICAgbWFyZ2luOiAwIDAgc3BhY2UoKSAwLFxyXG4gICksXHJcbiAgZC1zbWFsbDogKFxyXG4gICAgc2l6ZXM6IChcclxuICAgICAgbnVsbDogKGdldC1yZW0oMThweCksIDI4cHgpLFxyXG4gICAgICBtZDogKGdldC1yZW0oMTZweCksIDI0cHgpLFxyXG4gICAgKSxcclxuICAgIGZvbnQtZmFtaWx5OiAkdWktdHlwb2dyYXBoeS1zdGFjay1oZWFkaW5ncyxcclxuICAgIGZvbnQtd2VpZ2h0OiBtYXAtZ2V0KCR1aS10eXBvZ3JhcGh5LWZvbnQtd2VpZ2h0cywgYm9sZCksXHJcbiAgKSxcclxuICBkLXhzbWFsbDogKFxyXG4gICAgc2l6ZXM6IChcclxuICAgICAgbnVsbDogKGdldC1yZW0oMTZweCksIDI0cHgpLFxyXG4gICAgICBtZDogKGdldC1yZW0oMTZweCksIDE2cHgpLFxyXG4gICAgKSxcclxuICAgIGZvbnQtd2VpZ2h0OiBtYXAtZ2V0KCR1aS10eXBvZ3JhcGh5LWZvbnQtd2VpZ2h0cywgcmVndWxhciksXHJcbiAgKSxcclxuICBib2R5OiAoXHJcbiAgICBzaXplczogKFxyXG4gICAgICBudWxsOiAoZ2V0LXJlbSgxOHB4KSwgMjhweCksXHJcbiAgICAgIG1kOiAoZ2V0LXJlbSgyMHB4KSwgMzJweCksXHJcbiAgICApLFxyXG4gICAgZm9udC13ZWlnaHQ6IG1hcC1nZXQoJHVpLXR5cG9ncmFwaHktZm9udC13ZWlnaHRzLCBsaWdodCksXHJcbiAgKSxcclxuICBib2R5MjogKFxyXG4gICAgc2l6ZXM6IChcclxuICAgICAgbnVsbDogKGdldC1yZW0oMThweCksIDI4cHgpLFxyXG4gICAgICBtZDogKGdldC1yZW0oMjBweCksIDMycHgpLFxyXG4gICAgKSxcclxuICAgIGZvbnQtd2VpZ2h0OiBtYXAtZ2V0KCR1aS10eXBvZ3JhcGh5LWZvbnQtd2VpZ2h0cywgbWVkaXVtKSxcclxuICApLFxyXG4gIGxpbms6IChcclxuICAgIHNpemVzOiAoXHJcbiAgICAgIG51bGw6IChnZXQtcmVtKDE4cHgpLCAyOHB4KSxcclxuICAgICAgbWQ6IChnZXQtcmVtKDIwcHgpLCAzMnB4KSxcclxuICAgICksXHJcbiAgICBmb250LXdlaWdodDogbWFwLWdldCgkdWktdHlwb2dyYXBoeS1mb250LXdlaWdodHMsIHJlZ3VsYXIpLFxyXG4gICksXHJcbiAgZGF0ZTogKFxyXG4gICAgc2l6ZXM6IChcclxuICAgICAgbnVsbDogKGdldC1yZW0oMTZweCksIDIwcHgpLFxyXG4gICAgICBtZDogKGdldC1yZW0oMTZweCksIDI0cHgpLFxyXG4gICAgKSxcclxuICAgIGZvbnQtd2VpZ2h0OiBtYXAtZ2V0KCR1aS10eXBvZ3JhcGh5LWZvbnQtd2VpZ2h0cywgcmVndWxhciksXHJcbiAgKSxcclxuICBoZWFkZXI6IChcclxuICAgIHNpemVzOiAoXHJcbiAgICAgIG51bGw6IChnZXQtcmVtKDE2cHgpLCAyMHB4KSxcclxuICAgICAgbWQ6IChnZXQtcmVtKDIwcHgpLCAzMnB4KSxcclxuICAgICksXHJcbiAgICBmb250LXdlaWdodDogbWFwLWdldCgkdWktdHlwb2dyYXBoeS1mb250LXdlaWdodHMsIG1lZGl1bSksXHJcbiAgKSxcclxuICBzdWJoZWFkZXI6IChcclxuICAgIHNpemVzOiAoXHJcbiAgICAgIG51bGw6IChnZXQtcmVtKDE4cHgpLCAyOHB4KSxcclxuICAgICAgbWQ6IChnZXQtcmVtKDIwcHgpLCAzMnB4KSxcclxuICAgICksXHJcbiAgICBmb250LXdlaWdodDogbWFwLWdldCgkdWktdHlwb2dyYXBoeS1mb250LXdlaWdodHMsIG1lZGl1bSksXHJcbiAgKSxcclxuICBzaXRlLXNlYXJjaDogKFxyXG4gICAgc2l6ZXM6IChcclxuICAgICAgbnVsbDogKGdldC1yZW0oMjBweCksIDMycHgpLFxyXG4gICAgICBzbTogKGdldC1yZW0oMTZweCksIDI0cHgpLFxyXG4gICAgKSxcclxuICAgIGZvbnQtd2VpZ2h0OiBtYXAtZ2V0KCR1aS10eXBvZ3JhcGh5LWZvbnQtd2VpZ2h0cywgcmVndWxhciksXHJcbiAgKSxcclxuICBpbnB1dDogKFxyXG4gICAgc2l6ZXM6IChcclxuICAgICAgbnVsbDogKGdldC1yZW0oMThweCksIDI4cHgpLFxyXG4gICAgICBtZDogKGdldC1yZW0oMTZweCksIDI0cHgpLFxyXG4gICAgKSxcclxuICAgIGZvbnQtd2VpZ2h0OiBtYXAtZ2V0KCR1aS10eXBvZ3JhcGh5LWZvbnQtd2VpZ2h0cywgcmVndWxhciksXHJcbiAgKSxcclxuICBicmVhZGNydW1iOiAoXHJcbiAgICBzaXplczogIChnZXQtcmVtKDE2cHgpLCAyNHB4KSxcclxuICAgIGZvbnQtd2VpZ2h0OiBtYXAtZ2V0KCR1aS10eXBvZ3JhcGh5LWZvbnQtd2VpZ2h0cywgcmVndWxhciksXHJcbiAgKSxcclxuICBmZWF0dXJlZDogKFxyXG4gICAgc2l6ZXM6ICAoZ2V0LXJlbSgxOHB4KSwgMjhweCksXHJcbiAgKSxcclxuICBjb3B5cmlnaHQ6IChcclxuICAgIHNpemVzOiAoXHJcbiAgICAgIG51bGw6IChnZXQtcmVtKDE0cHgpLCAyOHB4KSxcclxuICAgICAgbWQ6IChnZXQtcmVtKDEzcHgpLCAyNHB4KSxcclxuICAgICksXHJcbiAgICBmb250LXdlaWdodDogbWFwLWdldCgkdWktdHlwb2dyYXBoeS1mb250LXdlaWdodHMsIHJlZ3VsYXIpLFxyXG4gICksXHJcbiAgY2FwdGlvbjogKFxyXG4gICAgc2l6ZXM6IChnZXQtcmVtKDE2cHgpLCAyNHB4KSxcclxuICApLFxyXG4gIGZvcm0tbGFiZWw6IChcclxuICAgIHNpemVzOiAoXHJcbiAgICAgIG51bGw6IChnZXQtcmVtKDE4cHgpLCAyOHB4KSxcclxuICAgICAgbWQ6IChnZXQtcmVtKDE2cHgpLCAyNHB4KSxcclxuICAgICksXHJcbiAgICBmb250LXdlaWdodDogbWFwLWdldCgkdWktdHlwb2dyYXBoeS1mb250LXdlaWdodHMsIG1lZGl1bSksXHJcbiAgKSxcclxuICBmb3JtLWhlbHBlcjogKFxyXG4gICAgc2l6ZXM6IChcclxuICAgICAgbnVsbDogKGdldC1yZW0oMThweCksIDI4cHgpLFxyXG4gICAgICBtZDogKGdldC1yZW0oMTZweCksIDI0cHgpLFxyXG4gICAgKSxcclxuICAgIGZvbnQtd2VpZ2h0OiBtYXAtZ2V0KCR1aS10eXBvZ3JhcGh5LWZvbnQtd2VpZ2h0cywgcmVndWxhciksXHJcbiAgKSxcclxuICBwZGY6IChcclxuICAgIHNpemVzOiAoZ2V0LXJlbSgxNnB4KSwgMjRweCksXHJcbiAgICBmb250LXdlaWdodDogbWFwLWdldCgkdWktdHlwb2dyYXBoeS1mb250LXdlaWdodHMsIGxpZ2h0KSxcclxuICApLFxyXG4gIG1hcC1yZXN1bHRzOiAoXHJcbiAgICBzaXplczogKGdldC1yZW0oMTZweCksIDIwcHgpLFxyXG4gICAgZm9udC13ZWlnaHQ6IG1hcC1nZXQoJHVpLXR5cG9ncmFwaHktZm9udC13ZWlnaHRzLCBsaWdodCksXHJcbiAgKSxcclxuICBiZXRhLW5vdGljZTogKFxyXG4gICAgc2l6ZXM6IChnZXQtcmVtKDE2cHgpLCAyNHB4KSxcclxuICAgIGZvbnQtd2VpZ2h0OiBtYXAtZ2V0KCR1aS10eXBvZ3JhcGh5LWZvbnQtd2VpZ2h0cywgbWVkaXVtKSxcclxuICApLFxyXG4gIHNpdGUtd2lkZS1hbGVydDogKFxyXG4gICAgc2l6ZXM6IChnZXQtcmVtKDE2cHgpLCAyNHB4KSxcclxuICAgIGZvbnQtd2VpZ2h0OiBtYXAtZ2V0KCR1aS10eXBvZ3JhcGh5LWZvbnQtd2VpZ2h0cywgbWVkaXVtKSxcclxuICApLFxyXG4pICFkZWZhdWx0O1xyXG5cclxuXHJcbkBlYWNoICRuYW1lLCAkc3R5bGUgaW4gJHVpLXR5cG9ncmFwaHktc3R5bGVzIHtcclxuICAkdWktdHlwb2dyYXBoeS1zdHlsZXM6IG1hcC1tZXJnZSgkdWktdHlwb2dyYXBoeS1zdHlsZXMsIChcclxuICAgICN7JG5hbWV9OiBtYXAtbWVyZ2UoJHVpLXR5cG9ncmFwaHktZGVmYXVsdCwgJHN0eWxlKVxyXG4gICkpO1xyXG59XHJcblxyXG5AZWFjaCAkbmFtZSwgJHN0eWxlIGluICR1aS10eXBvZ3JhcGh5LWZvbnQtd2VpZ2h0cyB7XHJcbiAgLnUtdHlwZS0tI3skbmFtZX0ge1xyXG4gICAgZm9udC13ZWlnaHQ6ICN7JHN0eWxlfTtcclxuICB9XHJcbn1cclxuXHJcblxyXG5cclxuXHJcblxyXG4iLCIvKipcbiAqIFVzYWdlOlxuICpcbiAqICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3Iod2hpdGUpO1xuICovXG4udS10eXBlLS1saWdodCB7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG59XG5cbi51LXR5cGUtLXJlZ3VsYXIge1xuICBmb250LXdlaWdodDogNDAwO1xufVxuXG4udS10eXBlLS1tZWRpdW0ge1xuICBmb250LXdlaWdodDogNTAwO1xufVxuXG4udS10eXBlLS1ib2xkIHtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbn1cblxuLyogYnJlYWtwb2ludHMgKi9cbi5zZWFyY2gtcmVzdWx0cyB7XG4gIC8qIGJyZWFrcG9pbnRzICovXG59XG4uc2VhcmNoLXJlc3VsdHMgLnR0Yy1sb2FkaW5nIHtcbiAgaGVpZ2h0OiAxMDBweDtcbiAgY29sb3I6ICNkYTI1MWQ7XG4gIGZvbnQtc2l6ZTogOTBweDtcbiAgdGV4dC1pbmRlbnQ6IC05OTk5ZW07XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHdpZHRoOiAxZW07XG4gIGhlaWdodDogMWVtO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIG1hcmdpbjogNzJweCBhdXRvO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG4gIC13ZWJraXQtYW5pbWF0aW9uOiBsb2FkNiAxLjdzIGluZmluaXRlIGVhc2UsIHJvdW5kIDEuN3MgaW5maW5pdGUgZWFzZTtcbiAgYW5pbWF0aW9uOiBsb2FkNiAxLjdzIGluZmluaXRlIGVhc2UsIHJvdW5kIDEuN3MgaW5maW5pdGUgZWFzZTtcbn1cbi5zZWFyY2gtcmVzdWx0cyAudS10eXBlLS1saWdodCB7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG59XG4uc2VhcmNoLXJlc3VsdHMgLnUtdHlwZS0tcmVndWxhciB7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG59XG4uc2VhcmNoLXJlc3VsdHMgLnUtdHlwZS0tbWVkaXVtIHtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbn1cbi5zZWFyY2gtcmVzdWx0cyAudS10eXBlLS1ib2xkIHtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbn1cbi5zZWFyY2gtcmVzdWx0cyBpbnB1dCB7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG4uc2VhcmNoLXJlc3VsdHMgLnNlYXJjaC1yZXN1bHQtbGlzdCB7XG4gIHBhZGRpbmctdG9wOiA1cHg7XG59XG4uc2VhcmNoLXJlc3VsdHMudmVydGljYWwgLnNlYXJjaC1yZXN1bHQtbGlzdCA+IGxpIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xufVxuLnNlYXJjaC1yZXN1bHRzLnZlcnRpY2FsIC5zZWFyY2gtcmVzdWx0LWxpc3QgPiBsaSAuZmllbGQtdGl0bGUge1xuICBkaXNwbGF5OiBibG9jaztcbn1cbi5zZWFyY2gtcmVzdWx0cy52ZXJ0aWNhbCAuc2VhcmNoLXJlc3VsdC1saXN0ID4gbGk6aG92ZXIge1xuICBib3JkZXItYm90dG9tOiAxcHggMXB4IDJweCAxcHggc29saWQgIzE1OTA5Yztcbn1cbi5zZWFyY2gtcmVzdWx0cy5ob3Jpem9udGFsIC5zZWFyY2gtcmVzdWx0LWxpc3Qge1xuICB3aWR0aDogMTAwJTtcbn1cbi5zZWFyY2gtcmVzdWx0cy5ob3Jpem9udGFsIC5zZWFyY2gtcmVzdWx0LWxpc3Q6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgY2xlYXI6IGJvdGg7XG59XG4uc2VhcmNoLXJlc3VsdHMuaG9yaXpvbnRhbCAuc2VhcmNoLXJlc3VsdC1saXN0ID4gbGkge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZsb2F0OiBsZWZ0O1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBib3JkZXI6IDFweCAxcHggMnB4IDFweCBzb2xpZCAjZDJkMmQyO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1pbi1oZWlnaHQ6IDEyMHB4O1xuICBoZWlnaHQ6IDEwMCU7XG4gIG1hcmdpbjogMCAyJSAxMHB4IDA7XG4gIHBhZGRpbmc6IDVweDtcbiAgd2lkdGg6IDIzJTtcbn1cbi5zZWFyY2gtcmVzdWx0cy5ob3Jpem9udGFsIC5zZWFyY2gtcmVzdWx0LWxpc3QgPiBsaSAuZmllbGQtdGl0bGUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogMCA1cHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbi5zZWFyY2gtcmVzdWx0cy5ob3Jpem9udGFsIC5zZWFyY2gtcmVzdWx0LWxpc3QgPiBsaSAuZmllbGQtdGl0bGUgYSB7XG4gIGZvbnQtc2l6ZTogMS44cmVtO1xuICBsaW5lLWhlaWdodDogMjBweDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xufVxuLnNlYXJjaC1yZXN1bHRzLmhvcml6b250YWwgLnNlYXJjaC1yZXN1bHQtbGlzdCA+IGxpOmhvdmVyIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IDFweCAycHggMXB4IHNvbGlkICMxNTkwOWM7XG59XG4uc2VhcmNoLXJlc3VsdHMgLnNlYXJjaC1yZXN1bHRzLW92ZXJsYXkge1xuICBkaXNwbGF5OiBub25lO1xufVxuLnNlYXJjaC1yZXN1bHRzLmxvYWRpbmctaW4tcHJvZ3Jlc3Mge1xuICBtaW4taGVpZ2h0OiAyMDBweDtcbn1cbi5zZWFyY2gtcmVzdWx0cy5sb2FkaW5nLWluLXByb2dyZXNzIC5zZWFyY2gtcmVzdWx0LW92ZXJsYXkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOSk7XG59XG4uc2VhcmNoLXJlc3VsdHMubG9hZGluZy1pbi1wcm9ncmVzcyAuc2VhcmNoLXJlc3VsdC1vdmVybGF5OmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKGRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0Zi04O2Jhc2U2NCxQSE4yWnlCNGJXeHVjejBpYUhSMGNEb3ZMM2QzZHk1M015NXZjbWN2TWpBd01DOXpkbWNpSUhacFpYZENiM2c5SWpBZ01DQXpNaUF6TWlJZ2QybGtkR2c5SWpNeUlpQm9aV2xuYUhROUlqTXlJaUJtYVd4c1BTSmliR0ZqYXlJK0NpQWdQSEJoZEdnZ0lHOXdZV05wZEhrOUlpNHlOU0lnWkQwaVRURTJJREFnUVRFMklERTJJREFnTUNBd0lERTJJRE15SUVFeE5pQXhOaUF3SURBZ01DQXhOaUF3SUUweE5pQTBJRUV4TWlBeE1pQXdJREFnTVNBeE5pQXlPQ0JCTVRJZ01USWdNQ0F3SURFZ01UWWdOQ0l2UGdvZ0lEeHdZWFJvSUdacGJHdzlKeU5rWkdSa1pHUW5JR1E5SWsweE5pQXdJRUV4TmlBeE5pQXdJREFnTVNBek1pQXhOaUJNTWpnZ01UWWdRVEV5SURFeUlEQWdNQ0F3SURFMklEUjZJajRLSUNBZ0lEeGhibWx0WVhSbFZISmhibk5tYjNKdElHRjBkSEpwWW5WMFpVNWhiV1U5SW5SeVlXNXpabTl5YlNJZ2RIbHdaVDBpY205MFlYUmxJaUJtY205dFBTSXdJREUySURFMklpQjBiejBpTXpZd0lERTJJREUySWlCa2RYSTlJakF1T0hNaUlISmxjR1ZoZEVOdmRXNTBQU0pwYm1SbFptbHVhWFJsSWlBdlBnb2dJRHd2Y0dGMGFENEtQQzl6ZG1jKyk7XG4gIGJhY2tncm91bmQtc2l6ZTogMTAwJSAxMDAlO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiA1MHB4O1xuICBoZWlnaHQ6IDBweDtcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICBtYXJnaW46IC0zMHB4IGF1dG8gMDtcbn1cbi5zZWFyY2gtcmVzdWx0cy5sb2FkaW5nLW1vcmUtaW4tcHJvZ3Jlc3M6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiBibG9jaztcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKGRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0Zi04O2Jhc2U2NCxQSE4yWnlCNGJXeHVjejBpYUhSMGNEb3ZMM2QzZHk1M015NXZjbWN2TWpBd01DOXpkbWNpSUhacFpYZENiM2c5SWpBZ01DQXpNaUF6TWlJZ2QybGtkR2c5SWpNeUlpQm9aV2xuYUhROUlqTXlJaUJtYVd4c1BTSmliR0ZqYXlJK0RRb2dJRHh3WVhSb0lDQnZjR0ZqYVhSNVBTSXVNalVpSUdROUlrMHhOaUF3SUVFeE5pQXhOaUF3SURBZ01DQXhOaUF6TWlCQk1UWWdNVFlnTUNBd0lEQWdNVFlnTUNCTk1UWWdOQ0JCTVRJZ01USWdNQ0F3SURFZ01UWWdNamdnUVRFeUlERXlJREFnTUNBeElERTJJRFFpTHo0TkNpQWdQSEJoZEdnZ1ptbHNiRDBuSXpGaE9EQmlOaWNnWkQwaVRURTJJREFnUVRFMklERTJJREFnTUNBeElETXlJREUySUV3eU9DQXhOaUJCTVRJZ01USWdNQ0F3SURBZ01UWWdOSG9pUGcwS0lDQWdJRHhoYm1sdFlYUmxWSEpoYm5ObWIzSnRJR0YwZEhKcFluVjBaVTVoYldVOUluUnlZVzV6Wm05eWJTSWdkSGx3WlQwaWNtOTBZWFJsSWlCbWNtOXRQU0l3SURFMklERTJJaUIwYnowaU16WXdJREUySURFMklpQmtkWEk5SWpBdU9ITWlJSEpsY0dWaGRFTnZkVzUwUFNKcGJtUmxabWx1YVhSbElpQXZQZzBLSUNBOEwzQmhkR2crRFFvOEwzTjJaejROQ2c9PSk7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtc2l6ZTogNTAlIDUwJTtcbiAgaGVpZ2h0OiAxMDBweDtcbn1cbi5zZWFyY2gtcmVzdWx0cyAubm8tcmVzdWx0cyB7XG4gIHBhZGRpbmc6IDVweDtcbn1cblxuLmMtbmV3cy1yZXN1bHRzIGxpIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICM3Njc2NzY7XG4gIHBhZGRpbmctYm90dG9tOiBjYWxjKDMycHggLSAxcHgpO1xuICBtYXJnaW4tYm90dG9tOiAzMnB4O1xufVxuLmMtbmV3cy1yZXN1bHRzIGxpOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uYy1uZXdzLXJlc3VsdHNfX2RhdGUge1xuICBmb250LWZhbWlseTogVmVyZGFuYSwgVGFob21hLCBzYW5zLXNlcmlmO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgZm9udC1zaXplOiAxLjZyZW07XG4gIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGNvbG9yOiAjNGE0YTRhO1xufVxuQG1lZGlhICggbWluLXdpZHRoOiA3NjhweCApIHtcbiAgLmMtbmV3cy1yZXN1bHRzX19kYXRlIHtcbiAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgICBsaW5lLWhlaWdodDogMjRweDtcbiAgfVxufVxuXG4uYy1uZXdzLXJlc3VsdHNfX3RleHQgYSB7XG4gIGZvbnQtZmFtaWx5OiBWZXJkYW5hLCBUYWhvbWEsIHNhbnMtc2VyaWY7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICBmb250LXNpemU6IDEuOHJlbTtcbiAgbGluZS1oZWlnaHQ6IDI0cHg7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgY29sb3I6ICMwMDcwY2Q7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cbkBtZWRpYSAoIG1pbi13aWR0aDogNzY4cHggKSB7XG4gIC5jLW5ld3MtcmVzdWx0c19fdGV4dCBhIHtcbiAgICBmb250LXNpemU6IDJyZW07XG4gICAgbGluZS1oZWlnaHQ6IDI0cHg7XG4gIH1cbn1cbi5jLW5ld3MtcmVzdWx0c19fdGV4dCBhOmhvdmVyLCAuYy1uZXdzLXJlc3VsdHNfX3RleHQgYTphY3RpdmUge1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbn1cblxuLmMtc2VydmljZS1hZHZpc29yaWVzIGEge1xuICBmb250LWZhbWlseTogVmVyZGFuYSwgVGFob21hLCBzYW5zLXNlcmlmO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgZm9udC1zaXplOiAxLjhyZW07XG4gIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGNvbG9yOiAjMDAwMDAwO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5AbWVkaWEgKCBtaW4td2lkdGg6IDc2OHB4ICkge1xuICAuYy1zZXJ2aWNlLWFkdmlzb3JpZXMgYSB7XG4gICAgZm9udC1zaXplOiAycmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICB9XG59XG4uYy1zZXJ2aWNlLWFkdmlzb3JpZXMgYTpob3ZlciwgLmMtc2VydmljZS1hZHZpc29yaWVzIGE6YWN0aXZlIHtcbiAgY29sb3I6ICMwMDcwY2Q7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xufVxuLmMtc2VydmljZS1hZHZpc29yaWVzIC5maWVsZC1yb3V0ZW5hbWUge1xuICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbn1cbi5jLXNlcnZpY2UtYWR2aXNvcmllcyAuZmllbGQtcm91dGU6OmFmdGVyIHtcbiAgY29udGVudDogXCIgXCI7XG4gIGRpc3BsYXk6IGlubGluZTtcbn1cbi5jLXNlcnZpY2UtYWR2aXNvcmllcyAuc2EtZGFzaDo6YWZ0ZXIsIC5jLXNlcnZpY2UtYWR2aXNvcmllcyAuc2EtZGFzaDo6YmVmb3JlIHtcbiAgY29udGVudDogXCIgXCI7XG4gIGRpc3BsYXk6IGlubGluZTtcbn1cblxuLmMtYmxvZ3MtcmVzdWx0cyAuYmxvZy1jb250YWluZXIge1xuICBwYWRkaW5nOiAzMHB4IDA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGdhcDogMzBweDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICM5YzljOWM7XG59XG5AbWVkaWEgKG1heC13aWR0aDogODAwcHgpIHtcbiAgLmMtYmxvZ3MtcmVzdWx0cyAuYmxvZy1jb250YWluZXIge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIH1cbn1cbi5jLWJsb2dzLXJlc3VsdHMgLmJsb2ctdGV4dC13cmFwcGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZ2FwOiAyMHB4O1xuICBmbGV4OiAxO1xufVxuLmMtYmxvZ3MtcmVzdWx0cyAuYmxvZy1pbWFnZSB7XG4gIGZsZXg6IDE7XG59XG4uYy1ibG9ncy1yZXN1bHRzIC5ibG9nLWltYWdlIGltZyB7XG4gIGJvcmRlci1yYWRpdXM6IDVweDtcbn1cbi5jLWJsb2dzLXJlc3VsdHMgLmJsb2ctbGluayBhIHtcbiAgY29sb3I6ICMwMDcwY2Q7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgZm9udC1zaXplOiAxLjZyZW07XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuLmMtYmxvZ3MtcmVzdWx0cyAuYmxvZy1saW5rIGE6OmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgbWFyZ2luLWxlZnQ6IDhweDtcbiAgaGVpZ2h0OiAyMHB4O1xuICB3aWR0aDogMjBweDtcbiAgYm90dG9tOiAzcHg7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCgvLS9tZWRpYS9Qcm9qZWN0L1RUQy9EZXZQcm90by9JY29ucy9hcnJvdy1iYWNrZ3JvdW5kLXJpZ2h0LW91dGxpbmUuc3ZnKTtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZTtcbn1cbi5jLWJsb2dzLXJlc3VsdHMgLmJsb2ctbGluayBhOmhvdmVyIHtcbiAgY29sb3I6ICMxZjVhYTU7XG59XG4uYy1ibG9ncy1yZXN1bHRzIC5ibG9nLWxpbmsgYTpob3Zlcjo6YWZ0ZXIge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoM3B4KTtcbiAgYm9yZGVyLWNvbG9yOiAjMWY1YWE1O1xufVxuLmMtYmxvZ3MtcmVzdWx0cyAuYmxvZy10aXRsZSB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuLmMtYmxvZ3MtcmVzdWx0cyAuYmxvZy1kZXNjcmlwdGlvbiB7XG4gIGZvbnQtc2l6ZTogMC44ZW07XG59XG5cbi5jLW5ld3MtcmVzdWx0c19fZGVzY3JpcHRpb24ge1xuICBmb250LWZhbWlseTogVmVyZGFuYSwgVGFob21hLCBzYW5zLXNlcmlmO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgZm9udC1zaXplOiAxLjhyZW07XG4gIGxpbmUtaGVpZ2h0OiAyOHB4O1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGNvbG9yOiAjNGE0YTRhO1xufVxuQG1lZGlhICggbWluLXdpZHRoOiA3NjhweCApIHtcbiAgLmMtbmV3cy1yZXN1bHRzX19kZXNjcmlwdGlvbiB7XG4gICAgZm9udC1zaXplOiAycmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAzMnB4O1xuICB9XG59XG5cbi5jLW5ld3MtcmVzdWx0c19fdGFncyA+IGEsXG4uYy1uZXdzLXJlc3VsdHNfX3RhZ3MgPiBkaXYge1xuICBib3JkZXI6IDFweCBzb2xpZCAjMDA3MGNkO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGNvbG9yOiAjMDA3MGNkO1xuICBwYWRkaW5nOiAzLjJweCA4cHg7XG4gIG1hcmdpbjogMCAxNnB4IDE2cHggMDtcbiAgdHJhbnNpdGlvbjogYWxsIDMwMG1zIGVhc2UtaW4tb3V0O1xuICBmb250LWZhbWlseTogVmVyZGFuYSwgVGFob21hLCBzYW5zLXNlcmlmO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgZm9udC1zaXplOiAxLjZyZW07XG4gIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cbi5jLW5ld3MtcmVzdWx0c19fdGFncyA+IGE6aG92ZXIsIC5jLW5ld3MtcmVzdWx0c19fdGFncyA+IGE6Zm9jdXMsIC5jLW5ld3MtcmVzdWx0c19fdGFncyA+IGE6YWN0aXZlLFxuLmMtbmV3cy1yZXN1bHRzX190YWdzID4gZGl2OmhvdmVyLFxuLmMtbmV3cy1yZXN1bHRzX190YWdzID4gZGl2OmZvY3VzLFxuLmMtbmV3cy1yZXN1bHRzX190YWdzID4gZGl2OmFjdGl2ZSB7XG4gIGNvbG9yOiAjZmZmZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA3MGNkO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jLW5ld3MtcmVzdWx0c19fdGFncyA+IGEsXG4gIC5jLW5ld3MtcmVzdWx0c19fdGFncyA+IGRpdiB7XG4gICAgbWFyZ2luOiAwIDhweCA4cHggMDtcbiAgfVxufVxuXG4uYy1zZWFyY2gtcmVzdWx0cyB7XG4gIHBhZGRpbmctdG9wOiA0MHB4O1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jLXNlYXJjaC1yZXN1bHRzID4gLmNvbXBvbmVudC1jb250ZW50IHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg4LjMzMzMzMzMzMzMlICsgNnB4KSAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1yaWdodDogY2FsYygxMi41JSArIDZweCkgIWltcG9ydGFudDtcbiAgfVxufVxuLmMtc2VhcmNoLXJlc3VsdHMgLnNhLXRpdGxlOmZvY3VzIHtcbiAgYm9yZGVyOiBkb3R0ZWQgMnB4IGJsYWNrO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMjVweCkge1xuICAuYy1zZWFyY2gtcmVzdWx0cyA+IC5jb21wb25lbnQtY29udGVudCB7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoMTYuNjY2NjY2NjY2NyUgKyA2cHgpICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLXJpZ2h0OiBjYWxjKDI1JSArIDZweCkgIWltcG9ydGFudDtcbiAgfVxufVxuLmMtc2VhcmNoLXJlc3VsdHMgLnNlYXJjaC10ZXJtIHtcbiAgZm9udC1mYW1pbHk6IFZlcmRhbmEsIFRhaG9tYSwgc2Fucy1zZXJpZjtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIGZvbnQtc2l6ZTogMi4xcmVtO1xuICBsaW5lLWhlaWdodDogMjhweDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogNzAwO1xufVxuQG1lZGlhICggbWluLXdpZHRoOiA3NjhweCApIHtcbiAgLmMtc2VhcmNoLXJlc3VsdHMgLnNlYXJjaC10ZXJtIHtcbiAgICBmb250LXNpemU6IDIuNHJlbTtcbiAgICBsaW5lLWhlaWdodDogMzBweDtcbiAgfVxufVxuLmMtc2VhcmNoLXJlc3VsdHMgLnNlYXJjaC10ZXJtIHNwYW4ge1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG4uYy1zZWFyY2gtcmVzdWx0cyAucmVzdWx0cyB7XG4gIGZvbnQtZmFtaWx5OiBWZXJkYW5hLCBUYWhvbWEsIHNhbnMtc2VyaWY7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICBmb250LXNpemU6IDEuNnJlbTtcbiAgbGluZS1oZWlnaHQ6IDI0cHg7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgbWFyZ2luLXRvcDogNXB4O1xufVxuQG1lZGlhICggbWluLXdpZHRoOiA3NjhweCApIHtcbiAgLmMtc2VhcmNoLXJlc3VsdHMgLnJlc3VsdHMge1xuICAgIGZvbnQtc2l6ZTogMS42cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxNnB4O1xuICB9XG59XG4uYy1zZWFyY2gtcmVzdWx0cyAuaXRlbS1uYW1lIHtcbiAgZm9udC1mYW1pbHk6IFZlcmRhbmEsIFRhaG9tYSwgc2Fucy1zZXJpZjtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIGZvbnQtc2l6ZTogMS44cmVtO1xuICBsaW5lLWhlaWdodDogMjhweDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogMzAwO1xuICBmb250LXdlaWdodDogNzAwICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjMDAwO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5AbWVkaWEgKCBtaW4td2lkdGg6IDc2OHB4ICkge1xuICAuYy1zZWFyY2gtcmVzdWx0cyAuaXRlbS1uYW1lIHtcbiAgICBmb250LXNpemU6IDJyZW07XG4gICAgbGluZS1oZWlnaHQ6IDMycHg7XG4gIH1cbn1cbi5jLXNlYXJjaC1yZXN1bHRzIC5pdGVtLW5hbWU6aG92ZXIge1xuICBjb2xvcjogIzAwNzBjZDtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG4uYy1zZWFyY2gtcmVzdWx0cyAuaXRlbS1zbmlwcGV0IHtcbiAgZm9udC1mYW1pbHk6IFZlcmRhbmEsIFRhaG9tYSwgc2Fucy1zZXJpZjtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIGZvbnQtc2l6ZTogMS42cmVtO1xuICBsaW5lLWhlaWdodDogMjRweDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogNDAwO1xuICBmb250LXdlaWdodDogMzAwICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjNGE0YTRhO1xufVxuLmMtc2VhcmNoLXJlc3VsdHMgLml0ZW0tdXJsIHtcbiAgZm9udC1mYW1pbHk6IFZlcmRhbmEsIFRhaG9tYSwgc2Fucy1zZXJpZjtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIGZvbnQtc2l6ZTogMS42cmVtO1xuICBsaW5lLWhlaWdodDogMjRweDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogNDAwO1xufVxuLmMtc2VhcmNoLXJlc3VsdHMgLml0ZW0tdXJsIGEge1xuICBjb2xvcjogIzAwNzBjZDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBvdmVyZmxvdy13cmFwOiBicmVhay13b3JkO1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7XG59XG4uYy1zZWFyY2gtcmVzdWx0cyAuaXRlbS11cmwgYTpob3ZlciB7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xufVxuLmMtc2VhcmNoLXJlc3VsdHMgLmVhY2gtcmVzdWx0IHtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbn1cbi5jLXNlYXJjaC1yZXN1bHRzIC5wYWdpbmF0aW9uIHtcbiAgZGlzcGxheTogZmxleDtcbiAgbWF4LXdpZHRoOiA3MCU7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgbWFyZ2luLXRvcDogNDBweDtcbn1cbi5jLXNlYXJjaC1yZXN1bHRzIC5wYWdpbmF0aW9uIGEge1xuICBmb250LWZhbWlseTogVmVyZGFuYSwgVGFob21hLCBzYW5zLXNlcmlmO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgZm9udC1zaXplOiAxLjhyZW07XG4gIGxpbmUtaGVpZ2h0OiAyOHB4O1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGNvbG9yOiAjMDA3MGNkO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5AbWVkaWEgKCBtaW4td2lkdGg6IDc2OHB4ICkge1xuICAuYy1zZWFyY2gtcmVzdWx0cyAucGFnaW5hdGlvbiBhIHtcbiAgICBmb250LXNpemU6IDJyZW07XG4gICAgbGluZS1oZWlnaHQ6IDMycHg7XG4gIH1cbn1cbi5jLXNlYXJjaC1yZXN1bHRzIC5wYWdpbmF0aW9uIGE6aG92ZXIge1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbn1cbi5jLXNlYXJjaC1yZXN1bHRzIC5wYWdpbmF0aW9uIC5hY3RpdmUgYSB7XG4gIGNvbG9yOiAjNGE0YTRhO1xufSIsIi8vIEBpbXBvcnQgJ35zYXNzLW1xL21xJztcclxuQGltcG9ydCAnbWl4aW5zL3Nhc3MtbXEtbW9kLnNjc3MnO1xyXG5AaW1wb3J0ICcuLi9jb21tb24tdWkvdHlwb2dyYXBoeS9taXhpbnMnO1xyXG5AaW1wb3J0ICdtaXhpbnMvYWNjZXNzaWJpbGl0eSc7XHJcbkBpbXBvcnQgJ21peGlucy9idXR0b24nO1xyXG5AaW1wb3J0ICdtaXhpbnMvbGluayc7XHJcbkBpbXBvcnQgJ21peGlucy9vdmVybGF5JztcclxuQGltcG9ydCAnbWl4aW5zL3RyYW5zaXRpb25zJztcclxuQGltcG9ydCAnbWl4aW5zL3NoYWRvd3MnO1xyXG5AaW1wb3J0ICdtaXhpbnMvdGFnJztcclxuQGltcG9ydCAnLi4vYWJzdHJhY3RzL3ZhcnMvY29sb3JzJztcclxuXHJcbi8vIEJlbG93IGFyZSBtaXhpbidzIGZyb20gRlhBXHJcbi8qIGJyZWFrcG9pbnRzICovXHJcblxyXG4kYnJlYWstZGVza3RvcDogOTYwcHg7XHJcbiRicmVhay1tb2JpbGU6IDM4MHB4O1xyXG4kYnJlYWstbW9iaWxlLWhvcml6b250YWw6IDY0MHB4O1xyXG4kYnJlYWstbW9iaWxlLWxhcmdlOiA3ODZweDtcclxuQG1peGluIHdyYXBwZXIoKSB7XHJcbiAgICBtYXgtd2lkdGg6IDk2MHB4O1xyXG4gICAgbWFyZ2luOiAwIGF1dG8gIWltcG9ydGFudDtcclxufVxyXG5AbWl4aW4gY2xlYXJmaXgge1xyXG4gICAgJjphZnRlciB7XHJcbiAgICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgICBkaXNwbGF5OiB0YWJsZTtcclxuICAgICAgICBjbGVhcjogYm90aDtcclxuICAgIH1cclxufVxyXG5AbWl4aW4gZm9udC1zaXplKCRzaXplVmFsdWU6IDEuNikge1xyXG4gICAgZm9udC1zaXplOiAoJHNpemVWYWx1ZSAqIDEwKSArIHB4O1xyXG4gICAgZm9udC1zaXplOiAkc2l6ZVZhbHVlICsgcmVtO1xyXG59XHJcbkBtaXhpbiBvcGVuc2Fucy1mb250LXN0YWNrKCkge1xyXG4gICAgZm9udC1mYW1pbHk6IFwiT3BlbiBTYW5zXCIsIEhlbHZldGljYSwgVmVyZGFuYSwgVGFob21hLCBzYW5zLXNlcmlmO1xyXG59XHJcbkBtaXhpbiBsb2FkaW5nLWdpZigpIHtcclxuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChkYXRhOmltYWdlL3N2Zyt4bWw7Y2hhcnNldD11dGYtODtiYXNlNjQsUEhOMlp5QjRiV3h1Y3owaWFIUjBjRG92TDNkM2R5NTNNeTV2Y21jdk1qQXdNQzl6ZG1jaUlIWnBaWGRDYjNnOUlqQWdNQ0F6TWlBek1pSWdkMmxrZEdnOUlqTXlJaUJvWldsbmFIUTlJak15SWlCbWFXeHNQU0ppYkdGamF5SStEUW9nSUR4d1lYUm9JQ0J2Y0dGamFYUjVQU0l1TWpVaUlHUTlJazB4TmlBd0lFRXhOaUF4TmlBd0lEQWdNQ0F4TmlBek1pQkJNVFlnTVRZZ01DQXdJREFnTVRZZ01DQk5NVFlnTkNCQk1USWdNVElnTUNBd0lERWdNVFlnTWpnZ1FURXlJREV5SURBZ01DQXhJREUySURRaUx6NE5DaUFnUEhCaGRHZ2dabWxzYkQwbkl6RmhPREJpTmljZ1pEMGlUVEUySURBZ1FURTJJREUySURBZ01DQXhJRE15SURFMklFd3lPQ0F4TmlCQk1USWdNVElnTUNBd0lEQWdNVFlnTkhvaVBnMEtJQ0FnSUR4aGJtbHRZWFJsVkhKaGJuTm1iM0p0SUdGMGRISnBZblYwWlU1aGJXVTlJblJ5WVc1elptOXliU0lnZEhsd1pUMGljbTkwWVhSbElpQm1jbTl0UFNJd0lERTJJREUySWlCMGJ6MGlNell3SURFMklERTJJaUJrZFhJOUlqQXVPSE1pSUhKbGNHVmhkRU52ZFc1MFBTSnBibVJsWm1sdWFYUmxJaUF2UGcwS0lDQThMM0JoZEdnK0RRbzhMM04yWno0TkNnPT0pO1xyXG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcclxuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbn1cclxuQG1peGluIHJlc3BvbmQtdG8oJG1lZGlhKSB7XHJcbiAgICBAaWYgJG1lZGlhPT1tb2JpbGUge1xyXG4gICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogJGJyZWFrLW1vYmlsZSkge1xyXG4gICAgICAgICAgICBAY29udGVudDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBAZWxzZSBpZiAkbWVkaWE9PW1vYmlsZS1ob3Jpem9udGFsIHtcclxuICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRicmVhay1tb2JpbGUtaG9yaXpvbnRhbCAtIDEpIHtcclxuICAgICAgICAgICAgQGNvbnRlbnQ7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgQGVsc2UgaWYgJG1lZGlhPT1tb2JpbGUtbGFyZ2Uge1xyXG4gICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogJGJyZWFrLW1vYmlsZS1sYXJnZSkge1xyXG4gICAgICAgICAgICBAY29udGVudDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBAZWxzZSBpZiAkbWVkaWE9PXRhYmxldCB7XHJcbiAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkYnJlYWstbW9iaWxlICsgMSkgYW5kIChtYXgtd2lkdGg6ICRicmVhay1kZXNrdG9wIC0gMSkge1xyXG4gICAgICAgICAgICBAY29udGVudDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBAZWxzZSBpZiAkbWVkaWE9PWFsbC1tb2JpbGUge1xyXG4gICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogJGJyZWFrLWRlc2t0b3AgLSAxKSB7XHJcbiAgICAgICAgICAgIEBjb250ZW50O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIEBlbHNlIGlmICRtZWRpYT09ZGVza3RvcCB7XHJcbiAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkYnJlYWstZGVza3RvcCkge1xyXG4gICAgICAgICAgICBAY29udGVudDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuQG1peGluIGJvcmRlci1iYXNpYygkcG9zaXRpb246YWxsLCAkYm9yZGVyLWNvbG9yOiRib3JkZXItZ3JheSwgJGJvcmRlci13aWR0aDoxcHgpIHtcclxuICAgIEBpZigkcG9zaXRpb249PXRvcCkge1xyXG4gICAgICAgIGJvcmRlci10b3A6ICRib3JkZXItd2lkdGggc29saWQgJGJvcmRlci1jb2xvcjtcclxuICAgIH1cclxuICAgIEBlbHNlIGlmKCRwb3NpdGlvbj09Ym90dG9tKSB7XHJcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogJGJvcmRlci13aWR0aCBzb2xpZCAkYm9yZGVyLWNvbG9yO1xyXG4gICAgfVxyXG4gICAgQGVsc2UgaWYoJHBvc2l0aW9uPT1sZWZ0KSB7XHJcbiAgICAgICAgYm9yZGVyLWxlZnQ6ICRib3JkZXItd2lkdGggc29saWQgJGJvcmRlci1jb2xvcjtcclxuICAgIH1cclxuICAgIEBlbHNlIGlmKCRwb3NpdGlvbj09cmlnaHQpIHtcclxuICAgICAgICBib3JkZXItcmlnaHQ6ICRib3JkZXItd2lkdGggc29saWQgJGJvcmRlci1jb2xvcjtcclxuICAgIH1cclxuICAgIEBlbHNlIHtcclxuICAgICAgICBib3JkZXI6ICRib3JkZXItd2lkdGggc29saWQgJGJvcmRlci1jb2xvcjtcclxuICAgIH1cclxufVxyXG5AbWl4aW4gZml4ZWQtYmcoJHBvcywgJG1pbi1oZWlnaHQ6MjQwcHgpIHtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246ICRwb3M7XHJcbiAgICBiYWNrZ3JvdW5kLWF0dGFjaG1lbnQ6IGZpeGVkO1xyXG4gICAgbWluLWhlaWdodDogJG1pbi1oZWlnaHQ7XHJcbn1cclxuQG1peGluIGxpbmVhci1ncmFkaWVudCgkZGlyZWN0aW9uLCAkY29sb3Itc3RvcHMuLi4pIHtcclxuICAgIC8vIERpcmVjdGlvbiBoYXMgYmVlbiBvbWl0dGVkIGFuZCBoYXBwZW5zIHRvIGJlIGEgY29sb3Itc3RvcFxyXG4gICAgQGlmIGlzLWRpcmVjdGlvbigkZGlyZWN0aW9uKT09ZmFsc2Uge1xyXG4gICAgICAgICRjb2xvci1zdG9wczogJGRpcmVjdGlvbiwgJGNvbG9yLXN0b3BzO1xyXG4gICAgICAgICRkaXJlY3Rpb246IDE4MGRlZztcclxuICAgIH1cclxuICAgIGJhY2tncm91bmQ6IG50aChudGgoJGNvbG9yLXN0b3BzLCAxKSwgMSk7XHJcbiAgICBiYWNrZ3JvdW5kOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudChsZWdhY3ktZGlyZWN0aW9uKCRkaXJlY3Rpb24pLCAkY29sb3Itc3RvcHMpO1xyXG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KCRkaXJlY3Rpb24sICRjb2xvci1zdG9wcyk7XHJcbn1cclxuIiwiQGltcG9ydCBcImFic3RyYWN0c1wiO1xyXG4uc2VhcmNoLXJlc3VsdHMge1xyXG4gICAgLnR0Yy1sb2FkaW5nIHtcclxuICAgICAgICBoZWlnaHQ6IDEwMHB4O1xyXG4gICAgICAgIGNvbG9yOiBjb2xvcihwcmltYXJ5KTtcclxuICAgICAgICBmb250LXNpemU6IDkwcHg7XHJcbiAgICAgICAgdGV4dC1pbmRlbnQ6IC05OTk5ZW07XHJcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICB3aWR0aDogMWVtO1xyXG4gICAgICAgIGhlaWdodDogMWVtO1xyXG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcclxuICAgICAgICBtYXJnaW46IDcycHggYXV0bztcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XHJcbiAgICAgICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcclxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XHJcbiAgICAgICAgLXdlYmtpdC1hbmltYXRpb246IGxvYWQ2IDEuN3MgaW5maW5pdGUgZWFzZSwgcm91bmQgMS43cyBpbmZpbml0ZSBlYXNlO1xyXG4gICAgICAgIGFuaW1hdGlvbjogbG9hZDYgMS43cyBpbmZpbml0ZSBlYXNlLCByb3VuZCAxLjdzIGluZmluaXRlIGVhc2U7XHJcbiAgICB9XHJcbiAgICBAaW1wb3J0IFwiYmFzZS9yZXNldC9pbnB1dHNcIjtcclxuICAgIC5zZWFyY2gtcmVzdWx0LWxpc3Qge1xyXG4gICAgICAgIHBhZGRpbmctdG9wOiA1cHg7XHJcbiAgICB9XHJcbiAgICAmLnZlcnRpY2FsIHtcclxuICAgICAgICAuc2VhcmNoLXJlc3VsdC1saXN0IHtcclxuICAgICAgICAgICAgPmxpIHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XHJcbiAgICAgICAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICAuZmllbGQtdGl0bGUge1xyXG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWJhc2ljKGJvdHRvbSwgJHNlYXJjaC1pdGVtLWJvcmRlci1hY3RpdmUsMXB4IDFweCAycHggMXB4KTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICYuaG9yaXpvbnRhbCB7XHJcbiAgICAgICAgLnNlYXJjaC1yZXN1bHQtbGlzdCB7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGNsZWFyZml4KCk7XHJcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICA+bGkge1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICAgICAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWJhc2ljKGFsbCwkYm9yZGVyLXdpZHRoOiAxcHggMXB4IDJweCAxcHgpO1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICAgICAgbWluLWhlaWdodDogMTIwcHg7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgMiUgMTBweCAwO1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogNXB4O1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDIzJTtcclxuICAgICAgICAgICAgICAgIC5maWVsZC10aXRsZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMCA1cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgICAgICAgICAgICAgIGEge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IGdldC1yZW0oMThweCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWJhc2ljKGJvdHRvbSwgJHNlYXJjaC1pdGVtLWJvcmRlci1hY3RpdmUsMXB4IDFweCAycHggMXB4KTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5zZWFyY2gtcmVzdWx0cy1vdmVybGF5IHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG4gICAgJi5sb2FkaW5nLWluLXByb2dyZXNzIHtcclxuICAgICAgICBtaW4taGVpZ2h0OiAyMDBweDtcclxuICAgICAgICAuc2VhcmNoLXJlc3VsdC1vdmVybGF5IHtcclxuICAgICAgICAgICAgLy8gcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAvLyB0b3A6IDA7XHJcbiAgICAgICAgICAgIC8vIGxlZnQ6IDA7XHJcbiAgICAgICAgICAgIC8vIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgICAgICAvLyBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45KTtcclxuICAgICAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgICAgICBjb250ZW50OiBcIlwiO1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKGRhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0Zi04O2Jhc2U2NCxQSE4yWnlCNGJXeHVjejBpYUhSMGNEb3ZMM2QzZHk1M015NXZjbWN2TWpBd01DOXpkbWNpSUhacFpYZENiM2c5SWpBZ01DQXpNaUF6TWlJZ2QybGtkR2c5SWpNeUlpQm9aV2xuYUhROUlqTXlJaUJtYVd4c1BTSmliR0ZqYXlJK0NpQWdQSEJoZEdnZ0lHOXdZV05wZEhrOUlpNHlOU0lnWkQwaVRURTJJREFnUVRFMklERTJJREFnTUNBd0lERTJJRE15SUVFeE5pQXhOaUF3SURBZ01DQXhOaUF3SUUweE5pQTBJRUV4TWlBeE1pQXdJREFnTVNBeE5pQXlPQ0JCTVRJZ01USWdNQ0F3SURFZ01UWWdOQ0l2UGdvZ0lEeHdZWFJvSUdacGJHdzlKeU5rWkdSa1pHUW5JR1E5SWsweE5pQXdJRUV4TmlBeE5pQXdJREFnTVNBek1pQXhOaUJNTWpnZ01UWWdRVEV5SURFeUlEQWdNQ0F3SURFMklEUjZJajRLSUNBZ0lEeGhibWx0WVhSbFZISmhibk5tYjNKdElHRjBkSEpwWW5WMFpVNWhiV1U5SW5SeVlXNXpabTl5YlNJZ2RIbHdaVDBpY205MFlYUmxJaUJtY205dFBTSXdJREUySURFMklpQjBiejBpTXpZd0lERTJJREUySWlCa2RYSTlJakF1T0hNaUlISmxjR1ZoZEVOdmRXNTBQU0pwYm1SbFptbHVhWFJsSWlBdlBnb2dJRHd2Y0dGMGFENEtQQzl6ZG1jKyk7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgMTAwJTtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDogNTBweDtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogMHB4O1xyXG4gICAgICAgICAgICAgICAgdG9wOiA1MCU7XHJcbiAgICAgICAgICAgICAgICBsZWZ0OiAwO1xyXG4gICAgICAgICAgICAgICAgcmlnaHQ6IDA7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW46IC0zMHB4IGF1dG8gMDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICYubG9hZGluZy1tb3JlLWluLXByb2dyZXNzIHtcclxuICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgIEBpbmNsdWRlIGxvYWRpbmctZ2lmKCk7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogNTAlIDUwJTtcclxuICAgICAgICAgICAgaGVpZ2h0OiAxMDBweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAubm8tcmVzdWx0cyB7XHJcbiAgICAgICAgcGFkZGluZzogNXB4O1xyXG4gICAgfVxyXG59XHJcblxyXG4uYy1uZXdzLXJlc3VsdHMge1xyXG4gICAgbGkge1xyXG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1iYXNpYyhib3R0b20sIGNvbG9yKGdyZXktYm9yZGVyKSk7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206IGNhbGMoI3tzcGFjZSg0KX0gLSAxcHgpO1xyXG4gICAgICAgIG1hcmdpbi1ib3R0b206IHNwYWNlKDQpO1xyXG4gICAgICAgICY6bGFzdC1jaGlsZCB7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4uYy1uZXdzLXJlc3VsdHNfX2RhdGUge1xyXG4gICAgQGluY2x1ZGUgdWktdHlwb2dyYXBoeShkYXRlKTtcclxuICAgIGNvbG9yOiBjb2xvcihncmV5KTtcclxufVxyXG5cclxuLmMtbmV3cy1yZXN1bHRzX190ZXh0IHtcclxuICAgIGEge1xyXG4gICAgICAgIEBpbmNsdWRlIHVpLXR5cG9ncmFwaHkoZDEpO1xyXG4gICAgICAgIGNvbG9yOiBjb2xvcihzZWNvbmRhcnkpO1xyXG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgICAmOmhvdmVyLCBcclxuICAgICAgICAmOmFjdGl2ZSB7XHJcbiAgICAgICAgICAgIC8vY29sb3I6IGNvbG9yKHNlY29uZGFyeSk7XHJcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuLmMtc2VydmljZS1hZHZpc29yaWVzIHsgXHJcbiAgICBhIHtcclxuICAgIEBpbmNsdWRlIHVpLXR5cG9ncmFwaHkoZDEpO1xyXG4gICAgICAgIGNvbG9yOiBjb2xvcihibGFjayk7XHJcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICAgICY6aG92ZXIsIFxyXG4gICAgICAgICY6YWN0aXZlIHtcclxuICAgICAgICAgICAgY29sb3I6IGNvbG9yKHNlY29uZGFyeSk7XHJcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuZmllbGQtcm91dGVuYW1lIHtcclxuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcclxuICAgIH1cclxuXHJcbiAgICAuZmllbGQtcm91dGUge1xyXG4gICAgICAgICY6OmFmdGVyIHtcclxuICAgICAgICAgICAgY29udGVudDogJyAnO1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5zYS1kYXNoIHtcclxuICAgICAgICAmOjphZnRlciwgJjo6YmVmb3JlIHtcclxuICAgICAgICAgICAgY29udGVudDogJyAnO1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4uYy1ibG9ncy1yZXN1bHRzIHtcclxuICAgIC5ibG9nLWNvbnRhaW5lciB7XHJcbiAgICAgICAgcGFkZGluZzogMzBweCAwO1xyXG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgZ2FwOiAzMHB4O1xyXG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjOWM5YzljO1xyXG4gICAgfVxyXG5cclxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA4MDBweCkge1xyXG4gICAgICAgIC5ibG9nLWNvbnRhaW5lciB7XHJcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC5ibG9nLXRleHQtd3JhcHBlciB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgICAgIGdhcDogMjBweDtcclxuICAgICAgICBmbGV4OiAxXHJcbiAgICB9XHJcblxyXG4gICAgLmJsb2ctaW1hZ2Uge1xyXG4gICAgICAgIGZsZXg6IDE7XHJcblxyXG4gICAgICAgIGltZyB7XHJcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLmJsb2ctbGluayBhIHtcclxuICAgICAgICBjb2xvcjogIzAwNzBjZDtcclxuICAgICAgICBmb250LXdlaWdodDogNDAwO1xyXG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgICAgICBmb250LXNpemU6IDEuNnJlbTtcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgfVxyXG5cclxuXHJcblxyXG4gICAgLmJsb2ctbGluayBhOjphZnRlciB7XHJcbiAgICAgICAgY29udGVudDogXCJcIjtcclxuICAgICAgICBtYXJnaW4tbGVmdDogOHB4O1xyXG4gICAgICAgIGhlaWdodDogMjBweDtcclxuICAgICAgICB3aWR0aDogMjBweDtcclxuICAgICAgICBib3R0b206IDNweDtcclxuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLy0vbWVkaWEvUHJvamVjdC9UVEMvRGV2UHJvdG8vSWNvbnMvYXJyb3ctYmFja2dyb3VuZC1yaWdodC1vdXRsaW5lLnN2Zyk7XHJcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcclxuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlO1xyXG4gICAgfVxyXG5cclxuXHJcbiAgICAuYmxvZy1saW5rIGE6aG92ZXIge1xyXG4gICAgICAgIGNvbG9yOiAjMWY1YWE1O1xyXG4gICAgfVxyXG5cclxuICAgIC5ibG9nLWxpbmsgYTpob3Zlcjo6YWZ0ZXIge1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgzcHgpO1xyXG4gICAgICAgIGJvcmRlci1jb2xvcjogIzFmNWFhNTtcclxuICAgIH1cclxuXHJcblxyXG4gICAgLmJsb2ctdGl0bGUge1xyXG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gICAgfVxyXG5cclxuICAgIC5ibG9nLWRlc2NyaXB0aW9uIHtcclxuICAgICAgICBmb250LXNpemU6IDAuOGVtO1xyXG4gICAgfVxyXG59XHJcblxyXG5cclxuLmMtbmV3cy1yZXN1bHRzX19kZXNjcmlwdGlvbiB7XHJcbiAgICBAaW5jbHVkZSB1aS10eXBvZ3JhcGh5KGJvZHkpO1xyXG4gICAgY29sb3I6IGNvbG9yKGdyZXkpO1xyXG59XHJcblxyXG4uYy1uZXdzLXJlc3VsdHNfX3RhZ3Mge1xyXG4gICAgPiBhLFxyXG4gICAgPiBkaXYge1xyXG4gICAgICAgIEBpbmNsdWRlIHRhZ3M7XHJcbiAgICB9XHJcbn1cclxuXHJcbi5jLXNlYXJjaC1yZXN1bHRzIHtcclxuICBwYWRkaW5nLXRvcDogNDBweDtcclxuICBAaW5jbHVkZSBtcShtZCkge1xyXG4gICAgICAgID4gLmNvbXBvbmVudC1jb250ZW50IHtcclxuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IGNhbGMoMS8xMioxMDAlICsgNnB4KSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IGNhbGMoMy8yNCoxMDAlICsgNnB4KSAhaW1wb3J0YW50O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbi5zYS10aXRsZTpmb2N1cyB7XHJcbiAgYm9yZGVyOiBkb3R0ZWQgMnB4IGJsYWNrO1xyXG59XHJcblxyXG5AaW5jbHVkZSBtcShsZykge1xyXG4gICAgICAgID4gLmNvbXBvbmVudC1jb250ZW50IHtcclxuICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDIvMTIqMTAwJSArIDZweCkgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiBjYWxjKDMvMTIqMTAwJSArIDZweCkgIWltcG9ydGFudDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgLnNlYXJjaC10ZXJtIHtcclxuICAgIEBpbmNsdWRlIHVpLXR5cG9ncmFwaHkoZDIpO1xyXG4gICAgc3BhbiB7XHJcbiAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcclxuICAgIH1cclxuICB9XHJcbiAgLnJlc3VsdHMge1xyXG4gICAgQGluY2x1ZGUgdWktdHlwb2dyYXBoeShkLXhzbWFsbCk7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xyXG4gICAgbWFyZ2luLXRvcDogNXB4O1xyXG4gIH1cclxuICAuaXRlbS1uYW1le1xyXG4gICAgQGluY2x1ZGUgdWktdHlwb2dyYXBoeShib2R5KTtcclxuICAgIGZvbnQtd2VpZ2h0OiA3MDAgIWltcG9ydGFudDtcclxuICAgIGNvbG9yOiAjMDAwO1xyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgJjpob3ZlciB7XHJcbiAgICAgIGNvbG9yOiAjMDA3MGNkO1xyXG4gICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcclxuICAgIH1cclxuICB9XHJcbiAgLml0ZW0tc25pcHBldCB7XHJcbiAgICBAaW5jbHVkZSB1aS10eXBvZ3JhcGh5KGJyZWFkY3J1bWIpO1xyXG4gICAgZm9udC13ZWlnaHQ6IDMwMCFpbXBvcnRhbnQ7XHJcbiAgICBjb2xvcjogY29sb3IoZ3JleSk7XHJcbiAgfVxyXG4gIFxyXG4gIC5pdGVtLXVybHtcclxuICAgIEBpbmNsdWRlIHVpLXR5cG9ncmFwaHkoYnJlYWRjcnVtYik7XHJcbiAgICBhe1xyXG4gICAgICBjb2xvcjogIzAwNzBjZDtcclxuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICBvdmVyZmxvdy13cmFwOiBicmVhay13b3JkO1xyXG4gICAgICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XHJcbiAgICAgIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7XHJcbiAgICAgICY6aG92ZXJ7XHJcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgLmVhY2gtcmVzdWx0IHtcclxuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XHJcbiAgfVxyXG4gIC5wYWdpbmF0aW9uIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBtYXgtd2lkdGg6IDcwJTtcclxuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgIG1hcmdpbi10b3A6IDQwcHg7XHJcbiAgICBhIHtcclxuICAgICAgQGluY2x1ZGUgdWktdHlwb2dyYXBoeShib2R5Mik7XHJcbiAgICAgIGNvbG9yOiAjMDA3MGNkO1xyXG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICY6aG92ZXIge1xyXG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICAuYWN0aXZlIGF7XHJcbiAgICAgIGNvbG9yOiBjb2xvcihncmV5KTtcclxuICAgIH1cclxuICB9XHJcbn0gICAgXHJcbiIsIkBpbXBvcnQgXCIuLi8uLi9hYnN0cmFjdHMvbWl4aW5zXCI7XHJcbkBpbXBvcnQgXCIuLi8uLi9hYnN0cmFjdHMvdmFyc1wiO1xyXG5pbnB1dCB7XHJcbiAgYm9yZGVyLXJhZGl1czogMDtcclxufVxyXG4iLCJAaW1wb3J0ICcuL3ZhcmlhYmxlcyc7XHJcbkBpbXBvcnQgJ35pb3RhY3NzLXRvb2xzLXR5cGUvdG9vbHMudHlwZSc7XHJcblxyXG5AbWl4aW4gdWktdHlwb2dyYXBoeS1iYXNlKCRmb250LWZhbWlseTogJHVpLXR5cG9ncmFwaHktc3RhY2stZGVmYXVsdCkge1xyXG4gIGZvbnQtZmFtaWx5OiBpZigkZm9udC1mYW1pbHkgIT0gbnVsbCwgJGZvbnQtZmFtaWx5LCAkdWktdHlwb2dyYXBoeS1zdGFjay1kZWZhdWx0KTtcclxuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xyXG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xyXG59XHJcblxyXG5AbWl4aW4gdWktdHlwb2dyYXBoeSgkc3R5bGUpIHtcclxuICBAaWYgbWFwLWhhcy1rZXkoJHVpLXR5cG9ncmFwaHktc3R5bGVzLCAkc3R5bGUpIHtcclxuICAgICRzdHlsZTogbWFwLWdldCgkdWktdHlwb2dyYXBoeS1zdHlsZXMsICRzdHlsZSk7XHJcbiAgICAkZm9udC1mYW1pbHk6IG1hcC1nZXQoJHN0eWxlLCBmb250LWZhbWlseSk7XHJcblxyXG4gICAgQGluY2x1ZGUgdWktdHlwb2dyYXBoeS1iYXNlKCRmb250LWZhbWlseSk7XHJcbiAgICBAaW5jbHVkZSBpb3RhLXR5cGUobWFwLWdldCgkc3R5bGUsIHNpemVzKSk7XHJcblxyXG4gICAgLy8gUmVtb3ZlIHByb3BlcnRpZXMgdGhhdCBkbyBub3QgbmVlZCB0byBiZSBnZW5lcmF0ZWQgYmVsb3dcclxuICAgICRwcm9wczogbWFwLXJlbW92ZSgkc3R5bGUsIGZvbnQtZmFtaWx5LCBtYXJnaW4sIHNpemVzKTtcclxuICAgICRrZXlzOiBtYXAta2V5cygkcHJvcHMpO1xyXG5cclxuICAgIEBlYWNoICRrZXkgaW4gJGtleXMge1xyXG4gICAgICAjeyRrZXl9OiBtYXAtZ2V0KCRwcm9wcywgJGtleSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBAZWxzZSB7XHJcbiAgICBAd2FybignQ291bGQgbm90IGZpbmQgYCN7JHN0eWxlfWAgaW4gYCR1aS10eXBvZ3JhcGh5LXN0eWxlc2AnKTtcclxuICB9XHJcbn1cclxuXHJcbkBtaXhpbiB1aS10eXBvZ3JhcGh5LW1hcmdpbigkc3R5bGUpIHtcclxuICBtYXJnaW46IG1hcC1nZXQobWFwLWdldCgkdWktdHlwb2dyYXBoeS1zdHlsZXMsICRzdHlsZSksIG1hcmdpbik7XHJcbn1cclxuIiwiQG1peGluIF9pb3RhLWV4dHJhY3QtdHlwZS1zaXplcygkc2l6ZXMpIHtcblxuICBAaWYgKCBsZW5ndGgoJHNpemVzKSA9PSAyICkge1xuICAgIGZvbnQtc2l6ZTogbnRoKCRzaXplcywgMSk7XG4gICAgbGluZS1oZWlnaHQ6IG50aCgkc2l6ZXMsIDIpO1xuICB9XG5cbiAgQGVsc2Uge1xuICAgIGZvbnQtc2l6ZTogJHNpemVzOyAgXG4gIH1cbiAgXG59XG4iLCJAbWl4aW4gX2lvdGEtZ2VuZXJhdGUtdHlwZS1zaXplcygkdmFsdWVzLCAkYnJlYWtwb2ludHMpIHtcblxuICBAaWYgdHlwZS1vZigkdmFsdWVzKSA9PSAnbWFwJyB7XG5cbiAgICBAaWYgbWFwLWhhcy1rZXkoJHZhbHVlcywgbnVsbCkge1xuXG4gICAgICBAaW5jbHVkZSBfaW90YS1leHRyYWN0LXR5cGUtc2l6ZXMobWFwLWdldCgkdmFsdWVzLCBudWxsKSk7XG5cbiAgICB9XG4gIFxuICAgIEBlYWNoICRicmVha3BvaW50LCAkc2l6ZXMgaW4gJHZhbHVlcyB7XG5cbiAgICAgIEBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsICRicmVha3BvaW50KSB7XG4gICAgICBcbiAgICAgICAgQG1lZGlhICN7bWFwLWdldCgkYnJlYWtwb2ludHMsICRicmVha3BvaW50KX0ge1xuICAgICAgXG4gICAgICAgICAgQGluY2x1ZGUgX2lvdGEtZXh0cmFjdC10eXBlLXNpemVzKCRzaXplcyk7XG5cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICB9XG5cbiAgfVxuXG4gIEBpZiB0eXBlLW9mKCR2YWx1ZXMpID09ICdudW1iZXInIG9yIHR5cGUtb2YoJHZhbHVlcykgPT0gJ2xpc3QnIHtcblxuICAgIEBpbmNsdWRlIF9pb3RhLWV4dHJhY3QtdHlwZS1zaXplcygkdmFsdWVzKTtcblxuICB9XG59XG4iLCJAbWl4aW4gdGFncyB7XHJcbiAgYm9yZGVyOiAxcHggc29saWQgY29sb3Ioc2Vjb25kYXJ5KTtcclxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgY29sb3I6IGNvbG9yKHNlY29uZGFyeSk7XHJcbiAgcGFkZGluZzogc3BhY2UoMC40KSBzcGFjZSgpO1xyXG4gIG1hcmdpbjogMCBzcGFjZSgyKSBzcGFjZSgyKSAwO1xyXG4gIHRyYW5zaXRpb246ICRnbG9iYWwtdHJhbnNpdGlvbjtcclxuICBAaW5jbHVkZSB1aS10eXBvZ3JhcGh5KGJyZWFkY3J1bWIpO1xyXG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuXHJcbiAgJjpob3ZlciwgXHJcbiAgJjpmb2N1cyxcclxuICAmOmFjdGl2ZSB7XHJcbiAgICBjb2xvcjogY29sb3IocHJpbWFyeS1jb250cmFzdCk7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvcihzZWNvbmRhcnkpO1xyXG4gIH1cclxuXHJcbiAgQGluY2x1ZGUgbXEobWQpIHtcclxuICAgIG1hcmdpbjogMCBzcGFjZSgpIHNwYWNlKCkgMDtcclxuICB9XHJcbn0iLCIkZ2xvYmFsLXRyYW5zaXRpb24tZHVyYXRpb246IDMwMG1zO1xyXG4kZ2xvYmFsLXRyYW5zaXRpb24tZWFzaW5nOiBlYXNlLWluLW91dDtcclxuJGdsb2JhbC10cmFuc2l0aW9uOiBhbGwgJGdsb2JhbC10cmFuc2l0aW9uLWR1cmF0aW9uIGVhc2UtaW4tb3V0OyIsIi8vbW9kZGVkIHRvIHVzZSBweFxyXG5cclxuQGNoYXJzZXQgXCJVVEYtOFwiOyAvLyBGaXhlcyBhbiBpc3N1ZSB3aGVyZSBSdWJ5IGxvY2FsZSBpcyBub3Qgc2V0IHByb3Blcmx5XHJcbiAgICAgICAgICAgICAgICAgIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vc2Fzcy1tcS9zYXNzLW1xL3B1bGwvMTBcclxuXHJcbi8vLyBCYXNlIGZvbnQgc2l6ZSBvbiB0aGUgYDxib2R5PmAgZWxlbWVudFxyXG4vLy8gQHR5cGUgTnVtYmVyICh1bml0KVxyXG4kbXEtYmFzZS1mb250LXNpemU6IDE2cHggIWRlZmF1bHQ7XHJcblxyXG4vLy8gUmVzcG9uc2l2ZSBtb2RlXHJcbi8vL1xyXG4vLy8gU2V0IHRvIGBmYWxzZWAgdG8gZW5hYmxlIHN1cHBvcnQgZm9yIGJyb3dzZXJzIHRoYXQgZG8gbm90IHN1cHBvcnQgQG1lZGlhIHF1ZXJpZXMsXHJcbi8vLyAoSUUgPD0gOCwgRmlyZWZveCA8PSAzLCBPcGVyYSA8PSA5KVxyXG4vLy9cclxuLy8vIFlvdSBjb3VsZCBjcmVhdGUgYSBzdHlsZXNoZWV0IHNlcnZlZCBleGNsdXNpdmVseSB0byBvbGRlciBicm93c2VycyxcclxuLy8vIHdoZXJlIEBtZWRpYSBxdWVyaWVzIGFyZSByYXN0ZXJpemVkXHJcbi8vL1xyXG4vLy8gQGV4YW1wbGUgc2Nzc1xyXG4vLy8gIC8vIG9sZC1pZS5zY3NzXHJcbi8vLyAgJG1xLXJlc3BvbnNpdmU6IGZhbHNlO1xyXG4vLy8gIEBpbXBvcnQgJ21haW4nOyAvLyBAbWVkaWEgcXVlcmllcyBpbiB0aGlzIGZpbGUgd2lsbCBiZSByYXN0ZXJpemVkIHVwIHRvICRtcS1zdGF0aWMtYnJlYWtwb2ludFxyXG4vLy8gICAgICAgICAgICAgICAgICAgLy8gbGFyZ2VyIGJyZWFrcG9pbnRzIHdpbGwgYmUgaWdub3JlZFxyXG4vLy9cclxuLy8vIEB0eXBlIEJvb2xlYW5cclxuLy8vIEBsaW5rIGh0dHBzOi8vZ2l0aHViLmNvbS9zYXNzLW1xL3Nhc3MtbXEjcmVzcG9uc2l2ZS1tb2RlLW9mZiBEaXNhYmxlZCByZXNwb25zaXZlIG1vZGUgZG9jdW1lbnRhdGlvblxyXG4kbXEtcmVzcG9uc2l2ZTogdHJ1ZSAhZGVmYXVsdDtcclxuXHJcbi8vLyBCcmVha3BvaW50IGxpc3RcclxuLy8vXHJcbi8vLyBOYW1lIHlvdXIgYnJlYWtwb2ludHMgaW4gYSB3YXkgdGhhdCBjcmVhdGVzIGEgdWJpcXVpdG91cyBsYW5ndWFnZVxyXG4vLy8gYWNyb3NzIHRlYW0gbWVtYmVycy4gSXQgd2lsbCBpbXByb3ZlIGNvbW11bmljYXRpb24gYmV0d2VlblxyXG4vLy8gc3Rha2Vob2xkZXJzLCBkZXNpZ25lcnMsIGRldmVsb3BlcnMsIGFuZCB0ZXN0ZXJzLlxyXG4vLy9cclxuLy8vIEB0eXBlIE1hcFxyXG4vLy8gQGxpbmsgaHR0cHM6Ly9naXRodWIuY29tL3Nhc3MtbXEvc2Fzcy1tcSNzZWVpbmctdGhlLWN1cnJlbnRseS1hY3RpdmUtYnJlYWtwb2ludCBGdWxsIGRvY3VtZW50YXRpb24gYW5kIGV4YW1wbGVzXHJcbiRtcS1icmVha3BvaW50czogKFxyXG4gICAgbW9iaWxlOiAgMzIwcHgsXHJcbiAgICB0YWJsZXQ6ICA3NDBweCxcclxuICAgIGRlc2t0b3A6IDk4MHB4LFxyXG4gICAgd2lkZTogICAgMTMwMHB4XHJcbikgIWRlZmF1bHQ7XHJcblxyXG4vLy8gU3RhdGljIGJyZWFrcG9pbnQgKGZvciBmaXhlZC13aWR0aCBsYXlvdXRzKVxyXG4vLy9cclxuLy8vIERlZmluZSB0aGUgYnJlYWtwb2ludCBmcm9tICRtcS1icmVha3BvaW50cyB0aGF0IHNob3VsZFxyXG4vLy8gYmUgdXNlZCBhcyB0aGUgdGFyZ2V0IHdpZHRoIGZvciB0aGUgZml4ZWQtd2lkdGggbGF5b3V0XHJcbi8vLyAoaS5lLiB3aGVuICRtcS1yZXNwb25zaXZlIGlzIHNldCB0byAnZmFsc2UnKSBpbiBhIG9sZC1pZS5zY3NzXHJcbi8vL1xyXG4vLy8gQGV4YW1wbGUgc2Nzc1xyXG4vLy8gIC8vIHRhYmxldC1vbmx5LnNjc3NcclxuLy8vICAvL1xyXG4vLy8gIC8vIElnbm9yZSBhbGwgc3R5bGVzIGFib3ZlIHRhYmxldCBicmVha3BvaW50LFxyXG4vLy8gIC8vIGFuZCBmaXggdGhlIHN0eWxlcyAoZS5nLiBsYXlvdXQpIGF0IHRhYmxldCB3aWR0aFxyXG4vLy8gICRtcS1yZXNwb25zaXZlOiBmYWxzZTtcclxuLy8vICAkbXEtc3RhdGljLWJyZWFrcG9pbnQ6IHRhYmxldDtcclxuLy8vICBAaW1wb3J0ICdtYWluJzsgLy8gQG1lZGlhIHF1ZXJpZXMgaW4gdGhpcyBmaWxlIHdpbGwgYmUgcmFzdGVyaXplZCB1cCB0byB0YWJsZXRcclxuLy8vICAgICAgICAgICAgICAgICAgIC8vIGxhcmdlciBicmVha3BvaW50cyB3aWxsIGJlIGlnbm9yZWRcclxuLy8vXHJcbi8vLyBAdHlwZSBTdHJpbmdcclxuLy8vIEBsaW5rIGh0dHBzOi8vZ2l0aHViLmNvbS9zYXNzLW1xL3Nhc3MtbXEjYWRkaW5nLWN1c3RvbS1icmVha3BvaW50cyBGdWxsIGRvY3VtZW50YXRpb24gYW5kIGV4YW1wbGVzXHJcbiRtcS1zdGF0aWMtYnJlYWtwb2ludDogZGVza3RvcCAhZGVmYXVsdDtcclxuXHJcbi8vLyBTaG93IGJyZWFrcG9pbnRzIGluIHRoZSB0b3AgcmlnaHQgY29ybmVyXHJcbi8vL1xyXG4vLy8gSWYgeW91IHdhbnQgdG8gZGlzcGxheSB0aGUgY3VycmVudGx5IGFjdGl2ZSBicmVha3BvaW50IGluIHRoZSB0b3BcclxuLy8vIHJpZ2h0IGNvcm5lciBvZiB5b3VyIHNpdGUgZHVyaW5nIGRldmVsb3BtZW50LCBhZGQgdGhlIGJyZWFrcG9pbnRzXHJcbi8vLyB0byB0aGlzIGxpc3QsIG9yZGVyZWQgYnkgd2lkdGgsIGUuZy4gKG1vYmlsZSwgdGFibGV0LCBkZXNrdG9wKS5cclxuLy8vXHJcbi8vLyBAdHlwZSBtYXBcclxuJG1xLXNob3ctYnJlYWtwb2ludHM6ICgpICFkZWZhdWx0O1xyXG5cclxuLy8vIEN1c3RvbWl6ZSB0aGUgbWVkaWEgdHlwZSAoZS5nLiBgQG1lZGlhIHNjcmVlbmAgb3IgYEBtZWRpYSBwcmludGApXHJcbi8vLyBCeSBkZWZhdWx0IHNhc3MtbXEgdXNlcyBhbiBcImFsbFwiIG1lZGlhIHR5cGUgKGBAbWVkaWEgYWxsIGFuZCDigKZgKVxyXG4vLy9cclxuLy8vIEB0eXBlIFN0cmluZ1xyXG4vLy8gQGxpbmsgaHR0cHM6Ly9naXRodWIuY29tL3Nhc3MtbXEvc2Fzcy1tcSNjaGFuZ2luZy1tZWRpYS10eXBlIEZ1bGwgZG9jdW1lbnRhdGlvbiBhbmQgZXhhbXBsZXNcclxuJG1xLW1lZGlhLXR5cGU6IGFsbCAhZGVmYXVsdDtcclxuXHJcbi8vLyBDb252ZXJ0IHBpeGVscyB0byBlbXNcclxuLy8vXHJcbi8vLyBAcGFyYW0ge051bWJlcn0gJHB4IC0gdmFsdWUgdG8gY29udmVydFxyXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRiYXNlLWZvbnQtc2l6ZSAoJG1xLWJhc2UtZm9udC1zaXplKSAtIGA8Ym9keT5gIGZvbnQgc2l6ZVxyXG4vLy9cclxuLy8vIEBleGFtcGxlIHNjc3NcclxuLy8vICAkZm9udC1zaXplLWluLWVtczogbXEtcHgyZW0oMTZweCk7XHJcbi8vLyAgcCB7IGZvbnQtc2l6ZTogbXEtcHgyZW0oMTZweCk7IH1cclxuLy8vXHJcbi8vLyBAcmVxdWlyZXMgJG1xLWJhc2UtZm9udC1zaXplXHJcbi8vLyBAcmV0dXJucyB7TnVtYmVyfVxyXG5AZnVuY3Rpb24gbXEtcHgyZW0oJHB4LCAkYmFzZS1mb250LXNpemU6ICRtcS1iYXNlLWZvbnQtc2l6ZSkge1xyXG4gICAgQGlmIHVuaXRsZXNzKCRweCkge1xyXG4gICAgICAgIEB3YXJuIFwiQXNzdW1pbmcgI3skcHh9IHRvIGJlIGluIHBpeGVscywgYXR0ZW1wdGluZyB0byBjb252ZXJ0IGl0IGludG8gcGl4ZWxzLlwiO1xyXG4gICAgICAgIEByZXR1cm4gbXEtcHgyZW0oJHB4ICogMXB4LCAkYmFzZS1mb250LXNpemUpO1xyXG4gICAgfSBAZWxzZSBpZiB1bml0KCRweCkgPT0gZW0ge1xyXG4gICAgICAgIEByZXR1cm4gJHB4O1xyXG4gICAgfVxyXG4gICAgQHJldHVybiAoJHB4IC8gJGJhc2UtZm9udC1zaXplKSAqIDFlbTtcclxufVxyXG5cclxuLy8vIEdldCBhIGJyZWFrcG9pbnQncyB3aWR0aFxyXG4vLy9cclxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkbmFtZSAtIE5hbWUgb2YgdGhlIGJyZWFrcG9pbnQuIE9uZSBvZiAkbXEtYnJlYWtwb2ludHNcclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBzY3NzXHJcbi8vLyAgJHRhYmxldC13aWR0aDogbXEtZ2V0LWJyZWFrcG9pbnQtd2lkdGgodGFibGV0KTtcclxuLy8vICBAbWVkaWEgKG1pbi13aWR0aDogbXEtZ2V0LWJyZWFrcG9pbnQtd2lkdGgoZGVza3RvcCkpIHt9XHJcbi8vL1xyXG4vLy8gQHJlcXVpcmVzIHtWYXJpYWJsZX0gJG1xLWJyZWFrcG9pbnRzXHJcbi8vL1xyXG4vLy8gQHJldHVybnMge051bWJlcn0gVmFsdWUgaW4gcGl4ZWxzXHJcbkBmdW5jdGlvbiBtcS1nZXQtYnJlYWtwb2ludC13aWR0aCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkbXEtYnJlYWtwb2ludHMpIHtcclxuICAgIEBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsICRuYW1lKSB7XHJcbiAgICAgICAgQHJldHVybiBtYXAtZ2V0KCRicmVha3BvaW50cywgJG5hbWUpO1xyXG4gICAgfSBAZWxzZSB7XHJcbiAgICAgICAgQHdhcm4gXCJCcmVha3BvaW50ICN7JG5hbWV9IHdhc24ndCBmb3VuZCBpbiAkYnJlYWtwb2ludHMuXCI7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vLyBNZWRpYSBRdWVyeSBtaXhpblxyXG4vLy9cclxuLy8vIEBwYXJhbSB7U3RyaW5nIHwgQm9vbGVhbn0gJGZyb20gKGZhbHNlKSAtIE9uZSBvZiAkbXEtYnJlYWtwb2ludHNcclxuLy8vIEBwYXJhbSB7U3RyaW5nIHwgQm9vbGVhbn0gJHVudGlsIChmYWxzZSkgLSBPbmUgb2YgJG1xLWJyZWFrcG9pbnRzXHJcbi8vLyBAcGFyYW0ge1N0cmluZyB8IEJvb2xlYW59ICRhbmQgKGZhbHNlKSAtIEFkZGl0aW9uYWwgbWVkaWEgcXVlcnkgcGFyYW1ldGVyc1xyXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRtZWRpYS10eXBlICgkbXEtbWVkaWEtdHlwZSkgLSBNZWRpYSB0eXBlOiBzY3JlZW4sIHByaW504oCmXHJcbi8vL1xyXG4vLy8gQGlnbm9yZSBVbmRvY3VtZW50ZWQgQVBJLCBmb3IgYWR2YW5jZWQgdXNlIG9ubHk6XHJcbi8vLyBAaWdub3JlIEBwYXJhbSB7TWFwfSAkYnJlYWtwb2ludHMgKCRtcS1icmVha3BvaW50cylcclxuLy8vIEBpZ25vcmUgQHBhcmFtIHtTdHJpbmd9ICRzdGF0aWMtYnJlYWtwb2ludCAoJG1xLXN0YXRpYy1icmVha3BvaW50KVxyXG4vLy9cclxuLy8vIEBjb250ZW50IHN0eWxpbmcgcnVsZXMsIHdyYXBwZWQgaW50byBhIEBtZWRpYSBxdWVyeSB3aGVuICRyZXNwb25zaXZlIGlzIHRydWVcclxuLy8vXHJcbi8vLyBAcmVxdWlyZXMge1ZhcmlhYmxlfSAkbXEtbWVkaWEtdHlwZVxyXG4vLy8gQHJlcXVpcmVzIHtWYXJpYWJsZX0gJG1xLWJyZWFrcG9pbnRzXHJcbi8vLyBAcmVxdWlyZXMge1ZhcmlhYmxlfSAkbXEtc3RhdGljLWJyZWFrcG9pbnRcclxuLy8vIEByZXF1aXJlcyB7ZnVuY3Rpb259IG1xLXB4MmVtXHJcbi8vLyBAcmVxdWlyZXMge2Z1bmN0aW9ufSBtcS1nZXQtYnJlYWtwb2ludC13aWR0aFxyXG4vLy9cclxuLy8vIEBsaW5rIGh0dHBzOi8vZ2l0aHViLmNvbS9zYXNzLW1xL3Nhc3MtbXEjcmVzcG9uc2l2ZS1tb2RlLW9uLWRlZmF1bHQgRnVsbCBkb2N1bWVudGF0aW9uIGFuZCBleGFtcGxlc1xyXG4vLy9cclxuLy8vIEBleGFtcGxlIHNjc3NcclxuLy8vICAuZWxlbWVudCB7XHJcbi8vLyAgICBAaW5jbHVkZSBtcSgkZnJvbTogbW9iaWxlKSB7XHJcbi8vLyAgICAgIGNvbG9yOiByZWQ7XHJcbi8vLyAgICB9XHJcbi8vLyAgICBAaW5jbHVkZSBtcSgkdW50aWw6IHRhYmxldCkge1xyXG4vLy8gICAgICBjb2xvcjogYmx1ZTtcclxuLy8vICAgIH1cclxuLy8vICAgIEBpbmNsdWRlIG1xKG1vYmlsZSwgdGFibGV0KSB7XHJcbi8vLyAgICAgIGNvbG9yOiBncmVlbjtcclxuLy8vICAgIH1cclxuLy8vICAgIEBpbmNsdWRlIG1xKCRmcm9tOiB0YWJsZXQsICRhbmQ6ICcob3JpZW50YXRpb246IGxhbmRzY2FwZSknKSB7XHJcbi8vLyAgICAgIGNvbG9yOiB0ZWFsO1xyXG4vLy8gICAgfVxyXG4vLy8gICAgQGluY2x1ZGUgbXEoOTUwcHgpIHtcclxuLy8vICAgICAgY29sb3I6IGhvdHBpbms7XHJcbi8vLyAgICB9XHJcbi8vLyAgICBAaW5jbHVkZSBtcSh0YWJsZXQsICRtZWRpYS10eXBlOiBzY3JlZW4pIHtcclxuLy8vICAgICAgY29sb3I6IGhvdHBpbms7XHJcbi8vLyAgICB9XHJcbi8vLyAgICAvLyBBZHZhbmNlZCB1c2U6XHJcbi8vLyAgICAkbXktYnJlYWtwb2ludHM6IChMOiA5MDBweCwgWEw6IDEyMDBweCk7XHJcbi8vLyAgICBAaW5jbHVkZSBtcShMLCAkYnJlYWtwb2ludHM6ICRteS1icmVha3BvaW50cywgJHN0YXRpYy1icmVha3BvaW50OiBMKSB7XHJcbi8vLyAgICAgIGNvbG9yOiBob3RwaW5rO1xyXG4vLy8gICAgfVxyXG4vLy8gIH1cclxuQG1peGluIG1xKFxyXG4gICAgJGZyb206IGZhbHNlLFxyXG4gICAgJHVudGlsOiBmYWxzZSxcclxuICAgICRhbmQ6IGZhbHNlLFxyXG4gICAgJGVtcy1vbjogZmFsc2UsXHJcbiAgICAkbWVkaWEtdHlwZTogJG1xLW1lZGlhLXR5cGUsXHJcbiAgICAkYnJlYWtwb2ludHM6ICRtcS1icmVha3BvaW50cyxcclxuICAgICRyZXNwb25zaXZlOiAkbXEtcmVzcG9uc2l2ZSxcclxuICAgICRzdGF0aWMtYnJlYWtwb2ludDogJG1xLXN0YXRpYy1icmVha3BvaW50XHJcbikge1xyXG4gICAgJG1pbi13aWR0aDogMDtcclxuICAgICRtYXgtd2lkdGg6IDA7XHJcbiAgICAkbWVkaWEtcXVlcnk6ICcnO1xyXG5cclxuICAgIC8vIEZyb206IHRoaXMgYnJlYWtwb2ludCAoaW5jbHVzaXZlKVxyXG4gICAgQGlmICRmcm9tIHtcclxuICAgICAgICBAaWYgdHlwZS1vZigkZnJvbSkgPT0gbnVtYmVyIHtcclxuICAgICAgICAgICAgJG1pbi13aWR0aDogaWYoJGVtcy1vbiwgbXEtcHgyZW0oJGZyb20pLCAoJGZyb20pKTtcclxuICAgICAgICB9IEBlbHNlIHtcclxuICAgICAgICAgICAgJG1pbi13aWR0aDogaWYoJGVtcy1vbiwgbXEtcHgyZW0obXEtZ2V0LWJyZWFrcG9pbnQtd2lkdGgoJGZyb20sICRicmVha3BvaW50cykpLCBtcS1nZXQtYnJlYWtwb2ludC13aWR0aCgkZnJvbSwgJGJyZWFrcG9pbnRzKSk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC8vIFVudGlsOiB0aGF0IGJyZWFrcG9pbnQgKGV4Y2x1c2l2ZSlcclxuICAgIEBpZiAkdW50aWwge1xyXG4gICAgICAgIEBpZiB0eXBlLW9mKCR1bnRpbCkgPT0gbnVtYmVyIHtcclxuICAgICAgICAgICAgJG1heC13aWR0aDogaWYoJGVtcy1vbiwgbXEtcHgyZW0oJHVudGlsKSwoJHVudGlsKSk7XHJcbiAgICAgICAgfSBAZWxzZSB7XHJcbiAgICAgICAgICAgICRtYXgtd2lkdGg6IGlmKCRlbXMtb24sIG1xLXB4MmVtKG1xLWdldC1icmVha3BvaW50LXdpZHRoKCR1bnRpbCwgJGJyZWFrcG9pbnRzKSkgLSAuMDFlbSwgbXEtZ2V0LWJyZWFrcG9pbnQtd2lkdGgoJHVudGlsLCAkYnJlYWtwb2ludHMpIC0gMXB4KTsgXHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC8vIFJlc3BvbnNpdmUgc3VwcG9ydCBpcyBkaXNhYmxlZCwgcmFzdGVyaXplIHRoZSBvdXRwdXQgb3V0c2lkZSBAbWVkaWEgYmxvY2tzXHJcbiAgICAvLyBUaGUgYnJvd3NlciB3aWxsIHJlbHkgb24gdGhlIGNhc2NhZGUgaXRzZWxmLlxyXG4gICAgQGlmICRyZXNwb25zaXZlID09IGZhbHNlIHtcclxuICAgICAgICAkc3RhdGljLWJyZWFrcG9pbnQtd2lkdGg6IG1xLWdldC1icmVha3BvaW50LXdpZHRoKCRzdGF0aWMtYnJlYWtwb2ludCwgJGJyZWFrcG9pbnRzKTtcclxuICAgICAgICAkdGFyZ2V0LXdpZHRoOiBpZigkZW1zLW9uLCBtcS1weDJlbSgkc3RhdGljLWJyZWFrcG9pbnQtd2lkdGgpLCAkc3RhdGljLWJyZWFrcG9pbnQtd2lkdGgpO1xyXG5cclxuICAgICAgICAvLyBPdXRwdXQgb25seSBydWxlcyB0aGF0IHN0YXJ0IGF0IG9yIHNwYW4gb3VyIHRhcmdldCB3aWR0aFxyXG4gICAgICAgIEBpZiAoXHJcbiAgICAgICAgICAgICRhbmQgPT0gZmFsc2VcclxuICAgICAgICAgICAgYW5kICRtaW4td2lkdGggPD0gJHRhcmdldC13aWR0aFxyXG4gICAgICAgICAgICBhbmQgKFxyXG4gICAgICAgICAgICAgICAgJHVudGlsID09IGZhbHNlIG9yICRtYXgtd2lkdGggPj0gJHRhcmdldC13aWR0aFxyXG4gICAgICAgICAgICApXHJcbiAgICAgICAgKSB7XHJcbiAgICAgICAgICAgIEBjb250ZW50O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAvLyBSZXNwb25zaXZlIHN1cHBvcnQgaXMgZW5hYmxlZCwgb3V0cHV0IHJ1bGVzIGluc2lkZSBAbWVkaWEgcXVlcmllc1xyXG4gICAgQGVsc2Uge1xyXG4gICAgICAgIEBpZiAkbWluLXdpZHRoICE9IDAgeyAkbWVkaWEtcXVlcnk6ICcjeyRtZWRpYS1xdWVyeX0gYW5kIChtaW4td2lkdGg6ICN7JG1pbi13aWR0aH0pJzsgfVxyXG4gICAgICAgIEBpZiAkbWF4LXdpZHRoICE9IDAgeyAkbWVkaWEtcXVlcnk6ICcjeyRtZWRpYS1xdWVyeX0gYW5kIChtYXgtd2lkdGg6ICN7JG1heC13aWR0aH0pJzsgfVxyXG4gICAgICAgIEBpZiAkYW5kICAgICAgICAgICAgeyAkbWVkaWEtcXVlcnk6ICcjeyRtZWRpYS1xdWVyeX0gYW5kICN7JGFuZH0nOyB9XHJcblxyXG4gICAgICAgIC8vIFJlbW92ZSB1bm5lY2Vzc2FyeSBtZWRpYSBxdWVyeSBwcmVmaXggJ2FsbCBhbmQgJ1xyXG4gICAgICAgIEBpZiAoJG1lZGlhLXR5cGUgPT0gJ2FsbCcgYW5kICRtZWRpYS1xdWVyeSAhPSAnJykge1xyXG4gICAgICAgICAgICAkbWVkaWEtdHlwZTogJyc7XHJcbiAgICAgICAgICAgICRtZWRpYS1xdWVyeTogc3RyLXNsaWNlKHVucXVvdGUoJG1lZGlhLXF1ZXJ5KSwgNik7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBAbWVkaWEgI3skbWVkaWEtdHlwZSArICRtZWRpYS1xdWVyeX0ge1xyXG4gICAgICAgICAgICBAY29udGVudDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8vLyBRdWljayBzb3J0XHJcbi8vL1xyXG4vLy8gQGF1dGhvciBTYW0gUmljaGFyZHNcclxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxyXG4vLy8gQHBhcmFtIHtMaXN0fSAkbGlzdCAtIExpc3QgdG8gc29ydFxyXG4vLy8gQHJldHVybnMge0xpc3R9IFNvcnRlZCBMaXN0XHJcbkBmdW5jdGlvbiBfbXEtcXVpY2stc29ydCgkbGlzdCkge1xyXG4gICAgJGxlc3M6ICAoKTtcclxuICAgICRlcXVhbDogKCk7XHJcbiAgICAkbGFyZ2U6ICgpO1xyXG5cclxuICAgIEBpZiBsZW5ndGgoJGxpc3QpID4gMSB7XHJcbiAgICAgICAgJHNlZWQ6IG50aCgkbGlzdCwgY2VpbChsZW5ndGgoJGxpc3QpIC8gMikpO1xyXG5cclxuICAgICAgICBAZWFjaCAkaXRlbSBpbiAkbGlzdCB7XHJcbiAgICAgICAgICAgIEBpZiAoJGl0ZW0gPT0gJHNlZWQpIHtcclxuICAgICAgICAgICAgICAgICRlcXVhbDogYXBwZW5kKCRlcXVhbCwgJGl0ZW0pO1xyXG4gICAgICAgICAgICB9IEBlbHNlIGlmICgkaXRlbSA8ICRzZWVkKSB7XHJcbiAgICAgICAgICAgICAgICAkbGVzczogYXBwZW5kKCRsZXNzLCAkaXRlbSk7XHJcbiAgICAgICAgICAgIH0gQGVsc2UgaWYgKCRpdGVtID4gJHNlZWQpIHtcclxuICAgICAgICAgICAgICAgICRsYXJnZTogYXBwZW5kKCRsYXJnZSwgJGl0ZW0pO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBAcmV0dXJuIGpvaW4oam9pbihfbXEtcXVpY2stc29ydCgkbGVzcyksICRlcXVhbCksIF9tcS1xdWljay1zb3J0KCRsYXJnZSkpO1xyXG4gICAgfVxyXG5cclxuICAgIEByZXR1cm4gJGxpc3Q7XHJcbn1cclxuXHJcbi8vLyBTb3J0IGEgbWFwIGJ5IHZhbHVlcyAod29ya3Mgd2l0aCBudW1iZXJzIG9ubHkpXHJcbi8vL1xyXG4vLy8gQGFjY2VzcyBwcml2YXRlXHJcbi8vLyBAcGFyYW0ge01hcH0gJG1hcCAtIE1hcCB0byBzb3J0XHJcbi8vLyBAcmV0dXJucyB7TWFwfSBNYXAgc29ydGVkIGJ5IHZhbHVlXHJcbkBmdW5jdGlvbiBfbXEtbWFwLXNvcnQtYnktdmFsdWUoJG1hcCkge1xyXG4gICAgJG1hcC1zb3J0ZWQ6ICgpO1xyXG4gICAgJG1hcC1rZXlzOiBtYXAta2V5cygkbWFwKTtcclxuICAgICRtYXAtdmFsdWVzOiBtYXAtdmFsdWVzKCRtYXApO1xyXG4gICAgJG1hcC12YWx1ZXMtc29ydGVkOiBfbXEtcXVpY2stc29ydCgkbWFwLXZhbHVlcyk7XHJcblxyXG4gICAgLy8gUmVvcmRlciBrZXkvdmFsdWUgcGFpcnMgYmFzZWQgb24ga2V5IHZhbHVlc1xyXG4gICAgQGVhY2ggJHZhbHVlIGluICRtYXAtdmFsdWVzLXNvcnRlZCB7XHJcbiAgICAgICAgJGluZGV4OiBpbmRleCgkbWFwLXZhbHVlcywgJHZhbHVlKTtcclxuICAgICAgICAka2V5OiBudGgoJG1hcC1rZXlzLCAkaW5kZXgpO1xyXG4gICAgICAgICRtYXAtc29ydGVkOiBtYXAtbWVyZ2UoJG1hcC1zb3J0ZWQsICgka2V5OiAkdmFsdWUpKTtcclxuXHJcbiAgICAgICAgLy8gVW5zZXQgdGhlIHZhbHVlIGluICRtYXAtdmFsdWVzIHRvIHByZXZlbnQgdGhlIGxvb3BcclxuICAgICAgICAvLyBmcm9tIGZpbmRpbmcgdGhlIHNhbWUgaW5kZXggdHdpY2VcclxuICAgICAgICAkbWFwLXZhbHVlczogc2V0LW50aCgkbWFwLXZhbHVlcywgJGluZGV4LCAwKTtcclxuICAgIH1cclxuXHJcbiAgICBAcmV0dXJuICRtYXAtc29ydGVkO1xyXG59XHJcblxyXG4vLy8gQWRkIGEgYnJlYWtwb2ludFxyXG4vLy9cclxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkbmFtZSAtIE5hbWUgb2YgdGhlIGJyZWFrcG9pbnRcclxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkd2lkdGggLSBXaWR0aCBvZiB0aGUgYnJlYWtwb2ludFxyXG4vLy9cclxuLy8vIEByZXF1aXJlcyB7VmFyaWFibGV9ICRtcS1icmVha3BvaW50c1xyXG4vLy9cclxuLy8vIEBleGFtcGxlIHNjc3NcclxuLy8vICBAaW5jbHVkZSBtcS1hZGQtYnJlYWtwb2ludCh0dnNjcmVlbiwgMTkyMHB4KTtcclxuLy8vICBAaW5jbHVkZSBtcSh0dnNjcmVlbikge31cclxuQG1peGluIG1xLWFkZC1icmVha3BvaW50KCRuYW1lLCAkd2lkdGgpIHtcclxuICAgICRuZXctYnJlYWtwb2ludDogKCRuYW1lOiAkd2lkdGgpO1xyXG4gICAgJG1xLWJyZWFrcG9pbnRzOiBtYXAtbWVyZ2UoJG1xLWJyZWFrcG9pbnRzLCAkbmV3LWJyZWFrcG9pbnQpICFnbG9iYWw7XHJcbiAgICAkbXEtYnJlYWtwb2ludHM6IF9tcS1tYXAtc29ydC1ieS12YWx1ZSgkbXEtYnJlYWtwb2ludHMpICFnbG9iYWw7XHJcbn1cclxuXHJcbi8vLyBTaG93IHRoZSBhY3RpdmUgYnJlYWtwb2ludCBpbiB0aGUgdG9wIHJpZ2h0IGNvcm5lciBvZiB0aGUgdmlld3BvcnRcclxuLy8vIEBsaW5rIGh0dHBzOi8vZ2l0aHViLmNvbS9zYXNzLW1xL3Nhc3MtbXEjc2VlaW5nLXRoZS1jdXJyZW50bHktYWN0aXZlLWJyZWFrcG9pbnRcclxuLy8vXHJcbi8vLyBAcGFyYW0ge0xpc3R9ICRzaG93LWJyZWFrcG9pbnRzICgkbXEtc2hvdy1icmVha3BvaW50cykgLSBMaXN0IG9mIGJyZWFrcG9pbnRzIHRvIHNob3cgaW4gdGhlIHRvcCByaWdodCBjb3JuZXJcclxuLy8vIEBwYXJhbSB7TWFwfSAkYnJlYWtwb2ludHMgKCRtcS1icmVha3BvaW50cykgLSBCcmVha3BvaW50IG5hbWVzIGFuZCBzaXplc1xyXG4vLy9cclxuLy8vIEByZXF1aXJlcyB7VmFyaWFibGV9ICRtcS1icmVha3BvaW50c1xyXG4vLy8gQHJlcXVpcmVzIHtWYXJpYWJsZX0gJG1xLXNob3ctYnJlYWtwb2ludHNcclxuLy8vXHJcbi8vLyBAZXhhbXBsZSBzY3NzXHJcbi8vLyAgLy8gU2hvdyBicmVha3BvaW50cyB1c2luZyBnbG9iYWwgc2V0dGluZ3NcclxuLy8vICBAaW5jbHVkZSBtcS1zaG93LWJyZWFrcG9pbnRzO1xyXG4vLy9cclxuLy8vICAvLyBTaG93IGJyZWFrcG9pbnRzIHVzaW5nIGN1c3RvbSBzZXR0aW5nc1xyXG4vLy8gIEBpbmNsdWRlIG1xLXNob3ctYnJlYWtwb2ludHMoKEwsIFhMKSwgKFM6IDMwMHB4LCBMOiA4MDBweCwgWEw6IDEyMDBweCkpO1xyXG5AbWl4aW4gbXEtc2hvdy1icmVha3BvaW50cygkc2hvdy1icmVha3BvaW50czogJG1xLXNob3ctYnJlYWtwb2ludHMsICRicmVha3BvaW50czogJG1xLWJyZWFrcG9pbnRzKSB7XHJcbiAgICBib2R5OmJlZm9yZSB7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0ZDRjhFMztcclxuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI0ZCRUVENTtcclxuICAgICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkICNGQkVFRDU7XHJcbiAgICAgICAgY29sb3I6ICNDMDk4NTM7XHJcbiAgICAgICAgZm9udDogc21hbGwtY2FwdGlvbjtcclxuICAgICAgICBwYWRkaW5nOiAzcHggNnB4O1xyXG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG4gICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcclxuICAgICAgICByaWdodDogMDtcclxuICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgei1pbmRleDogMTAwO1xyXG5cclxuICAgICAgICAvLyBMb29wIHRocm91Z2ggdGhlIGJyZWFrcG9pbnRzIHRoYXQgc2hvdWxkIGJlIHNob3duXHJcbiAgICAgICAgQGVhY2ggJHNob3ctYnJlYWtwb2ludCBpbiAkc2hvdy1icmVha3BvaW50cyB7XHJcbiAgICAgICAgICAgICR3aWR0aDogbXEtZ2V0LWJyZWFrcG9pbnQtd2lkdGgoJHNob3ctYnJlYWtwb2ludCwgJGJyZWFrcG9pbnRzKTtcclxuICAgICAgICAgICAgQGluY2x1ZGUgbXEoJHNob3ctYnJlYWtwb2ludCwgJGJyZWFrcG9pbnRzOiAkYnJlYWtwb2ludHMpIHtcclxuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiI3skc2hvdy1icmVha3BvaW50fSDiiaUgI3skd2lkdGh9ICgje21xLXB4MmVtKCR3aWR0aCl9KVwiO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5AaWYgbGVuZ3RoKCRtcS1zaG93LWJyZWFrcG9pbnRzKSA+IDAge1xyXG4gICAgQGluY2x1ZGUgbXEtc2hvdy1icmVha3BvaW50cztcclxufVxyXG4iXX0= */
