/*!*******************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].oneOf[1].use[3]!./assets/sass/pages/page.scss ***!
  \*******************************************************************************************************************************************************************************************************************************************************************************/

.breadcrumb-item + .breadcrumb-item:before {
  display: inline-block;
  font-style: normal;
  font-weight: 400;
  font-variant: normal;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }


.breadcrumb-item + .breadcrumb-item:before {
  font-family: "Font Awesome 6 Pro";
  font-weight: 300; }


.breadcrumb-item + .breadcrumb-item:before {
  display: inline-block;
  font-style: normal;
  font-weight: 400;
  font-variant: normal;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }


.breadcrumb-item + .breadcrumb-item:before {
  font-family: "Font Awesome 6 Pro";
  font-weight: 300; }


.breadcrumb-item + .breadcrumb-item:before {
  display: inline-block;
  font-style: normal;
  font-weight: 400;
  font-variant: normal;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }


.breadcrumb-item + .breadcrumb-item:before {
  font-family: "Font Awesome 6 Pro";
  font-weight: 300; }

.breadcrumb {
  --bs-breadcrumb-padding-x: 0;
  --bs-breadcrumb-padding-y: 0;
  --bs-breadcrumb-margin-bottom: 16px;
  --bs-breadcrumb-margin-bottom: 1rem;
  --bs-breadcrumb-font-size: 12px;
  --bs-breadcrumb-font-size: 0.75rem;
  --bs-breadcrumb-bg: ;
  --bs-breadcrumb-border-radius: ;
  --bs-breadcrumb-divider-color: var(--bs-secondary-color);
  --bs-breadcrumb-item-padding-x: 8px;
  --bs-breadcrumb-item-padding-x: 0.5rem;
  --bs-breadcrumb-item-active-color: #16140F;
  display: flex;
  flex-wrap: wrap;
  padding: var(--bs-breadcrumb-padding-y) var(--bs-breadcrumb-padding-x);
  margin-bottom: var(--bs-breadcrumb-margin-bottom);
  font-size: var(--bs-breadcrumb-font-size);
  list-style: none;
  background-color: var(--bs-breadcrumb-bg);
  border-radius: var(--bs-breadcrumb-border-radius); }

.breadcrumb-item + .breadcrumb-item {
  padding-left: var(--bs-breadcrumb-item-padding-x); }
  .breadcrumb-item + .breadcrumb-item:before {
    float: left;
    padding-right: var(--bs-breadcrumb-item-padding-x);
    color: var(--bs-breadcrumb-divider-color);
    content: var(--bs-breadcrumb-divider, "/") /* rtl: var(--bs-breadcrumb-divider, "/") */; }

.breadcrumb-item.active {
  color: var(--bs-breadcrumb-item-active-color); }

.breadcrumbs {
  position: relative;
  max-width: 100vw;
  margin-right: -12px;
  margin-right: -0.75rem;
  margin-left: -12px;
  margin-left: -0.75rem; }
  .breadcrumbs .breadcrumb {
    flex-wrap: nowrap;
    padding: 12px;
    padding: 0.75rem;
    margin: unset;
    overflow-x: auto; }
    .breadcrumbs .breadcrumb:before, .breadcrumbs .breadcrumb:after {
      position: absolute;
      top: 0;
      display: block;
      height: 100%;
      pointer-events: none;
      content: ""; }
    .breadcrumbs .breadcrumb:before {
      left: 0;
      width: 16px;
      width: 1rem;
      background-image: linear-gradient(90deg, var(--alpha-breadcrumbs-mobile-shadow-color) 0, var(--alpha-breadcrumbs-mobile-shadow-color-end)); }
    .breadcrumbs .breadcrumb:after {
      right: 0;
      width: 32px;
      width: 2rem;
      background-image: linear-gradient(90deg, var(--alpha-breadcrumbs-mobile-shadow-color-end) 0, var(--alpha-breadcrumbs-mobile-shadow-color)); }
  .breadcrumbs.on-featured {
    --alpha-breadcrumbs-mobile-shadow-color: #000;
    --alpha-breadcrumbs-mobile-shadow-color-end: rgba(0, 0, 0, 0);
    top: var(--featured-image-height);
    z-index: 10;
    transform: translateY(-100%); }
    .breadcrumbs.on-featured .breadcrumb {
      --bs-breadcrumb-divider-color: currentcolor;
      --bs-breadcrumb-item-active-color: currentcolor; }
      .breadcrumbs.on-featured .breadcrumb:before, .breadcrumbs.on-featured .breadcrumb:after {
        -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=75)";
        opacity: .75; }

.breadcrumbs-on-featured:not(.has-transparent-header) .breadcrumbs {
  top: calc(var(--header-height) + var(--featured-image-height));
  transition: top .3s ease; }

.breadcrumbs-on-featured.search .content-wrapper {
  padding-top: 32px;
  padding-top: 2rem; }

.breadcrumb-item {
  white-space: nowrap; }
  .breadcrumb-item + .breadcrumb-item:before {
    content: "\f105";
    margin-right: 0;
    line-height: var(--bs-body-line-height); }
  .breadcrumb-item + .breadcrumb-item:before {
    float: unset;
    padding-right: 4px;
    padding-right: .25rem; }
  .breadcrumb-item.active span {
    font-weight: 700; }

.swiper-nav-white {
  --swiper-navigation-color: #fff; }

.swiper-pagination-primary {
  --swiper-pagination-color: #7B3B69; }

.swiper-pagination-secondary {
  --swiper-pagination-color: #BCA5CC; }

.banner-between-blocks {
  max-height: 200px; }
  .banner-between-blocks img {
    max-height: 200px !important; }
  @media (min-width: 768px) {
    .breadcrumbs .breadcrumb:before, .breadcrumbs .breadcrumb:after {
      display: none; } }


/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnZS5jc3MiLCJtYXBwaW5ncyI6Ijs7OztBQVlBO0VBT0UscUJBQXFCO0VBQ3JCLGtCQUFrQjtFQUNsQixnQkFBZ0I7RUFDaEIsb0JBQW9CO0VBQ3BCLGNBQWM7RUFDZCxtQ0FBbUM7RUFDbkMsa0NBQWtDOzs7QUFrQnBDO0VBQ0UsaUNBQWlDO0VBQ2pDLGdCQUFnQjs7O0FBakNsQjtFQU9FLHFCQUFxQjtFQUNyQixrQkFBa0I7RUFDbEIsZ0JBQWdCO0VBQ2hCLG9CQUFvQjtFQUNwQixjQUFjO0VBQ2QsbUNBQW1DO0VBQ25DLGtDQUFrQzs7O0FBa0JwQztFQUNFLGlDQUFpQztFQUNqQyxnQkFBZ0I7OztBQWpDbEI7RUFPRSxxQkFBcUI7RUFDckIsa0JBQWtCO0VBQ2xCLGdCQUFnQjtFQUNoQixvQkFBb0I7RUFDcEIsY0FBYztFQUNkLG1DQUFtQztFQUNuQyxrQ0FBa0M7OztBQWtCcEM7RUFDRSxpQ0FBaUM7RUFDakMsZ0JBQWdCOztBQzdDbEI7RUFFRSw0QkFBdUQ7RUFDdkQsNEJBQXVEO0VBQ3ZELG1DQUErRDtFQUEvRCxtQ0FBK0Q7RUMyUjNELCtCQW5FK0I7RUFtRS9CLGtDQW5FK0I7RUR0Tm5DLG9CQUF5QztFQUN6QywrQkFBK0Q7RUFDL0Qsd0RBQStEO0VBQy9ELG1DQUFpRTtFQUFqRSxzQ0FBaUU7RUFDakUsMENBQXVFO0VBR3ZFLGFBQWE7RUFDYixlQUFlO0VBQ2Ysc0VBQWdJO0VBQ2hJLGlEQUFrRjtFQytROUUseUNBbkUrQjtFRDFNbkMsZ0JBQWdCO0VBQ2hCLHlDQUErRDtFRUE3RCxpREZDd0Y7O0FBRzVGO0VBR0ksaURBQW1GO0VBSHZGO0lBTU0sV0FBVztJQUNYLGtEQUFvRjtJQUNwRix5Q0FBMEU7SUFDMUUsdUZBQXVOOztBQVQ3TjtFQWNJLDZDQUFrRjs7QUduQ3RGO0VBQ0Usa0JBQWtCO0VBQ2xCLGdCQUFnQjtFQUNoQixtQkFBZ0Q7RUFBaEQsc0JBQWdEO0VBQ2hELGtCQUErQztFQUEvQyxxQkFBK0M7RUFKakQ7SUFPSSxpQkFBaUI7SUFDakIsYUNvR3dDO0lEcEd4QyxnQkNvR3dDO0lEbkd4QyxhQUFhO0lBQ2IsZ0JBQWdCO0lBVnBCO01BY00sa0JBQWtCO01BQ2xCLE1BQU07TUFDTixjQUFjO01BQ2QsWUFBWTtNQUNaLG9CQUFvQjtNQUNwQixXQUFXO0lBbkJqQjtNQXVCTSxPQUFPO01BQ1AsV0FBVztNQUFYLFdBQVc7TUFDWCwwSUFBMEk7SUF6QmhKO01BNkJNLFFBQVE7TUFDUixXQUFXO01BQVgsV0FBVztNQUNYLDBJQUEwSTtFQS9CaEo7SUE2Q0ksNkNBQXdDO0lBQ3hDLDZEQUE0QztJQUM1QyxpQ0FBaUM7SUFDakMsV0FBVztJQUNYLDRCQUE0QjtJQWpEaEM7TUFvRE0sMkNBQThCO01BQzlCLCtDQUFrQztNQXJEeEM7UUF5RFEsaUVBQVk7UUFBWixZQUFZOztBQU1wQjtFQUdNLDhEQUE4RDtFQUM5RCx3QkFBd0I7O0FBSjlCO0VBVU0saUJDS1U7RURMVixpQkNLVTs7QURBaEI7RUFDRSxtQkFBbUI7RUgxRHJCO0lEdUVFLGdCTXpGbUM7SU4wSGpDLGVJM0NtRTtJSjZDbkUsdUNBQXVDO0VDMUczQztJR2dFTSxZQUFZO0lBQ1osa0JBQXFCO0lBQXJCLHFCQUFxQjtFQVIzQjtJQWNNLGdCQUFnQjs7QUc5RnRCO0VBQ0UsK0JBQTBCOztBQUc1QjtFQUNFLGtDQUEwQjs7QUFHNUI7RUFDRSxrQ0FBMEI7O0FDSzVCO0VBQ0UsaUJBQWlCO0VBRG5CO0lBR0ksNEJBQTRCO0VDOEM1QjtJTDdESjtNQXVDUSxhQUFhLElBQ2QiLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly9yYmFydHMtdGhlbWUvLi9ub2RlX21vZHVsZXMvQG5lbWF0aXMvd3AtYWxwaGEvYXNzZXRzL3Nhc3MvdmVuZG9ycy9mb250YXdlc29tZS9hYnN0cmFjdHMvX21peGlucy5zY3NzIiwid2VicGFjazovL3JiYXJ0cy10aGVtZS8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fYnJlYWRjcnVtYi5zY3NzIiwid2VicGFjazovL3JiYXJ0cy10aGVtZS8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy92ZW5kb3IvX3Jmcy5zY3NzIiwid2VicGFjazovL3JiYXJ0cy10aGVtZS8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2JvcmRlci1yYWRpdXMuc2NzcyIsIndlYnBhY2s6Ly9yYmFydHMtdGhlbWUvLi9ub2RlX21vZHVsZXMvQG5lbWF0aXMvd3AtYWxwaGEvYXNzZXRzL3Nhc3MvY29tcG9uZW50cy9fYnJlYWRjcnVtYi5zY3NzIiwid2VicGFjazovL3JiYXJ0cy10aGVtZS8uL25vZGVfbW9kdWxlcy9AbmVtYXRpcy93cC1hbHBoYS9hc3NldHMvc2Fzcy9hYnN0cmFjdHMvX3ZhcmlhYmxlcy5zY3NzIiwid2VicGFjazovL3JiYXJ0cy10aGVtZS8uL25vZGVfbW9kdWxlcy9AZm9ydGF3ZXNvbWUvZm9udGF3ZXNvbWUtcHJvL3Njc3MvX2Z1bmN0aW9ucy5zY3NzIiwid2VicGFjazovL3JiYXJ0cy10aGVtZS8uL2Fzc2V0cy9zYXNzL2NvbXBvbmVudHMvc3dpcGVyLnNjc3MiLCJ3ZWJwYWNrOi8vcmJhcnRzLXRoZW1lLy4vYXNzZXRzL3Nhc3MvcGFnZXMvcGFnZS5zY3NzIiwid2VicGFjazovL3JiYXJ0cy10aGVtZS8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2JyZWFrcG9pbnRzLnNjc3MiXSwic291cmNlc0NvbnRlbnQiOlsiJHVzZS1mYS1wcm86IHRydWUgIWRlZmF1bHQ7XG5cbkBtaXhpbiBmYS1pY29uLXN0YW5kYWxvbmUge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgZm9udC12YXJpYW50OiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbn1cblxuJWZhLFxuJWZhcyxcbiVmYXIsXG4lZmFsLFxuJWZhZCxcbiVmYXQsXG4lZmFiIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGZvbnQtdmFyaWFudDogbm9ybWFsO1xuICBsaW5lLWhlaWdodDogMTtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG59XG5cbiVmYS1pY29uLXN0YW5kYWxvbmUge1xuICBAaW5jbHVkZSBmYS1pY29uLXN0YW5kYWxvbmUgKCk7XG59XG5cbiVmYSxcbiVmYXMge1xuICBmb250LWZhbWlseTogXCJGb250IEF3ZXNvbWUgNiBQcm9cIjtcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbn1cblxuJWZhciB7XG4gIGZvbnQtZmFtaWx5OiBcIkZvbnQgQXdlc29tZSA2IFByb1wiO1xuICBmb250LXdlaWdodDogNDAwO1xufVxuXG4lZmFsIHtcbiAgZm9udC1mYW1pbHk6IFwiRm9udCBBd2Vzb21lIDYgUHJvXCI7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG59XG5cbiVmYXQge1xuICBmb250LWZhbWlseTogXCJGb250IEF3ZXNvbWUgNiBQcm9cIjtcbiAgZm9udC13ZWlnaHQ6IDEwMDtcbn1cblxuJWZhYiB7XG4gIGZvbnQtZmFtaWx5OiBcIkZvbnQgQXdlc29tZSA2IEJyYW5kc1wiO1xuICBmb250LXdlaWdodDogNDAwO1xufVxuXG5AbWl4aW4gZm9udC1hd2Vzb21lKCRjb2RlKSB7XG4gIEBleHRlbmQgJWZhLWljb24tc3RhbmRhbG9uZTtcblxuICBAaWYgJHVzZS1mYS1wcm8ge1xuICAgIEBpbmNsdWRlIGZvbnQtYXdlc29tZS1wcm8oJGNvZGUpO1xuICB9IEBlbHNlIHtcbiAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgZm9udC1mYW1pbHktbm8tbWlzc2luZy1nZW5lcmljLWZhbWlseS1rZXl3b3JkXG4gICAgQGV4dGVuZCAlZmE7XG5cbiAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gICAgY29udGVudDogJGNvZGU7XG4gIH1cblxuICBAY29udGVudDtcbn1cblxuQG1peGluIGZvbnQtYXdlc29tZS1wcm8oJGNvZGUpIHtcbiAgQGluY2x1ZGUgZm9udC1hd2Vzb21lLXByby1zb2xpZCgkY29kZSk7XG59XG5cbkBtaXhpbiBmb250LWF3ZXNvbWUtcHJvLXNvbGlkKCRjb2RlKSB7XG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBmb250LWZhbWlseS1uby1taXNzaW5nLWdlbmVyaWMtZmFtaWx5LWtleXdvcmRcbiAgQGV4dGVuZCAlZmFzO1xuICBjb250ZW50OiBmYS1jb250ZW50KCRjb2RlKTtcbn1cblxuQG1peGluIGZvbnQtYXdlc29tZS1wcm8tcmVndWxhcigkY29kZSkge1xuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgZm9udC1mYW1pbHktbm8tbWlzc2luZy1nZW5lcmljLWZhbWlseS1rZXl3b3JkXG4gIEBleHRlbmQgJWZhcjtcbiAgY29udGVudDogZmEtY29udGVudCgkY29kZSk7XG59XG5cbkBtaXhpbiBmb250LWF3ZXNvbWUtcHJvLWxpZ2h0KCRjb2RlKSB7XG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBmb250LWZhbWlseS1uby1taXNzaW5nLWdlbmVyaWMtZmFtaWx5LWtleXdvcmRcbiAgQGV4dGVuZCAlZmFsO1xuICBjb250ZW50OiBmYS1jb250ZW50KCRjb2RlKTtcbn1cblxuQG1peGluIGZvbnQtYXdlc29tZS1wcm8tdGhpbigkY29kZSkge1xuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgZm9udC1mYW1pbHktbm8tbWlzc2luZy1nZW5lcmljLWZhbWlseS1rZXl3b3JkXG4gIEBleHRlbmQgJWZhdDtcbiAgY29udGVudDogZmEtY29udGVudCgkY29kZSk7XG59XG5cbkBtaXhpbiBmb250LWF3ZXNvbWUtcHJvLWJyYW5kKCRjb2RlKSB7XG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBmb250LWZhbWlseS1uby1taXNzaW5nLWdlbmVyaWMtZmFtaWx5LWtleXdvcmRcbiAgQGV4dGVuZCAlZmFiO1xuICBjb250ZW50OiBmYS1jb250ZW50KCRjb2RlKTtcbn1cblxuQG1peGluIGZvbnQtYXdlc29tZS1iZWZvcmUoJGNvZGUsICRmbG9hdGluZzogZmFsc2UsICRmYS1zdHlsZTogXCJzb2xpZFwiLCAkbWFyZ2luOiAuMjVlbSkge1xuICAmOjpiZWZvcmUge1xuICAgIEBpZiAkZmEtc3R5bGUgPT0gXCJyZWd1bGFyXCIge1xuICAgICAgQGluY2x1ZGUgZm9udC1hd2Vzb21lLXByby1yZWd1bGFyKCRjb2RlKTtcbiAgICB9IEBlbHNlIGlmICRmYS1zdHlsZSA9PSBcImxpZ2h0XCIge1xuICAgICAgQGluY2x1ZGUgZm9udC1hd2Vzb21lLXByby1saWdodCgkY29kZSk7XG4gICAgfSBAZWxzZSBpZiAkZmEtc3R5bGUgPT0gXCJ0aGluXCIge1xuICAgICAgQGluY2x1ZGUgZm9udC1hd2Vzb21lLXByby10aGluKCRjb2RlKTtcbiAgICB9IEBlbHNlIGlmICRmYS1zdHlsZSA9PSBcImJyYW5kXCIge1xuICAgICAgQGluY2x1ZGUgZm9udC1hd2Vzb21lLXByby1icmFuZCgkY29kZSk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBAaW5jbHVkZSBmb250LWF3ZXNvbWUoJGNvZGUpO1xuICAgIH1cblxuICAgIEBpZiAkZmxvYXRpbmcge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgICB9XG4gICAgbWFyZ2luLXJpZ2h0OiAkbWFyZ2luO1xuXG4gICAgbGluZS1oZWlnaHQ6IHZhcigtLWJzLWJvZHktbGluZS1oZWlnaHQpO1xuXG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuQG1peGluIGZvbnQtYXdlc29tZS1hZnRlcigkY29kZSwgJGZsb2F0aW5nOiBmYWxzZSwgJGZhLXN0eWxlOiBcInNvbGlkXCIsICRtYXJnaW46IC4yNWVtKSB7XG4gICY6OmFmdGVyIHtcbiAgICBAaWYgJGZhLXN0eWxlID09IFwicmVndWxhclwiIHtcbiAgICAgIEBpbmNsdWRlIGZvbnQtYXdlc29tZS1wcm8tcmVndWxhcigkY29kZSk7XG4gICAgfSBAZWxzZSBpZiAkZmEtc3R5bGUgPT0gXCJsaWdodFwiIHtcbiAgICAgIEBpbmNsdWRlIGZvbnQtYXdlc29tZS1wcm8tbGlnaHQoJGNvZGUpO1xuICAgIH0gQGVsc2UgaWYgJGZhLXN0eWxlID09IFwidGhpblwiIHtcbiAgICAgIEBpbmNsdWRlIGZvbnQtYXdlc29tZS1wcm8tdGhpbigkY29kZSk7XG4gICAgfSBAZWxzZSBpZiAkZmEtc3R5bGUgPT0gXCJicmFuZFwiIHtcbiAgICAgIEBpbmNsdWRlIGZvbnQtYXdlc29tZS1wcm8tYnJhbmQoJGNvZGUpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgQGluY2x1ZGUgZm9udC1hd2Vzb21lKCRjb2RlKTtcbiAgICB9XG5cbiAgICBAaWYgJGZsb2F0aW5nIHtcbiAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICAgIH1cbiAgICBtYXJnaW4tbGVmdDogJG1hcmdpbjtcblxuICAgIGxpbmUtaGVpZ2h0OiB2YXIoLS1icy1ib2R5LWxpbmUtaGVpZ2h0KTtcblxuICAgIEBjb250ZW50O1xuICB9XG59XG4iLCIuYnJlYWRjcnVtYiB7XG4gIC8vIHNjc3MtZG9jcy1zdGFydCBicmVhZGNydW1iLWNzcy12YXJzXG4gIC0tI3skcHJlZml4fWJyZWFkY3J1bWItcGFkZGluZy14OiAjeyRicmVhZGNydW1iLXBhZGRpbmcteH07XG4gIC0tI3skcHJlZml4fWJyZWFkY3J1bWItcGFkZGluZy15OiAjeyRicmVhZGNydW1iLXBhZGRpbmcteX07XG4gIC0tI3skcHJlZml4fWJyZWFkY3J1bWItbWFyZ2luLWJvdHRvbTogI3skYnJlYWRjcnVtYi1tYXJnaW4tYm90dG9tfTtcbiAgQGluY2x1ZGUgcmZzKCRicmVhZGNydW1iLWZvbnQtc2l6ZSwgLS0jeyRwcmVmaXh9YnJlYWRjcnVtYi1mb250LXNpemUpO1xuICAtLSN7JHByZWZpeH1icmVhZGNydW1iLWJnOiAjeyRicmVhZGNydW1iLWJnfTtcbiAgLS0jeyRwcmVmaXh9YnJlYWRjcnVtYi1ib3JkZXItcmFkaXVzOiAjeyRicmVhZGNydW1iLWJvcmRlci1yYWRpdXN9O1xuICAtLSN7JHByZWZpeH1icmVhZGNydW1iLWRpdmlkZXItY29sb3I6ICN7JGJyZWFkY3J1bWItZGl2aWRlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fWJyZWFkY3J1bWItaXRlbS1wYWRkaW5nLXg6ICN7JGJyZWFkY3J1bWItaXRlbS1wYWRkaW5nLXh9O1xuICAtLSN7JHByZWZpeH1icmVhZGNydW1iLWl0ZW0tYWN0aXZlLWNvbG9yOiAjeyRicmVhZGNydW1iLWFjdGl2ZS1jb2xvcn07XG4gIC8vIHNjc3MtZG9jcy1lbmQgYnJlYWRjcnVtYi1jc3MtdmFyc1xuXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgcGFkZGluZzogdmFyKC0tI3skcHJlZml4fWJyZWFkY3J1bWItcGFkZGluZy15KSB2YXIoLS0jeyRwcmVmaXh9YnJlYWRjcnVtYi1wYWRkaW5nLXgpO1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS0jeyRwcmVmaXh9YnJlYWRjcnVtYi1tYXJnaW4tYm90dG9tKTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKHZhcigtLSN7JHByZWZpeH1icmVhZGNydW1iLWZvbnQtc2l6ZSkpO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YnJlYWRjcnVtYi1iZyk7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXModmFyKC0tI3skcHJlZml4fWJyZWFkY3J1bWItYm9yZGVyLXJhZGl1cykpO1xufVxuXG4uYnJlYWRjcnVtYi1pdGVtIHtcbiAgLy8gVGhlIHNlcGFyYXRvciBiZXR3ZWVuIGJyZWFkY3J1bWJzIChieSBkZWZhdWx0LCBhIGZvcndhcmQtc2xhc2g6IFwiL1wiKVxuICArIC5icmVhZGNydW1iLWl0ZW0ge1xuICAgIHBhZGRpbmctbGVmdDogdmFyKC0tI3skcHJlZml4fWJyZWFkY3J1bWItaXRlbS1wYWRkaW5nLXgpO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGZsb2F0OiBsZWZ0OyAvLyBTdXBwcmVzcyBpbmxpbmUgc3BhY2luZ3MgYW5kIHVuZGVybGluaW5nIG9mIHRoZSBzZXBhcmF0b3JcbiAgICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLSN7JHByZWZpeH1icmVhZGNydW1iLWl0ZW0tcGFkZGluZy14KTtcbiAgICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YnJlYWRjcnVtYi1kaXZpZGVyLWNvbG9yKTtcbiAgICAgIGNvbnRlbnQ6IHZhcigtLSN7JHByZWZpeH1icmVhZGNydW1iLWRpdmlkZXIsIGVzY2FwZS1zdmcoJGJyZWFkY3J1bWItZGl2aWRlcikpICN7XCIvKiBydGw6XCJ9IHZhcigtLSN7JHByZWZpeH1icmVhZGNydW1iLWRpdmlkZXIsIGVzY2FwZS1zdmcoJGJyZWFkY3J1bWItZGl2aWRlci1mbGlwcGVkKSkgI3tcIiovXCJ9O1xuICAgIH1cbiAgfVxuXG4gICYuYWN0aXZlIHtcbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWJyZWFkY3J1bWItaXRlbS1hY3RpdmUtY29sb3IpO1xuICB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBzY3NzL2RpbWVuc2lvbi1uby1ub24tbnVtZXJpYy12YWx1ZXNcblxuLy8gU0NTUyBSRlMgbWl4aW5cbi8vXG4vLyBBdXRvbWF0ZWQgcmVzcG9uc2l2ZSB2YWx1ZXMgZm9yIGZvbnQgc2l6ZXMsIHBhZGRpbmdzLCBtYXJnaW5zIGFuZCBtdWNoIG1vcmVcbi8vXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgKGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL3Jmcy9ibG9iL21haW4vTElDRU5TRSlcblxuLy8gQ29uZmlndXJhdGlvblxuXG4vLyBCYXNlIHZhbHVlXG4kcmZzLWJhc2UtdmFsdWU6IDEuMjVyZW0gIWRlZmF1bHQ7XG4kcmZzLXVuaXQ6IHJlbSAhZGVmYXVsdDtcblxuQGlmICRyZnMtdW5pdCAhPSByZW0gYW5kICRyZnMtdW5pdCAhPSBweCB7XG4gIEBlcnJvciBcImAjeyRyZnMtdW5pdH1gIGlzIG5vdCBhIHZhbGlkIHVuaXQgZm9yICRyZnMtdW5pdC4gVXNlIGBweGAgb3IgYHJlbWAuXCI7XG59XG5cbi8vIEJyZWFrcG9pbnQgYXQgd2hlcmUgdmFsdWVzIHN0YXJ0IGRlY3JlYXNpbmcgaWYgc2NyZWVuIHdpZHRoIGlzIHNtYWxsZXJcbiRyZnMtYnJlYWtwb2ludDogMTIwMHB4ICFkZWZhdWx0O1xuJHJmcy1icmVha3BvaW50LXVuaXQ6IHB4ICFkZWZhdWx0O1xuXG5AaWYgJHJmcy1icmVha3BvaW50LXVuaXQgIT0gcHggYW5kICRyZnMtYnJlYWtwb2ludC11bml0ICE9IGVtIGFuZCAkcmZzLWJyZWFrcG9pbnQtdW5pdCAhPSByZW0ge1xuICBAZXJyb3IgXCJgI3skcmZzLWJyZWFrcG9pbnQtdW5pdH1gIGlzIG5vdCBhIHZhbGlkIHVuaXQgZm9yICRyZnMtYnJlYWtwb2ludC11bml0LiBVc2UgYHB4YCwgYGVtYCBvciBgcmVtYC5cIjtcbn1cblxuLy8gUmVzaXplIHZhbHVlcyBiYXNlZCBvbiBzY3JlZW4gaGVpZ2h0IGFuZCB3aWR0aFxuJHJmcy10d28tZGltZW5zaW9uYWw6IGZhbHNlICFkZWZhdWx0O1xuXG4vLyBGYWN0b3Igb2YgZGVjcmVhc2VcbiRyZnMtZmFjdG9yOiAxMCAhZGVmYXVsdDtcblxuQGlmIHR5cGUtb2YoJHJmcy1mYWN0b3IpICE9IG51bWJlciBvciAkcmZzLWZhY3RvciA8PSAxIHtcbiAgQGVycm9yIFwiYCN7JHJmcy1mYWN0b3J9YCBpcyBub3QgYSB2YWxpZCAgJHJmcy1mYWN0b3IsIGl0IG11c3QgYmUgZ3JlYXRlciB0aGFuIDEuXCI7XG59XG5cbi8vIE1vZGUuIFBvc3NpYmlsaXRpZXM6IFwibWluLW1lZGlhLXF1ZXJ5XCIsIFwibWF4LW1lZGlhLXF1ZXJ5XCJcbiRyZnMtbW9kZTogbWluLW1lZGlhLXF1ZXJ5ICFkZWZhdWx0O1xuXG4vLyBHZW5lcmF0ZSBlbmFibGUgb3IgZGlzYWJsZSBjbGFzc2VzLiBQb3NzaWJpbGl0aWVzOiBmYWxzZSwgXCJlbmFibGVcIiBvciBcImRpc2FibGVcIlxuJHJmcy1jbGFzczogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vIDEgcmVtID0gJHJmcy1yZW0tdmFsdWUgcHhcbiRyZnMtcmVtLXZhbHVlOiAxNiAhZGVmYXVsdDtcblxuLy8gU2FmYXJpIGlmcmFtZSByZXNpemUgYnVnOiBodHRwczovL2dpdGh1Yi5jb20vdHdicy9yZnMvaXNzdWVzLzE0XG4kcmZzLXNhZmFyaS1pZnJhbWUtcmVzaXplLWJ1Zy1maXg6IGZhbHNlICFkZWZhdWx0O1xuXG4vLyBEaXNhYmxlIFJGUyBieSBzZXR0aW5nICRlbmFibGUtcmZzIHRvIGZhbHNlXG4kZW5hYmxlLXJmczogdHJ1ZSAhZGVmYXVsdDtcblxuLy8gQ2FjaGUgJHJmcy1iYXNlLXZhbHVlIHVuaXRcbiRyZnMtYmFzZS12YWx1ZS11bml0OiB1bml0KCRyZnMtYmFzZS12YWx1ZSk7XG5cbkBmdW5jdGlvbiBkaXZpZGUoJGRpdmlkZW5kLCAkZGl2aXNvciwgJHByZWNpc2lvbjogMTApIHtcbiAgJHNpZ246IGlmKCRkaXZpZGVuZCA+IDAgYW5kICRkaXZpc29yID4gMCBvciAkZGl2aWRlbmQgPCAwIGFuZCAkZGl2aXNvciA8IDAsIDEsIC0xKTtcbiAgJGRpdmlkZW5kOiBhYnMoJGRpdmlkZW5kKTtcbiAgJGRpdmlzb3I6IGFicygkZGl2aXNvcik7XG4gIEBpZiAkZGl2aWRlbmQgPT0gMCB7XG4gICAgQHJldHVybiAwO1xuICB9XG4gIEBpZiAkZGl2aXNvciA9PSAwIHtcbiAgICBAZXJyb3IgXCJDYW5ub3QgZGl2aWRlIGJ5IDBcIjtcbiAgfVxuICAkcmVtYWluZGVyOiAkZGl2aWRlbmQ7XG4gICRyZXN1bHQ6IDA7XG4gICRmYWN0b3I6IDEwO1xuICBAd2hpbGUgKCRyZW1haW5kZXIgPiAwIGFuZCAkcHJlY2lzaW9uID49IDApIHtcbiAgICAkcXVvdGllbnQ6IDA7XG4gICAgQHdoaWxlICgkcmVtYWluZGVyID49ICRkaXZpc29yKSB7XG4gICAgICAkcmVtYWluZGVyOiAkcmVtYWluZGVyIC0gJGRpdmlzb3I7XG4gICAgICAkcXVvdGllbnQ6ICRxdW90aWVudCArIDE7XG4gICAgfVxuICAgICRyZXN1bHQ6ICRyZXN1bHQgKiAxMCArICRxdW90aWVudDtcbiAgICAkZmFjdG9yOiAkZmFjdG9yICogLjE7XG4gICAgJHJlbWFpbmRlcjogJHJlbWFpbmRlciAqIDEwO1xuICAgICRwcmVjaXNpb246ICRwcmVjaXNpb24gLSAxO1xuICAgIEBpZiAoJHByZWNpc2lvbiA8IDAgYW5kICRyZW1haW5kZXIgPj0gJGRpdmlzb3IgKiA1KSB7XG4gICAgICAkcmVzdWx0OiAkcmVzdWx0ICsgMTtcbiAgICB9XG4gIH1cbiAgJHJlc3VsdDogJHJlc3VsdCAqICRmYWN0b3IgKiAkc2lnbjtcbiAgJGRpdmlkZW5kLXVuaXQ6IHVuaXQoJGRpdmlkZW5kKTtcbiAgJGRpdmlzb3ItdW5pdDogdW5pdCgkZGl2aXNvcik7XG4gICR1bml0LW1hcDogKFxuICAgIFwicHhcIjogMXB4LFxuICAgIFwicmVtXCI6IDFyZW0sXG4gICAgXCJlbVwiOiAxZW0sXG4gICAgXCIlXCI6IDElXG4gICk7XG4gIEBpZiAoJGRpdmlkZW5kLXVuaXQgIT0gJGRpdmlzb3ItdW5pdCBhbmQgbWFwLWhhcy1rZXkoJHVuaXQtbWFwLCAkZGl2aWRlbmQtdW5pdCkpIHtcbiAgICAkcmVzdWx0OiAkcmVzdWx0ICogbWFwLWdldCgkdW5pdC1tYXAsICRkaXZpZGVuZC11bml0KTtcbiAgfVxuICBAcmV0dXJuICRyZXN1bHQ7XG59XG5cbi8vIFJlbW92ZSBweC11bml0IGZyb20gJHJmcy1iYXNlLXZhbHVlIGZvciBjYWxjdWxhdGlvbnNcbkBpZiAkcmZzLWJhc2UtdmFsdWUtdW5pdCA9PSBweCB7XG4gICRyZnMtYmFzZS12YWx1ZTogZGl2aWRlKCRyZnMtYmFzZS12YWx1ZSwgJHJmcy1iYXNlLXZhbHVlICogMCArIDEpO1xufVxuQGVsc2UgaWYgJHJmcy1iYXNlLXZhbHVlLXVuaXQgPT0gcmVtIHtcbiAgJHJmcy1iYXNlLXZhbHVlOiBkaXZpZGUoJHJmcy1iYXNlLXZhbHVlLCBkaXZpZGUoJHJmcy1iYXNlLXZhbHVlICogMCArIDEsICRyZnMtcmVtLXZhbHVlKSk7XG59XG5cbi8vIENhY2hlICRyZnMtYnJlYWtwb2ludCB1bml0IHRvIHByZXZlbnQgbXVsdGlwbGUgY2FsbHNcbiRyZnMtYnJlYWtwb2ludC11bml0LWNhY2hlOiB1bml0KCRyZnMtYnJlYWtwb2ludCk7XG5cbi8vIFJlbW92ZSB1bml0IGZyb20gJHJmcy1icmVha3BvaW50IGZvciBjYWxjdWxhdGlvbnNcbkBpZiAkcmZzLWJyZWFrcG9pbnQtdW5pdC1jYWNoZSA9PSBweCB7XG4gICRyZnMtYnJlYWtwb2ludDogZGl2aWRlKCRyZnMtYnJlYWtwb2ludCwgJHJmcy1icmVha3BvaW50ICogMCArIDEpO1xufVxuQGVsc2UgaWYgJHJmcy1icmVha3BvaW50LXVuaXQtY2FjaGUgPT0gcmVtIG9yICRyZnMtYnJlYWtwb2ludC11bml0LWNhY2hlID09IFwiZW1cIiB7XG4gICRyZnMtYnJlYWtwb2ludDogZGl2aWRlKCRyZnMtYnJlYWtwb2ludCwgZGl2aWRlKCRyZnMtYnJlYWtwb2ludCAqIDAgKyAxLCAkcmZzLXJlbS12YWx1ZSkpO1xufVxuXG4vLyBDYWxjdWxhdGUgdGhlIG1lZGlhIHF1ZXJ5IHZhbHVlXG4kcmZzLW1xLXZhbHVlOiBpZigkcmZzLWJyZWFrcG9pbnQtdW5pdCA9PSBweCwgI3skcmZzLWJyZWFrcG9pbnR9cHgsICN7ZGl2aWRlKCRyZnMtYnJlYWtwb2ludCwgJHJmcy1yZW0tdmFsdWUpfSN7JHJmcy1icmVha3BvaW50LXVuaXR9KTtcbiRyZnMtbXEtcHJvcGVydHktd2lkdGg6IGlmKCRyZnMtbW9kZSA9PSBtYXgtbWVkaWEtcXVlcnksIG1heC13aWR0aCwgbWluLXdpZHRoKTtcbiRyZnMtbXEtcHJvcGVydHktaGVpZ2h0OiBpZigkcmZzLW1vZGUgPT0gbWF4LW1lZGlhLXF1ZXJ5LCBtYXgtaGVpZ2h0LCBtaW4taGVpZ2h0KTtcblxuLy8gSW50ZXJuYWwgbWl4aW4gdXNlZCB0byBkZXRlcm1pbmUgd2hpY2ggbWVkaWEgcXVlcnkgbmVlZHMgdG8gYmUgdXNlZFxuQG1peGluIF9yZnMtbWVkaWEtcXVlcnkge1xuICBAaWYgJHJmcy10d28tZGltZW5zaW9uYWwge1xuICAgIEBpZiAkcmZzLW1vZGUgPT0gbWF4LW1lZGlhLXF1ZXJ5IHtcbiAgICAgIEBtZWRpYSAoI3skcmZzLW1xLXByb3BlcnR5LXdpZHRofTogI3skcmZzLW1xLXZhbHVlfSksICgjeyRyZnMtbXEtcHJvcGVydHktaGVpZ2h0fTogI3skcmZzLW1xLXZhbHVlfSkge1xuICAgICAgICBAY29udGVudDtcbiAgICAgIH1cbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQG1lZGlhICgjeyRyZnMtbXEtcHJvcGVydHktd2lkdGh9OiAjeyRyZnMtbXEtdmFsdWV9KSBhbmQgKCN7JHJmcy1tcS1wcm9wZXJ0eS1oZWlnaHR9OiAjeyRyZnMtbXEtdmFsdWV9KSB7XG4gICAgICAgIEBjb250ZW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgQG1lZGlhICgjeyRyZnMtbXEtcHJvcGVydHktd2lkdGh9OiAjeyRyZnMtbXEtdmFsdWV9KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cblxuLy8gSW50ZXJuYWwgbWl4aW4gdGhhdCBhZGRzIGRpc2FibGUgY2xhc3NlcyB0byB0aGUgc2VsZWN0b3IgaWYgbmVlZGVkLlxuQG1peGluIF9yZnMtcnVsZSB7XG4gIEBpZiAkcmZzLWNsYXNzID09IGRpc2FibGUgYW5kICRyZnMtbW9kZSA9PSBtYXgtbWVkaWEtcXVlcnkge1xuICAgIC8vIEFkZGluZyBhbiBleHRyYSBjbGFzcyBpbmNyZWFzZXMgc3BlY2lmaWNpdHksIHdoaWNoIHByZXZlbnRzIHRoZSBtZWRpYSBxdWVyeSB0byBvdmVycmlkZSB0aGUgcHJvcGVydHlcbiAgICAmLFxuICAgIC5kaXNhYmxlLXJmcyAmLFxuICAgICYuZGlzYWJsZS1yZnMge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICRyZnMtY2xhc3MgPT0gZW5hYmxlIGFuZCAkcmZzLW1vZGUgPT0gbWluLW1lZGlhLXF1ZXJ5IHtcbiAgICAuZW5hYmxlLXJmcyAmLFxuICAgICYuZW5hYmxlLXJmcyB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbi8vIEludGVybmFsIG1peGluIHRoYXQgYWRkcyBlbmFibGUgY2xhc3NlcyB0byB0aGUgc2VsZWN0b3IgaWYgbmVlZGVkLlxuQG1peGluIF9yZnMtbWVkaWEtcXVlcnktcnVsZSB7XG5cbiAgQGlmICRyZnMtY2xhc3MgPT0gZW5hYmxlIHtcbiAgICBAaWYgJHJmcy1tb2RlID09IG1pbi1tZWRpYS1xdWVyeSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBfcmZzLW1lZGlhLXF1ZXJ5ICgpIHtcbiAgICAgIC5lbmFibGUtcmZzICYsXG4gICAgICAmLmVuYWJsZS1yZnMge1xuICAgICAgICBAY29udGVudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIEBpZiAkcmZzLWNsYXNzID09IGRpc2FibGUgYW5kICRyZnMtbW9kZSA9PSBtaW4tbWVkaWEtcXVlcnkge1xuICAgICAgLmRpc2FibGUtcmZzICYsXG4gICAgICAmLmRpc2FibGUtcmZzIHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgICB9XG4gICAgfVxuICAgIEBpbmNsdWRlIF9yZnMtbWVkaWEtcXVlcnkgKCkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vIEhlbHBlciBmdW5jdGlvbiB0byBnZXQgdGhlIGZvcm1hdHRlZCBub24tcmVzcG9uc2l2ZSB2YWx1ZVxuQGZ1bmN0aW9uIHJmcy12YWx1ZSgkdmFsdWVzKSB7XG4gIC8vIENvbnZlcnQgdG8gbGlzdFxuICAkdmFsdWVzOiBpZih0eXBlLW9mKCR2YWx1ZXMpICE9IGxpc3QsICgkdmFsdWVzLCksICR2YWx1ZXMpO1xuXG4gICR2YWw6IFwiXCI7XG5cbiAgLy8gTG9vcCBvdmVyIGVhY2ggdmFsdWUgYW5kIGNhbGN1bGF0ZSB2YWx1ZVxuICBAZWFjaCAkdmFsdWUgaW4gJHZhbHVlcyB7XG4gICAgQGlmICR2YWx1ZSA9PSAwIHtcbiAgICAgICR2YWw6ICR2YWwgKyBcIiAwXCI7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIC8vIENhY2hlICR2YWx1ZSB1bml0XG4gICAgICAkdW5pdDogaWYodHlwZS1vZigkdmFsdWUpID09IFwibnVtYmVyXCIsIHVuaXQoJHZhbHVlKSwgZmFsc2UpO1xuXG4gICAgICBAaWYgJHVuaXQgPT0gcHgge1xuICAgICAgICAvLyBDb252ZXJ0IHRvIHJlbSBpZiBuZWVkZWRcbiAgICAgICAgJHZhbDogJHZhbCArIFwiIFwiICsgaWYoJHJmcy11bml0ID09IHJlbSwgI3tkaXZpZGUoJHZhbHVlLCAkdmFsdWUgKiAwICsgJHJmcy1yZW0tdmFsdWUpfXJlbSwgJHZhbHVlKTtcbiAgICAgIH1cbiAgICAgIEBlbHNlIGlmICR1bml0ID09IHJlbSB7XG4gICAgICAgIC8vIENvbnZlcnQgdG8gcHggaWYgbmVlZGVkXG4gICAgICAgICR2YWw6ICR2YWwgKyBcIiBcIiArIGlmKCRyZnMtdW5pdCA9PSBweCwgI3tkaXZpZGUoJHZhbHVlLCAkdmFsdWUgKiAwICsgMSkgKiAkcmZzLXJlbS12YWx1ZX1weCwgJHZhbHVlKTtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICAvLyBJZiAkdmFsdWUgaXNuJ3QgYSBudW1iZXIgKGxpa2UgaW5oZXJpdCkgb3IgJHZhbHVlIGhhcyBhIHVuaXQgKG5vdCBweCBvciByZW0sIGxpa2UgMS41ZW0pIG9yICQgaXMgMCwganVzdCBwcmludCB0aGUgdmFsdWVcbiAgICAgICAgJHZhbDogJHZhbCArIFwiIFwiICsgJHZhbHVlO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFJlbW92ZSBmaXJzdCBzcGFjZVxuICBAcmV0dXJuIHVucXVvdGUoc3RyLXNsaWNlKCR2YWwsIDIpKTtcbn1cblxuLy8gSGVscGVyIGZ1bmN0aW9uIHRvIGdldCB0aGUgcmVzcG9uc2l2ZSB2YWx1ZSBjYWxjdWxhdGVkIGJ5IFJGU1xuQGZ1bmN0aW9uIHJmcy1mbHVpZC12YWx1ZSgkdmFsdWVzKSB7XG4gIC8vIENvbnZlcnQgdG8gbGlzdFxuICAkdmFsdWVzOiBpZih0eXBlLW9mKCR2YWx1ZXMpICE9IGxpc3QsICgkdmFsdWVzLCksICR2YWx1ZXMpO1xuXG4gICR2YWw6IFwiXCI7XG5cbiAgLy8gTG9vcCBvdmVyIGVhY2ggdmFsdWUgYW5kIGNhbGN1bGF0ZSB2YWx1ZVxuICBAZWFjaCAkdmFsdWUgaW4gJHZhbHVlcyB7XG4gICAgQGlmICR2YWx1ZSA9PSAwIHtcbiAgICAgICR2YWw6ICR2YWwgKyBcIiAwXCI7XG4gICAgfSBAZWxzZSB7XG4gICAgICAvLyBDYWNoZSAkdmFsdWUgdW5pdFxuICAgICAgJHVuaXQ6IGlmKHR5cGUtb2YoJHZhbHVlKSA9PSBcIm51bWJlclwiLCB1bml0KCR2YWx1ZSksIGZhbHNlKTtcblxuICAgICAgLy8gSWYgJHZhbHVlIGlzbid0IGEgbnVtYmVyIChsaWtlIGluaGVyaXQpIG9yICR2YWx1ZSBoYXMgYSB1bml0IChub3QgcHggb3IgcmVtLCBsaWtlIDEuNWVtKSBvciAkIGlzIDAsIGp1c3QgcHJpbnQgdGhlIHZhbHVlXG4gICAgICBAaWYgbm90ICR1bml0IG9yICR1bml0ICE9IHB4IGFuZCAkdW5pdCAhPSByZW0ge1xuICAgICAgICAkdmFsOiAkdmFsICsgXCIgXCIgKyAkdmFsdWU7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgLy8gUmVtb3ZlIHVuaXQgZnJvbSAkdmFsdWUgZm9yIGNhbGN1bGF0aW9uc1xuICAgICAgICAkdmFsdWU6IGRpdmlkZSgkdmFsdWUsICR2YWx1ZSAqIDAgKyBpZigkdW5pdCA9PSBweCwgMSwgZGl2aWRlKDEsICRyZnMtcmVtLXZhbHVlKSkpO1xuXG4gICAgICAgIC8vIE9ubHkgYWRkIHRoZSBtZWRpYSBxdWVyeSBpZiB0aGUgdmFsdWUgaXMgZ3JlYXRlciB0aGFuIHRoZSBtaW5pbXVtIHZhbHVlXG4gICAgICAgIEBpZiBhYnMoJHZhbHVlKSA8PSAkcmZzLWJhc2UtdmFsdWUgb3Igbm90ICRlbmFibGUtcmZzIHtcbiAgICAgICAgICAkdmFsOiAkdmFsICsgXCIgXCIgKyBpZigkcmZzLXVuaXQgPT0gcmVtLCAje2RpdmlkZSgkdmFsdWUsICRyZnMtcmVtLXZhbHVlKX1yZW0sICN7JHZhbHVlfXB4KTtcbiAgICAgICAgfVxuICAgICAgICBAZWxzZSB7XG4gICAgICAgICAgLy8gQ2FsY3VsYXRlIHRoZSBtaW5pbXVtIHZhbHVlXG4gICAgICAgICAgJHZhbHVlLW1pbjogJHJmcy1iYXNlLXZhbHVlICsgZGl2aWRlKGFicygkdmFsdWUpIC0gJHJmcy1iYXNlLXZhbHVlLCAkcmZzLWZhY3Rvcik7XG5cbiAgICAgICAgICAvLyBDYWxjdWxhdGUgZGlmZmVyZW5jZSBiZXR3ZWVuICR2YWx1ZSBhbmQgdGhlIG1pbmltdW0gdmFsdWVcbiAgICAgICAgICAkdmFsdWUtZGlmZjogYWJzKCR2YWx1ZSkgLSAkdmFsdWUtbWluO1xuXG4gICAgICAgICAgLy8gQmFzZSB2YWx1ZSBmb3JtYXR0aW5nXG4gICAgICAgICAgJG1pbi13aWR0aDogaWYoJHJmcy11bml0ID09IHJlbSwgI3tkaXZpZGUoJHZhbHVlLW1pbiwgJHJmcy1yZW0tdmFsdWUpfXJlbSwgI3skdmFsdWUtbWlufXB4KTtcblxuICAgICAgICAgIC8vIFVzZSBuZWdhdGl2ZSB2YWx1ZSBpZiBuZWVkZWRcbiAgICAgICAgICAkbWluLXdpZHRoOiBpZigkdmFsdWUgPCAwLCAtJG1pbi13aWR0aCwgJG1pbi13aWR0aCk7XG5cbiAgICAgICAgICAvLyBVc2UgYHZtaW5gIGlmIHR3by1kaW1lbnNpb25hbCBpcyBlbmFibGVkXG4gICAgICAgICAgJHZhcmlhYmxlLXVuaXQ6IGlmKCRyZnMtdHdvLWRpbWVuc2lvbmFsLCB2bWluLCB2dyk7XG5cbiAgICAgICAgICAvLyBDYWxjdWxhdGUgdGhlIHZhcmlhYmxlIHdpZHRoIGJldHdlZW4gMCBhbmQgJHJmcy1icmVha3BvaW50XG4gICAgICAgICAgJHZhcmlhYmxlLXdpZHRoOiAje2RpdmlkZSgkdmFsdWUtZGlmZiAqIDEwMCwgJHJmcy1icmVha3BvaW50KX0jeyR2YXJpYWJsZS11bml0fTtcblxuICAgICAgICAgIC8vIFJldHVybiB0aGUgY2FsY3VsYXRlZCB2YWx1ZVxuICAgICAgICAgICR2YWw6ICR2YWwgKyBcIiBjYWxjKFwiICsgJG1pbi13aWR0aCArIGlmKCR2YWx1ZSA8IDAsIFwiIC0gXCIsIFwiICsgXCIpICsgJHZhcmlhYmxlLXdpZHRoICsgXCIpXCI7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBSZW1vdmUgZmlyc3Qgc3BhY2VcbiAgQHJldHVybiB1bnF1b3RlKHN0ci1zbGljZSgkdmFsLCAyKSk7XG59XG5cbi8vIFJGUyBtaXhpblxuQG1peGluIHJmcygkdmFsdWVzLCAkcHJvcGVydHk6IGZvbnQtc2l6ZSkge1xuICBAaWYgJHZhbHVlcyAhPSBudWxsIHtcbiAgICAkdmFsOiByZnMtdmFsdWUoJHZhbHVlcyk7XG4gICAgJGZsdWlkLXZhbDogcmZzLWZsdWlkLXZhbHVlKCR2YWx1ZXMpO1xuXG4gICAgLy8gRG8gbm90IHByaW50IHRoZSBtZWRpYSBxdWVyeSBpZiByZXNwb25zaXZlICYgbm9uLXJlc3BvbnNpdmUgdmFsdWVzIGFyZSB0aGUgc2FtZVxuICAgIEBpZiAkdmFsID09ICRmbHVpZC12YWwge1xuICAgICAgI3skcHJvcGVydHl9OiAkdmFsO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAaW5jbHVkZSBfcmZzLXJ1bGUgKCkge1xuICAgICAgICAjeyRwcm9wZXJ0eX06IGlmKCRyZnMtbW9kZSA9PSBtYXgtbWVkaWEtcXVlcnksICR2YWwsICRmbHVpZC12YWwpO1xuXG4gICAgICAgIC8vIEluY2x1ZGUgc2FmYXJpIGlmcmFtZSByZXNpemUgZml4IGlmIG5lZWRlZFxuICAgICAgICBtaW4td2lkdGg6IGlmKCRyZnMtc2FmYXJpLWlmcmFtZS1yZXNpemUtYnVnLWZpeCwgKDAgKiAxdncpLCBudWxsKTtcbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgX3Jmcy1tZWRpYS1xdWVyeS1ydWxlICgpIHtcbiAgICAgICAgI3skcHJvcGVydHl9OiBpZigkcmZzLW1vZGUgPT0gbWF4LW1lZGlhLXF1ZXJ5LCAkZmx1aWQtdmFsLCAkdmFsKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gU2hvcnRoYW5kIGhlbHBlciBtaXhpbnNcbkBtaXhpbiBmb250LXNpemUoJHZhbHVlKSB7XG4gIEBpbmNsdWRlIHJmcygkdmFsdWUpO1xufVxuXG5AbWl4aW4gcGFkZGluZygkdmFsdWUpIHtcbiAgQGluY2x1ZGUgcmZzKCR2YWx1ZSwgcGFkZGluZyk7XG59XG5cbkBtaXhpbiBwYWRkaW5nLXRvcCgkdmFsdWUpIHtcbiAgQGluY2x1ZGUgcmZzKCR2YWx1ZSwgcGFkZGluZy10b3ApO1xufVxuXG5AbWl4aW4gcGFkZGluZy1yaWdodCgkdmFsdWUpIHtcbiAgQGluY2x1ZGUgcmZzKCR2YWx1ZSwgcGFkZGluZy1yaWdodCk7XG59XG5cbkBtaXhpbiBwYWRkaW5nLWJvdHRvbSgkdmFsdWUpIHtcbiAgQGluY2x1ZGUgcmZzKCR2YWx1ZSwgcGFkZGluZy1ib3R0b20pO1xufVxuXG5AbWl4aW4gcGFkZGluZy1sZWZ0KCR2YWx1ZSkge1xuICBAaW5jbHVkZSByZnMoJHZhbHVlLCBwYWRkaW5nLWxlZnQpO1xufVxuXG5AbWl4aW4gbWFyZ2luKCR2YWx1ZSkge1xuICBAaW5jbHVkZSByZnMoJHZhbHVlLCBtYXJnaW4pO1xufVxuXG5AbWl4aW4gbWFyZ2luLXRvcCgkdmFsdWUpIHtcbiAgQGluY2x1ZGUgcmZzKCR2YWx1ZSwgbWFyZ2luLXRvcCk7XG59XG5cbkBtaXhpbiBtYXJnaW4tcmlnaHQoJHZhbHVlKSB7XG4gIEBpbmNsdWRlIHJmcygkdmFsdWUsIG1hcmdpbi1yaWdodCk7XG59XG5cbkBtaXhpbiBtYXJnaW4tYm90dG9tKCR2YWx1ZSkge1xuICBAaW5jbHVkZSByZnMoJHZhbHVlLCBtYXJnaW4tYm90dG9tKTtcbn1cblxuQG1peGluIG1hcmdpbi1sZWZ0KCR2YWx1ZSkge1xuICBAaW5jbHVkZSByZnMoJHZhbHVlLCBtYXJnaW4tbGVmdCk7XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3Rcbi8vIFNpbmdsZSBzaWRlIGJvcmRlci1yYWRpdXNcblxuLy8gSGVscGVyIGZ1bmN0aW9uIHRvIHJlcGxhY2UgbmVnYXRpdmUgdmFsdWVzIHdpdGggMFxuQGZ1bmN0aW9uIHZhbGlkLXJhZGl1cygkcmFkaXVzKSB7XG4gICRyZXR1cm46ICgpO1xuICBAZWFjaCAkdmFsdWUgaW4gJHJhZGl1cyB7XG4gICAgQGlmIHR5cGUtb2YoJHZhbHVlKSA9PSBudW1iZXIge1xuICAgICAgJHJldHVybjogYXBwZW5kKCRyZXR1cm4sIG1heCgkdmFsdWUsIDApKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgICRyZXR1cm46IGFwcGVuZCgkcmV0dXJuLCAkdmFsdWUpO1xuICAgIH1cbiAgfVxuICBAcmV0dXJuICRyZXR1cm47XG59XG5cbi8vIHNjc3MtZG9jcy1zdGFydCBib3JkZXItcmFkaXVzLW1peGluc1xuQG1peGluIGJvcmRlci1yYWRpdXMoJHJhZGl1czogJGJvcmRlci1yYWRpdXMsICRmYWxsYmFjay1ib3JkZXItcmFkaXVzOiBmYWxzZSkge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbiAgQGVsc2UgaWYgJGZhbGxiYWNrLWJvcmRlci1yYWRpdXMgIT0gZmFsc2Uge1xuICAgIGJvcmRlci1yYWRpdXM6ICRmYWxsYmFjay1ib3JkZXItcmFkaXVzO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItdG9wLXJhZGl1cygkcmFkaXVzOiAkYm9yZGVyLXJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLWVuZC1yYWRpdXMoJHJhZGl1czogJGJvcmRlci1yYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItYm90dG9tLXJhZGl1cygkcmFkaXVzOiAkYm9yZGVyLXJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLXN0YXJ0LXJhZGl1cygkcmFkaXVzOiAkYm9yZGVyLXJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItdG9wLXN0YXJ0LXJhZGl1cygkcmFkaXVzOiAkYm9yZGVyLXJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci10b3AtZW5kLXJhZGl1cygkcmFkaXVzOiAkYm9yZGVyLXJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItYm90dG9tLWVuZC1yYWRpdXMoJHJhZGl1czogJGJvcmRlci1yYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLWJvdHRvbS1zdGFydC1yYWRpdXMoJHJhZGl1czogJGJvcmRlci1yYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICB9XG59XG4vLyBzY3NzLWRvY3MtZW5kIGJvcmRlci1yYWRpdXMtbWl4aW5zXG4iLCJAaW1wb3J0IFwifmJvb3RzdHJhcC9zY3NzL2JyZWFkY3J1bWJcIjtcblxuLmJyZWFkY3J1bWJzIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXgtd2lkdGg6IDEwMHZ3O1xuICBtYXJnaW4tcmlnaHQ6IGNhbGMoI3skY29udGFpbmVyLXBhZGRpbmcteH0gKiAtMSk7XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKCN7JGNvbnRhaW5lci1wYWRkaW5nLXh9ICogLTEpO1xuXG4gIC5icmVhZGNydW1iIHtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICBwYWRkaW5nOiAkY29udGFpbmVyLXBhZGRpbmcteDtcbiAgICBtYXJnaW46IHVuc2V0O1xuICAgIG92ZXJmbG93LXg6IGF1dG87XG5cbiAgICAmOjpiZWZvcmUsXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgfVxuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB3aWR0aDogMXJlbTtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCg5MGRlZywgdmFyKC0tYWxwaGEtYnJlYWRjcnVtYnMtbW9iaWxlLXNoYWRvdy1jb2xvcikgMCwgdmFyKC0tYWxwaGEtYnJlYWRjcnVtYnMtbW9iaWxlLXNoYWRvdy1jb2xvci1lbmQpKTtcbiAgICB9XG5cbiAgICAmOjphZnRlciB7XG4gICAgICByaWdodDogMDtcbiAgICAgIHdpZHRoOiAycmVtO1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KDkwZGVnLCB2YXIoLS1hbHBoYS1icmVhZGNydW1icy1tb2JpbGUtc2hhZG93LWNvbG9yLWVuZCkgMCwgdmFyKC0tYWxwaGEtYnJlYWRjcnVtYnMtbW9iaWxlLXNoYWRvdy1jb2xvcikpO1xuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcbiAgICAuYnJlYWRjcnVtYiB7XG4gICAgICAmOjpiZWZvcmUsXG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi5vbi1mZWF0dXJlZCB7XG4gICAgLS1hbHBoYS1icmVhZGNydW1icy1tb2JpbGUtc2hhZG93LWNvbG9yOiAjeyRicmVhZGNydW1iLW9uLWZlYXR1cmVkLW1vYmlsZS1zaGFkb3ctY29sb3J9O1xuICAgIC0tYWxwaGEtYnJlYWRjcnVtYnMtbW9iaWxlLXNoYWRvdy1jb2xvci1lbmQ6ICN7cmdiYSgkYnJlYWRjcnVtYi1vbi1mZWF0dXJlZC1tb2JpbGUtc2hhZG93LWNvbG9yLCAwKX07XG4gICAgdG9wOiB2YXIoLS1mZWF0dXJlZC1pbWFnZS1oZWlnaHQpO1xuICAgIHotaW5kZXg6IDEwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwJSk7XG5cbiAgICAuYnJlYWRjcnVtYiB7XG4gICAgICAtLWJzLWJyZWFkY3J1bWItZGl2aWRlci1jb2xvcjogY3VycmVudGNvbG9yO1xuICAgICAgLS1icy1icmVhZGNydW1iLWl0ZW0tYWN0aXZlLWNvbG9yOiBjdXJyZW50Y29sb3I7XG5cbiAgICAgICY6OmJlZm9yZSxcbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgb3BhY2l0eTogLjc1O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4uYnJlYWRjcnVtYnMtb24tZmVhdHVyZWQge1xuICAmOm5vdCguaGFzLXRyYW5zcGFyZW50LWhlYWRlcikge1xuICAgIC5icmVhZGNydW1icyB7XG4gICAgICB0b3A6IGNhbGModmFyKC0taGVhZGVyLWhlaWdodCkgKyB2YXIoLS1mZWF0dXJlZC1pbWFnZS1oZWlnaHQpKTtcbiAgICAgIHRyYW5zaXRpb246IHRvcCAuM3MgZWFzZTtcbiAgICB9XG4gIH1cblxuICAmLnNlYXJjaCB7XG4gICAgLmNvbnRlbnQtd3JhcHBlciB7XG4gICAgICBwYWRkaW5nLXRvcDogbWFwLWdldCgkc3BhY2VycywgOCk7XG4gICAgfVxuICB9XG59XG5cbi5icmVhZGNydW1iLWl0ZW0ge1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG4gICsgLmJyZWFkY3J1bWItaXRlbSB7XG4gICAgQGluY2x1ZGUgZm9udC1hd2Vzb21lLWJlZm9yZSgkZmEtdmFyLWFuZ2xlLXJpZ2h0LCBmYWxzZSwgXCJsaWdodFwiLCAwKTtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBmbG9hdDogdW5zZXQ7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAuMjVyZW07XG4gICAgfVxuICB9XG5cbiAgJi5hY3RpdmUge1xuICAgIHNwYW4ge1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICB9XG4gIH1cbn1cbiIsIkBpbXBvcnQgXCJ+Ym9vdHN0cmFwL3Njc3MvZnVuY3Rpb25zXCI7XG5AaW1wb3J0IFwifkBmb3J0YXdlc29tZS9mb250YXdlc29tZS1wcm8vc2Nzcy9mdW5jdGlvbnNcIjtcbkBpbXBvcnQgXCJ+QGZvcnRhd2Vzb21lL2ZvbnRhd2Vzb21lLXByby9zY3NzL3ZhcmlhYmxlc1wiO1xuXG4kdGhlbWUtYXNzZXQtcGF0aDogXCIuLi9pbWFnZXNcIiAhZGVmYXVsdDtcbiRmb250cy1wYXRoOiBcImZvbnRzXCIgIWRlZmF1bHQ7XG5cbi8vLS0tLS0tIENvbG9yIHN5c3RlbVxuJHdoaXRlOiAjZmZmICFkZWZhdWx0O1xuJGdyYXktMTAwOiAjZjdmN2Y3ICFkZWZhdWx0O1xuJGdyYXktMjAwOiAjZTllY2VmICFkZWZhdWx0O1xuJGdyYXktNTAwOiAjOWQ5ZDlkICFkZWZhdWx0O1xuJGdyYXktNjAwOiAjNmM3NTdkICFkZWZhdWx0O1xuJGdyYXktNzAwOiAjNDk1MDU3ICFkZWZhdWx0O1xuJGdyYXktOTAwOiAjMGEwYTBhICFkZWZhdWx0O1xuJGJsYWNrOiAjMDAwICFkZWZhdWx0O1xuJG5lbWF0aXMtdmlvbGV0OiAjNzExOTZmICFkZWZhdWx0O1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgY29sb3ItdmFyaWFibGVzXG4kYmx1ZTogIzAwNWRhYSAhZGVmYXVsdDtcbiRwdXJwbGU6ICM3MDFlNmUgIWRlZmF1bHQ7XG4kZ3JlZW46ICMwMWFlM2MgIWRlZmF1bHQ7XG4kcmVkOiAjZGMzNTQ1ICFkZWZhdWx0O1xuJHllbGxvdzogI2ZmYzEwNyAhZGVmYXVsdDtcbiRjeWFuOiAjMGRjYWYwICFkZWZhdWx0O1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgY29sb3JzLW1hcFxuJGNvbG9yczogKFxuICBcImJsdWVcIjogJGJsdWUsXG4gIFwicHVycGxlXCI6ICRwdXJwbGUsXG4gIFwiZ3JlZW5cIjogJGdyZWVuLFxuICBcIndoaXRlXCI6ICR3aGl0ZSxcbiAgXCJncmF5LTEwMFwiOiAkZ3JheS0xMDAsXG4gIFwiZ3JheS01MDBcIjogJGdyYXktNTAwLFxuICBcImdyYXktOTAwXCI6ICRncmF5LTkwMFxuKSAhZGVmYXVsdDtcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHRoZW1lLWNvbG9yLXZhcmlhYmxlc1xuJHN1Y2Nlc3M6ICRncmVlbiAhZGVmYXVsdDtcbiRpbmZvOiAkY3lhbiAhZGVmYXVsdDtcbiR3YXJuaW5nOiAkeWVsbG93ICFkZWZhdWx0O1xuJGRhbmdlcjogJHJlZCAhZGVmYXVsdDtcbiRsaWdodDogJGdyYXktMTAwICFkZWZhdWx0O1xuJGRhcms6ICRncmF5LTkwMCAhZGVmYXVsdDtcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHRoZW1lLWNvbG9ycy1tYXBcbiRkZWZhdWx0LXRoZW1lLWNvbG9yczogKFxuICBcInByaW1hcnlcIjogJHByaW1hcnksXG4gIFwic2Vjb25kYXJ5XCI6ICRzZWNvbmRhcnksXG4gIFwic3VjY2Vzc1wiOiAkc3VjY2VzcyxcbiAgXCJpbmZvXCI6ICRpbmZvLFxuICBcIndhcm5pbmdcIjogJHdhcm5pbmcsXG4gIFwiZGFuZ2VyXCI6ICRkYW5nZXIsXG4gIFwibGlnaHRcIjogJGxpZ2h0LFxuICBcImRhcmtcIjogJGRhcmtcbikgIWRlZmF1bHQ7XG4kdGhlbWUtY29sb3JzOiAoKSAhZGVmYXVsdDtcbiR0aGVtZS1jb2xvcnM6IG1hcC1tZXJnZSgkZGVmYXVsdC10aGVtZS1jb2xvcnMsICR0aGVtZS1jb2xvcnMpO1xuXG4vLyBUaGUgY29udHJhc3QgcmF0aW8gdG8gcmVhY2ggYWdhaW5zdCB3aGl0ZSwgdG8gZGV0ZXJtaW5lIGlmIGNvbG9yIGNoYW5nZXMgZnJvbSBcImxpZ2h0XCIgdG8gXCJkYXJrXCIuIEFjY2VwdGFibGUgdmFsdWVzIGZvciBXQ0FHIDIuMCBhcmUgMywgNC41IGFuZCA3LlxuJG1pbi1jb250cmFzdC1yYXRpbzogNC41ICFkZWZhdWx0O1xuXG4vLyBDdXN0b21pemUgdGhlIGxpZ2h0IGFuZCBkYXJrIHRleHQgY29sb3JzIGZvciB1c2UgaW4gb3VyIGNvbG9yIGNvbnRyYXN0IGZ1bmN0aW9uLlxuJGNvbG9yLWNvbnRyYXN0LWRhcms6ICRncmF5LTkwMCAhZGVmYXVsdDtcbiRjb2xvci1jb250cmFzdC1saWdodDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy0tLS0tLSBPcHRpb25zXG4kZW5hYmxlLW5lZ2F0aXZlLW1hcmdpbnM6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLS0tLS0tIFNwYWNpbmdcbiRzcGFjZXI6IDFyZW0gIWRlZmF1bHQ7XG4kc3BhY2VyczogKFxuICAwOiAwLFxuICAxOiAkc3BhY2VyICogLjI1LCAvLyA0cHhcbiAgMjogJHNwYWNlciAqIC41LCAvLyA4cHhcbiAgMzogJHNwYWNlciAqIC43NSwgLy8gMTJweFxuICA0OiAkc3BhY2VyLCAvLyAxNnB4XG4gIDU6ICRzcGFjZXIgKiAxLjI1LCAvLyAyMHB4XG4gIDY6ICRzcGFjZXIgKiAxLjUsIC8vIDI0cHhcbiAgNzogJHNwYWNlciAqIDEuNzUsIC8vIDI4cHhcbiAgODogJHNwYWNlciAqIDIsIC8vIDMycHhcbiAgOTogJHNwYWNlciAqIDMsIC8vIDQ4cHhcbiAgMTA6ICRzcGFjZXIgKiA0LCAvLyA2NHB4XG4gIDExOiAkc3BhY2VyICogNSAvLyA4MHB4XG4pICFkZWZhdWx0O1xuXG4vLy0tLS0tLSBEYXJrIFN0eWxlXG4kZGFyay1iZy1jb2xvcjogJGJvZHktY29sb3IgIWRlZmF1bHQ7XG4kZGFyay10eHQtY29sb3I6ICRib2R5LWJnICFkZWZhdWx0O1xuXG4vLy0tLS0tLSBMaWdodCBTdHlsZVxuJGxpZ2h0LWJnLWNvbG9yOiAkZGFyay10eHQtY29sb3IgIWRlZmF1bHQ7XG4kbGlnaHQtdHh0LWNvbG9yOiAkZGFyay1iZy1jb2xvciAhZGVmYXVsdDtcblxuLy8tLS0tLS0gSGVhZGVyXG4kaGVhZGVyLWJnOiAkYm9keS1iZyAhZGVmYXVsdDtcblxuLy8tLS0tLS0gRm9vdGVyXG4kZm9vdGVyLWJnOiByZ2JhKCRwcmltYXJ5LCAuMSkgIWRlZmF1bHQ7XG4kY29weXJpZ2h0LWJnOiAkZm9vdGVyLWJnICFkZWZhdWx0O1xuXG4vLy0tLS0tLSBMaW5rc1xuJGxpbmstY29sb3I6ICRwcmltYXJ5ICFkZWZhdWx0O1xuJGxpbmstc2hhZGUtcGVyY2VudGFnZTogMjAlICFkZWZhdWx0O1xuJGxpbmstaG92ZXItY29sb3I6IHNoaWZ0LWNvbG9yKCRsaW5rLWNvbG9yLCAkbGluay1zaGFkZS1wZXJjZW50YWdlKSAhZGVmYXVsdDtcblxuLy8gR3JpZCBjb2x1bW5zXG4kZ3JpZC1ndXR0ZXItd2lkdGg6IDEuNXJlbSAhZGVmYXVsdDtcblxuLy8tLS0tLS0gQ29udGFpbmVyIHBhZGRpbmdcbiRjb250YWluZXItcGFkZGluZy14OiAkZ3JpZC1ndXR0ZXItd2lkdGggLyAyICFkZWZhdWx0O1xuXG4vLy0tLS0tLSBDb21wb25lbnRzXG4vLyBzY3NzLWRvY3Mtc3RhcnQgYm9yZGVyLXZhcmlhYmxlc1xuJGJvcmRlci13aWR0aDogMXB4ICFkZWZhdWx0O1xuJGJvcmRlci1jb2xvcjogcmdiYSgkZ3JheS05MDAsIC4xNSkgIWRlZmF1bHQ7XG5cbi8vIHNjc3MtZG9jcy1zdGFydCBhc3BlY3QtcmF0aW9zXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBoZWFkaW5ncy12YXJpYWJsZXNcbiRoZWFkaW5ncy1tYXJnaW4tYm90dG9tOiAkc3BhY2VyICogMiAhZGVmYXVsdDtcblxuLy8tLS0tLS0gQnV0dG9ucyArIEZvcm1zXG4kYnRuLWNvbG9yczogKFxuICBcInByaW1hcnlcIjogbnVsbCxcbiAgXCJzZWNvbmRhcnlcIiA6IG51bGxcbikgIWRlZmF1bHQ7XG5cbiRpbnB1dC1mb250LXNpemU6ICRmb250LXNpemUtYmFzZSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9jdXMtd2lkdGg6IC4xMjVyZW0gIWRlZmF1bHQ7XG5cbi8vLS0tLS0tIE5hdnNcbi8vLS0tLS0gU2hhcmVkIHZhcmlhYmxlc1xuJG5hdi1jb2xvci1hY2NlbnQ6ICRwcmltYXJ5ICFkZWZhdWx0O1xuXG4vLy0tLS0tIEJvb3RzdHJhcCB2YXJpYWJsZXNcbiRuYXYtbGluay1mb250LXNpemU6IG51bGwgIWRlZmF1bHQ7XG4kbmF2LWxpbmstY29sb3I6ICRib2R5LWNvbG9yICFkZWZhdWx0O1xuJG5hdi1saW5rLWhvdmVyLWNvbG9yOiB0aW50LWNvbG9yKCRwcmltYXJ5LCAzMCUpICFkZWZhdWx0O1xuJG5hdi1saW5rLWRpc2FibGVkLWNvbG9yOiAkZ3JheS02MDAgIWRlZmF1bHQ7XG5cbi8vLS0tLS0gQWxwaGEgdmFyaWFibGVzXG4kbmF2LWNvbG9yLWhvdmVyLWZpcnN0LWxldmVsOiAkbmF2LWxpbmstaG92ZXItY29sb3IgIWRlZmF1bHQ7XG4kbmF2LWNvbG9yLWN1cnJlbnQ6ICRuYXYtY29sb3ItYWNjZW50ICFkZWZhdWx0O1xuJG5hdi1jb2xvci1jdXJyZW50LWZpcnN0LWxldmVsOiAkbmF2LWNvbG9yLWN1cnJlbnQgIWRlZmF1bHQ7XG4kbmF2LWNvbG9yLWFuY2VzdG9yOiBzaGFkZS1jb2xvcigkbmF2LWNvbG9yLWFjY2VudCwgMjAlKSAhZGVmYXVsdDtcbiRuYXYtY29sb3ItYW5jZXN0b3ItZmlyc3QtbGV2ZWw6ICRuYXYtY29sb3ItYW5jZXN0b3IgIWRlZmF1bHQ7XG5cbi8vLS0tLS0tIE5hdmJhclxuJHN1Ym1lbnUtYmctY29sb3I6IHdoaXRlICFkZWZhdWx0O1xuJG5hdmJhci1wYWRkaW5nLXk6IDMgKiAkc3BhY2VyIC8gNCAhZGVmYXVsdDtcbiRuYXZiYXItaXRlbS1tYXJnaW4teDogbnVsbCAhZGVmYXVsdDtcbiRuYXZiYXItaXRlbS1tYXJnaW4teTogbnVsbCAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtY29sb3I6ICRuYXYtbGluay1jb2xvciAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtaG92ZXItY29sb3I6ICRuYXYtbGluay1ob3Zlci1jb2xvciAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtYWN0aXZlLWNvbG9yOiAkbmF2LWxpbmstaG92ZXItY29sb3IgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LWRpc2FibGVkLWNvbG9yOiAkbmF2LWxpbmstZGlzYWJsZWQtY29sb3IgIWRlZmF1bHQ7XG5cbi8vLS0tLS0tIERyb3Bkb3duc1xuXG4vLy0tLS0tLSBQYWdpbmF0aW9uXG4kcGFnaW5hdGlvbi1ob3Zlci1iZzogcmdiYSgkcHJpbWFyeSwgLjEpICFkZWZhdWx0O1xuXG4vLy0tLS0tLSBNb2RhbHNcbiRtb2RhbC1iYWNrZHJvcC1iZzogYmxhY2sgIWRlZmF1bHQ7XG4kbW9kYWwtYmFja2Ryb3Atb3BhY2l0eTogLjUgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1ib3JkZXItd2lkdGg6IDAgIWRlZmF1bHQ7XG5cbi8vIE1vZGFsIFZpZGVvXG4kbW9kYWwtdmlkZW8tYnRuLWNsb3NlLWJnLWNvbG9yOiAkcHJpbWFyeSAhZGVmYXVsdDtcbiRtb2RhbC12aWRlby1idG4tY2xvc2UtY29sb3I6ICNmZmYgIWRlZmF1bHQ7XG5cbi8vLS0tLS0tIEltYWdlIHRodW1ibmFpbHMgJiBQaWN0dXJlXG5cbi8vLS0tLS0tIEJyZWFkY3J1bWJzXG4kYnJlYWRjcnVtYi1mb250LXNpemU6IC43NXJlbSAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWFjdGl2ZS1jb2xvcjogJGJvZHktY29sb3IgIWRlZmF1bHQ7XG5cbi8vLS0tLS0tIE9mZmNhbnZhc1xuJG9mZmNhbnZhcy1ib2R5LWJhY2tkcm9wLWNvbG9yOiByZ2JhKCRtb2RhbC1iYWNrZHJvcC1iZywgJG1vZGFsLWJhY2tkcm9wLW9wYWNpdHkpICFkZWZhdWx0O1xuJG9mZmNhbnZhcy13aWRlLXNjcmVlbi1icmVha3BvaW50OiB4eGwgIWRlZmF1bHQ7XG5cbi8vLS0tLS0tIE9mZmNhbnZhcyBkZXNrdG9wXG4kb2ZmY2FudmFzLWRhcmstbW9kZS1sb2dvLWNvbG9yOiAkd2hpdGUgIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLWRlc2t0b3Atd2lkdGg6IDQwMHB4ICFkZWZhdWx0O1xuJG9mZmNhbnZhcy1sb2dvLXdpZHRoOiA2Ni42NiUgIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLWhlYWRlci1hbGlnbmVtZW50OiBjZW50ZXIgIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLWdyaWQtYm9yZGVyLWNvbG9yOiAkc2Vjb25kYXJ5ICFkZWZhdWx0O1xuJG9mZmNhbnZhcy1ncmlkLWJvcmRlci1vcGFjaXR5OiAuNSAhZGVmYXVsdDtcbiRvZmZjYW52YXMtZ3JpZC1ib3JkZXItYmc6IHJnYmEoJG9mZmNhbnZhcy1ncmlkLWJvcmRlci1jb2xvciwgJG9mZmNhbnZhcy1ncmlkLWJvcmRlci1vcGFjaXR5KSAhZGVmYXVsdDtcbiRvZmZjYW52YXMtZ3JpZC1maXJzdC1sdmwtYm9yZGVyLXNpemU6IDFweCAhZGVmYXVsdDtcbiRvZmZjYW52YXMtZ3JpZC1maXJzdC1sdmwtYm9yZGVyLXR5cGU6IHNvbGlkICFkZWZhdWx0O1xuJG9mZmNhbnZhcy1ncmlkLWZpcnN0LWx2bC1ib3JkZXItb3BhY2l0eTogLjEgIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLWdyaWQtZmlyc3QtbHZsLWJvcmRlci1jb2xvcjogJHNlY29uZGFyeSAhZGVmYXVsdDtcbiRvZmZjYW52YXMtZ3JpZC1maXJzdC1sdmwtYm9yZGVyLWNvbG9yLWJnOiByZ2JhKCRvZmZjYW52YXMtZ3JpZC1maXJzdC1sdmwtYm9yZGVyLWNvbG9yLCAkb2ZmY2FudmFzLWdyaWQtZmlyc3QtbHZsLWJvcmRlci1vcGFjaXR5KTtcbiRvZmZjYW52YXMtZ3JpZC1maXJzdC1sdmwtYm9yZGVyLXN0eWxlOiAkb2ZmY2FudmFzLWdyaWQtZmlyc3QtbHZsLWJvcmRlci1zaXplICRvZmZjYW52YXMtZ3JpZC1maXJzdC1sdmwtYm9yZGVyLXR5cGUgJG9mZmNhbnZhcy1ncmlkLWZpcnN0LWx2bC1ib3JkZXItY29sb3ItYmcgIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLWdyaWQtZmlyc3QtbHZsLWZvbnQtc2l6ZTogMS41cmVtICFkZWZhdWx0O1xuJG9mZmNhbnZhcy1ncmlkLWZpcnN0LXRodW1iLXdpZHRoOiA3NSUgIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLWdyaWQtc3VibWVudS1mb250LXNpemU6IDEuMTI1cmVtICFkZWZhdWx0O1xuJG9mZmNhbnZhcy1ncmlkLXN1Ym1lbnUtaXRlbS1wYWRkaW5nLXk6IDAgIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLWdyaWQtc3VibWVudS1pdGVtLWxpbmUtaGVpZ2h0OiAxLjI1ICFkZWZhdWx0O1xuJG9mZmNhbnZhcy1ncmlkLXN1Ym1lbnUtaXRlbS1pY29uLXNpemU6IC44cmVtICFkZWZhdWx0O1xuJG9mZmNhbnZhcy1ncmlkLXN1Ym1lbnUtaXRlbS1pbWFnZS1ib3gtc2hhZG93OiAwIDAgMS41cmVtIC43NXJlbSByZ2JhKCRzZWNvbmRhcnksIC4yNSkgIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLWdyaWQtc3VibWVudS1pdGVtLWhvdmVyLWltYWdlLWJveC1zaGFkb3c6IHZhcigtLWJzLWJveC1zaGFkb3cpO1xuJG9mZmNhbnZhcy1maXJzdC1sdmwtbWVudS1pdGVtLWJvcmRlci1jb2xvcjogJHdoaXRlICFkZWZhdWx0O1xuJG9mZmNhbnZhcy1maXJzdC1sdmwtbWVudS1pdGVtLWJvcmRlci1vcGFjaXR5OiAuMTUgIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLWZpcnN0LWx2bC1tZW51LWl0ZW0tYm9yZGVyLXN0eWxlOiAxcHggc29saWQgcmdiYSgkb2ZmY2FudmFzLWZpcnN0LWx2bC1tZW51LWl0ZW0tYm9yZGVyLWNvbG9yLCAkb2ZmY2FudmFzLWZpcnN0LWx2bC1tZW51LWl0ZW0tYm9yZGVyLW9wYWNpdHkpO1xuXG4vLy0tLS0tLS0gT2ZmY2FudmFzIGRlc2t0b3AgTWVnYSBTdWJtZW51XG4kb2ZmY2FudmFzLXN1Ym1lbnUtaXRlbS1mb250LXNpemU6IDEuNXJlbSAhZGVmYXVsdDtcbiRvZmZjYW52YXMtc3VibWVudS1pdGVtLWJvcmRlci1jb2xvcjogdmFyKC0tdGhlbWUtc2tpbi10ZXh0LWNvbG9yKSAhZGVmYXVsdDtcbiRvZmZjYW52YXMtc3VibWVudS1pdGVtLWJvcmRlci1zdHlsZTogMXB4IHNvbGlkICRvZmZjYW52YXMtc3VibWVudS1pdGVtLWJvcmRlci1jb2xvcjtcblxuXG4vLy0tLS0tLSBNZWdhIE1lbnVcbiRtZWdhbWVudS1iZy1jb2xvcjogdmFyKC0tdGhlbWUtc2tpbi1iZy1jb2xvcik7XG4kbWVnYW1lbnUtcGFkZGluZy15OiAxcmVtICFkZWZhdWx0O1xuJG1lZ2FtZW51LXBhZGRpbmcteDogMXJlbSAhZGVmYXVsdDtcbiRtZWdhbWVudS10aXRsZS1wYWRkaW5nLXk6IC41cmVtICFkZWZhdWx0O1xuJG1lZ2FtZW51LXRpdGxlLXBhZGRpbmcteDogMXJlbSAhZGVmYXVsdDtcbiRtZWdhbWVudS10aXRsZS1jb2xvcjogdmFyKC0tdGhlbWUtc2tpbi10ZXh0LWNvbG9yKSAhZGVmYXVsdDtcbiRtZWdhbWVudS10aXRsZS10ZXh0LWRlY29yYXRpb246IG5vbmUgIWRlZmF1bHQ7XG4kbWVnYW1lbnUtdGl0bGUtaG92ZXItY29sb3I6ICRuYXYtbGluay1ob3Zlci1jb2xvciAhZGVmYXVsdDtcbiRtZWdhbWVudS10aXRsZS1ob3Zlci10ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSAhZGVmYXVsdDtcbiRtZWdhbWVudS1waWN0dXJlLWhhcy1vdmVybGF5OiB0cnVlICFkZWZhdWx0O1xuJG1lZ2FtZW51LW92ZXJsYXktYmctY29sb3I6ICRwcmltYXJ5ICFkZWZhdWx0O1xuJG1lZ2FtZW51LW92ZXJsYXktYmctb3BhY2l0eTogLjUgIWRlZmF1bHQ7XG4kbWVnYW1lbnUtb3ZlcmxheS1iZy1jb2xvci1yYmc6IHJnYmEoJG1lZ2FtZW51LW92ZXJsYXktYmctY29sb3IsICRtZWdhbWVudS1vdmVybGF5LWJnLW9wYWNpdHkpICFkZWZhdWx0O1xuJG1lZ2FtZW51LXBpY3R1cmUtYm9yZGVyLXJhZGl1czogLjVyZW0gIWRlZmF1bHQ7XG5cbi8vLS0tLS0tIEFuY2hvciBvZmZzZXRcbiRhbmNob3Itb2Zmc2V0OiAxcmVtICFkZWZhdWx0O1xuXG4vLy0tLS0tLSBXcCBBbHBoYVxuLy8gbG9nb1xuJGxvZ28tcGFkZGluZy15OiAkbmF2YmFyLXBhZGRpbmcteSAhZGVmYXVsdDtcblxuLy8tLS0tLSBCb290c3RyYXAgY29sb3JzIGNsZWFudXBcbiRicy1ncmF5cy10by1rZWVwOiAoKSAhZGVmYXVsdDtcbiRicy1ncmF5cy10by1yZW1vdmU6IChcIjIwMFwiLCBcIjMwMFwiLCBcIjQwMFwiLCBcIjUwMFwiLCBcIjcwMFwiKSAhZGVmYXVsdDtcbiRicy1jb2xvcnMtdG8ta2VlcDogKCkgIWRlZmF1bHQ7XG4kYnMtY29sb3JzLXRvLXJlbW92ZTogKFwiaW5kaWdvXCIsIFwicGlua1wiLCBcInJlZFwiLCBcInllbGxvd1wiLCBcImdyZWVuXCIsIFwidGVhbFwiLCBcImN5YW5cIiwgXCJsaWdodFwiLCBcImRhcmtcIikgIWRlZmF1bHQ7XG5cbi8vLS0tLS0gQm9vdHN0cmFwIHV0aWxpdGllcyBjbGVhbnVwXG4kYnMtdXRpbGl0aWVzLXRvLXJlbW92ZTogKFwiYmctb3BhY2l0eVwiKSAhZGVmYXVsdDtcblxuLy8tLS0tLSBIZWxwZXJzXG4vLy0tLS0gU2VwYXJhdGUgdGl0bGVcbiRzZXBhcmF0ZS10aXRsZS13aWR0aDogODBweCAhZGVmYXVsdDtcbiRzZXBhcmF0ZS10aXRsZS1iZzogJHByaW1hcnkgIWRlZmF1bHQ7XG5cbi8vLS0tLSBUcmFuc3BhcmVudCBiYWNrZ3JvdW5kc1xuJHRyYW5zcGFyZW50LWJnLW9wYWNpdGllcy1vdmVycmlkZXM6ICgpICFkZWZhdWx0O1xuJHRyYW5zcGFyZW50LWJnLW9wYWNpdGllczogKFxuICAxMDogLjEsXG4gIDI1OiAuMjUsXG4gIGxpZ2h0OiAuMjUsXG4gIDM1OiAuMzUsXG4gIDUwOiAuNSxcbiAgbWVkaXVtOiAuNSxcbiAgNjU6IC42NSxcbiAgNzU6IC43NSxcbiAgc3Ryb25nOiAuNzUsXG4gIDkwOiAuOVxuKSAhZGVmYXVsdDtcbiR0cmFuc3BhcmVudC1iZy1vcGFjaXRpZXM6IG1hcC1tZXJnZSgkdHJhbnNwYXJlbnQtYmctb3BhY2l0aWVzLCAkdHJhbnNwYXJlbnQtYmctb3BhY2l0aWVzLW92ZXJyaWRlcyk7XG4kdHJhbnNwYXJlbnQtYmctY29sb3JzOiAocHJpbWFyeTogJHRyYW5zcGFyZW50LWJnLW9wYWNpdGllcywgc2Vjb25kYXJ5OiAkdHJhbnNwYXJlbnQtYmctb3BhY2l0aWVzKSAhZGVmYXVsdDtcblxuLy8tLS0tLSBUb29sc1xuLy8gQ29uZmlndXJhdGlvbiAoYWN0aXZhdGUgb25seSB0aG9zZSBuZWVkZWQpXG4kdGVhc2VzOiAoXCJncmlkXCIsIFwibGlzdFwiLCBcInNpbXBsZVwiLCBcInNpbXBsZS1yZWFsaXNhdGlvbnNcIikgIWRlZmF1bHQ7XG4kZm9ybXM6ICgpICFkZWZhdWx0O1xuXG4vLy0tLS0tIFRvcCBCYXJcbiR0b3AtYmFyLWhpZGUtb24tbW9iaWxlOiB0cnVlICFkZWZhdWx0O1xuJHRvcC1iYXItaGlkZS1vbi1zY3JvbGwtbW9iaWxlOiB0cnVlICFkZWZhdWx0O1xuJHRvcC1iYXItaGlkZS1vbi1zY3JvbGwtZGVza3RvcDogJHRvcC1iYXItaGlkZS1vbi1zY3JvbGwtbW9iaWxlICFkZWZhdWx0O1xuJHRvcC1iYXItcGFkZGluZy14OiAkY29udGFpbmVyLXBhZGRpbmcteCAhZGVmYXVsdDtcbiR0b3AtYmFyLXBhZGRpbmcteTogLjVyZW0gIWRlZmF1bHQ7XG4kdG9wLWJhci1oZWlnaHQ6IGlmKG51bGwgIT0gaW5kZXgoJG1lbnVzLCBcInNlY29uZGFyeVwiKSwgMi41cmVtLCAxLjVyZW0pICFkZWZhdWx0O1xuJHRvcC1iYXItb3BhY2l0eTogMSAhZGVmYXVsdDtcbiR0b3AtYmFyLXNvY2lhbC1saW5rcy1tYXJnaW46IG1hcC1nZXQoJHNwYWNlcnMsIDQpICFkZWZhdWx0O1xuJHRvcC1iYXItZGVmYXVsdC1iZy1jb2xvcjogJHdoaXRlICFkZWZhdWx0O1xuJHRvcC1iYXItdHJhbnNwYXJlbnQtaGVhZGVyLWJnLWNvbG9yOiB0cmFuc3BhcmVudCAhZGVmYXVsdDtcblxuLy8tLS0tLSBIZWFkZXJcbiRoZWFkZXItYnRuLWljb246ICRmYS12YXItcGhvbmUtYWx0ICFkZWZhdWx0O1xuJGhlYWRlci1idG4tZmEtc3R5bGU6IFwic29saWRcIiAhZGVmYXVsdDtcbiRoZWFkZXItYnRuLXNob3ctdGV4dC1icmVha3BvaW50OiAkZGVza3RvcC1icmVha3BvaW50ICFkZWZhdWx0O1xuXG4vLy0tLS0tIEZlYXR1cmVkIGltYWdlXG4kZmVhdHVyZWQtaW1hZ2UtaGVpZ2h0OiA1MHZoICFkZWZhdWx0O1xuJGhvbWUtZmVhdHVyZWQtaW1hZ2UtaGVpZ2h0OiA1MHZoICFkZWZhdWx0O1xuJGZlYXR1cmVkLWltYWdlLW92ZXJsYXktY29sb3I6IGJsYWNrICFkZWZhdWx0O1xuJGZlYXR1cmVkLWltYWdlLW92ZXJsYXktb3BhY2l0eTogLjMgIWRlZmF1bHQ7XG4kaG9tZS1mZWF0dXJlZC1pbWFnZS10ZXh0LXRyYW5zaXRpb246IHRydWUgIWRlZmF1bHQ7XG4kaG9tZS1mZWF0dXJlZC1pbWFnZS10ZXh0LWFuaW1hdGlvbi1kdXJhdGlvbjogMS41cyAhZGVmYXVsdDtcblxuLy8tLS0tLSBDb250ZW50IEFib3ZlXG4kY29udGVudC1hYm92ZS10ZXh0LWNvbG9yOiB3aGl0ZSAhZGVmYXVsdDtcblxuLy8tLS0tLSBTaGFwZXNcbi8vIHBvc3NpYmxlIHNoYXBlcyBhcmU6IChzcXVhcmUsIGNpcmNsZSwgdHJpYW5nbGUsIGxvemVuZ2UpXG4vLyBwb3NzaWJsZSB1bml0cyBhcmU6IChyZW06IDFyZW0sIGVtOiAxZW0sIHZ3OiAyLjV2dylcbiRzaGFwZXM6ICgpICFkZWZhdWx0O1xuJHNoYXBlcy11bml0czogKHJlbTogMXJlbSkgIWRlZmF1bHQ7XG4kc2hhcGVzLWRlZmF1bHQtdW5pdDogbnRoKG50aCgkc2hhcGVzLXVuaXRzLCAxKSwgMikgIWRlZmF1bHQ7XG4kc2hhcGVzLW1heC1tdWx0aXBsaWVyOiAxMCAhZGVmYXVsdDtcblxuLy8tLS0tLSBUZXh0IGNvbnRyYXN0XG4kYWxwaGEtZW5hYmxlLWJ0bi1jbG9zZS10ZXh0LWNvbnRyYXN0LWNvbG9yczogZmFsc2UgIWRlZmF1bHQ7XG4kYWxwaGEtYnRuLWNsb3NlLXRleHQtY29udHJhc3QtY29sb3JzOiAkdGhlbWUtY29sb3JzICFkZWZhdWx0O1xuXG4vLy0tLS0tIFRleHQgc2hhZG93XG4kYWxwaGEtdGV4dC1zaGFkb3ctY29sb3I6IGNvbG9yLWNvbnRyYXN0KHdoaXRlKSAhZGVmYXVsdDtcbiRhbHBoYS10ZXh0LXNoYWRvdy1yYWRpdXM6IC41cmVtICFkZWZhdWx0O1xuJGFscGhhLXRleHQtc2hhZG93LXJhZGl1cy1zbTogLjI1cmVtICFkZWZhdWx0O1xuJGFscGhhLXRleHQtc2hhZG93LXJhZGl1cy1sZzogMXJlbSAhZGVmYXVsdDtcbiRhbHBoYS10ZXh0LXNoYWRvdy1jb2xvcnM6ICgpICFkZWZhdWx0O1xuXG4vLy0tLS0tIE92ZXJsYXlcbiRhbHBoYS1vdmVybGF5LWNvbG9yOiAkbW9kYWwtYmFja2Ryb3AtYmcgIWRlZmF1bHQ7XG4kYWxwaGEtb3ZlcmxheS1vcGFjaXR5OiAkbW9kYWwtYmFja2Ryb3Atb3BhY2l0eSAhZGVmYXVsdDtcbiRhbHBoYS1vdmVybGF5LWNvbG9yczogKCkgIWRlZmF1bHQ7XG5cbi8vLS0tLS0gWiBpbmRleFxuJGFscGhhLXotaW5kZXhlczogKDEpICFkZWZhdWx0O1xuXG4vLy0tLS0tIFNpZGViYXJcbiRzaWRlYmFyOiBmYWxzZSAhZGVmYXVsdDtcbiRzaWRlYmFyLWJnLWNvbG9yOiByZ2JhKCRwcmltYXJ5LCAuMSkgIWRlZmF1bHQ7XG4kc2lkZWJhci1wYWRkaW5nOiBtYXAtZ2V0KCRzcGFjZXJzLCAzKSAhZGVmYXVsdDtcbiRzaWRlYmFyLWJvcmRlci1yYWRpdXM6IC4zNzVyZW0gIWRlZmF1bHQ7XG4kc2lkZWJhci13aWRnZXRzLXNwYWNlcjogbWFwLWdldCgkc3BhY2VycywgNikgIWRlZmF1bHQ7XG4kc2lkZWJhci13aWRnZXQtY29udGVudC1zcGFjZXI6IG1hcC1nZXQoJHNwYWNlcnMsIDIpICFkZWZhdWx0O1xuJHNpZGViYXItd2lkZ2V0LXRpdGxlLXNwYWNlcjogbWFwLWdldCgkc3BhY2VycywgMykgIWRlZmF1bHQ7XG4kc2lkZWJhci13aWRnZXQtdGl0bGUtZm9udC1zaXplOiAkaDMtZm9udC1zaXplICFkZWZhdWx0O1xuJHNpZGViYXItd2lkZ2V0LWxpc3QtZm9udC1zaXplOiAxcmVtICFkZWZhdWx0O1xuXG4vLy0tLS0tIFN1cnRpdGxlXG4kYWxwaGEtc3VydGl0bGUtZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1zYW5zLXNlcmlmICFkZWZhdWx0O1xuJGFscGhhLXN1cnRpdGxlLWZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1iYXNlICFkZWZhdWx0O1xuJGFscGhhLXN1cnRpdGxlLWZvbnQtc2l6ZS1kZXNrdG9wOiAkYWxwaGEtc3VydGl0bGUtZm9udC1zaXplICFkZWZhdWx0O1xuJGFscGhhLXN1cnRpdGxlLWZvbnQtd2VpZ2h0OiBub3JtYWwgIWRlZmF1bHQ7XG4kYWxwaGEtc3VydGl0bGUtY29sb3I6ICRwcmltYXJ5ICFkZWZhdWx0O1xuJGFscGhhLXN1cnRpdGxlLW1hcmdpbi1ib3R0b206IG1hcC1nZXQoJHNwYWNlcnMsIDQpICFkZWZhdWx0O1xuJGFscGhhLXN1cnRpdGxlLXRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2UgIWRlZmF1bHQ7XG5cbi8vLS0tLS0gQ29weXJpZ2h0XG4kYWxwaGEtY29weXJpZ2h0LWZvbnQtc2l6ZTogLjgyNXJlbSAhZGVmYXVsdDtcbiRhbHBoYS1jb3B5cmlnaHQtbGluay1ob3Zlci1jb2xvcjogdmFyKC0tdGhlbWUtc2tpbi10ZXh0LWNvbG9yKSAhZGVmYXVsdDtcbiRhbHBoYS1jb3B5cmlnaHQtbGluay10ZXh0LWRlY29yYXRpb246IG5vbmUgIWRlZmF1bHQ7XG5cbi8vLS0tLS0gTmF2aWdhdGlvbnNcbi8vLS0tLSBDb21tb25cbiRuYXYtbGluay1hZnRlci1oZWlnaHQ6IDJweCAhZGVmYXVsdDtcblxuLy8tLS0tIENlbnRlclxuJG5hdi1jZW50ZXItbG9nby1wYWRkaW5nLXg6IDFyZW0gIWRlZmF1bHQ7XG4kbmF2LWNlbnRlci1sb2dvLXBhZGRpbmcteTogMCAhZGVmYXVsdDtcblxuLy8tLS0tLSBCcmVhZGNydW1ic1xuJGJyZWFkY3J1bWItbW9iaWxlLXNoYWRvdy1zaXplOiAxLjVyZW0gIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1tb2JpbGUtc2hhZG93LWNvbG9yOiAkYm9keS1iZyAhZGVmYXVsdDtcbiRicmVhZGNydW1iLW9uLWZlYXR1cmVkLW1vYmlsZS1zaGFkb3ctY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8tLS0tLSBUZWFzZVxuJHRlYXNlLWJhZGdlLWNvbG9yOiAkd2hpdGUgIWRlZmF1bHQ7XG4kdGVhc2UtYmFkZ2UtYmc6ICRwcmltYXJ5ICFkZWZhdWx0O1xuXG4kdGVhc2Utb3ZlcmxheS10ZXh0LWNvbG9yOiAkd2hpdGUgIWRlZmF1bHQ7XG4kdGVhc2Utb3ZlcmxheS10ZXh0LXNoYWRvdzogMCAwIC4yNXJlbSAjMDAwO1xuJHRlYXNlLW92ZXJsYXktYmctY29sb3I6ICRzZWNvbmRhcnkgIWRlZmF1bHQ7XG4kdGVhc2Utb3ZlcmxheS1iZy1vcGFjaXR5OiAuNSAhZGVmYXVsdDtcblxuLy8tLS0tLS0gV29vQ29tbWVyY2Vcbi8vIGJhY2t3YXJkIGNvbXBhdGliaWxpdHkgZm9yIG9sZCAkd29vY29tbWVyY2UgJiAkd29vY29tbWVyY2VTaWRlYmFyIHZhcmlhYmxlc1xuQGlmIHR5cGUtb2YoJHdvb2NvbW1lcmNlKSA9PSBcImJvb2xcIiB7XG4gIEB3YXJuIFwiVXNhZ2Ugb2YgJHdvb2NvbW1lcmNlIHZhcmlhYmxlIGFzIGJvb2wgaXMgZGVwcmVjYXRlZCwgdXNlIHdvb2NvbW1lcmNlLmVuYWJsZWQgaW4gd29vY29tbWVyY2UueWFtbCBpbnN0ZWFkLlwiO1xuICAkd29vY29tbWVyY2U6IG1hcC1leHRlbmQobWFwLWdldCgkY29uZmlnLWRlZmF1bHRzLCBcIndvb2NvbW1lcmNlXCIpLCAoZW5hYmxlZDogJHdvb2NvbW1lcmNlKSk7XG4gICR3b29jb21tZXJjZS1lbmFibGVkOiBtYXAtZ2V0LWRlZXAoJHdvb2NvbW1lcmNlLCBcImVuYWJsZWRcIik7XG59XG5cbkBpZiB2YXJpYWJsZS1leGlzdHMod29vY29tbWVyY2VTaWRlYmFyKSB7XG4gIEB3YXJuIFwiVXNhZ2Ugb2YgJHdvb2NvbW1lcmNlU2lkZWJhciB2YXJpYWJsZSBkZXByZWNhdGVkLCB1c2UgJHdvb2NvbW1lcmNlLXNpZGViYXIgaW5zdGVhZC5cIjtcbiAgJHdvb2NvbW1lcmNlLXNpZGViYXI6ICR3b29jb21tZXJjZVNpZGViYXI7XG59XG5cbi8vIEF0dHJpYnV0ZXNcbiR3Yy1wcm9kdWN0LWF0dHJpYnV0ZS1mb250LXNpemU6IC45cmVtICFkZWZhdWx0O1xuJHdjLXByb2R1Y3QtYXR0cmlidXRlLWV2ZW4tYmc6IHJnYmEoJHByaW1hcnksIC4xKSAhZGVmYXVsdDtcbiR3Yy1wcm9kdWN0LWF0dHJpYnV0ZS1sYWJlbC1jb2xvcjogJGdyYXktNzAwICFkZWZhdWx0O1xuXG4vLyBBdmFpbGFiaWxpdHlcbiR3Yy1zdG9jay1pY29uLXdpZHRoOiAkZmEtZnctd2lkdGggIWRlZmF1bHQ7XG4kd2Mtc3RvY2staWNvbi1mb250LXNpemU6ICRmYS1zaXplLXNjYWxlLWJhc2UgIWRlZmF1bHQ7XG4kd2Mtc3RvY2staW5mbzogKFxuICBhdmFpbGFibGUtb24tYmFja29yZGVyOiAoY29sb3I6IG9yYW5nZSwgaWNvbjogJGZhLXZhci1jbG9jay1yb3RhdGUtbGVmdCksXG4gIG91dC1vZi1zdG9jazogKGNvbG9yOiByZWQsIGljb246ICRmYS12YXItY2lyY2xlLXhtYXJrKVxuKSAhZGVmYXVsdDtcblxuLy8tLS0tLSBBZGQgdG8gQ2FydCBidXR0b25cbiRidG4tYWRkdG9jYXJ0LWJnOiB0cmFuc3BhcmVudCAhZGVmYXVsdDtcbiRidG4tYWRkdG9jYXJ0LWNvbG9yOiAkc2Vjb25kYXJ5ICFkZWZhdWx0O1xuJGJ0bi1hZGR0b2NhcnQtaG92ZXItYmc6IHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuJGJ0bi1hZGR0b2NhcnQtaG92ZXItY29sb3I6ICRwcmltYXJ5ICFkZWZhdWx0O1xuJGJ0bi1hZGR0b2NhcnQtaWNvbnM6IChcbiAgc2ltcGxlOiAkZmEtdmFyLXNob3BwaW5nLWJhc2tldCxcbiAgZ3JvdXBlZDogJGZhLXZhci1leWUsXG4gIHZhcmlhYmxlOiAkZmEtdmFyLWNvZ3MsXG4gIGJvb2tpbmc6ICRmYS12YXItY2FsZW5kYXItZGF5cyxcbikgIWRlZmF1bHQ7XG5cbi8vLS0tLS0gQm9va2luZ1xuJHdjLWJvb2tpbmctZGF0ZXBpY2tlci11aS1iZzogJHNlY29uZGFyeSAhZGVmYXVsdDtcbiR3Yy1ib29raW5nLWRhdGVwaWNrZXItdWktY29sb3I6IGNvbG9yLWNvbnRyYXN0KCR3Yy1ib29raW5nLWRhdGVwaWNrZXItdWktYmcpICFkZWZhdWx0O1xuJHdjLWJvb2tpbmctZGF0ZXBpY2tlci1ibG9jay1vZGQtYmc6ICRncmF5LTEwMCAhZGVmYXVsdDtcbiR3Yy1ib29raW5nLWRhdGVwaWNrZXItYmxvY2stb2RkLWhvdmVyLWJnOiBzaGFkZS1jb2xvcigkd2MtYm9va2luZy1kYXRlcGlja2VyLWJsb2NrLW9kZC1iZywgMjAlKSAhZGVmYXVsdDtcbiR3Yy1ib29raW5nLWRhdGVwaWNrZXItYmxvY2stb2RkLWNvbG9yOiBjb2xvci1jb250cmFzdCgkd2MtYm9va2luZy1kYXRlcGlja2VyLWJsb2NrLW9kZC1iZykgIWRlZmF1bHQ7XG4kd2MtYm9va2luZy1kYXRlcGlja2VyLWJsb2NrLWV2ZW4tYmc6ICRncmF5LTIwMCAhZGVmYXVsdDtcbiR3Yy1ib29raW5nLWRhdGVwaWNrZXItYmxvY2stZXZlbi1ob3Zlci1iZzogc2hhZGUtY29sb3IoJHdjLWJvb2tpbmctZGF0ZXBpY2tlci1ibG9jay1ldmVuLWJnLCAyMCUpICFkZWZhdWx0O1xuJHdjLWJvb2tpbmctZGF0ZXBpY2tlci1ibG9jay1ldmVuLWNvbG9yOiBjb2xvci1jb250cmFzdCgkd2MtYm9va2luZy1kYXRlcGlja2VyLWJsb2NrLWV2ZW4tYmcpICFkZWZhdWx0O1xuJHdjLWJvb2tpbmctY29zdC1iZzogJGdyYXktMTAwICFkZWZhdWx0O1xuJHdjLWJvb2tpbmctY29zdC1jb2xvcjogY29sb3ItY29udHJhc3QoJHdjLWJvb2tpbmctY29zdC1iZykgIWRlZmF1bHQ7XG5cbi8vLS0tLS0gUHJpY2UgQ29sb3JcbiR3Yy1wcmljZS1jb2xvcjogJHNlY29uZGFyeSAhZGVmYXVsdDtcbiR3Yy1kZWwtcHJpY2UtY29sb3I6IHJnYmEoJGdyYXktNTAwLCAuNikgIWRlZmF1bHQ7XG5cbi8vLS0tLS0gRGlzY291bnQgYmFkZ2VcbiRiYWRnZS1vbnNhbGUtYmc6ICRzZWNvbmRhcnkgIWRlZmF1bHQ7XG4kYmFkZ2Utb25zYWxlLWNvbG9yOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLS0tLS0gTWluaSBDYXJ0XG4kbWluaWNhcnQtY291bnRlci1iZzogJHNlY29uZGFyeSAhZGVmYXVsdDtcbiRtaW5pY2FydC1jb3VudGVyLWNvbG9yOiAkd2hpdGUgIWRlZmF1bHQ7XG4kbWluaWNhcnQtdG90YWwtYmc6ICRzZWNvbmRhcnkgIWRlZmF1bHQ7XG4kbWluaWNhcnQtdG90YWwtY29sb3I6ICR3aGl0ZSAhZGVmYXVsdDtcbiRtaW5pY2FydC1pdGVtLWNvbG9yOiAkcHJpbWFyeSAhZGVmYXVsdDtcbiRtaW5pY2FydC1xdHktY29sb3I6ICRib2R5LWNvbG9yICFkZWZhdWx0O1xuXG4vLy0tLS0tIENhcnRcbiRjYXJ0LWJ0bi1hY3Rpb25zLWJnOiAkcHJpbWFyeSAhZGVmYXVsdDtcbiRjYXJ0LWJ0bi1jaGVja291dC1iZzogJHNlY29uZGFyeSAhZGVmYXVsdDtcblxuLy8tLS0tLSBNZXNzYWdlXG4kd2MtbWVzc2FnZS1iZy1jb2xvcjogJGdyYXktMTAwICFkZWZhdWx0O1xuJHdjLW1lc3NhZ2UtY29sb3I6ICRib2R5LWNvbG9yICFkZWZhdWx0O1xuJHdjLW1lc3NhZ2UtaWNvbi1jb2xvcjogJGdyZWVuICFkZWZhdWx0O1xuXG4kd2MtaW5mby1iZy1jb2xvcjogJGdyYXktMTAwICFkZWZhdWx0O1xuJHdjLWluZm8tY29sb3I6ICRib2R5LWNvbG9yICFkZWZhdWx0O1xuJHdjLWluZm8taWNvbi1jb2xvcjogJGJsdWUgIWRlZmF1bHQ7XG5cbiR3Yy1lcnJvci1iZy1jb2xvcjogJGdyYXktMTAwICFkZWZhdWx0O1xuJHdjLWVycm9yLWNvbG9yOiAkYm9keS1jb2xvciAhZGVmYXVsdDtcbiR3Yy1lcnJvci1pY29uLWNvbG9yOiByZWQgIWRlZmF1bHQ7XG5cbi8vLS0tLS0gU2lkZWJhclxuJHdjLXNpZGViYXItbW9iaWxlLWNvbG9yOiB3aGl0ZSAhZGVmYXVsdDtcbiR3Yy1zaWRlYmFyLW1vYmlsZS1iYWNrLXRvcC1vZmZzZXQteTogM3JlbSAhZGVmYXVsdDtcbiR3Yy1zaWRlYmFyLWNvbG9yOiByZ2JhKCRwcmltYXJ5LCAuMSkgIWRlZmF1bHQ7XG4kd2MtZmlsdGVyLXRvZ2dsZXItY29sb3I6ICR3aGl0ZSAhZGVmYXVsdDtcbiR3Yy1maWx0ZXItdG9nZ2xlci1iZzogJHByaW1hcnkgIWRlZmF1bHQ7XG4kd2MtY2F0LWxpbmstYmc6ICRncmF5LTEwMCAhZGVmYXVsdDtcbiR3Yy1jYXQtbGluay1ob3Zlci1iZzogJHByaW1hcnkgIWRlZmF1bHQ7XG4kd2MtY2F0LWxpbmstaG92ZXItY29sb3I6ICR3aGl0ZSAhZGVmYXVsdDtcbiR3Yy1zaWRlYmFyLWN1cnJlbnQtdGVybS1saW5rLWNvbG9yOiAkbmF2LWNvbG9yLWN1cnJlbnQgIWRlZmF1bHQ7XG4kd2Mtc2lkZWJhci1jdXJyZW50LXRlcm0tbGluay1ob3Zlci1jb2xvcjogdGludC1jb2xvcigkd2Mtc2lkZWJhci1jdXJyZW50LXRlcm0tbGluay1jb2xvciwgMTAlKSAhZGVmYXVsdDtcbiR3Yy1zaWRlYmFyLWN1cnJlbnQtdGVybS1wYXJlbnQtbGluay1jb2xvcjogJG5hdi1jb2xvci1hbmNlc3RvciAhZGVmYXVsdDtcbiR3Yy1zaWRlYmFyLWN1cnJlbnQtdGVybS1wYXJlbnQtbGluay1ob3Zlci1jb2xvcjogdGludC1jb2xvcigkd2Mtc2lkZWJhci1jdXJyZW50LXRlcm0tcGFyZW50LWxpbmstY29sb3IsIDEwJSkgIWRlZmF1bHQ7XG5cbi8vLS0tLS0gVG9wIGJhciBpY29uc1xuLy8tLS0tLSBUb3AgYmFyIGljb25zXG4kdG9wLWJhci1pY29uczogKGNvbnRhY3Q6ICRmYS12YXItZW52ZWxvcGUsIHBob25lOiAkZmEtdmFyLXBob25lLWFsdCkgIWRlZmF1bHQ7XG4kdG9wLWJhci1pY29ucy1tYXJnaW46IC4yNXJlbSAhZGVmYXVsdDtcbiR0b3AtYmFyLWljb25zLWZhLXZhcmlhbnQ6IFwic29saWRcIiAhZGVmYXVsdDtcbiR3Yy10b3AtYmFyLWljb25zOiAkdG9wLWJhci1pY29ucyAhZGVmYXVsdDtcbiR3Yy10b3AtYmFyLWljb25zLW1hcmdpbjogJHRvcC1iYXItaWNvbnMtbWFyZ2luICFkZWZhdWx0O1xuJHdjLXRvcC1iYXItaWNvbnMtZmEtdmFyaWFudDogJHRvcC1iYXItaWNvbnMtZmEtdmFyaWFudCAhZGVmYXVsdDtcblxuLy8tLS0tLSBUZWFzZVxuJHdjLXRlYXNlLXByb2R1Y3QtYmctY29sb3I6ICR3aGl0ZSAhZGVmYXVsdDtcbiR3Yy10ZWFzZS1wcm9kdWN0LWJvcmRlci1yYWRpdXM6IG1hcC1nZXQoJHNwYWNlcnMsIDIpICFkZWZhdWx0O1xuJHdjLXRlYXNlLXByb2R1Y3QtbGluay1wYWRkaW5nOiBtYXAtZ2V0KCRzcGFjZXJzLCAyKSAhZGVmYXVsdDtcbiR3Yy10ZWFzZS1wcm9kdWN0LWxpbmstaW1hZ2UtcGFkZGluZzogJHdjLXRlYXNlLXByb2R1Y3QtbGluay1wYWRkaW5nICogLTEgIWRlZmF1bHQ7XG4kd2MtdGVhc2UtcHJvZHVjdC1ob3Zlci1ib3JkZXItY29sb3I6ICRzZWNvbmRhcnkgIWRlZmF1bHQ7XG5cbi8vLS0tLS0tIFNvY2lhbCBzaGFyZSBpY29uc1xuJHNvY2lhbC1zaGFyZS1ob3Zlci1ib3JkZXItY29sb3I6IHJnYmEoJHByaW1hcnksIC41KSAhZGVmYXVsdDtcblxuLy8tLS0tLS0gV1BNTFxuJHdwbWwtZGV2OiBmYWxzZSAhZGVmYXVsdDtcblxuLy8tLS0tLS0gQWxwaGEgYmxvY2tzXG4vLy0tLS0tIEZhY2Vib29rIHZpZGVvXG4kYWxwaGEtZmItdmlkZW8tbG9hZGVyLWJnLWNvbG9yOiAkcHJpbWFyeSAhZGVmYXVsdDtcbiRhbHBoYS1mYi12aWRlby1sb2FkZXItY29sb3I6IGNvbG9yLWNvbnRyYXN0KCRhbHBoYS1mYi12aWRlby1sb2FkZXItYmctY29sb3IpICFkZWZhdWx0O1xuXG4vLy0tLS0tIEhlcm8gYmFubmVyXG4kYWxwaGEtaGVyby1iYW5uZXItb2Zmc2V0LXk6IDMuNXJlbSAhZGVmYXVsdDtcbiRhbHBoYS1oZXJvLWJhbm5lci1vZmZzZXQtdG9wOiAkYWxwaGEtaGVyby1iYW5uZXItb2Zmc2V0LXkgIWRlZmF1bHQ7XG4kYWxwaGEtaGVyby1iYW5uZXItb2Zmc2V0LWJvdHRvbTogJGFscGhhLWhlcm8tYmFubmVyLW9mZnNldC15ICFkZWZhdWx0O1xuXG4vLy0tLS0tIE1hcFxuJGFscGhhLW1hcC1kZWZhdWx0LWhlaWdodDogMjUwcHggIWRlZmF1bHQ7XG4kYWxwaGEtbWFwLWRlZmF1bHQtaGVpZ2h0LWxnOiAkYWxwaGEtbWFwLWRlZmF1bHQtaGVpZ2h0ICogMiAhZGVmYXVsdDtcblxuLy8tLS0tLSBSYXRpbmdcbiRhbHBoYS1yYXRpbmctc3Rhci1vbi1jb2xvcjogJHllbGxvdyAhZGVmYXVsdDtcbiRhbHBoYS1yYXRpbmctc3Rhci1vZmYtY29sb3I6ICRncmF5LTEwMCAhZGVmYXVsdDtcblxuLy8tLS0tLSBJY29uXG4kaWNvbi1ibG9jay1pY29uLWNvbG9yOiAkcHJpbWFyeSAhZGVmYXVsdDtcblxuLy8tLS0tLSBHb29nbGUgUmV2aWV3c1xuJGdvb2dsZS1yZXZpZXdzLWJvcmRlci10b3A6IDZweCBzb2xpZCAjNGZjZTZhICFkZWZhdWx0O1xuJGdvb2dsZS1yZXZpZXdzLWJvcmRlci1yYWRpdXM6IC4xNXJlbSAhZGVmYXVsdDtcbiRnb29nbGUtcmV2aWV3cy1sb2dvLXdpZHRoOiA1MHB4ICFkZWZhdWx0O1xuJGdvb2dsZS1yZXZpZXdzLXNjb3JlLWZvbnQtc2l6ZTogMS4yNXJlbSAhZGVmYXVsdDtcbiRnb29nbGUtcmV2aWV3cy1yYXRpbmctc3Rhci1jb2xvcjogI2U3NzExYiAhZGVmYXVsdDtcbiRnb29nbGUtcmV2aWV3cy1yYXRpbmctY291bnQtY29sb3I6ICM3YTdhN2EgIWRlZmF1bHQ7XG4kZ29vZ2xlLXJldmlld3Mtei1pbmRleDogMjAwMCAhZGVmYXVsdDtcbiRnb29nbGUtcmV2aWV3cy1vZmZzZXQ6IDJyZW0gIWRlZmF1bHQ7XG4kZ29vZ2xlLXJldmlld3Mtb2Zmc2V0LWJvdHRvbTogJGdvb2dsZS1yZXZpZXdzLW9mZnNldCAhZGVmYXVsdDtcbiRnb29nbGUtcmV2aWV3cy1vZmZzZXQtbGVmdDogJGdvb2dsZS1yZXZpZXdzLW9mZnNldCAhZGVmYXVsdDtcbiRnb29nbGUtcmV2aWV3cy1vZmZzZXQtcmlnaHQ6ICRnb29nbGUtcmV2aWV3cy1vZmZzZXQgIWRlZmF1bHQ7XG4kZ29vZ2xlLWJhZGdlLWRpc3BsYXk6IGJsb2NrICFkZWZhdWx0O1xuJGdvb2dsZS1yZXZpZXdzLWJhZGdlLWhpZGUtb24tbW9iaWxlOiB0cnVlICFkZWZhdWx0O1xuXG4vLy0tLS0tLSBBbHBoYSBtb2R1bGVzXG4vLy0tLS0tIENvbW1vblxuJGxvYWRpbmctbW9kdWxlcy1iZy1jb2xvcjogcmdiYSgkd2hpdGUsIC43NSkgIWRlZmF1bHQ7XG4kbG9hZGluZy1tb2R1bGVzLWxvYWRlci1jb2xvcjogJHByaW1hcnkgIWRlZmF1bHQ7XG4kbG9hZGluZy1tb2R1bGVzLWxvYWRlci1mb250LXNpemU6IDJyZW0gIWRlZmF1bHQ7XG4kbG9hZGluZy1tb2R1bGVzLXotaW5kZXg6IDEwICFkZWZhdWx0O1xuXG4vLy0tLS0tIERlZmF1bHRcbi8vLS0tLSBQYWdlIHNjcm9sbFxuJGhvbWUtcGFnZS1zY3JvbGwtbGlzdGVuZXItaGVpZ2h0OiAxNXZoICFkZWZhdWx0O1xuJHBhZ2Utc2Nyb2xsLWxpc3RlbmVyLWhlaWdodDogJGhvbWUtcGFnZS1zY3JvbGwtbGlzdGVuZXItaGVpZ2h0IC8gMiAhZGVmYXVsdDtcbiRwYWdlLXNjcm9sbC1saXN0ZW5lci1oZWlnaHQtZGVza3RvcDogJGhvbWUtcGFnZS1zY3JvbGwtbGlzdGVuZXItaGVpZ2h0IC8gMyAhZGVmYXVsdDtcblxuLy8tLS0tLSBPcHRpb25hbFxuLy8tLS0tIEJhY2sgdG8gdG9wXG4kYmFjay10by10b3Atb2Zmc2V0LXg6IDFyZW0gIWRlZmF1bHQ7XG4kYmFjay10by10b3Atb2Zmc2V0LXk6IDFyZW0gIWRlZmF1bHQ7XG4kYmFjay10by10b3AtZGVmYXVsdC1idXR0b24tdHJhbnNsYXRlLXk6ICRiYWNrLXRvLXRvcC1vZmZzZXQteSAqIC0yICFkZWZhdWx0O1xuXG4vLy0tLS0gSGVhZGVyIHN0YXRlc1xuLy8tLS0gU2hydW5rIGxvZ29cbiRzaHJ1bmstbG9nby1oZWlnaHQtcmF0aW86IC44ICFkZWZhdWx0O1xuXG4vLy0tLS0gUmFuZ2Ugc2xpZGVyXG4kcmFuZ2Utc2xpZGVyLXdyYXBwZXItaGVpZ2h0OiAzcmVtICFkZWZhdWx0O1xuXG4vLy0tLS0gUm91c3F1aWxsZVxuJHJvdXNxdWlsbGUtYmFubmVyLWxvZ28tbWFyZ2luOiAwIGF1dG8gIWRlZmF1bHQ7XG4kcm91c3F1aWxsZS1iYW5uZXItbG9nby1tYXJnaW4tdGFibGV0OiAwIGF1dG8gbWFwLWdldCgkc3BhY2VycywgOCkgIWRlZmF1bHQ7XG4kcm91c3F1aWxsZS1iYW5uZXItbG9nby1tYXJnaW4tbW9iaWxlOiAwIGF1dG8gbWFwLWdldCgkc3BhY2VycywgNCkgIWRlZmF1bHQ7XG4kcm91c3F1aWxsZS1iYW5uZXItbG9nby1oZWlnaHQ6ICRsb2dvLWhlaWdodCAhZGVmYXVsdDtcbiRyb3VzcXVpbGxlLWJhbm5lci1sb2dvLW1heC1oZWlnaHQ6IDVyZW0gIWRlZmF1bHQ7XG5cbi8vLS0tLSBTd2lwZXJcbiRzd2lwZXItdGhlbWUtY29sb3I6ICRwcmltYXJ5ICFkZWZhdWx0O1xuJHN3aXBlci1uYXZpZ2F0aW9uLXNpemU6IDEuNzVyZW0gIWRlZmF1bHQ7XG5cbi8vLS0tIFRyYW5zcGFyZW50IEhlYWRlclxuJHRyYW5zcGFyZW50LWhlYWRlci1iZy1jb2xvcjogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgJGdyYXktNzAwLCB0cmFuc3BhcmVudCkgIWRlZmF1bHQ7XG4kdHJhbnNwYXJlbnQtaGVhZGVyLXRleHQtY29sb3I6ICNmZmYgIWRlZmF1bHQ7XG4kdHJhbnNwYXJlbnQtaGVhZGVyLXNoYWRvdy1jb2xvcjogIzAwMCAhZGVmYXVsdDtcbiR0cmFuc3BhcmVudC1oZWFkZXItc2hhZG93LXJhZGl1czogLjEyNXJlbSAhZGVmYXVsdDtcbiR0cmFuc3BhcmVudC1oZWFkZXItbG9nby1jb2xvcjogJHRyYW5zcGFyZW50LWhlYWRlci10ZXh0LWNvbG9yICFkZWZhdWx0O1xuJHRyYW5zcGFyZW50LWhlYWRlci1sb2dvLXNoYWRvdy1jb2xvcjogJHRyYW5zcGFyZW50LWhlYWRlci1zaGFkb3ctY29sb3IgIWRlZmF1bHQ7XG4kdHJhbnNwYXJlbnQtaGVhZGVyLWxvZ28tc2hhZG93LXJhZGl1czogJHRyYW5zcGFyZW50LWhlYWRlci1zaGFkb3ctcmFkaXVzICFkZWZhdWx0O1xuXG4vLy0tLS0gSW1hZ2UgR2FsbGVyeVxuLy8gXCJvdmVybGF5XCIsIFwiZGVmYXVsdC1vcGFjaXR5XCIsIFwiaG92ZXItb3BhY2l0eVwiLCBcImN1c3RvbVwiXG4kaW1hZ2UtZ2FsbGVyeS1hbmltYXRpb24tdHlwZTogXCJvdmVybGF5XCIgIWRlZmF1bHQ7XG5cbi8vLS0tIE9wYWNpdHlcbiRpbWFnZS1nYWxsZXJ5LWltYWdlLW9wYWNpdHk6IC43ICFkZWZhdWx0O1xuXG4vLy0tLSBPdmVybGF5XG4kaW1hZ2UtZ2FsbGVyeS1vdmVybGF5LWNvbG9yOiAjZmZmICFkZWZhdWx0O1xuJGltYWdlLWdhbGxlcnktb3ZlcmxheS1vcGFjaXR5OiAuMTUgIWRlZmF1bHQ7XG4kaW1hZ2UtZ2FsbGVyeS1vdmVybGF5LWJhY2tkcm9wLWZpbHRlcjogc2F0dXJhdGUoMTI1JSkgY29udHJhc3QoMTI1JSkgIWRlZmF1bHQ7XG4kaW1hZ2UtZ2FsbGVyeS1vdmVybGF5LXRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKSBzY2FsZSguNSkgIWRlZmF1bHQ7XG4kaW1hZ2UtZ2FsbGVyeS1vdmVybGF5LWljb246ICRmYS12YXItc2VhcmNoLXBsdXMgIWRlZmF1bHQ7XG4kaW1hZ2UtZ2FsbGVyeS1vdmVybGF5LWljb24tc3R5bGU6IFwicmVndWxhclwiICFkZWZhdWx0O1xuJGltYWdlLWdhbGxlcnktb3ZlcmxheS1pY29uLWNvbG9yOiAjZmZmICFkZWZhdWx0O1xuJGltYWdlLWdhbGxlcnktb3ZlcmxheS1pY29uLW9wYWNpdHk6IC44NSAhZGVmYXVsdDtcbiRpbWFnZS1nYWxsZXJ5LW92ZXJsYXktaWNvbi1mb250LXNpemU6IDEuNXJlbSAhZGVmYXVsdDtcbiRpbWFnZS1nYWxsZXJ5LW92ZXJsYXktaWNvbi10ZXh0LXNoYWRvdzogMCAwIC4xMjVyZW0gcmdiYShibGFjaywgLjc1KSAhZGVmYXVsdDtcbiRpbWFnZS1nYWxsZXJ5LW92ZXJsYXktaWNvbi10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEuNXJlbSkgIWRlZmF1bHQ7XG4kaW1hZ2UtZ2FsbGVyeS1vdmVybGF5LWltYWdlLW9mZnNldDogLjEgIWRlZmF1bHQ7XG4kaW1hZ2UtZ2FsbGVyeS1vdmVybGF5LWltYWdlLXNjYWxlOiAxICsgJGltYWdlLWdhbGxlcnktb3ZlcmxheS1pbWFnZS1vZmZzZXQgIWRlZmF1bHQ7XG5cbi8vLS0tLSBMZWFmbGV0IE1hcFxuJG1hcC1tYXJrZXItY29sb3ItZGVmYXVsdDogJHNlY29uZGFyeSAhZGVmYXVsdDtcbiRtYXAtbWFya2VyLWNvbG9yLWxvYWRpbmc6IGdyYXkgIWRlZmF1bHQ7XG4kbWFwLW1hcmtlci1jb2xvci1hY3RpdmU6ICRwcmltYXJ5ICFkZWZhdWx0O1xuXG4vLy0tLS0gTWFzb25yeVxuJG1hc29ucnktZ2FsbGVyeS1nYXA6IC43NXJlbSAhZGVmYXVsdDtcblxuLy8tLS0tIFdvb0NvbW1lcmNlIFNlYXJjaCBPdmVybGF5XG4kc2VhcmNoLW92ZXJsYXktYmctY29sb3I6IGJsYWNrICFkZWZhdWx0O1xuJHNlYXJjaC1vdmVybGF5LWJnLW9wYWNpdHk6IC4yNSAhZGVmYXVsdDtcbiRzZWFyY2gtb3ZlcmxheS1iYWNrZHJvcC1maWx0ZXI6IGJsdXIoLjEyNXJlbSkgIWRlZmF1bHQ7XG4kc2VhcmNoLW92ZXJsYXktZm9ybS1mb250LXNpemU6IC45cmVtICFkZWZhdWx0O1xuJHNlYXJjaC1vdmVybGF5LWZvcm0tYm9yZGVyLXJhZGl1czogLjI1cmVtICFkZWZhdWx0O1xuXG4vLy0tLS0gV29vQ29tbWVyY2UgUmV2aWV3IGZvcm1cbiR3b29jb21tZXJjZS1yZXZpZXctZm9ybS1zdGFycy1mb250c2l6ZTogMnJlbSAhZGVmYXVsdDtcblxuLy8tLS0tLS0gR3V0ZW5iZXJnIGJsb2Nrc1xuLy8tLS0tLSBSYW5rIE1hdGhcbi8vLS0tLSBGQVFcbiRyYW5rLW1hdGgtZmFxLWJnLWNvbG9yOiAkd2hpdGUgIWRlZmF1bHQ7XG4kcmFuay1tYXRoLWZhcS1ib3gtc2hhZG93OiAwIC41cmVtIC41cmVtIC0uMjVyZW0gcmdiYSgkYmxhY2ssIC4xKSAhZGVmYXVsdDtcbiRyYW5rLW1hdGgtZmFxLWJvcmRlci1yYWRpdXM6IG1hcC1nZXQoJHNwYWNlcnMsIDEpICFkZWZhdWx0O1xuJHJhbmstbWF0aC1mYXEtYm9yZGVyLWNvbG9yOiAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kcmFuay1tYXRoLWZhcS1ib3JkZXI6IDFweCBzb2xpZCAkcmFuay1tYXRoLWZhcS1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kcmFuay1tYXRoLWZhcS1pdGVtLXBhZGRpbmc6IG1hcC1nZXQoJHNwYWNlcnMsIDMpICFkZWZhdWx0O1xuJHJhbmstbWF0aC1mYXEtcXVlc3Rpb24tZm9udC1zaXplOiAxLjI1cmVtICFkZWZhdWx0O1xuJHJhbmstbWF0aC1mYXEtcXVlc3Rpb24tZ2FwOiBtYXAtZ2V0KCRzcGFjZXJzLCAyKSAhZGVmYXVsdDtcbiRyYW5rLW1hdGgtZmFxLXF1ZXN0aW9uLXBhZGRpbmctYm90dG9tOiAkcmFuay1tYXRoLWZhcS1xdWVzdGlvbi1nYXAgIWRlZmF1bHQ7XG4kcmFuay1tYXRoLWZhcS1xdWVzdGlvbi1ib3JkZXItY29sb3I6ICRyYW5rLW1hdGgtZmFxLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRyYW5rLW1hdGgtZmFxLXF1ZXN0aW9uLWJvcmRlci1ib3R0b206ICRyYW5rLW1hdGgtZmFxLWJvcmRlciAhZGVmYXVsdDtcbiRyYW5rLW1hdGgtZmFxLXF1ZXN0aW9uLWljb246ICRmYS12YXItcXVlc3Rpb24tY2lyY2xlICFkZWZhdWx0O1xuJHJhbmstbWF0aC1mYXEtcXVlc3Rpb24taWNvbi1jb2xvcjogJHNlY29uZGFyeSAhZGVmYXVsdDtcbiRyYW5rLW1hdGgtZmFxLXF1ZXN0aW9uLWljb24tZm9udC1zaXplOiAxcmVtICFkZWZhdWx0O1xuJHJhbmstbWF0aC1mYXEtcXVlc3Rpb24taWNvbi1vZmZzZXQtdG9wOiAuMnJlbSAhZGVmYXVsdDtcblxuLy8tLS0tIEltYWdlXG4kZ3V0ZW5iZXJnLWltYWdlLXJhdGlvczogKFwiMVwiLCBcIjQvM1wiLCBcIjMvNFwiLCBcIjMvMlwiLCBcIjIvM1wiLCBcIjE2LzlcIiwgXCI5LzE2XCIpICFkZWZhdWx0O1xuXG4vLy0tLS0tLSBGb250cyBvcHRpbWl6YXRpb25cbi8vLS0tLS0gRm9udEF3ZXNvbWUgaWNvbnNcbiRmb250LWZhLXBybzogXCJGb250IEF3ZXNvbWUgNiBQcm9cIjtcbiRmb250LWZhLWJyYW5kczogXCJGb250IEF3ZXNvbWUgNiBCcmFuZHNcIjtcbi8vIHNlZSAuLi92ZW5kb3JzL19mb250YXdlc29tZS5zY3NzIGZvciBpY29ucyBwcm9jZXNzaW5nXG4vLyBzZWUgLi4vdmVuZG9ycy9fZm9udGF3ZXNvbWUtaWNvbnMuc2NzcyBmb3IgYXZhaWxhYmxlIGljb25zICYgaWNvbnMgZ3JvdXBzXG4vLyAkY3VzdG9tLXVzZWQtZmEtaWNvbnM6IChmb250LWF3ZXNvbWUtZmxhZzogJGZhLXZhci1mb250LWF3ZXNvbWUtZmxhZywgcGx1czogJGZhLXZhci1wbHVzKTtcbiRjdXN0b20tdXNlZC1mYS1pY29uczogKCkgIWRlZmF1bHQ7XG4vLyAkdXNlZC1mYS1pY29ucy1ncm91cHM6IChhY2NvbW1vZGF0aW9ucywgd29vY29tbWVyY2UpO1xuJHVzZWQtZmEtaWNvbnMtZ3JvdXBzOiAoKSAhZGVmYXVsdDtcblxuLy8tLS0tLSBJY29ucyBsaXN0XG4kYWxwaGEtZmEtaWNvbnMtbGlzdDogKCkgIWRlZmF1bHQ7XG4kYWxwaGEtZmEtaWNvbnMtbGlzdC1jb2xvcjogJHByaW1hcnkgIWRlZmF1bHQ7XG4kYWxwaGEtZmEtaWNvbnMtbGlzdC1zdHlsZTogc29saWQgIWRlZmF1bHQ7XG4kYWxwaGEtZmEtaWNvbnMtbGlzdC1jb2xvcnM6ICgpICFkZWZhdWx0O1xuXG4vLy0tLS0tLSBTbGlja1xuJHNsaWNrLWZvbnQtcGF0aDogXCJ+c2xpY2stY2Fyb3VzZWwvc2xpY2svZm9udHMvXCI7XG4kc2xpY2stZm9udC1mYW1pbHk6ICRmb250LWZhLXBybztcblxuLy8tLS0tLS0gQ0Y3IEVmZmVjdFxuJGNvbG9yLWZvcm0tZmlsbGVkOiAkcHJpbWFyeSAhZGVmYXVsdDtcbiRmb3JtLWd1dHRlcjogLjVyZW0gIWRlZmF1bHQ7XG5cbi8vLS0tLS0tIEJvb3RzdHJhcCBSZXNwb25zaXZlIEltYWdlIFJhdGlvXG4vLyBtdXN0IGJlIGEgbGlzdCBvZiByYXRpb3MgZm9ybWF0dGVkIGxpa2UgdGhpczogKDEgMSksICg0IDMpLCAoMyAyKSwgKDE2IDkpLCAoMjEgOSlcbiRtZWRpYS1yYXRpb3M6ICgpICFkZWZhdWx0O1xuIiwiLy8gZnVuY3Rpb25zXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBmYS1jb250ZW50OiBjb252ZW5pZW5jZSBmdW5jdGlvbiB1c2VkIHRvIHNldCBjb250ZW50IHByb3BlcnR5XG5AZnVuY3Rpb24gZmEtY29udGVudCgkZmEtdmFyKSB7XG4gIEByZXR1cm4gdW5xdW90ZShcIlxcXCIjeyAkZmEtdmFyIH1cXFwiXCIpO1xufVxuXG4vLyBmYS1kaXZpZGU6IE9yaWdpbmFsbHkgb2J0YWluZWQgZnJvbSB0aGUgQm9vdHN0cmFwIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcFxuLy9cbi8vIExpY2Vuc2VkIHVuZGVyOiBUaGUgTUlUIExpY2Vuc2UgKE1JVClcbi8vXG4vLyBDb3B5cmlnaHQgKGMpIDIwMTEtMjAyMSBUd2l0dGVyLCBJbmMuXG4vLyBDb3B5cmlnaHQgKGMpIDIwMTEtMjAyMSBUaGUgQm9vdHN0cmFwIEF1dGhvcnNcbi8vXG4vLyBQZXJtaXNzaW9uIGlzIGhlcmVieSBncmFudGVkLCBmcmVlIG9mIGNoYXJnZSwgdG8gYW55IHBlcnNvbiBvYnRhaW5pbmcgYSBjb3B5XG4vLyBvZiB0aGlzIHNvZnR3YXJlIGFuZCBhc3NvY2lhdGVkIGRvY3VtZW50YXRpb24gZmlsZXMgKHRoZSBcIlNvZnR3YXJlXCIpLCB0byBkZWFsXG4vLyBpbiB0aGUgU29mdHdhcmUgd2l0aG91dCByZXN0cmljdGlvbiwgaW5jbHVkaW5nIHdpdGhvdXQgbGltaXRhdGlvbiB0aGUgcmlnaHRzXG4vLyB0byB1c2UsIGNvcHksIG1vZGlmeSwgbWVyZ2UsIHB1Ymxpc2gsIGRpc3RyaWJ1dGUsIHN1YmxpY2Vuc2UsIGFuZC9vciBzZWxsXG4vLyBjb3BpZXMgb2YgdGhlIFNvZnR3YXJlLCBhbmQgdG8gcGVybWl0IHBlcnNvbnMgdG8gd2hvbSB0aGUgU29mdHdhcmUgaXNcbi8vIGZ1cm5pc2hlZCB0byBkbyBzbywgc3ViamVjdCB0byB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnM6XG4vL1xuLy8gVGhlIGFib3ZlIGNvcHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGVybWlzc2lvbiBub3RpY2Ugc2hhbGwgYmUgaW5jbHVkZWQgaW5cbi8vIGFsbCBjb3BpZXMgb3Igc3Vic3RhbnRpYWwgcG9ydGlvbnMgb2YgdGhlIFNvZnR3YXJlLlxuLy9cbi8vIFRIRSBTT0ZUV0FSRSBJUyBQUk9WSURFRCBcIkFTIElTXCIsIFdJVEhPVVQgV0FSUkFOVFkgT0YgQU5ZIEtJTkQsIEVYUFJFU1MgT1Jcbi8vIElNUExJRUQsIElOQ0xVRElORyBCVVQgTk9UIExJTUlURUQgVE8gVEhFIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZLFxuLy8gRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UgQU5EIE5PTklORlJJTkdFTUVOVC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFXG4vLyBBVVRIT1JTIE9SIENPUFlSSUdIVCBIT0xERVJTIEJFIExJQUJMRSBGT1IgQU5ZIENMQUlNLCBEQU1BR0VTIE9SIE9USEVSXG4vLyBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQU4gQUNUSU9OIE9GIENPTlRSQUNULCBUT1JUIE9SIE9USEVSV0lTRSwgQVJJU0lORyBGUk9NLFxuLy8gT1VUIE9GIE9SIElOIENPTk5FQ1RJT04gV0lUSCBUSEUgU09GVFdBUkUgT1IgVEhFIFVTRSBPUiBPVEhFUiBERUFMSU5HUyBJTlxuLy8gVEhFIFNPRlRXQVJFLlxuXG5AZnVuY3Rpb24gZmEtZGl2aWRlKCRkaXZpZGVuZCwgJGRpdmlzb3IsICRwcmVjaXNpb246IDEwKSB7XG4gICRzaWduOiBpZigkZGl2aWRlbmQgPiAwIGFuZCAkZGl2aXNvciA+IDAsIDEsIC0xKTtcbiAgJGRpdmlkZW5kOiBhYnMoJGRpdmlkZW5kKTtcbiAgJGRpdmlzb3I6IGFicygkZGl2aXNvcik7XG4gICRxdW90aWVudDogMDtcbiAgJHJlbWFpbmRlcjogJGRpdmlkZW5kO1xuICBAaWYgJGRpdmlkZW5kID09IDAge1xuICAgIEByZXR1cm4gMDtcbiAgfVxuICBAaWYgJGRpdmlzb3IgPT0gMCB7XG4gICAgQGVycm9yIFwiQ2Fubm90IGRpdmlkZSBieSAwXCI7XG4gIH1cbiAgQGlmICRkaXZpc29yID09IDEge1xuICAgIEByZXR1cm4gJGRpdmlkZW5kO1xuICB9XG4gIEB3aGlsZSAkcmVtYWluZGVyID49ICRkaXZpc29yIHtcbiAgICAkcXVvdGllbnQ6ICRxdW90aWVudCArIDE7XG4gICAgJHJlbWFpbmRlcjogJHJlbWFpbmRlciAtICRkaXZpc29yO1xuICB9XG4gIEBpZiAkcmVtYWluZGVyID4gMCBhbmQgJHByZWNpc2lvbiA+IDAge1xuICAgICRyZW1haW5kZXI6IGZhLWRpdmlkZSgkcmVtYWluZGVyICogMTAsICRkaXZpc29yLCAkcHJlY2lzaW9uIC0gMSkgKiAuMTtcbiAgfVxuICBAcmV0dXJuICgkcXVvdGllbnQgKyAkcmVtYWluZGVyKSAqICRzaWduO1xufVxuIiwiLnN3aXBlci1uYXYtd2hpdGUge1xuICAtLXN3aXBlci1uYXZpZ2F0aW9uLWNvbG9yOiAjZmZmO1xufVxuXG4uc3dpcGVyLXBhZ2luYXRpb24tcHJpbWFyeSB7XG4gIC0tc3dpcGVyLXBhZ2luYXRpb24tY29sb3I6ICN7JHByaW1hcnl9O1xufVxuXG4uc3dpcGVyLXBhZ2luYXRpb24tc2Vjb25kYXJ5IHtcbiAgLS1zd2lwZXItcGFnaW5hdGlvbi1jb2xvcjogI3skc2Vjb25kYXJ5fTtcbn1cbiIsIkBpbXBvcnQgXCJjb25maWcvZ3JpZC55YW1sXCI7XHJcbkBpbXBvcnQgXCJjb25maWcvdGVtcGxhdGVzLnlhbWxcIjtcclxuQGltcG9ydCBcImNvbmZpZy90aGVtZS55YW1sXCI7XHJcbkBpbXBvcnQgXCJjb25maWcvd29vY29tbWVyY2UueWFtbFwiO1xyXG5AaW1wb3J0IFwifkBuZW1hdGlzL3dwLWFscGhhL2Fzc2V0cy9zYXNzL2Fic3RyYWN0cy95YW1sLXZhcmlhYmxlc1wiO1xyXG5AaW1wb3J0IFwiYXNzZXRzL3Nhc3MvaW5pdFwiO1xuQGltcG9ydCBcIi4uL2luaXRcIjtcblxuLy8gPT09IFdQIEFMUEhBIEFTU0VUU1xuQGltcG9ydCBcIn5AbmVtYXRpcy93cC1hbHBoYS9hc3NldHMvc2Fzcy9wYWdlcy9wYWdlXCI7XG5cbi8vID09PSBDT01QT05FTlRTXG5AaW1wb3J0IFwiLi4vY29tcG9uZW50cy9zd2lwZXJcIjtcblxuLmJhbm5lci1iZXR3ZWVuLWJsb2NrcyB7XG4gIG1heC1oZWlnaHQ6IDIwMHB4O1xuICBpbWcge1xuICAgIG1heC1oZWlnaHQ6IDIwMHB4ICFpbXBvcnRhbnQ7XG4gIH1cbn1cbiIsIi8vIEJyZWFrcG9pbnQgdmlld3BvcnQgc2l6ZXMgYW5kIG1lZGlhIHF1ZXJpZXMuXG4vL1xuLy8gQnJlYWtwb2ludHMgYXJlIGRlZmluZWQgYXMgYSBtYXAgb2YgKG5hbWU6IG1pbmltdW0gd2lkdGgpLCBvcmRlciBmcm9tIHNtYWxsIHRvIGxhcmdlOlxuLy9cbi8vICAgICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCwgeHhsOiAxNDAwcHgpXG4vL1xuLy8gVGhlIG1hcCBkZWZpbmVkIGluIHRoZSBgJGdyaWQtYnJlYWtwb2ludHNgIGdsb2JhbCB2YXJpYWJsZSBpcyB1c2VkIGFzIHRoZSBgJGJyZWFrcG9pbnRzYCBhcmd1bWVudCBieSBkZWZhdWx0LlxuXG4vLyBOYW1lIG9mIHRoZSBuZXh0IGJyZWFrcG9pbnQsIG9yIG51bGwgZm9yIHRoZSBsYXN0IGJyZWFrcG9pbnQuXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1uZXh0KHNtKVxuLy8gICAgbWRcbi8vICAgID4+IGJyZWFrcG9pbnQtbmV4dChzbSwgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4LCB4eGw6IDE0MDBweCkpXG4vLyAgICBtZFxuLy8gICAgPj4gYnJlYWtwb2ludC1uZXh0KHNtLCAkYnJlYWtwb2ludC1uYW1lczogKHhzIHNtIG1kIGxnIHhsIHh4bCkpXG4vLyAgICBtZFxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtbmV4dCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cywgJGJyZWFrcG9pbnQtbmFtZXM6IG1hcC1rZXlzKCRicmVha3BvaW50cykpIHtcbiAgJG46IGluZGV4KCRicmVha3BvaW50LW5hbWVzLCAkbmFtZSk7XG4gIEBpZiBub3QgJG4ge1xuICAgIEBlcnJvciBcImJyZWFrcG9pbnQgYCN7JG5hbWV9YCBub3QgZm91bmQgaW4gYCN7JGJyZWFrcG9pbnRzfWBcIjtcbiAgfVxuICBAcmV0dXJuIGlmKCRuIDwgbGVuZ3RoKCRicmVha3BvaW50LW5hbWVzKSwgbnRoKCRicmVha3BvaW50LW5hbWVzLCAkbiArIDEpLCBudWxsKTtcbn1cblxuLy8gTWluaW11bSBicmVha3BvaW50IHdpZHRoLiBOdWxsIGZvciB0aGUgc21hbGxlc3QgKGZpcnN0KSBicmVha3BvaW50LlxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtbWluKHNtLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgsIHh4bDogMTQwMHB4KSlcbi8vICAgIDU3NnB4XG5AZnVuY3Rpb24gYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogbWFwLWdldCgkYnJlYWtwb2ludHMsICRuYW1lKTtcbiAgQHJldHVybiBpZigkbWluICE9IDAsICRtaW4sIG51bGwpO1xufVxuXG4vLyBNYXhpbXVtIGJyZWFrcG9pbnQgd2lkdGguXG4vLyBUaGUgbWF4aW11bSB2YWx1ZSBpcyByZWR1Y2VkIGJ5IDAuMDJweCB0byB3b3JrIGFyb3VuZCB0aGUgbGltaXRhdGlvbnMgb2Zcbi8vIGBtaW4tYCBhbmQgYG1heC1gIHByZWZpeGVzIGFuZCB2aWV3cG9ydHMgd2l0aCBmcmFjdGlvbmFsIHdpZHRocy5cbi8vIFNlZSBodHRwczovL3d3dy53My5vcmcvVFIvbWVkaWFxdWVyaWVzLTQvI21xLW1pbi1tYXhcbi8vIFVzZXMgMC4wMnB4IHJhdGhlciB0aGFuIDAuMDFweCB0byB3b3JrIGFyb3VuZCBhIGN1cnJlbnQgcm91bmRpbmcgYnVnIGluIFNhZmFyaS5cbi8vIFNlZSBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTc4MjYxXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1tYXgobWQsICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCwgeHhsOiAxNDAwcHgpKVxuLy8gICAgNzY3Ljk4cHhcbkBmdW5jdGlvbiBicmVha3BvaW50LW1heCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWF4OiBtYXAtZ2V0KCRicmVha3BvaW50cywgJG5hbWUpO1xuICBAcmV0dXJuIGlmKCRtYXggYW5kICRtYXggPiAwLCAkbWF4IC0gLjAyLCBudWxsKTtcbn1cblxuLy8gUmV0dXJucyBhIGJsYW5rIHN0cmluZyBpZiBzbWFsbGVzdCBicmVha3BvaW50LCBvdGhlcndpc2UgcmV0dXJucyB0aGUgbmFtZSB3aXRoIGEgZGFzaCBpbiBmcm9udC5cbi8vIFVzZWZ1bCBmb3IgbWFraW5nIHJlc3BvbnNpdmUgdXRpbGl0aWVzLlxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtaW5maXgoeHMsICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCwgeHhsOiAxNDAwcHgpKVxuLy8gICAgXCJcIiAgKFJldHVybnMgYSBibGFuayBzdHJpbmcpXG4vLyAgICA+PiBicmVha3BvaW50LWluZml4KHNtLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgsIHh4bDogMTQwMHB4KSlcbi8vICAgIFwiLXNtXCJcbkBmdW5jdGlvbiBicmVha3BvaW50LWluZml4KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEByZXR1cm4gaWYoYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50cykgPT0gbnVsbCwgXCJcIiwgXCItI3skbmFtZX1cIik7XG59XG5cbi8vIE1lZGlhIG9mIGF0IGxlYXN0IHRoZSBtaW5pbXVtIGJyZWFrcG9pbnQgd2lkdGguIE5vIHF1ZXJ5IGZvciB0aGUgc21hbGxlc3QgYnJlYWtwb2ludC5cbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSB0byB0aGUgZ2l2ZW4gYnJlYWtwb2ludCBhbmQgd2lkZXIuXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC11cCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWluOiBicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzKTtcbiAgQGlmICRtaW4ge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkbWluKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbi8vIE1lZGlhIG9mIGF0IG1vc3QgdGhlIG1heGltdW0gYnJlYWtwb2ludCB3aWR0aC4gTm8gcXVlcnkgZm9yIHRoZSBsYXJnZXN0IGJyZWFrcG9pbnQuXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgdG8gdGhlIGdpdmVuIGJyZWFrcG9pbnQgYW5kIG5hcnJvd2VyLlxuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWF4OiBicmVha3BvaW50LW1heCgkbmFtZSwgJGJyZWFrcG9pbnRzKTtcbiAgQGlmICRtYXgge1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbWF4KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbi8vIE1lZGlhIHRoYXQgc3BhbnMgbXVsdGlwbGUgYnJlYWtwb2ludCB3aWR0aHMuXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgYmV0d2VlbiB0aGUgbWluIGFuZCBtYXggYnJlYWtwb2ludHNcbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LWJldHdlZW4oJGxvd2VyLCAkdXBwZXIsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogYnJlYWtwb2ludC1taW4oJGxvd2VyLCAkYnJlYWtwb2ludHMpO1xuICAkbWF4OiBicmVha3BvaW50LW1heCgkdXBwZXIsICRicmVha3BvaW50cyk7XG5cbiAgQGlmICRtaW4gIT0gbnVsbCBhbmQgJG1heCAhPSBudWxsIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJG1pbikgYW5kIChtYXgtd2lkdGg6ICRtYXgpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkbWF4ID09IG51bGwge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGxvd2VyLCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkbWluID09IG51bGwge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkdXBwZXIsICRicmVha3BvaW50cykge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vIE1lZGlhIGJldHdlZW4gdGhlIGJyZWFrcG9pbnQncyBtaW5pbXVtIGFuZCBtYXhpbXVtIHdpZHRocy5cbi8vIE5vIG1pbmltdW0gZm9yIHRoZSBzbWFsbGVzdCBicmVha3BvaW50LCBhbmQgbm8gbWF4aW11bSBmb3IgdGhlIGxhcmdlc3Qgb25lLlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IG9ubHkgdG8gdGhlIGdpdmVuIGJyZWFrcG9pbnQsIG5vdCB2aWV3cG9ydHMgYW55IHdpZGVyIG9yIG5hcnJvd2VyLlxuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtb25seSgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWluOiAgYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50cyk7XG4gICRuZXh0OiBicmVha3BvaW50LW5leHQoJG5hbWUsICRicmVha3BvaW50cyk7XG4gICRtYXg6ICBicmVha3BvaW50LW1heCgkbmV4dCwgJGJyZWFrcG9pbnRzKTtcblxuICBAaWYgJG1pbiAhPSBudWxsIGFuZCAkbWF4ICE9IG51bGwge1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkbWluKSBhbmQgKG1heC13aWR0aDogJG1heCkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIGlmICRtYXggPT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkbmFtZSwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1pbiA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJG5leHQsICRicmVha3BvaW50cykge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG4iXSwibmFtZXMiOltdLCJzb3VyY2VSb290IjoiIn0=*/