@import url(https://fonts.googleapis.com/css?family=Nunito);
@charset "UTF-8";
@charet "UTF-8";
.cursor-pointer {
  cursor: pointer !important;
}

.btn-csl-red-trans {
  background-color: transparent !important;
  border-color: #D60812 !important;
  border-radius: 30px !important;
  color: #D60812 !important;
  padding-left: 30px !important;
  padding-right: 30px !important;
  padding-top: 11px !important;
}

.btn-csl-red-trans:hover {
  background-color: #D60812 !important;
  border-color: #D60812 !important;
  color: white !important;
  transition: 0.3s;
}

.btn-red-solid {
  background-color: #D60812 !important;
  border: 1px solid #D60812 !important;
  border-radius: 30px !important;
  color: white !important;
  margin-bottom: 1rem;
  padding: 4px 30px !important;
}

.btn-red-solid:hover {
  background-color: #D60812 !important;
  border-color: #D60812 !important;
  color: white !important;
  transition: 0.3s;
}

#sub-menu .logo {
  max-width: 9rem;
}
#sub-menu .logo.logo-wo-padding {
  height: 1em;
  transform: translateY(-0.1em);
}
#sub-menu .logo.with-padding {
  height: 1.2em;
  transform: translateY(0.2em);
}

.is-firefox #sub-menu .logo.logo-wo-padding {
  transform: translateY(-2px);
}
.is-firefox #sub-menu .logo.logo-padding {
  transform: translateY(0em);
}

@media (max-width: 767.5px) {
  #site-menu {
    background-color: #313131;
    height: 100%;
    left: 0;
    position: fixed;
    overflow-x: hidden;
    overflow-y: auto;
    outline: 0;
    top: 0;
    width: 100%;
    z-index: 1050;
  }
  #site-menu .btn-red-solid {
    margin-bottom: 1rem;
  }
  #site-menu a:link, #site-menu a:visited, #site-menu a:active {
    text-decoration: none;
  }
  #site-menu .nav-menu {
    position: relative;
    width: auto;
    margin: 0.5rem;
    min-height: 100%;
  }
  #site-menu .nav-menu ul {
    list-style-type: none;
    margin: 0;
    padding: 0;
    width: 100%;
    text-align: center;
  }
  #site-menu .nav-menu .menu-align {
    text-align: center;
  }
  #site-menu .nav-menu .menu-item a {
    color: white;
    display: block;
    font-size: 30px;
    line-height: 40px;
  }
  #site-menu .nav-menu .more {
    font-weight: 200;
  }
  #site-menu .nav-menu .submenu-item a {
    color: white;
    display: block;
    font-size: 1.25rem;
    padding-left: 10px;
    font-weight: 200;
  }
  #site-menu .rrss {
    display: flex;
    justify-content: center;
    margin-bottom: 30px;
    margin-top: 30px;
    margin-left: 7px;
  }
  #site-menu .rrss .linkdin {
    margin-bottom: auto;
    width: 35px;
  }
  #site-menu .rrss .linkdin img {
    padding: 0 5px;
  }
  #site-menu .rrss .youtube {
    margin-bottom: auto;
    width: 43px;
    padding-top: 7px;
  }
  #site-menu .rrss .instagram {
    margin-bottom: auto;
    width: 35px;
  }
  #site-menu .rrss img {
    padding: 5px;
  }
  #site-menu .rrss.rrss-right a {
    font-size: 20px;
    line-height: 99%;
  }
  #site-menu .line-gray {
    background-color: #DEDEDE;
    bottom: 0;
    height: 24px;
    position: fixed;
    width: 100%;
  }
  #site-menu-close {
    bottom: 15px;
    color: white;
    cursor: pointer;
    position: fixed;
    right: 20px;
    z-index: 9999;
  }
  #site-menu-close div {
    height: 20px;
    width: 20px;
    background-color: transparent;
    border-radius: 5px;
    position: relative;
  }
  #site-menu-close div:after {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    content: "×";
    font-size: 2.5rem;
    color: #FFF;
    text-align: center;
  }
  #sub-menu {
    background-color: rgba(255, 255, 255, 0.95);
    border-top: 1px solid rgba(0, 0, 0, 0.1607843137);
    border-bottom: 1px solid rgba(0, 0, 0, 0.1607843137);
    bottom: 51px;
    display: none;
    height: auto;
    position: fixed;
    width: 100%;
    z-index: 1000;
    opacity: 0;
    animation: showOpacityv2 0.5s 2s linear forwards;
    /* .logo{
        max-height: 28px; 
        max-width: 9rem;
        padding-left: 15px;

        &.with-padding{
            transform: translateY(-1px);
        }
    } */
  }
  @keyframes showOpacityv2 {
    100% {
      opacity: 1;
    }
  }
  #sub-menu .right-button {
    text-align: center;
    height: 100%;
    right: 0;
    width: 12%;
  }
  #sub-menu .sub-nav-menu {
    overflow: hidden;
  }
  #sub-menu .scroll {
    white-space: nowrap;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    -ms-overflow-style: -ms-autohiding-scrollbar;
  }
  #sub-menu .scroll::-webkit-scrollbar {
    display: none;
  }
  #sub-menu .nav-item {
    display: inline-block;
    vertical-align: middle;
    text-align: center;
    padding: 15px;
  }
  #sub-menu .nav-item a:link, #sub-menu .nav-item a:visited, #sub-menu .nav-item a:active {
    color: #2E2D2D;
    font-size: 0.75rem;
    text-decoration: none;
  }
  #sub-menu .nav-item img {
    max-width: 60px;
  }
  #sub-menu.menu-white {
    border-bottom: 1px solid rgba(0, 0, 0, 0.1607843137);
    background-color: rgba(255, 255, 255, 0.75);
    backdrop-filter: blur(27px);
  }
  #sub-menu .contactar {
    background-color: #D70D17;
    border-radius: 1rem;
    padding: 0.5rem 1rem;
    height: 100%;
    font-family: "Helvetica Neue Regular";
    font-size: smaller;
  }
  #sub-menu .contactar a {
    text-decoration: none;
    color: white;
    font-size: 0.7rem;
  }
  #sub-menu .contactar a:visited {
    color: white !important;
  }
}
@media (min-width: 768px) {
  html {
    font-size: 16px;
  }
  #site-menu {
    background-color: #313131;
    height: 100%;
    left: 0;
    position: fixed;
    overflow-x: hidden;
    overflow-y: auto;
    outline: 0;
    top: 0;
    width: 100%;
    z-index: 1050;
  }
  #site-menu a:link, #site-menu a:visited, #site-menu a:active {
    text-decoration: none;
  }
  #site-menu .nav-menu {
    min-height: 100vh;
    position: relative;
    text-align: center;
    width: auto;
    /* .row{
        min-height: 87vh;
    } */
  }
  #site-menu .nav-menu .menu-width {
    margin: auto;
    max-width: 11.71rem;
  }
  #site-menu .nav-menu .menu-align {
    text-align: center;
  }
  #site-menu .nav-menu ul {
    list-style-type: none;
    margin: 0;
    padding: 0;
    width: 100%;
  }
  #site-menu .nav-menu .menu-item {
    font-family: "Helvetica Neue Regular";
  }
  #site-menu .nav-menu .menu-item a {
    color: white;
    display: block;
    font-size: 30px;
    line-height: 40px;
  }
  #site-menu .nav-menu .more {
    font-weight: 200;
  }
  #site-menu .nav-menu .submenu-item a {
    color: white;
    display: block;
    font-size: 1rem;
    line-height: 1.5rem;
    padding-left: 10px;
    font-weight: 200;
  }
  #site-menu .nav-menu .more {
    font-weight: 100;
  }
  #site-menu .rrss {
    vertical-align: middle;
    /* margin-bottom: 30px; */
    margin-top: 30px;
    text-align: center;
  }
  #site-menu .rrss .linkdin {
    width: 32px;
  }
  #site-menu .rrss .youtube {
    width: 38px;
  }
  #site-menu .rrss .instagram {
    width: 31px;
  }
  #site-menu .rrss img {
    padding: 5px;
  }
  #site-menu .rrss.rrss-right a {
    font-size: 20px;
    line-height: 99%;
  }
  #site-menu .line-gray {
    background-color: #DEDEDE;
    bottom: 0;
    height: 24px;
    position: fixed;
    width: 100%;
  }
  #site-menu-close, #site-menu-close-home {
    color: white;
    cursor: pointer;
    position: fixed;
  }
  #site-menu-close div, #site-menu-close-home div {
    height: 0.5rem;
    width: 0.5rem;
    background-color: transparent;
    border-radius: 5px;
    position: relative;
  }
  #site-menu-close div:after, #site-menu-close-home div:after {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    content: "×";
    font-size: 2.5rem;
    color: #FFF;
    text-align: center;
  }
  #site-menu-close img, #site-menu-close-home img {
    width: 0.85rem;
    height: 0.85rem;
  }
  #site-menu-close {
    top: 0.75rem;
    right: 1.2rem;
  }
  #site-menu-close-home {
    top: 0.9rem;
    right: 1.5rem;
  }
  #sub-menu {
    top: 48px;
    height: auto;
    position: fixed;
    width: 100%;
    z-index: 1000;
    transition: 1s;
    opacity: 1;
    animation: showOpacityv2 0.5s 2s linear forwards;
  }
  #sub-menu.menu-hidden {
    top: 0px;
  }
  @keyframes showOpacityv2 {
    100% {
      opacity: 1;
    }
  }
  #sub-menu .row {
    min-height: 55px;
  }
  #sub-menu .right-button {
    text-align: center;
    height: 100%;
    right: 0;
    width: 12%;
  }
  #sub-menu .sub-nav-menu {
    height: 100%;
    overflow: hidden;
  }
  #sub-menu .sub-nav-menu .row {
    height: 100%;
  }
  #sub-menu .sub-nav-menu .nav-item {
    font-size: 0.8em;
  }
  #sub-menu .scroll {
    height: 100%;
    text-align: center;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    -ms-overflow-style: -ms-autohiding-scrollbar;
    white-space: nowrap;
    width: 100%;
  }
  #sub-menu .scroll nav {
    height: 100%;
  }
  #sub-menu .scroll::-webkit-scrollbar {
    display: none;
  }
  #sub-menu .nav-item {
    display: inline-block;
    height: 100%;
    line-height: 20px;
    text-align: center;
    padding: 8px 15px;
    vertical-align: -webkit-baseline-middle;
    vertical-align: middle;
  }
  #sub-menu .nav-item a:link, #sub-menu .nav-item a:visited, #sub-menu .nav-item a:active {
    color: #2E2D2D;
    font-size: 0.7rem;
    text-decoration: none;
  }
  #sub-menu .nav-item img {
    max-width: 60px;
  }
  #sub-menu .logo {
    margin-top: 3px;
    max-height: 20px;
    max-width: 9rem;
  }
  #sub-menu .logo.with-padding {
    transform: translateY(-0.3em);
  }
  #sub-menu.menu-white {
    border-bottom: 1px solid rgba(0, 0, 0, 0.1607843137);
    background-color: rgba(255, 255, 255, 0.75);
    backdrop-filter: blur(27px);
  }
  #sub-menu .contactar {
    background-color: #D70D17;
    border-radius: 1rem;
    padding: 0.3rem 1rem;
    height: 100%;
    font-family: "Helvetica Neue Regular";
    font-size: smaller;
  }
  #sub-menu .contactar a {
    text-decoration: none;
    color: white !important;
    font-size: 0.7rem;
  }
  #sub-menu .contactar a:visited {
    color: white !important;
  }
  .is-firefox #sub-menu .logo.with-padding {
    transform: translateY(0.1em);
  }
  /**
   * Hack Firefox
   */
  @-moz-document url-prefix() {
    #sub-menu .logo {
      margin-top: -8px;
    }
  }
}
@media (max-width: 576px) {
  #site-menu .rrss {
    margin-bottom: 10px;
    margin-top: 35px;
  }
  #site-menu .rrss.rrss-right {
    margin-top: 5px;
  }
}
@media (min-width: 768px) {
  .footer p, .footer a, .footer ul, .footer label, .footer input, .footer li {
    line-height: 1.1rem !important;
    color: #e1e1e1;
    font-size: 0.625rem !important;
  }
  .footer a:hover {
    color: #e1e1e1;
  }
  .footer h3, .footer .h3 {
    color: #e1e1e1;
    font-size: 0.7rem;
    font-family: "Helvetica Neue Medium";
    font-weight: 600;
  }
  .footer ul {
    margin-top: 20px;
    padding-left: 0px;
    text-decoration: none;
    list-style: none;
  }
  .footer button {
    color: white;
    font-size: 0.5rem !important;
  }
  .footer button:hover {
    color: white;
  }
  .footer .send {
    font-size: 0.65rem !important;
  }
  .footer input {
    padding-left: 0.2rem;
    padding-right: 0.2rem;
  }
  .footer .icons-footer {
    vertical-align: middle;
  }
  .footer .icons-footer a {
    text-decoration: none;
  }
  .footer .icons-footer .icon-footer {
    display: inline-block;
    max-width: 0.9rem;
    margin: 0rem 0.2rem;
    -webkit-transition: all 0.2s ease;
    -moz-transition: all 0.2s ease;
    -o-transition: all 0.2s ease;
    -ms-transition: all 0.2s ease;
  }
  .footer .icons-footer .icon-footer:hover {
    transform: scale(1.2);
  }
  .footer .icons-footer .instagram {
    height: 0.7rem;
    max-width: 1rem;
  }
  .footer .line-gray {
    border-top: 1px solid #e1e1e1;
  }
  .footer .form-group {
    margin-bottom: 0.5rem;
  }
  .footer .copyright p, .footer .copyright ul, .footer .copyright li, .footer .copyright a {
    color: #e1e1e1;
    font-size: 0.54rem !important;
    line-height: 0.8rem !important;
    margin-bottom: 0;
    margin-top: 0;
  }
  .footer .copyright ul, .footer .copyright li {
    display: inline-block;
  }
  .footer .copyright .b-line {
    border-left: 1px solid #e1e1e1;
    border-right: 1px solid #e1e1e1;
  }
}
@media (min-width: 1024px) {
  html {
    font-size: 21.33px;
  }
  body {
    line-height: 0.5rem !important;
  }
}
@media (min-width: 1440px) {
  body {
    line-height: 0.5rem !important;
  }
}
@media (min-width: 1920px) {
  html {
    font-size: 40px;
  }
  body {
    line-height: 0.5rem !important;
  }
}
/*!
 * Bootstrap  v5.3.0 (https://getbootstrap.com/)
 * Copyright 2011-2023 The Bootstrap Authors
 * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
 */
:root,
[data-bs-theme=light] {
  --bs-blue: #0d6efd;
  --bs-indigo: #6610f2;
  --bs-purple: #6f42c1;
  --bs-pink: #d63384;
  --bs-red: #D60812;
  --bs-orange: #fd7e14;
  --bs-yellow: #ffc107;
  --bs-green: #449925;
  --bs-teal: #20c997;
  --bs-cyan: #0dcaf0;
  --bs-black: #000;
  --bs-white: #fff;
  --bs-gray: #6c757d;
  --bs-gray-dark: #343a40;
  --bs-gray-100: #f8f9fa;
  --bs-gray-200: #e9ecef;
  --bs-gray-300: #dee2e6;
  --bs-gray-400: #ced4da;
  --bs-gray-500: #adb5bd;
  --bs-gray-600: #6c757d;
  --bs-gray-700: #495057;
  --bs-gray-800: #343a40;
  --bs-gray-900: #212529;
  --bs-primary: #0d6efd;
  --bs-secondary: #6c757d;
  --bs-success: #449925;
  --bs-info: #0dcaf0;
  --bs-warning: #ffc107;
  --bs-danger: #D60812;
  --bs-light: #f8f9fa;
  --bs-dark: #212529;
  --bs-primary-rgb: 13, 110, 253;
  --bs-secondary-rgb: 108, 117, 125;
  --bs-success-rgb: 68, 153, 37;
  --bs-info-rgb: 13, 202, 240;
  --bs-warning-rgb: 255, 193, 7;
  --bs-danger-rgb: 214, 8, 18;
  --bs-light-rgb: 248, 249, 250;
  --bs-dark-rgb: 33, 37, 41;
  --bs-primary-text-emphasis: #052c65;
  --bs-secondary-text-emphasis: #2b2f32;
  --bs-success-text-emphasis: #1b3d0f;
  --bs-info-text-emphasis: #055160;
  --bs-warning-text-emphasis: #664d03;
  --bs-danger-text-emphasis: #560307;
  --bs-light-text-emphasis: #495057;
  --bs-dark-text-emphasis: #495057;
  --bs-primary-bg-subtle: #cfe2ff;
  --bs-secondary-bg-subtle: #e2e3e5;
  --bs-success-bg-subtle: #daebd3;
  --bs-info-bg-subtle: #cff4fc;
  --bs-warning-bg-subtle: #fff3cd;
  --bs-danger-bg-subtle: #f7ced0;
  --bs-light-bg-subtle: #fcfcfd;
  --bs-dark-bg-subtle: #ced4da;
  --bs-primary-border-subtle: #9ec5fe;
  --bs-secondary-border-subtle: #c4c8cb;
  --bs-success-border-subtle: #b4d6a8;
  --bs-info-border-subtle: #9eeaf9;
  --bs-warning-border-subtle: #ffe69c;
  --bs-danger-border-subtle: #ef9ca0;
  --bs-light-border-subtle: #e9ecef;
  --bs-dark-border-subtle: #adb5bd;
  --bs-white-rgb: 255, 255, 255;
  --bs-black-rgb: 0, 0, 0;
  --bs-font-sans-serif: "Nunito", sans-serif;
  --bs-font-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  --bs-gradient: linear-gradient(180deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0));
  --bs-body-font-family: var(--bs-font-sans-serif);
  --bs-body-font-size: 0.9rem;
  --bs-body-font-weight: 400;
  --bs-body-line-height: 1.6;
  --bs-body-color: #212529;
  --bs-body-color-rgb: 33, 37, 41;
  --bs-body-bg: #f8fafc;
  --bs-body-bg-rgb: 248, 250, 252;
  --bs-emphasis-color: #000;
  --bs-emphasis-color-rgb: 0, 0, 0;
  --bs-secondary-color: rgba(33, 37, 41, 0.75);
  --bs-secondary-color-rgb: 33, 37, 41;
  --bs-secondary-bg: #e9ecef;
  --bs-secondary-bg-rgb: 233, 236, 239;
  --bs-tertiary-color: rgba(33, 37, 41, 0.5);
  --bs-tertiary-color-rgb: 33, 37, 41;
  --bs-tertiary-bg: #f8f9fa;
  --bs-tertiary-bg-rgb: 248, 249, 250;
  --bs-heading-color: inherit;
  --bs-link-color: #0d6efd;
  --bs-link-color-rgb: 13, 110, 253;
  --bs-link-decoration: underline;
  --bs-link-hover-color: #0a58ca;
  --bs-link-hover-color-rgb: 10, 88, 202;
  --bs-code-color: #d63384;
  --bs-highlight-bg: #fff3cd;
  --bs-border-width: 1px;
  --bs-border-style: solid;
  --bs-border-color: #dee2e6;
  --bs-border-color-translucent: rgba(0, 0, 0, 0.175);
  --bs-border-radius: 15px;
  --bs-border-radius-sm: 0.25rem;
  --bs-border-radius-lg: 0.5rem;
  --bs-border-radius-xl: 1rem;
  --bs-border-radius-xxl: 2rem;
  --bs-border-radius-2xl: var(--bs-border-radius-xxl);
  --bs-border-radius-pill: 50rem;
  --bs-box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
  --bs-box-shadow-sm: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075);
  --bs-box-shadow-lg: 0 1rem 3rem rgba(0, 0, 0, 0.175);
  --bs-box-shadow-inset: inset 0 1px 2px rgba(0, 0, 0, 0.075);
  --bs-focus-ring-width: 0.25rem;
  --bs-focus-ring-opacity: 0.25;
  --bs-focus-ring-color: rgba(13, 110, 253, 0.25);
  --bs-form-valid-color: #449925;
  --bs-form-valid-border-color: #449925;
  --bs-form-invalid-color: #D60812;
  --bs-form-invalid-border-color: #D60812;
}

[data-bs-theme=dark] {
  color-scheme: dark;
  --bs-body-color: #adb5bd;
  --bs-body-color-rgb: 173, 181, 189;
  --bs-body-bg: #212529;
  --bs-body-bg-rgb: 33, 37, 41;
  --bs-emphasis-color: #fff;
  --bs-emphasis-color-rgb: 255, 255, 255;
  --bs-secondary-color: rgba(173, 181, 189, 0.75);
  --bs-secondary-color-rgb: 173, 181, 189;
  --bs-secondary-bg: #343a40;
  --bs-secondary-bg-rgb: 52, 58, 64;
  --bs-tertiary-color: rgba(173, 181, 189, 0.5);
  --bs-tertiary-color-rgb: 173, 181, 189;
  --bs-tertiary-bg: #2b3035;
  --bs-tertiary-bg-rgb: 43, 48, 53;
  --bs-primary-text-emphasis: #6ea8fe;
  --bs-secondary-text-emphasis: #a7acb1;
  --bs-success-text-emphasis: #8fc27c;
  --bs-info-text-emphasis: #6edff6;
  --bs-warning-text-emphasis: #ffda6a;
  --bs-danger-text-emphasis: #e66b71;
  --bs-light-text-emphasis: #f8f9fa;
  --bs-dark-text-emphasis: #dee2e6;
  --bs-primary-bg-subtle: #031633;
  --bs-secondary-bg-subtle: #161719;
  --bs-success-bg-subtle: #0e1f07;
  --bs-info-bg-subtle: #032830;
  --bs-warning-bg-subtle: #332701;
  --bs-danger-bg-subtle: #2b0204;
  --bs-light-bg-subtle: #343a40;
  --bs-dark-bg-subtle: #1a1d20;
  --bs-primary-border-subtle: #084298;
  --bs-secondary-border-subtle: #41464b;
  --bs-success-border-subtle: #295c16;
  --bs-info-border-subtle: #087990;
  --bs-warning-border-subtle: #997404;
  --bs-danger-border-subtle: #80050b;
  --bs-light-border-subtle: #495057;
  --bs-dark-border-subtle: #343a40;
  --bs-heading-color: inherit;
  --bs-link-color: #6ea8fe;
  --bs-link-hover-color: #8bb9fe;
  --bs-link-color-rgb: 110, 168, 254;
  --bs-link-hover-color-rgb: 139, 185, 254;
  --bs-code-color: #e685b5;
  --bs-border-color: #495057;
  --bs-border-color-translucent: rgba(255, 255, 255, 0.15);
  --bs-form-valid-color: #8fc27c;
  --bs-form-valid-border-color: #8fc27c;
  --bs-form-invalid-color: #e66b71;
  --bs-form-invalid-border-color: #e66b71;
}

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

@media (prefers-reduced-motion: no-preference) {
  :root {
    scroll-behavior: smooth;
  }
}

body {
  margin: 0;
  font-family: var(--bs-body-font-family);
  font-size: var(--bs-body-font-size);
  font-weight: var(--bs-body-font-weight);
  line-height: var(--bs-body-line-height);
  color: var(--bs-body-color);
  text-align: var(--bs-body-text-align);
  background-color: var(--bs-body-bg);
  -webkit-text-size-adjust: 100%;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

hr {
  margin: 1rem 0;
  color: inherit;
  border: 0;
  border-top: var(--bs-border-width) solid;
  opacity: 0.25;
}

h6, .h6, h5, .h5, h4, .h4, h3, .h3, h2, .h2, h1, .h1 {
  margin-top: 0;
  margin-bottom: 0.5rem;
  font-weight: 500;
  line-height: 1.2;
  color: var(--bs-heading-color);
}

h1, .h1 {
  font-size: calc(1.59375rem + 4.125vw);
}
@media (min-width: 1200px) {
  h1, .h1 {
    font-size: 4.6875rem;
  }
}

h2, .h2 {
  font-size: calc(1.4375rem + 2.25vw);
}
@media (min-width: 1200px) {
  h2, .h2 {
    font-size: 3.125rem;
  }
}

h3, .h3 {
  font-size: calc(1.2825rem + 0.39vw);
}
@media (min-width: 1200px) {
  h3, .h3 {
    font-size: 1.575rem;
  }
}

h4, .h4 {
  font-size: calc(1.26rem + 0.12vw);
}
@media (min-width: 1200px) {
  h4, .h4 {
    font-size: 1.35rem;
  }
}

h5, .h5 {
  font-size: 1.125rem;
}

h6, .h6 {
  font-size: 0.9rem;
}

p {
  margin-top: 0;
  margin-bottom: 1rem;
}

abbr[title] {
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted;
  cursor: help;
  -webkit-text-decoration-skip-ink: none;
          text-decoration-skip-ink: none;
}

address {
  margin-bottom: 1rem;
  font-style: normal;
  line-height: inherit;
}

ol,
ul {
  padding-left: 2rem;
}

ol,
ul,
dl {
  margin-top: 0;
  margin-bottom: 1rem;
}

ol ol,
ul ul,
ol ul,
ul ol {
  margin-bottom: 0;
}

dt {
  font-weight: 700;
}

dd {
  margin-bottom: 0.5rem;
  margin-left: 0;
}

blockquote {
  margin: 0 0 1rem;
}

b,
strong {
  font-weight: bolder;
}

small, .small {
  font-size: 0.875em;
}

mark, .mark {
  padding: 0.1875em;
  background-color: var(--bs-highlight-bg);
}

sub,
sup {
  position: relative;
  font-size: 0.75em;
  line-height: 0;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

a {
  color: rgba(var(--bs-link-color-rgb), var(--bs-link-opacity, 1));
  text-decoration: underline;
}
a:hover {
  --bs-link-color-rgb: var(--bs-link-hover-color-rgb);
}

a:not([href]):not([class]), a:not([href]):not([class]):hover {
  color: inherit;
  text-decoration: none;
}

pre,
code,
kbd,
samp {
  font-family: var(--bs-font-monospace);
  font-size: 1em;
}

pre {
  display: block;
  margin-top: 0;
  margin-bottom: 1rem;
  overflow: auto;
  font-size: 0.875em;
}
pre code {
  font-size: inherit;
  color: inherit;
  word-break: normal;
}

code {
  font-size: 0.875em;
  color: var(--bs-code-color);
  word-wrap: break-word;
}
a > code {
  color: inherit;
}

kbd {
  padding: 0.1875rem 0.375rem;
  font-size: 0.875em;
  color: var(--bs-body-bg);
  background-color: var(--bs-body-color);
  border-radius: 0.25rem;
}
kbd kbd {
  padding: 0;
  font-size: 1em;
}

figure {
  margin: 0 0 1rem;
}

img,
svg {
  vertical-align: middle;
}

table {
  caption-side: bottom;
  border-collapse: collapse;
}

caption {
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  color: var(--bs-secondary-color);
  text-align: left;
}

th {
  text-align: inherit;
  text-align: -webkit-match-parent;
}

thead,
tbody,
tfoot,
tr,
td,
th {
  border-color: inherit;
  border-style: solid;
  border-width: 0;
}

label {
  display: inline-block;
}

button {
  border-radius: 0;
}

button:focus:not(:focus-visible) {
  outline: 0;
}

input,
button,
select,
optgroup,
textarea {
  margin: 0;
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
}

button,
select {
  text-transform: none;
}

[role=button] {
  cursor: pointer;
}

select {
  word-wrap: normal;
}
select:disabled {
  opacity: 1;
}

[list]:not([type=date]):not([type=datetime-local]):not([type=month]):not([type=week]):not([type=time])::-webkit-calendar-picker-indicator {
  display: none !important;
}

button,
[type=button],
[type=reset],
[type=submit] {
  -webkit-appearance: button;
}
button:not(:disabled),
[type=button]:not(:disabled),
[type=reset]:not(:disabled),
[type=submit]:not(:disabled) {
  cursor: pointer;
}

::-moz-focus-inner {
  padding: 0;
  border-style: none;
}

textarea {
  resize: vertical;
}

fieldset {
  min-width: 0;
  padding: 0;
  margin: 0;
  border: 0;
}

legend {
  float: left;
  width: 100%;
  padding: 0;
  margin-bottom: 0.5rem;
  font-size: calc(1.275rem + 0.3vw);
  line-height: inherit;
}
@media (min-width: 1200px) {
  legend {
    font-size: 1.5rem;
  }
}
legend + * {
  clear: left;
}

::-webkit-datetime-edit-fields-wrapper,
::-webkit-datetime-edit-text,
::-webkit-datetime-edit-minute,
::-webkit-datetime-edit-hour-field,
::-webkit-datetime-edit-day-field,
::-webkit-datetime-edit-month-field,
::-webkit-datetime-edit-year-field {
  padding: 0;
}

::-webkit-inner-spin-button {
  height: auto;
}

[type=search] {
  outline-offset: -2px;
  -webkit-appearance: textfield;
}

/* rtl:raw:
[type="tel"],
[type="url"],
[type="email"],
[type="number"] {
  direction: ltr;
}
*/
::-webkit-search-decoration {
  -webkit-appearance: none;
}

::-webkit-color-swatch-wrapper {
  padding: 0;
}

::file-selector-button {
  font: inherit;
  -webkit-appearance: button;
}

output {
  display: inline-block;
}

iframe {
  border: 0;
}

summary {
  display: list-item;
  cursor: pointer;
}

progress {
  vertical-align: baseline;
}

[hidden] {
  display: none !important;
}

.lead {
  font-size: 1.125rem;
  font-weight: 300;
}

.display-1 {
  font-size: calc(1.625rem + 4.5vw);
  font-weight: 300;
  line-height: 1.2;
}
@media (min-width: 1200px) {
  .display-1 {
    font-size: 5rem;
  }
}

.display-2 {
  font-size: calc(1.575rem + 3.9vw);
  font-weight: 300;
  line-height: 1.2;
}
@media (min-width: 1200px) {
  .display-2 {
    font-size: 4.5rem;
  }
}

.display-3 {
  font-size: calc(1.525rem + 3.3vw);
  font-weight: 300;
  line-height: 1.2;
}
@media (min-width: 1200px) {
  .display-3 {
    font-size: 4rem;
  }
}

.display-4 {
  font-size: calc(1.475rem + 2.7vw);
  font-weight: 300;
  line-height: 1.2;
}
@media (min-width: 1200px) {
  .display-4 {
    font-size: 3.5rem;
  }
}

.display-5 {
  font-size: calc(1.425rem + 2.1vw);
  font-weight: 300;
  line-height: 1.2;
}
@media (min-width: 1200px) {
  .display-5 {
    font-size: 3rem;
  }
}

.display-6 {
  font-size: calc(1.375rem + 1.5vw);
  font-weight: 300;
  line-height: 1.2;
}
@media (min-width: 1200px) {
  .display-6 {
    font-size: 2.5rem;
  }
}

.list-unstyled {
  padding-left: 0;
  list-style: none;
}

.list-inline {
  padding-left: 0;
  list-style: none;
}

.list-inline-item {
  display: inline-block;
}
.list-inline-item:not(:last-child) {
  margin-right: 0.5rem;
}

.initialism {
  font-size: 0.875em;
  text-transform: uppercase;
}

.blockquote {
  margin-bottom: 1rem;
  font-size: 1.125rem;
}
.blockquote > :last-child {
  margin-bottom: 0;
}

.blockquote-footer {
  margin-top: -1rem;
  margin-bottom: 1rem;
  font-size: 0.875em;
  color: #6c757d;
}
.blockquote-footer::before {
  content: "— ";
}

.img-fluid {
  max-width: 100%;
  height: auto;
}

.img-thumbnail {
  padding: 0.25rem;
  background-color: var(--bs-body-bg);
  border: var(--bs-border-width) solid var(--bs-border-color);
  border-radius: var(--bs-border-radius);
  max-width: 100%;
  height: auto;
}

.figure {
  display: inline-block;
}

.figure-img {
  margin-bottom: 0.5rem;
  line-height: 1;
}

.figure-caption {
  font-size: 0.875em;
  color: var(--bs-secondary-color);
}

.container,
.container-fluid,
.container-xxl,
.container-xl,
.container-lg,
.container-md,
.container-sm {
  --bs-gutter-x: 1.5rem;
  --bs-gutter-y: 0;
  width: 100%;
  padding-right: calc(var(--bs-gutter-x) * 0.5);
  padding-left: calc(var(--bs-gutter-x) * 0.5);
  margin-right: auto;
  margin-left: auto;
}

@media (min-width: 576px) {
  .container-sm, .container {
    max-width: 540px;
  }
}
@media (min-width: 768px) {
  .container-md, .container-sm, .container {
    max-width: 720px;
  }
}
@media (min-width: 992px) {
  .container-lg, .container-md, .container-sm, .container {
    max-width: 960px;
  }
}
@media (min-width: 1200px) {
  .container-xl, .container-lg, .container-md, .container-sm, .container {
    max-width: 1140px;
  }
}
@media (min-width: 1400px) {
  .container-xxl, .container-xl, .container-lg, .container-md, .container-sm, .container {
    max-width: 1320px;
  }
}
:root {
  --bs-breakpoint-xs: 0;
  --bs-breakpoint-sm: 576px;
  --bs-breakpoint-md: 768px;
  --bs-breakpoint-lg: 992px;
  --bs-breakpoint-xl: 1200px;
  --bs-breakpoint-xxl: 1400px;
}

.row {
  --bs-gutter-x: 1.5rem;
  --bs-gutter-y: 0;
  display: flex;
  flex-wrap: wrap;
  margin-top: calc(-1 * var(--bs-gutter-y));
  margin-right: calc(-0.5 * var(--bs-gutter-x));
  margin-left: calc(-0.5 * var(--bs-gutter-x));
}
.row > * {
  flex-shrink: 0;
  width: 100%;
  max-width: 100%;
  padding-right: calc(var(--bs-gutter-x) * 0.5);
  padding-left: calc(var(--bs-gutter-x) * 0.5);
  margin-top: var(--bs-gutter-y);
}

.col {
  flex: 1 0 0%;
}

.row-cols-auto > * {
  flex: 0 0 auto;
  width: auto;
}

.row-cols-1 > * {
  flex: 0 0 auto;
  width: 100%;
}

.row-cols-2 > * {
  flex: 0 0 auto;
  width: 50%;
}

.row-cols-3 > * {
  flex: 0 0 auto;
  width: 33.3333333333%;
}

.row-cols-4 > * {
  flex: 0 0 auto;
  width: 25%;
}

.row-cols-5 > * {
  flex: 0 0 auto;
  width: 20%;
}

.row-cols-6 > * {
  flex: 0 0 auto;
  width: 16.6666666667%;
}

.col-auto {
  flex: 0 0 auto;
  width: auto;
}

.col-1 {
  flex: 0 0 auto;
  width: 8.33333333%;
}

.col-2 {
  flex: 0 0 auto;
  width: 16.66666667%;
}

.col-3 {
  flex: 0 0 auto;
  width: 25%;
}

.col-4 {
  flex: 0 0 auto;
  width: 33.33333333%;
}

.col-5 {
  flex: 0 0 auto;
  width: 41.66666667%;
}

.col-6 {
  flex: 0 0 auto;
  width: 50%;
}

.col-7 {
  flex: 0 0 auto;
  width: 58.33333333%;
}

.col-8 {
  flex: 0 0 auto;
  width: 66.66666667%;
}

.col-9 {
  flex: 0 0 auto;
  width: 75%;
}

.col-10 {
  flex: 0 0 auto;
  width: 83.33333333%;
}

.col-11 {
  flex: 0 0 auto;
  width: 91.66666667%;
}

.col-12 {
  flex: 0 0 auto;
  width: 100%;
}

.offset-1 {
  margin-left: 8.33333333%;
}

.offset-2 {
  margin-left: 16.66666667%;
}

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

.offset-4 {
  margin-left: 33.33333333%;
}

.offset-5 {
  margin-left: 41.66666667%;
}

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

.offset-7 {
  margin-left: 58.33333333%;
}

.offset-8 {
  margin-left: 66.66666667%;
}

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

.offset-10 {
  margin-left: 83.33333333%;
}

.offset-11 {
  margin-left: 91.66666667%;
}

.g-0,
.gx-0 {
  --bs-gutter-x: 0;
}

.g-0,
.gy-0 {
  --bs-gutter-y: 0;
}

.g-1,
.gx-1 {
  --bs-gutter-x: 0.25rem;
}

.g-1,
.gy-1 {
  --bs-gutter-y: 0.25rem;
}

.g-2,
.gx-2 {
  --bs-gutter-x: 0.5rem;
}

.g-2,
.gy-2 {
  --bs-gutter-y: 0.5rem;
}

.g-3,
.gx-3 {
  --bs-gutter-x: 1rem;
}

.g-3,
.gy-3 {
  --bs-gutter-y: 1rem;
}

.g-4,
.gx-4 {
  --bs-gutter-x: 1.5rem;
}

.g-4,
.gy-4 {
  --bs-gutter-y: 1.5rem;
}

.g-5,
.gx-5 {
  --bs-gutter-x: 3rem;
}

.g-5,
.gy-5 {
  --bs-gutter-y: 3rem;
}

@media (min-width: 576px) {
  .col-sm {
    flex: 1 0 0%;
  }
  .row-cols-sm-auto > * {
    flex: 0 0 auto;
    width: auto;
  }
  .row-cols-sm-1 > * {
    flex: 0 0 auto;
    width: 100%;
  }
  .row-cols-sm-2 > * {
    flex: 0 0 auto;
    width: 50%;
  }
  .row-cols-sm-3 > * {
    flex: 0 0 auto;
    width: 33.3333333333%;
  }
  .row-cols-sm-4 > * {
    flex: 0 0 auto;
    width: 25%;
  }
  .row-cols-sm-5 > * {
    flex: 0 0 auto;
    width: 20%;
  }
  .row-cols-sm-6 > * {
    flex: 0 0 auto;
    width: 16.6666666667%;
  }
  .col-sm-auto {
    flex: 0 0 auto;
    width: auto;
  }
  .col-sm-1 {
    flex: 0 0 auto;
    width: 8.33333333%;
  }
  .col-sm-2 {
    flex: 0 0 auto;
    width: 16.66666667%;
  }
  .col-sm-3 {
    flex: 0 0 auto;
    width: 25%;
  }
  .col-sm-4 {
    flex: 0 0 auto;
    width: 33.33333333%;
  }
  .col-sm-5 {
    flex: 0 0 auto;
    width: 41.66666667%;
  }
  .col-sm-6 {
    flex: 0 0 auto;
    width: 50%;
  }
  .col-sm-7 {
    flex: 0 0 auto;
    width: 58.33333333%;
  }
  .col-sm-8 {
    flex: 0 0 auto;
    width: 66.66666667%;
  }
  .col-sm-9 {
    flex: 0 0 auto;
    width: 75%;
  }
  .col-sm-10 {
    flex: 0 0 auto;
    width: 83.33333333%;
  }
  .col-sm-11 {
    flex: 0 0 auto;
    width: 91.66666667%;
  }
  .col-sm-12 {
    flex: 0 0 auto;
    width: 100%;
  }
  .offset-sm-0 {
    margin-left: 0;
  }
  .offset-sm-1 {
    margin-left: 8.33333333%;
  }
  .offset-sm-2 {
    margin-left: 16.66666667%;
  }
  .offset-sm-3 {
    margin-left: 25%;
  }
  .offset-sm-4 {
    margin-left: 33.33333333%;
  }
  .offset-sm-5 {
    margin-left: 41.66666667%;
  }
  .offset-sm-6 {
    margin-left: 50%;
  }
  .offset-sm-7 {
    margin-left: 58.33333333%;
  }
  .offset-sm-8 {
    margin-left: 66.66666667%;
  }
  .offset-sm-9 {
    margin-left: 75%;
  }
  .offset-sm-10 {
    margin-left: 83.33333333%;
  }
  .offset-sm-11 {
    margin-left: 91.66666667%;
  }
  .g-sm-0,
  .gx-sm-0 {
    --bs-gutter-x: 0;
  }
  .g-sm-0,
  .gy-sm-0 {
    --bs-gutter-y: 0;
  }
  .g-sm-1,
  .gx-sm-1 {
    --bs-gutter-x: 0.25rem;
  }
  .g-sm-1,
  .gy-sm-1 {
    --bs-gutter-y: 0.25rem;
  }
  .g-sm-2,
  .gx-sm-2 {
    --bs-gutter-x: 0.5rem;
  }
  .g-sm-2,
  .gy-sm-2 {
    --bs-gutter-y: 0.5rem;
  }
  .g-sm-3,
  .gx-sm-3 {
    --bs-gutter-x: 1rem;
  }
  .g-sm-3,
  .gy-sm-3 {
    --bs-gutter-y: 1rem;
  }
  .g-sm-4,
  .gx-sm-4 {
    --bs-gutter-x: 1.5rem;
  }
  .g-sm-4,
  .gy-sm-4 {
    --bs-gutter-y: 1.5rem;
  }
  .g-sm-5,
  .gx-sm-5 {
    --bs-gutter-x: 3rem;
  }
  .g-sm-5,
  .gy-sm-5 {
    --bs-gutter-y: 3rem;
  }
}
@media (min-width: 768px) {
  .col-md {
    flex: 1 0 0%;
  }
  .row-cols-md-auto > * {
    flex: 0 0 auto;
    width: auto;
  }
  .row-cols-md-1 > * {
    flex: 0 0 auto;
    width: 100%;
  }
  .row-cols-md-2 > * {
    flex: 0 0 auto;
    width: 50%;
  }
  .row-cols-md-3 > * {
    flex: 0 0 auto;
    width: 33.3333333333%;
  }
  .row-cols-md-4 > * {
    flex: 0 0 auto;
    width: 25%;
  }
  .row-cols-md-5 > * {
    flex: 0 0 auto;
    width: 20%;
  }
  .row-cols-md-6 > * {
    flex: 0 0 auto;
    width: 16.6666666667%;
  }
  .col-md-auto {
    flex: 0 0 auto;
    width: auto;
  }
  .col-md-1 {
    flex: 0 0 auto;
    width: 8.33333333%;
  }
  .col-md-2 {
    flex: 0 0 auto;
    width: 16.66666667%;
  }
  .col-md-3 {
    flex: 0 0 auto;
    width: 25%;
  }
  .col-md-4 {
    flex: 0 0 auto;
    width: 33.33333333%;
  }
  .col-md-5 {
    flex: 0 0 auto;
    width: 41.66666667%;
  }
  .col-md-6 {
    flex: 0 0 auto;
    width: 50%;
  }
  .col-md-7 {
    flex: 0 0 auto;
    width: 58.33333333%;
  }
  .col-md-8 {
    flex: 0 0 auto;
    width: 66.66666667%;
  }
  .col-md-9 {
    flex: 0 0 auto;
    width: 75%;
  }
  .col-md-10 {
    flex: 0 0 auto;
    width: 83.33333333%;
  }
  .col-md-11 {
    flex: 0 0 auto;
    width: 91.66666667%;
  }
  .col-md-12 {
    flex: 0 0 auto;
    width: 100%;
  }
  .offset-md-0 {
    margin-left: 0;
  }
  .offset-md-1 {
    margin-left: 8.33333333%;
  }
  .offset-md-2 {
    margin-left: 16.66666667%;
  }
  .offset-md-3 {
    margin-left: 25%;
  }
  .offset-md-4 {
    margin-left: 33.33333333%;
  }
  .offset-md-5 {
    margin-left: 41.66666667%;
  }
  .offset-md-6 {
    margin-left: 50%;
  }
  .offset-md-7 {
    margin-left: 58.33333333%;
  }
  .offset-md-8 {
    margin-left: 66.66666667%;
  }
  .offset-md-9 {
    margin-left: 75%;
  }
  .offset-md-10 {
    margin-left: 83.33333333%;
  }
  .offset-md-11 {
    margin-left: 91.66666667%;
  }
  .g-md-0,
  .gx-md-0 {
    --bs-gutter-x: 0;
  }
  .g-md-0,
  .gy-md-0 {
    --bs-gutter-y: 0;
  }
  .g-md-1,
  .gx-md-1 {
    --bs-gutter-x: 0.25rem;
  }
  .g-md-1,
  .gy-md-1 {
    --bs-gutter-y: 0.25rem;
  }
  .g-md-2,
  .gx-md-2 {
    --bs-gutter-x: 0.5rem;
  }
  .g-md-2,
  .gy-md-2 {
    --bs-gutter-y: 0.5rem;
  }
  .g-md-3,
  .gx-md-3 {
    --bs-gutter-x: 1rem;
  }
  .g-md-3,
  .gy-md-3 {
    --bs-gutter-y: 1rem;
  }
  .g-md-4,
  .gx-md-4 {
    --bs-gutter-x: 1.5rem;
  }
  .g-md-4,
  .gy-md-4 {
    --bs-gutter-y: 1.5rem;
  }
  .g-md-5,
  .gx-md-5 {
    --bs-gutter-x: 3rem;
  }
  .g-md-5,
  .gy-md-5 {
    --bs-gutter-y: 3rem;
  }
}
@media (min-width: 992px) {
  .col-lg {
    flex: 1 0 0%;
  }
  .row-cols-lg-auto > * {
    flex: 0 0 auto;
    width: auto;
  }
  .row-cols-lg-1 > * {
    flex: 0 0 auto;
    width: 100%;
  }
  .row-cols-lg-2 > * {
    flex: 0 0 auto;
    width: 50%;
  }
  .row-cols-lg-3 > * {
    flex: 0 0 auto;
    width: 33.3333333333%;
  }
  .row-cols-lg-4 > * {
    flex: 0 0 auto;
    width: 25%;
  }
  .row-cols-lg-5 > * {
    flex: 0 0 auto;
    width: 20%;
  }
  .row-cols-lg-6 > * {
    flex: 0 0 auto;
    width: 16.6666666667%;
  }
  .col-lg-auto {
    flex: 0 0 auto;
    width: auto;
  }
  .col-lg-1 {
    flex: 0 0 auto;
    width: 8.33333333%;
  }
  .col-lg-2 {
    flex: 0 0 auto;
    width: 16.66666667%;
  }
  .col-lg-3 {
    flex: 0 0 auto;
    width: 25%;
  }
  .col-lg-4 {
    flex: 0 0 auto;
    width: 33.33333333%;
  }
  .col-lg-5 {
    flex: 0 0 auto;
    width: 41.66666667%;
  }
  .col-lg-6 {
    flex: 0 0 auto;
    width: 50%;
  }
  .col-lg-7 {
    flex: 0 0 auto;
    width: 58.33333333%;
  }
  .col-lg-8 {
    flex: 0 0 auto;
    width: 66.66666667%;
  }
  .col-lg-9 {
    flex: 0 0 auto;
    width: 75%;
  }
  .col-lg-10 {
    flex: 0 0 auto;
    width: 83.33333333%;
  }
  .col-lg-11 {
    flex: 0 0 auto;
    width: 91.66666667%;
  }
  .col-lg-12 {
    flex: 0 0 auto;
    width: 100%;
  }
  .offset-lg-0 {
    margin-left: 0;
  }
  .offset-lg-1 {
    margin-left: 8.33333333%;
  }
  .offset-lg-2 {
    margin-left: 16.66666667%;
  }
  .offset-lg-3 {
    margin-left: 25%;
  }
  .offset-lg-4 {
    margin-left: 33.33333333%;
  }
  .offset-lg-5 {
    margin-left: 41.66666667%;
  }
  .offset-lg-6 {
    margin-left: 50%;
  }
  .offset-lg-7 {
    margin-left: 58.33333333%;
  }
  .offset-lg-8 {
    margin-left: 66.66666667%;
  }
  .offset-lg-9 {
    margin-left: 75%;
  }
  .offset-lg-10 {
    margin-left: 83.33333333%;
  }
  .offset-lg-11 {
    margin-left: 91.66666667%;
  }
  .g-lg-0,
  .gx-lg-0 {
    --bs-gutter-x: 0;
  }
  .g-lg-0,
  .gy-lg-0 {
    --bs-gutter-y: 0;
  }
  .g-lg-1,
  .gx-lg-1 {
    --bs-gutter-x: 0.25rem;
  }
  .g-lg-1,
  .gy-lg-1 {
    --bs-gutter-y: 0.25rem;
  }
  .g-lg-2,
  .gx-lg-2 {
    --bs-gutter-x: 0.5rem;
  }
  .g-lg-2,
  .gy-lg-2 {
    --bs-gutter-y: 0.5rem;
  }
  .g-lg-3,
  .gx-lg-3 {
    --bs-gutter-x: 1rem;
  }
  .g-lg-3,
  .gy-lg-3 {
    --bs-gutter-y: 1rem;
  }
  .g-lg-4,
  .gx-lg-4 {
    --bs-gutter-x: 1.5rem;
  }
  .g-lg-4,
  .gy-lg-4 {
    --bs-gutter-y: 1.5rem;
  }
  .g-lg-5,
  .gx-lg-5 {
    --bs-gutter-x: 3rem;
  }
  .g-lg-5,
  .gy-lg-5 {
    --bs-gutter-y: 3rem;
  }
}
@media (min-width: 1200px) {
  .col-xl {
    flex: 1 0 0%;
  }
  .row-cols-xl-auto > * {
    flex: 0 0 auto;
    width: auto;
  }
  .row-cols-xl-1 > * {
    flex: 0 0 auto;
    width: 100%;
  }
  .row-cols-xl-2 > * {
    flex: 0 0 auto;
    width: 50%;
  }
  .row-cols-xl-3 > * {
    flex: 0 0 auto;
    width: 33.3333333333%;
  }
  .row-cols-xl-4 > * {
    flex: 0 0 auto;
    width: 25%;
  }
  .row-cols-xl-5 > * {
    flex: 0 0 auto;
    width: 20%;
  }
  .row-cols-xl-6 > * {
    flex: 0 0 auto;
    width: 16.6666666667%;
  }
  .col-xl-auto {
    flex: 0 0 auto;
    width: auto;
  }
  .col-xl-1 {
    flex: 0 0 auto;
    width: 8.33333333%;
  }
  .col-xl-2 {
    flex: 0 0 auto;
    width: 16.66666667%;
  }
  .col-xl-3 {
    flex: 0 0 auto;
    width: 25%;
  }
  .col-xl-4 {
    flex: 0 0 auto;
    width: 33.33333333%;
  }
  .col-xl-5 {
    flex: 0 0 auto;
    width: 41.66666667%;
  }
  .col-xl-6 {
    flex: 0 0 auto;
    width: 50%;
  }
  .col-xl-7 {
    flex: 0 0 auto;
    width: 58.33333333%;
  }
  .col-xl-8 {
    flex: 0 0 auto;
    width: 66.66666667%;
  }
  .col-xl-9 {
    flex: 0 0 auto;
    width: 75%;
  }
  .col-xl-10 {
    flex: 0 0 auto;
    width: 83.33333333%;
  }
  .col-xl-11 {
    flex: 0 0 auto;
    width: 91.66666667%;
  }
  .col-xl-12 {
    flex: 0 0 auto;
    width: 100%;
  }
  .offset-xl-0 {
    margin-left: 0;
  }
  .offset-xl-1 {
    margin-left: 8.33333333%;
  }
  .offset-xl-2 {
    margin-left: 16.66666667%;
  }
  .offset-xl-3 {
    margin-left: 25%;
  }
  .offset-xl-4 {
    margin-left: 33.33333333%;
  }
  .offset-xl-5 {
    margin-left: 41.66666667%;
  }
  .offset-xl-6 {
    margin-left: 50%;
  }
  .offset-xl-7 {
    margin-left: 58.33333333%;
  }
  .offset-xl-8 {
    margin-left: 66.66666667%;
  }
  .offset-xl-9 {
    margin-left: 75%;
  }
  .offset-xl-10 {
    margin-left: 83.33333333%;
  }
  .offset-xl-11 {
    margin-left: 91.66666667%;
  }
  .g-xl-0,
  .gx-xl-0 {
    --bs-gutter-x: 0;
  }
  .g-xl-0,
  .gy-xl-0 {
    --bs-gutter-y: 0;
  }
  .g-xl-1,
  .gx-xl-1 {
    --bs-gutter-x: 0.25rem;
  }
  .g-xl-1,
  .gy-xl-1 {
    --bs-gutter-y: 0.25rem;
  }
  .g-xl-2,
  .gx-xl-2 {
    --bs-gutter-x: 0.5rem;
  }
  .g-xl-2,
  .gy-xl-2 {
    --bs-gutter-y: 0.5rem;
  }
  .g-xl-3,
  .gx-xl-3 {
    --bs-gutter-x: 1rem;
  }
  .g-xl-3,
  .gy-xl-3 {
    --bs-gutter-y: 1rem;
  }
  .g-xl-4,
  .gx-xl-4 {
    --bs-gutter-x: 1.5rem;
  }
  .g-xl-4,
  .gy-xl-4 {
    --bs-gutter-y: 1.5rem;
  }
  .g-xl-5,
  .gx-xl-5 {
    --bs-gutter-x: 3rem;
  }
  .g-xl-5,
  .gy-xl-5 {
    --bs-gutter-y: 3rem;
  }
}
@media (min-width: 1400px) {
  .col-xxl {
    flex: 1 0 0%;
  }
  .row-cols-xxl-auto > * {
    flex: 0 0 auto;
    width: auto;
  }
  .row-cols-xxl-1 > * {
    flex: 0 0 auto;
    width: 100%;
  }
  .row-cols-xxl-2 > * {
    flex: 0 0 auto;
    width: 50%;
  }
  .row-cols-xxl-3 > * {
    flex: 0 0 auto;
    width: 33.3333333333%;
  }
  .row-cols-xxl-4 > * {
    flex: 0 0 auto;
    width: 25%;
  }
  .row-cols-xxl-5 > * {
    flex: 0 0 auto;
    width: 20%;
  }
  .row-cols-xxl-6 > * {
    flex: 0 0 auto;
    width: 16.6666666667%;
  }
  .col-xxl-auto {
    flex: 0 0 auto;
    width: auto;
  }
  .col-xxl-1 {
    flex: 0 0 auto;
    width: 8.33333333%;
  }
  .col-xxl-2 {
    flex: 0 0 auto;
    width: 16.66666667%;
  }
  .col-xxl-3 {
    flex: 0 0 auto;
    width: 25%;
  }
  .col-xxl-4 {
    flex: 0 0 auto;
    width: 33.33333333%;
  }
  .col-xxl-5 {
    flex: 0 0 auto;
    width: 41.66666667%;
  }
  .col-xxl-6 {
    flex: 0 0 auto;
    width: 50%;
  }
  .col-xxl-7 {
    flex: 0 0 auto;
    width: 58.33333333%;
  }
  .col-xxl-8 {
    flex: 0 0 auto;
    width: 66.66666667%;
  }
  .col-xxl-9 {
    flex: 0 0 auto;
    width: 75%;
  }
  .col-xxl-10 {
    flex: 0 0 auto;
    width: 83.33333333%;
  }
  .col-xxl-11 {
    flex: 0 0 auto;
    width: 91.66666667%;
  }
  .col-xxl-12 {
    flex: 0 0 auto;
    width: 100%;
  }
  .offset-xxl-0 {
    margin-left: 0;
  }
  .offset-xxl-1 {
    margin-left: 8.33333333%;
  }
  .offset-xxl-2 {
    margin-left: 16.66666667%;
  }
  .offset-xxl-3 {
    margin-left: 25%;
  }
  .offset-xxl-4 {
    margin-left: 33.33333333%;
  }
  .offset-xxl-5 {
    margin-left: 41.66666667%;
  }
  .offset-xxl-6 {
    margin-left: 50%;
  }
  .offset-xxl-7 {
    margin-left: 58.33333333%;
  }
  .offset-xxl-8 {
    margin-left: 66.66666667%;
  }
  .offset-xxl-9 {
    margin-left: 75%;
  }
  .offset-xxl-10 {
    margin-left: 83.33333333%;
  }
  .offset-xxl-11 {
    margin-left: 91.66666667%;
  }
  .g-xxl-0,
  .gx-xxl-0 {
    --bs-gutter-x: 0;
  }
  .g-xxl-0,
  .gy-xxl-0 {
    --bs-gutter-y: 0;
  }
  .g-xxl-1,
  .gx-xxl-1 {
    --bs-gutter-x: 0.25rem;
  }
  .g-xxl-1,
  .gy-xxl-1 {
    --bs-gutter-y: 0.25rem;
  }
  .g-xxl-2,
  .gx-xxl-2 {
    --bs-gutter-x: 0.5rem;
  }
  .g-xxl-2,
  .gy-xxl-2 {
    --bs-gutter-y: 0.5rem;
  }
  .g-xxl-3,
  .gx-xxl-3 {
    --bs-gutter-x: 1rem;
  }
  .g-xxl-3,
  .gy-xxl-3 {
    --bs-gutter-y: 1rem;
  }
  .g-xxl-4,
  .gx-xxl-4 {
    --bs-gutter-x: 1.5rem;
  }
  .g-xxl-4,
  .gy-xxl-4 {
    --bs-gutter-y: 1.5rem;
  }
  .g-xxl-5,
  .gx-xxl-5 {
    --bs-gutter-x: 3rem;
  }
  .g-xxl-5,
  .gy-xxl-5 {
    --bs-gutter-y: 3rem;
  }
}
.table {
  --bs-table-color-type: initial;
  --bs-table-bg-type: initial;
  --bs-table-color-state: initial;
  --bs-table-bg-state: initial;
  --bs-table-color: var(--bs-body-color);
  --bs-table-bg: var(--bs-body-bg);
  --bs-table-border-color: var(--bs-border-color);
  --bs-table-accent-bg: transparent;
  --bs-table-striped-color: var(--bs-body-color);
  --bs-table-striped-bg: rgba(0, 0, 0, 0.05);
  --bs-table-active-color: var(--bs-body-color);
  --bs-table-active-bg: rgba(0, 0, 0, 0.1);
  --bs-table-hover-color: var(--bs-body-color);
  --bs-table-hover-bg: rgba(0, 0, 0, 0.075);
  width: 100%;
  margin-bottom: 1rem;
  vertical-align: top;
  border-color: var(--bs-table-border-color);
}
.table > :not(caption) > * > * {
  padding: 0.5rem 0.5rem;
  color: var(--bs-table-color-state, var(--bs-table-color-type, var(--bs-table-color)));
  background-color: var(--bs-table-bg);
  border-bottom-width: var(--bs-border-width);
  box-shadow: inset 0 0 0 9999px var(--bs-table-bg-state, var(--bs-table-bg-type, var(--bs-table-accent-bg)));
}
.table > tbody {
  vertical-align: inherit;
}
.table > thead {
  vertical-align: bottom;
}

.table-group-divider {
  border-top: calc(var(--bs-border-width) * 2) solid currentcolor;
}

.caption-top {
  caption-side: top;
}

.table-sm > :not(caption) > * > * {
  padding: 0.25rem 0.25rem;
}

.table-bordered > :not(caption) > * {
  border-width: var(--bs-border-width) 0;
}
.table-bordered > :not(caption) > * > * {
  border-width: 0 var(--bs-border-width);
}

.table-borderless > :not(caption) > * > * {
  border-bottom-width: 0;
}
.table-borderless > :not(:first-child) {
  border-top-width: 0;
}

.table-striped > tbody > tr:nth-of-type(odd) > * {
  --bs-table-color-type: var(--bs-table-striped-color);
  --bs-table-bg-type: var(--bs-table-striped-bg);
}

.table-striped-columns > :not(caption) > tr > :nth-child(even) {
  --bs-table-color-type: var(--bs-table-striped-color);
  --bs-table-bg-type: var(--bs-table-striped-bg);
}

.table-active {
  --bs-table-color-state: var(--bs-table-active-color);
  --bs-table-bg-state: var(--bs-table-active-bg);
}

.table-hover > tbody > tr:hover > * {
  --bs-table-color-state: var(--bs-table-hover-color);
  --bs-table-bg-state: var(--bs-table-hover-bg);
}

.table-primary {
  --bs-table-color: #000;
  --bs-table-bg: #cfe2ff;
  --bs-table-border-color: #bacbe6;
  --bs-table-striped-bg: #c5d7f2;
  --bs-table-striped-color: #000;
  --bs-table-active-bg: #bacbe6;
  --bs-table-active-color: #000;
  --bs-table-hover-bg: #bfd1ec;
  --bs-table-hover-color: #000;
  color: var(--bs-table-color);
  border-color: var(--bs-table-border-color);
}

.table-secondary {
  --bs-table-color: #000;
  --bs-table-bg: #e2e3e5;
  --bs-table-border-color: #cbccce;
  --bs-table-striped-bg: #d7d8da;
  --bs-table-striped-color: #000;
  --bs-table-active-bg: #cbccce;
  --bs-table-active-color: #000;
  --bs-table-hover-bg: #d1d2d4;
  --bs-table-hover-color: #000;
  color: var(--bs-table-color);
  border-color: var(--bs-table-border-color);
}

.table-success {
  --bs-table-color: #000;
  --bs-table-bg: #daebd3;
  --bs-table-border-color: #c4d4be;
  --bs-table-striped-bg: #cfdfc8;
  --bs-table-striped-color: #000;
  --bs-table-active-bg: #c4d4be;
  --bs-table-active-color: #000;
  --bs-table-hover-bg: #cad9c3;
  --bs-table-hover-color: #000;
  color: var(--bs-table-color);
  border-color: var(--bs-table-border-color);
}

.table-info {
  --bs-table-color: #000;
  --bs-table-bg: #cff4fc;
  --bs-table-border-color: #badce3;
  --bs-table-striped-bg: #c5e8ef;
  --bs-table-striped-color: #000;
  --bs-table-active-bg: #badce3;
  --bs-table-active-color: #000;
  --bs-table-hover-bg: #bfe2e9;
  --bs-table-hover-color: #000;
  color: var(--bs-table-color);
  border-color: var(--bs-table-border-color);
}

.table-warning {
  --bs-table-color: #000;
  --bs-table-bg: #fff3cd;
  --bs-table-border-color: #e6dbb9;
  --bs-table-striped-bg: #f2e7c3;
  --bs-table-striped-color: #000;
  --bs-table-active-bg: #e6dbb9;
  --bs-table-active-color: #000;
  --bs-table-hover-bg: #ece1be;
  --bs-table-hover-color: #000;
  color: var(--bs-table-color);
  border-color: var(--bs-table-border-color);
}

.table-danger {
  --bs-table-color: #000;
  --bs-table-bg: #f7ced0;
  --bs-table-border-color: #deb9bb;
  --bs-table-striped-bg: #ebc4c6;
  --bs-table-striped-color: #000;
  --bs-table-active-bg: #deb9bb;
  --bs-table-active-color: #000;
  --bs-table-hover-bg: #e4bfc0;
  --bs-table-hover-color: #000;
  color: var(--bs-table-color);
  border-color: var(--bs-table-border-color);
}

.table-light {
  --bs-table-color: #000;
  --bs-table-bg: #f8f9fa;
  --bs-table-border-color: #dfe0e1;
  --bs-table-striped-bg: #ecedee;
  --bs-table-striped-color: #000;
  --bs-table-active-bg: #dfe0e1;
  --bs-table-active-color: #000;
  --bs-table-hover-bg: #e5e6e7;
  --bs-table-hover-color: #000;
  color: var(--bs-table-color);
  border-color: var(--bs-table-border-color);
}

.table-dark {
  --bs-table-color: #fff;
  --bs-table-bg: #212529;
  --bs-table-border-color: #373b3e;
  --bs-table-striped-bg: #2c3034;
  --bs-table-striped-color: #fff;
  --bs-table-active-bg: #373b3e;
  --bs-table-active-color: #fff;
  --bs-table-hover-bg: #323539;
  --bs-table-hover-color: #fff;
  color: var(--bs-table-color);
  border-color: var(--bs-table-border-color);
}

.table-responsive {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}

@media (max-width: 575.98px) {
  .table-responsive-sm {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
}
@media (max-width: 767.98px) {
  .table-responsive-md {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
}
@media (max-width: 991.98px) {
  .table-responsive-lg {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
}
@media (max-width: 1199.98px) {
  .table-responsive-xl {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
}
@media (max-width: 1399.98px) {
  .table-responsive-xxl {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
}
.form-label {
  margin-bottom: 0.5rem;
}

.col-form-label {
  padding-top: calc(0.375rem + var(--bs-border-width));
  padding-bottom: calc(0.375rem + var(--bs-border-width));
  margin-bottom: 0;
  font-size: inherit;
  line-height: 1.6;
}

.col-form-label-lg {
  padding-top: calc(0.5rem + var(--bs-border-width));
  padding-bottom: calc(0.5rem + var(--bs-border-width));
  font-size: 1.125rem;
}

.col-form-label-sm {
  padding-top: calc(0.25rem + var(--bs-border-width));
  padding-bottom: calc(0.25rem + var(--bs-border-width));
  font-size: 0.7875rem;
}

.form-text {
  margin-top: 0.25rem;
  font-size: 0.875em;
  color: var(--bs-secondary-color);
}

.form-control {
  display: block;
  width: 100%;
  padding: 0.375rem 0.75rem;
  font-size: 0.9rem;
  font-weight: 400;
  line-height: 1.6;
  color: var(--bs-body-color);
  background-color: var(--bs-body-bg);
  background-clip: padding-box;
  border: var(--bs-border-width) solid var(--bs-border-color);
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border-radius: var(--bs-border-radius);
  transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
  .form-control {
    transition: none;
  }
}
.form-control[type=file] {
  overflow: hidden;
}
.form-control[type=file]:not(:disabled):not([readonly]) {
  cursor: pointer;
}
.form-control:focus {
  color: var(--bs-body-color);
  background-color: var(--bs-body-bg);
  border-color: #86b7fe;
  outline: 0;
  box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
}
.form-control::-webkit-date-and-time-value {
  min-width: 85px;
  height: 1.6em;
  margin: 0;
}
.form-control::-webkit-datetime-edit {
  display: block;
  padding: 0;
}
.form-control::-moz-placeholder {
  color: var(--bs-secondary-color);
  opacity: 1;
}
.form-control::placeholder {
  color: var(--bs-secondary-color);
  opacity: 1;
}
.form-control:disabled {
  background-color: var(--bs-secondary-bg);
  opacity: 1;
}
.form-control::file-selector-button {
  padding: 0.375rem 0.75rem;
  margin: -0.375rem -0.75rem;
  margin-inline-end: 0.75rem;
  color: var(--bs-body-color);
  background-color: var(--bs-tertiary-bg);
  pointer-events: none;
  border-color: inherit;
  border-style: solid;
  border-width: 0;
  border-inline-end-width: var(--bs-border-width);
  border-radius: 0;
  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
  .form-control::file-selector-button {
    transition: none;
  }
}
.form-control:hover:not(:disabled):not([readonly])::file-selector-button {
  background-color: var(--bs-secondary-bg);
}

.form-control-plaintext {
  display: block;
  width: 100%;
  padding: 0.375rem 0;
  margin-bottom: 0;
  line-height: 1.6;
  color: var(--bs-body-color);
  background-color: transparent;
  border: solid transparent;
  border-width: var(--bs-border-width) 0;
}
.form-control-plaintext:focus {
  outline: 0;
}
.form-control-plaintext.form-control-sm, .form-control-plaintext.form-control-lg {
  padding-right: 0;
  padding-left: 0;
}

.form-control-sm {
  min-height: calc(1.6em + 0.5rem + calc(var(--bs-border-width) * 2));
  padding: 0.25rem 0.5rem;
  font-size: 0.7875rem;
  border-radius: var(--bs-border-radius-sm);
}
.form-control-sm::file-selector-button {
  padding: 0.25rem 0.5rem;
  margin: -0.25rem -0.5rem;
  margin-inline-end: 0.5rem;
}

.form-control-lg {
  min-height: calc(1.6em + 1rem + calc(var(--bs-border-width) * 2));
  padding: 0.5rem 1rem;
  font-size: 1.125rem;
  border-radius: var(--bs-border-radius-lg);
}
.form-control-lg::file-selector-button {
  padding: 0.5rem 1rem;
  margin: -0.5rem -1rem;
  margin-inline-end: 1rem;
}

textarea.form-control {
  min-height: calc(1.6em + 0.75rem + calc(var(--bs-border-width) * 2));
}
textarea.form-control-sm {
  min-height: calc(1.6em + 0.5rem + calc(var(--bs-border-width) * 2));
}
textarea.form-control-lg {
  min-height: calc(1.6em + 1rem + calc(var(--bs-border-width) * 2));
}

.form-control-color {
  width: 3rem;
  height: calc(1.6em + 0.75rem + calc(var(--bs-border-width) * 2));
  padding: 0.375rem;
}
.form-control-color:not(:disabled):not([readonly]) {
  cursor: pointer;
}
.form-control-color::-moz-color-swatch {
  border: 0 !important;
  border-radius: var(--bs-border-radius);
}
.form-control-color::-webkit-color-swatch {
  border: 0 !important;
  border-radius: var(--bs-border-radius);
}
.form-control-color.form-control-sm {
  height: calc(1.6em + 0.5rem + calc(var(--bs-border-width) * 2));
}
.form-control-color.form-control-lg {
  height: calc(1.6em + 1rem + calc(var(--bs-border-width) * 2));
}

.form-select {
  --bs-form-select-bg-img: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e");
  display: block;
  width: 100%;
  padding: 0.375rem 2.25rem 0.375rem 0.75rem;
  font-size: 0.9rem;
  font-weight: 400;
  line-height: 1.6;
  color: var(--bs-body-color);
  background-color: var(--bs-body-bg);
  background-image: var(--bs-form-select-bg-img), var(--bs-form-select-bg-icon, none);
  background-repeat: no-repeat;
  background-position: right 0.75rem center;
  background-size: 16px 12px;
  border: var(--bs-border-width) solid var(--bs-border-color);
  border-radius: var(--bs-border-radius);
  transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}
@media (prefers-reduced-motion: reduce) {
  .form-select {
    transition: none;
  }
}
.form-select:focus {
  border-color: #86b7fe;
  outline: 0;
  box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
}
.form-select[multiple], .form-select[size]:not([size="1"]) {
  padding-right: 0.75rem;
  background-image: none;
}
.form-select:disabled {
  background-color: var(--bs-secondary-bg);
}
.form-select:-moz-focusring {
  color: transparent;
  text-shadow: 0 0 0 var(--bs-body-color);
}

.form-select-sm {
  padding-top: 0.25rem;
  padding-bottom: 0.25rem;
  padding-left: 0.5rem;
  font-size: 0.7875rem;
  border-radius: var(--bs-border-radius-sm);
}

.form-select-lg {
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  padding-left: 1rem;
  font-size: 1.125rem;
  border-radius: var(--bs-border-radius-lg);
}

[data-bs-theme=dark] .form-select {
  --bs-form-select-bg-img: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23adb5bd' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e");
}

.form-check {
  display: block;
  min-height: 1.44rem;
  padding-left: 1.5em;
  margin-bottom: 0.125rem;
}
.form-check .form-check-input {
  float: left;
  margin-left: -1.5em;
}

.form-check-reverse {
  padding-right: 1.5em;
  padding-left: 0;
  text-align: right;
}
.form-check-reverse .form-check-input {
  float: right;
  margin-right: -1.5em;
  margin-left: 0;
}

.form-check-input {
  --bs-form-check-bg: var(--bs-body-bg);
  width: 1em;
  height: 1em;
  margin-top: 0.3em;
  vertical-align: top;
  background-color: var(--bs-form-check-bg);
  background-image: var(--bs-form-check-bg-image);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  border: var(--bs-border-width) solid var(--bs-border-color);
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  print-color-adjust: exact;
}
.form-check-input[type=checkbox] {
  border-radius: 0.25em;
}
.form-check-input[type=radio] {
  border-radius: 50%;
}
.form-check-input:active {
  filter: brightness(90%);
}
.form-check-input:focus {
  border-color: #86b7fe;
  outline: 0;
  box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
}
.form-check-input:checked {
  background-color: #0d6efd;
  border-color: #0d6efd;
}
.form-check-input:checked[type=checkbox] {
  --bs-form-check-bg-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='m6 10 3 3 6-6'/%3e%3c/svg%3e");
}
.form-check-input:checked[type=radio] {
  --bs-form-check-bg-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='2' fill='%23fff'/%3e%3c/svg%3e");
}
.form-check-input[type=checkbox]:indeterminate {
  background-color: #0d6efd;
  border-color: #0d6efd;
  --bs-form-check-bg-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10h8'/%3e%3c/svg%3e");
}
.form-check-input:disabled {
  pointer-events: none;
  filter: none;
  opacity: 0.5;
}
.form-check-input[disabled] ~ .form-check-label, .form-check-input:disabled ~ .form-check-label {
  cursor: default;
  opacity: 0.5;
}

.form-switch {
  padding-left: 2.5em;
}
.form-switch .form-check-input {
  --bs-form-switch-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='rgba%280, 0, 0, 0.25%29'/%3e%3c/svg%3e");
  width: 2em;
  margin-left: -2.5em;
  background-image: var(--bs-form-switch-bg);
  background-position: left center;
  border-radius: 2em;
  transition: background-position 0.15s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
  .form-switch .form-check-input {
    transition: none;
  }
}
.form-switch .form-check-input:focus {
  --bs-form-switch-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%2386b7fe'/%3e%3c/svg%3e");
}
.form-switch .form-check-input:checked {
  background-position: right center;
  --bs-form-switch-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23fff'/%3e%3c/svg%3e");
}
.form-switch.form-check-reverse {
  padding-right: 2.5em;
  padding-left: 0;
}
.form-switch.form-check-reverse .form-check-input {
  margin-right: -2.5em;
  margin-left: 0;
}

.form-check-inline {
  display: inline-block;
  margin-right: 1rem;
}

.btn-check {
  position: absolute;
  clip: rect(0, 0, 0, 0);
  pointer-events: none;
}
.btn-check[disabled] + .btn, .btn-check:disabled + .btn {
  pointer-events: none;
  filter: none;
  opacity: 0.65;
}

[data-bs-theme=dark] .form-switch .form-check-input:not(:checked):not(:focus) {
  --bs-form-switch-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='rgba%28255, 255, 255, 0.25%29'/%3e%3c/svg%3e");
}

.form-range {
  width: 100%;
  height: 1.5rem;
  padding: 0;
  background-color: transparent;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}
.form-range:focus {
  outline: 0;
}
.form-range:focus::-webkit-slider-thumb {
  box-shadow: 0 0 0 1px #f8fafc, 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
}
.form-range:focus::-moz-range-thumb {
  box-shadow: 0 0 0 1px #f8fafc, 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
}
.form-range::-moz-focus-outer {
  border: 0;
}
.form-range::-webkit-slider-thumb {
  width: 1rem;
  height: 1rem;
  margin-top: -0.25rem;
  background-color: #0d6efd;
  border: 0;
  border-radius: 1rem;
  -webkit-transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
  transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
  -webkit-appearance: none;
          appearance: none;
}
@media (prefers-reduced-motion: reduce) {
  .form-range::-webkit-slider-thumb {
    -webkit-transition: none;
    transition: none;
  }
}
.form-range::-webkit-slider-thumb:active {
  background-color: #b6d4fe;
}
.form-range::-webkit-slider-runnable-track {
  width: 100%;
  height: 0.5rem;
  color: transparent;
  cursor: pointer;
  background-color: var(--bs-tertiary-bg);
  border-color: transparent;
  border-radius: 1rem;
}
.form-range::-moz-range-thumb {
  width: 1rem;
  height: 1rem;
  background-color: #0d6efd;
  border: 0;
  border-radius: 1rem;
  -moz-transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
  transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
  -moz-appearance: none;
       appearance: none;
}
@media (prefers-reduced-motion: reduce) {
  .form-range::-moz-range-thumb {
    -moz-transition: none;
    transition: none;
  }
}
.form-range::-moz-range-thumb:active {
  background-color: #b6d4fe;
}
.form-range::-moz-range-track {
  width: 100%;
  height: 0.5rem;
  color: transparent;
  cursor: pointer;
  background-color: var(--bs-tertiary-bg);
  border-color: transparent;
  border-radius: 1rem;
}
.form-range:disabled {
  pointer-events: none;
}
.form-range:disabled::-webkit-slider-thumb {
  background-color: var(--bs-secondary-color);
}
.form-range:disabled::-moz-range-thumb {
  background-color: var(--bs-secondary-color);
}

.form-floating {
  position: relative;
}
.form-floating > .form-control,
.form-floating > .form-control-plaintext,
.form-floating > .form-select {
  height: calc(3.5rem + calc(var(--bs-border-width) * 2));
  min-height: calc(3.5rem + calc(var(--bs-border-width) * 2));
  line-height: 1.25;
}
.form-floating > label {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
  height: 100%;
  padding: 1rem 0.75rem;
  overflow: hidden;
  text-align: start;
  text-overflow: ellipsis;
  white-space: nowrap;
  pointer-events: none;
  border: var(--bs-border-width) solid transparent;
  transform-origin: 0 0;
  transition: opacity 0.1s ease-in-out, transform 0.1s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
  .form-floating > label {
    transition: none;
  }
}
.form-floating > .form-control,
.form-floating > .form-control-plaintext {
  padding: 1rem 0.75rem;
}
.form-floating > .form-control::-moz-placeholder, .form-floating > .form-control-plaintext::-moz-placeholder {
  color: transparent;
}
.form-floating > .form-control::placeholder,
.form-floating > .form-control-plaintext::placeholder {
  color: transparent;
}
.form-floating > .form-control:not(:-moz-placeholder-shown), .form-floating > .form-control-plaintext:not(:-moz-placeholder-shown) {
  padding-top: 1.625rem;
  padding-bottom: 0.625rem;
}
.form-floating > .form-control:focus, .form-floating > .form-control:not(:placeholder-shown),
.form-floating > .form-control-plaintext:focus,
.form-floating > .form-control-plaintext:not(:placeholder-shown) {
  padding-top: 1.625rem;
  padding-bottom: 0.625rem;
}
.form-floating > .form-control:-webkit-autofill,
.form-floating > .form-control-plaintext:-webkit-autofill {
  padding-top: 1.625rem;
  padding-bottom: 0.625rem;
}
.form-floating > .form-select {
  padding-top: 1.625rem;
  padding-bottom: 0.625rem;
}
.form-floating > .form-control:not(:-moz-placeholder-shown) ~ label {
  color: rgba(var(--bs-body-color-rgb), 0.65);
  transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem);
}
.form-floating > .form-control:focus ~ label,
.form-floating > .form-control:not(:placeholder-shown) ~ label,
.form-floating > .form-control-plaintext ~ label,
.form-floating > .form-select ~ label {
  color: rgba(var(--bs-body-color-rgb), 0.65);
  transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem);
}
.form-floating > .form-control:not(:-moz-placeholder-shown) ~ label::after {
  position: absolute;
  inset: 1rem 0.375rem;
  z-index: -1;
  height: 1.5em;
  content: "";
  background-color: var(--bs-body-bg);
  border-radius: var(--bs-border-radius);
}
.form-floating > .form-control:focus ~ label::after,
.form-floating > .form-control:not(:placeholder-shown) ~ label::after,
.form-floating > .form-control-plaintext ~ label::after,
.form-floating > .form-select ~ label::after {
  position: absolute;
  inset: 1rem 0.375rem;
  z-index: -1;
  height: 1.5em;
  content: "";
  background-color: var(--bs-body-bg);
  border-radius: var(--bs-border-radius);
}
.form-floating > .form-control:-webkit-autofill ~ label {
  color: rgba(var(--bs-body-color-rgb), 0.65);
  transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem);
}
.form-floating > .form-control-plaintext ~ label {
  border-width: var(--bs-border-width) 0;
}
.form-floating > :disabled ~ label {
  color: #6c757d;
}
.form-floating > :disabled ~ label::after {
  background-color: var(--bs-secondary-bg);
}

.input-group {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  width: 100%;
}
.input-group > .form-control,
.input-group > .form-select,
.input-group > .form-floating {
  position: relative;
  flex: 1 1 auto;
  width: 1%;
  min-width: 0;
}
.input-group > .form-control:focus,
.input-group > .form-select:focus,
.input-group > .form-floating:focus-within {
  z-index: 5;
}
.input-group .btn {
  position: relative;
  z-index: 2;
}
.input-group .btn:focus {
  z-index: 5;
}

.input-group-text {
  display: flex;
  align-items: center;
  padding: 0.375rem 0.75rem;
  font-size: 0.9rem;
  font-weight: 400;
  line-height: 1.6;
  color: var(--bs-body-color);
  text-align: center;
  white-space: nowrap;
  background-color: var(--bs-tertiary-bg);
  border: var(--bs-border-width) solid var(--bs-border-color);
  border-radius: var(--bs-border-radius);
}

.input-group-lg > .form-control,
.input-group-lg > .form-select,
.input-group-lg > .input-group-text,
.input-group-lg > .btn {
  padding: 0.5rem 1rem;
  font-size: 1.125rem;
  border-radius: var(--bs-border-radius-lg);
}

.input-group-sm > .form-control,
.input-group-sm > .form-select,
.input-group-sm > .input-group-text,
.input-group-sm > .btn {
  padding: 0.25rem 0.5rem;
  font-size: 0.7875rem;
  border-radius: var(--bs-border-radius-sm);
}

.input-group-lg > .form-select,
.input-group-sm > .form-select {
  padding-right: 3rem;
}

.input-group:not(.has-validation) > :not(:last-child):not(.dropdown-toggle):not(.dropdown-menu):not(.form-floating),
.input-group:not(.has-validation) > .dropdown-toggle:nth-last-child(n+3),
.input-group:not(.has-validation) > .form-floating:not(:last-child) > .form-control,
.input-group:not(.has-validation) > .form-floating:not(:last-child) > .form-select {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}
.input-group.has-validation > :nth-last-child(n+3):not(.dropdown-toggle):not(.dropdown-menu):not(.form-floating),
.input-group.has-validation > .dropdown-toggle:nth-last-child(n+4),
.input-group.has-validation > .form-floating:nth-last-child(n+3) > .form-control,
.input-group.has-validation > .form-floating:nth-last-child(n+3) > .form-select {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}
.input-group > :not(:first-child):not(.dropdown-menu):not(.valid-tooltip):not(.valid-feedback):not(.invalid-tooltip):not(.invalid-feedback) {
  margin-left: calc(var(--bs-border-width) * -1);
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}
.input-group > .form-floating:not(:first-child) > .form-control,
.input-group > .form-floating:not(:first-child) > .form-select {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}

.valid-feedback {
  display: none;
  width: 100%;
  margin-top: 0.25rem;
  font-size: 0.875em;
  color: var(--bs-form-valid-color);
}

.valid-tooltip {
  position: absolute;
  top: 100%;
  z-index: 5;
  display: none;
  max-width: 100%;
  padding: 0.25rem 0.5rem;
  margin-top: 0.1rem;
  font-size: 0.7875rem;
  color: #fff;
  background-color: var(--bs-success);
  border-radius: var(--bs-border-radius);
}

.was-validated :valid ~ .valid-feedback,
.was-validated :valid ~ .valid-tooltip,
.is-valid ~ .valid-feedback,
.is-valid ~ .valid-tooltip {
  display: block;
}

.was-validated .form-control:valid, .form-control.is-valid {
  border-color: var(--bs-form-valid-border-color);
  padding-right: calc(1.6em + 0.75rem);
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%23449925' d='M2.3 6.73.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e");
  background-repeat: no-repeat;
  background-position: right calc(0.4em + 0.1875rem) center;
  background-size: calc(0.8em + 0.375rem) calc(0.8em + 0.375rem);
}
.was-validated .form-control:valid:focus, .form-control.is-valid:focus {
  border-color: var(--bs-form-valid-border-color);
  box-shadow: 0 0 0 0.25rem rgba(var(--bs-success-rgb), 0.25);
}

.was-validated textarea.form-control:valid, textarea.form-control.is-valid {
  padding-right: calc(1.6em + 0.75rem);
  background-position: top calc(0.4em + 0.1875rem) right calc(0.4em + 0.1875rem);
}

.was-validated .form-select:valid, .form-select.is-valid {
  border-color: var(--bs-form-valid-border-color);
}
.was-validated .form-select:valid:not([multiple]):not([size]), .was-validated .form-select:valid:not([multiple])[size="1"], .form-select.is-valid:not([multiple]):not([size]), .form-select.is-valid:not([multiple])[size="1"] {
  --bs-form-select-bg-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%23449925' d='M2.3 6.73.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e");
  padding-right: 4.125rem;
  background-position: right 0.75rem center, center right 2.25rem;
  background-size: 16px 12px, calc(0.8em + 0.375rem) calc(0.8em + 0.375rem);
}
.was-validated .form-select:valid:focus, .form-select.is-valid:focus {
  border-color: var(--bs-form-valid-border-color);
  box-shadow: 0 0 0 0.25rem rgba(var(--bs-success-rgb), 0.25);
}

.was-validated .form-control-color:valid, .form-control-color.is-valid {
  width: calc(3rem + calc(1.6em + 0.75rem));
}

.was-validated .form-check-input:valid, .form-check-input.is-valid {
  border-color: var(--bs-form-valid-border-color);
}
.was-validated .form-check-input:valid:checked, .form-check-input.is-valid:checked {
  background-color: var(--bs-form-valid-color);
}
.was-validated .form-check-input:valid:focus, .form-check-input.is-valid:focus {
  box-shadow: 0 0 0 0.25rem rgba(var(--bs-success-rgb), 0.25);
}
.was-validated .form-check-input:valid ~ .form-check-label, .form-check-input.is-valid ~ .form-check-label {
  color: var(--bs-form-valid-color);
}

.form-check-inline .form-check-input ~ .valid-feedback {
  margin-left: 0.5em;
}

.was-validated .input-group > .form-control:not(:focus):valid, .input-group > .form-control:not(:focus).is-valid,
.was-validated .input-group > .form-select:not(:focus):valid,
.input-group > .form-select:not(:focus).is-valid,
.was-validated .input-group > .form-floating:not(:focus-within):valid,
.input-group > .form-floating:not(:focus-within).is-valid {
  z-index: 3;
}

.invalid-feedback {
  display: none;
  width: 100%;
  margin-top: 0.25rem;
  font-size: 0.875em;
  color: var(--bs-form-invalid-color);
}

.invalid-tooltip {
  position: absolute;
  top: 100%;
  z-index: 5;
  display: none;
  max-width: 100%;
  padding: 0.25rem 0.5rem;
  margin-top: 0.1rem;
  font-size: 0.7875rem;
  color: #fff;
  background-color: var(--bs-danger);
  border-radius: var(--bs-border-radius);
}

.was-validated :invalid ~ .invalid-feedback,
.was-validated :invalid ~ .invalid-tooltip,
.is-invalid ~ .invalid-feedback,
.is-invalid ~ .invalid-tooltip {
  display: block;
}

.was-validated .form-control:invalid, .form-control.is-invalid {
  border-color: var(--bs-form-invalid-border-color);
  padding-right: calc(1.6em + 0.75rem);
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23D60812'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23D60812' stroke='none'/%3e%3c/svg%3e");
  background-repeat: no-repeat;
  background-position: right calc(0.4em + 0.1875rem) center;
  background-size: calc(0.8em + 0.375rem) calc(0.8em + 0.375rem);
}
.was-validated .form-control:invalid:focus, .form-control.is-invalid:focus {
  border-color: var(--bs-form-invalid-border-color);
  box-shadow: 0 0 0 0.25rem rgba(var(--bs-danger-rgb), 0.25);
}

.was-validated textarea.form-control:invalid, textarea.form-control.is-invalid {
  padding-right: calc(1.6em + 0.75rem);
  background-position: top calc(0.4em + 0.1875rem) right calc(0.4em + 0.1875rem);
}

.was-validated .form-select:invalid, .form-select.is-invalid {
  border-color: var(--bs-form-invalid-border-color);
}
.was-validated .form-select:invalid:not([multiple]):not([size]), .was-validated .form-select:invalid:not([multiple])[size="1"], .form-select.is-invalid:not([multiple]):not([size]), .form-select.is-invalid:not([multiple])[size="1"] {
  --bs-form-select-bg-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23D60812'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23D60812' stroke='none'/%3e%3c/svg%3e");
  padding-right: 4.125rem;
  background-position: right 0.75rem center, center right 2.25rem;
  background-size: 16px 12px, calc(0.8em + 0.375rem) calc(0.8em + 0.375rem);
}
.was-validated .form-select:invalid:focus, .form-select.is-invalid:focus {
  border-color: var(--bs-form-invalid-border-color);
  box-shadow: 0 0 0 0.25rem rgba(var(--bs-danger-rgb), 0.25);
}

.was-validated .form-control-color:invalid, .form-control-color.is-invalid {
  width: calc(3rem + calc(1.6em + 0.75rem));
}

.was-validated .form-check-input:invalid, .form-check-input.is-invalid {
  border-color: var(--bs-form-invalid-border-color);
}
.was-validated .form-check-input:invalid:checked, .form-check-input.is-invalid:checked {
  background-color: var(--bs-form-invalid-color);
}
.was-validated .form-check-input:invalid:focus, .form-check-input.is-invalid:focus {
  box-shadow: 0 0 0 0.25rem rgba(var(--bs-danger-rgb), 0.25);
}
.was-validated .form-check-input:invalid ~ .form-check-label, .form-check-input.is-invalid ~ .form-check-label {
  color: var(--bs-form-invalid-color);
}

.form-check-inline .form-check-input ~ .invalid-feedback {
  margin-left: 0.5em;
}

.was-validated .input-group > .form-control:not(:focus):invalid, .input-group > .form-control:not(:focus).is-invalid,
.was-validated .input-group > .form-select:not(:focus):invalid,
.input-group > .form-select:not(:focus).is-invalid,
.was-validated .input-group > .form-floating:not(:focus-within):invalid,
.input-group > .form-floating:not(:focus-within).is-invalid {
  z-index: 4;
}

.btn {
  --bs-btn-padding-x: 0.75rem;
  --bs-btn-padding-y: 0.375rem;
  --bs-btn-font-family: ;
  --bs-btn-font-size: 0.9rem;
  --bs-btn-font-weight: 400;
  --bs-btn-line-height: 1.6;
  --bs-btn-color: var(--bs-body-color);
  --bs-btn-bg: transparent;
  --bs-btn-border-width: var(--bs-border-width);
  --bs-btn-border-color: transparent;
  --bs-btn-border-radius: var(--bs-border-radius);
  --bs-btn-hover-border-color: transparent;
  --bs-btn-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075);
  --bs-btn-disabled-opacity: 0.65;
  --bs-btn-focus-box-shadow: 0 0 0 0.25rem rgba(var(--bs-btn-focus-shadow-rgb), .5);
  display: inline-block;
  padding: var(--bs-btn-padding-y) var(--bs-btn-padding-x);
  font-family: var(--bs-btn-font-family);
  font-size: var(--bs-btn-font-size);
  font-weight: var(--bs-btn-font-weight);
  line-height: var(--bs-btn-line-height);
  color: var(--bs-btn-color);
  text-align: center;
  text-decoration: none;
  vertical-align: middle;
  cursor: pointer;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  border: var(--bs-btn-border-width) solid var(--bs-btn-border-color);
  border-radius: var(--bs-btn-border-radius);
  background-color: var(--bs-btn-bg);
  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
  .btn {
    transition: none;
  }
}
.btn:hover {
  color: var(--bs-btn-hover-color);
  background-color: var(--bs-btn-hover-bg);
  border-color: var(--bs-btn-hover-border-color);
}
.btn-check + .btn:hover {
  color: var(--bs-btn-color);
  background-color: var(--bs-btn-bg);
  border-color: var(--bs-btn-border-color);
}
.btn:focus-visible {
  color: var(--bs-btn-hover-color);
  background-color: var(--bs-btn-hover-bg);
  border-color: var(--bs-btn-hover-border-color);
  outline: 0;
  box-shadow: var(--bs-btn-focus-box-shadow);
}
.btn-check:focus-visible + .btn {
  border-color: var(--bs-btn-hover-border-color);
  outline: 0;
  box-shadow: var(--bs-btn-focus-box-shadow);
}
.btn-check:checked + .btn, :not(.btn-check) + .btn:active, .btn:first-child:active, .btn.active, .btn.show {
  color: var(--bs-btn-active-color);
  background-color: var(--bs-btn-active-bg);
  border-color: var(--bs-btn-active-border-color);
}
.btn-check:checked + .btn:focus-visible, :not(.btn-check) + .btn:active:focus-visible, .btn:first-child:active:focus-visible, .btn.active:focus-visible, .btn.show:focus-visible {
  box-shadow: var(--bs-btn-focus-box-shadow);
}
.btn:disabled, .btn.disabled, fieldset:disabled .btn {
  color: var(--bs-btn-disabled-color);
  pointer-events: none;
  background-color: var(--bs-btn-disabled-bg);
  border-color: var(--bs-btn-disabled-border-color);
  opacity: var(--bs-btn-disabled-opacity);
}

.btn-primary {
  --bs-btn-color: #fff;
  --bs-btn-bg: #0d6efd;
  --bs-btn-border-color: #0d6efd;
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: #0b5ed7;
  --bs-btn-hover-border-color: #0a58ca;
  --bs-btn-focus-shadow-rgb: 49, 132, 253;
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: #0a58ca;
  --bs-btn-active-border-color: #0a53be;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #fff;
  --bs-btn-disabled-bg: #0d6efd;
  --bs-btn-disabled-border-color: #0d6efd;
}

.btn-secondary {
  --bs-btn-color: #fff;
  --bs-btn-bg: #6c757d;
  --bs-btn-border-color: #6c757d;
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: #5c636a;
  --bs-btn-hover-border-color: #565e64;
  --bs-btn-focus-shadow-rgb: 130, 138, 145;
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: #565e64;
  --bs-btn-active-border-color: #51585e;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #fff;
  --bs-btn-disabled-bg: #6c757d;
  --bs-btn-disabled-border-color: #6c757d;
}

.btn-success {
  --bs-btn-color: #000;
  --bs-btn-bg: #449925;
  --bs-btn-border-color: #449925;
  --bs-btn-hover-color: #000;
  --bs-btn-hover-bg: #60a846;
  --bs-btn-hover-border-color: #57a33b;
  --bs-btn-focus-shadow-rgb: 58, 130, 31;
  --bs-btn-active-color: #000;
  --bs-btn-active-bg: #69ad51;
  --bs-btn-active-border-color: #57a33b;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #000;
  --bs-btn-disabled-bg: #449925;
  --bs-btn-disabled-border-color: #449925;
}

.btn-info {
  --bs-btn-color: #000;
  --bs-btn-bg: #0dcaf0;
  --bs-btn-border-color: #0dcaf0;
  --bs-btn-hover-color: #000;
  --bs-btn-hover-bg: #31d2f2;
  --bs-btn-hover-border-color: #25cff2;
  --bs-btn-focus-shadow-rgb: 11, 172, 204;
  --bs-btn-active-color: #000;
  --bs-btn-active-bg: #3dd5f3;
  --bs-btn-active-border-color: #25cff2;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #000;
  --bs-btn-disabled-bg: #0dcaf0;
  --bs-btn-disabled-border-color: #0dcaf0;
}

.btn-warning {
  --bs-btn-color: #000;
  --bs-btn-bg: #ffc107;
  --bs-btn-border-color: #ffc107;
  --bs-btn-hover-color: #000;
  --bs-btn-hover-bg: #ffca2c;
  --bs-btn-hover-border-color: #ffc720;
  --bs-btn-focus-shadow-rgb: 217, 164, 6;
  --bs-btn-active-color: #000;
  --bs-btn-active-bg: #ffcd39;
  --bs-btn-active-border-color: #ffc720;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #000;
  --bs-btn-disabled-bg: #ffc107;
  --bs-btn-disabled-border-color: #ffc107;
}

.btn-danger {
  --bs-btn-color: #fff;
  --bs-btn-bg: #D60812;
  --bs-btn-border-color: #D60812;
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: #b6070f;
  --bs-btn-hover-border-color: #ab060e;
  --bs-btn-focus-shadow-rgb: 220, 45, 54;
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: #ab060e;
  --bs-btn-active-border-color: #a1060e;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #fff;
  --bs-btn-disabled-bg: #D60812;
  --bs-btn-disabled-border-color: #D60812;
}

.btn-light {
  --bs-btn-color: #000;
  --bs-btn-bg: #f8f9fa;
  --bs-btn-border-color: #f8f9fa;
  --bs-btn-hover-color: #000;
  --bs-btn-hover-bg: #d3d4d5;
  --bs-btn-hover-border-color: #c6c7c8;
  --bs-btn-focus-shadow-rgb: 211, 212, 213;
  --bs-btn-active-color: #000;
  --bs-btn-active-bg: #c6c7c8;
  --bs-btn-active-border-color: #babbbc;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #000;
  --bs-btn-disabled-bg: #f8f9fa;
  --bs-btn-disabled-border-color: #f8f9fa;
}

.btn-dark {
  --bs-btn-color: #fff;
  --bs-btn-bg: #212529;
  --bs-btn-border-color: #212529;
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: #424649;
  --bs-btn-hover-border-color: #373b3e;
  --bs-btn-focus-shadow-rgb: 66, 70, 73;
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: #4d5154;
  --bs-btn-active-border-color: #373b3e;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #fff;
  --bs-btn-disabled-bg: #212529;
  --bs-btn-disabled-border-color: #212529;
}

.btn-outline-primary {
  --bs-btn-color: #0d6efd;
  --bs-btn-border-color: #0d6efd;
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: #0d6efd;
  --bs-btn-hover-border-color: #0d6efd;
  --bs-btn-focus-shadow-rgb: 13, 110, 253;
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: #0d6efd;
  --bs-btn-active-border-color: #0d6efd;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #0d6efd;
  --bs-btn-disabled-bg: transparent;
  --bs-btn-disabled-border-color: #0d6efd;
  --bs-gradient: none;
}

.btn-outline-secondary {
  --bs-btn-color: #6c757d;
  --bs-btn-border-color: #6c757d;
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: #6c757d;
  --bs-btn-hover-border-color: #6c757d;
  --bs-btn-focus-shadow-rgb: 108, 117, 125;
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: #6c757d;
  --bs-btn-active-border-color: #6c757d;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #6c757d;
  --bs-btn-disabled-bg: transparent;
  --bs-btn-disabled-border-color: #6c757d;
  --bs-gradient: none;
}

.btn-outline-success {
  --bs-btn-color: #449925;
  --bs-btn-border-color: #449925;
  --bs-btn-hover-color: #000;
  --bs-btn-hover-bg: #449925;
  --bs-btn-hover-border-color: #449925;
  --bs-btn-focus-shadow-rgb: 68, 153, 37;
  --bs-btn-active-color: #000;
  --bs-btn-active-bg: #449925;
  --bs-btn-active-border-color: #449925;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #449925;
  --bs-btn-disabled-bg: transparent;
  --bs-btn-disabled-border-color: #449925;
  --bs-gradient: none;
}

.btn-outline-info {
  --bs-btn-color: #0dcaf0;
  --bs-btn-border-color: #0dcaf0;
  --bs-btn-hover-color: #000;
  --bs-btn-hover-bg: #0dcaf0;
  --bs-btn-hover-border-color: #0dcaf0;
  --bs-btn-focus-shadow-rgb: 13, 202, 240;
  --bs-btn-active-color: #000;
  --bs-btn-active-bg: #0dcaf0;
  --bs-btn-active-border-color: #0dcaf0;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #0dcaf0;
  --bs-btn-disabled-bg: transparent;
  --bs-btn-disabled-border-color: #0dcaf0;
  --bs-gradient: none;
}

.btn-outline-warning {
  --bs-btn-color: #ffc107;
  --bs-btn-border-color: #ffc107;
  --bs-btn-hover-color: #000;
  --bs-btn-hover-bg: #ffc107;
  --bs-btn-hover-border-color: #ffc107;
  --bs-btn-focus-shadow-rgb: 255, 193, 7;
  --bs-btn-active-color: #000;
  --bs-btn-active-bg: #ffc107;
  --bs-btn-active-border-color: #ffc107;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #ffc107;
  --bs-btn-disabled-bg: transparent;
  --bs-btn-disabled-border-color: #ffc107;
  --bs-gradient: none;
}

.btn-outline-danger {
  --bs-btn-color: #D60812;
  --bs-btn-border-color: #D60812;
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: #D60812;
  --bs-btn-hover-border-color: #D60812;
  --bs-btn-focus-shadow-rgb: 214, 8, 18;
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: #D60812;
  --bs-btn-active-border-color: #D60812;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #D60812;
  --bs-btn-disabled-bg: transparent;
  --bs-btn-disabled-border-color: #D60812;
  --bs-gradient: none;
}

.btn-outline-light {
  --bs-btn-color: #f8f9fa;
  --bs-btn-border-color: #f8f9fa;
  --bs-btn-hover-color: #000;
  --bs-btn-hover-bg: #f8f9fa;
  --bs-btn-hover-border-color: #f8f9fa;
  --bs-btn-focus-shadow-rgb: 248, 249, 250;
  --bs-btn-active-color: #000;
  --bs-btn-active-bg: #f8f9fa;
  --bs-btn-active-border-color: #f8f9fa;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #f8f9fa;
  --bs-btn-disabled-bg: transparent;
  --bs-btn-disabled-border-color: #f8f9fa;
  --bs-gradient: none;
}

.btn-outline-dark {
  --bs-btn-color: #212529;
  --bs-btn-border-color: #212529;
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: #212529;
  --bs-btn-hover-border-color: #212529;
  --bs-btn-focus-shadow-rgb: 33, 37, 41;
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: #212529;
  --bs-btn-active-border-color: #212529;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #212529;
  --bs-btn-disabled-bg: transparent;
  --bs-btn-disabled-border-color: #212529;
  --bs-gradient: none;
}

.btn-link {
  --bs-btn-font-weight: 400;
  --bs-btn-color: var(--bs-link-color);
  --bs-btn-bg: transparent;
  --bs-btn-border-color: transparent;
  --bs-btn-hover-color: var(--bs-link-hover-color);
  --bs-btn-hover-border-color: transparent;
  --bs-btn-active-color: var(--bs-link-hover-color);
  --bs-btn-active-border-color: transparent;
  --bs-btn-disabled-color: #6c757d;
  --bs-btn-disabled-border-color: transparent;
  --bs-btn-box-shadow: 0 0 0 #000;
  --bs-btn-focus-shadow-rgb: 49, 132, 253;
  text-decoration: underline;
}
.btn-link:focus-visible {
  color: var(--bs-btn-color);
}
.btn-link:hover {
  color: var(--bs-btn-hover-color);
}

.btn-lg, .btn-group-lg > .btn {
  --bs-btn-padding-y: 0.5rem;
  --bs-btn-padding-x: 1rem;
  --bs-btn-font-size: 1.125rem;
  --bs-btn-border-radius: var(--bs-border-radius-lg);
}

.btn-sm, .btn-group-sm > .btn {
  --bs-btn-padding-y: 0.25rem;
  --bs-btn-padding-x: 0.5rem;
  --bs-btn-font-size: 0.7875rem;
  --bs-btn-border-radius: var(--bs-border-radius-sm);
}

.fade {
  transition: opacity 0.15s linear;
}
@media (prefers-reduced-motion: reduce) {
  .fade {
    transition: none;
  }
}
.fade:not(.show) {
  opacity: 0;
}

.collapse:not(.show) {
  display: none;
}

.collapsing {
  height: 0;
  overflow: hidden;
  transition: height 0.35s ease;
}
@media (prefers-reduced-motion: reduce) {
  .collapsing {
    transition: none;
  }
}
.collapsing.collapse-horizontal {
  width: 0;
  height: auto;
  transition: width 0.35s ease;
}
@media (prefers-reduced-motion: reduce) {
  .collapsing.collapse-horizontal {
    transition: none;
  }
}

.dropup,
.dropend,
.dropdown,
.dropstart,
.dropup-center,
.dropdown-center {
  position: relative;
}

.dropdown-toggle {
  white-space: nowrap;
}
.dropdown-toggle::after {
  display: inline-block;
  margin-left: 0.255em;
  vertical-align: 0.255em;
  content: "";
  border-top: 0.3em solid;
  border-right: 0.3em solid transparent;
  border-bottom: 0;
  border-left: 0.3em solid transparent;
}
.dropdown-toggle:empty::after {
  margin-left: 0;
}

.dropdown-menu {
  --bs-dropdown-zindex: 1000;
  --bs-dropdown-min-width: 10rem;
  --bs-dropdown-padding-x: 0;
  --bs-dropdown-padding-y: 0.5rem;
  --bs-dropdown-spacer: 0.125rem;
  --bs-dropdown-font-size: 0.9rem;
  --bs-dropdown-color: var(--bs-body-color);
  --bs-dropdown-bg: var(--bs-body-bg);
  --bs-dropdown-border-color: var(--bs-border-color-translucent);
  --bs-dropdown-border-radius: var(--bs-border-radius);
  --bs-dropdown-border-width: var(--bs-border-width);
  --bs-dropdown-inner-border-radius: calc(var(--bs-border-radius) - var(--bs-border-width));
  --bs-dropdown-divider-bg: var(--bs-border-color-translucent);
  --bs-dropdown-divider-margin-y: 0.5rem;
  --bs-dropdown-box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
  --bs-dropdown-link-color: var(--bs-body-color);
  --bs-dropdown-link-hover-color: var(--bs-body-color);
  --bs-dropdown-link-hover-bg: var(--bs-tertiary-bg);
  --bs-dropdown-link-active-color: #fff;
  --bs-dropdown-link-active-bg: #0d6efd;
  --bs-dropdown-link-disabled-color: var(--bs-tertiary-color);
  --bs-dropdown-item-padding-x: 1rem;
  --bs-dropdown-item-padding-y: 0.25rem;
  --bs-dropdown-header-color: #6c757d;
  --bs-dropdown-header-padding-x: 1rem;
  --bs-dropdown-header-padding-y: 0.5rem;
  position: absolute;
  z-index: var(--bs-dropdown-zindex);
  display: none;
  min-width: var(--bs-dropdown-min-width);
  padding: var(--bs-dropdown-padding-y) var(--bs-dropdown-padding-x);
  margin: 0;
  font-size: var(--bs-dropdown-font-size);
  color: var(--bs-dropdown-color);
  text-align: left;
  list-style: none;
  background-color: var(--bs-dropdown-bg);
  background-clip: padding-box;
  border: var(--bs-dropdown-border-width) solid var(--bs-dropdown-border-color);
  border-radius: var(--bs-dropdown-border-radius);
}
.dropdown-menu[data-bs-popper] {
  top: 100%;
  left: 0;
  margin-top: var(--bs-dropdown-spacer);
}

.dropdown-menu-start {
  --bs-position: start;
}
.dropdown-menu-start[data-bs-popper] {
  right: auto;
  left: 0;
}

.dropdown-menu-end {
  --bs-position: end;
}
.dropdown-menu-end[data-bs-popper] {
  right: 0;
  left: auto;
}

@media (min-width: 576px) {
  .dropdown-menu-sm-start {
    --bs-position: start;
  }
  .dropdown-menu-sm-start[data-bs-popper] {
    right: auto;
    left: 0;
  }
  .dropdown-menu-sm-end {
    --bs-position: end;
  }
  .dropdown-menu-sm-end[data-bs-popper] {
    right: 0;
    left: auto;
  }
}
@media (min-width: 768px) {
  .dropdown-menu-md-start {
    --bs-position: start;
  }
  .dropdown-menu-md-start[data-bs-popper] {
    right: auto;
    left: 0;
  }
  .dropdown-menu-md-end {
    --bs-position: end;
  }
  .dropdown-menu-md-end[data-bs-popper] {
    right: 0;
    left: auto;
  }
}
@media (min-width: 992px) {
  .dropdown-menu-lg-start {
    --bs-position: start;
  }
  .dropdown-menu-lg-start[data-bs-popper] {
    right: auto;
    left: 0;
  }
  .dropdown-menu-lg-end {
    --bs-position: end;
  }
  .dropdown-menu-lg-end[data-bs-popper] {
    right: 0;
    left: auto;
  }
}
@media (min-width: 1200px) {
  .dropdown-menu-xl-start {
    --bs-position: start;
  }
  .dropdown-menu-xl-start[data-bs-popper] {
    right: auto;
    left: 0;
  }
  .dropdown-menu-xl-end {
    --bs-position: end;
  }
  .dropdown-menu-xl-end[data-bs-popper] {
    right: 0;
    left: auto;
  }
}
@media (min-width: 1400px) {
  .dropdown-menu-xxl-start {
    --bs-position: start;
  }
  .dropdown-menu-xxl-start[data-bs-popper] {
    right: auto;
    left: 0;
  }
  .dropdown-menu-xxl-end {
    --bs-position: end;
  }
  .dropdown-menu-xxl-end[data-bs-popper] {
    right: 0;
    left: auto;
  }
}
.dropup .dropdown-menu[data-bs-popper] {
  top: auto;
  bottom: 100%;
  margin-top: 0;
  margin-bottom: var(--bs-dropdown-spacer);
}
.dropup .dropdown-toggle::after {
  display: inline-block;
  margin-left: 0.255em;
  vertical-align: 0.255em;
  content: "";
  border-top: 0;
  border-right: 0.3em solid transparent;
  border-bottom: 0.3em solid;
  border-left: 0.3em solid transparent;
}
.dropup .dropdown-toggle:empty::after {
  margin-left: 0;
}

.dropend .dropdown-menu[data-bs-popper] {
  top: 0;
  right: auto;
  left: 100%;
  margin-top: 0;
  margin-left: var(--bs-dropdown-spacer);
}
.dropend .dropdown-toggle::after {
  display: inline-block;
  margin-left: 0.255em;
  vertical-align: 0.255em;
  content: "";
  border-top: 0.3em solid transparent;
  border-right: 0;
  border-bottom: 0.3em solid transparent;
  border-left: 0.3em solid;
}
.dropend .dropdown-toggle:empty::after {
  margin-left: 0;
}
.dropend .dropdown-toggle::after {
  vertical-align: 0;
}

.dropstart .dropdown-menu[data-bs-popper] {
  top: 0;
  right: 100%;
  left: auto;
  margin-top: 0;
  margin-right: var(--bs-dropdown-spacer);
}
.dropstart .dropdown-toggle::after {
  display: inline-block;
  margin-left: 0.255em;
  vertical-align: 0.255em;
  content: "";
}
.dropstart .dropdown-toggle::after {
  display: none;
}
.dropstart .dropdown-toggle::before {
  display: inline-block;
  margin-right: 0.255em;
  vertical-align: 0.255em;
  content: "";
  border-top: 0.3em solid transparent;
  border-right: 0.3em solid;
  border-bottom: 0.3em solid transparent;
}
.dropstart .dropdown-toggle:empty::after {
  margin-left: 0;
}
.dropstart .dropdown-toggle::before {
  vertical-align: 0;
}

.dropdown-divider {
  height: 0;
  margin: var(--bs-dropdown-divider-margin-y) 0;
  overflow: hidden;
  border-top: 1px solid var(--bs-dropdown-divider-bg);
  opacity: 1;
}

.dropdown-item {
  display: block;
  width: 100%;
  padding: var(--bs-dropdown-item-padding-y) var(--bs-dropdown-item-padding-x);
  clear: both;
  font-weight: 400;
  color: var(--bs-dropdown-link-color);
  text-align: inherit;
  text-decoration: none;
  white-space: nowrap;
  background-color: transparent;
  border: 0;
  border-radius: var(--bs-dropdown-item-border-radius, 0);
}
.dropdown-item:hover, .dropdown-item:focus {
  color: var(--bs-dropdown-link-hover-color);
  background-color: var(--bs-dropdown-link-hover-bg);
}
.dropdown-item.active, .dropdown-item:active {
  color: var(--bs-dropdown-link-active-color);
  text-decoration: none;
  background-color: var(--bs-dropdown-link-active-bg);
}
.dropdown-item.disabled, .dropdown-item:disabled {
  color: var(--bs-dropdown-link-disabled-color);
  pointer-events: none;
  background-color: transparent;
}

.dropdown-menu.show {
  display: block;
}

.dropdown-header {
  display: block;
  padding: var(--bs-dropdown-header-padding-y) var(--bs-dropdown-header-padding-x);
  margin-bottom: 0;
  font-size: 0.7875rem;
  color: var(--bs-dropdown-header-color);
  white-space: nowrap;
}

.dropdown-item-text {
  display: block;
  padding: var(--bs-dropdown-item-padding-y) var(--bs-dropdown-item-padding-x);
  color: var(--bs-dropdown-link-color);
}

.dropdown-menu-dark {
  --bs-dropdown-color: #dee2e6;
  --bs-dropdown-bg: #343a40;
  --bs-dropdown-border-color: var(--bs-border-color-translucent);
  --bs-dropdown-box-shadow: ;
  --bs-dropdown-link-color: #dee2e6;
  --bs-dropdown-link-hover-color: #fff;
  --bs-dropdown-divider-bg: var(--bs-border-color-translucent);
  --bs-dropdown-link-hover-bg: rgba(255, 255, 255, 0.15);
  --bs-dropdown-link-active-color: #fff;
  --bs-dropdown-link-active-bg: #0d6efd;
  --bs-dropdown-link-disabled-color: #adb5bd;
  --bs-dropdown-header-color: #adb5bd;
}

.btn-group,
.btn-group-vertical {
  position: relative;
  display: inline-flex;
  vertical-align: middle;
}
.btn-group > .btn,
.btn-group-vertical > .btn {
  position: relative;
  flex: 1 1 auto;
}
.btn-group > .btn-check:checked + .btn,
.btn-group > .btn-check:focus + .btn,
.btn-group > .btn:hover,
.btn-group > .btn:focus,
.btn-group > .btn:active,
.btn-group > .btn.active,
.btn-group-vertical > .btn-check:checked + .btn,
.btn-group-vertical > .btn-check:focus + .btn,
.btn-group-vertical > .btn:hover,
.btn-group-vertical > .btn:focus,
.btn-group-vertical > .btn:active,
.btn-group-vertical > .btn.active {
  z-index: 1;
}

.btn-toolbar {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
}
.btn-toolbar .input-group {
  width: auto;
}

.btn-group {
  border-radius: var(--bs-border-radius);
}
.btn-group > :not(.btn-check:first-child) + .btn,
.btn-group > .btn-group:not(:first-child) {
  margin-left: calc(var(--bs-border-width) * -1);
}
.btn-group > .btn:not(:last-child):not(.dropdown-toggle),
.btn-group > .btn.dropdown-toggle-split:first-child,
.btn-group > .btn-group:not(:last-child) > .btn {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}
.btn-group > .btn:nth-child(n+3),
.btn-group > :not(.btn-check) + .btn,
.btn-group > .btn-group:not(:first-child) > .btn {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}

.dropdown-toggle-split {
  padding-right: 0.5625rem;
  padding-left: 0.5625rem;
}
.dropdown-toggle-split::after, .dropup .dropdown-toggle-split::after, .dropend .dropdown-toggle-split::after {
  margin-left: 0;
}
.dropstart .dropdown-toggle-split::before {
  margin-right: 0;
}

.btn-sm + .dropdown-toggle-split, .btn-group-sm > .btn + .dropdown-toggle-split {
  padding-right: 0.375rem;
  padding-left: 0.375rem;
}

.btn-lg + .dropdown-toggle-split, .btn-group-lg > .btn + .dropdown-toggle-split {
  padding-right: 0.75rem;
  padding-left: 0.75rem;
}

.btn-group-vertical {
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
}
.btn-group-vertical > .btn,
.btn-group-vertical > .btn-group {
  width: 100%;
}
.btn-group-vertical > .btn:not(:first-child),
.btn-group-vertical > .btn-group:not(:first-child) {
  margin-top: calc(var(--bs-border-width) * -1);
}
.btn-group-vertical > .btn:not(:last-child):not(.dropdown-toggle),
.btn-group-vertical > .btn-group:not(:last-child) > .btn {
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}
.btn-group-vertical > .btn ~ .btn,
.btn-group-vertical > .btn-group:not(:first-child) > .btn {
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}

.nav {
  --bs-nav-link-padding-x: 1rem;
  --bs-nav-link-padding-y: 0.5rem;
  --bs-nav-link-font-weight: ;
  --bs-nav-link-color: var(--bs-link-color);
  --bs-nav-link-hover-color: var(--bs-link-hover-color);
  --bs-nav-link-disabled-color: var(--bs-secondary-color);
  display: flex;
  flex-wrap: wrap;
  padding-left: 0;
  margin-bottom: 0;
  list-style: none;
}

.nav-link {
  display: block;
  padding: var(--bs-nav-link-padding-y) var(--bs-nav-link-padding-x);
  font-size: var(--bs-nav-link-font-size);
  font-weight: var(--bs-nav-link-font-weight);
  color: var(--bs-nav-link-color);
  text-decoration: none;
  background: none;
  border: 0;
  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
  .nav-link {
    transition: none;
  }
}
.nav-link:hover, .nav-link:focus {
  color: var(--bs-nav-link-hover-color);
}
.nav-link:focus-visible {
  outline: 0;
  box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
}
.nav-link.disabled {
  color: var(--bs-nav-link-disabled-color);
  pointer-events: none;
  cursor: default;
}

.nav-tabs {
  --bs-nav-tabs-border-width: var(--bs-border-width);
  --bs-nav-tabs-border-color: var(--bs-border-color);
  --bs-nav-tabs-border-radius: var(--bs-border-radius);
  --bs-nav-tabs-link-hover-border-color: var(--bs-secondary-bg) var(--bs-secondary-bg) var(--bs-border-color);
  --bs-nav-tabs-link-active-color: var(--bs-emphasis-color);
  --bs-nav-tabs-link-active-bg: var(--bs-body-bg);
  --bs-nav-tabs-link-active-border-color: var(--bs-border-color) var(--bs-border-color) var(--bs-body-bg);
  border-bottom: var(--bs-nav-tabs-border-width) solid var(--bs-nav-tabs-border-color);
}
.nav-tabs .nav-link {
  margin-bottom: calc(-1 * var(--bs-nav-tabs-border-width));
  border: var(--bs-nav-tabs-border-width) solid transparent;
  border-top-left-radius: var(--bs-nav-tabs-border-radius);
  border-top-right-radius: var(--bs-nav-tabs-border-radius);
}
.nav-tabs .nav-link:hover, .nav-tabs .nav-link:focus {
  isolation: isolate;
  border-color: var(--bs-nav-tabs-link-hover-border-color);
}
.nav-tabs .nav-link.disabled, .nav-tabs .nav-link:disabled {
  color: var(--bs-nav-link-disabled-color);
  background-color: transparent;
  border-color: transparent;
}
.nav-tabs .nav-link.active,
.nav-tabs .nav-item.show .nav-link {
  color: var(--bs-nav-tabs-link-active-color);
  background-color: var(--bs-nav-tabs-link-active-bg);
  border-color: var(--bs-nav-tabs-link-active-border-color);
}
.nav-tabs .dropdown-menu {
  margin-top: calc(-1 * var(--bs-nav-tabs-border-width));
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}

.nav-pills {
  --bs-nav-pills-border-radius: var(--bs-border-radius);
  --bs-nav-pills-link-active-color: #fff;
  --bs-nav-pills-link-active-bg: #0d6efd;
}
.nav-pills .nav-link {
  border-radius: var(--bs-nav-pills-border-radius);
}
.nav-pills .nav-link:disabled {
  color: var(--bs-nav-link-disabled-color);
  background-color: transparent;
  border-color: transparent;
}
.nav-pills .nav-link.active,
.nav-pills .show > .nav-link {
  color: var(--bs-nav-pills-link-active-color);
  background-color: var(--bs-nav-pills-link-active-bg);
}

.nav-underline {
  --bs-nav-underline-gap: 1rem;
  --bs-nav-underline-border-width: 0.125rem;
  --bs-nav-underline-link-active-color: var(--bs-emphasis-color);
  gap: var(--bs-nav-underline-gap);
}
.nav-underline .nav-link {
  padding-right: 0;
  padding-left: 0;
  border-bottom: var(--bs-nav-underline-border-width) solid transparent;
}
.nav-underline .nav-link:hover, .nav-underline .nav-link:focus {
  border-bottom-color: currentcolor;
}
.nav-underline .nav-link.active,
.nav-underline .show > .nav-link {
  font-weight: 700;
  color: var(--bs-nav-underline-link-active-color);
  border-bottom-color: currentcolor;
}

.nav-fill > .nav-link,
.nav-fill .nav-item {
  flex: 1 1 auto;
  text-align: center;
}

.nav-justified > .nav-link,
.nav-justified .nav-item {
  flex-basis: 0;
  flex-grow: 1;
  text-align: center;
}

.nav-fill .nav-item .nav-link,
.nav-justified .nav-item .nav-link {
  width: 100%;
}

.tab-content > .tab-pane {
  display: none;
}
.tab-content > .active {
  display: block;
}

.navbar {
  --bs-navbar-padding-x: 0;
  --bs-navbar-padding-y: 0.5rem;
  --bs-navbar-color: rgba(var(--bs-emphasis-color-rgb), 0.65);
  --bs-navbar-hover-color: rgba(var(--bs-emphasis-color-rgb), 0.8);
  --bs-navbar-disabled-color: rgba(var(--bs-emphasis-color-rgb), 0.3);
  --bs-navbar-active-color: rgba(var(--bs-emphasis-color-rgb), 1);
  --bs-navbar-brand-padding-y: 0.32rem;
  --bs-navbar-brand-margin-end: 1rem;
  --bs-navbar-brand-font-size: 1.125rem;
  --bs-navbar-brand-color: rgba(var(--bs-emphasis-color-rgb), 1);
  --bs-navbar-brand-hover-color: rgba(var(--bs-emphasis-color-rgb), 1);
  --bs-navbar-nav-link-padding-x: 0.5rem;
  --bs-navbar-toggler-padding-y: 0.25rem;
  --bs-navbar-toggler-padding-x: 0.75rem;
  --bs-navbar-toggler-font-size: 1.125rem;
  --bs-navbar-toggler-icon-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%2833, 37, 41, 0.75%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
  --bs-navbar-toggler-border-color: rgba(var(--bs-emphasis-color-rgb), 0.15);
  --bs-navbar-toggler-border-radius: var(--bs-border-radius);
  --bs-navbar-toggler-focus-width: 0.25rem;
  --bs-navbar-toggler-transition: box-shadow 0.15s ease-in-out;
  position: relative;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  padding: var(--bs-navbar-padding-y) var(--bs-navbar-padding-x);
}
.navbar > .container,
.navbar > .container-fluid,
.navbar > .container-sm,
.navbar > .container-md,
.navbar > .container-lg,
.navbar > .container-xl,
.navbar > .container-xxl {
  display: flex;
  flex-wrap: inherit;
  align-items: center;
  justify-content: space-between;
}
.navbar-brand {
  padding-top: var(--bs-navbar-brand-padding-y);
  padding-bottom: var(--bs-navbar-brand-padding-y);
  margin-right: var(--bs-navbar-brand-margin-end);
  font-size: var(--bs-navbar-brand-font-size);
  color: var(--bs-navbar-brand-color);
  text-decoration: none;
  white-space: nowrap;
}
.navbar-brand:hover, .navbar-brand:focus {
  color: var(--bs-navbar-brand-hover-color);
}

.navbar-nav {
  --bs-nav-link-padding-x: 0;
  --bs-nav-link-padding-y: 0.5rem;
  --bs-nav-link-font-weight: ;
  --bs-nav-link-color: var(--bs-navbar-color);
  --bs-nav-link-hover-color: var(--bs-navbar-hover-color);
  --bs-nav-link-disabled-color: var(--bs-navbar-disabled-color);
  display: flex;
  flex-direction: column;
  padding-left: 0;
  margin-bottom: 0;
  list-style: none;
}
.navbar-nav .nav-link.active, .navbar-nav .nav-link.show {
  color: var(--bs-navbar-active-color);
}
.navbar-nav .dropdown-menu {
  position: static;
}

.navbar-text {
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  color: var(--bs-navbar-color);
}
.navbar-text a,
.navbar-text a:hover,
.navbar-text a:focus {
  color: var(--bs-navbar-active-color);
}

.navbar-collapse {
  flex-basis: 100%;
  flex-grow: 1;
  align-items: center;
}

.navbar-toggler {
  padding: var(--bs-navbar-toggler-padding-y) var(--bs-navbar-toggler-padding-x);
  font-size: var(--bs-navbar-toggler-font-size);
  line-height: 1;
  color: var(--bs-navbar-color);
  background-color: transparent;
  border: var(--bs-border-width) solid var(--bs-navbar-toggler-border-color);
  border-radius: var(--bs-navbar-toggler-border-radius);
  transition: var(--bs-navbar-toggler-transition);
}
@media (prefers-reduced-motion: reduce) {
  .navbar-toggler {
    transition: none;
  }
}
.navbar-toggler:hover {
  text-decoration: none;
}
.navbar-toggler:focus {
  text-decoration: none;
  outline: 0;
  box-shadow: 0 0 0 var(--bs-navbar-toggler-focus-width);
}

.navbar-toggler-icon {
  display: inline-block;
  width: 1.5em;
  height: 1.5em;
  vertical-align: middle;
  background-image: var(--bs-navbar-toggler-icon-bg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: 100%;
}

.navbar-nav-scroll {
  max-height: var(--bs-scroll-height, 75vh);
  overflow-y: auto;
}

@media (min-width: 576px) {
  .navbar-expand-sm {
    flex-wrap: nowrap;
    justify-content: flex-start;
  }
  .navbar-expand-sm .navbar-nav {
    flex-direction: row;
  }
  .navbar-expand-sm .navbar-nav .dropdown-menu {
    position: absolute;
  }
  .navbar-expand-sm .navbar-nav .nav-link {
    padding-right: var(--bs-navbar-nav-link-padding-x);
    padding-left: var(--bs-navbar-nav-link-padding-x);
  }
  .navbar-expand-sm .navbar-nav-scroll {
    overflow: visible;
  }
  .navbar-expand-sm .navbar-collapse {
    display: flex !important;
    flex-basis: auto;
  }
  .navbar-expand-sm .navbar-toggler {
    display: none;
  }
  .navbar-expand-sm .offcanvas {
    position: static;
    z-index: auto;
    flex-grow: 1;
    width: auto !important;
    height: auto !important;
    visibility: visible !important;
    background-color: transparent !important;
    border: 0 !important;
    transform: none !important;
    transition: none;
  }
  .navbar-expand-sm .offcanvas .offcanvas-header {
    display: none;
  }
  .navbar-expand-sm .offcanvas .offcanvas-body {
    display: flex;
    flex-grow: 0;
    padding: 0;
    overflow-y: visible;
  }
}
@media (min-width: 768px) {
  .navbar-expand-md {
    flex-wrap: nowrap;
    justify-content: flex-start;
  }
  .navbar-expand-md .navbar-nav {
    flex-direction: row;
  }
  .navbar-expand-md .navbar-nav .dropdown-menu {
    position: absolute;
  }
  .navbar-expand-md .navbar-nav .nav-link {
    padding-right: var(--bs-navbar-nav-link-padding-x);
    padding-left: var(--bs-navbar-nav-link-padding-x);
  }
  .navbar-expand-md .navbar-nav-scroll {
    overflow: visible;
  }
  .navbar-expand-md .navbar-collapse {
    display: flex !important;
    flex-basis: auto;
  }
  .navbar-expand-md .navbar-toggler {
    display: none;
  }
  .navbar-expand-md .offcanvas {
    position: static;
    z-index: auto;
    flex-grow: 1;
    width: auto !important;
    height: auto !important;
    visibility: visible !important;
    background-color: transparent !important;
    border: 0 !important;
    transform: none !important;
    transition: none;
  }
  .navbar-expand-md .offcanvas .offcanvas-header {
    display: none;
  }
  .navbar-expand-md .offcanvas .offcanvas-body {
    display: flex;
    flex-grow: 0;
    padding: 0;
    overflow-y: visible;
  }
}
@media (min-width: 992px) {
  .navbar-expand-lg {
    flex-wrap: nowrap;
    justify-content: flex-start;
  }
  .navbar-expand-lg .navbar-nav {
    flex-direction: row;
  }
  .navbar-expand-lg .navbar-nav .dropdown-menu {
    position: absolute;
  }
  .navbar-expand-lg .navbar-nav .nav-link {
    padding-right: var(--bs-navbar-nav-link-padding-x);
    padding-left: var(--bs-navbar-nav-link-padding-x);
  }
  .navbar-expand-lg .navbar-nav-scroll {
    overflow: visible;
  }
  .navbar-expand-lg .navbar-collapse {
    display: flex !important;
    flex-basis: auto;
  }
  .navbar-expand-lg .navbar-toggler {
    display: none;
  }
  .navbar-expand-lg .offcanvas {
    position: static;
    z-index: auto;
    flex-grow: 1;
    width: auto !important;
    height: auto !important;
    visibility: visible !important;
    background-color: transparent !important;
    border: 0 !important;
    transform: none !important;
    transition: none;
  }
  .navbar-expand-lg .offcanvas .offcanvas-header {
    display: none;
  }
  .navbar-expand-lg .offcanvas .offcanvas-body {
    display: flex;
    flex-grow: 0;
    padding: 0;
    overflow-y: visible;
  }
}
@media (min-width: 1200px) {
  .navbar-expand-xl {
    flex-wrap: nowrap;
    justify-content: flex-start;
  }
  .navbar-expand-xl .navbar-nav {
    flex-direction: row;
  }
  .navbar-expand-xl .navbar-nav .dropdown-menu {
    position: absolute;
  }
  .navbar-expand-xl .navbar-nav .nav-link {
    padding-right: var(--bs-navbar-nav-link-padding-x);
    padding-left: var(--bs-navbar-nav-link-padding-x);
  }
  .navbar-expand-xl .navbar-nav-scroll {
    overflow: visible;
  }
  .navbar-expand-xl .navbar-collapse {
    display: flex !important;
    flex-basis: auto;
  }
  .navbar-expand-xl .navbar-toggler {
    display: none;
  }
  .navbar-expand-xl .offcanvas {
    position: static;
    z-index: auto;
    flex-grow: 1;
    width: auto !important;
    height: auto !important;
    visibility: visible !important;
    background-color: transparent !important;
    border: 0 !important;
    transform: none !important;
    transition: none;
  }
  .navbar-expand-xl .offcanvas .offcanvas-header {
    display: none;
  }
  .navbar-expand-xl .offcanvas .offcanvas-body {
    display: flex;
    flex-grow: 0;
    padding: 0;
    overflow-y: visible;
  }
}
@media (min-width: 1400px) {
  .navbar-expand-xxl {
    flex-wrap: nowrap;
    justify-content: flex-start;
  }
  .navbar-expand-xxl .navbar-nav {
    flex-direction: row;
  }
  .navbar-expand-xxl .navbar-nav .dropdown-menu {
    position: absolute;
  }
  .navbar-expand-xxl .navbar-nav .nav-link {
    padding-right: var(--bs-navbar-nav-link-padding-x);
    padding-left: var(--bs-navbar-nav-link-padding-x);
  }
  .navbar-expand-xxl .navbar-nav-scroll {
    overflow: visible;
  }
  .navbar-expand-xxl .navbar-collapse {
    display: flex !important;
    flex-basis: auto;
  }
  .navbar-expand-xxl .navbar-toggler {
    display: none;
  }
  .navbar-expand-xxl .offcanvas {
    position: static;
    z-index: auto;
    flex-grow: 1;
    width: auto !important;
    height: auto !important;
    visibility: visible !important;
    background-color: transparent !important;
    border: 0 !important;
    transform: none !important;
    transition: none;
  }
  .navbar-expand-xxl .offcanvas .offcanvas-header {
    display: none;
  }
  .navbar-expand-xxl .offcanvas .offcanvas-body {
    display: flex;
    flex-grow: 0;
    padding: 0;
    overflow-y: visible;
  }
}
.navbar-expand {
  flex-wrap: nowrap;
  justify-content: flex-start;
}
.navbar-expand .navbar-nav {
  flex-direction: row;
}
.navbar-expand .navbar-nav .dropdown-menu {
  position: absolute;
}
.navbar-expand .navbar-nav .nav-link {
  padding-right: var(--bs-navbar-nav-link-padding-x);
  padding-left: var(--bs-navbar-nav-link-padding-x);
}
.navbar-expand .navbar-nav-scroll {
  overflow: visible;
}
.navbar-expand .navbar-collapse {
  display: flex !important;
  flex-basis: auto;
}
.navbar-expand .navbar-toggler {
  display: none;
}
.navbar-expand .offcanvas {
  position: static;
  z-index: auto;
  flex-grow: 1;
  width: auto !important;
  height: auto !important;
  visibility: visible !important;
  background-color: transparent !important;
  border: 0 !important;
  transform: none !important;
  transition: none;
}
.navbar-expand .offcanvas .offcanvas-header {
  display: none;
}
.navbar-expand .offcanvas .offcanvas-body {
  display: flex;
  flex-grow: 0;
  padding: 0;
  overflow-y: visible;
}

.navbar-dark,
.navbar[data-bs-theme=dark] {
  --bs-navbar-color: rgba(255, 255, 255, 0.55);
  --bs-navbar-hover-color: rgba(255, 255, 255, 0.75);
  --bs-navbar-disabled-color: rgba(255, 255, 255, 0.25);
  --bs-navbar-active-color: #fff;
  --bs-navbar-brand-color: #fff;
  --bs-navbar-brand-hover-color: #fff;
  --bs-navbar-toggler-border-color: rgba(255, 255, 255, 0.1);
  --bs-navbar-toggler-icon-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}

[data-bs-theme=dark] .navbar-toggler-icon {
  --bs-navbar-toggler-icon-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}

.card {
  --bs-card-spacer-y: 1rem;
  --bs-card-spacer-x: 1rem;
  --bs-card-title-spacer-y: 0.5rem;
  --bs-card-title-color: ;
  --bs-card-subtitle-color: ;
  --bs-card-border-width: var(--bs-border-width);
  --bs-card-border-color: var(--bs-border-color-translucent);
  --bs-card-border-radius: var(--bs-border-radius);
  --bs-card-box-shadow: ;
  --bs-card-inner-border-radius: calc(var(--bs-border-radius) - (var(--bs-border-width)));
  --bs-card-cap-padding-y: 0.5rem;
  --bs-card-cap-padding-x: 1rem;
  --bs-card-cap-bg: rgba(var(--bs-body-color-rgb), 0.03);
  --bs-card-cap-color: ;
  --bs-card-height: ;
  --bs-card-color: ;
  --bs-card-bg: var(--bs-body-bg);
  --bs-card-img-overlay-padding: 1rem;
  --bs-card-group-margin: 0.75rem;
  position: relative;
  display: flex;
  flex-direction: column;
  min-width: 0;
  height: var(--bs-card-height);
  color: var(--bs-body-color);
  word-wrap: break-word;
  background-color: var(--bs-card-bg);
  background-clip: border-box;
  border: var(--bs-card-border-width) solid var(--bs-card-border-color);
  border-radius: var(--bs-card-border-radius);
}
.card > hr {
  margin-right: 0;
  margin-left: 0;
}
.card > .list-group {
  border-top: inherit;
  border-bottom: inherit;
}
.card > .list-group:first-child {
  border-top-width: 0;
  border-top-left-radius: var(--bs-card-inner-border-radius);
  border-top-right-radius: var(--bs-card-inner-border-radius);
}
.card > .list-group:last-child {
  border-bottom-width: 0;
  border-bottom-right-radius: var(--bs-card-inner-border-radius);
  border-bottom-left-radius: var(--bs-card-inner-border-radius);
}
.card > .card-header + .list-group,
.card > .list-group + .card-footer {
  border-top: 0;
}

.card-body {
  flex: 1 1 auto;
  padding: var(--bs-card-spacer-y) var(--bs-card-spacer-x);
  color: var(--bs-card-color);
}

.card-title {
  margin-bottom: var(--bs-card-title-spacer-y);
  color: var(--bs-card-title-color);
}

.card-subtitle {
  margin-top: calc(-0.5 * var(--bs-card-title-spacer-y));
  margin-bottom: 0;
  color: var(--bs-card-subtitle-color);
}

.card-text:last-child {
  margin-bottom: 0;
}

.card-link + .card-link {
  margin-left: var(--bs-card-spacer-x);
}

.card-header {
  padding: var(--bs-card-cap-padding-y) var(--bs-card-cap-padding-x);
  margin-bottom: 0;
  color: var(--bs-card-cap-color);
  background-color: var(--bs-card-cap-bg);
  border-bottom: var(--bs-card-border-width) solid var(--bs-card-border-color);
}
.card-header:first-child {
  border-radius: var(--bs-card-inner-border-radius) var(--bs-card-inner-border-radius) 0 0;
}

.card-footer {
  padding: var(--bs-card-cap-padding-y) var(--bs-card-cap-padding-x);
  color: var(--bs-card-cap-color);
  background-color: var(--bs-card-cap-bg);
  border-top: var(--bs-card-border-width) solid var(--bs-card-border-color);
}
.card-footer:last-child {
  border-radius: 0 0 var(--bs-card-inner-border-radius) var(--bs-card-inner-border-radius);
}

.card-header-tabs {
  margin-right: calc(-0.5 * var(--bs-card-cap-padding-x));
  margin-bottom: calc(-1 * var(--bs-card-cap-padding-y));
  margin-left: calc(-0.5 * var(--bs-card-cap-padding-x));
  border-bottom: 0;
}
.card-header-tabs .nav-link.active {
  background-color: var(--bs-card-bg);
  border-bottom-color: var(--bs-card-bg);
}

.card-header-pills {
  margin-right: calc(-0.5 * var(--bs-card-cap-padding-x));
  margin-left: calc(-0.5 * var(--bs-card-cap-padding-x));
}

.card-img-overlay {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  padding: var(--bs-card-img-overlay-padding);
  border-radius: var(--bs-card-inner-border-radius);
}

.card-img,
.card-img-top,
.card-img-bottom {
  width: 100%;
}

.card-img,
.card-img-top {
  border-top-left-radius: var(--bs-card-inner-border-radius);
  border-top-right-radius: var(--bs-card-inner-border-radius);
}

.card-img,
.card-img-bottom {
  border-bottom-right-radius: var(--bs-card-inner-border-radius);
  border-bottom-left-radius: var(--bs-card-inner-border-radius);
}

.card-group > .card {
  margin-bottom: var(--bs-card-group-margin);
}
@media (min-width: 576px) {
  .card-group {
    display: flex;
    flex-flow: row wrap;
  }
  .card-group > .card {
    flex: 1 0 0%;
    margin-bottom: 0;
  }
  .card-group > .card + .card {
    margin-left: 0;
    border-left: 0;
  }
  .card-group > .card:not(:last-child) {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
  }
  .card-group > .card:not(:last-child) .card-img-top,
  .card-group > .card:not(:last-child) .card-header {
    border-top-right-radius: 0;
  }
  .card-group > .card:not(:last-child) .card-img-bottom,
  .card-group > .card:not(:last-child) .card-footer {
    border-bottom-right-radius: 0;
  }
  .card-group > .card:not(:first-child) {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
  }
  .card-group > .card:not(:first-child) .card-img-top,
  .card-group > .card:not(:first-child) .card-header {
    border-top-left-radius: 0;
  }
  .card-group > .card:not(:first-child) .card-img-bottom,
  .card-group > .card:not(:first-child) .card-footer {
    border-bottom-left-radius: 0;
  }
}

.accordion {
  --bs-accordion-color: var(--bs-body-color);
  --bs-accordion-bg: var(--bs-body-bg);
  --bs-accordion-transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, border-radius 0.15s ease;
  --bs-accordion-border-color: var(--bs-border-color);
  --bs-accordion-border-width: var(--bs-border-width);
  --bs-accordion-border-radius: var(--bs-border-radius);
  --bs-accordion-inner-border-radius: calc(var(--bs-border-radius) - (var(--bs-border-width)));
  --bs-accordion-btn-padding-x: 1.25rem;
  --bs-accordion-btn-padding-y: 1rem;
  --bs-accordion-btn-color: var(--bs-body-color);
  --bs-accordion-btn-bg: var(--bs-accordion-bg);
  --bs-accordion-btn-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23212529'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");
  --bs-accordion-btn-icon-width: 1.25rem;
  --bs-accordion-btn-icon-transform: rotate(-180deg);
  --bs-accordion-btn-icon-transition: transform 0.2s ease-in-out;
  --bs-accordion-btn-active-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23052c65'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");
  --bs-accordion-btn-focus-border-color: #86b7fe;
  --bs-accordion-btn-focus-box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
  --bs-accordion-body-padding-x: 1.25rem;
  --bs-accordion-body-padding-y: 1rem;
  --bs-accordion-active-color: var(--bs-primary-text-emphasis);
  --bs-accordion-active-bg: var(--bs-primary-bg-subtle);
}

.accordion-button {
  position: relative;
  display: flex;
  align-items: center;
  width: 100%;
  padding: var(--bs-accordion-btn-padding-y) var(--bs-accordion-btn-padding-x);
  font-size: 0.9rem;
  color: var(--bs-accordion-btn-color);
  text-align: left;
  background-color: var(--bs-accordion-btn-bg);
  border: 0;
  border-radius: 0;
  overflow-anchor: none;
  transition: var(--bs-accordion-transition);
}
@media (prefers-reduced-motion: reduce) {
  .accordion-button {
    transition: none;
  }
}
.accordion-button:not(.collapsed) {
  color: var(--bs-accordion-active-color);
  background-color: var(--bs-accordion-active-bg);
  box-shadow: inset 0 calc(-1 * var(--bs-accordion-border-width)) 0 var(--bs-accordion-border-color);
}
.accordion-button:not(.collapsed)::after {
  background-image: var(--bs-accordion-btn-active-icon);
  transform: var(--bs-accordion-btn-icon-transform);
}
.accordion-button::after {
  flex-shrink: 0;
  width: var(--bs-accordion-btn-icon-width);
  height: var(--bs-accordion-btn-icon-width);
  margin-left: auto;
  content: "";
  background-image: var(--bs-accordion-btn-icon);
  background-repeat: no-repeat;
  background-size: var(--bs-accordion-btn-icon-width);
  transition: var(--bs-accordion-btn-icon-transition);
}
@media (prefers-reduced-motion: reduce) {
  .accordion-button::after {
    transition: none;
  }
}
.accordion-button:hover {
  z-index: 2;
}
.accordion-button:focus {
  z-index: 3;
  border-color: var(--bs-accordion-btn-focus-border-color);
  outline: 0;
  box-shadow: var(--bs-accordion-btn-focus-box-shadow);
}

.accordion-header {
  margin-bottom: 0;
}

.accordion-item {
  color: var(--bs-accordion-color);
  background-color: var(--bs-accordion-bg);
  border: var(--bs-accordion-border-width) solid var(--bs-accordion-border-color);
}
.accordion-item:first-of-type {
  border-top-left-radius: var(--bs-accordion-border-radius);
  border-top-right-radius: var(--bs-accordion-border-radius);
}
.accordion-item:first-of-type .accordion-button {
  border-top-left-radius: var(--bs-accordion-inner-border-radius);
  border-top-right-radius: var(--bs-accordion-inner-border-radius);
}
.accordion-item:not(:first-of-type) {
  border-top: 0;
}
.accordion-item:last-of-type {
  border-bottom-right-radius: var(--bs-accordion-border-radius);
  border-bottom-left-radius: var(--bs-accordion-border-radius);
}
.accordion-item:last-of-type .accordion-button.collapsed {
  border-bottom-right-radius: var(--bs-accordion-inner-border-radius);
  border-bottom-left-radius: var(--bs-accordion-inner-border-radius);
}
.accordion-item:last-of-type .accordion-collapse {
  border-bottom-right-radius: var(--bs-accordion-border-radius);
  border-bottom-left-radius: var(--bs-accordion-border-radius);
}

.accordion-body {
  padding: var(--bs-accordion-body-padding-y) var(--bs-accordion-body-padding-x);
}

.accordion-flush .accordion-collapse {
  border-width: 0;
}
.accordion-flush .accordion-item {
  border-right: 0;
  border-left: 0;
  border-radius: 0;
}
.accordion-flush .accordion-item:first-child {
  border-top: 0;
}
.accordion-flush .accordion-item:last-child {
  border-bottom: 0;
}
.accordion-flush .accordion-item .accordion-button, .accordion-flush .accordion-item .accordion-button.collapsed {
  border-radius: 0;
}

[data-bs-theme=dark] .accordion-button::after {
  --bs-accordion-btn-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%236ea8fe'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");
  --bs-accordion-btn-active-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%236ea8fe'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");
}

.breadcrumb {
  --bs-breadcrumb-padding-x: 0;
  --bs-breadcrumb-padding-y: 0;
  --bs-breadcrumb-margin-bottom: 1rem;
  --bs-breadcrumb-bg: ;
  --bs-breadcrumb-border-radius: ;
  --bs-breadcrumb-divider-color: var(--bs-secondary-color);
  --bs-breadcrumb-item-padding-x: 0.5rem;
  --bs-breadcrumb-item-active-color: var(--bs-secondary-color);
  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);
}

.pagination {
  --bs-pagination-padding-x: 0.75rem;
  --bs-pagination-padding-y: 0.375rem;
  --bs-pagination-font-size: 0.9rem;
  --bs-pagination-color: var(--bs-link-color);
  --bs-pagination-bg: var(--bs-body-bg);
  --bs-pagination-border-width: var(--bs-border-width);
  --bs-pagination-border-color: var(--bs-border-color);
  --bs-pagination-border-radius: var(--bs-border-radius);
  --bs-pagination-hover-color: var(--bs-link-hover-color);
  --bs-pagination-hover-bg: var(--bs-tertiary-bg);
  --bs-pagination-hover-border-color: var(--bs-border-color);
  --bs-pagination-focus-color: var(--bs-link-hover-color);
  --bs-pagination-focus-bg: var(--bs-secondary-bg);
  --bs-pagination-focus-box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
  --bs-pagination-active-color: #fff;
  --bs-pagination-active-bg: #0d6efd;
  --bs-pagination-active-border-color: #0d6efd;
  --bs-pagination-disabled-color: var(--bs-secondary-color);
  --bs-pagination-disabled-bg: var(--bs-secondary-bg);
  --bs-pagination-disabled-border-color: var(--bs-border-color);
  display: flex;
  padding-left: 0;
  list-style: none;
}

.page-link {
  position: relative;
  display: block;
  padding: var(--bs-pagination-padding-y) var(--bs-pagination-padding-x);
  font-size: var(--bs-pagination-font-size);
  color: var(--bs-pagination-color);
  text-decoration: none;
  background-color: var(--bs-pagination-bg);
  border: var(--bs-pagination-border-width) solid var(--bs-pagination-border-color);
  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
  .page-link {
    transition: none;
  }
}
.page-link:hover {
  z-index: 2;
  color: var(--bs-pagination-hover-color);
  background-color: var(--bs-pagination-hover-bg);
  border-color: var(--bs-pagination-hover-border-color);
}
.page-link:focus {
  z-index: 3;
  color: var(--bs-pagination-focus-color);
  background-color: var(--bs-pagination-focus-bg);
  outline: 0;
  box-shadow: var(--bs-pagination-focus-box-shadow);
}
.page-link.active, .active > .page-link {
  z-index: 3;
  color: var(--bs-pagination-active-color);
  background-color: var(--bs-pagination-active-bg);
  border-color: var(--bs-pagination-active-border-color);
}
.page-link.disabled, .disabled > .page-link {
  color: var(--bs-pagination-disabled-color);
  pointer-events: none;
  background-color: var(--bs-pagination-disabled-bg);
  border-color: var(--bs-pagination-disabled-border-color);
}

.page-item:not(:first-child) .page-link {
  margin-left: calc(var(--bs-border-width) * -1);
}
.page-item:first-child .page-link {
  border-top-left-radius: var(--bs-pagination-border-radius);
  border-bottom-left-radius: var(--bs-pagination-border-radius);
}
.page-item:last-child .page-link {
  border-top-right-radius: var(--bs-pagination-border-radius);
  border-bottom-right-radius: var(--bs-pagination-border-radius);
}

.pagination-lg {
  --bs-pagination-padding-x: 1.5rem;
  --bs-pagination-padding-y: 0.75rem;
  --bs-pagination-font-size: 1.125rem;
  --bs-pagination-border-radius: var(--bs-border-radius-lg);
}

.pagination-sm {
  --bs-pagination-padding-x: 0.5rem;
  --bs-pagination-padding-y: 0.25rem;
  --bs-pagination-font-size: 0.7875rem;
  --bs-pagination-border-radius: var(--bs-border-radius-sm);
}

.badge {
  --bs-badge-padding-x: 0.65em;
  --bs-badge-padding-y: 0.35em;
  --bs-badge-font-size: 0.75em;
  --bs-badge-font-weight: 700;
  --bs-badge-color: #fff;
  --bs-badge-border-radius: var(--bs-border-radius);
  display: inline-block;
  padding: var(--bs-badge-padding-y) var(--bs-badge-padding-x);
  font-size: var(--bs-badge-font-size);
  font-weight: var(--bs-badge-font-weight);
  line-height: 1;
  color: var(--bs-badge-color);
  text-align: center;
  white-space: nowrap;
  vertical-align: baseline;
  border-radius: var(--bs-badge-border-radius);
}
.badge:empty {
  display: none;
}

.btn .badge {
  position: relative;
  top: -1px;
}

.alert {
  --bs-alert-bg: transparent;
  --bs-alert-padding-x: 1rem;
  --bs-alert-padding-y: 1rem;
  --bs-alert-margin-bottom: 1rem;
  --bs-alert-color: inherit;
  --bs-alert-border-color: transparent;
  --bs-alert-border: var(--bs-border-width) solid var(--bs-alert-border-color);
  --bs-alert-border-radius: var(--bs-border-radius);
  --bs-alert-link-color: inherit;
  position: relative;
  padding: var(--bs-alert-padding-y) var(--bs-alert-padding-x);
  margin-bottom: var(--bs-alert-margin-bottom);
  color: var(--bs-alert-color);
  background-color: var(--bs-alert-bg);
  border: var(--bs-alert-border);
  border-radius: var(--bs-alert-border-radius);
}

.alert-heading {
  color: inherit;
}

.alert-link {
  font-weight: 700;
  color: var(--bs-alert-link-color);
}

.alert-dismissible {
  padding-right: 3rem;
}
.alert-dismissible .btn-close {
  position: absolute;
  top: 0;
  right: 0;
  z-index: 2;
  padding: 1.25rem 1rem;
}

.alert-primary {
  --bs-alert-color: var(--bs-primary-text-emphasis);
  --bs-alert-bg: var(--bs-primary-bg-subtle);
  --bs-alert-border-color: var(--bs-primary-border-subtle);
  --bs-alert-link-color: var(--bs-primary-text-emphasis);
}

.alert-secondary {
  --bs-alert-color: var(--bs-secondary-text-emphasis);
  --bs-alert-bg: var(--bs-secondary-bg-subtle);
  --bs-alert-border-color: var(--bs-secondary-border-subtle);
  --bs-alert-link-color: var(--bs-secondary-text-emphasis);
}

.alert-success {
  --bs-alert-color: var(--bs-success-text-emphasis);
  --bs-alert-bg: var(--bs-success-bg-subtle);
  --bs-alert-border-color: var(--bs-success-border-subtle);
  --bs-alert-link-color: var(--bs-success-text-emphasis);
}

.alert-info {
  --bs-alert-color: var(--bs-info-text-emphasis);
  --bs-alert-bg: var(--bs-info-bg-subtle);
  --bs-alert-border-color: var(--bs-info-border-subtle);
  --bs-alert-link-color: var(--bs-info-text-emphasis);
}

.alert-warning {
  --bs-alert-color: var(--bs-warning-text-emphasis);
  --bs-alert-bg: var(--bs-warning-bg-subtle);
  --bs-alert-border-color: var(--bs-warning-border-subtle);
  --bs-alert-link-color: var(--bs-warning-text-emphasis);
}

.alert-danger {
  --bs-alert-color: var(--bs-danger-text-emphasis);
  --bs-alert-bg: var(--bs-danger-bg-subtle);
  --bs-alert-border-color: var(--bs-danger-border-subtle);
  --bs-alert-link-color: var(--bs-danger-text-emphasis);
}

.alert-light {
  --bs-alert-color: var(--bs-light-text-emphasis);
  --bs-alert-bg: var(--bs-light-bg-subtle);
  --bs-alert-border-color: var(--bs-light-border-subtle);
  --bs-alert-link-color: var(--bs-light-text-emphasis);
}

.alert-dark {
  --bs-alert-color: var(--bs-dark-text-emphasis);
  --bs-alert-bg: var(--bs-dark-bg-subtle);
  --bs-alert-border-color: var(--bs-dark-border-subtle);
  --bs-alert-link-color: var(--bs-dark-text-emphasis);
}

@keyframes progress-bar-stripes {
  0% {
    background-position-x: 1rem;
  }
}
.progress,
.progress-stacked {
  --bs-progress-height: 1rem;
  --bs-progress-font-size: 0.675rem;
  --bs-progress-bg: var(--bs-secondary-bg);
  --bs-progress-border-radius: var(--bs-border-radius);
  --bs-progress-box-shadow: var(--bs-box-shadow-inset);
  --bs-progress-bar-color: #fff;
  --bs-progress-bar-bg: #0d6efd;
  --bs-progress-bar-transition: width 0.6s ease;
  display: flex;
  height: var(--bs-progress-height);
  overflow: hidden;
  font-size: var(--bs-progress-font-size);
  background-color: var(--bs-progress-bg);
  border-radius: var(--bs-progress-border-radius);
}

.progress-bar {
  display: flex;
  flex-direction: column;
  justify-content: center;
  overflow: hidden;
  color: var(--bs-progress-bar-color);
  text-align: center;
  white-space: nowrap;
  background-color: var(--bs-progress-bar-bg);
  transition: var(--bs-progress-bar-transition);
}
@media (prefers-reduced-motion: reduce) {
  .progress-bar {
    transition: none;
  }
}

.progress-bar-striped {
  background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
  background-size: var(--bs-progress-height) var(--bs-progress-height);
}

.progress-stacked > .progress {
  overflow: visible;
}

.progress-stacked > .progress > .progress-bar {
  width: 100%;
}

.progress-bar-animated {
  animation: 1s linear infinite progress-bar-stripes;
}
@media (prefers-reduced-motion: reduce) {
  .progress-bar-animated {
    animation: none;
  }
}

.list-group {
  --bs-list-group-color: var(--bs-body-color);
  --bs-list-group-bg: var(--bs-body-bg);
  --bs-list-group-border-color: var(--bs-border-color);
  --bs-list-group-border-width: var(--bs-border-width);
  --bs-list-group-border-radius: var(--bs-border-radius);
  --bs-list-group-item-padding-x: 1rem;
  --bs-list-group-item-padding-y: 0.5rem;
  --bs-list-group-action-color: var(--bs-secondary-color);
  --bs-list-group-action-hover-color: var(--bs-emphasis-color);
  --bs-list-group-action-hover-bg: var(--bs-tertiary-bg);
  --bs-list-group-action-active-color: var(--bs-body-color);
  --bs-list-group-action-active-bg: var(--bs-secondary-bg);
  --bs-list-group-disabled-color: var(--bs-secondary-color);
  --bs-list-group-disabled-bg: var(--bs-body-bg);
  --bs-list-group-active-color: #fff;
  --bs-list-group-active-bg: #0d6efd;
  --bs-list-group-active-border-color: #0d6efd;
  display: flex;
  flex-direction: column;
  padding-left: 0;
  margin-bottom: 0;
  border-radius: var(--bs-list-group-border-radius);
}

.list-group-numbered {
  list-style-type: none;
  counter-reset: section;
}
.list-group-numbered > .list-group-item::before {
  content: counters(section, ".") ". ";
  counter-increment: section;
}

.list-group-item-action {
  width: 100%;
  color: var(--bs-list-group-action-color);
  text-align: inherit;
}
.list-group-item-action:hover, .list-group-item-action:focus {
  z-index: 1;
  color: var(--bs-list-group-action-hover-color);
  text-decoration: none;
  background-color: var(--bs-list-group-action-hover-bg);
}
.list-group-item-action:active {
  color: var(--bs-list-group-action-active-color);
  background-color: var(--bs-list-group-action-active-bg);
}

.list-group-item {
  position: relative;
  display: block;
  padding: var(--bs-list-group-item-padding-y) var(--bs-list-group-item-padding-x);
  color: var(--bs-list-group-color);
  text-decoration: none;
  background-color: var(--bs-list-group-bg);
  border: var(--bs-list-group-border-width) solid var(--bs-list-group-border-color);
}
.list-group-item:first-child {
  border-top-left-radius: inherit;
  border-top-right-radius: inherit;
}
.list-group-item:last-child {
  border-bottom-right-radius: inherit;
  border-bottom-left-radius: inherit;
}
.list-group-item.disabled, .list-group-item:disabled {
  color: var(--bs-list-group-disabled-color);
  pointer-events: none;
  background-color: var(--bs-list-group-disabled-bg);
}
.list-group-item.active {
  z-index: 2;
  color: var(--bs-list-group-active-color);
  background-color: var(--bs-list-group-active-bg);
  border-color: var(--bs-list-group-active-border-color);
}
.list-group-item + .list-group-item {
  border-top-width: 0;
}
.list-group-item + .list-group-item.active {
  margin-top: calc(-1 * var(--bs-list-group-border-width));
  border-top-width: var(--bs-list-group-border-width);
}

.list-group-horizontal {
  flex-direction: row;
}
.list-group-horizontal > .list-group-item:first-child:not(:last-child) {
  border-bottom-left-radius: var(--bs-list-group-border-radius);
  border-top-right-radius: 0;
}
.list-group-horizontal > .list-group-item:last-child:not(:first-child) {
  border-top-right-radius: var(--bs-list-group-border-radius);
  border-bottom-left-radius: 0;
}
.list-group-horizontal > .list-group-item.active {
  margin-top: 0;
}
.list-group-horizontal > .list-group-item + .list-group-item {
  border-top-width: var(--bs-list-group-border-width);
  border-left-width: 0;
}
.list-group-horizontal > .list-group-item + .list-group-item.active {
  margin-left: calc(-1 * var(--bs-list-group-border-width));
  border-left-width: var(--bs-list-group-border-width);
}

@media (min-width: 576px) {
  .list-group-horizontal-sm {
    flex-direction: row;
  }
  .list-group-horizontal-sm > .list-group-item:first-child:not(:last-child) {
    border-bottom-left-radius: var(--bs-list-group-border-radius);
    border-top-right-radius: 0;
  }
  .list-group-horizontal-sm > .list-group-item:last-child:not(:first-child) {
    border-top-right-radius: var(--bs-list-group-border-radius);
    border-bottom-left-radius: 0;
  }
  .list-group-horizontal-sm > .list-group-item.active {
    margin-top: 0;
  }
  .list-group-horizontal-sm > .list-group-item + .list-group-item {
    border-top-width: var(--bs-list-group-border-width);
    border-left-width: 0;
  }
  .list-group-horizontal-sm > .list-group-item + .list-group-item.active {
    margin-left: calc(-1 * var(--bs-list-group-border-width));
    border-left-width: var(--bs-list-group-border-width);
  }
}
@media (min-width: 768px) {
  .list-group-horizontal-md {
    flex-direction: row;
  }
  .list-group-horizontal-md > .list-group-item:first-child:not(:last-child) {
    border-bottom-left-radius: var(--bs-list-group-border-radius);
    border-top-right-radius: 0;
  }
  .list-group-horizontal-md > .list-group-item:last-child:not(:first-child) {
    border-top-right-radius: var(--bs-list-group-border-radius);
    border-bottom-left-radius: 0;
  }
  .list-group-horizontal-md > .list-group-item.active {
    margin-top: 0;
  }
  .list-group-horizontal-md > .list-group-item + .list-group-item {
    border-top-width: var(--bs-list-group-border-width);
    border-left-width: 0;
  }
  .list-group-horizontal-md > .list-group-item + .list-group-item.active {
    margin-left: calc(-1 * var(--bs-list-group-border-width));
    border-left-width: var(--bs-list-group-border-width);
  }
}
@media (min-width: 992px) {
  .list-group-horizontal-lg {
    flex-direction: row;
  }
  .list-group-horizontal-lg > .list-group-item:first-child:not(:last-child) {
    border-bottom-left-radius: var(--bs-list-group-border-radius);
    border-top-right-radius: 0;
  }
  .list-group-horizontal-lg > .list-group-item:last-child:not(:first-child) {
    border-top-right-radius: var(--bs-list-group-border-radius);
    border-bottom-left-radius: 0;
  }
  .list-group-horizontal-lg > .list-group-item.active {
    margin-top: 0;
  }
  .list-group-horizontal-lg > .list-group-item + .list-group-item {
    border-top-width: var(--bs-list-group-border-width);
    border-left-width: 0;
  }
  .list-group-horizontal-lg > .list-group-item + .list-group-item.active {
    margin-left: calc(-1 * var(--bs-list-group-border-width));
    border-left-width: var(--bs-list-group-border-width);
  }
}
@media (min-width: 1200px) {
  .list-group-horizontal-xl {
    flex-direction: row;
  }
  .list-group-horizontal-xl > .list-group-item:first-child:not(:last-child) {
    border-bottom-left-radius: var(--bs-list-group-border-radius);
    border-top-right-radius: 0;
  }
  .list-group-horizontal-xl > .list-group-item:last-child:not(:first-child) {
    border-top-right-radius: var(--bs-list-group-border-radius);
    border-bottom-left-radius: 0;
  }
  .list-group-horizontal-xl > .list-group-item.active {
    margin-top: 0;
  }
  .list-group-horizontal-xl > .list-group-item + .list-group-item {
    border-top-width: var(--bs-list-group-border-width);
    border-left-width: 0;
  }
  .list-group-horizontal-xl > .list-group-item + .list-group-item.active {
    margin-left: calc(-1 * var(--bs-list-group-border-width));
    border-left-width: var(--bs-list-group-border-width);
  }
}
@media (min-width: 1400px) {
  .list-group-horizontal-xxl {
    flex-direction: row;
  }
  .list-group-horizontal-xxl > .list-group-item:first-child:not(:last-child) {
    border-bottom-left-radius: var(--bs-list-group-border-radius);
    border-top-right-radius: 0;
  }
  .list-group-horizontal-xxl > .list-group-item:last-child:not(:first-child) {
    border-top-right-radius: var(--bs-list-group-border-radius);
    border-bottom-left-radius: 0;
  }
  .list-group-horizontal-xxl > .list-group-item.active {
    margin-top: 0;
  }
  .list-group-horizontal-xxl > .list-group-item + .list-group-item {
    border-top-width: var(--bs-list-group-border-width);
    border-left-width: 0;
  }
  .list-group-horizontal-xxl > .list-group-item + .list-group-item.active {
    margin-left: calc(-1 * var(--bs-list-group-border-width));
    border-left-width: var(--bs-list-group-border-width);
  }
}
.list-group-flush {
  border-radius: 0;
}
.list-group-flush > .list-group-item {
  border-width: 0 0 var(--bs-list-group-border-width);
}
.list-group-flush > .list-group-item:last-child {
  border-bottom-width: 0;
}

.list-group-item-primary {
  --bs-list-group-color: var(--bs-primary-text-emphasis);
  --bs-list-group-bg: var(--bs-primary-bg-subtle);
  --bs-list-group-border-color: var(--bs-primary-border-subtle);
  --bs-list-group-action-hover-color: var(--bs-emphasis-color);
  --bs-list-group-action-hover-bg: var(--bs-primary-border-subtle);
  --bs-list-group-action-active-color: var(--bs-emphasis-color);
  --bs-list-group-action-active-bg: var(--bs-primary-border-subtle);
  --bs-list-group-active-color: var(--bs-primary-bg-subtle);
  --bs-list-group-active-bg: var(--bs-primary-text-emphasis);
  --bs-list-group-active-border-color: var(--bs-primary-text-emphasis);
}

.list-group-item-secondary {
  --bs-list-group-color: var(--bs-secondary-text-emphasis);
  --bs-list-group-bg: var(--bs-secondary-bg-subtle);
  --bs-list-group-border-color: var(--bs-secondary-border-subtle);
  --bs-list-group-action-hover-color: var(--bs-emphasis-color);
  --bs-list-group-action-hover-bg: var(--bs-secondary-border-subtle);
  --bs-list-group-action-active-color: var(--bs-emphasis-color);
  --bs-list-group-action-active-bg: var(--bs-secondary-border-subtle);
  --bs-list-group-active-color: var(--bs-secondary-bg-subtle);
  --bs-list-group-active-bg: var(--bs-secondary-text-emphasis);
  --bs-list-group-active-border-color: var(--bs-secondary-text-emphasis);
}

.list-group-item-success {
  --bs-list-group-color: var(--bs-success-text-emphasis);
  --bs-list-group-bg: var(--bs-success-bg-subtle);
  --bs-list-group-border-color: var(--bs-success-border-subtle);
  --bs-list-group-action-hover-color: var(--bs-emphasis-color);
  --bs-list-group-action-hover-bg: var(--bs-success-border-subtle);
  --bs-list-group-action-active-color: var(--bs-emphasis-color);
  --bs-list-group-action-active-bg: var(--bs-success-border-subtle);
  --bs-list-group-active-color: var(--bs-success-bg-subtle);
  --bs-list-group-active-bg: var(--bs-success-text-emphasis);
  --bs-list-group-active-border-color: var(--bs-success-text-emphasis);
}

.list-group-item-info {
  --bs-list-group-color: var(--bs-info-text-emphasis);
  --bs-list-group-bg: var(--bs-info-bg-subtle);
  --bs-list-group-border-color: var(--bs-info-border-subtle);
  --bs-list-group-action-hover-color: var(--bs-emphasis-color);
  --bs-list-group-action-hover-bg: var(--bs-info-border-subtle);
  --bs-list-group-action-active-color: var(--bs-emphasis-color);
  --bs-list-group-action-active-bg: var(--bs-info-border-subtle);
  --bs-list-group-active-color: var(--bs-info-bg-subtle);
  --bs-list-group-active-bg: var(--bs-info-text-emphasis);
  --bs-list-group-active-border-color: var(--bs-info-text-emphasis);
}

.list-group-item-warning {
  --bs-list-group-color: var(--bs-warning-text-emphasis);
  --bs-list-group-bg: var(--bs-warning-bg-subtle);
  --bs-list-group-border-color: var(--bs-warning-border-subtle);
  --bs-list-group-action-hover-color: var(--bs-emphasis-color);
  --bs-list-group-action-hover-bg: var(--bs-warning-border-subtle);
  --bs-list-group-action-active-color: var(--bs-emphasis-color);
  --bs-list-group-action-active-bg: var(--bs-warning-border-subtle);
  --bs-list-group-active-color: var(--bs-warning-bg-subtle);
  --bs-list-group-active-bg: var(--bs-warning-text-emphasis);
  --bs-list-group-active-border-color: var(--bs-warning-text-emphasis);
}

.list-group-item-danger {
  --bs-list-group-color: var(--bs-danger-text-emphasis);
  --bs-list-group-bg: var(--bs-danger-bg-subtle);
  --bs-list-group-border-color: var(--bs-danger-border-subtle);
  --bs-list-group-action-hover-color: var(--bs-emphasis-color);
  --bs-list-group-action-hover-bg: var(--bs-danger-border-subtle);
  --bs-list-group-action-active-color: var(--bs-emphasis-color);
  --bs-list-group-action-active-bg: var(--bs-danger-border-subtle);
  --bs-list-group-active-color: var(--bs-danger-bg-subtle);
  --bs-list-group-active-bg: var(--bs-danger-text-emphasis);
  --bs-list-group-active-border-color: var(--bs-danger-text-emphasis);
}

.list-group-item-light {
  --bs-list-group-color: var(--bs-light-text-emphasis);
  --bs-list-group-bg: var(--bs-light-bg-subtle);
  --bs-list-group-border-color: var(--bs-light-border-subtle);
  --bs-list-group-action-hover-color: var(--bs-emphasis-color);
  --bs-list-group-action-hover-bg: var(--bs-light-border-subtle);
  --bs-list-group-action-active-color: var(--bs-emphasis-color);
  --bs-list-group-action-active-bg: var(--bs-light-border-subtle);
  --bs-list-group-active-color: var(--bs-light-bg-subtle);
  --bs-list-group-active-bg: var(--bs-light-text-emphasis);
  --bs-list-group-active-border-color: var(--bs-light-text-emphasis);
}

.list-group-item-dark {
  --bs-list-group-color: var(--bs-dark-text-emphasis);
  --bs-list-group-bg: var(--bs-dark-bg-subtle);
  --bs-list-group-border-color: var(--bs-dark-border-subtle);
  --bs-list-group-action-hover-color: var(--bs-emphasis-color);
  --bs-list-group-action-hover-bg: var(--bs-dark-border-subtle);
  --bs-list-group-action-active-color: var(--bs-emphasis-color);
  --bs-list-group-action-active-bg: var(--bs-dark-border-subtle);
  --bs-list-group-active-color: var(--bs-dark-bg-subtle);
  --bs-list-group-active-bg: var(--bs-dark-text-emphasis);
  --bs-list-group-active-border-color: var(--bs-dark-text-emphasis);
}

.btn-close {
  --bs-btn-close-color: #000;
  --bs-btn-close-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23000'%3e%3cpath d='M.293.293a1 1 0 0 1 1.414 0L8 6.586 14.293.293a1 1 0 1 1 1.414 1.414L9.414 8l6.293 6.293a1 1 0 0 1-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 0 1-1.414-1.414L6.586 8 .293 1.707a1 1 0 0 1 0-1.414z'/%3e%3c/svg%3e");
  --bs-btn-close-opacity: 0.5;
  --bs-btn-close-hover-opacity: 0.75;
  --bs-btn-close-focus-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
  --bs-btn-close-focus-opacity: 1;
  --bs-btn-close-disabled-opacity: 0.25;
  --bs-btn-close-white-filter: invert(1) grayscale(100%) brightness(200%);
  box-sizing: content-box;
  width: 1em;
  height: 1em;
  padding: 0.25em 0.25em;
  color: var(--bs-btn-close-color);
  background: transparent var(--bs-btn-close-bg) center/1em auto no-repeat;
  border: 0;
  border-radius: 15px;
  opacity: var(--bs-btn-close-opacity);
}
.btn-close:hover {
  color: var(--bs-btn-close-color);
  text-decoration: none;
  opacity: var(--bs-btn-close-hover-opacity);
}
.btn-close:focus {
  outline: 0;
  box-shadow: var(--bs-btn-close-focus-shadow);
  opacity: var(--bs-btn-close-focus-opacity);
}
.btn-close:disabled, .btn-close.disabled {
  pointer-events: none;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  opacity: var(--bs-btn-close-disabled-opacity);
}

.btn-close-white {
  filter: var(--bs-btn-close-white-filter);
}

[data-bs-theme=dark] .btn-close {
  filter: var(--bs-btn-close-white-filter);
}

.toast {
  --bs-toast-zindex: 1090;
  --bs-toast-padding-x: 0.75rem;
  --bs-toast-padding-y: 0.5rem;
  --bs-toast-spacing: 1.5rem;
  --bs-toast-max-width: 350px;
  --bs-toast-font-size: 0.875rem;
  --bs-toast-color: ;
  --bs-toast-bg: rgba(var(--bs-body-bg-rgb), 0.85);
  --bs-toast-border-width: var(--bs-border-width);
  --bs-toast-border-color: var(--bs-border-color-translucent);
  --bs-toast-border-radius: var(--bs-border-radius);
  --bs-toast-box-shadow: var(--bs-box-shadow);
  --bs-toast-header-color: var(--bs-secondary-color);
  --bs-toast-header-bg: rgba(var(--bs-body-bg-rgb), 0.85);
  --bs-toast-header-border-color: var(--bs-border-color-translucent);
  width: var(--bs-toast-max-width);
  max-width: 100%;
  font-size: var(--bs-toast-font-size);
  color: var(--bs-toast-color);
  pointer-events: auto;
  background-color: var(--bs-toast-bg);
  background-clip: padding-box;
  border: var(--bs-toast-border-width) solid var(--bs-toast-border-color);
  box-shadow: var(--bs-toast-box-shadow);
  border-radius: var(--bs-toast-border-radius);
}
.toast.showing {
  opacity: 0;
}
.toast:not(.show) {
  display: none;
}

.toast-container {
  --bs-toast-zindex: 1090;
  position: absolute;
  z-index: var(--bs-toast-zindex);
  width: -moz-max-content;
  width: max-content;
  max-width: 100%;
  pointer-events: none;
}
.toast-container > :not(:last-child) {
  margin-bottom: var(--bs-toast-spacing);
}

.toast-header {
  display: flex;
  align-items: center;
  padding: var(--bs-toast-padding-y) var(--bs-toast-padding-x);
  color: var(--bs-toast-header-color);
  background-color: var(--bs-toast-header-bg);
  background-clip: padding-box;
  border-bottom: var(--bs-toast-border-width) solid var(--bs-toast-header-border-color);
  border-top-left-radius: calc(var(--bs-toast-border-radius) - var(--bs-toast-border-width));
  border-top-right-radius: calc(var(--bs-toast-border-radius) - var(--bs-toast-border-width));
}
.toast-header .btn-close {
  margin-right: calc(-0.5 * var(--bs-toast-padding-x));
  margin-left: var(--bs-toast-padding-x);
}

.toast-body {
  padding: var(--bs-toast-padding-x);
  word-wrap: break-word;
}

.modal {
  --bs-modal-zindex: 1055;
  --bs-modal-width: 500px;
  --bs-modal-padding: 1rem;
  --bs-modal-margin: 0.5rem;
  --bs-modal-color: ;
  --bs-modal-bg: var(--bs-body-bg);
  --bs-modal-border-color: var(--bs-border-color-translucent);
  --bs-modal-border-width: var(--bs-border-width);
  --bs-modal-border-radius: var(--bs-border-radius-lg);
  --bs-modal-box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075);
  --bs-modal-inner-border-radius: calc(var(--bs-border-radius-lg) - (var(--bs-border-width)));
  --bs-modal-header-padding-x: 1rem;
  --bs-modal-header-padding-y: 1rem;
  --bs-modal-header-padding: 1rem 1rem;
  --bs-modal-header-border-color: var(--bs-border-color);
  --bs-modal-header-border-width: var(--bs-border-width);
  --bs-modal-title-line-height: 1.6;
  --bs-modal-footer-gap: 0.5rem;
  --bs-modal-footer-bg: ;
  --bs-modal-footer-border-color: var(--bs-border-color);
  --bs-modal-footer-border-width: var(--bs-border-width);
  position: fixed;
  top: 0;
  left: 0;
  z-index: var(--bs-modal-zindex);
  display: none;
  width: 100%;
  height: 100%;
  overflow-x: hidden;
  overflow-y: auto;
  outline: 0;
}

.modal-dialog {
  position: relative;
  width: auto;
  margin: var(--bs-modal-margin);
  pointer-events: none;
}
.modal.fade .modal-dialog {
  transition: transform 0.3s ease-out;
  transform: translate(0, -50px);
}
@media (prefers-reduced-motion: reduce) {
  .modal.fade .modal-dialog {
    transition: none;
  }
}
.modal.show .modal-dialog {
  transform: none;
}
.modal.modal-static .modal-dialog {
  transform: scale(1.02);
}

.modal-dialog-scrollable {
  height: calc(100% - var(--bs-modal-margin) * 2);
}
.modal-dialog-scrollable .modal-content {
  max-height: 100%;
  overflow: hidden;
}
.modal-dialog-scrollable .modal-body {
  overflow-y: auto;
}

.modal-dialog-centered {
  display: flex;
  align-items: center;
  min-height: calc(100% - var(--bs-modal-margin) * 2);
}

.modal-content {
  position: relative;
  display: flex;
  flex-direction: column;
  width: 100%;
  color: var(--bs-modal-color);
  pointer-events: auto;
  background-color: var(--bs-modal-bg);
  background-clip: padding-box;
  border: var(--bs-modal-border-width) solid var(--bs-modal-border-color);
  border-radius: var(--bs-modal-border-radius);
  outline: 0;
}

.modal-backdrop {
  --bs-backdrop-zindex: 1050;
  --bs-backdrop-bg: #000;
  --bs-backdrop-opacity: 0.5;
  position: fixed;
  top: 0;
  left: 0;
  z-index: var(--bs-backdrop-zindex);
  width: 100vw;
  height: 100vh;
  background-color: var(--bs-backdrop-bg);
}
.modal-backdrop.fade {
  opacity: 0;
}
.modal-backdrop.show {
  opacity: var(--bs-backdrop-opacity);
}

.modal-header {
  display: flex;
  flex-shrink: 0;
  align-items: center;
  justify-content: space-between;
  padding: var(--bs-modal-header-padding);
  border-bottom: var(--bs-modal-header-border-width) solid var(--bs-modal-header-border-color);
  border-top-left-radius: var(--bs-modal-inner-border-radius);
  border-top-right-radius: var(--bs-modal-inner-border-radius);
}
.modal-header .btn-close {
  padding: calc(var(--bs-modal-header-padding-y) * 0.5) calc(var(--bs-modal-header-padding-x) * 0.5);
  margin: calc(-0.5 * var(--bs-modal-header-padding-y)) calc(-0.5 * var(--bs-modal-header-padding-x)) calc(-0.5 * var(--bs-modal-header-padding-y)) auto;
}

.modal-title {
  margin-bottom: 0;
  line-height: var(--bs-modal-title-line-height);
}

.modal-body {
  position: relative;
  flex: 1 1 auto;
  padding: var(--bs-modal-padding);
}

.modal-footer {
  display: flex;
  flex-shrink: 0;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-end;
  padding: calc(var(--bs-modal-padding) - var(--bs-modal-footer-gap) * 0.5);
  background-color: var(--bs-modal-footer-bg);
  border-top: var(--bs-modal-footer-border-width) solid var(--bs-modal-footer-border-color);
  border-bottom-right-radius: var(--bs-modal-inner-border-radius);
  border-bottom-left-radius: var(--bs-modal-inner-border-radius);
}
.modal-footer > * {
  margin: calc(var(--bs-modal-footer-gap) * 0.5);
}

@media (min-width: 576px) {
  .modal {
    --bs-modal-margin: 1.75rem;
    --bs-modal-box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
  }
  .modal-dialog {
    max-width: var(--bs-modal-width);
    margin-right: auto;
    margin-left: auto;
  }
  .modal-sm {
    --bs-modal-width: 300px;
  }
}
@media (min-width: 992px) {
  .modal-lg,
  .modal-xl {
    --bs-modal-width: 800px;
  }
}
@media (min-width: 1200px) {
  .modal-xl {
    --bs-modal-width: 1140px;
  }
}
.modal-fullscreen {
  width: 100vw;
  max-width: none;
  height: 100%;
  margin: 0;
}
.modal-fullscreen .modal-content {
  height: 100%;
  border: 0;
  border-radius: 0;
}
.modal-fullscreen .modal-header,
.modal-fullscreen .modal-footer {
  border-radius: 0;
}
.modal-fullscreen .modal-body {
  overflow-y: auto;
}

@media (max-width: 575.98px) {
  .modal-fullscreen-sm-down {
    width: 100vw;
    max-width: none;
    height: 100%;
    margin: 0;
  }
  .modal-fullscreen-sm-down .modal-content {
    height: 100%;
    border: 0;
    border-radius: 0;
  }
  .modal-fullscreen-sm-down .modal-header,
  .modal-fullscreen-sm-down .modal-footer {
    border-radius: 0;
  }
  .modal-fullscreen-sm-down .modal-body {
    overflow-y: auto;
  }
}
@media (max-width: 767.98px) {
  .modal-fullscreen-md-down {
    width: 100vw;
    max-width: none;
    height: 100%;
    margin: 0;
  }
  .modal-fullscreen-md-down .modal-content {
    height: 100%;
    border: 0;
    border-radius: 0;
  }
  .modal-fullscreen-md-down .modal-header,
  .modal-fullscreen-md-down .modal-footer {
    border-radius: 0;
  }
  .modal-fullscreen-md-down .modal-body {
    overflow-y: auto;
  }
}
@media (max-width: 991.98px) {
  .modal-fullscreen-lg-down {
    width: 100vw;
    max-width: none;
    height: 100%;
    margin: 0;
  }
  .modal-fullscreen-lg-down .modal-content {
    height: 100%;
    border: 0;
    border-radius: 0;
  }
  .modal-fullscreen-lg-down .modal-header,
  .modal-fullscreen-lg-down .modal-footer {
    border-radius: 0;
  }
  .modal-fullscreen-lg-down .modal-body {
    overflow-y: auto;
  }
}
@media (max-width: 1199.98px) {
  .modal-fullscreen-xl-down {
    width: 100vw;
    max-width: none;
    height: 100%;
    margin: 0;
  }
  .modal-fullscreen-xl-down .modal-content {
    height: 100%;
    border: 0;
    border-radius: 0;
  }
  .modal-fullscreen-xl-down .modal-header,
  .modal-fullscreen-xl-down .modal-footer {
    border-radius: 0;
  }
  .modal-fullscreen-xl-down .modal-body {
    overflow-y: auto;
  }
}
@media (max-width: 1399.98px) {
  .modal-fullscreen-xxl-down {
    width: 100vw;
    max-width: none;
    height: 100%;
    margin: 0;
  }
  .modal-fullscreen-xxl-down .modal-content {
    height: 100%;
    border: 0;
    border-radius: 0;
  }
  .modal-fullscreen-xxl-down .modal-header,
  .modal-fullscreen-xxl-down .modal-footer {
    border-radius: 0;
  }
  .modal-fullscreen-xxl-down .modal-body {
    overflow-y: auto;
  }
}
.tooltip {
  --bs-tooltip-zindex: 1080;
  --bs-tooltip-max-width: 200px;
  --bs-tooltip-padding-x: 0.5rem;
  --bs-tooltip-padding-y: 0.25rem;
  --bs-tooltip-margin: ;
  --bs-tooltip-font-size: 0.7875rem;
  --bs-tooltip-color: var(--bs-body-bg);
  --bs-tooltip-bg: var(--bs-emphasis-color);
  --bs-tooltip-border-radius: var(--bs-border-radius);
  --bs-tooltip-opacity: 0.9;
  --bs-tooltip-arrow-width: 0.8rem;
  --bs-tooltip-arrow-height: 0.4rem;
  z-index: var(--bs-tooltip-zindex);
  display: block;
  margin: var(--bs-tooltip-margin);
  font-family: var(--bs-font-sans-serif);
  font-style: normal;
  font-weight: 400;
  line-height: 1.6;
  text-align: left;
  text-align: start;
  text-decoration: none;
  text-shadow: none;
  text-transform: none;
  letter-spacing: normal;
  word-break: normal;
  white-space: normal;
  word-spacing: normal;
  line-break: auto;
  font-size: var(--bs-tooltip-font-size);
  word-wrap: break-word;
  opacity: 0;
}
.tooltip.show {
  opacity: var(--bs-tooltip-opacity);
}
.tooltip .tooltip-arrow {
  display: block;
  width: var(--bs-tooltip-arrow-width);
  height: var(--bs-tooltip-arrow-height);
}
.tooltip .tooltip-arrow::before {
  position: absolute;
  content: "";
  border-color: transparent;
  border-style: solid;
}

.bs-tooltip-top .tooltip-arrow, .bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow {
  bottom: calc(-1 * var(--bs-tooltip-arrow-height));
}
.bs-tooltip-top .tooltip-arrow::before, .bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow::before {
  top: -1px;
  border-width: var(--bs-tooltip-arrow-height) calc(var(--bs-tooltip-arrow-width) * 0.5) 0;
  border-top-color: var(--bs-tooltip-bg);
}

/* rtl:begin:ignore */
.bs-tooltip-end .tooltip-arrow, .bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow {
  left: calc(-1 * var(--bs-tooltip-arrow-height));
  width: var(--bs-tooltip-arrow-height);
  height: var(--bs-tooltip-arrow-width);
}
.bs-tooltip-end .tooltip-arrow::before, .bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow::before {
  right: -1px;
  border-width: calc(var(--bs-tooltip-arrow-width) * 0.5) var(--bs-tooltip-arrow-height) calc(var(--bs-tooltip-arrow-width) * 0.5) 0;
  border-right-color: var(--bs-tooltip-bg);
}

/* rtl:end:ignore */
.bs-tooltip-bottom .tooltip-arrow, .bs-tooltip-auto[data-popper-placement^=bottom] .tooltip-arrow {
  top: calc(-1 * var(--bs-tooltip-arrow-height));
}
.bs-tooltip-bottom .tooltip-arrow::before, .bs-tooltip-auto[data-popper-placement^=bottom] .tooltip-arrow::before {
  bottom: -1px;
  border-width: 0 calc(var(--bs-tooltip-arrow-width) * 0.5) var(--bs-tooltip-arrow-height);
  border-bottom-color: var(--bs-tooltip-bg);
}

/* rtl:begin:ignore */
.bs-tooltip-start .tooltip-arrow, .bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow {
  right: calc(-1 * var(--bs-tooltip-arrow-height));
  width: var(--bs-tooltip-arrow-height);
  height: var(--bs-tooltip-arrow-width);
}
.bs-tooltip-start .tooltip-arrow::before, .bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow::before {
  left: -1px;
  border-width: calc(var(--bs-tooltip-arrow-width) * 0.5) 0 calc(var(--bs-tooltip-arrow-width) * 0.5) var(--bs-tooltip-arrow-height);
  border-left-color: var(--bs-tooltip-bg);
}

/* rtl:end:ignore */
.tooltip-inner {
  max-width: var(--bs-tooltip-max-width);
  padding: var(--bs-tooltip-padding-y) var(--bs-tooltip-padding-x);
  color: var(--bs-tooltip-color);
  text-align: center;
  background-color: var(--bs-tooltip-bg);
  border-radius: var(--bs-tooltip-border-radius);
}

.popover {
  --bs-popover-zindex: 1070;
  --bs-popover-max-width: 276px;
  --bs-popover-font-size: 0.7875rem;
  --bs-popover-bg: var(--bs-body-bg);
  --bs-popover-border-width: var(--bs-border-width);
  --bs-popover-border-color: var(--bs-border-color-translucent);
  --bs-popover-border-radius: var(--bs-border-radius-lg);
  --bs-popover-inner-border-radius: calc(var(--bs-border-radius-lg) - var(--bs-border-width));
  --bs-popover-box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
  --bs-popover-header-padding-x: 1rem;
  --bs-popover-header-padding-y: 0.5rem;
  --bs-popover-header-font-size: 0.9rem;
  --bs-popover-header-color: inherit;
  --bs-popover-header-bg: var(--bs-secondary-bg);
  --bs-popover-body-padding-x: 1rem;
  --bs-popover-body-padding-y: 1rem;
  --bs-popover-body-color: var(--bs-body-color);
  --bs-popover-arrow-width: 1rem;
  --bs-popover-arrow-height: 0.5rem;
  --bs-popover-arrow-border: var(--bs-popover-border-color);
  z-index: var(--bs-popover-zindex);
  display: block;
  max-width: var(--bs-popover-max-width);
  font-family: var(--bs-font-sans-serif);
  font-style: normal;
  font-weight: 400;
  line-height: 1.6;
  text-align: left;
  text-align: start;
  text-decoration: none;
  text-shadow: none;
  text-transform: none;
  letter-spacing: normal;
  word-break: normal;
  white-space: normal;
  word-spacing: normal;
  line-break: auto;
  font-size: var(--bs-popover-font-size);
  word-wrap: break-word;
  background-color: var(--bs-popover-bg);
  background-clip: padding-box;
  border: var(--bs-popover-border-width) solid var(--bs-popover-border-color);
  border-radius: var(--bs-popover-border-radius);
}
.popover .popover-arrow {
  display: block;
  width: var(--bs-popover-arrow-width);
  height: var(--bs-popover-arrow-height);
}
.popover .popover-arrow::before, .popover .popover-arrow::after {
  position: absolute;
  display: block;
  content: "";
  border-color: transparent;
  border-style: solid;
  border-width: 0;
}

.bs-popover-top > .popover-arrow, .bs-popover-auto[data-popper-placement^=top] > .popover-arrow {
  bottom: calc(-1 * (var(--bs-popover-arrow-height)) - var(--bs-popover-border-width));
}
.bs-popover-top > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=top] > .popover-arrow::before, .bs-popover-top > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=top] > .popover-arrow::after {
  border-width: var(--bs-popover-arrow-height) calc(var(--bs-popover-arrow-width) * 0.5) 0;
}
.bs-popover-top > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=top] > .popover-arrow::before {
  bottom: 0;
  border-top-color: var(--bs-popover-arrow-border);
}
.bs-popover-top > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=top] > .popover-arrow::after {
  bottom: var(--bs-popover-border-width);
  border-top-color: var(--bs-popover-bg);
}

/* rtl:begin:ignore */
.bs-popover-end > .popover-arrow, .bs-popover-auto[data-popper-placement^=right] > .popover-arrow {
  left: calc(-1 * (var(--bs-popover-arrow-height)) - var(--bs-popover-border-width));
  width: var(--bs-popover-arrow-height);
  height: var(--bs-popover-arrow-width);
}
.bs-popover-end > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=right] > .popover-arrow::before, .bs-popover-end > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=right] > .popover-arrow::after {
  border-width: calc(var(--bs-popover-arrow-width) * 0.5) var(--bs-popover-arrow-height) calc(var(--bs-popover-arrow-width) * 0.5) 0;
}
.bs-popover-end > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=right] > .popover-arrow::before {
  left: 0;
  border-right-color: var(--bs-popover-arrow-border);
}
.bs-popover-end > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=right] > .popover-arrow::after {
  left: var(--bs-popover-border-width);
  border-right-color: var(--bs-popover-bg);
}

/* rtl:end:ignore */
.bs-popover-bottom > .popover-arrow, .bs-popover-auto[data-popper-placement^=bottom] > .popover-arrow {
  top: calc(-1 * (var(--bs-popover-arrow-height)) - var(--bs-popover-border-width));
}
.bs-popover-bottom > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=bottom] > .popover-arrow::before, .bs-popover-bottom > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=bottom] > .popover-arrow::after {
  border-width: 0 calc(var(--bs-popover-arrow-width) * 0.5) var(--bs-popover-arrow-height);
}
.bs-popover-bottom > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=bottom] > .popover-arrow::before {
  top: 0;
  border-bottom-color: var(--bs-popover-arrow-border);
}
.bs-popover-bottom > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=bottom] > .popover-arrow::after {
  top: var(--bs-popover-border-width);
  border-bottom-color: var(--bs-popover-bg);
}
.bs-popover-bottom .popover-header::before, .bs-popover-auto[data-popper-placement^=bottom] .popover-header::before {
  position: absolute;
  top: 0;
  left: 50%;
  display: block;
  width: var(--bs-popover-arrow-width);
  margin-left: calc(-0.5 * var(--bs-popover-arrow-width));
  content: "";
  border-bottom: var(--bs-popover-border-width) solid var(--bs-popover-header-bg);
}

/* rtl:begin:ignore */
.bs-popover-start > .popover-arrow, .bs-popover-auto[data-popper-placement^=left] > .popover-arrow {
  right: calc(-1 * (var(--bs-popover-arrow-height)) - var(--bs-popover-border-width));
  width: var(--bs-popover-arrow-height);
  height: var(--bs-popover-arrow-width);
}
.bs-popover-start > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=left] > .popover-arrow::before, .bs-popover-start > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=left] > .popover-arrow::after {
  border-width: calc(var(--bs-popover-arrow-width) * 0.5) 0 calc(var(--bs-popover-arrow-width) * 0.5) var(--bs-popover-arrow-height);
}
.bs-popover-start > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=left] > .popover-arrow::before {
  right: 0;
  border-left-color: var(--bs-popover-arrow-border);
}
.bs-popover-start > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=left] > .popover-arrow::after {
  right: var(--bs-popover-border-width);
  border-left-color: var(--bs-popover-bg);
}

/* rtl:end:ignore */
.popover-header {
  padding: var(--bs-popover-header-padding-y) var(--bs-popover-header-padding-x);
  margin-bottom: 0;
  font-size: var(--bs-popover-header-font-size);
  color: var(--bs-popover-header-color);
  background-color: var(--bs-popover-header-bg);
  border-bottom: var(--bs-popover-border-width) solid var(--bs-popover-border-color);
  border-top-left-radius: var(--bs-popover-inner-border-radius);
  border-top-right-radius: var(--bs-popover-inner-border-radius);
}
.popover-header:empty {
  display: none;
}

.popover-body {
  padding: var(--bs-popover-body-padding-y) var(--bs-popover-body-padding-x);
  color: var(--bs-popover-body-color);
}

.carousel {
  position: relative;
}

.carousel.pointer-event {
  touch-action: pan-y;
}

.carousel-inner {
  position: relative;
  width: 100%;
  overflow: hidden;
}
.carousel-inner::after {
  display: block;
  clear: both;
  content: "";
}

.carousel-item {
  position: relative;
  display: none;
  float: left;
  width: 100%;
  margin-right: -100%;
  backface-visibility: hidden;
  transition: transform 0.6s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
  .carousel-item {
    transition: none;
  }
}

.carousel-item.active,
.carousel-item-next,
.carousel-item-prev {
  display: block;
}

.carousel-item-next:not(.carousel-item-start),
.active.carousel-item-end {
  transform: translateX(100%);
}

.carousel-item-prev:not(.carousel-item-end),
.active.carousel-item-start {
  transform: translateX(-100%);
}

.carousel-fade .carousel-item {
  opacity: 0;
  transition-property: opacity;
  transform: none;
}
.carousel-fade .carousel-item.active,
.carousel-fade .carousel-item-next.carousel-item-start,
.carousel-fade .carousel-item-prev.carousel-item-end {
  z-index: 1;
  opacity: 1;
}
.carousel-fade .active.carousel-item-start,
.carousel-fade .active.carousel-item-end {
  z-index: 0;
  opacity: 0;
  transition: opacity 0s 0.6s;
}
@media (prefers-reduced-motion: reduce) {
  .carousel-fade .active.carousel-item-start,
  .carousel-fade .active.carousel-item-end {
    transition: none;
  }
}

.carousel-control-prev,
.carousel-control-next {
  position: absolute;
  top: 0;
  bottom: 0;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 15%;
  padding: 0;
  color: #fff;
  text-align: center;
  background: none;
  border: 0;
  opacity: 0.5;
  transition: opacity 0.15s ease;
}
@media (prefers-reduced-motion: reduce) {
  .carousel-control-prev,
  .carousel-control-next {
    transition: none;
  }
}
.carousel-control-prev:hover, .carousel-control-prev:focus,
.carousel-control-next:hover,
.carousel-control-next:focus {
  color: #fff;
  text-decoration: none;
  outline: 0;
  opacity: 0.9;
}

.carousel-control-prev {
  left: 0;
}

.carousel-control-next {
  right: 0;
}

.carousel-control-prev-icon,
.carousel-control-next-icon {
  display: inline-block;
  width: 2rem;
  height: 2rem;
  background-repeat: no-repeat;
  background-position: 50%;
  background-size: 100% 100%;
}

/* rtl:options: {
  "autoRename": true,
  "stringMap":[ {
    "name"    : "prev-next",
    "search"  : "prev",
    "replace" : "next"
  } ]
} */
.carousel-control-prev-icon {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3e%3cpath d='M11.354 1.646a.5.5 0 0 1 0 .708L5.707 8l5.647 5.646a.5.5 0 0 1-.708.708l-6-6a.5.5 0 0 1 0-.708l6-6a.5.5 0 0 1 .708 0z'/%3e%3c/svg%3e");
}

.carousel-control-next-icon {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3e%3cpath d='M4.646 1.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1 0 .708l-6 6a.5.5 0 0 1-.708-.708L10.293 8 4.646 2.354a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");
}

.carousel-indicators {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 2;
  display: flex;
  justify-content: center;
  padding: 0;
  margin-right: 15%;
  margin-bottom: 1rem;
  margin-left: 15%;
}
.carousel-indicators [data-bs-target] {
  box-sizing: content-box;
  flex: 0 1 auto;
  width: 30px;
  height: 3px;
  padding: 0;
  margin-right: 3px;
  margin-left: 3px;
  text-indent: -999px;
  cursor: pointer;
  background-color: #fff;
  background-clip: padding-box;
  border: 0;
  border-top: 10px solid transparent;
  border-bottom: 10px solid transparent;
  opacity: 0.5;
  transition: opacity 0.6s ease;
}
@media (prefers-reduced-motion: reduce) {
  .carousel-indicators [data-bs-target] {
    transition: none;
  }
}
.carousel-indicators .active {
  opacity: 1;
}

.carousel-caption {
  position: absolute;
  right: 15%;
  bottom: 1.25rem;
  left: 15%;
  padding-top: 1.25rem;
  padding-bottom: 1.25rem;
  color: #fff;
  text-align: center;
}

.carousel-dark .carousel-control-prev-icon,
.carousel-dark .carousel-control-next-icon {
  filter: invert(1) grayscale(100);
}
.carousel-dark .carousel-indicators [data-bs-target] {
  background-color: #000;
}
.carousel-dark .carousel-caption {
  color: #000;
}

[data-bs-theme=dark] .carousel .carousel-control-prev-icon,
[data-bs-theme=dark] .carousel .carousel-control-next-icon, [data-bs-theme=dark].carousel .carousel-control-prev-icon,
[data-bs-theme=dark].carousel .carousel-control-next-icon {
  filter: invert(1) grayscale(100);
}
[data-bs-theme=dark] .carousel .carousel-indicators [data-bs-target], [data-bs-theme=dark].carousel .carousel-indicators [data-bs-target] {
  background-color: #000;
}
[data-bs-theme=dark] .carousel .carousel-caption, [data-bs-theme=dark].carousel .carousel-caption {
  color: #000;
}

.spinner-grow,
.spinner-border {
  display: inline-block;
  width: var(--bs-spinner-width);
  height: var(--bs-spinner-height);
  vertical-align: var(--bs-spinner-vertical-align);
  border-radius: 50%;
  animation: var(--bs-spinner-animation-speed) linear infinite var(--bs-spinner-animation-name);
}

@keyframes spinner-border {
  to {
    transform: rotate(360deg) /* rtl:ignore */;
  }
}
.spinner-border {
  --bs-spinner-width: 2rem;
  --bs-spinner-height: 2rem;
  --bs-spinner-vertical-align: -0.125em;
  --bs-spinner-border-width: 0.25em;
  --bs-spinner-animation-speed: 0.75s;
  --bs-spinner-animation-name: spinner-border;
  border: var(--bs-spinner-border-width) solid currentcolor;
  border-right-color: transparent;
}

.spinner-border-sm {
  --bs-spinner-width: 1rem;
  --bs-spinner-height: 1rem;
  --bs-spinner-border-width: 0.2em;
}

@keyframes spinner-grow {
  0% {
    transform: scale(0);
  }
  50% {
    opacity: 1;
    transform: none;
  }
}
.spinner-grow {
  --bs-spinner-width: 2rem;
  --bs-spinner-height: 2rem;
  --bs-spinner-vertical-align: -0.125em;
  --bs-spinner-animation-speed: 0.75s;
  --bs-spinner-animation-name: spinner-grow;
  background-color: currentcolor;
  opacity: 0;
}

.spinner-grow-sm {
  --bs-spinner-width: 1rem;
  --bs-spinner-height: 1rem;
}

@media (prefers-reduced-motion: reduce) {
  .spinner-border,
  .spinner-grow {
    --bs-spinner-animation-speed: 1.5s;
  }
}
.offcanvas, .offcanvas-xxl, .offcanvas-xl, .offcanvas-lg, .offcanvas-md, .offcanvas-sm {
  --bs-offcanvas-zindex: 1045;
  --bs-offcanvas-width: 400px;
  --bs-offcanvas-height: 30vh;
  --bs-offcanvas-padding-x: 1rem;
  --bs-offcanvas-padding-y: 1rem;
  --bs-offcanvas-color: var(--bs-body-color);
  --bs-offcanvas-bg: var(--bs-body-bg);
  --bs-offcanvas-border-width: var(--bs-border-width);
  --bs-offcanvas-border-color: var(--bs-border-color-translucent);
  --bs-offcanvas-box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075);
  --bs-offcanvas-transition: transform 0.3s ease-in-out;
  --bs-offcanvas-title-line-height: 1.6;
}

@media (max-width: 575.98px) {
  .offcanvas-sm {
    position: fixed;
    bottom: 0;
    z-index: var(--bs-offcanvas-zindex);
    display: flex;
    flex-direction: column;
    max-width: 100%;
    color: var(--bs-offcanvas-color);
    visibility: hidden;
    background-color: var(--bs-offcanvas-bg);
    background-clip: padding-box;
    outline: 0;
    transition: var(--bs-offcanvas-transition);
  }
}
@media (max-width: 575.98px) and (prefers-reduced-motion: reduce) {
  .offcanvas-sm {
    transition: none;
  }
}
@media (max-width: 575.98px) {
  .offcanvas-sm.offcanvas-start {
    top: 0;
    left: 0;
    width: var(--bs-offcanvas-width);
    border-right: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
    transform: translateX(-100%);
  }
  .offcanvas-sm.offcanvas-end {
    top: 0;
    right: 0;
    width: var(--bs-offcanvas-width);
    border-left: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
    transform: translateX(100%);
  }
  .offcanvas-sm.offcanvas-top {
    top: 0;
    right: 0;
    left: 0;
    height: var(--bs-offcanvas-height);
    max-height: 100%;
    border-bottom: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
    transform: translateY(-100%);
  }
  .offcanvas-sm.offcanvas-bottom {
    right: 0;
    left: 0;
    height: var(--bs-offcanvas-height);
    max-height: 100%;
    border-top: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
    transform: translateY(100%);
  }
  .offcanvas-sm.showing, .offcanvas-sm.show:not(.hiding) {
    transform: none;
  }
  .offcanvas-sm.showing, .offcanvas-sm.hiding, .offcanvas-sm.show {
    visibility: visible;
  }
}
@media (min-width: 576px) {
  .offcanvas-sm {
    --bs-offcanvas-height: auto;
    --bs-offcanvas-border-width: 0;
    background-color: transparent !important;
  }
  .offcanvas-sm .offcanvas-header {
    display: none;
  }
  .offcanvas-sm .offcanvas-body {
    display: flex;
    flex-grow: 0;
    padding: 0;
    overflow-y: visible;
    background-color: transparent !important;
  }
}

@media (max-width: 767.98px) {
  .offcanvas-md {
    position: fixed;
    bottom: 0;
    z-index: var(--bs-offcanvas-zindex);
    display: flex;
    flex-direction: column;
    max-width: 100%;
    color: var(--bs-offcanvas-color);
    visibility: hidden;
    background-color: var(--bs-offcanvas-bg);
    background-clip: padding-box;
    outline: 0;
    transition: var(--bs-offcanvas-transition);
  }
}
@media (max-width: 767.98px) and (prefers-reduced-motion: reduce) {
  .offcanvas-md {
    transition: none;
  }
}
@media (max-width: 767.98px) {
  .offcanvas-md.offcanvas-start {
    top: 0;
    left: 0;
    width: var(--bs-offcanvas-width);
    border-right: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
    transform: translateX(-100%);
  }
  .offcanvas-md.offcanvas-end {
    top: 0;
    right: 0;
    width: var(--bs-offcanvas-width);
    border-left: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
    transform: translateX(100%);
  }
  .offcanvas-md.offcanvas-top {
    top: 0;
    right: 0;
    left: 0;
    height: var(--bs-offcanvas-height);
    max-height: 100%;
    border-bottom: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
    transform: translateY(-100%);
  }
  .offcanvas-md.offcanvas-bottom {
    right: 0;
    left: 0;
    height: var(--bs-offcanvas-height);
    max-height: 100%;
    border-top: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
    transform: translateY(100%);
  }
  .offcanvas-md.showing, .offcanvas-md.show:not(.hiding) {
    transform: none;
  }
  .offcanvas-md.showing, .offcanvas-md.hiding, .offcanvas-md.show {
    visibility: visible;
  }
}
@media (min-width: 768px) {
  .offcanvas-md {
    --bs-offcanvas-height: auto;
    --bs-offcanvas-border-width: 0;
    background-color: transparent !important;
  }
  .offcanvas-md .offcanvas-header {
    display: none;
  }
  .offcanvas-md .offcanvas-body {
    display: flex;
    flex-grow: 0;
    padding: 0;
    overflow-y: visible;
    background-color: transparent !important;
  }
}

@media (max-width: 991.98px) {
  .offcanvas-lg {
    position: fixed;
    bottom: 0;
    z-index: var(--bs-offcanvas-zindex);
    display: flex;
    flex-direction: column;
    max-width: 100%;
    color: var(--bs-offcanvas-color);
    visibility: hidden;
    background-color: var(--bs-offcanvas-bg);
    background-clip: padding-box;
    outline: 0;
    transition: var(--bs-offcanvas-transition);
  }
}
@media (max-width: 991.98px) and (prefers-reduced-motion: reduce) {
  .offcanvas-lg {
    transition: none;
  }
}
@media (max-width: 991.98px) {
  .offcanvas-lg.offcanvas-start {
    top: 0;
    left: 0;
    width: var(--bs-offcanvas-width);
    border-right: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
    transform: translateX(-100%);
  }
  .offcanvas-lg.offcanvas-end {
    top: 0;
    right: 0;
    width: var(--bs-offcanvas-width);
    border-left: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
    transform: translateX(100%);
  }
  .offcanvas-lg.offcanvas-top {
    top: 0;
    right: 0;
    left: 0;
    height: var(--bs-offcanvas-height);
    max-height: 100%;
    border-bottom: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
    transform: translateY(-100%);
  }
  .offcanvas-lg.offcanvas-bottom {
    right: 0;
    left: 0;
    height: var(--bs-offcanvas-height);
    max-height: 100%;
    border-top: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
    transform: translateY(100%);
  }
  .offcanvas-lg.showing, .offcanvas-lg.show:not(.hiding) {
    transform: none;
  }
  .offcanvas-lg.showing, .offcanvas-lg.hiding, .offcanvas-lg.show {
    visibility: visible;
  }
}
@media (min-width: 992px) {
  .offcanvas-lg {
    --bs-offcanvas-height: auto;
    --bs-offcanvas-border-width: 0;
    background-color: transparent !important;
  }
  .offcanvas-lg .offcanvas-header {
    display: none;
  }
  .offcanvas-lg .offcanvas-body {
    display: flex;
    flex-grow: 0;
    padding: 0;
    overflow-y: visible;
    background-color: transparent !important;
  }
}

@media (max-width: 1199.98px) {
  .offcanvas-xl {
    position: fixed;
    bottom: 0;
    z-index: var(--bs-offcanvas-zindex);
    display: flex;
    flex-direction: column;
    max-width: 100%;
    color: var(--bs-offcanvas-color);
    visibility: hidden;
    background-color: var(--bs-offcanvas-bg);
    background-clip: padding-box;
    outline: 0;
    transition: var(--bs-offcanvas-transition);
  }
}
@media (max-width: 1199.98px) and (prefers-reduced-motion: reduce) {
  .offcanvas-xl {
    transition: none;
  }
}
@media (max-width: 1199.98px) {
  .offcanvas-xl.offcanvas-start {
    top: 0;
    left: 0;
    width: var(--bs-offcanvas-width);
    border-right: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
    transform: translateX(-100%);
  }
  .offcanvas-xl.offcanvas-end {
    top: 0;
    right: 0;
    width: var(--bs-offcanvas-width);
    border-left: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
    transform: translateX(100%);
  }
  .offcanvas-xl.offcanvas-top {
    top: 0;
    right: 0;
    left: 0;
    height: var(--bs-offcanvas-height);
    max-height: 100%;
    border-bottom: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
    transform: translateY(-100%);
  }
  .offcanvas-xl.offcanvas-bottom {
    right: 0;
    left: 0;
    height: var(--bs-offcanvas-height);
    max-height: 100%;
    border-top: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
    transform: translateY(100%);
  }
  .offcanvas-xl.showing, .offcanvas-xl.show:not(.hiding) {
    transform: none;
  }
  .offcanvas-xl.showing, .offcanvas-xl.hiding, .offcanvas-xl.show {
    visibility: visible;
  }
}
@media (min-width: 1200px) {
  .offcanvas-xl {
    --bs-offcanvas-height: auto;
    --bs-offcanvas-border-width: 0;
    background-color: transparent !important;
  }
  .offcanvas-xl .offcanvas-header {
    display: none;
  }
  .offcanvas-xl .offcanvas-body {
    display: flex;
    flex-grow: 0;
    padding: 0;
    overflow-y: visible;
    background-color: transparent !important;
  }
}

@media (max-width: 1399.98px) {
  .offcanvas-xxl {
    position: fixed;
    bottom: 0;
    z-index: var(--bs-offcanvas-zindex);
    display: flex;
    flex-direction: column;
    max-width: 100%;
    color: var(--bs-offcanvas-color);
    visibility: hidden;
    background-color: var(--bs-offcanvas-bg);
    background-clip: padding-box;
    outline: 0;
    transition: var(--bs-offcanvas-transition);
  }
}
@media (max-width: 1399.98px) and (prefers-reduced-motion: reduce) {
  .offcanvas-xxl {
    transition: none;
  }
}
@media (max-width: 1399.98px) {
  .offcanvas-xxl.offcanvas-start {
    top: 0;
    left: 0;
    width: var(--bs-offcanvas-width);
    border-right: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
    transform: translateX(-100%);
  }
  .offcanvas-xxl.offcanvas-end {
    top: 0;
    right: 0;
    width: var(--bs-offcanvas-width);
    border-left: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
    transform: translateX(100%);
  }
  .offcanvas-xxl.offcanvas-top {
    top: 0;
    right: 0;
    left: 0;
    height: var(--bs-offcanvas-height);
    max-height: 100%;
    border-bottom: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
    transform: translateY(-100%);
  }
  .offcanvas-xxl.offcanvas-bottom {
    right: 0;
    left: 0;
    height: var(--bs-offcanvas-height);
    max-height: 100%;
    border-top: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
    transform: translateY(100%);
  }
  .offcanvas-xxl.showing, .offcanvas-xxl.show:not(.hiding) {
    transform: none;
  }
  .offcanvas-xxl.showing, .offcanvas-xxl.hiding, .offcanvas-xxl.show {
    visibility: visible;
  }
}
@media (min-width: 1400px) {
  .offcanvas-xxl {
    --bs-offcanvas-height: auto;
    --bs-offcanvas-border-width: 0;
    background-color: transparent !important;
  }
  .offcanvas-xxl .offcanvas-header {
    display: none;
  }
  .offcanvas-xxl .offcanvas-body {
    display: flex;
    flex-grow: 0;
    padding: 0;
    overflow-y: visible;
    background-color: transparent !important;
  }
}

.offcanvas {
  position: fixed;
  bottom: 0;
  z-index: var(--bs-offcanvas-zindex);
  display: flex;
  flex-direction: column;
  max-width: 100%;
  color: var(--bs-offcanvas-color);
  visibility: hidden;
  background-color: var(--bs-offcanvas-bg);
  background-clip: padding-box;
  outline: 0;
  transition: var(--bs-offcanvas-transition);
}
@media (prefers-reduced-motion: reduce) {
  .offcanvas {
    transition: none;
  }
}
.offcanvas.offcanvas-start {
  top: 0;
  left: 0;
  width: var(--bs-offcanvas-width);
  border-right: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
  transform: translateX(-100%);
}
.offcanvas.offcanvas-end {
  top: 0;
  right: 0;
  width: var(--bs-offcanvas-width);
  border-left: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
  transform: translateX(100%);
}
.offcanvas.offcanvas-top {
  top: 0;
  right: 0;
  left: 0;
  height: var(--bs-offcanvas-height);
  max-height: 100%;
  border-bottom: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
  transform: translateY(-100%);
}
.offcanvas.offcanvas-bottom {
  right: 0;
  left: 0;
  height: var(--bs-offcanvas-height);
  max-height: 100%;
  border-top: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);
  transform: translateY(100%);
}
.offcanvas.showing, .offcanvas.show:not(.hiding) {
  transform: none;
}
.offcanvas.showing, .offcanvas.hiding, .offcanvas.show {
  visibility: visible;
}

.offcanvas-backdrop {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1040;
  width: 100vw;
  height: 100vh;
  background-color: #000;
}
.offcanvas-backdrop.fade {
  opacity: 0;
}
.offcanvas-backdrop.show {
  opacity: 0.5;
}

.offcanvas-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: var(--bs-offcanvas-padding-y) var(--bs-offcanvas-padding-x);
}
.offcanvas-header .btn-close {
  padding: calc(var(--bs-offcanvas-padding-y) * 0.5) calc(var(--bs-offcanvas-padding-x) * 0.5);
  margin-top: calc(-0.5 * var(--bs-offcanvas-padding-y));
  margin-right: calc(-0.5 * var(--bs-offcanvas-padding-x));
  margin-bottom: calc(-0.5 * var(--bs-offcanvas-padding-y));
}

.offcanvas-title {
  margin-bottom: 0;
  line-height: var(--bs-offcanvas-title-line-height);
}

.offcanvas-body {
  flex-grow: 1;
  padding: var(--bs-offcanvas-padding-y) var(--bs-offcanvas-padding-x);
  overflow-y: auto;
}

.placeholder {
  display: inline-block;
  min-height: 1em;
  vertical-align: middle;
  cursor: wait;
  background-color: currentcolor;
  opacity: 0.5;
}
.placeholder.btn::before {
  display: inline-block;
  content: "";
}

.placeholder-xs {
  min-height: 0.6em;
}

.placeholder-sm {
  min-height: 0.8em;
}

.placeholder-lg {
  min-height: 1.2em;
}

.placeholder-glow .placeholder {
  animation: placeholder-glow 2s ease-in-out infinite;
}

@keyframes placeholder-glow {
  50% {
    opacity: 0.2;
  }
}
.placeholder-wave {
  -webkit-mask-image: linear-gradient(130deg, #000 55%, rgba(0, 0, 0, 0.8) 75%, #000 95%);
          mask-image: linear-gradient(130deg, #000 55%, rgba(0, 0, 0, 0.8) 75%, #000 95%);
  -webkit-mask-size: 200% 100%;
          mask-size: 200% 100%;
  animation: placeholder-wave 2s linear infinite;
}

@keyframes placeholder-wave {
  100% {
    -webkit-mask-position: -200% 0%;
            mask-position: -200% 0%;
  }
}
.clearfix::after {
  display: block;
  clear: both;
  content: "";
}

.text-bg-primary {
  color: #fff !important;
  background-color: RGBA(13, 110, 253, var(--bs-bg-opacity, 1)) !important;
}

.text-bg-secondary {
  color: #fff !important;
  background-color: RGBA(108, 117, 125, var(--bs-bg-opacity, 1)) !important;
}

.text-bg-success {
  color: #000 !important;
  background-color: RGBA(68, 153, 37, var(--bs-bg-opacity, 1)) !important;
}

.text-bg-info {
  color: #000 !important;
  background-color: RGBA(13, 202, 240, var(--bs-bg-opacity, 1)) !important;
}

.text-bg-warning {
  color: #000 !important;
  background-color: RGBA(255, 193, 7, var(--bs-bg-opacity, 1)) !important;
}

.text-bg-danger {
  color: #fff !important;
  background-color: RGBA(214, 8, 18, var(--bs-bg-opacity, 1)) !important;
}

.text-bg-light {
  color: #000 !important;
  background-color: RGBA(248, 249, 250, var(--bs-bg-opacity, 1)) !important;
}

.text-bg-dark {
  color: #fff !important;
  background-color: RGBA(33, 37, 41, var(--bs-bg-opacity, 1)) !important;
}

.link-primary {
  color: RGBA(var(--bs-primary-rgb), var(--bs-link-opacity, 1)) !important;
  -webkit-text-decoration-color: RGBA(var(--bs-primary-rgb), var(--bs-link-underline-opacity, 1)) !important;
          text-decoration-color: RGBA(var(--bs-primary-rgb), var(--bs-link-underline-opacity, 1)) !important;
}
.link-primary:hover, .link-primary:focus {
  color: RGBA(10, 88, 202, var(--bs-link-opacity, 1)) !important;
  -webkit-text-decoration-color: RGBA(10, 88, 202, var(--bs-link-underline-opacity, 1)) !important;
          text-decoration-color: RGBA(10, 88, 202, var(--bs-link-underline-opacity, 1)) !important;
}

.link-secondary {
  color: RGBA(var(--bs-secondary-rgb), var(--bs-link-opacity, 1)) !important;
  -webkit-text-decoration-color: RGBA(var(--bs-secondary-rgb), var(--bs-link-underline-opacity, 1)) !important;
          text-decoration-color: RGBA(var(--bs-secondary-rgb), var(--bs-link-underline-opacity, 1)) !important;
}
.link-secondary:hover, .link-secondary:focus {
  color: RGBA(86, 94, 100, var(--bs-link-opacity, 1)) !important;
  -webkit-text-decoration-color: RGBA(86, 94, 100, var(--bs-link-underline-opacity, 1)) !important;
          text-decoration-color: RGBA(86, 94, 100, var(--bs-link-underline-opacity, 1)) !important;
}

.link-success {
  color: RGBA(var(--bs-success-rgb), var(--bs-link-opacity, 1)) !important;
  -webkit-text-decoration-color: RGBA(var(--bs-success-rgb), var(--bs-link-underline-opacity, 1)) !important;
          text-decoration-color: RGBA(var(--bs-success-rgb), var(--bs-link-underline-opacity, 1)) !important;
}
.link-success:hover, .link-success:focus {
  color: RGBA(105, 173, 81, var(--bs-link-opacity, 1)) !important;
  -webkit-text-decoration-color: RGBA(105, 173, 81, var(--bs-link-underline-opacity, 1)) !important;
          text-decoration-color: RGBA(105, 173, 81, var(--bs-link-underline-opacity, 1)) !important;
}

.link-info {
  color: RGBA(var(--bs-info-rgb), var(--bs-link-opacity, 1)) !important;
  -webkit-text-decoration-color: RGBA(var(--bs-info-rgb), var(--bs-link-underline-opacity, 1)) !important;
          text-decoration-color: RGBA(var(--bs-info-rgb), var(--bs-link-underline-opacity, 1)) !important;
}
.link-info:hover, .link-info:focus {
  color: RGBA(61, 213, 243, var(--bs-link-opacity, 1)) !important;
  -webkit-text-decoration-color: RGBA(61, 213, 243, var(--bs-link-underline-opacity, 1)) !important;
          text-decoration-color: RGBA(61, 213, 243, var(--bs-link-underline-opacity, 1)) !important;
}

.link-warning {
  color: RGBA(var(--bs-warning-rgb), var(--bs-link-opacity, 1)) !important;
  -webkit-text-decoration-color: RGBA(var(--bs-warning-rgb), var(--bs-link-underline-opacity, 1)) !important;
          text-decoration-color: RGBA(var(--bs-warning-rgb), var(--bs-link-underline-opacity, 1)) !important;
}
.link-warning:hover, .link-warning:focus {
  color: RGBA(255, 205, 57, var(--bs-link-opacity, 1)) !important;
  -webkit-text-decoration-color: RGBA(255, 205, 57, var(--bs-link-underline-opacity, 1)) !important;
          text-decoration-color: RGBA(255, 205, 57, var(--bs-link-underline-opacity, 1)) !important;
}

.link-danger {
  color: RGBA(var(--bs-danger-rgb), var(--bs-link-opacity, 1)) !important;
  -webkit-text-decoration-color: RGBA(var(--bs-danger-rgb), var(--bs-link-underline-opacity, 1)) !important;
          text-decoration-color: RGBA(var(--bs-danger-rgb), var(--bs-link-underline-opacity, 1)) !important;
}
.link-danger:hover, .link-danger:focus {
  color: RGBA(171, 6, 14, var(--bs-link-opacity, 1)) !important;
  -webkit-text-decoration-color: RGBA(171, 6, 14, var(--bs-link-underline-opacity, 1)) !important;
          text-decoration-color: RGBA(171, 6, 14, var(--bs-link-underline-opacity, 1)) !important;
}

.link-light {
  color: RGBA(var(--bs-light-rgb), var(--bs-link-opacity, 1)) !important;
  -webkit-text-decoration-color: RGBA(var(--bs-light-rgb), var(--bs-link-underline-opacity, 1)) !important;
          text-decoration-color: RGBA(var(--bs-light-rgb), var(--bs-link-underline-opacity, 1)) !important;
}
.link-light:hover, .link-light:focus {
  color: RGBA(249, 250, 251, var(--bs-link-opacity, 1)) !important;
  -webkit-text-decoration-color: RGBA(249, 250, 251, var(--bs-link-underline-opacity, 1)) !important;
          text-decoration-color: RGBA(249, 250, 251, var(--bs-link-underline-opacity, 1)) !important;
}

.link-dark {
  color: RGBA(var(--bs-dark-rgb), var(--bs-link-opacity, 1)) !important;
  -webkit-text-decoration-color: RGBA(var(--bs-dark-rgb), var(--bs-link-underline-opacity, 1)) !important;
          text-decoration-color: RGBA(var(--bs-dark-rgb), var(--bs-link-underline-opacity, 1)) !important;
}
.link-dark:hover, .link-dark:focus {
  color: RGBA(26, 30, 33, var(--bs-link-opacity, 1)) !important;
  -webkit-text-decoration-color: RGBA(26, 30, 33, var(--bs-link-underline-opacity, 1)) !important;
          text-decoration-color: RGBA(26, 30, 33, var(--bs-link-underline-opacity, 1)) !important;
}

.link-body-emphasis {
  color: RGBA(var(--bs-emphasis-color-rgb), var(--bs-link-opacity, 1)) !important;
  -webkit-text-decoration-color: RGBA(var(--bs-emphasis-color-rgb), var(--bs-link-underline-opacity, 1)) !important;
          text-decoration-color: RGBA(var(--bs-emphasis-color-rgb), var(--bs-link-underline-opacity, 1)) !important;
}
.link-body-emphasis:hover, .link-body-emphasis:focus {
  color: RGBA(var(--bs-emphasis-color-rgb), var(--bs-link-opacity, 0.75)) !important;
  -webkit-text-decoration-color: RGBA(var(--bs-emphasis-color-rgb), var(--bs-link-underline-opacity, 0.75)) !important;
          text-decoration-color: RGBA(var(--bs-emphasis-color-rgb), var(--bs-link-underline-opacity, 0.75)) !important;
}

.focus-ring:focus {
  outline: 0;
  box-shadow: var(--bs-focus-ring-x, 0) var(--bs-focus-ring-y, 0) var(--bs-focus-ring-blur, 0) var(--bs-focus-ring-width) var(--bs-focus-ring-color);
}

.icon-link {
  display: inline-flex;
  gap: 0.375rem;
  align-items: center;
  -webkit-text-decoration-color: rgba(var(--bs-link-color-rgb), var(--bs-link-opacity, 0.5));
          text-decoration-color: rgba(var(--bs-link-color-rgb), var(--bs-link-opacity, 0.5));
  text-underline-offset: 0.25em;
  backface-visibility: hidden;
}
.icon-link > .bi {
  flex-shrink: 0;
  width: 1em;
  height: 1em;
  fill: currentcolor;
  transition: 0.2s ease-in-out transform;
}
@media (prefers-reduced-motion: reduce) {
  .icon-link > .bi {
    transition: none;
  }
}

.icon-link-hover:hover > .bi, .icon-link-hover:focus-visible > .bi {
  transform: var(--bs-icon-link-transform, translate3d(0.25em, 0, 0));
}

.ratio {
  position: relative;
  width: 100%;
}
.ratio::before {
  display: block;
  padding-top: var(--bs-aspect-ratio);
  content: "";
}
.ratio > * {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.ratio-1x1 {
  --bs-aspect-ratio: 100%;
}

.ratio-4x3 {
  --bs-aspect-ratio: 75%;
}

.ratio-16x9 {
  --bs-aspect-ratio: 56.25%;
}

.ratio-21x9 {
  --bs-aspect-ratio: 42.8571428571%;
}

.fixed-top {
  position: fixed;
  top: 0;
  right: 0;
  left: 0;
  z-index: 1030;
}

.fixed-bottom {
  position: fixed;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1030;
}

.sticky-top {
  position: sticky;
  top: 0;
  z-index: 1020;
}

.sticky-bottom {
  position: sticky;
  bottom: 0;
  z-index: 1020;
}

@media (min-width: 576px) {
  .sticky-sm-top {
    position: sticky;
    top: 0;
    z-index: 1020;
  }
  .sticky-sm-bottom {
    position: sticky;
    bottom: 0;
    z-index: 1020;
  }
}
@media (min-width: 768px) {
  .sticky-md-top {
    position: sticky;
    top: 0;
    z-index: 1020;
  }
  .sticky-md-bottom {
    position: sticky;
    bottom: 0;
    z-index: 1020;
  }
}
@media (min-width: 992px) {
  .sticky-lg-top {
    position: sticky;
    top: 0;
    z-index: 1020;
  }
  .sticky-lg-bottom {
    position: sticky;
    bottom: 0;
    z-index: 1020;
  }
}
@media (min-width: 1200px) {
  .sticky-xl-top {
    position: sticky;
    top: 0;
    z-index: 1020;
  }
  .sticky-xl-bottom {
    position: sticky;
    bottom: 0;
    z-index: 1020;
  }
}
@media (min-width: 1400px) {
  .sticky-xxl-top {
    position: sticky;
    top: 0;
    z-index: 1020;
  }
  .sticky-xxl-bottom {
    position: sticky;
    bottom: 0;
    z-index: 1020;
  }
}
.hstack {
  display: flex;
  flex-direction: row;
  align-items: center;
  align-self: stretch;
}

.vstack {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  align-self: stretch;
}

.visually-hidden,
.visually-hidden-focusable:not(:focus):not(:focus-within) {
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}
.visually-hidden:not(caption),
.visually-hidden-focusable:not(:focus):not(:focus-within):not(caption) {
  position: absolute !important;
}

.stretched-link::after {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1;
  content: "";
}

.text-truncate {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.vr {
  display: inline-block;
  align-self: stretch;
  width: 1px;
  min-height: 1em;
  background-color: currentcolor;
  opacity: 0.25;
}

.align-baseline {
  vertical-align: baseline !important;
}

.align-top {
  vertical-align: top !important;
}

.align-middle {
  vertical-align: middle !important;
}

.align-bottom {
  vertical-align: bottom !important;
}

.align-text-bottom {
  vertical-align: text-bottom !important;
}

.align-text-top {
  vertical-align: text-top !important;
}

.float-start {
  float: left !important;
}

.float-end {
  float: right !important;
}

.float-none {
  float: none !important;
}

.object-fit-contain {
  -o-object-fit: contain !important;
     object-fit: contain !important;
}

.object-fit-cover {
  -o-object-fit: cover !important;
     object-fit: cover !important;
}

.object-fit-fill {
  -o-object-fit: fill !important;
     object-fit: fill !important;
}

.object-fit-scale {
  -o-object-fit: scale-down !important;
     object-fit: scale-down !important;
}

.object-fit-none {
  -o-object-fit: none !important;
     object-fit: none !important;
}

.opacity-0 {
  opacity: 0 !important;
}

.opacity-25 {
  opacity: 0.25 !important;
}

.opacity-50 {
  opacity: 0.5 !important;
}

.opacity-75 {
  opacity: 0.75 !important;
}

.opacity-100 {
  opacity: 1 !important;
}

.overflow-auto {
  overflow: auto !important;
}

.overflow-hidden {
  overflow: hidden !important;
}

.overflow-visible {
  overflow: visible !important;
}

.overflow-scroll {
  overflow: scroll !important;
}

.overflow-x-auto {
  overflow-x: auto !important;
}

.overflow-x-hidden {
  overflow-x: hidden !important;
}

.overflow-x-visible {
  overflow-x: visible !important;
}

.overflow-x-scroll {
  overflow-x: scroll !important;
}

.overflow-y-auto {
  overflow-y: auto !important;
}

.overflow-y-hidden {
  overflow-y: hidden !important;
}

.overflow-y-visible {
  overflow-y: visible !important;
}

.overflow-y-scroll {
  overflow-y: scroll !important;
}

.d-inline {
  display: inline !important;
}

.d-inline-block {
  display: inline-block !important;
}

.d-block {
  display: block !important;
}

.d-grid {
  display: grid !important;
}

.d-inline-grid {
  display: inline-grid !important;
}

.d-table {
  display: table !important;
}

.d-table-row {
  display: table-row !important;
}

.d-table-cell {
  display: table-cell !important;
}

.d-flex {
  display: flex !important;
}

.d-inline-flex {
  display: inline-flex !important;
}

.d-none {
  display: none !important;
}

.shadow {
  box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important;
}

.shadow-sm {
  box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075) !important;
}

.shadow-lg {
  box-shadow: 0 1rem 3rem rgba(0, 0, 0, 0.175) !important;
}

.shadow-none {
  box-shadow: none !important;
}

.focus-ring-primary {
  --bs-focus-ring-color: rgba(var(--bs-primary-rgb), var(--bs-focus-ring-opacity));
}

.focus-ring-secondary {
  --bs-focus-ring-color: rgba(var(--bs-secondary-rgb), var(--bs-focus-ring-opacity));
}

.focus-ring-success {
  --bs-focus-ring-color: rgba(var(--bs-success-rgb), var(--bs-focus-ring-opacity));
}

.focus-ring-info {
  --bs-focus-ring-color: rgba(var(--bs-info-rgb), var(--bs-focus-ring-opacity));
}

.focus-ring-warning {
  --bs-focus-ring-color: rgba(var(--bs-warning-rgb), var(--bs-focus-ring-opacity));
}

.focus-ring-danger {
  --bs-focus-ring-color: rgba(var(--bs-danger-rgb), var(--bs-focus-ring-opacity));
}

.focus-ring-light {
  --bs-focus-ring-color: rgba(var(--bs-light-rgb), var(--bs-focus-ring-opacity));
}

.focus-ring-dark {
  --bs-focus-ring-color: rgba(var(--bs-dark-rgb), var(--bs-focus-ring-opacity));
}

.position-static {
  position: static !important;
}

.position-relative {
  position: relative !important;
}

.position-absolute {
  position: absolute !important;
}

.position-fixed {
  position: fixed !important;
}

.position-sticky {
  position: sticky !important;
}

.top-0 {
  top: 0 !important;
}

.top-50 {
  top: 50% !important;
}

.top-100 {
  top: 100% !important;
}

.bottom-0 {
  bottom: 0 !important;
}

.bottom-50 {
  bottom: 50% !important;
}

.bottom-100 {
  bottom: 100% !important;
}

.start-0 {
  left: 0 !important;
}

.start-50 {
  left: 50% !important;
}

.start-100 {
  left: 100% !important;
}

.end-0 {
  right: 0 !important;
}

.end-50 {
  right: 50% !important;
}

.end-100 {
  right: 100% !important;
}

.translate-middle {
  transform: translate(-50%, -50%) !important;
}

.translate-middle-x {
  transform: translateX(-50%) !important;
}

.translate-middle-y {
  transform: translateY(-50%) !important;
}

.border {
  border: var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important;
}

.border-0 {
  border: 0 !important;
}

.border-top {
  border-top: var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important;
}

.border-top-0 {
  border-top: 0 !important;
}

.border-end {
  border-right: var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important;
}

.border-end-0 {
  border-right: 0 !important;
}

.border-bottom {
  border-bottom: var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important;
}

.border-bottom-0 {
  border-bottom: 0 !important;
}

.border-start {
  border-left: var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important;
}

.border-start-0 {
  border-left: 0 !important;
}

.border-primary {
  --bs-border-opacity: 1;
  border-color: rgba(var(--bs-primary-rgb), var(--bs-border-opacity)) !important;
}

.border-secondary {
  --bs-border-opacity: 1;
  border-color: rgba(var(--bs-secondary-rgb), var(--bs-border-opacity)) !important;
}

.border-success {
  --bs-border-opacity: 1;
  border-color: rgba(var(--bs-success-rgb), var(--bs-border-opacity)) !important;
}

.border-info {
  --bs-border-opacity: 1;
  border-color: rgba(var(--bs-info-rgb), var(--bs-border-opacity)) !important;
}

.border-warning {
  --bs-border-opacity: 1;
  border-color: rgba(var(--bs-warning-rgb), var(--bs-border-opacity)) !important;
}

.border-danger {
  --bs-border-opacity: 1;
  border-color: rgba(var(--bs-danger-rgb), var(--bs-border-opacity)) !important;
}

.border-light {
  --bs-border-opacity: 1;
  border-color: rgba(var(--bs-light-rgb), var(--bs-border-opacity)) !important;
}

.border-dark {
  --bs-border-opacity: 1;
  border-color: rgba(var(--bs-dark-rgb), var(--bs-border-opacity)) !important;
}

.border-black {
  --bs-border-opacity: 1;
  border-color: rgba(var(--bs-black-rgb), var(--bs-border-opacity)) !important;
}

.border-white {
  --bs-border-opacity: 1;
  border-color: rgba(var(--bs-white-rgb), var(--bs-border-opacity)) !important;
}

.border-primary-subtle {
  border-color: var(--bs-primary-border-subtle) !important;
}

.border-secondary-subtle {
  border-color: var(--bs-secondary-border-subtle) !important;
}

.border-success-subtle {
  border-color: var(--bs-success-border-subtle) !important;
}

.border-info-subtle {
  border-color: var(--bs-info-border-subtle) !important;
}

.border-warning-subtle {
  border-color: var(--bs-warning-border-subtle) !important;
}

.border-danger-subtle {
  border-color: var(--bs-danger-border-subtle) !important;
}

.border-light-subtle {
  border-color: var(--bs-light-border-subtle) !important;
}

.border-dark-subtle {
  border-color: var(--bs-dark-border-subtle) !important;
}

.border-1 {
  border-width: 1px !important;
}

.border-2 {
  border-width: 2px !important;
}

.border-3 {
  border-width: 3px !important;
}

.border-4 {
  border-width: 4px !important;
}

.border-5 {
  border-width: 5px !important;
}

.border-opacity-10 {
  --bs-border-opacity: 0.1;
}

.border-opacity-25 {
  --bs-border-opacity: 0.25;
}

.border-opacity-50 {
  --bs-border-opacity: 0.5;
}

.border-opacity-75 {
  --bs-border-opacity: 0.75;
}

.border-opacity-100 {
  --bs-border-opacity: 1;
}

.w-25 {
  width: 25% !important;
}

.w-50 {
  width: 50% !important;
}

.w-75 {
  width: 75% !important;
}

.w-100 {
  width: 100% !important;
}

.w-auto {
  width: auto !important;
}

.mw-100 {
  max-width: 100% !important;
}

.vw-100 {
  width: 100vw !important;
}

.min-vw-100 {
  min-width: 100vw !important;
}

.h-25 {
  height: 25% !important;
}

.h-50 {
  height: 50% !important;
}

.h-75 {
  height: 75% !important;
}

.h-100 {
  height: 100% !important;
}

.h-auto {
  height: auto !important;
}

.mh-100 {
  max-height: 100% !important;
}

.vh-100 {
  height: 100vh !important;
}

.min-vh-100 {
  min-height: 100vh !important;
}

.flex-fill {
  flex: 1 1 auto !important;
}

.flex-row {
  flex-direction: row !important;
}

.flex-column {
  flex-direction: column !important;
}

.flex-row-reverse {
  flex-direction: row-reverse !important;
}

.flex-column-reverse {
  flex-direction: column-reverse !important;
}

.flex-grow-0 {
  flex-grow: 0 !important;
}

.flex-grow-1 {
  flex-grow: 1 !important;
}

.flex-shrink-0 {
  flex-shrink: 0 !important;
}

.flex-shrink-1 {
  flex-shrink: 1 !important;
}

.flex-wrap {
  flex-wrap: wrap !important;
}

.flex-nowrap {
  flex-wrap: nowrap !important;
}

.flex-wrap-reverse {
  flex-wrap: wrap-reverse !important;
}

.justify-content-start {
  justify-content: flex-start !important;
}

.justify-content-end {
  justify-content: flex-end !important;
}

.justify-content-center {
  justify-content: center !important;
}

.justify-content-between {
  justify-content: space-between !important;
}

.justify-content-around {
  justify-content: space-around !important;
}

.justify-content-evenly {
  justify-content: space-evenly !important;
}

.align-items-start {
  align-items: flex-start !important;
}

.align-items-end {
  align-items: flex-end !important;
}

.align-items-center {
  align-items: center !important;
}

.align-items-baseline {
  align-items: baseline !important;
}

.align-items-stretch {
  align-items: stretch !important;
}

.align-content-start {
  align-content: flex-start !important;
}

.align-content-end {
  align-content: flex-end !important;
}

.align-content-center {
  align-content: center !important;
}

.align-content-between {
  align-content: space-between !important;
}

.align-content-around {
  align-content: space-around !important;
}

.align-content-stretch {
  align-content: stretch !important;
}

.align-self-auto {
  align-self: auto !important;
}

.align-self-start {
  align-self: flex-start !important;
}

.align-self-end {
  align-self: flex-end !important;
}

.align-self-center {
  align-self: center !important;
}

.align-self-baseline {
  align-self: baseline !important;
}

.align-self-stretch {
  align-self: stretch !important;
}

.order-first {
  order: -1 !important;
}

.order-0 {
  order: 0 !important;
}

.order-1 {
  order: 1 !important;
}

.order-2 {
  order: 2 !important;
}

.order-3 {
  order: 3 !important;
}

.order-4 {
  order: 4 !important;
}

.order-5 {
  order: 5 !important;
}

.order-last {
  order: 6 !important;
}

.m-0 {
  margin: 0 !important;
}

.m-1 {
  margin: 0.25rem !important;
}

.m-2 {
  margin: 0.5rem !important;
}

.m-3 {
  margin: 1rem !important;
}

.m-4 {
  margin: 1.5rem !important;
}

.m-5 {
  margin: 3rem !important;
}

.m-auto {
  margin: auto !important;
}

.mx-0 {
  margin-right: 0 !important;
  margin-left: 0 !important;
}

.mx-1 {
  margin-right: 0.25rem !important;
  margin-left: 0.25rem !important;
}

.mx-2 {
  margin-right: 0.5rem !important;
  margin-left: 0.5rem !important;
}

.mx-3 {
  margin-right: 1rem !important;
  margin-left: 1rem !important;
}

.mx-4 {
  margin-right: 1.5rem !important;
  margin-left: 1.5rem !important;
}

.mx-5 {
  margin-right: 3rem !important;
  margin-left: 3rem !important;
}

.mx-auto {
  margin-right: auto !important;
  margin-left: auto !important;
}

.my-0 {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

.my-1 {
  margin-top: 0.25rem !important;
  margin-bottom: 0.25rem !important;
}

.my-2 {
  margin-top: 0.5rem !important;
  margin-bottom: 0.5rem !important;
}

.my-3 {
  margin-top: 1rem !important;
  margin-bottom: 1rem !important;
}

.my-4 {
  margin-top: 1.5rem !important;
  margin-bottom: 1.5rem !important;
}

.my-5 {
  margin-top: 3rem !important;
  margin-bottom: 3rem !important;
}

.my-auto {
  margin-top: auto !important;
  margin-bottom: auto !important;
}

.mt-0 {
  margin-top: 0 !important;
}

.mt-1 {
  margin-top: 0.25rem !important;
}

.mt-2 {
  margin-top: 0.5rem !important;
}

.mt-3 {
  margin-top: 1rem !important;
}

.mt-4 {
  margin-top: 1.5rem !important;
}

.mt-5 {
  margin-top: 3rem !important;
}

.mt-auto {
  margin-top: auto !important;
}

.me-0 {
  margin-right: 0 !important;
}

.me-1 {
  margin-right: 0.25rem !important;
}

.me-2 {
  margin-right: 0.5rem !important;
}

.me-3 {
  margin-right: 1rem !important;
}

.me-4 {
  margin-right: 1.5rem !important;
}

.me-5 {
  margin-right: 3rem !important;
}

.me-auto {
  margin-right: auto !important;
}

.mb-0 {
  margin-bottom: 0 !important;
}

.mb-1 {
  margin-bottom: 0.25rem !important;
}

.mb-2 {
  margin-bottom: 0.5rem !important;
}

.mb-3 {
  margin-bottom: 1rem !important;
}

.mb-4 {
  margin-bottom: 1.5rem !important;
}

.mb-5 {
  margin-bottom: 3rem !important;
}

.mb-auto {
  margin-bottom: auto !important;
}

.ms-0 {
  margin-left: 0 !important;
}

.ms-1 {
  margin-left: 0.25rem !important;
}

.ms-2 {
  margin-left: 0.5rem !important;
}

.ms-3 {
  margin-left: 1rem !important;
}

.ms-4 {
  margin-left: 1.5rem !important;
}

.ms-5 {
  margin-left: 3rem !important;
}

.ms-auto {
  margin-left: auto !important;
}

.p-0 {
  padding: 0 !important;
}

.p-1 {
  padding: 0.25rem !important;
}

.p-2 {
  padding: 0.5rem !important;
}

.p-3 {
  padding: 1rem !important;
}

.p-4 {
  padding: 1.5rem !important;
}

.p-5 {
  padding: 3rem !important;
}

.px-0 {
  padding-right: 0 !important;
  padding-left: 0 !important;
}

.px-1 {
  padding-right: 0.25rem !important;
  padding-left: 0.25rem !important;
}

.px-2 {
  padding-right: 0.5rem !important;
  padding-left: 0.5rem !important;
}

.px-3 {
  padding-right: 1rem !important;
  padding-left: 1rem !important;
}

.px-4 {
  padding-right: 1.5rem !important;
  padding-left: 1.5rem !important;
}

.px-5 {
  padding-right: 3rem !important;
  padding-left: 3rem !important;
}

.py-0 {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

.py-1 {
  padding-top: 0.25rem !important;
  padding-bottom: 0.25rem !important;
}

.py-2 {
  padding-top: 0.5rem !important;
  padding-bottom: 0.5rem !important;
}

.py-3 {
  padding-top: 1rem !important;
  padding-bottom: 1rem !important;
}

.py-4 {
  padding-top: 1.5rem !important;
  padding-bottom: 1.5rem !important;
}

.py-5 {
  padding-top: 3rem !important;
  padding-bottom: 3rem !important;
}

.pt-0 {
  padding-top: 0 !important;
}

.pt-1 {
  padding-top: 0.25rem !important;
}

.pt-2 {
  padding-top: 0.5rem !important;
}

.pt-3 {
  padding-top: 1rem !important;
}

.pt-4, #products #andamios-detalle p,
#andamios #andamios-detalle p {
  padding-top: 1.5rem !important;
}

.pt-5 {
  padding-top: 3rem !important;
}

.pe-0 {
  padding-right: 0 !important;
}

.pe-1 {
  padding-right: 0.25rem !important;
}

.pe-2 {
  padding-right: 0.5rem !important;
}

.pe-3 {
  padding-right: 1rem !important;
}

.pe-4 {
  padding-right: 1.5rem !important;
}

.pe-5 {
  padding-right: 3rem !important;
}

.pb-0 {
  padding-bottom: 0 !important;
}

.pb-1 {
  padding-bottom: 0.25rem !important;
}

.pb-2 {
  padding-bottom: 0.5rem !important;
}

.pb-3 {
  padding-bottom: 1rem !important;
}

.pb-4 {
  padding-bottom: 1.5rem !important;
}

.pb-5 {
  padding-bottom: 3rem !important;
}

.ps-0 {
  padding-left: 0 !important;
}

.ps-1 {
  padding-left: 0.25rem !important;
}

.ps-2 {
  padding-left: 0.5rem !important;
}

.ps-3 {
  padding-left: 1rem !important;
}

.ps-4 {
  padding-left: 1.5rem !important;
}

.ps-5 {
  padding-left: 3rem !important;
}

.gap-0 {
  gap: 0 !important;
}

.gap-1 {
  gap: 0.25rem !important;
}

.gap-2 {
  gap: 0.5rem !important;
}

.gap-3 {
  gap: 1rem !important;
}

.gap-4 {
  gap: 1.5rem !important;
}

.gap-5 {
  gap: 3rem !important;
}

.row-gap-0 {
  row-gap: 0 !important;
}

.row-gap-1 {
  row-gap: 0.25rem !important;
}

.row-gap-2 {
  row-gap: 0.5rem !important;
}

.row-gap-3 {
  row-gap: 1rem !important;
}

.row-gap-4 {
  row-gap: 1.5rem !important;
}

.row-gap-5 {
  row-gap: 3rem !important;
}

.column-gap-0 {
  -moz-column-gap: 0 !important;
       column-gap: 0 !important;
}

.column-gap-1 {
  -moz-column-gap: 0.25rem !important;
       column-gap: 0.25rem !important;
}

.column-gap-2 {
  -moz-column-gap: 0.5rem !important;
       column-gap: 0.5rem !important;
}

.column-gap-3 {
  -moz-column-gap: 1rem !important;
       column-gap: 1rem !important;
}

.column-gap-4 {
  -moz-column-gap: 1.5rem !important;
       column-gap: 1.5rem !important;
}

.column-gap-5 {
  -moz-column-gap: 3rem !important;
       column-gap: 3rem !important;
}

.font-monospace {
  font-family: var(--bs-font-monospace) !important;
}

.fs-1 {
  font-size: calc(1.59375rem + 4.125vw) !important;
}

.fs-2 {
  font-size: calc(1.4375rem + 2.25vw) !important;
}

.fs-3 {
  font-size: calc(1.2825rem + 0.39vw) !important;
}

.fs-4 {
  font-size: calc(1.26rem + 0.12vw) !important;
}

.fs-5 {
  font-size: 1.125rem !important;
}

.fs-6 {
  font-size: 0.9rem !important;
}

.fst-italic {
  font-style: italic !important;
}

.fst-normal {
  font-style: normal !important;
}

.fw-lighter {
  font-weight: lighter !important;
}

.fw-light {
  font-weight: 300 !important;
}

.fw-normal {
  font-weight: 400 !important;
}

.fw-medium {
  font-weight: 500 !important;
}

.fw-semibold {
  font-weight: 600 !important;
}

.fw-bold {
  font-weight: 700 !important;
}

.fw-bolder {
  font-weight: bolder !important;
}

.lh-1 {
  line-height: 1 !important;
}

.lh-sm {
  line-height: 1.25 !important;
}

.lh-base {
  line-height: 1.6 !important;
}

.lh-lg {
  line-height: 2 !important;
}

.text-start {
  text-align: left !important;
}

.text-end {
  text-align: right !important;
}

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

.text-decoration-none {
  text-decoration: none !important;
}

.text-decoration-underline {
  text-decoration: underline !important;
}

.text-decoration-line-through {
  text-decoration: line-through !important;
}

.text-lowercase {
  text-transform: lowercase !important;
}

.text-uppercase {
  text-transform: uppercase !important;
}

.text-capitalize {
  text-transform: capitalize !important;
}

.text-wrap {
  white-space: normal !important;
}

.text-nowrap {
  white-space: nowrap !important;
}

/* rtl:begin:remove */
.text-break {
  word-wrap: break-word !important;
  word-break: break-word !important;
}

/* rtl:end:remove */
.text-primary {
  --bs-text-opacity: 1;
  color: rgba(var(--bs-primary-rgb), var(--bs-text-opacity)) !important;
}

.text-secondary {
  --bs-text-opacity: 1;
  color: rgba(var(--bs-secondary-rgb), var(--bs-text-opacity)) !important;
}

.text-success {
  --bs-text-opacity: 1;
  color: rgba(var(--bs-success-rgb), var(--bs-text-opacity)) !important;
}

.text-info {
  --bs-text-opacity: 1;
  color: rgba(var(--bs-info-rgb), var(--bs-text-opacity)) !important;
}

.text-warning {
  --bs-text-opacity: 1;
  color: rgba(var(--bs-warning-rgb), var(--bs-text-opacity)) !important;
}

.text-danger {
  --bs-text-opacity: 1;
  color: rgba(var(--bs-danger-rgb), var(--bs-text-opacity)) !important;
}

.text-light {
  --bs-text-opacity: 1;
  color: rgba(var(--bs-light-rgb), var(--bs-text-opacity)) !important;
}

.text-dark {
  --bs-text-opacity: 1;
  color: rgba(var(--bs-dark-rgb), var(--bs-text-opacity)) !important;
}

.text-black {
  --bs-text-opacity: 1;
  color: rgba(var(--bs-black-rgb), var(--bs-text-opacity)) !important;
}

.text-white {
  --bs-text-opacity: 1;
  color: rgba(var(--bs-white-rgb), var(--bs-text-opacity)) !important;
}

.text-body {
  --bs-text-opacity: 1;
  color: rgba(var(--bs-body-color-rgb), var(--bs-text-opacity)) !important;
}

.text-muted {
  --bs-text-opacity: 1;
  color: var(--bs-secondary-color) !important;
}

.text-black-50 {
  --bs-text-opacity: 1;
  color: rgba(0, 0, 0, 0.5) !important;
}

.text-white-50 {
  --bs-text-opacity: 1;
  color: rgba(255, 255, 255, 0.5) !important;
}

.text-body-secondary {
  --bs-text-opacity: 1;
  color: var(--bs-secondary-color) !important;
}

.text-body-tertiary {
  --bs-text-opacity: 1;
  color: var(--bs-tertiary-color) !important;
}

.text-body-emphasis {
  --bs-text-opacity: 1;
  color: var(--bs-emphasis-color) !important;
}

.text-reset {
  --bs-text-opacity: 1;
  color: inherit !important;
}

.text-opacity-25 {
  --bs-text-opacity: 0.25;
}

.text-opacity-50 {
  --bs-text-opacity: 0.5;
}

.text-opacity-75 {
  --bs-text-opacity: 0.75;
}

.text-opacity-100 {
  --bs-text-opacity: 1;
}

.text-primary-emphasis {
  color: var(--bs-primary-text-emphasis) !important;
}

.text-secondary-emphasis {
  color: var(--bs-secondary-text-emphasis) !important;
}

.text-success-emphasis {
  color: var(--bs-success-text-emphasis) !important;
}

.text-info-emphasis {
  color: var(--bs-info-text-emphasis) !important;
}

.text-warning-emphasis {
  color: var(--bs-warning-text-emphasis) !important;
}

.text-danger-emphasis {
  color: var(--bs-danger-text-emphasis) !important;
}

.text-light-emphasis {
  color: var(--bs-light-text-emphasis) !important;
}

.text-dark-emphasis {
  color: var(--bs-dark-text-emphasis) !important;
}

.link-opacity-10 {
  --bs-link-opacity: 0.1;
}

.link-opacity-10-hover:hover {
  --bs-link-opacity: 0.1;
}

.link-opacity-25 {
  --bs-link-opacity: 0.25;
}

.link-opacity-25-hover:hover {
  --bs-link-opacity: 0.25;
}

.link-opacity-50 {
  --bs-link-opacity: 0.5;
}

.link-opacity-50-hover:hover {
  --bs-link-opacity: 0.5;
}

.link-opacity-75 {
  --bs-link-opacity: 0.75;
}

.link-opacity-75-hover:hover {
  --bs-link-opacity: 0.75;
}

.link-opacity-100 {
  --bs-link-opacity: 1;
}

.link-opacity-100-hover:hover {
  --bs-link-opacity: 1;
}

.link-offset-1 {
  text-underline-offset: 0.125em !important;
}

.link-offset-1-hover:hover {
  text-underline-offset: 0.125em !important;
}

.link-offset-2 {
  text-underline-offset: 0.25em !important;
}

.link-offset-2-hover:hover {
  text-underline-offset: 0.25em !important;
}

.link-offset-3 {
  text-underline-offset: 0.375em !important;
}

.link-offset-3-hover:hover {
  text-underline-offset: 0.375em !important;
}

.link-underline-primary {
  --bs-link-underline-opacity: 1;
  -webkit-text-decoration-color: rgba(var(--bs-primary-rgb), var(--bs-link-underline-opacity)) !important;
          text-decoration-color: rgba(var(--bs-primary-rgb), var(--bs-link-underline-opacity)) !important;
}

.link-underline-secondary {
  --bs-link-underline-opacity: 1;
  -webkit-text-decoration-color: rgba(var(--bs-secondary-rgb), var(--bs-link-underline-opacity)) !important;
          text-decoration-color: rgba(var(--bs-secondary-rgb), var(--bs-link-underline-opacity)) !important;
}

.link-underline-success {
  --bs-link-underline-opacity: 1;
  -webkit-text-decoration-color: rgba(var(--bs-success-rgb), var(--bs-link-underline-opacity)) !important;
          text-decoration-color: rgba(var(--bs-success-rgb), var(--bs-link-underline-opacity)) !important;
}

.link-underline-info {
  --bs-link-underline-opacity: 1;
  -webkit-text-decoration-color: rgba(var(--bs-info-rgb), var(--bs-link-underline-opacity)) !important;
          text-decoration-color: rgba(var(--bs-info-rgb), var(--bs-link-underline-opacity)) !important;
}

.link-underline-warning {
  --bs-link-underline-opacity: 1;
  -webkit-text-decoration-color: rgba(var(--bs-warning-rgb), var(--bs-link-underline-opacity)) !important;
          text-decoration-color: rgba(var(--bs-warning-rgb), var(--bs-link-underline-opacity)) !important;
}

.link-underline-danger {
  --bs-link-underline-opacity: 1;
  -webkit-text-decoration-color: rgba(var(--bs-danger-rgb), var(--bs-link-underline-opacity)) !important;
          text-decoration-color: rgba(var(--bs-danger-rgb), var(--bs-link-underline-opacity)) !important;
}

.link-underline-light {
  --bs-link-underline-opacity: 1;
  -webkit-text-decoration-color: rgba(var(--bs-light-rgb), var(--bs-link-underline-opacity)) !important;
          text-decoration-color: rgba(var(--bs-light-rgb), var(--bs-link-underline-opacity)) !important;
}

.link-underline-dark {
  --bs-link-underline-opacity: 1;
  -webkit-text-decoration-color: rgba(var(--bs-dark-rgb), var(--bs-link-underline-opacity)) !important;
          text-decoration-color: rgba(var(--bs-dark-rgb), var(--bs-link-underline-opacity)) !important;
}

.link-underline {
  --bs-link-underline-opacity: 1;
  -webkit-text-decoration-color: rgba(var(--bs-link-color-rgb), var(--bs-link-underline-opacity, 1)) !important;
          text-decoration-color: rgba(var(--bs-link-color-rgb), var(--bs-link-underline-opacity, 1)) !important;
}

.link-underline-opacity-0 {
  --bs-link-underline-opacity: 0;
}

.link-underline-opacity-0-hover:hover {
  --bs-link-underline-opacity: 0;
}

.link-underline-opacity-10 {
  --bs-link-underline-opacity: 0.1;
}

.link-underline-opacity-10-hover:hover {
  --bs-link-underline-opacity: 0.1;
}

.link-underline-opacity-25 {
  --bs-link-underline-opacity: 0.25;
}

.link-underline-opacity-25-hover:hover {
  --bs-link-underline-opacity: 0.25;
}

.link-underline-opacity-50 {
  --bs-link-underline-opacity: 0.5;
}

.link-underline-opacity-50-hover:hover {
  --bs-link-underline-opacity: 0.5;
}

.link-underline-opacity-75 {
  --bs-link-underline-opacity: 0.75;
}

.link-underline-opacity-75-hover:hover {
  --bs-link-underline-opacity: 0.75;
}

.link-underline-opacity-100 {
  --bs-link-underline-opacity: 1;
}

.link-underline-opacity-100-hover:hover {
  --bs-link-underline-opacity: 1;
}

.bg-primary {
  --bs-bg-opacity: 1;
  background-color: rgba(var(--bs-primary-rgb), var(--bs-bg-opacity)) !important;
}

.bg-secondary {
  --bs-bg-opacity: 1;
  background-color: rgba(var(--bs-secondary-rgb), var(--bs-bg-opacity)) !important;
}

.bg-success {
  --bs-bg-opacity: 1;
  background-color: rgba(var(--bs-success-rgb), var(--bs-bg-opacity)) !important;
}

.bg-info {
  --bs-bg-opacity: 1;
  background-color: rgba(var(--bs-info-rgb), var(--bs-bg-opacity)) !important;
}

.bg-warning {
  --bs-bg-opacity: 1;
  background-color: rgba(var(--bs-warning-rgb), var(--bs-bg-opacity)) !important;
}

.bg-danger {
  --bs-bg-opacity: 1;
  background-color: rgba(var(--bs-danger-rgb), var(--bs-bg-opacity)) !important;
}

.bg-light {
  --bs-bg-opacity: 1;
  background-color: rgba(var(--bs-light-rgb), var(--bs-bg-opacity)) !important;
}

.bg-dark {
  --bs-bg-opacity: 1;
  background-color: rgba(var(--bs-dark-rgb), var(--bs-bg-opacity)) !important;
}

.bg-black {
  --bs-bg-opacity: 1;
  background-color: rgba(var(--bs-black-rgb), var(--bs-bg-opacity)) !important;
}

.bg-white {
  --bs-bg-opacity: 1;
  background-color: rgba(var(--bs-white-rgb), var(--bs-bg-opacity)) !important;
}

.bg-body {
  --bs-bg-opacity: 1;
  background-color: rgba(var(--bs-body-bg-rgb), var(--bs-bg-opacity)) !important;
}

.bg-transparent {
  --bs-bg-opacity: 1;
  background-color: transparent !important;
}

.bg-body-secondary {
  --bs-bg-opacity: 1;
  background-color: rgba(var(--bs-secondary-bg-rgb), var(--bs-bg-opacity)) !important;
}

.bg-body-tertiary {
  --bs-bg-opacity: 1;
  background-color: rgba(var(--bs-tertiary-bg-rgb), var(--bs-bg-opacity)) !important;
}

.bg-opacity-10 {
  --bs-bg-opacity: 0.1;
}

.bg-opacity-25 {
  --bs-bg-opacity: 0.25;
}

.bg-opacity-50 {
  --bs-bg-opacity: 0.5;
}

.bg-opacity-75 {
  --bs-bg-opacity: 0.75;
}

.bg-opacity-100 {
  --bs-bg-opacity: 1;
}

.bg-primary-subtle {
  background-color: var(--bs-primary-bg-subtle) !important;
}

.bg-secondary-subtle {
  background-color: var(--bs-secondary-bg-subtle) !important;
}

.bg-success-subtle {
  background-color: var(--bs-success-bg-subtle) !important;
}

.bg-info-subtle {
  background-color: var(--bs-info-bg-subtle) !important;
}

.bg-warning-subtle {
  background-color: var(--bs-warning-bg-subtle) !important;
}

.bg-danger-subtle {
  background-color: var(--bs-danger-bg-subtle) !important;
}

.bg-light-subtle {
  background-color: var(--bs-light-bg-subtle) !important;
}

.bg-dark-subtle {
  background-color: var(--bs-dark-bg-subtle) !important;
}

.bg-gradient {
  background-image: var(--bs-gradient) !important;
}

.user-select-all {
  -webkit-user-select: all !important;
     -moz-user-select: all !important;
          user-select: all !important;
}

.user-select-auto {
  -webkit-user-select: auto !important;
     -moz-user-select: auto !important;
          user-select: auto !important;
}

.user-select-none {
  -webkit-user-select: none !important;
     -moz-user-select: none !important;
          user-select: none !important;
}

.pe-none {
  pointer-events: none !important;
}

.pe-auto {
  pointer-events: auto !important;
}

.rounded {
  border-radius: var(--bs-border-radius) !important;
}

.rounded-0 {
  border-radius: 0 !important;
}

.rounded-1 {
  border-radius: var(--bs-border-radius-sm) !important;
}

.rounded-2 {
  border-radius: var(--bs-border-radius) !important;
}

.rounded-3 {
  border-radius: var(--bs-border-radius-lg) !important;
}

.rounded-4 {
  border-radius: var(--bs-border-radius-xl) !important;
}

.rounded-5 {
  border-radius: var(--bs-border-radius-xxl) !important;
}

.rounded-circle {
  border-radius: 50% !important;
}

.rounded-pill {
  border-radius: var(--bs-border-radius-pill) !important;
}

.rounded-top {
  border-top-left-radius: var(--bs-border-radius) !important;
  border-top-right-radius: var(--bs-border-radius) !important;
}

.rounded-top-0 {
  border-top-left-radius: 0 !important;
  border-top-right-radius: 0 !important;
}

.rounded-top-1 {
  border-top-left-radius: var(--bs-border-radius-sm) !important;
  border-top-right-radius: var(--bs-border-radius-sm) !important;
}

.rounded-top-2 {
  border-top-left-radius: var(--bs-border-radius) !important;
  border-top-right-radius: var(--bs-border-radius) !important;
}

.rounded-top-3 {
  border-top-left-radius: var(--bs-border-radius-lg) !important;
  border-top-right-radius: var(--bs-border-radius-lg) !important;
}

.rounded-top-4 {
  border-top-left-radius: var(--bs-border-radius-xl) !important;
  border-top-right-radius: var(--bs-border-radius-xl) !important;
}

.rounded-top-5 {
  border-top-left-radius: var(--bs-border-radius-xxl) !important;
  border-top-right-radius: var(--bs-border-radius-xxl) !important;
}

.rounded-top-circle {
  border-top-left-radius: 50% !important;
  border-top-right-radius: 50% !important;
}

.rounded-top-pill {
  border-top-left-radius: var(--bs-border-radius-pill) !important;
  border-top-right-radius: var(--bs-border-radius-pill) !important;
}

.rounded-end {
  border-top-right-radius: var(--bs-border-radius) !important;
  border-bottom-right-radius: var(--bs-border-radius) !important;
}

.rounded-end-0 {
  border-top-right-radius: 0 !important;
  border-bottom-right-radius: 0 !important;
}

.rounded-end-1 {
  border-top-right-radius: var(--bs-border-radius-sm) !important;
  border-bottom-right-radius: var(--bs-border-radius-sm) !important;
}

.rounded-end-2 {
  border-top-right-radius: var(--bs-border-radius) !important;
  border-bottom-right-radius: var(--bs-border-radius) !important;
}

.rounded-end-3 {
  border-top-right-radius: var(--bs-border-radius-lg) !important;
  border-bottom-right-radius: var(--bs-border-radius-lg) !important;
}

.rounded-end-4 {
  border-top-right-radius: var(--bs-border-radius-xl) !important;
  border-bottom-right-radius: var(--bs-border-radius-xl) !important;
}

.rounded-end-5 {
  border-top-right-radius: var(--bs-border-radius-xxl) !important;
  border-bottom-right-radius: var(--bs-border-radius-xxl) !important;
}

.rounded-end-circle {
  border-top-right-radius: 50% !important;
  border-bottom-right-radius: 50% !important;
}

.rounded-end-pill {
  border-top-right-radius: var(--bs-border-radius-pill) !important;
  border-bottom-right-radius: var(--bs-border-radius-pill) !important;
}

.rounded-bottom {
  border-bottom-right-radius: var(--bs-border-radius) !important;
  border-bottom-left-radius: var(--bs-border-radius) !important;
}

.rounded-bottom-0 {
  border-bottom-right-radius: 0 !important;
  border-bottom-left-radius: 0 !important;
}

.rounded-bottom-1 {
  border-bottom-right-radius: var(--bs-border-radius-sm) !important;
  border-bottom-left-radius: var(--bs-border-radius-sm) !important;
}

.rounded-bottom-2 {
  border-bottom-right-radius: var(--bs-border-radius) !important;
  border-bottom-left-radius: var(--bs-border-radius) !important;
}

.rounded-bottom-3 {
  border-bottom-right-radius: var(--bs-border-radius-lg) !important;
  border-bottom-left-radius: var(--bs-border-radius-lg) !important;
}

.rounded-bottom-4 {
  border-bottom-right-radius: var(--bs-border-radius-xl) !important;
  border-bottom-left-radius: var(--bs-border-radius-xl) !important;
}

.rounded-bottom-5 {
  border-bottom-right-radius: var(--bs-border-radius-xxl) !important;
  border-bottom-left-radius: var(--bs-border-radius-xxl) !important;
}

.rounded-bottom-circle {
  border-bottom-right-radius: 50% !important;
  border-bottom-left-radius: 50% !important;
}

.rounded-bottom-pill {
  border-bottom-right-radius: var(--bs-border-radius-pill) !important;
  border-bottom-left-radius: var(--bs-border-radius-pill) !important;
}

.rounded-start {
  border-bottom-left-radius: var(--bs-border-radius) !important;
  border-top-left-radius: var(--bs-border-radius) !important;
}

.rounded-start-0 {
  border-bottom-left-radius: 0 !important;
  border-top-left-radius: 0 !important;
}

.rounded-start-1 {
  border-bottom-left-radius: var(--bs-border-radius-sm) !important;
  border-top-left-radius: var(--bs-border-radius-sm) !important;
}

.rounded-start-2 {
  border-bottom-left-radius: var(--bs-border-radius) !important;
  border-top-left-radius: var(--bs-border-radius) !important;
}

.rounded-start-3 {
  border-bottom-left-radius: var(--bs-border-radius-lg) !important;
  border-top-left-radius: var(--bs-border-radius-lg) !important;
}

.rounded-start-4 {
  border-bottom-left-radius: var(--bs-border-radius-xl) !important;
  border-top-left-radius: var(--bs-border-radius-xl) !important;
}

.rounded-start-5 {
  border-bottom-left-radius: var(--bs-border-radius-xxl) !important;
  border-top-left-radius: var(--bs-border-radius-xxl) !important;
}

.rounded-start-circle {
  border-bottom-left-radius: 50% !important;
  border-top-left-radius: 50% !important;
}

.rounded-start-pill {
  border-bottom-left-radius: var(--bs-border-radius-pill) !important;
  border-top-left-radius: var(--bs-border-radius-pill) !important;
}

.visible {
  visibility: visible !important;
}

.invisible {
  visibility: hidden !important;
}

.z-n1 {
  z-index: -1 !important;
}

.z-0 {
  z-index: 0 !important;
}

.z-1 {
  z-index: 1 !important;
}

.z-2 {
  z-index: 2 !important;
}

.z-3 {
  z-index: 3 !important;
}

@media (min-width: 576px) {
  .float-sm-start {
    float: left !important;
  }
  .float-sm-end {
    float: right !important;
  }
  .float-sm-none {
    float: none !important;
  }
  .object-fit-sm-contain {
    -o-object-fit: contain !important;
       object-fit: contain !important;
  }
  .object-fit-sm-cover {
    -o-object-fit: cover !important;
       object-fit: cover !important;
  }
  .object-fit-sm-fill {
    -o-object-fit: fill !important;
       object-fit: fill !important;
  }
  .object-fit-sm-scale {
    -o-object-fit: scale-down !important;
       object-fit: scale-down !important;
  }
  .object-fit-sm-none {
    -o-object-fit: none !important;
       object-fit: none !important;
  }
  .d-sm-inline {
    display: inline !important;
  }
  .d-sm-inline-block {
    display: inline-block !important;
  }
  .d-sm-block {
    display: block !important;
  }
  .d-sm-grid {
    display: grid !important;
  }
  .d-sm-inline-grid {
    display: inline-grid !important;
  }
  .d-sm-table {
    display: table !important;
  }
  .d-sm-table-row {
    display: table-row !important;
  }
  .d-sm-table-cell {
    display: table-cell !important;
  }
  .d-sm-flex {
    display: flex !important;
  }
  .d-sm-inline-flex {
    display: inline-flex !important;
  }
  .d-sm-none {
    display: none !important;
  }
  .flex-sm-fill {
    flex: 1 1 auto !important;
  }
  .flex-sm-row {
    flex-direction: row !important;
  }
  .flex-sm-column {
    flex-direction: column !important;
  }
  .flex-sm-row-reverse {
    flex-direction: row-reverse !important;
  }
  .flex-sm-column-reverse {
    flex-direction: column-reverse !important;
  }
  .flex-sm-grow-0 {
    flex-grow: 0 !important;
  }
  .flex-sm-grow-1 {
    flex-grow: 1 !important;
  }
  .flex-sm-shrink-0 {
    flex-shrink: 0 !important;
  }
  .flex-sm-shrink-1 {
    flex-shrink: 1 !important;
  }
  .flex-sm-wrap {
    flex-wrap: wrap !important;
  }
  .flex-sm-nowrap {
    flex-wrap: nowrap !important;
  }
  .flex-sm-wrap-reverse {
    flex-wrap: wrap-reverse !important;
  }
  .justify-content-sm-start {
    justify-content: flex-start !important;
  }
  .justify-content-sm-end {
    justify-content: flex-end !important;
  }
  .justify-content-sm-center {
    justify-content: center !important;
  }
  .justify-content-sm-between {
    justify-content: space-between !important;
  }
  .justify-content-sm-around {
    justify-content: space-around !important;
  }
  .justify-content-sm-evenly {
    justify-content: space-evenly !important;
  }
  .align-items-sm-start {
    align-items: flex-start !important;
  }
  .align-items-sm-end {
    align-items: flex-end !important;
  }
  .align-items-sm-center {
    align-items: center !important;
  }
  .align-items-sm-baseline {
    align-items: baseline !important;
  }
  .align-items-sm-stretch {
    align-items: stretch !important;
  }
  .align-content-sm-start {
    align-content: flex-start !important;
  }
  .align-content-sm-end {
    align-content: flex-end !important;
  }
  .align-content-sm-center {
    align-content: center !important;
  }
  .align-content-sm-between {
    align-content: space-between !important;
  }
  .align-content-sm-around {
    align-content: space-around !important;
  }
  .align-content-sm-stretch {
    align-content: stretch !important;
  }
  .align-self-sm-auto {
    align-self: auto !important;
  }
  .align-self-sm-start {
    align-self: flex-start !important;
  }
  .align-self-sm-end {
    align-self: flex-end !important;
  }
  .align-self-sm-center {
    align-self: center !important;
  }
  .align-self-sm-baseline {
    align-self: baseline !important;
  }
  .align-self-sm-stretch {
    align-self: stretch !important;
  }
  .order-sm-first {
    order: -1 !important;
  }
  .order-sm-0 {
    order: 0 !important;
  }
  .order-sm-1 {
    order: 1 !important;
  }
  .order-sm-2 {
    order: 2 !important;
  }
  .order-sm-3 {
    order: 3 !important;
  }
  .order-sm-4 {
    order: 4 !important;
  }
  .order-sm-5 {
    order: 5 !important;
  }
  .order-sm-last {
    order: 6 !important;
  }
  .m-sm-0 {
    margin: 0 !important;
  }
  .m-sm-1 {
    margin: 0.25rem !important;
  }
  .m-sm-2 {
    margin: 0.5rem !important;
  }
  .m-sm-3 {
    margin: 1rem !important;
  }
  .m-sm-4 {
    margin: 1.5rem !important;
  }
  .m-sm-5 {
    margin: 3rem !important;
  }
  .m-sm-auto {
    margin: auto !important;
  }
  .mx-sm-0 {
    margin-right: 0 !important;
    margin-left: 0 !important;
  }
  .mx-sm-1 {
    margin-right: 0.25rem !important;
    margin-left: 0.25rem !important;
  }
  .mx-sm-2 {
    margin-right: 0.5rem !important;
    margin-left: 0.5rem !important;
  }
  .mx-sm-3 {
    margin-right: 1rem !important;
    margin-left: 1rem !important;
  }
  .mx-sm-4 {
    margin-right: 1.5rem !important;
    margin-left: 1.5rem !important;
  }
  .mx-sm-5 {
    margin-right: 3rem !important;
    margin-left: 3rem !important;
  }
  .mx-sm-auto {
    margin-right: auto !important;
    margin-left: auto !important;
  }
  .my-sm-0 {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }
  .my-sm-1 {
    margin-top: 0.25rem !important;
    margin-bottom: 0.25rem !important;
  }
  .my-sm-2 {
    margin-top: 0.5rem !important;
    margin-bottom: 0.5rem !important;
  }
  .my-sm-3 {
    margin-top: 1rem !important;
    margin-bottom: 1rem !important;
  }
  .my-sm-4 {
    margin-top: 1.5rem !important;
    margin-bottom: 1.5rem !important;
  }
  .my-sm-5 {
    margin-top: 3rem !important;
    margin-bottom: 3rem !important;
  }
  .my-sm-auto {
    margin-top: auto !important;
    margin-bottom: auto !important;
  }
  .mt-sm-0 {
    margin-top: 0 !important;
  }
  .mt-sm-1 {
    margin-top: 0.25rem !important;
  }
  .mt-sm-2 {
    margin-top: 0.5rem !important;
  }
  .mt-sm-3 {
    margin-top: 1rem !important;
  }
  .mt-sm-4 {
    margin-top: 1.5rem !important;
  }
  .mt-sm-5 {
    margin-top: 3rem !important;
  }
  .mt-sm-auto {
    margin-top: auto !important;
  }
  .me-sm-0 {
    margin-right: 0 !important;
  }
  .me-sm-1 {
    margin-right: 0.25rem !important;
  }
  .me-sm-2 {
    margin-right: 0.5rem !important;
  }
  .me-sm-3 {
    margin-right: 1rem !important;
  }
  .me-sm-4 {
    margin-right: 1.5rem !important;
  }
  .me-sm-5 {
    margin-right: 3rem !important;
  }
  .me-sm-auto {
    margin-right: auto !important;
  }
  .mb-sm-0 {
    margin-bottom: 0 !important;
  }
  .mb-sm-1 {
    margin-bottom: 0.25rem !important;
  }
  .mb-sm-2 {
    margin-bottom: 0.5rem !important;
  }
  .mb-sm-3 {
    margin-bottom: 1rem !important;
  }
  .mb-sm-4 {
    margin-bottom: 1.5rem !important;
  }
  .mb-sm-5 {
    margin-bottom: 3rem !important;
  }
  .mb-sm-auto {
    margin-bottom: auto !important;
  }
  .ms-sm-0 {
    margin-left: 0 !important;
  }
  .ms-sm-1 {
    margin-left: 0.25rem !important;
  }
  .ms-sm-2 {
    margin-left: 0.5rem !important;
  }
  .ms-sm-3 {
    margin-left: 1rem !important;
  }
  .ms-sm-4 {
    margin-left: 1.5rem !important;
  }
  .ms-sm-5 {
    margin-left: 3rem !important;
  }
  .ms-sm-auto {
    margin-left: auto !important;
  }
  .p-sm-0 {
    padding: 0 !important;
  }
  .p-sm-1 {
    padding: 0.25rem !important;
  }
  .p-sm-2 {
    padding: 0.5rem !important;
  }
  .p-sm-3 {
    padding: 1rem !important;
  }
  .p-sm-4 {
    padding: 1.5rem !important;
  }
  .p-sm-5 {
    padding: 3rem !important;
  }
  .px-sm-0 {
    padding-right: 0 !important;
    padding-left: 0 !important;
  }
  .px-sm-1 {
    padding-right: 0.25rem !important;
    padding-left: 0.25rem !important;
  }
  .px-sm-2 {
    padding-right: 0.5rem !important;
    padding-left: 0.5rem !important;
  }
  .px-sm-3 {
    padding-right: 1rem !important;
    padding-left: 1rem !important;
  }
  .px-sm-4 {
    padding-right: 1.5rem !important;
    padding-left: 1.5rem !important;
  }
  .px-sm-5 {
    padding-right: 3rem !important;
    padding-left: 3rem !important;
  }
  .py-sm-0 {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }
  .py-sm-1 {
    padding-top: 0.25rem !important;
    padding-bottom: 0.25rem !important;
  }
  .py-sm-2 {
    padding-top: 0.5rem !important;
    padding-bottom: 0.5rem !important;
  }
  .py-sm-3 {
    padding-top: 1rem !important;
    padding-bottom: 1rem !important;
  }
  .py-sm-4 {
    padding-top: 1.5rem !important;
    padding-bottom: 1.5rem !important;
  }
  .py-sm-5 {
    padding-top: 3rem !important;
    padding-bottom: 3rem !important;
  }
  .pt-sm-0 {
    padding-top: 0 !important;
  }
  .pt-sm-1 {
    padding-top: 0.25rem !important;
  }
  .pt-sm-2 {
    padding-top: 0.5rem !important;
  }
  .pt-sm-3 {
    padding-top: 1rem !important;
  }
  .pt-sm-4 {
    padding-top: 1.5rem !important;
  }
  .pt-sm-5 {
    padding-top: 3rem !important;
  }
  .pe-sm-0 {
    padding-right: 0 !important;
  }
  .pe-sm-1 {
    padding-right: 0.25rem !important;
  }
  .pe-sm-2 {
    padding-right: 0.5rem !important;
  }
  .pe-sm-3 {
    padding-right: 1rem !important;
  }
  .pe-sm-4 {
    padding-right: 1.5rem !important;
  }
  .pe-sm-5 {
    padding-right: 3rem !important;
  }
  .pb-sm-0 {
    padding-bottom: 0 !important;
  }
  .pb-sm-1 {
    padding-bottom: 0.25rem !important;
  }
  .pb-sm-2 {
    padding-bottom: 0.5rem !important;
  }
  .pb-sm-3 {
    padding-bottom: 1rem !important;
  }
  .pb-sm-4 {
    padding-bottom: 1.5rem !important;
  }
  .pb-sm-5 {
    padding-bottom: 3rem !important;
  }
  .ps-sm-0 {
    padding-left: 0 !important;
  }
  .ps-sm-1 {
    padding-left: 0.25rem !important;
  }
  .ps-sm-2 {
    padding-left: 0.5rem !important;
  }
  .ps-sm-3 {
    padding-left: 1rem !important;
  }
  .ps-sm-4 {
    padding-left: 1.5rem !important;
  }
  .ps-sm-5 {
    padding-left: 3rem !important;
  }
  .gap-sm-0 {
    gap: 0 !important;
  }
  .gap-sm-1 {
    gap: 0.25rem !important;
  }
  .gap-sm-2 {
    gap: 0.5rem !important;
  }
  .gap-sm-3 {
    gap: 1rem !important;
  }
  .gap-sm-4 {
    gap: 1.5rem !important;
  }
  .gap-sm-5 {
    gap: 3rem !important;
  }
  .row-gap-sm-0 {
    row-gap: 0 !important;
  }
  .row-gap-sm-1 {
    row-gap: 0.25rem !important;
  }
  .row-gap-sm-2 {
    row-gap: 0.5rem !important;
  }
  .row-gap-sm-3 {
    row-gap: 1rem !important;
  }
  .row-gap-sm-4 {
    row-gap: 1.5rem !important;
  }
  .row-gap-sm-5 {
    row-gap: 3rem !important;
  }
  .column-gap-sm-0 {
    -moz-column-gap: 0 !important;
         column-gap: 0 !important;
  }
  .column-gap-sm-1 {
    -moz-column-gap: 0.25rem !important;
         column-gap: 0.25rem !important;
  }
  .column-gap-sm-2 {
    -moz-column-gap: 0.5rem !important;
         column-gap: 0.5rem !important;
  }
  .column-gap-sm-3 {
    -moz-column-gap: 1rem !important;
         column-gap: 1rem !important;
  }
  .column-gap-sm-4 {
    -moz-column-gap: 1.5rem !important;
         column-gap: 1.5rem !important;
  }
  .column-gap-sm-5 {
    -moz-column-gap: 3rem !important;
         column-gap: 3rem !important;
  }
  .text-sm-start {
    text-align: left !important;
  }
  .text-sm-end {
    text-align: right !important;
  }
  .text-sm-center {
    text-align: center !important;
  }
}
@media (min-width: 768px) {
  .float-md-start {
    float: left !important;
  }
  .float-md-end {
    float: right !important;
  }
  .float-md-none {
    float: none !important;
  }
  .object-fit-md-contain {
    -o-object-fit: contain !important;
       object-fit: contain !important;
  }
  .object-fit-md-cover {
    -o-object-fit: cover !important;
       object-fit: cover !important;
  }
  .object-fit-md-fill {
    -o-object-fit: fill !important;
       object-fit: fill !important;
  }
  .object-fit-md-scale {
    -o-object-fit: scale-down !important;
       object-fit: scale-down !important;
  }
  .object-fit-md-none {
    -o-object-fit: none !important;
       object-fit: none !important;
  }
  .d-md-inline {
    display: inline !important;
  }
  .d-md-inline-block {
    display: inline-block !important;
  }
  .d-md-block {
    display: block !important;
  }
  .d-md-grid {
    display: grid !important;
  }
  .d-md-inline-grid {
    display: inline-grid !important;
  }
  .d-md-table {
    display: table !important;
  }
  .d-md-table-row {
    display: table-row !important;
  }
  .d-md-table-cell {
    display: table-cell !important;
  }
  .d-md-flex {
    display: flex !important;
  }
  .d-md-inline-flex {
    display: inline-flex !important;
  }
  .d-md-none {
    display: none !important;
  }
  .flex-md-fill {
    flex: 1 1 auto !important;
  }
  .flex-md-row {
    flex-direction: row !important;
  }
  .flex-md-column {
    flex-direction: column !important;
  }
  .flex-md-row-reverse {
    flex-direction: row-reverse !important;
  }
  .flex-md-column-reverse {
    flex-direction: column-reverse !important;
  }
  .flex-md-grow-0 {
    flex-grow: 0 !important;
  }
  .flex-md-grow-1 {
    flex-grow: 1 !important;
  }
  .flex-md-shrink-0 {
    flex-shrink: 0 !important;
  }
  .flex-md-shrink-1 {
    flex-shrink: 1 !important;
  }
  .flex-md-wrap {
    flex-wrap: wrap !important;
  }
  .flex-md-nowrap {
    flex-wrap: nowrap !important;
  }
  .flex-md-wrap-reverse {
    flex-wrap: wrap-reverse !important;
  }
  .justify-content-md-start {
    justify-content: flex-start !important;
  }
  .justify-content-md-end {
    justify-content: flex-end !important;
  }
  .justify-content-md-center {
    justify-content: center !important;
  }
  .justify-content-md-between {
    justify-content: space-between !important;
  }
  .justify-content-md-around {
    justify-content: space-around !important;
  }
  .justify-content-md-evenly {
    justify-content: space-evenly !important;
  }
  .align-items-md-start {
    align-items: flex-start !important;
  }
  .align-items-md-end {
    align-items: flex-end !important;
  }
  .align-items-md-center {
    align-items: center !important;
  }
  .align-items-md-baseline {
    align-items: baseline !important;
  }
  .align-items-md-stretch {
    align-items: stretch !important;
  }
  .align-content-md-start {
    align-content: flex-start !important;
  }
  .align-content-md-end {
    align-content: flex-end !important;
  }
  .align-content-md-center {
    align-content: center !important;
  }
  .align-content-md-between {
    align-content: space-between !important;
  }
  .align-content-md-around {
    align-content: space-around !important;
  }
  .align-content-md-stretch {
    align-content: stretch !important;
  }
  .align-self-md-auto {
    align-self: auto !important;
  }
  .align-self-md-start {
    align-self: flex-start !important;
  }
  .align-self-md-end {
    align-self: flex-end !important;
  }
  .align-self-md-center {
    align-self: center !important;
  }
  .align-self-md-baseline {
    align-self: baseline !important;
  }
  .align-self-md-stretch {
    align-self: stretch !important;
  }
  .order-md-first {
    order: -1 !important;
  }
  .order-md-0 {
    order: 0 !important;
  }
  .order-md-1 {
    order: 1 !important;
  }
  .order-md-2 {
    order: 2 !important;
  }
  .order-md-3 {
    order: 3 !important;
  }
  .order-md-4 {
    order: 4 !important;
  }
  .order-md-5 {
    order: 5 !important;
  }
  .order-md-last {
    order: 6 !important;
  }
  .m-md-0 {
    margin: 0 !important;
  }
  .m-md-1 {
    margin: 0.25rem !important;
  }
  .m-md-2 {
    margin: 0.5rem !important;
  }
  .m-md-3 {
    margin: 1rem !important;
  }
  .m-md-4 {
    margin: 1.5rem !important;
  }
  .m-md-5 {
    margin: 3rem !important;
  }
  .m-md-auto {
    margin: auto !important;
  }
  .mx-md-0 {
    margin-right: 0 !important;
    margin-left: 0 !important;
  }
  .mx-md-1 {
    margin-right: 0.25rem !important;
    margin-left: 0.25rem !important;
  }
  .mx-md-2 {
    margin-right: 0.5rem !important;
    margin-left: 0.5rem !important;
  }
  .mx-md-3 {
    margin-right: 1rem !important;
    margin-left: 1rem !important;
  }
  .mx-md-4 {
    margin-right: 1.5rem !important;
    margin-left: 1.5rem !important;
  }
  .mx-md-5 {
    margin-right: 3rem !important;
    margin-left: 3rem !important;
  }
  .mx-md-auto {
    margin-right: auto !important;
    margin-left: auto !important;
  }
  .my-md-0 {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }
  .my-md-1 {
    margin-top: 0.25rem !important;
    margin-bottom: 0.25rem !important;
  }
  .my-md-2 {
    margin-top: 0.5rem !important;
    margin-bottom: 0.5rem !important;
  }
  .my-md-3 {
    margin-top: 1rem !important;
    margin-bottom: 1rem !important;
  }
  .my-md-4 {
    margin-top: 1.5rem !important;
    margin-bottom: 1.5rem !important;
  }
  .my-md-5 {
    margin-top: 3rem !important;
    margin-bottom: 3rem !important;
  }
  .my-md-auto {
    margin-top: auto !important;
    margin-bottom: auto !important;
  }
  .mt-md-0 {
    margin-top: 0 !important;
  }
  .mt-md-1 {
    margin-top: 0.25rem !important;
  }
  .mt-md-2 {
    margin-top: 0.5rem !important;
  }
  .mt-md-3 {
    margin-top: 1rem !important;
  }
  .mt-md-4 {
    margin-top: 1.5rem !important;
  }
  .mt-md-5 {
    margin-top: 3rem !important;
  }
  .mt-md-auto {
    margin-top: auto !important;
  }
  .me-md-0 {
    margin-right: 0 !important;
  }
  .me-md-1 {
    margin-right: 0.25rem !important;
  }
  .me-md-2 {
    margin-right: 0.5rem !important;
  }
  .me-md-3 {
    margin-right: 1rem !important;
  }
  .me-md-4 {
    margin-right: 1.5rem !important;
  }
  .me-md-5 {
    margin-right: 3rem !important;
  }
  .me-md-auto {
    margin-right: auto !important;
  }
  .mb-md-0 {
    margin-bottom: 0 !important;
  }
  .mb-md-1 {
    margin-bottom: 0.25rem !important;
  }
  .mb-md-2 {
    margin-bottom: 0.5rem !important;
  }
  .mb-md-3 {
    margin-bottom: 1rem !important;
  }
  .mb-md-4 {
    margin-bottom: 1.5rem !important;
  }
  .mb-md-5 {
    margin-bottom: 3rem !important;
  }
  .mb-md-auto {
    margin-bottom: auto !important;
  }
  .ms-md-0 {
    margin-left: 0 !important;
  }
  .ms-md-1 {
    margin-left: 0.25rem !important;
  }
  .ms-md-2 {
    margin-left: 0.5rem !important;
  }
  .ms-md-3 {
    margin-left: 1rem !important;
  }
  .ms-md-4 {
    margin-left: 1.5rem !important;
  }
  .ms-md-5 {
    margin-left: 3rem !important;
  }
  .ms-md-auto {
    margin-left: auto !important;
  }
  .p-md-0 {
    padding: 0 !important;
  }
  .p-md-1 {
    padding: 0.25rem !important;
  }
  .p-md-2 {
    padding: 0.5rem !important;
  }
  .p-md-3 {
    padding: 1rem !important;
  }
  .p-md-4 {
    padding: 1.5rem !important;
  }
  .p-md-5 {
    padding: 3rem !important;
  }
  .px-md-0 {
    padding-right: 0 !important;
    padding-left: 0 !important;
  }
  .px-md-1 {
    padding-right: 0.25rem !important;
    padding-left: 0.25rem !important;
  }
  .px-md-2 {
    padding-right: 0.5rem !important;
    padding-left: 0.5rem !important;
  }
  .px-md-3 {
    padding-right: 1rem !important;
    padding-left: 1rem !important;
  }
  .px-md-4 {
    padding-right: 1.5rem !important;
    padding-left: 1.5rem !important;
  }
  .px-md-5 {
    padding-right: 3rem !important;
    padding-left: 3rem !important;
  }
  .py-md-0 {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }
  .py-md-1 {
    padding-top: 0.25rem !important;
    padding-bottom: 0.25rem !important;
  }
  .py-md-2 {
    padding-top: 0.5rem !important;
    padding-bottom: 0.5rem !important;
  }
  .py-md-3 {
    padding-top: 1rem !important;
    padding-bottom: 1rem !important;
  }
  .py-md-4 {
    padding-top: 1.5rem !important;
    padding-bottom: 1.5rem !important;
  }
  .py-md-5 {
    padding-top: 3rem !important;
    padding-bottom: 3rem !important;
  }
  .pt-md-0 {
    padding-top: 0 !important;
  }
  .pt-md-1 {
    padding-top: 0.25rem !important;
  }
  .pt-md-2 {
    padding-top: 0.5rem !important;
  }
  .pt-md-3, #products #andamios-detalle p,
  #andamios #andamios-detalle p {
    padding-top: 1rem !important;
  }
  .pt-md-4 {
    padding-top: 1.5rem !important;
  }
  .pt-md-5 {
    padding-top: 3rem !important;
  }
  .pe-md-0 {
    padding-right: 0 !important;
  }
  .pe-md-1 {
    padding-right: 0.25rem !important;
  }
  .pe-md-2 {
    padding-right: 0.5rem !important;
  }
  .pe-md-3 {
    padding-right: 1rem !important;
  }
  .pe-md-4 {
    padding-right: 1.5rem !important;
  }
  .pe-md-5 {
    padding-right: 3rem !important;
  }
  .pb-md-0 {
    padding-bottom: 0 !important;
  }
  .pb-md-1 {
    padding-bottom: 0.25rem !important;
  }
  .pb-md-2 {
    padding-bottom: 0.5rem !important;
  }
  .pb-md-3 {
    padding-bottom: 1rem !important;
  }
  .pb-md-4 {
    padding-bottom: 1.5rem !important;
  }
  .pb-md-5 {
    padding-bottom: 3rem !important;
  }
  .ps-md-0 {
    padding-left: 0 !important;
  }
  .ps-md-1 {
    padding-left: 0.25rem !important;
  }
  .ps-md-2 {
    padding-left: 0.5rem !important;
  }
  .ps-md-3 {
    padding-left: 1rem !important;
  }
  .ps-md-4 {
    padding-left: 1.5rem !important;
  }
  .ps-md-5 {
    padding-left: 3rem !important;
  }
  .gap-md-0 {
    gap: 0 !important;
  }
  .gap-md-1 {
    gap: 0.25rem !important;
  }
  .gap-md-2 {
    gap: 0.5rem !important;
  }
  .gap-md-3 {
    gap: 1rem !important;
  }
  .gap-md-4 {
    gap: 1.5rem !important;
  }
  .gap-md-5 {
    gap: 3rem !important;
  }
  .row-gap-md-0 {
    row-gap: 0 !important;
  }
  .row-gap-md-1 {
    row-gap: 0.25rem !important;
  }
  .row-gap-md-2 {
    row-gap: 0.5rem !important;
  }
  .row-gap-md-3 {
    row-gap: 1rem !important;
  }
  .row-gap-md-4 {
    row-gap: 1.5rem !important;
  }
  .row-gap-md-5 {
    row-gap: 3rem !important;
  }
  .column-gap-md-0 {
    -moz-column-gap: 0 !important;
         column-gap: 0 !important;
  }
  .column-gap-md-1 {
    -moz-column-gap: 0.25rem !important;
         column-gap: 0.25rem !important;
  }
  .column-gap-md-2 {
    -moz-column-gap: 0.5rem !important;
         column-gap: 0.5rem !important;
  }
  .column-gap-md-3 {
    -moz-column-gap: 1rem !important;
         column-gap: 1rem !important;
  }
  .column-gap-md-4 {
    -moz-column-gap: 1.5rem !important;
         column-gap: 1.5rem !important;
  }
  .column-gap-md-5 {
    -moz-column-gap: 3rem !important;
         column-gap: 3rem !important;
  }
  .text-md-start {
    text-align: left !important;
  }
  .text-md-end {
    text-align: right !important;
  }
  .text-md-center {
    text-align: center !important;
  }
}
@media (min-width: 992px) {
  .float-lg-start {
    float: left !important;
  }
  .float-lg-end {
    float: right !important;
  }
  .float-lg-none {
    float: none !important;
  }
  .object-fit-lg-contain {
    -o-object-fit: contain !important;
       object-fit: contain !important;
  }
  .object-fit-lg-cover {
    -o-object-fit: cover !important;
       object-fit: cover !important;
  }
  .object-fit-lg-fill {
    -o-object-fit: fill !important;
       object-fit: fill !important;
  }
  .object-fit-lg-scale {
    -o-object-fit: scale-down !important;
       object-fit: scale-down !important;
  }
  .object-fit-lg-none {
    -o-object-fit: none !important;
       object-fit: none !important;
  }
  .d-lg-inline {
    display: inline !important;
  }
  .d-lg-inline-block {
    display: inline-block !important;
  }
  .d-lg-block {
    display: block !important;
  }
  .d-lg-grid {
    display: grid !important;
  }
  .d-lg-inline-grid {
    display: inline-grid !important;
  }
  .d-lg-table {
    display: table !important;
  }
  .d-lg-table-row {
    display: table-row !important;
  }
  .d-lg-table-cell {
    display: table-cell !important;
  }
  .d-lg-flex {
    display: flex !important;
  }
  .d-lg-inline-flex {
    display: inline-flex !important;
  }
  .d-lg-none {
    display: none !important;
  }
  .flex-lg-fill {
    flex: 1 1 auto !important;
  }
  .flex-lg-row {
    flex-direction: row !important;
  }
  .flex-lg-column {
    flex-direction: column !important;
  }
  .flex-lg-row-reverse {
    flex-direction: row-reverse !important;
  }
  .flex-lg-column-reverse {
    flex-direction: column-reverse !important;
  }
  .flex-lg-grow-0 {
    flex-grow: 0 !important;
  }
  .flex-lg-grow-1 {
    flex-grow: 1 !important;
  }
  .flex-lg-shrink-0 {
    flex-shrink: 0 !important;
  }
  .flex-lg-shrink-1 {
    flex-shrink: 1 !important;
  }
  .flex-lg-wrap {
    flex-wrap: wrap !important;
  }
  .flex-lg-nowrap {
    flex-wrap: nowrap !important;
  }
  .flex-lg-wrap-reverse {
    flex-wrap: wrap-reverse !important;
  }
  .justify-content-lg-start {
    justify-content: flex-start !important;
  }
  .justify-content-lg-end {
    justify-content: flex-end !important;
  }
  .justify-content-lg-center {
    justify-content: center !important;
  }
  .justify-content-lg-between {
    justify-content: space-between !important;
  }
  .justify-content-lg-around {
    justify-content: space-around !important;
  }
  .justify-content-lg-evenly {
    justify-content: space-evenly !important;
  }
  .align-items-lg-start {
    align-items: flex-start !important;
  }
  .align-items-lg-end {
    align-items: flex-end !important;
  }
  .align-items-lg-center {
    align-items: center !important;
  }
  .align-items-lg-baseline {
    align-items: baseline !important;
  }
  .align-items-lg-stretch {
    align-items: stretch !important;
  }
  .align-content-lg-start {
    align-content: flex-start !important;
  }
  .align-content-lg-end {
    align-content: flex-end !important;
  }
  .align-content-lg-center {
    align-content: center !important;
  }
  .align-content-lg-between {
    align-content: space-between !important;
  }
  .align-content-lg-around {
    align-content: space-around !important;
  }
  .align-content-lg-stretch {
    align-content: stretch !important;
  }
  .align-self-lg-auto {
    align-self: auto !important;
  }
  .align-self-lg-start {
    align-self: flex-start !important;
  }
  .align-self-lg-end {
    align-self: flex-end !important;
  }
  .align-self-lg-center {
    align-self: center !important;
  }
  .align-self-lg-baseline {
    align-self: baseline !important;
  }
  .align-self-lg-stretch {
    align-self: stretch !important;
  }
  .order-lg-first {
    order: -1 !important;
  }
  .order-lg-0 {
    order: 0 !important;
  }
  .order-lg-1 {
    order: 1 !important;
  }
  .order-lg-2 {
    order: 2 !important;
  }
  .order-lg-3 {
    order: 3 !important;
  }
  .order-lg-4 {
    order: 4 !important;
  }
  .order-lg-5 {
    order: 5 !important;
  }
  .order-lg-last {
    order: 6 !important;
  }
  .m-lg-0 {
    margin: 0 !important;
  }
  .m-lg-1 {
    margin: 0.25rem !important;
  }
  .m-lg-2 {
    margin: 0.5rem !important;
  }
  .m-lg-3 {
    margin: 1rem !important;
  }
  .m-lg-4 {
    margin: 1.5rem !important;
  }
  .m-lg-5 {
    margin: 3rem !important;
  }
  .m-lg-auto {
    margin: auto !important;
  }
  .mx-lg-0 {
    margin-right: 0 !important;
    margin-left: 0 !important;
  }
  .mx-lg-1 {
    margin-right: 0.25rem !important;
    margin-left: 0.25rem !important;
  }
  .mx-lg-2 {
    margin-right: 0.5rem !important;
    margin-left: 0.5rem !important;
  }
  .mx-lg-3 {
    margin-right: 1rem !important;
    margin-left: 1rem !important;
  }
  .mx-lg-4 {
    margin-right: 1.5rem !important;
    margin-left: 1.5rem !important;
  }
  .mx-lg-5 {
    margin-right: 3rem !important;
    margin-left: 3rem !important;
  }
  .mx-lg-auto {
    margin-right: auto !important;
    margin-left: auto !important;
  }
  .my-lg-0 {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }
  .my-lg-1 {
    margin-top: 0.25rem !important;
    margin-bottom: 0.25rem !important;
  }
  .my-lg-2 {
    margin-top: 0.5rem !important;
    margin-bottom: 0.5rem !important;
  }
  .my-lg-3 {
    margin-top: 1rem !important;
    margin-bottom: 1rem !important;
  }
  .my-lg-4 {
    margin-top: 1.5rem !important;
    margin-bottom: 1.5rem !important;
  }
  .my-lg-5 {
    margin-top: 3rem !important;
    margin-bottom: 3rem !important;
  }
  .my-lg-auto {
    margin-top: auto !important;
    margin-bottom: auto !important;
  }
  .mt-lg-0 {
    margin-top: 0 !important;
  }
  .mt-lg-1 {
    margin-top: 0.25rem !important;
  }
  .mt-lg-2 {
    margin-top: 0.5rem !important;
  }
  .mt-lg-3 {
    margin-top: 1rem !important;
  }
  .mt-lg-4 {
    margin-top: 1.5rem !important;
  }
  .mt-lg-5 {
    margin-top: 3rem !important;
  }
  .mt-lg-auto {
    margin-top: auto !important;
  }
  .me-lg-0 {
    margin-right: 0 !important;
  }
  .me-lg-1 {
    margin-right: 0.25rem !important;
  }
  .me-lg-2 {
    margin-right: 0.5rem !important;
  }
  .me-lg-3 {
    margin-right: 1rem !important;
  }
  .me-lg-4 {
    margin-right: 1.5rem !important;
  }
  .me-lg-5 {
    margin-right: 3rem !important;
  }
  .me-lg-auto {
    margin-right: auto !important;
  }
  .mb-lg-0 {
    margin-bottom: 0 !important;
  }
  .mb-lg-1 {
    margin-bottom: 0.25rem !important;
  }
  .mb-lg-2 {
    margin-bottom: 0.5rem !important;
  }
  .mb-lg-3 {
    margin-bottom: 1rem !important;
  }
  .mb-lg-4 {
    margin-bottom: 1.5rem !important;
  }
  .mb-lg-5 {
    margin-bottom: 3rem !important;
  }
  .mb-lg-auto {
    margin-bottom: auto !important;
  }
  .ms-lg-0 {
    margin-left: 0 !important;
  }
  .ms-lg-1 {
    margin-left: 0.25rem !important;
  }
  .ms-lg-2 {
    margin-left: 0.5rem !important;
  }
  .ms-lg-3 {
    margin-left: 1rem !important;
  }
  .ms-lg-4 {
    margin-left: 1.5rem !important;
  }
  .ms-lg-5 {
    margin-left: 3rem !important;
  }
  .ms-lg-auto {
    margin-left: auto !important;
  }
  .p-lg-0 {
    padding: 0 !important;
  }
  .p-lg-1 {
    padding: 0.25rem !important;
  }
  .p-lg-2 {
    padding: 0.5rem !important;
  }
  .p-lg-3 {
    padding: 1rem !important;
  }
  .p-lg-4 {
    padding: 1.5rem !important;
  }
  .p-lg-5 {
    padding: 3rem !important;
  }
  .px-lg-0 {
    padding-right: 0 !important;
    padding-left: 0 !important;
  }
  .px-lg-1 {
    padding-right: 0.25rem !important;
    padding-left: 0.25rem !important;
  }
  .px-lg-2 {
    padding-right: 0.5rem !important;
    padding-left: 0.5rem !important;
  }
  .px-lg-3 {
    padding-right: 1rem !important;
    padding-left: 1rem !important;
  }
  .px-lg-4 {
    padding-right: 1.5rem !important;
    padding-left: 1.5rem !important;
  }
  .px-lg-5 {
    padding-right: 3rem !important;
    padding-left: 3rem !important;
  }
  .py-lg-0 {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }
  .py-lg-1 {
    padding-top: 0.25rem !important;
    padding-bottom: 0.25rem !important;
  }
  .py-lg-2 {
    padding-top: 0.5rem !important;
    padding-bottom: 0.5rem !important;
  }
  .py-lg-3 {
    padding-top: 1rem !important;
    padding-bottom: 1rem !important;
  }
  .py-lg-4 {
    padding-top: 1.5rem !important;
    padding-bottom: 1.5rem !important;
  }
  .py-lg-5 {
    padding-top: 3rem !important;
    padding-bottom: 3rem !important;
  }
  .pt-lg-0 {
    padding-top: 0 !important;
  }
  .pt-lg-1 {
    padding-top: 0.25rem !important;
  }
  .pt-lg-2 {
    padding-top: 0.5rem !important;
  }
  .pt-lg-3 {
    padding-top: 1rem !important;
  }
  .pt-lg-4 {
    padding-top: 1.5rem !important;
  }
  .pt-lg-5 {
    padding-top: 3rem !important;
  }
  .pe-lg-0 {
    padding-right: 0 !important;
  }
  .pe-lg-1 {
    padding-right: 0.25rem !important;
  }
  .pe-lg-2 {
    padding-right: 0.5rem !important;
  }
  .pe-lg-3 {
    padding-right: 1rem !important;
  }
  .pe-lg-4 {
    padding-right: 1.5rem !important;
  }
  .pe-lg-5 {
    padding-right: 3rem !important;
  }
  .pb-lg-0 {
    padding-bottom: 0 !important;
  }
  .pb-lg-1 {
    padding-bottom: 0.25rem !important;
  }
  .pb-lg-2 {
    padding-bottom: 0.5rem !important;
  }
  .pb-lg-3 {
    padding-bottom: 1rem !important;
  }
  .pb-lg-4 {
    padding-bottom: 1.5rem !important;
  }
  .pb-lg-5 {
    padding-bottom: 3rem !important;
  }
  .ps-lg-0 {
    padding-left: 0 !important;
  }
  .ps-lg-1 {
    padding-left: 0.25rem !important;
  }
  .ps-lg-2 {
    padding-left: 0.5rem !important;
  }
  .ps-lg-3 {
    padding-left: 1rem !important;
  }
  .ps-lg-4 {
    padding-left: 1.5rem !important;
  }
  .ps-lg-5 {
    padding-left: 3rem !important;
  }
  .gap-lg-0 {
    gap: 0 !important;
  }
  .gap-lg-1 {
    gap: 0.25rem !important;
  }
  .gap-lg-2 {
    gap: 0.5rem !important;
  }
  .gap-lg-3 {
    gap: 1rem !important;
  }
  .gap-lg-4 {
    gap: 1.5rem !important;
  }
  .gap-lg-5 {
    gap: 3rem !important;
  }
  .row-gap-lg-0 {
    row-gap: 0 !important;
  }
  .row-gap-lg-1 {
    row-gap: 0.25rem !important;
  }
  .row-gap-lg-2 {
    row-gap: 0.5rem !important;
  }
  .row-gap-lg-3 {
    row-gap: 1rem !important;
  }
  .row-gap-lg-4 {
    row-gap: 1.5rem !important;
  }
  .row-gap-lg-5 {
    row-gap: 3rem !important;
  }
  .column-gap-lg-0 {
    -moz-column-gap: 0 !important;
         column-gap: 0 !important;
  }
  .column-gap-lg-1 {
    -moz-column-gap: 0.25rem !important;
         column-gap: 0.25rem !important;
  }
  .column-gap-lg-2 {
    -moz-column-gap: 0.5rem !important;
         column-gap: 0.5rem !important;
  }
  .column-gap-lg-3 {
    -moz-column-gap: 1rem !important;
         column-gap: 1rem !important;
  }
  .column-gap-lg-4 {
    -moz-column-gap: 1.5rem !important;
         column-gap: 1.5rem !important;
  }
  .column-gap-lg-5 {
    -moz-column-gap: 3rem !important;
         column-gap: 3rem !important;
  }
  .text-lg-start {
    text-align: left !important;
  }
  .text-lg-end {
    text-align: right !important;
  }
  .text-lg-center {
    text-align: center !important;
  }
}
@media (min-width: 1200px) {
  .float-xl-start {
    float: left !important;
  }
  .float-xl-end {
    float: right !important;
  }
  .float-xl-none {
    float: none !important;
  }
  .object-fit-xl-contain {
    -o-object-fit: contain !important;
       object-fit: contain !important;
  }
  .object-fit-xl-cover {
    -o-object-fit: cover !important;
       object-fit: cover !important;
  }
  .object-fit-xl-fill {
    -o-object-fit: fill !important;
       object-fit: fill !important;
  }
  .object-fit-xl-scale {
    -o-object-fit: scale-down !important;
       object-fit: scale-down !important;
  }
  .object-fit-xl-none {
    -o-object-fit: none !important;
       object-fit: none !important;
  }
  .d-xl-inline {
    display: inline !important;
  }
  .d-xl-inline-block {
    display: inline-block !important;
  }
  .d-xl-block {
    display: block !important;
  }
  .d-xl-grid {
    display: grid !important;
  }
  .d-xl-inline-grid {
    display: inline-grid !important;
  }
  .d-xl-table {
    display: table !important;
  }
  .d-xl-table-row {
    display: table-row !important;
  }
  .d-xl-table-cell {
    display: table-cell !important;
  }
  .d-xl-flex {
    display: flex !important;
  }
  .d-xl-inline-flex {
    display: inline-flex !important;
  }
  .d-xl-none {
    display: none !important;
  }
  .flex-xl-fill {
    flex: 1 1 auto !important;
  }
  .flex-xl-row {
    flex-direction: row !important;
  }
  .flex-xl-column {
    flex-direction: column !important;
  }
  .flex-xl-row-reverse {
    flex-direction: row-reverse !important;
  }
  .flex-xl-column-reverse {
    flex-direction: column-reverse !important;
  }
  .flex-xl-grow-0 {
    flex-grow: 0 !important;
  }
  .flex-xl-grow-1 {
    flex-grow: 1 !important;
  }
  .flex-xl-shrink-0 {
    flex-shrink: 0 !important;
  }
  .flex-xl-shrink-1 {
    flex-shrink: 1 !important;
  }
  .flex-xl-wrap {
    flex-wrap: wrap !important;
  }
  .flex-xl-nowrap {
    flex-wrap: nowrap !important;
  }
  .flex-xl-wrap-reverse {
    flex-wrap: wrap-reverse !important;
  }
  .justify-content-xl-start {
    justify-content: flex-start !important;
  }
  .justify-content-xl-end {
    justify-content: flex-end !important;
  }
  .justify-content-xl-center {
    justify-content: center !important;
  }
  .justify-content-xl-between {
    justify-content: space-between !important;
  }
  .justify-content-xl-around {
    justify-content: space-around !important;
  }
  .justify-content-xl-evenly {
    justify-content: space-evenly !important;
  }
  .align-items-xl-start {
    align-items: flex-start !important;
  }
  .align-items-xl-end {
    align-items: flex-end !important;
  }
  .align-items-xl-center {
    align-items: center !important;
  }
  .align-items-xl-baseline {
    align-items: baseline !important;
  }
  .align-items-xl-stretch {
    align-items: stretch !important;
  }
  .align-content-xl-start {
    align-content: flex-start !important;
  }
  .align-content-xl-end {
    align-content: flex-end !important;
  }
  .align-content-xl-center {
    align-content: center !important;
  }
  .align-content-xl-between {
    align-content: space-between !important;
  }
  .align-content-xl-around {
    align-content: space-around !important;
  }
  .align-content-xl-stretch {
    align-content: stretch !important;
  }
  .align-self-xl-auto {
    align-self: auto !important;
  }
  .align-self-xl-start {
    align-self: flex-start !important;
  }
  .align-self-xl-end {
    align-self: flex-end !important;
  }
  .align-self-xl-center {
    align-self: center !important;
  }
  .align-self-xl-baseline {
    align-self: baseline !important;
  }
  .align-self-xl-stretch {
    align-self: stretch !important;
  }
  .order-xl-first {
    order: -1 !important;
  }
  .order-xl-0 {
    order: 0 !important;
  }
  .order-xl-1 {
    order: 1 !important;
  }
  .order-xl-2 {
    order: 2 !important;
  }
  .order-xl-3 {
    order: 3 !important;
  }
  .order-xl-4 {
    order: 4 !important;
  }
  .order-xl-5 {
    order: 5 !important;
  }
  .order-xl-last {
    order: 6 !important;
  }
  .m-xl-0 {
    margin: 0 !important;
  }
  .m-xl-1 {
    margin: 0.25rem !important;
  }
  .m-xl-2 {
    margin: 0.5rem !important;
  }
  .m-xl-3 {
    margin: 1rem !important;
  }
  .m-xl-4 {
    margin: 1.5rem !important;
  }
  .m-xl-5 {
    margin: 3rem !important;
  }
  .m-xl-auto {
    margin: auto !important;
  }
  .mx-xl-0 {
    margin-right: 0 !important;
    margin-left: 0 !important;
  }
  .mx-xl-1 {
    margin-right: 0.25rem !important;
    margin-left: 0.25rem !important;
  }
  .mx-xl-2 {
    margin-right: 0.5rem !important;
    margin-left: 0.5rem !important;
  }
  .mx-xl-3 {
    margin-right: 1rem !important;
    margin-left: 1rem !important;
  }
  .mx-xl-4 {
    margin-right: 1.5rem !important;
    margin-left: 1.5rem !important;
  }
  .mx-xl-5 {
    margin-right: 3rem !important;
    margin-left: 3rem !important;
  }
  .mx-xl-auto {
    margin-right: auto !important;
    margin-left: auto !important;
  }
  .my-xl-0 {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }
  .my-xl-1 {
    margin-top: 0.25rem !important;
    margin-bottom: 0.25rem !important;
  }
  .my-xl-2 {
    margin-top: 0.5rem !important;
    margin-bottom: 0.5rem !important;
  }
  .my-xl-3 {
    margin-top: 1rem !important;
    margin-bottom: 1rem !important;
  }
  .my-xl-4 {
    margin-top: 1.5rem !important;
    margin-bottom: 1.5rem !important;
  }
  .my-xl-5 {
    margin-top: 3rem !important;
    margin-bottom: 3rem !important;
  }
  .my-xl-auto {
    margin-top: auto !important;
    margin-bottom: auto !important;
  }
  .mt-xl-0 {
    margin-top: 0 !important;
  }
  .mt-xl-1 {
    margin-top: 0.25rem !important;
  }
  .mt-xl-2 {
    margin-top: 0.5rem !important;
  }
  .mt-xl-3 {
    margin-top: 1rem !important;
  }
  .mt-xl-4 {
    margin-top: 1.5rem !important;
  }
  .mt-xl-5 {
    margin-top: 3rem !important;
  }
  .mt-xl-auto {
    margin-top: auto !important;
  }
  .me-xl-0 {
    margin-right: 0 !important;
  }
  .me-xl-1 {
    margin-right: 0.25rem !important;
  }
  .me-xl-2 {
    margin-right: 0.5rem !important;
  }
  .me-xl-3 {
    margin-right: 1rem !important;
  }
  .me-xl-4 {
    margin-right: 1.5rem !important;
  }
  .me-xl-5 {
    margin-right: 3rem !important;
  }
  .me-xl-auto {
    margin-right: auto !important;
  }
  .mb-xl-0 {
    margin-bottom: 0 !important;
  }
  .mb-xl-1 {
    margin-bottom: 0.25rem !important;
  }
  .mb-xl-2 {
    margin-bottom: 0.5rem !important;
  }
  .mb-xl-3 {
    margin-bottom: 1rem !important;
  }
  .mb-xl-4 {
    margin-bottom: 1.5rem !important;
  }
  .mb-xl-5 {
    margin-bottom: 3rem !important;
  }
  .mb-xl-auto {
    margin-bottom: auto !important;
  }
  .ms-xl-0 {
    margin-left: 0 !important;
  }
  .ms-xl-1 {
    margin-left: 0.25rem !important;
  }
  .ms-xl-2 {
    margin-left: 0.5rem !important;
  }
  .ms-xl-3 {
    margin-left: 1rem !important;
  }
  .ms-xl-4 {
    margin-left: 1.5rem !important;
  }
  .ms-xl-5 {
    margin-left: 3rem !important;
  }
  .ms-xl-auto {
    margin-left: auto !important;
  }
  .p-xl-0 {
    padding: 0 !important;
  }
  .p-xl-1 {
    padding: 0.25rem !important;
  }
  .p-xl-2 {
    padding: 0.5rem !important;
  }
  .p-xl-3 {
    padding: 1rem !important;
  }
  .p-xl-4 {
    padding: 1.5rem !important;
  }
  .p-xl-5 {
    padding: 3rem !important;
  }
  .px-xl-0 {
    padding-right: 0 !important;
    padding-left: 0 !important;
  }
  .px-xl-1 {
    padding-right: 0.25rem !important;
    padding-left: 0.25rem !important;
  }
  .px-xl-2 {
    padding-right: 0.5rem !important;
    padding-left: 0.5rem !important;
  }
  .px-xl-3 {
    padding-right: 1rem !important;
    padding-left: 1rem !important;
  }
  .px-xl-4 {
    padding-right: 1.5rem !important;
    padding-left: 1.5rem !important;
  }
  .px-xl-5 {
    padding-right: 3rem !important;
    padding-left: 3rem !important;
  }
  .py-xl-0 {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }
  .py-xl-1 {
    padding-top: 0.25rem !important;
    padding-bottom: 0.25rem !important;
  }
  .py-xl-2 {
    padding-top: 0.5rem !important;
    padding-bottom: 0.5rem !important;
  }
  .py-xl-3 {
    padding-top: 1rem !important;
    padding-bottom: 1rem !important;
  }
  .py-xl-4 {
    padding-top: 1.5rem !important;
    padding-bottom: 1.5rem !important;
  }
  .py-xl-5 {
    padding-top: 3rem !important;
    padding-bottom: 3rem !important;
  }
  .pt-xl-0 {
    padding-top: 0 !important;
  }
  .pt-xl-1 {
    padding-top: 0.25rem !important;
  }
  .pt-xl-2 {
    padding-top: 0.5rem !important;
  }
  .pt-xl-3 {
    padding-top: 1rem !important;
  }
  .pt-xl-4 {
    padding-top: 1.5rem !important;
  }
  .pt-xl-5 {
    padding-top: 3rem !important;
  }
  .pe-xl-0 {
    padding-right: 0 !important;
  }
  .pe-xl-1 {
    padding-right: 0.25rem !important;
  }
  .pe-xl-2 {
    padding-right: 0.5rem !important;
  }
  .pe-xl-3 {
    padding-right: 1rem !important;
  }
  .pe-xl-4 {
    padding-right: 1.5rem !important;
  }
  .pe-xl-5 {
    padding-right: 3rem !important;
  }
  .pb-xl-0 {
    padding-bottom: 0 !important;
  }
  .pb-xl-1 {
    padding-bottom: 0.25rem !important;
  }
  .pb-xl-2 {
    padding-bottom: 0.5rem !important;
  }
  .pb-xl-3 {
    padding-bottom: 1rem !important;
  }
  .pb-xl-4 {
    padding-bottom: 1.5rem !important;
  }
  .pb-xl-5 {
    padding-bottom: 3rem !important;
  }
  .ps-xl-0 {
    padding-left: 0 !important;
  }
  .ps-xl-1 {
    padding-left: 0.25rem !important;
  }
  .ps-xl-2 {
    padding-left: 0.5rem !important;
  }
  .ps-xl-3 {
    padding-left: 1rem !important;
  }
  .ps-xl-4 {
    padding-left: 1.5rem !important;
  }
  .ps-xl-5 {
    padding-left: 3rem !important;
  }
  .gap-xl-0 {
    gap: 0 !important;
  }
  .gap-xl-1 {
    gap: 0.25rem !important;
  }
  .gap-xl-2 {
    gap: 0.5rem !important;
  }
  .gap-xl-3 {
    gap: 1rem !important;
  }
  .gap-xl-4 {
    gap: 1.5rem !important;
  }
  .gap-xl-5 {
    gap: 3rem !important;
  }
  .row-gap-xl-0 {
    row-gap: 0 !important;
  }
  .row-gap-xl-1 {
    row-gap: 0.25rem !important;
  }
  .row-gap-xl-2 {
    row-gap: 0.5rem !important;
  }
  .row-gap-xl-3 {
    row-gap: 1rem !important;
  }
  .row-gap-xl-4 {
    row-gap: 1.5rem !important;
  }
  .row-gap-xl-5 {
    row-gap: 3rem !important;
  }
  .column-gap-xl-0 {
    -moz-column-gap: 0 !important;
         column-gap: 0 !important;
  }
  .column-gap-xl-1 {
    -moz-column-gap: 0.25rem !important;
         column-gap: 0.25rem !important;
  }
  .column-gap-xl-2 {
    -moz-column-gap: 0.5rem !important;
         column-gap: 0.5rem !important;
  }
  .column-gap-xl-3 {
    -moz-column-gap: 1rem !important;
         column-gap: 1rem !important;
  }
  .column-gap-xl-4 {
    -moz-column-gap: 1.5rem !important;
         column-gap: 1.5rem !important;
  }
  .column-gap-xl-5 {
    -moz-column-gap: 3rem !important;
         column-gap: 3rem !important;
  }
  .text-xl-start {
    text-align: left !important;
  }
  .text-xl-end {
    text-align: right !important;
  }
  .text-xl-center {
    text-align: center !important;
  }
}
@media (min-width: 1400px) {
  .float-xxl-start {
    float: left !important;
  }
  .float-xxl-end {
    float: right !important;
  }
  .float-xxl-none {
    float: none !important;
  }
  .object-fit-xxl-contain {
    -o-object-fit: contain !important;
       object-fit: contain !important;
  }
  .object-fit-xxl-cover {
    -o-object-fit: cover !important;
       object-fit: cover !important;
  }
  .object-fit-xxl-fill {
    -o-object-fit: fill !important;
       object-fit: fill !important;
  }
  .object-fit-xxl-scale {
    -o-object-fit: scale-down !important;
       object-fit: scale-down !important;
  }
  .object-fit-xxl-none {
    -o-object-fit: none !important;
       object-fit: none !important;
  }
  .d-xxl-inline {
    display: inline !important;
  }
  .d-xxl-inline-block {
    display: inline-block !important;
  }
  .d-xxl-block {
    display: block !important;
  }
  .d-xxl-grid {
    display: grid !important;
  }
  .d-xxl-inline-grid {
    display: inline-grid !important;
  }
  .d-xxl-table {
    display: table !important;
  }
  .d-xxl-table-row {
    display: table-row !important;
  }
  .d-xxl-table-cell {
    display: table-cell !important;
  }
  .d-xxl-flex {
    display: flex !important;
  }
  .d-xxl-inline-flex {
    display: inline-flex !important;
  }
  .d-xxl-none {
    display: none !important;
  }
  .flex-xxl-fill {
    flex: 1 1 auto !important;
  }
  .flex-xxl-row {
    flex-direction: row !important;
  }
  .flex-xxl-column {
    flex-direction: column !important;
  }
  .flex-xxl-row-reverse {
    flex-direction: row-reverse !important;
  }
  .flex-xxl-column-reverse {
    flex-direction: column-reverse !important;
  }
  .flex-xxl-grow-0 {
    flex-grow: 0 !important;
  }
  .flex-xxl-grow-1 {
    flex-grow: 1 !important;
  }
  .flex-xxl-shrink-0 {
    flex-shrink: 0 !important;
  }
  .flex-xxl-shrink-1 {
    flex-shrink: 1 !important;
  }
  .flex-xxl-wrap {
    flex-wrap: wrap !important;
  }
  .flex-xxl-nowrap {
    flex-wrap: nowrap !important;
  }
  .flex-xxl-wrap-reverse {
    flex-wrap: wrap-reverse !important;
  }
  .justify-content-xxl-start {
    justify-content: flex-start !important;
  }
  .justify-content-xxl-end {
    justify-content: flex-end !important;
  }
  .justify-content-xxl-center {
    justify-content: center !important;
  }
  .justify-content-xxl-between {
    justify-content: space-between !important;
  }
  .justify-content-xxl-around {
    justify-content: space-around !important;
  }
  .justify-content-xxl-evenly {
    justify-content: space-evenly !important;
  }
  .align-items-xxl-start {
    align-items: flex-start !important;
  }
  .align-items-xxl-end {
    align-items: flex-end !important;
  }
  .align-items-xxl-center {
    align-items: center !important;
  }
  .align-items-xxl-baseline {
    align-items: baseline !important;
  }
  .align-items-xxl-stretch {
    align-items: stretch !important;
  }
  .align-content-xxl-start {
    align-content: flex-start !important;
  }
  .align-content-xxl-end {
    align-content: flex-end !important;
  }
  .align-content-xxl-center {
    align-content: center !important;
  }
  .align-content-xxl-between {
    align-content: space-between !important;
  }
  .align-content-xxl-around {
    align-content: space-around !important;
  }
  .align-content-xxl-stretch {
    align-content: stretch !important;
  }
  .align-self-xxl-auto {
    align-self: auto !important;
  }
  .align-self-xxl-start {
    align-self: flex-start !important;
  }
  .align-self-xxl-end {
    align-self: flex-end !important;
  }
  .align-self-xxl-center {
    align-self: center !important;
  }
  .align-self-xxl-baseline {
    align-self: baseline !important;
  }
  .align-self-xxl-stretch {
    align-self: stretch !important;
  }
  .order-xxl-first {
    order: -1 !important;
  }
  .order-xxl-0 {
    order: 0 !important;
  }
  .order-xxl-1 {
    order: 1 !important;
  }
  .order-xxl-2 {
    order: 2 !important;
  }
  .order-xxl-3 {
    order: 3 !important;
  }
  .order-xxl-4 {
    order: 4 !important;
  }
  .order-xxl-5 {
    order: 5 !important;
  }
  .order-xxl-last {
    order: 6 !important;
  }
  .m-xxl-0 {
    margin: 0 !important;
  }
  .m-xxl-1 {
    margin: 0.25rem !important;
  }
  .m-xxl-2 {
    margin: 0.5rem !important;
  }
  .m-xxl-3 {
    margin: 1rem !important;
  }
  .m-xxl-4 {
    margin: 1.5rem !important;
  }
  .m-xxl-5 {
    margin: 3rem !important;
  }
  .m-xxl-auto {
    margin: auto !important;
  }
  .mx-xxl-0 {
    margin-right: 0 !important;
    margin-left: 0 !important;
  }
  .mx-xxl-1 {
    margin-right: 0.25rem !important;
    margin-left: 0.25rem !important;
  }
  .mx-xxl-2 {
    margin-right: 0.5rem !important;
    margin-left: 0.5rem !important;
  }
  .mx-xxl-3 {
    margin-right: 1rem !important;
    margin-left: 1rem !important;
  }
  .mx-xxl-4 {
    margin-right: 1.5rem !important;
    margin-left: 1.5rem !important;
  }
  .mx-xxl-5 {
    margin-right: 3rem !important;
    margin-left: 3rem !important;
  }
  .mx-xxl-auto {
    margin-right: auto !important;
    margin-left: auto !important;
  }
  .my-xxl-0 {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }
  .my-xxl-1 {
    margin-top: 0.25rem !important;
    margin-bottom: 0.25rem !important;
  }
  .my-xxl-2 {
    margin-top: 0.5rem !important;
    margin-bottom: 0.5rem !important;
  }
  .my-xxl-3 {
    margin-top: 1rem !important;
    margin-bottom: 1rem !important;
  }
  .my-xxl-4 {
    margin-top: 1.5rem !important;
    margin-bottom: 1.5rem !important;
  }
  .my-xxl-5 {
    margin-top: 3rem !important;
    margin-bottom: 3rem !important;
  }
  .my-xxl-auto {
    margin-top: auto !important;
    margin-bottom: auto !important;
  }
  .mt-xxl-0 {
    margin-top: 0 !important;
  }
  .mt-xxl-1 {
    margin-top: 0.25rem !important;
  }
  .mt-xxl-2 {
    margin-top: 0.5rem !important;
  }
  .mt-xxl-3 {
    margin-top: 1rem !important;
  }
  .mt-xxl-4 {
    margin-top: 1.5rem !important;
  }
  .mt-xxl-5 {
    margin-top: 3rem !important;
  }
  .mt-xxl-auto {
    margin-top: auto !important;
  }
  .me-xxl-0 {
    margin-right: 0 !important;
  }
  .me-xxl-1 {
    margin-right: 0.25rem !important;
  }
  .me-xxl-2 {
    margin-right: 0.5rem !important;
  }
  .me-xxl-3 {
    margin-right: 1rem !important;
  }
  .me-xxl-4 {
    margin-right: 1.5rem !important;
  }
  .me-xxl-5 {
    margin-right: 3rem !important;
  }
  .me-xxl-auto {
    margin-right: auto !important;
  }
  .mb-xxl-0 {
    margin-bottom: 0 !important;
  }
  .mb-xxl-1 {
    margin-bottom: 0.25rem !important;
  }
  .mb-xxl-2 {
    margin-bottom: 0.5rem !important;
  }
  .mb-xxl-3 {
    margin-bottom: 1rem !important;
  }
  .mb-xxl-4 {
    margin-bottom: 1.5rem !important;
  }
  .mb-xxl-5 {
    margin-bottom: 3rem !important;
  }
  .mb-xxl-auto {
    margin-bottom: auto !important;
  }
  .ms-xxl-0 {
    margin-left: 0 !important;
  }
  .ms-xxl-1 {
    margin-left: 0.25rem !important;
  }
  .ms-xxl-2 {
    margin-left: 0.5rem !important;
  }
  .ms-xxl-3 {
    margin-left: 1rem !important;
  }
  .ms-xxl-4 {
    margin-left: 1.5rem !important;
  }
  .ms-xxl-5 {
    margin-left: 3rem !important;
  }
  .ms-xxl-auto {
    margin-left: auto !important;
  }
  .p-xxl-0 {
    padding: 0 !important;
  }
  .p-xxl-1 {
    padding: 0.25rem !important;
  }
  .p-xxl-2 {
    padding: 0.5rem !important;
  }
  .p-xxl-3 {
    padding: 1rem !important;
  }
  .p-xxl-4 {
    padding: 1.5rem !important;
  }
  .p-xxl-5 {
    padding: 3rem !important;
  }
  .px-xxl-0 {
    padding-right: 0 !important;
    padding-left: 0 !important;
  }
  .px-xxl-1 {
    padding-right: 0.25rem !important;
    padding-left: 0.25rem !important;
  }
  .px-xxl-2 {
    padding-right: 0.5rem !important;
    padding-left: 0.5rem !important;
  }
  .px-xxl-3 {
    padding-right: 1rem !important;
    padding-left: 1rem !important;
  }
  .px-xxl-4 {
    padding-right: 1.5rem !important;
    padding-left: 1.5rem !important;
  }
  .px-xxl-5 {
    padding-right: 3rem !important;
    padding-left: 3rem !important;
  }
  .py-xxl-0 {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }
  .py-xxl-1 {
    padding-top: 0.25rem !important;
    padding-bottom: 0.25rem !important;
  }
  .py-xxl-2 {
    padding-top: 0.5rem !important;
    padding-bottom: 0.5rem !important;
  }
  .py-xxl-3 {
    padding-top: 1rem !important;
    padding-bottom: 1rem !important;
  }
  .py-xxl-4 {
    padding-top: 1.5rem !important;
    padding-bottom: 1.5rem !important;
  }
  .py-xxl-5 {
    padding-top: 3rem !important;
    padding-bottom: 3rem !important;
  }
  .pt-xxl-0 {
    padding-top: 0 !important;
  }
  .pt-xxl-1 {
    padding-top: 0.25rem !important;
  }
  .pt-xxl-2 {
    padding-top: 0.5rem !important;
  }
  .pt-xxl-3 {
    padding-top: 1rem !important;
  }
  .pt-xxl-4 {
    padding-top: 1.5rem !important;
  }
  .pt-xxl-5 {
    padding-top: 3rem !important;
  }
  .pe-xxl-0 {
    padding-right: 0 !important;
  }
  .pe-xxl-1 {
    padding-right: 0.25rem !important;
  }
  .pe-xxl-2 {
    padding-right: 0.5rem !important;
  }
  .pe-xxl-3 {
    padding-right: 1rem !important;
  }
  .pe-xxl-4 {
    padding-right: 1.5rem !important;
  }
  .pe-xxl-5 {
    padding-right: 3rem !important;
  }
  .pb-xxl-0 {
    padding-bottom: 0 !important;
  }
  .pb-xxl-1 {
    padding-bottom: 0.25rem !important;
  }
  .pb-xxl-2 {
    padding-bottom: 0.5rem !important;
  }
  .pb-xxl-3 {
    padding-bottom: 1rem !important;
  }
  .pb-xxl-4 {
    padding-bottom: 1.5rem !important;
  }
  .pb-xxl-5 {
    padding-bottom: 3rem !important;
  }
  .ps-xxl-0 {
    padding-left: 0 !important;
  }
  .ps-xxl-1 {
    padding-left: 0.25rem !important;
  }
  .ps-xxl-2 {
    padding-left: 0.5rem !important;
  }
  .ps-xxl-3 {
    padding-left: 1rem !important;
  }
  .ps-xxl-4 {
    padding-left: 1.5rem !important;
  }
  .ps-xxl-5 {
    padding-left: 3rem !important;
  }
  .gap-xxl-0 {
    gap: 0 !important;
  }
  .gap-xxl-1 {
    gap: 0.25rem !important;
  }
  .gap-xxl-2 {
    gap: 0.5rem !important;
  }
  .gap-xxl-3 {
    gap: 1rem !important;
  }
  .gap-xxl-4 {
    gap: 1.5rem !important;
  }
  .gap-xxl-5 {
    gap: 3rem !important;
  }
  .row-gap-xxl-0 {
    row-gap: 0 !important;
  }
  .row-gap-xxl-1 {
    row-gap: 0.25rem !important;
  }
  .row-gap-xxl-2 {
    row-gap: 0.5rem !important;
  }
  .row-gap-xxl-3 {
    row-gap: 1rem !important;
  }
  .row-gap-xxl-4 {
    row-gap: 1.5rem !important;
  }
  .row-gap-xxl-5 {
    row-gap: 3rem !important;
  }
  .column-gap-xxl-0 {
    -moz-column-gap: 0 !important;
         column-gap: 0 !important;
  }
  .column-gap-xxl-1 {
    -moz-column-gap: 0.25rem !important;
         column-gap: 0.25rem !important;
  }
  .column-gap-xxl-2 {
    -moz-column-gap: 0.5rem !important;
         column-gap: 0.5rem !important;
  }
  .column-gap-xxl-3 {
    -moz-column-gap: 1rem !important;
         column-gap: 1rem !important;
  }
  .column-gap-xxl-4 {
    -moz-column-gap: 1.5rem !important;
         column-gap: 1.5rem !important;
  }
  .column-gap-xxl-5 {
    -moz-column-gap: 3rem !important;
         column-gap: 3rem !important;
  }
  .text-xxl-start {
    text-align: left !important;
  }
  .text-xxl-end {
    text-align: right !important;
  }
  .text-xxl-center {
    text-align: center !important;
  }
}
@media (min-width: 1200px) {
  .fs-1 {
    font-size: 4.6875rem !important;
  }
  .fs-2 {
    font-size: 3.125rem !important;
  }
  .fs-3 {
    font-size: 1.575rem !important;
  }
  .fs-4 {
    font-size: 1.35rem !important;
  }
}
@media print {
  .d-print-inline {
    display: inline !important;
  }
  .d-print-inline-block {
    display: inline-block !important;
  }
  .d-print-block {
    display: block !important;
  }
  .d-print-grid {
    display: grid !important;
  }
  .d-print-inline-grid {
    display: inline-grid !important;
  }
  .d-print-table {
    display: table !important;
  }
  .d-print-table-row {
    display: table-row !important;
  }
  .d-print-table-cell {
    display: table-cell !important;
  }
  .d-print-flex {
    display: flex !important;
  }
  .d-print-inline-flex {
    display: inline-flex !important;
  }
  .d-print-none {
    display: none !important;
  }
}
@font-face {
  font-family: "Helvetica Neue Regular";
  src: url("/fonts/Helvetica-neue/HelveticaNeue-LTS-Regular.ttf") format("TrueType");
  font-style: normal;
  descent-override: 0%;
  ascent-override: 70%;
}
@font-face {
  font-family: "Helvetica Neue Regular";
  src: url("/fonts/Helvetica-neue/HelveticaNeue-LTS-Bold.ttf") format("TrueType");
  font-style: normal;
  font-weight: bold;
  font-weight: bolder;
  descent-override: 0%;
  ascent-override: 70%;
}
@font-face {
  font-family: "Helvetica Neue Medium";
  src: url("/fonts/Helvetica-neue/HelveticaNeue-LTS-Medium.ttf") format("TrueType");
  font-style: normal;
  descent-override: 0%;
  ascent-override: 70%;
}
@font-face {
  font-family: "Helvetica Neue Medium 2";
  src: url("/fonts/Helvetica-neue/HelveticaNeueLTStdMd_1.ttf") format("TrueType");
  font-style: medium;
  descent-override: 0%;
  ascent-override: 70%;
}
@font-face {
  font-family: "Helvetica Neue Bold";
  src: url("/fonts/Helvetica-neue/HelveticaNeue-LTS-Bold.ttf") format("TrueType");
  font-style: bold;
  descent-override: 0%;
  ascent-override: 70%;
}
@font-face {
  font-family: "StenFont";
  src: url("/fonts/stenfont/RobotoMedium-Regular.otf") format("opentype");
  letter-spacing: -0.2ch;
}
.font-logo-sten {
  font-family: "StenFont" !important;
}

.roboto-light {
  font-family: "Roboto", sans-serif;
  font-weight: 300;
  font-style: normal;
}

.roboto-regular {
  font-family: "Roboto", sans-serif;
  font-weight: 400;
  font-style: normal;
}

.roboto-medium {
  font-family: "Roboto", sans-serif;
  font-weight: 500;
  font-style: normal;
}

/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
/* Document
   ========================================================================== */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */
html {
  font-size: 16px;
  line-height: 1.15;
  /* 1 */
  -webkit-text-size-adjust: 100%;
  /* 2 */
}

/* Sections
   ========================================================================== */
/**
 * Remove the margin in all browsers.
 */
body {
  background-color: #FFF !important;
  color: #313131 !important;
  font-family: Roboto, sans-serif;
  height: 100%;
  margin: 0;
  min-height: 100vh;
  min-width: 100%;
  overflow-x: hidden;
  padding: 0;
  padding-bottom: 0px;
  position: relative;
  width: 100%;
}

body.modal-open {
  --nav-desktop-z-index: 1;
}

.home-main-links {
  display: flex;
  gap: 36px;
  align-items: center;
}
.home-main-links a {
  font-family: "HN-55-Roman", Roboto, sans-serif;
  font-size: 16px;
  font-weight: 500;
  color: #222;
  text-decoration: none;
  position: relative;
  transition: color 0.25s ease;
}
.home-main-links a:hover {
  color: #e30613;
}
.home-main-links a::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -6px;
  width: 0;
  height: 2px;
  background: #e30613;
  transition: width 0.25s ease;
}
.home-main-links a:hover::after {
  width: 100%;
}

/**
 * Render the `main` element consistently in IE.
 */
main {
  display: block;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */
/* Grouping content
   ========================================================================== */
/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  box-sizing: content-box;
  /* 1 */
  height: 0;
  /* 1 */
  overflow: visible;
  /* 2 */
}

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

/* Text-level semantics
   ========================================================================== */
/**
 * Remove the gray background on active links in IE 10.
 */
a {
  background-color: transparent;
  font-size: 16px;
}

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

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

p, li {
  font-size: 1rem;
  line-height: 1.3rem;
  margin-bottom: 0;
}

p a {
  font-size: 1rem;
  line-height: 1.3rem;
}

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

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

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

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

.same-height {
  flex: 1;
}

h3 sub, .h3 sub,
h3 sup,
.h3 sup {
  font-size: 0.5em !important;
}
h3 sup, .h3 sup {
  top: -0.75em !important;
}

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

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

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button,
input {
  /* 1 */
  overflow: visible;
}

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

select.form-control {
  color: #777;
  font-size: 0.8333rem !important;
}

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */
button,
[type=button],
[type=reset],
[type=submit] {
  -webkit-appearance: button;
}

/**
 * Remove the inner border and padding in Firefox.
 */
button::-moz-focus-inner,
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring,
[type=button]:-moz-focusring,
[type=reset]:-moz-focusring,
[type=submit]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
 * Correct the padding in Firefox.
 */
fieldset {
  padding: 0.35em 0.75em 0.625em;
}

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

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  vertical-align: baseline;
}

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

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

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

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
[type=search] {
  -webkit-appearance: textfield;
  /* 1 */
  outline-offset: -2px;
  /* 2 */
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */
[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

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

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

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

/* Misc
   ========================================================================== */
/**
 * Add the correct display in IE 10+.
 */
template {
  display: none;
}

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

html {
  scroll-behavior: smooth;
  box-sizing: border-box;
}

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

main {
  min-height: 80vh;
  position: relative;
}

footer {
  min-height: 10vh;
  position: relative;
}
footer a {
  text-decoration: none;
}

.fw-medium {
  font-family: Roboto, sans-serif;
}

/* div {
    outline: solid 1px gray;
} */
.footer .line-gray {
  border-top: 1px solid #e1e1e1;
}
.footer .form-control {
  border-left: none;
  border-radius: 0;
  border-right: none;
  border-top: none;
  background-color: #fff !important;
}
.footer .form-control:focus {
  box-shadow: none !important;
}
.footer input.form-control {
  color: #606060;
  font-size: 0.625rem !important;
}
.footer p,
.footer a,
.footer ul,
.footer label,
.footer input,
.footer li {
  line-height: 1.1rem !important;
  color: #606060;
  font-size: 0.625rem !important;
}
.footer a:hover {
  color: #606060;
}
.footer h3, .footer .h3 {
  color: #606060;
  font-size: 0.7rem;
  font-family: Roboto, sans-serif;
  font-weight: 400;
}
.footer ul {
  margin-top: 20px;
  padding-left: 0px;
  text-decoration: none;
  list-style: none;
}
.footer button {
  color: white;
  font-size: 0.5rem !important;
}
.footer button:hover {
  color: white;
}
.footer .send {
  font-size: 0.65rem !important;
}
.footer input {
  padding-left: 0.2rem;
  padding-right: 0.2rem;
}
.footer .icons-footer {
  vertical-align: middle;
}
.footer .icons-footer a {
  text-decoration: none;
}
.footer .icons-footer .icon-footer {
  display: inline-block;
  max-width: 0.9rem;
  margin: 0rem 0.2rem;
  -webkit-transition: all 0.2s ease;
  -moz-transition: all 0.2s ease;
  -o-transition: all 0.2s ease;
  -ms-transition: all 0.2s ease;
}
.footer .icons-footer .icon-footer:hover {
  transform: scale(1.2);
}
.footer .icons-footer .instagram {
  height: 0.7rem;
  max-width: 1rem;
}
.footer line-gray {
  border-top: 1px solid #efefef;
}
.footer .copyright p,
.footer .copyright ul,
.footer .copyright li,
.footer .copyright a {
  color: #606060;
  font-size: 0.54rem !important;
  line-height: 0.8rem !important;
  margin-bottom: 0;
  margin-top: 0;
}
.footer .copyright ul,
.footer .copyright li {
  display: inline-block;
}
.footer .copyright .b-line {
  border-left: 1px solid #606060;
  border-right: 1px solid #606060;
}

@media (min-width: 768px) {
  .footer .line-gray {
    border-top: 1px solid #e1e1e1;
  }
}
/*
.container, .container-fluid, .container-xxl, .container-xl, .container-lg, .container-md, .container-sm {
    width: 100%;
    // padding-right: var(--bs-gutter-x, 2.75rem);
    // padding-left: var(--bs-gutter-x, 2.75rem);
    margin-right: auto;
    margin-left: auto;
}

.col-md-3 {
    flex: 0 0 auto;
    width: 25%;
    padding: 0px 85px;
  } */
.btn-secondary:disabled,
.btn-secondary.disabled {
  margin-top: 20px;
  color: #ffffff;
  font-weight: 5px;
  background-color: #5e5e5f;
  width: 100%;
}

form:not(.wo-class) label,
form:not(.wo-class) input,
form:not(.wo-class) textarea {
  font-size: 0.8333rem !important;
}
form:not(.wo-class) label a,
form:not(.wo-class) input a,
form:not(.wo-class) textarea a {
  font-size: 0.8333rem;
}

form:not(.wo-class) .form-control {
  background-color: transparent;
  height: auto !important;
}

form:not(.wo-class) input::-moz-placeholder {
  line-height: 2rem;
  padding-bottom: 4px;
  padding-top: 4px;
}

form:not(.wo-class) input::placeholder {
  line-height: 2rem;
  padding-bottom: 4px;
  padding-top: 4px;
}

.btn {
  vertical-align: middle !important;
}

.container {
  max-width: 1400px !important;
}

.red-color {
  color: #D70D17;
}

a.red-color:hover {
  color: #D70D17;
  opacity: 0.6;
}

.gray-color {
  color: #606060;
}

.gray-color:hover {
  color: #606060;
}

.green-color {
  color: #449925;
}

.green-color:hover {
  color: #449925;
}

.span-red-color span {
  color: #D70D17;
}

.border-none {
  border: none !important;
}

.br-15 {
  border-radius: 1rem;
}

.h-gray:hover {
  text-decoration: none;
  color: #707070;
}

.btn-red-br {
  background-color: #D70D17 !important;
  border-radius: 30px !important;
  color: white !important;
  font-size: 0.8rem !important;
  padding: 0.75rem 2rem;
  text-decoration: none !important;
  vertical-align: middle !important;
}
.btn-red-br:hover {
  background-color: #f40d18 !important;
  color: white;
}
.btn-red-br img {
  margin-left: 0.3rem;
  margin-bottom: 0.22rem;
  max-height: 1rem;
  vertical-align: middle;
}

.border-black {
  border-radius: 2rem;
  border: #231F20 solid 1px;
}

.btn-red-slide {
  background-color: #D70D17;
  border-radius: 30px !important;
  color: white;
  font-size: 15px;
  /* padding: 0.2rem 0.75rem;
  margin-top: 1rem; */
}

.btn-red-slide:hover {
  background-color: #f40d18 !important;
  color: white;
}

.btn-white {
  background-color: white !important;
  color: #393939 !important;
  border-radius: 10rem !important;
}

.btn-outline-black {
  background-color: transparent !important;
  border: 1px solid black !important;
  color: black !important;
  border-radius: 0 !important;
}

.btn-outline-white {
  background-color: transparent !important;
  border: 1px solid white !important;
  color: white !important;
}

.btn-red {
  background-color: #D70D17 !important;
  color: white !important;
}

.btn-br {
  border-radius: 50px !important;
}

.btn-br-font {
  font-size: 15px;
  font-weight: 400;
  line-height: 105%;
}

.bg-gray {
  background-color: #F7F7F7;
}

.bg-white {
  background-color: white;
}

.filter {
  filter: brightness(0.7);
}

.responsive {
  margin: auto;
  width: 100%;
}

.responsive-img2 {
  position: absolute;
  width: 55%;
  top: 10%;
  left: 30%;
}

.responsive-img2-movil {
  position: absolute;
  z-index: 1;
  width: 90%;
}

.p-off {
  padding: 0 !important;
}

.arrow-white {
  border: solid white;
  border-width: 0 1.5px 1.5px 0;
  display: inline-block;
  padding: 3px;
  vertical-align: middle;
}

.arrow-red {
  border: solid #D70D17;
  border-width: 0 1.5px 1.5px 0;
  display: inline-block;
  padding: 3px;
  vertical-align: middle;
}

.right {
  transform: rotate(-45deg);
  -webkit-transform: rotate(-45deg);
}

.left {
  transform: rotate(135deg);
  -webkit-transform: rotate(135deg);
}

.up {
  transform: rotate(-135deg);
  -webkit-transform: rotate(-135deg);
}

.down {
  transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
}

.animate {
  opacity: 0;
  transition: all 0.5s;
}

.showZoom {
  animation: showZoom 2s;
}
@keyframes showZoom {
  0% {
    transform: scale(1.4);
  }
  100% {
    transform: scale(1);
  }
}
.zoom {
  animation: zoom 0.5s alternate infinite ease-in;
}
@keyframes zoom {
  0% {
    transform: scale(0.8);
  }
  100% {
    transform: scale(1);
  }
}
.showOpacity {
  animation: showOpacity 4.5s;
}
@keyframes showOpacity {
  0% {
    opacity: 0;
    transform: translateY(7rem);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
.showUp {
  animation: showUp 1s;
}
@keyframes showUp {
  0% {
    transform: translateY(3.5rem);
  }
  100% {
    transform: translateY(0);
  }
}
.showUp2 {
  animation: showUp2 4.5s;
}
@keyframes showUp2 {
  0% {
    transform: translateY(6.5rem);
  }
  100% {
    transform: translateY(0);
  }
}
.showOpacity2 {
  animation: showOpacity2 4.5s;
}
@keyframes showOpacity2 {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
.showZoom2 {
  animation: showZoom2 2s;
}
@keyframes showZoom2 {
  0% {
    transform: scale(1.2);
  }
  100% {
    transform: scale(1);
  }
}
.line-gray-sep {
  background-color: #f7f7f7;
  height: 0.625rem;
  width: 100%;
}

.line-white-sep {
  background-color: white;
  height: 0.625rem;
  width: 100%;
}

.btn-csl-red-trans {
  background-color: transparent !important;
  border-color: #D70D17 !important;
  border-radius: 30px !important;
  color: #D70D17 !important;
  padding-left: 30px !important;
  padding-right: 30px !important;
  padding-top: 11px !important;
}

.btn-csl-red-trans:hover {
  background-color: #D70D17 !important;
  border-color: #D70D17 !important;
  color: white !important;
  transition: 0.3s;
}

.btn-red-solid {
  background-color: #D70D17 !important;
  border: 1px solid #D70D17 !important;
  border-radius: 30px !important;
  color: white !important;
  margin-bottom: 1rem;
  padding: 4px 30px !important;
}

.btn-red-solid:hover {
  background-color: #D70D17 !important;
  border-color: #D70D17 !important;
  color: white !important;
  transition: 0.3s;
}

.sinpadding[class*=col-] {
  padding-left: 0;
  padding-right: 0;
}

.sinpadding-pair[class*=col-]:nth-child(odd) {
  padding-left: 0;
  padding-right: 8px;
}

.sinpadding-pair[class*=col-]:nth-child(even) {
  padding-left: 8px;
  padding-right: 0;
}

.sinpadding-left[class*=col-] {
  padding-left: 0;
}

.sinpadding-right[class*=col-] {
  padding-right: 0;
}

h1, .h1 {
  font-size: 75px;
  font-weight: 500;
  line-height: 105%;
  font-family: Roboto, sans-serif;
}
h1.h1-xs, .h1-xs.h1 {
  font-size: 50px;
  font-weight: 500;
  line-height: 105%;
  font-family: Roboto, sans-serif !important;
}

h2 .with_img_with_padding, .h2 .with_img_with_padding {
  height: 40px;
  margin-bottom: 10px;
}
@media (max-width: 767px) {
  h2 .with_img_with_padding, .h2 .with_img_with_padding {
    margin-bottom: 5px;
  }
}
@media (max-width: 568px) {
  h2 .with_img_with_padding, .h2 .with_img_with_padding {
    margin-bottom: 5px;
  }
}
h2 .with_img, .h2 .with_img {
  height: 50px;
}
h2 .with_logo, .h2 .with_logo {
  font-size: 50px;
  display: inline-block;
  line-height: 42px;
  vertical-align: middle;
}
h2 .with_logo.with_padding, .h2 .with_logo.with_padding {
  margin-bottom: 5px;
}

.dropdown-menu {
  background: rgba(0, 0, 0, 0.9);
  color: white;
}
.dropdown-menu li > a:hover {
  background: #ffffff;
  color: #000fff;
}

.img-absolute {
  bottom: 0;
  left: 0;
  margin: auto;
  position: absolute;
  right: 0;
  top: 0;
  z-index: 10;
}

.content-edit {
  opacity: 0.1;
  transition: opacity 0.5s linear;
  z-index: 999;
  line-height: 1em;
}
.content-edit.content-edit-center {
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.content-edit:hover {
  opacity: 1;
}

.editor {
  position: relative;
}

.right-0 {
  right: 0rem;
}

.right-1 {
  right: 1rem;
}

.h-1 {
  height: 1rem;
}

.min-h-1 {
  min-height: 1rem;
}

.min-h-2 {
  min-height: 2rem;
}

.min-h-10p {
  min-height: 10%;
}

.object-fit-cover {
  -o-object-fit: cover;
     object-fit: cover;
}

.object-fit-contain {
  -o-object-fit: contain;
     object-fit: contain;
}

.w-fit-content {
  width: -moz-fit-content;
  width: fit-content;
}

.editor-open .content-edit {
  opacity: 0;
  display: none;
}

.editor-open .trumbowyg-editor, .trumbowyg-textarea {
  padding: 32px 0px !important;
}

.stripes-red {
  background-image: linear-gradient(45deg, #ffedd9 25%, #ffffff 25%, #ffffff 50%, #ffedd9 50%, #ffedd9 75%, #ffffff 75%, #ffffff 100%);
  background-size: 56.57px 56.57px;
}

.text-nowrap {
  white-space: nowrap;
}

.slider-products .product-img,
.slider-services .product-img {
  margin: auto;
  max-width: 215px;
  text-align: center;
}
.slider-products .product-img img,
.slider-services .product-img img {
  max-height: 15.28rem;
  max-width: 100%;
}
.slider-products .controls li,
.slider-services .controls li {
  border-radius: 50% !important;
  display: none;
  position: absolute;
  top: 50%;
  height: 60px;
  line-height: 60px;
  margin-top: -30px;
  padding: 0 15px;
  cursor: pointer;
  transition: background 0.3s;
}
.slider-products .controls .prev,
.slider-services .controls .prev {
  left: 0;
}
.slider-products .controls .next,
.slider-services .controls .next {
  right: 0;
}
.slider-products .card-size,
.slider-services .card-size {
  padding: 2em 1em 0em 1em;
  border-radius: 10px;
  margin: 0 auto;
}
@media (min-width: 400px) {
  .slider-products:not(.full-w-card) .card-size,
  .slider-services:not(.full-w-card) .card-size {
    max-height: 594.15px;
    max-width: 447.75px;
  }
}
@media (max-width: 400px) {
  .slider-products:not(.full-w-card) .card-size,
  .slider-services:not(.full-w-card) .card-size {
    max-height: 524.25px;
    max-width: 388.05px;
  }
}
.slider-products.full-w-card,
.slider-services.full-w-card {
  -moz-column-gap: 1.5rem;
       column-gap: 1.5rem;
}
.slider-products.full-w-card.img-contain .img-custom,
.slider-services.full-w-card.img-contain .img-custom {
  -o-object-fit: contain !important;
     object-fit: contain !important;
}
.slider-products .logo-w-padding,
.slider-products .logo-wo-padding,
.slider-services .logo-w-padding,
.slider-services .logo-wo-padding {
  max-width: 100%;
}
.slider-products .logo,
.slider-services .logo {
  width: 75%;
  height: 45px;
}
.slider-products .field-1,
.slider-services .field-1 {
  flex-basis: 60px;
}
@media (min-width: 768px) {
  .slider-products .field-2,
  .slider-services .field-2 {
    flex-basis: 300px;
    padding: 10px 0 0 0;
    min-height: 375px;
    max-height: 375px;
  }
}
@media (max-width: 767.5px) {
  .slider-products .field-2,
  .slider-services .field-2 {
    flex-basis: 200px;
    padding: 40px 0 0 0;
    min-height: 250px;
    max-height: 250px;
  }
}
.slider-products .btn-custom-red,
.slider-services .btn-custom-red {
  width: 200px;
  height: 38px;
  background: #D60812 0% 0% no-repeat padding-box;
  border-radius: 21px;
  opacity: 1;
  color: white;
  border: none;
  font-size: 15px;
  line-height: 22px;
  transition: 250ms;
}
.slider-products .btn-custom-red:hover,
.slider-services .btn-custom-red:hover {
  background-color: #f40d18 !important;
  color: #fff;
}
@media (min-width: 768px) {
  .slider-products .img-custom,
  .slider-services .img-custom {
    -o-object-fit: cover;
       object-fit: cover;
  }
}
@media (max-width: 767.5px) {
  .slider-products .img-custom,
  .slider-services .img-custom {
    -o-object-fit: contain;
       object-fit: contain;
  }
}
.slider-products .translate-y-3,
.slider-services .translate-y-3 {
  transform: translateY(1em);
}

.slider-products .tns-outer [data-action=stop],
.slider-products .tns-outer [data-action=play],
.slider-products .tns-outer [data-action=start],
.slider-services .tns-outer [data-action=stop],
.slider-services .tns-outer [data-action=play],
.slider-services .tns-outer [data-action=start] {
  display: none;
}

/* .slider-products .description {
    -webkit-line-clamp: 2; /* number of lines to show /
} */
.slider-services .title,
.slider-ventajas .title {
  font-size: 1.5rem;
  line-height: 1.7rem;
  font-weight: 500;
  margin-top: 2rem;
}

.slider-services .description,
.slider-ventajas .description {
  -webkit-line-clamp: 6;
  /* number of lines to show */
}

.slider-services .icon,
.slider-ventajas .icon {
  height: 9rem;
  width: 9rem;
}

.slide-title {
  align-items: center;
  color: white;
  display: flex;
  height: 100vh;
  justify-content: center;
  position: absolute;
  text-align: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  -webkit-justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  -webkit-align-items: center;
  width: 100%;
  z-index: 2;
}
.slide-title .title {
  color: white;
  font-family: Roboto, sans-serif;
  font-size: 1rem;
  margin-bottom: 1rem;
}
.slide-title h2, .slide-title .h2 {
  color: #FFF;
  font-size: 50px;
  font-weight: 500;
  line-height: 105%;
  font-family: Roboto, sans-serif !important;
}
.slide-title .subtitle {
  color: white;
  font-family: Roboto, sans-serif;
  font-size: 2.5rem;
  line-height: 2.5rem;
  font-weight: 500;
  max-width: 40rem;
}
.slide-title .logo {
  margin-bottom: 2rem;
  max-height: 100px;
  opacity: 0;
}
.slide-title .product {
  max-height: 30rem;
  max-width: 47rem;
}

#customize-photos .tns-item img {
  margin: 0 8px;
  width: 100%;
  height: 400px;
  min-width: 400px;
  -o-object-fit: cover;
     object-fit: cover;
  cursor: pointer;
  scale: 0.95;
}
#customize-photos .tns-item img:hover {
  scale: 1;
}
#customize-photos .tns-item img:not(#slider_end_image) {
  max-width: 450px;
  width: 100%;
}
@media (max-width: 768px) {
  #customize-photos .tns-item #slider_end_image {
    display: none;
  }
}

#customize-photos-iw, #customize-photos-v2-iw {
  margin: 0 !important;
}

#showroom,
#sobre-sten,
#projects,
#project,
#encofrados,
#products,
#contact,
#noticias,
#servicios {
  /* Track */
  /* Handle */
  /* Handle on hover */
  /* .service-title {
      font-size: 50px;
      line-height: 1em;
      max-width: 10em;
  } */
  /* Grid de la tarjeta */
  /** Estilo del tiny slider **/
  /** Oculta las flechas de los sliders **/
  /* @media(max-width: 720px) {
      ul.controls {
          display: none;
      }
  } */
  /** Oculta los circulos de los sliders **/
  /* @media(min-width: 720px) {
      div.tns-nav {
          display: none;
      }
  } */
}
#showroom .header,
#sobre-sten .header,
#projects .header,
#project .header,
#encofrados .header,
#products .header,
#contact .header,
#noticias .header,
#servicios .header {
  padding: 0;
  width: 100%;
}
#showroom .header img,
#sobre-sten .header img,
#projects .header img,
#project .header img,
#encofrados .header img,
#products .header img,
#contact .header img,
#noticias .header img,
#servicios .header img {
  width: 100%;
}
#showroom ul.controls li.prev,
#sobre-sten ul.controls li.prev,
#projects ul.controls li.prev,
#project ul.controls li.prev,
#encofrados ul.controls li.prev,
#products ul.controls li.prev,
#contact ul.controls li.prev,
#noticias ul.controls li.prev,
#servicios ul.controls li.prev {
  left: 25px;
}
#showroom ul.controls li.next,
#sobre-sten ul.controls li.next,
#projects ul.controls li.next,
#project ul.controls li.next,
#encofrados ul.controls li.next,
#products ul.controls li.next,
#contact ul.controls li.next,
#noticias ul.controls li.next,
#servicios ul.controls li.next {
  right: 25px;
}
#showroom ul.controls li img,
#sobre-sten ul.controls li img,
#projects ul.controls li img,
#project ul.controls li img,
#encofrados ul.controls li img,
#products ul.controls li img,
#contact ul.controls li img,
#noticias ul.controls li img,
#servicios ul.controls li img {
  height: 40px;
}
#showroom ul.controls li[aria-disabled=true],
#sobre-sten ul.controls li[aria-disabled=true],
#projects ul.controls li[aria-disabled=true],
#project ul.controls li[aria-disabled=true],
#encofrados ul.controls li[aria-disabled=true],
#products ul.controls li[aria-disabled=true],
#contact ul.controls li[aria-disabled=true],
#noticias ul.controls li[aria-disabled=true],
#servicios ul.controls li[aria-disabled=true] {
  opacity: 0;
}
#showroom ul.controls li[aria-disabled=false],
#sobre-sten ul.controls li[aria-disabled=false],
#projects ul.controls li[aria-disabled=false],
#project ul.controls li[aria-disabled=false],
#encofrados ul.controls li[aria-disabled=false],
#products ul.controls li[aria-disabled=false],
#contact ul.controls li[aria-disabled=false],
#noticias ul.controls li[aria-disabled=false],
#servicios ul.controls li[aria-disabled=false] {
  opacity: 1;
}
#showroom ul.controls li,
#sobre-sten ul.controls li,
#projects ul.controls li,
#project ul.controls li,
#encofrados ul.controls li,
#products ul.controls li,
#contact ul.controls li,
#noticias ul.controls li,
#servicios ul.controls li {
  background: rgba(51, 51, 51, 0.7490196078);
}
@media (max-width: 767.5px) {
  #showroom ul.controls,
  #sobre-sten ul.controls,
  #projects ul.controls,
  #project ul.controls,
  #encofrados ul.controls,
  #products ul.controls,
  #contact ul.controls,
  #noticias ul.controls,
  #servicios ul.controls {
    display: none;
  }
}
#showroom .rounded-custom,
#sobre-sten .rounded-custom,
#projects .rounded-custom,
#project .rounded-custom,
#encofrados .rounded-custom,
#products .rounded-custom,
#contact .rounded-custom,
#noticias .rounded-custom,
#servicios .rounded-custom {
  border-radius: 17px !important;
}
#showroom .custom-image,
#showroom .custom-image:before,
#sobre-sten .custom-image,
#sobre-sten .custom-image:before,
#projects .custom-image,
#projects .custom-image:before,
#project .custom-image,
#project .custom-image:before,
#encofrados .custom-image,
#encofrados .custom-image:before,
#products .custom-image,
#products .custom-image:before,
#contact .custom-image,
#contact .custom-image:before,
#noticias .custom-image,
#noticias .custom-image:before,
#servicios .custom-image,
#servicios .custom-image:before {
  background-size: cover;
  background-position: center;
  box-shadow: inset 0 0 0 2000px rgba(0, 0, 0, 0.3);
  background-color: white;
}
#showroom .h-card-default,
#sobre-sten .h-card-default,
#projects .h-card-default,
#project .h-card-default,
#encofrados .h-card-default,
#products .h-card-default,
#contact .h-card-default,
#noticias .h-card-default,
#servicios .h-card-default {
  height: 500px;
}
#showroom .vh-30,
#sobre-sten .vh-30,
#projects .vh-30,
#project .vh-30,
#encofrados .vh-30,
#products .vh-30,
#contact .vh-30,
#noticias .vh-30,
#servicios .vh-30 {
  min-height: 500px;
  height: 30vh;
}
#showroom .column-custom,
#sobre-sten .column-custom,
#projects .column-custom,
#project .column-custom,
#encofrados .column-custom,
#products .column-custom,
#contact .column-custom,
#noticias .column-custom,
#servicios .column-custom {
  line-height: 1rem;
  background-color: #1D1D1B;
  color: white;
  position: absolute;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
}
#showroom .column-custom .fw-medium,
#sobre-sten .column-custom .fw-medium,
#projects .column-custom .fw-medium,
#project .column-custom .fw-medium,
#encofrados .column-custom .fw-medium,
#products .column-custom .fw-medium,
#contact .column-custom .fw-medium,
#noticias .column-custom .fw-medium,
#servicios .column-custom .fw-medium {
  font-family: Roboto, sans-serif;
}
#showroom .button-custom,
#sobre-sten .button-custom,
#projects .button-custom,
#project .button-custom,
#encofrados .button-custom,
#products .button-custom,
#contact .button-custom,
#noticias .button-custom,
#servicios .button-custom {
  background: #D70D17 0% 0% no-repeat padding-box;
  border-radius: 24px;
  padding: 0.5rem 1rem;
  margin: 1rem;
  min-width: 50%;
}
#showroom .button-custom a,
#sobre-sten .button-custom a,
#projects .button-custom a,
#project .button-custom a,
#encofrados .button-custom a,
#products .button-custom a,
#contact .button-custom a,
#noticias .button-custom a,
#servicios .button-custom a {
  text-decoration: none;
}
#showroom .close-btn-custom,
#sobre-sten .close-btn-custom,
#projects .close-btn-custom,
#project .close-btn-custom,
#encofrados .close-btn-custom,
#products .close-btn-custom,
#contact .close-btn-custom,
#noticias .close-btn-custom,
#servicios .close-btn-custom {
  position: absolute;
  bottom: 40px;
  right: 44px;
  text-align: right;
  color: white;
  font-size: 1.5rem;
  width: 3rem;
  cursor: pointer;
  z-index: 9;
}
@media (max-width: 767.5px) {
  #showroom .close-btn-custom,
  #sobre-sten .close-btn-custom,
  #projects .close-btn-custom,
  #project .close-btn-custom,
  #encofrados .close-btn-custom,
  #products .close-btn-custom,
  #contact .close-btn-custom,
  #noticias .close-btn-custom,
  #servicios .close-btn-custom {
    bottom: 20px;
    right: 22px;
  }
}
#showroom .close-btn-custom.active,
#sobre-sten .close-btn-custom.active,
#projects .close-btn-custom.active,
#project .close-btn-custom.active,
#encofrados .close-btn-custom.active,
#products .close-btn-custom.active,
#contact .close-btn-custom.active,
#noticias .close-btn-custom.active,
#servicios .close-btn-custom.active {
  animation: rotateclose 0.2s forwards;
}
#showroom .close-btn-custom.inactive,
#sobre-sten .close-btn-custom.inactive,
#projects .close-btn-custom.inactive,
#project .close-btn-custom.inactive,
#encofrados .close-btn-custom.inactive,
#products .close-btn-custom.inactive,
#contact .close-btn-custom.inactive,
#noticias .close-btn-custom.inactive,
#servicios .close-btn-custom.inactive {
  animation: rotateclosereverse 0.2s forwards;
}
@keyframes rotateclose {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(-45deg);
  }
}
@keyframes rotateclosereverse {
  from {
    transform: rotate(-45deg);
  }
  to {
    transform: rotate(0deg);
  }
}
#showroom [id^=face-b-],
#sobre-sten [id^=face-b-],
#projects [id^=face-b-],
#project [id^=face-b-],
#encofrados [id^=face-b-],
#products [id^=face-b-],
#contact [id^=face-b-],
#noticias [id^=face-b-],
#servicios [id^=face-b-] {
  z-index: 9;
}
#showroom [id^=face-b-].inactive,
#sobre-sten [id^=face-b-].inactive,
#projects [id^=face-b-].inactive,
#project [id^=face-b-].inactive,
#encofrados [id^=face-b-].inactive,
#products [id^=face-b-].inactive,
#contact [id^=face-b-].inactive,
#noticias [id^=face-b-].inactive,
#servicios [id^=face-b-].inactive {
  animation: opacityshowreverse 0.5s forwards;
}
#showroom [id^=face-b-]:not(.inactive),
#sobre-sten [id^=face-b-]:not(.inactive),
#projects [id^=face-b-]:not(.inactive),
#project [id^=face-b-]:not(.inactive),
#encofrados [id^=face-b-]:not(.inactive),
#products [id^=face-b-]:not(.inactive),
#contact [id^=face-b-]:not(.inactive),
#noticias [id^=face-b-]:not(.inactive),
#servicios [id^=face-b-]:not(.inactive) {
  animation: opacityshow 1s forwards;
}
#showroom [id^=face-b-] .w-md-50,
#sobre-sten [id^=face-b-] .w-md-50,
#projects [id^=face-b-] .w-md-50,
#project [id^=face-b-] .w-md-50,
#encofrados [id^=face-b-] .w-md-50,
#products [id^=face-b-] .w-md-50,
#contact [id^=face-b-] .w-md-50,
#noticias [id^=face-b-] .w-md-50,
#servicios [id^=face-b-] .w-md-50 {
  width: 50%;
}
@keyframes opacityshow {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes opacityshowreverse {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}
#showroom .service-description,
#sobre-sten .service-description,
#projects .service-description,
#project .service-description,
#encofrados .service-description,
#products .service-description,
#contact .service-description,
#noticias .service-description,
#servicios .service-description {
  font-size: 0.7rem !important;
  overflow: auto;
}
#showroom .service-description::-webkit-scrollbar,
#sobre-sten .service-description::-webkit-scrollbar,
#projects .service-description::-webkit-scrollbar,
#project .service-description::-webkit-scrollbar,
#encofrados .service-description::-webkit-scrollbar,
#products .service-description::-webkit-scrollbar,
#contact .service-description::-webkit-scrollbar,
#noticias .service-description::-webkit-scrollbar,
#servicios .service-description::-webkit-scrollbar {
  width: 1em;
}
#showroom .service-description::-webkit-scrollbar-track,
#sobre-sten .service-description::-webkit-scrollbar-track,
#projects .service-description::-webkit-scrollbar-track,
#project .service-description::-webkit-scrollbar-track,
#encofrados .service-description::-webkit-scrollbar-track,
#products .service-description::-webkit-scrollbar-track,
#contact .service-description::-webkit-scrollbar-track,
#noticias .service-description::-webkit-scrollbar-track,
#servicios .service-description::-webkit-scrollbar-track {
  background: #1d1d1b;
  border-radius: 0.5em;
}
#showroom .service-description::-webkit-scrollbar-thumb,
#sobre-sten .service-description::-webkit-scrollbar-thumb,
#projects .service-description::-webkit-scrollbar-thumb,
#project .service-description::-webkit-scrollbar-thumb,
#encofrados .service-description::-webkit-scrollbar-thumb,
#products .service-description::-webkit-scrollbar-thumb,
#contact .service-description::-webkit-scrollbar-thumb,
#noticias .service-description::-webkit-scrollbar-thumb,
#servicios .service-description::-webkit-scrollbar-thumb {
  background: #888888;
  border-radius: 0.5em;
}
#showroom .service-description::-webkit-scrollbar-thumb:hover,
#sobre-sten .service-description::-webkit-scrollbar-thumb:hover,
#projects .service-description::-webkit-scrollbar-thumb:hover,
#project .service-description::-webkit-scrollbar-thumb:hover,
#encofrados .service-description::-webkit-scrollbar-thumb:hover,
#products .service-description::-webkit-scrollbar-thumb:hover,
#contact .service-description::-webkit-scrollbar-thumb:hover,
#noticias .service-description::-webkit-scrollbar-thumb:hover,
#servicios .service-description::-webkit-scrollbar-thumb:hover {
  background: #888888;
  opacity: 0.5;
}
#showroom .service-title-size,
#sobre-sten .service-title-size,
#projects .service-title-size,
#project .service-title-size,
#encofrados .service-title-size,
#products .service-title-size,
#contact .service-title-size,
#noticias .service-title-size,
#servicios .service-title-size {
  line-height: 1.05;
  max-width: 10em;
  margin: 0 !important;
}
@media (max-width: 767.5px) {
  #showroom,
  #sobre-sten,
  #projects,
  #project,
  #encofrados,
  #products,
  #contact,
  #noticias,
  #servicios {
    /* .service-title {
        font-size: 45px;
        line-height: 1em;
        max-width: 10em;
    } */
  }
  #showroom [id^=face-b-] .w-md-50,
  #sobre-sten [id^=face-b-] .w-md-50,
  #projects [id^=face-b-] .w-md-50,
  #project [id^=face-b-] .w-md-50,
  #encofrados [id^=face-b-] .w-md-50,
  #products [id^=face-b-] .w-md-50,
  #contact [id^=face-b-] .w-md-50,
  #noticias [id^=face-b-] .w-md-50,
  #servicios [id^=face-b-] .w-md-50 {
    width: 100%;
  }
}
#showroom .slide-title-button-down,
#sobre-sten .slide-title-button-down,
#projects .slide-title-button-down,
#project .slide-title-button-down,
#encofrados .slide-title-button-down,
#products .slide-title-button-down,
#contact .slide-title-button-down,
#noticias .slide-title-button-down,
#servicios .slide-title-button-down {
  z-index: 1;
  position: absolute;
  bottom: 4rem;
  animation: buttondown 2s alternate-reverse infinite;
}
@keyframes buttondown {
  from {
    -webkit-transform: translateY(0px);
  }
  to {
    -webkit-transform: translateY(2rem);
  }
}
#showroom .grid-c-container,
#sobre-sten .grid-c-container,
#projects .grid-c-container,
#project .grid-c-container,
#encofrados .grid-c-container,
#products .grid-c-container,
#contact .grid-c-container,
#noticias .grid-c-container,
#servicios .grid-c-container {
  display: grid;
  grid-template-columns: 2rem 1fr 1fr 2rem;
  grid-template-rows: 2rem 1fr 1fr 2rem;
  gap: 0px 0px;
  grid-auto-flow: row;
}
#showroom .grid-c-container .background,
#sobre-sten .grid-c-container .background,
#projects .grid-c-container .background,
#project .grid-c-container .background,
#encofrados .grid-c-container .background,
#products .grid-c-container .background,
#contact .grid-c-container .background,
#noticias .grid-c-container .background,
#servicios .grid-c-container .background {
  z-index: 0;
  grid-area: 1/1/5/5;
}
#showroom .grid-c-container .shadow,
#sobre-sten .grid-c-container .shadow,
#projects .grid-c-container .shadow,
#project .grid-c-container .shadow,
#encofrados .grid-c-container .shadow,
#products .grid-c-container .shadow,
#contact .grid-c-container .shadow,
#noticias .grid-c-container .shadow,
#servicios .grid-c-container .shadow {
  z-index: 0;
  grid-area: 1/1/5/5;
  background-color: rgba(0, 0, 0, 0.3);
}
#showroom .grid-c-container .title,
#sobre-sten .grid-c-container .title,
#projects .grid-c-container .title,
#project .grid-c-container .title,
#encofrados .grid-c-container .title,
#products .grid-c-container .title,
#contact .grid-c-container .title,
#noticias .grid-c-container .title,
#servicios .grid-c-container .title {
  z-index: 1;
  grid-area: 2/2/3/4;
}
#showroom .grid-c-container .object-fit-cover,
#sobre-sten .grid-c-container .object-fit-cover,
#projects .grid-c-container .object-fit-cover,
#project .grid-c-container .object-fit-cover,
#encofrados .grid-c-container .object-fit-cover,
#products .grid-c-container .object-fit-cover,
#contact .grid-c-container .object-fit-cover,
#noticias .grid-c-container .object-fit-cover,
#servicios .grid-c-container .object-fit-cover {
  -o-object-fit: cover;
  object-fit: cover;
  background-size: cover;
  background-position: center;
}
#showroom #changeTitleContainer,
#sobre-sten #changeTitleContainer,
#projects #changeTitleContainer,
#project #changeTitleContainer,
#encofrados #changeTitleContainer,
#products #changeTitleContainer,
#contact #changeTitleContainer,
#noticias #changeTitleContainer,
#servicios #changeTitleContainer {
  animation: fadeInOut 10s infinite forwards;
}
#showroom #changeTextContainer,
#sobre-sten #changeTextContainer,
#projects #changeTextContainer,
#project #changeTextContainer,
#encofrados #changeTextContainer,
#products #changeTextContainer,
#contact #changeTextContainer,
#noticias #changeTextContainer,
#servicios #changeTextContainer {
  animation: fadeInOut 10s infinite forwards;
}
@media (max-width: 560px) {
  #showroom #changeTextContainer,
  #sobre-sten #changeTextContainer,
  #projects #changeTextContainer,
  #project #changeTextContainer,
  #encofrados #changeTextContainer,
  #products #changeTextContainer,
  #contact #changeTextContainer,
  #noticias #changeTextContainer,
  #servicios #changeTextContainer {
    font-size: 11vw;
  }
}
@keyframes fadeInOut {
  0%, 15% {
    opacity: 0;
    transform: translateY(100px);
  }
  30% {
    opacity: 1;
    transform: translateY(0px);
  }
  70% {
    opacity: 1;
    transform: translateY(0px);
  }
  85%, 100% {
    opacity: 0;
    transform: translateY(100px);
  }
}
#showroom .tns-nav > [aria-controls],
#sobre-sten .tns-nav > [aria-controls],
#projects .tns-nav > [aria-controls],
#project .tns-nav > [aria-controls],
#encofrados .tns-nav > [aria-controls],
#products .tns-nav > [aria-controls],
#contact .tns-nav > [aria-controls],
#noticias .tns-nav > [aria-controls],
#servicios .tns-nav > [aria-controls] {
  width: 9px;
  height: 9px;
  padding: 0;
  margin: 0 5px;
  border-radius: 50%;
  background: #ddd;
  border: 0;
}
#showroom .tns-nav > .tns-nav-active,
#sobre-sten .tns-nav > .tns-nav-active,
#projects .tns-nav > .tns-nav-active,
#project .tns-nav > .tns-nav-active,
#encofrados .tns-nav > .tns-nav-active,
#products .tns-nav > .tns-nav-active,
#contact .tns-nav > .tns-nav-active,
#noticias .tns-nav > .tns-nav-active,
#servicios .tns-nav > .tns-nav-active {
  background: #999;
}
#showroom .tns-nav,
#sobre-sten .tns-nav,
#projects .tns-nav,
#project .tns-nav,
#encofrados .tns-nav,
#products .tns-nav,
#contact .tns-nav,
#noticias .tns-nav,
#servicios .tns-nav {
  display: none;
  text-align: center;
  margin: 2em 0 0.5em 0;
}
#showroom .tns-ovh > .tns-inner,
#sobre-sten .tns-ovh > .tns-inner,
#projects .tns-ovh > .tns-inner,
#project .tns-ovh > .tns-inner,
#encofrados .tns-ovh > .tns-inner,
#products .tns-ovh > .tns-inner,
#contact .tns-ovh > .tns-inner,
#noticias .tns-ovh > .tns-inner,
#servicios .tns-ovh > .tns-inner {
  margin: 0 !important;
}

#showroom .header,
#sobre-sten .header,
#encofrados .header,
#products .header,
#project .header,
#servicios .header {
  background-position: center center;
  background-size: cover;
  background-repeat: no-repeat;
  height: 100vh;
  position: relative;
  width: 100%;
  z-index: 0;
  filter: brightness(0.45);
}
#showroom .header.with-out-filter,
#sobre-sten .header.with-out-filter,
#encofrados .header.with-out-filter,
#products .header.with-out-filter,
#project .header.with-out-filter,
#servicios .header.with-out-filter {
  filter: brightness(1);
}
@media (min-width: 768px) {
  #showroom .header.with-out-md-filter,
  #sobre-sten .header.with-out-md-filter,
  #encofrados .header.with-out-md-filter,
  #products .header.with-out-md-filter,
  #project .header.with-out-md-filter,
  #servicios .header.with-out-md-filter {
    filter: brightness(1);
  }
}
@media (min-width: 768px) {
  #showroom .header.with-md-filter,
  #sobre-sten .header.with-md-filter,
  #encofrados .header.with-md-filter,
  #products .header.with-md-filter,
  #project .header.with-md-filter,
  #servicios .header.with-md-filter {
    filter: brightness(0.45);
  }
}

.button-sweet-sten {
  background-color: #D0091B !important;
  border-bottom: 8px solid #D0091B !important;
  border-left: 18px solid #D0091B !important;
  border-right: 18px solid #D0091B !important;
  border-top: 8px solid #D0091B !important;
}

.title-address {
  font-size: 31px !important;
  line-height: 31px !important;
}

.address-card {
  line-height: 1rem !important;
}
.address-card a {
  color: #000000;
  text-decoration: none;
}

.active_lang {
  color: #707070 !important;
  -webkit-text-decoration: revert !important;
          text-decoration: revert !important;
}

.btn-custom-red {
  background: #D60812 0% 0% no-repeat padding-box;
  border: none;
  border-radius: 21px;
  display: inline-block;
  opacity: 1;
  color: white;
  font-size: 15px;
  padding: 0 20px;
  text-decoration: none;
  transition: 250ms;
  min-width: 100px;
}
.btn-custom-red:not(.btn-big):not(.btn-gigant) {
  height: 38px;
  line-height: 36px;
}
.btn-custom-red.btn-big {
  height: 44px;
  line-height: 43px;
}
.btn-custom-red.btn-gigant {
  height: 60px;
  line-height: 64px;
  border-radius: 40px;
  font-size: 20px;
}
.btn-custom-red:hover {
  background-color: #f40d18 !important;
  color: #fff;
  text-decoration: none;
}

.btn-custom-red-small {
  background: #D60812 0% 0% no-repeat padding-box;
  border: none;
  border-radius: 21px;
  display: inline-block;
  height: 26px;
  opacity: 1;
  color: white;
  font-size: 12px;
  line-height: 26px;
  padding: 0 10px;
  text-decoration: none;
  transition: 250ms;
  width: 200px;
  text-transform: lowercase;
}
.btn-custom-red-small:hover {
  background-color: #f40d18 !important;
  color: #fff;
  text-decoration: none;
}

.btn-custom-red-small-safari-align {
  --btn-translate-x: -50%;
  --btn-translate-y: calc(50% + 1px);
  background: #D60812 0% 0% no-repeat padding-box;
  border: none;
  border-radius: 21px;
  height: 26px;
  color: white;
  line-height: 26px;
  padding: 0 10px;
  text-decoration: none;
  transition: 250ms;
  width: 150px;
}
.btn-custom-red-small-safari-align span {
  position: absolute;
  bottom: 50%;
  left: 50%;
  transform: translate(var(--btn-translate-x), var(--btn-translate-y));
}
.btn-custom-red-small-safari-align:hover {
  background-color: #f40d18 !important;
  color: #fff;
  text-decoration: none;
}

@media (max-width: 768px) {
  #project .btn-custom-red {
    padding: 0 10px;
  }
}
.download {
  margin-top: -2px;
  width: 0.8rem;
}

.slider-products {
  display: flex;
}
.slider-products .item {
  border-radius: 10px;
  display: inline-block;
  height: 100%;
  margin-right: 15px;
  width: 20.1rem;
}
.slider-products .section {
  border-radius: 17px;
  align-items: center;
  justify-content: flex-start;
  flex-direction: column;
  max-height: 598px;
  height: 100%;
  padding-top: 40px;
  padding-left: 30px;
  padding-right: 30px;
  padding-bottom: 0px;
  margin: auto;
  min-width: 230px;
  row-gap: 31px;
}
.slider-products .section.pb-30 {
  padding-bottom: 30px;
}
.slider-products .section .section-logo {
  margin-bottom: 5px;
}
.slider-products .section .logo img {
  height: 43px;
}
.slider-products .section .description {
  margin-bottom: 20px;
  margin-top: 5px;
}
.slider-products .section .product-img {
  margin-bottom: 0;
  max-width: 400px;
}
.slider-products .section .product-img img {
  width: 100%;
}
.slider-products .section .btn-red-slide {
  margin-bottom: 20px;
}
.slider-products .section.align-bottom {
  padding-bottom: 0;
}
.slider-products .description {
  font-size: 15px !important;
  line-height: 1.5;
  white-space: normal;
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  /* number of lines to show */
  -webkit-box-orient: vertical;
  max-width: 20rem;
  margin: auto;
  min-height: 2rem;
}
.slider-products .product-img {
  margin: auto;
  text-align: center;
}
.slider-products .product-img img {
  max-height: 17.28rem;
  max-width: 100%;
}
.slider-products .product-img-special {
  margin: auto;
  text-align: center;
}
.slider-products .product-img-special img {
  max-height: 400px;
  max-width: 100%;
}
.slider-products .controls li {
  border-radius: 50% !important;
  display: block;
  position: absolute;
  top: 50%;
  height: 40px;
  line-height: 40px;
  margin-top: -30px;
  padding: 0 15px;
  cursor: pointer;
  transition: background 0.3s;
}
.slider-products .controls li img {
  height: 10px !important;
}
.slider-products .controls .prev {
  left: 0;
}
.slider-products .controls .next {
  right: 0;
}
.slider-products .tns-outer [data-action=stop],
.slider-products .tns-outer [data-action=play],
.slider-products .tns-outer [data-action=start] {
  display: none;
}
.slider-products .address-card {
  min-width: 230px;
}

.products-grid .product .logo-w-padding {
  max-height: 41.94px;
  padding-bottom: 8.82px;
}
.products-grid .product .logo-wo-padding {
  max-height: 41.94px;
}
.products-grid .item {
  border-radius: 10px;
  display: inline-block;
  height: 100%;
  margin-right: 15px;
  width: 20.1rem;
}
.products-grid .section {
  border-radius: 17px;
  align-items: center;
  justify-content: flex-start;
  flex-direction: column;
  max-height: 598px;
  height: 100%;
  padding-top: 40px;
  padding-left: 30px;
  padding-right: 30px;
  padding-bottom: 0px;
  margin: auto;
  min-width: 230px;
  row-gap: 31px;
}
.products-grid .section.pb-30 {
  padding-bottom: 30px;
}
.products-grid .section .section-logo {
  margin-bottom: 5px;
}
.products-grid .section .logo img {
  height: 43px;
}
.products-grid .section .description {
  margin-bottom: 20px;
  margin-top: 5px;
}
.products-grid .section .product-img {
  margin-bottom: 0;
  max-width: 400px;
}
.products-grid .section .product-img img {
  width: 100%;
}
.products-grid .section .btn-red-slide {
  margin-bottom: 20px;
}
.products-grid .section.align-bottom {
  padding-bottom: 0;
}
.products-grid .description {
  font-weight: 800;
  font-size: 15px;
  line-height: 1.5;
  white-space: normal;
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  /* number of lines to show */
  -webkit-box-orient: vertical;
  max-width: 20rem;
  margin: auto;
  min-height: 2rem;
}
.products-grid .product-img {
  margin: auto;
  text-align: center;
}
.products-grid .product-img img {
  max-height: 17.28rem;
  max-width: 100%;
}
.products-grid .btn-custom-red {
  width: 200px;
  height: 38px;
  background: #D60812 0% 0% no-repeat padding-box;
  border-radius: 21px;
  opacity: 1;
  color: white;
  border: none;
  font-size: 15px;
  line-height: 22px;
  transition: 250ms;
}
.products-grid .btn-custom-red:hover {
  background-color: #f40d18 !important;
  color: #fff;
}
@media (min-width: 768px) {
  .products-grid .field-2 {
    flex-basis: 300px;
    padding: 10px 0 0 0;
    max-height: 375px;
  }
}
@media (max-width: 767.5px) {
  .products-grid .field-2 {
    flex-basis: 200px;
    padding: 10px 0 0 0;
    max-height: 250px;
  }
}

#products form label,
#products form input,
#products form textarea {
  font-size: 0.8333rem !important;
}
#products form .form-control {
  background-color: transparent;
}
#products .mw-18 {
  max-width: 18rem;
}
#products .header {
  background-color: #f7f7f7;
  height: 100vh;
  width: 100%;
}
#products .header .mt-6 {
  margin-top: 6rem;
}
#products .header .logo {
  margin-bottom: 2rem;
  opacity: 0;
}
#products .header .product {
  max-height: 22rem;
  max-width: 38rem;
}
#products .header-andamios {
  background-color: #f7f7f7;
  height: 100vh;
  width: 100%;
}
#products .header-andamios .mt-6 {
  margin-top: 6rem;
}
#products .header-andamios .logo {
  margin-bottom: 2rem;
  opacity: 0;
}
#products .header-andamios .product {
  max-height: 22rem;
  max-width: 38rem;
}
#products h1, #products .h1 {
  color: #313131;
  font-size: 75px;
  font-weight: 500;
  line-height: 105%;
  margin: 0 !important;
  font-family: Roboto, sans-serif !important;
}
#products h2, #products .h2 {
  font-size: 50px;
  font-weight: 500;
  line-height: 105%;
  font-family: Roboto, sans-serif !important;
}
#products p {
  font-family: Roboto, sans-serif !important;
  font-size: 1rem;
}
#products p span, #products p label {
  font-family: Roboto, sans-serif !important;
  font-size: 1rem;
  font-weight: 500;
}
#products ul {
  padding-left: 20px;
}
#products ul li {
  color: #D70D17;
  font-family: Roboto, sans-serif !important;
  font-size: 1rem;
  list-style: none;
  list-style-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22 width%3D%2212%22 height%3D%2212%22 viewBox%3D%220 0 12 12%22%3E%3Ctext x%3D%220%22 y%3D%2210%22 font-size%3D%2210%22 fill%3D%22%23D70D17%22%3E%26%23xB7%3B%3C%2Ftext%3E%3C%2Fsvg%3E"); /* Utiliza un punto medio (·) como imagen del bullet */
  filter: brightness(1.5);
}
#products ul li > span {
  color: #313131;
  font-size: 1rem;
}
#products .responsive-900 {
  margin: auto;
  width: 100%;
  max-height: 900px;
  -o-object-fit: contain;
     object-fit: contain;
}
#products .responsive-600 {
  margin: auto;
  width: 100%;
  max-height: 600px;
  -o-object-fit: contain;
     object-fit: contain;
}
#products .first-spec {
  line-height: 1.5;
}
#products .first-spec h2, #products .first-spec .h2 {
  font-size: 3.43rem;
  line-height: 3.43rem;
  margin: auto;
  max-width: 47rem;
}
#products .first-spec p {
  color: #231f20;
  font-family: Roboto, sans-serif;
  font-size: 1rem;
  font-weight: 500;
  letter-spacing: 0.02rem;
  line-height: 1.2;
  margin: auto;
  max-width: 920px;
  padding-top: 0;
  width: 65%;
}
#products .first-spec .btn-red-br {
  margin-top: 1rem;
}
#products .first-spec-2 {
  line-height: 1.5;
}
#products .first-spec-2 h1, #products .first-spec-2 .h1 {
  max-width: 20em;
  margin: auto;
}
#products .first-spec-2 h2, #products .first-spec-2 .h2 {
  font-size: 50px;
  margin: auto;
  max-width: 64rem;
}
#products .first-spec-2 p {
  line-height: 1.2;
  margin: auto;
  /*max-width: 36.75rem;*/
  padding-top: 2rem;
  max-width: 36em;
}
#products .first-spec-2 .btn-red-br {
  margin-top: 1rem;
}
#products .vent-br {
  background-color: #F8F8F9;
  border-radius: 47px;
  display: flex;
  justify-content: center;
  flex-direction: column;
  height: 574px;
  margin: auto;
  width: 100%;
}
#products .vent-br .vent-img {
  display: flex;
  justify-content: center;
  flex-direction: column;
  height: 50%;
  padding-bottom: 40px;
}
#products .vent-br .vent-img img {
  margin-top: auto;
  max-height: 100px;
  height: 100px;
  max-width: 60%;
  min-width: 100px;
  -o-object-fit: contain;
     object-fit: contain;
}
#products .vent-br .vent-title {
  font-family: Roboto, sans-serif;
  font-size: 1.5rem;
  font-weight: 500;
  line-height: 1.7rem;
}
#products .vent-br .vent-title h2, #products .vent-br .vent-title .h2 {
  font-size: 35px !important;
  font-weight: 500;
  line-height: 35px;
  text-wrap: balance;
}
#products .vent-br .vent-title h3, #products .vent-br .vent-title .h3 {
  font-size: 30px !important;
  font-weight: 500;
  line-height: 30px;
  text-wrap: balance;
}
#products .vent-br .vent-desc p {
  font-size: 15px;
  font-weight: normal !important;
  line-height: 20px;
  text-wrap: balance;
}
#products .vent-br .vent-desc b {
  font-size: 1em;
  line-height: 1.5em;
}
#products .slide {
  line-height: 1.3rem;
  overflow: hidden;
}
#products .slide .scroll {
  cursor: grab;
  white-space: nowrap;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  -ms-overflow-style: -ms-autohiding-scrollbar;
  display: flex;
}
#products .slide .scroll .description {
  font-size: 0.833rem;
  white-space: normal;
}
#products .slide .scroll .section {
  border-radius: 10px;
  display: inline-block;
  height: 100%;
  margin-right: 15px;
  min-width: 20.1rem;
  width: 20.1rem;
}
#products .slide .scroll .btn-red-slide {
  background-color: #D70D17;
  border-radius: 30px !important;
  color: white;
  font-size: 15px;
  /* padding: 0.2rem 0.75rem; */
}
#products .slide .scroll .btn-red-slide:hover {
  background-color: #f40d18 !important;
}
#products .slide .scroll .product-img {
  margin: auto;
  max-width: 215px;
  text-align: center;
}
#products .slide .scroll .product-img img {
  max-height: 12.28rem;
  max-width: 100%;
}
#products .slide .scroll::-webkit-scrollbar {
  display: none;
}
#products .slide .logo {
  max-height: 2rem;
  max-width: 13rem;
}
#products .slide-title {
  align-items: center;
  color: white;
  display: flex;
  height: 100vh;
  justify-content: center;
  position: absolute;
  text-align: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  -webkit-justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  -webkit-align-items: center;
  width: 100%;
  z-index: 2;
}
#products .slide-title .title {
  color: white;
  font-family: Roboto, sans-serif;
  font-size: 1rem;
  margin-bottom: 1rem;
}
#products .slide-title .subtitle {
  color: white;
  font-family: Roboto, sans-serif;
  font-size: 2.5rem;
  line-height: 2.5rem;
  font-weight: 500;
  max-width: 40rem;
}
#products .slide-title .logo {
  margin-bottom: 2rem;
  max-height: 100px;
  opacity: 0;
}
#products .slide-title .product {
  max-height: 30rem;
  max-width: 47rem;
}
#products .slide-title-2 {
  align-items: center;
  background-color: #f7f7f7;
  color: white;
  display: flex;
  height: 100vh;
  justify-content: center;
  position: relative;
  opacity: 0;
  text-align: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  -webkit-justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  -webkit-align-items: center;
  width: 100%;
  z-index: 2;
}
#products .slide-title-2 .logo-2 {
  margin-bottom: 2rem;
  max-height: 4.4rem;
  max-width: 34rem;
}
#products .slide-title-2 .product-2 {
  max-height: 30rem;
  max-width: 47rem;
}
#products #fotos h2, #products #fotos .h2 {
  margin: 40px auto;
}
#products .cabezal {
  max-width: 48rem;
  margin: auto;
  margin-top: -5rem;
}
#products .cuadrado {
  margin-top: -1rem;
  max-width: 400px;
  width: 90%;
}
@media (width < 760px) {
  #products .cuadrado {
    width: 100% !important;
  }
}
#products .muro {
  width: 95%;
  height: 95%;
  margin-top: 1rem;
}
#products .andamio1 {
  max-width: 15rem;
  margin-top: -5rem;
}
#products .andamio2 {
  max-width: 13rem;
  margin-top: -3rem;
}
#products .mt-negative-11 {
  margin-top: -7rem;
  z-index: -1;
}
#products .trabajo img {
  margin: auto;
  max-width: 50rem;
}
#products .container-cabezal {
  height: 600px;
  width: 992px;
  margin: auto;
}
#products .container-cabezal .main-title {
  right: 0;
  position: absolute;
  width: 480px;
}
#products .container-cabezal .part-img img {
  position: absolute;
  -o-object-fit: contain;
     object-fit: contain;
  height: 600px;
  width: 600px;
}
#products .container-cabezal .line-pointer-red-1 {
  /* width: calc(containerWidth - ( leftPosition - rightPosition )) */
  width: 142px;
  position: absolute;
  left: 350px;
  top: 160px;
}
#products .container-cabezal .line-pointer-red-1 .line-red {
  /* width: calc(containerWidth - ( leftPosition - widthContainerRight )) */
  width: 142px;
}
#products .container-cabezal .line-pointer-red-1 .part-txt {
  /* width: calc(containerWidth - ( leftPosition - widthContainerRight ) + paddingLeft ) */
  left: 162px;
}
#products .container-cabezal .line-pointer-red-2 {
  width: 192px;
  position: absolute;
  left: 300px;
  top: 200px;
}
#products .container-cabezal .line-pointer-red-2 .line-red {
  width: 192px;
}
#products .container-cabezal .line-pointer-red-2 .part-txt {
  left: 212px;
}
#products .container-cabezal .line-pointer-red-3 {
  width: 142px;
  position: absolute;
  left: 350px;
  top: 450px;
}
#products .container-cabezal .line-pointer-red-3 .line-red {
  width: 142px;
}
#products .container-cabezal .line-pointer-red-3 .part-txt {
  left: 162px;
}
#products .container-cabezal .line-pointer-red-4 {
  width: 112px;
  position: absolute;
  left: 380px;
  top: 535px;
}
#products .container-cabezal .line-pointer-red-4 .line-red {
  width: 112px;
}
#products .container-cabezal .line-pointer-red-4 .part-txt {
  left: 132px;
}
#products .container-cabezal div[class*=line-pointer-red-] .line-red {
  background-color: red;
  height: 2px;
  position: absolute;
  top: 0;
  left: 0;
}
#products .container-cabezal div[class*=line-pointer-red-] .part-txt {
  position: absolute;
  top: -0.85em;
  width: 500px;
}
#products .container-cabezal div[class*=line-pointer-red-] .circle-pointer-red {
  position: absolute;
  left: -6px;
  top: -6px;
  color: red;
  height: 12px;
  width: 12px;
  border-radius: 50%;
  background-color: red;
}
#products .sten-deck-x-img1 picture,
#products .sten-deck-x-img1 img {
  margin-top: -80px;
}

#products #especificaciones,
#andamios #especificaciones {
  line-height: 1;
}
#products #especificaciones .br-spec,
#andamios #especificaciones .br-spec {
  border-right: 7px solid white;
  border-bottom: 7px solid white;
  border-top: 7px solid white;
}
#products #especificaciones .bl-spec,
#andamios #especificaciones .bl-spec {
  border-left: 7px solid white;
  border-bottom: 7px solid white;
  border-top: 7px solid white;
}
#products #especificaciones .especificacion-v2,
#andamios #especificaciones .especificacion-v2 {
  background-color: #F7F7F7;
  margin: 0px 0 8px 0;
  padding: 80px 0;
  text-align: center;
  width: 100%;
  font-size: 18px;
  /* Detalle tarjeta */
  /* Final - Detalle tarjeta */
}
#products #especificaciones .especificacion-v2.full-height-auto,
#andamios #especificaciones .especificacion-v2.full-height-auto {
  height: calc(100% - 16px);
}
#products #especificaciones .especificacion-v2 .df-1,
#andamios #especificaciones .especificacion-v2 .df-1 {
  flex-direction: column;
  align-items: flex-start;
  width: min(500px, 85%);
  font-size: 16px;
}
#products #especificaciones .especificacion-v2 .df-2,
#andamios #especificaciones .especificacion-v2 .df-2 {
  flex-direction: row;
  align-items: flex-start;
  width: 100%;
  justify-content: space-between;
}
#products #especificaciones .especificacion-v2 .df-3a,
#andamios #especificaciones .especificacion-v2 .df-3a {
  flex-direction: column;
  align-items: flex-start;
  width: 70%;
  align-self: flex-end;
}
#products #especificaciones .especificacion-v2 .df-3a-full,
#andamios #especificaciones .especificacion-v2 .df-3a-full {
  flex-direction: column;
  align-items: flex-start;
  width: 100%;
}
#products #especificaciones .especificacion-v2 .df-3a-full .qt-custom,
#andamios #especificaciones .especificacion-v2 .df-3a-full .qt-custom {
  font-family: Roboto, sans-serif;
  font-size: 2.5em;
}
#products #especificaciones .especificacion-v2 .df-3a-full .qt-custom span.type,
#andamios #especificaciones .especificacion-v2 .df-3a-full .qt-custom span.type {
  font-size: 1rem;
}
#products #especificaciones .especificacion-v2 .df-3b,
#andamios #especificaciones .especificacion-v2 .df-3b {
  align-self: flex-end;
  max-width: 200px;
  text-align: left;
  width: 40%;
  padding-bottom: 1.7em;
}
#products #especificaciones .especificacion-v2 .df-3b .pb-custom-3,
#andamios #especificaciones .especificacion-v2 .df-3b .pb-custom-3 {
  padding-bottom: 1.3rem;
}
#products #especificaciones .especificacion-v2 .df-3b-full,
#andamios #especificaciones .especificacion-v2 .df-3b-full {
  align-self: flex-end;
  text-align: left;
  width: 100%;
}
#products #especificaciones .especificacion-v2 .df-3b-full.text-abs,
#andamios #especificaciones .especificacion-v2 .df-3b-full.text-abs {
  font-size: 17px;
  line-height: 1.2;
}
#products #especificaciones .especificacion-v2 .df-4-col,
#andamios #especificaciones .especificacion-v2 .df-4-col {
  align-items: flex-start;
  flex-direction: column;
}
#products #especificaciones .especificacion-v2 .df-4-col .qt-custom,
#andamios #especificaciones .especificacion-v2 .df-4-col .qt-custom {
  margin-bottom: 0.1em;
}
#products #especificaciones .especificacion-v2 .df-4-col .qt-custom span.type,
#andamios #especificaciones .especificacion-v2 .df-4-col .qt-custom span.type {
  font-size: 1rem;
}
#products #especificaciones .especificacion-v2 .df-4-row,
#andamios #especificaciones .especificacion-v2 .df-4-row {
  align-items: flex-end;
  flex-direction: row;
}
#products #especificaciones .especificacion-v2 .df-4-row .size-custom,
#andamios #especificaciones .especificacion-v2 .df-4-row .size-custom {
  padding-bottom: 0.9em;
}
#products #especificaciones .especificacion-v2 .text-abs,
#andamios #especificaciones .especificacion-v2 .text-abs {
  color: #707070;
  font-size: 20px;
  line-height: 1;
}
#products #especificaciones .especificacion-v2 .df-3b.text-abs,
#andamios #especificaciones .especificacion-v2 .df-3b.text-abs {
  font-size: 17px;
  line-height: 1.2;
}
#products #especificaciones .especificacion-v2 .title-custom,
#andamios #especificaciones .especificacion-v2 .title-custom {
  font-size: 1.5em;
}
#products #especificaciones .especificacion-v2 .line-custom,
#andamios #especificaciones .especificacion-v2 .line-custom {
  border-bottom: 2px solid #313131;
  margin: 10px 0 15px 0;
  width: 25px;
}
#products #especificaciones .especificacion-v2 .qt-custom,
#andamios #especificaciones .especificacion-v2 .qt-custom {
  font-family: Roboto, sans-serif;
  font-size: 5em;
  font-weight: 500;
  text-align: left;
}
#products #especificaciones .especificacion-v2 .qt-custom span.type,
#andamios #especificaciones .especificacion-v2 .qt-custom span.type {
  font-size: 1rem;
}
#products #especificaciones .especificacion-v2 .size-custom,
#andamios #especificaciones .especificacion-v2 .size-custom {
  font-size: 1.5em;
  font-weight: 500;
}
#products #especificaciones .especificacion,
#andamios #especificaciones .especificacion {
  background-color: #F7F7F7;
  margin: 8px 0;
  padding: 80px 0;
  text-align: center;
  width: calc(100% - 8px);
}
#products #especificaciones .especificacion.full-height-auto,
#andamios #especificaciones .especificacion.full-height-auto {
  height: calc(100% - 16px);
}
#products #especificaciones .especificacion.espec-h-fixed,
#andamios #especificaciones .especificacion.espec-h-fixed {
  height: 342px;
}
#products #especificaciones .especificacion .esp-content,
#andamios #especificaciones .especificacion .esp-content {
  display: inline-block;
  margin: 0 auto;
  position: relative;
  text-align: left;
  width: 50%;
}
#products #especificaciones .especificacion .esp-content p,
#andamios #especificaciones .especificacion .esp-content p {
  line-height: 110%;
}
#products #especificaciones .especificacion .esp-content .line,
#andamios #especificaciones .especificacion .esp-content .line {
  border-bottom: 2px solid #313131;
  margin: 15px 0px;
  width: 25px;
}
#products #especificaciones .especificacion .esp-content .text-1,
#andamios #especificaciones .especificacion .esp-content .text-1 {
  font-size: 1rem;
}
#products #especificaciones .especificacion .esp-content .text-2,
#andamios #especificaciones .especificacion .esp-content .text-2 {
  font-size: 4rem;
  font-weight: 500;
}
#products #especificaciones .especificacion .esp-content .text-3,
#andamios #especificaciones .especificacion .esp-content .text-3 {
  font-size: 1.25rem;
  font-weight: 500;
}
#products #especificaciones .especificacion .esp-content .text-4,
#andamios #especificaciones .especificacion .esp-content .text-4 {
  color: #707070;
  font-size: 15px;
  line-height: 1;
}
#products #especificaciones .especificacion .esp-content .text-5,
#andamios #especificaciones .especificacion .esp-content .text-5 {
  font-size: 2rem;
  font-weight: 500;
}
#products #especificaciones .especificacion .esp-content .text-abs,
#andamios #especificaciones .especificacion .esp-content .text-abs {
  bottom: 0;
  color: #707070;
  font-size: 15px;
  line-height: 1;
  position: absolute;
  left: 65%;
  width: auto;
}
#products h1, #products .h1,
#andamios h1,
#andamios .h1 {
  color: #313131;
  font-size: 75px;
  font-weight: 500 !important;
  line-height: 105%;
  margin: 0 !important;
  font-family: Roboto, sans-serif !important;
  text-wrap: balance;
}
#products h2, #products .h2,
#andamios h2,
#andamios .h2 {
  font-size: 50px;
  font-weight: 500;
  line-height: 105%;
  font-family: Roboto, sans-serif !important;
}
#products #catalogo h2, #products #catalogo .h2,
#andamios #catalogo h2,
#andamios #catalogo .h2 {
  text-wrap: balance;
}
#andamios {
  --img-main-header: url(/img/andamios/andamio-1-3.jpg);
}
#andamios form label,
#andamios form input,
#andamios form textarea {
  font-size: 0.8333rem !important;
}
#andamios form .form-control {
  background-color: transparent;
}
#andamios .mw-18 {
  max-width: 18rem;
}
#andamios .header {
  background-color: #f7f7f7;
  height: 100vh;
  width: 100%;
}
#andamios .header .mt-6 {
  margin-top: 6rem;
}
#andamios .header .logo {
  margin-bottom: 2rem;
  opacity: 0;
}
#andamios .header .product {
  max-height: 22rem;
  max-width: 38rem;
}
#andamios p {
  font-family: Roboto, sans-serif;
}
#andamios .responsive-900 {
  margin: auto;
  width: 100%;
  max-height: 900px;
  -o-object-fit: contain;
     object-fit: contain;
}
#andamios .responsive-600 {
  margin: auto;
  width: 100%;
  max-height: 600px;
  -o-object-fit: contain;
     object-fit: contain;
}
#andamios .first-spec {
  line-height: 1.5;
}
#andamios .first-spec h2, #andamios .first-spec .h2 {
  font-size: 3.43rem;
  line-height: 3.43rem;
  margin: auto;
  max-width: 47rem;
}
#andamios .first-spec p {
  color: #231f20;
  font-family: Roboto, sans-serif;
  font-size: 1rem;
  font-weight: 500;
  letter-spacing: 0.02rem;
  line-height: 1.2;
  max-width: 920px;
  padding-top: 0;
}
#andamios .first-spec .btn-red-br {
  margin-top: 1rem;
}
#andamios .first-spec-2 {
  line-height: 1.5;
}
#andamios .first-spec-2 h1, #andamios .first-spec-2 .h1 {
  max-width: 20em;
  margin: auto;
}
#andamios .first-spec-2 h2, #andamios .first-spec-2 .h2 {
  font-size: 50px;
  margin: auto;
  max-width: 64rem;
}
#andamios .first-spec-2 p {
  line-height: 1.2;
  margin: auto;
  /*max-width: 36.75rem;*/
  padding-top: 2rem;
  max-width: 36em;
}
#andamios .first-spec-2 .btn-red-br {
  margin-top: 1rem;
}
#andamios .vent-br {
  background-color: #F8F8F9;
  border-radius: 47px;
  display: flex;
  justify-content: center;
  flex-direction: column;
  height: 574px;
  margin: auto;
  width: 100%;
}
#andamios .vent-br .vent-img {
  display: flex;
  justify-content: center;
  flex-direction: column;
  height: 50%;
  padding-bottom: 40px;
}
#andamios .vent-br .vent-img img {
  margin-top: auto;
  max-height: 100px;
  height: 100px;
  max-width: 60%;
  -o-object-fit: contain;
     object-fit: contain;
}
#andamios .vent-br .vent-title {
  font-family: Roboto, sans-serif;
  font-size: 1.5rem;
  font-weight: 500;
  line-height: 1.7rem;
}
#andamios .vent-br .vent-title h2, #andamios .vent-br .vent-title .h2 {
  font-size: 50px !important;
  font-weight: 500;
  line-height: 105%;
}
#andamios .vent-br .vent-title h3, #andamios .vent-br .vent-title .h3 {
  font-size: 30px !important;
  font-weight: 500;
  line-height: 105%;
}
#andamios .vent-br .vent-desc p {
  font-size: 15px;
  font-weight: normal !important;
  line-height: 20px;
}
#andamios .vent-br .vent-desc b {
  font-size: 1em;
  line-height: 1.5em;
}
#andamios .slide {
  line-height: 1.3rem;
  overflow: hidden;
}
#andamios .slide .scroll {
  cursor: grab;
  white-space: nowrap;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  -ms-overflow-style: -ms-autohiding-scrollbar;
  display: flex;
}
#andamios .slide .scroll .description {
  font-size: 0.833rem;
  white-space: normal;
}
#andamios .slide .scroll .section {
  border-radius: 10px;
  display: inline-block;
  height: 100%;
  margin-right: 15px;
  min-width: 20.1rem;
  width: 20.1rem;
}
#andamios .slide .scroll .btn-red-slide {
  background-color: #D70D17;
  border-radius: 30px !important;
  color: white;
  font-size: 15px;
  /* padding: 0.2rem 0.75rem; */
}
#andamios .slide .scroll .btn-red-slide:hover {
  background-color: #f40d18 !important;
}
#andamios .slide .scroll .product-img {
  margin: auto;
  max-width: 215px;
  text-align: center;
}
#andamios .slide .scroll .product-img img {
  max-height: 12.28rem;
  max-width: 100%;
}
#andamios .slide .scroll::-webkit-scrollbar {
  display: none;
}
#andamios .slide .logo {
  max-height: 2rem;
  max-width: 13rem;
}
#andamios .header-andamios {
  background-color: #f7f7f7;
  height: 100vh;
  width: 100%;
  background-image: var(--img-main-header);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: top;
  max-height: 2048px;
  z-index: 1;
  position: relative;
}
#andamios .slide-title {
  align-items: center;
  color: white;
  display: flex;
  height: 100vh;
  justify-content: center;
  position: absolute;
  text-align: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  -webkit-justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  -webkit-align-items: center;
  width: 100%;
  z-index: 2;
  inset: 0;
}
#andamios .slide-title .title {
  color: white;
  font-family: Roboto, sans-serif;
  font-size: 1rem;
  margin-bottom: 1rem;
}
#andamios .slide-title .subtitle {
  color: white;
  font-family: Roboto, sans-serif;
  font-size: 2.5rem;
  line-height: 2.5rem;
  font-weight: 500;
  max-width: 40rem;
}
#andamios .slide-title .logo {
  margin-bottom: 2rem;
  max-height: 100px;
  opacity: 0;
}
#andamios .slide-title .product {
  max-height: 30rem;
  max-width: 47rem;
}
#andamios .slide-title-2 {
  align-items: center;
  background-color: #f7f7f7;
  color: white;
  display: flex;
  height: 100vh;
  justify-content: center;
  position: relative;
  opacity: 0;
  text-align: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  -webkit-justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  -webkit-align-items: center;
  width: 100%;
  z-index: 2;
}
#andamios .slide-title-2 .logo-2 {
  margin-bottom: 2rem;
  max-height: 4.4rem;
  max-width: 34rem;
}
#andamios .slide-title-2 .product-2 {
  max-height: 30rem;
  max-width: 47rem;
}
#andamios .height-title-logo {
  height: 20vh;
  margin-top: max(150px, 50vh);
}
#andamios #fotos h2, #andamios #fotos .h2 {
  margin: 40px auto;
}
#andamios .cabezal {
  max-width: 48rem;
  margin: auto;
  margin-top: -5rem;
}
#andamios .cuadrado {
  max-width: 25rem;
  margin-top: -1rem;
}
#andamios .andamio1 {
  max-width: 15rem;
  margin-top: -5rem;
}
#andamios .andamio2 {
  max-width: 13rem;
  margin-top: -3rem;
}
#andamios .mt-negative-11 {
  margin-top: -7rem;
  z-index: -1;
}
#andamios .trabajo img {
  margin: auto;
  max-width: 50rem;
}
#andamios .container-cabezal {
  height: 600px;
  width: 992px;
  margin: auto;
}
#andamios .container-cabezal .main-title {
  right: 0;
  position: absolute;
  width: 480px;
}
#andamios .container-cabezal .part-img img {
  position: absolute;
  -o-object-fit: contain;
     object-fit: contain;
  height: 600px;
  width: 600px;
}
#andamios .container-cabezal .line-pointer-red-1 {
  /* width: calc(containerWidth - ( leftPosition - rightPosition )) */
  width: 142px;
  position: absolute;
  left: 350px;
  top: 160px;
}
#andamios .container-cabezal .line-pointer-red-1 .line-red {
  /* width: calc(containerWidth - ( leftPosition - widthContainerRight )) */
  width: 142px;
}
#andamios .container-cabezal .line-pointer-red-1 .part-txt {
  /* width: calc(containerWidth - ( leftPosition - widthContainerRight ) + paddingLeft ) */
  left: 162px;
}
#andamios .container-cabezal .line-pointer-red-2 {
  width: 192px;
  position: absolute;
  left: 300px;
  top: 200px;
}
#andamios .container-cabezal .line-pointer-red-2 .line-red {
  width: 192px;
}
#andamios .container-cabezal .line-pointer-red-2 .part-txt {
  left: 212px;
}
#andamios .container-cabezal .line-pointer-red-3 {
  width: 142px;
  position: absolute;
  left: 350px;
  top: 450px;
}
#andamios .container-cabezal .line-pointer-red-3 .line-red {
  width: 142px;
}
#andamios .container-cabezal .line-pointer-red-3 .part-txt {
  left: 162px;
}
#andamios .container-cabezal .line-pointer-red-4 {
  width: 112px;
  position: absolute;
  left: 380px;
  top: 535px;
}
#andamios .container-cabezal .line-pointer-red-4 .line-red {
  width: 112px;
}
#andamios .container-cabezal .line-pointer-red-4 .part-txt {
  left: 132px;
}
#andamios .container-cabezal div[class*=line-pointer-red-] .line-red {
  background-color: red;
  height: 2px;
  position: absolute;
  top: 0;
  left: 0;
}
#andamios .container-cabezal div[class*=line-pointer-red-] .part-txt {
  position: absolute;
  top: -0.85em;
  width: 500px;
}
#andamios .container-cabezal div[class*=line-pointer-red-] .circle-pointer-red {
  position: absolute;
  left: -6px;
  top: -6px;
  color: red;
  height: 12px;
  width: 12px;
  border-radius: 50%;
  background-color: red;
}
#andamios .sten-deck-x-img1 picture,
#andamios .sten-deck-x-img1 img {
  margin-top: -80px;
}

#contact {
  /* .img-scroll {
      white-space: nowrap;
      img {
          cursor: all-scroll;
          text-align: center;
          align-items: center;
          width: auto !important;
      }
  } */
}
#contact .mt-main {
  margin-top: 40px;
}
#contact .mb-main {
  margin-bottom: 40px;
}
#contact .my-form {
  margin-top: 100px;
  margin-bottom: 100px;
}
#contact h1, #contact .h1 {
  font-size: 75px;
  line-height: 75px;
  font-family: Roboto, sans-serif;
  font-weight: 500;
  /* letter-spacing: 0.1rem; */
  padding-bottom: 1rem;
  margin: auto;
}
#contact h2, #contact .h2 {
  font-size: 50px;
  font-family: Roboto, sans-serif;
  font-weight: 500;
  letter-spacing: 0.01em;
  line-height: 105%;
  width: 100%;
  padding: 0.5em 0;
  /* padding-bottom: 1rem;
  margin: auto; */
}
#contact #slider-address h2, #contact #slider-address .h2 {
  padding-bottom: 0em;
}
#contact .of-hidden {
  overflow: hidden;
}
#contact .point-hover-la {
  background-color: transparent;
  cursor: pointer;
  height: 2.25rem;
  width: 2.25rem;
  position: absolute;
  margin-left: 11%;
  margin-top: 31.3%;
}
#contact .point-hover-mx {
  background-color: transparent;
  cursor: pointer;
  height: 2.25rem;
  width: 2.25rem;
  position: absolute;
  margin-left: 25%;
  margin-top: 43%;
}
#contact .point-hover-col {
  background-color: transparent;
  cursor: pointer;
  height: 2.25rem;
  width: 2.25rem;
  position: absolute;
  margin-left: 43%;
  margin-top: 54%;
}
#contact .point-hover-pt {
  background-color: transparent;
  cursor: pointer;
  height: 2.4rem;
  width: 2.25rem;
  position: absolute;
  margin-left: 90%;
  margin-top: 26%;
}
#contact .point-hover-es {
  background-color: transparent;
  cursor: pointer;
  height: 2.4rem;
  width: 2.25rem;
  position: absolute;
  margin-left: 98%;
  margin-top: 24%;
}
#contact .point-hover-pol {
  background-color: transparent;
  cursor: pointer;
  height: 2.25rem;
  width: 2.25rem;
  position: absolute;
  margin-left: 111%;
  margin-top: 13%;
}
#contact .slide {
  line-height: 1.3rem;
  overflow: hidden;
}
#contact .slide .section {
  border-radius: 10px;
  height: 100%;
  width: auto;
  min-width: 27%;
}
#contact .slide .scroll {
  cursor: grab;
  white-space: nowrap;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  -ms-overflow-style: -ms-autohiding-scrollbar;
  display: flex;
}
#contact .slide .scroll h2.subtitle, #contact .slide .scroll .subtitle.h2 {
  font-size: 50px;
  font-family: Roboto, sans-serif;
  font-weight: 500;
  /* letter-spacing: 0.1rem; */
  line-height: 110%;
  margin-bottom: 0;
  padding: 0 0 1rem 0;
  white-space: normal;
}
#contact .slide .scroll .address {
  font-size: 13px;
  line-height: 125%;
  white-space: normal;
  width: 100%;
}
#contact .slide .scroll .address p {
  margin-bottom: 4px;
}
#contact .slide .scroll .address hr {
  margin: 10px 0;
}
#contact .slide .scroll .address b {
  font-size: 15px;
}
#contact .slide .scroll .address a {
  color: #F8F8F9;
  text-decoration: none;
}
#contact .slide .scroll .phone {
  white-space: normal;
  width: 100%;
}
#contact .slide .scroll .phone a {
  color: #313131;
}
#contact .slide .scroll .section {
  display: inline-block;
  margin-right: 15px;
}
#contact .slide .scroll::-webkit-scrollbar {
  display: none;
}
#contact .contact-banner {
  background-image: url("/img/contact/bg_banner.jpg");
  background-position: center center;
  background-size: cover;
  background-repeat: no-repeat;
  position: relative;
  width: 100%;
  z-index: 0;
}
#contact .contact-banner h2, #contact .contact-banner .h2 {
  color: #242021;
  font-size: 50px;
  font-weight: 500;
  line-height: 105%;
}
#contact .contact-banner .bg-opacity {
  background-color: rgba(255, 255, 255, 0.8);
  padding: 30px 15px 15px 15px;
}
#contact .contact-banner .h-800px {
  min-height: 800px;
}
#contact .contact-banner .content-footer {
  font-size: 1.2rem;
}
#contact #address strong {
  font-family: Roboto, sans-serif;
}
@media (max-width: 560px) {
  #contact .justify-content-center .py-186 {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }
}
@media (max-width: 767px) {
  #contact .justify-content-center .py-186 {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }
}
#contact #map-main .gm-ui-hover-effect,
#contact #map-main [title=Cerrar] {
  top: 0px !important;
  right: 0px !important;
}
#contact #map-main-anchor {
  display: block;
  position: relative;
  top: -200px;
  visibility: hidden;
}

#showroom .slide-title {
  align-items: center;
  color: white;
  display: flex;
  height: 100vh;
  margin-top: -100vh;
  max-width: 46rem;
  position: relative !important;
  justify-content: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  -webkit-justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  -webkit-align-items: center;
}
#showroom .slide-title .title {
  color: #FFF;
  font-family: Roboto, sans-serif;
  font-size: 50px;
  letter-spacing: 0.03rem;
  line-height: 110%;
  margin-left: auto;
  margin-right: auto;
  width: 80%;
  z-index: 999;
}
#showroom #showroom-form {
  text-align: left;
}
#showroom #showroom-form form {
  display: block;
  margin: 30px auto 0 auto;
  text-align: left;
  width: 80%;
}
#showroom #showroom-form form label {
  font-size: 15px;
}
#showroom #showroom-form form input[type=text],
#showroom #showroom-form form input[type=email] {
  background-color: rgba(100, 100, 100, 0.8);
  border: none;
  border-radius: 15px;
  color: #FFF;
  font-size: 15px;
  height: 30px;
  padding: 6px 10px;
  width: 100%;
}
#showroom #showroom-form form input[type=text]:focus,
#showroom #showroom-form form input[type=email]:focus {
  border: 1px solid transparent;
  outline: none;
}
#showroom #showroom-form form input[type=text]:active,
#showroom #showroom-form form input[type=email]:active {
  border: 1px solid transparent;
  outline: none;
}
#showroom #showroom-form form input[type=submit] {
  background-color: #D70D17;
  border: none;
  border-radius: 1rem;
  color: #FFF;
  padding: 0.4rem 2rem;
  height: 100%;
  font-family: "Helvetica Neue Medium";
  letter-spacing: 1px;
  text-transform: uppercase;
  transition: 1s;
}
#showroom #showroom-form form input[type=submit]:disabled {
  opacity: 0.5;
}
#showroom h1, #showroom .h1 {
  font-size: 75px;
  color: #313131;
  font-weight: 600;
  font-family: Roboto, sans-serif;
  /* letter-spacing: 0.1rem; */
  padding-bottom: 1rem;
  margin: auto;
}
#showroom h2, #showroom .h2 {
  font-size: 50px;
  font-family: Roboto, sans-serif;
  font-weight: 500;
  /* letter-spacing: 0.1rem; */
  padding-bottom: 1rem;
  margin: auto;
}
#showroom .description {
  margin-left: auto;
  margin-right: auto;
  max-width: 700px;
  width: 100%;
}

#sobre-sten {
  /* .img-scroll {
      white-space: nowrap;
      overflow-x: auto;
      -webkit-overflow-scrolling: touch;
      -ms-overflow-style: -ms-autohiding-scrollbar;

      img {
          text-align: center;
          align-items: center;
          width: 270% !important;
      }
  } */
}
#sobre-sten .bold {
  font-weight: bolder;
  font-family: "Helvetica Neue Bold";
}
#sobre-sten .medium {
  font-family: "Helvetica Neue Medium";
}
#sobre-sten h1, #sobre-sten .h1 {
  font-size: 75px;
  line-height: 105%;
  color: #313131;
  /* font-size: 55px;
  line-height: 55px; */
  font-weight: 500;
  font-family: Roboto, sans-serif;
}
#sobre-sten .h1 {
  font-size: 75px;
  color: #313131;
  /* font-size: 55px;
  line-height: 55px;
  font-weight: $h1_font_weight;*/
  font-weight: 500;
  font-family: Roboto, sans-serif;
}
#sobre-sten h2, #sobre-sten .h2 {
  font-size: 50px;
  line-height: 105%;
  font-family: Roboto, sans-serif;
  font-weight: 500;
  /* letter-spacing: 0.1rem; */
  padding-bottom: 1rem;
  margin: auto;
}
#sobre-sten .h2 {
  font-size: 50px;
  line-height: 105%;
  font-family: Roboto, sans-serif;
  font-weight: 500;
  /* letter-spacing: 0.1rem; */
  padding-bottom: 1rem;
  margin: auto;
  text-transform: none;
}
#sobre-sten .referente h2, #sobre-sten .referente .h2 {
  font-size: 50px;
  font-family: Roboto, sans-serif;
  line-height: 105%;
}
#sobre-sten .value {
  font-size: 3.1rem;
  font-weight: 500;
  font-family: Roboto, sans-serif;
}
#sobre-sten .line-black {
  border-bottom: 3px solid #313131;
  width: 40px;
}
#sobre-sten .area {
  font-size: 1rem;
  line-height: 1.33rem;
  padding-bottom: 2.5rem;
  padding-top: 0.4rem;
  font-family: Roboto, sans-serif;
}
#sobre-sten .catalogo {
  margin-left: -110px;
}
#sobre-sten .catalogo img {
  max-width: 500px;
  width: 100%;
}
#sobre-sten .sub-title {
  font-size: 1.6rem;
  border-bottom: 1px solid black;
  width: 100%;
}
#sobre-sten .sub-title.bb-gray {
  border-bottom: 1px solid #707070;
}
#sobre-sten .desktop-screen {
  background-color: #f4f4f4;
  border: 10px solid #f4f4f4;
  border-top-left-radius: 10px;
  border-top-right-radius: 10px;
  height: 0;
  overflow: hidden;
  position: relative;
  padding-bottom: 56.25%;
  /* 16/9 ratio */
}
#sobre-sten .iMac {
  top: 0;
  left: 0;
  margin-top: -2px;
  z-index: 1;
}
#sobre-sten .iMac img {
  width: 100%;
}
#sobre-sten video {
  width: 100%;
}
#sobre-sten .planet {
  max-width: 300px;
}
#sobre-sten .bg-valores {
  background-image: url("/img/sobre-sten/movil_sobre-sten-7.png");
  background-position: center center;
  background-size: cover;
  background-repeat: no-repeat;
  position: relative;
  width: 100%;
  z-index: 0;
}
#sobre-sten .bg-valores h2, #sobre-sten .bg-valores .h2 {
  color: white;
  font-size: 50px;
  font-weight: 500;
  padding: 50px 15px 50px 15px;
}
#sobre-sten .bg-valores .bg-opacity {
  background-color: rgba(255, 255, 255, 0.5);
  padding: 30px 15px 15px 15px;
}
#sobre-sten .mw-header-title {
  max-width: 42rem;
}
#sobre-sten .slide-title {
  opacity: 0;
  align-items: center;
  color: white;
  display: flex;
  height: 100vh;
  margin-top: -100vh;
  /* max-width: 46rem; */
  justify-content: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  -webkit-justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  -webkit-align-items: center;
}
#sobre-sten .slide-title .title {
  font-family: Roboto, sans-serif;
  font-size: 1rem;
  letter-spacing: 0.03rem;
  margin-bottom: 1rem;
  line-height: 1.2rem;
}
#sobre-sten .slide-title .subtitle {
  font-family: Roboto, sans-serif;
  font-size: 2.5833rem;
  letter-spacing: 0.1rem;
  line-height: 2.5833rem;
  font-weight: 500;
}
#sobre-sten .slide-title .description {
  font-family: Roboto, sans-serif;
  font-size: 1rem;
  letter-spacing: 0.03rem;
  margin-top: 1rem;
  line-height: 1.2rem;
}
#sobre-sten .estrategia {
  margin-left: auto;
  margin-right: auto;
}
#sobre-sten .estrategia p {
  font-size: 1.333rem;
  font-family: Roboto, sans-serif;
  font-weight: 500;
  letter-spacing: 0.02rem;
  line-height: 1.7rem;
  margin: auto;
  max-width: 45.875rem;
  text-align: left;
}
@media (min-width: 768px) {
  #sobre-sten .estrategia p {
    text-align: center;
  }
}
#sobre-sten .estrategia span {
  color: #D70D17;
}
#sobre-sten .experiencia .experiencia-value {
  margin: auto;
  max-width: 17.25rem;
  text-align: left;
  width: auto;
  padding-left: 12.5%;
}
#sobre-sten .experiencia-text div {
  width: 60%;
}
#sobre-sten .value {
  font-family: Roboto, sans-serif;
  font-weight: 500;
  line-height: 3.5rem;
}
#sobre-sten .text-md-right {
  text-align: right;
}
#sobre-sten #mision-vision-valores p {
  font-size: 15px;
  line-height: 120%;
}
#sobre-sten #mision-vision-valores .icon-valores {
  max-height: 4.625rem;
}
#sobre-sten #mision-vision-valores .icon-valores img {
  height: 4.625rem;
  max-width: 4.625rem;
  margin-bottom: 0.85rem;
}
#sobre-sten #mision-vision-valores .sub-title {
  border-bottom: 1px solid black;
  font-family: Roboto, sans-serif;
  font-size: 1.333rem;
  font-weight: 500;
  margin-top: 0.666rem;
  margin-left: auto;
  margin-right: auto;
  max-width: 13.14rem;
  width: 100%;
}
#sobre-sten #mision-vision-valores .description {
  max-width: 13.125rem;
  margin: auto;
}
#sobre-sten #mision-vision-valores .desktop-screen {
  background-color: #f4f4f4;
  border: 10px solid #f4f4f4;
  border-top-left-radius: 10px;
  border-top-right-radius: 10px;
  height: 0;
  overflow: hidden;
  position: relative;
  padding-bottom: 56.25%;
  /* 16/9 ratio */
  margin: auto;
}
#sobre-sten .width-desktop {
  margin: auto;
  max-width: 40rem;
}
#sobre-sten .planet {
  max-width: 560px;
}
#sobre-sten #responsabilidad-social p {
  font-size: 0.8125rem;
}
#sobre-sten .bg-valores {
  background-image: url("/img/sobre-sten/desktop_sobre-sten-3.png");
  background-position: center center;
  background-size: cover;
  background-repeat: no-repeat;
  position: relative;
  width: 100%;
  z-index: 0;
}
#sobre-sten .bg-valores .bg-opacity {
  background-color: rgba(255, 255, 255, 0.5);
}
#sobre-sten .bg-valores .bg-opacity h2, #sobre-sten .bg-valores .bg-opacity .h2 {
  font-size: 50px;
  font-weight: 500;
  padding-left: 0;
}

#servicios form label,
#servicios form input,
#servicios form textarea {
  font-size: 0.8333rem !important;
}
#servicios form .form-control {
  background-color: transparent;
}
#servicios .header-title {
  font-size: 2rem;
  font-weight: 700;
}
#servicios .mw-header-title {
  max-width: 42rem;
}
#servicios h2, #servicios .h2 {
  font-size: 50px;
  font-family: Roboto, sans-serif;
  font-weight: 500;
  padding-bottom: 1rem;
  margin: auto;
}
#servicios .br {
  border-radius: 30px;
}
#servicios .icono {
  height: 100px;
  width: 100px;
}
#servicios .header-video {
  height: 100vh;
  filter: brightness(0.7);
  -o-object-fit: cover;
  object-fit: cover;
  width: 100%;
  position: absolute;
  top: 0;
}
#servicios .video {
  background-color: #f4f4f4;
  height: 0;
  overflow: hidden;
  position: relative;
  padding-bottom: 56.25%;
  /* 16/9 ratio */
  margin: auto;
}
#servicios .video video {
  height: auto;
  filter: brightness(0.7);
  -o-object-fit: cover;
  object-fit: cover;
  width: 100% !important;
}
#servicios .vision-360 {
  margin-left: auto;
  margin-right: auto;
}
#servicios .vision-360 p {
  font-family: Roboto, sans-serif;
  font-size: 1rem;
  font-weight: 500;
  letter-spacing: 0.02rem;
  line-height: 120%;
  margin: auto;
  max-width: 48.25rem;
}
#servicios #proyectos .btn-red-slide,
#servicios #alquiler .btn-red-slide,
#servicios #venta .btn-red-slide,
#servicios #logistica .btn-red-slide,
#servicios #asesoramiento .btn-red-slide,
#servicios #montaje .btn-red-slide,
#servicios #mantenimiento .btn-red-slide {
  background-color: #D70D17;
  border-radius: 30px !important;
  color: white;
  font-size: 15px;
  /* padding: 0.2rem 0.75rem; */
  margin-top: 1rem;
}
#servicios #proyectos .btn-red-slide:hover,
#servicios #alquiler .btn-red-slide:hover,
#servicios #venta .btn-red-slide:hover,
#servicios #logistica .btn-red-slide:hover,
#servicios #asesoramiento .btn-red-slide:hover,
#servicios #montaje .btn-red-slide:hover,
#servicios #mantenimiento .btn-red-slide:hover {
  background-color: #f40d18 !important;
}
#servicios #proyectos .bg-white,
#servicios #alquiler .bg-white,
#servicios #venta .bg-white,
#servicios #logistica .bg-white,
#servicios #asesoramiento .bg-white,
#servicios #montaje .bg-white,
#servicios #mantenimiento .bg-white {
  border-radius: 15px;
}
#servicios .slide-title {
  opacity: 1;
  align-items: center;
  color: white;
  display: flex;
  height: 100vh;
  /* margin-top: -100vh; */
  max-width: 46rem;
  justify-content: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  -webkit-justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  -webkit-align-items: center;
}
#servicios .slide-title .title {
  font-family: Roboto, sans-serif;
  font-size: 1rem;
  letter-spacing: 0.03rem;
  margin-bottom: 1rem;
  line-height: 1.2rem;
}
#servicios .slide-title .subtitle {
  font-family: Roboto, sans-serif;
  font-size: 50px;
  letter-spacing: 0.1rem;
  line-height: 1.05;
  font-weight: 500;
  max-width: 29rem;
}
#servicios .slide-title .description {
  font-family: Roboto, sans-serif;
  font-size: 1rem;
  letter-spacing: 0.03rem;
  margin-top: 1rem;
  line-height: 1.2rem;
}
#servicios .slide-title img {
  width: 50px;
}
@media (max-width: 560px) {
  #servicios h1, #servicios .h1 {
    margin: 0;
    font-size: 45px !important;
    line-height: 105%;
  }
  #servicios p {
    text-align: left !important;
  }
  #servicios .slide-title {
    height: calc(100vh - 100px) !important;
    margin-bottom: 100px;
  }
  #servicios .slide-title img {
    width: 30px;
  }
}
@media (max-width: 767px) {
  #servicios .slide-title {
    height: calc(100vh - 100px) !important;
    margin-bottom: 100px;
  }
  #servicios .slide-title img {
    width: 30px;
  }
}

#projects .header-title {
  font-family: Roboto, sans-serif;
  font-size: 50px;
  font-weight: 700;
}
#projects .project .category {
  font-family: Roboto, sans-serif;
  font-size: 1rem;
  font-weight: 200;
}
#projects .project .project-description {
  font-family: Roboto, sans-serif;
  font-size: 1.6rem;
  font-weight: 400;
}
#projects .project .link {
  color: #D70D17;
  font-family: Roboto, sans-serif;
  text-decoration: none;
}
#projects .project .btn-outline-black {
  font-size: 0.8125rem;
  padding: 2px 10px 2px 10px;
}
#projects .project .arrow {
  border: solid #D70D17;
  border-width: 0 1.5px 1.5px 0;
  display: inline-block;
  padding: 4px;
}
#projects .project .right {
  transform: rotate(-45deg);
  -webkit-transform: rotate(-45deg);
}
#projects .project .left {
  transform: rotate(135deg);
  -webkit-transform: rotate(135deg);
}
#projects .project .up {
  transform: rotate(-135deg);
  -webkit-transform: rotate(-135deg);
}
#projects .project .down {
  transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
}
#projects .line-separator-gray {
  height: 8px;
  background-color: #F7F7F7;
  width: 100%;
}
#projects .sub-nav-menu {
  overflow: hidden;
}
#projects .scroll {
  background-color: rgba(255, 255, 255, 0.95);
  white-space: nowrap;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  -ms-overflow-style: -ms-autohiding-scrollbar;
}
#projects .scroll .active {
  border: 2px solid #D70D17 !important;
}
#projects .scroll::-webkit-scrollbar {
  display: none;
}
#projects .dot-circle,
#projects .dot-circle-modal {
  display: inline-block;
  vertical-align: middle;
  width: 65px;
  height: 65px;
  border-radius: 160px;
  margin-right: 15px;
  border: 2px solid #707070;
}
#projects .dot-circle .dot-text,
#projects .dot-circle-modal .dot-text {
  font-family: Roboto, sans-serif;
  font-size: 0.7rem !important;
  font-weight: bold;
  text-overflow: Ellipsis;
  /* will make [...] at the end */
  width: 60px;
  /* change to your preferences */
  white-space: nowrap;
  /* paragraph to one line */
  overflow: hidden;
  /* older browsers */
}
#projects .dot-circle.not-visited,
#projects .dot-circle-modal.not-visited {
  border: 2px solid #D70D17 !important;
}
#projects .dot-circle-modal {
  border: 2px solid #D70D17 !important;
}
#projects .nav-item {
  display: inline-block;
  text-align: center;
  vertical-align: middle;
}
#projects .nav-item a:link,
#projects .nav-item a:visited,
#projects .nav-item a:active,
#projects .nav-item .btn-project-modal {
  color: #2E2D2D;
  font-size: 0.75rem;
  text-decoration: none;
}
#projects .nav-item img {
  width: 61px;
  height: 61px;
  border-radius: 160px;
  border: 6px solid transparent;
}
#projects .project-modal-item {
  background-color: #393939;
  background-position: center center;
  background-size: cover;
  background-repeat: no-repeat;
  height: 100vh;
  left: 0;
  position: fixed;
  overflow-x: hidden;
  overflow-y: auto;
  outline: 0;
  top: 0;
  width: 100%;
  z-index: 1053;
}
#projects .project-modal-item .container {
  height: 100vh;
}
#projects .project-modal-item .content-center {
  height: 75vh;
}
#projects .project-modal-item .line-gray {
  background-color: #DEDEDE;
  bottom: 0;
  height: 24px;
  position: fixed;
  width: 100%;
}
#projects .project-modal-item .project-detail {
  bottom: 0;
  position: fixed;
}
#projects .project-modal-item .project-modal-close {
  bottom: 15px;
  color: white;
  cursor: pointer;
  position: fixed;
  right: 20px;
  z-index: 1000;
}
#projects .project-modal-item .project-modal-close div {
  height: 20px;
  width: 20px;
  background-color: transparent;
  border-radius: 5px;
  position: relative;
}
#projects .project-modal-item .project-modal-close div:after {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  content: "×";
  font-size: 2.5rem;
  color: #FFF;
  line-height: 0px;
  text-align: center;
}
#projects .project-modal-item .title {
  color: white;
  display: inline-block;
  font-weight: bold;
}
#projects .project-modal-item .category {
  color: white;
  font-size: 1.2rem;
  font-weight: 200;
}
#projects .project-modal-item .description {
  color: white;
  font-size: 1.5rem;
  line-height: 1.8rem;
}
#projects .project-modal-item .btn-red,
#projects .project-modal-item .btn-outline-white {
  font-size: 0.8rem;
  padding: 3px 15px 3px 15px;
}
#projects .project-modal-item #line-slide {
  margin: 0.5em 0 1em 0;
}
#projects .project-modal-item #line-slide div[class*=line-slide] {
  display: inline-block;
  text-align: center;
  height: 2px;
}
#projects .project-modal-item .line-slide {
  background-color: rgb(255, 255, 255) !important;
}
#projects .project-modal-item .line-slide.active {
  background-color: rgb(255, 255, 255) !important;
}
#projects .project-modal-item .line-slide.active ~ .line-slide {
  background-color: rgba(255, 255, 255, 0.5) !important;
}
#projects .project-modal-item .swiper-left {
  background-color: transparent;
  height: 100vh;
  position: absolute;
  left: 0;
  z-index: 0;
}
#projects .project-modal-item .swiper-right {
  background-color: transparent;
  height: 100vh;
  position: absolute;
  right: 0;
  z-index: 0;
}
#projects .project-modal-item .lines-navigation {
  box-sizing: border-box;
  display: grid;
  grid-column-gap: 0.2em;
  grid-template-columns: repeat(1, 1fr);
  height: 0.1em;
  top: 1em;
  width: 100%;
}
#projects .project-modal-item .lines-navigation .line-container {
  background: rgba(255, 255, 255, 0.25);
  height: 100%;
}
#projects .project-modal-item .lines-navigation .line-container .line-progress {
  background: white;
  height: 100%;
  width: 0%;
}

#filter {
  margin: 3rem 0rem;
  --size-text: 24px;
  --size-button: 20px;
}
#filter #buttom {
  display: inline-block;
  position: relative !important;
  bottom: 2px !important;
}
#filter #buttom .button {
  vertical-align: top;
  padding: 0;
  border: gray 2px solid;
  height: var(--size-button);
  width: var(--size-button);
  border-radius: 50%;
  background: white;
}
@-moz-document url-prefix() {
  #filter #buttom {
    display: inline-block;
    position: relative;
    bottom: 10px;
  }
}
#filter #title {
  display: inline-block;
}
#filter #title p,
#filter #title b {
  font-size: var(--size-text);
}
#filter .filter-button {
  cursor: pointer;
  --size-button: 20px;
  --size-text: 24px;
}
@media (max-width: 560px) {
  #filter .filter-button {
    --size-button: 16px;
    --size-text: 20px;
  }
}
#filter .filter-button .filter-circle {
  background: #fff;
  border: 2px solid gray;
  border-radius: 50%;
  height: var(--size-button);
  margin: 0px 4px;
  vertical-align: top;
  width: var(--size-button);
}
#filter .filter-button .filter-text {
  font-size: var(--size-text);
}
#filter #sections, #filter #section-filter-items {
  margin: 1.5rem 0rem;
  padding: 0rem 3rem;
}
#filter #sections .type-title, #filter #section-filter-items .type-title {
  display: flex;
  height: 60px;
}
#filter #sections .type-title p, #filter #section-filter-items .type-title p {
  font-size: 1rem;
  line-height: 120%;
}
#filter #sections .sec, #filter #section-filter-items .sec {
  margin: 1.5rem 0rem;
  display: inline-block;
  vertical-align: top;
}
#filter #sections .sec .label, #filter #section-filter-items .sec .label {
  margin-top: 15px;
}
#filter #sections .sec .label label, #filter #section-filter-items .sec .label label {
  margin: 10px;
  line-height: 120%;
}
#filter #sections .sec .form-control:focus, #filter #section-filter-items .sec .form-control:focus {
  box-shadow: 0 0 0 0 !important;
}
#filter #sections .sec .form-control, #filter #section-filter-items .sec .form-control {
  background-color: #fff;
  border-color: #000000;
  border-top-right-radius: 50px !important;
  border-bottom-right-radius: 50px !important;
  border-top-left-radius: 50px !important;
  border-bottom-left-radius: 50px !important;
  height: 40px;
  padding: 0 20px;
  font-size: 18px;
  line-height: 2.5 !important;
}
#filter #sections .sec.search input, #filter #section-filter-items .sec.search input {
  border: 1px rgba(0, 0, 0, 0.25) solid;
}
#filter #sections .sec.search input:focus, #filter #section-filter-items .sec.search input:focus {
  border: 1px rgb(0, 0, 0) solid;
}
#filter #sections .sec.search .svg-search, #filter #section-filter-items .sec.search .svg-search {
  position: absolute;
  width: 25px;
  height: 40px;
  right: 0.75em;
  top: 0;
}
#filter .search input:focus {
  border: none;
}
@media (max-width: 560px) {
  #filter #buttom {
    padding: 0 !important;
  }
}

#project .slide-title .title {
  text-transform: uppercase;
}
#project h2, #project .h2 {
  font-size: 50px;
  font-weight: 500 !important;
  line-height: 105%;
  font-family: Roboto, sans-serif !important;
  margin-bottom: 25px;
}
#project #especificacion-large p {
  margin-top: 10px;
  font-size: 15px;
  font-weight: normal;
}
#project #especificacion-large h3, #project #especificacion-large .h3 {
  font-family: Roboto, sans-serif;
  font-size: 32px;
  font-weight: 500;
  margin-bottom: 25px;
}
#project #especificacion-large .experiencia-value {
  margin: auto;
  max-width: 26rem;
  text-align: left;
  width: auto;
}
#project #especificacion-large .area {
  font-size: 1rem;
  line-height: 105%;
  padding-bottom: 2.5rem;
  padding-top: 0.4rem;
  font-family: Roboto, sans-serif;
  font-weight: 500;
}
#project #especificacion-large .value {
  font-family: Roboto, sans-serif;
  font-weight: 500;
  line-height: 105%;
  font-size: 2.1rem;
}

@-moz-document url-prefix() {
  .logo-wo-padding {
    vertical-align: text-bottom !important;
  }
  .with-padding {
    vertical-align: baseline !important;
  }
}
#encofrados {
  /*
  d-flex > agustin
  img {
      width: 100%;
  } */
}
#encofrados form label,
#encofrados form input,
#encofrados form textarea {
  font-size: 0.8333rem !important;
}
#encofrados form .form-control {
  background-color: transparent;
}
#encofrados .header-title {
  font-size: 2rem;
  font-weight: 700;
}
#encofrados .subtitle {
  font-weight: bold;
}
#encofrados .description {
  line-height: 1.5;
  font-size: 15px;
  font-family: Roboto, sans-serif;
}
#encofrados .description_cw {
  width: 42%;
  margin: 5px auto 20px auto;
  line-height: 1.5;
  font-size: 15px;
  font-weight: 800;
}
#encofrados .bg-white {
  border-radius: 10px;
}
#encofrados .icono {
  height: 100px;
  width: 100px;
}
#encofrados .logo {
  max-height: 2rem;
  /* max-width: 13rem; */
}
#encofrados .logo-w-padding {
  max-height: 41.94px;
  padding-bottom: 8.82px;
}
#encofrados .logo-wo-padding {
  max-height: 41.94px;
}
#encofrados .line-gray {
  border-bottom: 1px solid #e7e7e7;
  width: 100%;
}
#encofrados .link {
  color: #D70D17;
  font-family: Roboto, sans-serif;
  text-decoration: none;
}
#encofrados .m-gray {
  background-color: #F7F7F7;
  height: 6rem;
  width: 100%;
}
#encofrados .arrow {
  border: solid #D70D17;
  border-width: 0 1.5px 1.5px 0;
  display: inline-block;
  padding: 4px;
}
#encofrados .triangulo {
  display: inline-block;
  width: 0;
  height: 0;
  border-left: 8px solid white;
  border-top: 5px solid transparent;
  border-bottom: 5px solid transparent;
  margin-left: 5px;
}
#encofrados .right {
  transform: rotate(-45deg);
  -webkit-transform: rotate(-45deg);
}
#encofrados .left {
  transform: rotate(135deg);
  -webkit-transform: rotate(135deg);
}
#encofrados .up {
  transform: rotate(-135deg);
  -webkit-transform: rotate(-135deg);
}
#encofrados .down {
  transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
}
#encofrados h1, #encofrados .h1 {
  color: #313131;
  font-weight: 500;
  margin: 0 !important;
  font-family: Roboto, sans-serif;
}
#encofrados h2, #encofrados .h2 {
  font-size: 50px;
  font-family: Roboto, sans-serif;
  font-weight: 500;
}
#encofrados .br {
  border-radius: 30px;
}
#encofrados .detail-desc {
  color: #707070;
}
#encofrados .detail-desc .category {
  color: #707070;
  font-family: Roboto, sans-serif;
}
#encofrados .detail-desc .value {
  color: #313131;
  font-family: Roboto, sans-serif;
  font-size: 2.8rem;
  font-weight: bold;
  line-height: 2.8rem;
}
#encofrados .detail-desc .unit {
  color: #313131;
  font-family: Roboto, sans-serif;
  font-size: 1rem;
  font-weight: bold;
}
#encofrados .detail-desc .detail {
  color: #707070;
  font-family: Roboto, sans-serif;
}
#encofrados .detail-desc .line-black {
  border-bottom: 3px solid #313131;
  width: 40px;
}
#encofrados .product-img {
  margin: auto;
  max-width: 215px;
  padding-top: 15px;
  text-align: center;
}
#encofrados .product-img img {
  width: 100%;
}
#encofrados .product-img.align-bottom {
  margin-bottom: 0;
  max-width: 380px;
}
#encofrados .product-img.width-350 {
  max-width: 350px;
}
#encofrados .product-img.width-600 {
  max-width: 600px;
  width: 100%;
}
#encofrados #especiales {
  /* h2{
      font-size: $h2_font_size;
      font-family: $font_family_main;
  } */
}
#encofrados #especiales .max-w-custom {
  max-width: 17.333rem;
}
@media (max-width: 767px) {
  #encofrados #especiales .max-w-custom {
    max-width: 100%;
  }
}
#encofrados #especiales .text-center-custom {
  text-align: left;
}
@media (max-width: 767px) {
  #encofrados #especiales .text-center-custom {
    text-align: center;
  }
}
#encofrados #especiales .btn-red-slide {
  background-color: #D70D17;
  border-radius: 30px !important;
  color: white;
  font-size: 15px;
  /* padding: 0.2rem 0.75rem; */
  margin-top: 1rem;
}
#encofrados #especiales .btn-red-slide:hover {
  background-color: #f40d18 !important;
}
#encofrados #especiales .bg-white {
  border-radius: 15px;
}
#encofrados .slide-detalles {
  overflow: hidden;
}
#encofrados .slide-detalles .scroll {
  white-space: nowrap;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  -ms-overflow-style: -ms-autohiding-scrollbar;
}
#encofrados .slide-detalles .scroll p,
#encofrados .slide-detalles .scroll h2,
#encofrados .slide-detalles .scroll .h2 {
  white-space: normal;
}
#encofrados .slide-detalles .scroll .description {
  width: 100%;
}
#encofrados .slide-detalles .scroll .section {
  display: inline-block;
  margin-right: 15px;
  padding: 80px 20px 80px 20px;
  width: 80%;
}
#encofrados .slide-detalles .scroll::-webkit-scrollbar {
  display: none;
}
#encofrados .carousel-header {
  padding: 0;
}
#encofrados .carousel {
  overflow: hidden;
}
#encofrados .carousel .opacity {
  opacity: 0.5;
}
#encofrados .carousel .scroll {
  white-space: nowrap;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  -ms-overflow-style: -ms-autohiding-scrollbar;
}
#encofrados .carousel .scroll p {
  white-space: normal;
}
#encofrados .carousel .scroll .carousel-section {
  cursor: pointer;
  display: inline-block;
  margin-right: 15px;
  width: 18%;
}
#encofrados .carousel .scroll .carousel-section img {
  border-radius: 10px;
  max-height: 74px;
  width: 100%;
}
#encofrados .carousel .scroll::-webkit-scrollbar {
  display: none;
}
#encofrados .catalogo img {
  max-width: 230px;
  width: 100%;
}
#encofrados .slide-title {
  align-items: center;
  color: white;
  display: flex;
  height: 100vh;
  justify-content: center;
  opacity: 0;
  position: absolute;
  text-align: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  -webkit-justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  -webkit-align-items: center;
  width: 100%;
  z-index: 2;
}
#encofrados .slide-title .title {
  color: white;
  font-family: Roboto, sans-serif;
  font-size: 1rem;
  margin-bottom: 1rem;
}
#encofrados .slide-title .subtitle {
  color: white;
  font-family: Roboto, sans-serif;
  font-size: 2.5rem;
  line-height: 2.5rem;
  font-weight: 500;
  max-width: 40rem;
}
@media (width < 760px) {
  #encofrados .slide-title {
    height: 80vh !important;
  }
}

#form-product h2, #form-product .h2 {
  font-size: 50px;
  font-family: Roboto, sans-serif;
}

#slider-destacados .logo-w-padding {
  max-height: 41.94px;
  padding-bottom: 8.82px;
}
#slider-destacados .logo-wo-padding {
  max-height: 41.94px;
}
#slider-destacados .tns-outer :disabled {
  opacity: 0;
}

#noticias {
  line-height: 1rem;
  margin-top: 100px;
}
#noticias h2, #noticias .h2 {
  font-size: 50px;
  font-weight: 500;
  line-height: 105%;
  font-family: Roboto, sans-serif !important;
}
#noticias #slider-noticias {
  position: relative;
}
#noticias #slider-noticias .slider-text {
  max-width: 700px;
  margin-left: auto;
}
@media (max-width: 992px) {
  #noticias #slider-noticias .slider-text {
    max-width: 100% !important;
    margin-left: 0;
    margin-right: 0;
  }
}
#noticias #slider-noticias a {
  font-size: 15px;
  font-weight: 400;
  line-height: 120%;
}
#noticias #slider-noticias .btn.small-tag {
  font-size: 15px;
  font-weight: 400;
  line-height: 105%;
}
#noticias #slider-noticias .my-md-2 a {
  font-size: 16px;
}
#noticias #slider-noticias p {
  font-size: 1rem;
  font-weight: 400;
  line-height: 120%;
}
#noticias #slider-noticias h5, #noticias #slider-noticias .h5 {
  line-height: 105%;
  font-family: Roboto, sans-serif !important;
  margin-bottom: 25px;
  font-size: 18px;
}
#noticias .header-title {
  font-family: Roboto, sans-serif;
  font-size: 50px;
  font-weight: 700;
}
#noticias .noticia .card-img-top {
  border-top-right-radius: 15px;
  border-top-left-radius: 15px;
}
#noticias .noticia h3, #noticias .noticia .h3 {
  font-family: Roboto, sans-serif;
  font-size: 22px;
  font-weight: 500;
}
#noticias .noticia a {
  font-size: 15px;
  font-weight: normal;
  line-height: 120%;
}
#noticias .noticia p,
#noticias .noticia a.btn,
#noticias .noticia span.btn {
  font-size: 15px;
  font-weight: normal;
  line-height: 1.5;
  /* margin-bottom: 20px; */
}
#noticias .noticia p.small, #noticias .noticia p.small-tag,
#noticias .noticia a.btn.small,
#noticias .noticia a.btn.small-tag,
#noticias .noticia span.btn.small,
#noticias .noticia span.btn.small-tag {
  font-size: 12px;
}
#noticias .noticia .category {
  font-family: Roboto, sans-serif;
  font-size: 1rem;
  font-weight: 200;
}
#noticias .noticia .project-description {
  font-family: Roboto, sans-serif;
  font-size: 1.6rem;
  font-weight: 400;
}
#noticias .noticia .link {
  color: #D70D17;
  font-family: Roboto, sans-serif;
  text-decoration: none;
}
#noticias .slider-content {
  line-height: 1rem;
}
#noticias .slider-title {
  max-width: 16ch;
}
#noticias .vh-85 {
  min-height: 85vh;
}
#noticias .btn-project {
  text-decoration: none;
}
#noticias .h1-xl {
  font-size: 3em;
  margin: 0.5em 0;
  font-weight: bold;
  line-height: 105%;
}
#noticias .icon-font-fa-size {
  font-size: 15px;
}
#noticias .header-bg {
  background-size: cover;
  background-position-x: center;
  min-height: 55vh;
}
#noticias .tns-nav {
  display: block !important;
  text-align: center;
  margin: 1rem 0;
  position: absolute;
  left: 0;
  right: 0;
}
#noticias .tns-nav > [aria-controls] {
  width: 0.75rem;
  height: 0.75rem;
  padding: 0;
  margin: 0 3px;
  border-radius: 50%;
  background: #fff;
  border: solid 1px #707070;
}
#noticias .tns-nav > .tns-nav-active {
  background: #707070;
}
#noticias .border-color-gray-s1 {
  border: solid gray;
  border-width: 0px 1px;
}
#noticias .border-color-gray-s2 {
  border: solid gray;
  border-width: 0px 1px 1px 1px;
  border-radius: 0px 0px 15px 15px;
}
#noticias .border-color-gray-s2 .h5 {
  margin: 20px 0px !important;
}
@media (min-width: 576px) and (max-width: 767.98px) {
  #noticias .card-columns {
    -moz-column-count: 2;
         column-count: 2;
  }
}
@media (min-width: 768px) and (max-width: 991.98px) {
  #noticias .card-columns {
    -moz-column-count: 2;
         column-count: 2;
  }
}
@media (min-width: 992px) and (max-width: 1199.98px) {
  #noticias .card-columns {
    -moz-column-count: 2;
         column-count: 2;
  }
}
@media (min-width: 1200px) and (max-width: 1399.98px) {
  #noticias .card-columns {
    -moz-column-count: 3;
         column-count: 3;
  }
}
@media (min-width: 1400px) {
  #noticias .card-columns {
    -moz-column-count: 3;
         column-count: 3;
  }
}
#noticias .card-columns .card .btn {
  line-height: 1;
}
#noticias .card-columns .gallery-data-grid-center {
  display: grid !important;
  grid-template-columns: 1fr;
  grid-template-rows: 1fr;
  grid-column-gap: 0px;
  grid-row-gap: 0px;
}
#noticias .card-columns .gallery-data-grid-item-position {
  grid-column: 1/-1;
  grid-row: 1/-1;
}
#noticias .card-columns #link-container {
  z-index: 9;
}
#noticias .card-columns .gallery-item-buttons {
  z-index: 19;
  position: relative;
}
#noticias .select2-container--default .select2-selection--multiple {
  padding: 0 !important;
  border-radius: 24px !important;
}
#noticias .select2-container--default .select2-selection--multiple .select2-selection__choice {
  border-radius: 999rem;
  padding: 2px 24px !important;
}
#noticias .select2-container--default .select2-selection--multiple .select2-selection__choice .select2-selection__choice__remove {
  border-right: none !important;
  bottom: 0;
  left: 2px !important;
  transform: translateY(1px);
}
#noticias .select2-container--default .select2-selection--multiple .select2-search--inline {
  line-height: 1.4;
}
#noticias .select2-container--default .select2-selection--multiple .select2-search--inline input.select2-search__field {
  padding: 2px 0;
  border: none !important;
}

#noticia {
  margin-top: 110px;
}
#noticia .rrss img {
  height: 1.5em;
}
#noticia .small-text {
  font-size: 0.8em;
}
#noticia .max-h-40 {
  max-height: 40em;
}
#noticia .min-h-20 {
  min-height: 20em;
}
#noticia .max-h-48 {
  max-height: 48em;
}
#noticia .responsive {
  -o-object-fit: cover;
     object-fit: cover;
  height: 100%;
}
#noticia .description h3, #noticia .description .h3 {
  margin-top: 1.5em;
}
#noticia .h-90 {
  height: 90%;
}
#noticia .h-10 {
  height: 10%;
}
#noticia .create-content-news .nav-link:hover {
  background-color: #e9ecef;
}
#noticia .inputfile {
  width: 0.1px;
  height: 0.1px;
  opacity: 0;
  overflow: hidden;
  position: absolute;
  z-index: -1;
}
#noticia img.can-edit-img {
  cursor: pointer;
}
#noticia img.can-edit-img:hover {
  filter: brightness(85%);
}
#noticia img.can-edit-img:focus {
  outline: 1px dotted #000;
  outline: -webkit-focus-ring-color auto 5px;
}
#noticia.noticia-custom-width .container {
  max-width: 950px !important;
}
#noticia h1, #noticia .h1 {
  font-weight: 500;
  font-family: Roboto, sans-serif;
}
#noticia h2, #noticia .h2 {
  font-size: 50px;
  font-family: Roboto, sans-serif;
  font-weight: 500;
}

#noticias [hidden-data-product-id*="1"], #projects [hidden-data-product-id*="1"] {
  display: none !important;
}
#noticias [hidden-data-content-group-id*="1"], #projects [hidden-data-content-group-id*="1"] {
  display: none !important;
}
#noticias [hidden-data-content-name*="1"], #projects [hidden-data-content-name*="1"] {
  display: none !important;
}
#noticias [hidden-data-publish-date*="1"], #projects [hidden-data-publish-date*="1"] {
  display: none !important;
}
#noticias [hidden-data-tag-id*="1"], #projects [hidden-data-tag-id*="1"] {
  display: none !important;
}

.description-subtitle p {
  font-size: 1.333rem;
  line-height: 120%;
}

#category h1, #category .h1 {
  padding-bottom: 1rem;
  margin: auto;
}
#category h2, #category .h2 {
  padding-bottom: 1rem;
  margin: auto;
}
#category .description {
  font-family: Roboto, sans-serif;
  width: 100%;
}
#category .description p {
  text-align: justify !important;
  margin-bottom: 0;
  line-height: 135% !important;
}
#category .description h3, #category .description .h3 {
  text-align: left !important;
  margin-bottom: 1rem !important;
  margin-top: 1.5rem !important;
}
#category .description ol, #category .description ul {
  text-align: justify !important;
  margin-bottom: 1rem !important;
  margin-top: 1.5rem !important;
}
#category .description ol li, #category .description ul li {
  margin-top: 1.5rem !important;
  line-height: 1.5 !important;
  font-size: 1rem !important;
}
#category .product .logo-w-padding {
  max-height: 41.94px;
  padding-bottom: 8.82px;
}
#category .product .logo-wo-padding {
  max-height: 41.94px;
}
#category .controls {
  color: #a8a8a8;
  margin: 70px 0 100px 0;
}
#category .controls .arrow {
  background-color: #f8f8f9;
  border-radius: 50%;
  display: inline-block;
  height: 70px;
  line-height: 68px;
  margin: 7px 0;
  text-align: center;
  width: 70px;
}
#category .controls span {
  display: inline-block;
  font-size: 13px;
  font-weight: bold;
  line-height: 125%;
  margin-top: 20px;
}
#category .select2-container--default .select2-selection--multiple {
  padding: 0 !important;
  border-radius: 24px !important;
}
#category .select2-container--default .select2-selection--multiple .select2-selection__choice {
  border-radius: 999rem;
  padding: 2px 24px !important;
}
#category .select2-container--default .select2-selection--multiple .select2-selection__choice .select2-selection__choice__remove {
  border-right: none !important;
  bottom: 0;
  left: 2px !important;
  transform: translateY(1px);
}
#category .select2-container--default .select2-selection--multiple .select2-search--inline {
  line-height: 1.4;
}
#category .select2-container--default .select2-selection--multiple .select2-search--inline input.select2-search__field {
  padding: 2px 0;
  border: none !important;
}

.w-sm-60 {
  display: block;
  margin-left: auto;
  margin-right: auto;
  width: 60% !important;
}

.w-sm-80 {
  display: block;
  margin-left: auto;
  margin-right: auto;
  width: 80% !important;
}

.content-wrap {
  position: relative;
}
.content-wrap .content-edit {
  background-color: rgba(0, 0, 0, 0.8);
  display: none;
  left: 0;
  padding: 15px;
  position: absolute;
  top: 0;
}
.content-wrap .content-edit a {
  color: #FFF;
}
.content-wrap h3, .content-wrap .h3 {
  margin-bottom: 35px !important;
}
.content-wrap:hover .content-edit {
  display: block;
}

#gallery-mosaic {
  display: grid;
  grid-auto-rows: 600px;
  grid-template-columns: repeat(6, 1fr);
}
#gallery-mosaic .gallery-item {
  box-sizing: border-box;
  overflow: hidden;
  position: relative;
  margin: 10px;
  grid-column-start: span 3;
  grid-row-start: span 1;
}
#gallery-mosaic .gallery-item:nth-child(even of [hidden-data-content-group-id="0"]) {
  grid-row-start: span 2;
}
#gallery-mosaic .gallery-item img {
  -o-object-fit: cover;
     object-fit: cover;
  height: 100%;
  width: 100%;
  border-radius: 15px;
}
#gallery-mosaic .gallery-item .gallery-bg {
  background-color: rgba(0, 0, 0, 0.7);
  border-radius: 15px;
  height: 100%;
  left: 0;
  opacity: 0;
  position: absolute;
  top: 0;
  transition: visibility 0s, opacity 0.4s linear;
  visibility: 0;
  width: 100%;
  z-index: 2;
}
#gallery-mosaic .gallery-item .gallery-bg .gallery-data-grid-center {
  display: grid;
  height: 100%;
  grid-template-columns: 1fr;
  grid-template-rows: 1fr;
  grid-column-gap: 0px;
  grid-row-gap: 0px;
}
#gallery-mosaic .gallery-item .gallery-bg .gallery-data-grid-center .gallery-data-grid-item-position {
  grid-column: 1/-1;
  grid-row: 1/-1;
}
#gallery-mosaic .gallery-item .gallery-bg .gallery-data-grid-center #link-container {
  z-index: 9;
}
#gallery-mosaic .gallery-item .gallery-bg .gallery-data-grid-center .gallery-data-grid-center-item {
  margin: auto 0 0;
  width: 100%;
  padding: 15%;
}
#gallery-mosaic .gallery-item .gallery-bg .gallery-data-grid-center .gallery-data-grid-center-item h3, #gallery-mosaic .gallery-item .gallery-bg .gallery-data-grid-center .gallery-data-grid-center-item .h3 {
  color: #FFF;
  font-size: 22px;
  font-weight: bold;
  text-transform: uppercase;
}
#gallery-mosaic .gallery-item .gallery-bg .gallery-data-grid-center .gallery-data-grid-center-item p,
#gallery-mosaic .gallery-item .gallery-bg .gallery-data-grid-center .gallery-data-grid-center-item a {
  color: #FFF;
  font-size: 16px;
  font-weight: normal;
}
#gallery-mosaic .gallery-item .gallery-bg .gallery-data-grid-center .gallery-data-grid-center-item p {
  margin-bottom: 20px;
}
#gallery-mosaic .gallery-item .gallery-bg .gallery-data-grid-center .gallery-data-grid-center-item a.link-project {
  display: block;
  margin-bottom: 40px;
  text-decoration: none;
}
#gallery-mosaic .gallery-item .gallery-bg .gallery-data-grid-center .gallery-data-grid-center-item .tag {
  border: 1px solid #FFF;
  border-radius: 20px;
  color: #FFF;
  font-size: 15px;
  padding: 14px 20px;
}
#gallery-mosaic .gallery-item .gallery-bg .gallery-data-grid-center .gallery-data-grid-center-item .tag-product {
  background-color: #D70D17;
  border: 1px solid #D70D17;
  border-radius: 20px;
  color: #FFF;
  font-size: 15px;
  padding: 14px 20px;
  text-decoration: none;
}
#gallery-mosaic .gallery-item .gallery-bg .gallery-data-grid-center .gallery-data-grid-center-item .gallery-item-buttons {
  z-index: 19;
  position: relative;
}
#gallery-mosaic .gallery-item .gallery-bg .gallery-data {
  bottom: 50px;
  left: 5%;
  position: absolute;
  width: 90%;
}
#gallery-mosaic .gallery-item .gallery-bg .gallery-data h3, #gallery-mosaic .gallery-item .gallery-bg .gallery-data .h3 {
  color: #FFF;
  font-size: 22px;
  text-transform: uppercase;
}
#gallery-mosaic .gallery-item .gallery-bg .gallery-data p,
#gallery-mosaic .gallery-item .gallery-bg .gallery-data a {
  color: #FFF;
  font-size: 15px;
  font-weight: normal;
}
#gallery-mosaic .gallery-item .gallery-bg .gallery-data p {
  margin-bottom: 20px;
}
#gallery-mosaic .gallery-item .gallery-bg .gallery-data a.link-project {
  display: block;
  margin-bottom: 40px;
  text-decoration: none;
}
#gallery-mosaic .gallery-item .gallery-bg .gallery-data .tag {
  border: 1px solid #FFF;
  border-radius: 15px;
  color: #FFF;
  font-size: 15px;
  padding: 6px 12px;
}
#gallery-mosaic .gallery-item .gallery-bg .gallery-data .tag-product {
  background-color: #D70D17;
  border: 1px solid #D70D17;
  border-radius: 15px;
  color: #FFF;
  font-size: 15px;
  padding: 6px 12px;
  text-decoration: none;
}
#gallery-mosaic .gallery-item:hover .gallery-bg {
  visibility: visible;
  opacity: 1;
}

#standard-carousel {
  position: relative;
}
#standard-carousel .carousel-indicators {
  margin-bottom: 2rem;
  z-index: 999;
}
#standard-carousel .carousel-indicators li {
  background-color: transparent;
  border: 1px solid #FFF;
  border-radius: 50%;
  box-sizing: content-box;
  height: 12px;
  margin-right: 4px;
  margin-left: 4px;
  text-indent: -999px;
  cursor: pointer;
  background-clip: padding-box;
  transition: opacity 0.6s ease;
  width: 12px;
}
#standard-carousel .carousel-indicators li.active {
  background-color: #FFF;
}
#standard-carousel .carousel-inner .carousel-item {
  position: relative;
}
#standard-carousel .carousel-inner .carousel-item img {
  height: 100vh;
  -o-object-fit: cover;
     object-fit: cover;
}
#standard-carousel .carousel-inner .carousel-item .item-bg {
  align-items: center;
  background: rgb(0, 0, 0);
  background: linear-gradient(90deg, rgba(0, 0, 0, 0.8673670152) 0%, rgba(34, 34, 34, 0.0270308807) 100%);
  display: table;
  height: 100%;
  min-height: 100vh;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: 0;
}
#standard-carousel .carousel-inner .carousel-item .item-bg .item-data {
  display: table-cell;
  padding-left: 8%;
  position: relative;
  vertical-align: middle;
}
#standard-carousel .carousel-inner .carousel-item .item-bg .item-data h5, #standard-carousel .carousel-inner .carousel-item .item-bg .item-data .h5 {
  color: #FFF;
  display: block;
  font-family: Roboto, sans-serif;
  font-size: 1rem;
  margin-bottom: 25px;
  text-transform: uppercase;
}
#standard-carousel .carousel-inner .carousel-item .item-bg .item-data h2, #standard-carousel .carousel-inner .carousel-item .item-bg .item-data .h2 {
  color: #FFF;
  display: block;
  font-family: Roboto, sans-serif;
  font-size: 50px;
  font-weight: 500;
  margin-bottom: 25px;
}
#standard-carousel .carousel-inner .carousel-item .item-bg .item-data p {
  color: #FFF;
  max-width: 600px;
  width: 100%;
}
#standard-carousel .carousel-inner .carousel-item .item-bg .item-data a.link-project {
  color: #FFF;
  display: block;
  text-decoration: none;
}
#standard-carousel .carousel-inner .carousel-item .item-bg .item-data .tag {
  border: 1px solid #FFF;
  border-radius: 15px;
  color: #FFF;
  font-size: 15px;
  padding: 6px 12px;
}
#standard-carousel .carousel-inner .carousel-item .item-bg .item-data .tag-product {
  background-color: #D70D17;
  border: 1px solid #D70D17;
  border-radius: 15px;
  color: #FFF;
  font-size: 15px;
  margin-right: 20px;
  padding: 6px 12px;
  text-decoration: none;
}

@media (min-width: 1400px) {
  .special {
    margin-bottom: -28rem !important;
  }
  .special-value {
    position: relative;
    min-height: 54rem !important;
    display: flex;
    align-items: center;
  }
}
@media (max-width: 1400px) {
  #products #especificaciones .especificacion .esp-content,
  #andamios #especificaciones .especificacion .esp-content {
    width: 60%;
  }
}
@media (max-width: 1200px) {
  #products #especificaciones .especificacion .esp-content,
  #andamios #especificaciones .especificacion .esp-content {
    width: 70%;
  }
  #products .cuadrado,
  #andamios .cuadrado {
    margin-top: -3rem;
  }
}
@media (min-width: 1024px) {
  .px-md-102 {
    padding-left: 5.83rem !important;
    padding-right: 5.83rem !important;
  }
  .pl-md-102 {
    padding-left: 5.83rem !important;
  }
  .pr-md-102 {
    padding-right: 5.83rem !important;
  }
  .py-md-102 {
    padding-bottom: 5.83rem !important;
    padding-top: 5.83rem !important;
  }
  .pb-md-102 {
    padding-bottom: 5.83rem !important;
  }
  .pt-md-102 {
    padding-top: 5.83rem !important;
  }
  .py-md-186 {
    padding-top: 7.75rem !important;
    padding-bottom: 7.75rem !important;
  }
  .pt-md-186 {
    padding-top: 7.75rem !important;
  }
  .pb-md-186 {
    padding-bottom: 100px;
  }
  .px-md-70 {
    padding-left: 2.91rem !important;
    padding-right: 2.91rem !important;
  }
  .pl-md-70 {
    padding-left: 2.91rem !important;
  }
  .pr-md-70 {
    padding-right: 2.91rem !important;
  }
  .py-md-70 {
    padding-bottom: 2.91rem;
    padding-top: 2.91rem;
  }
  .pb-md-70 {
    padding-bottom: 2.91rem;
  }
  .pt-md-70 {
    padding-top: 2.91rem;
  }
  .ml-md-negative-1 {
    margin-left: -75px;
  }
}
@media (min-width: 992px) {
  html {
    font-size: 21.42px !important;
  }
}
@media (max-width: 991px) {
  html {
    font-size: 18px;
  }
  #products #especificaciones .especificacion .esp-content,
  #andamios #especificaciones .especificacion .esp-content {
    padding-left: 30px;
    padding-right: 20px;
    width: 100%;
  }
  #products #especificaciones .especificacion .esp-content .text-abs,
  #andamios #especificaciones .especificacion .esp-content .text-abs {
    left: 55%;
    right: 20px;
  }
  #products #especificaciones .especificacion.float-right .esp-content,
  #andamios #especificaciones .especificacion.float-right .esp-content {
    padding-left: 20px;
  }
  #products .cuadrado,
  #andamios .cuadrado {
    margin-top: -2rem;
  }
}
@media (min-width: 768px) {
  .px-102 {
    padding-left: 2.915rem !important;
    padding-right: 2.915rem !important;
  }
  .pl-102 {
    padding-left: 2.915rem !important;
  }
  .pr-102 {
    padding-right: 2.915rem !important;
  }
  .py-102 {
    padding-bottom: 2.915rem !important;
    padding-top: 2.915rem !important;
  }
  .pb-102 {
    padding-bottom: 2.915rem !important;
  }
  .pt-102 {
    padding-top: 2.915rem !important;
  }
  .pl-70 {
    padding-left: 2.91rem !important;
  }
  .pr-70 {
    padding-right: 2.91rem !important;
  }
  .py-70 {
    padding-bottom: 2.91rem;
    padding-top: 2.91rem;
  }
  .pb-70 {
    /*padding-bottom: 2.91rem;*/
    padding-bottom: 70px;
  }
  .pb-75 {
    /*padding-bottom: 2.91rem;*/
    padding-bottom: 75px;
  }
  .pt-70 {
    padding-top: 2.91rem;
  }
  .py-130 {
    padding-top: 130px !important;
    padding-bottom: 130px !important;
  }
  .py-186 {
    padding-top: 95px !important;
    padding-bottom: 100px !important;
  }
  .py-186_ {
    padding-top: 130px !important;
    padding-bottom: 100px !important;
  }
  .pt-186 {
    padding-top: 95px !important;
  }
  .pt-186_ {
    padding-top: 100px !important;
  }
  .pb-186 {
    padding-bottom: 100px !important;
  }
  .pb-100 {
    padding-bottom: 97px !important;
  }
  .pb-60 {
    padding-bottom: 60px !important;
  }
  .mw-350 {
    max-width: 20rem;
  }
  .mw-700 {
    max-width: 40rem;
  }
  .mw-1400 {
    max-width: 1400px;
  }
  .ma-left {
    margin-left: auto;
  }
  .ma-right {
    margin-right: auto;
  }
  .ma-center {
    margin-left: auto;
    margin-right: auto;
  }
  .text-md-center {
    text-align: center;
  }
  .movil {
    display: none;
  }
  #nav-movil {
    display: none;
  }
  #nav-desktop {
    background-color: transparent;
    border-bottom: 1px solid rgba(0, 0, 0, 0.1607843137);
    height: 49px;
    position: fixed;
    top: 0;
    width: 100%;
    transition: 1s;
    z-index: var(--nav-desktop-z-index, 1052);
  }
  #nav-desktop.menu-hidden {
    top: -48px;
  }
  #nav-desktop .menu-top {
    height: 100%;
  }
  #nav-desktop .menu-top .row {
    height: 100%;
  }
  #nav-desktop .menu-top .menu-arrow .arrow {
    cursor: pointer;
    border: solid #D70D17;
    border-width: 0 1.5px 1.5px 0;
    display: inline-block;
    padding: 5px;
  }
  #nav-desktop .menu-top .right {
    transform: rotate(-45deg);
    -webkit-transform: rotate(-45deg);
  }
  #nav-desktop .menu-top .left {
    transform: rotate(135deg);
    -webkit-transform: rotate(135deg);
  }
  #nav-desktop .menu-top .up {
    transform: rotate(-135deg);
    -webkit-transform: rotate(-135deg);
  }
  #nav-desktop .menu-top .down {
    transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
  }
  #nav-desktop .menu-top .menu-logo-sten img {
    width: 60px;
  }
  #nav-desktop .menu-top .menu-section {
    position: relative;
    z-index: 10000;
  }
  #nav-desktop .menu-top .menu-section .nav-toggle-btn {
    background-color: transparent;
    border: none;
    box-sizing: border-box;
    cursor: pointer;
    height: 40px;
    outline: none;
    padding: 0;
    margin-right: 5px;
    top: 25px;
    width: 27px;
    z-index: 10000;
  }
  #nav-desktop .menu-top .menu-section .nav-toggle-btn span {
    display: block;
    width: 27px;
    height: 1.5px;
    background: #D70D17;
    position: absolute;
    top: 25px;
    transition: 0.3s;
  }
  #nav-desktop .menu-top .menu-section .nav-toggle-btn span:before {
    content: "";
    position: absolute;
    width: 27px;
    height: 1.5px;
    background: #D70D17;
    top: -10px;
    left: 0;
    transition: 0.3s;
  }
  #nav-desktop .menu-top .menu-section .nav-toggle-btn .toggle span {
    background: transparent;
  }
  #nav-desktop .menu-top .menu-section .nav-toggle-btn.toggle span {
    background: white;
    top: 25px;
    transform: rotate(45deg);
  }
  #nav-desktop .menu-top .menu-section .nav-toggle-btn.toggle span:before {
    background: white;
    top: 0px;
    transform: rotate(-90deg);
  }
  #nav-desktop .menu-top .menu-section .nav-toggle-btn:focus {
    border: none;
    outline: none;
  }
  #products .especificacion-v2 .df-3b .pb-custom-3 {
    padding-bottom: 1.1rem;
  }
  #productos .especificacion-v2 .df-3b {
    width: 160px;
  }
  #productos .especificacion-v2 .df-3a-full .qt-custom {
    font-size: 2.5em;
  }
  #productos .especificacion-v2 .df-3a-full .qt-custom span.type {
    font-size: 1rem;
  }
}
@media (max-width: 767px) {
  .row > * {
    padding-right: 15px;
    padding-left: 15px;
  }
  #mision-vision-valores .row {
    display: flex;
    flex-direction: column !important;
  }
  #mision-vision-valores .row .px-sten {
    display: block;
    width: 100%;
  }
  #mision-vision-valores .row .px-sten .sub-title {
    margin: auto !important;
    max-width: 13.14rem !important;
  }
  #mision-vision-valores .row .px-sten p {
    margin: auto !important;
    max-width: 13.14rem !important;
    padding-top: 1rem !important;
  }
  #mision-vision-valores .text-title-align {
    text-align: center;
  }
  h1, .h1 {
    font-size: 55px;
    line-height: 105%;
  }
  h1.h1-xs, .h1-xs.h1 {
    font-size: 36px;
    font-weight: 500;
  }
  h2, .h2,
  #noticias h2 {
    line-height: 105%;
  }
  p {
    font-size: 16px;
    margin-bottom: 0;
  }
  main {
    margin-bottom: 67px;
  }
  #products .slide-title {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    opacity: 1;
  }
  #products .slide-title .logo {
    height: 55px;
    margin-bottom: 60px;
  }
  #products .slide-title .product {
    width: 100%;
  }
  #products h2, #products .h2 {
    font-size: 40px;
  }
  #products p {
    font-size: 18px;
  }
  #products ul li {
    font-size: 18px;
  }
  #products ul li > span {
    font-size: 18px !important;
  }
  #products .first-spec p {
    font-size: 18px;
    width: 100%;
  }
  #products .header img.logo {
    display: block;
    margin-left: auto;
    margin-right: auto;
    max-width: 50%;
    min-width: 200px;
  }
  #products .header .product {
    max-height: 22rem;
    max-width: 38rem;
  }
  #products .header-andamios {
    height: 95vh;
  }
  #products .andamio1 {
    margin-top: 0;
  }
  #products .mt-negative-11 {
    margin-top: 0px;
  }
  #products .cabezal {
    margin-top: 0rem;
  }
  #products .cuadrado {
    margin-top: 40px;
  }
  #products #fotos h2, #products #fotos .h2 {
    margin-bottom: 0;
  }
  #products #fotos h2 img, #products #fotos .h2 img {
    height: 33px;
  }
  #products #fotos h2 img.with_img, #products #fotos .h2 img.with_img {
    height: 33px;
  }
  #products #fotos h2 .with_logo, #products #fotos .h2 .with_logo {
    font-size: 40px !important;
  }
  #products .sinpadding-pair[class*=col-] {
    padding-left: 0;
    padding-right: 0;
  }
  #andamios .sinpadding-pair[class*=col-] {
    padding-left: 0;
    padding-right: 0;
  }
  #andamios ul.controls {
    display: none;
  }
  .mt-sm-4 {
    margin-top: 1.5rem !important;
  }
  .px-70 {
    padding-left: 2.5rem !important;
    padding-right: 2.5rem !important;
  }
  .pl-70 {
    padding-left: 15px !important;
  }
  .pr-70 {
    padding-right: 15px !important;
  }
  .py-70 {
    padding-top: 2.5rem !important;
    padding-bottom: 2.5rem !important;
  }
  .pb-70 {
    padding-bottom: 2.5rem !important;
  }
  .pt-70 {
    padding-top: 2.5rem !important;
  }
  .px-102 {
    padding-left: 2.915rem !important;
    padding-right: 2.915rem !important;
  }
  .pl-102 {
    padding-left: 2.915rem !important;
  }
  .pr-102 {
    padding-right: 2.915rem !important;
  }
  .py-102 {
    padding-bottom: 2.915rem !important;
    padding-top: 2.915rem !important;
  }
  .pb-102 {
    padding-bottom: 2.915rem !important;
  }
  .pt-102 {
    padding-top: 2.915rem !important;
  }
  .py-186 {
    padding-bottom: 65px !important;
    padding-top: 65px !important;
  }
  .py-186_ {
    padding-bottom: 63px !important;
    padding-top: 65px !important;
  }
  .px-186 {
    padding-left: 2.915rem !important;
    padding-right: 2.915rem !important;
  }
  .pt-186 {
    padding-top: 65px !important;
  }
  .pb-186 {
    padding-bottom: 65px !important;
  }
  .pb-sm-186 {
    padding-bottom: 65px;
  }
  .pt-sm-186 {
    padding-top: 65px;
  }
  .download {
    width: 12px;
  }
  .desktop {
    display: none;
  }
  #nav-dots {
    display: none !important;
  }
  #nav-desktop {
    display: none;
  }
  #nav-movil {
    /* background-color: white;
    border-top: 1px solid #f6f6f6; */
    bottom: 0;
    min-height: 51.6px;
    position: fixed;
    width: 100%;
    z-index: 1052;
  }
  #nav-movil .menu-icons {
    height: 51.6px;
    position: relative;
  }
  #nav-movil .menu-icons .menu-arrow .arrow {
    border: solid #D70D17;
    border-width: 0 1.5px 1.5px 0;
    display: inline-block;
    padding: 5px;
  }
  #nav-movil .menu-icons .right {
    transform: rotate(-45deg);
    -webkit-transform: rotate(-45deg);
  }
  #nav-movil .menu-icons .left {
    transform: rotate(135deg);
    -webkit-transform: rotate(135deg);
  }
  #nav-movil .menu-icons .up {
    transform: rotate(-135deg);
    -webkit-transform: rotate(-135deg);
  }
  #nav-movil .menu-icons .down {
    transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
  }
  #nav-movil .menu-icons .row {
    height: 100%;
  }
  #nav-movil .menu-icons .menu-logo-sten img {
    width: 21px;
  }
  #nav-movil .menu-icons .menu-section {
    position: relative;
    z-index: 10000;
  }
  #nav-movil .menu-icons .menu-section .nav-toggle-btn {
    background-color: transparent;
    border: none;
    box-sizing: border-box;
    cursor: pointer;
    height: 40px;
    outline: none;
    padding: 0;
    right: 20px;
    top: 25px;
    width: 27px;
    z-index: 10000;
  }
  #nav-movil .menu-icons .menu-section .nav-toggle-btn span {
    display: block;
    width: 27px;
    height: 1.5px;
    background: #D70D17;
    position: absolute;
    top: 25px;
    transition: 0.3s;
  }
  #nav-movil .menu-icons .menu-section .nav-toggle-btn span:before {
    content: "";
    position: absolute;
    width: 27px;
    height: 1.5px;
    background: #D70D17;
    top: -10px;
    left: 0;
    transition: 0.3s;
  }
  #nav-movil .menu-icons .menu-section .nav-toggle-btn .toggle span {
    background: transparent;
  }
  #nav-movil .menu-icons .menu-section .nav-toggle-btn.toggle span {
    background: white;
    top: 25px;
    transform: rotate(45deg);
  }
  #nav-movil .menu-icons .menu-section .nav-toggle-btn.toggle span:before {
    background: white;
    top: 0px;
    transform: rotate(-90deg);
  }
  #nav-movil .menu-icons .menu-section .nav-toggle-btn:focus {
    border: none;
    outline: none;
  }
  #nav-movil .bottom-line-gray {
    background-color: #DEDEDE;
    bottom: 0;
    height: 24px;
    position: relative;
    width: 100%;
  }
  /*     .controls {
      display: none !important;
  } */
  .slider-products,
  .slider-services {
    display: flex;
    margin-left: 0px !important;
  }
  .slider-products .item,
  .slider-services .item {
    border-radius: 10px;
    display: inline-block;
    height: 100%;
    margin-right: 15px;
    width: 20.1rem;
  }
  .slider-products .section,
  .slider-services .section {
    border-radius: 10px;
    height: 100%;
    /* min-height: 475px; */
    max-width: 100%;
    padding: 2em 1em 0em 1em;
  }
  .slider-products .section .logo,
  .slider-services .section .logo {
    max-height: 2rem;
    max-width: 13rem;
  }
  .slider-products .section .description,
  .slider-services .section .description {
    margin: 15px 0px;
    height: -moz-max-content;
    height: max-content;
  }
  .slider-products .cards-cw,
  .slider-services .cards-cw {
    display: flex;
    flex-direction: column;
    height: 100%;
    padding: 0px 1rem;
  }
  .slider-products .cards-cw .description_cw,
  .slider-services .cards-cw .description_cw {
    width: 100% !important;
  }
  .slider-products .description,
  .slider-services .description {
    font-size: 15px;
    white-space: normal;
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    line-height: 1.5;
    min-height: 2rem;
  }
  .slider-products .btn-red-slide,
  .slider-services .btn-red-slide {
    background-color: #D70D17;
    border-radius: 30px !important;
    color: white;
    font-size: 15px;
    /* padding: 0.2rem 0.75rem;
    margin-top: 1rem; */
  }
  .slider-products .btn-red-slide:hover,
  .slider-services .btn-red-slide:hover {
    background-color: #f40d18 !important;
    color: white;
  }
  .slider-products .product-img,
  .slider-services .product-img {
    margin: auto;
    max-width: 215px;
    text-align: center;
  }
  .slider-products .product-img img,
  .slider-services .product-img img {
    max-height: -moz-max-content !important;
    max-height: max-content !important;
    max-width: 100%;
    -o-object-fit: contain;
       object-fit: contain;
  }
  .slider-products .controls li,
  .slider-services .controls li {
    border-radius: 50% !important;
    display: none;
    position: absolute;
    top: 50%;
    height: 60px;
    line-height: 60px;
    margin-top: -30px;
    padding: 0 15px;
    cursor: pointer;
    transition: background 0.3s;
  }
  .slider-products .controls .prev,
  .slider-services .controls .prev {
    left: 0;
  }
  .slider-products .controls .next,
  .slider-services .controls .next {
    right: 0;
  }
  .slider-products .tns-outer [data-action=stop],
  .slider-products .tns-outer [data-action=play],
  .slider-products .tns-outer [data-action=start],
  .slider-services .tns-outer [data-action=stop],
  .slider-services .tns-outer [data-action=play],
  .slider-services .tns-outer [data-action=start] {
    display: none;
  }
  .slider-products .description {
    -webkit-line-clamp: 2;
    /* number of lines to show */
  }
  .slider-services .title,
  .slider-ventajas .title {
    font-size: 1.5rem;
    line-height: 1.7rem;
    font-weight: 500;
    margin-top: 2rem;
  }
  .slider-services .description,
  .slider-ventajas .description {
    -webkit-line-clamp: 6;
    /* number of lines to show */
  }
  .slider-services .icon,
  .slider-ventajas .icon {
    height: 7rem;
    width: 7rem;
  }
  form label,
  form input,
  form textarea {
    font-size: 0.8333rem !important;
  }
  form .form-control {
    background-color: transparent;
  }
  #slider-destacados .section-logo,
  #encofrados .section-logo {
    scale: 0.8;
  }
  #sobre-sten .header,
  #projects .header,
  #encofrados .header,
  #products .header,
  #contact .header,
  #noticias .header,
  #servicios .header {
    padding: 0;
    width: 100%;
    height: auto;
  }
  #sobre-sten .header img,
  #projects .header img,
  #encofrados .header img,
  #products .header img,
  #contact .header img,
  #noticias .header img,
  #servicios .header img {
    width: 100%;
  }
  #sobre-sten .header-bg-img,
  #projects .header-bg-img,
  #encofrados .header-bg-img,
  #products .header-bg-img,
  #contact .header-bg-img,
  #noticias .header-bg-img,
  #servicios .header-bg-img {
    padding: 0;
    width: 100%;
    height: 400px;
    background-size: cover;
    background-position: center;
  }
  #sobre-sten .header-bg-img img,
  #projects .header-bg-img img,
  #encofrados .header-bg-img img,
  #products .header-bg-img img,
  #contact .header-bg-img img,
  #noticias .header-bg-img img,
  #servicios .header-bg-img img {
    display: none;
  }
  #sobre-sten .andamio2,
  #projects .andamio2,
  #encofrados .andamio2,
  #products .andamio2,
  #contact .andamio2,
  #noticias .andamio2,
  #servicios .andamio2 {
    margin-top: 0rem;
  }
  #showroom h1, #showroom .h1,
  #sobre-sten h1,
  #sobre-sten .h1 {
    color: #313131;
  }
  #showroom h2, #showroom .h2,
  #sobre-sten h2,
  #sobre-sten .h2 {
    font-size: 40px;
  }
  #showroom .value,
  #sobre-sten .value {
    font-weight: 500;
    font-family: Roboto, sans-serif;
  }
  #showroom .line-black,
  #sobre-sten .line-black {
    border-bottom: 3px solid #313131;
    width: 40px;
  }
  #showroom .area,
  #sobre-sten .area {
    font-family: Roboto, sans-serif;
    font-size: 1.5rem;
    padding-bottom: 20px;
  }
  #showroom .catalogo,
  #sobre-sten .catalogo {
    margin-left: -110px;
  }
  #showroom .catalogo img,
  #sobre-sten .catalogo img {
    max-width: 375px;
    width: 100%;
  }
  #showroom .sub-title,
  #sobre-sten .sub-title {
    font-size: 1.6rem;
    border-bottom: 1px solid black;
    width: 100%;
  }
  #showroom .desktop-screen,
  #sobre-sten .desktop-screen {
    background-color: #f4f4f4;
    border: 10px solid #f4f4f4;
    border-top-left-radius: 10px;
    border-top-right-radius: 10px;
    height: 0;
    overflow: hidden;
    position: relative;
    padding-bottom: 56.25%;
    /* 16/9 ratio */
  }
  #showroom .img-scroll,
  #sobre-sten .img-scroll {
    white-space: nowrap;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    -ms-overflow-style: -ms-autohiding-scrollbar;
  }
  #showroom .img-scroll img,
  #sobre-sten .img-scroll img {
    text-align: center;
    align-items: center;
    width: 270% !important;
  }
  #showroom .iMac,
  #sobre-sten .iMac {
    top: 0;
    left: 0;
    margin-top: -2px;
    z-index: 1;
  }
  #showroom .iMac img,
  #sobre-sten .iMac img {
    width: 100%;
  }
  #showroom video,
  #sobre-sten video {
    width: 100%;
  }
  #showroom .planet,
  #sobre-sten .planet {
    max-width: 300px;
  }
  #showroom .bg-valores,
  #sobre-sten .bg-valores {
    background-image: url("/img/sobre-sten/movil_sobre-sten-7.png");
    background-position: center center;
    background-size: cover;
    background-repeat: no-repeat;
    position: relative;
    width: 100%;
    z-index: 0;
  }
  #showroom .bg-valores h2, #showroom .bg-valores .h2,
  #sobre-sten .bg-valores h2,
  #sobre-sten .bg-valores .h2 {
    color: white;
    font-size: 40px;
    font-weight: 500;
    padding: 200px 15px 50px 15px;
  }
  #showroom .bg-valores .bg-opacity,
  #sobre-sten .bg-valores .bg-opacity {
    background-color: rgba(255, 255, 255, 0.5);
    padding: 30px 15px 15px 15px;
  }
  #showroom .slide-title .title {
    font-size: 36px;
  }
  #servicios {
    /* h1 {
        font-size: 60px;
        font-family: $font_family_main;
        line-height: 65px;
    } */
  }
  #servicios .header-video {
    height: 100vh;
    filter: brightness(0.7);
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%;
    position: absolute;
  }
  #servicios .header-title {
    font-size: 2rem;
    font-weight: 700;
  }
  #servicios h2, #servicios .h2 {
    font-size: 36px;
  }
  #servicios .br {
    border-radius: 30px;
  }
  #servicios .icono {
    height: 100px;
    width: 100px;
  }
  #servicios .video {
    background-color: #f4f4f4;
    height: 0;
    overflow: hidden;
    position: relative;
    padding-bottom: 56.25%;
    /* 16/9 ratio */
    margin: auto;
  }
  #servicios .video video {
    height: auto;
    filter: brightness(0.7);
    -o-object-fit: cover;
    object-fit: cover;
    width: 100% !important;
  }
  #servicios #proyectos .btn-red-slide,
  #servicios #alquiler .btn-red-slide,
  #servicios #venta .btn-red-slide,
  #servicios #logistica .btn-red-slide,
  #servicios #asesoramiento .btn-red-slide,
  #servicios #montaje .btn-red-slide,
  #servicios #mantenimiento .btn-red-slide {
    background-color: #D70D17;
    border-radius: 30px !important;
    color: white;
    font-size: 15px;
    /* padding: 0.2rem 0.75rem; */
    margin-top: 1rem;
  }
  #servicios #proyectos .btn-red-slide:hover,
  #servicios #alquiler .btn-red-slide:hover,
  #servicios #venta .btn-red-slide:hover,
  #servicios #logistica .btn-red-slide:hover,
  #servicios #asesoramiento .btn-red-slide:hover,
  #servicios #montaje .btn-red-slide:hover,
  #servicios #mantenimiento .btn-red-slide:hover {
    background-color: #f40d18 !important;
  }
  #servicios #proyectos .bg-white,
  #servicios #alquiler .bg-white,
  #servicios #venta .bg-white,
  #servicios #logistica .bg-white,
  #servicios #asesoramiento .bg-white,
  #servicios #montaje .bg-white,
  #servicios #mantenimiento .bg-white {
    border-radius: 15px;
  }
  #projects {
    /* .dot-circle {
        border: 2px solid #707070 !important;
    } */
  }
  #projects .header-title {
    font-family: Roboto, sans-serif;
    font-size: 50px;
    font-weight: 500;
  }
  #projects .project .category {
    font-family: Roboto, sans-serif;
    font-size: 1rem;
    font-weight: 200;
  }
  #projects .project .project-description {
    font-family: Roboto, sans-serif;
    font-size: 1.6rem;
    font-weight: 400;
  }
  #projects .project .link {
    color: #D70D17;
    font-family: Roboto, sans-serif;
    text-decoration: none;
    font-size: 0.9rem;
  }
  #projects .project .btn-outline-black {
    font-size: 0.8125rem;
    padding: 2px 10px 2px 10px;
  }
  #projects .project .arrow {
    border: solid #D70D17;
    border-width: 0 1.5px 1.5px 0;
    display: inline-block;
    padding: 4px;
  }
  #projects .project .right {
    transform: rotate(-45deg);
    -webkit-transform: rotate(-45deg);
  }
  #projects .project .left {
    transform: rotate(135deg);
    -webkit-transform: rotate(135deg);
  }
  #projects .project .up {
    transform: rotate(-135deg);
    -webkit-transform: rotate(-135deg);
  }
  #projects .project .down {
    transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
  }
  #projects .line-separator-gray {
    height: 8px;
    background-color: #F7F7F7;
    width: 100%;
  }
  #projects .sub-nav-menu {
    overflow: hidden;
  }
  #projects .scroll {
    background-color: rgba(255, 255, 255, 0.95);
    white-space: nowrap;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    -ms-overflow-style: -ms-autohiding-scrollbar;
  }
  #projects .scroll .active {
    border: 2px solid #D70D17 !important;
  }
  #projects .scroll::-webkit-scrollbar {
    display: none;
  }
  #projects .dot-circle,
  #projects .dot-circle-modal {
    display: inline-block;
    vertical-align: middle;
    width: 65px;
    height: 65px;
    border-radius: 160px;
    margin-right: 8px;
    margin-left: 8px;
  }
  #projects .dot-circle .dot-text,
  #projects .dot-circle-modal .dot-text {
    font-family: Roboto, sans-serif;
    font-size: 0.7rem !important;
    text-overflow: Ellipsis;
    /* will make [...] at the end */
    width: 60px;
    /* change to your preferences */
    white-space: nowrap;
    /* paragraph to one line */
    overflow: hidden;
    /* older browsers */
  }
  #projects .dot-circle-modal {
    border: 2px solid #D70D17 !important;
  }
  #projects .nav-item {
    display: inline-block;
    text-align: center;
    vertical-align: middle;
  }
  #projects .nav-item a:link,
  #projects .nav-item a:visited,
  #projects .nav-item a:active,
  #projects .nav-item .btn-project-modal {
    color: #2E2D2D;
    font-size: 0.75rem;
    text-decoration: none;
  }
  #projects .nav-item img {
    width: 61px;
    height: 61px;
    border-radius: 160px;
    border: 6px solid transparent;
    -o-object-fit: cover;
       object-fit: cover;
    -o-object-position: center;
       object-position: center;
  }
  #projects .project-modal-item {
    background-color: #393939;
    background-position: center center;
    background-size: cover;
    background-repeat: no-repeat;
    height: 100vh;
    left: 0;
    position: fixed;
    overflow-x: hidden;
    overflow-y: auto;
    outline: 0;
    top: 0;
    width: 100%;
    z-index: 1053;
    /* #line-slide {
        div[class*=line-slide] {
            border-top: 2px solid rgba(255, 255, 255, 0.5);
            display: inline-block;
            padding: 5px;
            text-align: center;
        }

        .active {
            border-top: 2px solid rgb(255, 255, 255) !important;
        }
    } */
  }
  #projects .project-modal-item .index-buttons {
    z-index: 1099;
  }
  #projects .project-modal-item .index-button-project {
    z-index: 1199;
  }
  #projects .project-modal-item .index-button-project img {
    z-index: 1999;
    position: relative;
  }
  #projects .project-modal-item .container {
    height: 100vh;
  }
  #projects .project-modal-item .content-center {
    height: 75vh;
  }
  #projects .project-modal-item .line-gray {
    background-color: #DEDEDE;
    bottom: 0;
    height: 24px;
    position: fixed;
    width: 100%;
  }
  #projects .project-modal-item .project-detail {
    bottom: 0;
    position: fixed;
  }
  #projects .project-modal-item .project-modal-close {
    bottom: 15px;
    color: white;
    cursor: pointer;
    position: fixed;
    right: 20px;
  }
  #projects .project-modal-item .project-modal-close div {
    height: 20px;
    width: 20px;
    background-color: transparent;
    border-radius: 5px;
    position: relative;
  }
  #projects .project-modal-item .project-modal-close div:after {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    content: "×";
    font-size: 2.5rem;
    color: #FFF;
    line-height: 0px;
    text-align: center;
  }
  #projects .project-modal-item .title {
    color: white;
    display: inline-block;
    font-weight: bold;
  }
  #projects .project-modal-item .category {
    color: white;
    font-size: 1.2rem;
    font-weight: 200;
  }
  #projects .project-modal-item .description {
    color: white;
    font-size: 1.5rem;
    line-height: 1.8rem;
  }
  #projects .project-modal-item .btn-red,
  #projects .project-modal-item .btn-outline-white {
    font-size: 0.8rem;
    padding: 3px 15px 3px 15px;
  }
  #projects .project-modal-item .swiper-left {
    background-color: transparent;
    height: 100vh;
    position: absolute;
    left: 0;
    z-index: 0;
  }
  #projects .project-modal-item .swiper-right {
    background-color: transparent;
    height: 100vh;
    position: absolute;
    right: 0;
    z-index: 0;
  }
  #projects #filter {
    margin: 2rem 0;
  }
  #projects #filter #sections, #projects #filter #section-filter-items {
    margin: 0rem;
    padding: 0rem;
  }
  #encofrados {
    /* .header-title {
        font-size: 36px;
        font-weight: 700;
        font-family: $font_family_main;
    } */
    /*
    d-flex > agustin
    img {
        width: 100%;
    } */
  }
  #encofrados .subtitle {
    font-weight: bold;
  }
  #encofrados .bg-white {
    border-radius: 10px;
  }
  #encofrados .icono {
    height: 100px;
    width: 100px;
  }
  #encofrados .logo {
    max-height: 2rem;
    max-width: 13rem;
  }
  #encofrados .link {
    color: #D70D17;
    font-family: Roboto, sans-serif;
    text-decoration: none;
  }
  #encofrados .arrow {
    border: solid #D70D17;
    border-width: 0 1.5px 1.5px 0;
    display: inline-block;
    padding: 4px;
  }
  #encofrados .triangulo {
    display: inline-block;
    width: 0;
    height: 0;
    border-left: 8px solid white;
    border-top: 5px solid transparent;
    border-bottom: 5px solid transparent;
    margin-left: 5px;
  }
  #encofrados .right {
    transform: rotate(-45deg);
    -webkit-transform: rotate(-45deg);
  }
  #encofrados .left {
    transform: rotate(135deg);
    -webkit-transform: rotate(135deg);
  }
  #encofrados .up {
    transform: rotate(-135deg);
    -webkit-transform: rotate(-135deg);
  }
  #encofrados .down {
    transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
  }
  #encofrados h2, #encofrados .h2 {
    font-size: 36px;
  }
  #encofrados .br {
    border-radius: 30px;
  }
  #encofrados .detail-desc {
    color: #707070;
  }
  #encofrados .detail-desc .category {
    color: #707070;
    font-family: Roboto, sans-serif;
  }
  #encofrados .detail-desc .value {
    color: #313131;
    font-family: Roboto, sans-serif;
    font-size: 2.8rem;
    font-weight: bold;
    line-height: 2.8rem;
  }
  #encofrados .detail-desc .unit {
    color: #313131;
    font-family: Roboto, sans-serif;
    font-size: 1rem;
    font-weight: bold;
  }
  #encofrados .detail-desc .detail {
    color: #707070;
    font-family: Roboto, sans-serif;
  }
  #encofrados .detail-desc .line-black {
    border-bottom: 3px solid #313131;
    width: 40px;
  }
  #encofrados .product-img {
    margin: auto;
    max-width: 215px;
    padding-top: 15px;
    text-align: center;
  }
  #encofrados .product-img img {
    width: 100%;
  }
  #encofrados #especiales {
    /* h2 {
        font-family: $font_family_main;
    } */
  }
  #encofrados #especiales .btn-red-slide {
    background-color: #D70D17;
    border-radius: 30px !important;
    color: white;
    font-size: 15px;
    /* padding: 0.2rem 0.75rem; */
    margin-top: 1rem;
  }
  #encofrados #especiales .btn-red-slide:hover {
    background-color: #f40d18 !important;
  }
  #encofrados #especiales .bg-white {
    border-radius: 15px;
  }
  #encofrados .slide-detalles {
    overflow: hidden;
  }
  #encofrados .slide-detalles .scroll {
    white-space: nowrap;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    -ms-overflow-style: -ms-autohiding-scrollbar;
  }
  #encofrados .slide-detalles .scroll p,
  #encofrados .slide-detalles .scroll h2,
  #encofrados .slide-detalles .scroll .h2 {
    white-space: normal;
  }
  #encofrados .slide-detalles .scroll .description {
    width: 100%;
  }
  #encofrados .slide-detalles .scroll .section {
    display: inline-block;
    margin-right: 15px;
    padding: 80px 20px 80px 20px;
    width: 80%;
  }
  #encofrados .slide-detalles .scroll::-webkit-scrollbar {
    display: none;
  }
  #encofrados .carousel-header {
    padding: 0;
  }
  #encofrados .carousel {
    overflow: hidden;
  }
  #encofrados .carousel .opacity {
    opacity: 0.5;
  }
  #encofrados .carousel .scroll {
    white-space: nowrap;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    -ms-overflow-style: -ms-autohiding-scrollbar;
  }
  #encofrados .carousel .scroll p {
    white-space: normal;
  }
  #encofrados .carousel .scroll .carousel-section {
    cursor: pointer;
    display: inline-block;
    margin-right: 15px;
    width: 18%;
  }
  #encofrados .carousel .scroll .carousel-section img {
    border-radius: 10px;
    max-height: 74px;
    width: 100%;
  }
  #encofrados .carousel .scroll::-webkit-scrollbar {
    display: none;
  }
  #encofrados .catalogo img {
    max-width: 230px;
    width: 100%;
  }
  #encofrados .slider-products,
  #encofrados .products-grid {
    min-height: 450px;
  }
  #encofrados .header {
    height: 80vh;
  }
  #encofrados .header .header-custom-img {
    width: 100% !important;
    height: 100% !important;
    -o-object-position: center;
       object-position: center;
    -o-object-fit: cover;
       object-fit: cover;
  }
  #noticias {
    margin-top: 0px;
  }
  #noticias .noticia .arrow {
    border: solid #D70D17;
    border-width: 0 1.5px 1.5px 0;
    display: inline-block;
    padding: 4px;
  }
  #noticias .noticia .right {
    transform: rotate(-45deg);
    -webkit-transform: rotate(-45deg);
  }
  #noticias .noticia .left {
    transform: rotate(135deg);
    -webkit-transform: rotate(135deg);
  }
  #noticias .noticia .up {
    transform: rotate(-135deg);
    -webkit-transform: rotate(-135deg);
  }
  #noticias .noticia .down {
    transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
  }
  #noticias .line-separator-gray {
    height: 8px;
    background-color: #F7F7F7;
    width: 100%;
  }
  #noticias .sub-nav-menu {
    overflow: hidden;
  }
  #contact .mt-main {
    margin-top: 10px;
  }
  #contact .my-form {
    margin-top: 50px;
    margin-bottom: 50px;
  }
  #contact h1, #contact .h1 {
    color: #313131;
    text-transform: uppercase;
  }
  #contact .bg-white {
    border-radius: 10px;
  }
  #contact .img-scroll {
    white-space: nowrap;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    -ms-overflow-style: -ms-autohiding-scrollbar;
  }
  #contact .img-scroll img {
    text-align: center;
    align-items: center;
    width: 200% !important;
  }
  #contact .point-hover-la {
    height: 20px;
    width: 20px;
    margin-left: 20%;
    margin-top: 43%;
  }
  #contact .point-hover-mx {
    height: 20px;
    width: 20px;
    margin-left: 25%;
    margin-top: 43%;
  }
  #contact .point-hover-col {
    height: 20px;
    width: 20px;
    margin-left: 43%;
    margin-top: 54%;
  }
  #contact .point-hover-pt {
    height: 20px;
    width: 20px;
    margin-left: 90%;
    margin-top: 26%;
  }
  #contact .point-hover-es {
    height: 20px;
    width: 20px;
    margin-left: 98%;
    margin-top: 24%;
  }
  #contact .point-hover-pol {
    height: 20px;
    width: 20px;
    margin-left: 111%;
    margin-top: 13%;
  }
  #contact .slide {
    line-height: 1.3rem;
    overflow: hidden;
  }
  #contact .slide .section {
    border-radius: 10px;
    height: 100%;
    width: auto;
    min-width: 27%;
  }
  #contact .slide .scroll {
    cursor: grab;
    white-space: nowrap;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    -ms-overflow-style: -ms-autohiding-scrollbar;
    display: flex;
  }
  #customize-photos .tns-item img {
    height: 250px;
    min-width: 250px;
    max-width: 450px;
    -o-object-fit: cover;
       object-fit: cover;
    cursor: pointer;
    scale: 1;
  }
  #gallery-mosaic {
    grid-auto-rows: 250px;
  }
}
@media (max-width: 560px) {
  html {
    font-size: 16px;
  }
  h1, .h1,
  #products h1,
  #encofrados h1,
  #sobre-sten h1 {
    font-family: Roboto, sans-serif !important;
    font-size: 45px !important;
    font-weight: 500 !important;
  }
  h2, .h2,
  #products h2,
  #andamios h2,
  #encofrados h2,
  #sobre-sten h2 {
    font-family: Roboto, sans-serif !important;
    font-size: 35px !important;
    font-weight: 500 !important;
  }
  p {
    font-size: 16px;
  }
  ul li {
    font-size: 16px;
  }
  ul li > span {
    font-size: 16px !important;
  }
  #products p,
  #encofrados p,
  #sobre-sten p {
    font-size: 16px;
  }
  #products ul li,
  #encofrados ul li,
  #sobre-sten ul li {
    font-size: 16px;
  }
  #products ul li > span,
  #encofrados ul li > span,
  #sobre-sten ul li > span {
    font-size: 16px !important;
  }
  .sub-nav-menu .logo-sm-none {
    display: none;
  }
  .px-102 {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
  /* #sub-menu .logo {
      max-height: 24px;
  } */
  #products {
    /* h1{
        font-size: 35px;
    } */
    /* h2{
        font-size: 28px;
        line-height: 110%;
    } */
  }
  #products .slide-title {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    opacity: 1;
  }
  #products .slide-title .logo {
    height: 55px;
    margin-bottom: 60px;
  }
  #products .slide-title .product {
    width: 100%;
  }
  #products #fotos h2 .with_logo, #products #fotos .h2 .with_logo {
    font-size: 35px !important;
  }
  #slider-ventajas .tns-item h3, #slider-ventajas .tns-item .h3 {
    font-family: Roboto, sans-serif !important;
    font-weight: 500;
  }
  #showroom .slide-title .title,
  #showroom #showroom-form form {
    width: 100%;
  }
  #gallery-mosaic {
    grid-auto-rows: 350px;
    grid-template-columns: repeat(1, 1fr);
  }
  #gallery-mosaic .gallery-item:nth-child(1) {
    grid-row-start: span 1;
  }
  #project .py-186 {
    padding-top: 65px;
  }
  #andamios .first-spec p {
    font-size: 18px;
  }
}
@media (max-width: 400px) {
  #products #especificaciones .especificacion .esp-content .text-abs,
  #andamios #especificaciones .especificacion .esp-content .text-abs {
    clear: both;
    display: block;
    left: 0;
    margin-top: 20px;
    position: relative;
    width: 100%;
  }
  #products #especificaciones .especificacion-v2,
  #andamios #especificaciones .especificacion-v2 {
    font-size: 16px;
  }
  #products #especificaciones .especificacion-v2 .df-2,
  #andamios #especificaciones .especificacion-v2 .df-2 {
    flex-direction: column;
    flex-wrap: wrap;
    align-content: flex-start;
  }
  #products #especificaciones .especificacion-v2 .df-3b,
  #andamios #especificaciones .especificacion-v2 .df-3b {
    width: 100%;
    max-width: 100%;
    padding-top: 0.5em;
  }
  #products #especificaciones .especificacion-v2 .df-3a,
  #andamios #especificaciones .especificacion-v2 .df-3a {
    width: 100%;
  }
  #products #especificaciones .especificacion-v2 .df-3a-full .qt-custom,
  #andamios #especificaciones .especificacion-v2 .df-3a-full .qt-custom {
    font-size: 2.5em;
  }
}
.custom-title {
  line-height: 1.1 !important;
  font-family: Roboto, sans-serif !important;
  margin-bottom: 0.5rem !important;
  margin-top: 0 !important;
  font-size: 2rem !important;
}

.cursor-zoom-in {
  cursor: zoom-in;
}

.cursor-left-right {
  cursor: ew-resize;
}

.cursor-hand-open {
  cursor: grab;
}

/**
 * Mapa, con pin incluido
 */
.custom-map .bg-red {
  background: #D70D17 0% 0% no-repeat padding-box;
  border-radius: 13px;
}
.custom-map .responsive-width {
  width: -moz-max-content;
  width: max-content;
}
.custom-map .transition-500 {
  transition: 500ms;
}
.custom-map .opacity-0 {
  opacity: 0;
}
.custom-map .custom-pin {
  height: 14px;
  width: 14px;
  z-index: 99;
}
.custom-map .custom-pin img {
  width: 1.3em;
  height: 1.3em;
  transform: translate(-0.25em, -0.25em);
}
.custom-map [data-pin] {
  transform: translate(-45%, -120%);
}

#standard-carousel .carousel-inner .carousel-item .item-bg .item-data .tag {
  border: 1px solid #FFF;
  border-radius: 20px;
  color: #FFF;
  font-size: 15px;
  margin-right: 20px;
  padding: 14px 20px;
  display: inline-block;
}

#standard-carousel .carousel-inner .carousel-item .item-bg .item-data a.link-project {
  color: #FFF;
  display: block;
  text-decoration: none;
}

#standard-carousel .carousel-inner .carousel-item .item-bg .item-data .tag-product {
  background-color: #D70D17;
  border: 1px solid #D70D17;
  border-radius: 20px;
  color: #FFF;
  font-size: 15px;
  margin-right: 20px;
  padding: 14px 20px;
  text-decoration: none;
}

#slider-puentes-viaductos-y-tuneles {
  gap: 24px;
}

/* .col-md-3 {
    flex: 0 0 auto;
    width: 25%;
} */
.tabla {
  border: 1px solid #999;
  width: 100%;
}
.tabla td {
  border: 1px solid #999;
  font-size: 15px;
  padding: 5px;
  vertical-align: middle;
}
.tabla td.td-link {
  text-align: center;
  width: 100px;
}
.tabla td b {
  font-size: 15px;
  line-height: 120%;
}

#modalCarouselObras .modal-header-tools,
#modalImageBox .modal-header-tools {
  position: absolute;
  top: 5px;
  right: 5px;
  z-index: 1060;
}
#modalCarouselObras .modal-header-tools .close,
#modalImageBox .modal-header-tools .close {
  background-color: rgb(255, 255, 255);
  border-radius: 50%;
  height: 30px;
  text-align: center;
  width: 30px;
  opacity: 0.75;
}
#modalCarouselObras .modal-header-tools .close img,
#modalImageBox .modal-header-tools .close img {
  line-height: 30px;
  width: 18px;
  position: relative;
  bottom: 0px;
  vertical-align: top;
  height: 30px;
}
#modalCarouselObras .modal-body .main-image,
#modalImageBox .modal-body .main-image {
  height: auto;
  width: 100%;
  -o-object-fit: contain;
     object-fit: contain;
  border-radius: 0.3rem;
  max-height: 90vh;
}
@media (max-width: 560px) {
  #modalCarouselObras .modal-header-tools,
  #modalImageBox .modal-header-tools {
    position: absolute;
    top: 5px;
    right: 5px;
    z-index: 1060;
  }
  #modalCarouselObras .modal-header-tools .close,
  #modalImageBox .modal-header-tools .close {
    background-color: rgb(255, 255, 255);
    border-radius: 50%;
    height: 30px;
    text-align: center;
    width: 30px;
    opacity: 0.75;
  }
  #modalCarouselObras .modal-header-tools .close img,
  #modalImageBox .modal-header-tools .close img {
    line-height: 30px;
    width: 18px;
    position: relative;
    bottom: 2px;
  }
}

#empleo-sten form .form-empleo .campo-form {
  margin: 15px 0;
  padding: 10px 0;
}
#empleo-sten form .form-empleo .campo-form select, #empleo-sten form .form-empleo .campo-form input {
  width: 100%;
  height: 30px;
  border-radius: 5px;
}
#empleo-sten form .form-empleo .campo-form-1 {
  padding: 10px calc(var(--bs-gutter-x) * 0.5);
}
#empleo-sten form .form-empleo .campo-form-1 input, #empleo-sten form .form-empleo .campo-form-1 select {
  width: 100%;
  height: 30px;
  border-radius: 5px;
}
#empleo-sten form .btn-submit {
  width: 40%;
  margin: auto;
}
#empleo-sten form .btn-submit input {
  padding: 5px;
}
#empleo-sten form .form-check input {
  margin-bottom: 4px;
  margin-left: 2px;
}
#empleo-sten .contact-banner {
  background-image: url("/img/contact/bg_banner.jpg");
  background-position: center center;
  background-size: cover;
  background-repeat: no-repeat;
  position: relative;
  width: 100%;
  z-index: 0;
}
#empleo-sten .contact-banner h2, #empleo-sten .contact-banner .h2 {
  color: #242021;
  font-size: 50px;
  font-weight: 500;
  line-height: 105%;
}
#empleo-sten .contact-banner .bg-opacity {
  background-color: rgba(255, 255, 255, 0.8);
  padding: 30px 15px 15px 15px;
}
#empleo-sten .contact-banner .h-800px {
  min-height: 800px;
}
#empleo-sten .contact-banner .content-footer {
  font-size: 1.2rem;
}

#canal-etico form .form-etico .campo-form {
  margin: 15px 0;
}
#canal-etico form .form-etico .campo-form select, #canal-etico form .form-etico .campo-form input {
  width: 100%;
  height: 30px;
  border-radius: 5px;
}
#canal-etico form .form-etico .campo-form #si, #canal-etico form .form-etico .campo-form #no {
  width: 15px;
  height: 15px;
}
#canal-etico form .form-etico .campo-form #no {
  margin-left: 20px;
}
#canal-etico form .form-etico .actofecha label {
  width: 101%;
}
#canal-etico form .btn-submit {
  width: 40%;
  margin: auto;
}
#canal-etico form .btn-submit input {
  padding: 5px;
}
#canal-etico form .form-check input {
  margin-bottom: 4px;
  margin-left: 2px;
}
#canal-etico .contact-banner {
  background-image: url("/img/contact/bg_banner.jpg");
  background-position: center center;
  background-size: cover;
  background-repeat: no-repeat;
  position: relative;
  width: 100%;
  z-index: 0;
}
#canal-etico .contact-banner h2, #canal-etico .contact-banner .h2 {
  color: #242021;
  font-size: 50px;
  font-weight: 500;
  line-height: 105%;
}
#canal-etico .contact-banner .bg-opacity {
  background-color: rgba(255, 255, 255, 0.8);
  padding: 30px 15px 15px 15px;
}
#canal-etico .contact-banner .h-800px {
  min-height: 800px;
}
#canal-etico .contact-banner .content-footer {
  font-size: 1.2rem;
}

.accordion-landings .accordion-line {
  text-decoration: none;
  border-bottom: 1px solid #707070;
}
.accordion-landings .accordion-line .accordion-icon {
  width: 1em;
  text-align: center;
}
.accordion-landings .accordion-line.collapsed .accordion-icon.active,
.accordion-landings .accordion-line .accordion-icon.inactive {
  display: block;
}
.accordion-landings .accordion-line .accordion-icon.active, .accordion-landings .accordion-line.collapsed .accordion-icon.inactive {
  display: none;
}

.normalize-line-height {
  line-height: 135%;
}
.normalize-line-height p, .normalize-line-height div, .normalize-line-height span {
  line-height: 135%;
  font-family: Roboto, sans-serif;
}

.user-auth-and-is-admin .can-edit:not(.trumbowyg-editor):empty:before {
  content: "Contenido editable ✏️";
  text-align: center;
  width: 100%;
  display: block;
  opacity: 0.75;
}

#legal h2, #legal .h2 {
  font-size: 50px;
  font-family: Roboto, sans-serif;
  font-weight: 500;
}

form.form-base div.form-group > label, form.form-base div.form-group.row > div[class*=col-] > label {
  display: none;
}

.force-h2 {
  font-size: 50px;
  font-weight: 500;
  line-height: 105%;
  font-family: Roboto, sans-serif !important;
}

/*
 * Cookies styles
 * https://playground.cookieconsent.orestbida.com/
 */
.cc-main, #cc-main {
  --cc-btn-primary-bg: #d70d17;
  --cc-btn-primary-color: var(--cc-bg);
  --cc-btn-primary-border-color: var(--cc-bg);
  --cc-btn-primary-hover-border-color: #f40d18;
  --cc-btn-primary-hover-bg: #f40d18;
}

.text-balance {
  text-wrap: balance;
}

@media (max-width: 768px) {
  .d-none-breakpoint br {
    display: none;
  }
}

/**
 * Esto es para que por defecto, los textos no se vean tan pegados
 */
.row:not(p) {
  line-height: 1.5;
}

/** Checkers of navigators **/
.is-firefox .btn-custom-red-small-safari-align {
  --btn-translate-y:50%!important;
}
.is-firefox h2 .with_img, .is-firefox .h2 .with_img {
  transform: translateY(2px);
}
@media (max-width: 768px) {
  .is-firefox h2 .with_img, .is-firefox .h2 .with_img {
    height: 38px !important;
  }
}

.is-chrome .btn-custom-red-small-safari-align {
  --btn-translate-y:50%!important;
}
.is-chrome h2 .with_img, .is-chrome .h2 .with_img {
  height: 48px;
}
@media (min-width: 768px) {
  .is-chrome h2 .with_img, .is-chrome .h2 .with_img {
    transform: translateY(2px);
  }
}

.is-not-chrome .btn-custom-red:not(.not-hack-btn-custom-red) span, .is-safari .btn-custom-red:not(.not-hack-btn-custom-red) span {
  line-height: 2rem !important;
}

.is-safari {
  /** 
   * Axiomatic CSS and Lobotomized Owls
   * https://alistapart.com/article/axiomatic-css-and-lobotomized-owls/ 
   **/
}
.is-safari .slider-products.full-w-card > * + *,
.is-safari .slider-services.full-w-card > * + * {
  margin-left: 1.5rem;
}
.is-safari h2 .with_img, .is-safari .h2 .with_img {
  height: 48px;
}
@media (min-width: 768px) {
  .is-safari h2 .with_img, .is-safari .h2 .with_img {
    transform: translateY(2px);
  }
}

.is-ios .btn-custom-red:not(.not-hack-btn-custom-red) span {
  line-height: 2.5rem !important;
}
.is-ios input::-webkit-input-placeholder {
  transform: translateY(1px);
}
.is-ios h2 .with_img, .is-ios .h2 .with_img {
  height: 36px;
  transform: translateY(2px);
}

.is-safari #filter .filter-button .filter-circle, .is-ios #filter .filter-button .filter-circle {
  transform: translateY(calc(var(--size-button) / 6 * -1));
}

.is-not-chrome #andamios #especificaciones .especificacion-v2 .df-4-row .size-custom,
.is-not-chrome #products #especificaciones .especificacion-v2 .df-4-row .size-custom, .is-ios #andamios #especificaciones .especificacion-v2 .df-4-row .size-custom,
.is-ios #products #especificaciones .especificacion-v2 .df-4-row .size-custom, .is-safari #andamios #especificaciones .especificacion-v2 .df-4-row .size-custom,
.is-safari #products #especificaciones .especificacion-v2 .df-4-row .size-custom {
  padding-bottom: 0.9em !important;
}
.is-not-chrome .btn-force-align span, .is-ios .btn-force-align span, .is-safari .btn-force-align span {
  display: block;
  transform: translateY(2px);
}
.is-not-chrome .btn-force-align-small span, .is-ios .btn-force-align-small span, .is-safari .btn-force-align-small span {
  display: block;
  transform: translateY(1px);
}
.is-not-chrome input::-webkit-input-placeholder,
.is-not-chrome footer input.form-control::-webkit-input-placeholder, .is-ios input::-webkit-input-placeholder,
.is-ios footer input.form-control::-webkit-input-placeholder, .is-safari input::-webkit-input-placeholder,
.is-safari footer input.form-control::-webkit-input-placeholder {
  line-height: unset !important;
}
.is-not-chrome .btn-custom-red.btn-big, .is-ios .btn-custom-red.btn-big, .is-safari .btn-custom-red.btn-big {
  line-height: 46px !important;
}

/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3NzL2FwcC5jc3MiLCJtYXBwaW5ncyI6IjtBQUFBLGdCQUFnQjtBQUFoQjtBQ0FBO0VBQ0k7QURJSjs7QUNEQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FESUo7O0FDRkE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBREtKOztBQ0ZBO0VBQ0k7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUNBO0FESUo7O0FDQUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtBREdKOztBQ0VJO0VBQ0k7QURDUjtBQ0NJO0VBQ0k7RUFDQTtBRENSO0FDQ0k7RUFDSTtFQUNBO0FEQ1I7O0FDTVE7RUFDSTtBREhaO0FDS1E7RUFDSTtBREhaOztBQ1NBO0VBQ0k7SUFDSTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFRE5OO0VDT007SUFDSTtFRExWO0VDT007SUFDSTtFRExWO0VDT007SUFDSTtJQUNBO0lBQ0E7SUFDQTtFRExWO0VDT1U7SUFDSTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0VETGQ7RUNPVTtJQUNJO0VETGQ7RUNPVTtJQUNJO0lBQ0E7SUFDQTtJQUNBO0VETGQ7RUNPVTtJQUNJO0VETGQ7RUNPVTtJQUNJO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RURMZDtFQ1FNO0lBQ0k7SUFDQTtJQUNBO0lBQ0E7SUFDQTtFRE5WO0VDUVU7SUFDSTtJQUNBO0VETmQ7RUNPYztJQUNJO0VETGxCO0VDUVU7SUFDSTtJQUNBO0lBQ0E7RUROZDtFQ1FVO0lBQ0k7SUFDQTtFRE5kO0VDUVU7SUFDSTtFRE5kO0VDUVU7SUFDSTtJQUNBO0VETmQ7RUNTTTtJQUNJO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RURQVjtFQ1dFO0lBQ0k7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0VEVE47RUNXTTtJQUNJO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RURUVjtFQ1VVO0lBQ0k7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0VEUmQ7RUNZRTtJQUNJO0lB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a2pCUjtBTTlzQkk7RUU1Qko7SUYrTFE7RU4raUJOO0FBQ0Y7O0FRMXVCQTtFRitLTSxtQkFMSTtBTm9rQlY7O0FRenVCQTtFRjBLTSxpQkFMSTtBTndrQlY7O0FRbHVCQTtFQUNFO0VBQ0EsbUJDd1YwQjtBVDZZNUI7O0FRM3RCQTtFQUNFO1VBQUE7RUFDQTtFQUNBO1VBQUE7QVI4dEJGOztBUXh0QkE7RUFDRTtFQUNBO0VBQ0E7QVIydEJGOztBUXJ0QkE7O0VBRUU7QVJ3dEJGOztBUXJ0QkE7OztFQUdFO0VBQ0E7QVJ3dEJGOztBUXJ0QkE7Ozs7RUFJRTtBUnd0QkY7O0FRcnRCQTtFQUNFLGdCQzZiNEI7QVQyUjlCOztBUW50QkE7RUFDRTtFQUNBO0FSc3RCRjs7QVFodEJBO0VBQ0U7QVJtdEJGOztBUTNzQkE7O0VBRUUsbUJDc2E0QjtBVHdTOUI7O0FRdHNCQTtFRjZFTSxrQkFMSTtBTmtvQlY7O0FRbnNCQTtFQUNFLGlCQ2lmNEI7RURoZjVCO0FSc3NCRjs7QVE3ckJBOztFQUVFO0VGeURJLGlCQUxJO0VFbERSO0VBQ0E7QVJnc0JGOztBUTdyQkE7RUFBTTtBUmlzQk47O0FRaHNCQTtFQUFNO0FSb3NCTjs7QVEvckJBO0VBQ0U7RUFDQSwwQkNpTndDO0FUaWYxQztBUWhzQkU7RUFDRTtBUmtzQko7O0FRdnJCRTtFQUVFO0VBQ0E7QVJ5ckJKOztBUWxyQkE7Ozs7RUFJRSxxQ0NpVjRCO0VIbFV4QixjQUxJO0FONHFCVjs7QVE5cUJBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUZHSSxrQkFMSTtBTm9yQlY7QVE3cUJFO0VGRkksa0JBTEk7RUVTTjtFQUNBO0FSK3FCSjs7QVEzcUJBO0VGVE0sa0JBTEk7RUVnQlI7RUFDQTtBUjhxQkY7QVEzcUJFO0VBQ0U7QVI2cUJKOztBUXpxQkE7RUFDRTtFRnJCSSxrQkFMSTtFRTRCUix3QkNvNUNrQztFRG41Q2xDLHNDQ281Q2tDO0VDeHJEaEM7QVZpOUJKO0FRMXFCRTtFQUNFO0VGNUJFLGNBTEk7QU44c0JWOztBUWxxQkE7RUFDRTtBUnFxQkY7O0FRL3BCQTs7RUFFRTtBUmtxQkY7O0FRMXBCQTtFQUNFO0VBQ0E7QVI2cEJGOztBUTFwQkE7RUFDRSxtQkN3WDRCO0VEdlg1QixzQkN1WDRCO0VEdFg1QixnQ0N3WjRCO0VEdlo1QjtBUjZwQkY7O0FRdHBCQTtFQUVFO0VBQ0E7QVJ3cEJGOztBUXJwQkE7Ozs7OztFQU1FO0VBQ0E7RUFDQTtBUndwQkY7O0FRaHBCQTtFQUNFO0FSbXBCRjs7QVE3b0JBO0VBRUU7QVIrb0JGOztBUXZvQkE7RUFDRTtBUjBvQkY7O0FRcm9CQTs7Ozs7RUFLRTtFQUNBO0VGM0hJLGtCQUxJO0VFa0lSO0FSd29CRjs7QVFwb0JBOztFQUVFO0FSdW9CRjs7QVFsb0JBO0VBQ0U7QVJxb0JGOztBUWxvQkE7RUFHRTtBUm1vQkY7QVFob0JFO0VBQ0U7QVJrb0JKOztBUTNuQkE7RUFDRTtBUjhuQkY7O0FRdG5CQTs7OztFQUlFO0FSeW5CRjtBUXRuQkk7Ozs7RUFDRTtBUjJuQk47O0FRcG5CQTtFQUNFO0VBQ0E7QVJ1bkJGOztBUWxuQkE7RUFDRTtBUnFuQkY7O0FRM21CQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FSOG1CRjs7QVF0bUJBO0VBQ0U7RUFDQTtFQUNBO0VBQ0EscUJDZ040QjtFSGhhdEI7RUVtTk47QVJ3bUJGO0FNdjlCSTtFRXdXSjtJRnJNUTtFTnd6Qk47QUFDRjtBUTNtQkU7RUFDRTtBUjZtQko7O0FRdG1CQTs7Ozs7OztFQU9FO0FSeW1CRjs7QVF0bUJBO0VBQ0U7QVJ5bUJGOztBUWhtQkE7RUFDRTtFQUNBO0FSbW1CRjs7QVEzbEJBOzs7Ozs7O0NBQUE7QUFXQTtFQUNFO0FSMmxCRjs7QVF0bEJBO0VBQ0U7QVJ5bEJGOztBUWxsQkE7RUFDRTtFQUNBO0FScWxCRjs7QVFobEJBO0VBQ0U7QVJtbEJGOztBUTlrQkE7RUFDRTtBUmlsQkY7O0FRMWtCQTtFQUNFO0VBQ0E7QVI2a0JGOztBUXJrQkE7RUFDRTtBUndrQkY7O0FRaGtCQTtFQUNFO0FSbWtCRjs7QVd2b0NBO0VMbVFNLG1CQUxJO0VLNVBSLGdCRndvQjRCO0FUa2dCOUI7O0FXcm9DRTtFTGdRTTtFSzVQSixnQkZ5bkJrQjtFRXhuQmxCLGdCRndtQjBCO0FUOGhCOUI7QU12aUNJO0VLcEdGO0lMdVFNO0VOdzRCTjtBQUNGOztBV2hwQ0U7RUxnUU07RUs1UEosZ0JGeW5Ca0I7RUV4bkJsQixnQkZ3bUIwQjtBVHlpQjlCO0FNbGpDSTtFS3BHRjtJTHVRTTtFTm01Qk47QUFDRjs7QVczcENFO0VMZ1FNO0VLNVBKLGdCRnluQmtCO0VFeG5CbEIsZ0JGd21CMEI7QVRvakI5QjtBTTdqQ0k7RUtwR0Y7SUx1UU07RU44NUJOO0FBQ0Y7O0FXdHFDRTtFTGdRTTtFSzVQSixnQkZ5bkJrQjtFRXhuQmxCLGdCRndtQjBCO0FUK2pCOUI7QU14a0NJO0VLcEdGO0lMdVFNO0VOeTZCTjtBQUNGOztBV2pyQ0U7RUxnUU07RUs1UEosZ0JGeW5Ca0I7RUV4bkJsQixnQkZ3bUIwQjtBVDBrQjlCO0FNbmxDSTtFS3BHRjtJTHVRTTtFTm83Qk47QUFDRjs7QVc1ckNFO0VMZ1FNO0VLNVBKLGdCRnluQmtCO0VFeG5CbEIsZ0JGd21CMEI7QVRxbEI5QjtBTTlsQ0k7RUtwR0Y7SUx1UU07RU4rN0JOO0FBQ0Y7O0FXL3FDQTtFQ3ZERTtFQUNBO0FaMHVDRjs7QVcvcUNBO0VDNURFO0VBQ0E7QVordUNGOztBV2pyQ0E7RUFDRTtBWG9yQ0Y7QVdsckNFO0VBQ0Usb0JGa29CMEI7QVRrakI5Qjs7QVcxcUNBO0VMOE1NLGtCQUxJO0VLdk1SO0FYNnFDRjs7QVd6cUNBO0VBQ0UsbUJGaVVPO0VIMUhILG1CQUxJO0FOMitCVjtBVzFxQ0U7RUFDRTtBWDRxQ0o7O0FXeHFDQTtFQUNFO0VBQ0EsbUJGdVRPO0VIMUhILGtCQUxJO0VLdExSLGNGdEZTO0FUaXdDWDtBV3pxQ0U7RUFDRTtBWDJxQ0o7O0FhM3dDQTtFQ0lFO0VBR0E7QWR5d0NGOztBYTF3Q0E7RUFDRSxnQkp5akRrQztFSXhqRGxDLG1DSnlqRGtDO0VJeGpEbEM7RUhHRTtFSVJGO0VBR0E7QWRreENGOztBYXB3Q0E7RUFFRTtBYnN3Q0Y7O0FhbndDQTtFQUNFO0VBQ0E7QWJzd0NGOztBYW53Q0E7RVB5UE0sa0JBTEk7RU9sUFIsZ0NKNGlEa0M7QVR0U3BDOztBZXh5Q0U7Ozs7Ozs7RUNIQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBaEJxekNGOztBaUIvdkNJO0VGNUNFO0lBQ0UsZ0JOa2VlO0VUNjBCckI7QUFDRjtBaUJyd0NJO0VGNUNFO0lBQ0UsZ0JOa2VlO0VUazFCckI7QUFDRjtBaUIxd0NJO0VGNUNFO0lBQ0UsZ0JOa2VlO0VUdTFCckI7QUFDRjtBaUIvd0NJO0VGNUNFO0lBQ0UsaUJOa2VlO0VUNDFCckI7QUFDRjtBaUJweENJO0VGNUNFO0lBQ0UsaUJOa2VlO0VUaTJCckI7QUFDRjtBa0JwMUNBO0VBRUk7RUFBQTtFQUFBO0VBQUE7RUFBQTtFQUFBO0FsQjAxQ0o7O0FrQnIxQ0U7RUNOQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFDQTtBbkI4MUNGO0FrQjUxQ0k7RUNPRjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QW5CdzFDRjs7QW1CenlDTTtFQUNFO0FuQjR5Q1I7O0FtQnp5Q007RUFwQ0o7RUFDQTtBbkJpMUNGOztBbUJuMENFO0VBQ0U7RUFDQTtBbkJzMENKOztBbUJ4MENFO0VBQ0U7RUFDQTtBbkIyMENKOztBbUI3MENFO0VBQ0U7RUFDQTtBbkJnMUNKOztBbUJsMUNFO0VBQ0U7RUFDQTtBbkJxMUNKOztBbUJ2MUNFO0VBQ0U7RUFDQTtBbkIwMUNKOztBbUI1MUNFO0VBQ0U7RUFDQTtBbkIrMUNKOztBbUJoMENNO0VBaERKO0VBQ0E7QW5CbzNDRjs7QW1CL3pDVTtFQWhFTjtFQUNBO0FuQm00Q0o7O0FtQnAwQ1U7RUFoRU47RUFDQTtBbkJ3NENKOztBbUJ6MENVO0VBaEVOO0VBQ0E7QW5CNjRDSjs7QW1COTBDVTtFQWhFTjtFQUNBO0FuQms1Q0o7O0FtQm4xQ1U7RUFoRU47RUFDQTtBbkJ1NUNKOztBbUJ4MUNVO0VBaEVOO0VBQ0E7QW5CNDVDSjs7QW1CNzFDVTtFQWhFTjtFQUNBO0FuQmk2Q0o7O0FtQmwyQ1U7RUFoRU47RUFDQTtBbkJzNkNKOztBbUJ2MkNVO0VBaEVOO0VBQ0E7QW5CMjZDSjs7QW1CNTJDVTtFQWhFTjtFQUNBO0FuQmc3Q0o7O0FtQmozQ1U7RUFoRU47RUFDQTtBbkJxN0NKOztBbUJ0M0NVO0VBaEVOO0VBQ0E7QW5CMDdDSjs7QW1CbjNDWTtFQXhEVjtBbkIrNkNGOztBbUJ2M0NZO0VBeERWO0FuQm03Q0Y7O0FtQjMzQ1k7RUF4RFY7QW5CdTdDRjs7QW1CLzNDWTtFQXhEVjtBbkIyN0NGOztBbUJuNENZO0VBeERWO0FuQis3Q0Y7O0FtQnY0Q1k7RUF4RFY7QW5CbThDRjs7QW1CMzRDWTtFQXhEVjtBbkJ1OENGOztBbUIvNENZO0VBeERWO0FuQjI4Q0Y7O0FtQm41Q1k7RUF4RFY7QW5CKzhDRjs7QW1CdjVDWTtFQXhEVjtBbkJtOUNGOztBbUIzNUNZO0VBeERWO0FuQnU5Q0Y7O0FtQnA1Q1E7O0VBRUU7QW5CdTVDVjs7QW1CcDVDUTs7RUFFRTtBbkJ1NUNWOztBbUI5NUNROztFQUVFO0FuQmk2Q1Y7O0FtQjk1Q1E7O0VBRUU7QW5CaTZDVjs7QW1CeDZDUTs7RUFFRTtBbkIyNkNWOztBbUJ4NkNROztFQUVFO0FuQjI2Q1Y7O0FtQmw3Q1E7O0VBRUU7QW5CcTdDVjs7QW1CbDdDUTs7RUFFRTtBbkJxN0NWOztBbUI1N0NROztFQUVFO0FuQis3Q1Y7O0FtQjU3Q1E7O0VBRUU7QW5CKzdDVjs7QW1CdDhDUTs7RUFFRTtBbkJ5OENWOztBbUJ0OENROztFQUVFO0FuQnk4Q1Y7O0FpQm5nREk7RUVVRTtJQUNFO0VuQjYvQ047RW1CMS9DSTtJQXBDSjtJQUNBO0VuQmlpREE7RW1CbmhEQTtJQUNFO0lBQ0E7RW5CcWhERjtFbUJ2aERBO0lBQ0U7SUFDQTtFbkJ5aERGO0VtQjNoREE7SUFDRTtJQUNBO0VuQjZoREY7RW1CL2hEQTtJQUNFO0lBQ0E7RW5CaWlERjtFbUJuaURBO0lBQ0U7SUFDQTtFbkJxaURGO0VtQnZpREE7SUFDRTtJQUNBO0VuQnlpREY7RW1CMWdESTtJQWhESjtJQUNBO0VuQjZqREE7RW1CeGdEUTtJQWhFTjtJQUNBO0VuQjJrREY7RW1CNWdEUTtJQWhFTjtJQUNBO0VuQitrREY7RW1CaGhEUTtJQWhFTjtJQUNBO0VuQm1sREY7RW1CcGhEUTtJQWhFTjtJQUNBO0VuQnVsREY7RW1CeGhEUTtJQWhFTjtJQUNBO0VuQjJsREY7RW1CNWhEUTtJQWhFTjtJQUNBO0VuQitsREY7RW1CaGlEUTtJQWhFTjtJQUNBO0VuQm1tREY7RW1CcGlEUTtJQWhFTjtJQUNBO0VuQnVtREY7RW1CeGlEUTtJQWhFTjtJQUNBO0VuQjJtREY7RW1CNWlEUTtJQWhFTjtJQUNBO0VuQittREY7RW1CaGpEUTtJQWhFTjtJQUNBO0VuQm1uREY7RW1CcGpEUTtJQWhFTjtJQUNBO0VuQnVuREY7RW1CaGpEVTtJQXhEVjtFbkIybURBO0VtQm5qRFU7SUF4RFY7RW5COG1EQTtFbUJ0akRVO0lBeERWO0VuQmluREE7RW1CempEVTtJQXhEVjtFbkJvbkRBO0VtQjVqRFU7SUF4RFY7RW5CdW5EQTtFbUIvakRVO0lBeERWO0VuQjBuREE7RW1CbGtEVTtJQXhEVjtFbkI2bkRBO0VtQnJrRFU7SUF4RFY7RW5CZ29EQTtFbUJ4a0RVO0lBeERWO0VuQm1vREE7RW1CM2tEVTtJQXhEVjtFbkJzb0RBO0VtQjlrRFU7SUF4RFY7RW5CeW9EQTtFbUJqbERVO0lBeERWO0VuQjRvREE7RW1CemtETTs7SUFFRTtFbkIya0RSO0VtQnhrRE07O0lBRUU7RW5CMGtEUjtFbUJqbERNOztJQUVFO0VuQm1sRFI7RW1CaGxETTs7SUFFRTtFbkJrbERSO0VtQnpsRE07O0lBRUU7RW5CMmxEUjtFbUJ4bERNOztJQUVFO0VuQjBsRFI7RW1Cam1ETTs7SUFFRTtFbkJtbURSO0VtQmhtRE07O0lBRUU7RW5Ca21EUjtFbUJ6bURNOztJQUVFO0VuQjJtRFI7RW1CeG1ETTs7SUFFRTtFbkIwbURSO0VtQmpuRE07O0lBRUU7RW5CbW5EUjtFbUJobkRNOztJQUVFO0VuQmtuRFI7QUFDRjtBaUI3cURJO0VFVUU7SUFDRTtFbkJzcUROO0VtQm5xREk7SUFwQ0o7SUFDQTtFbkIwc0RBO0VtQjVyREE7SUFDRTtJQUNBO0VuQjhyREY7RW1CaHNEQTtJQUNFO0lBQ0E7RW5Ca3NERjtFbUJwc0RBO0lBQ0U7SUFDQTtFbkJzc0RGO0VtQnhzREE7SUFDRTtJQUNBO0VuQjBzREY7RW1CNXNEQTtJQUNFO0lBQ0E7RW5COHNERjtFbUJodERBO0lBQ0U7SUFDQTtFbkJrdERGO0VtQm5yREk7SUFoREo7SUFDQTtFbkJzdURBO0VtQmpyRFE7SUFoRU47SUFDQTtFbkJvdkRGO0VtQnJyRFE7SUFoRU47SUFDQTtFbkJ3dkRGO0VtQnpyRFE7SUFoRU47SUFDQTtFbkI0dkRGO0VtQjdyRFE7SUFoRU47SUFDQTtFbkJnd0RGO0VtQmpzRFE7SUFoRU47SUFDQTtFbkJvd0RGO0VtQnJzRFE7SUFoRU47SUFDQTtFbkJ3d0RGO0VtQnpzRFE7SUFoRU47SUFDQTtFbkI0d0RGO0VtQjdzRFE7SUFoRU47SUFDQTtFbkJneERGO0VtQmp0RFE7SUFoRU47SUFDQTtFbkJveERGO0VtQnJ0RFE7SUFoRU47SUFDQTtFbkJ3eERGO0VtQnp0RFE7SUFoRU47SUFDQTtFbkI0eERGO0VtQjd0RFE7SUFoRU47SUFDQTtFbkJneURGO0VtQnp0RFU7SUF4RFY7RW5Cb3hEQTtFbUI1dERVO0lBeERWO0VuQnV4REE7RW1CL3REVTtJQXhEVjtFbkIweERBO0VtQmx1RFU7SUF4RFY7RW5CNnhEQTtFbUJydURVO0lBeERWO0VuQmd5REE7RW1CeHVEVTtJQXhEVjtFbkJteURBO0VtQjN1RFU7SUF4RFY7RW5Cc3lEQTtFbUI5dURVO0lBeERWO0VuQnl5REE7RW1CanZEVTtJQXhEVjtFbkI0eURBO0VtQnB2RFU7SUF4RFY7RW5CK3lEQTtFbUJ2dkRVO0lBeERWO0VuQmt6REE7RW1CMXZEVTtJQXhEVjtFbkJxekRBO0VtQmx2RE07O0lBRUU7RW5Cb3ZEUjtFbUJqdkRNOztJQUVFO0VuQm12RFI7RW1CMXZETTs7SUFFRTtFbkI0dkRSO0VtQnp2RE07O0lBRUU7RW5CMnZEUjtFbUJsd0RNOztJQUVFO0VuQm93RFI7RW1CandETTs7SUFFRTtFbkJtd0RSO0VtQjF3RE07O0lBRUU7RW5CNHdEUjtFbUJ6d0RNOztJQUVFO0VuQjJ3RFI7RW1CbHhETTs7SUFFRTtFbkJveERSO0VtQmp4RE07O0lBRUU7RW5CbXhEUjtFbUIxeERNOztJQUVFO0VuQjR4RFI7RW1CenhETTs7SUFFRTtFbkIyeERSO0FBQ0Y7QWlCdDFESTtFRVVFO0lBQ0U7RW5CKzBETjtFbUI1MERJO0lBcENKO0lBQ0E7RW5CbTNEQTtFbUJyMkRBO0lBQ0U7SUFDQTtFbkJ1MkRGO0VtQnoyREE7SUFDRTtJQUNBO0VuQjIyREY7RW1CNzJEQTtJQUNFO0lBQ0E7RW5CKzJERjtFbUJqM0RBO0lBQ0U7SUFDQTtFbkJtM0RGO0VtQnIzREE7SUFDRTtJQUNBO0VuQnUzREY7RW1CejNEQTtJQUNFO0lBQ0E7RW5CMjNERjtFbUI1MURJO0lBaERKO0lBQ0E7RW5CKzREQTtFbUIxMURRO0lBaEVOO0lBQ0E7RW5CNjVERjtFbUI5MURRO0lBaEVOO0lBQ0E7RW5CaTZERjtFbUJsMkRRO0lBaEVOO0lBQ0E7RW5CcTZERjtFbUJ0MkRRO0lBaEVOO0lBQ0E7RW5CeTZERjtFbUIxMkRRO0lBaEVOO0lBQ0E7RW5CNjZERjtFbUI5MkRRO0lBaEVOO0lBQ0E7RW5CaTdERjtFbUJsM0RRO0lBaEVOO0lBQ0E7RW5CcTdERjtFbUJ0M0RRO0lBaEVOO0lBQ0E7RW5CeTdERjtFbUIxM0RRO0lBaEVOO0lBQ0E7RW5CNjdERjtFbUI5M0RRO0lBaEVOO0lBQ0E7RW5CaThERjtFbUJsNERRO0lBaEVOO0lBQ0E7RW5CcThERjtFbUJ0NERRO0lBaEVOO0lBQ0E7RW5CeThERjtFbUJsNERVO0lBeERWO0VuQjY3REE7RW1CcjREVTtJQXhEVjtFbkJnOERBO0VtQng0RFU7SUF4RFY7RW5CbThEQTtFbUIzNERVO0lBeERWO0VuQnM4REE7RW1COTREVTtJQXhEVjtFbkJ5OERBO0VtQmo1RFU7SUF4RFY7RW5CNDhEQTtFbUJwNURVO0lBeERWO0VuQis4REE7RW1CdjVEVTtJQXhEVjtFbkJrOURBO0VtQjE1RFU7SUF4RFY7RW5CcTlEQTtFbUI3NURVO0lBeERWO0VuQnc5REE7RW1CaDZEVTtJQXhEVjtFbkIyOURBO0VtQm42RFU7SUF4RFY7RW5CODlEQTtFbUIzNURNOztJQUVFO0VuQjY1RFI7RW1CMTVETTs7SUFFRTtFbkI0NURSO0VtQm42RE07O0lBRUU7RW5CcTZEUjtFbUJsNkRNOztJQUVFO0VuQm82RFI7RW1CMzZETTs7SUFFRTtFbkI2NkRSO0VtQjE2RE07O0lBRUU7RW5CNDZEUjtFbUJuN0RNOztJQUVFO0VuQnE3RFI7RW1CbDdETTs7SUFFRTtFbkJvN0RSO0VtQjM3RE07O0lBRUU7RW5CNjdEUjtFbUIxN0RNOztJQUVFO0VuQjQ3RFI7RW1CbjhETTs7SUFFRTtFbkJxOERSO0VtQmw4RE07O0lBRUU7RW5CbzhEUjtBQUNGO0FpQi8vREk7RUVVRTtJQUNFO0VuQncvRE47RW1Cci9ESTtJQXBDSjtJQUNBO0VuQjRoRUE7RW1COWdFQTtJQUNFO0lBQ0E7RW5CZ2hFRjtFbUJsaEVBO0lBQ0U7SUFDQTtFbkJvaEVGO0VtQnRoRUE7SUFDRTtJQUNBO0VuQndoRUY7RW1CMWhFQTtJQUNFO0lBQ0E7RW5CNGhFRjtFbUI5aEVBO0lBQ0U7SUFDQTtFbkJnaUVGO0VtQmxpRUE7SUFDRTtJQUNBO0VuQm9pRUY7RW1CcmdFSTtJQWhESjtJQUNBO0VuQndqRUE7RW1CbmdFUTtJQWhFTjtJQUNBO0VuQnNrRUY7RW1CdmdFUTtJQWhFTjtJQUNBO0VuQjBrRUY7RW1CM2dFUTtJQWhFTjtJQUNBO0VuQjhrRUY7RW1CL2dFUTtJQWhFTjtJQUNBO0VuQmtsRUY7RW1CbmhFUTtJQWhFTjtJQUNBO0VuQnNsRUY7RW1CdmhFUTtJQWhFTjtJQUNBO0VuQjBsRUY7RW1CM2hFUTtJQWhFTjtJQUNBO0VuQjhsRUY7RW1CL2hFUTtJQWhFTjtJQUNBO0VuQmttRUY7RW1CbmlFUTtJQWhFTjtJQUNBO0VuQnNtRUY7RW1CdmlFUTtJQWhFTjtJQUNBO0VuQjBtRUY7RW1CM2lFUTtJQWhFTjtJQUNBO0VuQjhtRUY7RW1CL2lFUTtJQWhFTjtJQUNBO0VuQmtuRUY7RW1CM2lFVTtJQXhEVjtFbkJzbUVBO0VtQjlpRVU7SUF4RFY7RW5CeW1FQTtFbUJqakVVO0lBeERWO0VuQjRtRUE7RW1CcGpFVTtJQXhEVjtFbkIrbUVBO0VtQnZqRVU7SUF4RFY7RW5Ca25FQTtFbUIxakVVO0lBeERWO0VuQnFuRUE7RW1CN2pFVTtJQXhEVjtFbkJ3bkVBO0VtQmhrRVU7SUF4RFY7RW5CMm5FQTtFbUJua0VVO0lBeERWO0VuQjhuRUE7RW1CdGtFVTtJQXhEVjtFbkJpb0VBO0VtQnprRVU7SUF4RFY7RW5Cb29FQTtFbUI1a0VVO0lBeERWO0VuQnVvRUE7RW1CcGtFTTs7SUFFRTtFbkJza0VSO0VtQm5rRU07O0lBRUU7RW5CcWtFUjtFbUI1a0VNOztJQUVFO0VuQjhrRVI7RW1CM2tFTTs7SUFFRTtFbkI2a0VSO0VtQnBsRU07O0lBRUU7RW5Cc2xFUjtFbUJubEVNOztJQUVFO0VuQnFsRVI7RW1CNWxFTTs7SUFFRTtFbkI4bEVSO0VtQjNsRU07O0lBRUU7RW5CNmxFUjtFbUJwbUVNOztJQUVFO0VuQnNtRVI7RW1Cbm1FTTs7SUFFRTtFbkJxbUVSO0VtQjVtRU07O0lBRUU7RW5COG1FUjtFbUIzbUVNOztJQUVFO0VuQjZtRVI7QUFDRjtBaUJ4cUVJO0VFVUU7SUFDRTtFbkJpcUVOO0VtQjlwRUk7SUFwQ0o7SUFDQTtFbkJxc0VBO0VtQnZyRUE7SUFDRTtJQUNBO0VuQnlyRUY7RW1CM3JFQTtJQUNFO0lBQ0E7RW5CNnJFRjtFbUIvckVBO0lBQ0U7SUFDQTtFbkJpc0VGO0VtQm5zRUE7SUFDRTtJQUNBO0VuQnFzRUY7RW1CdnNFQTtJQUNFO0lBQ0E7RW5CeXNFRjtFbUIzc0VBO0lBQ0U7SUFDQTtFbkI2c0VGO0VtQjlxRUk7SUFoREo7SUFDQTtFbkJpdUVBO0VtQjVxRVE7SUFoRU47SUFDQTtFbkIrdUVGO0VtQmhyRVE7SUFoRU47SUFDQTtFbkJtdkVGO0VtQnByRVE7SUFoRU47SUFDQTtFbkJ1dkVGO0VtQnhyRVE7SUFoRU47SUFDQTtFbkIydkVGO0VtQjVyRVE7SUFoRU47SUFDQTtFbkIrdkVGO0VtQmhzRVE7SUFoRU47SUFDQTtFbkJtd0VGO0VtQnBzRVE7SUFoRU47SUFDQTtFbkJ1d0VGO0VtQnhzRVE7SUFoRU47SUFDQTtFbkIyd0VGO0VtQjVzRVE7SUFoRU47SUFDQTtFbkIrd0VGO0VtQmh0RVE7SUFoRU47SUFDQTtFbkJteEVGO0VtQnB0RVE7SUFoRU47SUFDQTtFbkJ1eEVGO0VtQnh0RVE7SUFoRU47SUFDQTtFbkIyeEVGO0VtQnB0RVU7SUF4RFY7RW5CK3dFQTtFbUJ2dEVVO0lBeERWO0VuQmt4RUE7RW1CMXRFVTtJQXhEVjtFbkJxeEVBO0VtQjd0RVU7SUF4RFY7RW5Cd3hFQTtFbUJodUVVO0lBeERWO0VuQjJ4RUE7RW1CbnVFVTtJQXhEVjtFbkI4eEVBO0VtQnR1RVU7SUF4RFY7RW5CaXlFQTtFbUJ6dUVVO0lBeERWO0VuQm95RUE7RW1CNXVFVTtJQXhEVjtFbkJ1eUVBO0VtQi91RVU7SUF4RFY7RW5CMHlFQTtFbUJsdkVVO0lBeERWO0VuQjZ5RUE7RW1CcnZFVTtJQXhEVjtFbkJnekVBO0VtQjd1RU07O0lBRUU7RW5CK3VFUjtFbUI1dUVNOztJQUVFO0VuQjh1RVI7RW1CcnZFTTs7SUFFRTtFbkJ1dkVSO0VtQnB2RU07O0lBRUU7RW5Cc3ZFUjtFbUI3dkVNOztJQUVFO0VuQit2RVI7RW1CNXZFTTs7SUFFRTtFbkI4dkVSO0VtQnJ3RU07O0lBRUU7RW5CdXdFUjtFbUJwd0VNOztJQUVFO0VuQnN3RVI7RW1CN3dFTTs7SUFFRTtFbkIrd0VSO0VtQjV3RU07O0lBRUU7RW5COHdFUjtFbUJyeEVNOztJQUVFO0VuQnV4RVI7RW1CcHhFTTs7SUFFRTtFbkJzeEVSO0FBQ0Y7QW9CNTRFQTtFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBLG1CWGtZTztFV2pZUCxtQlhrc0I0QjtFV2pzQjVCO0FwQjI0RUY7QW9CcDRFRTtFQUNFO0VBRUE7RUFDQTtFQUNBLDJDWDBzQjBCO0VXenNCMUI7QXBCcTRFSjtBb0JsNEVFO0VBQ0U7QXBCbzRFSjtBb0JqNEVFO0VBQ0U7QXBCbTRFSjs7QW9CLzNFQTtFQUNFO0FwQms0RUY7O0FvQjMzRUE7RUFDRTtBcEI4M0VGOztBb0JwM0VFO0VBQ0U7QXBCdTNFSjs7QW9CeDJFRTtFQUNFO0FwQjIyRUo7QW9CeDJFSTtFQUNFO0FwQjAyRU47O0FvQm4yRUU7RUFDRTtBcEJzMkVKO0FvQm4yRUU7RUFDRTtBcEJxMkVKOztBb0IzMUVFO0VBQ0U7RUFDQTtBcEI4MUVKOztBb0J4MUVFO0VBQ0U7RUFDQTtBcEIyMUVKOztBb0JuMUVBO0VBQ0U7RUFDQTtBcEJzMUVGOztBb0I5MEVFO0VBQ0U7RUFDQTtBcEJpMUVKOztBcUI3OUVFO0VBT0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtBckJ5OUVKOztBcUIzK0VFO0VBT0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtBckJ1K0VKOztBcUJ6L0VFO0VBT0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtBckJxL0VKOztBcUJ2Z0ZFO0VBT0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtBckJtZ0ZKOztBcUJyaEZFO0VBT0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtBckJpaEZKOztBcUJuaUZFO0VBT0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtBckIraEZKOztBcUJqakZFO0VBT0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtBckI2aUZKOztBcUIvakZFO0VBT0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtBckIyakZKOztBb0IxNkVJO0VBQ0U7RUFDQTtBcEI2NkVOOztBaUJ4Z0ZJO0VHeUZBO0lBQ0U7SUFDQTtFcEJtN0VKO0FBQ0Y7QWlCL2dGSTtFR3lGQTtJQUNFO0lBQ0E7RXBCeTdFSjtBQUNGO0FpQnJoRkk7RUd5RkE7SUFDRTtJQUNBO0VwQis3RUo7QUFDRjtBaUIzaEZJO0VHeUZBO0lBQ0U7SUFDQTtFcEJxOEVKO0FBQ0Y7QWlCamlGSTtFR3lGQTtJQUNFO0lBQ0E7RXBCMjhFSjtBQUNGO0FzQi9tRkE7RUFDRSxxQmJpMkJzQztBVGd4RHhDOztBc0J4bUZBO0VBQ0U7RUFDQTtFQUNBO0VoQjhRSSxrQkFMSTtFZ0JyUVIsZ0JwQmZpQjtBRnduRm5COztBc0JybUZBO0VBQ0U7RUFDQTtFaEJvUUksbUJBTEk7QU4wMkVWOztBc0JybUZBO0VBQ0U7RUFDQTtFaEI4UEksb0JBTEk7QU5nM0VWOztBdUJ0b0ZBO0VBQ0UsbUJkeTFCc0M7RUgvakJsQyxrQkFMSTtFaUJqUlIsZ0NkeTFCc0M7QVQ4eUR4Qzs7QXdCNW9GQTtFQUNFO0VBQ0E7RUFDQTtFbEJ3UkksaUJBTEk7RWtCaFJSLGdCZmttQjRCO0Vlam1CNUIsZ0J0QkxpQjtFc0JNakIsMkJmczNCc0M7RWVyM0J0QyxtQ2ZnM0JzQztFZS8yQnRDO0VBQ0E7RUFDQTtLQUFBO1VBQUE7RWRHRTtFZUhFLHdFRE1KO0F4QjBvRkY7QXlCNW9GTTtFRGhCTjtJQ2lCUTtFekIrb0ZOO0FBQ0Y7QXdCN29GRTtFQUNFO0F4QitvRko7QXdCN29GSTtFQUNFO0F4QitvRk47QXdCMW9GRTtFQUNFLDJCZmcyQm9DO0VlLzFCcEMsbUNmMDFCb0M7RWV6MUJwQyxxQmZ3MkJvQztFZXYyQnBDO0VBS0Usa0Rma2hCa0I7QVRzbkV4QjtBd0Jwb0ZFO0VBTUU7RUFNQTtFQUtBO0F4QnduRko7QXdCbm5GRTtFQUNFO0VBQ0E7QXhCcW5GSjtBd0JqbkZFO0VBQ0UsZ0NmczBCb0M7RWVwMEJwQztBeEJrbkZKO0F3QnJuRkU7RUFDRSxnQ2ZzMEJvQztFZXAwQnBDO0F4QmtuRko7QXdCMW1GRTtFQUVFLHdDZnd5Qm9DO0VlcnlCcEM7QXhCeW1GSjtBd0JybUZFO0VBQ0U7RUFDQTtFQUNBLDBCZitxQjBCO0VlOXFCMUIsMkJmZ3lCb0M7RWlCOTNCdEMsdUNqQitoQ2dDO0VlLzdCOUI7RUFDQTtFQUNBO0VBQ0E7RUFDQSwrQ2YyckIwQjtFZTFyQjFCO0VDekZFLHFJRDBGRjtBeEJ1bUZKO0F5QjdyRk07RUQwRUo7SUN6RU07RXpCZ3NGTjtBQUNGO0F3QnptRkU7RUFDRSx3Q2ZzN0I4QjtBVHFyRGxDOztBd0JsbUZBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQSxnQnRCdEhpQjtFc0J1SGpCLDJCZnF4QnNDO0VlcHhCdEM7RUFDQTtFQUNBO0F4QnFtRkY7QXdCbm1GRTtFQUNFO0F4QnFtRko7QXdCbG1GRTtFQUVFO0VBQ0E7QXhCbW1GSjs7QXdCeGxGQTtFQUNFLG1FZnN3QnNDO0VlcndCdEM7RWxCeUlJLG9CQUxJO0VJdlFOO0FWZ3VGSjtBd0J6bEZFO0VBQ0U7RUFDQTtFQUNBLHlCZituQjBCO0FUNDlEOUI7O0F3QnZsRkE7RUFDRSxpRWYwdkJzQztFZXp2QnRDO0VsQjRISSxtQkFMSTtFSXZRTjtBVjR1Rko7QXdCeGxGRTtFQUNFO0VBQ0E7RUFDQSx1QmZzbkIwQjtBVG8rRDlCOztBd0JsbEZFO0VBQ0Usb0VmdXVCb0M7QVQ4MkR4QztBd0JsbEZFO0VBQ0UsbUVmb3VCb0M7QVRnM0R4QztBd0JqbEZFO0VBQ0UsaUVmaXVCb0M7QVRrM0R4Qzs7QXdCOWtGQTtFQUNFLFdmK3RCc0M7RWU5dEJ0QyxnRWZ3dEJzQztFZXZ0QnRDLGlCZjRrQjRCO0FUcWdFOUI7QXdCL2tGRTtFQUNFO0F4QmlsRko7QXdCOWtGRTtFQUNFO0VkdkxBO0FWd3dGSjtBd0I3a0ZFO0VBQ0U7RWQ1TEE7QVY0d0ZKO0F3QjVrRkU7RUFBb0IsK0Rmd3NCa0I7QVR1NER4QztBd0I5a0ZFO0VBQW9CLDZEZndzQmtCO0FUeTREeEM7O0EyQmh5RkE7RUFDRTtFQUVBO0VBQ0E7RUFDQTtFckJxUkksaUJBTEk7RXFCN1FSLGdCbEIrbEI0QjtFa0I5bEI1QixnQnpCUmlCO0V5QlNqQiwyQmxCbTNCc0M7RWtCbDNCdEMsbUNsQjYyQnNDO0VrQjUyQnRDO0VBQ0E7RUFDQSx5Q2xCMDlCa0M7RWtCejlCbEMsMEJsQjA5QmtDO0VrQno5QmxDO0VqQkZFO0VlSEUsd0VFUUo7RUFDQTtLQUFBO1VBQUE7QTNCZ3lGRjtBeUJyeUZNO0VFZk47SUZnQlE7RXpCd3lGTjtBQUNGO0EyQm55RkU7RUFDRSxxQmxCZzNCb0M7RWtCLzJCcEM7RUFLRSxrRGxCMjlCNEI7QVRzMERsQztBMkI3eEZFO0VBRUUsc0JsQnd1QjBCO0VrQnZ1QjFCO0EzQjh4Rko7QTJCM3hGRTtFQUVFLHdDbEJpMUJvQztBVDI4RHhDO0EyQnZ4RkU7RUFDRTtFQUNBO0EzQnl4Rko7O0EyQnJ4RkE7RUFDRSxvQmxCaXVCNEI7RWtCaHVCNUIsdUJsQmd1QjRCO0VrQi90QjVCLG9CbEJndUI0QjtFSDdmeEIsb0JBTEk7RUl2UU47QVZtMEZKOztBMkJyeEZBO0VBQ0UsbUJsQjZ0QjRCO0VrQjV0QjVCLHNCbEI0dEI0QjtFa0IzdEI1QixrQmxCNHRCNEI7RUhqZ0J4QixtQkFMSTtFSXZRTjtBVjIwRko7O0EyQm54Rkk7RUFDRTtBM0JzeEZOOztBNEI5MUZBO0VBQ0U7RUFDQSxtQm5CKzVCd0M7RW1COTVCeEMsbUJuQis1QndDO0VtQjk1QnhDLHVCbkIrNUJ3QztBVGs4RDFDO0E0Qi8xRkU7RUFDRTtFQUNBO0E1QmkyRko7O0E0QjcxRkE7RUFDRSxvQm5CcTVCd0M7RW1CcDVCeEM7RUFDQTtBNUJnMkZGO0E0QjkxRkU7RUFDRTtFQUNBO0VBQ0E7QTVCZzJGSjs7QTRCNTFGQTtFQUNFO0VBRUEsVW5CcTRCd0M7RW1CcDRCeEMsV25CbzRCd0M7RW1CbjRCeEM7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSwyRG5CdTRCd0M7RW1CdDRCeEM7S0FBQTtVQUFBO0VBQ0E7QTVCODFGRjtBNEIzMUZFO0VsQjFCRTtBVnczRko7QTRCMTFGRTtFQUVFLGtCbkI4M0JzQztBVDY5RDFDO0E0QngxRkU7RUFDRSx1Qm5CcTNCc0M7QVRxK0QxQztBNEJ2MUZFO0VBQ0UscUJuQmkxQm9DO0VtQmgxQnBDO0VBQ0Esa0RuQitmb0I7QVQwMUV4QjtBNEJ0MUZFO0VBQ0UseUJuQjNCTTtFbUI0Qk4scUJuQjVCTTtBVG8zRlY7QTRCdDFGSTtFQUlJO0E1QnExRlI7QTRCajFGSTtFQUlJO0E1QmcxRlI7QTRCMzBGRTtFQUNFLHlCbkJoRE07RW1CaUROLHFCbkJqRE07RW1Cc0RKO0E1QnkwRk47QTRCcjBGRTtFQUNFO0VBQ0E7RUFDQSxZbkI2MUJ1QztBVDArRDNDO0E0QmgwRkk7RUFDRTtFQUNBLFluQm8xQnFDO0FUOCtEM0M7O0E0QnB6RkE7RUFDRSxtQm5CKzBCZ0M7QVR3K0RsQztBNEJyekZFO0VBQ0U7RUFFQSxVbkJ5MEI4QjtFbUJ4MEI5QjtFQUNBO0VBQ0E7RWxCaEhBO0VlSEUsaURHcUhGO0E1QnN6Rko7QXlCdjZGTTtFR3lHSjtJSHhHTTtFekIwNkZOO0FBQ0Y7QTRCenpGSTtFQUNFO0E1QjJ6Rk47QTRCeHpGSTtFQUNFLGlDbkJ3MEI0QjtFbUJuMEIxQjtBNUJzekZSO0E0Qmp6RkU7RUFDRSxvQm5CbXpCOEI7RW1CbHpCOUI7QTVCbXpGSjtBNEJqekZJO0VBQ0U7RUFDQTtBNUJtekZOOztBNEI5eUZBO0VBQ0U7RUFDQSxrQm5CaXlCZ0M7QVRnaEVsQzs7QTRCOXlGQTtFQUNFO0VBQ0E7RUFDQTtBNUJpekZGO0E0Qjd5Rkk7RUFDRTtFQUNBO0VBQ0EsYW5Ca3BCd0I7QVQ2cEU5Qjs7QTRCeHlGSTtFQUNFO0E1QjJ5Rk47O0E2Qjc5RkE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0tBQUE7VUFBQTtBN0JnK0ZGO0E2Qjk5RkU7RUFDRTtBN0JnK0ZKO0E2QjU5Rkk7RUFBMEIscUVwQndnQ2E7QVR1OUQzQztBNkI5OUZJO0VBQTBCLHFFcEJ1Z0NhO0FUMDlEM0M7QTZCOTlGRTtFQUNFO0E3QmcrRko7QTZCNzlGRTtFQUNFLFdwQnkvQnVDO0VvQngvQnZDLFlwQncvQnVDO0VvQnYvQnZDO0VIekJGLHlCakJrQ1E7RW9CUE4sU3BCdy9CdUM7RUNwZ0N2QztFZUhFLG9ISWtCRjtFSmxCRSw0R0lrQkY7RUFDQTtVQUFBO0E3Qjg5Rko7QXlCNytGTTtFSU1KO0lKTE07SUFBQTtFekJnL0ZOO0FBQ0Y7QTZCaitGSTtFSGpDRix5QmpCd2hDeUM7QVQ2K0QzQztBNkIvOUZFO0VBQ0UsV3BCaytCOEI7RW9CaitCOUIsY3BCaytCOEI7RW9CaitCOUI7RUFDQSxlcEJpK0I4QjtFb0JoK0I5Qix1Q3BCaStCOEI7RW9CaCtCOUI7RW5CN0JBO0FWKy9GSjtBNkI3OUZFO0VBQ0UsV3BCODlCdUM7RW9CNzlCdkMsWXBCNjlCdUM7RWlCaGhDekMseUJqQmtDUTtFb0JtQk4sU3BCODlCdUM7RUNwZ0N2QztFZUhFLGlISTRDRjtFSjVDRSw0R0k0Q0Y7RUFDQTtPQUFBO0E3Qjg5Rko7QXlCdmdHTTtFSWlDSjtJSmhDTTtJQUFBO0V6QjBnR047QUFDRjtBNkJqK0ZJO0VIM0RGLHlCakJ3aEN5QztBVHVnRTNDO0E2Qi85RkU7RUFDRSxXcEJ3OEI4QjtFb0J2OEI5QixjcEJ3OEI4QjtFb0J2OEI5QjtFQUNBLGVwQnU4QjhCO0VvQnQ4QjlCLHVDcEJ1OEI4QjtFb0J0OEI5QjtFbkJ2REE7QVZ5aEdKO0E2Qjc5RkU7RUFDRTtBN0IrOUZKO0E2Qjc5Rkk7RUFDRSwyQ3BCMDhCcUM7QVRxaEUzQztBNkI1OUZJO0VBQ0UsMkNwQnM4QnFDO0FUd2hFM0M7O0E4QnJqR0E7RUFDRTtBOUJ3akdGO0E4QnRqR0U7OztFQUdFLHVEckJraUNvQztFcUJqaUNwQywyRHJCaWlDb0M7RXFCaGlDcEMsaUJyQmlpQ29DO0FUdWhFeEM7QThCcmpHRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VMUkUsZ0VLU0Y7QTlCdWpHSjtBeUI1akdNO0VLVEo7SUxVTTtFekIrakdOO0FBQ0Y7QThCempHRTs7RUFFRTtBOUIyakdKO0E4QnpqR0k7RUFDRTtBOUI0akdOO0E4QjdqR0k7O0VBQ0U7QTlCNGpHTjtBOEJ6akdJO0VBRUUscUJyQnNnQ2tDO0VxQnJnQ2xDLHdCckJzZ0NrQztBVHNqRXhDO0E4Qi9qR0k7OztFQUVFLHFCckJzZ0NrQztFcUJyZ0NsQyx3QnJCc2dDa0M7QVRzakV4QztBOEJ6akdJOztFQUNFLHFCckJpZ0NrQztFcUJoZ0NsQyx3QnJCaWdDa0M7QVQyakV4QztBOEJ4akdFO0VBQ0UscUJyQjIvQm9DO0VxQjEvQnBDLHdCckIyL0JvQztBVCtqRXhDO0E4Qm5qR0k7RUFDRTtFQUNBLDhEckJxL0JrQztBVG1rRXhDO0E4QjFqR0k7Ozs7RUFDRTtFQUNBLDhEckJxL0JrQztBVG1rRXhDO0E4QnRqR007RUFDRTtFQUNBO0VBQ0E7RUFDQSxhckI2K0JnQztFcUI1K0JoQztFQUNBLG1DckIwekJnQztFQzEyQnBDO0FWNG1HSjtBOEJsa0dNOzs7O0VBQ0U7RUFDQTtFQUNBO0VBQ0EsYXJCNitCZ0M7RXFCNStCaEM7RUFDQSxtQ3JCMHpCZ0M7RUMxMkJwQztBVjRtR0o7QThCcmpHSTtFQUNFO0VBQ0EsOERyQm8rQmtDO0FUbWxFeEM7QThCbGpHSTtFQUNFO0E5Qm9qR047QThCaGpHRTtFQUNFLGNyQnpFTztBVDJuR1g7QThCaGpHSTtFQUNFLHdDckJxeUJrQztBVDZ3RXhDOztBK0J4b0dBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBL0Iyb0dGO0ErQnpvR0U7OztFQUdFO0VBQ0E7RUFDQTtFQUNBO0EvQjJvR0o7QStCdm9HRTs7O0VBR0U7QS9CeW9HSjtBK0Jub0dFO0VBQ0U7RUFDQTtBL0Jxb0dKO0ErQm5vR0k7RUFDRTtBL0Jxb0dOOztBK0IxbkdBO0VBQ0U7RUFDQTtFQUNBO0V6QjhPSSxpQkFMSTtFeUJ2T1IsZ0J0QnlqQjRCO0VzQnhqQjVCLGdCN0I5Q2lCO0U2QitDakIsMkJ0QjYwQnNDO0VzQjUwQnRDO0VBQ0E7RUFDQSx1Q3RCbzZCc0M7RXNCbjZCdEM7RXJCdENFO0FWb3FHSjs7QStCcG5HQTs7OztFQUlFO0V6QndOSSxtQkFMSTtFSXZRTjtBVjZxR0o7O0ErQnBuR0E7Ozs7RUFJRTtFekIrTUksb0JBTEk7RUl2UU47QVZzckdKOztBK0JwbkdBOztFQUVFO0EvQnVuR0Y7O0ErQjFtR0k7Ozs7RXJCakVBO0VBQ0E7QVZrckdKO0ErQnptR0k7Ozs7RXJCMUVBO0VBQ0E7QVZ5ckdKO0ErQm5tR0U7RUFDRTtFckIxRUE7RUFDQTtBVmdyR0o7QStCbm1HRTs7RXJCOUVFO0VBQ0E7QVZxckdKOztBZ0M3c0dFO0VBQ0U7RUFDQTtFQUNBLG1CdkJpMEJvQztFSC9qQmxDLGtCQUxJO0UwQjFQTixpQ3ZCNGlDcUI7QVRtcUV6Qjs7QWdDNXNHRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0UxQnFQRSxvQkFMSTtFMEI3T04sV3ZCK2hDcUI7RXVCOWhDckIsbUN2QjhoQ3FCO0VDempDckI7QVYwdUdKOztBZ0Mxc0dJOzs7O0VBRUU7QWhDK3NHTjs7QWdDOXZHSTtFQXFERSwrQ3ZCaWhDbUI7RXVCOWdDakIsb0N2QncxQmdDO0V1QnYxQmhDO0VBQ0E7RUFDQTtFQUNBO0FoQzJzR1I7QWdDeHNHTTtFQUNFLCtDdkJzZ0NpQjtFdUJyZ0NqQiwyRHZCcWdDaUI7QVRxc0V6Qjs7QWdDM3dHSTtFQTBFSSxvQ3ZCczBCZ0M7RXVCcjBCaEM7QWhDcXNHUjs7QWdDaHhHSTtFQWtGRSwrQ3ZCby9CbUI7QVQ4c0V6QjtBZ0MvckdRO0VBRUU7RUFDQSx1QnZCbzVCOEI7RXVCbjVCOUI7RUFDQTtBaENnc0dWO0FnQzVyR007RUFDRSwrQ3ZCdStCaUI7RXVCdCtCakIsMkR2QnMrQmlCO0FUd3RFekI7O0FnQzl4R0k7RUF3R0k7QWhDMHJHUjs7QWdDbHlHSTtFQStHRSwrQ3ZCdTlCbUI7QVRndUV6QjtBZ0NyckdNO0VBQ0UsNEN2Qm85QmlCO0FUbXVFekI7QWdDcHJHTTtFQUNFLDJEdkJnOUJpQjtBVHN1RXpCO0FnQ25yR007RUFDRSxpQ3ZCNDhCaUI7QVR5dUV6Qjs7QWdDaHJHSTtFQUNFO0FoQ21yR047O0FnQ256R0k7Ozs7O0VBMElNO0FoQ2lyR1Y7O0FnQ3Z5R0U7RUFDRTtFQUNBO0VBQ0EsbUJ2QmkwQm9DO0VIL2pCbEMsa0JBTEk7RTBCMVBOLG1DdkI0aUNxQjtBVDZ2RXpCOztBZ0N0eUdFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RTFCcVBFLG9CQUxJO0UwQjdPTixXdkIraENxQjtFdUI5aENyQixrQ3ZCOGhDcUI7RUN6akNyQjtBVm8wR0o7O0FnQ3B5R0k7Ozs7RUFFRTtBaEN5eUdOOztBZ0N4MUdJO0VBcURFLGlEdkJpaENtQjtFdUI5Z0NqQixvQ3ZCdzFCZ0M7RXVCdjFCaEM7RUFDQTtFQUNBO0VBQ0E7QWhDcXlHUjtBZ0NseUdNO0VBQ0UsaUR2QnNnQ2lCO0V1QnJnQ2pCLDBEdkJxZ0NpQjtBVCt4RXpCOztBZ0NyMkdJO0VBMEVJLG9DdkJzMEJnQztFdUJyMEJoQztBaEMreEdSOztBZ0MxMkdJO0VBa0ZFLGlEdkJvL0JtQjtBVHd5RXpCO0FnQ3p4R1E7RUFFRTtFQUNBLHVCdkJvNUI4QjtFdUJuNUI5QjtFQUNBO0FoQzB4R1Y7QWdDdHhHTTtFQUNFLGlEdkJ1K0JpQjtFdUJ0K0JqQiwwRHZCcytCaUI7QVRrekV6Qjs7QWdDeDNHSTtFQXdHSTtBaENveEdSOztBZ0M1M0dJO0VBK0dFLGlEdkJ1OUJtQjtBVDB6RXpCO0FnQy93R007RUFDRSw4Q3ZCbzlCaUI7QVQ2ekV6QjtBZ0M5d0dNO0VBQ0UsMER2Qmc5QmlCO0FUZzBFekI7QWdDN3dHTTtFQUNFLG1DdkI0OEJpQjtBVG0wRXpCOztBZ0Mxd0dJO0VBQ0U7QWhDNndHTjs7QWdDNzRHSTs7Ozs7RUE0SU07QWhDeXdHVjs7QWlDdjVHQTtFQUVFO0VBQ0E7RUFDQTtFM0J1UkksMEJBTEk7RTJCaFJSO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFHQTtFQUNBO0VBQ0E7RTNCc1FJLGtDQUxJO0UyQi9QUjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0tBQUE7VUFBQTtFQUNBO0V2QmpCRTtFZ0JmRixrQ09rQ3FCO0VSdEJqQixxSVF3Qko7QWpDcTVHRjtBeUJ6NkdNO0VRaEJOO0lSaUJRO0V6QjQ2R047QUFDRjtBaUN4NUdFO0VBQ0U7RUFFQTtFQUNBO0FqQ3k1R0o7QWlDdDVHRTtFQUVFO0VBQ0E7RUFDQTtBakN1NUdKO0FpQ3A1R0U7RUFDRTtFUHJERix3Q09zRHVCO0VBQ3JCO0VBQ0E7RUFLRTtBakNrNUdOO0FpQzk0R0U7RUFDRTtFQUNBO0VBS0U7QWpDNDRHTjtBaUN4NEdFO0VBS0U7RUFDQTtFQUdBO0FqQ280R0o7QWlDajRHSTtFQUtJO0FqQyszR1I7QWlDMTNHRTtFQUdFO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7QWpDeTNHSjs7QWlDNzJHRTtFQ3RHQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FsQ3U5R0Y7O0FpQzkzR0U7RUN0R0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbEN3K0dGOztBaUMvNEdFO0VDdEdBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWxDeS9HRjs7QWlDaDZHRTtFQ3RHQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FsQzBnSEY7O0FpQ2o3R0U7RUN0R0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbEMyaEhGOztBaUNsOEdFO0VDdEdBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWxDNGlIRjs7QWlDbjlHRTtFQ3RHQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FsQzZqSEY7O0FpQ3ArR0U7RUN0R0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbEM4a0hGOztBaUMzOUdFO0VDdkdBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWxDc2tIRjs7QWlDNStHRTtFQ3ZHQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FsQ3VsSEY7O0FpQzcvR0U7RUN2R0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbEN3bUhGOztBaUM5Z0hFO0VDdkdBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWxDeW5IRjs7QWlDL2hIRTtFQ3ZHQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FsQzBvSEY7O0FpQ2hqSEU7RUN2R0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbEMycEhGOztBaUNqa0hFO0VDdkdBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWxDNHFIRjs7QWlDbGxIRTtFQ3ZHQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FsQzZySEY7O0FpQ3ZsSEE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQSwwQnhCdVJ3QztBVGswRzFDO0FpQy9rSEU7RUFDRTtBakNpbEhKO0FpQzlrSEU7RUFDRTtBakNnbEhKOztBaUNya0hBO0VDeElFO0VBQ0E7RTVCOE5JLDRCQUxJO0U0QnZOUjtBbENpdEhGOztBaUN4a0hBO0VDNUlFO0VBQ0E7RTVCOE5JLDZCQUxJO0U0QnZOUjtBbEN3dEhGOztBbUMzeEhBO0VWZ0JNLGdDVWZKO0FuQzh4SEY7QXlCM3dITTtFVXBCTjtJVnFCUTtFekI4d0hOO0FBQ0Y7QW1DanlIRTtFQUNFO0FuQ215SEo7O0FtQzd4SEU7RUFDRTtBbkNneUhKOztBbUM1eEhBO0VBQ0U7RUFDQTtFVkRJLDZCVUVKO0FuQyt4SEY7QXlCN3hITTtFVUxOO0lWTVE7RXpCZ3lITjtBQUNGO0FtQ2x5SEU7RUFDRTtFQUNBO0VWTkUsNEJVT0Y7QW5Db3lISjtBeUJ2eUhNO0VVQUo7SVZDTTtFekIweUhOO0FBQ0Y7O0FvQy96SEE7Ozs7OztFQU1FO0FwQ2swSEY7O0FvQy96SEE7RUFDRTtBcENrMEhGO0FxQzF5SEk7RUFDRTtFQUNBLG9CNUI2aEJ3QjtFNEI1aEJ4Qix1QjVCMmhCd0I7RTRCMWhCeEI7RUFyQ0o7RUFDQTtFQUNBO0VBQ0E7QXJDazFIRjtBcUN4eEhJO0VBQ0U7QXJDMHhITjs7QW9DeDBIQTtFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RTlCdVFJLCtCQUxJO0U4QmhRUjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBR0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0U5QjBPSSx1Q0FMSTtFOEJuT1I7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0UxQnpDRTtBVmszSEo7QW9DcjBIRTtFQUNFO0VBQ0E7RUFDQTtBcEN1MEhKOztBb0MveUhJO0VBQ0U7QXBDa3pITjtBb0NoekhNO0VBQ0U7RUFDQTtBcENrekhSOztBb0M5eUhJO0VBQ0U7QXBDaXpITjtBb0MveUhNO0VBQ0U7RUFDQTtBcENpekhSOztBaUIzMUhJO0VtQjRCQTtJQUNFO0VwQ20wSEo7RW9DajBISTtJQUNFO0lBQ0E7RXBDbTBITjtFb0MvekhFO0lBQ0U7RXBDaTBISjtFb0MvekhJO0lBQ0U7SUFDQTtFcENpMEhOO0FBQ0Y7QWlCNTJISTtFbUI0QkE7SUFDRTtFcENtMUhKO0VvQ2oxSEk7SUFDRTtJQUNBO0VwQ20xSE47RW9DLzBIRTtJQUNFO0VwQ2kxSEo7RW9DLzBISTtJQUNFO0lBQ0E7RXBDaTFITjtBQUNGO0FpQjUzSEk7RW1CNEJBO0lBQ0U7RXBDbTJISjtFb0NqMkhJO0lBQ0U7SUFDQTtFcENtMkhOO0VvQy8xSEU7SUFDRTtFcENpMkhKO0VvQy8xSEk7SUFDRTtJQUNBO0VwQ2kySE47QUFDRjtBaUI1NEhJO0VtQjRCQTtJQUNFO0VwQ20zSEo7RW9DajNISTtJQUNFO0lBQ0E7RXBDbTNITjtFb0MvMkhFO0lBQ0U7RXBDaTNISjtFb0MvMkhJO0lBQ0U7SUFDQTtFcENpM0hOO0FBQ0Y7QWlCNTVISTtFbUI0QkE7SUFDRTtFcENtNEhKO0VvQ2o0SEk7SUFDRTtJQUNBO0VwQ200SE47RW9DLzNIRTtJQUNFO0VwQ2k0SEo7RW9DLzNISTtJQUNFO0lBQ0E7RXBDaTRITjtBQUNGO0FvQ3gzSEU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBcEMwM0hKO0FxQzk4SEk7RUFDRTtFQUNBLG9CNUI2aEJ3QjtFNEI1aEJ4Qix1QjVCMmhCd0I7RTRCMWhCeEI7RUE5Qko7RUFDQTtFQUNBO0VBQ0E7QXJDKytIRjtBcUM1N0hJO0VBQ0U7QXJDODdITjs7QW9DOTNIRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXBDaTRISjtBcUNuK0hJO0VBQ0U7RUFDQSxvQjVCNmhCd0I7RTRCNWhCeEIsdUI1QjJoQndCO0U0QjFoQnhCO0VBdkJKO0VBQ0E7RUFDQTtFQUNBO0FyQzYvSEY7QXFDajlISTtFQUNFO0FyQ205SE47QW9DejRISTtFQUNFO0FwQzI0SE47O0FvQ3I0SEU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FwQ3c0SEo7QXFDMy9ISTtFQUNFO0VBQ0Esb0I1QjZoQndCO0U0QjVoQnhCLHVCNUIyaEJ3QjtFNEIxaEJ4QjtBckM2L0hOO0FxQ2wvSE07RUFDRTtBckNvL0hSO0FxQ2ovSE07RUFDRTtFQUNBLHFCNUIwZ0JzQjtFNEJ6Z0J0Qix1QjVCd2dCc0I7RTRCdmdCdEI7RUFuQ047RUFDQTtFQUNBO0FyQ3VoSUY7QXFDai9ISTtFQUNFO0FyQ20vSE47QW9DeDVISTtFQUNFO0FwQzA1SE47O0FvQ241SEE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FwQ3M1SEY7O0FvQ2g1SEE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBLGdCM0J5YjRCO0UyQnhiNUI7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0UxQnRLRTtBVjBqSUo7QW9DajVIRTtFQUVFO0VWMUxGLGtEVTRMdUI7QXBDaTVIekI7QW9DOTRIRTtFQUVFO0VBQ0E7RVZsTUYsbURVbU11QjtBcEMrNEh6QjtBb0M1NEhFO0VBRUU7RUFDQTtFQUNBO0FwQzY0SEo7O0FvQ3Y0SEE7RUFDRTtBcEMwNEhGOztBb0N0NEhBO0VBQ0U7RUFDQTtFQUNBO0U5Qm1FSSxvQkFMSTtFOEI1RFI7RUFDQTtBcEN5NEhGOztBb0NyNEhBO0VBQ0U7RUFDQTtFQUNBO0FwQ3c0SEY7O0FvQ3A0SEE7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXBDczRIRjs7QXNDNW5JQTs7RUFFRTtFQUNBO0VBQ0E7QXRDK25JRjtBc0M3bklFOztFQUNFO0VBQ0E7QXRDZ29JSjtBc0MzbklFOzs7Ozs7Ozs7Ozs7RUFNRTtBdENtb0lKOztBc0M5bklBO0VBQ0U7RUFDQTtFQUNBO0F0Q2lvSUY7QXNDL25JRTtFQUNFO0F0Q2lvSUo7O0FzQzduSUE7RTVCaEJJO0FWaXBJSjtBc0M3bklFOztFQUVFO0F0QytuSUo7QXNDM25JRTs7O0U1QlZFO0VBQ0E7QVYwb0lKO0FzQ3ZuSUU7OztFNUJORTtFQUNBO0FWa29JSjs7QXNDMW1JQTtFQUNFO0VBQ0E7QXRDNm1JRjtBc0MzbUlFO0VBR0U7QXRDMm1JSjtBc0N4bUlFO0VBQ0U7QXRDMG1JSjs7QXNDdG1JQTtFQUNFO0VBQ0E7QXRDeW1JRjs7QXNDdG1JQTtFQUNFO0VBQ0E7QXRDeW1JRjs7QXNDcmxJQTtFQUNFO0VBQ0E7RUFDQTtBdEN3bElGO0FzQ3RsSUU7O0VBRUU7QXRDd2xJSjtBc0NybElFOztFQUVFO0F0Q3VsSUo7QXNDbmxJRTs7RTVCMUZFO0VBQ0E7QVZpcklKO0FzQ25sSUU7O0U1QjdHRTtFQUNBO0FWb3NJSjs7QXVDNXRJQTtFQUVFO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFDQTtFQUdBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXZDMnRJRjs7QXVDeHRJQTtFQUNFO0VBQ0E7RWpDc1FJLHVDQUxJO0VpQy9QUjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VkZkksdUdjZ0JKO0F2QzJ0SUY7QXlCdnVJTTtFY0dOO0lkRlE7RXpCMHVJTjtBQUNGO0F1Qzl0SUU7RUFFRTtBdkMrdElKO0F1QzN0SUU7RUFDRTtFQUNBLGtEOUJraEJvQjtBVDJzSHhCO0F1Q3p0SUU7RUFDRTtFQUNBO0VBQ0E7QXZDMnRJSjs7QXVDbnRJQTtFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBR0E7QXZDbXRJRjtBdUNqdElFO0VBQ0U7RUFDQTtFN0I1Q0E7RUFDQTtBVmd3SUo7QXVDbHRJSTtFQUdFO0VBQ0E7QXZDa3RJTjtBdUMvc0lJO0VBRUU7RUFDQTtFQUNBO0F2Q2d0SU47QXVDNXNJRTs7RUFFRTtFQUNBO0VBQ0E7QXZDOHNJSjtBdUMzc0lFO0VBRUU7RTdCdkVBO0VBQ0E7QVZveElKOztBdUNuc0lBO0VBRUU7RUFDQTtFQUNBO0F2Q3FzSUY7QXVDbHNJRTtFN0JsR0U7QVZ1eUlKO0F1Q2xzSUk7RUFDRTtFQUNBO0VBQ0E7QXZDb3NJTjtBdUNoc0lFOztFQUVFO0ViN0hGLG9EYThIdUI7QXZDa3NJekI7O0F1Q3pySUE7RUFFRTtFQUNBO0VBQ0E7RUFHQTtBdkN5cklGO0F1Q3ZySUU7RUFDRTtFQUNBO0VBQ0E7QXZDeXJJSjtBdUN2cklJO0VBRUU7QXZDd3JJTjtBdUNwcklFOztFQUVFLGdCOUI4YzBCO0U4QjdjMUI7RUFDQTtBdkNzcklKOztBdUM1cUlFOztFQUVFO0VBQ0E7QXZDK3FJSjs7QXVDMXFJRTs7RUFFRTtFQUNBO0VBQ0E7QXZDNnFJSjs7QXVDdnFJRTs7RUFDRTtBdkMycUlKOztBdUNqcUlFO0VBQ0U7QXZDb3FJSjtBdUNscUlFO0VBQ0U7QXZDb3FJSjs7QXdDNzJJQTtFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFHQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXhDNjJJRjtBd0N2MklFOzs7Ozs7O0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QXhDKzJJSjtBd0MzMUlBO0VBQ0U7RUFDQTtFQUNBO0VsQzROSSwyQ0FMSTtFa0NyTlI7RUFDQTtFQUNBO0F4QzYxSUY7QXdDMzFJRTtFQUVFO0F4QzQxSUo7O0F3Q2wxSUE7RUFFRTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBQ0E7RUFHQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F4Q2kxSUY7QXdDOTBJSTtFQUVFO0F4QyswSU47QXdDMzBJRTtFQUNFO0F4QzYwSUo7O0F3Q3AwSUE7RUFDRSxtQi9Cd2dDa0M7RStCdmdDbEMsc0IvQnVnQ2tDO0UrQnRnQ2xDO0F4Q3UwSUY7QXdDcjBJRTs7O0VBR0U7QXhDdTBJSjs7QXdDMXpJQTtFQUNFO0VBQ0E7RUFHQTtBeEMyeklGOztBd0N2eklBO0VBQ0U7RWxDeUlJLDZDQUxJO0VrQ2xJUjtFQUNBO0VBQ0E7RUFDQTtFOUJ4SUU7RWVIRSwrQ2U2SUo7QXhDMHpJRjtBeUJuOElNO0VlaUlOO0lmaElRO0V6QnM4SU47QUFDRjtBd0M3eklFO0VBQ0U7QXhDK3pJSjtBd0M1eklFO0VBQ0U7RUFDQTtFQUNBO0F4Qzh6SUo7O0F3Q3h6SUE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0F4QzJ6SUY7O0F3Q3h6SUE7RUFDRTtFQUNBO0F4QzJ6SUY7O0FpQnI3SUk7RXVCc0lBO0lBRUk7SUFDQTtFeENreklOO0V3Q2h6SU07SUFDRTtFeENreklSO0V3Q2h6SVE7SUFDRTtFeENreklWO0V3Qy95SVE7SUFDRTtJQUNBO0V4Q2l6SVY7RXdDN3lJTTtJQUNFO0V4Qyt5SVI7RXdDNXlJTTtJQUNFO0lBQ0E7RXhDOHlJUjtFd0MzeUlNO0lBQ0U7RXhDNnlJUjtFd0MxeUlNO0lBRUU7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lmOU5KLGdCZWdPSTtFeEMweUlSO0V3Q3Z5SVE7SUFDRTtFeEN5eUlWO0V3Q3R5SVE7SUFDRTtJQUNBO0lBQ0E7SUFDQTtFeEN3eUlWO0FBQ0Y7QWlCcitJSTtFdUJzSUE7SUFFSTtJQUNBO0V4Q2kySU47RXdDLzFJTTtJQUNFO0V4Q2kySVI7RXdDLzFJUTtJQUNFO0V4Q2kySVY7RXdDOTFJUTtJQUNFO0lBQ0E7RXhDZzJJVjtFd0M1MUlNO0lBQ0U7RXhDODFJUjtFd0MzMUlNO0lBQ0U7SUFDQTtFeEM2MUlSO0V3QzExSU07SUFDRTtFeEM0MUlSO0V3Q3oxSU07SUFFRTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SWY5TkosZ0JlZ09JO0V4Q3kxSVI7RXdDdDFJUTtJQUNFO0V4Q3cxSVY7RXdDcjFJUTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0V4Q3UxSVY7QUFDRjtBaUJwaEpJO0V1QnNJQTtJQUVJO0lBQ0E7RXhDZzVJTjtFd0M5NElNO0lBQ0U7RXhDZzVJUjtFd0M5NElRO0lBQ0U7RXhDZzVJVjtFd0M3NElRO0lBQ0U7SUFDQTtFeEMrNElWO0V3QzM0SU07SUFDRTtFeEM2NElSO0V3QzE0SU07SUFDRTtJQUNBO0V4QzQ0SVI7RXdDejRJTTtJQUNFO0V4QzI0SVI7RXdDeDRJTTtJQUVFO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJZjlOSixnQmVnT0k7RXhDdzRJUjtFd0NyNElRO0lBQ0U7RXhDdTRJVjtFd0NwNElRO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7RXhDczRJVjtBQUNGO0FpQm5rSkk7RXVCc0lBO0lBRUk7SUFDQTtFeEMrN0lOO0V3Qzc3SU07SUFDRTtFeEMrN0lSO0V3Qzc3SVE7SUFDRTtFeEMrN0lWO0V3QzU3SVE7SUFDRTtJQUNBO0V4Qzg3SVY7RXdDMTdJTTtJQUNFO0V4QzQ3SVI7RXdDejdJTTtJQUNFO0lBQ0E7RXhDMjdJUjtFd0N4N0lNO0lBQ0U7RXhDMDdJUjtFd0N2N0lNO0lBRUU7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lmOU5KLGdCZWdPSTtFeEN1N0lSO0V3Q3A3SVE7SUFDRTtFeENzN0lWO0V3Q243SVE7SUFDRTtJQUNBO0lBQ0E7SUFDQTtFeENxN0lWO0FBQ0Y7QWlCbG5KSTtFdUJzSUE7SUFFSTtJQUNBO0V4QzgrSU47RXdDNStJTTtJQUNFO0V4QzgrSVI7RXdDNStJUTtJQUNFO0V4QzgrSVY7RXdDMytJUTtJQUNFO0lBQ0E7RXhDNitJVjtFd0N6K0lNO0lBQ0U7RXhDMitJUjtFd0N4K0lNO0lBQ0U7SUFDQTtFeEMwK0lSO0V3Q3YrSU07SUFDRTtFeEN5K0lSO0V3Q3QrSU07SUFFRTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SWY5TkosZ0JlZ09JO0V4Q3MrSVI7RXdDbitJUTtJQUNFO0V4Q3ErSVY7RXdDbCtJUTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0V4Q28rSVY7QUFDRjtBd0MzaEpJO0VBRUk7RUFDQTtBeEM0aEpSO0F3QzFoSlE7RUFDRTtBeEM0aEpWO0F3QzFoSlU7RUFDRTtBeEM0aEpaO0F3Q3poSlU7RUFDRTtFQUNBO0F4QzJoSlo7QXdDdmhKUTtFQUNFO0F4Q3loSlY7QXdDdGhKUTtFQUNFO0VBQ0E7QXhDd2hKVjtBd0NyaEpRO0VBQ0U7QXhDdWhKVjtBd0NwaEpRO0VBRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VmOU5KLGdCZWdPSTtBeENvaEpWO0F3Q2poSlU7RUFDRTtBeENtaEpaO0F3Q2hoSlU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBeENraEpaOztBd0NqZ0pBOztFQUdFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXhDbWdKRjs7QXdDNy9JSTtFQUNFO0F4Q2dnSk47O0F5Q3p4SkE7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUdBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0UvQmpCRTtBVjJ5Sko7QXlDdHhKRTtFQUNFO0VBQ0E7QXpDd3hKSjtBeUNyeEpFO0VBQ0U7RUFDQTtBekN1eEpKO0F5Q3J4Skk7RUFDRTtFL0J0QkY7RUFDQTtBVjh5Sko7QXlDcnhKSTtFQUNFO0UvQmJGO0VBQ0E7QVZxeUpKO0F5Q2x4SkU7O0VBRUU7QXpDb3hKSjs7QXlDaHhKQTtFQUdFO0VBQ0E7RUFDQTtBekNpeEpGOztBeUM5d0pBO0VBQ0U7RUFDQTtBekNpeEpGOztBeUM5d0pBO0VBQ0U7RUFDQTtFQUNBO0F6Q2l4SkY7O0F5Qzl3SkE7RUFDRTtBekNpeEpGOztBeUN6d0pFO0VBQ0U7QXpDNHdKSjs7QXlDcHdKQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QXpDdXdKRjtBeUNyd0pFO0UvQjdGRTtBVnEySko7O0F5Q253SkE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBekNzd0pGO0F5Q3B3SkU7RS9CeEdFO0FWKzJKSjs7QXlDN3ZKQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0F6Q2d3SkY7QXlDOXZKRTtFQUNFO0VBQ0E7QXpDZ3dKSjs7QXlDNXZKQTtFQUNFO0VBQ0E7QXpDK3ZKRjs7QXlDM3ZKQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFL0IxSUU7QVZ5NEpKOztBeUMzdkpBOzs7RUFHRTtBekM4dkpGOztBeUMzdkpBOztFL0IzSUk7RUFDQTtBVjI0Sko7O0F5QzV2SkE7O0UvQmxJSTtFQUNBO0FWbTRKSjs7QXlDcnZKRTtFQUNFO0F6Q3d2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RUFDRTtFQUNBO0FqRGszS1o7O0FpQng4S0k7RWdDOERBO0lBQ0U7RWpEODRLSjtFaUQzNEtNO0l2Q3ZESjtJQVpBO0VWazlLRjtFaUQxNEtNO0l2Q3hFSjtJQVlBO0VWMDhLRjtFaUR6NEtNO0lBQ0U7RWpEMjRLUjtFaUR4NEtNO0lBQ0U7SUFDQTtFakQwNEtSO0VpRHg0S1E7SUFDRTtJQUNBO0VqRDA0S1Y7QUFDRjtBaUJqK0tJO0VnQzhEQTtJQUNFO0VqRHM2S0o7RWlEbjZLTTtJdkN2REo7SUFaQTtFVjArS0Y7RWlEbDZLTTtJdkN4RUo7SUFZQTtFVmsrS0Y7RWlEajZLTTtJQUNFO0VqRG02S1I7RWlEaDZLTTtJQUNFO0lBQ0E7RWpEazZLUjtFaURoNktRO0lBQ0U7SUFDQTtFakRrNktWO0FBQ0Y7QWlCei9LSTtFZ0M4REE7SUFDRTtFakQ4N0tKO0VpRDM3S007SXZDdkRKO0lBWkE7RVZrZ0xGO0VpRDE3S007SXZDeEVKO0lBWUE7RVYwL0tGO0VpRHo3S007SUFDRTtFakQyN0tSO0VpRHg3S007SUFDRTtJQUNBO0VqRDA3S1I7RWlEeDdLUTtJQUNFO0lBQ0E7RWpEMDdLVjtBQUNGO0FpQmpoTEk7RWdDOERBO0lBQ0U7RWpEczlLSjtFaURuOUtNO0l2Q3ZESjtJQVpBO0VWMGhMRjtFaURsOUtNO0l2Q3hFSjtJQVlBO0VWa2hMRjtFaURqOUtNO0lBQ0U7RWpEbTlLUjtFaURoOUtNO0lBQ0U7SUFDQTtFakRrOUtSO0VpRGg5S1E7SUFDRTtJQUNBO0VqRGs5S1Y7QUFDRjtBaUJ6aUxJO0VnQzhEQTtJQUNFO0VqRDgrS0o7RWlEMytLTTtJdkN2REo7SUFaQTtFVmtqTEY7RWlEMStLTTtJdkN4RUo7SUFZQTtFVjBpTEY7RWlEeitLTTtJQUNFO0VqRDIrS1I7RWlEeCtLTTtJQUNFO0lBQ0E7RWpEMCtLUjtFaUR4K0tRO0lBQ0U7SUFDQTtFakQwK0tWO0FBQ0Y7QWlENzlLQTtFdkNoSkk7QVZnbkxKO0FpRDc5S0U7RUFDRTtBakQrOUtKO0FpRDc5S0k7RUFDRTtBakQrOUtOOztBaURsOUtFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWpEcTlLSjs7QWlELzlLRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FqRGsrS0o7O0FpRDUrS0U7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBakQrK0tKOztBaUR6L0tFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWpENC9LSjs7QWlEdGdMRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FqRHlnTEo7O0FpRG5oTEU7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBakRzaExKOztBaURoaUxFO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QWpEbWlMSjs7QWlEN2lMRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FqRGdqTEo7O0FrRDV1TEE7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBR0E7RUFDQSxVekMrb0QyQjtFeUM5b0QzQixXekM4b0QyQjtFeUM3b0QzQjtFQUNBO0VBQ0E7RUFDQTtFeENKRTtFd0NNRjtBbEQ0dUxGO0FrRHp1TEU7RUFDRTtFQUNBO0VBQ0E7QWxEMnVMSjtBa0R4dUxFO0VBQ0U7RUFDQTtFQUNBO0FsRDB1TEo7QWtEdnVMRTtFQUVFO0VBQ0E7S0FBQTtVQUFBO0VBQ0E7QWxEd3VMSjs7QWtEaHVMQTtFQUhFO0FsRHV1TEY7O0FrRDl0TEk7RUFURjtBbEQydUxGOztBbUQ1eExBO0VBRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFN0N5UkksOEJBTEk7RTZDbFJSO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUdBO0VBQ0E7RTdDMlFJLG9DQUxJO0U2Q3BRUjtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RXpDUkU7QVZxeUxKO0FtRDF4TEU7RUFDRTtBbkQ0eExKO0FtRHp4TEU7RUFDRTtBbkQyeExKOztBbUR2eExBO0VBQ0U7RUFFQTtFQUNBO0VBQ0E7RUFBQTtFQUNBO0VBQ0E7QW5EeXhMRjtBbUR2eExFO0VBQ0U7QW5EeXhMSjs7QW1EcnhMQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0V6Q2hDRTtFQUNBO0FWeXpMSjtBbUR2eExFO0VBQ0U7RUFDQTtBbkR5eExKOztBbURyeExBO0VBQ0U7RUFDQTtBbkR3eExGOztBb0R0MUxBO0VBRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBR0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBR0E7QXBEbzFMRjs7QW9ENzBMQTtFQUNFO0VBQ0E7RUFDQTtFQUVBO0FwRCswTEY7QW9ENTBMRTtFM0I1Q0ksbUMyQjZDRjtFQUNBLDhCM0N5N0NnQztBVHE1SXBDO0F5QngzTE07RTJCd0NKO0kzQnZDTTtFekIyM0xOO0FBQ0Y7QW9EajFMRTtFQUNFLGUzQ3U3Q2dDO0FUNDVJcEM7QW9ELzBMRTtFQUNFLHNCM0NvN0NnQztBVDY1SXBDOztBb0Q3MExBO0VBQ0U7QXBEZzFMRjtBb0Q5MExFO0VBQ0U7RUFDQTtBcERnMUxKO0FvRDcwTEU7RUFDRTtBcEQrMExKOztBb0QzMExBO0VBQ0U7RUFDQTtFQUNBO0FwRDgwTEY7O0FvRDEwTEE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RTFDckZFO0UwQ3lGRjtBcEQwMExGOztBb0R0MExBO0VBRUU7RUFDQTtFQUNBO0VDbEhBO0VBQ0E7RUFDQTtFQUNBLGtDRGtIMEI7RUNqSDFCO0VBQ0E7RUFDQSx1Q0QrRzREO0FwRDQwTDlEO0FxRHg3TEU7RUFBUztBckQyN0xYO0FxRDE3TEU7RUFBUyxtQ0QyR2lGO0FwRGsxTDVGOztBb0Q3MExBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0UxQ3RHRTtFQUNBO0FWdTdMSjtBb0QvMExFO0VBQ0U7RUFDQTtBcERpMUxKOztBb0Q1MExBO0VBQ0U7RUFDQTtBcEQrMExGOztBb0QxMExBO0VBQ0U7RUFHQTtFQUNBO0FwRDIwTEY7O0FvRHYwTEE7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0UxQzFIRTtFQUNBO0FWcThMSjtBb0R0MExFO0VBQ0U7QXBEdzBMSjs7QWlCcDdMSTtFbUNrSEY7SUFDRTtJQUNBO0VwRHMwTEY7RW9EbDBMQTtJQUNFO0lBQ0E7SUFDQTtFcERvMExGO0VvRGowTEE7SUFDRTtFcERtMExGO0FBQ0Y7QWlCbjhMSTtFbUNvSUY7O0lBRUU7RXBEazBMRjtBQUNGO0FpQno4TEk7RW1DMklGO0lBQ0U7RXBEaTBMRjtBQUNGO0FvRHh6TEk7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBcEQwekxOO0FvRHh6TE07RUFDRTtFQUNBO0UxQzFNSjtBVnFnTUo7QW9EdnpMTTs7RTFDOU1GO0FWeWdNSjtBb0R0ekxNO0VBQ0U7QXBEd3pMUjs7QWlCbjlMSTtFbUN5SUE7SUFDRTtJQUNBO0lBQ0E7SUFDQTtFcEQ4MExKO0VvRDUwTEk7SUFDRTtJQUNBO0kxQzFNSjtFVnloTUY7RW9EMzBMSTs7STFDOU1GO0VWNmhNRjtFb0QxMExJO0lBQ0U7RXBENDBMTjtBQUNGO0FpQngrTEk7RW1DeUlBO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7RXBEazJMSjtFb0RoMkxJO0lBQ0U7SUFDQTtJMUMxTUo7RVY2aU1GO0VvRC8xTEk7O0kxQzlNRjtFVmlqTUY7RW9EOTFMSTtJQUNFO0VwRGcyTE47QUFDRjtBaUI1L0xJO0VtQ3lJQTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0VwRHMzTEo7RW9EcDNMSTtJQUNFO0lBQ0E7STFDMU1KO0VWaWtNRjtFb0RuM0xJOztJMUM5TUY7RVZx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QTtFQUNBO0U5QzVKRTtFQUNBO0FWZzJNSjtBd0Rsc01FO0VBQ0U7QXhEb3NNSjs7QXdEaHNNQTtFQUNFO0VBQ0E7QXhEbXNNRjs7QXlEeDNNQTtFQUNFO0F6RDIzTUY7O0F5RHgzTUE7RUFDRTtBekQyM01GOztBeUR4M01BO0VBQ0U7RUFDQTtFQUNBO0F6RDIzTUY7QTBEajVNRTtFQUNFO0VBQ0E7RUFDQTtBMURtNU1KOztBeUQ1M01BO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VoQ2xCSSxzQ2dDbUJKO0F6RCszTUY7QXlCOTRNTTtFZ0NRTjtJaENQUTtFekJpNU1OO0FBQ0Y7O0F5RGo0TUE7OztFQUdFO0F6RG80TUY7O0F5RGo0TUE7O0VBRUU7QXpEbzRNRjs7QXlEajRNQTs7RUFFRTtBekRvNE1GOztBeUQzM01FO0VBQ0U7RUFDQTtFQUNBO0F6RDgzTUo7QXlEMzNNRTs7O0VBR0U7RUFDQTtBekQ2M01KO0F5RDEzTUU7O0VBRUU7RUFDQTtFaEM1REUsMkJnQzZERjtBekQ0M01KO0F5QnI3TU07RWdDcURKOztJaENwRE07RXpCeTdNTjtBQUNGOztBeUR6M01BOztFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBQ0EsVWhENGdEbUM7RWdEM2dEbkM7RUFDQSxXaEQxRlM7RWdEMkZUO0VBQ0E7RUFDQTtFQUNBLFloRHVnRG1DO0VnQjdsRC9CLDhCZ0N1Rko7QXpEMjNNRjtBeUI5OE1NO0VnQ2tFTjs7SWhDakVRO0V6Qms5TU47QUFDRjtBeUQ5M01FOzs7RUFFRSxXaERwR087RWdEcUdQO0VBQ0E7RUFDQSxZaEQrL0NpQztBVGs0SnJDOztBeUQ5M01BO0VBQ0U7QXpEaTRNRjs7QXlEOTNNQTtFQUNFO0F6RGk0TUY7O0F5RDUzTUE7O0VBRUU7RUFDQSxXaERnZ0RtQztFZ0QvL0NuQyxZaEQrL0NtQztFZ0Q5L0NuQztFQUNBO0VBQ0E7QXpEKzNNRjs7QXlENTNNQTs7Ozs7OztHQUFBO0FBUUE7RUFDRTtBekQrM01GOztBeUQ3M01BO0VBQ0U7QXpEZzRNRjs7QXlEeDNNQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQSxpQmhEdzhDbUM7RWdEdjhDbkM7RUFDQSxnQmhEczhDbUM7QVRvN0pyQztBeUR4M01FO0VBQ0U7RUFDQTtFQUNBLFdoRHM4Q2lDO0VnRHI4Q2pDLFdoRHM4Q2lDO0VnRHI4Q2pDO0VBQ0EsaUJoRHM4Q2lDO0VnRHI4Q2pDLGdCaERxOENpQztFZ0RwOENqQztFQUNBO0VBQ0Esc0JoRDFLTztFZ0QyS1A7RUFDQTtFQUVBO0VBQ0E7RUFDQSxZaEQ2N0NpQztFZ0JybUQvQiw2QmdDeUtGO0F6RHkzTUo7QXlCOWhOTTtFZ0NvSko7SWhDbkpNO0V6QmlpTk47QUFDRjtBeUQzM01FO0VBQ0UsVWhEMDdDaUM7QVRtOEpyQzs7QXlEcDNNQTtFQUNFO0VBQ0E7RUFDQSxlaERvN0NtQztFZ0RuN0NuQztFQUNBLG9CaERpN0NtQztFZ0RoN0NuQyx1QmhEZzdDbUM7RWdELzZDbkMsV2hEck1TO0VnRHNNVDtBekR1M01GOztBeURqM01FOztFQUVFLGdDaERxN0NpQztBVCs3SnJDO0F5RGozTUU7RUFDRSxzQmhEeE1PO0FUMmpOWDtBeURoM01FO0VBQ0UsV2hENU1PO0FUOGpOWDs7QXlENTNNRTs7O0VBRUUsZ0NoRHE3Q2lDO0FUMjhKckM7QXlENzNNRTtFQUNFLHNCaER4TU87QVR1a05YO0F5RDUzTUU7RUFDRSxXaEQ1TU87QVQwa05YOztBMkR4bE5BOztFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtBM0QwbE5GOztBMkR0bE5BO0VBQ0U7SUFBSztFM0QwbE5MO0FBQ0Y7QTJEdmxOQTtFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUdBO0VBQ0E7QTNEc2xORjs7QTJEbmxOQTtFQUVFO0VBQ0E7RUFDQTtBM0RxbE5GOztBMkQ1a05BO0VBQ0U7SUFDRTtFM0Qra05GO0UyRDdrTkE7SUFDRTtJQUNBO0UzRCtrTkY7QUFDRjtBMkQza05BO0VBRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUdBO0VBQ0E7QTNEMGtORjs7QTJEdmtOQTtFQUNFO0VBQ0E7QTNEMGtORjs7QTJEdGtORTtFQUNFOztJQUVFO0UzRHlrTko7QUFDRjtBNER6cE5BO0VBRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0E1RDBwTkY7O0FpQjdsTkk7RTJDNUNGO0lBRUk7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJbkM1QkEsMENtQzhCQTtFNUQyb05KO0FBQ0Y7QXlCdHFOTTtFbUNZSjtJbkNYTTtFekJ5cU5OO0FBQ0Y7QWlCbm5OSTtFMkM1QkU7SUFDRTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0U1RGtwTk47RTREL29OSTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RTVEaXBOTjtFNEQ5b05JO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RTVEZ3BOTjtFNEQ3b05JO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0U1RCtvTk47RTRENW9OSTtJQUVFO0U1RDZvTk47RTREMW9OSTtJQUdFO0U1RDBvTk47QUFDRjtBaUJ2cU5JO0UyQy9CRjtJQWlFTTtJQUNBO0lBQ0E7RTVEeW9OTjtFNER2b05NO0lBQ0U7RTVEeW9OUjtFNER0b05NO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7SUFFQTtFNUR1b05SO0FBQ0Y7O0FpQjNxTkk7RTJDNUNGO0lBRUk7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJbkM1QkEsMENtQzhCQTtFNUR5dE5KO0FBQ0Y7QXlCcHZOTTtFbUNZSjtJbkNYTTtFekJ1dk5OO0FBQ0Y7QWlCanNOSTtFMkM1QkU7SUFDRTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0U1RGd1Tk47RTREN3ROSTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RTVEK3ROTjtFNEQ1dE5JO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RTVEOHROTjtFNEQzdE5JO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0U1RDZ0Tk47RTREMXROSTtJQUVFO0U1RDJ0Tk47RTREeHROSTtJQUdFO0U1RHd0Tk47QUFDRjtBaUJydk5JO0UyQy9CRjtJQWlFTTtJQUNBO0lBQ0E7RTVEdXROTjtFNERydE5NO0lBQ0U7RTVEdXROUjtFNERwdE5NO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7SUFFQTtFNURxdE5SO0FBQ0Y7O0FpQnp2Tkk7RTJDNUNGO0lBRUk7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJbkM1QkEsMENtQzhCQTtFNUR1eU5KO0FBQ0Y7QXlCbDBOTTtFbUNZSjtJbkNYTTtFekJxME5OO0FBQ0Y7QWlCL3dOSTtFMkM1QkU7SUFDRTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0U1RDh5Tk47RTREM3lOSTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RTVENnlOTjtFNEQxeU5JO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RTVENHlOTjtFNER6eU5JO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0U1RDJ5Tk47RTREeHlOSTtJQUVFO0U1RHl5Tk47RTREdHlOSTtJQUdFO0U1RHN5Tk47QUFDRjtBaUJuME5JO0UyQy9CRjtJQWlFTTtJQUNBO0lBQ0E7RTVEcXlOTjtFNERueU5NO0lBQ0U7RTVEcXlOUjtFNERseU5NO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7SUFFQTtFNURteU5SO0FBQ0Y7O0FpQnYwTkk7RTJDNUNGO0lBRUk7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJbkM1QkEsMENtQzhCQTtFNURxM05KO0FBQ0Y7QXlCaDVOTTtFbUNZSjtJbkNYTTtFekJtNU5OO0FBQ0Y7QWlCNzFOSTtFMkM1QkU7SUFDRTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0U1RDQzTk47RTREejNOSTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RTVEMjNOTjtFNER4M05JO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RTVEMDNOTjtFNER2M05JO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0U1RHkzTk47RTREdDNOSTtJQUVFO0U1RHUzTk47RTREcDNOSTtJQUdFO0U1RG8zTk47QUFDRjtBaUJqNU5JO0UyQy9CRjtJQWlFTTtJQUNBO0lBQ0E7RTVEbTNOTjtFNERqM05NO0lBQ0U7RTVEbTNOUjtFNERoM05NO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7SUFFQTtFNURpM05SO0FBQ0Y7O0FpQnI1Tkk7RTJDNUNGO0lBRUk7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJbkM1QkEsMENtQzhCQTtFNURtOE5KO0FBQ0Y7QXlCOTlOTTtFbUNZSjtJbkNYTTtFekJpK05OO0FBQ0Y7QWlCMzZOSTtFMkM1QkU7SUFDRTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0U1RDA4Tk47RTREdjhOSTtJQUNFO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RTVEeThOTjtFNER0OE5JO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBQ0E7RTVEdzhOTjtFNERyOE5JO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0U1RHU4Tk47RTREcDhOSTtJQUVFO0U1RHE4Tk47RTREbDhOSTtJQUdFO0U1RGs4Tk47QUFDRjtBaUIvOU5JO0UyQy9CRjtJQWlFTTtJQUNBO0lBQ0E7RTVEaThOTjtFNEQvN05NO0lBQ0U7RTVEaThOUjtFNEQ5N05NO0lBQ0U7SUFDQTtJQUNBO0lBQ0E7SUFFQTtFNUQrN05SO0FBQ0Y7O0E0RC9nT0U7RUFFSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VuQzVCQSwwQ21DOEJBO0E1RGdoT047QXlCMWlPTTtFbUNZSjtJbkNYTTtFekI2aU9OO0FBQ0Y7QTREbmhPTTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTVEcWhPUjtBNERsaE9NO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBNURvaE9SO0E0RGpoT007RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBNURtaE9SO0E0RGhoT007RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QTVEa2hPUjtBNEQvZ09NO0VBRUU7QTVEZ2hPUjtBNEQ3Z09NO0VBR0U7QTVENmdPUjs7QTREbC9OQTtFUHBIRTtFQUNBO0VBQ0E7RUFDQSxhNUNvbUNrQztFNENubUNsQztFQUNBO0VBQ0Esc0I1Q1VTO0FUZ21PWDtBcUR2bU9FO0VBQVM7QXJEMG1PWDtBcUR6bU9FO0VBQVMsWTVDMDlDeUI7QVRrcExwQzs7QTREOS9OQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0E1RGlnT0Y7QTRELy9ORTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0E1RGlnT0o7O0E0RDcvTkE7RUFDRTtFQUNBO0E1RGdnT0Y7O0E0RDcvTkE7RUFDRTtFQUNBO0VBQ0E7QTVEZ2dPRjs7QTZEaHBPQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxZcER5eUNrQztBVDAyTHBDO0E2RGpwT0U7RUFDRTtFQUNBO0E3RG1wT0o7O0E2RDlvT0E7RUFDRTtBN0RpcE9GOztBNkQ5b09BO0VBQ0U7QTdEaXBPRjs7QTZEOW9PQTtFQUNFO0E3RGlwT0Y7O0E2RDVvT0U7RUFDRTtBN0Qrb09KOztBNkQzb09BO0VBQ0U7SUFDRSxZcEQ0d0NnQztFVGs0TGxDO0FBQ0Y7QTZEM29PQTtFQUNFO1VBQUE7RUFDQTtVQUFBO0VBQ0E7QTdENm9PRjs7QTZEMW9PQTtFQUNFO0lBQ0U7WUFBQTtFN0Q2b09GO0FBQ0Y7QTBENXJPRTtFQUNFO0VBQ0E7RUFDQTtBMUQ4ck9KOztBOERoc09FO0VBQ0U7RUFDQTtBOURtc09KOztBOERyc09FO0VBQ0U7RUFDQTtBOUR3c09KOztBOEQxc09FO0VBQ0U7RUFDQTtBOUQ2c09KOztBOEQvc09FO0VBQ0U7RUFDQTtBOURrdE9KOztBOERwdE9FO0VBQ0U7RUFDQTtBOUR1dE9KOztBOER6dE9FO0VBQ0U7RUFDQTtBOUQ0dE9KOztBOEQ5dE9FO0VBQ0U7RUFDQTtBOURpdU9KOztBOERudU9FO0VBQ0U7RUFDQTtBOURzdU9KOztBK0R6dU9FO0VBQ0U7RUFDQTtVQUFBO0EvRDR1T0o7QStEenVPTTtFQUdFO0VBQ0E7VUFBQTtBL0R5dU9SOztBK0Rsdk9FO0VBQ0U7RUFDQTtVQUFBO0EvRHF2T0o7QStEbHZPTTtFQUdFO0VBQ0E7VUFBQTtBL0Rrdk9SOztBK0Qzdk9FO0VBQ0U7RUFDQTtVQUFBO0EvRDh2T0o7QStEM3ZPTTtFQUdFO0VBQ0E7VUFBQTtBL0Qydk9SOztBK0Rwd09FO0VBQ0U7RUFDQTtVQUFBO0EvRHV3T0o7QStEcHdPTTtFQUdFO0VBQ0E7VUFBQTtBL0Rvd09SOztBK0Q3d09FO0VBQ0U7RUFDQTtVQUFBO0EvRGd4T0o7QStEN3dPTTtFQUdFO0VBQ0E7VUFBQTtBL0Q2d09SOztBK0R0eE9FO0VBQ0U7RUFDQTtVQUFBO0EvRHl4T0o7QStEdHhPTTtFQUdFO0VBQ0E7VUFBQTtBL0RzeE9SOztBK0QveE9FO0VBQ0U7RUFDQTtVQUFBO0EvRGt5T0o7QStEL3hPTTtFQUdFO0VBQ0E7VUFBQTtBL0QreE9SOztBK0R4eU9FO0VBQ0U7RUFDQTtVQUFBO0EvRDJ5T0o7QStEeHlPTTtFQUdFO0VBQ0E7VUFBQTtBL0R3eU9SOztBK0RqeU9BO0VBQ0U7RUFDQTtVQUFBO0EvRG95T0Y7QStEanlPSTtFQUVFO0VBQ0E7VUFBQTtBL0RreU9OOztBZ0U1ek9BO0VBQ0U7RUFFQTtBaEU4ek9GOztBaUVqME9BO0VBQ0U7RUFDQSxheEQ2YzRCO0V3RDVjNUI7RUFDQTtVQUFBO0VBQ0EsNkJ4RDJjNEI7RXdEMWM1QjtBakVvME9GO0FpRWwwT0U7RUFDRTtFQUNBLFV4RHVjMEI7RXdEdGMxQixXeERzYzBCO0V3RHJjMUI7RXhDSUUsc0N3Q0hGO0FqRW8wT0o7QXlCN3pPTTtFd0NaSjtJeENhTTtFekJnME9OO0FBQ0Y7O0FpRWwwT0k7RUFDRTtBakVxME9OOztBa0V4MU9BO0VBQ0U7RUFDQTtBbEUyMU9GO0FrRXoxT0U7RUFDRTtFQUNBO0VBQ0E7QWxFMjFPSjtBa0V4MU9FO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBbEUwMU9KOztBa0VyMU9FO0VBQ0U7QWxFdzFPSjs7QWtFejFPRTtFQUNFO0FsRTQxT0o7O0FrRTcxT0U7RUFDRTtBbEVnMk9KOztBa0VqMk9FO0VBQ0U7QWxFbzJPSjs7QW1FejNPQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsYTFEaW1Da0M7QVQyeE1wQzs7QW1FejNPQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsYTFEeWxDa0M7QVRteU1wQzs7QW1FcDNPSTtFQUNFO0VBQ0E7RUFDQSxhMUQ2a0M4QjtBVDB5TXBDOztBbUVwM09JO0VBQ0U7RUFDQTtFQUNBLGExRHVrQzhCO0FUZ3pNcEM7O0FpQngxT0k7RWtEeENBO0lBQ0U7SUFDQTtJQUNBLGExRDZrQzhCO0VUdXpNbEM7RW1FajRPRTtJQUNFO0lBQ0E7SUFDQSxhMUR1a0M4QjtFVDR6TWxDO0FBQ0Y7QWlCcjJPSTtFa0R4Q0E7SUFDRTtJQUNBO0lBQ0EsYTFENmtDOEI7RVRtME1sQztFbUU3NE9FO0lBQ0U7SUFDQTtJQUNBLGExRHVrQzhCO0VUdzBNbEM7QUFDRjtBaUJqM09JO0VrRHhDQTtJQUNFO0lBQ0E7SUFDQSxhMUQ2a0M4QjtFVCswTWxDO0VtRXo1T0U7SUFDRTtJQUNBO0lBQ0EsYTFEdWtDOEI7RVRvMU1sQztBQUNGO0FpQjczT0k7RWtEeENBO0lBQ0U7SUFDQTtJQUNBLGExRDZrQzhCO0VUMjFNbEM7RW1FcjZPRTtJQUNFO0lBQ0E7SUFDQSxhMUR1a0M4QjtFVGcyTWxDO0FBQ0Y7QWlCejRPSTtFa0R4Q0E7SUFDRTtJQUNBO0lBQ0EsYTFENmtDOEI7RVR1Mk1sQztFbUVqN09FO0lBQ0U7SUFDQTtJQUNBLGExRHVrQzhCO0VUNDJNbEM7QUFDRjtBb0VuOU9BO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7QXBFcTlPRjs7QW9FbDlPQTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0FwRXE5T0Y7O0FxRTc5T0E7O0VDSUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBdEU4OU9GO0FzRTM5T0U7O0VBQ0U7QXRFODlPSjs7QXVFNStPRTtFQUNFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQSxVOURnY3NDO0U4RC9idEM7QXZFKytPSjs7QXdFdi9PQTtFQ0FFO0VBQ0E7RUFDQTtBekUyL09GOztBMEVqZ1BBO0VBQ0U7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBLGFqRTJyQjRCO0FUeTBOOUI7O0EyRXg4T1E7RUFPSTtBM0VxOE9aOztBMkU1OE9RO0VBT0k7QTNFeThPWjs7QTJFaDlPUTtFQU9JO0EzRTY4T1o7O0EyRXA5T1E7RUFPSTtBM0VpOU9aOztBMkV4OU9RO0VBT0k7QTNFcTlPWjs7QTJFNTlPUTtFQU9JO0EzRXk5T1o7O0EyRWgrT1E7RUFPSTtBM0U2OU9aOztBMkVwK09RO0VBT0k7QTNFaStPWjs7QTJFeCtPUTtFQU9JO0EzRXErT1o7O0EyRTUrT1E7RUFPSTtLQUFBO0EzRXkrT1o7O0EyRWgvT1E7RUFPSTtLQUFBO0EzRTYrT1o7O0EyRXAvT1E7RUFPSTtLQUFBO0EzRWkvT1o7O0EyRXgvT1E7RUFPSTtLQUFBO0EzRXEvT1o7O0EyRTUvT1E7RUFPSTtLQUFBO0EzRXkvT1o7O0EyRWhnUFE7RUFPSTtBM0U2L09aOztBMkVwZ1BRO0VBT0k7QTNFaWdQWjs7QTJFeGdQUTtFQU9JO0EzRXFnUFo7O0EyRTVnUFE7RUFPSTtBM0V5Z1BaOztBMkVoaFBRO0VBT0k7QTNFNmdQWjs7QTJFcGhQUTtFQU9JO0EzRWloUFo7O0EyRXhoUFE7RUFPSTtBM0VxaFBaOztBMkU1aFBRO0VBT0k7QTNFeWhQWjs7QTJFaGlQUTtFQU9JO0EzRTZoUFo7O0EyRXBpUFE7RUFPSTtBM0VpaVBaOztBMkV4aVBRO0VBT0k7QTNFcWlQWjs7QTJFNWlQUTtFQU9JO0EzRXlpUFo7O0EyRWhqUFE7RUFPSTtBM0U2aVBaOztBMkVwalBRO0VBT0k7QTNFaWpQWjs7QTJFeGpQUTtFQU9JO0EzRXFqUFo7O0EyRTVqUFE7RUFPSTtBM0V5alBaOztBMkVoa1BRO0VBT0k7QTNFNmpQWjs7QTJFcGtQUTtFQU9JO0EzRWlrUFo7O0EyRXhrUFE7RUFPSTtBM0Vxa1BaOztBMkU1a1BRO0VBT0k7QTNFeWtQWjs7QTJFaGxQUTtFQU9JO0EzRTZrUFo7O0EyRXBsUFE7RUFPSTtBM0VpbFBaOztBMkV4bFBRO0VBT0k7QTNFcWxQWjs7QTJFNWxQUTtFQU9JO0EzRXlsUFo7O0EyRWhtUFE7RUFPSTtBM0U2bFBaOztBMkVwbVBRO0VBT0k7QTNFaW1QWjs7QTJFeG1QUTtFQU9JO0EzRXFtUFo7O0EyRTVtUFE7RUFPSTtBM0V5bVBaOztBMkVoblBRO0VBT0k7QTNFNm1QWjs7QTJFcG5QUTtFQU9JO0EzRWluUFo7O0EyRXhuUFE7RUFPSTtBM0VxblBaOztBMkU1blBRO0VBT0k7QTNFeW5QWjs7QTJFMW9QUTtFQUNFO0EzRTZvUFY7O0EyRTlvUFE7RUFDRTtBM0VpcFBWOztBMkVscFBRO0VBQ0U7QTNFcXBQVjs7QTJFdHBQUTtFQUNFO0EzRXlwUFY7O0EyRTFwUFE7RUFDRTtBM0U2cFBWOztBMkU5cFBRO0VBQ0U7QTNFaXFQVjs7QTJFbHFQUTtFQUNFO0EzRXFxUFY7O0EyRXRxUFE7RUFDRTtBM0V5cVBWOztBMkVocVBRO0VBT0k7QTNFNnBQWjs7QTJFcHFQUTtFQU9JO0EzRWlxUFo7O0EyRXhxUFE7RUFPSTtBM0VxcVBaOztBMkU1cVBRO0VBT0k7QTNFeXFQWjs7QTJFaHJQUTtFQU9JO0EzRTZxUFo7O0EyRXByUFE7RUFPSTtBM0VpclBaOztBMkV4clBRO0VBT0k7QTNFcXJQWjs7QTJFNXJQUTtFQU9JO0EzRXlyUFo7O0EyRWhzUFE7RUFPSTtBM0U2clBaOztBMkVwc1BRO0VBT0k7QTNFaXNQWjs7QTJFeHNQUTtFQU9JO0EzRXFzUFo7O0EyRTVzUFE7RUFPSTtBM0V5c1BaOztBMkVodFBRO0VBT0k7QTNFNnNQWjs7QTJFcHRQUTtFQU9JO0EzRWl0UFo7O0EyRXh0UFE7RUFPSTtBM0VxdFBaOztBMkU1dFBRO0VBT0k7QTNFeXRQWjs7QTJFaHVQUTtFQU9JO0EzRTZ0UFo7O0EyRXB1UFE7RUFPSTtBM0VpdVBaOztBMkV4dVBRO0VBT0k7QTNFcXVQWjs7QTJFNXVQUTtFQU9JO0EzRXl1UFo7O0EyRWh2UFE7RUFPSTtBM0U2dVBaOztBMkVwdlBRO0VBT0k7QTNFaXZQWjs7QTJFeHZQUTtFQU9JO0EzRXF2UFo7O0EyRTV2UFE7RUFPSTtBM0V5dlBaOztBMkVod1BRO0VBT0k7QTNFNnZQWjs7QTJFcHdQUTtFQU9JO0EzRWl3UFo7O0EyRXh3UFE7RUFPSTtBM0Vxd1BaOztBMkU1d1BRO0VBT0k7QTNFeXdQWjs7QTJFaHhQUTtFQU9JO0EzRTZ3UFo7O0EyRXB4UFE7RUFPSTtBM0VpeFBaOztBMkV4eFBRO0VBSVE7RUFHSjtBM0VzeFBaOztBMkU3eFBRO0VBSVE7RUFHSjtBM0UyeFBaOztBMkVseVBRO0VBSVE7RUFHSjtBM0VneVBaOztBMkV2eVBRO0VBSVE7RUFHSjtBM0VxeVBaOztBMkU1eVBRO0VBSVE7RUFHSjtBM0UweVBaOztBMkVqelBRO0VBSVE7RUFHSjtBM0UreVBaOztBMkV0elBRO0VBSVE7RUFHSjtBM0VvelBaOztBMkUzelBRO0VBSVE7RUFHSjtBM0V5elBaOztBMkVoMFBRO0VBSVE7RUFHSjtBM0U4elBaOztBMkVyMFBRO0VBSVE7RUFHSjtBM0VtMFBaOztBMkUxMFBRO0VBT0k7QTNFdTBQWjs7QTJFOTBQUTtFQU9JO0EzRTIwUFo7O0EyRWwxUFE7RUFPSTtBM0UrMFBaOztBMkV0MVBRO0VBT0k7QTNFbTFQWjs7QTJFMTFQUTtFQU9JO0EzRXUxUFo7O0EyRTkxUFE7RUFPSTtBM0UyMVBaOztBMkVsMlBRO0VBT0k7QTNFKzFQWjs7QTJFdDJQUTtFQU9JO0EzRW0yUFo7O0EyRTEyUFE7RUFPSTtBM0V1MlBaOztBMkU5MlBRO0VBT0k7QTNFMjJQWjs7QTJFbDNQUTtFQU9JO0EzRSsyUFo7O0EyRXQzUFE7RUFPSTtBM0VtM1BaOztBMkUxM1BRO0VBT0k7QTNFdTNQWjs7QTJFeDRQUTtFQUNFO0EzRTI0UFY7O0EyRTU0UFE7RUFDRTtBM0UrNFBWOztBMkVoNVBRO0VBQ0U7QTNFbTVQVjs7QTJFcDVQUTtFQUNFO0EzRXU1UFY7O0EyRXg1UFE7RUFDRTtBM0UyNVBWOztBMkVsNVBRO0VBT0k7QTNFKzRQWjs7QTJFdDVQUTtFQU9JO0EzRW01UFo7O0EyRTE1UFE7RUFPSTtBM0V1NVBaOztBMkU5NVBRO0VBT0k7QTNFMjVQWjs7QTJFbDZQUTtFQU9JO0EzRSs1UFo7O0EyRXQ2UFE7RUFPSTtBM0VtNlBaOztBMkUxNlBRO0VBT0k7QTNFdTZQWjs7QTJFOTZQUTtFQU9JO0EzRTI2UFo7O0EyRWw3UFE7RUFPSTtBM0UrNlBaOztBMkV0N1BRO0VBT0k7QTNFbTdQWjs7QTJFMTdQUTtFQU9JO0EzRXU3UFo7O0EyRTk3UFE7RUFPSTtBM0UyN1BaOztBMkVsOFBRO0VBT0k7QTNFKzdQWjs7QTJFdDhQUTtFQU9JO0EzRW04UFo7O0EyRTE4UFE7RUFPSTtBM0V1OFBaOztBMkU5OFBRO0VBT0k7QTNFMjhQWjs7QTJFbDlQUTtFQU9JO0EzRSs4UFo7O0EyRXQ5UFE7RUFPSTtBM0VtOVBaOztBMkUxOVBRO0VBT0k7QTNFdTlQWjs7QTJFOTlQUTtFQU9JO0EzRTI5UFo7O0EyRWwrUFE7RUFPSTtBM0UrOVBaOztBMkV0K1BRO0VBT0k7QTNFbStQWjs7QTJFMStQUTtFQU9JO0EzRXUrUFo7O0EyRTkrUFE7RUFPSTtBM0UyK1BaOztBMkVsL1BRO0VBT0k7QTNFKytQWjs7QTJFdC9QUTtFQU9JO0EzRW0vUFo7O0EyRTEvUFE7RUFPSTtBM0V1L1BaOztBMkU5L1BRO0VBT0k7QTNFMi9QWjs7QTJFbGdRUTtFQU9JO0EzRSsvUFo7O0EyRXRnUVE7RUFPSTtBM0VtZ1FaOztBMkUxZ1FRO0VBT0k7QTNFdWdRWjs7QTJFOWdRUTtFQU9JO0EzRTJnUVo7O0EyRWxoUVE7RUFPSTtBM0UrZ1FaOztBMkV0aFFRO0VBT0k7QTNFbWhRWjs7QTJFMWhRUTtFQU9JO0EzRXVoUVo7O0EyRTloUVE7RUFPSTtBM0UyaFFaOztBMkVsaVFRO0VBT0k7QTNFK2hRWjs7QTJFdGlRUTtFQU9JO0EzRW1pUVo7O0EyRTFpUVE7RUFPSTtBM0V1aVFaOztBMkU5aVFRO0VBT0k7QTNFMmlRWjs7QTJFbGpRUTtFQU9JO0EzRStpUVo7O0EyRXRqUVE7RUFPSTtBM0VtalFaOztBMkUxalFRO0VBT0k7QTNFdWpRWjs7QTJFOWpRUTtFQU9JO0EzRTJqUVo7O0EyRWxrUVE7RUFPSTtBM0UralFaOztBMkV0a1FRO0VBT0k7QTNFbWtRWjs7QTJFMWtRUTtFQU9JO0EzRXVrUVo7O0EyRTlrUVE7RUFPSTtBM0Uya1FaOztBMkVsbFFRO0VBT0k7QTNFK2tRWjs7QTJFdGxRUTtFQU9JO0EzRW1sUVo7O0EyRTFsUVE7RUFPSTtBM0V1bFFaOztBMkU5bFFRO0VBT0k7QTNFMmxRWjs7QTJFbG1RUTtFQU9JO0EzRStsUVo7O0EyRXRtUVE7RUFPSTtBM0VtbVFaOztBMkUxbVFRO0VBT0k7QTNFdW1RWjs7QTJFOW1RUTtFQU9JO0EzRTJtUVo7O0EyRWxuUVE7RUFPSTtBM0UrbVFaOztBMkV0blFRO0VBT0k7QTNFbW5RWjs7QTJFMW5RUTtFQU9JO0EzRXVuUVo7O0EyRTluUVE7RUFPSTtBM0UyblFaOztBMkVsb1FRO0VBT0k7QTNFK25RWjs7QTJFdG9RUTtFQU9JO0EzRW1vUVo7O0EyRTFvUVE7RUFPSTtBM0V1b1FaOztBMkU5b1FRO0VBT0k7QTNFMm9RWjs7QTJFbHBRUTtFQU9JO0EzRStvUVo7O0EyRXRwUVE7RUFPSTtBM0VtcFFaOztBMkUxcFFRO0VBT0k7RUFBQTtBM0V3cFFaOztBMkUvcFFRO0VBT0k7RUFBQTtBM0U2cFFaOztBMkVwcVFRO0VBT0k7RUFBQTtBM0VrcVFaOztBMkV6cVFRO0VBT0k7RUFBQTtBM0V1cVFaOztBMkU5cVFRO0VBT0k7RUFBQTtBM0U0cVFaOztBMkVuclFRO0VBT0k7RUFBQTtBM0VpclFaOztBMkV4clFRO0VBT0k7RUFBQTtBM0VzclFaOztBMkU3clFRO0VBT0k7RUFBQTtBM0UyclFaOztBMkVsc1FRO0VBT0k7RUFBQTtBM0Vnc1FaOztBMkV2c1FRO0VBT0k7RUFBQTtBM0Vxc1FaOztBMkU1c1FRO0VBT0k7RUFBQTtBM0Uwc1FaOztBMkVqdFFRO0VBT0k7RUFBQTtBM0Urc1FaOztBMkV0dFFRO0VBT0k7RUFBQTtBM0VvdFFaOztBMkUzdFFRO0VBT0k7RUFBQTtBM0V5dFFaOztBMkVodVFRO0VBT0k7QTNFNnRRWjs7QTJFcHVRUTtFQU9JO0EzRWl1UVo7O0EyRXh1UVE7RUFPSTtBM0VxdVFaOztBMkU1dVFRO0VBT0k7QTNFeXVRWjs7QTJFaHZRUTtFQU9JO0EzRTZ1UVo7O0EyRXB2UVE7RUFPSTtBM0VpdlFaOztBMkV4dlFRO0VBT0k7QTNFcXZRWjs7QTJFNXZRUTtFQU9JO0EzRXl2UVo7O0EyRWh3UVE7RUFPSTtBM0U2dlFaOztBMkVwd1FRO0VBT0k7QTNFaXdRWjs7QTJFeHdRUTtFQU9JO0EzRXF3UVo7O0EyRTV3UVE7RUFPSTtBM0V5d1FaOztBMkVoeFFRO0VBT0k7QTNFNndRWjs7QTJFcHhRUTtFQU9JO0EzRWl4UVo7O0EyRXh4UVE7RUFPSTtBM0VxeFFaOztBMkU1eFFRO0VBT0k7QTNFeXhRWjs7QTJFaHlRUTtFQU9JO0EzRTZ4UVo7O0EyRXB5UVE7RUFPSTtBM0VpeVFaOztBMkV4eVFRO0VBT0k7QTNFcXlRWjs7QTJFNXlRUTtFQU9JO0EzRXl5UVo7O0EyRWh6UVE7RUFPSTtBM0U2eVFaOztBMkVwelFRO0VBT0k7QTNFaXpRWjs7QTJFeHpRUTtFQU9JO0EzRXF6UVo7O0EyRTV6UVE7RUFPSTtBM0V5elFaOztBMkVoMFFRO0VBT0k7QTNFNnpRWjs7QTJFcDBRUTtFQU9JO0EzRWkwUVo7O0EyRXgwUVE7RUFPSTtBM0VxMFFaOztBMkU1MFFRO0VBT0k7QTNFeTBRWjs7QTJFaDFRUTtFQU9JO0EzRTYwUVo7O0EyRXAxUVE7RUFPSTtBM0VpMVFaOztBMkV4MVFRO0VBT0k7QTNFcTFRWjs7QTJFNTFRUTtFQU9JO0EzRXkxUVo7O0EyRWgyUVE7RUFPSTtBM0U2MVFaOztBMkVwMlFRO0VBT0k7QTNFaTJRWjs7QTJFeDJRUTtFQU9JO0VBQUE7QTNFczJRWjs7QTJFNzJRUTtFQU9JO0VBQUE7QTNFMjJRWjs7QTJFbDNRUTtFQU9JO0VBQUE7QTNFZzNRWjs7QTJFdjNRUTtFQU9JO0VBQUE7QTNFcTNRWjs7QTJFNTNRUTtFQU9JO0VBQUE7QTNFMDNRWjs7QTJFajRRUTtFQU9JO0VBQUE7QTNFKzNRWjs7QTJFdDRRUTtFQU9JO0VBQUE7QTNFbzRRWjs7QTJFMzRRUTtFQU9JO0VBQUE7QTNFeTRRWjs7QTJFaDVRUTtFQU9JO0VBQUE7QTNFODRRWjs7QTJFcjVRUTtFQU9JO0VBQUE7QTNFbTVRWjs7QTJFMTVRUTtFQU9JO0VBQUE7QTNFdzVRWjs7QTJFLzVRUTtFQU9JO0VBQUE7QTNFNjVRWjs7QTJFcDZRUTtFQU9JO0EzRWk2UVo7O0EyRXg2UVE7RUFPSTtBM0VxNlFaOztBMkU1NlFRO0VBT0k7QTNFeTZRWjs7QTJFaDdRUTtFQU9JO0EzRTY2UVo7O0EyRXA3UVE7O0VBT0k7QTNFazdRWjs7QTJFejdRUTtFQU9JO0EzRXM3UVo7O0EyRTc3UVE7RUFPSTtBM0UwN1FaOztBMkVqOFFRO0VBT0k7QTNFODdRWjs7QTJFcjhRUTtFQU9JO0EzRWs4UVo7O0EyRXo4UVE7RUFPSTtBM0VzOFFaOztBMkU3OFFRO0VBT0k7QTNFMDhRWjs7QTJFajlRUTtFQU9JO0EzRTg4UVo7O0EyRXI5UVE7RUFPSTtBM0VrOVFaOztBMkV6OVFRO0VBT0k7QTNFczlRWjs7QTJFNzlRUTtFQU9JO0EzRTA5UVo7O0EyRWorUVE7RUFPSTtBM0U4OVFaOztBMkVyK1FRO0VBT0k7QTNFaytRWjs7QTJFeitRUTtFQU9JO0EzRXMrUVo7O0EyRTcrUVE7RUFPSTtBM0UwK1FaOztBMkVqL1FRO0VBT0k7QTNFOCtRWjs7QTJFci9RUTtFQU9JO0EzRWsvUVo7O0EyRXovUVE7RUFPSTtBM0VzL1FaOztBMkU3L1FRO0VBT0k7QTNFMC9RWjs7QTJFamdSUTtFQU9JO0EzRTgvUVo7O0EyRXJnUlE7RUFPSTtBM0VrZ1JaOztBMkV6Z1JRO0VBT0k7QTNFc2dSWjs7QTJFN2dSUTtFQU9JO0EzRTBnUlo7O0EyRWpoUlE7RUFPSTtBM0U4Z1JaOztBMkVyaFJRO0VBT0k7QTNFa2hSWjs7QTJFemhSUTtFQU9JO0EzRXNoUlo7O0EyRTdoUlE7RUFPSTtBM0UwaFJaOztBMkVqaVJRO0VBT0k7QTNFOGhSWjs7QTJFcmlSUTtFQU9JO0EzRWtpUlo7O0EyRXppUlE7RUFPSTtBM0VzaVJaOztBMkU3aVJRO0VBT0k7QTNFMGlSWjs7QTJFampSUTtFQU9JO0EzRThpUlo7O0EyRXJqUlE7RUFPSTtPQUFBO0EzRWtqUlo7O0EyRXpqUlE7RUFPSTtPQUFBO0EzRXNqUlo7O0EyRTdqUlE7RUFPSTtPQUFBO0EzRTBqUlo7O0EyRWprUlE7RUFPSTtPQUFBO0EzRThqUlo7O0EyRXJrUlE7RUFPSTtPQUFBO0EzRWtrUlo7O0EyRXprUlE7RUFPSTtPQUFBO0EzRXNrUlo7O0EyRTdrUlE7RUFPSTtBM0Uwa1JaOztBMkVqbFJRO0VBT0k7QTNFOGtSWjs7QTJFcmxSUTtFQU9JO0EzRWtsUlo7O0EyRXpsUlE7RUFPSTtBM0VzbFJaOztBMkU3bFJRO0VBT0k7QTNFMGxSWjs7QTJFam1SUTtFQU9JO0EzRThsUlo7O0EyRXJtUlE7RUFPSTtBM0VrbVJaOztBMkV6bVJRO0VBT0k7QTNFc21SWjs7QTJFN21SUTtFQU9JO0EzRTBtUlo7O0EyRWpuUlE7RUFPSTtBM0U4bVJaOztBMkVyblJRO0VBT0k7QTNFa25SWjs7QTJFem5SUTtFQU9JO0EzRXNuUlo7O0EyRTduUlE7RUFPSTtBM0UwblJaOztBMkVqb1JRO0VBT0k7QTNFOG5SWjs7QTJFcm9SUTtFQU9JO0EzRWtvUlo7O0EyRXpvUlE7RUFPSTtBM0Vzb1JaOztBMkU3b1JRO0VBT0k7QTNFMG9SWjs7QTJFanBSUTtFQU9JO0EzRThvUlo7O0EyRXJwUlE7RUFPSTtBM0VrcFJaOztBMkV6cFJRO0VBT0k7QTNFc3BSWjs7QTJFN3BSUTtFQU9JO0EzRTBwUlo7O0EyRWpxUlE7RUFPSTtBM0U4cFJaOztBMkVycVJRO0VBT0k7QTNFa3FSWjs7QTJFenFSUTtFQU9JO0EzRXNxUlo7O0EyRTdxUlE7RUFPSTtBM0UwcVJaOztBMkVqclJRO0VBT0k7QTNFOHFSWjs7QTJFcnJSUTtFQU9JO0EzRWtyUlo7O0EyRXpyUlE7RUFPSTtBM0VzclJaOztBMkU3clJRO0VBT0k7QTNFMHJSWjs7QTJFanNSUTtFQU9JO0EzRThyUlo7O0EyRXJzUlE7RUFPSTtBM0Vrc1JaOztBMkV2dFJRO0FBY0E7RUFPSTtFQUFBO0EzRXdzUlo7O0EyRXJyUlE7QUExQkE7RUFJUTtFQUdKO0EzRThzUlo7O0EyRXJ0UlE7RUFJUTtFQUdKO0EzRW10Ulo7O0EyRTF0UlE7RUFJUTtFQUdKO0EzRXd0Ulo7O0EyRS90UlE7RUFJUTtFQUdKO0EzRTZ0Ulo7O0EyRXB1UlE7RUFJUTtFQUdKO0EzRWt1Ulo7O0EyRXp1UlE7RUFJUTtFQUdKO0EzRXV1Ulo7O0EyRTl1UlE7RUFJUTtFQUdKO0EzRTR1Ulo7O0EyRW52UlE7RUFJUTtFQUdKO0EzRWl2Ulo7O0EyRXh2UlE7RUFJUTtFQUdKO0EzRXN2Ulo7O0EyRTd2UlE7RUFJUTtFQUdKO0EzRTJ2Ulo7O0EyRWx3UlE7RUFJUTtFQUdKO0EzRWd3Ulo7O0EyRXZ3UlE7RUFJUTtFQUdKO0EzRXF3Ulo7O0EyRTV3UlE7RUFJUTtFQUdKO0EzRTB3Ulo7O0EyRWp4UlE7RUFJUTtFQUdKO0EzRSt3Ulo7O0EyRXR4UlE7RUFJUTtFQUdKO0EzRW94Ulo7O0EyRTN4UlE7RUFJUTtFQUdKO0EzRXl4Ulo7O0EyRWh5UlE7RUFJUTtFQUdKO0EzRTh4Ulo7O0EyRXJ5UlE7RUFJUTtFQUdKO0EzRW15Ulo7O0EyRXB6UlE7RUFDRTtBM0V1elJWOztBMkV4elJRO0VBQ0U7QTNFMnpSVjs7QTJFNXpSUTtFQUNFO0EzRSt6UlY7O0EyRWgwUlE7RUFDRTtBM0VtMFJWOztBMkUxelJRO0VBT0k7QTNFdXpSWjs7QTJFOXpSUTtFQU9JO0EzRTJ6Ulo7O0EyRWwwUlE7RUFPSTtBM0UrelJaOztBMkV0MFJRO0VBT0k7QTNFbTBSWjs7QTJFMTBSUTtFQU9JO0EzRXUwUlo7O0EyRTkwUlE7RUFPSTtBM0UyMFJaOztBMkVsMVJRO0VBT0k7QTNFKzBSWjs7QTJFdDFSUTtFQU9JO0EzRW0xUlo7O0EyRXAyUlE7RUFDRTtBM0V1MlJWOztBMkVuMlJVO0VBQ0U7QTNFczJSWjs7QTJFNTJSUTtFQUNFO0EzRSsyUlY7O0EyRTMyUlU7RUFDRTtBM0U4MlJaOztBMkVwM1JRO0VBQ0U7QTNFdTNSVjs7QTJFbjNSVTtFQUNFO0EzRXMzUlo7O0EyRTUzUlE7RUFDRTtBM0UrM1JWOztBMkUzM1JVO0VBQ0U7QTNFODNSWjs7QTJFcDRSUTtFQUNFO0EzRXU0UlY7O0EyRW40UlU7RUFDRTtBM0VzNFJaOztBMkVsNFJRO0VBT0k7QTNFKzNSWjs7QTJFMTNSVTtFQU9JO0EzRXUzUmQ7O0EyRTE0UlE7RUFPSTtBM0V1NFJaOztBMkVsNFJVO0VBT0k7QTNFKzNSZDs7QTJFbDVSUTtFQU9JO0EzRSs0Ulo7O0EyRTE0UlU7RUFPSTtBM0V1NFJkOztBMkUxNVJRO0VBSVE7RUFHSjtVQUFBO0EzRXc1Ulo7O0EyRS81UlE7RUFJUTtFQUdKO1VBQUE7QTNFNjVSWjs7QTJFcDZSUTtFQUlRO0VBR0o7VUFBQTtBM0VrNlJaOztBMkV6NlJRO0VBSVE7RUFHSjtVQUFBO0EzRXU2Ulo7O0EyRTk2UlE7RUFJUTtFQUdKO1VBQUE7QTNFNDZSWjs7QTJFbjdSUTtFQUlRO0VBR0o7VUFBQTtBM0VpN1JaOztBMkV4N1JRO0VBSVE7RUFHSjtVQUFBO0EzRXM3Ulo7O0EyRTc3UlE7RUFJUTtFQUdKO1VBQUE7QTNFMjdSWjs7QTJFbDhSUTtFQUlRO0VBR0o7VUFBQTtBM0VnOFJaOztBMkVqOVJRO0VBQ0U7QTNFbzlSVjs7QTJFaDlSVTtFQUNFO0EzRW05Ulo7O0EyRXo5UlE7RUFDRTtBM0U0OVJWOztBMkV4OVJVO0VBQ0U7QTNFMjlSWjs7QTJFaitSUTtFQUNFO0EzRW8rUlY7O0EyRWgrUlU7RUFDRTtBM0VtK1JaOztBMkV6K1JRO0VBQ0U7QTNFNCtSVjs7QTJFeCtSVTtFQUNFO0EzRTIrUlo7O0EyRWovUlE7RUFDRTtBM0VvL1JWOztBMkVoL1JVO0VBQ0U7QTNFbS9SWjs7QTJFei9SUTtFQUNFO0EzRTQvUlY7O0EyRXgvUlU7RUFDRTtBM0UyL1JaOztBMkV2L1JRO0VBSVE7RUFHSjtBM0VxL1JaOztBMkU1L1JRO0VBSVE7RUFHSjtBM0UwL1JaOztBMkVqZ1NRO0VBSVE7RUFHSjtBM0UrL1JaOztBMkV0Z1NRO0VBSVE7RUFHSjtBM0VvZ1NaOztBMkUzZ1NRO0VBSVE7RUFHSjtBM0V5Z1NaOztBMkVoaFNRO0VBSVE7RUFHSjtBM0U4Z1NaOztBMkVyaFNRO0VBSVE7RUFHSjtBM0VtaFNaOztBMkUxaFNRO0VBSVE7RUFHSjtBM0V3aFNaOztBMkUvaFNRO0VBSVE7RUFHSjtBM0U2aFNaOztBMkVwaVNRO0VBSVE7RUFHSjtBM0VraVNaOztBMkV6aVNRO0VBSVE7RUFHSjtBM0V1aVNaOztBMkU5aVNRO0VBSVE7RUFHSjtBM0U0aVNaOztBMkVualNRO0VBSVE7RUFHSjtBM0VpalNaOztBMkV4alNRO0VBSVE7RUFHSjtBM0VzalNaOztBMkV2a1NRO0VBQ0U7QTNFMGtTVjs7QTJFM2tTUTtFQUNFO0EzRThrU1Y7O0EyRS9rU1E7RUFDRTtBM0VrbFNWOztBMkVubFNRO0VBQ0U7QTNFc2xTVjs7QTJFdmxTUTtFQUNFO0EzRTBsU1Y7O0EyRWpsU1E7RUFPSTtBM0U4a1NaOztBMkVybFNRO0VBT0k7QTNFa2xTWjs7QTJFemxTUTtFQU9JO0EzRXNsU1o7O0EyRTdsU1E7RUFPSTtBM0UwbFNaOztBMkVqbVNRO0VBT0k7QTNFOGxTWjs7QTJFcm1TUTtFQU9JO0EzRWttU1o7O0EyRXptU1E7RUFPSTtBM0VzbVNaOztBMkU3bVNRO0VBT0k7QTNFMG1TWjs7QTJFam5TUTtFQU9JO0EzRThtU1o7O0EyRXJuU1E7RUFPSTtLQUFBO1VBQUE7QTNFa25TWjs7QTJFem5TUTtFQU9JO0tBQUE7VUFBQTtBM0VzblNaOztBMkU3blNRO0VBT0k7S0FBQTtVQUFBO0EzRTBuU1o7O0EyRWpvU1E7RUFPSTtBM0U4blNaOztBMkVyb1NRO0VBT0k7QTNFa29TWjs7QTJFem9TUTtFQU9JO0EzRXNvU1o7O0EyRTdvU1E7RUFPSTtBM0Uwb1NaOztBMkVqcFNRO0VBT0k7QTNFOG9TWjs7QTJFcnBTUTtFQU9JO0EzRWtwU1o7O0EyRXpwU1E7RUFPSTtBM0VzcFNaOztBMkU3cFNRO0VBT0k7QTNFMHBTWjs7QTJFanFTUTtFQU9JO0EzRThwU1o7O0EyRXJxU1E7RUFPSTtBM0VrcVNaOztBMkV6cVNRO0VBT0k7QTNFc3FTWjs7QTJFN3FTUTtFQU9JO0VBQUE7QTNFMnFTWjs7QTJFbHJTUTtFQU9JO0VBQUE7QTNFZ3JTWjs7QTJFdnJTUTtFQU9JO0VBQUE7QTNFcXJTWjs7QTJFNXJTUTtFQU9JO0VBQUE7QTNFMHJTWjs7QTJFanNTUTtFQU9JO0VBQUE7QTNFK3JTWjs7QTJFdHNTUTtFQU9JO0VBQUE7QTNFb3NTWjs7QTJFM3NTUTtFQU9JO0VBQUE7QTNFeXNTWjs7QTJFaHRTUTtFQU9JO0VBQUE7QTNFOHNTWjs7QTJFcnRTUTtFQU9JO0VBQUE7QTNFbXRTWjs7QTJFMXRTUTtFQU9JO0VBQUE7QTNFd3RTWjs7QTJFL3RTUTtFQU9JO0VBQUE7QTNFNnRTWjs7QTJFcHVTUTtFQU9JO0VBQUE7QTNFa3VTWjs7QTJFenVTUTtFQU9JO0VBQUE7QTNFdXVTWjs7QTJFOXVTUTtFQU9JO0VBQUE7QTNFNHVTWjs7QTJFbnZTUTtFQU9JO0VBQUE7QTNFaXZTWjs7QTJFeHZTUTtFQU9JO0VBQUE7QTNFc3ZTWjs7QTJFN3ZTUTtFQU9JO0VBQUE7QTNFMnZTWjs7QTJFbHdTUTtFQU9JO0VBQUE7QTNFZ3dTWjs7QTJFdndTUTtFQU9JO0VBQUE7QTNFcXdTWjs7QTJFNXdTUTtFQU9JO0VBQUE7QTNFMHdTWjs7QTJFanhTUTtFQU9JO0VBQUE7QTNFK3dTWjs7QTJFdHhTUTtFQU9JO0VBQUE7QTNFb3hTWjs7QTJFM3hTUTtFQU9JO0VBQUE7QTNFeXhTWjs7QTJFaHlTUTtFQU9JO0VBQUE7QTNFOHhTWjs7QTJFcnlTUTtFQU9JO0VBQUE7QTNFbXlTWjs7QTJFMXlTUTtFQU9JO0VBQUE7QTNFd3lTWjs7QTJFL3lTUTtFQU9JO0VBQUE7QTNFNnlTWjs7QTJFcHpTUTtFQU9JO0VBQUE7QTNFa3pTWjs7QTJFenpTUTtFQU9JO0VBQUE7QTNFdXpTWjs7QTJFOXpTUTtFQU9JO0VBQUE7QTNFNHpTWjs7QTJFbjBTUTtFQU9JO0VBQUE7QTNFaTBTWjs7QTJFeDBTUTtFQU9JO0VBQUE7QTNFczBTWjs7QTJFNzBTUTtFQU9JO0VBQUE7QTNFMjBTWjs7QTJFbDFTUTtFQU9JO0VBQUE7QTNFZzFTWjs7QTJFdjFTUTtFQU9JO0VBQUE7QTNFcTFTWjs7QTJFNTFTUTtFQU9JO0VBQUE7QTNFMDFTWjs7QTJFajJTUTtFQU9JO0EzRTgxU1o7O0EyRXIyU1E7RUFPSTtBM0VrMlNaOztBMkV6MlNRO0VBT0k7QTNFczJTWjs7QTJFNzJTUTtFQU9JO0EzRTAyU1o7O0EyRWozU1E7RUFPSTtBM0U4MlNaOztBMkVyM1NRO0VBT0k7QTNFazNTWjs7QTJFejNTUTtFQU9JO0EzRXMzU1o7O0FpQmg0U0k7RTBER0k7SUFPSTtFM0UyM1NWO0UyRWw0U007SUFPSTtFM0U4M1NWO0UyRXI0U007SUFPSTtFM0VpNFNWO0UyRXg0U007SUFPSTtPQUFBO0UzRW80U1Y7RTJFMzRTTTtJQU9JO09BQUE7RTNFdTRTVjtFMkU5NFNNO0lBT0k7T0FBQTtFM0UwNFNWO0UyRWo1U007SUFPSTtPQUFBO0UzRTY0U1Y7RTJFcDVTTTtJQU9JO09BQUE7RTNFZzVTVjtFMkV2NVNNO0lBT0k7RTNFbTVTVjtFMkUxNVNNO0lBT0k7RTNFczVTVjtFMkU3NVNNO0lBT0k7RTNFeTVTVjtFMkVoNlNNO0lBT0k7RTNFNDVTVjtFMkVuNlNNO0lBT0k7RTNFKzVTVjtFMkV0NlNNO0lBT0k7RTNFazZTVjtFMkV6NlNNO0lBT0k7RTNFcTZTVjtFMkU1NlNNO0lBT0k7RTNFdzZTVjtFMkUvNlNNO0lBT0k7RTNFMjZTVjtFMkVsN1NNO0lBT0k7RTNFODZTVjtFMkVyN1NNO0lBT0k7RTNFaTdTVjtFMkV4N1NNO0lBT0k7RTNFbzdTVjtFMkUzN1NNO0lBT0k7RTNFdTdTVjtFMkU5N1NNO0lBT0k7RTNFMDdTVjtFMkVqOFNNO0lBT0k7RTNFNjdTVjtFMkVwOFNNO0lBT0k7RTNFZzhTVjtFMkV2OFNNO0lBT0k7RTNFbThTVjtFMkUxOFNNO0lBT0k7RTNFczhTVjtFMkU3OFNNO0lBT0k7RTNFeThTVjtFMkVoOVNNO0lBT0k7RTNFNDhTVjtFMkVuOVNNO0lBT0k7RTNFKzhTVjtFMkV0OVNNO0lBT0k7RTNFazlTVjtFMkV6OVNNO0lBT0k7RTNFcTlTVjtFMkU1OVNNO0lBT0k7RTNFdzlTVjtFMkUvOVNNO0lBT0k7RTNFMjlTVjtFMkVsK1NNO0lBT0k7RTNFODlTVjtFMkVyK1NNO0lBT0k7RTNFaStTVjtFMkV4K1NNO0lBT0k7RTNFbytTVjtFMkUzK1NNO0lBT0k7RTNFdStTVjtFMkU5K1NNO0lBT0k7RTNFMCtTVjtFMkVqL1NNO0lBT0k7RTNFNitTVjtFMkVwL1NNO0lBT0k7RTNFZy9TVjtFMkV2L1NNO0lBT0k7RTNFbS9TVjtFMkUxL1NNO0lBT0k7RTNFcy9TVjtFMkU3L1NNO0lBT0k7RTNFeS9TVjtFMkVoZ1RNO0lBT0k7RTNFNC9TVjtFMkVuZ1RNO0lBT0k7RTNFKy9TVjtFMkV0Z1RNO0lBT0k7RTNFa2dUVjtFMkV6Z1RNO0lBT0k7RTNFcWdUVjtFMkU1Z1RNO0lBT0k7RTNFd2dUVjtFMkUvZ1RNO0lBT0k7RTNFMmdUVjtFMkVsaFRNO0lBT0k7RTNFOGdUVjtFMkVyaFRNO0lBT0k7RTNFaWhUVjtFMkV4aFRNO0lBT0k7RTNFb2hUVjtFMkUzaFRNO0lBT0k7RTNFdWhUVjtFMkU5aFRNO0lBT0k7RTNFMGhUVjtFMkVqaVRNO0lBT0k7RTNFNmhUVjtFMkVwaVRNO0lBT0k7RTNFZ2lUVjtFMkV2aVRNO0lBT0k7RTNFbWlUVjtFMkUxaVRNO0lBT0k7RTNFc2lUVjtFMkU3aVRNO0lBT0k7RTNFeWlUVjtFMkVoalRNO0lBT0k7RTNFNGlUVjtFMkVualRNO0lBT0k7RTNFK2lUVjtFMkV0alRNO0lBT0k7RTNFa2pUVjtFMkV6alRNO0lBT0k7RTNFcWpUVjtFMkU1alRNO0lBT0k7RTNFd2pUVjtFMkUvalRNO0lBT0k7RTNFMmpUVjtFMkVsa1RNO0lBT0k7RTNFOGpUVjtFMkVya1RNO0lBT0k7RTNFaWtUVjtFMkV4a1RNO0lBT0k7RTNFb2tUVjtFMkUza1RNO0lBT0k7RTNFdWtUVjtFMkU5a1RNO0lBT0k7SUFBQTtFM0Uya1RWO0UyRWxsVE07SUFPSTtJQUFBO0UzRStrVFY7RTJFdGxUTTtJQU9JO0lBQUE7RTNFbWxUVjtFMkUxbFRNO0lBT0k7SUFBQTtFM0V1bFRWO0UyRTlsVE07SUFPSTtJQUFBO0UzRTJsVFY7RTJFbG1UTTtJQU9JO0lBQUE7RTNFK2xUVjtFMkV0bVRNO0lBT0k7SUFBQTtFM0VtbVRWO0UyRTFtVE07SUFPSTtJQUFBO0UzRXVtVFY7RTJFOW1UTTtJQU9JO0lBQUE7RTNFMm1UVjtFMkVsblRNO0lBT0k7SUFBQTtFM0UrbVRWO0UyRXRuVE07SUFPSTtJQUFBO0UzRW1uVFY7RTJFMW5UTTtJQU9JO0lBQUE7RTNFdW5UVjtFMkU5blRNO0lBT0k7SUFBQTtFM0UyblRWO0UyRWxvVE07SUFPSTtJQUFBO0UzRStuVFY7RTJFdG9UTTtJQU9JO0UzRWtvVFY7RTJFem9UTTtJQU9JO0UzRXFvVFY7RTJFNW9UTTtJQU9JO0UzRXdvVFY7RTJFL29UTTtJQU9JO0UzRTJvVFY7RTJFbHBUTTtJQU9JO0UzRThvVFY7RTJFcnBUTTtJQU9JO0UzRWlwVFY7RTJFeHBUTTtJQU9JO0UzRW9wVFY7RTJFM3BUTTtJQU9JO0UzRXVwVFY7RTJFOXBUTTtJQU9JO0UzRTBwVFY7RTJFanFUTTtJQU9JO0UzRTZwVFY7RTJFcHFUTTtJQU9JO0UzRWdxVFY7RTJFdnFUTTtJQU9JO0UzRW1xVFY7RTJFMXFUTTtJQU9JO0UzRXNxVFY7RTJFN3FUTTtJQU9JO0UzRXlxVFY7RTJFaHJUTTtJQU9JO0UzRTRxVFY7RTJFbnJUTTtJQU9JO0UzRStxVFY7RTJFdHJUTTtJQU9JO0UzRWtyVFY7RTJFenJUTTtJQU9JO0UzRXFyVFY7RTJFNXJUTTtJQU9JO0UzRXdyVFY7RTJFL3JUTTtJQU9JO0UzRTJyVFY7RTJFbHNUTTtJQU9JO0UzRThyVFY7RTJFcnNUTTtJQU9JO0UzRWlzVFY7RTJFeHNUTTtJQU9JO0UzRW9zVFY7RTJFM3NUTTtJQU9JO0UzRXVzVFY7RTJFOXNUTTtJQU9JO0UzRTBzVFY7RTJFanRUTTtJQU9JO0UzRTZzVFY7RTJFcHRUTTtJQU9JO0UzRWd0VFY7RTJFdnRUTTtJQU9JO0UzRW10VFY7RTJFMXRUTTtJQU9JO0UzRXN0VFY7RTJFN3RUTTtJQU9JO0UzRXl0VFY7RTJFaHVUTTtJQU9JO0UzRTR0VFY7RTJFbnVUTTtJQU9JO0UzRSt0VFY7RTJFdHVUTTtJQU9JO0UzRWt1VFY7RTJFenVUTTtJQU9JO0UzRXF1VFY7RTJFNXVUTTtJQU9JO0lBQUE7RTNFeXVUVjtFMkVodlRNO0lBT0k7SUFBQTtFM0U2dVRWO0UyRXB2VE07SUFPSTtJQUFBO0UzRWl2VFY7RTJFeHZUTTtJQU9JO0lBQUE7RTNFcXZUVjtFMkU1dlRNO0lBT0k7SUFBQTtFM0V5dlRWO0UyRWh3VE07SUFPSTtJQUFBO0UzRTZ2VFY7RTJFcHdUTTtJQU9JO0lBQUE7RTNFaXdUVjtFMkV4d1RNO0lBT0k7SUFBQTtFM0Vxd1RWO0UyRTV3VE07SUFPSTtJQUFBO0UzRXl3VFY7RTJFaHhUTTtJQU9JO0lBQUE7RTNFNndUVjtFMkVweFRNO0lBT0k7SUFBQTtFM0VpeFRWO0UyRXh4VE07SUFPSTtJQUFBO0UzRXF4VFY7RTJFNXhUTTtJQU9JO0UzRXd4VFY7RTJFL3hUTTtJQU9JO0UzRTJ4VFY7RTJFbHlUTTtJQU9JO0UzRTh4VFY7RTJFcnlUTTtJQU9JO0UzRWl5VFY7RTJFeHlUTTtJQU9JO0UzRW95VFY7RTJFM3lUTTtJQU9JO0UzRXV5VFY7RTJFOXlUTTtJQU9JO0UzRTB5VFY7RTJFanpUTTtJQU9JO0UzRTZ5VFY7RTJFcHpUTTtJQU9JO0UzRWd6VFY7RTJFdnpUTTtJQU9JO0UzRW16VFY7RTJFMXpUTTtJQU9JO0UzRXN6VFY7RTJFN3pUTTtJQU9JO0UzRXl6VFY7RTJFaDBUTTtJQU9JO0UzRTR6VFY7RTJFbjBUTTtJQU9JO0UzRSt6VFY7RTJFdDBUTTtJQU9JO0UzRWswVFY7RTJFejBUTTtJQU9JO0UzRXEwVFY7RTJFNTBUTTtJQU9JO0UzRXcwVFY7RTJFLzBUTTtJQU9JO0UzRTIwVFY7RTJFbDFUTTtJQU9JO0UzRTgwVFY7RTJFcjFUTTtJQU9JO0UzRWkxVFY7RTJFeDFUTTtJQU9JO0UzRW8xVFY7RTJFMzFUTTtJQU9JO0UzRXUxVFY7RTJFOTFUTTtJQU9JO0UzRTAxVFY7RTJFajJUTTtJQU9JO0UzRTYxVFY7RTJFcDJUTTtJQU9JO0UzRWcyVFY7RTJFdjJUTTtJQU9JO0UzRW0yVFY7RTJFMTJUTTtJQU9JO0UzRXMyVFY7RTJFNzJUTTtJQU9JO0UzRXkyVFY7RTJFaDNUTTtJQU9JO0UzRTQyVFY7RTJFbjNUTTtJQU9JO0UzRSsyVFY7RTJFdDNUTTtJQU9JO0UzRWszVFY7RTJFejNUTTtJQU9JO0UzRXEzVFY7RTJFNTNUTTtJQU9JO0UzRXczVFY7RTJFLzNUTTtJQU9JO0UzRTIzVFY7RTJFbDRUTTtJQU9JO0UzRTgzVFY7RTJFcjRUTTtJQU9JO0UzRWk0VFY7RTJFeDRUTTtJQU9JO1NBQUE7RTNFbzRUVjtFMkUzNFRNO0lBT0k7U0FBQTtFM0V1NFRWO0UyRTk0VE07SUFPSTtTQUFBO0UzRTA0VFY7RTJFajVUTTtJQU9JO1NBQUE7RTNFNjRUVjtFMkVwNVRNO0lBT0k7U0FBQTtFM0VnNVRWO0UyRXY1VE07SUFPSTtTQUFBO0UzRW01VFY7RTJFMTVUTTtJQU9JO0UzRXM1VFY7RTJFNzVUTTtJQU9JO0UzRXk1VFY7RTJFaDZUTTtJQU9JO0UzRTQ1VFY7QUFDRjtBaUJ2NlRJO0UwREdJO0lBT0k7RTNFaTZUVjtFMkV4NlRNO0lBT0k7RTNFbzZUVjtFMkUzNlRNO0lBT0k7RTNFdTZUVjtFMkU5NlRNO0lBT0k7T0FBQTtFM0UwNlRWO0UyRWo3VE07SUFPSTtPQUFBO0UzRTY2VFY7RTJFcDdUTTtJQU9JO09BQUE7RTNFZzdUVjtFMkV2N1RNO0lBT0k7T0FBQTtFM0VtN1RWO0UyRTE3VE07SUFPSTtPQUFBO0UzRXM3VFY7RTJFNzdUTTtJQU9JO0UzRXk3VFY7RTJFaDhUTTtJQU9JO0UzRTQ3VFY7RTJFbjhUTTtJQU9JO0UzRSs3VFY7RTJFdDhUTTtJQU9JO0UzRWs4VFY7RTJFejhUTTtJQU9JO0UzRXE4VFY7RTJFNThUTTtJQU9JO0UzRXc4VFY7RTJFLzhUTTtJQU9JO0UzRTI4VFY7RTJFbDlUTTtJQU9JO0UzRTg4VFY7RTJFcjlUTTtJQU9JO0UzRWk5VFY7RTJFeDlUTTtJQU9JO0UzRW85VFY7RTJFMzlUTTtJQU9JO0UzRXU5VFY7RTJFOTlUTTtJQU9JO0UzRTA5VFY7RTJFaitUTTtJQU9JO0UzRTY5VFY7RTJFcCtUTTtJQU9JO0UzRWcrVFY7RTJFditUTTtJQU9JO0UzRW0rVFY7RTJFMStUTTtJQU9JO0UzRXMrVFY7RTJFNytUTTtJQU9JO0UzRXkrVFY7RTJFaC9UTTtJQU9JO0UzRTQrVFY7RTJFbi9UTTtJQU9JO0UzRSsrVFY7RTJFdC9UTTtJQU9JO0UzRWsvVFY7RTJFei9UTTtJQU9JO0UzRXEvVFY7RTJFNS9UTTtJQU9JO0UzRXcvVFY7RTJFLy9UTTtJQU9JO0UzRTIvVFY7RTJFbGdVTTtJQU9JO0UzRTgvVFY7RTJFcmdVTTtJQU9JO0UzRWlnVVY7RTJFeGdVTTtJQU9JO0UzRW9nVVY7RTJFM2dVTTtJQU9JO0UzRXVnVVY7RTJFOWdVTTtJQU9JO0UzRTBnVVY7RTJFamhVTTtJQU9JO0UzRTZnVVY7RTJFcGhVTTtJQU9JO0UzRWdoVVY7RTJFdmhVTTtJQU9JO0UzRW1oVVY7RTJFMWhVTTtJQU9JO0UzRXNoVVY7RTJFN2hVTTtJQU9JO0UzRXloVVY7RTJFaGlVTTtJQU9JO0UzRTRoVVY7RTJFbmlVTTtJQU9JO0UzRStoVVY7RTJFdGlVTTtJQU9JO0UzRWtpVVY7RTJFemlVTTtJQU9JO0UzRXFpVVY7RTJFNWlVTTtJQU9JO0UzRXdpVVY7RTJFL2lVTTtJQU9JO0UzRTJpVVY7RTJFbGpVTTtJQU9JO0UzRThpVVY7RTJFcmpVTTtJQU9JO0UzRWlqVVY7RTJFeGpVTTtJQU9JO0UzRW9qVVY7RTJFM2pVTTtJQU9JO0UzRXVqVVY7RTJFOWpVTTtJQU9JO0UzRTBqVVY7RTJFamtVTTtJQU9JO0UzRTZqVVY7RTJFcGtVTTtJQU9JO0UzRWdrVVY7RTJFdmtVTTtJQU9JO0UzRW1rVVY7RTJFMWtVTTtJQU9JO0UzRXNrVVY7RTJFN2tVTTtJQU9JO0UzRXlrVVY7RTJFaGxVTTtJQU9JO0UzRTRrVVY7RTJFbmxVTTtJQU9JO0UzRStrVVY7RTJFdGxVTTtJQU9JO0UzRWtsVVY7RTJFemxVTTtJQU9JO0UzRXFsVVY7RTJFNWxVTTtJQU9JO0UzRXdsVVY7RTJFL2xVTTtJQU9JO0UzRTJsVVY7RTJFbG1VTTtJQU9JO0UzRThsVVY7RTJFcm1VTTtJQU9JO0UzRWltVVY7RTJFeG1VTTtJQU9JO0UzRW9tVVY7RTJFM21VTTtJQU9JO0UzRXVtVVY7RTJFOW1VTTtJQU9JO0UzRTBtVVY7RTJFam5VTTtJQU9JO0UzRTZtVVY7RTJFcG5VTTtJQU9JO0lBQUE7RTNFaW5VVjtFMkV4blVNO0lBT0k7SUFBQTtFM0VxblVWO0UyRTVuVU07SUFPSTtJQUFBO0UzRXluVVY7RTJFaG9VTTtJQU9JO0lBQUE7RTNFNm5VVjtFMkVwb1VNO0lBT0k7SUFBQTtFM0Vpb1VWO0UyRXhvVU07SUFPSTtJQUFBO0UzRXFvVVY7RTJFNW9VTTtJQU9JO0lBQUE7RTNFeW9VVjtFMkVocFVNO0lBT0k7SUFBQTtFM0U2b1VWO0UyRXBwVU07SUFPSTtJQUFBO0UzRWlwVVY7RTJFeHBVTTtJQU9JO0lBQUE7RTNFcXBVVjtFMkU1cFVNO0lBT0k7SUFBQTtFM0V5cFVWO0UyRWhxVU07SUFPSTtJQUFBO0UzRTZwVVY7RTJFcHFVTTtJQU9JO0lBQUE7RTNFaXFVVjtFMkV4cVVNO0lBT0k7SUFBQTtFM0VxcVVWO0UyRTVxVU07SUFPSTtFM0V3cVVWO0UyRS9xVU07SUFPSTtFM0UycVVWO0UyRWxyVU07SUFPSTtFM0U4cVVWO0UyRXJyVU07SUFPSTtFM0VpclVWO0UyRXhyVU07SUFPSTtFM0VvclVWO0UyRTNyVU07SUFPSTtFM0V1clVWO0UyRTlyVU07SUFPSTtFM0UwclVWO0UyRWpzVU07SUFPSTtFM0U2clVWO0UyRXBzVU07SUFPSTtFM0Vnc1VWO0UyRXZzVU07SUFPSTtFM0Vtc1VWO0UyRTFzVU07SUFPSTtFM0Vzc1VWO0UyRTdzVU07SUFPSTtFM0V5c1VWO0UyRWh0VU07SUFPSTtFM0U0c1VWO0UyRW50VU07SUFPSTtFM0Urc1VWO0UyRXR0VU07SUFPSTtFM0VrdFVWO0UyRXp0VU07SUFPSTtFM0VxdFVWO0UyRTV0VU07SUFPSTtFM0V3dFVWO0UyRS90VU07SUFPSTtFM0UydFVWO0UyRWx1VU07SUFPSTtFM0U4dFVWO0UyRXJ1VU07SUFPSTtFM0VpdVVWO0UyRXh1VU07SUFPSTtFM0VvdVVWO0UyRTN1VU07SUFPSTtFM0V1dVVWO0UyRTl1VU07SUFPSTtFM0UwdVVWO0UyRWp2VU07SUFPSTtFM0U2dVVWO0UyRXB2VU07SUFPSTtFM0VndlVWO0UyRXZ2VU07SUFPSTtFM0VtdlVWO0UyRTF2VU07SUFPSTtFM0VzdlVWO0UyRTd2VU07SUFPSTtFM0V5dlVWO0UyRWh3VU07SUFPSTtFM0U0dlVWO0UyRW53VU07SUFPSTtFM0UrdlVWO0UyRXR3VU07SUFPSTtFM0Vrd1VWO0UyRXp3VU07SUFPSTtFM0Vxd1VWO0UyRTV3VU07SUFPSTtFM0V3d1VWO0UyRS93VU07SUFPSTtFM0Uyd1VWO0UyRWx4VU07SUFPSTtJQUFBO0UzRSt3VVY7RTJFdHhVTTtJQU9JO0lBQUE7RTNFbXhVVjtFMkUxeFVNO0lBT0k7SUFBQTtFM0V1eFVWO0UyRTl4VU07SUFPSTtJQUFBO0UzRTJ4VVY7RTJFbHlVTTtJQU9JO0lBQUE7RTNFK3hVVjtFMkV0eVVNO0lBT0k7SUFBQTtFM0VteVVWO0UyRTF5VU07SUFPSTtJQUFBO0UzRXV5VVY7RTJFOXlVTTtJQU9JO0lBQUE7RTNFMnlVVjtFMkVselVNO0lBT0k7SUFBQTtFM0UreVVWO0UyRXR6VU07SUFPSTtJQUFBO0UzRW16VVY7RTJFMXpVTTtJQU9JO0lBQUE7RTNFdXpVVjtFMkU5elVNO0lBT0k7SUFBQTtFM0UyelVWO0UyRWwwVU07SUFPSTtFM0U4elVWO0UyRXIwVU07SUFPSTtFM0VpMFVWO0UyRXgwVU07SUFPSTtFM0VvMFVWO0UyRTMwVU07O0lBT0k7RTNFdzBVVjtFMkUvMFVNO0lBT0k7RTNFMjBVVjtFMkVsMVVNO0lBT0k7RTNFODBVVjtFMkVyMVVNO0lBT0k7RTNFaTFVVjtFMkV4MVVNO0lBT0k7RTNFbzFVVjtFMkUzMVVNO0lBT0k7RTNFdTFVVjtFMkU5MVVNO0lBT0k7RTNFMDFVVjtFMkVqMlVNO0lBT0k7RTNFNjFVVjtFMkVwMlVNO0lBT0k7RTNFZzJVVjtFMkV2MlVNO0lBT0k7RTNFbTJVVjtFMkUxMlVNO0lBT0k7RTNFczJVVjtFMkU3MlVNO0lBT0k7RTNFeTJVVjtFMkVoM1VNO0lBT0k7RTNFNDJVVjtFMkVuM1VNO0lBT0k7RTNFKzJVVjtFMkV0M1VNO0lBT0k7RTNFazNVVjtFMkV6M1VNO0lBT0k7RTNFcTNVVjtFMkU1M1VNO0lBT0k7RTNFdzNVVjtFMkUvM1VNO0lBT0k7RTNFMjNVVjtFMkVsNFVNO0lBT0k7RTNFODNVVjtFMkVyNFVNO0lBT0k7RTNFaTRVVjtFMkV4NFVNO0lBT0k7RTNFbzRVVjtFMkUzNFVNO0lBT0k7RTNFdTRVVjtFMkU5NFVNO0lBT0k7RTNFMDRVVjtFMkVqNVVNO0lBT0k7RTNFNjRVVjtFMkVwNVVNO0lBT0k7RTNFZzVVVjtFMkV2NVVNO0lBT0k7RTNFbTVVVjtFMkUxNVVNO0lBT0k7RTNFczVVVjtFMkU3NVVNO0lBT0k7RTNFeTVVVjtFMkVoNlVNO0lBT0k7RTNFNDVVVjtFMkVuNlVNO0lBT0k7RTNFKzVVVjtFMkV0NlVNO0lBT0k7RTNFazZVVjtFMkV6NlVNO0lBT0k7RTNFcTZVVjtFMkU1NlVNO0lBT0k7RTNFdzZVVjtFMkUvNlVNO0lBT0k7U0FBQTtFM0UyNlVWO0UyRWw3VU07SUFPSTtTQUFBO0UzRTg2VVY7RTJFcjdVTTtJQU9JO1NBQUE7RTNFaTdVVjtFMkV4N1VNO0lBT0k7U0FBQTtFM0VvN1VWO0UyRTM3VU07SUFPSTtTQUFBO0UzRXU3VVY7RTJFOTdVTTtJQU9JO1NBQUE7RTNFMDdVVjtFMkVqOFVNO0lBT0k7RTNFNjdVVjtFMkVwOFVNO0lBT0k7RTNFZzhVVjtFMkV2OFVNO0lBT0k7RTNFbThVVjtBQUNGO0FpQjk4VUk7RTBER0k7SUFPSTtFM0V3OFVWO0UyRS84VU07SUFPSTtFM0UyOFVWO0UyRWw5VU07SUFPSTtFM0U4OFVWO0UyRXI5VU07SUFPSTtPQUFBO0UzRWk5VVY7RTJFeDlVTTtJQU9JO09BQUE7RTNFbzlVVjtFMkUzOVVNO0lBT0k7T0FBQTtFM0V1OVVWO0UyRTk5VU07SUFPSTtPQUFBO0UzRTA5VVY7RTJFaitVTTtJQU9JO09BQUE7RTNFNjlVVjtFMkVwK1VNO0lBT0k7RTNFZytVVjtFMkV2K1VNO0lBT0k7RTNFbStVVjtFMkUxK1VNO0lBT0k7RTNFcytVVjtFMkU3K1VNO0lBT0k7RTNFeStVVjtFMkVoL1VNO0lBT0k7RTNFNCtVVjtFMkVuL1VNO0lBT0k7RTNFKytVVjtFMkV0L1VNO0lBT0k7RTNFay9VVjtFMkV6L1VNO0lBT0k7RTNFcS9VVjtFMkU1L1VNO0lBT0k7RTNFdy9VVjtFMkUvL1VNO0lBT0k7RTNFMi9VVjtFMkVsZ1ZNO0lBT0k7RTNFOC9VVjtFMkVyZ1ZNO0lBT0k7RTNFaWdWVjtFMkV4Z1ZNO0lBT0k7RTNFb2dWVjtFMkUzZ1ZNO0lBT0k7RTNFdWdWVjtFMkU5Z1ZNO0lBT0k7RTNFMGdWVjtFMkVqaFZNO0lBT0k7RTNFNmdWVjtFMkVwaFZNO0lBT0k7RTNFZ2hWVjtFMkV2aFZNO0lBT0k7RTNFbWhWVjtFMkUxaFZNO0lBT0k7RTNFc2hWVjtFMkU3aFZNO0lBT0k7RTNFeWhWVjtFMkVoaVZNO0lBT0k7RTNFNGhWVjtFMkVuaVZNO0lBT0k7RTNFK2hWVjtFMkV0aVZNO0lBT0k7RTNFa2lWVjtFMkV6aVZNO0lBT0k7RTNFcWlWVjtFMkU1aVZNO0lBT0k7RTNFd2lWVjtFMkUvaVZNO0lBT0k7RTNFMmlWVjtFMkVsalZNO0lBT0k7RTNFOGlWVjtFMkVyalZNO0lBT0k7RTNFaWpWVjtFMkV4alZNO0lBT0k7RTNFb2pWVjtFMkUzalZNO0lBT0k7RTNFdWpWVjtFMkU5alZNO0lBT0k7RTNFMGpWVjtFMkVqa1ZNO0lBT0k7RTNFNmpWVjtFMkVwa1ZNO0lBT0k7RTNFZ2tWVjtFMkV2a1ZNO0lBT0k7RTNFbWtWVjtFMkUxa1ZNO0lBT0k7RTNFc2tWVjtFMkU3a1ZNO0lBT0k7RTNFeWtWVjtFMkVobFZNO0lBT0k7RTNFNGtWVjtFMkVubFZNO0lBT0k7RTNFK2tWVjtFMkV0bFZNO0lBT0k7RTNFa2xWVjtFMkV6bFZNO0lBT0k7RTNFcWxWVjtFMkU1bFZNO0lBT0k7RTNFd2xWVjtFMkUvbFZNO0lBT0k7RTNFMmxWVjtFMkVsbVZNO0lBT0k7RTNFOGxWVjtFMkVybVZNO0lBT0k7RTNFaW1WVjtFMkV4bVZNO0lBT0k7RTNFb21WVjtFMkUzbVZNO0lBT0k7RTNFdW1WVjtFMkU5bVZNO0lBT0k7RTNFMG1WVjtFMkVqblZNO0lBT0k7RTNFNm1WVjtFMkVwblZNO0lBT0k7RTNFZ25WVjtFMkV2blZNO0lBT0k7RTNFbW5WVjtFMkUxblZNO0lBT0k7RTNFc25WVjtFMkU3blZNO0lBT0k7RTNFeW5WVjtFMkVob1ZNO0lBT0k7RTNFNG5WVjtFMkVub1ZNO0lBT0k7RTNFK25WVjtFMkV0b1ZNO0lBT0k7RTNFa29WVjtFMkV6b1ZNO0lBT0k7RTNFcW9WVjtFMkU1b1ZNO0lBT0k7RTNFd29WVjtFMkUvb1ZNO0lBT0k7RTNFMm9WVjtFMkVscFZNO0lBT0k7RTNFOG9WVjtFMkVycFZNO0lBT0k7RTNFaXBWVjtFMkV4cFZNO0lBT0k7RTNFb3BWVjtFMkUzcFZNO0lBT0k7SUFBQTtFM0V3cFZWO0UyRS9wVk07SUFPSTtJQUFBO0UzRTRwVlY7RTJFbnFWTTtJQU9JO0lBQUE7RTNFZ3FWVjtFMkV2cVZNO0lBT0k7SUFBQTtFM0VvcVZWO0UyRTNxVk07SUFPSTtJQUFBO0UzRXdxVlY7RTJFL3FWTTtJQU9JO0lBQUE7RTNFNHFWVjtFMkVuclZNO0lBT0k7SUFBQTtFM0VnclZWO0UyRXZyVk07SUFPSTtJQUFBO0UzRW9yVlY7RTJFM3JWTTtJQU9JO0lBQUE7RTNFd3JWVjtFMkUvclZNO0lBT0k7SUFBQTtFM0U0clZWO0UyRW5zVk07SUFPSTtJQUFBO0UzRWdzVlY7RTJFdnNWTTtJQU9JO0lBQUE7RTNFb3NWVjtFMkUzc1ZNO0lBT0k7SUFBQTtFM0V3c1ZWO0UyRS9zVk07SUFPSTtJQUFBO0UzRTRzVlY7RTJFbnRWTTtJQU9JO0UzRStzVlY7RTJFdHRWTTtJQU9JO0UzRWt0VlY7RTJFenRWTTtJQU9JO0UzRXF0VlY7RTJFNXRWTTtJQU9JO0UzRXd0VlY7RTJFL3RWTTtJQU9JO0UzRTJ0VlY7RTJFbHVWTTtJQU9JO0UzRTh0VlY7RTJFcnVWTTtJQU9JO0UzRWl1VlY7RTJFeHVWTTtJQU9JO0UzRW91VlY7RTJFM3VWTTtJQU9JO0UzRXV1VlY7RTJFOXVWTTtJQU9JO0UzRTB1VlY7RTJFanZWTTtJQU9JO0UzRTZ1VlY7RTJFcHZWTTtJQU9JO0UzRWd2VlY7RTJFdnZWTTtJQU9JO0UzRW12VlY7RTJFMXZWTTtJQU9JO0UzRXN2VlY7RTJFN3ZWTTtJQU9JO0UzRXl2VlY7RTJFaHdWTTtJQU9JO0UzRTR2VlY7RTJFbndWTTtJQU9JO0UzRSt2VlY7RTJFdHdWTTtJQU9JO0UzRWt3VlY7RTJFendWTTtJQU9JO0UzRXF3VlY7RTJFNXdWTTtJQU9JO0UzRXd3VlY7RTJFL3dWTTtJQU9JO0UzRTJ3VlY7RTJFbHhWTTtJQU9JO0UzRTh3VlY7RTJFcnhWTTtJQU9JO0UzRWl4VlY7RTJFeHhWTTtJQU9JO0UzRW94VlY7RTJFM3hWTTtJQU9JO0UzRXV4VlY7RTJFOXhWTTtJQU9JO0UzRTB4VlY7RTJFanlWTTtJQU9JO0UzRTZ4VlY7RTJFcHlWTTtJQU9JO0UzRWd5VlY7RTJFdnlWTTtJQU9JO0UzRW15VlY7RTJFMXlWTTtJQU9JO0UzRXN5VlY7RTJFN3lWTTtJQU9JO0UzRXl5VlY7RTJFaHpWTTtJQU9JO0UzRTR5VlY7RTJFbnpWTTtJQU9JO0UzRSt5VlY7RTJFdHpWTTtJQU9JO0UzRWt6VlY7RTJFenpWTTtJQU9JO0lBQUE7RTNFc3pWVjtFMkU3elZNO0lBT0k7SUFBQTtFM0UwelZWO0UyRWowVk07SUFPSTtJQUFBO0UzRTh6VlY7RTJFcjBWTTtJQU9JO0lBQUE7RTNFazBWVjtFMkV6MFZNO0lBT0k7SUFBQTtFM0VzMFZWO0UyRTcwVk07SUFPSTtJQUFBO0UzRTAwVlY7RTJFajFWTTtJQU9JO0lBQUE7RTNFODBWVjtFMkVyMVZNO0lBT0k7SUFBQTtFM0VrMVZWO0UyRXoxVk07SUFPSTtJQUFBO0UzRXMxVlY7RTJFNzFWTTtJQU9JO0lBQUE7RTNFMDFWVjtFMkVqMlZNO0lBT0k7SUFBQTtFM0U4MVZWO0UyRXIyVk07SUFPSTtJQUFBO0UzRWsyVlY7RTJFejJWTTtJQU9JO0UzRXEyVlY7RTJFNTJWTTtJQU9JO0UzRXcyVlY7RTJFLzJWTTtJQU9JO0UzRTIyVlY7RTJFbDNWTTtJQU9JO0UzRTgyVlY7RTJFcjNWTTtJQU9JO0UzRWkzVlY7RTJFeDNWTTtJQU9JO0UzRW8zVlY7RTJFMzNWTTtJQU9JO0UzRXUzVlY7RTJFOTNWTTtJQU9JO0UzRTAzVlY7RTJFajRWTTtJQU9JO0UzRTYzVlY7RTJFcDRWTTtJQU9JO0UzRWc0VlY7RTJFdjRWTTtJQU9JO0UzRW00VlY7RTJFMTRWTTtJQU9JO0UzRXM0VlY7RTJFNzRWTTtJQU9JO0UzRXk0VlY7RTJFaDVWTTtJQU9JO0UzRTQ0VlY7RTJFbjVWTTtJQU9JO0UzRSs0VlY7RTJFdDVWTTtJQU9JO0UzRWs1VlY7RTJFejVWTTtJQU9JO0UzRXE1VlY7RTJFNTVWTTtJQU9JO0UzRXc1VlY7RTJFLzVWTTtJQU9JO0UzRTI1VlY7RTJFbDZWTTtJQU9JO0UzRTg1VlY7RTJFcjZWTTtJQU9JO0UzRWk2VlY7RTJFeDZWTTtJQU9JO0UzRW82VlY7RTJFMzZWTTtJQU9JO0UzRXU2VlY7RTJFOTZWTTtJQU9JO0UzRTA2VlY7RTJFajdWTTtJQU9JO0UzRTY2VlY7RTJFcDdWTTtJQU9JO0UzRWc3VlY7RTJFdjdWTTtJQU9JO0UzRW03VlY7RTJFMTdWTTtJQU9JO0UzRXM3VlY7RTJFNzdWTTtJQU9JO0UzRXk3VlY7RTJFaDhWTTtJQU9JO0UzRTQ3VlY7RTJFbjhWTTtJQU9JO0UzRSs3VlY7RTJFdDhWTTtJQU9JO0UzRWs4VlY7RTJFejhWTTtJQU9JO0UzRXE4VlY7RTJFNThWTTtJQU9JO0UzRXc4VlY7RTJFLzhWTTtJQU9JO0UzRTI4VlY7RTJFbDlWTTtJQU9JO0UzRTg4VlY7RTJFcjlWTTtJQU9JO1NBQUE7RTNFaTlWVjtFMkV4OVZNO0lBT0k7U0FBQTtFM0VvOVZWO0UyRTM5Vk07SUFPSTtTQUFBO0UzRXU5VlY7RTJFOTlWTTtJQU9JO1NBQUE7RTNFMDlWVjtFMkVqK1ZNO0lBT0k7U0FBQTtFM0U2OVZWO0UyRXArVk07SUFPSTtTQUFBO0UzRWcrVlY7RTJFditWTTtJQU9JO0UzRW0rVlY7RTJFMStWTTtJQU9JO0UzRXMrVlY7RTJFNytWTTtJQU9JO0UzRXkrVlY7QUFDRjtBaUJwL1ZJO0UwREdJO0lBT0k7RTNFOCtWVjtFMkVyL1ZNO0lBT0k7RTNFaS9WVjtFMkV4L1ZNO0lBT0k7RTNFby9WVjtFMkUzL1ZNO0lBT0k7T0FBQTtFM0V1L1ZWO0UyRTkvVk07SUFPSTtPQUFBO0UzRTAvVlY7RTJFamdXTTtJQU9JO09BQUE7RTNFNi9WVjtFMkVwZ1dNO0lBT0k7T0FBQTtFM0VnZ1dWO0UyRXZnV007SUFPSTtPQUFBO0UzRW1nV1Y7RTJFMWdXTTtJQU9JO0UzRXNnV1Y7RTJFN2dXTTtJQU9JO0UzRXlnV1Y7RTJFaGhXTTtJQU9JO0UzRTRnV1Y7RTJFbmhXTTtJQU9JO0UzRStnV1Y7RTJFdGhXTTtJQU9JO0UzRWtoV1Y7RTJFemhXTTtJQU9JO0UzRXFoV1Y7RTJFNWhXTTtJQU9JO0UzRXdoV1Y7RTJFL2hXTTtJQU9JO0UzRTJoV1Y7RTJFbGlXTTtJQU9JO0UzRThoV1Y7RTJFcmlXTTtJQU9JO0UzRWlpV1Y7RTJFeGlXTTtJQU9JO0UzRW9pV1Y7RTJFM2lXTTtJQU9JO0UzRXVpV1Y7RTJFOWlXTTtJQU9JO0UzRTBpV1Y7RTJFampXTTtJQU9JO0UzRTZpV1Y7RTJFcGpXTTtJQU9JO0UzRWdqV1Y7RTJFdmpXTTtJQU9JO0UzRW1qV1Y7RTJFMWpXTTtJQU9JO0UzRXNqV1Y7RTJFN2pXTTtJQU9JO0UzRXlqV1Y7RTJFaGtXTTtJQU9JO0UzRTRqV1Y7RTJFbmtXTTtJQU9JO0UzRStqV1Y7RTJFdGtXTTtJQU9JO0UzRWtrV1Y7RTJFemtXTTtJQU9JO0UzRXFrV1Y7RTJFNWtXTTtJQU9JO0UzRXdrV1Y7RTJFL2tXTTtJQU9JO0UzRTJrV1Y7RTJFbGxXTTtJQU9JO0UzRThrV1Y7RTJFcmxXTTtJQU9JO0UzRWlsV1Y7RTJFeGxXTTtJQU9JO0UzRW9sV1Y7RTJFM2xXTTtJQU9JO0UzRXVsV1Y7RTJFOWxXTTtJQU9JO0UzRTBsV1Y7RTJFam1XTTtJQU9JO0UzRTZsV1Y7RTJFcG1XTTtJQU9JO0UzRWdtV1Y7RTJFdm1XTTtJQU9JO0UzRW1tV1Y7RTJFMW1XTTtJQU9JO0UzRXNtV1Y7RTJFN21XTTtJQU9JO0UzRXltV1Y7RTJFaG5XTTtJQU9JO0UzRTRtV1Y7RTJFbm5XTTtJQU9JO0UzRSttV1Y7RTJFdG5XTTtJQU9JO0UzRWtuV1Y7RTJFem5XTTtJQU9JO0UzRXFuV1Y7RTJFNW5XTTtJQU9JO0UzRXduV1Y7RTJFL25XTTtJQU9JO0UzRTJuV1Y7RTJFbG9XTTtJQU9JO0UzRThuV1Y7RTJFcm9XTTtJQU9JO0UzRWlvV1Y7RTJFeG9XTTtJQU9JO0UzRW9vV1Y7RTJFM29XTTtJQU9JO0UzRXVvV1Y7RTJFOW9XTTtJQU9JO0UzRTBvV1Y7RTJFanBXTTtJQU9JO0UzRTZvV1Y7RTJFcHBXTTtJQU9JO0UzRWdwV1Y7RTJFdnBXTTtJQU9JO0UzRW1wV1Y7RTJFMXBXTTtJQU9JO0UzRXNwV1Y7RTJFN3BXTTtJQU9JO0UzRXlwV1Y7RTJFaHFXTTtJQU9JO0UzRTRwV1Y7RTJFbnFXTTtJQU9JO0UzRStwV1Y7RTJFdHFXTTtJQU9JO0UzRWtxV1Y7RTJFenFXTTtJQU9JO0UzRXFxV1Y7RTJFNXFXTTtJQU9JO0UzRXdxV1Y7RTJFL3FXTTtJQU9JO0UzRTJxV1Y7RTJFbHJXTTtJQU9JO0UzRThxV1Y7RTJFcnJXTTtJQU9JO0UzRWlyV1Y7RTJFeHJXTTtJQU9JO0UzRW9yV1Y7RTJFM3JXTTtJQU9JO0UzRXVyV1Y7RTJFOXJXTTtJQU9JO0UzRTByV1Y7RTJFanNXTTtJQU9JO0lBQUE7RTNFOHJXVjtFMkVyc1dNO0lBT0k7SUFBQTtFM0Vrc1dWO0UyRXpzV007SUFPSTtJQUFBO0UzRXNzV1Y7RTJFN3NXTTtJQU9JO0lBQUE7RTNFMHNXVjtFMkVqdFdNO0lBT0k7SUFBQTtFM0U4c1dWO0UyRXJ0V007SUFPSTtJQUFBO0UzRWt0V1Y7RTJFenRXTTtJQU9JO0lBQUE7RTNFc3RXVjtFMkU3dFdNO0lBT0k7SUFBQTtFM0UwdFdWO0UyRWp1V007SUFPSTtJQUFBO0UzRTh0V1Y7RTJFcnVXTTtJQU9JO0lBQUE7RTNFa3VXVjtFMkV6dVdNO0lBT0k7SUFBQTtFM0VzdVdWO0UyRTd1V007SUFPSTtJQUFBO0UzRTB1V1Y7RTJFanZXTTtJQU9JO0lBQUE7RTNFOHVXVjtFMkVydldNO0lBT0k7SUFBQTtFM0VrdldWO0UyRXp2V007SUFPSTtFM0VxdldWO0UyRTV2V007SUFPSTtFM0V3dldWO0UyRS92V007SUFPSTtFM0UydldWO0UyRWx3V007SUFPSTtFM0U4dldWO0UyRXJ3V007SUFPSTtFM0Vpd1dWO0UyRXh3V007SUFPSTtFM0Vvd1dWO0UyRTN3V007SUFPSTtFM0V1d1dWO0UyRTl3V007SUFPSTtFM0Uwd1dWO0UyRWp4V007SUFPSTtFM0U2d1dWO0UyRXB4V007SUFPSTtFM0VneFdWO0UyRXZ4V007SUFPSTtFM0VteFdWO0UyRTF4V007SUFPSTtFM0VzeFdWO0UyRTd4V007SUFPSTtFM0V5eFdWO0UyRWh5V007SUFPSTtFM0U0eFdWO0UyRW55V007SUFPSTtFM0UreFdWO0UyRXR5V007SUFPSTtFM0VreVdWO0UyRXp5V007SUFPSTtFM0VxeVdWO0UyRTV5V007SUFPSTtFM0V3eVdWO0UyRS95V007SUFPSTtFM0UyeVdWO0UyRWx6V007SUFPSTtFM0U4eVdWO0UyRXJ6V007SUFPSTtFM0VpeldWO0UyRXh6V007SUFPSTtFM0VveldWO0UyRTN6V007SUFPSTtFM0V1eldWO0UyRTl6V007SUFPSTtFM0UweldWO0UyRWowV007SUFPSTtFM0U2eldWO0UyRXAwV007SUFPSTtFM0VnMFdWO0UyRXYwV007SUFPSTtFM0VtMFdWO0UyRTEwV007SUFPSTtFM0VzMFdWO0UyRTcwV007SUFPSTtFM0V5MFdWO0UyRWgxV007SUFPSTtFM0U0MFdWO0UyRW4xV007SUFPSTtFM0UrMFdWO0UyRXQxV007SUFPSTtFM0VrMVdWO0UyRXoxV007SUFPSTtFM0VxMVdWO0UyRTUxV007SUFPSTtFM0V3MVdWO0UyRS8xV007SUFPSTtJQUFBO0UzRTQxV1Y7RTJFbjJXTTtJQU9JO0lBQUE7RTNFZzJXVjtFMkV2MldNO0lBT0k7SUFBQTtFM0VvMldWO0UyRTMyV007SUFPSTtJQUFBO0UzRXcyV1Y7RTJFLzJXTTtJQU9JO0lBQUE7RTNFNDJXVjtFMkVuM1dNO0lBT0k7SUFBQTtFM0VnM1dWO0UyRXYzV007SUFPSTtJQUFBO0UzRW8zV1Y7RTJFMzNXTTtJQU9JO0lBQUE7RTNFdzNXVjtFMkUvM1dNO0lBT0k7SUFBQTtFM0U0M1dWO0UyRW40V007SUFPSTtJQUFBO0UzRWc0V1Y7RTJFdjRXTTtJQU9JO0lBQUE7RTNFbzRXVjtFMkUzNFdNO0lBT0k7SUFBQTtFM0V3NFdWO0UyRS80V007SUFPSTtFM0UyNFdWO0UyRWw1V007SUFPSTtFM0U4NFdWO0UyRXI1V007SUFPSTtFM0VpNVdWO0UyRXg1V007SUFPSTtFM0VvNVdWO0UyRTM1V007SUFPSTtFM0V1NVdWO0UyRTk1V007SUFPSTtFM0UwNVdWO0UyRWo2V007SUFPSTtFM0U2NVdWO0UyRXA2V007SUFPSTtFM0VnNldWO0UyRXY2V007SUFPSTtFM0VtNldWO0UyRTE2V007SUFPSTtFM0VzNldWO0UyRTc2V007SUFPSTtFM0V5NldWO0UyRWg3V007SUFPSTtFM0U0NldWO0UyRW43V007SUFPSTtFM0UrNldWO0UyRXQ3V007SUFPSTtFM0VrN1dWO0UyRXo3V007SUFPSTtFM0VxN1dWO0UyRTU3V007SUFPSTtFM0V3N1dWO0UyRS83V007SUFPSTtFM0UyN1dWO0UyRWw4V007SUFPSTtFM0U4N1dWO0UyRXI4V007SUFPSTtFM0VpOFdWO0UyRXg4V007SUFPSTtFM0VvOFdWO0UyRTM4V007SUFPSTtFM0V1OFdWO0UyRTk4V007SUFPSTtFM0UwOFdWO0UyRWo5V007SUFPSTtFM0U2OFdWO0UyRXA5V007SUFPSTtFM0VnOVdWO0UyRXY5V007SUFPSTtFM0VtOVdWO0UyRTE5V007SUFPSTtFM0VzOVdWO0UyRTc5V007SUFPSTtFM0V5OVdWO0UyRWgrV007SUFPSTtFM0U0OVdWO0UyRW4rV007SUFPSTtFM0UrOVdWO0UyRXQrV007SUFPSTtFM0VrK1dWO0UyRXorV007SUFPSTtFM0VxK1dWO0UyRTUrV007SUFPSTtFM0V3K1dWO0UyRS8rV007SUFPSTtFM0UyK1dWO0UyRWwvV007SUFPSTtFM0U4K1dWO0UyRXIvV007SUFPSTtFM0VpL1dWO0UyRXgvV007SUFPSTtFM0VvL1dWO0UyRTMvV007SUFPSTtTQUFBO0UzRXUvV1Y7RTJFOS9XTTtJQU9JO1NBQUE7RTNFMC9XVjtFMkVqZ1hNO0lBT0k7U0FBQTtFM0U2L1dWO0UyRXBnWE07SUFPSTtTQUFBO0UzRWdnWFY7RTJFdmdYTTtJQU9JO1NBQUE7RTNFbWdYVjtFMkUxZ1hNO0lBT0k7U0FBQTtFM0VzZ1hWO0UyRTdnWE07SUFPSTtFM0V5Z1hWO0UyRWhoWE07SUFPSTtFM0U0Z1hWO0UyRW5oWE07SUFPSTtFM0UrZ1hWO0FBQ0Y7QWlCMWhYSTtFMERHSTtJQU9JO0UzRW9oWFY7RTJFM2hYTTtJQU9JO0UzRXVoWFY7RTJFOWhYTTtJQU9JO0UzRTBoWFY7RTJFamlYTTtJQU9JO09BQUE7RTNFNmhYVjtFMkVwaVhNO0lBT0k7T0FBQTtFM0VnaVhWO0UyRXZpWE07SUFPSTtPQUFBO0UzRW1pWFY7RTJFMWlYTTtJQU9JO09BQUE7RTNFc2lYVjtFMkU3aVhNO0lBT0k7T0FBQTtFM0V5aVhWO0UyRWhqWE07SUFPSTtFM0U0aVhWO0UyRW5qWE07SUFPSTtFM0UraVhWO0UyRXRqWE07SUFPSTtFM0VralhWO0UyRXpqWE07SUFPSTtFM0VxalhWO0UyRTVqWE07SUFPSTtFM0V3alhWO0UyRS9qWE07SUFPSTtFM0UyalhWO0UyRWxrWE07SUFPSTtFM0U4alhWO0UyRXJrWE07SUFPSTtFM0Vpa1hWO0UyRXhrWE07SUFPSTtFM0Vva1hWO0UyRTNrWE07SUFPSTtFM0V1a1hWO0UyRTlrWE07SUFPSTtFM0Uwa1hWO0UyRWpsWE07SUFPSTtFM0U2a1hWO0UyRXBsWE07SUFPSTtFM0VnbFhWO0UyRXZsWE07SUFPSTtFM0VtbFhWO0UyRTFsWE07SUFPSTtFM0VzbFhWO0UyRTdsWE07SUFPSTtFM0V5bFhWO0UyRWhtWE07SUFPSTtFM0U0bFhWO0UyRW5tWE07SUFPSTtFM0UrbFhWO0UyRXRtWE07SUFPSTtFM0VrbVhWO0UyRXptWE07SUFPSTtFM0VxbVhWO0UyRTVtWE07SUFPSTtFM0V3bVhWO0UyRS9tWE07SUFPSTtFM0UybVhWO0UyRWxuWE07SUFPSTtFM0U4bVhWO0UyRXJuWE07SUFPSTtFM0VpblhWO0UyRXhuWE07SUFPSTtFM0VvblhWO0UyRTNuWE07SUFPSTtFM0V1blhWO0UyRTluWE07SUFPSTtFM0UwblhWO0UyRWpvWE07SUFPSTtFM0U2blhWO0UyRXBvWE07SUFPSTtFM0Vnb1hWO0UyRXZvWE07SUFPSTtFM0Vtb1hWO0UyRTFvWE07SUFPSTtFM0Vzb1hWO0UyRTdvWE07SUFPSTtFM0V5b1hWO0UyRWhwWE07SUFPSTtFM0U0b1hWO0UyRW5wWE07SUFPSTtFM0Urb1hWO0UyRXRwWE07SUFPSTtFM0VrcFhWO0UyRXpwWE07SUFPSTtFM0VxcFhWO0UyRTVwWE07SUFPSTtFM0V3cFhWO0UyRS9wWE07SUFPSTtFM0UycFhWO0UyRWxxWE07SUFPSTtFM0U4cFhWO0UyRXJxWE07SUFPSTtFM0VpcVhWO0UyRXhxWE07SUFPSTtFM0VvcVhWO0UyRTNxWE07SUFPSTtFM0V1cVhWO0UyRTlxWE07SUFPSTtFM0UwcVhWO0UyRWpyWE07SUFPSTtFM0U2cVhWO0UyRXByWE07SUFPSTtFM0VnclhWO0UyRXZyWE07SUFPSTtFM0VtclhWO0UyRTFyWE07SUFPSTtFM0VzclhWO0UyRTdyWE07SUFPSTtFM0V5clhWO0UyRWhzWE07SUFPSTtFM0U0clhWO0UyRW5zWE07SUFPSTtFM0UrclhWO0UyRXRzWE07SUFPSTtFM0Vrc1hWO0UyRXpzWE07SUFPSTtFM0Vxc1hWO0UyRTVzWE07SUFPSTtFM0V3c1hWO0UyRS9zWE07SUFPSTtFM0Uyc1hWO0UyRWx0WE07SUFPSTtFM0U4c1hWO0UyRXJ0WE07SUFPSTtFM0VpdFhWO0UyRXh0WE07SUFPSTtFM0VvdFhWO0UyRTN0WE07SUFPSTtFM0V1dFhWO0UyRTl0WE07SUFPSTtFM0UwdFhWO0UyRWp1WE07SUFPSTtFM0U2dFhWO0UyRXB1WE07SUFPSTtFM0VndVhWO0UyRXZ1WE07SUFPSTtJQUFBO0UzRW91WFY7RTJFM3VYTTtJQU9JO0lBQUE7RTNFd3VYVjtFMkUvdVhNO0lBT0k7SUFBQTtFM0U0dVhWO0UyRW52WE07SUFPSTtJQUFBO0UzRWd2WFY7RTJFdnZYTTtJQU9JO0lBQUE7RTNFb3ZYVjtFMkUzdlhNO0lBT0k7SUFBQTtFM0V3dlhWO0UyRS92WE07SUFPSTtJQUFBO0UzRTR2WFY7RTJFbndYTTtJQU9JO0lBQUE7RTNFZ3dYVjtFMkV2d1hNO0lBT0k7SUFBQTtFM0Vvd1hWO0UyRTN3WE07SUFPSTtJQUFBO0UzRXd3WFY7RTJFL3dYTTtJQU9JO0lBQUE7RTNFNHdYVjtFMkVueFhNO0lBT0k7SUFBQTtFM0VneFhWO0UyRXZ4WE07SUFPSTtJQUFBO0UzRW94WFY7RTJFM3hYTTtJQU9JO0lBQUE7RTNFd3hYVjtFMkUveFhNO0lBT0k7RTNFMnhYVjtFMkVseVhNO0lBT0k7RTNFOHhYVjtFMkVyeVhNO0lBT0k7RTNFaXlYVjtFMkV4eVhNO0lBT0k7RTNFb3lYVjtFMkUzeVhNO0lBT0k7RTNFdXlYVjtFMkU5eVhNO0lBT0k7RTNFMHlYVjtFMkVqelhNO0lBT0k7RTNFNnlYVjtFMkVwelhNO0lBT0k7RTNFZ3pYVjtFMkV2elhNO0lBT0k7RTNFbXpYVjtFMkUxelhNO0lBT0k7RTNFc3pYVjtFMkU3elhNO0lBT0k7RTNFeXpYVjtFMkVoMFhNO0lBT0k7RTNFNHpYVjtFMkVuMFhNO0lBT0k7RTNFK3pYVjtFMkV0MFhNO0lBT0k7RTNFazBYVjtFMkV6MFhNO0lBT0k7RTNFcTBYVjtFMkU1MFhNO0lBT0k7RTNFdzBYVjtFMkUvMFhNO0lBT0k7RTNFMjBYVjtFMkVsMVhNO0lBT0k7RTNFODBYVjtFMkVyMVhNO0lBT0k7RTNFaTFYVjtFMkV4MVhNO0lBT0k7RTNFbzFYVjtFMkUzMVhNO0lBT0k7RTNFdTFYVjtFMkU5MVhNO0lBT0k7RTNFMDFYVjtFMkVqMlhNO0lBT0k7RTNFNjFYVjtFMkVwMlhNO0lBT0k7RTNFZzJYVjtFMkV2MlhNO0lBT0k7RTNFbTJYVjtFMkUxMlhNO0lBT0k7RTNFczJYVjtFMkU3MlhNO0lBT0k7RTNFeTJYVjtFMkVoM1hNO0lBT0k7RTNFNDJYVjtFMkVuM1hNO0lBT0k7RTNFKzJYVjtFMkV0M1hNO0lBT0k7RTNFazNYVjtFMkV6M1hNO0lBT0k7RTNFcTNYVjtFMkU1M1hNO0lBT0k7RTNFdzNYVjtFMkUvM1hNO0lBT0k7RTNFMjNYVjtFMkVsNFhNO0lBT0k7RTNFODNYVjtFMkVyNFhNO0lBT0k7SUFBQTtFM0VrNFhWO0UyRXo0WE07SUFPSTtJQUFBO0UzRXM0WFY7RTJFNzRYTTtJQU9JO0lBQUE7RTNFMDRYVjtFMkVqNVhNO0lBT0k7SUFBQTtFM0U4NFhWO0UyRXI1WE07SUFPSTtJQUFBO0UzRWs1WFY7RTJFejVYTTtJQU9JO0lBQUE7RTNFczVYVjtFMkU3NVhNO0lBT0k7SUFBQTtFM0UwNVhWO0UyRWo2WE07SUFPSTtJQUFBO0UzRTg1WFY7RTJFcjZYTTtJQU9JO0lBQUE7RTNFazZYVjtFMkV6NlhNO0lBT0k7SUFBQTtFM0VzNlhWO0UyRTc2WE07SUFPSTtJQUFBO0UzRTA2WFY7RTJFajdYTTtJQU9JO0lBQUE7RTNFODZYVjtFMkVyN1hNO0lBT0k7RTNFaTdYVjtFMkV4N1hNO0lBT0k7RTNFbzdYVjtFMkUzN1hNO0lBT0k7RTNFdTdYVjtFMkU5N1hNO0lBT0k7RTNFMDdYVjtFMkVqOFhNO0lBT0k7RTNFNjdYVjtFMkVwOFhNO0lBT0k7RTNFZzhYVjtFMkV2OFhNO0lBT0k7RTNFbThYVjtFMkUxOFhNO0lBT0k7RTNFczhYVjtFMkU3OFhNO0lBT0k7RTNFeThYVjtFMkVoOVhNO0lBT0k7RTNFNDhYVjtFMkVuOVhNO0lBT0k7RTNFKzhYVjtFMkV0OVhNO0lBT0k7RTNFazlYVjtFMkV6OVhNO0lBT0k7RTNFcTlYVjtFMkU1OVhNO0lBT0k7RTNFdzlYVjtFMkUvOVhNO0lBT0k7RTNFMjlYVjtFMkVsK1hNO0lBT0k7RTNFODlYVjtFMkVyK1hNO0lBT0k7RTNFaStYVjtFMkV4K1hNO0lBT0k7RTNFbytYVjtFMkUzK1hNO0lBT0k7RTNFdStYVjtFMkU5K1hNO0lBT0k7RTNFMCtYVjtFMkVqL1hNO0lBT0k7RTNFNitYVjtFMkVwL1hNO0lBT0k7RTNFZy9YVjtFMkV2L1hNO0lBT0k7RTNFbS9YVjtFMkUxL1hNO0lBT0k7RTNFcy9YVjtFMkU3L1hNO0lBT0k7RTNFeS9YVjtFMkVoZ1lNO0lBT0k7RTNFNC9YVjtFMkVuZ1lNO0lBT0k7RTNFKy9YVjtFMkV0Z1lNO0lBT0k7RTNFa2dZVjtFMkV6Z1lNO0lBT0k7RTNFcWdZVjtFMkU1Z1lNO0lBT0k7RTNFd2dZVjtFMkUvZ1lNO0lBT0k7RTNFMmdZVjtFMkVsaFlNO0lBT0k7RTNFOGdZVjtFMkVyaFlNO0lBT0k7RTNFaWhZVjtFMkV4aFlNO0lBT0k7RTNFb2hZVjtFMkUzaFlNO0lBT0k7RTNFdWhZVjtFMkU5aFlNO0lBT0k7RTNFMGhZVjtFMkVqaVlNO0lBT0k7U0FBQTtFM0U2aFlWO0UyRXBpWU07SUFPSTtTQUFBO0UzRWdpWVY7RTJFdmlZTTtJQU9JO1NBQUE7RTNFbWlZVjtFMkUxaVlNO0lBT0k7U0FBQTtFM0VzaVlWO0UyRTdpWU07SUFPSTtTQUFBO0UzRXlpWVY7RTJFaGpZTTtJQU9JO1NBQUE7RTNFNGlZVjtFMkVuallNO0lBT0k7RTNFK2lZVjtFMkV0allNO0lBT0k7RTNFa2pZVjtFMkV6allNO0lBT0k7RTNFcWpZVjtBQUNGO0E0RTVtWUE7RUQrQ1E7SUFPSTtFM0UwallWO0UyRWprWU07SUFPSTtFM0U2allWO0UyRXBrWU07SUFPSTtFM0Vna1lWO0UyRXZrWU07SUFPSTtFM0Vta1lWO0FBQ0Y7QTRFdm1ZQTtFRDRCUTtJQU9JO0UzRXdrWVY7RTJFL2tZTTtJQU9JO0UzRTJrWVY7RTJFbGxZTTtJQU9JO0UzRThrWVY7RTJFcmxZTTtJQU9JO0UzRWlsWVY7RTJFeGxZTTtJQU9JO0UzRW9sWVY7RTJFM2xZTTtJQU9JO0UzRXVsWVY7RTJFOWxZTTtJQU9JO0UzRTBsWVY7RTJFam1ZTTtJQU9JO0UzRTZsWVY7RTJFcG1ZTTtJQU9J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RUFDSTtBQXdwVko7QUF0cFZJO0VBQ0k7RUFDQSwrQkVqalNXO0FGeXNuQm5COztBQXBwVkE7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FBdXBWSjs7QUFucFZJO0VBQ0ksZUVyalNPO0VGc2pTUCwrQkU5alNTO0VGK2pTVCxnQkU5aVNDO0FGb3NuQlQ7O0FBaHBWSTtFQUNJO0FBbXBWUjs7QUE3b1ZBO0VBQ0ksZUVya1NXO0VGc2tTWCxnQkUzalNhO0VGNGpTYixpQkV2alNJO0VGd2pTSjtBQWdwVko7O0E2RWh3bkJBOzs7RUFBQTtBQUlDO0VBQ0c7RUFDQTtFQUNBO0VBQ0E7RUFDQTtBN0Vtd25CSjs7QUF2cFZBO0VBQ0k7QUEwcFZKOztBQXRwVkk7RUFDSTtJQUNJO0VBeXBWVjtBQUNGOztBQXJwVkE7O0VBQUE7QUFHQTtFQUNJO0FBd3BWSjs7QUFycFZDO0FBR0c7RUFDSTtBQXNwVlI7QUFucFZJO0VBQ0k7QUFxcFZSO0FBbnBWUTtFQUhKO0lBSVE7RUFzcFZWO0FBQ0Y7O0FBL29WSTtFQUNJO0FBa3BWUjtBQS9vVkk7RUFDSTtBQWlwVlI7QUFocFZRO0VBRko7SUFHUTtFQW1wVlY7QUFDRjs7QUEzb1ZRO0VBQ0k7QUE4b1ZaOztBQXhvVkE7RUFFSTs7O0tBQUE7QUE2b1ZKO0FBem9WSzs7RUFFSTtBQTJvVlQ7QUF4b1ZLO0VBQ0c7QUEwb1ZSO0FBem9WUTtFQUZIO0lBR087RUE0b1ZWO0FBQ0Y7O0FBdG9WUTtFQUNJO0FBeW9WWjtBQXJvVkk7RUFDSTtBQXVvVlI7QUFwb1ZJO0VBQ0k7RUFDQTtBQXNvVlI7O0FBaG9WSTtFQUNJO0FBbW9WUjs7QUE1blZJOzs7O0VBRUk7QUFpb1ZSO0FBOW5WSTtFQUNJO0VBQ0E7QUFnb1ZSO0FBN25WSTtFQUNJO0VBQ0E7QUErblZSO0FBNW5WSTs7OztFQUVJO0FBZ29WUjtBQTduVkk7RUFDSTtBQStuVlIsQyIsInNvdXJjZXMiOlsid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzL2FwcC5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzL19tZW51LmNvbXBsZXRlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvX3ZhcmlhYmxlcy5zY3NzIiwid2VicGFjazovLy8uL3Jlc291cmNlcy9zYXNzL19mb290ZXIuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19iYW5uZXIuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3Jvb3Quc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvdmVuZG9yL19yZnMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19jb2xvci1tb2RlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19yZWJvb3Quc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3ZhcmlhYmxlcy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2JvcmRlci1yYWRpdXMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3R5cGUuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19saXN0cy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9faW1hZ2VzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9faW1hZ2Uuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2NvbnRhaW5lcnMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19jb250YWluZXIuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19icmVha3BvaW50cy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fZ3JpZC5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2dyaWQuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3RhYmxlcy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3RhYmxlLXZhcmlhbnRzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2Zvcm1zL19sYWJlbHMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvZm9ybXMvX2Zvcm0tdGV4dC5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9mb3Jtcy9fZm9ybS1jb250cm9sLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fdHJhbnNpdGlvbi5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2dyYWRpZW50cy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9mb3Jtcy9fZm9ybS1zZWxlY3Quc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvZm9ybXMvX2Zvcm0tY2hlY2suc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvZm9ybXMvX2Zvcm0tcmFuZ2Uuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvZm9ybXMvX2Zsb2F0aW5nLWxhYmVscy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9mb3Jtcy9faW5wdXQtZ3JvdXAuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19mb3Jtcy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fYnV0dG9ucy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2J1dHRvbnMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3RyYW5zaXRpb25zLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19kcm9wZG93bi5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2NhcmV0LnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19idXR0b24tZ3JvdXAuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX25hdi5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fbmF2YmFyLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19jYXJkLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19hY2NvcmRpb24uc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX2JyZWFkY3J1bWIuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3BhZ2luYXRpb24uc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19wYWdpbmF0aW9uLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19iYWRnZS5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fYWxlcnQuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX3Byb2dyZXNzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19saXN0LWdyb3VwLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19jbG9zZS5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fdG9hc3RzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19tb2RhbC5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2JhY2tkcm9wLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL190b29sdGlwLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fcmVzZXQtdGV4dC5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fcG9wb3Zlci5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fY2Fyb3VzZWwuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19jbGVhcmZpeC5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fc3Bpbm5lcnMuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvX29mZmNhbnZhcy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9fcGxhY2Vob2xkZXJzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2hlbHBlcnMvX2NvbG9yLWJnLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2hlbHBlcnMvX2NvbG9yZWQtbGlua3Muc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvaGVscGVycy9fZm9jdXMtcmluZy5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9oZWxwZXJzL19pY29uLWxpbmsuc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvaGVscGVycy9fcmF0aW8uc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvaGVscGVycy9fcG9zaXRpb24uc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvaGVscGVycy9fc3RhY2tzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2hlbHBlcnMvX3Zpc3VhbGx5LWhpZGRlbi5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9taXhpbnMvX3Zpc3VhbGx5LWhpZGRlbi5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9oZWxwZXJzL19zdHJldGNoZWQtbGluay5zY3NzIiwid2VicGFjazovLy8uL25vZGVfbW9kdWxlcy9ib290c3RyYXAvc2Nzcy9oZWxwZXJzL190ZXh0LXRydW5jYXRpb24uc2NzcyIsIndlYnBhY2s6Ly8vLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL190ZXh0LXRydW5jYXRlLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL2hlbHBlcnMvX3ZyLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fdXRpbGl0aWVzLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL3V0aWxpdGllcy9fYXBpLnNjc3MiLCJ3ZWJwYWNrOi8vLy4vcmVzb3VyY2VzL3Nhc3MvX2Nvb2tpZXMuc2NzcyJdLCJzb3VyY2VzQ29udGVudCI6WyJAY2hhcmV0IFwiVVRGLThcIjtcblxuLy8gRm9udHNcbkBpbXBvcnQgdXJsKCdodHRwczovL2ZvbnRzLmdvb2dsZWFwaXMuY29tL2Nzcz9mYW1pbHk9TnVuaXRvJyk7XG5cbi8vIFZhcmlhYmxlc1xuQGltcG9ydCAndmFyaWFibGVzJztcbkBpbXBvcnQgJ21lbnUuY29tcGxldGUnO1xuQGltcG9ydCAnZm9vdGVyJztcbi8vQGltcG9ydCBcInByb2R1Y3QtbW92aWxcIjtcbi8vIEJvb3RzdHJhcFxuQGltcG9ydCAnfmJvb3RzdHJhcC9zY3NzL2Jvb3RzdHJhcCc7XG5cblxuQGZvbnQtZmFjZSB7XG4gICAgZm9udC1mYW1pbHk6IFwiSGVsdmV0aWNhIE5ldWUgUmVndWxhclwiO1xuICAgIHNyYzogdXJsKFwiL2ZvbnRzL0hlbHZldGljYS1uZXVlL0hlbHZldGljYU5ldWUtTFRTLVJlZ3VsYXIudHRmXCIpIGZvcm1hdChcIlRydWVUeXBlXCIpO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBkZXNjZW50LW92ZXJyaWRlOiAwJTtcbiAgICBhc2NlbnQtb3ZlcnJpZGU6IDcwJTtcbn1cblxuQGZvbnQtZmFjZSB7XG4gICAgZm9udC1mYW1pbHk6IFwiSGVsdmV0aWNhIE5ldWUgUmVndWxhclwiO1xuICAgIHNyYzogdXJsKFwiL2ZvbnRzL0hlbHZldGljYS1uZXVlL0hlbHZldGljYU5ldWUtTFRTLUJvbGQudHRmXCIpIGZvcm1hdChcIlRydWVUeXBlXCIpO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBmb250LXdlaWdodDogYm9sZGVyO1xuICAgIGRlc2NlbnQtb3ZlcnJpZGU6IDAlO1xuICAgIGFzY2VudC1vdmVycmlkZTogNzAlO1xufVxuXG5AZm9udC1mYWNlIHtcbiAgICBmb250LWZhbWlseTogXCJIZWx2ZXRpY2EgTmV1ZSBNZWRpdW1cIjtcbiAgICBzcmM6IHVybChcIi9mb250cy9IZWx2ZXRpY2EtbmV1ZS9IZWx2ZXRpY2FOZXVlLUxUUy1NZWRpdW0udHRmXCIpIGZvcm1hdChcIlRydWVUeXBlXCIpO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBkZXNjZW50LW92ZXJyaWRlOiAwJTtcbiAgICBhc2NlbnQtb3ZlcnJpZGU6IDcwJTtcbn1cblxuQGZvbnQtZmFjZSB7XG4gICAgZm9udC1mYW1pbHk6IFwiSGVsdmV0aWNhIE5ldWUgTWVkaXVtIDJcIjtcbiAgICBzcmM6IHVybChcIi9mb250cy9IZWx2ZXRpY2EtbmV1ZS9IZWx2ZXRpY2FOZXVlTFRTdGRNZF8xLnR0ZlwiKSBmb3JtYXQoXCJUcnVlVHlwZVwiKTsgXG4gICAgLy8gc3JjOiB1cmwoXCIvZm9udHMvSGVsdmV0aWNhLW5ldWUvSGVsdmV0aWNhTmV1ZS1MVFMtTWVkaXVtLTIudHRmXCIpIGZvcm1hdChcIlRydWVUeXBlXCIpOyAgICBcbiAgICBmb250LXN0eWxlOiBtZWRpdW07XG4gICAgZGVzY2VudC1vdmVycmlkZTogMCU7XG4gICAgYXNjZW50LW92ZXJyaWRlOiA3MCU7XG59XG5cbkBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiBcIkhlbHZldGljYSBOZXVlIEJvbGRcIjtcbiAgICBzcmM6IHVybChcIi9mb250cy9IZWx2ZXRpY2EtbmV1ZS9IZWx2ZXRpY2FOZXVlLUxUUy1Cb2xkLnR0ZlwiKSBmb3JtYXQoXCJUcnVlVHlwZVwiKTtcbiAgICBmb250LXN0eWxlOiBib2xkO1xuICAgIGRlc2NlbnQtb3ZlcnJpZGU6IDAlO1xuICAgIGFzY2VudC1vdmVycmlkZTogNzAlO1xufVxuXG5AZm9udC1mYWNlIHtcbiAgICBmb250LWZhbWlseTogXCJTdGVuRm9udFwiO1xuICAgIHNyYzogdXJsKFwiL2ZvbnRzL3N0ZW5mb250L1JvYm90b01lZGl1bS1SZWd1bGFyLm90ZlwiKSBmb3JtYXQoXCJvcGVudHlwZVwiKTtcbiAgICBsZXR0ZXItc3BhY2luZzogLTAuMmNoO1xufVxuXG4uZm9udC1sb2dvLXN0ZW4ge1xuICAgIGZvbnQtZmFtaWx5OiBcIlN0ZW5Gb250XCIgIWltcG9ydGFudDtcbn1cblxuLy9Sb2JvdG86XG4ucm9ib3RvLWxpZ2h0IHtcbiAgZm9udC1mYW1pbHk6IFwiUm9ib3RvXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cblxuLnJvYm90by1yZWd1bGFyIHtcbiAgZm9udC1mYW1pbHk6IFwiUm9ib3RvXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cblxuLnJvYm90by1tZWRpdW0ge1xuICBmb250LWZhbWlseTogXCJSb2JvdG9cIiwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuXG5cbi8qISBub3JtYWxpemUuY3NzIHY4LjAuMSB8IE1JVCBMaWNlbnNlIHwgZ2l0aHViLmNvbS9uZWNvbGFzL25vcm1hbGl6ZS5jc3MgKi9cbi8qIERvY3VtZW50XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBsaW5lIGhlaWdodCBpbiBhbGwgYnJvd3NlcnMuXG4gKiAyLiBQcmV2ZW50IGFkanVzdG1lbnRzIG9mIGZvbnQgc2l6ZSBhZnRlciBvcmllbnRhdGlvbiBjaGFuZ2VzIGluIGlPUy5cbiAqL1xuaHRtbCB7XG4gICAgZm9udC1zaXplOiAkdGV4dF9mb250X3NpemVfeHM7XG4gICAgbGluZS1oZWlnaHQ6IDEuMTU7XG4gICAgLyogMSAqL1xuICAgIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTtcbiAgICAvKiAyICovXG59XG5cbi8qIFNlY3Rpb25zXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cbmJvZHkge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNGRkYgIWltcG9ydGFudDtcbiAgICBjb2xvcjogIzMxMzEzMSAhaW1wb3J0YW50O1xuICAgIC8vIGZvbnQtZmFtaWx5OiBcIkhlbHZldGljYSBOZXVlIFJlZ3VsYXJcIiwgQXJpYWwsIEhlbHZldGljYSAhaW1wb3J0YW50O1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udF9mYW1pbHlfbWFpbjtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgbWFyZ2luOiAwO1xuICAgIG1pbi1oZWlnaHQ6IDEwMHZoO1xuICAgIG1pbi13aWR0aDogMTAwJTtcbiAgICBvdmVyZmxvdy14OiBoaWRkZW47XG4gICAgcGFkZGluZzogMDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMHB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogMTAwJTtcbn1cblxuYm9keS5tb2RhbC1vcGVuIHtcbiAgICAtLW5hdi1kZXNrdG9wLXotaW5kZXg6IDE7XG59XG5cbi5ob21lLW1haW4tbGlua3Mge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZ2FwOiAzNnB4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICBhIHtcbiAgICAgICAgZm9udC1mYW1pbHk6ICdITi01NS1Sb21hbicsICRmb250X2ZhbWlseV9tYWluO1xuICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgIGNvbG9yOiAjMjIyO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgdHJhbnNpdGlvbjogY29sb3IgLjI1cyBlYXNlO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgY29sb3I6ICNlMzA2MTM7XG4gICAgICAgIH1cblxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIGJvdHRvbTogLTZweDtcbiAgICAgICAgICAgIHdpZHRoOiAwO1xuICAgICAgICAgICAgaGVpZ2h0OiAycHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZTMwNjEzO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogd2lkdGggLjI1cyBlYXNlO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpob3Zlcjo6YWZ0ZXIge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8qKlxuICogUmVuZGVyIHRoZSBgbWFpbmAgZWxlbWVudCBjb25zaXN0ZW50bHkgaW4gSUUuXG4gKi9cbm1haW4ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIGZvbnQgc2l6ZSBhbmQgbWFyZ2luIG9uIGBoMWAgZWxlbWVudHMgd2l0aGluIGBzZWN0aW9uYCBhbmRcbiAqIGBhcnRpY2xlYCBjb250ZXh0cyBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBTYWZhcmkuXG4gKi9cbi8vIGgxIHtcbi8vICAgICBmb250LXNpemU6IDJlbTtcbi8vICAgICBtYXJnaW46IDAuNjdlbSAwO1xuLy8gfVxuXG4vKiBHcm91cGluZyBjb250ZW50XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBGaXJlZm94LlxuICogMi4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZSBhbmQgSUUuXG4gKi9cbmhyIHtcbiAgICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgICAvKiAxICovXG4gICAgaGVpZ2h0OiAwO1xuICAgIC8qIDEgKi9cbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICAvKiAyICovXG4gICAgLy8gbWFyZ2luOiAwO1xuICAgIC8vIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgaW5oZXJpdGFuY2UgYW5kIHNjYWxpbmcgb2YgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbiAqL1xucHJlIHtcbiAgICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7XG4gICAgLyogMSAqL1xuICAgIGZvbnQtc2l6ZTogMWVtO1xuICAgIC8qIDIgKi9cbn1cblxuLyogVGV4dC1sZXZlbCBzZW1hbnRpY3NcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIFJlbW92ZSB0aGUgZ3JheSBiYWNrZ3JvdW5kIG9uIGFjdGl2ZSBsaW5rcyBpbiBJRSAxMC5cbiAqL1xuYSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgZm9udC1zaXplOiAkdGV4dF9mb250X3NpemVfeHM7XG59XG5cbi8qKlxuICogMS4gUmVtb3ZlIHRoZSBib3R0b20gYm9yZGVyIGluIENocm9tZSA1Ny1cbiAqIDIuIEFkZCB0aGUgY29ycmVjdCB0ZXh0IGRlY29yYXRpb24gaW4gQ2hyb21lLCBFZGdlLCBJRSwgT3BlcmEsIGFuZCBTYWZhcmkuXG4gKi9cbmFiYnJbdGl0bGVdIHtcbiAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgIC8qIDEgKi9cbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAvKiAyICovXG4gICAgLXdlYmtpdC10ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSBkb3R0ZWQ7XG4gICAgLyogMiAqL1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBmb250IHdlaWdodCBpbiBDaHJvbWUsIEVkZ2UsIGFuZCBTYWZhcmkuXG4gKi9cbmIsXG5zdHJvbmcge1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkZXI7XG4gICAgZm9udC1mYW1pbHk6ICRmb250X2ZhbWlseV9tYWluO1xufVxuXG5wLCBsaSB7XG4gICAgZm9udC1zaXplOiAkdGV4dF9mb250X3NpemVfbGc7XG4gICAgbGluZS1oZWlnaHQ6IDEuM3JlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG5wIGEge1xuICAgIGZvbnQtc2l6ZTogJHRleHRfZm9udF9zaXplX2xnO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjNyZW07XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgaW5oZXJpdGFuY2UgYW5kIHNjYWxpbmcgb2YgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAqIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cbiAqL1xuY29kZSxcbmtiZCxcbnNhbXAge1xuICAgIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTtcbiAgICAvKiAxICovXG4gICAgZm9udC1zaXplOiAxZW07XG4gICAgLyogMiAqL1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5zbWFsbCB7XG4gICAgZm9udC1zaXplOiA4MCU7XG59XG5cbi8qKlxuICogUHJldmVudCBgc3ViYCBhbmQgYHN1cGAgZWxlbWVudHMgZnJvbSBhZmZlY3RpbmcgdGhlIGxpbmUgaGVpZ2h0IGluXG4gKiBhbGwgYnJvd3NlcnMuXG4gKi9cbnN1YixcbnN1cCB7XG4gICAgbGluZS1oZWlnaHQ6IDA7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuc3ViIHtcbiAgICBib3R0b206IC0wLjI1ZW07XG59XG5cbnN1cCB7XG4gICAgdG9wOiAtMC41ZW07XG59XG5cbi5zYW1lLWhlaWdodCB7XG4gICAgZmxleDogMTtcbn1cblxuaDMge1xuICAgIHN1YixcbiAgICBzdXAge1xuICAgICAgICBmb250LXNpemU6IDAuNWVtIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICBzdXAge1xuICAgICAgICB0b3A6IC0wLjc1ZW0haW1wb3J0YW50O1xuICAgIH1cbn1cblxuLyogRW1iZWRkZWQgY29udGVudFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qKlxuICogUmVtb3ZlIHRoZSBib3JkZXIgb24gaW1hZ2VzIGluc2lkZSBsaW5rcyBpbiBJRSAxMC5cbiAqL1xuaW1nIHtcbiAgICBib3JkZXItc3R5bGU6IG5vbmU7XG59XG5cbi8qIEZvcm1zXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyoqXG4gKiAxLiBDaGFuZ2UgdGhlIGZvbnQgc3R5bGVzIGluIGFsbCBicm93c2Vycy5cbiAqIDIuIFJlbW92ZSB0aGUgbWFyZ2luIGluIEZpcmVmb3ggYW5kIFNhZmFyaS5cbiAqL1xuYnV0dG9uLFxuaW5wdXQsXG5vcHRncm91cCxcbnNlbGVjdCxcbnRleHRhcmVhIHtcbiAgICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgICAvKiAxICovXG4gICAgZm9udC1zaXplOiAxMDAlO1xuICAgIC8qIDEgKi9cbiAgICBsaW5lLWhlaWdodDogMS4xNTtcbiAgICAvKiAxICovXG4gICAgbWFyZ2luOiAwO1xuICAgIC8qIDIgKi9cbn1cblxuLyoqXG4gKiBTaG93IHRoZSBvdmVyZmxvdyBpbiBJRS5cbiAqIDEuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UuXG4gKi9cbmJ1dHRvbixcbmlucHV0IHtcbiAgICAvKiAxICovXG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG59XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBFZGdlLCBGaXJlZm94LCBhbmQgSUUuXG4gKiAxLiBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEZpcmVmb3guXG4gKi9cbmJ1dHRvbixcbnNlbGVjdCB7XG4gICAgLyogMSAqL1xuICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xufVxuXG5zZWxlY3QuZm9ybS1jb250cm9sIHtcbiAgICBjb2xvcjogIzc3NztcbiAgICBmb250LXNpemU6IDAuODMzM3JlbSAhaW1wb3J0YW50O1xufVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4gKi9cbmJ1dHRvbixcblt0eXBlPWJ1dHRvbl0sXG5bdHlwZT1yZXNldF0sXG5bdHlwZT1zdWJtaXRdIHtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjtcbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGlubmVyIGJvcmRlciBhbmQgcGFkZGluZyBpbiBGaXJlZm94LlxuICovXG5idXR0b246Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1idXR0b25dOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9cmVzZXRdOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9c3VibWl0XTo6LW1vei1mb2N1cy1pbm5lciB7XG4gICAgYm9yZGVyLXN0eWxlOiBub25lO1xuICAgIHBhZGRpbmc6IDA7XG59XG5cbi8qKlxuICogUmVzdG9yZSB0aGUgZm9jdXMgc3R5bGVzIHVuc2V0IGJ5IHRoZSBwcmV2aW91cyBydWxlLlxuICovXG5idXR0b246LW1vei1mb2N1c3JpbmcsXG5bdHlwZT1idXR0b25dOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9cmVzZXRdOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9c3VibWl0XTotbW96LWZvY3VzcmluZyB7XG4gICAgb3V0bGluZTogMXB4IGRvdHRlZCBCdXR0b25UZXh0O1xufVxuXG4vKipcbiAqIENvcnJlY3QgdGhlIHBhZGRpbmcgaW4gRmlyZWZveC5cbiAqL1xuZmllbGRzZXQge1xuICAgIHBhZGRpbmc6IDAuMzVlbSAwLjc1ZW0gMC42MjVlbTtcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSB0ZXh0IHdyYXBwaW5nIGluIEVkZ2UgYW5kIElFLlxuICogMi4gQ29ycmVjdCB0aGUgY29sb3IgaW5oZXJpdGFuY2UgZnJvbSBgZmllbGRzZXRgIGVsZW1lbnRzIGluIElFLlxuICogMy4gUmVtb3ZlIHRoZSBwYWRkaW5nIHNvIGRldmVsb3BlcnMgYXJlIG5vdCBjYXVnaHQgb3V0IHdoZW4gdGhleSB6ZXJvIG91dFxuICogICAgYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cbmxlZ2VuZCB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAvKiAxICovXG4gICAgY29sb3I6IGluaGVyaXQ7XG4gICAgLyogMiAqL1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIC8qIDEgKi9cbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgLyogMSAqL1xuICAgIHBhZGRpbmc6IDA7XG4gICAgLyogMyAqL1xuICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gICAgLyogMSAqL1xufVxuXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCB2ZXJ0aWNhbCBhbGlnbm1lbnQgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgT3BlcmEuXG4gKi9cbnByb2dyZXNzIHtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbi8qKlxuICogUmVtb3ZlIHRoZSBkZWZhdWx0IHZlcnRpY2FsIHNjcm9sbGJhciBpbiBJRSAxMCsuXG4gKi9cbnRleHRhcmVhIHtcbiAgICBvdmVyZmxvdzogYXV0bztcbn1cblxuLyoqXG4gKiAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBJRSAxMC5cbiAqIDIuIFJlbW92ZSB0aGUgcGFkZGluZyBpbiBJRSAxMC5cbiAqL1xuW3R5cGU9Y2hlY2tib3hdLFxuW3R5cGU9cmFkaW9dIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIC8qIDEgKi9cbiAgICBwYWRkaW5nOiAwO1xuICAgIC8qIDIgKi9cbn1cblxuLyoqXG4gKiBDb3JyZWN0IHRoZSBjdXJzb3Igc3R5bGUgb2YgaW5jcmVtZW50IGFuZCBkZWNyZW1lbnQgYnV0dG9ucyBpbiBDaHJvbWUuXG4gKi9cblt0eXBlPW51bWJlcl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG5bdHlwZT1udW1iZXJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgICBoZWlnaHQ6IGF1dG87XG59XG5cbi8qKlxuICogMS4gQ29ycmVjdCB0aGUgb2RkIGFwcGVhcmFuY2UgaW4gQ2hyb21lIGFuZCBTYWZhcmkuXG4gKiAyLiBDb3JyZWN0IHRoZSBvdXRsaW5lIHN0eWxlIGluIFNhZmFyaS5cbiAqL1xuW3R5cGU9c2VhcmNoXSB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7XG4gICAgLyogMSAqL1xuICAgIG91dGxpbmUtb2Zmc2V0OiAtMnB4O1xuICAgIC8qIDIgKi9cbn1cblxuLyoqXG4gKiBSZW1vdmUgdGhlIGlubmVyIHBhZGRpbmcgaW4gQ2hyb21lIGFuZCBTYWZhcmkgb24gbWFjT1MuXG4gKi9cblt0eXBlPXNlYXJjaF06Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24ge1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuLyoqXG4gKiAxLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuICogMi4gQ2hhbmdlIGZvbnQgcHJvcGVydGllcyB0byBgaW5oZXJpdGAgaW4gU2FmYXJpLlxuICovXG46Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uIHtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjtcbiAgICAvKiAxICovXG4gICAgZm9udDogaW5oZXJpdDtcbiAgICAvKiAyICovXG59XG5cbi8qIEludGVyYWN0aXZlXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLypcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIEVkZ2UsIElFIDEwKywgYW5kIEZpcmVmb3guXG4gKi9cbmRldGFpbHMge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5zdW1tYXJ5IHtcbiAgICBkaXNwbGF5OiBsaXN0LWl0ZW07XG59XG5cbi8qIE1pc2NcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKipcbiAqIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDEwKy5cbiAqL1xudGVtcGxhdGUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qKlxuICogQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgMTAuXG4gKi9cbltoaWRkZW5dIHtcbiAgICBkaXNwbGF5OiBub25lO1xufVxuXG5odG1sIHtcbiAgICBzY3JvbGwtYmVoYXZpb3I6IHNtb290aDtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG4qLFxuKjpiZWZvcmUsXG4qOmFmdGVyIHtcbiAgICBib3gtc2l6aW5nOiBpbmhlcml0O1xufVxuXG5tYWluIHtcbiAgICBtaW4taGVpZ2h0OiA4MHZoO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuZm9vdGVyIHtcbiAgICBtaW4taGVpZ2h0OiAxMHZoO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgIGEge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgfVxufVxuLmZ3LW1lZGl1bSB7XG4gICAgZm9udC1mYW1pbHk6ICRmb250X2ZhbWlseV9tYWluO1xufVxuXG4vKiBkaXYge1xuICAgIG91dGxpbmU6IHNvbGlkIDFweCBncmF5O1xufSAqL1xuXG5cblxuLmZvb3RlciB7XG4gICAgLy8gbWFyZ2luLXRvcDogNTBweDtcbiAgICAvLyBwYWRkaW5nOiAyMHB4O1xuXG4gICAgLmxpbmUtZ3JheSB7XG4gICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZTFlMWUxO1xuICAgICAgICAvLyB3aWR0aDogOTUlO1xuICAgIH1cblxuICAgIC5mb3JtLWNvbnRyb2wge1xuICAgICAgICBib3JkZXItbGVmdDogbm9uZTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgICAgYm9yZGVyLXJpZ2h0OiBub25lO1xuICAgICAgICBib3JkZXItdG9wOiBub25lO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAuZm9ybS1jb250cm9sOmZvY3VzIHtcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZSFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgaW5wdXQuZm9ybS1jb250cm9sIHtcbiAgICAgICAgLy8gbGluZS1oZWlnaHQ6IDIuNXJlbSAhaW1wb3J0YW50O1xuICAgICAgICBjb2xvcjogIzYwNjA2MDtcbiAgICAgICAgZm9udC1zaXplOiAuNjI1cmVtICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgcCxcbiAgICBhLFxuICAgIHVsLFxuICAgIGxhYmVsLFxuICAgIGlucHV0LFxuICAgIGxpIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMXJlbSAhaW1wb3J0YW50O1xuICAgICAgICBjb2xvcjogIzYwNjA2MDtcbiAgICAgICAgZm9udC1zaXplOiAuNjI1cmVtICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgYTpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAjNjA2MDYwO1xuICAgIH1cblxuICAgIGgzIHtcbiAgICAgICAgY29sb3I6ICM2MDYwNjA7XG4gICAgICAgIGZvbnQtc2l6ZTogLjdyZW07XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udF9mYW1pbHlfbWFpbjtcbiAgICAgICAgZm9udC13ZWlnaHQ6ICRoM19mb250X3dlaWdodDtcbiAgICB9XG5cbiAgICB1bCB7XG4gICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMHB4O1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgIC8vIG1hcmdpbjogMDtcbiAgICAgICAgLy8gcGFkZGluZy10b3A6IDEwcHg7XG5cbiAgICB9XG5cbiAgICBidXR0b24ge1xuICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgIGZvbnQtc2l6ZTogMC41cmVtICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuc2VuZCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMC42NXJlbSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIGlucHV0IHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjJyZW07XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDAuMnJlbTtcbiAgICB9XG5cbiAgICAuaWNvbnMtZm9vdGVyIHtcbiAgICAgICAgLy8gcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAvLyBib3R0b206IDVweDtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcblxuICAgICAgICBhIHtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5pY29uLWZvb3RlciB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDAuOXJlbTtcbiAgICAgICAgICAgIG1hcmdpbjogMHJlbSAwLjJyZW07XG4gICAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2U7XG4gICAgICAgICAgICAtbW96LXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2U7XG4gICAgICAgICAgICAtby10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlO1xuICAgICAgICAgICAgLW1zLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2U7XG5cbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4yKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5pbnN0YWdyYW0ge1xuICAgICAgICAgICAgaGVpZ2h0OiAwLjdyZW07XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDFyZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBsaW5lLWdyYXkge1xuICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgI2VmZWZlZjtcbiAgICB9XG5cbiAgICAuY29weXJpZ2h0IHtcblxuICAgICAgICBwLFxuICAgICAgICB1bCxcbiAgICAgICAgbGksXG4gICAgICAgIGEge1xuICAgICAgICAgICAgY29sb3I6ICM2MDYwNjA7XG4gICAgICAgICAgICBmb250LXNpemU6IDAuNTRyZW0gIWltcG9ydGFudDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAwLjhyZW0gIWltcG9ydGFudDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICAgICAgLy8gbWFyZ2luOiAwcHggNXB4O1xuICAgICAgICB9XG5cbiAgICAgICAgdWwsXG4gICAgICAgIGxpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgfVxuXG4gICAgICAgIC5iLWxpbmUge1xuICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjNjA2MDYwO1xuICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIzYwNjA2MDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLmZvb3RlciAubGluZS1ncmF5IHtcbiAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNlMWUxZTE7XG4gICAgfVxufVxuXG5cbi8qXG4uY29udGFpbmVyLCAuY29udGFpbmVyLWZsdWlkLCAuY29udGFpbmVyLXh4bCwgLmNvbnRhaW5lci14bCwgLmNvbnRhaW5lci1sZywgLmNvbnRhaW5lci1tZCwgLmNvbnRhaW5lci1zbSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgLy8gcGFkZGluZy1yaWdodDogdmFyKC0tYnMtZ3V0dGVyLXgsIDIuNzVyZW0pO1xuICAgIC8vIHBhZGRpbmctbGVmdDogdmFyKC0tYnMtZ3V0dGVyLXgsIDIuNzVyZW0pO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbn1cblxuLmNvbC1tZC0zIHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB3aWR0aDogMjUlO1xuICAgIHBhZGRpbmc6IDBweCA4NXB4O1xuICB9ICovXG5cbi8vIEJvdG9uIGVudmlhciBmb290ZXIgLyBwcm95ZWN0b3NcblxuLmJ0bi1zZWNvbmRhcnk6ZGlzYWJsZWQsXG4uYnRuLXNlY29uZGFyeS5kaXNhYmxlZCB7XG4gICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICBmb250LXdlaWdodDogNXB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM1ZTVlNWY7XG4gICAgd2lkdGg6IDEwMCU7XG59XG5cbmZvcm06bm90KC53by1jbGFzcykgbGFiZWwsXG5mb3JtOm5vdCgud28tY2xhc3MpIGlucHV0LFxuZm9ybTpub3QoLndvLWNsYXNzKSB0ZXh0YXJlYSB7XG4gICAgZm9udC1zaXplOiAwLjgzMzNyZW0gIWltcG9ydGFudDtcbiAgICBhIHtcbiAgICAgICAgZm9udC1zaXplOiAwLjgzMzNyZW07XG4gICAgfVxufVxuXG5mb3JtOm5vdCgud28tY2xhc3MpIC5mb3JtLWNvbnRyb2wge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xufVxuXG5mb3JtOm5vdCgud28tY2xhc3MpIGlucHV0OjotbW96LXBsYWNlaG9sZGVyIHtcbiAgICBsaW5lLWhlaWdodDogMnJlbTtcbiAgICBwYWRkaW5nLWJvdHRvbTogNHB4O1xuICAgIHBhZGRpbmctdG9wOiA0cHg7XG59XG5cbmZvcm06bm90KC53by1jbGFzcykgaW5wdXQ6OnBsYWNlaG9sZGVyIHtcbiAgICBsaW5lLWhlaWdodDogMnJlbTtcbiAgICBwYWRkaW5nLWJvdHRvbTogNHB4O1xuICAgIHBhZGRpbmctdG9wOiA0cHg7XG59XG5cbi5idG4ge1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGUgIWltcG9ydGFudDtcbn1cblxuLmNvbnRhaW5lciB7XG4gICAgbWF4LXdpZHRoOiAxNDAwcHggIWltcG9ydGFudDtcbn1cblxuLnJlZC1jb2xvciB7XG4gICAgY29sb3I6ICRzdGVuLXJlZDtcbn1cblxuYS5yZWQtY29sb3I6aG92ZXIge1xuICAgIGNvbG9yOiAkc3Rlbi1yZWQ7XG4gICAgb3BhY2l0eTogMC42O1xufVxuXG4uZ3JheS1jb2xvciB7XG4gICAgY29sb3I6ICM2MDYwNjA7XG59XG5cbi5ncmF5LWNvbG9yOmhvdmVyIHtcbiAgICBjb2xvcjogIzYwNjA2MDtcbn1cblxuLmdyZWVuLWNvbG9yIHtcbiAgICBjb2xvcjogIzQ0OTkyNTtcbn1cblxuLmdyZWVuLWNvbG9yOmhvdmVyIHtcbiAgICBjb2xvcjogIzQ0OTkyNTtcbn1cblxuLnNwYW4tcmVkLWNvbG9yIHtcbiAgICBzcGFue1xuICAgICAgICBjb2xvcjogJHN0ZW4tcmVkO1xuICAgIH1cbn1cblxuLmJvcmRlci1ub25lIHtcbiAgICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLmJyLTE1IHtcbiAgICBib3JkZXItcmFkaXVzOiAxcmVtO1xufVxuXG4uaC1ncmF5OmhvdmVyIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgY29sb3I6ICM3MDcwNzA7XG59XG5cbi5idG4tcmVkLWJyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc3Rlbi1yZWQgIWltcG9ydGFudDtcbiAgICBib3JkZXItcmFkaXVzOiAzMHB4ICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6IHdoaXRlICFpbXBvcnRhbnQ7XG4gICAgLy8gZm9udC1zaXplOiAkdGV4dF9mb250X3NpemVfbGcgIWltcG9ydGFudDtcbiAgICBmb250LXNpemU6IDAuOHJlbSAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IDAuNzVyZW0gMnJlbTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlICFpbXBvcnRhbnQ7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHN0ZW4tcmVkLWhvdmVyICFpbXBvcnRhbnQ7XG4gICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICB9XG5cbiAgICBpbWcge1xuICAgICAgICBtYXJnaW4tbGVmdDogMC4zcmVtO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwLjIycmVtO1xuICAgICAgICBtYXgtaGVpZ2h0OiAxcmVtO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIH1cbn1cblxuLmJvcmRlci1ibGFjayB7XG4gICAgYm9yZGVyLXJhZGl1czogMnJlbTtcbiAgICBib3JkZXI6ICMyMzFGMjAgc29saWQgMXB4O1xufVxuXG4vLyAjc2VuZFJlcXVlc3Qge1xuLy8gICAgIHBhZGRpbmc6IDEwcHggMDtcbi8vIH1cblxuLmJ0bi1yZWQtc2xpZGUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRzdGVuLXJlZDtcbiAgICBib3JkZXItcmFkaXVzOiAzMHB4ICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6IHdoaXRlO1xuICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAvLyBmb250LXdlaWdodDogODAwO1xuICAgIC8qIHBhZGRpbmc6IDAuMnJlbSAwLjc1cmVtO1xuICAgIG1hcmdpbi10b3A6IDFyZW07ICovXG59XG5cbi5idG4tcmVkLXNsaWRlOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc3Rlbi1yZWQtaG92ZXIgIWltcG9ydGFudDtcbiAgICBjb2xvcjogd2hpdGU7XG59XG5cbi5idG4td2hpdGUge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6ICMzOTM5MzkgIWltcG9ydGFudDtcbiAgICBib3JkZXItcmFkaXVzOiAxMHJlbSAhaW1wb3J0YW50O1xufVxuXG4uYnRuLW91dGxpbmUtYmxhY2sge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyOiAxcHggc29saWQgYmxhY2sgIWltcG9ydGFudDtcbiAgICBjb2xvcjogYmxhY2sgIWltcG9ydGFudDtcbiAgICBib3JkZXItcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG59XG5cbi5idG4tb3V0bGluZS13aGl0ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCB3aGl0ZSAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiB3aGl0ZSAhaW1wb3J0YW50O1xufVxuXG4uYnRuLXJlZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHN0ZW4tcmVkICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6IHdoaXRlICFpbXBvcnRhbnQ7XG59XG5cbi5idG4tYnIge1xuICAgIGJvcmRlci1yYWRpdXM6IDUwcHggIWltcG9ydGFudDtcbn1cblxuLmJ0bi1ici1mb250IHtcbiAgICBmb250LXNpemU6IDE1cHg7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBsaW5lLWhlaWdodDogMTA1JTtcbn1cblxuLmJnLWdyYXkge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNGN0Y3Rjc7XG59XG5cbi5iZy13aGl0ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG59XG5cbi5maWx0ZXIge1xuICAgIGZpbHRlcjogYnJpZ2h0bmVzcygwLjcpO1xufVxuXG4ucmVzcG9uc2l2ZSB7XG4gICAgbWFyZ2luOiBhdXRvO1xuICAgIHdpZHRoOiAxMDAlO1xufVxuXG4ucmVzcG9uc2l2ZS1pbWcyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDU1JTtcbiAgICB0b3A6IDEwJTtcbiAgICBsZWZ0OiAzMCU7XG59XG5cbi5yZXNwb25zaXZlLWltZzItbW92aWwge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB6LWluZGV4OiAxO1xuICAgIHdpZHRoOiA5MCU7XG4gICAgXG59XG5cbi5wLW9mZiB7XG4gICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xufVxuXG4uYXJyb3ctd2hpdGUge1xuICAgIGJvcmRlcjogc29saWQgd2hpdGU7XG4gICAgYm9yZGVyLXdpZHRoOiAwIDEuNXB4IDEuNXB4IDA7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBhZGRpbmc6IDNweDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG4uYXJyb3ctcmVkIHtcbiAgICBib3JkZXI6IHNvbGlkICRzdGVuLXJlZDtcbiAgICBib3JkZXItd2lkdGg6IDAgMS41cHggMS41cHggMDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcGFkZGluZzogM3B4O1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbi5yaWdodCB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG59XG5cbi5sZWZ0IHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxMzVkZWcpO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMTM1ZGVnKTtcbn1cblxuLnVwIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtMTM1ZGVnKTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKC0xMzVkZWcpO1xufVxuXG4uZG93biB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xufVxuXG4uYW5pbWF0ZSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC41cztcbn1cblxuLnNob3dab29tIHtcbiAgICAtd2Via2l0LWFuaW1hdGlvbjogc2hvd1pvb20gMnM7XG4gICAgYW5pbWF0aW9uOiBzaG93Wm9vbSAycztcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIHNob3dab29tIHtcbiAgICAwJSB7XG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS40KTtcbiAgICB9XG5cbiAgICAxMDAlIHtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICB9XG59XG5cbkBrZXlmcmFtZXMgc2hvd1pvb20ge1xuICAgIDAlIHtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjQpO1xuICAgIH1cblxuICAgIDEwMCUge1xuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgIH1cbn1cblxuLnpvb20ge1xuICAgIC13ZWJraXQtYW5pbWF0aW9uOiB6b29tIDAuNXMgYWx0ZXJuYXRlIGluZmluaXRlIGVhc2UtaW47XG4gICAgYW5pbWF0aW9uOiB6b29tIDAuNXMgYWx0ZXJuYXRlIGluZmluaXRlIGVhc2UtaW47XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyB6b29tIHtcbiAgICAwJSB7XG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMC44KTtcbiAgICB9XG5cbiAgICAxMDAlIHtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICB9XG59XG5cbkBrZXlmcmFtZXMgem9vbSB7XG4gICAgMCUge1xuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDAuOCk7XG4gICAgfVxuXG4gICAgMTAwJSB7XG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgfVxufVxuXG4uc2hvd09wYWNpdHkge1xuICAgIC13ZWJraXQtYW5pbWF0aW9uOiBzaG93T3BhY2l0eSA0LjVzO1xuICAgIGFuaW1hdGlvbjogc2hvd09wYWNpdHkgNC41cztcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIHNob3dPcGFjaXR5IHtcbiAgICAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg3cmVtKTtcbiAgICB9XG5cbiAgICAxMDAlIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIH1cbn1cblxuQGtleWZyYW1lcyBzaG93T3BhY2l0eSB7XG4gICAgMCUge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoN3JlbSk7XG4gICAgfVxuXG4gICAgMTAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICB9XG59XG5cbi5zaG93VXAge1xuICAgIC13ZWJraXQtYW5pbWF0aW9uOiBzaG93VXAgMXM7XG4gICAgYW5pbWF0aW9uOiBzaG93VXAgMXM7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBzaG93VXAge1xuICAgIDAlIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDMuNXJlbSk7XG4gICAgfVxuXG4gICAgMTAwJSB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICB9XG59XG5cbkBrZXlmcmFtZXMgc2hvd1VwIHtcbiAgICAwJSB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgzLjVyZW0pO1xuICAgIH1cblxuICAgIDEwMCUge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgfVxufVxuXG4uc2hvd1VwMiB7XG4gICAgLXdlYmtpdC1hbmltYXRpb246IHNob3dVcDIgNC41cztcbiAgICBhbmltYXRpb246IHNob3dVcDIgNC41cztcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIHNob3dVcDIge1xuICAgIDAlIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDYuNXJlbSk7XG4gICAgfVxuXG4gICAgMTAwJSB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICB9XG59XG5cbkBrZXlmcmFtZXMgc2hvd1VwMiB7XG4gICAgMCUge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNi41cmVtKTtcbiAgICB9XG5cbiAgICAxMDAlIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIH1cbn1cblxuLnNob3dPcGFjaXR5MiB7XG4gICAgLXdlYmtpdC1hbmltYXRpb246IHNob3dPcGFjaXR5MiA0LjVzO1xuICAgIGFuaW1hdGlvbjogc2hvd09wYWNpdHkyIDQuNXM7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBzaG93T3BhY2l0eTIge1xuICAgIDAlIHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICB9XG5cbiAgICAxMDAlIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICB9XG59XG5cbkBrZXlmcmFtZXMgc2hvd09wYWNpdHkyIHtcbiAgICAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgfVxuXG4gICAgMTAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxufVxuXG4uc2hvd1pvb20yIHtcbiAgICAtd2Via2l0LWFuaW1hdGlvbjogc2hvd1pvb20yIDJzO1xuICAgIGFuaW1hdGlvbjogc2hvd1pvb20yIDJzO1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgc2hvd1pvb20yIHtcbiAgICAwJSB7XG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4yKTtcbiAgICB9XG5cbiAgICAxMDAlIHtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICB9XG59XG5cbkBrZXlmcmFtZXMgc2hvd1pvb20yIHtcbiAgICAwJSB7XG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4yKTtcbiAgICB9XG5cbiAgICAxMDAlIHtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICB9XG59XG5cbi5saW5lLWdyYXktc2VwIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjdmN2Y3O1xuICAgIGhlaWdodDogMC42MjVyZW07XG4gICAgd2lkdGg6IDEwMCU7XG59XG5cbi5saW5lLXdoaXRlLXNlcCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgaGVpZ2h0OiAwLjYyNXJlbTtcbiAgICB3aWR0aDogMTAwJTtcbn1cblxuLmJ0bi1jc2wtcmVkLXRyYW5zIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgIGJvcmRlci1jb2xvcjogJHN0ZW4tcmVkICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLXJhZGl1czogMzBweCAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiAkc3Rlbi1yZWQgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLWxlZnQ6IDMwcHggIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAzMHB4ICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZy10b3A6IDExcHggIWltcG9ydGFudDtcbn1cblxuLmJ0bi1jc2wtcmVkLXRyYW5zOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc3Rlbi1yZWQgIWltcG9ydGFudDtcbiAgICBib3JkZXItY29sb3I6ICRzdGVuLXJlZCAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiB3aGl0ZSAhaW1wb3J0YW50O1xuICAgIHRyYW5zaXRpb246IDAuM3M7XG59XG5cbi5idG4tcmVkLXNvbGlkIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc3Rlbi1yZWQgIWltcG9ydGFudDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAkc3Rlbi1yZWQgIWltcG9ydGFudDtcbiAgICBib3JkZXItcmFkaXVzOiAzMHB4ICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6IHdoaXRlICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICBwYWRkaW5nOiA0cHggMzBweCAhaW1wb3J0YW50O1xufVxuXG4uYnRuLXJlZC1zb2xpZDpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHN0ZW4tcmVkICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLWNvbG9yOiAkc3Rlbi1yZWQgIWltcG9ydGFudDtcbiAgICBjb2xvcjogd2hpdGUgIWltcG9ydGFudDtcbiAgICB0cmFuc2l0aW9uOiAwLjNzO1xufVxuXG4uc2lucGFkZGluZ1tjbGFzcyo9XCJjb2wtXCJdIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbn1cblxuLnNpbnBhZGRpbmctcGFpcltjbGFzcyo9XCJjb2wtXCJdOm50aC1jaGlsZChvZGQpIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgcGFkZGluZy1yaWdodDogOHB4O1xufVxuXG4uc2lucGFkZGluZy1wYWlyW2NsYXNzKj1cImNvbC1cIl06bnRoLWNoaWxkKGV2ZW4pIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDhweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xufVxuXG4uc2lucGFkZGluZy1sZWZ0W2NsYXNzKj1cImNvbC1cIl0ge1xuICAgIHBhZGRpbmctbGVmdDogMDtcbn1cblxuLnNpbnBhZGRpbmctcmlnaHRbY2xhc3MqPVwiY29sLVwiXSB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbn1cblxuaDEge1xuICAgIGZvbnQtc2l6ZTogJGgxX2ZvbnRfc2l6ZTtcbiAgICBmb250LXdlaWdodDogJGgxX2ZvbnRfd2VpZ2h0O1xuICAgIGxpbmUtaGVpZ2h0OiAkbGhfaDI7XG4gICAgZm9udC1mYW1pbHk6ICRmb250X2ZhbWlseV9oMTtcblxuICAgICYuaDEteHMge1xuICAgICAgICBmb250LXNpemU6ICRoMl9mb250X3NpemU7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAkaDJfZm9udF93ZWlnaHQ7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAkbGhfaDI7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udF9mYW1pbHlfaDEgIWltcG9ydGFudDtcbiAgICB9XG59XG5cbmgyIHtcbiAgICAud2l0aF9pbWdfd2l0aF9wYWRkaW5nIHtcbiAgICAgICAgLy8gaGVpZ2h0OiAkaDJfZm9udF9zaXplIC0gNXB4O1xuICAgICAgICAvLyBtYXJnaW4tYm90dG9tOiAxMHB4O1xuXG4gICAgICAgIGhlaWdodDogNDBweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICB9XG5cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICAgLndpdGhfaW1nX3dpdGhfcGFkZGluZyB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNTY4cHgpIHtcbiAgICAgICAgLndpdGhfaW1nX3dpdGhfcGFkZGluZyB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAud2l0aF9pbWcge1xuICAgICAgICBoZWlnaHQ6ICRoMl9mb250X3NpemU7XG4gICAgfVxuXG4gICAgLndpdGhfbG9nbyB7XG4gICAgICAgIC8vYm90dG9tOiAycHg7XG4gICAgICAgIC8vIGZvbnQtc2l6ZTogNTlweCAhaW1wb3J0YW50O1xuICAgICAgICBmb250LXNpemU6ICRoMl9mb250X3NpemU7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgbGluZS1oZWlnaHQ6IDQycHg7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgIC8vcG9zaXRpb246IGFic29sdXRlO1xuXG4gICAgICAgICYud2l0aF9wYWRkaW5nIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmRyb3Bkb3duLW1lbnUge1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC45KTtcbiAgICBjb2xvcjogd2hpdGU7XG5cbiAgICBsaT5hOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgICAgICAgY29sb3I6ICMwMDBmZmY7XG4gICAgfVxufVxuXG4uaW1nLWFic29sdXRlIHtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICBtYXJnaW46IGF1dG87XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAwO1xuICAgIHRvcDogMDtcbiAgICB6LWluZGV4OiAxMDtcbn1cblxuLy8gYm90w7NuIGRlIGVkaXRhciBcbi5jb250ZW50LWVkaXR7XG4gICAgb3BhY2l0eTogMC4xO1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC41cyBsaW5lYXI7XG4gICAgei1pbmRleDogOTk5O1xuICAgIGxpbmUtaGVpZ2h0OiAxZW07XG5cbiAgICAmLmNvbnRlbnQtZWRpdC1jZW50ZXJ7XG4gICAgICAgIHRvcDogNTAlO1xuICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgIH1cbiAgICAmOmhvdmVyIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICB9XG59XG5cbi5lZGl0b3Ige1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLnJpZ2h0LTAge1xuICAgIHJpZ2h0OiAwcmVtO1xufVxuLnJpZ2h0LTEge1xuICAgIHJpZ2h0OiAxcmVtO1xufVxuLmgtMSB7XG4gICAgaGVpZ2h0OiAxcmVtO1xufVxuLm1pbi1oLTF7XG4gICAgbWluLWhlaWdodDogMXJlbTtcbn1cbi5taW4taC0ye1xuICAgIG1pbi1oZWlnaHQ6IDJyZW07XG59XG4ubWluLWgtMTBwe1xuICAgIG1pbi1oZWlnaHQ6IDEwJTtcbn1cbi5vYmplY3QtZml0LWNvdmVyIHtcbiAgICBvYmplY3QtZml0OiBjb3Zlcjtcbn1cbi5vYmplY3QtZml0LWNvbnRhaW4ge1xuICAgIG9iamVjdC1maXQ6IGNvbnRhaW47XG59XG4udy1maXQtY29udGVudCB7XG4gICAgd2lkdGg6IGZpdC1jb250ZW50O1xufVxuXG4uZWRpdG9yLW9wZW4gLmNvbnRlbnQtZWRpdCB7XG4gICAgb3BhY2l0eTogMDtcbiAgICBkaXNwbGF5OiBub25lO1xufVxuXG4uZWRpdG9yLW9wZW4gLnRydW1ib3d5Zy1lZGl0b3IsIC50cnVtYm93eWctdGV4dGFyZWEge1xuICAgIHBhZGRpbmc6IDMycHggMHB4IWltcG9ydGFudDtcbn1cblxuLnN0cmlwZXMtcmVkIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoNDVkZWcsICNmZmVkZDkgMjUlLCAjZmZmZmZmIDI1JSwgI2ZmZmZmZiA1MCUsICNmZmVkZDkgNTAlLCAjZmZlZGQ5IDc1JSwgI2ZmZmZmZiA3NSUsICNmZmZmZmYgMTAwJSk7XG4gICAgYmFja2dyb3VuZC1zaXplOiA1Ni41N3B4IDU2LjU3cHg7XG59XG5cbi50ZXh0LW5vd3JhcHtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG4vL1NMSURFUlM6XG4uc2xpZGVyLXByb2R1Y3RzLFxuLnNsaWRlci1zZXJ2aWNlcyB7XG4gICAgLnByb2R1Y3QtaW1nIHtcbiAgICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgICBtYXgtd2lkdGg6IDIxNXB4O1xuICAgICAgICAvLyBwYWRkaW5nLXRvcDogMnJlbTtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICBtYXgtaGVpZ2h0OiAxNS4yOHJlbTtcbiAgICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5jb250cm9scyB7XG4gICAgICAgIGxpIHtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgaGVpZ2h0OiA2MHB4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDYwcHg7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAtMzBweDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMTVweDtcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQgMC4zcztcbiAgICAgICAgfVxuXG4gICAgICAgIC5wcmV2IHtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIH1cblxuICAgICAgICAubmV4dCB7XG4gICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIENhcmQgZGUgZW5jb2ZyYWRvc1xuICAgIC5jYXJkLXNpemUge1xuICAgICAgICBwYWRkaW5nOiAyZW0gMWVtIDBlbSAxZW07XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIH1cblxuICAgICY6bm90KC5mdWxsLXctY2FyZCkge1xuXG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA0MDBweCkge1xuICAgICAgICAgICAgLmNhcmQtc2l6ZSB7XG4gICAgICAgICAgICAgICAgbWF4LWhlaWdodDogY2FsYyg2OTlweCAqIDAuODUpO1xuICAgICAgICAgICAgICAgIG1heC13aWR0aDogY2FsYyg1OTdweCAqIDAuNzUpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgXG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0MDBweCkge1xuICAgICAgICAgICAgLmNhcmQtc2l6ZSB7XG4gICAgICAgICAgICAgICAgbWF4LWhlaWdodDogY2FsYyg2OTlweCAqIDAuNzUpO1xuICAgICAgICAgICAgICAgIG1heC13aWR0aDogY2FsYyg1OTdweCAqIDAuNjUpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi5mdWxsLXctY2FyZCB7XG4gICAgICAgIGNvbHVtbi1nYXA6IDEuNXJlbTtcbiAgICB9XG5cbiAgICAmLmZ1bGwtdy1jYXJkLmltZy1jb250YWlue1xuICAgICAgICAuaW1nLWN1c3RvbSB7XG4gICAgICAgICAgICBvYmplY3QtZml0OiBjb250YWluIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5sb2dvLXctcGFkZGluZyxcbiAgICAubG9nby13by1wYWRkaW5nIHtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgIC5sb2dvIHtcbiAgICAgICAgd2lkdGg6IDc1JTtcbiAgICAgICAgaGVpZ2h0OiA0NXB4O1xuICAgIH1cblxuICAgIC5maWVsZC0xIHtcbiAgICAgICAgZmxleC1iYXNpczogNjBweDtcbiAgICB9XG5cbiAgICBAbWVkaWEobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgICAuZmllbGQtMiB7XG4gICAgICAgICAgICBmbGV4LWJhc2lzOiAzMDBweDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggMCAwIDA7XG4gICAgICAgICAgICBtaW4taGVpZ2h0OiAzNzVweDtcbiAgICAgICAgICAgIG1heC1oZWlnaHQ6IDM3NXB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQG1lZGlhKG1heC13aWR0aDogNzY3LjVweCkge1xuICAgICAgICAuZmllbGQtMiB7XG4gICAgICAgICAgICBmbGV4LWJhc2lzOiAyMDBweDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDQwcHggMCAwIDA7XG4gICAgICAgICAgICBtaW4taGVpZ2h0OiAyNTBweDtcbiAgICAgICAgICAgIG1heC1oZWlnaHQ6IDI1MHB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmJ0bi1jdXN0b20tcmVkIHtcbiAgICAgICAgd2lkdGg6IDIwMHB4O1xuICAgICAgICBoZWlnaHQ6IDM4cHg7XG4gICAgICAgIGJhY2tncm91bmQ6ICNENjA4MTIgMCUgMCUgbm8tcmVwZWF0IHBhZGRpbmctYm94O1xuICAgICAgICBib3JkZXItcmFkaXVzOiAyMXB4O1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMjJweDtcbiAgICAgICAgdHJhbnNpdGlvbjogMjUwbXM7XG4gICAgfVxuXG4gICAgLmJ0bi1jdXN0b20tcmVkOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2Y0MGQxOCAhaW1wb3J0YW50O1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICB9XG5cbiAgICBAbWVkaWEgKG1pbi13aWR0aDo3NjhweCkge1xuICAgICAgICAuaW1nLWN1c3RvbSB7XG4gICAgICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBtZWRpYSAobWF4LXdpZHRoOjc2Ny41cHgpIHtcbiAgICAgICAgLmltZy1jdXN0b20ge1xuICAgICAgICAgICAgb2JqZWN0LWZpdDogY29udGFpbjtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC50cmFuc2xhdGUteS0zIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDFlbSk7XG4gICAgfVxufVxuXG4uc2xpZGVyLXByb2R1Y3RzIC50bnMtb3V0ZXIgW2RhdGEtYWN0aW9uPXN0b3BdLFxuLnNsaWRlci1wcm9kdWN0cyAudG5zLW91dGVyIFtkYXRhLWFjdGlvbj1wbGF5XSxcbi5zbGlkZXItcHJvZHVjdHMgLnRucy1vdXRlciBbZGF0YS1hY3Rpb249c3RhcnRdLFxuLnNsaWRlci1zZXJ2aWNlcyAudG5zLW91dGVyIFtkYXRhLWFjdGlvbj1zdG9wXSxcbi5zbGlkZXItc2VydmljZXMgLnRucy1vdXRlciBbZGF0YS1hY3Rpb249cGxheV0sXG4uc2xpZGVyLXNlcnZpY2VzIC50bnMtb3V0ZXIgW2RhdGEtYWN0aW9uPXN0YXJ0XSB7XG4gICAgZGlzcGxheTogbm9uZTtcbn1cblxuLyogLnNsaWRlci1wcm9kdWN0cyAuZGVzY3JpcHRpb24ge1xuICAgIC13ZWJraXQtbGluZS1jbGFtcDogMjsgLyogbnVtYmVyIG9mIGxpbmVzIHRvIHNob3cgL1xufSAqL1xuLnNsaWRlci1zZXJ2aWNlcyAudGl0bGUsXG4uc2xpZGVyLXZlbnRhamFzIC50aXRsZSB7XG4gICAgZm9udC1zaXplOiAxLjVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuN3JlbTtcbiAgICBmb250LXdlaWdodDogJGZ3X21lZDtcbiAgICBtYXJnaW4tdG9wOiAycmVtO1xufVxuXG4uc2xpZGVyLXNlcnZpY2VzIC5kZXNjcmlwdGlvbixcbi5zbGlkZXItdmVudGFqYXMgLmRlc2NyaXB0aW9uIHtcbiAgICAtd2Via2l0LWxpbmUtY2xhbXA6IDY7XG4gICAgLyogbnVtYmVyIG9mIGxpbmVzIHRvIHNob3cgKi9cbn1cblxuLnNsaWRlci1zZXJ2aWNlcyAuaWNvbixcbi5zbGlkZXItdmVudGFqYXMgLmljb24ge1xuICAgIGhlaWdodDogOXJlbTtcbiAgICB3aWR0aDogOXJlbTtcbn1cblxuLnNsaWRlLXRpdGxlIHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGNvbG9yOiB3aGl0ZTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGhlaWdodDogMTAwdmg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIC8vb3BhY2l0eTogMDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgLXdlYmtpdC1ib3gtcGFjazogY2VudGVyO1xuICAgIC1tcy1mbGV4LXBhY2s6IGNlbnRlcjtcbiAgICAtd2Via2l0LWp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIC13ZWJraXQtYm94LWFsaWduOiBjZW50ZXI7XG4gICAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjtcbiAgICAtd2Via2l0LWFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgei1pbmRleDogMjtcblxuICAgIC50aXRsZSB7XG4gICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRmb250X2ZhbWlseV9tYWluO1xuICAgICAgICBmb250LXNpemU6ICR0ZXh0X2ZvbnRfc2l6ZV9sZztcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICB9XG5cbiAgICBoMiB7XG4gICAgICAgIGNvbG9yOiAjRkZGO1xuICAgICAgICBmb250LXNpemU6ICRoMl9mb250X3NpemU7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAkaDJfZm9udF93ZWlnaHQ7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAkbGhfaDI7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udF9mYW1pbHlfaDIgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAuc3VidGl0bGUge1xuICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udF9mYW1pbHlfbWFpbjtcbiAgICAgICAgZm9udC1zaXplOiAyLjVyZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyLjVyZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAkZndfbWVkO1xuICAgICAgICBtYXgtd2lkdGg6IDQwcmVtO1xuICAgIH1cblxuICAgIC5sb2dvIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgICAgICAgbWF4LWhlaWdodDogMTAwcHg7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIC8vbWF4LXdpZHRoOiAzNHJlbTtcbiAgICB9XG5cbiAgICAucHJvZHVjdCB7XG4gICAgICAgIG1heC1oZWlnaHQ6IDMwcmVtO1xuICAgICAgICBtYXgtd2lkdGg6IDQ3cmVtO1xuICAgIH1cbn1cblxuXG4jY3VzdG9taXplLXBob3RvcyB7XG4gICAgLnRucy1pdGVtIHtcblxuICAgICAgICAvLyBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAvLyBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAvLyBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgIC8vIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgICAgICBpbWcge1xuICAgICAgICAgICAgbWFyZ2luOiAwIDhweDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgaGVpZ2h0OiA0MDBweDtcbiAgICAgICAgICAgIG1pbi13aWR0aDogNDAwcHg7XG4gICAgICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgIHNjYWxlOiAwLjk1O1xuXG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBzY2FsZTogMTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGltZzpub3QoI3NsaWRlcl9lbmRfaW1hZ2UpIHtcbiAgICAgICAgICAgIG1heC13aWR0aDogNDUwcHg7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBtZWRpYShtYXgtd2lkdGg6IDc2OHB4KSB7XG4gICAgICAgICAgICAjc2xpZGVyX2VuZF9pbWFnZSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuI2N1c3RvbWl6ZS1waG90b3MtaXcsICNjdXN0b21pemUtcGhvdG9zLXYyLWl3IHtcbiAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbn1cblxuLy9HRU5FUkFMIFDDgUdJTkFTOlxuI3Nob3dyb29tLFxuI3NvYnJlLXN0ZW4sXG4jcHJvamVjdHMsXG4jcHJvamVjdCxcbiNlbmNvZnJhZG9zLFxuI3Byb2R1Y3RzLFxuI2NvbnRhY3QsXG4jbm90aWNpYXMsXG4jc2VydmljaW9zIHtcbiAgICAuaGVhZGVyIHtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gQ29udHJvbGVzIGRlbCBzbGlkZXJcbiAgICB1bC5jb250cm9scyB7XG5cbiAgICAgICAgbGkucHJldiB7XG4gICAgICAgICAgICBsZWZ0OiAyNXB4O1xuICAgICAgICAgICAgLy8gYm94LXNoYWRvdzogMXB4IDFweCAxcHggMHB4IHJnYmEoMCwwLDAsMC41KTtcbiAgICAgICAgfVxuXG4gICAgICAgIGxpLm5leHQge1xuICAgICAgICAgICAgcmlnaHQ6IDI1cHg7XG4gICAgICAgICAgICAvLyBib3gtc2hhZG93OiAxcHggMXB4IDFweCAwcHggcmdiYSgwLDAsMCwwLjUpO1xuICAgICAgICB9XG5cbiAgICAgICAgbGkgaW1nIHtcbiAgICAgICAgICAgIGhlaWdodDogNDBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIFxuICAgICAgICBsaVthcmlhLWRpc2FibGVkPXRydWVdIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIH1cbiAgICBcbiAgICAgICAgbGlbYXJpYS1kaXNhYmxlZD1mYWxzZV0ge1xuICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgfVxuXG4gICAgICAgIGxpIHsgXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAjMzMzMzMzYmY7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAbWVkaWEobWF4LXdpZHRoOjc2Ny41cHgpIHtcblxuICAgICAgICAvLyBDb250cm9sZXMgZGVsIHNsaWRlclxuICAgICAgICB1bC5jb250cm9scyBsaS5wcmV2IHtcbiAgICAgICAgICAgIC8vIHRvcDogMTAzJTtcbiAgICAgICAgfVxuXG4gICAgICAgIHVsLmNvbnRyb2xzIGxpLm5leHQge1xuICAgICAgICAgICAgLy8gdG9wOiAxMDMlO1xuICAgICAgICB9XG5cbiAgICAgICAgdWwuY29udHJvbHMge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cblxuXG4gICAgLnJvdW5kZWQtY3VzdG9tIHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMTdweCAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC5jdXN0b20taW1hZ2UsXG4gICAgLmN1c3RvbS1pbWFnZTpiZWZvcmUge1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG5cbiAgICAgICAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgMjAwMHB4IHJnYmEoMCwgMCwgMCwgMC4zKTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgfVxuXG4gICAgLy8gLnZpc2lvbi0zNjAge1xuICAgIC8vICAgICBwYWRkaW5nLXRvcDogNS43NXJlbSFpbXBvcnRhbnQ7XG4gICAgLy8gICAgIHBhZGRpbmctYm90dG9tOiA1Ljc1cmVtIWltcG9ydGFudDtcbiAgICAvLyB9XG4gICAgLmgtY2FyZC1kZWZhdWx0IHtcbiAgICAgICAgaGVpZ2h0OiA1MDBweDtcbiAgICB9XG5cbiAgICAudmgtMzAge1xuICAgICAgICBtaW4taGVpZ2h0OiA1MDBweDtcbiAgICAgICAgaGVpZ2h0OiAzMHZoO1xuICAgIH1cblxuICAgIC5jb2x1bW4tY3VzdG9tIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDFyZW07XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMxRDFEMUI7XG4gICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBib3R0b206IDA7XG5cbiAgICAgICAgLmZ3LW1lZGl1bSB7XG4gICAgICAgICAgICBmb250LWZhbWlseTogJGZvbnRfZmFtaWx5X21haW47XG4gICAgICAgIH1cblxuICAgIH1cblxuICAgIC5idXR0b24tY3VzdG9tIHtcbiAgICAgICAgYmFja2dyb3VuZDogI0Q3MEQxNyAwJSAwJSBuby1yZXBlYXQgcGFkZGluZy1ib3g7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDI0cHg7XG4gICAgICAgIHBhZGRpbmc6IC41cmVtIDFyZW07XG4gICAgICAgIG1hcmdpbjogMXJlbTtcbiAgICAgICAgbWluLXdpZHRoOiA1MCU7XG4gICAgfVxuXG4gICAgLmJ1dHRvbi1jdXN0b20gYSB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAgIH1cblxuXG5cbiAgICAuY2xvc2UtYnRuLWN1c3RvbSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgYm90dG9tOiA0MHB4O1xuICAgICAgICByaWdodDogNDRweDtcbiAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgZm9udC1zaXplOiAxLjVyZW07XG4gICAgICAgIHdpZHRoOiAzcmVtO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIHotaW5kZXg6IDk7XG4gICAgfVxuXG4gICAgQG1lZGlhKG1heC13aWR0aDogNzY3LjVweCkge1xuXG4gICAgICAgIC5jbG9zZS1idG4tY3VzdG9tIHtcbiAgICAgICAgICAgIGJvdHRvbTogMjBweDtcbiAgICAgICAgICAgIHJpZ2h0OiAyMnB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmNsb3NlLWJ0bi1jdXN0b20uYWN0aXZlIHtcbiAgICAgICAgYW5pbWF0aW9uOiByb3RhdGVjbG9zZSAuMnMgZm9yd2FyZHM7XG4gICAgfVxuXG4gICAgLmNsb3NlLWJ0bi1jdXN0b20uaW5hY3RpdmUge1xuICAgICAgICBhbmltYXRpb246IHJvdGF0ZWNsb3NlcmV2ZXJzZSAuMnMgZm9yd2FyZHM7XG4gICAgfVxuXG4gICAgQGtleWZyYW1lcyByb3RhdGVjbG9zZSB7XG4gICAgICAgIGZyb20ge1xuICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgICAgIH1cblxuICAgICAgICB0byB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGtleWZyYW1lcyByb3RhdGVjbG9zZXJldmVyc2Uge1xuICAgICAgICBmcm9tIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG4gICAgICAgIH1cblxuICAgICAgICB0byB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIFtpZF49ZmFjZS1iLV0ge1xuICAgICAgICB6LWluZGV4OiA5O1xuICAgIH1cblxuICAgIFtpZF49ZmFjZS1iLV0uaW5hY3RpdmUge1xuICAgICAgICBhbmltYXRpb246IG9wYWNpdHlzaG93cmV2ZXJzZSAuNXMgZm9yd2FyZHM7XG4gICAgfVxuXG4gICAgW2lkXj1mYWNlLWItXTpub3QoLmluYWN0aXZlKSB7XG4gICAgICAgIGFuaW1hdGlvbjogb3BhY2l0eXNob3cgMXMgZm9yd2FyZHM7XG4gICAgfVxuXG4gICAgW2lkXj1mYWNlLWItXSAudy1tZC01MCB7XG4gICAgICAgIHdpZHRoOiA1MCU7XG4gICAgfVxuXG4gICAgQGtleWZyYW1lcyBvcGFjaXR5c2hvdyB7XG4gICAgICAgIGZyb20ge1xuICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIHRvIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAa2V5ZnJhbWVzIG9wYWNpdHlzaG93cmV2ZXJzZSB7XG4gICAgICAgIGZyb20ge1xuICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRvIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuc2VydmljZS1kZXNjcmlwdGlvbiB7XG4gICAgICAgIGZvbnQtc2l6ZTogLjdyZW0gIWltcG9ydGFudDtcbiAgICAgICAgb3ZlcmZsb3c6IGF1dG87XG4gICAgfVxuXG4gICAgLnNlcnZpY2UtZGVzY3JpcHRpb246Oi13ZWJraXQtc2Nyb2xsYmFyIHtcbiAgICAgICAgd2lkdGg6IDFlbTtcbiAgICB9XG5cbiAgICAvKiBUcmFjayAqL1xuICAgIC5zZXJ2aWNlLWRlc2NyaXB0aW9uOjotd2Via2l0LXNjcm9sbGJhci10cmFjayB7XG4gICAgICAgIGJhY2tncm91bmQ6ICMxZDFkMWI7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IC41ZW07XG4gICAgfVxuXG4gICAgLyogSGFuZGxlICovXG4gICAgLnNlcnZpY2UtZGVzY3JpcHRpb246Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iIHtcbiAgICAgICAgYmFja2dyb3VuZDogIzg4ODg4ODtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogLjVlbTtcbiAgICB9XG5cbiAgICAvKiBIYW5kbGUgb24gaG92ZXIgKi9cbiAgICAuc2VydmljZS1kZXNjcmlwdGlvbjo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWI6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjODg4ODg4O1xuICAgICAgICBvcGFjaXR5OiAuNTtcbiAgICB9XG5cbiAgICAvKiAuc2VydmljZS10aXRsZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogNTBweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDFlbTtcbiAgICAgICAgbWF4LXdpZHRoOiAxMGVtO1xuICAgIH0gKi9cbiAgICAuc2VydmljZS10aXRsZS1zaXplIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMDU7XG4gICAgICAgIG1heC13aWR0aDogMTBlbTtcbiAgICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgQG1lZGlhKG1heC13aWR0aDogNzY3LjVweCkge1xuICAgICAgICAvKiAuc2VydmljZS10aXRsZSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDQ1cHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMWVtO1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAxMGVtO1xuICAgICAgICB9ICovXG5cbiAgICAgICAgW2lkXj1mYWNlLWItXSAudy1tZC01MCB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5zbGlkZS10aXRsZS1idXR0b24tZG93biB7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgYm90dG9tOiA0cmVtO1xuICAgICAgICBhbmltYXRpb246IGJ1dHRvbmRvd24gMnMgYWx0ZXJuYXRlLXJldmVyc2UgaW5maW5pdGU7XG4gICAgfVxuXG4gICAgQGtleWZyYW1lcyBidXR0b25kb3duIHtcbiAgICAgICAgZnJvbSB7XG4gICAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwcHgpO1xuICAgICAgICB9XG5cbiAgICAgICAgdG8ge1xuICAgICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMnJlbSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKiBHcmlkIGRlIGxhIHRhcmpldGEgKi9cbiAgICAuZ3JpZC1jLWNvbnRhaW5lciB7XG4gICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMnJlbSAxZnIgMWZyIDJyZW07XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtcm93czogMnJlbSAxZnIgMWZyIDJyZW07XG4gICAgICAgIGdhcDogMHB4IDBweDtcbiAgICAgICAgZ3JpZC1hdXRvLWZsb3c6IHJvdztcbiAgICB9XG5cbiAgICAuZ3JpZC1jLWNvbnRhaW5lciAuYmFja2dyb3VuZCB7XG4gICAgICAgIHotaW5kZXg6IDA7XG4gICAgICAgIGdyaWQtYXJlYTogMSAvIDEgLyA1IC8gNTtcbiAgICB9XG5cbiAgICAuZ3JpZC1jLWNvbnRhaW5lciAuc2hhZG93IHtcbiAgICAgICAgei1pbmRleDogMDtcbiAgICAgICAgZ3JpZC1hcmVhOiAxIC8gMSAvIDUgLyA1O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMCAwIDAgLyAzMCUpXG4gICAgfVxuXG4gICAgLmdyaWQtYy1jb250YWluZXIgLnRpdGxlIHtcbiAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgZ3JpZC1hcmVhOiAyIC8gMiAvIDMgLyA0O1xuICAgIH1cblxuICAgIC5ncmlkLWMtY29udGFpbmVyIC5vYmplY3QtZml0LWNvdmVyIHtcbiAgICAgICAgLW8tb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuXG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICB9XG5cbiAgICAjY2hhbmdlVGl0bGVDb250YWluZXIge1xuICAgICAgICBhbmltYXRpb246IGZhZGVJbk91dCAxMHMgaW5maW5pdGUgZm9yd2FyZHM7XG4gICAgfVxuXG4gICAgI2NoYW5nZVRleHRDb250YWluZXIge1xuICAgICAgICBhbmltYXRpb246IGZhZGVJbk91dCAxMHMgaW5maW5pdGUgZm9yd2FyZHM7XG4gICAgfVxuXG4gICAgQG1lZGlhKG1heC13aWR0aDogNTYwcHgpIHtcbiAgICAgICAgI2NoYW5nZVRleHRDb250YWluZXIge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxMXZ3O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGtleWZyYW1lcyBmYWRlSW5PdXQge1xuXG4gICAgICAgIDAlLFxuICAgICAgICAxNSUge1xuICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMDBweClcbiAgICAgICAgfVxuXG4gICAgICAgIDMwJSB7XG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDBweCk7XG4gICAgICAgIH1cblxuICAgICAgICA3MCUge1xuICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwcHgpO1xuICAgICAgICB9XG5cbiAgICAgICAgODUlLFxuICAgICAgICAxMDAlIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAwcHgpXG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKiogRXN0aWxvIGRlbCB0aW55IHNsaWRlciAqKi9cbiAgICAudG5zLW5hdj5bYXJpYS1jb250cm9sc10ge1xuICAgICAgICB3aWR0aDogOXB4O1xuICAgICAgICBoZWlnaHQ6IDlweDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgbWFyZ2luOiAwIDVweDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICBiYWNrZ3JvdW5kOiAjZGRkO1xuICAgICAgICBib3JkZXI6IDA7XG4gICAgfVxuXG4gICAgLnRucy1uYXY+LnRucy1uYXYtYWN0aXZlIHtcbiAgICAgICAgYmFja2dyb3VuZDogIzk5OTtcbiAgICB9XG5cbiAgICAudG5zLW5hdiB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgbWFyZ2luOiAyZW0gMCAwLjVlbSAwO1xuICAgIH1cblxuICAgIC8qKiBPY3VsdGEgbGFzIGZsZWNoYXMgZGUgbG9zIHNsaWRlcnMgKiovXG4gICAgLyogQG1lZGlhKG1heC13aWR0aDogNzIwcHgpIHtcbiAgICAgICAgdWwuY29udHJvbHMge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgIH0gKi9cbiAgICAvKiogT2N1bHRhIGxvcyBjaXJjdWxvcyBkZSBsb3Mgc2xpZGVycyAqKi9cbiAgICAvKiBAbWVkaWEobWluLXdpZHRoOiA3MjBweCkge1xuICAgICAgICBkaXYudG5zLW5hdiB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgfSAqL1xuXG4gICAgLy8gUG9uZXIgZmxlY2hhcyBlbiBtZWRpb1xuICAgIC8vIEBtZWRpYShtYXgtd2lkdGg6IDcyMHB4KSB7XG4gICAgLy8gICAgIHVsLmNvbnRyb2xzIGxpLnByZXYge1xuICAgIC8vICAgICAgICAgbWFyZ2luLXRvcDogMjUlO1xuICAgIC8vICAgICB9XG5cbiAgICAvLyAgICAgdWwuY29udHJvbHMgbGkubmV4dCB7XG4gICAgLy8gICAgICAgICBtYXJnaW4tdG9wOiAyNSU7XG4gICAgLy8gICAgIH1cbiAgICAvLyB9XG5cblxuICAgIC50bnMtb3ZoID4gLnRucy1pbm5lcntcbiAgICAgICAgbWFyZ2luOiAwIWltcG9ydGFudDtcbiAgICB9XG59XG5cbiNzaG93cm9vbSxcbiNzb2JyZS1zdGVuLFxuI2VuY29mcmFkb3MsXG4jcHJvZHVjdHMsXG4jcHJvamVjdCxcbiNzZXJ2aWNpb3Mge1xuICAgIC5oZWFkZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICBoZWlnaHQ6IDEwMHZoO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB6LWluZGV4OiAwO1xuICAgICAgICBmaWx0ZXI6IGJyaWdodG5lc3MoMC40NSk7XG5cbiAgICAgICAgJi53aXRoLW91dC1maWx0ZXIge1xuICAgICAgICAgICAgZmlsdGVyOiBicmlnaHRuZXNzKDEpO1xuICAgICAgICB9XG5cbiAgICAgICAgJi53aXRoLW91dC1tZC1maWx0ZXIge1xuICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAgICAgICAgICAgZmlsdGVyOiBicmlnaHRuZXNzKDEpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi53aXRoLW1kLWZpbHRlciB7XG4gICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgICAgICAgICBmaWx0ZXI6IGJyaWdodG5lc3MoMC40NSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5idXR0b24tc3dlZXQtc3RlbiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0QwMDkxQiAhaW1wb3J0YW50O1xuICAgIGJvcmRlci1ib3R0b206IDhweCBzb2xpZCAjRDAwOTFCICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLWxlZnQ6IDE4cHggc29saWQgI0QwMDkxQiAhaW1wb3J0YW50O1xuICAgIGJvcmRlci1yaWdodDogMThweCBzb2xpZCAjRDAwOTFCICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLXRvcDogOHB4IHNvbGlkICNEMDA5MUIgIWltcG9ydGFudDtcbn1cblxuLnRpdGxlLWFkZHJlc3Mge1xuICAgIGZvbnQtc2l6ZTogMzFweCAhaW1wb3J0YW50O1xuICAgIGxpbmUtaGVpZ2h0OiAzMXB4ICFpbXBvcnRhbnQ7XG59XG5cbi5hZGRyZXNzLWNhcmQge1xuICAgIGxpbmUtaGVpZ2h0OiAxcmVtICFpbXBvcnRhbnQ7XG5cbiAgICBhIHtcbiAgICAgICAgY29sb3I6ICMwMDAwMDA7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB9XG59XG5cbi5hY3RpdmVfbGFuZyB7XG4gICAgY29sb3I6ICM3MDcwNzAgIWltcG9ydGFudDtcbiAgICB0ZXh0LWRlY29yYXRpb246IHJldmVydCAhaW1wb3J0YW50O1xufVxuXG4uYnRuLWN1c3RvbS1yZWQge1xuICAgIGJhY2tncm91bmQ6ICRzdGVuLXJlZC1idG4gMCUgMCUgbm8tcmVwZWF0IHBhZGRpbmctYm94O1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBib3JkZXItcmFkaXVzOiAyMXB4O1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBvcGFjaXR5OiAxO1xuICAgIGNvbG9yOiB3aGl0ZTtcbiAgICBmb250LXNpemU6IDE1cHg7XG4gICAgcGFkZGluZzogMCAyMHB4O1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB0cmFuc2l0aW9uOiAyNTBtcztcbiAgICAvLyB3aWR0aDogMjAwcHg7XG4gICAgbWluLXdpZHRoOiAxMDBweDtcblxuICAgICY6bm90KC5idG4tYmlnKTpub3QoLmJ0bi1naWdhbnQpIHtcbiAgICAgICAgaGVpZ2h0OiAzOHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMzZweDtcbiAgICB9XG5cbiAgICAmLmJ0bi1iaWcge1xuICAgICAgICBoZWlnaHQ6IDQ0cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiA0M3B4O1xuICAgIH1cblxuICAgICYuYnRuLWdpZ2FudCB7XG4gICAgICAgIGhlaWdodDogNjBweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDY0cHg7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDQwcHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICB9XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHN0ZW4tcmVkLWhvdmVyICFpbXBvcnRhbnQ7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgfVxufVxuXG4uYnRuLWN1c3RvbS1yZWQtc21hbGwge1xuICAgIGJhY2tncm91bmQ6ICRzdGVuLXJlZC1idG4gMCUgMCUgbm8tcmVwZWF0IHBhZGRpbmctYm94O1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBib3JkZXItcmFkaXVzOiAyMXB4O1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBoZWlnaHQ6IDI2cHg7XG4gICAgb3BhY2l0eTogMTtcbiAgICBjb2xvcjogd2hpdGU7XG4gICAgZm9udC1zaXplOiAxMnB4O1xuICAgIGxpbmUtaGVpZ2h0OiAyNnB4O1xuICAgIHBhZGRpbmc6IDAgMTBweDtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgdHJhbnNpdGlvbjogMjUwbXM7XG4gICAgd2lkdGg6IDIwMHB4O1xuICAgIHRleHQtdHJhbnNmb3JtOiBsb3dlcmNhc2U7XG4gICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRzdGVuLXJlZC1ob3ZlciAhaW1wb3J0YW50O1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIH1cbn1cblxuLmJ0bi1jdXN0b20tcmVkLXNtYWxsLXNhZmFyaS1hbGlnbntcblxuICAgIC0tYnRuLXRyYW5zbGF0ZS14OiAtNTAlO1xuICAgIC0tYnRuLXRyYW5zbGF0ZS15OiBjYWxjKDUwJSArIDFweCk7XG5cbiAgICBiYWNrZ3JvdW5kOiAkc3Rlbi1yZWQtYnRuIDAlIDAlIG5vLXJlcGVhdCBwYWRkaW5nLWJveDtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgYm9yZGVyLXJhZGl1czogMjFweDtcbiAgICBoZWlnaHQ6IDI2cHg7XG4gICAgY29sb3I6IHdoaXRlO1xuICAgIC8vIGZvbnQtc2l6ZTogMTJweDtcbiAgICBsaW5lLWhlaWdodDogMjZweDtcbiAgICBwYWRkaW5nOiAwIDEwcHg7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIHRyYW5zaXRpb246IDI1MG1zO1xuICAgIHdpZHRoOiAxNTBweDtcblxuICAgIHNwYW4ge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGJvdHRvbTogNTAlO1xuICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKHZhcigtLWJ0bi10cmFuc2xhdGUteCksIHZhcigtLWJ0bi10cmFuc2xhdGUteSkpO1xuICAgIH1cblxuICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc3Rlbi1yZWQtaG92ZXIgIWltcG9ydGFudDtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB9XG4gICAgXG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xuICAgICNwcm9qZWN0IHtcbiAgICAgICAgLmJ0bi1jdXN0b20tcmVkIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMTBweDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmRvd25sb2FkIHtcbiAgICBtYXJnaW4tdG9wOiAtMnB4O1xuICAgIHdpZHRoOiAwLjhyZW07XG59XG5cbi5zbGlkZXItcHJvZHVjdHMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG5cbiAgICAuaXRlbSB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDE1cHg7XG4gICAgICAgIHdpZHRoOiAyMC4xcmVtO1xuICAgIH1cblxuICAgIC5zZWN0aW9uIHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMTdweDtcbiAgICAgICAgLy8gZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAvLyBtYXgtaGVpZ2h0OiA3MDBweDtcbiAgICAgICAgbWF4LWhlaWdodDogNTk4cHg7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgcGFkZGluZy10b3A6IDQwcHg7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMzBweDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMzBweDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDBweDtcbiAgICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgICBtaW4td2lkdGg6IDIzMHB4O1xuICAgICAgICByb3ctZ2FwOiAzMXB4O1xuXG4gICAgICAgICYucGItMzAge1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDMwcHg7XG4gICAgICAgIH1cblxuICAgICAgICAuc2VjdGlvbi1sb2dvIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5sb2dvIHtcbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA0M3B4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmRlc2NyaXB0aW9uIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiA1cHg7XG4gICAgICAgIH1cblxuICAgICAgICAucHJvZHVjdC1pbWcge1xuICAgICAgICAgICAgLy8gbWFyZ2luOiAyNXB4IGF1dG8gMCBhdXRvO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgIG1heC13aWR0aDogNDAwcHg7XG5cbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuYnRuLXJlZC1zbGlkZSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgJi5hbGlnbi1ib3R0b20ge1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuZGVzY3JpcHRpb24ge1xuICAgICAgICBmb250LXNpemU6IDE1cHghaW1wb3J0YW50O1xuICAgICAgICBsaW5lLWhlaWdodDogMS41O1xuICAgICAgICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICAgICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gICAgICAgIC13ZWJraXQtbGluZS1jbGFtcDogMjtcbiAgICAgICAgLyogbnVtYmVyIG9mIGxpbmVzIHRvIHNob3cgKi9cbiAgICAgICAgLXdlYmtpdC1ib3gtb3JpZW50OiB2ZXJ0aWNhbDtcbiAgICAgICAgbWF4LXdpZHRoOiAyMHJlbTtcbiAgICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgICBtaW4taGVpZ2h0OiAycmVtO1xuICAgIH1cblxuICAgIC5wcm9kdWN0LWltZyB7XG4gICAgICAgIG1hcmdpbjogYXV0bztcbiAgICAgICAgLy8gcGFkZGluZy10b3A6IDJyZW07XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgICBpbWcge1xuICAgICAgICAgICAgbWF4LWhlaWdodDogMTcuMjhyZW07XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAucHJvZHVjdC1pbWctc3BlY2lhbCB7XG4gICAgICAgIG1hcmdpbjogYXV0bztcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICBtYXgtaGVpZ2h0OiA0MDBweDtcbiAgICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5jb250cm9scyB7XG4gICAgICAgIGxpIHtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICAgIGhlaWdodDogNDBweDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiA0MHB4O1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogLTMwcHg7XG4gICAgICAgICAgICBwYWRkaW5nOiAwIDE1cHg7XG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuM3M7XG5cbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAucHJldiB7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgLm5leHQge1xuICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAudG5zLW91dGVyIFtkYXRhLWFjdGlvbj1zdG9wXSxcbiAgICAudG5zLW91dGVyIFtkYXRhLWFjdGlvbj1wbGF5XSxcbiAgICAudG5zLW91dGVyIFtkYXRhLWFjdGlvbj1zdGFydF0ge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIC5hZGRyZXNzLWNhcmQge1xuICAgICAgICBtaW4td2lkdGg6IDIzMHB4O1xuICAgIH1cbn1cblxuLnByb2R1Y3RzLWdyaWQge1xuICAgIC5wcm9kdWN0IHtcbiAgICAgICAgLmxvZ28tdy1wYWRkaW5nIHtcbiAgICAgICAgICAgIG1heC1oZWlnaHQ6IGNhbGMoKDM2cHgqMTE2LjUpLzEwMCk7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogY2FsYygoMzZweCoyNC41KS8xMDApO1xuICAgICAgICB9XG5cbiAgICAgICAgLmxvZ28td28tcGFkZGluZyB7XG4gICAgICAgICAgICBtYXgtaGVpZ2h0OiBjYWxjKCgzNnB4KjExNi41KS8xMDApO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLml0ZW0ge1xuICAgICAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxNXB4O1xuICAgICAgICB3aWR0aDogMjAuMXJlbTtcbiAgICB9XG5cbiAgICAuc2VjdGlvbiB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDE3cHg7XG4gICAgICAgIC8vIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgLy8gbWF4LWhlaWdodDogNzAwcHg7XG4gICAgICAgIG1heC1oZWlnaHQ6IDU5OHB4O1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIHBhZGRpbmctdG9wOiA0MHB4O1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDMwcHg7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwcHg7XG4gICAgICAgIG1hcmdpbjogYXV0bztcbiAgICAgICAgbWluLXdpZHRoOiAyMzBweDtcbiAgICAgICAgcm93LWdhcDogMzFweDtcblxuICAgICAgICAmLnBiLTMwIHtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAzMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLnNlY3Rpb24tbG9nbyB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gICAgICAgIH1cblxuICAgICAgICAubG9nbyB7XG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgIGhlaWdodDogNDNweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5kZXNjcmlwdGlvbiB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogNXB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLnByb2R1Y3QtaW1nIHtcbiAgICAgICAgICAgIC8vIG1hcmdpbjogMjVweCBhdXRvIDAgYXV0bztcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDQwMHB4O1xuXG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmJ0bi1yZWQtc2xpZGUge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgfVxuXG4gICAgICAgICYuYWxpZ24tYm90dG9tIHtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmRlc2NyaXB0aW9uIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMS41O1xuICAgICAgICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICAgICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gICAgICAgIC13ZWJraXQtbGluZS1jbGFtcDogMjtcbiAgICAgICAgLyogbnVtYmVyIG9mIGxpbmVzIHRvIHNob3cgKi9cbiAgICAgICAgLXdlYmtpdC1ib3gtb3JpZW50OiB2ZXJ0aWNhbDtcbiAgICAgICAgbWF4LXdpZHRoOiAyMHJlbTtcbiAgICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgICBtaW4taGVpZ2h0OiAycmVtO1xuICAgIH1cblxuICAgIC5wcm9kdWN0LWltZyB7XG4gICAgICAgIG1hcmdpbjogYXV0bztcbiAgICAgICAgLy8gcGFkZGluZy10b3A6IDJyZW07XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgICBpbWcge1xuICAgICAgICAgICAgbWF4LWhlaWdodDogMTcuMjhyZW07XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuYnRuLWN1c3RvbS1yZWQge1xuICAgICAgICB3aWR0aDogMjAwcHg7XG4gICAgICAgIGhlaWdodDogMzhweDtcbiAgICAgICAgYmFja2dyb3VuZDogI0Q2MDgxMiAwJSAwJSBuby1yZXBlYXQgcGFkZGluZy1ib3g7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDIxcHg7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyMnB4O1xuICAgICAgICB0cmFuc2l0aW9uOiAyNTBtcztcbiAgICB9XG5cbiAgICAuYnRuLWN1c3RvbS1yZWQ6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjQwZDE4ICFpbXBvcnRhbnQ7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgIH1cblxuICAgIEBtZWRpYShtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAgIC5maWVsZC0yIHtcbiAgICAgICAgICAgIGZsZXgtYmFzaXM6IDMwMHB4O1xuICAgICAgICAgICAgcGFkZGluZzogMTBweCAwIDAgMDtcbiAgICAgICAgICAgIG1heC1oZWlnaHQ6IDM3NXB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQG1lZGlhKG1heC13aWR0aDogNzY3LjVweCkge1xuICAgICAgICAuZmllbGQtMiB7XG4gICAgICAgICAgICBmbGV4LWJhc2lzOiAyMDBweDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggMCAwIDA7XG4gICAgICAgICAgICBtYXgtaGVpZ2h0OiAyNTBweDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy9QUk9EVUNUT1M6XG4jcHJvZHVjdHMge1xuXG4gICAgLy8gZm9ybSAuYnRuLWZvcm0ge1xuICAgIC8vICAgICBwYWRkaW5nOiAwLjJyZW0gNXJlbSAhaW1wb3J0YW50O1xuICAgIC8vIH1cbiAgICBmb3JtIGxhYmVsLFxuICAgIGZvcm0gaW5wdXQsXG4gICAgZm9ybSB0ZXh0YXJlYSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMC44MzMzcmVtICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgZm9ybSAuZm9ybS1jb250cm9sIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgfVxuXG4gICAgLm13LTE4IHtcbiAgICAgICAgbWF4LXdpZHRoOiAxOHJlbTtcbiAgICB9XG5cbiAgICAuaGVhZGVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2Y3ZjdmNztcbiAgICAgICAgaGVpZ2h0OiAxMDB2aDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgLm10LTYge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogNnJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5sb2dvIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gICAgICAgICAgICAvL21heC1oZWlnaHQ6IDQuNHJlbTtcbiAgICAgICAgICAgIC8vbWF4LXdpZHRoOiAzNHJlbTtcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIH1cblxuICAgICAgICAucHJvZHVjdCB7XG4gICAgICAgICAgICBtYXgtaGVpZ2h0OiAyMnJlbTtcbiAgICAgICAgICAgIG1heC13aWR0aDogMzhyZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuaGVhZGVyLWFuZGFtaW9zIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2Y3ZjdmNztcbiAgICAgICAgaGVpZ2h0OiAxMDB2aDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgLm10LTYge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogNnJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5sb2dvIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gICAgICAgICAgICAvL21heC1oZWlnaHQ6IDQuNHJlbTtcbiAgICAgICAgICAgIC8vbWF4LXdpZHRoOiAzNHJlbTtcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIH1cblxuICAgICAgICAucHJvZHVjdCB7XG4gICAgICAgICAgICBtYXgtaGVpZ2h0OiAyMnJlbTtcbiAgICAgICAgICAgIG1heC13aWR0aDogMzhyZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBoMSB7XG4gICAgICAgIGNvbG9yOiAjMzEzMTMxO1xuICAgICAgICBmb250LXNpemU6ICRoMV9mb250X3NpemU7IC8vQ29udmVydCAzLjQzcmVtXG4gICAgICAgIGZvbnQtd2VpZ2h0OiAkaDFfZm9udF93ZWlnaHQ7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAkbGhfaDI7XG4gICAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgICAgICBmb250LWZhbWlseTogJGZvbnRfZmFtaWx5X2gxICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgaDIge1xuICAgICAgICBmb250LXNpemU6ICRoMl9mb250X3NpemU7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAkaDJfZm9udF93ZWlnaHQ7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAkbGhfaDI7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udF9mYW1pbHlfaDIgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICBwIHtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRmb250X2ZhbWlseV9wICFpbXBvcnRhbnQ7XG4gICAgICAgIC8vZm9udC13ZWlnaHQ6ICRmd19tZWQ7XG4gICAgICAgIC8vbWFyZ2luLWJvdHRvbTogMzVweDtcbiAgICAgICAgZm9udC1zaXplOiAkdGV4dF9mb250X3NpemVfbGc7XG5cbiAgICAgICAgc3BhbiwgbGFiZWx7XG4gICAgICAgICAgICBmb250LWZhbWlseTogJGZvbnRfZmFtaWx5X3AgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJHRleHRfZm9udF9zaXplX2xnO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6ICRmd19tZWQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICB1bHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgICAgICBsaXtcbiAgICAgICAgICAgIGNvbG9yOiAkc3Rlbi1yZWQ7XG4gICAgICAgICAgICBmb250LWZhbWlseTogJGZvbnRfZmFtaWx5X3AgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJHRleHRfZm9udF9zaXplX2xnOyBcbiAgICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgICAgICBsaXN0LXN0eWxlLWltYWdlOiB1cmwoJ2RhdGE6aW1hZ2Uvc3ZnK3htbDtjaGFyc2V0PXV0Zi04LCUzQ3N2ZyB4bWxucyUzRCUyMmh0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMjAwMCUyRnN2ZyUyMiB3aWR0aCUzRCUyMjEyJTIyIGhlaWdodCUzRCUyMjEyJTIyIHZpZXdCb3glM0QlMjIwIDAgMTIgMTIlMjIlM0UlM0N0ZXh0IHglM0QlMjIwJTIyIHklM0QlMjIxMCUyMiBmb250LXNpemUlM0QlMjIxMCUyMiBmaWxsJTNEJTIyJTIzRDcwRDE3JTIyJTNFJTI2JTIzeEI3JTNCJTNDJTJGdGV4dCUzRSUzQyUyRnN2ZyUzRScpOyAvKiBVdGlsaXphIHVuIHB1bnRvIG1lZGlvICjCtykgY29tbyBpbWFnZW4gZGVsIGJ1bGxldCAqL1xuICAgICAgICAgICAgZmlsdGVyOiBicmlnaHRuZXNzKDEuNSk7IFxuICAgICAgICAgICAgXG4gICAgICAgICAgICA+IHNwYW57XG4gICAgICAgICAgICAgICAgY29sb3I6ICRzdGVuLWdyYXktbWVkO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogJHRleHRfZm9udF9zaXplX2xnO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnJlc3BvbnNpdmUtOTAwIHtcbiAgICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWF4LWhlaWdodDogOTAwcHg7XG4gICAgICAgIG9iamVjdC1maXQ6IGNvbnRhaW47XG4gICAgfVxuXG4gICAgLnJlc3BvbnNpdmUtNjAwIHtcbiAgICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWF4LWhlaWdodDogNjAwcHg7XG4gICAgICAgIG9iamVjdC1maXQ6IGNvbnRhaW47XG4gICAgfVxuXG4gICAgLmZpcnN0LXNwZWMge1xuICAgICAgICBsaW5lLWhlaWdodDogMS41O1xuXG4gICAgICAgIGgyIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMy40M3JlbTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAzLjQzcmVtO1xuICAgICAgICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgICAgICAgbWF4LXdpZHRoOiA0N3JlbTtcbiAgICAgICAgfVxuXG4gICAgICAgIHAge1xuICAgICAgICAgICAgY29sb3I6ICMyMzFmMjA7XG4gICAgICAgICAgICBmb250LWZhbWlseTogJGZvbnRfZmFtaWx5X3A7XG4gICAgICAgICAgICBmb250LXNpemU6ICR0ZXh0X2ZvbnRfc2l6ZV9sZztcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZndfbWVkO1xuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMDJyZW07XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgICAgICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgICAgICAgbWF4LXdpZHRoOiA5MjBweDtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgICAgICAgd2lkdGg6IDY1JTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5idG4tcmVkLWJyIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDFyZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuZmlyc3Qtc3BlYy0yIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNTtcblxuICAgICAgICBoMSB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDIwZW07XG4gICAgICAgICAgICBtYXJnaW46IGF1dG87XG4gICAgICAgIH1cblxuICAgICAgICBoMiB7XG4gICAgICAgICAgICBmb250LXNpemU6ICRoMl9mb250X3NpemU7XG4gICAgICAgICAgICBtYXJnaW46IGF1dG87XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDY0cmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgcCB7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgICAgICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgICAgICAgLyptYXgtd2lkdGg6IDM2Ljc1cmVtOyovXG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMnJlbTtcbiAgICAgICAgICAgIG1heC13aWR0aDogMzZlbTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5idG4tcmVkLWJyIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDFyZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAudmVudC1iciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNGOEY4Rjk7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDQ3cHg7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBoZWlnaHQ6IDU3NHB4O1xuICAgICAgICBtYXJnaW46IGF1dG87XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgIC52ZW50LWltZyB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAgaGVpZ2h0OiA1MCU7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogNDBweDtcblxuICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiBhdXRvO1xuICAgICAgICAgICAgICAgIG1heC1oZWlnaHQ6IDEwMHB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogMTAwcHg7XG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiA2MCU7XG4gICAgICAgICAgICAgICAgbWluLXdpZHRoOiAxMDBweDtcbiAgICAgICAgICAgICAgICBvYmplY3QtZml0OiBjb250YWluO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnZlbnQtdGl0bGUge1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250X2ZhbWlseV9tYWluO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjVyZW07XG4gICAgICAgICAgICBmb250LXdlaWdodDogJGZ3X21lZDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjdyZW07XG5cbiAgICAgICAgICAgIGgyIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDM1cHggIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogJGZ3X21lZDtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMzVweDtcbiAgICAgICAgICAgICAgICB0ZXh0LXdyYXA6IGJhbGFuY2U7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGgzIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDMwcHggIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogJGZ3X21lZDtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMzBweDtcbiAgICAgICAgICAgICAgICB0ZXh0LXdyYXA6IGJhbGFuY2U7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICAgIC52ZW50LWRlc2Mge1xuICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWwgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMjBweDtcbiAgICAgICAgICAgICAgICB0ZXh0LXdyYXA6IGJhbGFuY2U7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGIge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMWVtO1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjVlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5zbGlkZSB7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjNyZW07XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAgICAgLnNjcm9sbCB7XG4gICAgICAgICAgICBjdXJzb3I6IC13ZWJraXQtZ3JhYjtcbiAgICAgICAgICAgIGN1cnNvcjogZ3JhYjtcbiAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgICAgICBvdmVyZmxvdy14OiBhdXRvO1xuICAgICAgICAgICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICAgICAgICAgICAgLW1zLW92ZXJmbG93LXN0eWxlOiAtbXMtYXV0b2hpZGluZy1zY3JvbGxiYXI7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuXG4gICAgICAgICAgICAuZGVzY3JpcHRpb24ge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMC44MzNyZW07XG4gICAgICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnNlY3Rpb24ge1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDE1cHg7XG4gICAgICAgICAgICAgICAgbWluLXdpZHRoOiAyMC4xcmVtO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAyMC4xcmVtO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuYnRuLXJlZC1zbGlkZSB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHN0ZW4tcmVkO1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDMwcHggIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuXG4gICAgICAgICAgICAgICAgLyogcGFkZGluZzogMC4ycmVtIDAuNzVyZW07ICovXG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRzdGVuLXJlZC1ob3ZlciAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnByb2R1Y3QtaW1nIHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IGF1dG87XG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAyMTVweDtcbiAgICAgICAgICAgICAgICAvLyBwYWRkaW5nLXRvcDogMnJlbTtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICBtYXgtaGVpZ2h0OiAxMi4yOHJlbTtcbiAgICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5zY3JvbGw6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICAubG9nbyB7XG4gICAgICAgICAgICBtYXgtaGVpZ2h0OiAycmVtO1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAxM3JlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5zbGlkZS10aXRsZSB7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgaGVpZ2h0OiAxMDB2aDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgLy9vcGFjaXR5OiAwO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIC13ZWJraXQtYm94LXBhY2s6IGNlbnRlcjtcbiAgICAgICAgLW1zLWZsZXgtcGFjazogY2VudGVyO1xuICAgICAgICAtd2Via2l0LWp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAtd2Via2l0LWJveC1hbGlnbjogY2VudGVyO1xuICAgICAgICAtbXMtZmxleC1hbGlnbjogY2VudGVyO1xuICAgICAgICAtd2Via2l0LWFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB6LWluZGV4OiAyO1xuXG4gICAgICAgIC50aXRsZSB7XG4gICAgICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgICAgICBmb250LWZhbWlseTogJGZvbnRfZmFtaWx5X21haW47XG4gICAgICAgICAgICBmb250LXNpemU6ICR0ZXh0X2ZvbnRfc2l6ZV9sZztcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgICAgIH1cblxuICAgICAgICAuc3VidGl0bGUge1xuICAgICAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250X2ZhbWlseV9tYWluO1xuICAgICAgICAgICAgZm9udC1zaXplOiAyLjVyZW07XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMi41cmVtO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6ICRmd19tZWQ7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDQwcmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgLmxvZ28ge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgICAgICAgICAgIG1heC1oZWlnaHQ6IDEwMHB4O1xuICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgIC8vbWF4LXdpZHRoOiAzNHJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5wcm9kdWN0IHtcbiAgICAgICAgICAgIG1heC1oZWlnaHQ6IDMwcmVtO1xuICAgICAgICAgICAgbWF4LXdpZHRoOiA0N3JlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5zbGlkZS10aXRsZS0yIHtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2Y3ZjdmNztcbiAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBoZWlnaHQ6IDEwMHZoO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIC13ZWJraXQtYm94LXBhY2s6IGNlbnRlcjtcbiAgICAgICAgLW1zLWZsZXgtcGFjazogY2VudGVyO1xuICAgICAgICAtd2Via2l0LWp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAtd2Via2l0LWJveC1hbGlnbjogY2VudGVyO1xuICAgICAgICAtbXMtZmxleC1hbGlnbjogY2VudGVyO1xuICAgICAgICAtd2Via2l0LWFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB6LWluZGV4OiAyO1xuXG4gICAgICAgIC5sb2dvLTIge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgICAgICAgICAgIG1heC1oZWlnaHQ6IDQuNHJlbTtcbiAgICAgICAgICAgIG1heC13aWR0aDogMzRyZW07XG4gICAgICAgIH1cblxuICAgICAgICAucHJvZHVjdC0yIHtcbiAgICAgICAgICAgIG1heC1oZWlnaHQ6IDMwcmVtO1xuICAgICAgICAgICAgbWF4LXdpZHRoOiA0N3JlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICNmb3RvcyB7XG4gICAgICAgIGgyIHtcbiAgICAgICAgICAgIG1hcmdpbjogNDBweCBhdXRvO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmNhYmV6YWwge1xuICAgICAgICBtYXgtd2lkdGg6IDQ4cmVtO1xuICAgICAgICBtYXJnaW46IGF1dG87XG4gICAgICAgIG1hcmdpbi10b3A6IC01cmVtO1xuICAgIH1cblxuICAgIC5jdWFkcmFkbyB7XG4gICAgICAgIG1hcmdpbi10b3A6IC0xcmVtO1xuICAgICAgICBtYXgtd2lkdGg6IDQwMHB4O1xuICAgICAgICB3aWR0aDogOTAlO1xuICAgIH1cblxuICAgIEBtZWRpYSAod2lkdGggPCA3NjBweCkge1xuICAgICAgICAuY3VhZHJhZG8ge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5tdXJvIHtcbiAgICAgICAgd2lkdGg6IDk1JTtcbiAgICAgICAgaGVpZ2h0OiA5NSU7XG4gICAgICAgIG1hcmdpbi10b3A6IDFyZW07XG4gICAgfVxuXG4gICAgLmFuZGFtaW8xIHtcbiAgICAgICAgbWF4LXdpZHRoOiAxNXJlbTtcbiAgICAgICAgbWFyZ2luLXRvcDogLTVyZW07XG4gICAgfVxuXG4gICAgLmFuZGFtaW8yIHtcbiAgICAgICAgbWF4LXdpZHRoOiAxM3JlbTtcbiAgICAgICAgbWFyZ2luLXRvcDogLTNyZW07XG4gICAgfVxuXG4gICAgLm10LW5lZ2F0aXZlLTExIHtcbiAgICAgICAgbWFyZ2luLXRvcDogLTdyZW07XG4gICAgICAgIHotaW5kZXg6IC0xO1xuICAgIH1cblxuICAgIC50cmFiYWpvIGltZyB7XG4gICAgICAgIG1hcmdpbjogYXV0bztcbiAgICAgICAgbWF4LXdpZHRoOiA1MHJlbTtcbiAgICB9XG5cbiAgICAvLyBEZWNrLVg6IERldGFsbGUgY2FiZXphbFxuICAgIC5jb250YWluZXItY2FiZXphbCB7XG5cbiAgICAgICAgLy8gQWx0dXJhIGRlIGxhIGltYWdlblxuICAgICAgICAkY2MtaGVpZ2h0OiA2MDBweDtcbiAgICAgICAgLy8gQW5jaG8gZGUgbGEgaW1hZ2VuXG4gICAgICAgICRjYy13aWR0aDogOTkycHg7XG4gICAgICAgIC8vQW5jaG8gZGVsIGNvbnRlbmVkb3IgaW1hZ2luYXJpbyBkZXJlY2hvXG4gICAgICAgICRjYy1jb250YWluZXJSaWdodDogNTAwcHg7XG5cbiAgICAgICAgaGVpZ2h0OiAkY2MtaGVpZ2h0O1xuICAgICAgICB3aWR0aDogJGNjLXdpZHRoO1xuICAgICAgICBtYXJnaW46IGF1dG87XG5cbiAgICAgICAgLm1haW4tdGl0bGUge1xuICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB3aWR0aDogNDgwcHg7XG5cbiAgICAgICAgfVxuXG4gICAgICAgIC5wYXJ0LWltZyBpbWcge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgb2JqZWN0LWZpdDogY29udGFpbjtcbiAgICAgICAgICAgIGhlaWdodDogJGNjLWhlaWdodDtcbiAgICAgICAgICAgIHdpZHRoOiA2MDBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5saW5lLXBvaW50ZXItcmVkLTEge1xuXG4gICAgICAgICAgICAkbGluZUxlZnRXOiAzNTBweDtcblxuICAgICAgICAgICAgLyogd2lkdGg6IGNhbGMoY29udGFpbmVyV2lkdGggLSAoIGxlZnRQb3NpdGlvbiAtIHJpZ2h0UG9zaXRpb24gKSkgKi9cbiAgICAgICAgICAgIHdpZHRoOiBjYWxjKCRjYy13aWR0aCAtICgkbGluZUxlZnRXICsgJGNjLWNvbnRhaW5lclJpZ2h0KSk7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBsZWZ0OiAkbGluZUxlZnRXO1xuICAgICAgICAgICAgdG9wOiAxNjBweDtcblxuICAgICAgICAgICAgLmxpbmUtcmVkIHtcbiAgICAgICAgICAgICAgICAvKiB3aWR0aDogY2FsYyhjb250YWluZXJXaWR0aCAtICggbGVmdFBvc2l0aW9uIC0gd2lkdGhDb250YWluZXJSaWdodCApKSAqL1xuICAgICAgICAgICAgICAgIHdpZHRoOiBjYWxjKCRjYy13aWR0aCAtICgkbGluZUxlZnRXICsgJGNjLWNvbnRhaW5lclJpZ2h0KSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5wYXJ0LXR4dCB7XG4gICAgICAgICAgICAgICAgLyogd2lkdGg6IGNhbGMoY29udGFpbmVyV2lkdGggLSAoIGxlZnRQb3NpdGlvbiAtIHdpZHRoQ29udGFpbmVyUmlnaHQgKSArIHBhZGRpbmdMZWZ0ICkgKi9cbiAgICAgICAgICAgICAgICBsZWZ0OiBjYWxjKCRjYy13aWR0aCAtICgkbGluZUxlZnRXICsgJGNjLWNvbnRhaW5lclJpZ2h0KSArIDIwcHgpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cblxuICAgICAgICAubGluZS1wb2ludGVyLXJlZC0yIHtcblxuICAgICAgICAgICAgJGxpbmVMZWZ0VzogMzAwcHg7XG5cbiAgICAgICAgICAgIHdpZHRoOiBjYWxjKCRjYy13aWR0aCAtICgkbGluZUxlZnRXICsgJGNjLWNvbnRhaW5lclJpZ2h0KSk7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBsZWZ0OiAkbGluZUxlZnRXO1xuICAgICAgICAgICAgdG9wOiAyMDBweDtcblxuICAgICAgICAgICAgLmxpbmUtcmVkIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogY2FsYygkY2Mtd2lkdGggLSAoJGxpbmVMZWZ0VyArICRjYy1jb250YWluZXJSaWdodCkpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAucGFydC10eHQge1xuICAgICAgICAgICAgICAgIGxlZnQ6IGNhbGMoJGNjLXdpZHRoIC0gKCRsaW5lTGVmdFcgKyAkY2MtY29udGFpbmVyUmlnaHQpICsgMjBweCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuXG4gICAgICAgIC5saW5lLXBvaW50ZXItcmVkLTMge1xuXG4gICAgICAgICAgICAkbGluZUxlZnRXOiAzNTBweDtcblxuICAgICAgICAgICAgd2lkdGg6IGNhbGMoJGNjLXdpZHRoIC0gKCRsaW5lTGVmdFcgKyAkY2MtY29udGFpbmVyUmlnaHQpKTtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGxlZnQ6ICRsaW5lTGVmdFc7XG4gICAgICAgICAgICB0b3A6IDQ1MHB4O1xuXG4gICAgICAgICAgICAubGluZS1yZWQge1xuICAgICAgICAgICAgICAgIHdpZHRoOiBjYWxjKCRjYy13aWR0aCAtICgkbGluZUxlZnRXICsgJGNjLWNvbnRhaW5lclJpZ2h0KSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5wYXJ0LXR4dCB7XG4gICAgICAgICAgICAgICAgbGVmdDogY2FsYygkY2Mtd2lkdGggLSAoJGxpbmVMZWZ0VyArICRjYy1jb250YWluZXJSaWdodCkgKyAyMHB4KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG5cbiAgICAgICAgLmxpbmUtcG9pbnRlci1yZWQtNCB7XG5cbiAgICAgICAgICAgICRsaW5lTGVmdFc6IDM4MHB4O1xuXG4gICAgICAgICAgICB3aWR0aDogY2FsYygkY2Mtd2lkdGggLSAoJGxpbmVMZWZ0VyArICRjYy1jb250YWluZXJSaWdodCkpO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgbGVmdDogJGxpbmVMZWZ0VztcbiAgICAgICAgICAgIHRvcDogNTM1cHg7XG5cbiAgICAgICAgICAgIC5saW5lLXJlZCB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IGNhbGMoJGNjLXdpZHRoIC0gKCRsaW5lTGVmdFcgKyAkY2MtY29udGFpbmVyUmlnaHQpKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnBhcnQtdHh0IHtcbiAgICAgICAgICAgICAgICBsZWZ0OiBjYWxjKCRjYy13aWR0aCAtICgkbGluZUxlZnRXICsgJGNjLWNvbnRhaW5lclJpZ2h0KSArIDIwcHgpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgZGl2W2NsYXNzKj1cImxpbmUtcG9pbnRlci1yZWQtXCJdIHtcblxuICAgICAgICAgICAgLmxpbmUtcmVkIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZWQ7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAycHg7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAucGFydC10eHQge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB0b3A6IC0wLjg1ZW07XG4gICAgICAgICAgICAgICAgd2lkdGg6ICRjYy1jb250YWluZXJSaWdodDtcbiAgICAgICAgICAgIH1cblxuXG4gICAgICAgICAgICAuY2lyY2xlLXBvaW50ZXItcmVkIHtcbiAgICAgICAgICAgICAgICAkZG90X3NpemU6IDEycHg7XG5cbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgbGVmdDogJGRvdF9zaXplICogLTAuNTtcbiAgICAgICAgICAgICAgICB0b3A6ICRkb3Rfc2l6ZSAqIC0wLjU7XG4gICAgICAgICAgICAgICAgY29sb3I6IHJlZDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6ICRkb3Rfc2l6ZTtcbiAgICAgICAgICAgICAgICB3aWR0aDogJGRvdF9zaXplO1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZWQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgIH1cblxuICAgIC5zdGVuLWRlY2steC1pbWcxIHtcblxuICAgICAgICBwaWN0dXJlLFxuICAgICAgICBpbWcge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogLTgwcHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyAudnQtbGluayB7XG4gICAgLy8gICAgIHdpZHRoOiAxMDElO1xuICAgIC8vIH1cblxuICAgIC8vIEBtZWRpYSAod2lkdGggPCA3NjhweCkge1xuICAgIC8vICAgICAudnQtbGluayB7XG4gICAgLy8gICAgICAgICB3aWR0aDogMTQxJSAhaW1wb3J0YW50O1xuICAgIC8vICAgICB9XG4gICAgLy8gfVxuXG59XG5cbiNwcm9kdWN0cyxcbiNhbmRhbWlvcyB7XG4gICAgI2VzcGVjaWZpY2FjaW9uZXMge1xuICAgICAgICBsaW5lLWhlaWdodDogMTtcblxuICAgICAgICAuYnItc3BlYyB7XG4gICAgICAgICAgICBib3JkZXItcmlnaHQ6IDdweCBzb2xpZCB3aGl0ZTtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDdweCBzb2xpZCB3aGl0ZTtcbiAgICAgICAgICAgIGJvcmRlci10b3A6IDdweCBzb2xpZCB3aGl0ZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5ibC1zcGVjIHtcbiAgICAgICAgICAgIGJvcmRlci1sZWZ0OiA3cHggc29saWQgd2hpdGU7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiA3cHggc29saWQgd2hpdGU7XG4gICAgICAgICAgICBib3JkZXItdG9wOiA3cHggc29saWQgd2hpdGU7XG4gICAgICAgIH1cblxuICAgICAgICAuZXNwZWNpZmljYWNpb24tdjIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0Y3RjdGNztcbiAgICAgICAgICAgIG1hcmdpbjogMHB4IDAgOHB4IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiA4MHB4IDA7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJHRleHRfZm9udF9zaXplX21kO1xuXG4gICAgICAgICAgICAmLmZ1bGwtaGVpZ2h0LWF1dG8ge1xuICAgICAgICAgICAgICAgIGhlaWdodDogY2FsYygxMDAlIC0gMTZweCk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8qIERldGFsbGUgdGFyamV0YSAqL1xuICAgICAgICAgICAgLmRmLTEge1xuICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgICAgICAgICAgICAgd2lkdGg6IG1pbig1MDBweCwgODUlKTtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6ICR0ZXh0X2ZvbnRfc2l6ZV94cztcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmRmLTIge1xuICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuZGYtM2Ege1xuICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDcwJTtcbiAgICAgICAgICAgICAgICBhbGlnbi1zZWxmOiBmbGV4LWVuZDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmRmLTNhLWZ1bGwge1xuICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgICAgICAgICAucXQtY3VzdG9tIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250X2ZhbWlseV9tYWluO1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDIuNWVtO1xuXG4gICAgICAgICAgICAgICAgICAgIHNwYW4udHlwZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6ICR0ZXh0X2ZvbnRfc2l6ZV9sZztcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuZGYtM2Ige1xuICAgICAgICAgICAgICAgIGFsaWduLXNlbGY6IGZsZXgtZW5kO1xuICAgICAgICAgICAgICAgIG1heC13aWR0aDogMjAwcHg7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgICAgICB3aWR0aDogNDAlO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxLjdlbTtcblxuICAgICAgICAgICAgICAgIC5wYi1jdXN0b20tMyB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxLjNyZW07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuZGYtM2ItZnVsbHtcbiAgICAgICAgICAgICAgICBhbGlnbi1zZWxmOiBmbGV4LWVuZDtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgICAgICAgICAgJi50ZXh0LWFicyB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTdweDtcbiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIFxuICAgICAgICAgICAgLmRmLTQtY29sIHtcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXG4gICAgICAgICAgICAgICAgLnF0LWN1c3RvbSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDAuMWVtO1xuXG4gICAgICAgICAgICAgICAgICAgIHNwYW4udHlwZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6ICR0ZXh0X2ZvbnRfc2l6ZV9sZztcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmRmLTQtcm93IHtcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG4gICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcblxuICAgICAgICAgICAgICAgIC5zaXplLWN1c3RvbSB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAwLjllbTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC50ZXh0LWFicyB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICM3MDcwNzA7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuZGYtM2IudGV4dC1hYnMge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTdweDtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAudGl0bGUtY3VzdG9tIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuNWVtO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAubGluZS1jdXN0b20ge1xuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjMzEzMTMxO1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMTBweCAwIDE1cHggMDtcbiAgICAgICAgICAgICAgICB3aWR0aDogMjVweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnF0LWN1c3RvbSB7XG4gICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250X2ZhbWlseV9tYWluO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogNWVtO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZndfbWVkO1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG5cbiAgICAgICAgICAgICAgICBzcGFuLnR5cGUge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6ICR0ZXh0X2ZvbnRfc2l6ZV9sZztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5zaXplLWN1c3RvbSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjVlbTtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogJGZ3X21lZDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLyogRmluYWwgLSBEZXRhbGxlIHRhcmpldGEgKi9cbiAgICAgICAgfVxuXG4gICAgICAgIC5lc3BlY2lmaWNhY2lvbiB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjdGN0Y3O1xuICAgICAgICAgICAgbWFyZ2luOiA4cHggMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDgwcHggMDtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSA4cHgpO1xuXG4gICAgICAgICAgICAmLmZ1bGwtaGVpZ2h0LWF1dG8ge1xuICAgICAgICAgICAgICAgIGhlaWdodDogY2FsYygxMDAlIC0gMTZweCk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYuZXNwZWMtaC1maXhlZCB7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAzNDJweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmVzcC1jb250ZW50IHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDUwJTtcblxuICAgICAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMTEwJTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAubGluZSB7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjMzEzMTMxO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDE1cHggMHB4O1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMjVweDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAudGV4dC0xIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAkdGV4dF9mb250X3NpemVfbGc7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLnRleHQtMiB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogNHJlbTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6ICRmd19tZWQ7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLnRleHQtMyB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6ICRmd19tZWQ7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLnRleHQtNCB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjNzA3MDcwO1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC50ZXh0LTUge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDJyZW07XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZndfbWVkO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC50ZXh0LWFicyB7XG4gICAgICAgICAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICM3MDcwNzA7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogNjUlO1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBoMSB7XG4gICAgICAgIGNvbG9yOiAjMzEzMTMxO1xuICAgICAgICBmb250LXNpemU6ICRoMV9mb250X3NpemU7IC8vQ29udmVydCAzLjQzcmVtXG4gICAgICAgIGZvbnQtd2VpZ2h0OiAkaDFfZm9udF93ZWlnaHQgIWltcG9ydGFudDtcbiAgICAgICAgbGluZS1oZWlnaHQ6ICRsaF9oMTtcbiAgICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udF9mYW1pbHlfaDEgIWltcG9ydGFudDtcbiAgICAgICAgdGV4dC13cmFwOiBiYWxhbmNlO1xuICAgIH1cblxuICAgIGgyIHtcbiAgICAgICAgZm9udC1zaXplOiAkaDJfZm9udF9zaXplO1xuICAgICAgICBmb250LXdlaWdodDogJGgyX2ZvbnRfd2VpZ2h0O1xuICAgICAgICBsaW5lLWhlaWdodDogJGxoX2gyO1xuICAgICAgICBmb250LWZhbWlseTogJGZvbnRfZmFtaWx5X2gyICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgI2NhdGFsb2dvIHtcbiAgICAgICAgaDIge1xuICAgICAgICAgICAgdGV4dC13cmFwOiBiYWxhbmNlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgI2FuZGFtaW9zLWRldGFsbGUge1xuICAgICAgICBwIHtcbiAgICAgICAgICAgIEBleHRlbmQgLnB0LTQ7XG4gICAgICAgICAgICBAZXh0ZW5kIC5wdC1tZC0zO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vL0FOREFNSU9TXG4jYW5kYW1pb3Mge1xuICAgIC0taW1nLW1haW4taGVhZGVyOiB1cmwoL2ltZy9hbmRhbWlvcy9hbmRhbWlvLTEtMy5qcGcpO1xuXG4gICAgZm9ybSBsYWJlbCxcbiAgICBmb3JtIGlucHV0LFxuICAgIGZvcm0gdGV4dGFyZWEge1xuICAgICAgICBmb250LXNpemU6IDAuODMzM3JlbSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIGZvcm0gLmZvcm0tY29udHJvbCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIH1cblxuICAgIC5tdy0xOCB7XG4gICAgICAgIG1heC13aWR0aDogMThyZW07XG4gICAgfVxuXG4gICAgLmhlYWRlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmN2Y3Zjc7XG4gICAgICAgIGhlaWdodDogMTAwdmg7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgIC5tdC02IHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDZyZW07XG4gICAgICAgIH1cblxuICAgICAgICAubG9nbyB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICAgICAgICAgICAgLy9tYXgtaGVpZ2h0OiA0LjRyZW07XG4gICAgICAgICAgICAvL21heC13aWR0aDogMzRyZW07XG4gICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgLnByb2R1Y3Qge1xuICAgICAgICAgICAgbWF4LWhlaWdodDogMjJyZW07XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDM4cmVtO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcCB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udF9mYW1pbHlfbWFpbjtcbiAgICB9XG5cbiAgICAucmVzcG9uc2l2ZS05MDAge1xuICAgICAgICBtYXJnaW46IGF1dG87XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtYXgtaGVpZ2h0OiA5MDBweDtcbiAgICAgICAgb2JqZWN0LWZpdDogY29udGFpbjtcbiAgICB9XG5cbiAgICAucmVzcG9uc2l2ZS02MDAge1xuICAgICAgICBtYXJnaW46IGF1dG87XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtYXgtaGVpZ2h0OiA2MDBweDtcbiAgICAgICAgb2JqZWN0LWZpdDogY29udGFpbjtcbiAgICB9XG5cbiAgICAuZmlyc3Qtc3BlYyB7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG5cbiAgICAgICAgaDIge1xuICAgICAgICAgICAgZm9udC1zaXplOiAzLjQzcmVtO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDMuNDNyZW07XG4gICAgICAgICAgICBtYXJnaW46IGF1dG87XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDQ3cmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgcCB7XG4gICAgICAgICAgICBjb2xvcjogIzIzMWYyMDtcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udF9mYW1pbHlfcDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJHRleHRfZm9udF9zaXplX2xnO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6ICRmd19tZWQ7XG4gICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMC4wMnJlbTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgICAgICAgICAvLyBtYXJnaW46IGF1dG87XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDkyMHB4O1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDA7XG5cbiAgICAgICAgfVxuXG4gICAgICAgIC5idG4tcmVkLWJyIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDFyZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuZmlyc3Qtc3BlYy0yIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNTtcblxuICAgICAgICBoMSB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDIwZW07XG4gICAgICAgICAgICBtYXJnaW46IGF1dG87XG4gICAgICAgIH1cblxuICAgICAgICBoMiB7XG4gICAgICAgICAgICBmb250LXNpemU6ICRoMl9mb250X3NpemU7XG4gICAgICAgICAgICBtYXJnaW46IGF1dG87XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDY0cmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgcCB7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgICAgICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgICAgICAgLyptYXgtd2lkdGg6IDM2Ljc1cmVtOyovXG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMnJlbTtcbiAgICAgICAgICAgIG1heC13aWR0aDogMzZlbTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5idG4tcmVkLWJyIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDFyZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAudmVudC1iciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNGOEY4Rjk7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDQ3cHg7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBoZWlnaHQ6IDU3NHB4O1xuICAgICAgICBtYXJnaW46IGF1dG87XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgIC52ZW50LWltZyB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAgaGVpZ2h0OiA1MCU7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogNDBweDtcblxuICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiBhdXRvO1xuICAgICAgICAgICAgICAgIG1heC1oZWlnaHQ6IDEwMHB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogMTAwcHg7XG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiA2MCU7XG4gICAgICAgICAgICAgICAgb2JqZWN0LWZpdDogY29udGFpbjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC52ZW50LXRpdGxlIHtcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udF9mYW1pbHlfbWFpbjtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6ICRmd19tZWQ7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS43cmVtO1xuXG4gICAgICAgICAgICBoMiB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAkaDJfZm9udF9zaXplICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6ICRmd19tZWQ7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6ICRsaF9oMjtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaDMge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMzBweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZndfbWVkO1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAkbGhfaDI7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgICAgIC52ZW50LWRlc2Mge1xuICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWwgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMjBweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgYiB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxZW07XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNWVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnNsaWRlIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuM3JlbTtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICAgICAuc2Nyb2xsIHtcbiAgICAgICAgICAgIGN1cnNvcjogLXdlYmtpdC1ncmFiO1xuICAgICAgICAgICAgY3Vyc29yOiBncmFiO1xuICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgICAgIG92ZXJmbG93LXg6IGF1dG87XG4gICAgICAgICAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gICAgICAgICAgICAtbXMtb3ZlcmZsb3ctc3R5bGU6IC1tcy1hdXRvaGlkaW5nLXNjcm9sbGJhcjtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG5cbiAgICAgICAgICAgIC5kZXNjcmlwdGlvbiB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAwLjgzM3JlbTtcbiAgICAgICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuc2VjdGlvbiB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTVweDtcbiAgICAgICAgICAgICAgICBtaW4td2lkdGg6IDIwLjFyZW07XG4gICAgICAgICAgICAgICAgd2lkdGg6IDIwLjFyZW07XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5idG4tcmVkLXNsaWRlIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc3Rlbi1yZWQ7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMzBweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE1cHg7XG5cbiAgICAgICAgICAgICAgICAvKiBwYWRkaW5nOiAwLjJyZW0gMC43NXJlbTsgKi9cbiAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHN0ZW4tcmVkLWhvdmVyICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAucHJvZHVjdC1pbWcge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogYXV0bztcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDIxNXB4O1xuICAgICAgICAgICAgICAgIC8vIHBhZGRpbmctdG9wOiAycmVtO1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgICAgIG1heC1oZWlnaHQ6IDEyLjI4cmVtO1xuICAgICAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnNjcm9sbDo6LXdlYmtpdC1zY3JvbGxiYXIge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5sb2dvIHtcbiAgICAgICAgICAgIG1heC1oZWlnaHQ6IDJyZW07XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDEzcmVtO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmhlYWRlci1hbmRhbWlvcyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmN2Y3Zjc7XG4gICAgICAgIGhlaWdodDogMTAwdmg7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB2YXIoLS1pbWctbWFpbi1oZWFkZXIpO1xuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiB0b3A7XG4gICAgICAgIG1heC1oZWlnaHQ6IDIwNDhweDtcbiAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIH1cblxuICAgIC5zbGlkZS10aXRsZSB7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgaGVpZ2h0OiAxMDB2aDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgLy9vcGFjaXR5OiAwO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIC13ZWJraXQtYm94LXBhY2s6IGNlbnRlcjtcbiAgICAgICAgLW1zLWZsZXgtcGFjazogY2VudGVyO1xuICAgICAgICAtd2Via2l0LWp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAtd2Via2l0LWJveC1hbGlnbjogY2VudGVyO1xuICAgICAgICAtbXMtZmxleC1hbGlnbjogY2VudGVyO1xuICAgICAgICAtd2Via2l0LWFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB6LWluZGV4OiAyO1xuICAgICAgICBpbnNldDogMDtcblxuICAgICAgICAudGl0bGUge1xuICAgICAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250X2ZhbWlseV9tYWluO1xuICAgICAgICAgICAgZm9udC1zaXplOiAkdGV4dF9mb250X3NpemVfbGc7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgLnN1YnRpdGxlIHtcbiAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udF9mYW1pbHlfbWFpbjtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMi41cmVtO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDIuNXJlbTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZndfbWVkO1xuICAgICAgICAgICAgbWF4LXdpZHRoOiA0MHJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5sb2dvIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gICAgICAgICAgICBtYXgtaGVpZ2h0OiAxMDBweDtcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICAvL21heC13aWR0aDogMzRyZW07XG4gICAgICAgIH1cblxuICAgICAgICAucHJvZHVjdCB7XG4gICAgICAgICAgICBtYXgtaGVpZ2h0OiAzMHJlbTtcbiAgICAgICAgICAgIG1heC13aWR0aDogNDdyZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuc2xpZGUtdGl0bGUtMiB7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmN2Y3Zjc7XG4gICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgaGVpZ2h0OiAxMDB2aDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAtd2Via2l0LWJveC1wYWNrOiBjZW50ZXI7XG4gICAgICAgIC1tcy1mbGV4LXBhY2s6IGNlbnRlcjtcbiAgICAgICAgLXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgLXdlYmtpdC1ib3gtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgLXdlYmtpdC1hbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgei1pbmRleDogMjtcblxuICAgICAgICAubG9nby0yIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gICAgICAgICAgICBtYXgtaGVpZ2h0OiA0LjRyZW07XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDM0cmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgLnByb2R1Y3QtMiB7XG4gICAgICAgICAgICBtYXgtaGVpZ2h0OiAzMHJlbTtcbiAgICAgICAgICAgIG1heC13aWR0aDogNDdyZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuaGVpZ2h0LXRpdGxlLWxvZ28ge1xuICAgICAgICBoZWlnaHQ6IDIwdmg7XG4gICAgICAgIG1hcmdpbi10b3A6IG1heCgxNTBweCwgNTB2aCk7XG4gICAgfVxuXG4gICAgI2ZvdG9zIHtcbiAgICAgICAgaDIge1xuICAgICAgICAgICAgbWFyZ2luOiA0MHB4IGF1dG87XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuY2FiZXphbCB7XG4gICAgICAgIG1heC13aWR0aDogNDhyZW07XG4gICAgICAgIG1hcmdpbjogYXV0bztcbiAgICAgICAgbWFyZ2luLXRvcDogLTVyZW07XG4gICAgfVxuXG4gICAgLmN1YWRyYWRvIHtcbiAgICAgICAgbWF4LXdpZHRoOiAyNXJlbTtcbiAgICAgICAgbWFyZ2luLXRvcDogLTFyZW07XG4gICAgfVxuXG4gICAgLmFuZGFtaW8xIHtcbiAgICAgICAgbWF4LXdpZHRoOiAxNXJlbTtcbiAgICAgICAgbWFyZ2luLXRvcDogLTVyZW07XG4gICAgfVxuXG4gICAgLmFuZGFtaW8yIHtcbiAgICAgICAgbWF4LXdpZHRoOiAxM3JlbTtcbiAgICAgICAgbWFyZ2luLXRvcDogLTNyZW07XG4gICAgfVxuXG4gICAgLm10LW5lZ2F0aXZlLTExIHtcbiAgICAgICAgbWFyZ2luLXRvcDogLTdyZW07XG4gICAgICAgIHotaW5kZXg6IC0xO1xuICAgIH1cblxuICAgIC50cmFiYWpvIGltZyB7XG4gICAgICAgIG1hcmdpbjogYXV0bztcbiAgICAgICAgbWF4LXdpZHRoOiA1MHJlbTtcbiAgICB9XG5cbiAgICAvLyBEZWNrLVg6IERldGFsbGUgY2FiZXphbFxuICAgIC5jb250YWluZXItY2FiZXphbCB7XG4gICAgICAgIC8vIEFsdHVyYSBkZSBsYSBpbWFnZW5cbiAgICAgICAgJGNjLWhlaWdodDogNjAwcHg7XG4gICAgICAgIC8vIEFuY2hvIGRlIGxhIGltYWdlblxuICAgICAgICAkY2Mtd2lkdGg6IDk5MnB4O1xuICAgICAgICAvL0FuY2hvIGRlbCBjb250ZW5lZG9yIGltYWdpbmFyaW8gZGVyZWNob1xuICAgICAgICAkY2MtY29udGFpbmVyUmlnaHQ6IDUwMHB4O1xuXG4gICAgICAgIGhlaWdodDogJGNjLWhlaWdodDtcbiAgICAgICAgd2lkdGg6ICRjYy13aWR0aDtcbiAgICAgICAgbWFyZ2luOiBhdXRvO1xuXG4gICAgICAgIC5tYWluLXRpdGxlIHtcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgd2lkdGg6IDQ4MHB4O1xuXG4gICAgICAgIH1cblxuICAgICAgICAucGFydC1pbWcgaW1nIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvbnRhaW47XG4gICAgICAgICAgICBoZWlnaHQ6ICRjYy1oZWlnaHQ7XG4gICAgICAgICAgICB3aWR0aDogNjAwcHg7XG4gICAgICAgIH1cblxuICAgICAgICAubGluZS1wb2ludGVyLXJlZC0xIHtcblxuICAgICAgICAgICAgJGxpbmVMZWZ0VzogMzUwcHg7XG5cbiAgICAgICAgICAgIC8qIHdpZHRoOiBjYWxjKGNvbnRhaW5lcldpZHRoIC0gKCBsZWZ0UG9zaXRpb24gLSByaWdodFBvc2l0aW9uICkpICovXG4gICAgICAgICAgICB3aWR0aDogY2FsYygkY2Mtd2lkdGggLSAoJGxpbmVMZWZ0VyArICRjYy1jb250YWluZXJSaWdodCkpO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgbGVmdDogJGxpbmVMZWZ0VztcbiAgICAgICAgICAgIHRvcDogMTYwcHg7XG5cbiAgICAgICAgICAgIC5saW5lLXJlZCB7XG4gICAgICAgICAgICAgICAgLyogd2lkdGg6IGNhbGMoY29udGFpbmVyV2lkdGggLSAoIGxlZnRQb3NpdGlvbiAtIHdpZHRoQ29udGFpbmVyUmlnaHQgKSkgKi9cbiAgICAgICAgICAgICAgICB3aWR0aDogY2FsYygkY2Mtd2lkdGggLSAoJGxpbmVMZWZ0VyArICRjYy1jb250YWluZXJSaWdodCkpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAucGFydC10eHQge1xuICAgICAgICAgICAgICAgIC8qIHdpZHRoOiBjYWxjKGNvbnRhaW5lcldpZHRoIC0gKCBsZWZ0UG9zaXRpb24gLSB3aWR0aENvbnRhaW5lclJpZ2h0ICkgKyBwYWRkaW5nTGVmdCApICovXG4gICAgICAgICAgICAgICAgbGVmdDogY2FsYygkY2Mtd2lkdGggLSAoJGxpbmVMZWZ0VyArICRjYy1jb250YWluZXJSaWdodCkgKyAyMHB4KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG5cbiAgICAgICAgLmxpbmUtcG9pbnRlci1yZWQtMiB7XG5cbiAgICAgICAgICAgICRsaW5lTGVmdFc6IDMwMHB4O1xuXG4gICAgICAgICAgICB3aWR0aDogY2FsYygkY2Mtd2lkdGggLSAoJGxpbmVMZWZ0VyArICRjYy1jb250YWluZXJSaWdodCkpO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgbGVmdDogJGxpbmVMZWZ0VztcbiAgICAgICAgICAgIHRvcDogMjAwcHg7XG5cbiAgICAgICAgICAgIC5saW5lLXJlZCB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IGNhbGMoJGNjLXdpZHRoIC0gKCRsaW5lTGVmdFcgKyAkY2MtY29udGFpbmVyUmlnaHQpKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnBhcnQtdHh0IHtcbiAgICAgICAgICAgICAgICBsZWZ0OiBjYWxjKCRjYy13aWR0aCAtICgkbGluZUxlZnRXICsgJGNjLWNvbnRhaW5lclJpZ2h0KSArIDIwcHgpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cblxuICAgICAgICAubGluZS1wb2ludGVyLXJlZC0zIHtcblxuICAgICAgICAgICAgJGxpbmVMZWZ0VzogMzUwcHg7XG5cbiAgICAgICAgICAgIHdpZHRoOiBjYWxjKCRjYy13aWR0aCAtICgkbGluZUxlZnRXICsgJGNjLWNvbnRhaW5lclJpZ2h0KSk7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBsZWZ0OiAkbGluZUxlZnRXO1xuICAgICAgICAgICAgdG9wOiA0NTBweDtcblxuICAgICAgICAgICAgLmxpbmUtcmVkIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogY2FsYygkY2Mtd2lkdGggLSAoJGxpbmVMZWZ0VyArICRjYy1jb250YWluZXJSaWdodCkpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAucGFydC10eHQge1xuICAgICAgICAgICAgICAgIGxlZnQ6IGNhbGMoJGNjLXdpZHRoIC0gKCRsaW5lTGVmdFcgKyAkY2MtY29udGFpbmVyUmlnaHQpICsgMjBweCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuXG4gICAgICAgIC5saW5lLXBvaW50ZXItcmVkLTQge1xuXG4gICAgICAgICAgICAkbGluZUxlZnRXOiAzODBweDtcblxuICAgICAgICAgICAgd2lkdGg6IGNhbGMoJGNjLXdpZHRoIC0gKCRsaW5lTGVmdFcgKyAkY2MtY29udGFpbmVyUmlnaHQpKTtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGxlZnQ6ICRsaW5lTGVmdFc7XG4gICAgICAgICAgICB0b3A6IDUzNXB4O1xuXG4gICAgICAgICAgICAubGluZS1yZWQge1xuICAgICAgICAgICAgICAgIHdpZHRoOiBjYWxjKCRjYy13aWR0aCAtICgkbGluZUxlZnRXICsgJGNjLWNvbnRhaW5lclJpZ2h0KSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5wYXJ0LXR4dCB7XG4gICAgICAgICAgICAgICAgbGVmdDogY2FsYygkY2Mtd2lkdGggLSAoJGxpbmVMZWZ0VyArICRjYy1jb250YWluZXJSaWdodCkgKyAyMHB4KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGRpdltjbGFzcyo9XCJsaW5lLXBvaW50ZXItcmVkLVwiXSB7XG5cbiAgICAgICAgICAgIC5saW5lLXJlZCB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmVkO1xuICAgICAgICAgICAgICAgIGhlaWdodDogMnB4O1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnBhcnQtdHh0IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgdG9wOiAtMC44NWVtO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAkY2MtY29udGFpbmVyUmlnaHQ7XG4gICAgICAgICAgICB9XG5cblxuICAgICAgICAgICAgLmNpcmNsZS1wb2ludGVyLXJlZCB7XG4gICAgICAgICAgICAgICAgJGRvdF9zaXplOiAxMnB4O1xuXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIGxlZnQ6ICRkb3Rfc2l6ZSAqIC0wLjU7XG4gICAgICAgICAgICAgICAgdG9wOiAkZG90X3NpemUgKiAtMC41O1xuICAgICAgICAgICAgICAgIGNvbG9yOiByZWQ7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAkZG90X3NpemU7XG4gICAgICAgICAgICAgICAgd2lkdGg6ICRkb3Rfc2l6ZTtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmVkO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICB9XG5cbiAgICAuc3Rlbi1kZWNrLXgtaW1nMSB7XG4gICAgICAgIHBpY3R1cmUsXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAtODBweDtcbiAgICAgICAgfVxuICAgIH1cblxufVxuXG4vL0NPTlRBQ1RPOlxuI2NvbnRhY3Qge1xuICAgIC5tdC1tYWluIHtcbiAgICAgICAgbWFyZ2luLXRvcDogNDBweDtcbiAgICB9XG4gICAgLm1iLW1haW4ge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuICAgIH1cblxuICAgIC5teS1mb3JtIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMTAwcHg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEwMHB4O1xuICAgIH1cblxuICAgIGgxIHtcbiAgICAgICAgZm9udC1zaXplOiAkaDFfZm9udF9zaXplO1xuICAgICAgICBsaW5lLWhlaWdodDogJGgxX2ZvbnRfc2l6ZTtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRmb250X2ZhbWlseV9oMTtcbiAgICAgICAgZm9udC13ZWlnaHQ6ICRoMV9mb250X3dlaWdodDtcbiAgICAgICAgLyogbGV0dGVyLXNwYWNpbmc6IDAuMXJlbTsgKi9cbiAgICAgICAgcGFkZGluZy1ib3R0b206IDFyZW07XG4gICAgICAgIG1hcmdpbjogYXV0bztcbiAgICB9XG5cbiAgICBoMiB7XG4gICAgICAgIGZvbnQtc2l6ZTogJGgyX2ZvbnRfc2l6ZTtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRmb250X2ZhbWlseV9oMjtcbiAgICAgICAgZm9udC13ZWlnaHQ6ICRmd19tZWQ7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAwLjAxZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxMDUlO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgcGFkZGluZzogLjVlbSAwO1xuICAgICAgICAvKiBwYWRkaW5nLWJvdHRvbTogMXJlbTtcbiAgICAgICAgbWFyZ2luOiBhdXRvOyAqL1xuICAgIH1cblxuICAgICNzbGlkZXItYWRkcmVzcyB7XG4gICAgICAgIGgyIHtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAwZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKiAuaW1nLXNjcm9sbCB7XG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICBjdXJzb3I6IGFsbC1zY3JvbGw7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgd2lkdGg6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgIH0gKi9cblxuICAgIC5vZi1oaWRkZW4ge1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIH1cblxuICAgIC5wb2ludC1ob3Zlci1sYSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIGhlaWdodDogMi4yNXJlbTtcbiAgICAgICAgd2lkdGg6IDIuMjVyZW07XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDExJTtcbiAgICAgICAgbWFyZ2luLXRvcDogMzEuMyU7XG4gICAgfVxuXG4gICAgLnBvaW50LWhvdmVyLW14IHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgaGVpZ2h0OiAyLjI1cmVtO1xuICAgICAgICB3aWR0aDogMi4yNXJlbTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBtYXJnaW4tbGVmdDogMjUlO1xuICAgICAgICBtYXJnaW4tdG9wOiA0MyU7XG4gICAgfVxuXG4gICAgLnBvaW50LWhvdmVyLWNvbCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIGhlaWdodDogMi4yNXJlbTtcbiAgICAgICAgd2lkdGg6IDIuMjVyZW07XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDQzJTtcbiAgICAgICAgbWFyZ2luLXRvcDogNTQlO1xuICAgIH1cblxuICAgIC5wb2ludC1ob3Zlci1wdCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIGhlaWdodDogMi40cmVtO1xuICAgICAgICB3aWR0aDogMi4yNXJlbTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBtYXJnaW4tbGVmdDogOTAlO1xuICAgICAgICBtYXJnaW4tdG9wOiAyNiU7XG4gICAgfVxuXG4gICAgLnBvaW50LWhvdmVyLWVzIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgaGVpZ2h0OiAyLjRyZW07XG4gICAgICAgIHdpZHRoOiAyLjI1cmVtO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiA5OCU7XG4gICAgICAgIG1hcmdpbi10b3A6IDI0JTtcbiAgICB9XG5cbiAgICAucG9pbnQtaG92ZXItcG9sIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgaGVpZ2h0OiAyLjI1cmVtO1xuICAgICAgICB3aWR0aDogMi4yNXJlbTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBtYXJnaW4tbGVmdDogMTExJTtcbiAgICAgICAgbWFyZ2luLXRvcDogMTMlO1xuICAgIH1cblxuXG4gICAgLnNsaWRlIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuM3JlbTtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICAgICAuc2VjdGlvbiB7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgICBtaW4td2lkdGg6IDI3JTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5zY3JvbGwge1xuICAgICAgICAgICAgY3Vyc29yOiAtd2Via2l0LWdyYWI7XG4gICAgICAgICAgICBjdXJzb3I6IGdyYWI7XG4gICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICAgICAgb3ZlcmZsb3cteDogYXV0bztcbiAgICAgICAgICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgICAgICAgICAgIC1tcy1vdmVyZmxvdy1zdHlsZTogLW1zLWF1dG9oaWRpbmctc2Nyb2xsYmFyO1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcblxuICAgICAgICAgICAgaDIuc3VidGl0bGUge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogJGgyX2ZvbnRfc2l6ZTtcbiAgICAgICAgICAgICAgICBmb250LWZhbWlseTogJGZvbnRfZmFtaWx5X2gyO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZndfbWVkO1xuICAgICAgICAgICAgICAgIC8qIGxldHRlci1zcGFjaW5nOiAwLjFyZW07ICovXG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDExMCU7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIDAgMXJlbSAwO1xuICAgICAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5hZGRyZXNzIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEyNSU7XG4gICAgICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA0cHg7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgaHIge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDEwcHggMDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBiIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogI0Y4RjhGOTtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnBob25lIHtcbiAgICAgICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjMzEzMTMxO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnNlY3Rpb24ge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDE1cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuc2Nyb2xsOjotd2Via2l0LXNjcm9sbGJhciB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmNvbnRhY3QtYmFubmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiL2ltZy9jb250YWN0L2JnX2Jhbm5lci5qcGdcIik7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHotaW5kZXg6IDA7XG5cbiAgICAgICAgaDIge1xuICAgICAgICAgICAgY29sb3I6ICMyNDIwMjE7XG4gICAgICAgICAgICBmb250LXNpemU6ICRoMl9mb250X3NpemU7XG4gICAgICAgICAgICBmb250LXdlaWdodDogJGZ3X21lZDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAkbGhfaDI7XG4gICAgICAgIH1cblxuICAgICAgICAuYmctb3BhY2l0eSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOCk7XG4gICAgICAgICAgICBwYWRkaW5nOiAzMHB4IDE1cHggMTVweCAxNXB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLmgtODAwcHgge1xuICAgICAgICAgICAgbWluLWhlaWdodDogODAwcHg7XG4gICAgICAgIH1cblxuICAgICAgICAuY29udGVudC1mb290ZXIge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjJyZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAjYWRkcmVzcyB7XG4gICAgICAgIHN0cm9uZyB7XG4gICAgICAgICAgICBmb250LWZhbWlseTogJGZvbnRfZmFtaWx5X21haW47XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAbWVkaWEobWF4LXdpZHRoOiA1NjBweCkge1xuICAgICAgICAuanVzdGlmeS1jb250ZW50LWNlbnRlciAucHktMTg2IHtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgQG1lZGlhKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICAgLmp1c3RpZnktY29udGVudC1jZW50ZXIgLnB5LTE4NiB7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDAgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICNtYXAtbWFpbiB7XG5cbiAgICAgICAgLmdtLXVpLWhvdmVyLWVmZmVjdCxcbiAgICAgICAgW3RpdGxlPVwiQ2VycmFyXCJdIHtcbiAgICAgICAgICAgIHRvcDogMHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICByaWdodDogMHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgI21hcC1tYWluLWFuY2hvciB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHRvcDogLTIwMHB4O1xuICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgfVxuXG59XG5cbi8vU0hPV1JPT006XG4jc2hvd3Jvb20ge1xuICAgIC5zbGlkZS10aXRsZSB7XG4gICAgICAgIC8vIG9wYWNpdHk6IDA7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgaGVpZ2h0OiAxMDB2aDtcbiAgICAgICAgbWFyZ2luLXRvcDogLTEwMHZoO1xuICAgICAgICBtYXgtd2lkdGg6IDQ2cmVtO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIC13ZWJraXQtYm94LXBhY2s6IGNlbnRlcjtcbiAgICAgICAgLW1zLWZsZXgtcGFjazogY2VudGVyO1xuICAgICAgICAtd2Via2l0LWp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAtd2Via2l0LWJveC1hbGlnbjogY2VudGVyO1xuICAgICAgICAtbXMtZmxleC1hbGlnbjogY2VudGVyO1xuICAgICAgICAtd2Via2l0LWFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgICAgLnRpdGxlIHtcbiAgICAgICAgICAgIGNvbG9yOiAjRkZGO1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250X2ZhbWlseV9oMjtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJGgyX2ZvbnRfc2l6ZTtcbiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAwLjAzcmVtO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDExMCU7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgICAgICAgIHdpZHRoOiA4MCU7XG4gICAgICAgICAgICB6LWluZGV4OiA5OTk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAjc2hvd3Jvb20tZm9ybSB7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG5cbiAgICAgICAgZm9ybSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIG1hcmdpbjogMzBweCBhdXRvIDAgYXV0bztcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICB3aWR0aDogODAlO1xuXG4gICAgICAgICAgICBsYWJlbCB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpbnB1dFt0eXBlPVwidGV4dFwiXSxcbiAgICAgICAgICAgIGlucHV0W3R5cGU9XCJlbWFpbFwiXSB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxMDAsIDEwMCwgMTAwLCAuOCk7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDE1cHg7XG4gICAgICAgICAgICAgICAgY29sb3I6ICNGRkY7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogMzBweDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiA2cHggMTBweDtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAvLyBsaW5lLWhlaWdodDogMi4yO1xuXG4gICAgICAgICAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICY6YWN0aXZlIHtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc3Rlbi1yZWQ7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDFyZW07XG4gICAgICAgICAgICAgICAgY29sb3I6ICNGRkY7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMC40cmVtIDJyZW07XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAnSGVsdmV0aWNhIE5ldWUgTWVkaXVtJztcbiAgICAgICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMXB4O1xuICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogMXM7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGlucHV0W3R5cGU9XCJzdWJtaXRcIl06ZGlzYWJsZWQge1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDAuNTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIGgxIHtcbiAgICAgICAgZm9udC1zaXplOiAkaDFfZm9udF9zaXplO1xuICAgICAgICAvLyBsaW5lLWhlaWdodDogODBweDtcbiAgICAgICAgY29sb3I6ICMzMTMxMzE7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udF9mYW1pbHlfaDE7XG4gICAgICAgIC8qIGxldHRlci1zcGFjaW5nOiAwLjFyZW07ICovXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAxcmVtO1xuICAgICAgICBtYXJnaW46IGF1dG87XG4gICAgfVxuXG4gICAgaDIge1xuICAgICAgICBmb250LXNpemU6ICRoMl9mb250X3NpemU7XG4gICAgICAgIC8vIGxpbmUtaGVpZ2h0OiAkaDJfZm9udF9zaXplO1xuICAgICAgICBmb250LWZhbWlseTogJGZvbnRfZmFtaWx5X2gyO1xuICAgICAgICBmb250LXdlaWdodDogJGgyX2ZvbnRfd2VpZ2h0O1xuICAgICAgICAvKiBsZXR0ZXItc3BhY2luZzogMC4xcmVtOyAqL1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMXJlbTtcbiAgICAgICAgbWFyZ2luOiBhdXRvO1xuICAgIH1cblxuICAgIC5kZXNjcmlwdGlvbiB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICAgIG1heC13aWR0aDogNzAwcHg7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbn1cblxuLy9TT0JSRSBTVEVOOlxuI3NvYnJlLXN0ZW4ge1xuICAgIC5ib2xkIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGRlcjtcbiAgICAgICAgZm9udC1mYW1pbHk6ICdIZWx2ZXRpY2EgTmV1ZSBCb2xkJztcbiAgICB9XG5cbiAgICAubWVkaXVtIHtcbiAgICAgICAgZm9udC1mYW1pbHk6ICdIZWx2ZXRpY2EgTmV1ZSBNZWRpdW0nO1xuICAgIH1cblxuICAgIGgxIHtcbiAgICAgICAgZm9udC1zaXplOiAkaDFfZm9udF9zaXplO1xuICAgICAgICBsaW5lLWhlaWdodDogJGxoX2gxO1xuICAgICAgICBjb2xvcjogIzMxMzEzMTtcbiAgICAgICAgLyogZm9udC1zaXplOiA1NXB4O1xuICAgICAgICBsaW5lLWhlaWdodDogNTVweDsgKi9cbiAgICAgICAgZm9udC13ZWlnaHQ6ICRoMV9mb250X3dlaWdodDtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRmb250X2ZhbWlseV9oMTtcbiAgICB9XG5cbiAgICAuaDEge1xuICAgICAgICBmb250LXNpemU6ICRoMV9mb250X3NpemU7XG4gICAgICAgIC8vIGxpbmUtaGVpZ2h0OiAkaDFfZm9udF9zaXplO1xuICAgICAgICBjb2xvcjogIzMxMzEzMTtcbiAgICAgICAgLyogZm9udC1zaXplOiA1NXB4O1xuICAgICAgICBsaW5lLWhlaWdodDogNTVweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6ICRoMV9mb250X3dlaWdodDsqL1xuICAgICAgICBmb250LXdlaWdodDogJGgxX2ZvbnRfd2VpZ2h0O1xuICAgICAgICBmb250LWZhbWlseTogJGZvbnRfZmFtaWx5X2gxO1xuICAgIH1cblxuICAgIGgyIHtcbiAgICAgICAgZm9udC1zaXplOiAkaDJfZm9udF9zaXplO1xuICAgICAgICBsaW5lLWhlaWdodDogJGxoX2gyO1xuICAgICAgICBmb250LWZhbWlseTogJGZvbnRfZmFtaWx5X2gyO1xuICAgICAgICBmb250LXdlaWdodDogJGgyX2ZvbnRfd2VpZ2h0O1xuICAgICAgICAvKiBsZXR0ZXItc3BhY2luZzogMC4xcmVtOyAqL1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMXJlbTtcbiAgICAgICAgbWFyZ2luOiBhdXRvO1xuICAgIH1cblxuICAgIC5oMiB7XG4gICAgICAgIGZvbnQtc2l6ZTogJGgyX2ZvbnRfc2l6ZTtcbiAgICAgICAgbGluZS1oZWlnaHQ6ICRsaF9oMjtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRmb250X2ZhbWlseV9oMjtcbiAgICAgICAgZm9udC13ZWlnaHQ6ICRoMl9mb250X3dlaWdodDtcbiAgICAgICAgLyogbGV0dGVyLXNwYWNpbmc6IDAuMXJlbTsgKi9cbiAgICAgICAgcGFkZGluZy1ib3R0b206IDFyZW07XG4gICAgICAgIG1hcmdpbjogYXV0bztcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgfVxuXG4gICAgLnJlZmVyZW50ZSBoMiB7XG4gICAgICAgIGZvbnQtc2l6ZTogJGgyX2ZvbnRfc2l6ZTtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRmb250X2ZhbWlseV9oMjtcbiAgICAgICAgbGluZS1oZWlnaHQ6ICRsaF9oMjtcbiAgICB9XG5cbiAgICAudmFsdWUge1xuICAgICAgICBmb250LXNpemU6IDMuMXJlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6ICRmd19tZWQ7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udF9mYW1pbHlfbWFpbjtcbiAgICB9XG5cbiAgICAubGluZS1ibGFjayB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDNweCBzb2xpZCAjMzEzMTMxO1xuICAgICAgICB3aWR0aDogNDBweDtcbiAgICB9XG5cbiAgICAuYXJlYSB7XG4gICAgICAgIGZvbnQtc2l6ZTogJHRleHRfZm9udF9zaXplX2xnO1xuICAgICAgICBsaW5lLWhlaWdodDogMS4zM3JlbTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDIuNXJlbTtcbiAgICAgICAgcGFkZGluZy10b3A6IDAuNHJlbTtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRmb250X2ZhbWlseV9tYWluO1xuICAgICAgICAvLyBmb250LXdlaWdodDogJGZ3X21lZDtcbiAgICB9XG5cbiAgICAuY2F0YWxvZ28ge1xuICAgICAgICBtYXJnaW4tbGVmdDogLTExMHB4O1xuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDUwMHB4O1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuc3ViLXRpdGxlIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCBibGFjaztcbiAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgJi5iYi1ncmF5IHtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjNzA3MDcwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmRlc2t0b3Atc2NyZWVuIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2Y0ZjRmNDtcbiAgICAgICAgYm9yZGVyOiAxMHB4IHNvbGlkICNmNGY0ZjQ7XG4gICAgICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDEwcHg7XG4gICAgICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAxMHB4O1xuICAgICAgICBoZWlnaHQ6IDA7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDU2LjI1JTtcbiAgICAgICAgLyogMTYvOSByYXRpbyAqL1xuICAgIH1cblxuICAgIC8qIC5pbWctc2Nyb2xsIHtcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgb3ZlcmZsb3cteDogYXV0bztcbiAgICAgICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICAgICAgICAtbXMtb3ZlcmZsb3ctc3R5bGU6IC1tcy1hdXRvaGlkaW5nLXNjcm9sbGJhcjtcblxuICAgICAgICBpbWcge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIHdpZHRoOiAyNzAlICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICB9ICovXG4gICAgLmlNYWMge1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIG1hcmdpbi10b3A6IC0ycHg7XG4gICAgICAgIHotaW5kZXg6IDE7XG5cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgdmlkZW8ge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICAucGxhbmV0IHtcbiAgICAgICAgbWF4LXdpZHRoOiAzMDBweDtcbiAgICB9XG5cbiAgICAuYmctdmFsb3JlcyB7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi9pbWcvc29icmUtc3Rlbi9tb3ZpbF9zb2JyZS1zdGVuLTcucG5nXCIpO1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB6LWluZGV4OiAwO1xuXG4gICAgICAgIGgyIHtcbiAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJGgyX2ZvbnRfc2l6ZTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZndfbWVkO1xuICAgICAgICAgICAgcGFkZGluZzogNTBweCAxNXB4IDUwcHggMTVweDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5iZy1vcGFjaXR5IHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDMwcHggMTVweCAxNXB4IDE1cHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAubXctaGVhZGVyLXRpdGxlIHtcbiAgICAgICAgbWF4LXdpZHRoOiA0MnJlbTtcbiAgICB9XG5cbiAgICAuc2xpZGUtdGl0bGUge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGhlaWdodDogMTAwdmg7XG4gICAgICAgIG1hcmdpbi10b3A6IC0xMDB2aDtcbiAgICAgICAgLyogbWF4LXdpZHRoOiA0NnJlbTsgKi9cbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIC13ZWJraXQtYm94LXBhY2s6IGNlbnRlcjtcbiAgICAgICAgLW1zLWZsZXgtcGFjazogY2VudGVyO1xuICAgICAgICAtd2Via2l0LWp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAtd2Via2l0LWJveC1hbGlnbjogY2VudGVyO1xuICAgICAgICAtbXMtZmxleC1hbGlnbjogY2VudGVyO1xuICAgICAgICAtd2Via2l0LWFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgICAgLnRpdGxlIHtcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udF9mYW1pbHlfbWFpbjtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJHRleHRfZm9udF9zaXplX2xnO1xuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMDNyZW07XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMnJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5zdWJ0aXRsZSB7XG4gICAgICAgICAgICBmb250LWZhbWlseTogJGZvbnRfZmFtaWx5X21haW47XG4gICAgICAgICAgICBmb250LXNpemU6IDIuNTgzM3JlbTtcbiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAwLjFyZW07XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMi41ODMzcmVtO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6ICRmd19tZWQ7XG4gICAgICAgIH1cblxuICAgICAgICAuZGVzY3JpcHRpb24ge1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250X2ZhbWlseV9tYWluO1xuICAgICAgICAgICAgZm9udC1zaXplOiAkdGV4dF9mb250X3NpemVfbGc7XG4gICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMC4wM3JlbTtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDFyZW07XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS4ycmVtO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmVzdHJhdGVnaWEge1xuICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuXG4gICAgICAgIHAge1xuICAgICAgICAgICAgZm9udC1zaXplOiAkdGV4dF9zdWJ0aXRsZTtcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udF9mYW1pbHlfbWFpbjtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZndfbWVkO1xuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMDJyZW07XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS43cmVtO1xuICAgICAgICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgICAgICAgbWF4LXdpZHRoOiA0NS44NzVyZW07XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuXG4gICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgIGNvbG9yOiAkc3Rlbi1yZWQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuZXhwZXJpZW5jaWEge1xuICAgICAgICAuZXhwZXJpZW5jaWEtdmFsdWUge1xuICAgICAgICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAxNy4yNXJlbTtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMTIuNSU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuZXhwZXJpZW5jaWEtdGV4dCB7XG4gICAgICAgIGRpdiB7XG4gICAgICAgICAgICB3aWR0aDogNjAlO1xuICAgICAgICB9XG5cbiAgICAgICAgcCB7XG4gICAgICAgICAgICAvLyBtYXgtd2lkdGg6IDIzLjIwOHJlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC52YWx1ZSB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udF9mYW1pbHlfbWFpbjtcbiAgICAgICAgZm9udC13ZWlnaHQ6ICRmd19tZWQ7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAzLjVyZW07XG4gICAgfVxuXG4gICAgLnRleHQtbWQtcmlnaHQge1xuICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICB9XG5cbiAgICAjbWlzaW9uLXZpc2lvbi12YWxvcmVzIHtcbiAgICAgICAgcCB7XG4gICAgICAgICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogJGxoX3A7XG4gICAgICAgIH1cblxuICAgICAgICAuaWNvbi12YWxvcmVzIHtcbiAgICAgICAgICAgIG1heC1oZWlnaHQ6IDQuNjI1cmVtO1xuXG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgIGhlaWdodDogNC42MjVyZW07XG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiA0LjYyNXJlbTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwLjg1cmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnN1Yi10aXRsZSB7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgYmxhY2s7XG4gICAgICAgICAgICBmb250LWZhbWlseTogJGZvbnRfZmFtaWx5X21haW47XG4gICAgICAgICAgICBmb250LXNpemU6ICR0ZXh0X3N1YnRpdGxlO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6ICRmd19tZWQ7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwLjY2NnJlbTtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAxMy4xNHJlbTtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG5cbiAgICAgICAgLmRlc2NyaXB0aW9uIHtcbiAgICAgICAgICAgIG1heC13aWR0aDogMTMuMTI1cmVtO1xuICAgICAgICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgICB9XG5cbiAgICAgICAgLmRlc2t0b3Atc2NyZWVuIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmNGY0ZjQ7XG4gICAgICAgICAgICBib3JkZXI6IDEwcHggc29saWQgI2Y0ZjRmNDtcbiAgICAgICAgICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDEwcHg7XG4gICAgICAgICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMTBweDtcbiAgICAgICAgICAgIGhlaWdodDogMDtcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogNTYuMjUlO1xuICAgICAgICAgICAgLyogMTYvOSByYXRpbyAqL1xuICAgICAgICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLndpZHRoLWRlc2t0b3Age1xuICAgICAgICBtYXJnaW46IGF1dG87XG4gICAgICAgIG1heC13aWR0aDogNDByZW07XG4gICAgfVxuXG4gICAgLnBsYW5ldCB7XG4gICAgICAgIG1heC13aWR0aDogNTYwcHg7XG4gICAgfVxuXG4gICAgI3Jlc3BvbnNhYmlsaWRhZC1zb2NpYWwgcCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMC44MTI1cmVtO1xuICAgIH1cblxuICAgIC5iZy12YWxvcmVzIHtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiL2ltZy9zb2JyZS1zdGVuL2Rlc2t0b3Bfc29icmUtc3Rlbi0zLnBuZ1wiKTtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgei1pbmRleDogMDtcblxuICAgICAgICAuYmctb3BhY2l0eSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7XG5cbiAgICAgICAgICAgIGgyIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6ICRoMl9mb250X3NpemU7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6ICRmd19tZWQ7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAvLyBwIHtcbiAgICAgICAgICAgIC8vICAgICBmb250LXNpemU6IDAuODEyNXJlbTtcbiAgICAgICAgICAgIC8vIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vICNjb21wcm9taXNvLXNvc3RlbmlibGUgcCxcbiAgICAvLyAjY29tcHJvbWlzby1zb3N0ZW5pYmxlIGIge1xuICAgIC8vICAgICBmb250LXNpemU6IDAuODMzM3JlbTtcbiAgICAvLyAgICAgbGluZS1oZWlnaHQ6IDEuMnJlbTtcbiAgICAvLyB9XG4gICAgLy8gI2V0aWNhLWNvcnBvcmF0aXZhIHAsXG4gICAgLy8gI2V0aWNhLWNvcnBvcmF0aXZhIGIge1xuICAgIC8vICAgICBmb250LXNpemU6IDAuODMzM3JlbTtcbiAgICAvLyAgICAgbGluZS1oZWlnaHQ6IDEuMnJlbTtcbiAgICAvLyB9XG59XG5cbi8vU0VSVklDSU9TOlxuI3NlcnZpY2lvcyB7XG5cbiAgICBmb3JtIGxhYmVsLFxuICAgIGZvcm0gaW5wdXQsXG4gICAgZm9ybSB0ZXh0YXJlYSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMC44MzMzcmVtICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgZm9ybSAuZm9ybS1jb250cm9sIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgfVxuXG4gICAgLmhlYWRlci10aXRsZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICB9XG5cbiAgICAubXctaGVhZGVyLXRpdGxlIHtcbiAgICAgICAgbWF4LXdpZHRoOiA0MnJlbTtcbiAgICB9XG5cbiAgICBoMSB7XG4gICAgICAgIC8vIC8vIGZvbnQtc2l6ZTogJGgxX2ZvbnRfc2l6ZTtcbiAgICAgICAgLy8gLy8gbGluZS1oZWlnaHQ6ICRoMV9mb250X3NpemUgKyA1cHg7XG4gICAgICAgIC8vIGNvbG9yOiAjMzEzMTMxO1xuICAgICAgICAvLyBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAvLyBmb250LWZhbWlseTogJGZvbnRfZmFtaWx5X21haW47XG4gICAgICAgIC8vIC8qIGxldHRlci1zcGFjaW5nOiAwLjFyZW07ICovXG4gICAgICAgIC8vIHBhZGRpbmctYm90dG9tOiAxcmVtO1xuICAgICAgICAvLyBtYXJnaW46IGF1dG87XG4gICAgfVxuXG4gICAgaDIge1xuICAgICAgICBmb250LXNpemU6ICRoMl9mb250X3NpemU7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udF9mYW1pbHlfaDI7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAkZndfbWVkO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMXJlbTtcbiAgICAgICAgbWFyZ2luOiBhdXRvO1xuICAgIH1cblxuICAgIC5iciB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDMwcHg7XG4gICAgfVxuXG4gICAgLmljb25vIHtcbiAgICAgICAgaGVpZ2h0OiAxMDBweDtcbiAgICAgICAgd2lkdGg6IDEwMHB4O1xuICAgIH1cblxuICAgIC5oZWFkZXItdmlkZW8ge1xuICAgICAgICBoZWlnaHQ6IDEwMHZoO1xuICAgICAgICBmaWx0ZXI6IGJyaWdodG5lc3MoMC43KTtcbiAgICAgICAgLW8tb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgfVxuXG4gICAgLnZpZGVvIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2Y0ZjRmNDtcbiAgICAgICAgaGVpZ2h0OiAwO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA1Ni4yNSU7XG4gICAgICAgIC8qIDE2LzkgcmF0aW8gKi9cbiAgICAgICAgbWFyZ2luOiBhdXRvO1xuXG4gICAgICAgIHZpZGVvIHtcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgIGZpbHRlcjogYnJpZ2h0bmVzcygwLjcpO1xuICAgICAgICAgICAgLW8tb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAudmlzaW9uLTM2MCB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG5cbiAgICAgICAgcCB7XG4gICAgICAgICAgICBmb250LWZhbWlseTogJGZvbnRfZmFtaWx5X21haW47XG4gICAgICAgICAgICBmb250LXNpemU6ICR0ZXh0X2ZvbnRfc2l6ZV9sZztcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZndfbWVkO1xuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMDJyZW07XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogJGxoX3A7XG4gICAgICAgICAgICBtYXJnaW46IGF1dG87XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDQ4LjI1cmVtO1xuICAgICAgICAgICAgLy8gdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgI3Byb3llY3RvcyxcbiAgICAjYWxxdWlsZXIsXG4gICAgI3ZlbnRhLFxuICAgICNsb2dpc3RpY2EsXG4gICAgI2FzZXNvcmFtaWVudG8sXG4gICAgI21vbnRhamUsXG4gICAgI21hbnRlbmltaWVudG8ge1xuXG4gICAgICAgIC8vIGgye1xuICAgICAgICAvLyAgICAgZm9udC1zaXplOiAkaDJfZm9udF9zaXplICFpbXBvcnRhbnQ7XG4gICAgICAgIC8vICAgICBmb250LXdlaWdodDogJGgyX2ZvbnRfd2VpZ2h0O1xuICAgICAgICAvLyB9XG4gICAgICAgIC5idG4tcmVkLXNsaWRlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRzdGVuLXJlZDtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDMwcHggIWltcG9ydGFudDtcbiAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgICAgICAgIC8qIHBhZGRpbmc6IDAuMnJlbSAwLjc1cmVtOyAqL1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMXJlbTtcblxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHN0ZW4tcmVkLWhvdmVyICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuYmctd2hpdGUge1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTVweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5zbGlkZS10aXRsZSB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgaGVpZ2h0OiAxMDB2aDtcbiAgICAgICAgLyogbWFyZ2luLXRvcDogLTEwMHZoOyAqL1xuICAgICAgICBtYXgtd2lkdGg6IDQ2cmVtO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgLXdlYmtpdC1ib3gtcGFjazogY2VudGVyO1xuICAgICAgICAtbXMtZmxleC1wYWNrOiBjZW50ZXI7XG4gICAgICAgIC13ZWJraXQtanVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIC13ZWJraXQtYm94LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIC1tcy1mbGV4LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIC13ZWJraXQtYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICAgICAudGl0bGUge1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250X2ZhbWlseV9tYWluO1xuICAgICAgICAgICAgZm9udC1zaXplOiAkdGV4dF9mb250X3NpemVfbGc7XG4gICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMC4wM3JlbTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS4ycmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgLnN1YnRpdGxlIHtcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udF9mYW1pbHlfbWFpbjtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJGgyX2ZvbnRfc2l6ZTtcbiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAwLjFyZW07XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS4wNTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZndfbWVkO1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAyOXJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5kZXNjcmlwdGlvbiB7XG4gICAgICAgICAgICBmb250LWZhbWlseTogJGZvbnRfZmFtaWx5X21haW47XG4gICAgICAgICAgICBmb250LXNpemU6ICR0ZXh0X2ZvbnRfc2l6ZV9sZztcbiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAwLjAzcmVtO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjJyZW07XG4gICAgICAgIH1cblxuICAgICAgICBpbWcge1xuICAgICAgICAgICAgd2lkdGg6IDUwcHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNTYwcHgpIHtcblxuICAgICAgICBoMSB7XG4gICAgICAgICAgICAvLyB3aWR0aDogNTAlO1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgZm9udC1zaXplOiAkaDFfZm9udF9zaXplXzU2MCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgLy8gbGluZS1oZWlnaHQ6IDEuMTU7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogJGxoX2gxO1xuICAgICAgICB9XG5cbiAgICAgICAgcCB7XG4gICAgICAgICAgICAvLyBmb250LXNpemU6IDE1cHg7XG4gICAgICAgICAgICAvLyBsaW5lLWhlaWdodDogMi4xNSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdCAhaW1wb3J0YW50O1xuICAgICAgICB9XG5cbiAgICAgICAgLnNsaWRlLXRpdGxlIHtcbiAgICAgICAgICAgIGhlaWdodDogY2FsYygxMDB2aCAtICg1MHB4ICsgNTBweCkpICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiBjYWxjKDUwcHggKyA1MHB4KTtcblxuICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMzBweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICB9XG4gICAgfVxuXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG5cbiAgICAgICAgLnNsaWRlLXRpdGxlIHtcbiAgICAgICAgICAgIGhlaWdodDogY2FsYygxMDB2aCAtICg1MHB4ICsgNTBweCkpICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiBjYWxjKDUwcHggKyA1MHB4KTtcblxuICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMzBweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICB9XG5cblxuICAgIH1cblxuICAgIC8vIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuXG4gICAgLy8gICAgIGgxIHtcbiAgICAvLyAgICAgICAgIC8vIHdpZHRoOiA1MCU7XG4gICAgLy8gICAgICAgICBtYXJnaW46IDA7XG4gICAgLy8gICAgICAgICBmb250LXNpemU6ICRoMV9mb250X3NpemVfNzY3ICFpbXBvcnRhbnQ7XG4gICAgLy8gICAgICAgICBsaW5lLWhlaWdodDogMS4xNTtcbiAgICAvLyAgICAgfVxuXG4gICAgLy8gICAgIHAge1xuICAgIC8vICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgIC8vICAgICAgICAgbGluZS1oZWlnaHQ6IDIuMTUgIWltcG9ydGFudDtcbiAgICAvLyAgICAgICAgIHRleHQtYWxpZ246IGxlZnQgIWltcG9ydGFudDtcbiAgICAvLyAgICAgfVxuXG4gICAgLy8gfVxufVxuXG4vL1BST1lFQ1RPUzpcbiNwcm9qZWN0cyB7XG4gICAgLmhlYWRlci10aXRsZSB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udF9mYW1pbHlfbWFpbjtcbiAgICAgICAgZm9udC1zaXplOiAkaDJfZm9udF9zaXplO1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgIH1cblxuICAgIC5wcm9qZWN0IHtcbiAgICAgICAgLmNhdGVnb3J5IHtcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udF9mYW1pbHlfbWFpbjtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJHRleHRfZm9udF9zaXplX2xnO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDIwMDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5wcm9qZWN0LWRlc2NyaXB0aW9uIHtcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udF9mYW1pbHlfbWFpbjtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS42cmVtO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5saW5rIHtcbiAgICAgICAgICAgIGNvbG9yOiAkc3Rlbi1yZWQ7XG4gICAgICAgICAgICBmb250LWZhbWlseTogJGZvbnRfZmFtaWx5X21haW47XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICAuYnRuLW91dGxpbmUtYmxhY2sge1xuICAgICAgICAgICAgZm9udC1zaXplOiAwLjgxMjVyZW07XG4gICAgICAgICAgICBwYWRkaW5nOiAycHggMTBweCAycHggMTBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5hcnJvdyB7XG4gICAgICAgICAgICBib3JkZXI6IHNvbGlkICRzdGVuLXJlZDtcbiAgICAgICAgICAgIGJvcmRlci13aWR0aDogMCAxLjVweCAxLjVweCAwO1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgcGFkZGluZzogNHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLnJpZ2h0IHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG4gICAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG4gICAgICAgIH1cblxuICAgICAgICAubGVmdCB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxMzVkZWcpO1xuICAgICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgxMzVkZWcpO1xuICAgICAgICB9XG5cbiAgICAgICAgLnVwIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC0xMzVkZWcpO1xuICAgICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgtMTM1ZGVnKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5kb3duIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmxpbmUtc2VwYXJhdG9yLWdyYXkge1xuICAgICAgICBoZWlnaHQ6IDhweDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0Y3RjdGNztcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgLnN1Yi1uYXYtbWVudSB7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgfVxuXG4gICAgLnNjcm9sbCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC45NSk7XG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgIG92ZXJmbG93LXg6IGF1dG87XG4gICAgICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgICAgICAgLW1zLW92ZXJmbG93LXN0eWxlOiAtbXMtYXV0b2hpZGluZy1zY3JvbGxiYXI7XG5cbiAgICAgICAgLmFjdGl2ZSB7XG4gICAgICAgICAgICBib3JkZXI6IDJweCBzb2xpZCAkc3Rlbi1yZWQgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5zY3JvbGw6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAuZG90LWNpcmNsZSxcbiAgICAuZG90LWNpcmNsZS1tb2RhbCB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgd2lkdGg6IDY1cHg7XG4gICAgICAgIGhlaWdodDogNjVweDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMTYwcHg7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMTVweDtcbiAgICAgICAgYm9yZGVyOiAycHggc29saWQgIzcwNzA3MDtcblxuICAgICAgICAuZG90LXRleHQge1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250X2ZhbWlseV9tYWluO1xuICAgICAgICAgICAgZm9udC1zaXplOiAwLjdyZW0gIWltcG9ydGFudDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgdGV4dC1vdmVyZmxvdzogRWxsaXBzaXM7XG4gICAgICAgICAgICAvKiB3aWxsIG1ha2UgWy4uLl0gYXQgdGhlIGVuZCAqL1xuICAgICAgICAgICAgd2lkdGg6IDYwcHg7XG4gICAgICAgICAgICAvKiBjaGFuZ2UgdG8geW91ciBwcmVmZXJlbmNlcyAqL1xuICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgICAgIC8qIHBhcmFncmFwaCB0byBvbmUgbGluZSAqL1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgIC8qIG9sZGVyIGJyb3dzZXJzICovXG4gICAgICAgIH1cblxuICAgICAgICAmLm5vdC12aXNpdGVkIHtcbiAgICAgICAgICAgIGJvcmRlcjogMnB4IHNvbGlkICNENzBEMTcgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgIH1cblxuXG4gICAgLmRvdC1jaXJjbGUtbW9kYWwge1xuICAgICAgICBib3JkZXI6IDJweCBzb2xpZCAkc3Rlbi1yZWQgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAubmF2LWl0ZW0ge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcblxuICAgICAgICBhOmxpbmssXG4gICAgICAgIGE6dmlzaXRlZCxcbiAgICAgICAgYTphY3RpdmUsXG4gICAgICAgIC5idG4tcHJvamVjdC1tb2RhbCB7XG4gICAgICAgICAgICBjb2xvcjogIzJFMkQyRDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICB3aWR0aDogNjFweDtcbiAgICAgICAgICAgIGhlaWdodDogNjFweDtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDE2MHB4O1xuICAgICAgICAgICAgYm9yZGVyOiA2cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAucHJvamVjdC1tb2RhbC1pdGVtIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzM5MzkzOTtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgaGVpZ2h0OiAxMDB2aDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgICBvdmVyZmxvdy14OiBoaWRkZW47XG4gICAgICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgICAgIG91dGxpbmU6IDA7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHotaW5kZXg6IDEwNTM7XG5cbiAgICAgICAgLmNvbnRhaW5lciB7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMHZoO1xuICAgICAgICB9XG5cbiAgICAgICAgLmNvbnRlbnQtY2VudGVyIHtcbiAgICAgICAgICAgIGhlaWdodDogNzV2aDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5saW5lLWdyYXkge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0RFREVERTtcbiAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgIGhlaWdodDogMjRweDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG5cbiAgICAgICAgLnByb2plY3QtZGV0YWlsIHtcbiAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5wcm9qZWN0LW1vZGFsLWNsb3NlIHtcbiAgICAgICAgICAgIGJvdHRvbTogMTVweDtcbiAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgICAgICAgIHJpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgei1pbmRleDogMTAwMDtcblxuICAgICAgICAgICAgZGl2IHtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCLDl1wiO1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDIuNXJlbTtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICNGRkY7XG4gICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAwcHg7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAudGl0bGUge1xuICAgICAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgIH1cblxuICAgICAgICAuY2F0ZWdvcnkge1xuICAgICAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjJyZW07XG4gICAgICAgICAgICBmb250LXdlaWdodDogMjAwO1xuICAgICAgICB9XG5cbiAgICAgICAgLmRlc2NyaXB0aW9uIHtcbiAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuOHJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5idG4tcmVkLFxuICAgICAgICAuYnRuLW91dGxpbmUtd2hpdGUge1xuICAgICAgICAgICAgZm9udC1zaXplOiAwLjhyZW07XG4gICAgICAgICAgICBwYWRkaW5nOiAzcHggMTVweCAzcHggMTVweDtcbiAgICAgICAgfVxuXG4gICAgICAgICNsaW5lLXNsaWRlIHtcbiAgICAgICAgICAgIG1hcmdpbjogLjVlbSAwIDFlbSAwO1xuICAgICAgICB9XG5cbiAgICAgICAgI2xpbmUtc2xpZGUgZGl2W2NsYXNzKj1saW5lLXNsaWRlXSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBoZWlnaHQ6IDJweDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5saW5lLXNsaWRlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSkgIWltcG9ydGFudDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5saW5lLXNsaWRlLmFjdGl2ZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjU1LCAyNTUsIDI1NSkgIWltcG9ydGFudDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5saW5lLXNsaWRlLmFjdGl2ZX4ubGluZS1zbGlkZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjU1LCAyNTUsIDI1NSwgMC41KSAhaW1wb3J0YW50O1xuICAgICAgICB9XG5cbiAgICAgICAgLnN3aXBlci1sZWZ0IHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDB2aDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICB6LWluZGV4OiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgLnN3aXBlci1yaWdodCB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIGhlaWdodDogMTAwdmg7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgIHotaW5kZXg6IDA7XG4gICAgICAgIH1cblxuICAgICAgICAubGluZXMtbmF2aWdhdGlvbntcblxuICAgICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgICAgICAgICBncmlkLWNvbHVtbi1nYXA6IDAuMmVtO1xuICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMSwgMWZyKTtcbiAgICAgICAgICAgIGhlaWdodDogMC4xZW07XG4gICAgICAgICAgICB0b3A6IDFlbTtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgICAgICAubGluZS1jb250YWluZXJ7XG5cbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwyNTUsMjU1LDAuMjUpO1xuICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcblxuICAgICAgICAgICAgICAgIC5saW5lLXByb2dyZXNze1xuXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAwJTtcblxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIEZpbHRybyBQcm95ZWN0XG5cbn1cblxuLy8gRmlyZWZveCBGaWx0cm9cblxuLy8gQC1tb3otZG9jdW1lbnQgdXJsLXByZWZpeCgpIHtcbi8vICAgICAjZmlsdGVyIHtcbi8vICAgICAgICAgbWFyZ2luOiAzcmVtIDByZW07XG5cbi8vICAgICAgICAgLS1zaXplLXRleHQ6IDI0cHg7XG4vLyAgICAgICAgIC0tc2l6ZS1idXR0b246IDE4cHg7XG5cbi8vICAgICAgICAgLy8gI2J1dHRvbSB7XG4vLyAgICAgICAgIC8vICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4vLyAgICAgICAgIC8vICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4vLyAgICAgICAgIC8vICAgICBib3R0b206IDEwcHg7XG5cbi8vICAgICAgICAgLy8gICAgIC5idXR0b24ge1xuLy8gICAgICAgICAvLyAgICAgICAgIGhlaWdodDogdmFyKC0tc2l6ZS1idXR0b24pO1xuLy8gICAgICAgICAvLyAgICAgICAgIHdpZHRoOiB2YXIoLS1zaXplLWJ1dHRvbik7XG4vLyAgICAgICAgIC8vICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuLy8gICAgICAgICAvLyAgICAgICAgIGJhY2tncm91bmQ6IHdoaXRlO1xuLy8gICAgICAgICAvLyAgICAgfVxuXG4vLyAgICAgICAgIC8vIH1cblxuXG4vLyAgICAgICAgICN0aXRsZSB7XG4vLyAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cbi8vICAgICAgICAgICAgIHAsXG4vLyAgICAgICAgICAgICBiIHtcbi8vICAgICAgICAgICAgICAgICBmb250LXNpemU6IHZhcigtLXNpemUtdGV4dCk7XG4vLyAgICAgICAgICAgICB9XG5cbi8vICAgICAgICAgfVxuXG4vLyAgICAgICAgICNzZWN0aW9ucywgI3NlY3Rpb24tZmlsdGVyLWl0ZW1zIHtcbi8vICAgICAgICAgICAgIG1hcmdpbjogMS41cmVtIDByZW07XG4vLyAgICAgICAgICAgICBwYWRkaW5nOiAwcmVtIDNyZW07XG5cbi8vICAgICAgICAgICAgIC50eXBlLXRpdGxlIHtcbi8vICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuLy8gICAgICAgICAgICAgICAgIGhlaWdodDogNjBweDtcblxuLy8gICAgICAgICAgICAgICAgIHAge1xuLy8gICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDI0cHg7XG4vLyAgICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxMjAlO1xuLy8gICAgICAgICAgICAgICAgIH1cbi8vICAgICAgICAgICAgIH1cblxuXG4vLyAgICAgICAgICAgICAuc2VjIHtcbi8vICAgICAgICAgICAgICAgICBtYXJnaW46IDEuNXJlbSAwcmVtO1xuLy8gICAgICAgICAgICAgICAgIC8vIG1hcmdpbi1yaWdodDogMjBweDtcbi8vICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4vLyAgICAgICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcblxuLy8gICAgICAgICAgICAgICAgIC5sYWJlbCB7XG4vLyAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDE1cHg7XG5cbi8vICAgICAgICAgICAgICAgICAgICAgbGFiZWwge1xuLy8gICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAxMHB4O1xuLy8gICAgICAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDFyZW07XG4vLyAgICAgICAgICAgICAgICAgICAgIH1cbi8vICAgICAgICAgICAgICAgICB9XG5cbi8vICAgICAgICAgICAgICAgICAuZm9ybS1jb250cm9sOmZvY3VzIHtcblxuLy8gICAgICAgICAgICAgICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAwICFpbXBvcnRhbnQ7XG5cbi8vICAgICAgICAgICAgICAgICB9XG5cbi8vICAgICAgICAgICAgICAgICAuZm9ybS1jb250cm9sIHtcbi8vICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbi8vICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAjMDAwMDAwO1xuLy8gICAgICAgICAgICAgICAgICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogNTBweCAhaW1wb3J0YW50O1xuLy8gICAgICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogNTBweCAhaW1wb3J0YW50O1xuLy8gICAgICAgICAgICAgICAgICAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiA1MHB4ICFpbXBvcnRhbnQ7XG4vLyAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDUwcHggIWltcG9ydGFudDtcblxuLy8gICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDQwcHg7XG4vLyAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgMjBweDtcbi8vICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuLy8gICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMi41IWltcG9ydGFudDtcbi8vICAgICAgICAgICAgICAgICB9XG5cbi8vICAgICAgICAgICAgICAgICAvLyAmLnNlYXJjaCB7XG4vLyAgICAgICAgICAgICAgICAgLy8gICAgIGlucHV0IHtcbi8vICAgICAgICAgICAgICAgICAvLyAgICAgICAgIGJvcmRlcjogMXB4IHJnYmEoMCwgMCwgMCwgMC4yNSkgc29saWQ7XG4vLyAgICAgICAgICAgICAgICAgLy8gICAgIH1cblxuLy8gICAgICAgICAgICAgICAgIC8vICAgICBpbnB1dDpmb2N1cyB7XG4vLyAgICAgICAgICAgICAgICAgLy8gICAgICAgICBib3JkZXI6IDFweCByZ2JhKDAsIDAsIDApIHNvbGlkO1xuLy8gICAgICAgICAgICAgICAgIC8vICAgICB9XG5cbi8vICAgICAgICAgICAgICAgICAvLyAgICAgLnN2Zy1zZWFyY2gge1xuLy8gICAgICAgICAgICAgICAgIC8vICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuLy8gICAgICAgICAgICAgICAgIC8vICAgICAgICAgd2lkdGg6IDI1cHg7XG4vLyAgICAgICAgICAgICAgICAgLy8gICAgICAgICBoZWlnaHQ6IDI1cHg7XG4vLyAgICAgICAgICAgICAgICAgLy8gICAgICAgICB0b3A6IDEycHg7XG4vLyAgICAgICAgICAgICAgICAgLy8gICAgICAgICByaWdodDogNDBweDtcbi8vICAgICAgICAgICAgICAgICAvLyAgICAgICAgIHRyYW5zZm9ybTogc2NhbGVYKC0xKTtcbi8vICAgICAgICAgICAgICAgICAvLyAgICAgfVxuLy8gICAgICAgICAgICAgICAgIC8vIH1cbi8vICAgICAgICAgICAgIH1cblxuLy8gICAgICAgICB9XG5cblxuLy8gICAgICAgICAuc2VhcmNoIHtcbi8vICAgICAgICAgICAgIGlucHV0OmZvY3VzIHtcbi8vICAgICAgICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4vLyAgICAgICAgICAgICB9XG5cbi8vICAgICAgICAgfVxuXG4vLyAgICAgICAgIEBtZWRpYShtYXgtd2lkdGg6IDU2MHB4KSB7XG4vLyAgICAgICAgICAgICAjYnV0dG9tIHtcbi8vICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4vLyAgICAgICAgICAgICB9XG4vLyAgICAgICAgIH1cbi8vICAgICB9XG4vLyB9XG5cbi8vIENocm9tZSBGaWx0cm9cblxuI2ZpbHRlciB7XG4gICAgbWFyZ2luOiAzcmVtIDByZW07XG5cbiAgICAtLXNpemUtdGV4dDogMjRweDtcbiAgICAtLXNpemUtYnV0dG9uOiAyMHB4O1xuXG4gICAgICAgICNidXR0b20ge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlIWltcG9ydGFudDtcbiAgICAgICAgICAgIGJvdHRvbTogMnB4IWltcG9ydGFudDtcblxuICAgICAgICAgICAgLmJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgIGJvcmRlcjogZ3JheSAycHggc29saWQ7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiB2YXIoLS1zaXplLWJ1dHRvbik7XG4gICAgICAgICAgICAgICAgd2lkdGg6IHZhcigtLXNpemUtYnV0dG9uKTtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogd2hpdGU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgLy8gLy8gRmlyZUZveFxuICAgIEAtbW96LWRvY3VtZW50IHVybC1wcmVmaXgoKSB7XG5cbiAgICAgICAgI2J1dHRvbSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBib3R0b206IDEwcHg7XG5cbiAgICAgICAgICAgIC5idXR0b24ge1xuICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgIH1cblxuICAgICN0aXRsZSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuICAgICAgICBwLFxuICAgICAgICBiIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogdmFyKC0tc2l6ZS10ZXh0KTtcbiAgICAgICAgfVxuXG4gICAgfVxuXG4gICAgLmZpbHRlci1idXR0b257XG5cbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAtLXNpemUtYnV0dG9uOiAyMHB4O1xuICAgICAgICAtLXNpemUtdGV4dDogMjRweDtcblxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNTYwcHgpe1xuICAgICAgICAgICAgLS1zaXplLWJ1dHRvbjogMTZweDtcbiAgICAgICAgICAgIC0tc2l6ZS10ZXh0OiAyMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLmZpbHRlci1jaXJjbGUge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgICAgICAgIGJvcmRlcjogMnB4IHNvbGlkIGdyYXk7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgICAgICBoZWlnaHQ6IHZhcigtLXNpemUtYnV0dG9uKTtcbiAgICAgICAgICAgIG1hcmdpbjogMHB4IDRweDtcbiAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgICAgICAgICB3aWR0aDogdmFyKC0tc2l6ZS1idXR0b24pO1xuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAuZmlsdGVyLXRleHQge1xuICAgICAgICAgICAgZm9udC1zaXplOiB2YXIoLS1zaXplLXRleHQpO1xuICAgICAgICB9XG5cbiAgICB9XG5cblxuICAgICNzZWN0aW9ucywgI3NlY3Rpb24tZmlsdGVyLWl0ZW1zIHtcbiAgICAgICAgbWFyZ2luOiAxLjVyZW0gMHJlbTtcbiAgICAgICAgcGFkZGluZzogMHJlbSAzcmVtO1xuXG4gICAgICAgIC50eXBlLXRpdGxlIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBoZWlnaHQ6IDYwcHg7XG5cbiAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogJHRleHRfZm9udF9zaXplX2xnO1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAkbGhfcDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG5cbiAgICAgICAgLnNlYyB7XG4gICAgICAgICAgICBtYXJnaW46IDEuNXJlbSAwcmVtO1xuICAgICAgICAgICAgLy8gbWFyZ2luLXJpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcblxuICAgICAgICAgICAgLmxhYmVsIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxNXB4O1xuXG4gICAgICAgICAgICAgICAgbGFiZWwge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDEwcHg7XG4gICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAkbGhfcDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5mb3JtLWNvbnRyb2w6Zm9jdXMge1xuXG4gICAgICAgICAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgMCAhaW1wb3J0YW50O1xuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5mb3JtLWNvbnRyb2wge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAjMDAwMDAwO1xuICAgICAgICAgICAgICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiA1MHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDUwcHggIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiA1MHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogNTBweCAhaW1wb3J0YW50O1xuXG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA0MHB4O1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgMjBweDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6ICR0ZXh0X2ZvbnRfc2l6ZV9tZDtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMi41IWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5zZWFyY2gge1xuICAgICAgICAgICAgICAgIGlucHV0IHtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiAxcHggcmdiYSgwLCAwLCAwLCAwLjI1KSBzb2xpZDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBpbnB1dDpmb2N1cyB7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlcjogMXB4IHJnYmEoMCwgMCwgMCkgc29saWQ7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLnN2Zy1zZWFyY2gge1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAyNXB4O1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDQwcHg7XG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAuNzVlbTtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgICAgICAvLy8gdG9wOiAtNTAlO1xuICAgICAgICAgICAgICAgICAgICAvLy8gdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgICAgICAgICAgICAgICAvLyB0cmFuc2Zvcm06IHNjYWxlWCgtMSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICB9XG5cblxuICAgIC5zZWFyY2gge1xuICAgICAgICBpbnB1dDpmb2N1cyB7XG4gICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAbWVkaWEobWF4LXdpZHRoOiA1NjBweCkge1xuICAgICAgICAjYnV0dG9tIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLy9QUk9ZRUNUTyAtIERFVEFMTEU6XG4jcHJvamVjdCB7XG4gICAgLnNsaWRlLXRpdGxlIHtcbiAgICAgICAgLnRpdGxlIHtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBoMiB7XG4gICAgICAgIGZvbnQtc2l6ZTogJGgyX2ZvbnRfc2l6ZTtcbiAgICAgICAgZm9udC13ZWlnaHQ6ICRoMl9mb250X3dlaWdodCAhaW1wb3J0YW50O1xuICAgICAgICBsaW5lLWhlaWdodDogJGxoX2gyO1xuICAgICAgICBmb250LWZhbWlseTogJGZvbnRfZmFtaWx5X2gyICFpbXBvcnRhbnQ7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDI1cHg7XG4gICAgICAgIC8vIHdpZHRoOiA4MCU7XG4gICAgICAgIC8vIG1hcmdpbjogYXV0bztcbiAgICB9XG5cbiAgICAvLyAxMi0yMDIzIExsdWlzIC0+IGVsIHRleHRvIHAgZXN0YSBtdXkgcGVxdWXDsW9cbiAgICAvLyAjZGVzY3JpcGNpb24sXG4gICAgLy8gI3NvbHVjaW9uIHtcbiAgICAvLyAgICAgcCB7XG4gICAgLy8gICAgICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgLy8gICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIC8vICAgICAgICAgLy8gd2lkdGg6IDgwJTtcbiAgICAvLyAgICAgICAgIC8vIG1hcmdpbjogYXV0bztcbiAgICAvLyAgICAgfVxuICAgIC8vIH1cblxuICAgICNlc3BlY2lmaWNhY2lvbi1sYXJnZSB7XG4gICAgICAgIHAge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgIH1cblxuICAgICAgICBoMyB7XG4gICAgICAgICAgICBmb250LWZhbWlseTogJGZvbnRfZmFtaWx5X21haW47XG4gICAgICAgICAgICBmb250LXNpemU6IDMycHg7XG4gICAgICAgICAgICBmb250LXdlaWdodDogJGZ3X21lZDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDI1cHg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLy8gMTItMjAyMyBMbHVpcyAtPiBlbCB0ZXh0byBwIGVzdGEgbXV5IHBlcXVlw7FvXG4gICAgLy8gI2Rlc2NyaXBjaW9uLFxuICAgIC8vICNzb2x1Y2lvbiB7XG4gICAgLy8gICAgIHAge1xuICAgIC8vICAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgIC8vICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAvLyAgICAgfVxuICAgIC8vIH1cblxuICAgICNlc3BlY2lmaWNhY2lvbi1sYXJnZSB7XG4gICAgICAgIFxuICAgICAgICAuZXhwZXJpZW5jaWEtdmFsdWV7XG4gICAgICAgICAgICBtYXJnaW46IGF1dG87XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDI2cmVtO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICB9XG5cbiAgICAgICAgLmFyZWEge1xuICAgICAgICAgICAgZm9udC1zaXplOiAkdGV4dF9mb250X3NpemVfbGc7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMTA1JTtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAyLjVyZW07XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMC40cmVtO1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250X2ZhbWlseV9tYWluO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6ICRmd19tZWQ7XG4gICAgICAgIH1cbiAgICBcbiAgICAgICAgLnZhbHVlIHtcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udF9mYW1pbHlfbWFpbjtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZndfbWVkO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEwNSU7XG4gICAgICAgICAgICBmb250LXNpemU6IDIuMXJlbTtcbiAgICAgICAgfVxuXG4gICAgfVxufVxuXG4vL0VOQ09GUkFET1M6XG5ALW1vei1kb2N1bWVudCB1cmwtcHJlZml4KCkge1xuICAgIC5sb2dvLXdvLXBhZGRpbmcge1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdGV4dC1ib3R0b20gIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAud2l0aC1wYWRkaW5nIHtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lICFpbXBvcnRhbnQ7XG4gICAgfVxufVxuXG4jZW5jb2ZyYWRvcyB7XG5cbiAgICBmb3JtIGxhYmVsLFxuICAgIGZvcm0gaW5wdXQsXG4gICAgZm9ybSB0ZXh0YXJlYSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMC44MzMzcmVtICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgZm9ybSAuZm9ybS1jb250cm9sIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgfVxuXG4gICAgLy8gZm9ybSAuYnRuLWZvcm0ge1xuICAgIC8vICAgICBwYWRkaW5nOiAwLjJyZW0gNDAlICFpbXBvcnRhbnQ7XG4gICAgLy8gfVxuICAgIC5oZWFkZXItdGl0bGUge1xuICAgICAgICBmb250LXNpemU6IDJyZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgfVxuXG4gICAgLnN1YnRpdGxlIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgfVxuXG4gICAgLmRlc2NyaXB0aW9uIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICBmb250LWZhbWlseTogJGZvbnRfZmFtaWx5X21haW47XG4gICAgfVxuXG4gICAgLmRlc2NyaXB0aW9uX2N3IHtcbiAgICAgICAgd2lkdGg6IDQyJTtcbiAgICAgICAgbWFyZ2luOiA1cHggYXV0byAyMHB4IGF1dG87XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgICB9XG5cblxuXG4gICAgLmJnLXdoaXRlIHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgICB9XG5cbiAgICAuaWNvbm8ge1xuICAgICAgICBoZWlnaHQ6IDEwMHB4O1xuICAgICAgICB3aWR0aDogMTAwcHg7XG4gICAgfVxuXG4gICAgLmxvZ28ge1xuICAgICAgICBtYXgtaGVpZ2h0OiAycmVtO1xuICAgICAgICAvKiBtYXgtd2lkdGg6IDEzcmVtOyAqL1xuICAgIH1cblxuICAgIC5sb2dvLXctcGFkZGluZyB7XG4gICAgICAgIG1heC1oZWlnaHQ6IGNhbGMoKDM2cHgqMTE2LjUpLzEwMCk7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiBjYWxjKCgzNnB4KjI0LjUpLzEwMCk7XG4gICAgfVxuXG4gICAgLmxvZ28td28tcGFkZGluZyB7XG4gICAgICAgIG1heC1oZWlnaHQ6IGNhbGMoKDM2cHgqMTE2LjUpLzEwMCk7XG4gICAgfVxuXG4gICAgLmxpbmUtZ3JheSB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZTdlN2U3O1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICAubGluayB7XG4gICAgICAgIGNvbG9yOiAkc3Rlbi1yZWQ7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udF9mYW1pbHlfbWFpbjtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIH1cblxuICAgIC5tLWdyYXkge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjdGN0Y3O1xuICAgICAgICBoZWlnaHQ6IDZyZW07XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgIC5hcnJvdyB7XG4gICAgICAgIGJvcmRlcjogc29saWQgJHN0ZW4tcmVkO1xuICAgICAgICBib3JkZXItd2lkdGg6IDAgMS41cHggMS41cHggMDtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBwYWRkaW5nOiA0cHg7XG4gICAgfVxuXG4gICAgLnRyaWFuZ3VsbyB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgd2lkdGg6IDA7XG4gICAgICAgIGhlaWdodDogMDtcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDhweCBzb2xpZCB3aGl0ZTtcbiAgICAgICAgYm9yZGVyLXRvcDogNXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICBib3JkZXItYm90dG9tOiA1cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiA1cHg7XG4gICAgfVxuXG4gICAgLnJpZ2h0IHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xuICAgIH1cblxuICAgIC5sZWZ0IHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTM1ZGVnKTtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgxMzVkZWcpO1xuICAgIH1cblxuICAgIC51cCB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC0xMzVkZWcpO1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKC0xMzVkZWcpO1xuICAgIH1cblxuICAgIC5kb3duIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgICB9XG5cbiAgICBoMSB7XG4gICAgICAgIGNvbG9yOiAjMzEzMTMxO1xuICAgICAgICAvLyBmb250LXNpemU6ICRoMV9mb250X3NpemU7ICAgLy9Db252ZXJ0IDMuNDNyZW1cbiAgICAgICAgZm9udC13ZWlnaHQ6ICRoMV9mb250X3dlaWdodDtcbiAgICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udF9mYW1pbHlfaDE7XG4gICAgfVxuXG4gICAgaDIge1xuICAgICAgICBmb250LXNpemU6ICRoMl9mb250X3NpemU7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udF9mYW1pbHlfaDI7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAkZndfbWVkO1xuICAgIH1cblxuICAgIC8qXG4gICAgZC1mbGV4ID4gYWd1c3RpblxuICAgIGltZyB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH0gKi9cbiAgICAuYnIge1xuICAgICAgICBib3JkZXItcmFkaXVzOiAzMHB4O1xuICAgIH1cblxuICAgIC5kZXRhaWwtZGVzYyB7XG4gICAgICAgIGNvbG9yOiAjNzA3MDcwO1xuICAgIH1cblxuICAgIC5kZXRhaWwtZGVzYyB7XG4gICAgICAgIC5jYXRlZ29yeSB7XG4gICAgICAgICAgICBjb2xvcjogIzcwNzA3MDtcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udF9mYW1pbHlfbWFpbjtcbiAgICAgICAgfVxuXG4gICAgICAgIC52YWx1ZSB7XG4gICAgICAgICAgICBjb2xvcjogIzMxMzEzMTtcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udF9mYW1pbHlfbWFpbjtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMi44cmVtO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMi44cmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgLnVuaXQge1xuICAgICAgICAgICAgY29sb3I6ICMzMTMxMzE7XG4gICAgICAgICAgICBmb250LWZhbWlseTogJGZvbnRfZmFtaWx5X21haW47XG4gICAgICAgICAgICBmb250LXNpemU6ICR0ZXh0X2ZvbnRfc2l6ZV9sZztcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICB9XG5cbiAgICAgICAgLmRldGFpbCB7XG4gICAgICAgICAgICBjb2xvcjogIzcwNzA3MDtcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udF9mYW1pbHlfbWFpbjtcbiAgICAgICAgfVxuXG4gICAgICAgIC5saW5lLWJsYWNrIHtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDNweCBzb2xpZCAjMzEzMTMxO1xuICAgICAgICAgICAgd2lkdGg6IDQwcHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAucHJvZHVjdC1pbWcge1xuICAgICAgICBtYXJnaW46IGF1dG87XG4gICAgICAgIG1heC13aWR0aDogMjE1cHg7XG4gICAgICAgIHBhZGRpbmctdG9wOiAxNXB4O1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5hbGlnbi1ib3R0b20ge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgIG1heC13aWR0aDogMzgwcHg7XG4gICAgICAgIH1cblxuICAgICAgICAmLndpZHRoLTM1MCB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDM1MHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgJi53aWR0aC02MDAge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiA2MDBweDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgI2VzcGVjaWFsZXMge1xuICAgICAgICBcbiAgICAgICAgLm1heC13LWN1c3RvbSB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDE3LjMzM3JlbTtcblxuICAgICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnRleHQtY2VudGVyLWN1c3RvbSB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuXG4gICAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvKiBoMntcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJGgyX2ZvbnRfc2l6ZTtcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udF9mYW1pbHlfbWFpbjtcbiAgICAgICAgfSAqL1xuXG4gICAgICAgIC5idG4tcmVkLXNsaWRlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRzdGVuLXJlZDtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDMwcHggIWltcG9ydGFudDtcbiAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgICAgICAgIC8qIHBhZGRpbmc6IDAuMnJlbSAwLjc1cmVtOyAqL1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMXJlbTtcblxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHN0ZW4tcmVkLWhvdmVyICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuYmctd2hpdGUge1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTVweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5zbGlkZS1kZXRhbGxlcyB7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAgICAgLnNjcm9sbCB7XG4gICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICAgICAgb3ZlcmZsb3cteDogYXV0bztcbiAgICAgICAgICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgICAgICAgICAgIC1tcy1vdmVyZmxvdy1zdHlsZTogLW1zLWF1dG9oaWRpbmctc2Nyb2xsYmFyO1xuXG4gICAgICAgICAgICBwLFxuICAgICAgICAgICAgaDIge1xuICAgICAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5kZXNjcmlwdGlvbiB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5zZWN0aW9uIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxNXB4O1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDgwcHggMjBweCA4MHB4IDIwcHg7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDgwJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5zY3JvbGw6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuY2Fyb3VzZWwtaGVhZGVyIHtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICB9XG5cbiAgICAuY2Fyb3VzZWwge1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgICAgIC5vcGFjaXR5IHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDAuNTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5zY3JvbGwge1xuICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgICAgIG92ZXJmbG93LXg6IGF1dG87XG4gICAgICAgICAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gICAgICAgICAgICAtbXMtb3ZlcmZsb3ctc3R5bGU6IC1tcy1hdXRvaGlkaW5nLXNjcm9sbGJhcjtcblxuICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmNhcm91c2VsLXNlY3Rpb24ge1xuICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxNXB4O1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxOCU7XG5cbiAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICAgICAgICAgICAgICAgICAgICBtYXgtaGVpZ2h0OiA3NHB4O1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuc2Nyb2xsOjotd2Via2l0LXNjcm9sbGJhciB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmNhdGFsb2dvIHtcbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIG1heC13aWR0aDogMjMwcHg7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuICAgIH1cblxuXG4gICAgLnNsaWRlLXRpdGxlIHtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBoZWlnaHQ6IDEwMHZoO1xuICAgICAgICAvLyBoZWlnaHQ6IDgwdmg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgLXdlYmtpdC1ib3gtcGFjazogY2VudGVyO1xuICAgICAgICAtbXMtZmxleC1wYWNrOiBjZW50ZXI7XG4gICAgICAgIC13ZWJraXQtanVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIC13ZWJraXQtYm94LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIC1tcy1mbGV4LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIC13ZWJraXQtYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHotaW5kZXg6IDI7XG5cbiAgICAgICAgLnRpdGxlIHtcbiAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udF9mYW1pbHlfbWFpbjtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJHRleHRfZm9udF9zaXplX2xnO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5zdWJ0aXRsZSB7XG4gICAgICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgICAgICBmb250LWZhbWlseTogJGZvbnRfZmFtaWx5X21haW47XG4gICAgICAgICAgICBmb250LXNpemU6IDIuNXJlbTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyLjVyZW07XG4gICAgICAgICAgICBmb250LXdlaWdodDogJGZ3X21lZDtcbiAgICAgICAgICAgIG1heC13aWR0aDogNDByZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAbWVkaWEgKHdpZHRoIDwgNzYwcHgpIHtcbiAgICAgICAgLnNsaWRlLXRpdGxlIHtcbiAgICAgICAgICAgIGhlaWdodDogODB2aCAhaW1wb3J0YW50O1xuXG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyAuc2xpZGVyLW11cm9zLXktcGlsYXJlcyB7XG4gICAgLy8gICAgIG1hcmdpbi1sZWZ0OiA1NzAuNXB4O1xuICAgIC8vIH1cblxufVxuXG4jZm9ybS1wcm9kdWN0IHtcbiAgICBoMiB7XG4gICAgICAgIGZvbnQtc2l6ZTogJGgyX2ZvbnRfc2l6ZTtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRmb250X2ZhbWlseV9oMjtcbiAgICB9XG59XG5cbi8vIEVOQ09GUkFET1MgREVTVEFDQURPUzpcbiNzbGlkZXItZGVzdGFjYWRvcyB7XG4gICAgLmxvZ28tdy1wYWRkaW5nIHtcbiAgICAgICAgbWF4LWhlaWdodDogY2FsYygoMzZweCoxMTYuNSkvMTAwKTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IGNhbGMoKDM2cHgqMjQuNSkvMTAwKTtcbiAgICB9XG5cbiAgICAubG9nby13by1wYWRkaW5nIHtcbiAgICAgICAgbWF4LWhlaWdodDogY2FsYygoMzZweCoxMTYuNSkvMTAwKTtcbiAgICB9XG5cbiAgICAudG5zLW91dGVyIDpkaXNhYmxlZCB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgfVxufVxuXG4vLyAjc2xpZGVyLWRlc3RhY2Fkb3MgPiAudG5zLWl0ZW0ge1xuLy8gICAgIHBhZGRpbmctbGVmdDogMTBweDtcbi8vIH1cblxuXG5cbi8vTk9USUNJQVM6XG4jbm90aWNpYXMge1xuICAgIGxpbmUtaGVpZ2h0OiAxcmVtO1xuICAgIG1hcmdpbi10b3A6IDEwMHB4O1xuXG4gICAgaDIge1xuICAgICAgICBmb250LXNpemU6ICRoMl9mb250X3NpemU7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAkaDJfZm9udF93ZWlnaHQ7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAkbGhfaDI7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udF9mYW1pbHlfaDIgIWltcG9ydGFudDtcbiAgICAgICAgLy8gd2lkdGg6IDgwMHB4O1xuICAgICAgICAvLyBtYXJnaW46IGF1dG87XG4gICAgfVxuXG4gICAgI3NsaWRlci1ub3RpY2lhcyB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAuc2xpZGVyLXRleHQge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiA3MDBweDtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICB9XG5cbiAgICAgICAgQG1lZGlhKG1heC13aWR0aDogOTkycHgpIHtcbiAgICAgICAgICAgIC5zbGlkZXItdGV4dCB7XG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6ICRsaF9wO1xuICAgICAgICB9XG5cbiAgICAgICAgLmJ0bi5zbWFsbC10YWcge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxMDUlO1xuICAgICAgICB9XG5cbiAgICAgICAgLm15LW1kLTIgYSB7XG4gICAgICAgICAgICBmb250LXNpemU6ICR0ZXh0X2ZvbnRfc2l6ZV94cztcbiAgICAgICAgICAgIC8vIG1hcmdpbi1sZWZ0OiAyMDVweDtcblxuICAgICAgICB9XG5cbiAgICAgICAgcCB7XG4gICAgICAgICAgICBmb250LXNpemU6ICR0ZXh0X2ZvbnRfc2l6ZV9sZztcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogJGxoX3A7XG4gICAgICAgICAgICAvLyBtYXJnaW4tYm90dG9tOiAyNXB4O1xuICAgICAgICAgICAgLy8gd2lkdGg6IDgwMHB4O1xuICAgICAgICAgICAgLy8gbWFyZ2luOiBhdXRvO1xuICAgICAgICB9XG5cbiAgICAgICAgaDUge1xuICAgICAgICAgICAgLy8gZm9udC13ZWlnaHQ6ICRoMl9mb250X3dlaWdodDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAkbGhfaDI7XG4gICAgICAgICAgICBmb250LWZhbWlseTogJGZvbnRfZmFtaWx5X21haW4gIWltcG9ydGFudDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDI1cHg7XG4gICAgICAgICAgICBmb250LXNpemU6ICRoNV9mb250X3NpemU7XG4gICAgICAgICAgICAvLyBtYXJnaW46IGF1dG87XG4gICAgICAgICAgICAvLyB3aWR0aDogODAwcHg7XG5cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5oZWFkZXItdGl0bGUge1xuICAgICAgICBmb250LWZhbWlseTogJGZvbnRfZmFtaWx5X21haW47XG4gICAgICAgIGZvbnQtc2l6ZTogJGgyX2ZvbnRfc2l6ZTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICB9XG5cbiAgICAubm90aWNpYSB7XG4gICAgICAgIC5jYXJkLWltZy10b3Age1xuICAgICAgICAgICAgLy8gYm9yZGVyLXJhZGl1czogMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDE1cHg7XG4gICAgICAgICAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAxNXB4O1xuICAgICAgICB9XG5cbiAgICAgICAgaDMge1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250X2ZhbWlseV9tYWluO1xuICAgICAgICAgICAgZm9udC1zaXplOiAyMnB4O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6ICRmd19tZWQ7XG4gICAgICAgIH1cblxuICAgICAgICBhIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogJGxoX3A7XG4gICAgICAgIH1cblxuICAgICAgICBwLFxuICAgICAgICBhLmJ0bixcbiAgICAgICAgc3Bhbi5idG4ge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgICAgICAgICAvKiBtYXJnaW4tYm90dG9tOiAyMHB4OyAqL1xuXG4gICAgICAgICAgICAmLnNtYWxsLCAmLnNtYWxsLXRhZ3tcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuY2F0ZWdvcnkge1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250X2ZhbWlseV9tYWluO1xuICAgICAgICAgICAgZm9udC1zaXplOiAkdGV4dF9mb250X3NpemVfbGc7XG4gICAgICAgICAgICBmb250LXdlaWdodDogMjAwO1xuICAgICAgICB9XG5cbiAgICAgICAgLnByb2plY3QtZGVzY3JpcHRpb24ge1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250X2ZhbWlseV9tYWluO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICB9XG5cbiAgICAgICAgLmxpbmsge1xuICAgICAgICAgICAgY29sb3I6ICRzdGVuLXJlZDtcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udF9mYW1pbHlfbWFpbjtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIFNlY2Npb24gc2xpZGVyXG4gICAgLnNsaWRlci1jb250ZW50IHtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDFyZW07XG4gICAgfVxuXG4gICAgLnNsaWRlci10aXRsZSB7XG4gICAgICAgIG1heC13aWR0aDogMTZjaDtcbiAgICB9XG5cbiAgICAudmgtODUge1xuICAgICAgICBtaW4taGVpZ2h0OiA4NXZoO1xuICAgIH1cblxuICAgIC5idG4tcHJvamVjdCB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgLy8gbWFyZ2luLWxlZnQ6IDI1MHB4O1xuXG4gICAgfVxuXG4gICAgLmgxLXhsIHtcbiAgICAgICAgZm9udC1zaXplOiAzZW07XG4gICAgICAgIG1hcmdpbjogMC41ZW0gMDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAkbGhfaDE7XG4gICAgfVxuXG4gICAgLmljb24tZm9udC1mYS1zaXplIHtcbiAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgIH1cblxuICAgIC5oZWFkZXItYmcge1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uLXg6IGNlbnRlcjtcbiAgICAgICAgLy8gaGVpZ2h0OiA3NXZoO1xuICAgICAgICBtaW4taGVpZ2h0OiA1NXZoO1xuICAgIH1cblxuICAgIC50bnMtbmF2IHtcbiAgICAgICAgZGlzcGxheTogYmxvY2shaW1wb3J0YW50O1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIG1hcmdpbjogMXJlbSAwO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgIH1cblxuICAgIC50bnMtbmF2PlthcmlhLWNvbnRyb2xzXSB7XG4gICAgICAgIHdpZHRoOiAwLjc1cmVtO1xuICAgICAgICBoZWlnaHQ6IDAuNzVyZW07XG4gICAgICAgIHBhZGRpbmc6IDA7IFxuICAgICAgICBtYXJnaW46IDAgM3B4O1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgICAgIGJvcmRlcjogc29saWQgMXB4ICM3MDcwNzA7XG4gICAgfVxuXG4gICAgLnRucy1uYXY+LnRucy1uYXYtYWN0aXZlIHtcbiAgICAgICAgYmFja2dyb3VuZDogIzcwNzA3MDtcbiAgICB9XG5cbiAgICAvLyBTZWNjaW9uIGRlIGxhcyB0YXJqZXRhc1xuICAgIC5ib3JkZXItY29sb3ItZ3JheS1zMSB7XG4gICAgICAgIGJvcmRlcjogc29saWQgZ3JheTtcbiAgICAgICAgYm9yZGVyLXdpZHRoOiAwcHggMXB4O1xuICAgIH1cblxuICAgIC5ib3JkZXItY29sb3ItZ3JheS1zMiB7XG4gICAgICAgIGJvcmRlcjogc29saWQgZ3JheTtcbiAgICAgICAgYm9yZGVyLXdpZHRoOiAwcHggMXB4IDFweCAxcHg7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDBweCAwcHggMTVweCAxNXB4O1xuXG4gICAgICAgIC5oNSB7XG4gICAgICAgICAgICAvLyBtYXJnaW4tYm90dG9tOiAyMHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBtYXJnaW46IDIwcHggMHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuY2FyZC1jb2x1bW5zIHtcbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1vbmx5KHNtKSB7XG4gICAgICAgICAgICBjb2x1bW4tY291bnQ6IDI7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LW9ubHkobWQpIHtcbiAgICAgICAgICAgIGNvbHVtbi1jb3VudDogMjtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtb25seShsZykge1xuICAgICAgICAgICAgY29sdW1uLWNvdW50OiAyO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1vbmx5KHhsKSB7XG4gICAgICAgICAgICBjb2x1bW4tY291bnQ6IDM7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LW9ubHkoeHhsKSB7XG4gICAgICAgICAgICBjb2x1bW4tY291bnQ6IDM7XG4gICAgICAgIH1cblxuICAgICAgICAuY2FyZCB7XG4gICAgICAgICAgICAuYnRuIHtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5nYWxsZXJ5LWRhdGEtZ3JpZC1jZW50ZXIge1xuICAgICAgICAgICAgZGlzcGxheTogZ3JpZCFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xuICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiAxZnI7XG4gICAgICAgICAgICBncmlkLWNvbHVtbi1nYXA6IDBweDtcbiAgICAgICAgICAgIGdyaWQtcm93LWdhcDogMHB4O1xuICAgICAgICB9XG4gICAgICAgIC5nYWxsZXJ5LWRhdGEtZ3JpZC1pdGVtLXBvc2l0aW9uIHtcbiAgICAgICAgICAgIGdyaWQtY29sdW1uOiAxIC8gLTE7XG4gICAgICAgICAgICBncmlkLXJvdzogMSAvIC0xO1xuICAgICAgICB9XG5cbiAgICAgICAgI2xpbmstY29udGFpbmVyIHtcbiAgICAgICAgICAgIHotaW5kZXg6IDk7XG4gICAgICAgIH1cbiAgICAgICAgLmdhbGxlcnktaXRlbS1idXR0b25ze1xuICAgICAgICAgICAgei1pbmRleDogMTk7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZXtcbiAgICAgICAgXG4gICAgICAgIHBhZGRpbmc6IDAhaW1wb3J0YW50O1xuICAgICAgICBib3JkZXItcmFkaXVzOiAyNHB4ICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgLnNlbGVjdDItc2VsZWN0aW9uX19jaG9pY2V7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA5OTlyZW07XG4gICAgICAgICAgICBwYWRkaW5nOiAycHggMjRweCAhaW1wb3J0YW50O1xuXG4gICAgICAgICAgICAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Nob2ljZV9fcmVtb3ZlIHtcbiAgICAgICAgICAgICAgICBib3JkZXItcmlnaHQ6IG5vbmUhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICBsZWZ0OiAycHghaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxcHgpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnNlbGVjdDItc2VhcmNoLS1pbmxpbmUge1xuICAgICAgICAgICAgXG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS40O1xuXG4gICAgICAgICAgICBpbnB1dC5zZWxlY3QyLXNlYXJjaF9fZmllbGQge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDJweCAwO1xuICAgICAgICAgICAgICAgIGJvcmRlcjogbm9uZSFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgfVxufVxuXG4jbm90aWNpYSB7XG5cbiAgICBtYXJnaW4tdG9wOiAxMTBweDtcblxuICAgIC5ycnNzIGltZyB7XG4gICAgICAgIGhlaWdodDogMS41ZW07XG4gICAgfVxuICAgIC5zbWFsbC10ZXh0IHtcbiAgICAgICAgZm9udC1zaXplOiAwLjhlbTtcbiAgICB9XG4gICAgLm1heC1oLTQwIHtcbiAgICAgICAgbWF4LWhlaWdodDogNDBlbTtcbiAgICB9XG4gICAgLm1pbi1oLTIwe1xuICAgICAgICBtaW4taGVpZ2h0OiAyMGVtO1xuICAgIH1cbiAgICAubWF4LWgtNDgge1xuICAgICAgICBtYXgtaGVpZ2h0OiA0OGVtO1xuICAgIH1cbiAgICAucmVzcG9uc2l2ZSB7XG4gICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgfVxuICAgIC5kZXNjcmlwdGlvbiBoMyB7XG4gICAgICAgIG1hcmdpbi10b3A6IDEuNWVtO1xuICAgIH1cbiAgICAuaC05MCB7XG4gICAgICAgIGhlaWdodDogOTAlO1xuICAgIH1cbiAgICAuaC0xMCB7XG4gICAgICAgIGhlaWdodDogMTAlO1xuICAgIH1cbiAgICAuY3JlYXRlLWNvbnRlbnQtbmV3cyAubmF2LWxpbms6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTllY2VmO1xuICAgIH1cbiAgICBcbiAgICAuaW5wdXRmaWxlIHtcbiAgICAgICAgd2lkdGg6IDAuMXB4O1xuICAgICAgICBoZWlnaHQ6IDAuMXB4O1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHotaW5kZXg6IC0xO1xuICAgIH1cblxuICAgIGltZy5jYW4tZWRpdC1pbWcge1xuICAgICAgICBcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgZmlsdGVyOiBicmlnaHRuZXNzKDg1JSk7XG4gICAgICAgIH1cbiAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICBvdXRsaW5lOiAxcHggZG90dGVkICMwMDA7XG4gICAgICAgICAgICBvdXRsaW5lOiAtd2Via2l0LWZvY3VzLXJpbmctY29sb3IgYXV0byA1cHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLm5vdGljaWEtY3VzdG9tLXdpZHRoIC5jb250YWluZXIge1xuICAgICAgICBtYXgtd2lkdGg6IDk1MHB4IWltcG9ydGFudDtcbiAgICB9XG5cbiAgICBoMSB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAkaDFfZm9udF93ZWlnaHQ7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udF9mYW1pbHlfaDE7XG4gICAgfVxuXG4gICAgaDIge1xuICAgICAgICBmb250LXNpemU6ICRoMl9mb250X3NpemU7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udF9mYW1pbHlfaDI7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAkZndfbWVkO1xuICAgIH1cbn1cblxuI25vdGljaWFzLCAjcHJvamVjdHMge1xuICAgIFtoaWRkZW4tZGF0YS1wcm9kdWN0LWlkKj1cIjFcIl0ge1xuICAgICAgICBkaXNwbGF5OiBub25lIWltcG9ydGFudDtcbiAgICB9XG4gICAgW2hpZGRlbi1kYXRhLWNvbnRlbnQtZ3JvdXAtaWQqPVwiMVwiXSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmUhaW1wb3J0YW50O1xuICAgIH1cbiAgICBbaGlkZGVuLWRhdGEtY29udGVudC1uYW1lKj1cIjFcIl0ge1xuICAgICAgICBkaXNwbGF5OiBub25lIWltcG9ydGFudDtcbiAgICB9XG4gICAgW2hpZGRlbi1kYXRhLXB1Ymxpc2gtZGF0ZSo9XCIxXCJdIHtcbiAgICAgICAgZGlzcGxheTogbm9uZSFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIFtoaWRkZW4tZGF0YS10YWctaWQqPVwiMVwiXSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmUhaW1wb3J0YW50O1xuICAgIH1cbn1cblxuLmRlc2NyaXB0aW9uLXN1YnRpdGxle1xuICAgIHB7XG4gICAgICAgIGZvbnQtc2l6ZTogJHRleHRfc3VidGl0bGU7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAkbGhfcDtcbiAgICB9XG59XG5cbi8vQ0FURUdPUsONQVM6XG4jY2F0ZWdvcnkge1xuICAgIGgxIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDFyZW07XG4gICAgICAgIG1hcmdpbjogYXV0bztcbiAgICB9XG5cbiAgICBoMiB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAxcmVtO1xuICAgICAgICBtYXJnaW46IGF1dG87XG4gICAgfVxuXG4gICAgLmRlc2NyaXB0aW9uIHtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRmb250X2ZhbWlseV9tYWluO1xuICAgICAgICAvLyBtYXgtd2lkdGg6IDcwMHB4O1xuICAgICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgICBwIHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGp1c3RpZnkhaW1wb3J0YW50O1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxMzUlIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgICBoMyB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0IWltcG9ydGFudDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW0gIWltcG9ydGFudDtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDEuNXJlbSAhaW1wb3J0YW50O1xuICAgICAgICB9XG5cbiAgICAgICAgb2wsIHVsIHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGp1c3RpZnkhaW1wb3J0YW50O1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMS41cmVtICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxLjVyZW0gIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS41IWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6ICR0ZXh0X2ZvbnRfc2l6ZV9sZyFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAucHJvZHVjdCB7XG4gICAgICAgIC5sb2dvLXctcGFkZGluZyB7XG4gICAgICAgICAgICBtYXgtaGVpZ2h0OiBjYWxjKCgzNnB4KjExNi41KS8xMDApO1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IGNhbGMoKDM2cHgqMjQuNSkvMTAwKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5sb2dvLXdvLXBhZGRpbmcge1xuICAgICAgICAgICAgbWF4LWhlaWdodDogY2FsYygoMzZweCoxMTYuNSkvMTAwKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5jb250cm9scyB7XG4gICAgICAgIGNvbG9yOiAjYThhOGE4O1xuICAgICAgICBtYXJnaW46IDcwcHggMCAxMDBweCAwO1xuXG4gICAgICAgIC5hcnJvdyB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmOGY5O1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgaGVpZ2h0OiA3MHB4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDY4cHg7XG4gICAgICAgICAgICBtYXJnaW46IDdweCAwO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgd2lkdGg6IDcwcHg7XG4gICAgICAgIH1cblxuICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEyNSU7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGV7XG4gICAgICAgIFxuICAgICAgICBwYWRkaW5nOiAwIWltcG9ydGFudDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMjRweCFpbXBvcnRhbnQ7XG5cbiAgICAgICAgLnNlbGVjdDItc2VsZWN0aW9uX19jaG9pY2V7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA5OTlyZW07XG4gICAgICAgICAgICBwYWRkaW5nOiAycHggMjRweCFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICAgIC5zZWxlY3QyLXNlbGVjdGlvbl9fY2hvaWNlX19yZW1vdmUge1xuICAgICAgICAgICAgICAgIGJvcmRlci1yaWdodDogbm9uZSFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgIGxlZnQ6IDJweCFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDFweCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuc2VsZWN0Mi1zZWFyY2gtLWlubGluZSB7XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjQ7XG5cbiAgICAgICAgICAgIGlucHV0LnNlbGVjdDItc2VhcmNoX19maWVsZCB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMnB4IDA7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiBub25lIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBcbiAgICB9XG59XG5cbi53LXNtLTYwIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgd2lkdGg6IDYwJSAhaW1wb3J0YW50O1xufVxuXG4udy1zbS04MCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIHdpZHRoOiA4MCUgIWltcG9ydGFudDtcbn1cblxuLmNvbnRlbnQtd3JhcCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgLmNvbnRlbnQtZWRpdCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgLjgpO1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBwYWRkaW5nOiAxNXB4O1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcblxuICAgICAgICBhIHtcbiAgICAgICAgICAgIGNvbG9yOiAjRkZGO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgaDMge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzNXB4ICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgJjpob3ZlciAuY29udGVudC1lZGl0IHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxufVxuXG4jZ2FsbGVyeS1tb3NhaWMge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC1hdXRvLXJvd3M6IDYwMHB4O1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDYsIDFmcik7XG5cbiAgICAuZ2FsbGVyeS1pdGVtIHtcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBtYXJnaW46IDEwcHg7XG5cbiAgICAgICAgZ3JpZC1jb2x1bW4tc3RhcnQ6IHNwYW4gMztcbiAgICAgICAgZ3JpZC1yb3ctc3RhcnQ6IHNwYW4gMTtcblxuICAgICAgICAmOm50aC1jaGlsZChldmVuIG9mIFtoaWRkZW4tZGF0YS1jb250ZW50LWdyb3VwLWlkPScwJ10pe1xuICAgICAgICAgICAgZ3JpZC1yb3ctc3RhcnQ6IHNwYW4gMjtcbiAgICAgICAgfVxuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogJGJvcmRlcl9yYWRpdXM7XG4gICAgICAgIH1cblxuICAgICAgICAuZ2FsbGVyeS1iZyB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIC43KTtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXJfcmFkaXVzO1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiB2aXNpYmlsaXR5IDBzLCBvcGFjaXR5IDAuNHMgbGluZWFyO1xuICAgICAgICAgICAgdmlzaWJpbGl0eTogMDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgei1pbmRleDogMjtcblxuICAgICAgICAgICAgLmdhbGxlcnktZGF0YS1ncmlkLWNlbnRlciB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG5cbiAgICAgICAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcbiAgICAgICAgICAgICAgICBncmlkLXRlbXBsYXRlLXJvd3M6IDFmcjtcbiAgICAgICAgICAgICAgICBncmlkLWNvbHVtbi1nYXA6IDBweDtcbiAgICAgICAgICAgICAgICBncmlkLXJvdy1nYXA6IDBweDtcblxuICAgICAgICAgICAgICAgIC5nYWxsZXJ5LWRhdGEtZ3JpZC1pdGVtLXBvc2l0aW9uIHtcbiAgICAgICAgICAgICAgICAgICAgZ3JpZC1jb2x1bW46IDEgLyAtMTtcbiAgICAgICAgICAgICAgICAgICAgZ3JpZC1yb3c6IDEgLyAtMTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAjbGluay1jb250YWluZXIge1xuICAgICAgICAgICAgICAgICAgICB6LWluZGV4OiA5O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5nYWxsZXJ5LWRhdGEtZ3JpZC1jZW50ZXItaXRlbSB7XG5cbiAgICAgICAgICAgICAgICAgICAgLy8gbWFyZ2luIHRvcCwgcmlnaHQsIGxlZnQgZW4gYXV0byB5IG1hcmdpbiBib3R0b20gZW4gMFxuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IGF1dG8gMCAwO1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMTUlO1xuXG4gICAgICAgICAgICAgICAgICAgIGgzIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjRkZGO1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAyMnB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgcCxcbiAgICAgICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogI0ZGRjtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogJHRleHRfZm9udF9zaXplX3hzO1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIGEubGluay1wcm9qZWN0IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC50YWcge1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI0ZGRjtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogI0ZGRjtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDE0cHggMjBweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC50YWctcHJvZHVjdCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc3Rlbi1yZWQ7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkc3Rlbi1yZWQ7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICNGRkY7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxNHB4IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAuZ2FsbGVyeS1pdGVtLWJ1dHRvbnN7XG4gICAgICAgICAgICAgICAgICAgICAgICB6LWluZGV4OiAxOTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuZ2FsbGVyeS1kYXRhIHtcbiAgICAgICAgICAgICAgICBib3R0b206IDUwcHg7XG4gICAgICAgICAgICAgICAgbGVmdDogNSU7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHdpZHRoOiA5MCU7XG5cbiAgICAgICAgICAgICAgICBoMyB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjRkZGO1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDIycHg7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgcCxcbiAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICNGRkY7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBhLmxpbmstcHJvamVjdCB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLnRhZyB7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNGRkY7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDE1cHg7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjRkZGO1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDZweCAxMnB4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC50YWctcHJvZHVjdCB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRzdGVuLXJlZDtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJHN0ZW4tcmVkO1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxNXB4O1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogI0ZGRjtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiA2cHggMTJweDtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgLmdhbGxlcnktYmcge1xuICAgICAgICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuI3N0YW5kYXJkLWNhcm91c2VsIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAuY2Fyb3VzZWwtaW5kaWNhdG9ycyB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gICAgICAgIHotaW5kZXg6IDk5OTtcblxuICAgICAgICBsaSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNGRkY7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgICAgICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgICAgICAgICAgIC8vIC1tcy1mbGV4OiAwIDEgYXV0bztcbiAgICAgICAgICAgIC8vIGZsZXg6IDAgMSBhdXRvO1xuICAgICAgICAgICAgaGVpZ2h0OiAxMnB4O1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA0cHg7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogNHB4O1xuICAgICAgICAgICAgdGV4dC1pbmRlbnQ6IC05OTlweDtcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IC42cyBlYXNlO1xuICAgICAgICAgICAgd2lkdGg6IDEycHg7XG5cbiAgICAgICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmNhcm91c2VsLWlubmVyIHtcbiAgICAgICAgLmNhcm91c2VsLWl0ZW0ge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgIGhlaWdodDogMTAwdmg7XG4gICAgICAgICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5pdGVtLWJnIHtcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHJnYigwLCAwLCAwKTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoOTBkZWcsIHJnYmEoMCwgMCwgMCwgMC44NjczNjcwMTUxNjU0NDExKSAwJSwgcmdiYSgzNCwgMzQsIDM0LCAwLjAyNzAzMDg4MDcxMTY1OTcxKSAxMDAlKTtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgICAgbWluLWhlaWdodDogMTAwdmg7XG4gICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIHotaW5kZXg6IDA7XG5cbiAgICAgICAgICAgICAgICAuaXRlbS1kYXRhIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiA4JTtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXG4gICAgICAgICAgICAgICAgICAgIGg1IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjRkZGO1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LWZhbWlseTogJGZvbnRfZmFtaWx5X21haW47XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6ICR0ZXh0X2ZvbnRfc2l6ZV9sZztcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDI1cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgaDIge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICNGRkY7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udF9mYW1pbHlfaDI7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6ICRoMl9mb250X3NpemU7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogJGZ3X21lZDtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDI1cHg7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjRkZGO1xuICAgICAgICAgICAgICAgICAgICAgICAgLy9tYXJnaW4tYm90dG9tOiA0MHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiA2MDBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgYS5saW5rLXByb2plY3Qge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICNGRkY7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgICAgIC8vbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC50YWcge1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI0ZGRjtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDE1cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogI0ZGRjtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDZweCAxMnB4O1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgLnRhZy1wcm9kdWN0IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRzdGVuLXJlZDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRzdGVuLXJlZDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDE1cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogI0ZGRjtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMjBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDZweCAxMnB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4vLyAtLS0tLS0tLS0tICBSRVNQT05TSVZFIC0tLS0tLS0tLS1cbkBtZWRpYSAobWluLXdpZHRoOiAxOTIwcHgpIHtcbiAgICBib2R5IHtcbiAgICAgICAgLy8gbGluZS1oZWlnaHQ6IDAuNXJlbSAhaW1wb3J0YW50O1xuICAgIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDE0NDBweCkge1xuICAgIGJvZHkge1xuICAgICAgICAvLyBsaW5lLWhlaWdodDogMC41cmVtICFpbXBvcnRhbnQ7XG4gICAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTQwMHB4KSB7XG4gICAgYm9keSB7XG4gICAgICAgIC8vIGxpbmUtaGVpZ2h0OiAwLjVyZW0gIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAuc3BlY2lhbCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IC0yOHJlbSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC5zcGVjaWFsLXZhbHVlIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBtaW4taGVpZ2h0OiA1NHJlbSAhaW1wb3J0YW50O1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDE0MDBweCkge1xuICAgICNwcm9kdWN0cyxcbiAgICAjYW5kYW1pb3Mge1xuICAgICAgICAjZXNwZWNpZmljYWNpb25lcyB7XG4gICAgICAgICAgICAuZXNwZWNpZmljYWNpb24ge1xuICAgICAgICAgICAgICAgIC5lc3AtY29udGVudCB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiA2MCU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAxMjAwcHgpIHtcbiAgICAjcHJvZHVjdHMsXG4gICAgI2FuZGFtaW9zIHtcbiAgICAgICAgI2VzcGVjaWZpY2FjaW9uZXMge1xuICAgICAgICAgICAgLmVzcGVjaWZpY2FjaW9uIHtcbiAgICAgICAgICAgICAgICAuZXNwLWNvbnRlbnQge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogNzAlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5jdWFkcmFkbyB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAtM3JlbTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAgIGJvZHkge1xuICAgICAgICAvLyBsaW5lLWhlaWdodDogMC41cmVtICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLnB4LW1kLTEwMiB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogNS44M3JlbSAhaW1wb3J0YW50O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiA1LjgzcmVtICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLnBsLW1kLTEwMiB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogNS44M3JlbSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC5wci1tZC0xMDIge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiA1LjgzcmVtICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLnB5LW1kLTEwMiB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA1LjgzcmVtICFpbXBvcnRhbnQ7XG4gICAgICAgIHBhZGRpbmctdG9wOiA1LjgzcmVtICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLnBiLW1kLTEwMiB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA1LjgzcmVtICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLnB0LW1kLTEwMiB7XG4gICAgICAgIHBhZGRpbmctdG9wOiA1LjgzcmVtICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLnB5LW1kLTE4NiB7XG4gICAgICAgIHBhZGRpbmctdG9wOiA3Ljc1cmVtICFpbXBvcnRhbnQ7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA3Ljc1cmVtICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLnB0LW1kLTE4NiB7XG4gICAgICAgIHBhZGRpbmctdG9wOiA3Ljc1cmVtICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLnBiLW1kLTE4NiB7XG4gICAgICAgIC8vIHBhZGRpbmctYm90dG9tOiA3Ljc1cmVtICFpbXBvcnRhbnQ7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAxMDBweDtcbiAgICB9XG5cbiAgICAucHgtbWQtNzAge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDIuOTFyZW0gIWltcG9ydGFudDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMi45MXJlbSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC5wbC1tZC03MCB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMi45MXJlbSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC5wci1tZC03MCB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDIuOTFyZW0gIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAucHktbWQtNzAge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMi45MXJlbTtcbiAgICAgICAgcGFkZGluZy10b3A6IDIuOTFyZW07XG4gICAgfVxuXG4gICAgLnBiLW1kLTcwIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDIuOTFyZW07XG4gICAgfVxuXG4gICAgLnB0LW1kLTcwIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDIuOTFyZW07XG4gICAgfVxuXG4gICAgLm1sLW1kLW5lZ2F0aXZlLTEge1xuICAgICAgICBtYXJnaW4tbGVmdDogLTc1cHg7XG4gICAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICBodG1se1xuICAgICAgICBmb250LXNpemU6IDIxLjQycHggIWltcG9ydGFudDsgLy8zMC4wNy8xLjRcbiAgICB9XG59XG5cbkBtZWRpYShtYXgtd2lkdGg6IDk5MXB4KSB7XG4gICAgaHRtbHtcbiAgICAgICAgZm9udC1zaXplOiAkdGV4dF9mb250X3NpemVfbWQ7XG4gICAgfVxuXG4gICAgI3Byb2R1Y3RzLFxuICAgICNhbmRhbWlvcyB7XG4gICAgICAgICNlc3BlY2lmaWNhY2lvbmVzIHtcbiAgICAgICAgICAgIC5lc3BlY2lmaWNhY2lvbiB7XG4gICAgICAgICAgICAgICAgLmVzcC1jb250ZW50IHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAzMHB4O1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgICAgICAgICAgICAgICAudGV4dC1hYnMge1xuICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogNTUlO1xuICAgICAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAmLmZsb2F0LXJpZ2h0IC5lc3AtY29udGVudCB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuY3VhZHJhZG8ge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogLTJyZW07XG4gICAgICAgIH1cbiAgICB9XG59XG5cblxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG5cbiAgICAucHgtMTAyIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAyLjkxNXJlbSAhaW1wb3J0YW50O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyLjkxNXJlbSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC5wbC0xMDIge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDIuOTE1cmVtICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLnByLTEwMiB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDIuOTE1cmVtICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLnB5LTEwMiB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAyLjkxNXJlbSAhaW1wb3J0YW50O1xuICAgICAgICBwYWRkaW5nLXRvcDogMi45MTVyZW0gIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAucGItMTAyIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDIuOTE1cmVtICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLnB0LTEwMiB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAyLjkxNXJlbSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC5wbC03MCB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMi45MXJlbSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC5wci03MCB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDIuOTFyZW0gIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAucHktNzAge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMi45MXJlbTtcbiAgICAgICAgcGFkZGluZy10b3A6IDIuOTFyZW07XG5cbiAgICB9XG5cbiAgICAucGItNzAge1xuICAgICAgICAvKnBhZGRpbmctYm90dG9tOiAyLjkxcmVtOyovXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA3MHB4O1xuICAgIH1cblxuICAgIC5wYi03NSB7XG4gICAgICAgIC8qcGFkZGluZy1ib3R0b206IDIuOTFyZW07Ki9cbiAgICAgICAgcGFkZGluZy1ib3R0b206IDc1cHg7XG4gICAgfVxuXG4gICAgLnB0LTcwIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDIuOTFyZW07XG4gICAgfVxuXG4gICAgLnB5LTEzMCB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAxMzBweCAhaW1wb3J0YW50O1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTMwcHggIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAucHktMTg2IHtcbiAgICAgICAgcGFkZGluZy10b3A6IDk1cHggIWltcG9ydGFudDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDEwMHB4ICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLnB5LTE4Nl8ge1xuICAgICAgICBwYWRkaW5nLXRvcDogMTMwcHggIWltcG9ydGFudDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDEwMHB4ICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLnB0LTE4NiB7XG4gICAgICAgIHBhZGRpbmctdG9wOiA5NXB4ICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLnB0LTE4Nl8ge1xuICAgICAgICBwYWRkaW5nLXRvcDogMTAwcHggIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAucGItMTg2IHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDEwMHB4ICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLnBiLTEwMCB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA5N3B4ICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLnBiLTYwIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDYwcHggIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAubXctMzUwIHtcbiAgICAgICAgbWF4LXdpZHRoOiAyMHJlbTtcbiAgICB9XG5cbiAgICAubXctNzAwIHtcbiAgICAgICAgbWF4LXdpZHRoOiA0MHJlbTtcbiAgICB9XG5cbiAgICAubXctMTQwMCB7XG4gICAgICAgIC8vbWF4LXdpZHRoOiA4MHJlbTtcbiAgICAgICAgbWF4LXdpZHRoOiAxNDAwcHg7XG4gICAgfVxuXG4gICAgLm1hLWxlZnQge1xuICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICB9XG5cbiAgICAubWEtcmlnaHQge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgfVxuXG4gICAgLm1hLWNlbnRlciB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgfVxuXG4gICAgLnRleHQtbWQtY2VudGVyIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cblxuICAgIC5tb3ZpbCB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgI25hdi1tb3ZpbCB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgI25hdi1kZXNrdG9wIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMTYwNzg0MzEzNyk7XG4gICAgICAgIGhlaWdodDogNDlweDtcbiAgICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB0cmFuc2l0aW9uOiAxcztcbiAgICAgICAgei1pbmRleDogdmFyKC0tbmF2LWRlc2t0b3Atei1pbmRleCwgMTA1Mik7XG5cbiAgICAgICAgJi5tZW51LWhpZGRlbiB7XG4gICAgICAgICAgICB0b3A6IC00OHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLm1lbnUtdG9wIHtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcblxuICAgICAgICAgICAgLnJvdyB7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAubWVudS1hcnJvdyAuYXJyb3cge1xuICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgICAgICBib3JkZXI6IHNvbGlkICRzdGVuLXJlZDtcbiAgICAgICAgICAgICAgICBib3JkZXItd2lkdGg6IDAgMS41cHggMS41cHggMDtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogNXB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAucmlnaHQge1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG4gICAgICAgICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAubGVmdCB7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTM1ZGVnKTtcbiAgICAgICAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDEzNWRlZyk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC51cCB7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTEzNWRlZyk7XG4gICAgICAgICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgtMTM1ZGVnKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmRvd24ge1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgICAgICAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLm1lbnUtbG9nby1zdGVuIGltZyB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDYwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5tZW51LXNlY3Rpb24ge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICB6LWluZGV4OiAxMDAwMDtcblxuICAgICAgICAgICAgICAgIC5uYXYtdG9nZ2xlLWJ0biB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA0MHB4O1xuICAgICAgICAgICAgICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAyNXB4O1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMjdweDtcbiAgICAgICAgICAgICAgICAgICAgei1pbmRleDogMTAwMDA7XG5cbiAgICAgICAgICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAyN3B4O1xuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxLjVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRzdGVuLXJlZDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogMjVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IDAuM3M7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMjdweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDEuNXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRzdGVuLXJlZDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0b3A6IC0xMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogMC4zcztcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC50b2dnbGUgc3BhbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICYudG9nZ2xlIHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgICAgICB0b3A6IDI1cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0b3A6IDBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgI3Byb2R1Y3RzIHtcbiAgICAgICAgLmVzcGVjaWZpY2FjaW9uLXYyIHtcbiAgICAgICAgICAgIC5kZi0zYiB7XG4gICAgICAgICAgICAgICAgLnBiLWN1c3RvbS0zIHtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDEuMXJlbTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAjcHJvZHVjdG9zIHtcbiAgICAgICAgLmVzcGVjaWZpY2FjaW9uLXYyIHtcbiAgICAgICAgICAgIC5kZi0zYiB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDE2MHB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuZGYtM2EtZnVsbCB7XG4gICAgICAgICAgICAgICAgLnF0LWN1c3RvbSB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMi41ZW07XG5cbiAgICAgICAgICAgICAgICAgICAgc3Bhbi50eXBlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogJHRleHRfZm9udF9zaXplX2xnO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gI3NlcnZpY2lvcyB7XG4gICAgLy8gICAgIC52aXNpb24tMzYwIHtcbiAgICAvLyAgICAgICAgIHAge1xuICAgIC8vICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICAvLyAgICAgICAgICAgICBsaW5lLWhlaWdodDogMzVweDtcbiAgICAvLyAgICAgICAgIH1cbiAgICAvLyAgICAgfVxuICAgIC8vIH1cblxuXG59XG5cbkBtZWRpYShtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgLnJvdz4qIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMTVweDtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxNXB4O1xuICAgIH1cblxuICAgICNtaXNpb24tdmlzaW9uLXZhbG9yZXMge1xuICAgICAgICAucm93IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICAgIC5weC1zdGVuIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgICAgICAgICAgIC8vIC5pY29uLXZhbG9yZXMge1xuICAgICAgICAgICAgICAgIC8vICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgIC8vIH1cbiAgICAgICAgICAgICAgICAuc3ViLXRpdGxlIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgIG1heC13aWR0aDogMTMuMTRyZW0gIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgLy8gcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IGF1dG8gIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAxMy4xNHJlbSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogMXJlbSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC50ZXh0LXRpdGxlLWFsaWduIHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgfVxuXG4gICAgfVxuXG4gICAgaDEge1xuICAgICAgICAvLyBmb250LXNpemU6IDUwcHg7XG4gICAgICAgIGZvbnQtc2l6ZTogJGgxX2ZvbnRfc2l6ZV83Njc7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAkbGhfaDE7XG5cbiAgICAgICAgJi5oMS14cyB7XG4gICAgICAgICAgICBmb250LXNpemU6IDM2cHg7XG4gICAgICAgICAgICBmb250LXdlaWdodDogJGZ3X21lZDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGgyLFxuICAgICNub3RpY2lhcyBoMiB7XG4gICAgICAgIC8vIGZvbnQtc2l6ZTogMzZweDtcbiAgICAgICAgLy8gZm9udC1zaXplOiAkaDJfZm9udF9zaXplXzc2NztcbiAgICAgICAgLy8gZm9udC13ZWlnaHQ6ICRmd19tZWQ7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAkbGhfaDI7XG4gICAgfVxuXG4gICAgcCB7XG4gICAgICAgIGZvbnQtc2l6ZTogJHRleHRfZm9udF9zaXplX3hzO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cblxuICAgIG1haW4ge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA2N3B4O1xuICAgIH1cblxuICAgICNwcm9kdWN0cyB7XG4gICAgICAgIC5zbGlkZS10aXRsZSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XG5cbiAgICAgICAgICAgIC5sb2dvIHtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDU1cHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNjBweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnByb2R1Y3Qge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgaDIge1xuICAgICAgICAgICAgLy8gZm9udC1zaXplOiAzNnB4O1xuICAgICAgICAgICAgZm9udC1zaXplOiAkaDJfZm9udF9zaXplXzc2NztcbiAgICAgICAgfVxuXG4gICAgICAgIHAge1xuICAgICAgICAgICAgZm9udC1zaXplOiAkdGV4dF9mb250X3NpemVfbWQ7XG4gICAgICAgIH1cblxuICAgICAgICB1bHtcbiAgICAgICAgICAgIGxpe1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogJHRleHRfZm9udF9zaXplX21kOyAgXG5cbiAgICAgICAgICAgICAgICA+IHNwYW57XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogJHRleHRfZm9udF9zaXplX21kICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgfSBcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5maXJzdC1zcGVjIHAge1xuICAgICAgICAgICAgZm9udC1zaXplOiAkdGV4dF9mb250X3NpemVfbWQ7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIGZvcm0gLmJ0bi1mb3JtIHtcbiAgICAgICAgLy8gICAgIHBhZGRpbmc6IDAuMnJlbSA1cmVtICFpbXBvcnRhbnQ7XG4gICAgICAgIC8vIH1cblxuICAgICAgICAuaGVhZGVyIHtcbiAgICAgICAgICAgIGltZy5sb2dvIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiA1MCU7XG4gICAgICAgICAgICAgICAgbWluLXdpZHRoOiAyMDBweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnByb2R1Y3Qge1xuICAgICAgICAgICAgICAgIG1heC1oZWlnaHQ6IDIycmVtO1xuICAgICAgICAgICAgICAgIG1heC13aWR0aDogMzhyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuaGVhZGVyLWFuZGFtaW9zIHtcbiAgICAgICAgICAgIGhlaWdodDogOTV2aDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5hbmRhbWlvMSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgLm10LW5lZ2F0aXZlLTExIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5jYWJlemFsIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDByZW07XG4gICAgICAgIH1cblxuICAgICAgICAuY3VhZHJhZG8ge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogNDBweDtcbiAgICAgICAgfVxuXG4gICAgICAgICNmb3RvcyB7XG4gICAgICAgICAgICBoMiB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMzNweDtcblxuICAgICAgICAgICAgICAgICAgICAmLndpdGhfaW1ne1xuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAzM3B4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLndpdGhfbG9nbyB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogJGgyX2ZvbnRfc2l6ZV83NjcgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuc2lucGFkZGluZy1wYWlyW2NsYXNzKj1cImNvbC1cIl0ge1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICNhbmRhbWlvcyB7XG4gICAgICAgIC5zaW5wYWRkaW5nLXBhaXJbY2xhc3MqPVwiY29sLVwiXSB7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgdWwuY29udHJvbHMge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5tdC1zbS00IHtcbiAgICAgICAgbWFyZ2luLXRvcDogMS41cmVtICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLnB4LTcwIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAyLjVyZW0gIWltcG9ydGFudDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMi41cmVtICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLnBsLTcwIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxNXB4ICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLnByLTcwIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMTVweCAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC5weS03MCB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAyLjVyZW0gIWltcG9ydGFudDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDIuNXJlbSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC5wYi03MCB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAyLjVyZW0gIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAucHQtNzAge1xuICAgICAgICBwYWRkaW5nLXRvcDogMi41cmVtICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLnB4LTEwMiB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMi45MTVyZW0gIWltcG9ydGFudDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMi45MTVyZW0gIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAucGwtMTAyIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAyLjkxNXJlbSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC5wci0xMDIge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyLjkxNXJlbSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC5weS0xMDIge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMi45MTVyZW0gIWltcG9ydGFudDtcbiAgICAgICAgcGFkZGluZy10b3A6IDIuOTE1cmVtICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLnBiLTEwMiB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAyLjkxNXJlbSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC5wdC0xMDIge1xuICAgICAgICBwYWRkaW5nLXRvcDogMi45MTVyZW0gIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAucHktMTg2IHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206ICRwYWRkaW5nX21kICFpbXBvcnRhbnQ7XG4gICAgICAgIHBhZGRpbmctdG9wOiAkcGFkZGluZ19tZCAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC5weS0xODZfIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDYzcHggIWltcG9ydGFudDtcbiAgICAgICAgcGFkZGluZy10b3A6ICRwYWRkaW5nX21kICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLnB4LTE4NiB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMi45MTVyZW0gIWltcG9ydGFudDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMi45MTVyZW0gIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAucHQtMTg2IHtcbiAgICAgICAgcGFkZGluZy10b3A6ICRwYWRkaW5nX21kICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLnBiLTE4NiB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAkcGFkZGluZ19tZCAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC5wYi1zbS0xODYge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogJHBhZGRpbmdfbWQ7XG4gICAgfVxuXG4gICAgLnB0LXNtLTE4NiB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAkcGFkZGluZ19tZDtcbiAgICB9XG5cbiAgICAuZG93bmxvYWQge1xuICAgICAgICB3aWR0aDogMTJweDtcbiAgICB9XG5cbiAgICAuZGVza3RvcCB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgI25hdi1kb3RzIHtcbiAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgICNuYXYtZGVza3RvcCB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgI25hdi1tb3ZpbCB7XG4gICAgICAgIC8qIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgI2Y2ZjZmNjsgKi9cbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICBtaW4taGVpZ2h0OiA1MS42cHg7XG4gICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHotaW5kZXg6IDEwNTI7XG5cbiAgICAgICAgLm1lbnUtaWNvbnMge1xuICAgICAgICAgICAgaGVpZ2h0OiA1MS42cHg7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgICAgIC5tZW51LWFycm93IC5hcnJvdyB7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiBzb2xpZCAkc3Rlbi1yZWQ7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXdpZHRoOiAwIDEuNXB4IDEuNXB4IDA7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDVweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnJpZ2h0IHtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xuICAgICAgICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmxlZnQge1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDEzNWRlZyk7XG4gICAgICAgICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgxMzVkZWcpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAudXAge1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC0xMzVkZWcpO1xuICAgICAgICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoLTEzNWRlZyk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5kb3duIHtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gICAgICAgICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5yb3cge1xuICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLm1lbnUtbG9nby1zdGVuIGltZyB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDIxcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5tZW51LXNlY3Rpb24ge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICB6LWluZGV4OiAxMDAwMDtcblxuICAgICAgICAgICAgICAgIC5uYXYtdG9nZ2xlLWJ0biB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiA0MHB4O1xuICAgICAgICAgICAgICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgICAgICByaWdodDogMjBweDtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAyNXB4O1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMjdweDtcbiAgICAgICAgICAgICAgICAgICAgei1pbmRleDogMTAwMDA7XG5cbiAgICAgICAgICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAyN3B4O1xuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxLjVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRzdGVuLXJlZDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogMjVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IDAuM3M7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMjdweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDEuNXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRzdGVuLXJlZDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0b3A6IC0xMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogMC4zcztcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC50b2dnbGUgc3BhbiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICYudG9nZ2xlIHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgICAgICB0b3A6IDI1cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0b3A6IDBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmJvdHRvbS1saW5lLWdyYXkge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0RFREVERTtcbiAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgIGhlaWdodDogMjRweDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyogICAgIC5jb250cm9scyB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9ICovXG5cbiAgICAuc2xpZGVyLXByb2R1Y3RzLFxuICAgIC5zbGlkZXItc2VydmljZXMge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBtYXJnaW4tbGVmdDogMHB4ICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgLml0ZW0ge1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTVweDtcbiAgICAgICAgICAgIHdpZHRoOiAyMC4xcmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgLnNlY3Rpb24ge1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIC8qIG1pbi1oZWlnaHQ6IDQ3NXB4OyAqL1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgLy8gcGFkZGluZzogMnJlbSAycmVtIDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAyZW0gMWVtIDBlbSAxZW07XG5cbiAgICAgICAgICAgIC5sb2dvIHtcbiAgICAgICAgICAgICAgICBtYXgtaGVpZ2h0OiAycmVtO1xuICAgICAgICAgICAgICAgIG1heC13aWR0aDogMTNyZW07XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5kZXNjcmlwdGlvbiB7XG4gICAgICAgICAgICAgICAgLy8gbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgICAgICAgICAvLyBtYXJnaW4tdG9wOiAwO1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMTVweCAwcHg7XG4gICAgICAgICAgICAgICAgLy8gaGVpZ2h0OiA4MHB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogbWF4LWNvbnRlbnQ7XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgICAgLmNhcmRzLWN3IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgcGFkZGluZzogMHB4IDFyZW07XG5cbiAgICAgICAgICAgIC5kZXNjcmlwdGlvbl9jdyB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAvLyBtYXJnaW46IDE1cHggMHB4O1xuICAgICAgICAgICAgICAgIC8vIGhlaWdodDogODBweDtcbiAgICAgICAgICAgICAgICAvLyBsaW5lLWhlaWdodDogMS41O1xuICAgICAgICAgICAgICAgIC8vIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgICAgICAgICAgICAvLyBmb250LXdlaWdodDogODAwO1xuICAgICAgICAgICAgfVxuXG5cbiAgICAgICAgfVxuXG4gICAgICAgIC5kZXNjcmlwdGlvbiB7XG4gICAgICAgICAgICAvLyBmb250LXdlaWdodDogODAwO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICAgICAgICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xuICAgICAgICAgICAgLXdlYmtpdC1ib3gtb3JpZW50OiB2ZXJ0aWNhbDtcblxuICAgICAgICAgICAgLXdlYmtpdC1saW5lLWNsYW1wOiAyO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDJyZW07XG4gICAgICAgIH1cblxuICAgICAgICAuYnRuLXJlZC1zbGlkZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc3Rlbi1yZWQ7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAzMHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgICAgICBmb250LXNpemU6IDE1cHg7XG5cbiAgICAgICAgICAgIC8qIHBhZGRpbmc6IDAuMnJlbSAwLjc1cmVtO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMXJlbTsgKi9cbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRzdGVuLXJlZC1ob3ZlciAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5wcm9kdWN0LWltZyB7XG4gICAgICAgICAgICBtYXJnaW46IGF1dG87XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDIxNXB4O1xuICAgICAgICAgICAgLy8gcGFkZGluZy10b3A6IDJyZW07XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgbWF4LWhlaWdodDogbWF4LWNvbnRlbnQgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgb2JqZWN0LWZpdDogY29udGFpbjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5jb250cm9scyB7XG4gICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA2MHB4O1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiA2MHB4O1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IC0zMHB4O1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgMTVweDtcbiAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjNzO1xuXG4gICAgICAgICAgICB9XG5cblxuICAgICAgICAgICAgLnByZXYge1xuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5uZXh0IHtcbiAgICAgICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG5cblxuICAgICAgICAudG5zLW91dGVyIFtkYXRhLWFjdGlvbj1zdG9wXSxcbiAgICAgICAgLnRucy1vdXRlciBbZGF0YS1hY3Rpb249cGxheV0sXG4gICAgICAgIC50bnMtb3V0ZXIgW2RhdGEtYWN0aW9uPXN0YXJ0XSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnNsaWRlci1wcm9kdWN0cyB7XG4gICAgICAgIC5kZXNjcmlwdGlvbiB7XG4gICAgICAgICAgICAtd2Via2l0LWxpbmUtY2xhbXA6IDI7XG4gICAgICAgICAgICAvKiBudW1iZXIgb2YgbGluZXMgdG8gc2hvdyAqL1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnNsaWRlci1zZXJ2aWNlcyxcbiAgICAuc2xpZGVyLXZlbnRhamFzIHtcbiAgICAgICAgLnRpdGxlIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuN3JlbTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZndfbWVkO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMnJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5kZXNjcmlwdGlvbiB7XG4gICAgICAgICAgICAtd2Via2l0LWxpbmUtY2xhbXA6IDY7XG4gICAgICAgICAgICAvKiBudW1iZXIgb2YgbGluZXMgdG8gc2hvdyAqL1xuICAgICAgICB9XG5cbiAgICAgICAgLmljb24ge1xuICAgICAgICAgICAgaGVpZ2h0OiA3cmVtO1xuICAgICAgICAgICAgd2lkdGg6IDdyZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBmb3JtIGxhYmVsLFxuICAgIGZvcm0gaW5wdXQsXG4gICAgZm9ybSB0ZXh0YXJlYSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMC44MzMzcmVtICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgZm9ybSAuZm9ybS1jb250cm9sIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgfVxuXG4gICAgI3NsaWRlci1kZXN0YWNhZG9zLFxuICAgICNlbmNvZnJhZG9zIHtcbiAgICAgICAgLnNlY3Rpb24tbG9nbyB7XG4gICAgICAgICAgICBzY2FsZTogMC44O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgI3NvYnJlLXN0ZW4sXG4gICAgI3Byb2plY3RzLFxuICAgICNlbmNvZnJhZG9zLFxuICAgICNwcm9kdWN0cyxcbiAgICAjY29udGFjdCxcbiAgICAjbm90aWNpYXMsXG4gICAgI3NlcnZpY2lvcyB7XG4gICAgICAgIC5oZWFkZXIge1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuXG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmhlYWRlci1iZy1pbWcge1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgaGVpZ2h0OiA0MDBweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG5cbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5hbmRhbWlvMiB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwcmVtO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgI3Nob3dyb29tLFxuICAgICNzb2JyZS1zdGVuIHtcbiAgICAgICAgaDEge1xuICAgICAgICAgICAgY29sb3I6ICMzMTMxMzE7XG4gICAgICAgIH1cblxuICAgICAgICBoMiB7XG4gICAgICAgICAgICBmb250LXNpemU6ICRoMl9mb250X3NpemVfNzY3O1xuICAgICAgICB9XG5cbiAgICAgICAgLnZhbHVlIHtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZndfbWVkO1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250X2ZhbWlseV9tYWluO1xuICAgICAgICB9XG5cbiAgICAgICAgLmxpbmUtYmxhY2sge1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogM3B4IHNvbGlkICMzMTMxMzE7XG4gICAgICAgICAgICB3aWR0aDogNDBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5hcmVhIHtcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udF9mYW1pbHlfbWFpbjtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgICAgICAgICAgLy8gZm9udC13ZWlnaHQ6ICRmd19tZWQ7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5jYXRhbG9nbyB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogLTExMHB4O1xuXG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgIG1heC13aWR0aDogMzc1cHg7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuc3ViLXRpdGxlIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS42cmVtO1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIGJsYWNrO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cblxuICAgICAgICAuZGVza3RvcC1zY3JlZW4ge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2Y0ZjRmNDtcbiAgICAgICAgICAgIGJvcmRlcjogMTBweCBzb2xpZCAjZjRmNGY0O1xuICAgICAgICAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMTBweDtcbiAgICAgICAgICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAxMHB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAwO1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA1Ni4yNSU7XG4gICAgICAgICAgICAvKiAxNi85IHJhdGlvICovXG4gICAgICAgIH1cblxuICAgICAgICAuaW1nLXNjcm9sbCB7XG4gICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICAgICAgb3ZlcmZsb3cteDogYXV0bztcbiAgICAgICAgICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgICAgICAgICAgIC1tcy1vdmVyZmxvdy1zdHlsZTogLW1zLWF1dG9oaWRpbmctc2Nyb2xsYmFyO1xuXG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAyNzAlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuaU1hYyB7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogLTJweDtcbiAgICAgICAgICAgIHotaW5kZXg6IDE7XG5cbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICB2aWRlbyB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5wbGFuZXQge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAzMDBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5iZy12YWxvcmVzIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi9pbWcvc29icmUtc3Rlbi9tb3ZpbF9zb2JyZS1zdGVuLTcucG5nXCIpO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICB6LWluZGV4OiAwO1xuXG4gICAgICAgICAgICBoMiB7XG4gICAgICAgICAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogNDBweDtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogJGZ3X21lZDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAyMDBweCAxNXB4IDUwcHggMTVweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmJnLW9wYWNpdHkge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAzMHB4IDE1cHggMTVweCAxNXB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgI3Nob3dyb29tIC5zbGlkZS10aXRsZSAudGl0bGUge1xuICAgICAgICBmb250LXNpemU6IDM2cHg7XG4gICAgfVxuXG4gICAgI3NlcnZpY2lvcyB7XG4gICAgICAgIC5oZWFkZXItdmlkZW8ge1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDB2aDtcbiAgICAgICAgICAgIGZpbHRlcjogYnJpZ2h0bmVzcygwLjcpO1xuICAgICAgICAgICAgLW8tb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB9XG5cbiAgICAgICAgLmhlYWRlci10aXRsZSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDJyZW07XG4gICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICB9XG5cbiAgICAgICAgLyogaDEge1xuICAgICAgICAgICAgZm9udC1zaXplOiA2MHB4O1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250X2ZhbWlseV9tYWluO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDY1cHg7XG4gICAgICAgIH0gKi9cblxuICAgICAgICAvLyBoMSB7XG4gICAgICAgIC8vICAgICBmb250LXNpemU6ICRoMl9mb250X3NpemVfdmFyaWFudGVfYjtcbiAgICAgICAgLy8gICAgIGZvbnQtd2VpZ2h0OiAkZndfbWVkO1xuICAgICAgICAvLyAgICAgZm9udC1mYW1pbHk6ICRmb250X2ZhbWlseV9tYWluO1xuICAgICAgICAvLyAgICAgbGluZS1oZWlnaHQ6IDUwcHg7XG4gICAgICAgIC8vIH1cblxuICAgICAgICBoMiB7XG4gICAgICAgICAgICBmb250LXNpemU6IDM2cHg7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBwIHtcbiAgICAgICAgLy8gICAgIGZvbnQtc2l6ZTogJHRleHRfZm9udF9zaXplX3hzO1xuICAgICAgICAvLyAgICAgbGluZS1oZWlnaHQ6IDEuNXJlbTtcbiAgICAgICAgLy8gfVxuICAgICAgICAuYnIge1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMzBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5pY29ubyB7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMHB4O1xuICAgICAgICAgICAgd2lkdGg6IDEwMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLnZpZGVvIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmNGY0ZjQ7XG4gICAgICAgICAgICBoZWlnaHQ6IDA7XG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDU2LjI1JTtcbiAgICAgICAgICAgIC8qIDE2LzkgcmF0aW8gKi9cbiAgICAgICAgICAgIG1hcmdpbjogYXV0bztcblxuICAgICAgICAgICAgdmlkZW8ge1xuICAgICAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgICAgICBmaWx0ZXI6IGJyaWdodG5lc3MoMC43KTtcbiAgICAgICAgICAgICAgICAtby1vYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgI3Byb3llY3RvcyxcbiAgICAgICAgI2FscXVpbGVyLFxuICAgICAgICAjdmVudGEsXG4gICAgICAgICNsb2dpc3RpY2EsXG4gICAgICAgICNhc2Vzb3JhbWllbnRvLFxuICAgICAgICAjbW9udGFqZSxcbiAgICAgICAgI21hbnRlbmltaWVudG8ge1xuXG4gICAgICAgICAgICAvLyBoMntcbiAgICAgICAgICAgIC8vICAgICBmb250LXNpemU6ICRoMl9mb250X3NpemUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIC8vICAgICBmb250LXdlaWdodDogJGZ3X21lZDtcbiAgICAgICAgICAgIC8vIH1cbiAgICAgICAgICAgIC5idG4tcmVkLXNsaWRlIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc3Rlbi1yZWQ7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMzBweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICAgICAgICAgICAgLyogcGFkZGluZzogMC4ycmVtIDAuNzVyZW07ICovXG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMXJlbTtcblxuICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc3Rlbi1yZWQtaG92ZXIgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5iZy13aGl0ZSB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTVweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgfVxuXG4gICAgI3Byb2plY3RzIHtcbiAgICAgICAgLmhlYWRlci10aXRsZSB7XG4gICAgICAgICAgICBmb250LWZhbWlseTogJGZvbnRfZmFtaWx5X21haW47XG4gICAgICAgICAgICBmb250LXNpemU6ICRoMl9mb250X3NpemU7XG4gICAgICAgICAgICBmb250LXdlaWdodDogJGZ3X21lZDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5wcm9qZWN0IHtcbiAgICAgICAgICAgIC5jYXRlZ29yeSB7XG4gICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250X2ZhbWlseV9tYWluO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogJHRleHRfZm9udF9zaXplX2xnO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAyMDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5wcm9qZWN0LWRlc2NyaXB0aW9uIHtcbiAgICAgICAgICAgICAgICBmb250LWZhbWlseTogJGZvbnRfZmFtaWx5X21haW47XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmxpbmsge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkc3Rlbi1yZWQ7XG4gICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250X2ZhbWlseV9tYWluO1xuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDAuOXJlbTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmJ0bi1vdXRsaW5lLWJsYWNrIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDAuODEyNXJlbTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAycHggMTBweCAycHggMTBweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmFycm93IHtcbiAgICAgICAgICAgICAgICBib3JkZXI6IHNvbGlkICRzdGVuLXJlZDtcbiAgICAgICAgICAgICAgICBib3JkZXItd2lkdGg6IDAgMS41cHggMS41cHggMDtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogNHB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAucmlnaHQge1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG4gICAgICAgICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAubGVmdCB7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTM1ZGVnKTtcbiAgICAgICAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDEzNWRlZyk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC51cCB7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTEzNWRlZyk7XG4gICAgICAgICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgtMTM1ZGVnKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmRvd24ge1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgICAgICAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5saW5lLXNlcGFyYXRvci1ncmF5IHtcbiAgICAgICAgICAgIGhlaWdodDogOHB4O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0Y3RjdGNztcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG5cbiAgICAgICAgLnN1Yi1uYXYtbWVudSB7XG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICB9XG5cbiAgICAgICAgLnNjcm9sbCB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOTUpO1xuICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgICAgIG92ZXJmbG93LXg6IGF1dG87XG4gICAgICAgICAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gICAgICAgICAgICAtbXMtb3ZlcmZsb3ctc3R5bGU6IC1tcy1hdXRvaGlkaW5nLXNjcm9sbGJhcjtcblxuICAgICAgICAgICAgLmFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiAycHggc29saWQgJHN0ZW4tcmVkICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuc2Nyb2xsOjotd2Via2l0LXNjcm9sbGJhciB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgLmRvdC1jaXJjbGUsXG4gICAgICAgIC5kb3QtY2lyY2xlLW1vZGFsIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgICAgICB3aWR0aDogNjVweDtcbiAgICAgICAgICAgIGhlaWdodDogNjVweDtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDE2MHB4O1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA4cHg7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogOHB4O1xuXG4gICAgICAgICAgICAuZG90LXRleHQge1xuICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udF9mYW1pbHlfbWFpbjtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDAuN3JlbSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIHRleHQtb3ZlcmZsb3c6IEVsbGlwc2lzO1xuICAgICAgICAgICAgICAgIC8qIHdpbGwgbWFrZSBbLi4uXSBhdCB0aGUgZW5kICovXG4gICAgICAgICAgICAgICAgd2lkdGg6IDYwcHg7XG4gICAgICAgICAgICAgICAgLyogY2hhbmdlIHRvIHlvdXIgcHJlZmVyZW5jZXMgKi9cbiAgICAgICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICAgICAgICAgIC8qIHBhcmFncmFwaCB0byBvbmUgbGluZSAqL1xuICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICAgICAgLyogb2xkZXIgYnJvd3NlcnMgKi9cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8qIC5kb3QtY2lyY2xlIHtcbiAgICAgICAgICAgIGJvcmRlcjogMnB4IHNvbGlkICM3MDcwNzAgIWltcG9ydGFudDtcbiAgICAgICAgfSAqL1xuXG4gICAgICAgIC5kb3QtY2lyY2xlLW1vZGFsIHtcbiAgICAgICAgICAgIGJvcmRlcjogMnB4IHNvbGlkICRzdGVuLXJlZCAhaW1wb3J0YW50O1xuICAgICAgICB9XG5cbiAgICAgICAgLm5hdi1pdGVtIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cbiAgICAgICAgICAgIGE6bGluayxcbiAgICAgICAgICAgIGE6dmlzaXRlZCxcbiAgICAgICAgICAgIGE6YWN0aXZlLFxuICAgICAgICAgICAgLmJ0bi1wcm9qZWN0LW1vZGFsIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogIzJFMkQyRDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDAuNzVyZW07XG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA2MXB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogNjFweDtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxNjBweDtcbiAgICAgICAgICAgICAgICBib3JkZXI6IDZweCBzb2xpZCB0cmFuc3BhcmVudDtcblxuICAgICAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICAgICAgICAgIG9iamVjdC1wb3NpdGlvbjogY2VudGVyO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnByb2plY3QtbW9kYWwtaXRlbSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzkzOTM5O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDB2aDtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICAgICAgICBvdmVyZmxvdy14OiBoaWRkZW47XG4gICAgICAgICAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgICAgICAgICAgb3V0bGluZTogMDtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgei1pbmRleDogMTA1MztcblxuICAgICAgICAgICAgLmluZGV4LWJ1dHRvbnMge1xuICAgICAgICAgICAgICAgIHotaW5kZXg6IDEwOTk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuaW5kZXgtYnV0dG9uLXByb2plY3R7XG4gICAgICAgICAgICAgICAgei1pbmRleDogMTE5OTtcbiAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICB6LWluZGV4OiAxOTk5O1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuY29udGFpbmVyIHtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMHZoO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuY29udGVudC1jZW50ZXIge1xuICAgICAgICAgICAgICAgIGhlaWdodDogNzV2aDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmxpbmUtZ3JheSB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0RFREVERTtcbiAgICAgICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAyNHB4O1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnByb2plY3QtZGV0YWlsIHtcbiAgICAgICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAucHJvamVjdC1tb2RhbC1jbG9zZSB7XG4gICAgICAgICAgICAgICAgYm90dG9tOiAxNXB4O1xuICAgICAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgICAgICAgICAgIHJpZ2h0OiAyMHB4O1xuXG4gICAgICAgICAgICAgICAgZGl2IHtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMjBweDtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCLDl1wiO1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAyLjVyZW07XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogI0ZGRjtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC50aXRsZSB7XG4gICAgICAgICAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmNhdGVnb3J5IHtcbiAgICAgICAgICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjJyZW07XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDIwMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmRlc2NyaXB0aW9uIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjVyZW07XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuOHJlbTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmJ0bi1yZWQsXG4gICAgICAgICAgICAuYnRuLW91dGxpbmUtd2hpdGUge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMC44cmVtO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDNweCAxNXB4IDNweCAxNXB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAvKiAjbGluZS1zbGlkZSB7XG4gICAgICAgICAgICAgICAgZGl2W2NsYXNzKj1saW5lLXNsaWRlXSB7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci10b3A6IDJweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogNXB4O1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLmFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci10b3A6IDJweCBzb2xpZCByZ2IoMjU1LCAyNTUsIDI1NSkgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9ICovXG5cbiAgICAgICAgICAgIC5zd2lwZXItbGVmdCB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDB2aDtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICB6LWluZGV4OiAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuc3dpcGVyLXJpZ2h0IHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMHZoO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgICAgICB6LWluZGV4OiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgI2ZpbHRlciB7XG4gICAgICAgICAgICBtYXJnaW46IDJyZW0gMDtcblxuICAgICAgICAgICAgI3NlY3Rpb25zLCAjc2VjdGlvbi1maWx0ZXItaXRlbXMge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMHJlbTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwcmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgI2VuY29mcmFkb3Mge1xuXG4gICAgICAgIC8vIGZvcm0gLmJ0bi1mb3JtIHtcbiAgICAgICAgLy8gICAgIHBhZGRpbmc6IDAuMnJlbSA1cmVtICFpbXBvcnRhbnQ7XG4gICAgICAgIC8vIH1cbiAgICAgICAgLyogLmhlYWRlci10aXRsZSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDM2cHg7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250X2ZhbWlseV9tYWluO1xuICAgICAgICB9ICovXG4gICAgICAgIC5zdWJ0aXRsZSB7XG4gICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5iZy13aGl0ZSB7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xuXG4gICAgICAgIH1cblxuICAgICAgICAuaWNvbm8ge1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDBweDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5sb2dvIHtcbiAgICAgICAgICAgIG1heC1oZWlnaHQ6IDJyZW07XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDEzcmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgLmxpbmsge1xuICAgICAgICAgICAgY29sb3I6ICRzdGVuLXJlZDtcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udF9mYW1pbHlfbWFpbjtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5hcnJvdyB7XG4gICAgICAgICAgICBib3JkZXI6IHNvbGlkICRzdGVuLXJlZDtcbiAgICAgICAgICAgIGJvcmRlci13aWR0aDogMCAxLjVweCAxLjVweCAwO1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgcGFkZGluZzogNHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLnRyaWFuZ3VsbyB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICB3aWR0aDogMDtcbiAgICAgICAgICAgIGhlaWdodDogMDtcbiAgICAgICAgICAgIGJvcmRlci1sZWZ0OiA4cHggc29saWQgd2hpdGU7XG4gICAgICAgICAgICBib3JkZXItdG9wOiA1cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiA1cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogNXB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLnJpZ2h0IHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG4gICAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG4gICAgICAgIH1cblxuICAgICAgICAubGVmdCB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxMzVkZWcpO1xuICAgICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgxMzVkZWcpO1xuICAgICAgICB9XG5cbiAgICAgICAgLnVwIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC0xMzVkZWcpO1xuICAgICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgtMTM1ZGVnKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5kb3duIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICAgICAgICB9XG5cbiAgICAgICAgaDIge1xuICAgICAgICAgICAgZm9udC1zaXplOiAzNnB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLypcbiAgICAgICAgZC1mbGV4ID4gYWd1c3RpblxuICAgICAgICBpbWcge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH0gKi9cbiAgICAgICAgLmJyIHtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDMwcHg7XG4gICAgICAgIH1cblxuICAgICAgICAuZGV0YWlsLWRlc2Mge1xuICAgICAgICAgICAgY29sb3I6ICM3MDcwNzA7XG5cbiAgICAgICAgICAgIC5jYXRlZ29yeSB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICM3MDcwNzA7XG4gICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250X2ZhbWlseV9tYWluO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAudmFsdWUge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjMzEzMTMxO1xuICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udF9mYW1pbHlfbWFpbjtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDIuOHJlbTtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMi44cmVtO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAudW5pdCB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICMzMTMxMzE7XG4gICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250X2ZhbWlseV9tYWluO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogJHRleHRfZm9udF9zaXplX2xnO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuZGV0YWlsIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogIzcwNzA3MDtcbiAgICAgICAgICAgICAgICBmb250LWZhbWlseTogJGZvbnRfZmFtaWx5X21haW47XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5saW5lLWJsYWNrIHtcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAzcHggc29saWQgIzMxMzEzMTtcbiAgICAgICAgICAgICAgICB3aWR0aDogNDBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5wcm9kdWN0LWltZyB7XG4gICAgICAgICAgICBtYXJnaW46IGF1dG87XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDIxNXB4O1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDE1cHg7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAjZXNwZWNpYWxlcyB7XG5cbiAgICAgICAgICAgIC8qIGgyIHtcbiAgICAgICAgICAgICAgICBmb250LWZhbWlseTogJGZvbnRfZmFtaWx5X21haW47XG4gICAgICAgICAgICB9ICovXG4gICAgICAgICAgICAuYnRuLXJlZC1zbGlkZSB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHN0ZW4tcmVkO1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDMwcHggIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICAgICAgICAgIC8qIHBhZGRpbmc6IDAuMnJlbSAwLjc1cmVtOyAqL1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDFyZW07XG5cbiAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHN0ZW4tcmVkLWhvdmVyICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuYmctd2hpdGUge1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDE1cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvLyAjc2xpZGVyLW11cm9zLXktcGlsYXJlcy1pdyB7XG4gICAgICAgIC8vICAgICBtYXJnaW4tbGVmdDogNTcwLjVweDtcbiAgICAgICAgLy8gfVxuICAgICAgICAvLyAjc2xpZGVyLW11cm9zLXktcGlsYXJlcyA+IC50bnMtaXRlbSB7XG4gICAgICAgIC8vICAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG4gICAgICAgIC8vIH1cblxuICAgICAgICAvLyAjc2xpZGVyLXRyZXBhbnRlcyA+IC50bnMtaXRlbSB7XG4gICAgICAgIC8vICAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG4gICAgICAgIC8vIH1cblxuICAgICAgICAvLyAjc2xpZGVyLWxvc2FzID4gLnRucy1pdGVtIHtcbiAgICAgICAgLy8gICAgIHBhZGRpbmctbGVmdDogMTBweDtcbiAgICAgICAgLy8gfVxuXG4gICAgICAgIC8vICNzbGlkZXItY2ltYnJhcy15LXB1bnRhbGVzID4gLnRucy1pdGVtIHtcbiAgICAgICAgLy8gICAgIHBhZGRpbmctbGVmdDogMTBweDtcbiAgICAgICAgLy8gfVxuXG4gICAgICAgIC5zbGlkZS1kZXRhbGxlcyB7XG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgICAgICAgICAuc2Nyb2xsIHtcbiAgICAgICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICAgICAgICAgIG92ZXJmbG93LXg6IGF1dG87XG4gICAgICAgICAgICAgICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICAgICAgICAgICAgICAgIC1tcy1vdmVyZmxvdy1zdHlsZTogLW1zLWF1dG9oaWRpbmctc2Nyb2xsYmFyO1xuXG4gICAgICAgICAgICAgICAgcCxcbiAgICAgICAgICAgICAgICBoMiB7XG4gICAgICAgICAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLmRlc2NyaXB0aW9uIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLnNlY3Rpb24ge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTVweDtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogODBweCAyMHB4IDgwcHggMjBweDtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDgwJTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5zY3JvbGw6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmNhcm91c2VsLWhlYWRlciB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgLmNhcm91c2VsIHtcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAgICAgICAgIC5vcGFjaXR5IHtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAwLjU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5zY3JvbGwge1xuICAgICAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgICAgICAgICAgb3ZlcmZsb3cteDogYXV0bztcbiAgICAgICAgICAgICAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gICAgICAgICAgICAgICAgLW1zLW92ZXJmbG93LXN0eWxlOiAtbXMtYXV0b2hpZGluZy1zY3JvbGxiYXI7XG5cbiAgICAgICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuY2Fyb3VzZWwtc2VjdGlvbiB7XG4gICAgICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDE1cHg7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxOCU7XG5cbiAgICAgICAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXgtaGVpZ2h0OiA3NHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5zY3JvbGw6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmNhdGFsb2dvIGltZyB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDIzMHB4O1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cblxuICAgICAgICAuc2xpZGVyLXByb2R1Y3RzLFxuICAgICAgICAucHJvZHVjdHMtZ3JpZCB7XG4gICAgICAgICAgICBtaW4taGVpZ2h0OiA0NTBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5oZWFkZXIge1xuICAgICAgICAgICAgaGVpZ2h0OiA4MHZoO1xuXG4gICAgICAgICAgICAuaGVhZGVyLWN1c3RvbS1pbWcge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgb2JqZWN0LXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAjbm90aWNpYXMge1xuICAgICAgICBtYXJnaW4tdG9wOiAwcHg7XG5cbiAgICAgICAgLm5vdGljaWEge1xuXG4gICAgICAgICAgICAuYXJyb3cge1xuICAgICAgICAgICAgICAgIGJvcmRlcjogc29saWQgJHN0ZW4tcmVkO1xuICAgICAgICAgICAgICAgIGJvcmRlci13aWR0aDogMCAxLjVweCAxLjVweCAwO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiA0cHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5yaWdodCB7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcbiAgICAgICAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5sZWZ0IHtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxMzVkZWcpO1xuICAgICAgICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMTM1ZGVnKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnVwIHtcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtMTM1ZGVnKTtcbiAgICAgICAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKC0xMzVkZWcpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuZG93biB7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICAgICAgICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmxpbmUtc2VwYXJhdG9yLWdyYXkge1xuICAgICAgICAgICAgaGVpZ2h0OiA4cHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjdGN0Y3O1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cblxuICAgICAgICAuc3ViLW5hdi1tZW51IHtcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAjY29udGFjdCB7XG4gICAgICAgIC5tdC1tYWluIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgICAgIH1cblxuICAgICAgICAubXktZm9ybSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiA1MHB4O1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNTBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIGZvcm0gLmJ0bi1mb3JtIHtcbiAgICAgICAgLy8gICAgIHBhZGRpbmc6IDAuMnJlbSA1cmVtO1xuICAgICAgICAvLyB9XG4gICAgICAgIGgxIHtcbiAgICAgICAgICAgIC8vIGZvbnQtc2l6ZTogY2FsYygkaDFfZm9udF9zaXplIC8gMik7XG4gICAgICAgICAgICAvLyBsaW5lLWhlaWdodDogY2FsYygkaDFfZm9udF9zaXplIC8gMik7XG4gICAgICAgICAgICBjb2xvcjogIzMxMzEzMTtcbiAgICAgICAgICAgIC8vIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gaDIge1xuICAgICAgICAvLyAgICAgZm9udC1zaXplOiAkaDJfZm9udF9zaXplX3ZhcmlhbnRlX2I7XG4gICAgICAgIC8vICAgICBsaW5lLWhlaWdodDogJGgyX2ZvbnRfc2l6ZV92YXJpYW50ZV9iO1xuICAgICAgICAvLyAgICAgZm9udC13ZWlnaHQ6ICRmd19tZWQ7XG4gICAgICAgIC8vIH1cbiAgICAgICAgLmJnLXdoaXRlIHtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gICAgICAgIH1cblxuICAgICAgICAuaW1nLXNjcm9sbCB7XG4gICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICAgICAgb3ZlcmZsb3cteDogYXV0bztcbiAgICAgICAgICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgICAgICAgICAgIC1tcy1vdmVyZmxvdy1zdHlsZTogLW1zLWF1dG9oaWRpbmctc2Nyb2xsYmFyO1xuXG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAyMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAucG9pbnQtaG92ZXItbGEge1xuICAgICAgICAgICAgaGVpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMjAlO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogNDMlO1xuICAgICAgICB9XG5cbiAgICAgICAgLnBvaW50LWhvdmVyLW14IHtcbiAgICAgICAgICAgIGhlaWdodDogMjBweDtcbiAgICAgICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDI1JTtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDQzJTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5wb2ludC1ob3Zlci1jb2wge1xuICAgICAgICAgICAgaGVpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogNDMlO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogNTQlO1xuICAgICAgICB9XG5cbiAgICAgICAgLnBvaW50LWhvdmVyLXB0IHtcbiAgICAgICAgICAgIGhlaWdodDogMjBweDtcbiAgICAgICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDkwJTtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDI2JTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5wb2ludC1ob3Zlci1lcyB7XG4gICAgICAgICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICAgICAgICB3aWR0aDogMjBweDtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA5OCU7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAyNCU7XG4gICAgICAgIH1cblxuICAgICAgICAucG9pbnQtaG92ZXItcG9sIHtcbiAgICAgICAgICAgIGhlaWdodDogMjBweDtcbiAgICAgICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDExMSU7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxMyU7XG4gICAgICAgIH1cblxuICAgICAgICAuc2xpZGUge1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuM3JlbTtcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAgICAgICAgIC5zZWN0aW9uIHtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICAgICAgICBtaW4td2lkdGg6IDI3JTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnNjcm9sbCB7XG4gICAgICAgICAgICAgICAgY3Vyc29yOiAtd2Via2l0LWdyYWI7XG4gICAgICAgICAgICAgICAgY3Vyc29yOiBncmFiO1xuICAgICAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgICAgICAgICAgb3ZlcmZsb3cteDogYXV0bztcbiAgICAgICAgICAgICAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gICAgICAgICAgICAgICAgLW1zLW92ZXJmbG93LXN0eWxlOiAtbXMtYXV0b2hpZGluZy1zY3JvbGxiYXI7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICNjdXN0b21pemUtcGhvdG9zIHtcbiAgICAgICAgLnRucy1pdGVtIHtcbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAyNTBweDtcbiAgICAgICAgICAgICAgICBtaW4td2lkdGg6IDI1MHB4O1xuICAgICAgICAgICAgICAgIG1heC13aWR0aDogNDUwcHg7XG4gICAgICAgICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgICAgIHNjYWxlOiAxO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgI2dhbGxlcnktbW9zYWljIHtcbiAgICAgICAgZ3JpZC1hdXRvLXJvd3M6IDI1MHB4O1xuICAgIH1cbn1cblxuQG1lZGlhKG1heC13aWR0aDogNTYwcHgpIHtcbiAgICBodG1se1xuICAgICAgICBmb250LXNpemU6ICR0ZXh0X2ZvbnRfc2l6ZV94cztcbiAgICB9XG5cbiAgICBoMSxcbiAgICAjcHJvZHVjdHMgaDEsXG4gICAgI2VuY29mcmFkb3MgaDEsXG4gICAgI3NvYnJlLXN0ZW4gaDEge1xuICAgICAgICBmb250LWZhbWlseTogJGZvbnRfZmFtaWx5X2gxICFpbXBvcnRhbnQ7XG4gICAgICAgIGZvbnQtc2l6ZTogJGgxX2ZvbnRfc2l6ZV81NjAgIWltcG9ydGFudDtcbiAgICAgICAgZm9udC13ZWlnaHQ6ICRmd19tZWQgIWltcG9ydGFudDtcblxuICAgIH1cblxuICAgIGgyLFxuICAgICNwcm9kdWN0cyBoMixcbiAgICAjYW5kYW1pb3MgaDIsXG4gICAgI2VuY29mcmFkb3MgaDIsXG4gICAgI3NvYnJlLXN0ZW4gaDIge1xuICAgICAgICAvLyBmb250LWZhbWlseTogJGZvbnRfZmFtaWx5X21haW4gIWltcG9ydGFudDtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRmb250X2ZhbWlseV9oMiAhaW1wb3J0YW50O1xuICAgICAgICBmb250LXNpemU6ICRoMl9mb250X3NpemVfNTYwICFpbXBvcnRhbnQ7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAkZndfbWVkICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgcCB7XG4gICAgICAgIGZvbnQtc2l6ZTogJHRleHRfZm9udF9zaXplX3hzO1xuICAgIH1cblxuICAgIHVse1xuICAgICAgICBsaXtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJHRleHRfZm9udF9zaXplX3hzOyAgIFxuICAgICAgICAgICAgPiBzcGFue1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogJHRleHRfZm9udF9zaXplX3hzICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB9IFxuICAgICAgICB9XG4gICAgfVxuXG4gICAgI3Byb2R1Y3RzLFxuICAgICNlbmNvZnJhZG9zLFxuICAgICNzb2JyZS1zdGVue1xuICAgICAgICBwIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJHRleHRfZm9udF9zaXplX3hzO1xuICAgICAgICB9XG5cbiAgICAgICAgdWx7XG4gICAgICAgICAgICBsaXtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6ICR0ZXh0X2ZvbnRfc2l6ZV94czsgICBcbiAgICAgICAgICAgICAgICA+IHNwYW57XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogJHRleHRfZm9udF9zaXplX3hzICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgfSBcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5zdWItbmF2LW1lbnUgLmxvZ28tc20tbm9uZSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgLnB4LTEwMiB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMCAhaW1wb3J0YW50O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLyogI3N1Yi1tZW51IC5sb2dvIHtcbiAgICAgICAgbWF4LWhlaWdodDogMjRweDtcbiAgICB9ICovXG5cbiAgICAjcHJvZHVjdHMge1xuICAgICAgICAuc2xpZGUtdGl0bGUge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xuXG4gICAgICAgICAgICAubG9nbyB7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA1NXB4O1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDYwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5wcm9kdWN0IHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8qIGgxe1xuICAgICAgICAgICAgZm9udC1zaXplOiAzNXB4O1xuICAgICAgICB9ICovXG4gICAgICAgIC8qIGgye1xuICAgICAgICAgICAgZm9udC1zaXplOiAyOHB4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDExMCU7XG4gICAgICAgIH0gKi9cblxuICAgICAgICAjZm90b3Mge1xuICAgICAgICAgICAgaDIge1xuXG4gICAgICAgICAgICAgICAgLndpdGhfbG9nbyB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogJGgyX2ZvbnRfc2l6ZV81NjAgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAjc2xpZGVyLXZlbnRhamFzIHtcbiAgICAgICAgLnRucy1pdGVtIHtcbiAgICAgICAgICAgIGgzIHtcbiAgICAgICAgICAgICAgICBmb250LWZhbWlseTogJGZvbnRfZmFtaWx5X21haW4gIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogJGZ3X21lZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICNzaG93cm9vbSB7XG5cbiAgICAgICAgLnNsaWRlLXRpdGxlIC50aXRsZSxcbiAgICAgICAgI3Nob3dyb29tLWZvcm0gZm9ybSB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICNnYWxsZXJ5LW1vc2FpYyB7XG4gICAgICAgIGdyaWQtYXV0by1yb3dzOiAzNTBweDtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMSwgMWZyKTtcblxuICAgICAgICAuZ2FsbGVyeS1pdGVtIHtcbiAgICAgICAgICAgICY6bnRoLWNoaWxkKDEpIHtcbiAgICAgICAgICAgICAgICBncmlkLXJvdy1zdGFydDogc3BhbiAxO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgI3Byb2plY3QgLnB5LTE4NiB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAkcGFkZGluZ19tZDtcbiAgICAgICAgLy8gcGFkZGluZy1ib3R0b206IDAgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAjYW5kYW1pb3N7IFxuICAgICAgICAuZmlyc3Qtc3BlY3sgXG4gICAgICAgICAgICBwe1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogJHRleHRfZm9udF9zaXplX21kO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG5AbWVkaWEobWF4LXdpZHRoOiA0MDBweCkge1xuXG4gICAgI3Byb2R1Y3RzLFxuICAgICNhbmRhbWlvcyB7XG4gICAgICAgICNlc3BlY2lmaWNhY2lvbmVzIHtcbiAgICAgICAgICAgIC5lc3BlY2lmaWNhY2lvbiB7XG4gICAgICAgICAgICAgICAgLmVzcC1jb250ZW50IHtcbiAgICAgICAgICAgICAgICAgICAgLnRleHQtYWJzIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNsZWFyOiBib3RoO1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuZXNwZWNpZmljYWNpb24tdjIge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogJHRleHRfZm9udF9zaXplX3hzO1xuXG4gICAgICAgICAgICAgICAgLmRmLTIge1xuICAgICAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgICAgICAgICAgICAgIGFsaWduLWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLmRmLTNiIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IC41ZW07XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLmRmLTNhIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLmRmLTNhLWZ1bGwge1xuICAgICAgICAgICAgICAgICAgICAucXQtY3VzdG9tIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMi41ZW07XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cblxuXG4vLyBGb3JtdWxhcmlvOiBGdWVudGUgY3VzdG9tIGRlIGxhIGNhYmV6ZXJhXG4uY3VzdG9tLXRpdGxlIHtcbiAgICBsaW5lLWhlaWdodDogMS4xICFpbXBvcnRhbnQ7XG4gICAgZm9udC1mYW1pbHk6ICRmb250X2ZhbWlseV9tYWluICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLWJvdHRvbTogMC41cmVtICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLXRvcDogMCAhaW1wb3J0YW50O1xuICAgIGZvbnQtc2l6ZTogMnJlbSAhaW1wb3J0YW50O1xufVxuXG4uY3Vyc29yLXpvb20taW4ge1xuICAgIGN1cnNvcjogem9vbS1pbjtcbn1cblxuLmN1cnNvci1sZWZ0LXJpZ2h0IHtcbiAgICBjdXJzb3I6IGV3LXJlc2l6ZTtcbn1cblxuLmN1cnNvci1oYW5kLW9wZW4ge1xuICAgIGN1cnNvcjogZ3JhYjtcbn1cblxuLyoqXG4gKiBNYXBhLCBjb24gcGluIGluY2x1aWRvXG4gKi9cbi5jdXN0b20tbWFwIHtcbiAgICAuYmctcmVkIHtcbiAgICAgICAgYmFja2dyb3VuZDogI0Q3MEQxNyAwJSAwJSBuby1yZXBlYXQgcGFkZGluZy1ib3g7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDEzcHg7XG4gICAgfVxuXG4gICAgLnJlc3BvbnNpdmUtd2lkdGgge1xuICAgICAgICB3aWR0aDogbWF4LWNvbnRlbnQ7XG4gICAgfVxuXG4gICAgLnRyYW5zaXRpb24tNTAwIHtcbiAgICAgICAgdHJhbnNpdGlvbjogNTAwbXM7XG4gICAgfVxuXG4gICAgLm9wYWNpdHktMCB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgfVxuXG4gICAgLmN1c3RvbS1waW4ge1xuICAgICAgICBoZWlnaHQ6IDE0cHg7XG4gICAgICAgIHdpZHRoOiAxNHB4O1xuICAgICAgICB6LWluZGV4OiA5OTtcblxuICAgICAgICBpbWcge1xuICAgICAgICAgICAgd2lkdGg6IDEuM2VtO1xuICAgICAgICAgICAgaGVpZ2h0OiAxLjNlbTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC0uMjVlbSwgLS4yNWVtKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIFtkYXRhLXBpbl0ge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNDUlLCAtMTIwJSk7XG4gICAgfVxufVxuXG5cbiNzdGFuZGFyZC1jYXJvdXNlbCAuY2Fyb3VzZWwtaW5uZXIgLmNhcm91c2VsLWl0ZW0gLml0ZW0tYmcgLml0ZW0tZGF0YSAudGFnIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjRkZGO1xuICAgIGJvcmRlci1yYWRpdXM6IDIwcHg7XG4gICAgY29sb3I6ICNGRkY7XG4gICAgZm9udC1zaXplOiAxNXB4O1xuICAgIG1hcmdpbi1yaWdodDogMjBweDtcbiAgICBwYWRkaW5nOiAxNHB4IDIwcHg7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4jc3RhbmRhcmQtY2Fyb3VzZWwgLmNhcm91c2VsLWlubmVyIC5jYXJvdXNlbC1pdGVtIC5pdGVtLWJnIC5pdGVtLWRhdGEgYS5saW5rLXByb2plY3Qge1xuICAgIGNvbG9yOiAjRkZGO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIC8vIG1hcmdpbi1ib3R0b206IDQwcHg7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4jc3RhbmRhcmQtY2Fyb3VzZWwgLmNhcm91c2VsLWlubmVyIC5jYXJvdXNlbC1pdGVtIC5pdGVtLWJnIC5pdGVtLWRhdGEgLnRhZy1wcm9kdWN0IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRDcwRDE3O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNENzBEMTc7XG4gICAgYm9yZGVyLXJhZGl1czogMjBweDtcbiAgICBjb2xvcjogI0ZGRjtcbiAgICBmb250LXNpemU6IDE1cHg7XG4gICAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuICAgIHBhZGRpbmc6IDE0cHggMjBweDtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbiNzbGlkZXItcHVlbnRlcy12aWFkdWN0b3MteS10dW5lbGVzIHtcbiAgICBnYXA6IDI0cHg7XG59XG5cblxuLy8gICAgICNzbGlkZXItcHVlbnRlcy12aWFkdWN0b3MteS10dW5lbGVzPi50bnMtaXRlbSB7XG4vLyAgICAgICAgIHdpZHRoOiBjYWxjKDAuMzMzMzMlKTtcbi8vICAgICAgICAgcGFkZGluZzogMHB4IDEwcHg7XG4vLyAgICAgfVxuXG4vLyBAbWVkaWEobWF4LXdpZHRoOjU2MHB4KSB7XG4vLyAgICAgI3NsaWRlci1wdWVudGVzLXZpYWR1Y3Rvcy15LXR1bmVsZXM+LnRucy1pdGVtIHtcbi8vICAgICAgICAgd2lkdGg6IGNhbGMoMC4zMzMzMyUpO1xuLy8gICAgICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG5cbi8vICAgICB9XG4vLyB9XG5cbi8vIDEyLTIwMjMgTGx1aXMgLT4gZWwgdGV4dG8gcCBlc3RhIG11eSBwZXF1ZcOxb1xuLy8gI3Byb2plY3QgI2Rlc2NyaXBjaW9uIHAsXG4vLyAjcHJvamVjdCAjc29sdWNpb24gcCB7XG4vLyAgICAgZm9udC1zaXplOiAxNXB4O1xuLy8gICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4vLyB9XG5cbi8vICNwcm9qZWN0IGgyLFxuLy8gI3Byb2plY3QgLmgyIHtcbi8vICAgICBmb250LXNpemU6ICRoMl9mb250X3NpemU7XG4vLyAgICAgZm9udC13ZWlnaHQ6ICRmd19tZWQ7XG4vLyAgICAgbGluZS1oZWlnaHQ6IDEwNSU7XG4vLyAgICAgZm9udC1mYW1pbHk6ICRmb250X2ZhbWlseV9tYWluICFpbXBvcnRhbnQ7XG4vLyAgICAgbWFyZ2luLWJvdHRvbTogMjVweDtcbi8vIH1cblxuLyogLmNvbC1tZC0zIHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB3aWR0aDogMjUlO1xufSAqL1xuXG4udGFibGEge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICM5OTk7XG4gICAgd2lkdGg6IDEwMCU7XG5cbiAgICB0ZCB7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICM5OTk7XG4gICAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgICAgcGFkZGluZzogNXB4O1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXG4gICAgICAgICYudGQtbGluayB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICB3aWR0aDogMTAwcHg7XG4gICAgICAgIH1cblxuICAgICAgICBiIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAkbGhfcDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuI21vZGFsQ2Fyb3VzZWxPYnJhcyxcbiNtb2RhbEltYWdlQm94IHtcbiAgICAubW9kYWwtaGVhZGVyLXRvb2xzIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDVweDtcbiAgICAgICAgcmlnaHQ6IDVweDtcbiAgICAgICAgei1pbmRleDogMTA2MDtcblxuICAgICAgICAuY2xvc2Uge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDI1NSwgMjU1LCAyNTUpO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICAgICAgaGVpZ2h0OiAzMHB4O1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgd2lkdGg6IDMwcHg7XG4gICAgICAgICAgICBvcGFjaXR5OiAuNzU7XG5cbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDMwcHg7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDE4cHg7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgIGJvdHRvbTogMHB4O1xuICAgICAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAzMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLm1vZGFsLWJvZHl7XG4gICAgICAgIC5tYWluLWltYWdle1xuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBvYmplY3QtZml0OiBjb250YWluO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMC4zcmVtO1xuICAgICAgICAgICAgbWF4LWhlaWdodDogOTB2aDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBtZWRpYShtYXgtd2lkdGg6IDU2MHB4KSB7XG4gICAgICAgIC5tb2RhbC1oZWFkZXItdG9vbHMge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiA1cHg7XG4gICAgICAgICAgICByaWdodDogNXB4O1xuICAgICAgICAgICAgei1pbmRleDogMTA2MDtcblxuICAgICAgICAgICAgLmNsb3NlIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDEpO1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDMwcHg7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAzMHB4O1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IC43NTtcblxuICAgICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAzMHB4O1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMThweDtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgICBib3R0b206IDJweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8vIEVtcGxlbyBTdGVuIC8vXG5cbiNlbXBsZW8tc3RlbiB7XG4gICAgZm9ybSB7XG4gICAgICAgIC8vIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIC8vIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47ICAgICAgICBcbiAgICAgICAgLy8ganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cbiAgICAgICAgLmZvcm0tZW1wbGVvIHtcbiAgICAgICAgICAgIC5jYW1wby1mb3JtIHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDE1cHggMDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDA7XG4gICAgXG4gICAgICAgICAgICAgICAgc2VsZWN0LCBpbnB1dHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMzBweDtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgICAgICAgICAgIH0gICAgICAgICAgICBcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5jYW1wby1mb3JtLTEge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggY2FsYyh2YXIoLS1icy1ndXR0ZXIteCkgKiAwLjUpOztcbiAgICBcbiAgICAgICAgICAgICAgICBpbnB1dCwgc2VsZWN0IHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMzBweDtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIFxuICAgICAgICB9XG5cbiAgICAgICAgLmJ0bi1zdWJtaXQge1xuICAgICAgICAgICAgd2lkdGg6IDQwJTtcbiAgICAgICAgICAgIG1hcmdpbjogYXV0bztcblxuICAgICAgICAgICAgaW5wdXQge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDVweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5mb3JtLWNoZWNrIHtcbiAgICAgICAgICAgIGlucHV0IHtcbiAgICAgICAgICAgICAgICAvLyBib3JkZXItcmFkaXVzOiAxLjI1cmVtO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDRweDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMnB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIFxuXG4gICAgLmNvbnRhY3QtYmFubmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiL2ltZy9jb250YWN0L2JnX2Jhbm5lci5qcGdcIik7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHotaW5kZXg6IDA7XG5cbiAgICAgICAgaDIge1xuICAgICAgICAgICAgY29sb3I6ICMyNDIwMjE7XG4gICAgICAgICAgICBmb250LXNpemU6ICRoMl9mb250X3NpemU7XG4gICAgICAgICAgICBmb250LXdlaWdodDogJGZ3X21lZDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAkbGhfaDI7XG4gICAgICAgIH1cblxuICAgICAgICAuYmctb3BhY2l0eSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOCk7XG4gICAgICAgICAgICBwYWRkaW5nOiAzMHB4IDE1cHggMTVweCAxNXB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLmgtODAwcHgge1xuICAgICAgICAgICAgbWluLWhlaWdodDogODAwcHg7XG4gICAgICAgIH1cblxuICAgICAgICAuY29udGVudC1mb290ZXIge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjJyZW07XG4gICAgICAgIH1cbiAgICB9XG5cbn1cblxuXG4jY2FuYWwtZXRpY297XG4gICAgZm9ybSB7XG4gICAgICAgIC8vIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIC8vIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47ICAgICAgICBcbiAgICAgICAgLy8ganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cbiAgICAgICAgLmZvcm0tZXRpY28ge1xuICAgICAgICAgICAgLmNhbXBvLWZvcm0ge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMTVweCAwO1xuICAgICAgICAgICAgICAgIC8vIHBhZGRpbmc6IDEwcHggMDtcbiAgICBcbiAgICAgICAgICAgICAgICBzZWxlY3QsIGlucHV0e1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAzMHB4O1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICAgICAgICAgICAgfSBcbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAjc2ksICNubyB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxNXB4O1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDE1cHg7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgI25vIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDIwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLy8gLmNhbXBvLWZvcm0tMSB7XG4gICAgICAgICAgICAvLyAgICAgcGFkZGluZzogMTBweCBjYWxjKHZhcigtLWJzLWd1dHRlci14KSAqIDAuNSk7XG5cbiAgICAgICAgICAgIC8vICAgICBpbnB1dCwgc2VsZWN0IHtcbiAgICAgICAgICAgIC8vICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAvLyAgICAgICAgIGhlaWdodDogMzBweDtcbiAgICAgICAgICAgIC8vICAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgICAgICAgLy8gICAgIH1cbiAgICAgICAgICAgIC8vIH1cbiAgICAgICAgICAgIC8vIC5jYW1wby1mb3JtLTIge1xuICAgICAgICAgICAgLy8gICAgIHBhZGRpbmc6IDEwcHggY2FsYyh2YXIoLS1icy1ndXR0ZXIteCkgKiAwLjUpOztcbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgIC8vICAgICAjc2ksICNubyB7XG4gICAgICAgICAgICAvLyAgICAgICAgIG1hcmdpbjogMTBweCAwO1xuICAgICAgICAgICAgLy8gICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHhcbiAgICAgICAgICAgIC8vICAgICB9XG5cbiAgICAgICAgICAgIC8vICAgICAjbm8ge1xuICAgICAgICAgICAgLy8gICAgICAgICBtYXJnaW4tbGVmdDogMjBweDtcbiAgICAgICAgICAgIC8vICAgICB9XG5cbiAgICAgICAgICAgIC8vICAgICBzZWxlY3Qge1xuICAgICAgICAgICAgLy8gICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIC8vICAgICAgICAgaGVpZ2h0OiAzMHB4O1xuICAgICAgICAgICAgLy8gICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICAgICAgICAvLyAgICAgfVxuICAgICAgICAgICAgLy8gfVxuICAgICAgICAgICAgLmFjdG9mZWNoYSB7XG4gICAgICAgICAgICAgICAgbGFiZWwge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAxJTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9ICAgXG4gICAgICAgICAgICBcbiAgICAgICAgfVxuXG5cbiAgICAgICAgLmJ0bi1zdWJtaXQge1xuICAgICAgICAgICAgd2lkdGg6IDQwJTtcbiAgICAgICAgICAgIG1hcmdpbjogYXV0bztcblxuICAgICAgICAgICAgaW5wdXQge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDVweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5mb3JtLWNoZWNrIHtcbiAgICAgICAgICAgIGlucHV0IHtcbiAgICAgICAgICAgICAgICAvLyBib3JkZXItcmFkaXVzOiAxLjI1cmVtO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDRweDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMnB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIFxuXG4gICAgLmNvbnRhY3QtYmFubmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiL2ltZy9jb250YWN0L2JnX2Jhbm5lci5qcGdcIik7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHotaW5kZXg6IDA7XG5cbiAgICAgICAgaDIge1xuICAgICAgICAgICAgY29sb3I6ICMyNDIwMjE7XG4gICAgICAgICAgICBmb250LXNpemU6ICRoMl9mb250X3NpemU7XG4gICAgICAgICAgICBmb250LXdlaWdodDogJGZ3X21lZDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAkbGhfaDI7XG4gICAgICAgIH1cblxuICAgICAgICAuYmctb3BhY2l0eSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOCk7XG4gICAgICAgICAgICBwYWRkaW5nOiAzMHB4IDE1cHggMTVweCAxNXB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLmgtODAwcHgge1xuICAgICAgICAgICAgbWluLWhlaWdodDogODAwcHg7XG4gICAgICAgIH1cblxuICAgICAgICAuY29udGVudC1mb290ZXIge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjJyZW07XG4gICAgICAgIH1cbiAgICB9XG5cbn1cblxuLmFjY29yZGlvbi1sYW5kaW5nc3tcbiAgICBcbiAgICAuYWNjb3JkaW9uLWxpbmV7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICM3MDcwNzA7XG5cbiAgICAgICAgLmFjY29yZGlvbi1pY29ue1xuICAgICAgICAgICAgd2lkdGg6IDFlbTtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgfVxuXG4gICAgICAgICYuY29sbGFwc2VkIC5hY2NvcmRpb24taWNvbi5hY3RpdmUsXG4gICAgICAgIC5hY2NvcmRpb24taWNvbi5pbmFjdGl2ZXtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG5cbiAgICAgICAgLmFjY29yZGlvbi1pY29uLmFjdGl2ZSxcbiAgICAgICAgJi5jb2xsYXBzZWQgLmFjY29yZGlvbi1pY29uLmluYWN0aXZle1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLm5vcm1hbGl6ZS1saW5lLWhlaWdodCB7XG4gICAgbGluZS1oZWlnaHQ6IDEzNSU7XG5cbiAgICBwLCBkaXYsIHNwYW4ge1xuICAgICAgICBsaW5lLWhlaWdodDogMTM1JTtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRmb250X2ZhbWlseV9tYWluO1xuICAgIH1cbn1cblxuLnVzZXItYXV0aC1hbmQtaXMtYWRtaW4gLmNhbi1lZGl0Om5vdCgudHJ1bWJvd3lnLWVkaXRvcik6ZW1wdHk6YmVmb3Jle1xuICAgIGNvbnRlbnQ6ICdDb250ZW5pZG8gZWRpdGFibGUg4pyP77iPJztcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgb3BhY2l0eTogMC43NTtcbn1cblxuI2xlZ2FsIHtcbiAgICBoMiB7XG4gICAgICAgIGZvbnQtc2l6ZTogJGgyX2ZvbnRfc2l6ZTtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRmb250X2ZhbWlseV9oMjtcbiAgICAgICAgZm9udC13ZWlnaHQ6ICRmd19tZWQ7XG4gICAgfVxufVxuXG5mb3JtLmZvcm0tYmFzZSB7XG5cbiAgICBkaXYuZm9ybS1ncm91cCA+IGxhYmVsLCAgZGl2LmZvcm0tZ3JvdXAucm93ID4gZGl2W2NsYXNzKj1cImNvbC1cIl0gPiBsYWJlbHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gICAgXG59XG4vLyBHb29kXG5cbi5mb3JjZS1oMiB7XG4gICAgZm9udC1zaXplOiAkaDJfZm9udF9zaXplO1xuICAgIGZvbnQtd2VpZ2h0OiAkaDJfZm9udF93ZWlnaHQ7XG4gICAgbGluZS1oZWlnaHQ6ICRsaF9oMjtcbiAgICBmb250LWZhbWlseTogJGZvbnRfZmFtaWx5X2gyICFpbXBvcnRhbnQ7XG59XG5cbkBpbXBvcnQgJ2Nvb2tpZXMnO1xuXG4udGV4dC1iYWxhbmNlIHtcbiAgICB0ZXh0LXdyYXA6IGJhbGFuY2U7XG59XG5cbi5kLW5vbmUtYnJlYWtwb2ludCB7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gICAgICAgIGJyIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8qKlxuICogRXN0byBlcyBwYXJhIHF1ZSBwb3IgZGVmZWN0bywgbG9zIHRleHRvcyBubyBzZSB2ZWFuIHRhbiBwZWdhZG9zXG4gKi9cbi5yb3c6bm90KHApIHtcbiAgICBsaW5lLWhlaWdodDogMS41O1xufVxuXG4gLyoqIENoZWNrZXJzIG9mIG5hdmlnYXRvcnMgKiovXG4uaXMtZmlyZWZveCB7XG5cbiAgICAuYnRuLWN1c3RvbS1yZWQtc21hbGwtc2FmYXJpLWFsaWdue1xuICAgICAgICAtLWJ0bi10cmFuc2xhdGUteTo1MCUhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIGgyIC53aXRoX2ltZyB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgycHgpO1xuXG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xuICAgICAgICAgICAgaGVpZ2h0OiAzOHB4IWltcG9ydGFudDtcbiAgICAgICAgfVxuXG4gICAgfVxuICAgIFxufVxuLmlzLWNocm9tZSB7XG5cbiAgICAuYnRuLWN1c3RvbS1yZWQtc21hbGwtc2FmYXJpLWFsaWdue1xuICAgICAgICAtLWJ0bi10cmFuc2xhdGUteTo1MCUhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIGgyIC53aXRoX2ltZyB7XG4gICAgICAgIGhlaWdodDogNDhweDtcbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMnB4KTtcbiAgICAgICAgfVxuICAgIH1cblxufVxuXG4uaXMtbm90LWNocm9tZSwgLmlzLXNhZmFyaSB7XG5cbiAgICAuYnRuLWN1c3RvbS1yZWQ6bm90KC5ub3QtaGFjay1idG4tY3VzdG9tLXJlZCkge1xuICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAycmVtIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgIH1cblxufVxuXG4uaXMtc2FmYXJpIHtcblxuICAgIC8qKiBcbiAgICAgKiBBeGlvbWF0aWMgQ1NTIGFuZCBMb2JvdG9taXplZCBPd2xzXG4gICAgICogaHR0cHM6Ly9hbGlzdGFwYXJ0LmNvbS9hcnRpY2xlL2F4aW9tYXRpYy1jc3MtYW5kLWxvYm90b21pemVkLW93bHMvIFxuICAgICAqKi9cbiAgICAgLnNsaWRlci1wcm9kdWN0cy5mdWxsLXctY2FyZCA+ICogKyAqLCBcbiAgICAgLnNsaWRlci1zZXJ2aWNlcy5mdWxsLXctY2FyZCA+ICogKyAqIHtcbiAgICAgICAgIG1hcmdpbi1sZWZ0OiAxLjVyZW07XG4gICAgIH1cblxuICAgICBoMiAud2l0aF9pbWcge1xuICAgICAgICBoZWlnaHQ6IDQ4cHg7XG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDJweCk7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5pcy1pb3Mge1xuICAgIC5idG4tY3VzdG9tLXJlZDpub3QoLm5vdC1oYWNrLWJ0bi1jdXN0b20tcmVkKSB7XG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDIuNXJlbSFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBpbnB1dDo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxcHgpO1xuICAgIH1cblxuICAgIGgyIC53aXRoX2ltZyB7XG4gICAgICAgIGhlaWdodDogMzZweDtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDJweCk7XG4gICAgfVxufVxuXG4uaXMtc2FmYXJpLCAuaXMtaW9zIHtcblxuICAgICNmaWx0ZXIgLmZpbHRlci1idXR0b24gLmZpbHRlci1jaXJjbGUge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoY2FsYygodmFyKC0tc2l6ZS1idXR0b24pLzYpKiAtMSkpO1xuICAgICB9XG5cbn1cblxuLmlzLW5vdC1jaHJvbWUsIC5pcy1pb3MsIC5pcy1zYWZhcmkge1xuXG4gICAgI2FuZGFtaW9zICNlc3BlY2lmaWNhY2lvbmVzIC5lc3BlY2lmaWNhY2lvbi12MiAuZGYtNC1yb3cgLnNpemUtY3VzdG9tLCBcbiAgICAjcHJvZHVjdHMgI2VzcGVjaWZpY2FjaW9uZXMgLmVzcGVjaWZpY2FjaW9uLXYyIC5kZi00LXJvdyAuc2l6ZS1jdXN0b20ge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMC45ZW0haW1wb3J0YW50O1xuICAgIH1cblxuICAgIC5idG4tZm9yY2UtYWxpZ24gc3BhbiB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMnB4KTtcbiAgICB9XG5cbiAgICAuYnRuLWZvcmNlLWFsaWduLXNtYWxsIHNwYW4ge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDFweCk7XG4gICAgfVxuXG4gICAgaW5wdXQ6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIsXG4gICAgZm9vdGVyIGlucHV0LmZvcm0tY29udHJvbDo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlcnsgXG4gICAgICAgIGxpbmUtaGVpZ2h0OiB1bnNldCFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLmJ0bi1jdXN0b20tcmVkLmJ0bi1iaWcge1xuICAgICAgICBsaW5lLWhlaWdodDogNDZweCFpbXBvcnRhbnQ7XG4gICAgfVxuXG59XG4iLCIuY3Vyc29yLXBvaW50ZXJ7XG4gICAgY3Vyc29yOiBwb2ludGVyIWltcG9ydGFudDtcbn1cblxuLmJ0bi1jc2wtcmVkLXRyYW5ze1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLWNvbG9yOiAkcmVkICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLXJhZGl1czogMzBweCAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiAkcmVkICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZy1sZWZ0OiAzMHB4ICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZy1yaWdodDogMzBweCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmctdG9wOiAxMXB4ICFpbXBvcnRhbnQ7XG59XG4uYnRuLWNzbC1yZWQtdHJhbnM6aG92ZXJ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHJlZCAhaW1wb3J0YW50O1xuICAgIGJvcmRlci1jb2xvcjogJHJlZCAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiB3aGl0ZSAhaW1wb3J0YW50O1xuICAgIHRyYW5zaXRpb246IC4zcztcbn1cblxuLmJ0bi1yZWQtc29saWR7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHJlZCAhaW1wb3J0YW50O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICRyZWQgIWltcG9ydGFudDtcbiAgICAvLyBib3JkZXItY29sb3I6ICRyZWQgIWltcG9ydGFudDtcbiAgICBib3JkZXItcmFkaXVzOiAzMHB4ICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6IHdoaXRlICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICBwYWRkaW5nOiA0cHggMzBweCAhaW1wb3J0YW50O1xuICAgIC8vIHBhZGRpbmc6IDRweCAzMHB4IDBweCAzMHB4ICFpbXBvcnRhbnQ7XG59XG5cbi5idG4tcmVkLXNvbGlkOmhvdmVye1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRyZWQgIWltcG9ydGFudDtcbiAgICBib3JkZXItY29sb3I6ICRyZWQgIWltcG9ydGFudDtcbiAgICBjb2xvcjogd2hpdGUgIWltcG9ydGFudDtcbiAgICB0cmFuc2l0aW9uOiAuM3M7XG59XG5cbiNzdWItbWVudSB7XG5cbiAgICAubG9nb3tcbiAgICAgICAgbWF4LXdpZHRoOiA5cmVtO1xuICAgIH1cbiAgICAubG9nby5sb2dvLXdvLXBhZGRpbmcge1xuICAgICAgICBoZWlnaHQ6IDFlbTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0uMWVtKTtcbiAgICB9XG4gICAgLmxvZ28ud2l0aC1wYWRkaW5nIHtcbiAgICAgICAgaGVpZ2h0OiAxLjJlbTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC4yZW0pO1xuICAgIH1cbn1cblxuLy8gaWYgZmlyZWZveFxuLmlzLWZpcmVmb3gge1xuICAgICNzdWItbWVudSB7XG4gICAgICAgIC5sb2dvLmxvZ28td28tcGFkZGluZyB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTJweCk7XG4gICAgICAgIH1cbiAgICAgICAgLmxvZ28ubG9nby1wYWRkaW5nIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwZW0pO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vLyBNb3ZpbFxuQG1lZGlhIChtYXgtd2lkdGg6IDc2Ny41MHB4KXtcbiAgICAjc2l0ZS1tZW51e1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzEzMTMxO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgICAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICAgICAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgICAgICBvdXRsaW5lOiAwOyAgICBcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgei1pbmRleDogMTA1MDtcbiAgICAgICAgLmJ0bi1yZWQtc29saWR7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgICAgICB9XG4gICAgICAgIGE6bGluaywgYTp2aXNpdGVkLCBhOmFjdGl2ZSB7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246bm9uZTtcbiAgICAgICAgfVxuICAgICAgICAubmF2LW1lbnUge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgICBtYXJnaW46IDAuNXJlbTtcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIHVse1xuICAgICAgICAgICAgICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAubWVudS1hbGlnbiB7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLm1lbnUtaXRlbSBhIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAzMHB4O1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiA0MHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLm1vcmV7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDIwMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5zdWJtZW51LWl0ZW0gYSB7XG4gICAgICAgICAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDIwMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAucnJzc3tcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDdweDtcbiAgICAgICAgICAgIFxuICAgICAgICAgICAgLmxpbmtkaW57XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogYXV0bztcbiAgICAgICAgICAgICAgICB3aWR0aDogMzVweDtcbiAgICAgICAgICAgICAgICBpbWd7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgNXB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC55b3V0dWJle1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IGF1dG87XG4gICAgICAgICAgICAgICAgd2lkdGg6IDQzcHg7XG4gICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDdweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5pbnN0YWdyYW17XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogYXV0bztcbiAgICAgICAgICAgICAgICB3aWR0aDogMzVweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGltZ3tcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiA1cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmLnJyc3MtcmlnaHQgYXtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDk5JTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSAgICAgXG4gICAgICAgIC5saW5lLWdyYXl7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjREVERURFO1xuICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgaGVpZ2h0OiAyNHB4O1xuICAgICAgICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAjc2l0ZS1tZW51LWNsb3Nle1xuICAgICAgICBib3R0b206IDE1cHg7XG4gICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICAgIHJpZ2h0OiAyMHB4O1xuICAgICAgICB6LWluZGV4OiA5OTk5O1xuXG4gICAgICAgIGRpdntcbiAgICAgICAgICAgIGhlaWdodDogMjBweDtcbiAgICAgICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxkN1wiO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMi41cmVtO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjRkZGO1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAjc3ViLW1lbnV7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LDI1NSwyNTUsIDAuOTUpO1xuICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJGdyYXktbWVudTtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRncmF5LW1lbnU7XG4gICAgICAgIGJvdHRvbTogNTFweDtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB6LWluZGV4OiAxMDAwO1xuXG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIGFuaW1hdGlvbjogc2hvd09wYWNpdHl2MiAuNXMgMnMgbGluZWFyIGZvcndhcmRzO1xuXG4gICAgICAgIEBrZXlmcmFtZXMgc2hvd09wYWNpdHl2MiB7XG4gICAgICAgICAgICAxMDAlIHtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICAucmlnaHQtYnV0dG9ueyAgICBcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgd2lkdGg6IDEyJTtcbiAgICAgICAgfVxuICAgICAgICAuc3ViLW5hdi1tZW51e1xuICAgICAgICAgICAgLy8gYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsMjU1LDI1NSwgMC45NSk7XG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICB9XG4gICAgICAgIC5zY3JvbGwge1xuICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgICAgIG92ZXJmbG93LXg6IGF1dG87XG4gICAgICAgICAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gICAgICAgICAgICAtbXMtb3ZlcmZsb3ctc3R5bGU6IC1tcy1hdXRvaGlkaW5nLXNjcm9sbGJhcjsgXG4gICAgICAgICAgICAvLyBtYXgtd2lkdGg6IDg4JTtcbiAgICAgICAgfVxuICAgICAgICAuc2Nyb2xsOjotd2Via2l0LXNjcm9sbGJhciB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lOyBcbiAgICAgICAgfVxuICAgICAgICAubmF2LWl0ZW17XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgcGFkZGluZzogMTVweDtcbiAgICAgICAgICAgIGE6bGluaywgYTp2aXNpdGVkLCBhOmFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICMyRTJEMkQ7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAwLjc1cmVtO1xuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjpub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaW1ne1xuICAgICAgICAgICAgICAgIG1heC13aWR0aDogNjBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAvKiAubG9nb3tcbiAgICAgICAgICAgIG1heC1oZWlnaHQ6IDI4cHg7IFxuICAgICAgICAgICAgbWF4LXdpZHRoOiA5cmVtO1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAxNXB4O1xuXG4gICAgICAgICAgICAmLndpdGgtcGFkZGluZ3tcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTFweCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0gKi9cblxuICAgICAgICAmLm1lbnUtd2hpdGUge1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4ICBzb2xpZCAgJGdyYXktbWVudTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LDI1NSwyNTUsIDAuNzUpO1xuICAgICAgICAgICAgYmFja2Ryb3AtZmlsdGVyOiBibHVyKDI3cHgpO1xuICAgICAgICB9XG5cbiAgICAgICAgLmNvbnRhY3RhciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc3Rlbi1yZWQ7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxcmVtO1xuICAgICAgICAgICAgcGFkZGluZzogMC41cmVtIDFyZW07XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICBmb250LWZhbWlseTogJ0hlbHZldGljYSBOZXVlIFJlZ3VsYXInO1xuICAgICAgICAgICAgZm9udC1zaXplOiBzbWFsbGVyO1xuXG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogLjdyZW07XG5cbiAgICAgICAgICAgICAgICAmOnZpc2l0ZWQge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogd2hpdGUhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbi8vIERlc2t0b3BcbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCl7XG4gICAgaHRtbHtcbiAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgIH1cblxuICAgICNzaXRlLW1lbnV7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMzMTMxMzE7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgICBvdmVyZmxvdy14OiBoaWRkZW47XG4gICAgICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgICAgIG91dGxpbmU6IDA7ICAgIFxuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB6LWluZGV4OiAxMDUwO1xuXG4gICAgICAgIGE6bGluaywgYTp2aXNpdGVkLCBhOmFjdGl2ZSB7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246bm9uZTtcbiAgICAgICAgfVxuICAgICAgICAubmF2LW1lbnV7XG4gICAgICAgICAgICBtaW4taGVpZ2h0OiAxMDB2aDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgLy8gcGFkZGluZy10b3A6IDNyZW0gIWltcG9ydGFudDtcbiAgICAgICAgICAgIC8qIC5yb3d7XG4gICAgICAgICAgICAgICAgbWluLWhlaWdodDogODd2aDtcbiAgICAgICAgICAgIH0gKi9cbiAgICAgICAgICAgIC5tZW51LXdpZHRoe1xuICAgICAgICAgICAgICAgIG1hcmdpbjogYXV0bztcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDExLjcxcmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLm1lbnUtYWxpZ257XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgdWwge1xuICAgICAgICAgICAgICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIH0gICAgICAgICAgICBcbiAgICAgICAgICAgIC5tZW51LWl0ZW17XG4gICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6ICdIZWx2ZXRpY2EgTmV1ZSBSZWd1bGFyJztcbiAgICAgICAgICAgICAgICBhe1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDMwcHg7XG4gICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiA0MHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5tb3Jle1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAyMDA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuc3VibWVudS1pdGVtIGEge1xuICAgICAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNXJlbTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDIwMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5tb3Jle1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAxMDA7XG4gICAgICAgICAgICB9ICAgICAgICAgIFxuICAgICAgICB9ICBcblxuXG5cbiAgICAgICAgLnJyc3N7XG4gICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICAgICAgLyogbWFyZ2luLWJvdHRvbTogMzBweDsgKi9cbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDMwcHg7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAubGlua2RpbntcbiAgICAgICAgICAgICAgICB3aWR0aDogMzJweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC55b3V0dWJle1xuICAgICAgICAgICAgICAgIHdpZHRoOiAzOHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmluc3RhZ3JhbXtcbiAgICAgICAgICAgICAgICB3aWR0aDogMzFweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGltZ3tcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiA1cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmLnJyc3MtcmlnaHQgYXtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDk5JTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSAgXG4gICAgICAgIC5saW5lLWdyYXl7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjREVERURFO1xuICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgaGVpZ2h0OiAyNHB4O1xuICAgICAgICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgICB9XG4gICAgI3NpdGUtbWVudS1jbG9zZSwgI3NpdGUtbWVudS1jbG9zZS1ob21le1xuICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgICBkaXYge1xuICAgICAgICAgICAgaGVpZ2h0OiAwLjVyZW07XG4gICAgICAgICAgICB3aWR0aDogMC41cmVtO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIH1cbiAgICAgICAgZGl2OmFmdGVyIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxkN1wiO1xuICAgICAgICAgICAgZm9udC1zaXplOiAyLjVyZW07IFxuICAgICAgICAgICAgY29sb3I6ICNGRkY7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIH0gIFxuICAgICAgICBpbWd7XG4gICAgICAgICAgICB3aWR0aDogMC44NXJlbTtcbiAgICAgICAgICAgIGhlaWdodDogMC44NXJlbTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAjc2l0ZS1tZW51LWNsb3Nle1xuICAgICAgICB0b3A6IDAuNzVyZW07XG4gICAgICAgIHJpZ2h0OiAxLjJyZW07XG4gICAgfVxuICAgICNzaXRlLW1lbnUtY2xvc2UtaG9tZXtcbiAgICAgICAgdG9wOiAwLjlyZW07XG4gICAgICAgIHJpZ2h0OiAxLjVyZW07XG4gICAgfVxuXG4gICAgI3N1Yi1tZW51e1xuICAgICAgICAvLyBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwyNTUsMjU1LCAwLjk1KTtcbiAgICAgICAgLy8gYm9yZGVyLXRvcDogMXB4IHNvbGlkICRncmF5O1xuICAgICAgICAvLyBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGdyYXktbWVudTtcbiAgICAgICAgdG9wOiA0OHB4O1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHotaW5kZXg6IDEwMDA7XG4gICAgICAgIHRyYW5zaXRpb246IDFzO1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICBhbmltYXRpb246IHNob3dPcGFjaXR5djIgLjVzIDJzIGxpbmVhciBmb3J3YXJkcztcblxuICAgICAgICAmLm1lbnUtaGlkZGVue1xuICAgICAgICAgICAgdG9wOiAwcHg7XG4gICAgICAgIH1cblxuICAgICAgICBAa2V5ZnJhbWVzIHNob3dPcGFjaXR5djIge1xuICAgICAgICAgICAgMTAwJSB7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5yb3cge1xuICAgICAgICAgICAgbWluLWhlaWdodDogNTVweDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLnJpZ2h0LWJ1dHRvbnsgICAgXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgIHdpZHRoOiAxMiU7XG4gICAgICAgIH1cbiAgICAgICAgLnN1Yi1uYXYtbWVudXtcbiAgICAgICAgICAgIC8vIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LDI1NSwyNTUsIDAuOTUpO1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgIC5yb3d7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLm5hdi1pdGVtIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IC44ZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLnNjcm9sbCB7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBvdmVyZmxvdy14OiBhdXRvO1xuICAgICAgICAgICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICAgICAgICAgICAgLW1zLW92ZXJmbG93LXN0eWxlOiAtbXMtYXV0b2hpZGluZy1zY3JvbGxiYXI7IFxuICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgLy8gbWF4LXdpZHRoOiA4OCU7XG4gICAgICAgICAgICBuYXZ7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlOyAgIFxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5zY3JvbGw6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7IFxuICAgICAgICB9XG4gICAgICAgIC5uYXYtaXRlbXtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgcGFkZGluZzogOHB4IDE1cHg7XG5cbiAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiAtd2Via2l0LWJhc2VsaW5lLW1pZGRsZTtcbiAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cbiAgICAgICAgICAgIGE6bGluaywgYTp2aXNpdGVkLCBhOmFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICMyRTJEMkQ7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAwLjdyZW07XG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOm5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpbWd7XG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiA2MHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5sb2dve1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogM3B4O1xuICAgICAgICAgICAgbWF4LWhlaWdodDogMjBweDsgXG4gICAgICAgICAgICBtYXgtd2lkdGg6IDlyZW07XG5cbiAgICAgICAgICAgICYud2l0aC1wYWRkaW5ne1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMC4zZW0pO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi5tZW51LXdoaXRlIHtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCAgc29saWQgICRncmF5LW1lbnU7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwyNTUsMjU1LCAwLjc1KTtcbiAgICAgICAgICAgIGJhY2tkcm9wLWZpbHRlcjogYmx1cigyN3B4KTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5jb250YWN0YXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHN0ZW4tcmVkO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMXJlbTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAuM3JlbSAxcmVtO1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6ICdIZWx2ZXRpY2EgTmV1ZSBSZWd1bGFyJztcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogc21hbGxlcjtcblxuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgICAgIGNvbG9yOiB3aGl0ZSFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAuN3JlbTtcblxuICAgICAgICAgICAgICAgICY6dmlzaXRlZCB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiB3aGl0ZSFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuaXMtZmlyZWZveCB7XG4gICAgICAgICNzdWItbWVudSAubG9nby53aXRoLXBhZGRpbmcge1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC4xZW0pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogSGFjayBGaXJlZm94XG4gICAgICovXG4gICAgQC1tb3otZG9jdW1lbnQgdXJsLXByZWZpeCgpe1xuICAgICAgICAjc3ViLW1lbnV7XG4gICAgICAgICAgICAubG9nb3tcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAtOHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4vLyBAbWVkaWEgc2NyZWVuIGFuZCAoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOjApIHtcbi8vICAgICAjc2l0ZS1tZW51e1xuLy8gICAgICAgICAubmF2LW1lbnV7XG4vLyAgICAgICAgICAgICAubWVudS1pdGVte1xuLy8gICAgICAgICAgICAgICAgIGF7XG4vLyAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMzFweDtcbi8vICAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDIuM3JlbTtcbi8vICAgICAgICAgICAgICAgICB9XG4vLyAgICAgICAgICAgICB9XG4vLyAgICAgICAgIH1cbi8vICAgICB9XG4vLyB9XG5cbi8vIEBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpe1xuLy8gICAgIGh0bWx7XG4vLyAgICAgICAgIC8vIGZvbnQtc2l6ZTogMjEuMzNweDtcbi8vICAgICAgICAgZm9udC1zaXplOiAxNnB4OyAvLzIxLjMzLzEuNFxuLy8gICAgIH1cbi8vICAgICAjc3ViLW1lbnV7XG4vLyAgICAgICAgIC5uYXYtaXRlbXtcbi8vICAgICAgICAgICAgIGE6bGluaywgYTp2aXNpdGVkLCBhOmFjdGl2ZSB7XG4vLyAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAwLjZyZW07XG4vLyAgICAgICAgICAgICB9XG4vLyAgICAgICAgICAgICBpbWd7XG4vLyAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiA2MHB4O1xuLy8gICAgICAgICAgICAgfVxuLy8gICAgICAgICB9XG4vLyAgICAgfVxuLy8gICAgICNzaXRlLW1lbnUtY2xvc2UtaG9tZXtcbi8vICAgICAgICAgdG9wOiAwLjY1cmVtO1xuLy8gICAgICAgICByaWdodDogMS4ycmVtO1xuLy8gICAgIH1cbi8vIH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDE0NDBweCl7XG4gICAgaHRtbHtcbiAgICAgICAgLy8gZm9udC1zaXplOiAzMC4wN3B4O1xuICAgICAgICAvLyBmb250LXNpemU6IDIxLjQycHggIWltcG9ydGFudDsgLy8zMC4wNy8xLjRcbiAgICB9XG59XG5cbi8vIEBtZWRpYSAobWluLXdpZHRoOiAxNDQwcHgpe1xuLy8gICAgIGh0bWx7XG4vLyAgICAgICAgIC8vIGZvbnQtc2l6ZTogMzAuMDdweDtcbi8vICAgICAgICAgZm9udC1zaXplOiAyMS40MnB4OyAvLzMwLjA3LzEuNFxuLy8gICAgIH1cbi8vICAgICAjc3ViLW1lbnV7XG4vLyAgICAgICAgIHBhZGRpbmc6IC0xcHggMTBweCAzcHggMTBweDtcbi8vICAgICAgICAgLm5hdi1pdGVte1xuLy8gICAgICAgICAgICAgYTpsaW5rLCBhOnZpc2l0ZWQsIGE6YWN0aXZlIHtcbi8vICAgICAgICAgICAgICAgICBmb250LXNpemU6IDAuNnJlbTtcbi8vICAgICAgICAgICAgIH1cbi8vICAgICAgICAgICAgIGltZ3tcbi8vICAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDYwcHg7XG4vLyAgICAgICAgICAgICB9XG4vLyAgICAgICAgIH1cbi8vICAgICB9XG4vLyAgICAgI3NpdGUtbWVudS1jbG9zZS1ob21le1xuLy8gICAgICAgICB0b3A6IDAuMzJyZW07XG4vLyAgICAgICAgIHJpZ2h0OiAxcmVtO1xuLy8gICAgIH1cbi8vIH1cblxuLy8gQG1lZGlhIChtaW4td2lkdGg6IDE5MjBweCl7XG4vLyAgICAgaHRtbHtcbi8vICAgICAgICAgLy8gZm9udC1zaXplOiA0MHB4O1xuLy8gICAgICAgICBmb250LXNpemU6IDI4cHg7IC8vNDAvMS40XG4vLyAgICAgfVxuLy8gICAgICNzdWItbWVudXtcbi8vICAgICAgICAgLm5hdi1pdGVte1xuLy8gICAgICAgICAgICAgcGFkZGluZzogNXB4IDEwcHggMTBweCAxMHB4O1xuLy8gICAgICAgICAgICAgYTpsaW5rLCBhOnZpc2l0ZWQsIGE6YWN0aXZlIHtcbi8vICAgICAgICAgICAgICAgICBmb250LXNpemU6IDAuNnJlbTtcbi8vICAgICAgICAgICAgIH1cbi8vICAgICAgICAgICAgIGltZ3tcbi8vICAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDYwcHg7XG4vLyAgICAgICAgICAgICB9XG4vLyAgICAgICAgIH1cbi8vICAgICB9XG4vLyAgICAgI3NpdGUtbWVudS1jbG9zZS1ob21le1xuLy8gICAgICAgICB0b3A6IDAuMTI1cmVtO1xuLy8gICAgICAgICByaWdodDogMC43NXJlbTtcbi8vICAgICB9XG4vLyB9XG5cblxuQG1lZGlhKG1heC13aWR0aDogNTc2cHgpIHtcbiAgICAjc2l0ZS1tZW51e1xuICAgICAgICAucnJzc3tcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAzNXB4O1xuICAgICAgICAgICAgJi5ycnNzLXJpZ2h0e1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDVweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSBcbiAgICB9ICAgIFxufSIsIi8vIEJvZHlcbiRib2R5LWJnOiAjZjhmYWZjO1xuXG4vLyBUeXBvZ3JhcGh5XG4kZm9udC1mYW1pbHktc2Fucy1zZXJpZjogJ051bml0bycsIHNhbnMtc2VyaWY7XG4kZm9udC1zaXplLWJhc2U6IDAuOXJlbTtcbiRsaW5lLWhlaWdodC1iYXNlOiAxLjY7XG5cbi8vIGxlZ2FjeVxuJHN0ZW4tcmVkOiAjRDcwRDE3O1xuJHN0ZW4tcmVkLWhvdmVyOiAjZjQwZDE4O1xuJHN0ZW4tcmVkLWJ0bjogI0Q2MDgxMjtcblxuJHN0ZW4tZ3JheS1tZWQ6ICMzMTMxMzE7XG4kc3Rlbi1ncmF5LWRhcms6ICMyMzFGMjA7XG4kc3Rlbi13aGl0ZTogI0ZGRkZGRjtcbiRncmVlbjogIzQ0OTkyNTtcblxuJHJlZDogI0Q2MDgxMjtcbiRmb290ZXItZ3JheTogI2UxZTFlMTtcbiRncmF5LWRhcms6ICMzOTM5Mzk7XG4kZ3JheTogIzcwNzA3MDtcbiR0ZXh0LWdyYXk6ICMzMTMxMzE7XG4kZ3JheS1tZW51OiMwMDAwMDAyOTtcblxuXG4vLyBGb250IEZhbWlseTpcbi8vICRmb250X2ZhbWlseV9oMTogXCJIZWx2ZXRpY2EgTmV1ZSBNZWRpdW1cIjtcbi8vICRmb250X2ZhbWlseV9oMjogXCJIZWx2ZXRpY2EgTmV1ZSBNZWRpdW1cIjtcbi8vICRmb250X2ZhbWlseV9wOiBcIkhlbHZldGljYSBOZXVlIFJlZ3VsYXJcIjtcbiRmb250X2ZhbWlseV9tYWluOiBSb2JvdG8sIHNhbnMtc2VyaWY7XG4kZm9udF9mYW1pbHlfaDE6IFJvYm90bywgc2Fucy1zZXJpZjtcbiRmb250X2ZhbWlseV9oMjogUm9ib3RvLCBzYW5zLXNlcmlmO1xuJGZvbnRfZmFtaWx5X3A6IFJvYm90bywgc2Fucy1zZXJpZjtcblxuLy8gRm9udCBTaXplOlxuJGgxX2ZvbnRfc2l6ZTogNzVweDtcbiRoMV9mb250X3NpemVfNzY3OiA1NXB4O1xuJGgxX2ZvbnRfc2l6ZV81NjA6IDQ1cHg7XG5cbiRoMl9mb250X3NpemU6IDUwcHg7XG4kaDJfZm9udF9zaXplXzc2NzogNDBweDtcbiRoMl9mb250X3NpemVfNTYwOiAzNXB4O1xuXG4kaDJfZm9udF9zaXplX3ZhcmlhbnRlX2I6IDQwcHg7XG5cbiRoNV9mb250X3NpemU6IDE4cHg7XG5cbi8vIEZvbnQgd2VpZ2h0OlxuJGZ3X21lZDogNTAwO1xuJGgxX2ZvbnRfd2VpZ2h0OiA1MDA7XG4kaDJfZm9udF93ZWlnaHQ6IDUwMDtcbiRoM19mb250X3dlaWdodDogNDAwO1xuXG4vLyBMaW5lIGhlaWdodDpcbiRsaF9oMTogMTA1JTtcbiRsaF9oMjogMTA1JTtcbiRsaF9wOiAxMjAlO1xuXG4vLyR0ZXh0X2ZvbnRfc2l6ZV9sZzogMjFweDtcbiR0ZXh0X2ZvbnRfc2l6ZV9sZzogMXJlbTtcbiR0ZXh0X2ZvbnRfc2l6ZV9tZDogMThweDtcbiR0ZXh0X2ZvbnRfc2l6ZV94czogMTZweDtcblxuJHRleHRfc3VidGl0bGU6IDEuMzMzcmVtO1xuXG5cblxuXG5cbi8vIFBhZGRpbmc6XG4kcGFkZGluZ19tZDogNjVweDtcblxuLy8gVmFyaWFibGVzIGZvciAjZ2FsbGVyeS1tb3NhaWMgaW4gYXBwLnNjc3NcbiRib3JkZXJfcmFkaXVzOiAxNXB4O1xuIiwiQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KXtcbiAgICBcbiAgICAuZm9vdGVye1xuICAgICAgICBwLCBhLCB1bCwgbGFiZWwsIGlucHV0LCBsaXtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjFyZW0gIWltcG9ydGFudDtcbiAgICAgICAgICAgIGNvbG9yOiAkZm9vdGVyLWdyYXk7XG4gICAgICAgICAgICBmb250LXNpemU6IDAuNjI1cmVtICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgICAgYTpob3ZlcntcbiAgICAgICAgICAgIGNvbG9yOiAkZm9vdGVyLWdyYXk7XG4gICAgICAgIH1cbiAgICAgICAgaDN7XG4gICAgICAgICAgICBjb2xvcjogJGZvb3Rlci1ncmF5O1xuICAgICAgICAgICAgZm9udC1zaXplOiAwLjdyZW07XG4gICAgICAgICAgICBmb250LWZhbWlseTogJ0hlbHZldGljYSBOZXVlIE1lZGl1bSc7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICB9XG4gICAgICAgIHVse1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMHB4O1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgICBidXR0b257XG4gICAgICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgICAgICBmb250LXNpemU6IDAuNXJlbSAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICAgIGJ1dHRvbjpob3ZlcntcbiAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgfVxuICAgICAgICAuc2VuZHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMC42NXJlbSAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICAgIGlucHV0e1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjJyZW07XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjJyZW07XG4gICAgICAgIH1cbiAgICAgICAgLmljb25zLWZvb3RlcntcbiAgICAgICAgICAgIGF7XG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgICAgIC5pY29uLWZvb3RlcntcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAwLjlyZW07XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwcmVtIDAuMnJlbTtcbiAgICAgICAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246YWxsIC4ycyBlYXNlO1xuICAgICAgICAgICAgICAgIC1tb3otdHJhbnNpdGlvbjphbGwgLjJzIGVhc2U7XG4gICAgICAgICAgICAgICAgLW8tdHJhbnNpdGlvbjphbGwgLjJzIGVhc2U7XG4gICAgICAgICAgICAgICAgLW1zLXRyYW5zaXRpb246YWxsIC4ycyBlYXNlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmljb24tZm9vdGVyOmhvdmVye1xuICAgICAgICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOnNjYWxlKDEuMik7XG4gICAgICAgICAgICAgICAgLW1vei10cmFuc2Zvcm06c2NhbGUoMS4yKTtcbiAgICAgICAgICAgICAgICAtbXMtdHJhbnNmb3JtOnNjYWxlKDEuMik7XG4gICAgICAgICAgICAgICAgLW8tdHJhbnNmb3JtOnNjYWxlKDEuMik7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOnNjYWxlKDEuMik7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuaW5zdGFncmFte1xuICAgICAgICAgICAgICAgIGhlaWdodDogMC43cmVtO1xuICAgICAgICAgICAgICAgIG1heC13aWR0aDogMXJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAubGluZS1ncmF5e1xuICAgICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRmb290ZXItZ3JheTtcbiAgICAgICAgfVxuICAgICAgICAuZm9ybS1ncm91cHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgICAgICAgfVxuICAgICAgICAuY29weXJpZ2h0e1xuICAgICAgICAgICAgcCwgdWwsIGxpLCBhe1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkZm9vdGVyLWdyYXk7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAwLjU0cmVtICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDAuOHJlbSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHVsLCBsaXtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuYi1saW5le1xuICAgICAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgJGZvb3Rlci1ncmF5O1xuICAgICAgICAgICAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICRmb290ZXItZ3JheTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCl7XG4gICAgaHRtbHtcbiAgICAgICAgZm9udC1zaXplOiAyMS4zM3B4O1xuICAgIH1cbiAgICBib2R5e1xuICAgICAgICBsaW5lLWhlaWdodDogMC41cmVtICFpbXBvcnRhbnQ7XG4gICAgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogMTQ0MHB4KXtcbiAgICAvLyBodG1se1xuICAgIC8vICAgICBmb250LXNpemU6IDMwLjA3cHg7XG4gICAgLy8gfVxuICAgIGJvZHl7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAwLjVyZW0gIWltcG9ydGFudDtcbiAgICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAxOTIwcHgpe1xuICAgIGh0bWx7XG4gICAgICAgIGZvbnQtc2l6ZTogNDBweDtcbiAgICB9XG4gICAgYm9keXtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDAuNXJlbSAhaW1wb3J0YW50O1xuICAgIH1cbn0iLCJAbWl4aW4gYnNCYW5uZXIoJGZpbGUpIHtcbiAgLyohXG4gICAqIEJvb3RzdHJhcCAjeyRmaWxlfSB2NS4zLjAgKGh0dHBzOi8vZ2V0Ym9vdHN0cmFwLmNvbS8pXG4gICAqIENvcHlyaWdodCAyMDExLTIwMjMgVGhlIEJvb3RzdHJhcCBBdXRob3JzXG4gICAqIExpY2Vuc2VkIHVuZGVyIE1JVCAoaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2Jsb2IvbWFpbi9MSUNFTlNFKVxuICAgKi9cbn1cbiIsIjpyb290LFxuW2RhdGEtYnMtdGhlbWU9XCJsaWdodFwiXSB7XG4gIC8vIE5vdGU6IEN1c3RvbSB2YXJpYWJsZSB2YWx1ZXMgb25seSBzdXBwb3J0IFNhc3NTY3JpcHQgaW5zaWRlIGAje31gLlxuXG4gIC8vIENvbG9yc1xuICAvL1xuICAvLyBHZW5lcmF0ZSBwYWxldHRlcyBmb3IgZnVsbCBjb2xvcnMsIGdyYXlzLCBhbmQgdGhlbWUgY29sb3JzLlxuXG4gIEBlYWNoICRjb2xvciwgJHZhbHVlIGluICRjb2xvcnMge1xuICAgIC0tI3skcHJlZml4fSN7JGNvbG9yfTogI3skdmFsdWV9O1xuICB9XG5cbiAgQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJGdyYXlzIHtcbiAgICAtLSN7JHByZWZpeH1ncmF5LSN7JGNvbG9yfTogI3skdmFsdWV9O1xuICB9XG5cbiAgQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gICAgLS0jeyRwcmVmaXh9I3skY29sb3J9OiAjeyR2YWx1ZX07XG4gIH1cblxuICBAZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzLXJnYiB7XG4gICAgLS0jeyRwcmVmaXh9I3skY29sb3J9LXJnYjogI3skdmFsdWV9O1xuICB9XG5cbiAgQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycy10ZXh0IHtcbiAgICAtLSN7JHByZWZpeH0jeyRjb2xvcn0tdGV4dC1lbXBoYXNpczogI3skdmFsdWV9O1xuICB9XG5cbiAgQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycy1iZy1zdWJ0bGUge1xuICAgIC0tI3skcHJlZml4fSN7JGNvbG9yfS1iZy1zdWJ0bGU6ICN7JHZhbHVlfTtcbiAgfVxuXG4gIEBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMtYm9yZGVyLXN1YnRsZSB7XG4gICAgLS0jeyRwcmVmaXh9I3skY29sb3J9LWJvcmRlci1zdWJ0bGU6ICN7JHZhbHVlfTtcbiAgfVxuXG4gIC0tI3skcHJlZml4fXdoaXRlLXJnYjogI3t0by1yZ2IoJHdoaXRlKX07XG4gIC0tI3skcHJlZml4fWJsYWNrLXJnYjogI3t0by1yZ2IoJGJsYWNrKX07XG5cbiAgLy8gRm9udHNcblxuICAvLyBOb3RlOiBVc2UgYGluc3BlY3RgIGZvciBsaXN0cyBzbyB0aGF0IHF1b3RlZCBpdGVtcyBrZWVwIHRoZSBxdW90ZXMuXG4gIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vc2Fzcy9zYXNzL2lzc3Vlcy8yMzgzI2lzc3VlY29tbWVudC0zMzYzNDkxNzJcbiAgLS0jeyRwcmVmaXh9Zm9udC1zYW5zLXNlcmlmOiAje2luc3BlY3QoJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWYpfTtcbiAgLS0jeyRwcmVmaXh9Zm9udC1tb25vc3BhY2U6ICN7aW5zcGVjdCgkZm9udC1mYW1pbHktbW9ub3NwYWNlKX07XG4gIC0tI3skcHJlZml4fWdyYWRpZW50OiAjeyRncmFkaWVudH07XG5cbiAgLy8gUm9vdCBhbmQgYm9keVxuICAvLyBzY3NzLWRvY3Mtc3RhcnQgcm9vdC1ib2R5LXZhcmlhYmxlc1xuICBAaWYgJGZvbnQtc2l6ZS1yb290ICE9IG51bGwge1xuICAgIC0tI3skcHJlZml4fXJvb3QtZm9udC1zaXplOiAjeyRmb250LXNpemUtcm9vdH07XG4gIH1cbiAgLS0jeyRwcmVmaXh9Ym9keS1mb250LWZhbWlseTogI3tpbnNwZWN0KCRmb250LWZhbWlseS1iYXNlKX07XG4gIEBpbmNsdWRlIHJmcygkZm9udC1zaXplLWJhc2UsIC0tI3skcHJlZml4fWJvZHktZm9udC1zaXplKTtcbiAgLS0jeyRwcmVmaXh9Ym9keS1mb250LXdlaWdodDogI3skZm9udC13ZWlnaHQtYmFzZX07XG4gIC0tI3skcHJlZml4fWJvZHktbGluZS1oZWlnaHQ6ICN7JGxpbmUtaGVpZ2h0LWJhc2V9O1xuICBAaWYgJGJvZHktdGV4dC1hbGlnbiAhPSBudWxsIHtcbiAgICAtLSN7JHByZWZpeH1ib2R5LXRleHQtYWxpZ246ICN7JGJvZHktdGV4dC1hbGlnbn07XG4gIH1cblxuICAtLSN7JHByZWZpeH1ib2R5LWNvbG9yOiAjeyRib2R5LWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9Ym9keS1jb2xvci1yZ2I6ICN7dG8tcmdiKCRib2R5LWNvbG9yKX07XG4gIC0tI3skcHJlZml4fWJvZHktYmc6ICN7JGJvZHktYmd9O1xuICAtLSN7JHByZWZpeH1ib2R5LWJnLXJnYjogI3t0by1yZ2IoJGJvZHktYmcpfTtcblxuICAtLSN7JHByZWZpeH1lbXBoYXNpcy1jb2xvcjogI3skYm9keS1lbXBoYXNpcy1jb2xvcn07XG4gIC0tI3skcHJlZml4fWVtcGhhc2lzLWNvbG9yLXJnYjogI3t0by1yZ2IoJGJvZHktZW1waGFzaXMtY29sb3IpfTtcblxuICAtLSN7JHByZWZpeH1zZWNvbmRhcnktY29sb3I6ICN7JGJvZHktc2Vjb25kYXJ5LWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWNvbG9yLXJnYjogI3t0by1yZ2IoJGJvZHktc2Vjb25kYXJ5LWNvbG9yKX07XG4gIC0tI3skcHJlZml4fXNlY29uZGFyeS1iZzogI3skYm9keS1zZWNvbmRhcnktYmd9O1xuICAtLSN7JHByZWZpeH1zZWNvbmRhcnktYmctcmdiOiAje3RvLXJnYigkYm9keS1zZWNvbmRhcnktYmcpfTtcblxuICAtLSN7JHByZWZpeH10ZXJ0aWFyeS1jb2xvcjogI3skYm9keS10ZXJ0aWFyeS1jb2xvcn07XG4gIC0tI3skcHJlZml4fXRlcnRpYXJ5LWNvbG9yLXJnYjogI3t0by1yZ2IoJGJvZHktdGVydGlhcnktY29sb3IpfTtcbiAgLS0jeyRwcmVmaXh9dGVydGlhcnktYmc6ICN7JGJvZHktdGVydGlhcnktYmd9O1xuICAtLSN7JHByZWZpeH10ZXJ0aWFyeS1iZy1yZ2I6ICN7dG8tcmdiKCRib2R5LXRlcnRpYXJ5LWJnKX07XG4gIC8vIHNjc3MtZG9jcy1lbmQgcm9vdC1ib2R5LXZhcmlhYmxlc1xuXG4gIC0tI3skcHJlZml4fWhlYWRpbmctY29sb3I6ICN7JGhlYWRpbmdzLWNvbG9yfTtcblxuICAtLSN7JHByZWZpeH1saW5rLWNvbG9yOiAjeyRsaW5rLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bGluay1jb2xvci1yZ2I6ICN7dG8tcmdiKCRsaW5rLWNvbG9yKX07XG4gIC0tI3skcHJlZml4fWxpbmstZGVjb3JhdGlvbjogI3skbGluay1kZWNvcmF0aW9ufTtcblxuICAtLSN7JHByZWZpeH1saW5rLWhvdmVyLWNvbG9yOiAjeyRsaW5rLWhvdmVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bGluay1ob3Zlci1jb2xvci1yZ2I6ICN7dG8tcmdiKCRsaW5rLWhvdmVyLWNvbG9yKX07XG5cbiAgQGlmICRsaW5rLWhvdmVyLWRlY29yYXRpb24gIT0gbnVsbCB7XG4gICAgLS0jeyRwcmVmaXh9bGluay1ob3Zlci1kZWNvcmF0aW9uOiAjeyRsaW5rLWhvdmVyLWRlY29yYXRpb259O1xuICB9XG5cbiAgLS0jeyRwcmVmaXh9Y29kZS1jb2xvcjogI3skY29kZS1jb2xvcn07XG4gIC0tI3skcHJlZml4fWhpZ2hsaWdodC1iZzogI3skbWFyay1iZ307XG5cbiAgLy8gc2Nzcy1kb2NzLXN0YXJ0IHJvb3QtYm9yZGVyLXZhclxuICAtLSN7JHByZWZpeH1ib3JkZXItd2lkdGg6ICN7JGJvcmRlci13aWR0aH07XG4gIC0tI3skcHJlZml4fWJvcmRlci1zdHlsZTogI3skYm9yZGVyLXN0eWxlfTtcbiAgLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yOiAjeyRib3JkZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1ib3JkZXItY29sb3ItdHJhbnNsdWNlbnQ6ICN7JGJvcmRlci1jb2xvci10cmFuc2x1Y2VudH07XG5cbiAgLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1czogI3skYm9yZGVyLXJhZGl1c307XG4gIC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMtc206ICN7JGJvcmRlci1yYWRpdXMtc219O1xuICAtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzLWxnOiAjeyRib3JkZXItcmFkaXVzLWxnfTtcbiAgLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cy14bDogI3skYm9yZGVyLXJhZGl1cy14bH07XG4gIC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMteHhsOiAjeyRib3JkZXItcmFkaXVzLXh4bH07XG4gIC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMtMnhsOiB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cy14eGwpOyAvLyBEZXByZWNhdGVkIGluIHY1LjMuMCBmb3IgY29uc2lzdGVuY3lcbiAgLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cy1waWxsOiAjeyRib3JkZXItcmFkaXVzLXBpbGx9O1xuICAvLyBzY3NzLWRvY3MtZW5kIHJvb3QtYm9yZGVyLXZhclxuXG4gIC0tI3skcHJlZml4fWJveC1zaGFkb3c6ICN7JGJveC1zaGFkb3d9O1xuICAtLSN7JHByZWZpeH1ib3gtc2hhZG93LXNtOiAjeyRib3gtc2hhZG93LXNtfTtcbiAgLS0jeyRwcmVmaXh9Ym94LXNoYWRvdy1sZzogI3skYm94LXNoYWRvdy1sZ307XG4gIC0tI3skcHJlZml4fWJveC1zaGFkb3ctaW5zZXQ6ICN7JGJveC1zaGFkb3ctaW5zZXR9O1xuXG4gIC8vIEZvY3VzIHN0eWxlc1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgcm9vdC1mb2N1cy12YXJpYWJsZXNcbiAgLS0jeyRwcmVmaXh9Zm9jdXMtcmluZy13aWR0aDogI3skZm9jdXMtcmluZy13aWR0aH07XG4gIC0tI3skcHJlZml4fWZvY3VzLXJpbmctb3BhY2l0eTogI3skZm9jdXMtcmluZy1vcGFjaXR5fTtcbiAgLS0jeyRwcmVmaXh9Zm9jdXMtcmluZy1jb2xvcjogI3skZm9jdXMtcmluZy1jb2xvcn07XG4gIC8vIHNjc3MtZG9jcy1lbmQgcm9vdC1mb2N1cy12YXJpYWJsZXNcblxuICAvLyBzY3NzLWRvY3Mtc3RhcnQgcm9vdC1mb3JtLXZhbGlkYXRpb24tdmFyaWFibGVzXG4gIC0tI3skcHJlZml4fWZvcm0tdmFsaWQtY29sb3I6ICN7JGZvcm0tdmFsaWQtY29sb3J9O1xuICAtLSN7JHByZWZpeH1mb3JtLXZhbGlkLWJvcmRlci1jb2xvcjogI3skZm9ybS12YWxpZC1ib3JkZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1mb3JtLWludmFsaWQtY29sb3I6ICN7JGZvcm0taW52YWxpZC1jb2xvcn07XG4gIC0tI3skcHJlZml4fWZvcm0taW52YWxpZC1ib3JkZXItY29sb3I6ICN7JGZvcm0taW52YWxpZC1ib3JkZXItY29sb3J9O1xuICAvLyBzY3NzLWRvY3MtZW5kIHJvb3QtZm9ybS12YWxpZGF0aW9uLXZhcmlhYmxlc1xufVxuXG5AaWYgJGVuYWJsZS1kYXJrLW1vZGUge1xuICBAaW5jbHVkZSBjb2xvci1tb2RlKGRhcmssIHRydWUpIHtcbiAgICBjb2xvci1zY2hlbWU6IGRhcms7XG5cbiAgICAvLyBzY3NzLWRvY3Mtc3RhcnQgcm9vdC1kYXJrLW1vZGUtdmFyc1xuICAgIC0tI3skcHJlZml4fWJvZHktY29sb3I6ICN7JGJvZHktY29sb3ItZGFya307XG4gICAgLS0jeyRwcmVmaXh9Ym9keS1jb2xvci1yZ2I6ICN7dG8tcmdiKCRib2R5LWNvbG9yLWRhcmspfTtcbiAgICAtLSN7JHByZWZpeH1ib2R5LWJnOiAjeyRib2R5LWJnLWRhcmt9O1xuICAgIC0tI3skcHJlZml4fWJvZHktYmctcmdiOiAje3RvLXJnYigkYm9keS1iZy1kYXJrKX07XG5cbiAgICAtLSN7JHByZWZpeH1lbXBoYXNpcy1jb2xvcjogI3skYm9keS1lbXBoYXNpcy1jb2xvci1kYXJrfTtcbiAgICAtLSN7JHByZWZpeH1lbXBoYXNpcy1jb2xvci1yZ2I6ICN7dG8tcmdiKCRib2R5LWVtcGhhc2lzLWNvbG9yLWRhcmspfTtcblxuICAgIC0tI3skcHJlZml4fXNlY29uZGFyeS1jb2xvcjogI3skYm9keS1zZWNvbmRhcnktY29sb3ItZGFya307XG4gICAgLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWNvbG9yLXJnYjogI3t0by1yZ2IoJGJvZHktc2Vjb25kYXJ5LWNvbG9yLWRhcmspfTtcbiAgICAtLSN7JHByZWZpeH1zZWNvbmRhcnktYmc6ICN7JGJvZHktc2Vjb25kYXJ5LWJnLWRhcmt9O1xuICAgIC0tI3skcHJlZml4fXNlY29uZGFyeS1iZy1yZ2I6ICN7dG8tcmdiKCRib2R5LXNlY29uZGFyeS1iZy1kYXJrKX07XG5cbiAgICAtLSN7JHByZWZpeH10ZXJ0aWFyeS1jb2xvcjogI3skYm9keS10ZXJ0aWFyeS1jb2xvci1kYXJrfTtcbiAgICAtLSN7JHByZWZpeH10ZXJ0aWFyeS1jb2xvci1yZ2I6ICN7dG8tcmdiKCRib2R5LXRlcnRpYXJ5LWNvbG9yLWRhcmspfTtcbiAgICAtLSN7JHByZWZpeH10ZXJ0aWFyeS1iZzogI3skYm9keS10ZXJ0aWFyeS1iZy1kYXJrfTtcbiAgICAtLSN7JHByZWZpeH10ZXJ0aWFyeS1iZy1yZ2I6ICN7dG8tcmdiKCRib2R5LXRlcnRpYXJ5LWJnLWRhcmspfTtcblxuICAgIEBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMtdGV4dC1kYXJrIHtcbiAgICAgIC0tI3skcHJlZml4fSN7JGNvbG9yfS10ZXh0LWVtcGhhc2lzOiAjeyR2YWx1ZX07XG4gICAgfVxuXG4gICAgQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycy1iZy1zdWJ0bGUtZGFyayB7XG4gICAgICAtLSN7JHByZWZpeH0jeyRjb2xvcn0tYmctc3VidGxlOiAjeyR2YWx1ZX07XG4gICAgfVxuXG4gICAgQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycy1ib3JkZXItc3VidGxlLWRhcmsge1xuICAgICAgLS0jeyRwcmVmaXh9I3skY29sb3J9LWJvcmRlci1zdWJ0bGU6ICN7JHZhbHVlfTtcbiAgICB9XG5cbiAgICAtLSN7JHByZWZpeH1oZWFkaW5nLWNvbG9yOiAjeyRoZWFkaW5ncy1jb2xvci1kYXJrfTtcblxuICAgIC0tI3skcHJlZml4fWxpbmstY29sb3I6ICN7JGxpbmstY29sb3ItZGFya307XG4gICAgLS0jeyRwcmVmaXh9bGluay1ob3Zlci1jb2xvcjogI3skbGluay1ob3Zlci1jb2xvci1kYXJrfTtcbiAgICAtLSN7JHByZWZpeH1saW5rLWNvbG9yLXJnYjogI3t0by1yZ2IoJGxpbmstY29sb3ItZGFyayl9O1xuICAgIC0tI3skcHJlZml4fWxpbmstaG92ZXItY29sb3ItcmdiOiAje3RvLXJnYigkbGluay1ob3Zlci1jb2xvci1kYXJrKX07XG5cbiAgICAtLSN7JHByZWZpeH1jb2RlLWNvbG9yOiAjeyRjb2RlLWNvbG9yLWRhcmt9O1xuXG4gICAgLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yOiAjeyRib3JkZXItY29sb3ItZGFya307XG4gICAgLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yLXRyYW5zbHVjZW50OiAjeyRib3JkZXItY29sb3ItdHJhbnNsdWNlbnQtZGFya307XG5cbiAgICAtLSN7JHByZWZpeH1mb3JtLXZhbGlkLWNvbG9yOiAjeyRmb3JtLXZhbGlkLWNvbG9yLWRhcmt9O1xuICAgIC0tI3skcHJlZml4fWZvcm0tdmFsaWQtYm9yZGVyLWNvbG9yOiAjeyRmb3JtLXZhbGlkLWJvcmRlci1jb2xvci1kYXJrfTtcbiAgICAtLSN7JHByZWZpeH1mb3JtLWludmFsaWQtY29sb3I6ICN7JGZvcm0taW52YWxpZC1jb2xvci1kYXJrfTtcbiAgICAtLSN7JHByZWZpeH1mb3JtLWludmFsaWQtYm9yZGVyLWNvbG9yOiAjeyRmb3JtLWludmFsaWQtYm9yZGVyLWNvbG9yLWRhcmt9O1xuICAgIC8vIHNjc3MtZG9jcy1lbmQgcm9vdC1kYXJrLW1vZGUtdmFyc1xuICB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBzY3NzL2RpbWVuc2lvbi1uby1ub24tbnVtZXJpYy12YWx1ZXNcblxuLy8gU0NTUyBSRlMgbWl4aW5cbi8vXG4vLyBBdXRvbWF0ZWQgcmVzcG9uc2l2ZSB2YWx1ZXMgZm9yIGZvbnQgc2l6ZXMsIHBhZGRpbmdzLCBtYXJnaW5zIGFuZCBtdWNoIG1vcmVcbi8vXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgKGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL3Jmcy9ibG9iL21haW4vTElDRU5TRSlcblxuLy8gQ29uZmlndXJhdGlvblxuXG4vLyBCYXNlIHZhbHVlXG4kcmZzLWJhc2UtdmFsdWU6IDEuMjVyZW0gIWRlZmF1bHQ7XG4kcmZzLXVuaXQ6IHJlbSAhZGVmYXVsdDtcblxuQGlmICRyZnMtdW5pdCAhPSByZW0gYW5kICRyZnMtdW5pdCAhPSBweCB7XG4gIEBlcnJvciBcImAjeyRyZnMtdW5pdH1gIGlzIG5vdCBhIHZhbGlkIHVuaXQgZm9yICRyZnMtdW5pdC4gVXNlIGBweGAgb3IgYHJlbWAuXCI7XG59XG5cbi8vIEJyZWFrcG9pbnQgYXQgd2hlcmUgdmFsdWVzIHN0YXJ0IGRlY3JlYXNpbmcgaWYgc2NyZWVuIHdpZHRoIGlzIHNtYWxsZXJcbiRyZnMtYnJlYWtwb2ludDogMTIwMHB4ICFkZWZhdWx0O1xuJHJmcy1icmVha3BvaW50LXVuaXQ6IHB4ICFkZWZhdWx0O1xuXG5AaWYgJHJmcy1icmVha3BvaW50LXVuaXQgIT0gcHggYW5kICRyZnMtYnJlYWtwb2ludC11bml0ICE9IGVtIGFuZCAkcmZzLWJyZWFrcG9pbnQtdW5pdCAhPSByZW0ge1xuICBAZXJyb3IgXCJgI3skcmZzLWJyZWFrcG9pbnQtdW5pdH1gIGlzIG5vdCBhIHZhbGlkIHVuaXQgZm9yICRyZnMtYnJlYWtwb2ludC11bml0LiBVc2UgYHB4YCwgYGVtYCBvciBgcmVtYC5cIjtcbn1cblxuLy8gUmVzaXplIHZhbHVlcyBiYXNlZCBvbiBzY3JlZW4gaGVpZ2h0IGFuZCB3aWR0aFxuJHJmcy10d28tZGltZW5zaW9uYWw6IGZhbHNlICFkZWZhdWx0O1xuXG4vLyBGYWN0b3Igb2YgZGVjcmVhc2VcbiRyZnMtZmFjdG9yOiAxMCAhZGVmYXVsdDtcblxuQGlmIHR5cGUtb2YoJHJmcy1mYWN0b3IpICE9IG51bWJlciBvciAkcmZzLWZhY3RvciA8PSAxIHtcbiAgQGVycm9yIFwiYCN7JHJmcy1mYWN0b3J9YCBpcyBub3QgYSB2YWxpZCAgJHJmcy1mYWN0b3IsIGl0IG11c3QgYmUgZ3JlYXRlciB0aGFuIDEuXCI7XG59XG5cbi8vIE1vZGUuIFBvc3NpYmlsaXRpZXM6IFwibWluLW1lZGlhLXF1ZXJ5XCIsIFwibWF4LW1lZGlhLXF1ZXJ5XCJcbiRyZnMtbW9kZTogbWluLW1lZGlhLXF1ZXJ5ICFkZWZhdWx0O1xuXG4vLyBHZW5lcmF0ZSBlbmFibGUgb3IgZGlzYWJsZSBjbGFzc2VzLiBQb3NzaWJpbGl0aWVzOiBmYWxzZSwgXCJlbmFibGVcIiBvciBcImRpc2FibGVcIlxuJHJmcy1jbGFzczogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vIDEgcmVtID0gJHJmcy1yZW0tdmFsdWUgcHhcbiRyZnMtcmVtLXZhbHVlOiAxNiAhZGVmYXVsdDtcblxuLy8gU2FmYXJpIGlmcmFtZSByZXNpemUgYnVnOiBodHRwczovL2dpdGh1Yi5jb20vdHdicy9yZnMvaXNzdWVzLzE0XG4kcmZzLXNhZmFyaS1pZnJhbWUtcmVzaXplLWJ1Zy1maXg6IGZhbHNlICFkZWZhdWx0O1xuXG4vLyBEaXNhYmxlIFJGUyBieSBzZXR0aW5nICRlbmFibGUtcmZzIHRvIGZhbHNlXG4kZW5hYmxlLXJmczogdHJ1ZSAhZGVmYXVsdDtcblxuLy8gQ2FjaGUgJHJmcy1iYXNlLXZhbHVlIHVuaXRcbiRyZnMtYmFzZS12YWx1ZS11bml0OiB1bml0KCRyZnMtYmFzZS12YWx1ZSk7XG5cbkBmdW5jdGlvbiBkaXZpZGUoJGRpdmlkZW5kLCAkZGl2aXNvciwgJHByZWNpc2lvbjogMTApIHtcbiAgJHNpZ246IGlmKCRkaXZpZGVuZCA+IDAgYW5kICRkaXZpc29yID4gMCBvciAkZGl2aWRlbmQgPCAwIGFuZCAkZGl2aXNvciA8IDAsIDEsIC0xKTtcbiAgJGRpdmlkZW5kOiBhYnMoJGRpdmlkZW5kKTtcbiAgJGRpdmlzb3I6IGFicygkZGl2aXNvcik7XG4gIEBpZiAkZGl2aWRlbmQgPT0gMCB7XG4gICAgQHJldHVybiAwO1xuICB9XG4gIEBpZiAkZGl2aXNvciA9PSAwIHtcbiAgICBAZXJyb3IgXCJDYW5ub3QgZGl2aWRlIGJ5IDBcIjtcbiAgfVxuICAkcmVtYWluZGVyOiAkZGl2aWRlbmQ7XG4gICRyZXN1bHQ6IDA7XG4gICRmYWN0b3I6IDEwO1xuICBAd2hpbGUgKCRyZW1haW5kZXIgPiAwIGFuZCAkcHJlY2lzaW9uID49IDApIHtcbiAgICAkcXVvdGllbnQ6IDA7XG4gICAgQHdoaWxlICgkcmVtYWluZGVyID49ICRkaXZpc29yKSB7XG4gICAgICAkcmVtYWluZGVyOiAkcmVtYWluZGVyIC0gJGRpdmlzb3I7XG4gICAgICAkcXVvdGllbnQ6ICRxdW90aWVudCArIDE7XG4gICAgfVxuICAgICRyZXN1bHQ6ICRyZXN1bHQgKiAxMCArICRxdW90aWVudDtcbiAgICAkZmFjdG9yOiAkZmFjdG9yICogLjE7XG4gICAgJHJlbWFpbmRlcjogJHJlbWFpbmRlciAqIDEwO1xuICAgICRwcmVjaXNpb246ICRwcmVjaXNpb24gLSAxO1xuICAgIEBpZiAoJHByZWNpc2lvbiA8IDAgYW5kICRyZW1haW5kZXIgPj0gJGRpdmlzb3IgKiA1KSB7XG4gICAgICAkcmVzdWx0OiAkcmVzdWx0ICsgMTtcbiAgICB9XG4gIH1cbiAgJHJlc3VsdDogJHJlc3VsdCAqICRmYWN0b3IgKiAkc2lnbjtcbiAgJGRpdmlkZW5kLXVuaXQ6IHVuaXQoJGRpdmlkZW5kKTtcbiAgJGRpdmlzb3ItdW5pdDogdW5pdCgkZGl2aXNvcik7XG4gICR1bml0LW1hcDogKFxuICAgIFwicHhcIjogMXB4LFxuICAgIFwicmVtXCI6IDFyZW0sXG4gICAgXCJlbVwiOiAxZW0sXG4gICAgXCIlXCI6IDElXG4gICk7XG4gIEBpZiAoJGRpdmlkZW5kLXVuaXQgIT0gJGRpdmlzb3ItdW5pdCBhbmQgbWFwLWhhcy1rZXkoJHVuaXQtbWFwLCAkZGl2aWRlbmQtdW5pdCkpIHtcbiAgICAkcmVzdWx0OiAkcmVzdWx0ICogbWFwLWdldCgkdW5pdC1tYXAsICRkaXZpZGVuZC11bml0KTtcbiAgfVxuICBAcmV0dXJuICRyZXN1bHQ7XG59XG5cbi8vIFJlbW92ZSBweC11bml0IGZyb20gJHJmcy1iYXNlLXZhbHVlIGZvciBjYWxjdWxhdGlvbnNcbkBpZiAkcmZzLWJhc2UtdmFsdWUtdW5pdCA9PSBweCB7XG4gICRyZnMtYmFzZS12YWx1ZTogZGl2aWRlKCRyZnMtYmFzZS12YWx1ZSwgJHJmcy1iYXNlLXZhbHVlICogMCArIDEpO1xufVxuQGVsc2UgaWYgJHJmcy1iYXNlLXZhbHVlLXVuaXQgPT0gcmVtIHtcbiAgJHJmcy1iYXNlLXZhbHVlOiBkaXZpZGUoJHJmcy1iYXNlLXZhbHVlLCBkaXZpZGUoJHJmcy1iYXNlLXZhbHVlICogMCArIDEsICRyZnMtcmVtLXZhbHVlKSk7XG59XG5cbi8vIENhY2hlICRyZnMtYnJlYWtwb2ludCB1bml0IHRvIHByZXZlbnQgbXVsdGlwbGUgY2FsbHNcbiRyZnMtYnJlYWtwb2ludC11bml0LWNhY2hlOiB1bml0KCRyZnMtYnJlYWtwb2ludCk7XG5cbi8vIFJlbW92ZSB1bml0IGZyb20gJHJmcy1icmVha3BvaW50IGZvciBjYWxjdWxhdGlvbnNcbkBpZiAkcmZzLWJyZWFrcG9pbnQtdW5pdC1jYWNoZSA9PSBweCB7XG4gICRyZnMtYnJlYWtwb2ludDogZGl2aWRlKCRyZnMtYnJlYWtwb2ludCwgJHJmcy1icmVha3BvaW50ICogMCArIDEpO1xufVxuQGVsc2UgaWYgJHJmcy1icmVha3BvaW50LXVuaXQtY2FjaGUgPT0gcmVtIG9yICRyZnMtYnJlYWtwb2ludC11bml0LWNhY2hlID09IFwiZW1cIiB7XG4gICRyZnMtYnJlYWtwb2ludDogZGl2aWRlKCRyZnMtYnJlYWtwb2ludCwgZGl2aWRlKCRyZnMtYnJlYWtwb2ludCAqIDAgKyAxLCAkcmZzLXJlbS12YWx1ZSkpO1xufVxuXG4vLyBDYWxjdWxhdGUgdGhlIG1lZGlhIHF1ZXJ5IHZhbHVlXG4kcmZzLW1xLXZhbHVlOiBpZigkcmZzLWJyZWFrcG9pbnQtdW5pdCA9PSBweCwgI3skcmZzLWJyZWFrcG9pbnR9cHgsICN7ZGl2aWRlKCRyZnMtYnJlYWtwb2ludCwgJHJmcy1yZW0tdmFsdWUpfSN7JHJmcy1icmVha3BvaW50LXVuaXR9KTtcbiRyZnMtbXEtcHJvcGVydHktd2lkdGg6IGlmKCRyZnMtbW9kZSA9PSBtYXgtbWVkaWEtcXVlcnksIG1heC13aWR0aCwgbWluLXdpZHRoKTtcbiRyZnMtbXEtcHJvcGVydHktaGVpZ2h0OiBpZigkcmZzLW1vZGUgPT0gbWF4LW1lZGlhLXF1ZXJ5LCBtYXgtaGVpZ2h0LCBtaW4taGVpZ2h0KTtcblxuLy8gSW50ZXJuYWwgbWl4aW4gdXNlZCB0byBkZXRlcm1pbmUgd2hpY2ggbWVkaWEgcXVlcnkgbmVlZHMgdG8gYmUgdXNlZFxuQG1peGluIF9yZnMtbWVkaWEtcXVlcnkge1xuICBAaWYgJHJmcy10d28tZGltZW5zaW9uYWwge1xuICAgIEBpZiAkcmZzLW1vZGUgPT0gbWF4LW1lZGlhLXF1ZXJ5IHtcbiAgICAgIEBtZWRpYSAoI3skcmZzLW1xLXByb3BlcnR5LXdpZHRofTogI3skcmZzLW1xLXZhbHVlfSksICgjeyRyZnMtbXEtcHJvcGVydHktaGVpZ2h0fTogI3skcmZzLW1xLXZhbHVlfSkge1xuICAgICAgICBAY29udGVudDtcbiAgICAgIH1cbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQG1lZGlhICgjeyRyZnMtbXEtcHJvcGVydHktd2lkdGh9OiAjeyRyZnMtbXEtdmFsdWV9KSBhbmQgKCN7JHJmcy1tcS1wcm9wZXJ0eS1oZWlnaHR9OiAjeyRyZnMtbXEtdmFsdWV9KSB7XG4gICAgICAgIEBjb250ZW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgQG1lZGlhICgjeyRyZnMtbXEtcHJvcGVydHktd2lkdGh9OiAjeyRyZnMtbXEtdmFsdWV9KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cblxuLy8gSW50ZXJuYWwgbWl4aW4gdGhhdCBhZGRzIGRpc2FibGUgY2xhc3NlcyB0byB0aGUgc2VsZWN0b3IgaWYgbmVlZGVkLlxuQG1peGluIF9yZnMtcnVsZSB7XG4gIEBpZiAkcmZzLWNsYXNzID09IGRpc2FibGUgYW5kICRyZnMtbW9kZSA9PSBtYXgtbWVkaWEtcXVlcnkge1xuICAgIC8vIEFkZGluZyBhbiBleHRyYSBjbGFzcyBpbmNyZWFzZXMgc3BlY2lmaWNpdHksIHdoaWNoIHByZXZlbnRzIHRoZSBtZWRpYSBxdWVyeSB0byBvdmVycmlkZSB0aGUgcHJvcGVydHlcbiAgICAmLFxuICAgIC5kaXNhYmxlLXJmcyAmLFxuICAgICYuZGlzYWJsZS1yZnMge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICRyZnMtY2xhc3MgPT0gZW5hYmxlIGFuZCAkcmZzLW1vZGUgPT0gbWluLW1lZGlhLXF1ZXJ5IHtcbiAgICAuZW5hYmxlLXJmcyAmLFxuICAgICYuZW5hYmxlLXJmcyB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbi8vIEludGVybmFsIG1peGluIHRoYXQgYWRkcyBlbmFibGUgY2xhc3NlcyB0byB0aGUgc2VsZWN0b3IgaWYgbmVlZGVkLlxuQG1peGluIF9yZnMtbWVkaWEtcXVlcnktcnVsZSB7XG5cbiAgQGlmICRyZnMtY2xhc3MgPT0gZW5hYmxlIHtcbiAgICBAaWYgJHJmcy1tb2RlID09IG1pbi1tZWRpYS1xdWVyeSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBfcmZzLW1lZGlhLXF1ZXJ5ICgpIHtcbiAgICAgIC5lbmFibGUtcmZzICYsXG4gICAgICAmLmVuYWJsZS1yZnMge1xuICAgICAgICBAY29udGVudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIEBpZiAkcmZzLWNsYXNzID09IGRpc2FibGUgYW5kICRyZnMtbW9kZSA9PSBtaW4tbWVkaWEtcXVlcnkge1xuICAgICAgLmRpc2FibGUtcmZzICYsXG4gICAgICAmLmRpc2FibGUtcmZzIHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgICB9XG4gICAgfVxuICAgIEBpbmNsdWRlIF9yZnMtbWVkaWEtcXVlcnkgKCkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vIEhlbHBlciBmdW5jdGlvbiB0byBnZXQgdGhlIGZvcm1hdHRlZCBub24tcmVzcG9uc2l2ZSB2YWx1ZVxuQGZ1bmN0aW9uIHJmcy12YWx1ZSgkdmFsdWVzKSB7XG4gIC8vIENvbnZlcnQgdG8gbGlzdFxuICAkdmFsdWVzOiBpZih0eXBlLW9mKCR2YWx1ZXMpICE9IGxpc3QsICgkdmFsdWVzLCksICR2YWx1ZXMpO1xuXG4gICR2YWw6IFwiXCI7XG5cbiAgLy8gTG9vcCBvdmVyIGVhY2ggdmFsdWUgYW5kIGNhbGN1bGF0ZSB2YWx1ZVxuICBAZWFjaCAkdmFsdWUgaW4gJHZhbHVlcyB7XG4gICAgQGlmICR2YWx1ZSA9PSAwIHtcbiAgICAgICR2YWw6ICR2YWwgKyBcIiAwXCI7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIC8vIENhY2hlICR2YWx1ZSB1bml0XG4gICAgICAkdW5pdDogaWYodHlwZS1vZigkdmFsdWUpID09IFwibnVtYmVyXCIsIHVuaXQoJHZhbHVlKSwgZmFsc2UpO1xuXG4gICAgICBAaWYgJHVuaXQgPT0gcHgge1xuICAgICAgICAvLyBDb252ZXJ0IHRvIHJlbSBpZiBuZWVkZWRcbiAgICAgICAgJHZhbDogJHZhbCArIFwiIFwiICsgaWYoJHJmcy11bml0ID09IHJlbSwgI3tkaXZpZGUoJHZhbHVlLCAkdmFsdWUgKiAwICsgJHJmcy1yZW0tdmFsdWUpfXJlbSwgJHZhbHVlKTtcbiAgICAgIH1cbiAgICAgIEBlbHNlIGlmICR1bml0ID09IHJlbSB7XG4gICAgICAgIC8vIENvbnZlcnQgdG8gcHggaWYgbmVlZGVkXG4gICAgICAgICR2YWw6ICR2YWwgKyBcIiBcIiArIGlmKCRyZnMtdW5pdCA9PSBweCwgI3tkaXZpZGUoJHZhbHVlLCAkdmFsdWUgKiAwICsgMSkgKiAkcmZzLXJlbS12YWx1ZX1weCwgJHZhbHVlKTtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICAvLyBJZiAkdmFsdWUgaXNuJ3QgYSBudW1iZXIgKGxpa2UgaW5oZXJpdCkgb3IgJHZhbHVlIGhhcyBhIHVuaXQgKG5vdCBweCBvciByZW0sIGxpa2UgMS41ZW0pIG9yICQgaXMgMCwganVzdCBwcmludCB0aGUgdmFsdWVcbiAgICAgICAgJHZhbDogJHZhbCArIFwiIFwiICsgJHZhbHVlO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFJlbW92ZSBmaXJzdCBzcGFjZVxuICBAcmV0dXJuIHVucXVvdGUoc3RyLXNsaWNlKCR2YWwsIDIpKTtcbn1cblxuLy8gSGVscGVyIGZ1bmN0aW9uIHRvIGdldCB0aGUgcmVzcG9uc2l2ZSB2YWx1ZSBjYWxjdWxhdGVkIGJ5IFJGU1xuQGZ1bmN0aW9uIHJmcy1mbHVpZC12YWx1ZSgkdmFsdWVzKSB7XG4gIC8vIENvbnZlcnQgdG8gbGlzdFxuICAkdmFsdWVzOiBpZih0eXBlLW9mKCR2YWx1ZXMpICE9IGxpc3QsICgkdmFsdWVzLCksICR2YWx1ZXMpO1xuXG4gICR2YWw6IFwiXCI7XG5cbiAgLy8gTG9vcCBvdmVyIGVhY2ggdmFsdWUgYW5kIGNhbGN1bGF0ZSB2YWx1ZVxuICBAZWFjaCAkdmFsdWUgaW4gJHZhbHVlcyB7XG4gICAgQGlmICR2YWx1ZSA9PSAwIHtcbiAgICAgICR2YWw6ICR2YWwgKyBcIiAwXCI7XG4gICAgfSBAZWxzZSB7XG4gICAgICAvLyBDYWNoZSAkdmFsdWUgdW5pdFxuICAgICAgJHVuaXQ6IGlmKHR5cGUtb2YoJHZhbHVlKSA9PSBcIm51bWJlclwiLCB1bml0KCR2YWx1ZSksIGZhbHNlKTtcblxuICAgICAgLy8gSWYgJHZhbHVlIGlzbid0IGEgbnVtYmVyIChsaWtlIGluaGVyaXQpIG9yICR2YWx1ZSBoYXMgYSB1bml0IChub3QgcHggb3IgcmVtLCBsaWtlIDEuNWVtKSBvciAkIGlzIDAsIGp1c3QgcHJpbnQgdGhlIHZhbHVlXG4gICAgICBAaWYgbm90ICR1bml0IG9yICR1bml0ICE9IHB4IGFuZCAkdW5pdCAhPSByZW0ge1xuICAgICAgICAkdmFsOiAkdmFsICsgXCIgXCIgKyAkdmFsdWU7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgLy8gUmVtb3ZlIHVuaXQgZnJvbSAkdmFsdWUgZm9yIGNhbGN1bGF0aW9uc1xuICAgICAgICAkdmFsdWU6IGRpdmlkZSgkdmFsdWUsICR2YWx1ZSAqIDAgKyBpZigkdW5pdCA9PSBweCwgMSwgZGl2aWRlKDEsICRyZnMtcmVtLXZhbHVlKSkpO1xuXG4gICAgICAgIC8vIE9ubHkgYWRkIHRoZSBtZWRpYSBxdWVyeSBpZiB0aGUgdmFsdWUgaXMgZ3JlYXRlciB0aGFuIHRoZSBtaW5pbXVtIHZhbHVlXG4gICAgICAgIEBpZiBhYnMoJHZhbHVlKSA8PSAkcmZzLWJhc2UtdmFsdWUgb3Igbm90ICRlbmFibGUtcmZzIHtcbiAgICAgICAgICAkdmFsOiAkdmFsICsgXCIgXCIgKyBpZigkcmZzLXVuaXQgPT0gcmVtLCAje2RpdmlkZSgkdmFsdWUsICRyZnMtcmVtLXZhbHVlKX1yZW0sICN7JHZhbHVlfXB4KTtcbiAgICAgICAgfVxuICAgICAgICBAZWxzZSB7XG4gICAgICAgICAgLy8gQ2FsY3VsYXRlIHRoZSBtaW5pbXVtIHZhbHVlXG4gICAgICAgICAgJHZhbHVlLW1pbjogJHJmcy1iYXNlLXZhbHVlICsgZGl2aWRlKGFicygkdmFsdWUpIC0gJHJmcy1iYXNlLXZhbHVlLCAkcmZzLWZhY3Rvcik7XG5cbiAgICAgICAgICAvLyBDYWxjdWxhdGUgZGlmZmVyZW5jZSBiZXR3ZWVuICR2YWx1ZSBhbmQgdGhlIG1pbmltdW0gdmFsdWVcbiAgICAgICAgICAkdmFsdWUtZGlmZjogYWJzKCR2YWx1ZSkgLSAkdmFsdWUtbWluO1xuXG4gICAgICAgICAgLy8gQmFzZSB2YWx1ZSBmb3JtYXR0aW5nXG4gICAgICAgICAgJG1pbi13aWR0aDogaWYoJHJmcy11bml0ID09IHJlbSwgI3tkaXZpZGUoJHZhbHVlLW1pbiwgJHJmcy1yZW0tdmFsdWUpfXJlbSwgI3skdmFsdWUtbWlufXB4KTtcblxuICAgICAgICAgIC8vIFVzZSBuZWdhdGl2ZSB2YWx1ZSBpZiBuZWVkZWRcbiAgICAgICAgICAkbWluLXdpZHRoOiBpZigkdmFsdWUgPCAwLCAtJG1pbi13aWR0aCwgJG1pbi13aWR0aCk7XG5cbiAgICAgICAgICAvLyBVc2UgYHZtaW5gIGlmIHR3by1kaW1lbnNpb25hbCBpcyBlbmFibGVkXG4gICAgICAgICAgJHZhcmlhYmxlLXVuaXQ6IGlmKCRyZnMtdHdvLWRpbWVuc2lvbmFsLCB2bWluLCB2dyk7XG5cbiAgICAgICAgICAvLyBDYWxjdWxhdGUgdGhlIHZhcmlhYmxlIHdpZHRoIGJldHdlZW4gMCBhbmQgJHJmcy1icmVha3BvaW50XG4gICAgICAgICAgJHZhcmlhYmxlLXdpZHRoOiAje2RpdmlkZSgkdmFsdWUtZGlmZiAqIDEwMCwgJHJmcy1icmVha3BvaW50KX0jeyR2YXJpYWJsZS11bml0fTtcblxuICAgICAgICAgIC8vIFJldHVybiB0aGUgY2FsY3VsYXRlZCB2YWx1ZVxuICAgICAgICAgICR2YWw6ICR2YWwgKyBcIiBjYWxjKFwiICsgJG1pbi13aWR0aCArIGlmKCR2YWx1ZSA8IDAsIFwiIC0gXCIsIFwiICsgXCIpICsgJHZhcmlhYmxlLXdpZHRoICsgXCIpXCI7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBSZW1vdmUgZmlyc3Qgc3BhY2VcbiAgQHJldHVybiB1bnF1b3RlKHN0ci1zbGljZSgkdmFsLCAyKSk7XG59XG5cbi8vIFJGUyBtaXhpblxuQG1peGluIHJmcygkdmFsdWVzLCAkcHJvcGVydHk6IGZvbnQtc2l6ZSkge1xuICBAaWYgJHZhbHVlcyAhPSBudWxsIHtcbiAgICAkdmFsOiByZnMtdmFsdWUoJHZhbHVlcyk7XG4gICAgJGZsdWlkLXZhbDogcmZzLWZsdWlkLXZhbHVlKCR2YWx1ZXMpO1xuXG4gICAgLy8gRG8gbm90IHByaW50IHRoZSBtZWRpYSBxdWVyeSBpZiByZXNwb25zaXZlICYgbm9uLXJlc3BvbnNpdmUgdmFsdWVzIGFyZSB0aGUgc2FtZVxuICAgIEBpZiAkdmFsID09ICRmbHVpZC12YWwge1xuICAgICAgI3skcHJvcGVydHl9OiAkdmFsO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAaW5jbHVkZSBfcmZzLXJ1bGUgKCkge1xuICAgICAgICAjeyRwcm9wZXJ0eX06IGlmKCRyZnMtbW9kZSA9PSBtYXgtbWVkaWEtcXVlcnksICR2YWwsICRmbHVpZC12YWwpO1xuXG4gICAgICAgIC8vIEluY2x1ZGUgc2FmYXJpIGlmcmFtZSByZXNpemUgZml4IGlmIG5lZWRlZFxuICAgICAgICBtaW4td2lkdGg6IGlmKCRyZnMtc2FmYXJpLWlmcmFtZS1yZXNpemUtYnVnLWZpeCwgKDAgKiAxdncpLCBudWxsKTtcbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgX3Jmcy1tZWRpYS1xdWVyeS1ydWxlICgpIHtcbiAgICAgICAgI3skcHJvcGVydHl9OiBpZigkcmZzLW1vZGUgPT0gbWF4LW1lZGlhLXF1ZXJ5LCAkZmx1aWQtdmFsLCAkdmFsKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gU2hvcnRoYW5kIGhlbHBlciBtaXhpbnNcbkBtaXhpbiBmb250LXNpemUoJHZhbHVlKSB7XG4gIEBpbmNsdWRlIHJmcygkdmFsdWUpO1xufVxuXG5AbWl4aW4gcGFkZGluZygkdmFsdWUpIHtcbiAgQGluY2x1ZGUgcmZzKCR2YWx1ZSwgcGFkZGluZyk7XG59XG5cbkBtaXhpbiBwYWRkaW5nLXRvcCgkdmFsdWUpIHtcbiAgQGluY2x1ZGUgcmZzKCR2YWx1ZSwgcGFkZGluZy10b3ApO1xufVxuXG5AbWl4aW4gcGFkZGluZy1yaWdodCgkdmFsdWUpIHtcbiAgQGluY2x1ZGUgcmZzKCR2YWx1ZSwgcGFkZGluZy1yaWdodCk7XG59XG5cbkBtaXhpbiBwYWRkaW5nLWJvdHRvbSgkdmFsdWUpIHtcbiAgQGluY2x1ZGUgcmZzKCR2YWx1ZSwgcGFkZGluZy1ib3R0b20pO1xufVxuXG5AbWl4aW4gcGFkZGluZy1sZWZ0KCR2YWx1ZSkge1xuICBAaW5jbHVkZSByZnMoJHZhbHVlLCBwYWRkaW5nLWxlZnQpO1xufVxuXG5AbWl4aW4gbWFyZ2luKCR2YWx1ZSkge1xuICBAaW5jbHVkZSByZnMoJHZhbHVlLCBtYXJnaW4pO1xufVxuXG5AbWl4aW4gbWFyZ2luLXRvcCgkdmFsdWUpIHtcbiAgQGluY2x1ZGUgcmZzKCR2YWx1ZSwgbWFyZ2luLXRvcCk7XG59XG5cbkBtaXhpbiBtYXJnaW4tcmlnaHQoJHZhbHVlKSB7XG4gIEBpbmNsdWRlIHJmcygkdmFsdWUsIG1hcmdpbi1yaWdodCk7XG59XG5cbkBtaXhpbiBtYXJnaW4tYm90dG9tKCR2YWx1ZSkge1xuICBAaW5jbHVkZSByZnMoJHZhbHVlLCBtYXJnaW4tYm90dG9tKTtcbn1cblxuQG1peGluIG1hcmdpbi1sZWZ0KCR2YWx1ZSkge1xuICBAaW5jbHVkZSByZnMoJHZhbHVlLCBtYXJnaW4tbGVmdCk7XG59XG4iLCIvLyBzY3NzLWRvY3Mtc3RhcnQgY29sb3ItbW9kZS1taXhpblxuQG1peGluIGNvbG9yLW1vZGUoJG1vZGU6IGxpZ2h0LCAkcm9vdDogZmFsc2UpIHtcbiAgQGlmICRjb2xvci1tb2RlLXR5cGUgPT0gXCJtZWRpYS1xdWVyeVwiIHtcbiAgICBAaWYgJHJvb3QgPT0gdHJ1ZSB7XG4gICAgICBAbWVkaWEgKHByZWZlcnMtY29sb3Itc2NoZW1lOiAkbW9kZSkge1xuICAgICAgICA6cm9vdCB7XG4gICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9IEBlbHNlIHtcbiAgICAgIEBtZWRpYSAocHJlZmVycy1jb2xvci1zY2hlbWU6ICRtb2RlKSB7XG4gICAgICAgIEBjb250ZW50O1xuICAgICAgfVxuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgW2RhdGEtYnMtdGhlbWU9XCIjeyRtb2RlfVwiXSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cbi8vIHNjc3MtZG9jcy1lbmQgY29sb3ItbW9kZS1taXhpblxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50LCBzZWxlY3Rvci1uby1xdWFsaWZ5aW5nLXR5cGUsIHByb3BlcnR5LW5vLXZlbmRvci1wcmVmaXhcblxuXG4vLyBSZWJvb3Rcbi8vXG4vLyBOb3JtYWxpemF0aW9uIG9mIEhUTUwgZWxlbWVudHMsIG1hbnVhbGx5IGZvcmtlZCBmcm9tIE5vcm1hbGl6ZS5jc3MgdG8gcmVtb3ZlXG4vLyBzdHlsZXMgdGFyZ2V0aW5nIGlycmVsZXZhbnQgYnJvd3NlcnMgd2hpbGUgYXBwbHlpbmcgbmV3IHN0eWxlcy5cbi8vXG4vLyBOb3JtYWxpemUgaXMgbGljZW5zZWQgTUlULiBodHRwczovL2dpdGh1Yi5jb20vbmVjb2xhcy9ub3JtYWxpemUuY3NzXG5cblxuLy8gRG9jdW1lbnRcbi8vXG4vLyBDaGFuZ2UgZnJvbSBgYm94LXNpemluZzogY29udGVudC1ib3hgIHNvIHRoYXQgYHdpZHRoYCBpcyBub3QgYWZmZWN0ZWQgYnkgYHBhZGRpbmdgIG9yIGBib3JkZXJgLlxuXG4qLFxuKjo6YmVmb3JlLFxuKjo6YWZ0ZXIge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG5cbi8vIFJvb3Rcbi8vXG4vLyBBYmlsaXR5IHRvIHRoZSB2YWx1ZSBvZiB0aGUgcm9vdCBmb250IHNpemVzLCBhZmZlY3RpbmcgdGhlIHZhbHVlIG9mIGByZW1gLlxuLy8gbnVsbCBieSBkZWZhdWx0LCB0aHVzIG5vdGhpbmcgaXMgZ2VuZXJhdGVkLlxuXG46cm9vdCB7XG4gIEBpZiAkZm9udC1zaXplLXJvb3QgIT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgZm9udC1zaXplKHZhcigtLSN7JHByZWZpeH1yb290LWZvbnQtc2l6ZSkpO1xuICB9XG5cbiAgQGlmICRlbmFibGUtc21vb3RoLXNjcm9sbCB7XG4gICAgQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiBuby1wcmVmZXJlbmNlKSB7XG4gICAgICBzY3JvbGwtYmVoYXZpb3I6IHNtb290aDtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBCb2R5XG4vL1xuLy8gMS4gUmVtb3ZlIHRoZSBtYXJnaW4gaW4gYWxsIGJyb3dzZXJzLlxuLy8gMi4gQXMgYSBiZXN0IHByYWN0aWNlLCBhcHBseSBhIGRlZmF1bHQgYGJhY2tncm91bmQtY29sb3JgLlxuLy8gMy4gUHJldmVudCBhZGp1c3RtZW50cyBvZiBmb250IHNpemUgYWZ0ZXIgb3JpZW50YXRpb24gY2hhbmdlcyBpbiBpT1MuXG4vLyA0LiBDaGFuZ2UgdGhlIGRlZmF1bHQgdGFwIGhpZ2hsaWdodCB0byBiZSBjb21wbGV0ZWx5IHRyYW5zcGFyZW50IGluIGlPUy5cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHJlYm9vdC1ib2R5LXJ1bGVzXG5ib2R5IHtcbiAgbWFyZ2luOiAwOyAvLyAxXG4gIGZvbnQtZmFtaWx5OiB2YXIoLS0jeyRwcmVmaXh9Ym9keS1mb250LWZhbWlseSk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSh2YXIoLS0jeyRwcmVmaXh9Ym9keS1mb250LXNpemUpKTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLSN7JHByZWZpeH1ib2R5LWZvbnQtd2VpZ2h0KTtcbiAgbGluZS1oZWlnaHQ6IHZhcigtLSN7JHByZWZpeH1ib2R5LWxpbmUtaGVpZ2h0KTtcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1ib2R5LWNvbG9yKTtcbiAgdGV4dC1hbGlnbjogdmFyKC0tI3skcHJlZml4fWJvZHktdGV4dC1hbGlnbik7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1ib2R5LWJnKTsgLy8gMlxuICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IC8vIDNcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiByZ2JhKCRibGFjaywgMCk7IC8vIDRcbn1cbi8vIHNjc3MtZG9jcy1lbmQgcmVib290LWJvZHktcnVsZXNcblxuXG4vLyBDb250ZW50IGdyb3VwaW5nXG4vL1xuLy8gMS4gUmVzZXQgRmlyZWZveCdzIGdyYXkgY29sb3JcblxuaHIge1xuICBtYXJnaW46ICRoci1tYXJnaW4teSAwO1xuICBjb2xvcjogJGhyLWNvbG9yOyAvLyAxXG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXRvcDogJGhyLWJvcmRlci13aWR0aCBzb2xpZCAkaHItYm9yZGVyLWNvbG9yO1xuICBvcGFjaXR5OiAkaHItb3BhY2l0eTtcbn1cblxuXG4vLyBUeXBvZ3JhcGh5XG4vL1xuLy8gMS4gUmVtb3ZlIHRvcCBtYXJnaW5zIGZyb20gaGVhZGluZ3Ncbi8vICAgIEJ5IGRlZmF1bHQsIGA8aDE+YC1gPGg2PmAgYWxsIHJlY2VpdmUgdG9wIGFuZCBib3R0b20gbWFyZ2lucy4gV2UgbnVrZSB0aGUgdG9wXG4vLyAgICBtYXJnaW4gZm9yIGVhc2llciBjb250cm9sIHdpdGhpbiB0eXBlIHNjYWxlcyBhcyBpdCBhdm9pZHMgbWFyZ2luIGNvbGxhcHNpbmcuXG5cbiVoZWFkaW5nIHtcbiAgbWFyZ2luLXRvcDogMDsgLy8gMVxuICBtYXJnaW4tYm90dG9tOiAkaGVhZGluZ3MtbWFyZ2luLWJvdHRvbTtcbiAgZm9udC1mYW1pbHk6ICRoZWFkaW5ncy1mb250LWZhbWlseTtcbiAgZm9udC1zdHlsZTogJGhlYWRpbmdzLWZvbnQtc3R5bGU7XG4gIGZvbnQtd2VpZ2h0OiAkaGVhZGluZ3MtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkaGVhZGluZ3MtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9aGVhZGluZy1jb2xvcik7XG59XG5cbmgxIHtcbiAgQGV4dGVuZCAlaGVhZGluZztcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRoMS1mb250LXNpemUpO1xufVxuXG5oMiB7XG4gIEBleHRlbmQgJWhlYWRpbmc7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaDItZm9udC1zaXplKTtcbn1cblxuaDMge1xuICBAZXh0ZW5kICVoZWFkaW5nO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGgzLWZvbnQtc2l6ZSk7XG59XG5cbmg0IHtcbiAgQGV4dGVuZCAlaGVhZGluZztcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRoNC1mb250LXNpemUpO1xufVxuXG5oNSB7XG4gIEBleHRlbmQgJWhlYWRpbmc7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaDUtZm9udC1zaXplKTtcbn1cblxuaDYge1xuICBAZXh0ZW5kICVoZWFkaW5nO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGg2LWZvbnQtc2l6ZSk7XG59XG5cblxuLy8gUmVzZXQgbWFyZ2lucyBvbiBwYXJhZ3JhcGhzXG4vL1xuLy8gU2ltaWxhcmx5LCB0aGUgdG9wIG1hcmdpbiBvbiBgPHA+YHMgZ2V0IHJlc2V0LiBIb3dldmVyLCB3ZSBhbHNvIHJlc2V0IHRoZVxuLy8gYm90dG9tIG1hcmdpbiB0byB1c2UgYHJlbWAgdW5pdHMgaW5zdGVhZCBvZiBgZW1gLlxuXG5wIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tO1xufVxuXG5cbi8vIEFiYnJldmlhdGlvbnNcbi8vXG4vLyAxLiBBZGQgdGhlIGNvcnJlY3QgdGV4dCBkZWNvcmF0aW9uIGluIENocm9tZSwgRWRnZSwgT3BlcmEsIGFuZCBTYWZhcmkuXG4vLyAyLiBBZGQgZXhwbGljaXQgY3Vyc29yIHRvIGluZGljYXRlIGNoYW5nZWQgYmVoYXZpb3IuXG4vLyAzLiBQcmV2ZW50IHRoZSB0ZXh0LWRlY29yYXRpb24gdG8gYmUgc2tpcHBlZC5cblxuYWJiclt0aXRsZV0ge1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSBkb3R0ZWQ7IC8vIDFcbiAgY3Vyc29yOiBoZWxwOyAvLyAyXG4gIHRleHQtZGVjb3JhdGlvbi1za2lwLWluazogbm9uZTsgLy8gM1xufVxuXG5cbi8vIEFkZHJlc3NcblxuYWRkcmVzcyB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG59XG5cblxuLy8gTGlzdHNcblxub2wsXG51bCB7XG4gIHBhZGRpbmctbGVmdDogMnJlbTtcbn1cblxub2wsXG51bCxcbmRsIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cblxub2wgb2wsXG51bCB1bCxcbm9sIHVsLFxudWwgb2wge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG5kdCB7XG4gIGZvbnQtd2VpZ2h0OiAkZHQtZm9udC13ZWlnaHQ7XG59XG5cbi8vIDEuIFVuZG8gYnJvd3NlciBkZWZhdWx0XG5cbmRkIHtcbiAgbWFyZ2luLWJvdHRvbTogLjVyZW07XG4gIG1hcmdpbi1sZWZ0OiAwOyAvLyAxXG59XG5cblxuLy8gQmxvY2txdW90ZVxuXG5ibG9ja3F1b3RlIHtcbiAgbWFyZ2luOiAwIDAgMXJlbTtcbn1cblxuXG4vLyBTdHJvbmdcbi8vXG4vLyBBZGQgdGhlIGNvcnJlY3QgZm9udCB3ZWlnaHQgaW4gQ2hyb21lLCBFZGdlLCBhbmQgU2FmYXJpXG5cbmIsXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGRlcjtcbn1cblxuXG4vLyBTbWFsbFxuLy9cbi8vIEFkZCB0aGUgY29ycmVjdCBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzXG5cbnNtYWxsIHtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRzbWFsbC1mb250LXNpemUpO1xufVxuXG5cbi8vIE1hcmtcblxubWFyayB7XG4gIHBhZGRpbmc6ICRtYXJrLXBhZGRpbmc7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1oaWdobGlnaHQtYmcpO1xufVxuXG5cbi8vIFN1YiBhbmQgU3VwXG4vL1xuLy8gUHJldmVudCBgc3ViYCBhbmQgYHN1cGAgZWxlbWVudHMgZnJvbSBhZmZlY3RpbmcgdGhlIGxpbmUgaGVpZ2h0IGluXG4vLyBhbGwgYnJvd3NlcnMuXG5cbnN1YixcbnN1cCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRzdWItc3VwLWZvbnQtc2l6ZSk7XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbnN1YiB7IGJvdHRvbTogLS4yNWVtOyB9XG5zdXAgeyB0b3A6IC0uNWVtOyB9XG5cblxuLy8gTGlua3NcblxuYSB7XG4gIGNvbG9yOiByZ2JhKHZhcigtLSN7JHByZWZpeH1saW5rLWNvbG9yLXJnYiksIHZhcigtLSN7JHByZWZpeH1saW5rLW9wYWNpdHksIDEpKTtcbiAgdGV4dC1kZWNvcmF0aW9uOiAkbGluay1kZWNvcmF0aW9uO1xuXG4gICY6aG92ZXIge1xuICAgIC0tI3skcHJlZml4fWxpbmstY29sb3ItcmdiOiB2YXIoLS0jeyRwcmVmaXh9bGluay1ob3Zlci1jb2xvci1yZ2IpO1xuICAgIHRleHQtZGVjb3JhdGlvbjogJGxpbmstaG92ZXItZGVjb3JhdGlvbjtcbiAgfVxufVxuXG4vLyBBbmQgdW5kbyB0aGVzZSBzdHlsZXMgZm9yIHBsYWNlaG9sZGVyIGxpbmtzL25hbWVkIGFuY2hvcnMgKHdpdGhvdXQgaHJlZikuXG4vLyBJdCB3b3VsZCBiZSBtb3JlIHN0cmFpZ2h0Zm9yd2FyZCB0byBqdXN0IHVzZSBhW2hyZWZdIGluIHByZXZpb3VzIGJsb2NrLCBidXQgdGhhdFxuLy8gY2F1c2VzIHNwZWNpZmljaXR5IGlzc3VlcyBpbiBtYW55IG90aGVyIHN0eWxlcyB0aGF0IGFyZSB0b28gY29tcGxleCB0byBmaXguXG4vLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xOTQwMlxuXG5hOm5vdChbaHJlZl0pOm5vdChbY2xhc3NdKSB7XG4gICYsXG4gICY6aG92ZXIge1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxufVxuXG5cbi8vIENvZGVcblxucHJlLFxuY29kZSxcbmtiZCxcbnNhbXAge1xuICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LWNvZGU7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgxZW0pOyAvLyBDb3JyZWN0IHRoZSBvZGQgYGVtYCBmb250IHNpemluZyBpbiBhbGwgYnJvd3NlcnMuXG59XG5cbi8vIDEuIFJlbW92ZSBicm93c2VyIGRlZmF1bHQgdG9wIG1hcmdpblxuLy8gMi4gUmVzZXQgYnJvd3NlciBkZWZhdWx0IG9mIGAxZW1gIHRvIHVzZSBgcmVtYHNcbi8vIDMuIERvbid0IGFsbG93IGNvbnRlbnQgdG8gYnJlYWsgb3V0c2lkZVxuXG5wcmUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLXRvcDogMDsgLy8gMVxuICBtYXJnaW4tYm90dG9tOiAxcmVtOyAvLyAyXG4gIG92ZXJmbG93OiBhdXRvOyAvLyAzXG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkY29kZS1mb250LXNpemUpO1xuICBjb2xvcjogJHByZS1jb2xvcjtcblxuICAvLyBBY2NvdW50IGZvciBzb21lIGNvZGUgb3V0cHV0cyB0aGF0IHBsYWNlIGNvZGUgdGFncyBpbiBwcmUgdGFnc1xuICBjb2RlIHtcbiAgICBAaW5jbHVkZSBmb250LXNpemUoaW5oZXJpdCk7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gICAgd29yZC1icmVhazogbm9ybWFsO1xuICB9XG59XG5cbmNvZGUge1xuICBAaW5jbHVkZSBmb250LXNpemUoJGNvZGUtZm9udC1zaXplKTtcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1jb2RlLWNvbG9yKTtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuXG4gIC8vIFN0cmVhbWxpbmUgdGhlIHN0eWxlIHdoZW4gaW5zaWRlIGFuY2hvcnMgdG8gYXZvaWQgYnJva2VuIHVuZGVybGluZSBhbmQgbW9yZVxuICBhID4gJiB7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gIH1cbn1cblxua2JkIHtcbiAgcGFkZGluZzogJGtiZC1wYWRkaW5nLXkgJGtiZC1wYWRkaW5nLXg7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgka2JkLWZvbnQtc2l6ZSk7XG4gIGNvbG9yOiAka2JkLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAka2JkLWJnO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRib3JkZXItcmFkaXVzLXNtKTtcblxuICBrYmQge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgQGluY2x1ZGUgZm9udC1zaXplKDFlbSk7XG4gICAgZm9udC13ZWlnaHQ6ICRuZXN0ZWQta2JkLWZvbnQtd2VpZ2h0O1xuICB9XG59XG5cblxuLy8gRmlndXJlc1xuLy9cbi8vIEFwcGx5IGEgY29uc2lzdGVudCBtYXJnaW4gc3RyYXRlZ3kgKG1hdGNoZXMgb3VyIHR5cGUgc3R5bGVzKS5cblxuZmlndXJlIHtcbiAgbWFyZ2luOiAwIDAgMXJlbTtcbn1cblxuXG4vLyBJbWFnZXMgYW5kIGNvbnRlbnRcblxuaW1nLFxuc3ZnIHtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuXG4vLyBUYWJsZXNcbi8vXG4vLyBQcmV2ZW50IGRvdWJsZSBib3JkZXJzXG5cbnRhYmxlIHtcbiAgY2FwdGlvbi1zaWRlOiBib3R0b207XG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG59XG5cbmNhcHRpb24ge1xuICBwYWRkaW5nLXRvcDogJHRhYmxlLWNlbGwtcGFkZGluZy15O1xuICBwYWRkaW5nLWJvdHRvbTogJHRhYmxlLWNlbGwtcGFkZGluZy15O1xuICBjb2xvcjogJHRhYmxlLWNhcHRpb24tY29sb3I7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG5cbi8vIDEuIFJlbW92ZXMgZm9udC13ZWlnaHQgYm9sZCBieSBpbmhlcml0aW5nXG4vLyAyLiBNYXRjaGVzIGRlZmF1bHQgYDx0ZD5gIGFsaWdubWVudCBieSBpbmhlcml0aW5nIGB0ZXh0LWFsaWduYC5cbi8vIDMuIEZpeCBhbGlnbm1lbnQgZm9yIFNhZmFyaVxuXG50aCB7XG4gIGZvbnQtd2VpZ2h0OiAkdGFibGUtdGgtZm9udC13ZWlnaHQ7IC8vIDFcbiAgdGV4dC1hbGlnbjogaW5oZXJpdDsgLy8gMlxuICB0ZXh0LWFsaWduOiAtd2Via2l0LW1hdGNoLXBhcmVudDsgLy8gM1xufVxuXG50aGVhZCxcbnRib2R5LFxudGZvb3QsXG50cixcbnRkLFxudGgge1xuICBib3JkZXItY29sb3I6IGluaGVyaXQ7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci13aWR0aDogMDtcbn1cblxuXG4vLyBGb3Jtc1xuLy9cbi8vIDEuIEFsbG93IGxhYmVscyB0byB1c2UgYG1hcmdpbmAgZm9yIHNwYWNpbmcuXG5cbmxhYmVsIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrOyAvLyAxXG59XG5cbi8vIFJlbW92ZSB0aGUgZGVmYXVsdCBgYm9yZGVyLXJhZGl1c2AgdGhhdCBtYWNPUyBDaHJvbWUgYWRkcy5cbi8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI0MDkzXG5cbmJ1dHRvbiB7XG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3RcbiAgYm9yZGVyLXJhZGl1czogMDtcbn1cblxuLy8gRXhwbGljaXRseSByZW1vdmUgZm9jdXMgb3V0bGluZSBpbiBDaHJvbWl1bSB3aGVuIGl0IHNob3VsZG4ndCBiZVxuLy8gdmlzaWJsZSAoZS5nLiBhcyByZXN1bHQgb2YgbW91c2UgY2xpY2sgb3IgdG91Y2ggdGFwKS4gSXQgYWxyZWFkeVxuLy8gc2hvdWxkIGJlIGRvaW5nIHRoaXMgYXV0b21hdGljYWxseSwgYnV0IHNlZW1zIHRvIGN1cnJlbnRseSBiZVxuLy8gY29uZnVzZWQgYW5kIGFwcGxpZXMgaXRzIHZlcnkgdmlzaWJsZSB0d28tdG9uZSBvdXRsaW5lIGFueXdheS5cblxuYnV0dG9uOmZvY3VzOm5vdCg6Zm9jdXMtdmlzaWJsZSkge1xuICBvdXRsaW5lOiAwO1xufVxuXG4vLyAxLiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBGaXJlZm94IGFuZCBTYWZhcmlcblxuaW5wdXQsXG5idXR0b24sXG5zZWxlY3QsXG5vcHRncm91cCxcbnRleHRhcmVhIHtcbiAgbWFyZ2luOiAwOyAvLyAxXG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBAaW5jbHVkZSBmb250LXNpemUoaW5oZXJpdCk7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xufVxuXG4vLyBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEZpcmVmb3hcbmJ1dHRvbixcbnNlbGVjdCB7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xufVxuLy8gU2V0IHRoZSBjdXJzb3IgZm9yIG5vbi1gPGJ1dHRvbj5gIGJ1dHRvbnNcbi8vXG4vLyBEZXRhaWxzIGF0IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzMwNTYyXG5bcm9sZT1cImJ1dHRvblwiXSB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuc2VsZWN0IHtcbiAgLy8gUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB3b3JkLXdyYXAgaW4gU2FmYXJpLlxuICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8yNDk5MFxuICB3b3JkLXdyYXA6IG5vcm1hbDtcblxuICAvLyBVbmRvIHRoZSBvcGFjaXR5IGNoYW5nZSBmcm9tIENocm9tZVxuICAmOmRpc2FibGVkIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5cbi8vIFJlbW92ZSB0aGUgZHJvcGRvd24gYXJyb3cgb25seSBmcm9tIHRleHQgdHlwZSBpbnB1dHMgYnVpbHQgd2l0aCBkYXRhbGlzdHMgaW4gQ2hyb21lLlxuLy8gU2VlIGh0dHBzOi8vc3RhY2tvdmVyZmxvdy5jb20vYS81NDk5NzExOFxuXG5bbGlzdF06bm90KFt0eXBlPVwiZGF0ZVwiXSk6bm90KFt0eXBlPVwiZGF0ZXRpbWUtbG9jYWxcIl0pOm5vdChbdHlwZT1cIm1vbnRoXCJdKTpub3QoW3R5cGU9XCJ3ZWVrXCJdKTpub3QoW3R5cGU9XCJ0aW1lXCJdKTo6LXdlYmtpdC1jYWxlbmRhci1waWNrZXItaW5kaWNhdG9yIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4vLyAxLiBQcmV2ZW50IGEgV2ViS2l0IGJ1ZyB3aGVyZSAoMikgZGVzdHJveXMgbmF0aXZlIGBhdWRpb2AgYW5kIGB2aWRlb2Bcbi8vICAgIGNvbnRyb2xzIGluIEFuZHJvaWQgNC5cbi8vIDIuIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4vLyAzLiBPcGluaW9uYXRlZDogYWRkIFwiaGFuZFwiIGN1cnNvciB0byBub24tZGlzYWJsZWQgYnV0dG9uIGVsZW1lbnRzLlxuXG5idXR0b24sXG5bdHlwZT1cImJ1dHRvblwiXSwgLy8gMVxuW3R5cGU9XCJyZXNldFwiXSxcblt0eXBlPVwic3VibWl0XCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IC8vIDJcblxuICBAaWYgJGVuYWJsZS1idXR0b24tcG9pbnRlcnMge1xuICAgICY6bm90KDpkaXNhYmxlZCkge1xuICAgICAgY3Vyc29yOiBwb2ludGVyOyAvLyAzXG4gICAgfVxuICB9XG59XG5cbi8vIFJlbW92ZSBpbm5lciBib3JkZXIgYW5kIHBhZGRpbmcgZnJvbSBGaXJlZm94LCBidXQgZG9uJ3QgcmVzdG9yZSB0aGUgb3V0bGluZSBsaWtlIE5vcm1hbGl6ZS5cblxuOjotbW96LWZvY3VzLWlubmVyIHtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyLXN0eWxlOiBub25lO1xufVxuXG4vLyAxLiBUZXh0YXJlYXMgc2hvdWxkIHJlYWxseSBvbmx5IHJlc2l6ZSB2ZXJ0aWNhbGx5IHNvIHRoZXkgZG9uJ3QgYnJlYWsgdGhlaXIgKGhvcml6b250YWwpIGNvbnRhaW5lcnMuXG5cbnRleHRhcmVhIHtcbiAgcmVzaXplOiB2ZXJ0aWNhbDsgLy8gMVxufVxuXG4vLyAxLiBCcm93c2VycyBzZXQgYSBkZWZhdWx0IGBtaW4td2lkdGg6IG1pbi1jb250ZW50O2Agb24gZmllbGRzZXRzLFxuLy8gICAgdW5saWtlIGUuZy4gYDxkaXY+YHMsIHdoaWNoIGhhdmUgYG1pbi13aWR0aDogMDtgIGJ5IGRlZmF1bHQuXG4vLyAgICBTbyB3ZSByZXNldCB0aGF0IHRvIGVuc3VyZSBmaWVsZHNldHMgYmVoYXZlIG1vcmUgbGlrZSBhIHN0YW5kYXJkIGJsb2NrIGVsZW1lbnQuXG4vLyAgICBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xMjM1OVxuLy8gICAgYW5kIGh0dHBzOi8vaHRtbC5zcGVjLndoYXR3Zy5vcmcvbXVsdGlwYWdlLyN0aGUtZmllbGRzZXQtYW5kLWxlZ2VuZC1lbGVtZW50c1xuLy8gMi4gUmVzZXQgdGhlIGRlZmF1bHQgb3V0bGluZSBiZWhhdmlvciBvZiBmaWVsZHNldHMgc28gdGhleSBkb24ndCBhZmZlY3QgcGFnZSBsYXlvdXQuXG5cbmZpZWxkc2V0IHtcbiAgbWluLXdpZHRoOiAwOyAvLyAxXG4gIHBhZGRpbmc6IDA7IC8vIDJcbiAgbWFyZ2luOiAwOyAvLyAyXG4gIGJvcmRlcjogMDsgLy8gMlxufVxuXG4vLyAxLiBCeSB1c2luZyBgZmxvYXQ6IGxlZnRgLCB0aGUgbGVnZW5kIHdpbGwgYmVoYXZlIGxpa2UgYSBibG9jayBlbGVtZW50LlxuLy8gICAgVGhpcyB3YXkgdGhlIGJvcmRlciBvZiBhIGZpZWxkc2V0IHdyYXBzIGFyb3VuZCB0aGUgbGVnZW5kIGlmIHByZXNlbnQuXG4vLyAyLiBGaXggd3JhcHBpbmcgYnVnLlxuLy8gICAgU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjk3MTJcblxubGVnZW5kIHtcbiAgZmxvYXQ6IGxlZnQ7IC8vIDFcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbi1ib3R0b206ICRsZWdlbmQtbWFyZ2luLWJvdHRvbTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRsZWdlbmQtZm9udC1zaXplKTtcbiAgZm9udC13ZWlnaHQ6ICRsZWdlbmQtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuXG4gICsgKiB7XG4gICAgY2xlYXI6IGxlZnQ7IC8vIDJcbiAgfVxufVxuXG4vLyBGaXggaGVpZ2h0IG9mIGlucHV0cyB3aXRoIGEgdHlwZSBvZiBkYXRldGltZS1sb2NhbCwgZGF0ZSwgbW9udGgsIHdlZWssIG9yIHRpbWVcbi8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzE4ODQyXG5cbjo6LXdlYmtpdC1kYXRldGltZS1lZGl0LWZpZWxkcy13cmFwcGVyLFxuOjotd2Via2l0LWRhdGV0aW1lLWVkaXQtdGV4dCxcbjo6LXdlYmtpdC1kYXRldGltZS1lZGl0LW1pbnV0ZSxcbjo6LXdlYmtpdC1kYXRldGltZS1lZGl0LWhvdXItZmllbGQsXG46Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdC1kYXktZmllbGQsXG46Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdC1tb250aC1maWVsZCxcbjo6LXdlYmtpdC1kYXRldGltZS1lZGl0LXllYXItZmllbGQge1xuICBwYWRkaW5nOiAwO1xufVxuXG46Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24ge1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbi8vIDEuIENvcnJlY3QgdGhlIG91dGxpbmUgc3R5bGUgaW4gU2FmYXJpLlxuLy8gMi4gVGhpcyBvdmVycmlkZXMgdGhlIGV4dHJhIHJvdW5kZWQgY29ybmVycyBvbiBzZWFyY2ggaW5wdXRzIGluIGlPUyBzbyB0aGF0IG91clxuLy8gICAgYC5mb3JtLWNvbnRyb2xgIGNsYXNzIGNhbiBwcm9wZXJseSBzdHlsZSB0aGVtLiBOb3RlIHRoYXQgdGhpcyBjYW5ub3Qgc2ltcGx5XG4vLyAgICBiZSBhZGRlZCB0byBgLmZvcm0tY29udHJvbGAgYXMgaXQncyBub3Qgc3BlY2lmaWMgZW5vdWdoLiBGb3IgZGV0YWlscywgc2VlXG4vLyAgICBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzExNTg2LlxuXG5bdHlwZT1cInNlYXJjaFwiXSB7XG4gIG91dGxpbmUtb2Zmc2V0OiAtMnB4OyAvLyAxXG4gIC13ZWJraXQtYXBwZWFyYW5jZTogdGV4dGZpZWxkOyAvLyAyXG59XG5cbi8vIDEuIEEgZmV3IGlucHV0IHR5cGVzIHNob3VsZCBzdGF5IExUUlxuLy8gU2VlIGh0dHBzOi8vcnRsc3R5bGluZy5jb20vcG9zdHMvcnRsLXN0eWxpbmcjZm9ybS1pbnB1dHNcbi8vIDIuIFJUTCBvbmx5IG91dHB1dFxuLy8gU2VlIGh0dHBzOi8vcnRsY3NzLmNvbS9sZWFybi91c2FnZS1ndWlkZS9jb250cm9sLWRpcmVjdGl2ZXMvI3Jhd1xuXG4vKiBydGw6cmF3OlxuW3R5cGU9XCJ0ZWxcIl0sXG5bdHlwZT1cInVybFwiXSxcblt0eXBlPVwiZW1haWxcIl0sXG5bdHlwZT1cIm51bWJlclwiXSB7XG4gIGRpcmVjdGlvbjogbHRyO1xufVxuKi9cblxuLy8gUmVtb3ZlIHRoZSBpbm5lciBwYWRkaW5nIGluIENocm9tZSBhbmQgU2FmYXJpIG9uIG1hY09TLlxuXG46Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG59XG5cbi8vIFJlbW92ZSBwYWRkaW5nIGFyb3VuZCBjb2xvciBwaWNrZXJzIGluIHdlYmtpdCBicm93c2Vyc1xuXG46Oi13ZWJraXQtY29sb3Itc3dhdGNoLXdyYXBwZXIge1xuICBwYWRkaW5nOiAwO1xufVxuXG5cbi8vIDEuIEluaGVyaXQgZm9udCBmYW1pbHkgYW5kIGxpbmUgaGVpZ2h0IGZvciBmaWxlIGlucHV0IGJ1dHRvbnNcbi8vIDIuIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG5cbjo6ZmlsZS1zZWxlY3Rvci1idXR0b24ge1xuICBmb250OiBpbmhlcml0OyAvLyAxXG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyAvLyAyXG59XG5cbi8vIENvcnJlY3QgZWxlbWVudCBkaXNwbGF5c1xuXG5vdXRwdXQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi8vIFJlbW92ZSBib3JkZXIgZnJvbSBpZnJhbWVcblxuaWZyYW1lIHtcbiAgYm9yZGVyOiAwO1xufVxuXG4vLyBTdW1tYXJ5XG4vL1xuLy8gMS4gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gYWxsIGJyb3dzZXJzXG5cbnN1bW1hcnkge1xuICBkaXNwbGF5OiBsaXN0LWl0ZW07IC8vIDFcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG5cbi8vIFByb2dyZXNzXG4vL1xuLy8gQWRkIHRoZSBjb3JyZWN0IHZlcnRpY2FsIGFsaWdubWVudCBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBPcGVyYS5cblxucHJvZ3Jlc3Mge1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cblxuLy8gSGlkZGVuIGF0dHJpYnV0ZVxuLy9cbi8vIEFsd2F5cyBoaWRlIGFuIGVsZW1lbnQgd2l0aCB0aGUgYGhpZGRlbmAgSFRNTCBhdHRyaWJ1dGUuXG5cbltoaWRkZW5dIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuIiwiLy8gVmFyaWFibGVzXG4vL1xuLy8gVmFyaWFibGVzIHNob3VsZCBmb2xsb3cgdGhlIGAkY29tcG9uZW50LXN0YXRlLXByb3BlcnR5LXNpemVgIGZvcm11bGEgZm9yXG4vLyBjb25zaXN0ZW50IG5hbWluZy4gRXg6ICRuYXYtbGluay1kaXNhYmxlZC1jb2xvciBhbmQgJG1vZGFsLWNvbnRlbnQtYm94LXNoYWRvdy14cy5cblxuLy8gQ29sb3Igc3lzdGVtXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBncmF5LWNvbG9yLXZhcmlhYmxlc1xuJHdoaXRlOiAgICAjZmZmICFkZWZhdWx0O1xuJGdyYXktMTAwOiAjZjhmOWZhICFkZWZhdWx0O1xuJGdyYXktMjAwOiAjZTllY2VmICFkZWZhdWx0O1xuJGdyYXktMzAwOiAjZGVlMmU2ICFkZWZhdWx0O1xuJGdyYXktNDAwOiAjY2VkNGRhICFkZWZhdWx0O1xuJGdyYXktNTAwOiAjYWRiNWJkICFkZWZhdWx0O1xuJGdyYXktNjAwOiAjNmM3NTdkICFkZWZhdWx0O1xuJGdyYXktNzAwOiAjNDk1MDU3ICFkZWZhdWx0O1xuJGdyYXktODAwOiAjMzQzYTQwICFkZWZhdWx0O1xuJGdyYXktOTAwOiAjMjEyNTI5ICFkZWZhdWx0O1xuJGJsYWNrOiAgICAjMDAwICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBncmF5LWNvbG9yLXZhcmlhYmxlc1xuXG4vLyBmdXN2LWRpc2FibGVcbi8vIHNjc3MtZG9jcy1zdGFydCBncmF5LWNvbG9ycy1tYXBcbiRncmF5czogKFxuICBcIjEwMFwiOiAkZ3JheS0xMDAsXG4gIFwiMjAwXCI6ICRncmF5LTIwMCxcbiAgXCIzMDBcIjogJGdyYXktMzAwLFxuICBcIjQwMFwiOiAkZ3JheS00MDAsXG4gIFwiNTAwXCI6ICRncmF5LTUwMCxcbiAgXCI2MDBcIjogJGdyYXktNjAwLFxuICBcIjcwMFwiOiAkZ3JheS03MDAsXG4gIFwiODAwXCI6ICRncmF5LTgwMCxcbiAgXCI5MDBcIjogJGdyYXktOTAwXG4pICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBncmF5LWNvbG9ycy1tYXBcbi8vIGZ1c3YtZW5hYmxlXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBjb2xvci12YXJpYWJsZXNcbiRibHVlOiAgICAjMGQ2ZWZkICFkZWZhdWx0O1xuJGluZGlnbzogICM2NjEwZjIgIWRlZmF1bHQ7XG4kcHVycGxlOiAgIzZmNDJjMSAhZGVmYXVsdDtcbiRwaW5rOiAgICAjZDYzMzg0ICFkZWZhdWx0O1xuJHJlZDogICAgICNkYzM1NDUgIWRlZmF1bHQ7XG4kb3JhbmdlOiAgI2ZkN2UxNCAhZGVmYXVsdDtcbiR5ZWxsb3c6ICAjZmZjMTA3ICFkZWZhdWx0O1xuJGdyZWVuOiAgICMxOTg3NTQgIWRlZmF1bHQ7XG4kdGVhbDogICAgIzIwYzk5NyAhZGVmYXVsdDtcbiRjeWFuOiAgICAjMGRjYWYwICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBjb2xvci12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGNvbG9ycy1tYXBcbiRjb2xvcnM6IChcbiAgXCJibHVlXCI6ICAgICAgICRibHVlLFxuICBcImluZGlnb1wiOiAgICAgJGluZGlnbyxcbiAgXCJwdXJwbGVcIjogICAgICRwdXJwbGUsXG4gIFwicGlua1wiOiAgICAgICAkcGluayxcbiAgXCJyZWRcIjogICAgICAgICRyZWQsXG4gIFwib3JhbmdlXCI6ICAgICAkb3JhbmdlLFxuICBcInllbGxvd1wiOiAgICAgJHllbGxvdyxcbiAgXCJncmVlblwiOiAgICAgICRncmVlbixcbiAgXCJ0ZWFsXCI6ICAgICAgICR0ZWFsLFxuICBcImN5YW5cIjogICAgICAgJGN5YW4sXG4gIFwiYmxhY2tcIjogICAgICAkYmxhY2ssXG4gIFwid2hpdGVcIjogICAgICAkd2hpdGUsXG4gIFwiZ3JheVwiOiAgICAgICAkZ3JheS02MDAsXG4gIFwiZ3JheS1kYXJrXCI6ICAkZ3JheS04MDBcbikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGNvbG9ycy1tYXBcblxuLy8gVGhlIGNvbnRyYXN0IHJhdGlvIHRvIHJlYWNoIGFnYWluc3Qgd2hpdGUsIHRvIGRldGVybWluZSBpZiBjb2xvciBjaGFuZ2VzIGZyb20gXCJsaWdodFwiIHRvIFwiZGFya1wiLiBBY2NlcHRhYmxlIHZhbHVlcyBmb3IgV0NBRyAyLjAgYXJlIDMsIDQuNSBhbmQgNy5cbi8vIFNlZSBodHRwczovL3d3dy53My5vcmcvVFIvV0NBRzIwLyN2aXN1YWwtYXVkaW8tY29udHJhc3QtY29udHJhc3RcbiRtaW4tY29udHJhc3QtcmF0aW86ICAgNC41ICFkZWZhdWx0O1xuXG4vLyBDdXN0b21pemUgdGhlIGxpZ2h0IGFuZCBkYXJrIHRleHQgY29sb3JzIGZvciB1c2UgaW4gb3VyIGNvbG9yIGNvbnRyYXN0IGZ1bmN0aW9uLlxuJGNvbG9yLWNvbnRyYXN0LWRhcms6ICAgICAgJGJsYWNrICFkZWZhdWx0O1xuJGNvbG9yLWNvbnRyYXN0LWxpZ2h0OiAgICAgJHdoaXRlICFkZWZhdWx0O1xuXG4vLyBmdXN2LWRpc2FibGVcbiRibHVlLTEwMDogdGludC1jb2xvcigkYmx1ZSwgODAlKSAhZGVmYXVsdDtcbiRibHVlLTIwMDogdGludC1jb2xvcigkYmx1ZSwgNjAlKSAhZGVmYXVsdDtcbiRibHVlLTMwMDogdGludC1jb2xvcigkYmx1ZSwgNDAlKSAhZGVmYXVsdDtcbiRibHVlLTQwMDogdGludC1jb2xvcigkYmx1ZSwgMjAlKSAhZGVmYXVsdDtcbiRibHVlLTUwMDogJGJsdWUgIWRlZmF1bHQ7XG4kYmx1ZS02MDA6IHNoYWRlLWNvbG9yKCRibHVlLCAyMCUpICFkZWZhdWx0O1xuJGJsdWUtNzAwOiBzaGFkZS1jb2xvcigkYmx1ZSwgNDAlKSAhZGVmYXVsdDtcbiRibHVlLTgwMDogc2hhZGUtY29sb3IoJGJsdWUsIDYwJSkgIWRlZmF1bHQ7XG4kYmx1ZS05MDA6IHNoYWRlLWNvbG9yKCRibHVlLCA4MCUpICFkZWZhdWx0O1xuXG4kaW5kaWdvLTEwMDogdGludC1jb2xvcigkaW5kaWdvLCA4MCUpICFkZWZhdWx0O1xuJGluZGlnby0yMDA6IHRpbnQtY29sb3IoJGluZGlnbywgNjAlKSAhZGVmYXVsdDtcbiRpbmRpZ28tMzAwOiB0aW50LWNvbG9yKCRpbmRpZ28sIDQwJSkgIWRlZmF1bHQ7XG4kaW5kaWdvLTQwMDogdGludC1jb2xvcigkaW5kaWdvLCAyMCUpICFkZWZhdWx0O1xuJGluZGlnby01MDA6ICRpbmRpZ28gIWRlZmF1bHQ7XG4kaW5kaWdvLTYwMDogc2hhZGUtY29sb3IoJGluZGlnbywgMjAlKSAhZGVmYXVsdDtcbiRpbmRpZ28tNzAwOiBzaGFkZS1jb2xvcigkaW5kaWdvLCA0MCUpICFkZWZhdWx0O1xuJGluZGlnby04MDA6IHNoYWRlLWNvbG9yKCRpbmRpZ28sIDYwJSkgIWRlZmF1bHQ7XG4kaW5kaWdvLTkwMDogc2hhZGUtY29sb3IoJGluZGlnbywgODAlKSAhZGVmYXVsdDtcblxuJHB1cnBsZS0xMDA6IHRpbnQtY29sb3IoJHB1cnBsZSwgODAlKSAhZGVmYXVsdDtcbiRwdXJwbGUtMjAwOiB0aW50LWNvbG9yKCRwdXJwbGUsIDYwJSkgIWRlZmF1bHQ7XG4kcHVycGxlLTMwMDogdGludC1jb2xvcigkcHVycGxlLCA0MCUpICFkZWZhdWx0O1xuJHB1cnBsZS00MDA6IHRpbnQtY29sb3IoJHB1cnBsZSwgMjAlKSAhZGVmYXVsdDtcbiRwdXJwbGUtNTAwOiAkcHVycGxlICFkZWZhdWx0O1xuJHB1cnBsZS02MDA6IHNoYWRlLWNvbG9yKCRwdXJwbGUsIDIwJSkgIWRlZmF1bHQ7XG4kcHVycGxlLTcwMDogc2hhZGUtY29sb3IoJHB1cnBsZSwgNDAlKSAhZGVmYXVsdDtcbiRwdXJwbGUtODAwOiBzaGFkZS1jb2xvcigkcHVycGxlLCA2MCUpICFkZWZhdWx0O1xuJHB1cnBsZS05MDA6IHNoYWRlLWNvbG9yKCRwdXJwbGUsIDgwJSkgIWRlZmF1bHQ7XG5cbiRwaW5rLTEwMDogdGludC1jb2xvcigkcGluaywgODAlKSAhZGVmYXVsdDtcbiRwaW5rLTIwMDogdGludC1jb2xvcigkcGluaywgNjAlKSAhZGVmYXVsdDtcbiRwaW5rLTMwMDogdGludC1jb2xvcigkcGluaywgNDAlKSAhZGVmYXVsdDtcbiRwaW5rLTQwMDogdGludC1jb2xvcigkcGluaywgMjAlKSAhZGVmYXVsdDtcbiRwaW5rLTUwMDogJHBpbmsgIWRlZmF1bHQ7XG4kcGluay02MDA6IHNoYWRlLWNvbG9yKCRwaW5rLCAyMCUpICFkZWZhdWx0O1xuJHBpbmstNzAwOiBzaGFkZS1jb2xvcigkcGluaywgNDAlKSAhZGVmYXVsdDtcbiRwaW5rLTgwMDogc2hhZGUtY29sb3IoJHBpbmssIDYwJSkgIWRlZmF1bHQ7XG4kcGluay05MDA6IHNoYWRlLWNvbG9yKCRwaW5rLCA4MCUpICFkZWZhdWx0O1xuXG4kcmVkLTEwMDogdGludC1jb2xvcigkcmVkLCA4MCUpICFkZWZhdWx0O1xuJHJlZC0yMDA6IHRpbnQtY29sb3IoJHJlZCwgNjAlKSAhZGVmYXVsdDtcbiRyZWQtMzAwOiB0aW50LWNvbG9yKCRyZWQsIDQwJSkgIWRlZmF1bHQ7XG4kcmVkLTQwMDogdGludC1jb2xvcigkcmVkLCAyMCUpICFkZWZhdWx0O1xuJHJlZC01MDA6ICRyZWQgIWRlZmF1bHQ7XG4kcmVkLTYwMDogc2hhZGUtY29sb3IoJHJlZCwgMjAlKSAhZGVmYXVsdDtcbiRyZWQtNzAwOiBzaGFkZS1jb2xvcigkcmVkLCA0MCUpICFkZWZhdWx0O1xuJHJlZC04MDA6IHNoYWRlLWNvbG9yKCRyZWQsIDYwJSkgIWRlZmF1bHQ7XG4kcmVkLTkwMDogc2hhZGUtY29sb3IoJHJlZCwgODAlKSAhZGVmYXVsdDtcblxuJG9yYW5nZS0xMDA6IHRpbnQtY29sb3IoJG9yYW5nZSwgODAlKSAhZGVmYXVsdDtcbiRvcmFuZ2UtMjAwOiB0aW50LWNvbG9yKCRvcmFuZ2UsIDYwJSkgIWRlZmF1bHQ7XG4kb3JhbmdlLTMwMDogdGludC1jb2xvcigkb3JhbmdlLCA0MCUpICFkZWZhdWx0O1xuJG9yYW5nZS00MDA6IHRpbnQtY29sb3IoJG9yYW5nZSwgMjAlKSAhZGVmYXVsdDtcbiRvcmFuZ2UtNTAwOiAkb3JhbmdlICFkZWZhdWx0O1xuJG9yYW5nZS02MDA6IHNoYWRlLWNvbG9yKCRvcmFuZ2UsIDIwJSkgIWRlZmF1bHQ7XG4kb3JhbmdlLTcwMDogc2hhZGUtY29sb3IoJG9yYW5nZSwgNDAlKSAhZGVmYXVsdDtcbiRvcmFuZ2UtODAwOiBzaGFkZS1jb2xvcigkb3JhbmdlLCA2MCUpICFkZWZhdWx0O1xuJG9yYW5nZS05MDA6IHNoYWRlLWNvbG9yKCRvcmFuZ2UsIDgwJSkgIWRlZmF1bHQ7XG5cbiR5ZWxsb3ctMTAwOiB0aW50LWNvbG9yKCR5ZWxsb3csIDgwJSkgIWRlZmF1bHQ7XG4keWVsbG93LTIwMDogdGludC1jb2xvcigkeWVsbG93LCA2MCUpICFkZWZhdWx0O1xuJHllbGxvdy0zMDA6IHRpbnQtY29sb3IoJHllbGxvdywgNDAlKSAhZGVmYXVsdDtcbiR5ZWxsb3ctNDAwOiB0aW50LWNvbG9yKCR5ZWxsb3csIDIwJSkgIWRlZmF1bHQ7XG4keWVsbG93LTUwMDogJHllbGxvdyAhZGVmYXVsdDtcbiR5ZWxsb3ctNjAwOiBzaGFkZS1jb2xvcigkeWVsbG93LCAyMCUpICFkZWZhdWx0O1xuJHllbGxvdy03MDA6IHNoYWRlLWNvbG9yKCR5ZWxsb3csIDQwJSkgIWRlZmF1bHQ7XG4keWVsbG93LTgwMDogc2hhZGUtY29sb3IoJHllbGxvdywgNjAlKSAhZGVmYXVsdDtcbiR5ZWxsb3ctOTAwOiBzaGFkZS1jb2xvcigkeWVsbG93LCA4MCUpICFkZWZhdWx0O1xuXG4kZ3JlZW4tMTAwOiB0aW50LWNvbG9yKCRncmVlbiwgODAlKSAhZGVmYXVsdDtcbiRncmVlbi0yMDA6IHRpbnQtY29sb3IoJGdyZWVuLCA2MCUpICFkZWZhdWx0O1xuJGdyZWVuLTMwMDogdGludC1jb2xvcigkZ3JlZW4sIDQwJSkgIWRlZmF1bHQ7XG4kZ3JlZW4tNDAwOiB0aW50LWNvbG9yKCRncmVlbiwgMjAlKSAhZGVmYXVsdDtcbiRncmVlbi01MDA6ICRncmVlbiAhZGVmYXVsdDtcbiRncmVlbi02MDA6IHNoYWRlLWNvbG9yKCRncmVlbiwgMjAlKSAhZGVmYXVsdDtcbiRncmVlbi03MDA6IHNoYWRlLWNvbG9yKCRncmVlbiwgNDAlKSAhZGVmYXVsdDtcbiRncmVlbi04MDA6IHNoYWRlLWNvbG9yKCRncmVlbiwgNjAlKSAhZGVmYXVsdDtcbiRncmVlbi05MDA6IHNoYWRlLWNvbG9yKCRncmVlbiwgODAlKSAhZGVmYXVsdDtcblxuJHRlYWwtMTAwOiB0aW50LWNvbG9yKCR0ZWFsLCA4MCUpICFkZWZhdWx0O1xuJHRlYWwtMjAwOiB0aW50LWNvbG9yKCR0ZWFsLCA2MCUpICFkZWZhdWx0O1xuJHRlYWwtMzAwOiB0aW50LWNvbG9yKCR0ZWFsLCA0MCUpICFkZWZhdWx0O1xuJHRlYWwtNDAwOiB0aW50LWNvbG9yKCR0ZWFsLCAyMCUpICFkZWZhdWx0O1xuJHRlYWwtNTAwOiAkdGVhbCAhZGVmYXVsdDtcbiR0ZWFsLTYwMDogc2hhZGUtY29sb3IoJHRlYWwsIDIwJSkgIWRlZmF1bHQ7XG4kdGVhbC03MDA6IHNoYWRlLWNvbG9yKCR0ZWFsLCA0MCUpICFkZWZhdWx0O1xuJHRlYWwtODAwOiBzaGFkZS1jb2xvcigkdGVhbCwgNjAlKSAhZGVmYXVsdDtcbiR0ZWFsLTkwMDogc2hhZGUtY29sb3IoJHRlYWwsIDgwJSkgIWRlZmF1bHQ7XG5cbiRjeWFuLTEwMDogdGludC1jb2xvcigkY3lhbiwgODAlKSAhZGVmYXVsdDtcbiRjeWFuLTIwMDogdGludC1jb2xvcigkY3lhbiwgNjAlKSAhZGVmYXVsdDtcbiRjeWFuLTMwMDogdGludC1jb2xvcigkY3lhbiwgNDAlKSAhZGVmYXVsdDtcbiRjeWFuLTQwMDogdGludC1jb2xvcigkY3lhbiwgMjAlKSAhZGVmYXVsdDtcbiRjeWFuLTUwMDogJGN5YW4gIWRlZmF1bHQ7XG4kY3lhbi02MDA6IHNoYWRlLWNvbG9yKCRjeWFuLCAyMCUpICFkZWZhdWx0O1xuJGN5YW4tNzAwOiBzaGFkZS1jb2xvcigkY3lhbiwgNDAlKSAhZGVmYXVsdDtcbiRjeWFuLTgwMDogc2hhZGUtY29sb3IoJGN5YW4sIDYwJSkgIWRlZmF1bHQ7XG4kY3lhbi05MDA6IHNoYWRlLWNvbG9yKCRjeWFuLCA4MCUpICFkZWZhdWx0O1xuXG4kYmx1ZXM6IChcbiAgXCJibHVlLTEwMFwiOiAkYmx1ZS0xMDAsXG4gIFwiYmx1ZS0yMDBcIjogJGJsdWUtMjAwLFxuICBcImJsdWUtMzAwXCI6ICRibHVlLTMwMCxcbiAgXCJibHVlLTQwMFwiOiAkYmx1ZS00MDAsXG4gIFwiYmx1ZS01MDBcIjogJGJsdWUtNTAwLFxuICBcImJsdWUtNjAwXCI6ICRibHVlLTYwMCxcbiAgXCJibHVlLTcwMFwiOiAkYmx1ZS03MDAsXG4gIFwiYmx1ZS04MDBcIjogJGJsdWUtODAwLFxuICBcImJsdWUtOTAwXCI6ICRibHVlLTkwMFxuKSAhZGVmYXVsdDtcblxuJGluZGlnb3M6IChcbiAgXCJpbmRpZ28tMTAwXCI6ICRpbmRpZ28tMTAwLFxuICBcImluZGlnby0yMDBcIjogJGluZGlnby0yMDAsXG4gIFwiaW5kaWdvLTMwMFwiOiAkaW5kaWdvLTMwMCxcbiAgXCJpbmRpZ28tNDAwXCI6ICRpbmRpZ28tNDAwLFxuICBcImluZGlnby01MDBcIjogJGluZGlnby01MDAsXG4gIFwiaW5kaWdvLTYwMFwiOiAkaW5kaWdvLTYwMCxcbiAgXCJpbmRpZ28tNzAwXCI6ICRpbmRpZ28tNzAwLFxuICBcImluZGlnby04MDBcIjogJGluZGlnby04MDAsXG4gIFwiaW5kaWdvLTkwMFwiOiAkaW5kaWdvLTkwMFxuKSAhZGVmYXVsdDtcblxuJHB1cnBsZXM6IChcbiAgXCJwdXJwbGUtMTAwXCI6ICRwdXJwbGUtMTAwLFxuICBcInB1cnBsZS0yMDBcIjogJHB1cnBsZS0yMDAsXG4gIFwicHVycGxlLTMwMFwiOiAkcHVycGxlLTMwMCxcbiAgXCJwdXJwbGUtNDAwXCI6ICRwdXJwbGUtNDAwLFxuICBcInB1cnBsZS01MDBcIjogJHB1cnBsZS01MDAsXG4gIFwicHVycGxlLTYwMFwiOiAkcHVycGxlLTYwMCxcbiAgXCJwdXJwbGUtNzAwXCI6ICRwdXJwbGUtNzAwLFxuICBcInB1cnBsZS04MDBcIjogJHB1cnBsZS04MDAsXG4gIFwicHVycGxlLTkwMFwiOiAkcHVycGxlLTkwMFxuKSAhZGVmYXVsdDtcblxuJHBpbmtzOiAoXG4gIFwicGluay0xMDBcIjogJHBpbmstMTAwLFxuICBcInBpbmstMjAwXCI6ICRwaW5rLTIwMCxcbiAgXCJwaW5rLTMwMFwiOiAkcGluay0zMDAsXG4gIFwicGluay00MDBcIjogJHBpbmstNDAwLFxuICBcInBpbmstNTAwXCI6ICRwaW5rLTUwMCxcbiAgXCJwaW5rLTYwMFwiOiAkcGluay02MDAsXG4gIFwicGluay03MDBcIjogJHBpbmstNzAwLFxuICBcInBpbmstODAwXCI6ICRwaW5rLTgwMCxcbiAgXCJwaW5rLTkwMFwiOiAkcGluay05MDBcbikgIWRlZmF1bHQ7XG5cbiRyZWRzOiAoXG4gIFwicmVkLTEwMFwiOiAkcmVkLTEwMCxcbiAgXCJyZWQtMjAwXCI6ICRyZWQtMjAwLFxuICBcInJlZC0zMDBcIjogJHJlZC0zMDAsXG4gIFwicmVkLTQwMFwiOiAkcmVkLTQwMCxcbiAgXCJyZWQtNTAwXCI6ICRyZWQtNTAwLFxuICBcInJlZC02MDBcIjogJHJlZC02MDAsXG4gIFwicmVkLTcwMFwiOiAkcmVkLTcwMCxcbiAgXCJyZWQtODAwXCI6ICRyZWQtODAwLFxuICBcInJlZC05MDBcIjogJHJlZC05MDBcbikgIWRlZmF1bHQ7XG5cbiRvcmFuZ2VzOiAoXG4gIFwib3JhbmdlLTEwMFwiOiAkb3JhbmdlLTEwMCxcbiAgXCJvcmFuZ2UtMjAwXCI6ICRvcmFuZ2UtMjAwLFxuICBcIm9yYW5nZS0zMDBcIjogJG9yYW5nZS0zMDAsXG4gIFwib3JhbmdlLTQwMFwiOiAkb3JhbmdlLTQwMCxcbiAgXCJvcmFuZ2UtNTAwXCI6ICRvcmFuZ2UtNTAwLFxuICBcIm9yYW5nZS02MDBcIjogJG9yYW5nZS02MDAsXG4gIFwib3JhbmdlLTcwMFwiOiAkb3JhbmdlLTcwMCxcbiAgXCJvcmFuZ2UtODAwXCI6ICRvcmFuZ2UtODAwLFxuICBcIm9yYW5nZS05MDBcIjogJG9yYW5nZS05MDBcbikgIWRlZmF1bHQ7XG5cbiR5ZWxsb3dzOiAoXG4gIFwieWVsbG93LTEwMFwiOiAkeWVsbG93LTEwMCxcbiAgXCJ5ZWxsb3ctMjAwXCI6ICR5ZWxsb3ctMjAwLFxuICBcInllbGxvdy0zMDBcIjogJHllbGxvdy0zMDAsXG4gIFwieWVsbG93LTQwMFwiOiAkeWVsbG93LTQwMCxcbiAgXCJ5ZWxsb3ctNTAwXCI6ICR5ZWxsb3ctNTAwLFxuICBcInllbGxvdy02MDBcIjogJHllbGxvdy02MDAsXG4gIFwieWVsbG93LTcwMFwiOiAkeWVsbG93LTcwMCxcbiAgXCJ5ZWxsb3ctODAwXCI6ICR5ZWxsb3ctODAwLFxuICBcInllbGxvdy05MDBcIjogJHllbGxvdy05MDBcbikgIWRlZmF1bHQ7XG5cbiRncmVlbnM6IChcbiAgXCJncmVlbi0xMDBcIjogJGdyZWVuLTEwMCxcbiAgXCJncmVlbi0yMDBcIjogJGdyZWVuLTIwMCxcbiAgXCJncmVlbi0zMDBcIjogJGdyZWVuLTMwMCxcbiAgXCJncmVlbi00MDBcIjogJGdyZWVuLTQwMCxcbiAgXCJncmVlbi01MDBcIjogJGdyZWVuLTUwMCxcbiAgXCJncmVlbi02MDBcIjogJGdyZWVuLTYwMCxcbiAgXCJncmVlbi03MDBcIjogJGdyZWVuLTcwMCxcbiAgXCJncmVlbi04MDBcIjogJGdyZWVuLTgwMCxcbiAgXCJncmVlbi05MDBcIjogJGdyZWVuLTkwMFxuKSAhZGVmYXVsdDtcblxuJHRlYWxzOiAoXG4gIFwidGVhbC0xMDBcIjogJHRlYWwtMTAwLFxuICBcInRlYWwtMjAwXCI6ICR0ZWFsLTIwMCxcbiAgXCJ0ZWFsLTMwMFwiOiAkdGVhbC0zMDAsXG4gIFwidGVhbC00MDBcIjogJHRlYWwtNDAwLFxuICBcInRlYWwtNTAwXCI6ICR0ZWFsLTUwMCxcbiAgXCJ0ZWFsLTYwMFwiOiAkdGVhbC02MDAsXG4gIFwidGVhbC03MDBcIjogJHRlYWwtNzAwLFxuICBcInRlYWwtODAwXCI6ICR0ZWFsLTgwMCxcbiAgXCJ0ZWFsLTkwMFwiOiAkdGVhbC05MDBcbikgIWRlZmF1bHQ7XG5cbiRjeWFuczogKFxuICBcImN5YW4tMTAwXCI6ICRjeWFuLTEwMCxcbiAgXCJjeWFuLTIwMFwiOiAkY3lhbi0yMDAsXG4gIFwiY3lhbi0zMDBcIjogJGN5YW4tMzAwLFxuICBcImN5YW4tNDAwXCI6ICRjeWFuLTQwMCxcbiAgXCJjeWFuLTUwMFwiOiAkY3lhbi01MDAsXG4gIFwiY3lhbi02MDBcIjogJGN5YW4tNjAwLFxuICBcImN5YW4tNzAwXCI6ICRjeWFuLTcwMCxcbiAgXCJjeWFuLTgwMFwiOiAkY3lhbi04MDAsXG4gIFwiY3lhbi05MDBcIjogJGN5YW4tOTAwXG4pICFkZWZhdWx0O1xuLy8gZnVzdi1lbmFibGVcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHRoZW1lLWNvbG9yLXZhcmlhYmxlc1xuJHByaW1hcnk6ICAgICAgICRibHVlICFkZWZhdWx0O1xuJHNlY29uZGFyeTogICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRzdWNjZXNzOiAgICAgICAkZ3JlZW4gIWRlZmF1bHQ7XG4kaW5mbzogICAgICAgICAgJGN5YW4gIWRlZmF1bHQ7XG4kd2FybmluZzogICAgICAgJHllbGxvdyAhZGVmYXVsdDtcbiRkYW5nZXI6ICAgICAgICAkcmVkICFkZWZhdWx0O1xuJGxpZ2h0OiAgICAgICAgICRncmF5LTEwMCAhZGVmYXVsdDtcbiRkYXJrOiAgICAgICAgICAkZ3JheS05MDAgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHRoZW1lLWNvbG9yLXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgdGhlbWUtY29sb3JzLW1hcFxuJHRoZW1lLWNvbG9yczogKFxuICBcInByaW1hcnlcIjogICAgJHByaW1hcnksXG4gIFwic2Vjb25kYXJ5XCI6ICAkc2Vjb25kYXJ5LFxuICBcInN1Y2Nlc3NcIjogICAgJHN1Y2Nlc3MsXG4gIFwiaW5mb1wiOiAgICAgICAkaW5mbyxcbiAgXCJ3YXJuaW5nXCI6ICAgICR3YXJuaW5nLFxuICBcImRhbmdlclwiOiAgICAgJGRhbmdlcixcbiAgXCJsaWdodFwiOiAgICAgICRsaWdodCxcbiAgXCJkYXJrXCI6ICAgICAgICRkYXJrXG4pICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB0aGVtZS1jb2xvcnMtbWFwXG5cbi8vIHNjc3MtZG9jcy1zdGFydCB0aGVtZS10ZXh0LXZhcmlhYmxlc1xuJHByaW1hcnktdGV4dC1lbXBoYXNpczogICBzaGFkZS1jb2xvcigkcHJpbWFyeSwgNjAlKSAhZGVmYXVsdDtcbiRzZWNvbmRhcnktdGV4dC1lbXBoYXNpczogc2hhZGUtY29sb3IoJHNlY29uZGFyeSwgNjAlKSAhZGVmYXVsdDtcbiRzdWNjZXNzLXRleHQtZW1waGFzaXM6ICAgc2hhZGUtY29sb3IoJHN1Y2Nlc3MsIDYwJSkgIWRlZmF1bHQ7XG4kaW5mby10ZXh0LWVtcGhhc2lzOiAgICAgIHNoYWRlLWNvbG9yKCRpbmZvLCA2MCUpICFkZWZhdWx0O1xuJHdhcm5pbmctdGV4dC1lbXBoYXNpczogICBzaGFkZS1jb2xvcigkd2FybmluZywgNjAlKSAhZGVmYXVsdDtcbiRkYW5nZXItdGV4dC1lbXBoYXNpczogICAgc2hhZGUtY29sb3IoJGRhbmdlciwgNjAlKSAhZGVmYXVsdDtcbiRsaWdodC10ZXh0LWVtcGhhc2lzOiAgICAgJGdyYXktNzAwICFkZWZhdWx0O1xuJGRhcmstdGV4dC1lbXBoYXNpczogICAgICAkZ3JheS03MDAgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHRoZW1lLXRleHQtdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCB0aGVtZS1iZy1zdWJ0bGUtdmFyaWFibGVzXG4kcHJpbWFyeS1iZy1zdWJ0bGU6ICAgICAgIHRpbnQtY29sb3IoJHByaW1hcnksIDgwJSkgIWRlZmF1bHQ7XG4kc2Vjb25kYXJ5LWJnLXN1YnRsZTogICAgIHRpbnQtY29sb3IoJHNlY29uZGFyeSwgODAlKSAhZGVmYXVsdDtcbiRzdWNjZXNzLWJnLXN1YnRsZTogICAgICAgdGludC1jb2xvcigkc3VjY2VzcywgODAlKSAhZGVmYXVsdDtcbiRpbmZvLWJnLXN1YnRsZTogICAgICAgICAgdGludC1jb2xvcigkaW5mbywgODAlKSAhZGVmYXVsdDtcbiR3YXJuaW5nLWJnLXN1YnRsZTogICAgICAgdGludC1jb2xvcigkd2FybmluZywgODAlKSAhZGVmYXVsdDtcbiRkYW5nZXItYmctc3VidGxlOiAgICAgICAgdGludC1jb2xvcigkZGFuZ2VyLCA4MCUpICFkZWZhdWx0O1xuJGxpZ2h0LWJnLXN1YnRsZTogICAgICAgICBtaXgoJGdyYXktMTAwLCAkd2hpdGUpICFkZWZhdWx0O1xuJGRhcmstYmctc3VidGxlOiAgICAgICAgICAkZ3JheS00MDAgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHRoZW1lLWJnLXN1YnRsZS12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHRoZW1lLWJvcmRlci1zdWJ0bGUtdmFyaWFibGVzXG4kcHJpbWFyeS1ib3JkZXItc3VidGxlOiAgIHRpbnQtY29sb3IoJHByaW1hcnksIDYwJSkgIWRlZmF1bHQ7XG4kc2Vjb25kYXJ5LWJvcmRlci1zdWJ0bGU6IHRpbnQtY29sb3IoJHNlY29uZGFyeSwgNjAlKSAhZGVmYXVsdDtcbiRzdWNjZXNzLWJvcmRlci1zdWJ0bGU6ICAgdGludC1jb2xvcigkc3VjY2VzcywgNjAlKSAhZGVmYXVsdDtcbiRpbmZvLWJvcmRlci1zdWJ0bGU6ICAgICAgdGludC1jb2xvcigkaW5mbywgNjAlKSAhZGVmYXVsdDtcbiR3YXJuaW5nLWJvcmRlci1zdWJ0bGU6ICAgdGludC1jb2xvcigkd2FybmluZywgNjAlKSAhZGVmYXVsdDtcbiRkYW5nZXItYm9yZGVyLXN1YnRsZTogICAgdGludC1jb2xvcigkZGFuZ2VyLCA2MCUpICFkZWZhdWx0O1xuJGxpZ2h0LWJvcmRlci1zdWJ0bGU6ICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kZGFyay1ib3JkZXItc3VidGxlOiAgICAgICRncmF5LTUwMCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgdGhlbWUtYm9yZGVyLXN1YnRsZS12YXJpYWJsZXNcblxuLy8gQ2hhcmFjdGVycyB3aGljaCBhcmUgZXNjYXBlZCBieSB0aGUgZXNjYXBlLXN2ZyBmdW5jdGlvblxuJGVzY2FwZWQtY2hhcmFjdGVyczogKFxuICAoXCI8XCIsIFwiJTNjXCIpLFxuICAoXCI+XCIsIFwiJTNlXCIpLFxuICAoXCIjXCIsIFwiJTIzXCIpLFxuICAoXCIoXCIsIFwiJTI4XCIpLFxuICAoXCIpXCIsIFwiJTI5XCIpLFxuKSAhZGVmYXVsdDtcblxuLy8gT3B0aW9uc1xuLy9cbi8vIFF1aWNrbHkgbW9kaWZ5IGdsb2JhbCBzdHlsaW5nIGJ5IGVuYWJsaW5nIG9yIGRpc2FibGluZyBvcHRpb25hbCBmZWF0dXJlcy5cblxuJGVuYWJsZS1jYXJldDogICAgICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtcm91bmRlZDogICAgICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXNoYWRvd3M6ICAgICAgICAgICAgICBmYWxzZSAhZGVmYXVsdDtcbiRlbmFibGUtZ3JhZGllbnRzOiAgICAgICAgICAgIGZhbHNlICFkZWZhdWx0O1xuJGVuYWJsZS10cmFuc2l0aW9uczogICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtcmVkdWNlZC1tb3Rpb246ICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXNtb290aC1zY3JvbGw6ICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1ncmlkLWNsYXNzZXM6ICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtY29udGFpbmVyLWNsYXNzZXM6ICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLWNzc2dyaWQ6ICAgICAgICAgICAgICBmYWxzZSAhZGVmYXVsdDtcbiRlbmFibGUtYnV0dG9uLXBvaW50ZXJzOiAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXJmczogICAgICAgICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS12YWxpZGF0aW9uLWljb25zOiAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtbmVnYXRpdmUtbWFyZ2luczogICAgIGZhbHNlICFkZWZhdWx0O1xuJGVuYWJsZS1kZXByZWNhdGlvbi1tZXNzYWdlczogdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtaW1wb3J0YW50LXV0aWxpdGllczogIHRydWUgIWRlZmF1bHQ7XG5cbiRlbmFibGUtZGFyay1tb2RlOiAgICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kY29sb3ItbW9kZS10eXBlOiAgICAgICAgICAgICBkYXRhICFkZWZhdWx0OyAvLyBgZGF0YWAgb3IgYG1lZGlhLXF1ZXJ5YFxuXG4vLyBQcmVmaXggZm9yIDpyb290IENTUyB2YXJpYWJsZXNcblxuJHZhcmlhYmxlLXByZWZpeDogICAgICAgICAgICAgYnMtICFkZWZhdWx0OyAvLyBEZXByZWNhdGVkIGluIHY1LjIuMCBmb3IgdGhlIHNob3J0ZXIgYCRwcmVmaXhgXG4kcHJlZml4OiAgICAgICAgICAgICAgICAgICAgICAkdmFyaWFibGUtcHJlZml4ICFkZWZhdWx0O1xuXG4vLyBHcmFkaWVudFxuLy9cbi8vIFRoZSBncmFkaWVudCB3aGljaCBpcyBhZGRlZCB0byBjb21wb25lbnRzIGlmIGAkZW5hYmxlLWdyYWRpZW50c2AgaXMgYHRydWVgXG4vLyBUaGlzIGdyYWRpZW50IGlzIGFsc28gYWRkZWQgdG8gZWxlbWVudHMgd2l0aCBgLmJnLWdyYWRpZW50YFxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHZhcmlhYmxlLWdyYWRpZW50XG4kZ3JhZGllbnQ6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsIHJnYmEoJHdoaXRlLCAuMTUpLCByZ2JhKCR3aGl0ZSwgMCkpICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB2YXJpYWJsZS1ncmFkaWVudFxuXG4vLyBTcGFjaW5nXG4vL1xuLy8gQ29udHJvbCB0aGUgZGVmYXVsdCBzdHlsaW5nIG9mIG1vc3QgQm9vdHN0cmFwIGVsZW1lbnRzIGJ5IG1vZGlmeWluZyB0aGVzZVxuLy8gdmFyaWFibGVzLiBNb3N0bHkgZm9jdXNlZCBvbiBzcGFjaW5nLlxuLy8gWW91IGNhbiBhZGQgbW9yZSBlbnRyaWVzIHRvIHRoZSAkc3BhY2VycyBtYXAsIHNob3VsZCB5b3UgbmVlZCBtb3JlIHZhcmlhdGlvbi5cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHNwYWNlci12YXJpYWJsZXMtbWFwc1xuJHNwYWNlcjogMXJlbSAhZGVmYXVsdDtcbiRzcGFjZXJzOiAoXG4gIDA6IDAsXG4gIDE6ICRzcGFjZXIgKiAuMjUsXG4gIDI6ICRzcGFjZXIgKiAuNSxcbiAgMzogJHNwYWNlcixcbiAgNDogJHNwYWNlciAqIDEuNSxcbiAgNTogJHNwYWNlciAqIDMsXG4pICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBzcGFjZXItdmFyaWFibGVzLW1hcHNcblxuLy8gUG9zaXRpb25cbi8vXG4vLyBEZWZpbmUgdGhlIGVkZ2UgcG9zaXRpb25pbmcgYW5jaG9ycyBvZiB0aGUgcG9zaXRpb24gdXRpbGl0aWVzLlxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgcG9zaXRpb24tbWFwXG4kcG9zaXRpb24tdmFsdWVzOiAoXG4gIDA6IDAsXG4gIDUwOiA1MCUsXG4gIDEwMDogMTAwJVxuKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgcG9zaXRpb24tbWFwXG5cbi8vIEJvZHlcbi8vXG4vLyBTZXR0aW5ncyBmb3IgdGhlIGA8Ym9keT5gIGVsZW1lbnQuXG5cbiRib2R5LXRleHQtYWxpZ246ICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGJvZHktY29sb3I6ICAgICAgICAgICAgICAgICRncmF5LTkwMCAhZGVmYXVsdDtcbiRib2R5LWJnOiAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG5cbiRib2R5LXNlY29uZGFyeS1jb2xvcjogICAgICByZ2JhKCRib2R5LWNvbG9yLCAuNzUpICFkZWZhdWx0O1xuJGJvZHktc2Vjb25kYXJ5LWJnOiAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcblxuJGJvZHktdGVydGlhcnktY29sb3I6ICAgICAgIHJnYmEoJGJvZHktY29sb3IsIC41KSAhZGVmYXVsdDtcbiRib2R5LXRlcnRpYXJ5LWJnOiAgICAgICAgICAkZ3JheS0xMDAgIWRlZmF1bHQ7XG5cbiRib2R5LWVtcGhhc2lzLWNvbG9yOiAgICAgICAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vIExpbmtzXG4vL1xuLy8gU3R5bGUgYW5jaG9yIGVsZW1lbnRzLlxuXG4kbGluay1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkcHJpbWFyeSAhZGVmYXVsdDtcbiRsaW5rLWRlY29yYXRpb246ICAgICAgICAgICAgICAgICAgICAgICAgIHVuZGVybGluZSAhZGVmYXVsdDtcbiRsaW5rLXNoYWRlLXBlcmNlbnRhZ2U6ICAgICAgICAgICAgICAgICAgIDIwJSAhZGVmYXVsdDtcbiRsaW5rLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgIHNoaWZ0LWNvbG9yKCRsaW5rLWNvbG9yLCAkbGluay1zaGFkZS1wZXJjZW50YWdlKSAhZGVmYXVsdDtcbiRsaW5rLWhvdmVyLWRlY29yYXRpb246ICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG5cbiRzdHJldGNoZWQtbGluay1wc2V1ZG8tZWxlbWVudDogICAgICAgICAgIGFmdGVyICFkZWZhdWx0O1xuJHN0cmV0Y2hlZC1saW5rLXotaW5kZXg6ICAgICAgICAgICAgICAgICAgMSAhZGVmYXVsdDtcblxuLy8gSWNvbiBsaW5rc1xuLy8gc2Nzcy1kb2NzLXN0YXJ0IGljb24tbGluay12YXJpYWJsZXNcbiRpY29uLWxpbmstZ2FwOiAgICAgICAgICAgICAgIC4zNzVyZW0gIWRlZmF1bHQ7XG4kaWNvbi1saW5rLXVuZGVybGluZS1vZmZzZXQ6ICAuMjVlbSAhZGVmYXVsdDtcbiRpY29uLWxpbmstaWNvbi1zaXplOiAgICAgICAgIDFlbSAhZGVmYXVsdDtcbiRpY29uLWxpbmstaWNvbi10cmFuc2l0aW9uOiAgIC4ycyBlYXNlLWluLW91dCB0cmFuc2Zvcm0gIWRlZmF1bHQ7XG4kaWNvbi1saW5rLWljb24tdHJhbnNmb3JtOiAgICB0cmFuc2xhdGUzZCguMjVlbSwgMCwgMCkgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGljb24tbGluay12YXJpYWJsZXNcblxuLy8gUGFyYWdyYXBoc1xuLy9cbi8vIFN0eWxlIHAgZWxlbWVudC5cblxuJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tOiAgIDFyZW0gIWRlZmF1bHQ7XG5cblxuLy8gR3JpZCBicmVha3BvaW50c1xuLy9cbi8vIERlZmluZSB0aGUgbWluaW11bSBkaW1lbnNpb25zIGF0IHdoaWNoIHlvdXIgbGF5b3V0IHdpbGwgY2hhbmdlLFxuLy8gYWRhcHRpbmcgdG8gZGlmZmVyZW50IHNjcmVlbiBzaXplcywgZm9yIHVzZSBpbiBtZWRpYSBxdWVyaWVzLlxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZ3JpZC1icmVha3BvaW50c1xuJGdyaWQtYnJlYWtwb2ludHM6IChcbiAgeHM6IDAsXG4gIHNtOiA1NzZweCxcbiAgbWQ6IDc2OHB4LFxuICBsZzogOTkycHgsXG4gIHhsOiAxMjAwcHgsXG4gIHh4bDogMTQwMHB4XG4pICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBncmlkLWJyZWFrcG9pbnRzXG5cbkBpbmNsdWRlIF9hc3NlcnQtYXNjZW5kaW5nKCRncmlkLWJyZWFrcG9pbnRzLCBcIiRncmlkLWJyZWFrcG9pbnRzXCIpO1xuQGluY2x1ZGUgX2Fzc2VydC1zdGFydHMtYXQtemVybygkZ3JpZC1icmVha3BvaW50cywgXCIkZ3JpZC1icmVha3BvaW50c1wiKTtcblxuXG4vLyBHcmlkIGNvbnRhaW5lcnNcbi8vXG4vLyBEZWZpbmUgdGhlIG1heGltdW0gd2lkdGggb2YgYC5jb250YWluZXJgIGZvciBkaWZmZXJlbnQgc2NyZWVuIHNpemVzLlxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgY29udGFpbmVyLW1heC13aWR0aHNcbiRjb250YWluZXItbWF4LXdpZHRoczogKFxuICBzbTogNTQwcHgsXG4gIG1kOiA3MjBweCxcbiAgbGc6IDk2MHB4LFxuICB4bDogMTE0MHB4LFxuICB4eGw6IDEzMjBweFxuKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgY29udGFpbmVyLW1heC13aWR0aHNcblxuQGluY2x1ZGUgX2Fzc2VydC1hc2NlbmRpbmcoJGNvbnRhaW5lci1tYXgtd2lkdGhzLCBcIiRjb250YWluZXItbWF4LXdpZHRoc1wiKTtcblxuXG4vLyBHcmlkIGNvbHVtbnNcbi8vXG4vLyBTZXQgdGhlIG51bWJlciBvZiBjb2x1bW5zIGFuZCBzcGVjaWZ5IHRoZSB3aWR0aCBvZiB0aGUgZ3V0dGVycy5cblxuJGdyaWQtY29sdW1uczogICAgICAgICAgICAgICAgMTIgIWRlZmF1bHQ7XG4kZ3JpZC1ndXR0ZXItd2lkdGg6ICAgICAgICAgICAxLjVyZW0gIWRlZmF1bHQ7XG4kZ3JpZC1yb3ctY29sdW1uczogICAgICAgICAgICA2ICFkZWZhdWx0O1xuXG4vLyBDb250YWluZXIgcGFkZGluZ1xuXG4kY29udGFpbmVyLXBhZGRpbmcteDogJGdyaWQtZ3V0dGVyLXdpZHRoICFkZWZhdWx0O1xuXG5cbi8vIENvbXBvbmVudHNcbi8vXG4vLyBEZWZpbmUgY29tbW9uIHBhZGRpbmcgYW5kIGJvcmRlciByYWRpdXMgc2l6ZXMgYW5kIG1vcmUuXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBib3JkZXItdmFyaWFibGVzXG4kYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAxcHggIWRlZmF1bHQ7XG4kYm9yZGVyLXdpZHRoczogKFxuICAxOiAxcHgsXG4gIDI6IDJweCxcbiAgMzogM3B4LFxuICA0OiA0cHgsXG4gIDU6IDVweFxuKSAhZGVmYXVsdDtcbiRib3JkZXItc3R5bGU6ICAgICAgICAgICAgICAgIHNvbGlkICFkZWZhdWx0O1xuJGJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgJGdyYXktMzAwICFkZWZhdWx0O1xuJGJvcmRlci1jb2xvci10cmFuc2x1Y2VudDogICAgcmdiYSgkYmxhY2ssIC4xNzUpICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBib3JkZXItdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBib3JkZXItcmFkaXVzLXZhcmlhYmxlc1xuJGJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgLjM3NXJlbSAhZGVmYXVsdDtcbiRib3JkZXItcmFkaXVzLXNtOiAgICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiRib3JkZXItcmFkaXVzLWxnOiAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJGJvcmRlci1yYWRpdXMteGw6ICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRib3JkZXItcmFkaXVzLXh4bDogICAgICAgICAgIDJyZW0gIWRlZmF1bHQ7XG4kYm9yZGVyLXJhZGl1cy1waWxsOiAgICAgICAgICA1MHJlbSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgYm9yZGVyLXJhZGl1cy12YXJpYWJsZXNcbi8vIGZ1c3YtZGlzYWJsZVxuJGJvcmRlci1yYWRpdXMtMnhsOiAgICAgICAgICAgJGJvcmRlci1yYWRpdXMteHhsICFkZWZhdWx0OyAvLyBEZXByZWNhdGVkIGluIHY1LjMuMFxuLy8gZnVzdi1lbmFibGVcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGJveC1zaGFkb3ctdmFyaWFibGVzXG4kYm94LXNoYWRvdzogICAgICAgICAgICAgICAgICAwIC41cmVtIDFyZW0gcmdiYSgkYmxhY2ssIC4xNSkgIWRlZmF1bHQ7XG4kYm94LXNoYWRvdy1zbTogICAgICAgICAgICAgICAwIC4xMjVyZW0gLjI1cmVtIHJnYmEoJGJsYWNrLCAuMDc1KSAhZGVmYXVsdDtcbiRib3gtc2hhZG93LWxnOiAgICAgICAgICAgICAgIDAgMXJlbSAzcmVtIHJnYmEoJGJsYWNrLCAuMTc1KSAhZGVmYXVsdDtcbiRib3gtc2hhZG93LWluc2V0OiAgICAgICAgICAgIGluc2V0IDAgMXB4IDJweCByZ2JhKCRibGFjaywgLjA3NSkgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGJveC1zaGFkb3ctdmFyaWFibGVzXG5cbiRjb21wb25lbnQtYWN0aXZlLWNvbG9yOiAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRjb21wb25lbnQtYWN0aXZlLWJnOiAgICAgICAgICRwcmltYXJ5ICFkZWZhdWx0O1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZm9jdXMtcmluZy12YXJpYWJsZXNcbiRmb2N1cy1yaW5nLXdpZHRoOiAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiRmb2N1cy1yaW5nLW9wYWNpdHk6ICAgIC4yNSAhZGVmYXVsdDtcbiRmb2N1cy1yaW5nLWNvbG9yOiAgICAgIHJnYmEoJHByaW1hcnksICRmb2N1cy1yaW5nLW9wYWNpdHkpICFkZWZhdWx0O1xuJGZvY3VzLXJpbmctYmx1cjogICAgICAgMCAhZGVmYXVsdDtcbiRmb2N1cy1yaW5nLWJveC1zaGFkb3c6IDAgMCAkZm9jdXMtcmluZy1ibHVyICRmb2N1cy1yaW5nLXdpZHRoICRmb2N1cy1yaW5nLWNvbG9yICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBmb2N1cy1yaW5nLXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgY2FyZXQtdmFyaWFibGVzXG4kY2FyZXQtd2lkdGg6ICAgICAgICAgICAgICAgICAuM2VtICFkZWZhdWx0O1xuJGNhcmV0LXZlcnRpY2FsLWFsaWduOiAgICAgICAgJGNhcmV0LXdpZHRoICogLjg1ICFkZWZhdWx0O1xuJGNhcmV0LXNwYWNpbmc6ICAgICAgICAgICAgICAgJGNhcmV0LXdpZHRoICogLjg1ICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBjYXJldC12YXJpYWJsZXNcblxuJHRyYW5zaXRpb24tYmFzZTogICAgICAgICAgICAgYWxsIC4ycyBlYXNlLWluLW91dCAhZGVmYXVsdDtcbiR0cmFuc2l0aW9uLWZhZGU6ICAgICAgICAgICAgIG9wYWNpdHkgLjE1cyBsaW5lYXIgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3Mtc3RhcnQgY29sbGFwc2UtdHJhbnNpdGlvblxuJHRyYW5zaXRpb24tY29sbGFwc2U6ICAgICAgICAgaGVpZ2h0IC4zNXMgZWFzZSAhZGVmYXVsdDtcbiR0cmFuc2l0aW9uLWNvbGxhcHNlLXdpZHRoOiAgIHdpZHRoIC4zNXMgZWFzZSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgY29sbGFwc2UtdHJhbnNpdGlvblxuXG4vLyBzdHlsZWxpbnQtZGlzYWJsZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3Rcbi8vIHNjc3MtZG9jcy1zdGFydCBhc3BlY3QtcmF0aW9zXG4kYXNwZWN0LXJhdGlvczogKFxuICBcIjF4MVwiOiAxMDAlLFxuICBcIjR4M1wiOiBjYWxjKDMgLyA0ICogMTAwJSksXG4gIFwiMTZ4OVwiOiBjYWxjKDkgLyAxNiAqIDEwMCUpLFxuICBcIjIxeDlcIjogY2FsYyg5IC8gMjEgKiAxMDAlKVxuKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgYXNwZWN0LXJhdGlvc1xuLy8gc3R5bGVsaW50LWVuYWJsZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcblxuLy8gVHlwb2dyYXBoeVxuLy9cbi8vIEZvbnQsIGxpbmUtaGVpZ2h0LCBhbmQgY29sb3IgZm9yIGJvZHkgdGV4dCwgaGVhZGluZ3MsIGFuZCBtb3JlLlxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZm9udC12YXJpYWJsZXNcbi8vIHN0eWxlbGludC1kaXNhYmxlIHZhbHVlLWtleXdvcmQtY2FzZVxuJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWY6ICAgICAgc3lzdGVtLXVpLCAtYXBwbGUtc3lzdGVtLCBcIlNlZ29lIFVJXCIsIFJvYm90bywgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBcIk5vdG8gU2Fuc1wiLCBcIkxpYmVyYXRpb24gU2Fuc1wiLCBBcmlhbCwgc2Fucy1zZXJpZiwgXCJBcHBsZSBDb2xvciBFbW9qaVwiLCBcIlNlZ29lIFVJIEVtb2ppXCIsIFwiU2Vnb2UgVUkgU3ltYm9sXCIsIFwiTm90byBDb2xvciBFbW9qaVwiICFkZWZhdWx0O1xuJGZvbnQtZmFtaWx5LW1vbm9zcGFjZTogICAgICAgU0ZNb25vLVJlZ3VsYXIsIE1lbmxvLCBNb25hY28sIENvbnNvbGFzLCBcIkxpYmVyYXRpb24gTW9ub1wiLCBcIkNvdXJpZXIgTmV3XCIsIG1vbm9zcGFjZSAhZGVmYXVsdDtcbi8vIHN0eWxlbGludC1lbmFibGUgdmFsdWUta2V5d29yZC1jYXNlXG4kZm9udC1mYW1pbHktYmFzZTogICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Zm9udC1zYW5zLXNlcmlmKSAhZGVmYXVsdDtcbiRmb250LWZhbWlseS1jb2RlOiAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1mb250LW1vbm9zcGFjZSkgIWRlZmF1bHQ7XG5cbi8vICRmb250LXNpemUtcm9vdCBhZmZlY3RzIHRoZSB2YWx1ZSBvZiBgcmVtYCwgd2hpY2ggaXMgdXNlZCBmb3IgYXMgd2VsbCBmb250IHNpemVzLCBwYWRkaW5ncywgYW5kIG1hcmdpbnNcbi8vICRmb250LXNpemUtYmFzZSBhZmZlY3RzIHRoZSBmb250IHNpemUgb2YgdGhlIGJvZHkgdGV4dFxuJGZvbnQtc2l6ZS1yb290OiAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRmb250LXNpemUtYmFzZTogICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7IC8vIEFzc3VtZXMgdGhlIGJyb3dzZXIgZGVmYXVsdCwgdHlwaWNhbGx5IGAxNnB4YFxuJGZvbnQtc2l6ZS1zbTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogLjg3NSAhZGVmYXVsdDtcbiRmb250LXNpemUtbGc6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuMjUgIWRlZmF1bHQ7XG5cbiRmb250LXdlaWdodC1saWdodGVyOiAgICAgICAgIGxpZ2h0ZXIgIWRlZmF1bHQ7XG4kZm9udC13ZWlnaHQtbGlnaHQ6ICAgICAgICAgICAzMDAgIWRlZmF1bHQ7XG4kZm9udC13ZWlnaHQtbm9ybWFsOiAgICAgICAgICA0MDAgIWRlZmF1bHQ7XG4kZm9udC13ZWlnaHQtbWVkaXVtOiAgICAgICAgICA1MDAgIWRlZmF1bHQ7XG4kZm9udC13ZWlnaHQtc2VtaWJvbGQ6ICAgICAgICA2MDAgIWRlZmF1bHQ7XG4kZm9udC13ZWlnaHQtYm9sZDogICAgICAgICAgICA3MDAgIWRlZmF1bHQ7XG4kZm9udC13ZWlnaHQtYm9sZGVyOiAgICAgICAgICBib2xkZXIgIWRlZmF1bHQ7XG5cbiRmb250LXdlaWdodC1iYXNlOiAgICAgICAgICAgICRmb250LXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XG5cbiRsaW5lLWhlaWdodC1iYXNlOiAgICAgICAgICAgIDEuNSAhZGVmYXVsdDtcbiRsaW5lLWhlaWdodC1zbTogICAgICAgICAgICAgIDEuMjUgIWRlZmF1bHQ7XG4kbGluZS1oZWlnaHQtbGc6ICAgICAgICAgICAgICAyICFkZWZhdWx0O1xuXG4kaDEtZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAyLjUgIWRlZmF1bHQ7XG4kaDItZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAyICFkZWZhdWx0O1xuJGgzLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS43NSAhZGVmYXVsdDtcbiRoNC1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuNSAhZGVmYXVsdDtcbiRoNS1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuMjUgIWRlZmF1bHQ7XG4kaDYtZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGZvbnQtdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb250LXNpemVzXG4kZm9udC1zaXplczogKFxuICAxOiAkaDEtZm9udC1zaXplLFxuICAyOiAkaDItZm9udC1zaXplLFxuICAzOiAkaDMtZm9udC1zaXplLFxuICA0OiAkaDQtZm9udC1zaXplLFxuICA1OiAkaDUtZm9udC1zaXplLFxuICA2OiAkaDYtZm9udC1zaXplXG4pICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBmb250LXNpemVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBoZWFkaW5ncy12YXJpYWJsZXNcbiRoZWFkaW5ncy1tYXJnaW4tYm90dG9tOiAgICAgICRzcGFjZXIgKiAuNSAhZGVmYXVsdDtcbiRoZWFkaW5ncy1mb250LWZhbWlseTogICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kaGVhZGluZ3MtZm9udC1zdHlsZTogICAgICAgICBudWxsICFkZWZhdWx0O1xuJGhlYWRpbmdzLWZvbnQtd2VpZ2h0OiAgICAgICAgNTAwICFkZWZhdWx0O1xuJGhlYWRpbmdzLWxpbmUtaGVpZ2h0OiAgICAgICAgMS4yICFkZWZhdWx0O1xuJGhlYWRpbmdzLWNvbG9yOiAgICAgICAgICAgICAgaW5oZXJpdCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgaGVhZGluZ3MtdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBkaXNwbGF5LWhlYWRpbmdzXG4kZGlzcGxheS1mb250LXNpemVzOiAoXG4gIDE6IDVyZW0sXG4gIDI6IDQuNXJlbSxcbiAgMzogNHJlbSxcbiAgNDogMy41cmVtLFxuICA1OiAzcmVtLFxuICA2OiAyLjVyZW1cbikgIWRlZmF1bHQ7XG5cbiRkaXNwbGF5LWZvbnQtZmFtaWx5OiBudWxsICFkZWZhdWx0O1xuJGRpc3BsYXktZm9udC1zdHlsZTogIG51bGwgIWRlZmF1bHQ7XG4kZGlzcGxheS1mb250LXdlaWdodDogMzAwICFkZWZhdWx0O1xuJGRpc3BsYXktbGluZS1oZWlnaHQ6ICRoZWFkaW5ncy1saW5lLWhlaWdodCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZGlzcGxheS1oZWFkaW5nc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgdHlwZS12YXJpYWJsZXNcbiRsZWFkLWZvbnQtc2l6ZTogICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDEuMjUgIWRlZmF1bHQ7XG4kbGVhZC1mb250LXdlaWdodDogICAgICAgICAgICAzMDAgIWRlZmF1bHQ7XG5cbiRzbWFsbC1mb250LXNpemU6ICAgICAgICAgICAgIC44NzVlbSAhZGVmYXVsdDtcblxuJHN1Yi1zdXAtZm9udC1zaXplOiAgICAgICAgICAgLjc1ZW0gIWRlZmF1bHQ7XG5cbi8vIGZ1c3YtZGlzYWJsZVxuJHRleHQtbXV0ZWQ6ICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fXNlY29uZGFyeS1jb2xvcikgIWRlZmF1bHQ7IC8vIERlcHJlY2F0ZWQgaW4gNS4zLjBcbi8vIGZ1c3YtZW5hYmxlXG5cbiRpbml0aWFsaXNtLWZvbnQtc2l6ZTogICAgICAgICRzbWFsbC1mb250LXNpemUgIWRlZmF1bHQ7XG5cbiRibG9ja3F1b3RlLW1hcmdpbi15OiAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XG4kYmxvY2txdW90ZS1mb250LXNpemU6ICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAxLjI1ICFkZWZhdWx0O1xuJGJsb2NrcXVvdGUtZm9vdGVyLWNvbG9yOiAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJGJsb2NrcXVvdGUtZm9vdGVyLWZvbnQtc2l6ZTogJHNtYWxsLWZvbnQtc2l6ZSAhZGVmYXVsdDtcblxuJGhyLW1hcmdpbi15OiAgICAgICAgICAgICAgICAgJHNwYWNlciAhZGVmYXVsdDtcbiRoci1jb2xvcjogICAgICAgICAgICAgICAgICAgIGluaGVyaXQgIWRlZmF1bHQ7XG5cbi8vIGZ1c3YtZGlzYWJsZVxuJGhyLWJnLWNvbG9yOiAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDsgLy8gRGVwcmVjYXRlZCBpbiB2NS4yLjBcbiRoci1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7IC8vIERlcHJlY2F0ZWQgaW4gdjUuMi4wXG4vLyBmdXN2LWVuYWJsZVxuXG4kaHItYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICBudWxsICFkZWZhdWx0OyAvLyBBbGxvd3MgZm9yIGluaGVyaXRlZCBjb2xvcnNcbiRoci1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuJGhyLW9wYWNpdHk6ICAgICAgICAgICAgICAgICAgLjI1ICFkZWZhdWx0O1xuXG4kbGVnZW5kLW1hcmdpbi1ib3R0b206ICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRsZWdlbmQtZm9udC1zaXplOiAgICAgICAgICAgIDEuNXJlbSAhZGVmYXVsdDtcbiRsZWdlbmQtZm9udC13ZWlnaHQ6ICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG5cbiRkdC1mb250LXdlaWdodDogICAgICAgICAgICAgICRmb250LXdlaWdodC1ib2xkICFkZWZhdWx0O1xuXG4kbGlzdC1pbmxpbmUtcGFkZGluZzogICAgICAgICAuNXJlbSAhZGVmYXVsdDtcblxuJG1hcmstcGFkZGluZzogICAgICAgICAgICAgICAgLjE4NzVlbSAhZGVmYXVsdDtcbiRtYXJrLWJnOiAgICAgICAgICAgICAgICAgICAgICR5ZWxsb3ctMTAwICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB0eXBlLXZhcmlhYmxlc1xuXG5cbi8vIFRhYmxlc1xuLy9cbi8vIEN1c3RvbWl6ZXMgdGhlIGAudGFibGVgIGNvbXBvbmVudCB3aXRoIGJhc2ljIHZhbHVlcywgZWFjaCB1c2VkIGFjcm9zcyBhbGwgdGFibGUgdmFyaWF0aW9ucy5cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHRhYmxlLXZhcmlhYmxlc1xuJHRhYmxlLWNlbGwtcGFkZGluZy15OiAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kdGFibGUtY2VsbC1wYWRkaW5nLXg6ICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiR0YWJsZS1jZWxsLXBhZGRpbmcteS1zbTogICAgIC4yNXJlbSAhZGVmYXVsdDtcbiR0YWJsZS1jZWxsLXBhZGRpbmcteC1zbTogICAgIC4yNXJlbSAhZGVmYXVsdDtcblxuJHRhYmxlLWNlbGwtdmVydGljYWwtYWxpZ246ICAgdG9wICFkZWZhdWx0O1xuXG4kdGFibGUtY29sb3I6ICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1jb2xvcikgIWRlZmF1bHQ7XG4kdGFibGUtYmc6ICAgICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1iZykgIWRlZmF1bHQ7XG4kdGFibGUtYWNjZW50LWJnOiAgICAgICAgICAgICB0cmFuc3BhcmVudCAhZGVmYXVsdDtcblxuJHRhYmxlLXRoLWZvbnQtd2VpZ2h0OiAgICAgICAgbnVsbCAhZGVmYXVsdDtcblxuJHRhYmxlLXN0cmlwZWQtY29sb3I6ICAgICAgICAgJHRhYmxlLWNvbG9yICFkZWZhdWx0O1xuJHRhYmxlLXN0cmlwZWQtYmctZmFjdG9yOiAgICAgLjA1ICFkZWZhdWx0O1xuJHRhYmxlLXN0cmlwZWQtYmc6ICAgICAgICAgICAgcmdiYSgkYmxhY2ssICR0YWJsZS1zdHJpcGVkLWJnLWZhY3RvcikgIWRlZmF1bHQ7XG5cbiR0YWJsZS1hY3RpdmUtY29sb3I6ICAgICAgICAgICR0YWJsZS1jb2xvciAhZGVmYXVsdDtcbiR0YWJsZS1hY3RpdmUtYmctZmFjdG9yOiAgICAgIC4xICFkZWZhdWx0O1xuJHRhYmxlLWFjdGl2ZS1iZzogICAgICAgICAgICAgcmdiYSgkYmxhY2ssICR0YWJsZS1hY3RpdmUtYmctZmFjdG9yKSAhZGVmYXVsdDtcblxuJHRhYmxlLWhvdmVyLWNvbG9yOiAgICAgICAgICAgJHRhYmxlLWNvbG9yICFkZWZhdWx0O1xuJHRhYmxlLWhvdmVyLWJnLWZhY3RvcjogICAgICAgLjA3NSAhZGVmYXVsdDtcbiR0YWJsZS1ob3Zlci1iZzogICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAkdGFibGUtaG92ZXItYmctZmFjdG9yKSAhZGVmYXVsdDtcblxuJHRhYmxlLWJvcmRlci1mYWN0b3I6ICAgICAgICAgLjEgIWRlZmF1bHQ7XG4kdGFibGUtYm9yZGVyLXdpZHRoOiAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXdpZHRoKSAhZGVmYXVsdDtcbiR0YWJsZS1ib3JkZXItY29sb3I6ICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItY29sb3IpICFkZWZhdWx0O1xuXG4kdGFibGUtc3RyaXBlZC1vcmRlcjogICAgICAgICBvZGQgIWRlZmF1bHQ7XG4kdGFibGUtc3RyaXBlZC1jb2x1bW5zLW9yZGVyOiBldmVuICFkZWZhdWx0O1xuXG4kdGFibGUtZ3JvdXAtc2VwYXJhdG9yLWNvbG9yOiBjdXJyZW50Y29sb3IgIWRlZmF1bHQ7XG5cbiR0YWJsZS1jYXB0aW9uLWNvbG9yOiAgICAgICAgIHZhcigtLSN7JHByZWZpeH1zZWNvbmRhcnktY29sb3IpICFkZWZhdWx0O1xuXG4kdGFibGUtYmctc2NhbGU6ICAgICAgICAgICAgICAtODAlICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB0YWJsZS12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHRhYmxlLWxvb3BcbiR0YWJsZS12YXJpYW50czogKFxuICBcInByaW1hcnlcIjogICAgc2hpZnQtY29sb3IoJHByaW1hcnksICR0YWJsZS1iZy1zY2FsZSksXG4gIFwic2Vjb25kYXJ5XCI6ICBzaGlmdC1jb2xvcigkc2Vjb25kYXJ5LCAkdGFibGUtYmctc2NhbGUpLFxuICBcInN1Y2Nlc3NcIjogICAgc2hpZnQtY29sb3IoJHN1Y2Nlc3MsICR0YWJsZS1iZy1zY2FsZSksXG4gIFwiaW5mb1wiOiAgICAgICBzaGlmdC1jb2xvcigkaW5mbywgJHRhYmxlLWJnLXNjYWxlKSxcbiAgXCJ3YXJuaW5nXCI6ICAgIHNoaWZ0LWNvbG9yKCR3YXJuaW5nLCAkdGFibGUtYmctc2NhbGUpLFxuICBcImRhbmdlclwiOiAgICAgc2hpZnQtY29sb3IoJGRhbmdlciwgJHRhYmxlLWJnLXNjYWxlKSxcbiAgXCJsaWdodFwiOiAgICAgICRsaWdodCxcbiAgXCJkYXJrXCI6ICAgICAgICRkYXJrLFxuKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgdGFibGUtbG9vcFxuXG5cbi8vIEJ1dHRvbnMgKyBGb3Jtc1xuLy9cbi8vIFNoYXJlZCB2YXJpYWJsZXMgdGhhdCBhcmUgcmVhc3NpZ25lZCB0byBgJGlucHV0LWAgYW5kIGAkYnRuLWAgc3BlY2lmaWMgdmFyaWFibGVzLlxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgaW5wdXQtYnRuLXZhcmlhYmxlc1xuJGlucHV0LWJ0bi1wYWRkaW5nLXk6ICAgICAgICAgLjM3NXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tcGFkZGluZy14OiAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9udC1mYW1pbHk6ICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvbnQtc2l6ZTogICAgICAgICAkZm9udC1zaXplLWJhc2UgIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWxpbmUtaGVpZ2h0OiAgICAgICAkbGluZS1oZWlnaHQtYmFzZSAhZGVmYXVsdDtcblxuJGlucHV0LWJ0bi1mb2N1cy13aWR0aDogICAgICAgICAkZm9jdXMtcmluZy13aWR0aCAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9jdXMtY29sb3Itb3BhY2l0eTogJGZvY3VzLXJpbmctb3BhY2l0eSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9jdXMtY29sb3I6ICAgICAgICAgJGZvY3VzLXJpbmctY29sb3IgIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvY3VzLWJsdXI6ICAgICAgICAgICRmb2N1cy1yaW5nLWJsdXIgIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvY3VzLWJveC1zaGFkb3c6ICAgICRmb2N1cy1yaW5nLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG5cbiRpbnB1dC1idG4tcGFkZGluZy15LXNtOiAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tcGFkZGluZy14LXNtOiAgICAgIC41cmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb250LXNpemUtc206ICAgICAgJGZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcblxuJGlucHV0LWJ0bi1wYWRkaW5nLXktbGc6ICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLXBhZGRpbmcteC1sZzogICAgICAxcmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb250LXNpemUtbGc6ICAgICAgJGZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcblxuJGlucHV0LWJ0bi1ib3JkZXItd2lkdGg6ICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGlucHV0LWJ0bi12YXJpYWJsZXNcblxuXG4vLyBCdXR0b25zXG4vL1xuLy8gRm9yIGVhY2ggb2YgQm9vdHN0cmFwJ3MgYnV0dG9ucywgZGVmaW5lIHRleHQsIGJhY2tncm91bmQsIGFuZCBib3JkZXIgY29sb3IuXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBidG4tdmFyaWFibGVzXG4kYnRuLWNvbG9yOiAgICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1jb2xvcikgIWRlZmF1bHQ7XG4kYnRuLXBhZGRpbmcteTogICAgICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteSAhZGVmYXVsdDtcbiRidG4tcGFkZGluZy14OiAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14ICFkZWZhdWx0O1xuJGJ0bi1mb250LWZhbWlseTogICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LWZhbWlseSAhZGVmYXVsdDtcbiRidG4tZm9udC1zaXplOiAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1zaXplICFkZWZhdWx0O1xuJGJ0bi1saW5lLWhlaWdodDogICAgICAgICAgICAgJGlucHV0LWJ0bi1saW5lLWhlaWdodCAhZGVmYXVsdDtcbiRidG4td2hpdGUtc3BhY2U6ICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7IC8vIFNldCB0byBgbm93cmFwYCB0byBwcmV2ZW50IHRleHQgd3JhcHBpbmdcblxuJGJ0bi1wYWRkaW5nLXktc206ICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXktc20gIWRlZmF1bHQ7XG4kYnRuLXBhZGRpbmcteC1zbTogICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteC1zbSAhZGVmYXVsdDtcbiRidG4tZm9udC1zaXplLXNtOiAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1zaXplLXNtICFkZWZhdWx0O1xuXG4kYnRuLXBhZGRpbmcteS1sZzogICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteS1sZyAhZGVmYXVsdDtcbiRidG4tcGFkZGluZy14LWxnOiAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14LWxnICFkZWZhdWx0O1xuJGJ0bi1mb250LXNpemUtbGc6ICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LXNpemUtbGcgIWRlZmF1bHQ7XG5cbiRidG4tYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICRpbnB1dC1idG4tYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuXG4kYnRuLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAkZm9udC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuJGJ0bi1ib3gtc2hhZG93OiAgICAgICAgICAgICAgaW5zZXQgMCAxcHggMCByZ2JhKCR3aGl0ZSwgLjE1KSwgMCAxcHggMXB4IHJnYmEoJGJsYWNrLCAuMDc1KSAhZGVmYXVsdDtcbiRidG4tZm9jdXMtd2lkdGg6ICAgICAgICAgICAgICRpbnB1dC1idG4tZm9jdXMtd2lkdGggIWRlZmF1bHQ7XG4kYnRuLWZvY3VzLWJveC1zaGFkb3c6ICAgICAgICAkaW5wdXQtYnRuLWZvY3VzLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kYnRuLWRpc2FibGVkLW9wYWNpdHk6ICAgICAgICAuNjUgIWRlZmF1bHQ7XG4kYnRuLWFjdGl2ZS1ib3gtc2hhZG93OiAgICAgICBpbnNldCAwIDNweCA1cHggcmdiYSgkYmxhY2ssIC4xMjUpICFkZWZhdWx0O1xuXG4kYnRuLWxpbmstY29sb3I6ICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9bGluay1jb2xvcikgIWRlZmF1bHQ7XG4kYnRuLWxpbmstaG92ZXItY29sb3I6ICAgICAgICB2YXIoLS0jeyRwcmVmaXh9bGluay1ob3Zlci1jb2xvcikgIWRlZmF1bHQ7XG4kYnRuLWxpbmstZGlzYWJsZWQtY29sb3I6ICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG5cbi8vIEFsbG93cyBmb3IgY3VzdG9taXppbmcgYnV0dG9uIHJhZGl1cyBpbmRlcGVuZGVudGx5IGZyb20gZ2xvYmFsIGJvcmRlciByYWRpdXNcbiRidG4tYm9yZGVyLXJhZGl1czogICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzKSAhZGVmYXVsdDtcbiRidG4tYm9yZGVyLXJhZGl1cy1zbTogICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzLXNtKSAhZGVmYXVsdDtcbiRidG4tYm9yZGVyLXJhZGl1cy1sZzogICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzLWxnKSAhZGVmYXVsdDtcblxuJGJ0bi10cmFuc2l0aW9uOiAgICAgICAgICAgICAgY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3JkZXItY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm94LXNoYWRvdyAuMTVzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuXG4kYnRuLWhvdmVyLWJnLXNoYWRlLWFtb3VudDogICAgICAgMTUlICFkZWZhdWx0O1xuJGJ0bi1ob3Zlci1iZy10aW50LWFtb3VudDogICAgICAgIDE1JSAhZGVmYXVsdDtcbiRidG4taG92ZXItYm9yZGVyLXNoYWRlLWFtb3VudDogICAyMCUgIWRlZmF1bHQ7XG4kYnRuLWhvdmVyLWJvcmRlci10aW50LWFtb3VudDogICAgMTAlICFkZWZhdWx0O1xuJGJ0bi1hY3RpdmUtYmctc2hhZGUtYW1vdW50OiAgICAgIDIwJSAhZGVmYXVsdDtcbiRidG4tYWN0aXZlLWJnLXRpbnQtYW1vdW50OiAgICAgICAyMCUgIWRlZmF1bHQ7XG4kYnRuLWFjdGl2ZS1ib3JkZXItc2hhZGUtYW1vdW50OiAgMjUlICFkZWZhdWx0O1xuJGJ0bi1hY3RpdmUtYm9yZGVyLXRpbnQtYW1vdW50OiAgIDEwJSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgYnRuLXZhcmlhYmxlc1xuXG5cbi8vIEZvcm1zXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb3JtLXRleHQtdmFyaWFibGVzXG4kZm9ybS10ZXh0LW1hcmdpbi10b3A6ICAgICAgICAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJGZvcm0tdGV4dC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICRzbWFsbC1mb250LXNpemUgIWRlZmF1bHQ7XG4kZm9ybS10ZXh0LWZvbnQtc3R5bGU6ICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRmb3JtLXRleHQtZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGZvcm0tdGV4dC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1zZWNvbmRhcnktY29sb3IpICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBmb3JtLXRleHQtdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb3JtLWxhYmVsLXZhcmlhYmxlc1xuJGZvcm0tbGFiZWwtbWFyZ2luLWJvdHRvbTogICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJGZvcm0tbGFiZWwtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kZm9ybS1sYWJlbC1mb250LXN0eWxlOiAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRmb3JtLWxhYmVsLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGZvcm0tbGFiZWwtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGZvcm0tbGFiZWwtdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb3JtLWlucHV0LXZhcmlhYmxlc1xuJGlucHV0LXBhZGRpbmcteTogICAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15ICFkZWZhdWx0O1xuJGlucHV0LXBhZGRpbmcteDogICAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14ICFkZWZhdWx0O1xuJGlucHV0LWZvbnQtZmFtaWx5OiAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1mYW1pbHkgIWRlZmF1bHQ7XG4kaW5wdXQtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LXNpemUgIWRlZmF1bHQ7XG4kaW5wdXQtZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LWJhc2UgIWRlZmF1bHQ7XG4kaW5wdXQtbGluZS1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1saW5lLWhlaWdodCAhZGVmYXVsdDtcblxuJGlucHV0LXBhZGRpbmcteS1zbTogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15LXNtICFkZWZhdWx0O1xuJGlucHV0LXBhZGRpbmcteC1zbTogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14LXNtICFkZWZhdWx0O1xuJGlucHV0LWZvbnQtc2l6ZS1zbTogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1zaXplLXNtICFkZWZhdWx0O1xuXG4kaW5wdXQtcGFkZGluZy15LWxnOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXktbGcgIWRlZmF1bHQ7XG4kaW5wdXQtcGFkZGluZy14LWxnOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXgtbGcgIWRlZmF1bHQ7XG4kaW5wdXQtZm9udC1zaXplLWxnOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LXNpemUtbGcgIWRlZmF1bHQ7XG5cbiRpbnB1dC1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1iZykgIWRlZmF1bHQ7XG4kaW5wdXQtZGlzYWJsZWQtY29sb3I6ICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRpbnB1dC1kaXNhYmxlZC1iZzogICAgICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWJnKSAhZGVmYXVsdDtcbiRpbnB1dC1kaXNhYmxlZC1ib3JkZXItY29sb3I6ICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuXG4kaW5wdXQtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvZHktY29sb3IpICFkZWZhdWx0O1xuJGlucHV0LWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItY29sb3IpICFkZWZhdWx0O1xuJGlucHV0LWJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGlucHV0LWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgICAgICAgICRib3gtc2hhZG93LWluc2V0ICFkZWZhdWx0O1xuXG4kaW5wdXQtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMpICFkZWZhdWx0O1xuJGlucHV0LWJvcmRlci1yYWRpdXMtc206ICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzLXNtKSAhZGVmYXVsdDtcbiRpbnB1dC1ib3JkZXItcmFkaXVzLWxnOiAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cy1sZykgIWRlZmF1bHQ7XG5cbiRpbnB1dC1mb2N1cy1iZzogICAgICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYmcgIWRlZmF1bHQ7XG4kaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgdGludC1jb2xvcigkY29tcG9uZW50LWFjdGl2ZS1iZywgNTAlKSAhZGVmYXVsdDtcbiRpbnB1dC1mb2N1cy1jb2xvcjogICAgICAgICAgICAgICAgICAgICAkaW5wdXQtY29sb3IgIWRlZmF1bHQ7XG4kaW5wdXQtZm9jdXMtd2lkdGg6ICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb2N1cy13aWR0aCAhZGVmYXVsdDtcbiRpbnB1dC1mb2N1cy1ib3gtc2hhZG93OiAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvY3VzLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG5cbiRpbnB1dC1wbGFjZWhvbGRlci1jb2xvcjogICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWNvbG9yKSAhZGVmYXVsdDtcbiRpbnB1dC1wbGFpbnRleHQtY29sb3I6ICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1jb2xvcikgIWRlZmF1bHQ7XG5cbiRpbnB1dC1oZWlnaHQtYm9yZGVyOiAgICAgICAgICAgICAgICAgICBjYWxjKCN7JGlucHV0LWJvcmRlci13aWR0aH0gKiAyKSAhZGVmYXVsdDsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcblxuJGlucHV0LWhlaWdodC1pbm5lcjogICAgICAgICAgICAgICAgICAgIGFkZCgkaW5wdXQtbGluZS1oZWlnaHQgKiAxZW0sICRpbnB1dC1wYWRkaW5nLXkgKiAyKSAhZGVmYXVsdDtcbiRpbnB1dC1oZWlnaHQtaW5uZXItaGFsZjogICAgICAgICAgICAgICBhZGQoJGlucHV0LWxpbmUtaGVpZ2h0ICogLjVlbSwgJGlucHV0LXBhZGRpbmcteSkgIWRlZmF1bHQ7XG4kaW5wdXQtaGVpZ2h0LWlubmVyLXF1YXJ0ZXI6ICAgICAgICAgICAgYWRkKCRpbnB1dC1saW5lLWhlaWdodCAqIC4yNWVtLCAkaW5wdXQtcGFkZGluZy15ICogLjUpICFkZWZhdWx0O1xuXG4kaW5wdXQtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgICAgICAgYWRkKCRpbnB1dC1saW5lLWhlaWdodCAqIDFlbSwgYWRkKCRpbnB1dC1wYWRkaW5nLXkgKiAyLCAkaW5wdXQtaGVpZ2h0LWJvcmRlciwgZmFsc2UpKSAhZGVmYXVsdDtcbiRpbnB1dC1oZWlnaHQtc206ICAgICAgICAgICAgICAgICAgICAgICBhZGQoJGlucHV0LWxpbmUtaGVpZ2h0ICogMWVtLCBhZGQoJGlucHV0LXBhZGRpbmcteS1zbSAqIDIsICRpbnB1dC1oZWlnaHQtYm9yZGVyLCBmYWxzZSkpICFkZWZhdWx0O1xuJGlucHV0LWhlaWdodC1sZzogICAgICAgICAgICAgICAgICAgICAgIGFkZCgkaW5wdXQtbGluZS1oZWlnaHQgKiAxZW0sIGFkZCgkaW5wdXQtcGFkZGluZy15LWxnICogMiwgJGlucHV0LWhlaWdodC1ib3JkZXIsIGZhbHNlKSkgIWRlZmF1bHQ7XG5cbiRpbnB1dC10cmFuc2l0aW9uOiAgICAgICAgICAgICAgICAgICAgICBib3JkZXItY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm94LXNoYWRvdyAuMTVzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuXG4kZm9ybS1jb2xvci13aWR0aDogICAgICAgICAgICAgICAgICAgICAgM3JlbSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZm9ybS1pbnB1dC12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGZvcm0tY2hlY2stdmFyaWFibGVzXG4kZm9ybS1jaGVjay1pbnB1dC13aWR0aDogICAgICAgICAgICAgICAgICAxZW0gIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1taW4taGVpZ2h0OiAgICAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAkbGluZS1oZWlnaHQtYmFzZSAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLXBhZGRpbmctc3RhcnQ6ICAgICAgICAgICAgICAgICRmb3JtLWNoZWNrLWlucHV0LXdpZHRoICsgLjVlbSAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLW1hcmdpbi1ib3R0b206ICAgICAgICAgICAgICAgIC4xMjVyZW0gIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1sYWJlbC1jb2xvcjogICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGZvcm0tY2hlY2stbGFiZWwtY3Vyc29yOiAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLXRyYW5zaXRpb246ICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG5cbiRmb3JtLWNoZWNrLWlucHV0LWFjdGl2ZS1maWx0ZXI6ICAgICAgICAgIGJyaWdodG5lc3MoOTAlKSAhZGVmYXVsdDtcblxuJGZvcm0tY2hlY2staW5wdXQtYmc6ICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJnICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5wdXQtYm9yZGVyOiAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tI3skcHJlZml4fWJvcmRlci1jb2xvcikgIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1pbnB1dC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAuMjVlbSAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLXJhZGlvLWJvcmRlci1yYWRpdXM6ICAgICAgICAgIDUwJSAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWlucHV0LWZvY3VzLWJvcmRlcjogICAgICAgICAgICRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1pbnB1dC1mb2N1cy1ib3gtc2hhZG93OiAgICAgICAkZm9jdXMtcmluZy1ib3gtc2hhZG93ICFkZWZhdWx0O1xuXG4kZm9ybS1jaGVjay1pbnB1dC1jaGVja2VkLWNvbG9yOiAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWlucHV0LWNoZWNrZWQtYmctY29sb3I6ICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5wdXQtY2hlY2tlZC1ib3JkZXItY29sb3I6ICAgJGZvcm0tY2hlY2staW5wdXQtY2hlY2tlZC1iZy1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWlucHV0LWNoZWNrZWQtYmctaW1hZ2U6ICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDIwIDIwJz48cGF0aCBmaWxsPSdub25lJyBzdHJva2U9JyN7JGZvcm0tY2hlY2staW5wdXQtY2hlY2tlZC1jb2xvcn0nIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLWxpbmVqb2luPSdyb3VuZCcgc3Ryb2tlLXdpZHRoPSczJyBkPSdtNiAxMCAzIDMgNi02Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuJGZvcm0tY2hlY2stcmFkaW8tY2hlY2tlZC1iZy1pbWFnZTogICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PSctNCAtNCA4IDgnPjxjaXJjbGUgcj0nMicgZmlsbD0nI3skZm9ybS1jaGVjay1pbnB1dC1jaGVja2VkLWNvbG9yfScvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcblxuJGZvcm0tY2hlY2staW5wdXQtaW5kZXRlcm1pbmF0ZS1jb2xvcjogICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1pbnB1dC1pbmRldGVybWluYXRlLWJnLWNvbG9yOiAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWlucHV0LWluZGV0ZXJtaW5hdGUtYm9yZGVyLWNvbG9yOiAgICRmb3JtLWNoZWNrLWlucHV0LWluZGV0ZXJtaW5hdGUtYmctY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1pbnB1dC1pbmRldGVybWluYXRlLWJnLWltYWdlOiAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAyMCAyMCc+PHBhdGggZmlsbD0nbm9uZScgc3Ryb2tlPScjeyRmb3JtLWNoZWNrLWlucHV0LWluZGV0ZXJtaW5hdGUtY29sb3J9JyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1saW5lam9pbj0ncm91bmQnIHN0cm9rZS13aWR0aD0nMycgZD0nTTYgMTBoOCcvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcblxuJGZvcm0tY2hlY2staW5wdXQtZGlzYWJsZWQtb3BhY2l0eTogICAgICAgIC41ICFkZWZhdWx0O1xuJGZvcm0tY2hlY2stbGFiZWwtZGlzYWJsZWQtb3BhY2l0eTogICAgICAgICRmb3JtLWNoZWNrLWlucHV0LWRpc2FibGVkLW9wYWNpdHkgIWRlZmF1bHQ7XG4kZm9ybS1jaGVjay1idG4tY2hlY2stZGlzYWJsZWQtb3BhY2l0eTogICAgJGJ0bi1kaXNhYmxlZC1vcGFjaXR5ICFkZWZhdWx0O1xuXG4kZm9ybS1jaGVjay1pbmxpbmUtbWFyZ2luLWVuZDogICAgMXJlbSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZm9ybS1jaGVjay12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGZvcm0tc3dpdGNoLXZhcmlhYmxlc1xuJGZvcm0tc3dpdGNoLWNvbG9yOiAgICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuMjUpICFkZWZhdWx0O1xuJGZvcm0tc3dpdGNoLXdpZHRoOiAgICAgICAgICAgICAgIDJlbSAhZGVmYXVsdDtcbiRmb3JtLXN3aXRjaC1wYWRkaW5nLXN0YXJ0OiAgICAgICAkZm9ybS1zd2l0Y2gtd2lkdGggKyAuNWVtICFkZWZhdWx0O1xuJGZvcm0tc3dpdGNoLWJnLWltYWdlOiAgICAgICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nLTQgLTQgOCA4Jz48Y2lyY2xlIHI9JzMnIGZpbGw9JyN7JGZvcm0tc3dpdGNoLWNvbG9yfScvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbiRmb3JtLXN3aXRjaC1ib3JkZXItcmFkaXVzOiAgICAgICAkZm9ybS1zd2l0Y2gtd2lkdGggIWRlZmF1bHQ7XG4kZm9ybS1zd2l0Y2gtdHJhbnNpdGlvbjogICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbiAuMTVzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuXG4kZm9ybS1zd2l0Y2gtZm9jdXMtY29sb3I6ICAgICAgICAgJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLXN3aXRjaC1mb2N1cy1iZy1pbWFnZTogICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9Jy00IC00IDggOCc+PGNpcmNsZSByPSczJyBmaWxsPScjeyRmb3JtLXN3aXRjaC1mb2N1cy1jb2xvcn0nLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG5cbiRmb3JtLXN3aXRjaC1jaGVja2VkLWNvbG9yOiAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLXN3aXRjaC1jaGVja2VkLWJnLWltYWdlOiAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9Jy00IC00IDggOCc+PGNpcmNsZSByPSczJyBmaWxsPScjeyRmb3JtLXN3aXRjaC1jaGVja2VkLWNvbG9yfScvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbiRmb3JtLXN3aXRjaC1jaGVja2VkLWJnLXBvc2l0aW9uOiByaWdodCBjZW50ZXIgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGZvcm0tc3dpdGNoLXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgaW5wdXQtZ3JvdXAtdmFyaWFibGVzXG4kaW5wdXQtZ3JvdXAtYWRkb24tcGFkZGluZy15OiAgICAgICAgICAgJGlucHV0LXBhZGRpbmcteSAhZGVmYXVsdDtcbiRpbnB1dC1ncm91cC1hZGRvbi1wYWRkaW5nLXg6ICAgICAgICAgICAkaW5wdXQtcGFkZGluZy14ICFkZWZhdWx0O1xuJGlucHV0LWdyb3VwLWFkZG9uLWZvbnQtd2VpZ2h0OiAgICAgICAgICRpbnB1dC1mb250LXdlaWdodCAhZGVmYXVsdDtcbiRpbnB1dC1ncm91cC1hZGRvbi1jb2xvcjogICAgICAgICAgICAgICAkaW5wdXQtY29sb3IgIWRlZmF1bHQ7XG4kaW5wdXQtZ3JvdXAtYWRkb24tYmc6ICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fXRlcnRpYXJ5LWJnKSAhZGVmYXVsdDtcbiRpbnB1dC1ncm91cC1hZGRvbi1ib3JkZXItY29sb3I6ICAgICAgICAkaW5wdXQtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBpbnB1dC1ncm91cC12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGZvcm0tc2VsZWN0LXZhcmlhYmxlc1xuJGZvcm0tc2VsZWN0LXBhZGRpbmcteTogICAgICAgICAgICAgJGlucHV0LXBhZGRpbmcteSAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1wYWRkaW5nLXg6ICAgICAgICAgICAgICRpbnB1dC1wYWRkaW5nLXggIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtZm9udC1mYW1pbHk6ICAgICAgICAgICAkaW5wdXQtZm9udC1mYW1pbHkgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtZm9udC1zaXplOiAgICAgICAgICAgICAkaW5wdXQtZm9udC1zaXplICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWluZGljYXRvci1wYWRkaW5nOiAgICAgJGZvcm0tc2VsZWN0LXBhZGRpbmcteCAqIDMgIWRlZmF1bHQ7IC8vIEV4dHJhIHBhZGRpbmcgZm9yIGJhY2tncm91bmQtaW1hZ2VcbiRmb3JtLXNlbGVjdC1mb250LXdlaWdodDogICAgICAgICAgICRpbnB1dC1mb250LXdlaWdodCAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1saW5lLWhlaWdodDogICAgICAgICAgICRpbnB1dC1saW5lLWhlaWdodCAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1jb2xvcjogICAgICAgICAgICAgICAgICRpbnB1dC1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1iZzogICAgICAgICAgICAgICAgICAgICRpbnB1dC1iZyAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1kaXNhYmxlZC1jb2xvcjogICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtZGlzYWJsZWQtYmc6ICAgICAgICAgICAkaW5wdXQtZGlzYWJsZWQtYmcgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtZGlzYWJsZWQtYm9yZGVyLWNvbG9yOiAkaW5wdXQtZGlzYWJsZWQtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWJnLXBvc2l0aW9uOiAgICAgICAgICAgcmlnaHQgJGZvcm0tc2VsZWN0LXBhZGRpbmcteCBjZW50ZXIgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtYmctc2l6ZTogICAgICAgICAgICAgICAxNnB4IDEycHggIWRlZmF1bHQ7IC8vIEluIHBpeGVscyBiZWNhdXNlIGltYWdlIGRpbWVuc2lvbnNcbiRmb3JtLXNlbGVjdC1pbmRpY2F0b3ItY29sb3I6ICAgICAgICRncmF5LTgwMCAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1pbmRpY2F0b3I6ICAgICAgICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDE2IDE2Jz48cGF0aCBmaWxsPSdub25lJyBzdHJva2U9JyN7JGZvcm0tc2VsZWN0LWluZGljYXRvci1jb2xvcn0nIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLWxpbmVqb2luPSdyb3VuZCcgc3Ryb2tlLXdpZHRoPScyJyBkPSdtMiA1IDYgNiA2LTYnLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG5cbiRmb3JtLXNlbGVjdC1mZWVkYmFjay1pY29uLXBhZGRpbmctZW5kOiAkZm9ybS1zZWxlY3QtcGFkZGluZy14ICogMi41ICsgJGZvcm0tc2VsZWN0LWluZGljYXRvci1wYWRkaW5nICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWZlZWRiYWNrLWljb24tcG9zaXRpb246ICAgIGNlbnRlciByaWdodCAkZm9ybS1zZWxlY3QtaW5kaWNhdG9yLXBhZGRpbmcgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtZmVlZGJhY2staWNvbi1zaXplOiAgICAgICAgJGlucHV0LWhlaWdodC1pbm5lci1oYWxmICRpbnB1dC1oZWlnaHQtaW5uZXItaGFsZiAhZGVmYXVsdDtcblxuJGZvcm0tc2VsZWN0LWJvcmRlci13aWR0aDogICAgICAgICRpbnB1dC1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtYm9yZGVyLWNvbG9yOiAgICAgICAgJGlucHV0LWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1ib3JkZXItcmFkaXVzOiAgICAgICAkaW5wdXQtYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1ib3gtc2hhZG93OiAgICAgICAgICAkYm94LXNoYWRvdy1pbnNldCAhZGVmYXVsdDtcblxuJGZvcm0tc2VsZWN0LWZvY3VzLWJvcmRlci1jb2xvcjogICRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtZm9jdXMtd2lkdGg6ICAgICAgICAgJGlucHV0LWZvY3VzLXdpZHRoICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWZvY3VzLWJveC1zaGFkb3c6ICAgIDAgMCAwICRmb3JtLXNlbGVjdC1mb2N1cy13aWR0aCAkaW5wdXQtYnRuLWZvY3VzLWNvbG9yICFkZWZhdWx0O1xuXG4kZm9ybS1zZWxlY3QtcGFkZGluZy15LXNtOiAgICAgICAgJGlucHV0LXBhZGRpbmcteS1zbSAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1wYWRkaW5nLXgtc206ICAgICAgICAkaW5wdXQtcGFkZGluZy14LXNtICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LWZvbnQtc2l6ZS1zbTogICAgICAgICRpbnB1dC1mb250LXNpemUtc20gIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtYm9yZGVyLXJhZGl1cy1zbTogICAgJGlucHV0LWJvcmRlci1yYWRpdXMtc20gIWRlZmF1bHQ7XG5cbiRmb3JtLXNlbGVjdC1wYWRkaW5nLXktbGc6ICAgICAgICAkaW5wdXQtcGFkZGluZy15LWxnICFkZWZhdWx0O1xuJGZvcm0tc2VsZWN0LXBhZGRpbmcteC1sZzogICAgICAgICRpbnB1dC1wYWRkaW5nLXgtbGcgIWRlZmF1bHQ7XG4kZm9ybS1zZWxlY3QtZm9udC1zaXplLWxnOiAgICAgICAgJGlucHV0LWZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcbiRmb3JtLXNlbGVjdC1ib3JkZXItcmFkaXVzLWxnOiAgICAkaW5wdXQtYm9yZGVyLXJhZGl1cy1sZyAhZGVmYXVsdDtcblxuJGZvcm0tc2VsZWN0LXRyYW5zaXRpb246ICAgICAgICAgICRpbnB1dC10cmFuc2l0aW9uICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBmb3JtLXNlbGVjdC12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGZvcm0tcmFuZ2UtdmFyaWFibGVzXG4kZm9ybS1yYW5nZS10cmFjay13aWR0aDogICAgICAgICAgMTAwJSAhZGVmYXVsdDtcbiRmb3JtLXJhbmdlLXRyYWNrLWhlaWdodDogICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRmb3JtLXJhbmdlLXRyYWNrLWN1cnNvcjogICAgICAgICBwb2ludGVyICFkZWZhdWx0O1xuJGZvcm0tcmFuZ2UtdHJhY2stYmc6ICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH10ZXJ0aWFyeS1iZykgIWRlZmF1bHQ7XG4kZm9ybS1yYW5nZS10cmFjay1ib3JkZXItcmFkaXVzOiAgMXJlbSAhZGVmYXVsdDtcbiRmb3JtLXJhbmdlLXRyYWNrLWJveC1zaGFkb3c6ICAgICAkYm94LXNoYWRvdy1pbnNldCAhZGVmYXVsdDtcblxuJGZvcm0tcmFuZ2UtdGh1bWItd2lkdGg6ICAgICAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kZm9ybS1yYW5nZS10aHVtYi1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgJGZvcm0tcmFuZ2UtdGh1bWItd2lkdGggIWRlZmF1bHQ7XG4kZm9ybS1yYW5nZS10aHVtYi1iZzogICAgICAgICAgICAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4kZm9ybS1yYW5nZS10aHVtYi1ib3JkZXI6ICAgICAgICAgICAgICAgICAgMCAhZGVmYXVsdDtcbiRmb3JtLXJhbmdlLXRodW1iLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJGZvcm0tcmFuZ2UtdGh1bWItYm94LXNoYWRvdzogICAgICAgICAgICAgIDAgLjFyZW0gLjI1cmVtIHJnYmEoJGJsYWNrLCAuMSkgIWRlZmF1bHQ7XG4kZm9ybS1yYW5nZS10aHVtYi1mb2N1cy1ib3gtc2hhZG93OiAgICAgICAgMCAwIDAgMXB4ICRib2R5LWJnLCAkaW5wdXQtZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcbiRmb3JtLXJhbmdlLXRodW1iLWZvY3VzLWJveC1zaGFkb3ctd2lkdGg6ICAkaW5wdXQtZm9jdXMtd2lkdGggIWRlZmF1bHQ7IC8vIEZvciBmb2N1cyBib3ggc2hhZG93IGlzc3VlIGluIEVkZ2VcbiRmb3JtLXJhbmdlLXRodW1iLWFjdGl2ZS1iZzogICAgICAgICAgICAgICB0aW50LWNvbG9yKCRjb21wb25lbnQtYWN0aXZlLWJnLCA3MCUpICFkZWZhdWx0O1xuJGZvcm0tcmFuZ2UtdGh1bWItZGlzYWJsZWQtYmc6ICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1zZWNvbmRhcnktY29sb3IpICFkZWZhdWx0O1xuJGZvcm0tcmFuZ2UtdGh1bWItdHJhbnNpdGlvbjogICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm9yZGVyLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJveC1zaGFkb3cgLjE1cyBlYXNlLWluLW91dCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZm9ybS1yYW5nZS12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGZvcm0tZmlsZS12YXJpYWJsZXNcbiRmb3JtLWZpbGUtYnV0dG9uLWNvbG9yOiAgICAgICAgICAkaW5wdXQtY29sb3IgIWRlZmF1bHQ7XG4kZm9ybS1maWxlLWJ1dHRvbi1iZzogICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fXRlcnRpYXJ5LWJnKSAhZGVmYXVsdDtcbiRmb3JtLWZpbGUtYnV0dG9uLWhvdmVyLWJnOiAgICAgICB2YXIoLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWJnKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZm9ybS1maWxlLXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZm9ybS1mbG9hdGluZy12YXJpYWJsZXNcbiRmb3JtLWZsb2F0aW5nLWhlaWdodDogICAgICAgICAgICAgICAgICBhZGQoMy41cmVtLCAkaW5wdXQtaGVpZ2h0LWJvcmRlcikgIWRlZmF1bHQ7XG4kZm9ybS1mbG9hdGluZy1saW5lLWhlaWdodDogICAgICAgICAgICAgMS4yNSAhZGVmYXVsdDtcbiRmb3JtLWZsb2F0aW5nLXBhZGRpbmcteDogICAgICAgICAgICAgICAkaW5wdXQtcGFkZGluZy14ICFkZWZhdWx0O1xuJGZvcm0tZmxvYXRpbmctcGFkZGluZy15OiAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kZm9ybS1mbG9hdGluZy1pbnB1dC1wYWRkaW5nLXQ6ICAgICAgICAgMS42MjVyZW0gIWRlZmF1bHQ7XG4kZm9ybS1mbG9hdGluZy1pbnB1dC1wYWRkaW5nLWI6ICAgICAgICAgLjYyNXJlbSAhZGVmYXVsdDtcbiRmb3JtLWZsb2F0aW5nLWxhYmVsLWhlaWdodDogICAgICAgICAgICAxLjVlbSAhZGVmYXVsdDtcbiRmb3JtLWZsb2F0aW5nLWxhYmVsLW9wYWNpdHk6ICAgICAgICAgICAuNjUgIWRlZmF1bHQ7XG4kZm9ybS1mbG9hdGluZy1sYWJlbC10cmFuc2Zvcm06ICAgICAgICAgc2NhbGUoLjg1KSB0cmFuc2xhdGVZKC0uNXJlbSkgdHJhbnNsYXRlWCguMTVyZW0pICFkZWZhdWx0O1xuJGZvcm0tZmxvYXRpbmctbGFiZWwtZGlzYWJsZWQtY29sb3I6ICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRmb3JtLWZsb2F0aW5nLXRyYW5zaXRpb246ICAgICAgICAgICAgICBvcGFjaXR5IC4xcyBlYXNlLWluLW91dCwgdHJhbnNmb3JtIC4xcyBlYXNlLWluLW91dCAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZm9ybS1mbG9hdGluZy12YXJpYWJsZXNcblxuLy8gRm9ybSB2YWxpZGF0aW9uXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb3JtLWZlZWRiYWNrLXZhcmlhYmxlc1xuJGZvcm0tZmVlZGJhY2stbWFyZ2luLXRvcDogICAgICAgICAgJGZvcm0tdGV4dC1tYXJnaW4tdG9wICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stZm9udC1zaXplOiAgICAgICAgICAgJGZvcm0tdGV4dC1mb250LXNpemUgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay1mb250LXN0eWxlOiAgICAgICAgICAkZm9ybS10ZXh0LWZvbnQtc3R5bGUgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay12YWxpZC1jb2xvcjogICAgICAgICAkc3VjY2VzcyAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLWludmFsaWQtY29sb3I6ICAgICAgICRkYW5nZXIgIWRlZmF1bHQ7XG5cbiRmb3JtLWZlZWRiYWNrLWljb24tdmFsaWQtY29sb3I6ICAgICRmb3JtLWZlZWRiYWNrLXZhbGlkLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2staWNvbi12YWxpZDogICAgICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgOCA4Jz48cGF0aCBmaWxsPScjeyRmb3JtLWZlZWRiYWNrLWljb24tdmFsaWQtY29sb3J9JyBkPSdNMi4zIDYuNzMuNiA0LjUzYy0uNC0xLjA0LjQ2LTEuNCAxLjEtLjhsMS4xIDEuNCAzLjQtMy44Yy42LS42MyAxLjYtLjI3IDEuMi43bC00IDQuNmMtLjQzLjUtLjguNC0xLjEuMXonLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay1pY29uLWludmFsaWQtY29sb3I6ICAkZm9ybS1mZWVkYmFjay1pbnZhbGlkLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2staWNvbi1pbnZhbGlkOiAgICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMTIgMTInIHdpZHRoPScxMicgaGVpZ2h0PScxMicgZmlsbD0nbm9uZScgc3Ryb2tlPScjeyRmb3JtLWZlZWRiYWNrLWljb24taW52YWxpZC1jb2xvcn0nPjxjaXJjbGUgY3g9JzYnIGN5PSc2JyByPSc0LjUnLz48cGF0aCBzdHJva2UtbGluZWpvaW49J3JvdW5kJyBkPSdNNS44IDMuNmguNEw2IDYuNXonLz48Y2lyY2xlIGN4PSc2JyBjeT0nOC4yJyByPScuNicgZmlsbD0nI3skZm9ybS1mZWVkYmFjay1pY29uLWludmFsaWQtY29sb3J9JyBzdHJva2U9J25vbmUnLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGZvcm0tZmVlZGJhY2stdmFyaWFibGVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmb3JtLXZhbGlkYXRpb24tY29sb3JzXG4kZm9ybS12YWxpZC1jb2xvcjogICAgICAgICAgICAgICAgICAkZm9ybS1mZWVkYmFjay12YWxpZC1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLXZhbGlkLWJvcmRlci1jb2xvcjogICAgICAgICAgICRmb3JtLWZlZWRiYWNrLXZhbGlkLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0taW52YWxpZC1jb2xvcjogICAgICAgICAgICAgICAgJGZvcm0tZmVlZGJhY2staW52YWxpZC1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLWludmFsaWQtYm9yZGVyLWNvbG9yOiAgICAgICAgICRmb3JtLWZlZWRiYWNrLWludmFsaWQtY29sb3IgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGZvcm0tdmFsaWRhdGlvbi1jb2xvcnNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGZvcm0tdmFsaWRhdGlvbi1zdGF0ZXNcbiRmb3JtLXZhbGlkYXRpb24tc3RhdGVzOiAoXG4gIFwidmFsaWRcIjogKFxuICAgIFwiY29sb3JcIjogdmFyKC0tI3skcHJlZml4fWZvcm0tdmFsaWQtY29sb3IpLFxuICAgIFwiaWNvblwiOiAkZm9ybS1mZWVkYmFjay1pY29uLXZhbGlkLFxuICAgIFwidG9vbHRpcC1jb2xvclwiOiAjZmZmLFxuICAgIFwidG9vbHRpcC1iZy1jb2xvclwiOiB2YXIoLS0jeyRwcmVmaXh9c3VjY2VzcyksXG4gICAgXCJmb2N1cy1ib3gtc2hhZG93XCI6IDAgMCAkaW5wdXQtYnRuLWZvY3VzLWJsdXIgJGlucHV0LWZvY3VzLXdpZHRoIHJnYmEodmFyKC0tI3skcHJlZml4fXN1Y2Nlc3MtcmdiKSwgJGlucHV0LWJ0bi1mb2N1cy1jb2xvci1vcGFjaXR5KSxcbiAgICBcImJvcmRlci1jb2xvclwiOiB2YXIoLS0jeyRwcmVmaXh9Zm9ybS12YWxpZC1ib3JkZXItY29sb3IpLFxuICApLFxuICBcImludmFsaWRcIjogKFxuICAgIFwiY29sb3JcIjogdmFyKC0tI3skcHJlZml4fWZvcm0taW52YWxpZC1jb2xvciksXG4gICAgXCJpY29uXCI6ICRmb3JtLWZlZWRiYWNrLWljb24taW52YWxpZCxcbiAgICBcInRvb2x0aXAtY29sb3JcIjogI2ZmZixcbiAgICBcInRvb2x0aXAtYmctY29sb3JcIjogdmFyKC0tI3skcHJlZml4fWRhbmdlciksXG4gICAgXCJmb2N1cy1ib3gtc2hhZG93XCI6IDAgMCAkaW5wdXQtYnRuLWZvY3VzLWJsdXIgJGlucHV0LWZvY3VzLXdpZHRoIHJnYmEodmFyKC0tI3skcHJlZml4fWRhbmdlci1yZ2IpLCAkaW5wdXQtYnRuLWZvY3VzLWNvbG9yLW9wYWNpdHkpLFxuICAgIFwiYm9yZGVyLWNvbG9yXCI6IHZhcigtLSN7JHByZWZpeH1mb3JtLWludmFsaWQtYm9yZGVyLWNvbG9yKSxcbiAgKVxuKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgZm9ybS12YWxpZGF0aW9uLXN0YXRlc1xuXG4vLyBaLWluZGV4IG1hc3RlciBsaXN0XG4vL1xuLy8gV2FybmluZzogQXZvaWQgY3VzdG9taXppbmcgdGhlc2UgdmFsdWVzLiBUaGV5J3JlIHVzZWQgZm9yIGEgYmlyZCdzIGV5ZSB2aWV3XG4vLyBvZiBjb21wb25lbnRzIGRlcGVuZGVudCBvbiB0aGUgei1heGlzIGFuZCBhcmUgZGVzaWduZWQgdG8gYWxsIHdvcmsgdG9nZXRoZXIuXG5cbi8vIHNjc3MtZG9jcy1zdGFydCB6aW5kZXgtc3RhY2tcbiR6aW5kZXgtZHJvcGRvd246ICAgICAgICAgICAgICAgICAgIDEwMDAgIWRlZmF1bHQ7XG4kemluZGV4LXN0aWNreTogICAgICAgICAgICAgICAgICAgICAxMDIwICFkZWZhdWx0O1xuJHppbmRleC1maXhlZDogICAgICAgICAgICAgICAgICAgICAgMTAzMCAhZGVmYXVsdDtcbiR6aW5kZXgtb2ZmY2FudmFzLWJhY2tkcm9wOiAgICAgICAgIDEwNDAgIWRlZmF1bHQ7XG4kemluZGV4LW9mZmNhbnZhczogICAgICAgICAgICAgICAgICAxMDQ1ICFkZWZhdWx0O1xuJHppbmRleC1tb2RhbC1iYWNrZHJvcDogICAgICAgICAgICAgMTA1MCAhZGVmYXVsdDtcbiR6aW5kZXgtbW9kYWw6ICAgICAgICAgICAgICAgICAgICAgIDEwNTUgIWRlZmF1bHQ7XG4kemluZGV4LXBvcG92ZXI6ICAgICAgICAgICAgICAgICAgICAxMDcwICFkZWZhdWx0O1xuJHppbmRleC10b29sdGlwOiAgICAgICAgICAgICAgICAgICAgMTA4MCAhZGVmYXVsdDtcbiR6aW5kZXgtdG9hc3Q6ICAgICAgICAgICAgICAgICAgICAgIDEwOTAgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHppbmRleC1zdGFja1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgemluZGV4LWxldmVscy1tYXBcbiR6aW5kZXgtbGV2ZWxzOiAoXG4gIG4xOiAtMSxcbiAgMDogMCxcbiAgMTogMSxcbiAgMjogMixcbiAgMzogM1xuKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgemluZGV4LWxldmVscy1tYXBcblxuXG4vLyBOYXZzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBuYXYtdmFyaWFibGVzXG4kbmF2LWxpbmstcGFkZGluZy15OiAgICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRuYXYtbGluay1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kbmF2LWxpbmstZm9udC1zaXplOiAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJG5hdi1saW5rLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRuYXYtbGluay1jb2xvcjogICAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1saW5rLWNvbG9yKSAhZGVmYXVsdDtcbiRuYXYtbGluay1ob3Zlci1jb2xvcjogICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1saW5rLWhvdmVyLWNvbG9yKSAhZGVmYXVsdDtcbiRuYXYtbGluay10cmFuc2l0aW9uOiAgICAgICAgICAgICAgIGNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm9yZGVyLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG4kbmF2LWxpbmstZGlzYWJsZWQtY29sb3I6ICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWNvbG9yKSAhZGVmYXVsdDtcbiRuYXYtbGluay1mb2N1cy1ib3gtc2hhZG93OiAgICAgICAgICRmb2N1cy1yaW5nLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG5cbiRuYXYtdGFicy1ib3JkZXItY29sb3I6ICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItY29sb3IpICFkZWZhdWx0O1xuJG5hdi10YWJzLWJvcmRlci13aWR0aDogICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtYm9yZGVyLXJhZGl1czogICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cykgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtbGluay1ob3Zlci1ib3JkZXItY29sb3I6ICB2YXIoLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWJnKSB2YXIoLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWJnKSAkbmF2LXRhYnMtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJG5hdi10YWJzLWxpbmstYWN0aXZlLWNvbG9yOiAgICAgICAgdmFyKC0tI3skcHJlZml4fWVtcGhhc2lzLWNvbG9yKSAhZGVmYXVsdDtcbiRuYXYtdGFicy1saW5rLWFjdGl2ZS1iZzogICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib2R5LWJnKSAhZGVmYXVsdDtcbiRuYXYtdGFicy1saW5rLWFjdGl2ZS1ib3JkZXItY29sb3I6IHZhcigtLSN7JHByZWZpeH1ib3JkZXItY29sb3IpIHZhcigtLSN7JHByZWZpeH1ib3JkZXItY29sb3IpICRuYXYtdGFicy1saW5rLWFjdGl2ZS1iZyAhZGVmYXVsdDtcblxuJG5hdi1waWxscy1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMpICFkZWZhdWx0O1xuJG5hdi1waWxscy1saW5rLWFjdGl2ZS1jb2xvcjogICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kbmF2LXBpbGxzLWxpbmstYWN0aXZlLWJnOiAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcblxuJG5hdi11bmRlcmxpbmUtZ2FwOiAgICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRuYXYtdW5kZXJsaW5lLWJvcmRlci13aWR0aDogICAgICAgIC4xMjVyZW0gIWRlZmF1bHQ7XG4kbmF2LXVuZGVybGluZS1saW5rLWFjdGl2ZS1jb2xvcjogICB2YXIoLS0jeyRwcmVmaXh9ZW1waGFzaXMtY29sb3IpICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBuYXYtdmFyaWFibGVzXG5cblxuLy8gTmF2YmFyXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBuYXZiYXItdmFyaWFibGVzXG4kbmF2YmFyLXBhZGRpbmcteTogICAgICAgICAgICAgICAgICAkc3BhY2VyICogLjUgIWRlZmF1bHQ7XG4kbmF2YmFyLXBhZGRpbmcteDogICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuXG4kbmF2YmFyLW5hdi1saW5rLXBhZGRpbmcteDogICAgICAgICAuNXJlbSAhZGVmYXVsdDtcblxuJG5hdmJhci1icmFuZC1mb250LXNpemU6ICAgICAgICAgICAgJGZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcbi8vIENvbXB1dGUgdGhlIG5hdmJhci1icmFuZCBwYWRkaW5nLXkgc28gdGhlIG5hdmJhci1icmFuZCB3aWxsIGhhdmUgdGhlIHNhbWUgaGVpZ2h0IGFzIG5hdmJhci10ZXh0IGFuZCBuYXYtbGlua1xuJG5hdi1saW5rLWhlaWdodDogICAgICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogJGxpbmUtaGVpZ2h0LWJhc2UgKyAkbmF2LWxpbmstcGFkZGluZy15ICogMiAhZGVmYXVsdDtcbiRuYXZiYXItYnJhbmQtaGVpZ2h0OiAgICAgICAgICAgICAgICRuYXZiYXItYnJhbmQtZm9udC1zaXplICogJGxpbmUtaGVpZ2h0LWJhc2UgIWRlZmF1bHQ7XG4kbmF2YmFyLWJyYW5kLXBhZGRpbmcteTogICAgICAgICAgICAoJG5hdi1saW5rLWhlaWdodCAtICRuYXZiYXItYnJhbmQtaGVpZ2h0KSAqIC41ICFkZWZhdWx0O1xuJG5hdmJhci1icmFuZC1tYXJnaW4tZW5kOiAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcblxuJG5hdmJhci10b2dnbGVyLXBhZGRpbmcteTogICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJG5hdmJhci10b2dnbGVyLXBhZGRpbmcteDogICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJG5hdmJhci10b2dnbGVyLWZvbnQtc2l6ZTogICAgICAgICAgJGZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcbiRuYXZiYXItdG9nZ2xlci1ib3JkZXItcmFkaXVzOiAgICAgICRidG4tYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRuYXZiYXItdG9nZ2xlci1mb2N1cy13aWR0aDogICAgICAgICRidG4tZm9jdXMtd2lkdGggIWRlZmF1bHQ7XG4kbmF2YmFyLXRvZ2dsZXItdHJhbnNpdGlvbjogICAgICAgICBib3gtc2hhZG93IC4xNXMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG5cbiRuYXZiYXItbGlnaHQtY29sb3I6ICAgICAgICAgICAgICAgIHJnYmEodmFyKC0tI3skcHJlZml4fWVtcGhhc2lzLWNvbG9yLXJnYiksIC42NSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LWhvdmVyLWNvbG9yOiAgICAgICAgICByZ2JhKHZhcigtLSN7JHByZWZpeH1lbXBoYXNpcy1jb2xvci1yZ2IpLCAuOCkgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LWFjdGl2ZS1jb2xvcjogICAgICAgICByZ2JhKHZhcigtLSN7JHByZWZpeH1lbXBoYXNpcy1jb2xvci1yZ2IpLCAxKSAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtZGlzYWJsZWQtY29sb3I6ICAgICAgIHJnYmEodmFyKC0tI3skcHJlZml4fWVtcGhhc2lzLWNvbG9yLXJnYiksIC4zKSAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtaWNvbi1jb2xvcjogICAgICAgICAgIHJnYmEoJGJvZHktY29sb3IsIC43NSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LXRvZ2dsZXItaWNvbi1iZzogICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAzMCAzMCc+PHBhdGggc3Ryb2tlPScjeyRuYXZiYXItbGlnaHQtaWNvbi1jb2xvcn0nIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLW1pdGVybGltaXQ9JzEwJyBzdHJva2Utd2lkdGg9JzInIGQ9J000IDdoMjJNNCAxNWgyMk00IDIzaDIyJy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC10b2dnbGVyLWJvcmRlci1jb2xvcjogcmdiYSh2YXIoLS0jeyRwcmVmaXh9ZW1waGFzaXMtY29sb3ItcmdiKSwgLjE1KSAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtYnJhbmQtY29sb3I6ICAgICAgICAgICRuYXZiYXItbGlnaHQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC1icmFuZC1ob3Zlci1jb2xvcjogICAgJG5hdmJhci1saWdodC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIG5hdmJhci12YXJpYWJsZXNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IG5hdmJhci1kYXJrLXZhcmlhYmxlc1xuJG5hdmJhci1kYXJrLWNvbG9yOiAgICAgICAgICAgICAgICAgcmdiYSgkd2hpdGUsIC41NSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstaG92ZXItY29sb3I6ICAgICAgICAgICByZ2JhKCR3aGl0ZSwgLjc1KSAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay1hY3RpdmUtY29sb3I6ICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay1kaXNhYmxlZC1jb2xvcjogICAgICAgIHJnYmEoJHdoaXRlLCAuMjUpICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLXRvZ2dsZXItaWNvbi1iZzogICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMzAgMzAnPjxwYXRoIHN0cm9rZT0nI3skbmF2YmFyLWRhcmstY29sb3J9JyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1taXRlcmxpbWl0PScxMCcgc3Ryb2tlLXdpZHRoPScyJyBkPSdNNCA3aDIyTTQgMTVoMjJNNCAyM2gyMicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay10b2dnbGVyLWJvcmRlci1jb2xvcjogIHJnYmEoJHdoaXRlLCAuMSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstYnJhbmQtY29sb3I6ICAgICAgICAgICAkbmF2YmFyLWRhcmstYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLWJyYW5kLWhvdmVyLWNvbG9yOiAgICAgJG5hdmJhci1kYXJrLWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgbmF2YmFyLWRhcmstdmFyaWFibGVzXG5cblxuLy8gRHJvcGRvd25zXG4vL1xuLy8gRHJvcGRvd24gbWVudSBjb250YWluZXIgYW5kIGNvbnRlbnRzLlxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZHJvcGRvd24tdmFyaWFibGVzXG4kZHJvcGRvd24tbWluLXdpZHRoOiAgICAgICAgICAgICAgICAxMHJlbSAhZGVmYXVsdDtcbiRkcm9wZG93bi1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgIDAgIWRlZmF1bHQ7XG4kZHJvcGRvd24tcGFkZGluZy15OiAgICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRkcm9wZG93bi1zcGFjZXI6ICAgICAgICAgICAgICAgICAgIC4xMjVyZW0gIWRlZmF1bHQ7XG4kZHJvcGRvd24tZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgIWRlZmF1bHQ7XG4kZHJvcGRvd24tY29sb3I6ICAgICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1jb2xvcikgIWRlZmF1bHQ7XG4kZHJvcGRvd24tYmc6ICAgICAgICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1iZykgIWRlZmF1bHQ7XG4kZHJvcGRvd24tYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yLXRyYW5zbHVjZW50KSAhZGVmYXVsdDtcbiRkcm9wZG93bi1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzKSAhZGVmYXVsdDtcbiRkcm9wZG93bi1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuJGRyb3Bkb3duLWlubmVyLWJvcmRlci1yYWRpdXM6ICAgICAgY2FsYygjeyRkcm9wZG93bi1ib3JkZXItcmFkaXVzfSAtICN7JGRyb3Bkb3duLWJvcmRlci13aWR0aH0pICFkZWZhdWx0OyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuJGRyb3Bkb3duLWRpdmlkZXItYmc6ICAgICAgICAgICAgICAgJGRyb3Bkb3duLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRkcm9wZG93bi1kaXZpZGVyLW1hcmdpbi15OiAgICAgICAgICRzcGFjZXIgKiAuNSAhZGVmYXVsdDtcbiRkcm9wZG93bi1ib3gtc2hhZG93OiAgICAgICAgICAgICAgICRib3gtc2hhZG93ICFkZWZhdWx0O1xuXG4kZHJvcGRvd24tbGluay1jb2xvcjogICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1jb2xvcikgIWRlZmF1bHQ7XG4kZHJvcGRvd24tbGluay1ob3Zlci1jb2xvcjogICAgICAgICAkZHJvcGRvd24tbGluay1jb2xvciAhZGVmYXVsdDtcbiRkcm9wZG93bi1saW5rLWhvdmVyLWJnOiAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH10ZXJ0aWFyeS1iZykgIWRlZmF1bHQ7XG5cbiRkcm9wZG93bi1saW5rLWFjdGl2ZS1jb2xvcjogICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJGRyb3Bkb3duLWxpbmstYWN0aXZlLWJnOiAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG5cbiRkcm9wZG93bi1saW5rLWRpc2FibGVkLWNvbG9yOiAgICAgIHZhcigtLSN7JHByZWZpeH10ZXJ0aWFyeS1jb2xvcikgIWRlZmF1bHQ7XG5cbiRkcm9wZG93bi1pdGVtLXBhZGRpbmcteTogICAgICAgICAgICRzcGFjZXIgKiAuMjUgIWRlZmF1bHQ7XG4kZHJvcGRvd24taXRlbS1wYWRkaW5nLXg6ICAgICAgICAgICAkc3BhY2VyICFkZWZhdWx0O1xuXG4kZHJvcGRvd24taGVhZGVyLWNvbG9yOiAgICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kZHJvcGRvd24taGVhZGVyLXBhZGRpbmcteDogICAgICAgICAkZHJvcGRvd24taXRlbS1wYWRkaW5nLXggIWRlZmF1bHQ7XG4kZHJvcGRvd24taGVhZGVyLXBhZGRpbmcteTogICAgICAgICAkZHJvcGRvd24tcGFkZGluZy15ICFkZWZhdWx0O1xuLy8gZnVzdi1kaXNhYmxlXG4kZHJvcGRvd24taGVhZGVyLXBhZGRpbmc6ICAgICAgICAgICAkZHJvcGRvd24taGVhZGVyLXBhZGRpbmcteSAkZHJvcGRvd24taGVhZGVyLXBhZGRpbmcteCAhZGVmYXVsdDsgLy8gRGVwcmVjYXRlZCBpbiB2NS4yLjBcbi8vIGZ1c3YtZW5hYmxlXG4vLyBzY3NzLWRvY3MtZW5kIGRyb3Bkb3duLXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgZHJvcGRvd24tZGFyay12YXJpYWJsZXNcbiRkcm9wZG93bi1kYXJrLWNvbG9yOiAgICAgICAgICAgICAgICRncmF5LTMwMCAhZGVmYXVsdDtcbiRkcm9wZG93bi1kYXJrLWJnOiAgICAgICAgICAgICAgICAgICRncmF5LTgwMCAhZGVmYXVsdDtcbiRkcm9wZG93bi1kYXJrLWJvcmRlci1jb2xvcjogICAgICAgICRkcm9wZG93bi1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kZHJvcGRvd24tZGFyay1kaXZpZGVyLWJnOiAgICAgICAgICAkZHJvcGRvd24tZGl2aWRlci1iZyAhZGVmYXVsdDtcbiRkcm9wZG93bi1kYXJrLWJveC1zaGFkb3c6ICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kZHJvcGRvd24tZGFyay1saW5rLWNvbG9yOiAgICAgICAgICAkZHJvcGRvd24tZGFyay1jb2xvciAhZGVmYXVsdDtcbiRkcm9wZG93bi1kYXJrLWxpbmstaG92ZXItY29sb3I6ICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRkcm9wZG93bi1kYXJrLWxpbmstaG92ZXItYmc6ICAgICAgIHJnYmEoJHdoaXRlLCAuMTUpICFkZWZhdWx0O1xuJGRyb3Bkb3duLWRhcmstbGluay1hY3RpdmUtY29sb3I6ICAgJGRyb3Bkb3duLWxpbmstYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJGRyb3Bkb3duLWRhcmstbGluay1hY3RpdmUtYmc6ICAgICAgJGRyb3Bkb3duLWxpbmstYWN0aXZlLWJnICFkZWZhdWx0O1xuJGRyb3Bkb3duLWRhcmstbGluay1kaXNhYmxlZC1jb2xvcjogJGdyYXktNTAwICFkZWZhdWx0O1xuJGRyb3Bkb3duLWRhcmstaGVhZGVyLWNvbG9yOiAgICAgICAgJGdyYXktNTAwICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBkcm9wZG93bi1kYXJrLXZhcmlhYmxlc1xuXG5cbi8vIFBhZ2luYXRpb25cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHBhZ2luYXRpb24tdmFyaWFibGVzXG4kcGFnaW5hdGlvbi1wYWRkaW5nLXk6ICAgICAgICAgICAgICAuMzc1cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy14OiAgICAgICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy15LXNtOiAgICAgICAgICAgLjI1cmVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy14LXNtOiAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1wYWRkaW5nLXktbGc6ICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1wYWRkaW5nLXgtbGc6ICAgICAgICAgICAxLjVyZW0gIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWZvbnQtc2l6ZTogICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tY29sb3I6ICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWxpbmstY29sb3IpICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYmc6ICAgICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvZHktYmcpICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYm9yZGVyLXJhZGl1czogICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMpICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYm9yZGVyLXdpZHRoOiAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1tYXJnaW4tc3RhcnQ6ICAgICAgICAgICBjYWxjKCN7JHBhZ2luYXRpb24tYm9yZGVyLXdpZHRofSAqIC0xKSAhZGVmYXVsdDsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiRwYWdpbmF0aW9uLWJvcmRlci1jb2xvcjogICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItY29sb3IpICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1mb2N1cy1jb2xvcjogICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9bGluay1ob3Zlci1jb2xvcikgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1mb2N1cy1iZzogICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWJnKSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWZvY3VzLWJveC1zaGFkb3c6ICAgICAgICRmb2N1cy1yaW5nLWJveC1zaGFkb3cgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1mb2N1cy1vdXRsaW5lOiAgICAgICAgICAwICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1ob3Zlci1jb2xvcjogICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9bGluay1ob3Zlci1jb2xvcikgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1ob3Zlci1iZzogICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9dGVydGlhcnktYmcpICFkZWZhdWx0O1xuJHBhZ2luYXRpb24taG92ZXItYm9yZGVyLWNvbG9yOiAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1jb2xvcikgIWRlZmF1bHQ7IC8vIFRvZG8gaW4gdjY6IHJlbW92ZSB0aGlzP1xuXG4kcGFnaW5hdGlvbi1hY3RpdmUtY29sb3I6ICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWFjdGl2ZS1iZzogICAgICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYWN0aXZlLWJvcmRlci1jb2xvcjogICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWRpc2FibGVkLWNvbG9yOiAgICAgICAgIHZhcigtLSN7JHByZWZpeH1zZWNvbmRhcnktY29sb3IpICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tZGlzYWJsZWQtYmc6ICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fXNlY29uZGFyeS1iZykgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1kaXNhYmxlZC1ib3JkZXItY29sb3I6ICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yKSAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tdHJhbnNpdGlvbjogICAgICAgICAgICAgIGNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm9yZGVyLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJveC1zaGFkb3cgLjE1cyBlYXNlLWluLW91dCAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tYm9yZGVyLXJhZGl1cy1zbTogICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMtc20pICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYm9yZGVyLXJhZGl1cy1sZzogICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMtbGcpICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBwYWdpbmF0aW9uLXZhcmlhYmxlc1xuXG5cbi8vIFBsYWNlaG9sZGVyc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgcGxhY2Vob2xkZXJzXG4kcGxhY2Vob2xkZXItb3BhY2l0eS1tYXg6ICAgICAgICAgICAuNSAhZGVmYXVsdDtcbiRwbGFjZWhvbGRlci1vcGFjaXR5LW1pbjogICAgICAgICAgIC4yICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBwbGFjZWhvbGRlcnNcblxuLy8gQ2FyZHNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGNhcmQtdmFyaWFibGVzXG4kY2FyZC1zcGFjZXIteTogICAgICAgICAgICAgICAgICAgICAkc3BhY2VyICFkZWZhdWx0O1xuJGNhcmQtc3BhY2VyLXg6ICAgICAgICAgICAgICAgICAgICAgJHNwYWNlciAhZGVmYXVsdDtcbiRjYXJkLXRpdGxlLXNwYWNlci15OiAgICAgICAgICAgICAgICRzcGFjZXIgKiAuNSAhZGVmYXVsdDtcbiRjYXJkLXRpdGxlLWNvbG9yOiAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kY2FyZC1zdWJ0aXRsZS1jb2xvcjogICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGNhcmQtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG4kY2FyZC1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yLXRyYW5zbHVjZW50KSAhZGVmYXVsdDtcbiRjYXJkLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzKSAhZGVmYXVsdDtcbiRjYXJkLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzOiAgICAgICAgICBzdWJ0cmFjdCgkY2FyZC1ib3JkZXItcmFkaXVzLCAkY2FyZC1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuJGNhcmQtY2FwLXBhZGRpbmcteTogICAgICAgICAgICAgICAgJGNhcmQtc3BhY2VyLXkgKiAuNSAhZGVmYXVsdDtcbiRjYXJkLWNhcC1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICRjYXJkLXNwYWNlci14ICFkZWZhdWx0O1xuJGNhcmQtY2FwLWJnOiAgICAgICAgICAgICAgICAgICAgICAgcmdiYSh2YXIoLS0jeyRwcmVmaXh9Ym9keS1jb2xvci1yZ2IpLCAuMDMpICFkZWZhdWx0O1xuJGNhcmQtY2FwLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRjYXJkLWhlaWdodDogICAgICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kY2FyZC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGNhcmQtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvZHktYmcpICFkZWZhdWx0O1xuJGNhcmQtaW1nLW92ZXJsYXktcGFkZGluZzogICAgICAgICAgJHNwYWNlciAhZGVmYXVsdDtcbiRjYXJkLWdyb3VwLW1hcmdpbjogICAgICAgICAgICAgICAgICRncmlkLWd1dHRlci13aWR0aCAqIC41ICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBjYXJkLXZhcmlhYmxlc1xuXG4vLyBBY2NvcmRpb25cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGFjY29yZGlvbi12YXJpYWJsZXNcbiRhY2NvcmRpb24tcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLXBhZGRpbmcteDogICAgICAgICAgICAgICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xuJGFjY29yZGlvbi1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvZHktY29sb3IpICFkZWZhdWx0O1xuJGFjY29yZGlvbi1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvZHktYmcpICFkZWZhdWx0O1xuJGFjY29yZGlvbi1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yKSAhZGVmYXVsdDtcbiRhY2NvcmRpb24tYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzKSAhZGVmYXVsdDtcbiRhY2NvcmRpb24taW5uZXItYm9yZGVyLXJhZGl1czogICAgICAgICAgIHN1YnRyYWN0KCRhY2NvcmRpb24tYm9yZGVyLXJhZGl1cywgJGFjY29yZGlvbi1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuXG4kYWNjb3JkaW9uLWJvZHktcGFkZGluZy15OiAgICAgICAgICAgICAgICAkYWNjb3JkaW9uLXBhZGRpbmcteSAhZGVmYXVsdDtcbiRhY2NvcmRpb24tYm9keS1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICRhY2NvcmRpb24tcGFkZGluZy14ICFkZWZhdWx0O1xuXG4kYWNjb3JkaW9uLWJ1dHRvbi1wYWRkaW5nLXk6ICAgICAgICAgICAgICAkYWNjb3JkaW9uLXBhZGRpbmcteSAhZGVmYXVsdDtcbiRhY2NvcmRpb24tYnV0dG9uLXBhZGRpbmcteDogICAgICAgICAgICAgICRhY2NvcmRpb24tcGFkZGluZy14ICFkZWZhdWx0O1xuJGFjY29yZGlvbi1idXR0b24tY29sb3I6ICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvZHktY29sb3IpICFkZWZhdWx0O1xuJGFjY29yZGlvbi1idXR0b24tYmc6ICAgICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1iZykgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLXRyYW5zaXRpb246ICAgICAgICAgICAgICAgICAgICAkYnRuLXRyYW5zaXRpb24sIGJvcmRlci1yYWRpdXMgLjE1cyBlYXNlICFkZWZhdWx0O1xuJGFjY29yZGlvbi1idXR0b24tYWN0aXZlLWJnOiAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fXByaW1hcnktYmctc3VidGxlKSAhZGVmYXVsdDtcbiRhY2NvcmRpb24tYnV0dG9uLWFjdGl2ZS1jb2xvcjogICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1wcmltYXJ5LXRleHQtZW1waGFzaXMpICFkZWZhdWx0O1xuXG4kYWNjb3JkaW9uLWJ1dHRvbi1mb2N1cy1ib3JkZXItY29sb3I6ICAgICAkaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJGFjY29yZGlvbi1idXR0b24tZm9jdXMtYm94LXNoYWRvdzogICAgICAgJGJ0bi1mb2N1cy1ib3gtc2hhZG93ICFkZWZhdWx0O1xuXG4kYWNjb3JkaW9uLWljb24td2lkdGg6ICAgICAgICAgICAgICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xuJGFjY29yZGlvbi1pY29uLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgJGJvZHktY29sb3IgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLWljb24tYWN0aXZlLWNvbG9yOiAgICAgICAgICAgICAkcHJpbWFyeS10ZXh0LWVtcGhhc2lzICFkZWZhdWx0O1xuJGFjY29yZGlvbi1pY29uLXRyYW5zaXRpb246ICAgICAgICAgICAgICAgdHJhbnNmb3JtIC4ycyBlYXNlLWluLW91dCAhZGVmYXVsdDtcbiRhY2NvcmRpb24taWNvbi10cmFuc2Zvcm06ICAgICAgICAgICAgICAgIHJvdGF0ZSgtMTgwZGVnKSAhZGVmYXVsdDtcblxuJGFjY29yZGlvbi1idXR0b24taWNvbjogICAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAxNiAxNicgZmlsbD0nI3skYWNjb3JkaW9uLWljb24tY29sb3J9Jz48cGF0aCBmaWxsLXJ1bGU9J2V2ZW5vZGQnIGQ9J00xLjY0NiA0LjY0NmEuNS41IDAgMCAxIC43MDggMEw4IDEwLjI5M2w1LjY0Ni01LjY0N2EuNS41IDAgMCAxIC43MDguNzA4bC02IDZhLjUuNSAwIDAgMS0uNzA4IDBsLTYtNmEuNS41IDAgMCAxIDAtLjcwOHonLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLWJ1dHRvbi1hY3RpdmUtaWNvbjogIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDE2IDE2JyBmaWxsPScjeyRhY2NvcmRpb24taWNvbi1hY3RpdmUtY29sb3J9Jz48cGF0aCBmaWxsLXJ1bGU9J2V2ZW5vZGQnIGQ9J00xLjY0NiA0LjY0NmEuNS41IDAgMCAxIC43MDggMEw4IDEwLjI5M2w1LjY0Ni01LjY0N2EuNS41IDAgMCAxIC43MDguNzA4bC02IDZhLjUuNSAwIDAgMS0uNzA4IDBsLTYtNmEuNS41IDAgMCAxIDAtLjcwOHonLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGFjY29yZGlvbi12YXJpYWJsZXNcblxuLy8gVG9vbHRpcHNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHRvb2x0aXAtdmFyaWFibGVzXG4kdG9vbHRpcC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAkZm9udC1zaXplLXNtICFkZWZhdWx0O1xuJHRvb2x0aXAtbWF4LXdpZHRoOiAgICAgICAgICAgICAgICAgMjAwcHggIWRlZmF1bHQ7XG4kdG9vbHRpcC1jb2xvcjogICAgICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1iZykgIWRlZmF1bHQ7XG4kdG9vbHRpcC1iZzogICAgICAgICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9ZW1waGFzaXMtY29sb3IpICFkZWZhdWx0O1xuJHRvb2x0aXAtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMpICFkZWZhdWx0O1xuJHRvb2x0aXAtb3BhY2l0eTogICAgICAgICAgICAgICAgICAgLjkgIWRlZmF1bHQ7XG4kdG9vbHRpcC1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAkc3BhY2VyICogLjI1ICFkZWZhdWx0O1xuJHRvb2x0aXAtcGFkZGluZy14OiAgICAgICAgICAgICAgICAgJHNwYWNlciAqIC41ICFkZWZhdWx0O1xuJHRvb2x0aXAtbWFyZ2luOiAgICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDsgLy8gVE9ETzogcmVtb3ZlIHRoaXMgaW4gdjZcblxuJHRvb2x0aXAtYXJyb3ctd2lkdGg6ICAgICAgICAgICAgICAgLjhyZW0gIWRlZmF1bHQ7XG4kdG9vbHRpcC1hcnJvdy1oZWlnaHQ6ICAgICAgICAgICAgICAuNHJlbSAhZGVmYXVsdDtcbi8vIGZ1c3YtZGlzYWJsZVxuJHRvb2x0aXAtYXJyb3ctY29sb3I6ICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDsgLy8gRGVwcmVjYXRlZCBpbiBCb290c3RyYXAgNS4yLjAgZm9yIENTUyB2YXJpYWJsZXNcbi8vIGZ1c3YtZW5hYmxlXG4vLyBzY3NzLWRvY3MtZW5kIHRvb2x0aXAtdmFyaWFibGVzXG5cbi8vIEZvcm0gdG9vbHRpcHMgbXVzdCBjb21lIGFmdGVyIHJlZ3VsYXIgdG9vbHRpcHNcbi8vIHNjc3MtZG9jcy1zdGFydCB0b29sdGlwLWZlZWRiYWNrLXZhcmlhYmxlc1xuJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1wYWRkaW5nLXk6ICAgICAkdG9vbHRpcC1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay10b29sdGlwLXBhZGRpbmcteDogICAgICR0b29sdGlwLXBhZGRpbmcteCAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtZm9udC1zaXplOiAgICAgJHRvb2x0aXAtZm9udC1zaXplICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1saW5lLWhlaWdodDogICBudWxsICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1vcGFjaXR5OiAgICAgICAkdG9vbHRpcC1vcGFjaXR5ICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1ib3JkZXItcmFkaXVzOiAkdG9vbHRpcC1ib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCB0b29sdGlwLWZlZWRiYWNrLXZhcmlhYmxlc1xuXG5cbi8vIFBvcG92ZXJzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBwb3BvdmVyLXZhcmlhYmxlc1xuJHBvcG92ZXItZm9udC1zaXplOiAgICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcbiRwb3BvdmVyLWJnOiAgICAgICAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib2R5LWJnKSAhZGVmYXVsdDtcbiRwb3BvdmVyLW1heC13aWR0aDogICAgICAgICAgICAgICAgIDI3NnB4ICFkZWZhdWx0O1xuJHBvcG92ZXItYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG4kcG9wb3Zlci1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yLXRyYW5zbHVjZW50KSAhZGVmYXVsdDtcbiRwb3BvdmVyLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzLWxnKSAhZGVmYXVsdDtcbiRwb3BvdmVyLWlubmVyLWJvcmRlci1yYWRpdXM6ICAgICAgIGNhbGMoI3skcG9wb3Zlci1ib3JkZXItcmFkaXVzfSAtICN7JHBvcG92ZXItYm9yZGVyLXdpZHRofSkgIWRlZmF1bHQ7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4kcG9wb3Zlci1ib3gtc2hhZG93OiAgICAgICAgICAgICAgICAkYm94LXNoYWRvdyAhZGVmYXVsdDtcblxuJHBvcG92ZXItaGVhZGVyLWZvbnQtc2l6ZTogICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICFkZWZhdWx0O1xuJHBvcG92ZXItaGVhZGVyLWJnOiAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fXNlY29uZGFyeS1iZykgIWRlZmF1bHQ7XG4kcG9wb3Zlci1oZWFkZXItY29sb3I6ICAgICAgICAgICAgICAkaGVhZGluZ3MtY29sb3IgIWRlZmF1bHQ7XG4kcG9wb3Zlci1oZWFkZXItcGFkZGluZy15OiAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRwb3BvdmVyLWhlYWRlci1wYWRkaW5nLXg6ICAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XG5cbiRwb3BvdmVyLWJvZHktY29sb3I6ICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib2R5LWNvbG9yKSAhZGVmYXVsdDtcbiRwb3BvdmVyLWJvZHktcGFkZGluZy15OiAgICAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XG4kcG9wb3Zlci1ib2R5LXBhZGRpbmcteDogICAgICAgICAgICAkc3BhY2VyICFkZWZhdWx0O1xuXG4kcG9wb3Zlci1hcnJvdy13aWR0aDogICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJHBvcG92ZXItYXJyb3ctaGVpZ2h0OiAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHBvcG92ZXItdmFyaWFibGVzXG5cbi8vIGZ1c3YtZGlzYWJsZVxuLy8gRGVwcmVjYXRlZCBpbiBCb290c3RyYXAgNS4yLjAgZm9yIENTUyB2YXJpYWJsZXNcbiRwb3BvdmVyLWFycm93LWNvbG9yOiAgICAgICAgICAgICAgICRwb3BvdmVyLWJnICFkZWZhdWx0O1xuJHBvcG92ZXItYXJyb3ctb3V0ZXItY29sb3I6ICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1jb2xvci10cmFuc2x1Y2VudCkgIWRlZmF1bHQ7XG4vLyBmdXN2LWVuYWJsZVxuXG5cbi8vIFRvYXN0c1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgdG9hc3QtdmFyaWFibGVzXG4kdG9hc3QtbWF4LXdpZHRoOiAgICAgICAgICAgICAgICAgICAzNTBweCAhZGVmYXVsdDtcbiR0b2FzdC1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiR0b2FzdC1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJHRvYXN0LWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgLjg3NXJlbSAhZGVmYXVsdDtcbiR0b2FzdC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kdG9hc3QtYmFja2dyb3VuZC1jb2xvcjogICAgICAgICAgICByZ2JhKHZhcigtLSN7JHByZWZpeH1ib2R5LWJnLXJnYiksIC44NSkgIWRlZmF1bHQ7XG4kdG9hc3QtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXdpZHRoKSAhZGVmYXVsdDtcbiR0b2FzdC1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItY29sb3ItdHJhbnNsdWNlbnQpICFkZWZhdWx0O1xuJHRvYXN0LWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMpICFkZWZhdWx0O1xuJHRvYXN0LWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJveC1zaGFkb3cpICFkZWZhdWx0O1xuJHRvYXN0LXNwYWNpbmc6ICAgICAgICAgICAgICAgICAgICAgJGNvbnRhaW5lci1wYWRkaW5nLXggIWRlZmF1bHQ7XG5cbiR0b2FzdC1oZWFkZXItY29sb3I6ICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1zZWNvbmRhcnktY29sb3IpICFkZWZhdWx0O1xuJHRvYXN0LWhlYWRlci1iYWNrZ3JvdW5kLWNvbG9yOiAgICAgcmdiYSh2YXIoLS0jeyRwcmVmaXh9Ym9keS1iZy1yZ2IpLCAuODUpICFkZWZhdWx0O1xuJHRvYXN0LWhlYWRlci1ib3JkZXItY29sb3I6ICAgICAgICAgJHRvYXN0LWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgdG9hc3QtdmFyaWFibGVzXG5cblxuLy8gQmFkZ2VzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBiYWRnZS12YXJpYWJsZXNcbiRiYWRnZS1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgIC43NWVtICFkZWZhdWx0O1xuJGJhZGdlLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG4kYmFkZ2UtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kYmFkZ2UtcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICAuMzVlbSAhZGVmYXVsdDtcbiRiYWRnZS1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgIC42NWVtICFkZWZhdWx0O1xuJGJhZGdlLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMpICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBiYWRnZS12YXJpYWJsZXNcblxuXG4vLyBNb2RhbHNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IG1vZGFsLXZhcmlhYmxlc1xuJG1vZGFsLWlubmVyLXBhZGRpbmc6ICAgICAgICAgICAgICAgJHNwYWNlciAhZGVmYXVsdDtcblxuJG1vZGFsLWZvb3Rlci1tYXJnaW4tYmV0d2VlbjogICAgICAgLjVyZW0gIWRlZmF1bHQ7XG5cbiRtb2RhbC1kaWFsb2ctbWFyZ2luOiAgICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJG1vZGFsLWRpYWxvZy1tYXJnaW4teS1zbS11cDogICAgICAgMS43NXJlbSAhZGVmYXVsdDtcblxuJG1vZGFsLXRpdGxlLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgJGxpbmUtaGVpZ2h0LWJhc2UgIWRlZmF1bHQ7XG5cbiRtb2RhbC1jb250ZW50LWNvbG9yOiAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1iZzogICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1iZykgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1ib3JkZXItY29sb3I6ICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yLXRyYW5zbHVjZW50KSAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWJvcmRlci13aWR0aDogICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXJhZGl1czogICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMtbGcpICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtaW5uZXItYm9yZGVyLXJhZGl1czogc3VidHJhY3QoJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXJhZGl1cywgJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXdpZHRoKSAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWJveC1zaGFkb3cteHM6ICAgICAgICRib3gtc2hhZG93LXNtICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtYm94LXNoYWRvdy1zbS11cDogICAgJGJveC1zaGFkb3cgIWRlZmF1bHQ7XG5cbiRtb2RhbC1iYWNrZHJvcC1iZzogICAgICAgICAgICAgICAgICRibGFjayAhZGVmYXVsdDtcbiRtb2RhbC1iYWNrZHJvcC1vcGFjaXR5OiAgICAgICAgICAgIC41ICFkZWZhdWx0O1xuXG4kbW9kYWwtaGVhZGVyLWJvcmRlci1jb2xvcjogICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLWNvbG9yKSAhZGVmYXVsdDtcbiRtb2RhbC1oZWFkZXItYm9yZGVyLXdpZHRoOiAgICAgICAgICRtb2RhbC1jb250ZW50LWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRtb2RhbC1oZWFkZXItcGFkZGluZy15OiAgICAgICAgICAgICRtb2RhbC1pbm5lci1wYWRkaW5nICFkZWZhdWx0O1xuJG1vZGFsLWhlYWRlci1wYWRkaW5nLXg6ICAgICAgICAgICAgJG1vZGFsLWlubmVyLXBhZGRpbmcgIWRlZmF1bHQ7XG4kbW9kYWwtaGVhZGVyLXBhZGRpbmc6ICAgICAgICAgICAgICAkbW9kYWwtaGVhZGVyLXBhZGRpbmcteSAkbW9kYWwtaGVhZGVyLXBhZGRpbmcteCAhZGVmYXVsdDsgLy8gS2VlcCB0aGlzIGZvciBiYWNrd2FyZHMgY29tcGF0aWJpbGl0eVxuXG4kbW9kYWwtZm9vdGVyLWJnOiAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJG1vZGFsLWZvb3Rlci1ib3JkZXItY29sb3I6ICAgICAgICAgJG1vZGFsLWhlYWRlci1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kbW9kYWwtZm9vdGVyLWJvcmRlci13aWR0aDogICAgICAgICAkbW9kYWwtaGVhZGVyLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcblxuJG1vZGFsLXNtOiAgICAgICAgICAgICAgICAgICAgICAgICAgMzAwcHggIWRlZmF1bHQ7XG4kbW9kYWwtbWQ6ICAgICAgICAgICAgICAgICAgICAgICAgICA1MDBweCAhZGVmYXVsdDtcbiRtb2RhbC1sZzogICAgICAgICAgICAgICAgICAgICAgICAgIDgwMHB4ICFkZWZhdWx0O1xuJG1vZGFsLXhsOiAgICAgICAgICAgICAgICAgICAgICAgICAgMTE0MHB4ICFkZWZhdWx0O1xuXG4kbW9kYWwtZmFkZS10cmFuc2Zvcm06ICAgICAgICAgICAgICB0cmFuc2xhdGUoMCwgLTUwcHgpICFkZWZhdWx0O1xuJG1vZGFsLXNob3ctdHJhbnNmb3JtOiAgICAgICAgICAgICAgbm9uZSAhZGVmYXVsdDtcbiRtb2RhbC10cmFuc2l0aW9uOiAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAuM3MgZWFzZS1vdXQgIWRlZmF1bHQ7XG4kbW9kYWwtc2NhbGUtdHJhbnNmb3JtOiAgICAgICAgICAgICBzY2FsZSgxLjAyKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgbW9kYWwtdmFyaWFibGVzXG5cblxuLy8gQWxlcnRzXG4vL1xuLy8gRGVmaW5lIGFsZXJ0IGNvbG9ycywgYm9yZGVyIHJhZGl1cywgYW5kIHBhZGRpbmcuXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBhbGVydC12YXJpYWJsZXNcbiRhbGVydC1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgJHNwYWNlciAhZGVmYXVsdDtcbiRhbGVydC1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgJHNwYWNlciAhZGVmYXVsdDtcbiRhbGVydC1tYXJnaW4tYm90dG9tOiAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRhbGVydC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1yYWRpdXMpICFkZWZhdWx0O1xuJGFsZXJ0LWxpbmstZm9udC13ZWlnaHQ6ICAgICAgICAkZm9udC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcbiRhbGVydC1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci13aWR0aCkgIWRlZmF1bHQ7XG4kYWxlcnQtYmctc2NhbGU6ICAgICAgICAgICAgICAgIC04MCUgIWRlZmF1bHQ7XG4kYWxlcnQtYm9yZGVyLXNjYWxlOiAgICAgICAgICAgIC03MCUgIWRlZmF1bHQ7XG4kYWxlcnQtY29sb3Itc2NhbGU6ICAgICAgICAgICAgIDQwJSAhZGVmYXVsdDtcbiRhbGVydC1kaXNtaXNzaWJsZS1wYWRkaW5nLXI6ICAgJGFsZXJ0LXBhZGRpbmcteCAqIDMgIWRlZmF1bHQ7IC8vIDN4IGNvdmVycyB3aWR0aCBvZiB4IHBsdXMgZGVmYXVsdCBwYWRkaW5nIG9uIGVpdGhlciBzaWRlXG4vLyBzY3NzLWRvY3MtZW5kIGFsZXJ0LXZhcmlhYmxlc1xuXG4vLyBmdXN2LWRpc2FibGVcbiRhbGVydC1iZy1zY2FsZTogICAgICAgICAgICAgICAgLTgwJSAhZGVmYXVsdDsgLy8gRGVwcmVjYXRlZCBpbiB2NS4yLjAsIHRvIGJlIHJlbW92ZWQgaW4gdjZcbiRhbGVydC1ib3JkZXItc2NhbGU6ICAgICAgICAgICAgLTcwJSAhZGVmYXVsdDsgLy8gRGVwcmVjYXRlZCBpbiB2NS4yLjAsIHRvIGJlIHJlbW92ZWQgaW4gdjZcbiRhbGVydC1jb2xvci1zY2FsZTogICAgICAgICAgICAgNDAlICFkZWZhdWx0OyAvLyBEZXByZWNhdGVkIGluIHY1LjIuMCwgdG8gYmUgcmVtb3ZlZCBpbiB2NlxuLy8gZnVzdi1lbmFibGVcblxuLy8gUHJvZ3Jlc3MgYmFyc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgcHJvZ3Jlc3MtdmFyaWFibGVzXG4kcHJvZ3Jlc3MtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJHByb2dyZXNzLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogLjc1ICFkZWZhdWx0O1xuJHByb2dyZXNzLWJnOiAgICAgICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fXNlY29uZGFyeS1iZykgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYm9yZGVyLXJhZGl1czogICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cykgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYm94LXNoYWRvdzogICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym94LXNoYWRvdy1pbnNldCkgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYmFyLWNvbG9yOiAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYmFyLWJnOiAgICAgICAgICAgICAgICAgICAkcHJpbWFyeSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1iYXItYW5pbWF0aW9uLXRpbWluZzogICAgIDFzIGxpbmVhciBpbmZpbml0ZSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1iYXItdHJhbnNpdGlvbjogICAgICAgICAgIHdpZHRoIC42cyBlYXNlICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBwcm9ncmVzcy12YXJpYWJsZXNcblxuXG4vLyBMaXN0IGdyb3VwXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBsaXN0LWdyb3VwLXZhcmlhYmxlc1xuJGxpc3QtZ3JvdXAtY29sb3I6ICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvZHktY29sb3IpICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYmc6ICAgICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvZHktYmcpICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1jb2xvcikgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1ib3JkZXItd2lkdGg6ICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXdpZHRoKSAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWJvcmRlci1yYWRpdXM6ICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItcmFkaXVzKSAhZGVmYXVsdDtcblxuJGxpc3QtZ3JvdXAtaXRlbS1wYWRkaW5nLXk6ICAgICAgICAgJHNwYWNlciAqIC41ICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtaXRlbS1wYWRkaW5nLXg6ICAgICAgICAgJHNwYWNlciAhZGVmYXVsdDtcbi8vIGZ1c3YtZGlzYWJsZVxuJGxpc3QtZ3JvdXAtaXRlbS1iZy1zY2FsZTogICAgICAgICAgLTgwJSAhZGVmYXVsdDsgLy8gRGVwcmVjYXRlZCBpbiB2NS4zLjBcbiRsaXN0LWdyb3VwLWl0ZW0tY29sb3Itc2NhbGU6ICAgICAgIDQwJSAhZGVmYXVsdDsgLy8gRGVwcmVjYXRlZCBpbiB2NS4zLjBcbi8vIGZ1c3YtZW5hYmxlXG5cbiRsaXN0LWdyb3VwLWhvdmVyLWJnOiAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH10ZXJ0aWFyeS1iZykgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1hY3RpdmUtY29sb3I6ICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWFjdGl2ZS1iZzogICAgICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYWN0aXZlLWJvcmRlci1jb2xvcjogICAgJGxpc3QtZ3JvdXAtYWN0aXZlLWJnICFkZWZhdWx0O1xuXG4kbGlzdC1ncm91cC1kaXNhYmxlZC1jb2xvcjogICAgICAgICB2YXIoLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWNvbG9yKSAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWRpc2FibGVkLWJnOiAgICAgICAgICAgICRsaXN0LWdyb3VwLWJnICFkZWZhdWx0O1xuXG4kbGlzdC1ncm91cC1hY3Rpb24tY29sb3I6ICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWNvbG9yKSAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWFjdGlvbi1ob3Zlci1jb2xvcjogICAgIHZhcigtLSN7JHByZWZpeH1lbXBoYXNpcy1jb2xvcikgIWRlZmF1bHQ7XG5cbiRsaXN0LWdyb3VwLWFjdGlvbi1hY3RpdmUtY29sb3I6ICAgIHZhcigtLSN7JHByZWZpeH1ib2R5LWNvbG9yKSAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWFjdGlvbi1hY3RpdmUtYmc6ICAgICAgIHZhcigtLSN7JHByZWZpeH1zZWNvbmRhcnktYmcpICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBsaXN0LWdyb3VwLXZhcmlhYmxlc1xuXG5cbi8vIEltYWdlIHRodW1ibmFpbHNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHRodW1ibmFpbC12YXJpYWJsZXNcbiR0aHVtYm5haWwtcGFkZGluZzogICAgICAgICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiR0aHVtYm5haWwtYmc6ICAgICAgICAgICAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib2R5LWJnKSAhZGVmYXVsdDtcbiR0aHVtYm5haWwtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuJHRodW1ibmFpbC1ib3JkZXItY29sb3I6ICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvcmRlci1jb2xvcikgIWRlZmF1bHQ7XG4kdGh1bWJuYWlsLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9yZGVyLXJhZGl1cykgIWRlZmF1bHQ7XG4kdGh1bWJuYWlsLWJveC1zaGFkb3c6ICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym94LXNoYWRvdy1zbSkgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIHRodW1ibmFpbC12YXJpYWJsZXNcblxuXG4vLyBGaWd1cmVzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBmaWd1cmUtdmFyaWFibGVzXG4kZmlndXJlLWNhcHRpb24tZm9udC1zaXplOiAgICAgICAgICAkc21hbGwtZm9udC1zaXplICFkZWZhdWx0O1xuJGZpZ3VyZS1jYXB0aW9uLWNvbG9yOiAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fXNlY29uZGFyeS1jb2xvcikgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGZpZ3VyZS12YXJpYWJsZXNcblxuXG4vLyBCcmVhZGNydW1ic1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgYnJlYWRjcnVtYi12YXJpYWJsZXNcbiRicmVhZGNydW1iLWZvbnQtc2l6ZTogICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1wYWRkaW5nLXk6ICAgICAgICAgICAgICAwICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItcGFkZGluZy14OiAgICAgICAgICAgICAgMCAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWl0ZW0tcGFkZGluZy14OiAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItbWFyZ2luLWJvdHRvbTogICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWJnOiAgICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1kaXZpZGVyLWNvbG9yOiAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9c2Vjb25kYXJ5LWNvbG9yKSAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWFjdGl2ZS1jb2xvcjogICAgICAgICAgIHZhcigtLSN7JHByZWZpeH1zZWNvbmRhcnktY29sb3IpICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItZGl2aWRlcjogICAgICAgICAgICAgICAgcXVvdGUoXCIvXCIpICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItZGl2aWRlci1mbGlwcGVkOiAgICAgICAgJGJyZWFkY3J1bWItZGl2aWRlciAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWJvcmRlci1yYWRpdXM6ICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4vLyBzY3NzLWRvY3MtZW5kIGJyZWFkY3J1bWItdmFyaWFibGVzXG5cbi8vIENhcm91c2VsXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBjYXJvdXNlbC12YXJpYWJsZXNcbiRjYXJvdXNlbC1jb250cm9sLWNvbG9yOiAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC13aWR0aDogICAgICAgICAgICAgMTUlICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtb3BhY2l0eTogICAgICAgICAgIC41ICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtaG92ZXItb3BhY2l0eTogICAgIC45ICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtdHJhbnNpdGlvbjogICAgICAgIG9wYWNpdHkgLjE1cyBlYXNlICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtaW5kaWNhdG9yLXdpZHRoOiAgICAgICAgICAgMzBweCAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3ItaGVpZ2h0OiAgICAgICAgICAzcHggIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtaW5kaWNhdG9yLWhpdC1hcmVhLWhlaWdodDogMTBweCAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3Itc3BhY2VyOiAgICAgICAgICAzcHggIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtaW5kaWNhdG9yLW9wYWNpdHk6ICAgICAgICAgLjUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtaW5kaWNhdG9yLWFjdGl2ZS1iZzogICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci1hY3RpdmUtb3BhY2l0eTogIDEgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtaW5kaWNhdG9yLXRyYW5zaXRpb246ICAgICAgb3BhY2l0eSAuNnMgZWFzZSAhZGVmYXVsdDtcblxuJGNhcm91c2VsLWNhcHRpb24td2lkdGg6ICAgICAgICAgICAgIDcwJSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jYXB0aW9uLWNvbG9yOiAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY2FwdGlvbi1wYWRkaW5nLXk6ICAgICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jYXB0aW9uLXNwYWNlcjogICAgICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtY29udHJvbC1pY29uLXdpZHRoOiAgICAgICAgMnJlbSAhZGVmYXVsdDtcblxuJGNhcm91c2VsLWNvbnRyb2wtcHJldi1pY29uLWJnOiAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDE2IDE2JyBmaWxsPScjeyRjYXJvdXNlbC1jb250cm9sLWNvbG9yfSc+PHBhdGggZD0nTTExLjM1NCAxLjY0NmEuNS41IDAgMCAxIDAgLjcwOEw1LjcwNyA4bDUuNjQ3IDUuNjQ2YS41LjUgMCAwIDEtLjcwOC43MDhsLTYtNmEuNS41IDAgMCAxIDAtLjcwOGw2LTZhLjUuNSAwIDAgMSAuNzA4IDB6Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtbmV4dC1pY29uLWJnOiAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDE2IDE2JyBmaWxsPScjeyRjYXJvdXNlbC1jb250cm9sLWNvbG9yfSc+PHBhdGggZD0nTTQuNjQ2IDEuNjQ2YS41LjUgMCAwIDEgLjcwOCAwbDYgNmEuNS41IDAgMCAxIDAgLjcwOGwtNiA2YS41LjUgMCAwIDEtLjcwOC0uNzA4TDEwLjI5MyA4IDQuNjQ2IDIuMzU0YS41LjUgMCAwIDEgMC0uNzA4eicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcblxuJGNhcm91c2VsLXRyYW5zaXRpb24tZHVyYXRpb246ICAgICAgIC42cyAhZGVmYXVsdDtcbiRjYXJvdXNlbC10cmFuc2l0aW9uOiAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gJGNhcm91c2VsLXRyYW5zaXRpb24tZHVyYXRpb24gZWFzZS1pbi1vdXQgIWRlZmF1bHQ7IC8vIERlZmluZSB0cmFuc2Zvcm0gdHJhbnNpdGlvbiBmaXJzdCBpZiB1c2luZyBtdWx0aXBsZSB0cmFuc2l0aW9ucyAoZS5nLiwgYHRyYW5zZm9ybSAycyBlYXNlLCBvcGFjaXR5IC41cyBlYXNlLW91dGApXG4vLyBzY3NzLWRvY3MtZW5kIGNhcm91c2VsLXZhcmlhYmxlc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgY2Fyb3VzZWwtZGFyay12YXJpYWJsZXNcbiRjYXJvdXNlbC1kYXJrLWluZGljYXRvci1hY3RpdmUtYmc6ICAkYmxhY2sgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtZGFyay1jYXB0aW9uLWNvbG9yOiAgICAgICAgJGJsYWNrICFkZWZhdWx0O1xuJGNhcm91c2VsLWRhcmstY29udHJvbC1pY29uLWZpbHRlcjogIGludmVydCgxKSBncmF5c2NhbGUoMTAwKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgY2Fyb3VzZWwtZGFyay12YXJpYWJsZXNcblxuXG4vLyBTcGlubmVyc1xuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgc3Bpbm5lci12YXJpYWJsZXNcbiRzcGlubmVyLXdpZHRoOiAgICAgICAgICAgMnJlbSAhZGVmYXVsdDtcbiRzcGlubmVyLWhlaWdodDogICAgICAgICAgJHNwaW5uZXItd2lkdGggIWRlZmF1bHQ7XG4kc3Bpbm5lci12ZXJ0aWNhbC1hbGlnbjogIC0uMTI1ZW0gIWRlZmF1bHQ7XG4kc3Bpbm5lci1ib3JkZXItd2lkdGg6ICAgIC4yNWVtICFkZWZhdWx0O1xuJHNwaW5uZXItYW5pbWF0aW9uLXNwZWVkOiAuNzVzICFkZWZhdWx0O1xuXG4kc3Bpbm5lci13aWR0aC1zbTogICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kc3Bpbm5lci1oZWlnaHQtc206ICAgICAgICRzcGlubmVyLXdpZHRoLXNtICFkZWZhdWx0O1xuJHNwaW5uZXItYm9yZGVyLXdpZHRoLXNtOiAuMmVtICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBzcGlubmVyLXZhcmlhYmxlc1xuXG5cbi8vIENsb3NlXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBjbG9zZS12YXJpYWJsZXNcbiRidG4tY2xvc2Utd2lkdGg6ICAgICAgICAgICAgMWVtICFkZWZhdWx0O1xuJGJ0bi1jbG9zZS1oZWlnaHQ6ICAgICAgICAgICAkYnRuLWNsb3NlLXdpZHRoICFkZWZhdWx0O1xuJGJ0bi1jbG9zZS1wYWRkaW5nLXg6ICAgICAgICAuMjVlbSAhZGVmYXVsdDtcbiRidG4tY2xvc2UtcGFkZGluZy15OiAgICAgICAgJGJ0bi1jbG9zZS1wYWRkaW5nLXggIWRlZmF1bHQ7XG4kYnRuLWNsb3NlLWNvbG9yOiAgICAgICAgICAgICRibGFjayAhZGVmYXVsdDtcbiRidG4tY2xvc2UtYmc6ICAgICAgICAgICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMTYgMTYnIGZpbGw9JyN7JGJ0bi1jbG9zZS1jb2xvcn0nPjxwYXRoIGQ9J00uMjkzLjI5M2ExIDEgMCAwIDEgMS40MTQgMEw4IDYuNTg2IDE0LjI5My4yOTNhMSAxIDAgMSAxIDEuNDE0IDEuNDE0TDkuNDE0IDhsNi4yOTMgNi4yOTNhMSAxIDAgMCAxLTEuNDE0IDEuNDE0TDggOS40MTRsLTYuMjkzIDYuMjkzYTEgMSAwIDAgMS0xLjQxNC0xLjQxNEw2LjU4NiA4IC4yOTMgMS43MDdhMSAxIDAgMCAxIDAtMS40MTR6Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuJGJ0bi1jbG9zZS1mb2N1cy1zaGFkb3c6ICAgICAkZm9jdXMtcmluZy1ib3gtc2hhZG93ICFkZWZhdWx0O1xuJGJ0bi1jbG9zZS1vcGFjaXR5OiAgICAgICAgICAuNSAhZGVmYXVsdDtcbiRidG4tY2xvc2UtaG92ZXItb3BhY2l0eTogICAgLjc1ICFkZWZhdWx0O1xuJGJ0bi1jbG9zZS1mb2N1cy1vcGFjaXR5OiAgICAxICFkZWZhdWx0O1xuJGJ0bi1jbG9zZS1kaXNhYmxlZC1vcGFjaXR5OiAuMjUgIWRlZmF1bHQ7XG4kYnRuLWNsb3NlLXdoaXRlLWZpbHRlcjogICAgIGludmVydCgxKSBncmF5c2NhbGUoMTAwJSkgYnJpZ2h0bmVzcygyMDAlKSAhZGVmYXVsdDtcbi8vIHNjc3MtZG9jcy1lbmQgY2xvc2UtdmFyaWFibGVzXG5cblxuLy8gT2ZmY2FudmFzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBvZmZjYW52YXMtdmFyaWFibGVzXG4kb2ZmY2FudmFzLXBhZGRpbmcteTogICAgICAgICAgICAgICAkbW9kYWwtaW5uZXItcGFkZGluZyAhZGVmYXVsdDtcbiRvZmZjYW52YXMtcGFkZGluZy14OiAgICAgICAgICAgICAgICRtb2RhbC1pbm5lci1wYWRkaW5nICFkZWZhdWx0O1xuJG9mZmNhbnZhcy1ob3Jpem9udGFsLXdpZHRoOiAgICAgICAgNDAwcHggIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLXZlcnRpY2FsLWhlaWdodDogICAgICAgICAzMHZoICFkZWZhdWx0O1xuJG9mZmNhbnZhcy10cmFuc2l0aW9uLWR1cmF0aW9uOiAgICAgLjNzICFkZWZhdWx0O1xuJG9mZmNhbnZhcy1ib3JkZXItY29sb3I6ICAgICAgICAgICAgJG1vZGFsLWNvbnRlbnQtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJG9mZmNhbnZhcy1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJG9mZmNhbnZhcy10aXRsZS1saW5lLWhlaWdodDogICAgICAgJG1vZGFsLXRpdGxlLWxpbmUtaGVpZ2h0ICFkZWZhdWx0O1xuJG9mZmNhbnZhcy1iZy1jb2xvcjogICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvZHktYmcpICFkZWZhdWx0O1xuJG9mZmNhbnZhcy1jb2xvcjogICAgICAgICAgICAgICAgICAgdmFyKC0tI3skcHJlZml4fWJvZHktY29sb3IpICFkZWZhdWx0O1xuJG9mZmNhbnZhcy1ib3gtc2hhZG93OiAgICAgICAgICAgICAgJG1vZGFsLWNvbnRlbnQtYm94LXNoYWRvdy14cyAhZGVmYXVsdDtcbiRvZmZjYW52YXMtYmFja2Ryb3AtYmc6ICAgICAgICAgICAgICRtb2RhbC1iYWNrZHJvcC1iZyAhZGVmYXVsdDtcbiRvZmZjYW52YXMtYmFja2Ryb3Atb3BhY2l0eTogICAgICAgICRtb2RhbC1iYWNrZHJvcC1vcGFjaXR5ICFkZWZhdWx0O1xuLy8gc2Nzcy1kb2NzLWVuZCBvZmZjYW52YXMtdmFyaWFibGVzXG5cbi8vIENvZGVcblxuJGNvZGUtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgJHNtYWxsLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRjb2RlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICRwaW5rICFkZWZhdWx0O1xuXG4ka2JkLXBhZGRpbmcteTogICAgICAgICAgICAgICAgICAgICAuMTg3NXJlbSAhZGVmYXVsdDtcbiRrYmQtcGFkZGluZy14OiAgICAgICAgICAgICAgICAgICAgIC4zNzVyZW0gIWRlZmF1bHQ7XG4ka2JkLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgICAkY29kZS1mb250LXNpemUgIWRlZmF1bHQ7XG4ka2JkLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1iZykgIWRlZmF1bHQ7XG4ka2JkLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIoLS0jeyRwcmVmaXh9Ym9keS1jb2xvcikgIWRlZmF1bHQ7XG4kbmVzdGVkLWtiZC1mb250LXdlaWdodDogICAgICAgICAgICBudWxsICFkZWZhdWx0OyAvLyBEZXByZWNhdGVkIGluIHY1LjIuMCwgcmVtb3ZpbmcgaW4gdjZcblxuJHByZS1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIHByb3BlcnR5LWRpc2FsbG93ZWQtbGlzdFxuLy8gU2luZ2xlIHNpZGUgYm9yZGVyLXJhZGl1c1xuXG4vLyBIZWxwZXIgZnVuY3Rpb24gdG8gcmVwbGFjZSBuZWdhdGl2ZSB2YWx1ZXMgd2l0aCAwXG5AZnVuY3Rpb24gdmFsaWQtcmFkaXVzKCRyYWRpdXMpIHtcbiAgJHJldHVybjogKCk7XG4gIEBlYWNoICR2YWx1ZSBpbiAkcmFkaXVzIHtcbiAgICBAaWYgdHlwZS1vZigkdmFsdWUpID09IG51bWJlciB7XG4gICAgICAkcmV0dXJuOiBhcHBlbmQoJHJldHVybiwgbWF4KCR2YWx1ZSwgMCkpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgJHJldHVybjogYXBwZW5kKCRyZXR1cm4sICR2YWx1ZSk7XG4gICAgfVxuICB9XG4gIEByZXR1cm4gJHJldHVybjtcbn1cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGJvcmRlci1yYWRpdXMtbWl4aW5zXG5AbWl4aW4gYm9yZGVyLXJhZGl1cygkcmFkaXVzOiAkYm9yZGVyLXJhZGl1cywgJGZhbGxiYWNrLWJvcmRlci1yYWRpdXM6IGZhbHNlKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxuICBAZWxzZSBpZiAkZmFsbGJhY2stYm9yZGVyLXJhZGl1cyAhPSBmYWxzZSB7XG4gICAgYm9yZGVyLXJhZGl1czogJGZhbGxiYWNrLWJvcmRlci1yYWRpdXM7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci10b3AtcmFkaXVzKCRyYWRpdXM6ICRib3JkZXItcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItZW5kLXJhZGl1cygkcmFkaXVzOiAkYm9yZGVyLXJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci1ib3R0b20tcmFkaXVzKCRyYWRpdXM6ICRib3JkZXItcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItc3RhcnQtcmFkaXVzKCRyYWRpdXM6ICRib3JkZXItcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci10b3Atc3RhcnQtcmFkaXVzKCRyYWRpdXM6ICRib3JkZXItcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLXRvcC1lbmQtcmFkaXVzKCRyYWRpdXM6ICRib3JkZXItcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci1ib3R0b20tZW5kLXJhZGl1cygkcmFkaXVzOiAkYm9yZGVyLXJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItYm90dG9tLXN0YXJ0LXJhZGl1cygkcmFkaXVzOiAkYm9yZGVyLXJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbn1cbi8vIHNjc3MtZG9jcy1lbmQgYm9yZGVyLXJhZGl1cy1taXhpbnNcbiIsIi8vXG4vLyBIZWFkaW5nc1xuLy9cbi5oMSB7XG4gIEBleHRlbmQgaDE7XG59XG5cbi5oMiB7XG4gIEBleHRlbmQgaDI7XG59XG5cbi5oMyB7XG4gIEBleHRlbmQgaDM7XG59XG5cbi5oNCB7XG4gIEBleHRlbmQgaDQ7XG59XG5cbi5oNSB7XG4gIEBleHRlbmQgaDU7XG59XG5cbi5oNiB7XG4gIEBleHRlbmQgaDY7XG59XG5cblxuLmxlYWQge1xuICBAaW5jbHVkZSBmb250LXNpemUoJGxlYWQtZm9udC1zaXplKTtcbiAgZm9udC13ZWlnaHQ6ICRsZWFkLWZvbnQtd2VpZ2h0O1xufVxuXG4vLyBUeXBlIGRpc3BsYXkgY2xhc3Nlc1xuQGVhY2ggJGRpc3BsYXksICRmb250LXNpemUgaW4gJGRpc3BsYXktZm9udC1zaXplcyB7XG4gIC5kaXNwbGF5LSN7JGRpc3BsYXl9IHtcbiAgICBAaW5jbHVkZSBmb250LXNpemUoJGZvbnQtc2l6ZSk7XG4gICAgZm9udC1mYW1pbHk6ICRkaXNwbGF5LWZvbnQtZmFtaWx5O1xuICAgIGZvbnQtc3R5bGU6ICRkaXNwbGF5LWZvbnQtc3R5bGU7XG4gICAgZm9udC13ZWlnaHQ6ICRkaXNwbGF5LWZvbnQtd2VpZ2h0O1xuICAgIGxpbmUtaGVpZ2h0OiAkZGlzcGxheS1saW5lLWhlaWdodDtcbiAgfVxufVxuXG4vL1xuLy8gRW1waGFzaXNcbi8vXG4uc21hbGwge1xuICBAZXh0ZW5kIHNtYWxsO1xufVxuXG4ubWFyayB7XG4gIEBleHRlbmQgbWFyaztcbn1cblxuLy9cbi8vIExpc3RzXG4vL1xuXG4ubGlzdC11bnN0eWxlZCB7XG4gIEBpbmNsdWRlIGxpc3QtdW5zdHlsZWQoKTtcbn1cblxuLy8gSW5saW5lIHR1cm5zIGxpc3QgaXRlbXMgaW50byBpbmxpbmUtYmxvY2tcbi5saXN0LWlubGluZSB7XG4gIEBpbmNsdWRlIGxpc3QtdW5zdHlsZWQoKTtcbn1cbi5saXN0LWlubGluZS1pdGVtIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gICY6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAkbGlzdC1pbmxpbmUtcGFkZGluZztcbiAgfVxufVxuXG5cbi8vXG4vLyBNaXNjXG4vL1xuXG4vLyBCdWlsZHMgb24gYGFiYnJgXG4uaW5pdGlhbGlzbSB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5pdGlhbGlzbS1mb250LXNpemUpO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG4vLyBCbG9ja3F1b3Rlc1xuLmJsb2NrcXVvdGUge1xuICBtYXJnaW4tYm90dG9tOiAkYmxvY2txdW90ZS1tYXJnaW4teTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRibG9ja3F1b3RlLWZvbnQtc2l6ZSk7XG5cbiAgPiA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG4uYmxvY2txdW90ZS1mb290ZXIge1xuICBtYXJnaW4tdG9wOiAtJGJsb2NrcXVvdGUtbWFyZ2luLXk7XG4gIG1hcmdpbi1ib3R0b206ICRibG9ja3F1b3RlLW1hcmdpbi15O1xuICBAaW5jbHVkZSBmb250LXNpemUoJGJsb2NrcXVvdGUtZm9vdGVyLWZvbnQtc2l6ZSk7XG4gIGNvbG9yOiAkYmxvY2txdW90ZS1mb290ZXItY29sb3I7XG5cbiAgJjo6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlxcMjAxNFxcMDBBMFwiOyAvLyBlbSBkYXNoLCBuYnNwXG4gIH1cbn1cbiIsIi8vIExpc3RzXG5cbi8vIFVuc3R5bGVkIGtlZXBzIGxpc3QgaXRlbXMgYmxvY2sgbGV2ZWwsIGp1c3QgcmVtb3ZlcyBkZWZhdWx0IGJyb3dzZXIgcGFkZGluZyBhbmQgbGlzdC1zdHlsZVxuQG1peGluIGxpc3QtdW5zdHlsZWQge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG4iLCIvLyBSZXNwb25zaXZlIGltYWdlcyAoZW5zdXJlIGltYWdlcyBkb24ndCBzY2FsZSBiZXlvbmQgdGhlaXIgcGFyZW50cylcbi8vXG4vLyBUaGlzIGlzIHB1cnBvc2VmdWxseSBvcHQtaW4gdmlhIGFuIGV4cGxpY2l0IGNsYXNzIHJhdGhlciB0aGFuIGJlaW5nIHRoZSBkZWZhdWx0IGZvciBhbGwgYDxpbWc+YHMuXG4vLyBXZSBwcmV2aW91c2x5IHRyaWVkIHRoZSBcImltYWdlcyBhcmUgcmVzcG9uc2l2ZSBieSBkZWZhdWx0XCIgYXBwcm9hY2ggaW4gQm9vdHN0cmFwIHYyLFxuLy8gYW5kIGFiYW5kb25lZCBpdCBpbiBCb290c3RyYXAgdjMgYmVjYXVzZSBpdCBicmVha3MgbG90cyBvZiB0aGlyZC1wYXJ0eSB3aWRnZXRzIChpbmNsdWRpbmcgR29vZ2xlIE1hcHMpXG4vLyB3aGljaCB3ZXJlbid0IGV4cGVjdGluZyB0aGUgaW1hZ2VzIHdpdGhpbiB0aGVtc2VsdmVzIHRvIGJlIGludm9sdW50YXJpbHkgcmVzaXplZC5cbi8vIFNlZSBhbHNvIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTgxNzhcbi5pbWctZmx1aWQge1xuICBAaW5jbHVkZSBpbWctZmx1aWQoKTtcbn1cblxuXG4vLyBJbWFnZSB0aHVtYm5haWxzXG4uaW1nLXRodW1ibmFpbCB7XG4gIHBhZGRpbmc6ICR0aHVtYm5haWwtcGFkZGluZztcbiAgYmFja2dyb3VuZC1jb2xvcjogJHRodW1ibmFpbC1iZztcbiAgYm9yZGVyOiAkdGh1bWJuYWlsLWJvcmRlci13aWR0aCBzb2xpZCAkdGh1bWJuYWlsLWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkdGh1bWJuYWlsLWJvcmRlci1yYWRpdXMpO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCR0aHVtYm5haWwtYm94LXNoYWRvdyk7XG5cbiAgLy8gS2VlcCB0aGVtIGF0IG1vc3QgMTAwJSB3aWRlXG4gIEBpbmNsdWRlIGltZy1mbHVpZCgpO1xufVxuXG4vL1xuLy8gRmlndXJlc1xuLy9cblxuLmZpZ3VyZSB7XG4gIC8vIEVuc3VyZXMgdGhlIGNhcHRpb24ncyB0ZXh0IGFsaWducyB3aXRoIHRoZSBpbWFnZS5cbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4uZmlndXJlLWltZyB7XG4gIG1hcmdpbi1ib3R0b206ICRzcGFjZXIgKiAuNTtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG5cbi5maWd1cmUtY2FwdGlvbiB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZmlndXJlLWNhcHRpb24tZm9udC1zaXplKTtcbiAgY29sb3I6ICRmaWd1cmUtY2FwdGlvbi1jb2xvcjtcbn1cbiIsIi8vIEltYWdlIE1peGluc1xuLy8gLSBSZXNwb25zaXZlIGltYWdlXG4vLyAtIFJldGluYSBpbWFnZVxuXG5cbi8vIFJlc3BvbnNpdmUgaW1hZ2Vcbi8vXG4vLyBLZWVwIGltYWdlcyBmcm9tIHNjYWxpbmcgYmV5b25kIHRoZSB3aWR0aCBvZiB0aGVpciBwYXJlbnRzLlxuXG5AbWl4aW4gaW1nLWZsdWlkIHtcbiAgLy8gUGFydCAxOiBTZXQgYSBtYXhpbXVtIHJlbGF0aXZlIHRvIHRoZSBwYXJlbnRcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICAvLyBQYXJ0IDI6IE92ZXJyaWRlIHRoZSBoZWlnaHQgdG8gYXV0bywgb3RoZXJ3aXNlIGltYWdlcyB3aWxsIGJlIHN0cmV0Y2hlZFxuICAvLyB3aGVuIHNldHRpbmcgYSB3aWR0aCBhbmQgaGVpZ2h0IGF0dHJpYnV0ZSBvbiB0aGUgaW1nIGVsZW1lbnQuXG4gIGhlaWdodDogYXV0bztcbn1cbiIsIi8vIENvbnRhaW5lciB3aWR0aHNcbi8vXG4vLyBTZXQgdGhlIGNvbnRhaW5lciB3aWR0aCwgYW5kIG92ZXJyaWRlIGl0IGZvciBmaXhlZCBuYXZiYXJzIGluIG1lZGlhIHF1ZXJpZXMuXG5cbkBpZiAkZW5hYmxlLWNvbnRhaW5lci1jbGFzc2VzIHtcbiAgLy8gU2luZ2xlIGNvbnRhaW5lciBjbGFzcyB3aXRoIGJyZWFrcG9pbnQgbWF4LXdpZHRoc1xuICAuY29udGFpbmVyLFxuICAvLyAxMDAlIHdpZGUgY29udGFpbmVyIGF0IGFsbCBicmVha3BvaW50c1xuICAuY29udGFpbmVyLWZsdWlkIHtcbiAgICBAaW5jbHVkZSBtYWtlLWNvbnRhaW5lcigpO1xuICB9XG5cbiAgLy8gUmVzcG9uc2l2ZSBjb250YWluZXJzIHRoYXQgYXJlIDEwMCUgd2lkZSB1bnRpbCBhIGJyZWFrcG9pbnRcbiAgQGVhY2ggJGJyZWFrcG9pbnQsICRjb250YWluZXItbWF4LXdpZHRoIGluICRjb250YWluZXItbWF4LXdpZHRocyB7XG4gICAgLmNvbnRhaW5lci0jeyRicmVha3BvaW50fSB7XG4gICAgICBAZXh0ZW5kIC5jb250YWluZXItZmx1aWQ7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgICAgICVyZXNwb25zaXZlLWNvbnRhaW5lci0jeyRicmVha3BvaW50fSB7XG4gICAgICAgIG1heC13aWR0aDogJGNvbnRhaW5lci1tYXgtd2lkdGg7XG4gICAgICB9XG5cbiAgICAgIC8vIEV4dGVuZCBlYWNoIGJyZWFrcG9pbnQgd2hpY2ggaXMgc21hbGxlciBvciBlcXVhbCB0byB0aGUgY3VycmVudCBicmVha3BvaW50XG4gICAgICAkZXh0ZW5kLWJyZWFrcG9pbnQ6IHRydWU7XG5cbiAgICAgIEBlYWNoICRuYW1lLCAkd2lkdGggaW4gJGdyaWQtYnJlYWtwb2ludHMge1xuICAgICAgICBAaWYgKCRleHRlbmQtYnJlYWtwb2ludCkge1xuICAgICAgICAgIC5jb250YWluZXIje2JyZWFrcG9pbnQtaW5maXgoJG5hbWUsICRncmlkLWJyZWFrcG9pbnRzKX0ge1xuICAgICAgICAgICAgQGV4dGVuZCAlcmVzcG9uc2l2ZS1jb250YWluZXItI3skYnJlYWtwb2ludH07XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLy8gT25jZSB0aGUgY3VycmVudCBicmVha3BvaW50IGlzIHJlYWNoZWQsIHN0b3AgZXh0ZW5kaW5nXG4gICAgICAgICAgQGlmICgkYnJlYWtwb2ludCA9PSAkbmFtZSkge1xuICAgICAgICAgICAgJGV4dGVuZC1icmVha3BvaW50OiBmYWxzZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIENvbnRhaW5lciBtaXhpbnNcblxuQG1peGluIG1ha2UtY29udGFpbmVyKCRndXR0ZXI6ICRjb250YWluZXItcGFkZGluZy14KSB7XG4gIC0tI3skcHJlZml4fWd1dHRlci14OiAjeyRndXR0ZXJ9O1xuICAtLSN7JHByZWZpeH1ndXR0ZXIteTogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmctcmlnaHQ6IGNhbGModmFyKC0tI3skcHJlZml4fWd1dHRlci14KSAqIC41KTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgcGFkZGluZy1sZWZ0OiBjYWxjKHZhcigtLSN7JHByZWZpeH1ndXR0ZXIteCkgKiAuNSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG59XG4iLCIvLyBCcmVha3BvaW50IHZpZXdwb3J0IHNpemVzIGFuZCBtZWRpYSBxdWVyaWVzLlxuLy9cbi8vIEJyZWFrcG9pbnRzIGFyZSBkZWZpbmVkIGFzIGEgbWFwIG9mIChuYW1lOiBtaW5pbXVtIHdpZHRoKSwgb3JkZXIgZnJvbSBzbWFsbCB0byBsYXJnZTpcbi8vXG4vLyAgICAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgsIHh4bDogMTQwMHB4KVxuLy9cbi8vIFRoZSBtYXAgZGVmaW5lZCBpbiB0aGUgYCRncmlkLWJyZWFrcG9pbnRzYCBnbG9iYWwgdmFyaWFibGUgaXMgdXNlZCBhcyB0aGUgYCRicmVha3BvaW50c2AgYXJndW1lbnQgYnkgZGVmYXVsdC5cblxuLy8gTmFtZSBvZiB0aGUgbmV4dCBicmVha3BvaW50LCBvciBudWxsIGZvciB0aGUgbGFzdCBicmVha3BvaW50LlxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtbmV4dChzbSlcbi8vICAgIG1kXG4vLyAgICA+PiBicmVha3BvaW50LW5leHQoc20sICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCwgeHhsOiAxNDAwcHgpKVxuLy8gICAgbWRcbi8vICAgID4+IGJyZWFrcG9pbnQtbmV4dChzbSwgJGJyZWFrcG9pbnQtbmFtZXM6ICh4cyBzbSBtZCBsZyB4bCB4eGwpKVxuLy8gICAgbWRcbkBmdW5jdGlvbiBicmVha3BvaW50LW5leHQoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMsICRicmVha3BvaW50LW5hbWVzOiBtYXAta2V5cygkYnJlYWtwb2ludHMpKSB7XG4gICRuOiBpbmRleCgkYnJlYWtwb2ludC1uYW1lcywgJG5hbWUpO1xuICBAaWYgbm90ICRuIHtcbiAgICBAZXJyb3IgXCJicmVha3BvaW50IGAjeyRuYW1lfWAgbm90IGZvdW5kIGluIGAjeyRicmVha3BvaW50c31gXCI7XG4gIH1cbiAgQHJldHVybiBpZigkbiA8IGxlbmd0aCgkYnJlYWtwb2ludC1uYW1lcyksIG50aCgkYnJlYWtwb2ludC1uYW1lcywgJG4gKyAxKSwgbnVsbCk7XG59XG5cbi8vIE1pbmltdW0gYnJlYWtwb2ludCB3aWR0aC4gTnVsbCBmb3IgdGhlIHNtYWxsZXN0IChmaXJzdCkgYnJlYWtwb2ludC5cbi8vXG4vLyAgICA+PiBicmVha3BvaW50LW1pbihzbSwgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4LCB4eGw6IDE0MDBweCkpXG4vLyAgICA1NzZweFxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtaW46IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkbmFtZSk7XG4gIEByZXR1cm4gaWYoJG1pbiAhPSAwLCAkbWluLCBudWxsKTtcbn1cblxuLy8gTWF4aW11bSBicmVha3BvaW50IHdpZHRoLlxuLy8gVGhlIG1heGltdW0gdmFsdWUgaXMgcmVkdWNlZCBieSAwLjAycHggdG8gd29yayBhcm91bmQgdGhlIGxpbWl0YXRpb25zIG9mXG4vLyBgbWluLWAgYW5kIGBtYXgtYCBwcmVmaXhlcyBhbmQgdmlld3BvcnRzIHdpdGggZnJhY3Rpb25hbCB3aWR0aHMuXG4vLyBTZWUgaHR0cHM6Ly93d3cudzMub3JnL1RSL21lZGlhcXVlcmllcy00LyNtcS1taW4tbWF4XG4vLyBVc2VzIDAuMDJweCByYXRoZXIgdGhhbiAwLjAxcHggdG8gd29yayBhcm91bmQgYSBjdXJyZW50IHJvdW5kaW5nIGJ1ZyBpbiBTYWZhcmkuXG4vLyBTZWUgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE3ODI2MVxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtbWF4KG1kLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgsIHh4bDogMTQwMHB4KSlcbi8vICAgIDc2Ny45OHB4XG5AZnVuY3Rpb24gYnJlYWtwb2ludC1tYXgoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1heDogbWFwLWdldCgkYnJlYWtwb2ludHMsICRuYW1lKTtcbiAgQHJldHVybiBpZigkbWF4IGFuZCAkbWF4ID4gMCwgJG1heCAtIC4wMiwgbnVsbCk7XG59XG5cbi8vIFJldHVybnMgYSBibGFuayBzdHJpbmcgaWYgc21hbGxlc3QgYnJlYWtwb2ludCwgb3RoZXJ3aXNlIHJldHVybnMgdGhlIG5hbWUgd2l0aCBhIGRhc2ggaW4gZnJvbnQuXG4vLyBVc2VmdWwgZm9yIG1ha2luZyByZXNwb25zaXZlIHV0aWxpdGllcy5cbi8vXG4vLyAgICA+PiBicmVha3BvaW50LWluZml4KHhzLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgsIHh4bDogMTQwMHB4KSlcbi8vICAgIFwiXCIgIChSZXR1cm5zIGEgYmxhbmsgc3RyaW5nKVxuLy8gICAgPj4gYnJlYWtwb2ludC1pbmZpeChzbSwgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4LCB4eGw6IDE0MDBweCkpXG4vLyAgICBcIi1zbVwiXG5AZnVuY3Rpb24gYnJlYWtwb2ludC1pbmZpeCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICBAcmV0dXJuIGlmKGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHMpID09IG51bGwsIFwiXCIsIFwiLSN7JG5hbWV9XCIpO1xufVxuXG4vLyBNZWRpYSBvZiBhdCBsZWFzdCB0aGUgbWluaW11bSBicmVha3BvaW50IHdpZHRoLiBObyBxdWVyeSBmb3IgdGhlIHNtYWxsZXN0IGJyZWFrcG9pbnQuXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgdG8gdGhlIGdpdmVuIGJyZWFrcG9pbnQgYW5kIHdpZGVyLlxuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtdXAoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50cyk7XG4gIEBpZiAkbWluIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJG1pbikge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG4vLyBNZWRpYSBvZiBhdCBtb3N0IHRoZSBtYXhpbXVtIGJyZWFrcG9pbnQgd2lkdGguIE5vIHF1ZXJ5IGZvciB0aGUgbGFyZ2VzdCBicmVha3BvaW50LlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IHRvIHRoZSBnaXZlbiBicmVha3BvaW50IGFuZCBuYXJyb3dlci5cbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LWRvd24oJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1heDogYnJlYWtwb2ludC1tYXgoJG5hbWUsICRicmVha3BvaW50cyk7XG4gIEBpZiAkbWF4IHtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1heCkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG4vLyBNZWRpYSB0aGF0IHNwYW5zIG11bHRpcGxlIGJyZWFrcG9pbnQgd2lkdGhzLlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IGJldHdlZW4gdGhlIG1pbiBhbmQgbWF4IGJyZWFrcG9pbnRzXG5AbWl4aW4gbWVkaWEtYnJlYWtwb2ludC1iZXR3ZWVuKCRsb3dlciwgJHVwcGVyLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRtaW46IGJyZWFrcG9pbnQtbWluKCRsb3dlciwgJGJyZWFrcG9pbnRzKTtcbiAgJG1heDogYnJlYWtwb2ludC1tYXgoJHVwcGVyLCAkYnJlYWtwb2ludHMpO1xuXG4gIEBpZiAkbWluICE9IG51bGwgYW5kICRtYXggIT0gbnVsbCB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRtaW4pIGFuZCAobWF4LXdpZHRoOiAkbWF4KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1heCA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRsb3dlciwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1pbiA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJHVwcGVyLCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG4vLyBNZWRpYSBiZXR3ZWVuIHRoZSBicmVha3BvaW50J3MgbWluaW11bSBhbmQgbWF4aW11bSB3aWR0aHMuXG4vLyBObyBtaW5pbXVtIGZvciB0aGUgc21hbGxlc3QgYnJlYWtwb2ludCwgYW5kIG5vIG1heGltdW0gZm9yIHRoZSBsYXJnZXN0IG9uZS5cbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSBvbmx5IHRvIHRoZSBnaXZlbiBicmVha3BvaW50LCBub3Qgdmlld3BvcnRzIGFueSB3aWRlciBvciBuYXJyb3dlci5cbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LW9ubHkoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogIGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuICAkbmV4dDogYnJlYWtwb2ludC1uZXh0KCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuICAkbWF4OiAgYnJlYWtwb2ludC1tYXgoJG5leHQsICRicmVha3BvaW50cyk7XG5cbiAgQGlmICRtaW4gIT0gbnVsbCBhbmQgJG1heCAhPSBudWxsIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJG1pbikgYW5kIChtYXgtd2lkdGg6ICRtYXgpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkbWF4ID09IG51bGwge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJG5hbWUsICRicmVha3BvaW50cykge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIGlmICRtaW4gPT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKCRuZXh0LCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuIiwiLy8gUm93XG4vL1xuLy8gUm93cyBjb250YWluIHlvdXIgY29sdW1ucy5cblxuOnJvb3Qge1xuICBAZWFjaCAkbmFtZSwgJHZhbHVlIGluICRncmlkLWJyZWFrcG9pbnRzIHtcbiAgICAtLSN7JHByZWZpeH1icmVha3BvaW50LSN7JG5hbWV9OiAjeyR2YWx1ZX07XG4gIH1cbn1cblxuQGlmICRlbmFibGUtZ3JpZC1jbGFzc2VzIHtcbiAgLnJvdyB7XG4gICAgQGluY2x1ZGUgbWFrZS1yb3coKTtcblxuICAgID4gKiB7XG4gICAgICBAaW5jbHVkZSBtYWtlLWNvbC1yZWFkeSgpO1xuICAgIH1cbiAgfVxufVxuXG5AaWYgJGVuYWJsZS1jc3NncmlkIHtcbiAgLmdyaWQge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiByZXBlYXQodmFyKC0tI3skcHJlZml4fXJvd3MsIDEpLCAxZnIpO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KHZhcigtLSN7JHByZWZpeH1jb2x1bW5zLCAjeyRncmlkLWNvbHVtbnN9KSwgMWZyKTtcbiAgICBnYXA6IHZhcigtLSN7JHByZWZpeH1nYXAsICN7JGdyaWQtZ3V0dGVyLXdpZHRofSk7XG5cbiAgICBAaW5jbHVkZSBtYWtlLWNzc2dyaWQoKTtcbiAgfVxufVxuXG5cbi8vIENvbHVtbnNcbi8vXG4vLyBDb21tb24gc3R5bGVzIGZvciBzbWFsbCBhbmQgbGFyZ2UgZ3JpZCBjb2x1bW5zXG5cbkBpZiAkZW5hYmxlLWdyaWQtY2xhc3NlcyB7XG4gIEBpbmNsdWRlIG1ha2UtZ3JpZC1jb2x1bW5zKCk7XG59XG4iLCIvLyBHcmlkIHN5c3RlbVxuLy9cbi8vIEdlbmVyYXRlIHNlbWFudGljIGdyaWQgY29sdW1ucyB3aXRoIHRoZXNlIG1peGlucy5cblxuQG1peGluIG1ha2Utcm93KCRndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCkge1xuICAtLSN7JHByZWZpeH1ndXR0ZXIteDogI3skZ3V0dGVyfTtcbiAgLS0jeyRwcmVmaXh9Z3V0dGVyLXk6IDA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgLy8gVE9ETzogUmV2aXNpdCBjYWxjIG9yZGVyIGFmdGVyIGh0dHBzOi8vZ2l0aHViLmNvbS9yZWFjdC1ib290c3RyYXAvcmVhY3QtYm9vdHN0cmFwL2lzc3Vlcy82MDM5IGlzIGZpeGVkXG4gIG1hcmdpbi10b3A6IGNhbGMoLTEgKiB2YXIoLS0jeyRwcmVmaXh9Z3V0dGVyLXkpKTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgbWFyZ2luLXJpZ2h0OiBjYWxjKC0uNSAqIHZhcigtLSN7JHByZWZpeH1ndXR0ZXIteCkpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICBtYXJnaW4tbGVmdDogY2FsYygtLjUgKiB2YXIoLS0jeyRwcmVmaXh9Z3V0dGVyLXgpKTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3Rcbn1cblxuQG1peGluIG1ha2UtY29sLXJlYWR5KCkge1xuICAvLyBBZGQgYm94IHNpemluZyBpZiBvbmx5IHRoZSBncmlkIGlzIGxvYWRlZFxuICBib3gtc2l6aW5nOiBpZih2YXJpYWJsZS1leGlzdHMoaW5jbHVkZS1jb2x1bW4tYm94LXNpemluZykgYW5kICRpbmNsdWRlLWNvbHVtbi1ib3gtc2l6aW5nLCBib3JkZXItYm94LCBudWxsKTtcbiAgLy8gUHJldmVudCBjb2x1bW5zIGZyb20gYmVjb21pbmcgdG9vIG5hcnJvdyB3aGVuIGF0IHNtYWxsZXIgZ3JpZCB0aWVycyBieVxuICAvLyBhbHdheXMgc2V0dGluZyBgd2lkdGg6IDEwMCU7YC4gVGhpcyB3b3JrcyBiZWNhdXNlIHdlIHNldCB0aGUgd2lkdGhcbiAgLy8gbGF0ZXIgb24gdG8gb3ZlcnJpZGUgdGhpcyBpbml0aWFsIHdpZHRoLlxuICBmbGV4LXNocmluazogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogMTAwJTsgLy8gUHJldmVudCBgLmNvbC1hdXRvYCwgYC5jb2xgICgmIHJlc3BvbnNpdmUgdmFyaWFudHMpIGZyb20gYnJlYWtpbmcgb3V0IHRoZSBncmlkXG4gIHBhZGRpbmctcmlnaHQ6IGNhbGModmFyKC0tI3skcHJlZml4fWd1dHRlci14KSAqIC41KTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgcGFkZGluZy1sZWZ0OiBjYWxjKHZhcigtLSN7JHByZWZpeH1ndXR0ZXIteCkgKiAuNSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gIG1hcmdpbi10b3A6IHZhcigtLSN7JHByZWZpeH1ndXR0ZXIteSk7XG59XG5cbkBtaXhpbiBtYWtlLWNvbCgkc2l6ZTogZmFsc2UsICRjb2x1bW5zOiAkZ3JpZC1jb2x1bW5zKSB7XG4gIEBpZiAkc2l6ZSB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgd2lkdGg6IHBlcmNlbnRhZ2UoZGl2aWRlKCRzaXplLCAkY29sdW1ucykpO1xuXG4gIH0gQGVsc2Uge1xuICAgIGZsZXg6IDEgMSAwO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxufVxuXG5AbWl4aW4gbWFrZS1jb2wtYXV0bygpIHtcbiAgZmxleDogMCAwIGF1dG87XG4gIHdpZHRoOiBhdXRvO1xufVxuXG5AbWl4aW4gbWFrZS1jb2wtb2Zmc2V0KCRzaXplLCAkY29sdW1uczogJGdyaWQtY29sdW1ucykge1xuICAkbnVtOiBkaXZpZGUoJHNpemUsICRjb2x1bW5zKTtcbiAgbWFyZ2luLWxlZnQ6IGlmKCRudW0gPT0gMCwgMCwgcGVyY2VudGFnZSgkbnVtKSk7XG59XG5cbi8vIFJvdyBjb2x1bW5zXG4vL1xuLy8gU3BlY2lmeSBvbiBhIHBhcmVudCBlbGVtZW50KGUuZy4sIC5yb3cpIHRvIGZvcmNlIGltbWVkaWF0ZSBjaGlsZHJlbiBpbnRvIE5OXG4vLyBudW1iZXIgb2YgY29sdW1ucy4gU3VwcG9ydHMgd3JhcHBpbmcgdG8gbmV3IGxpbmVzLCBidXQgZG9lcyBub3QgZG8gYSBNYXNvbnJ5XG4vLyBzdHlsZSBncmlkLlxuQG1peGluIHJvdy1jb2xzKCRjb3VudCkge1xuICA+ICoge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIHdpZHRoOiBkaXZpZGUoMTAwJSwgJGNvdW50KTtcbiAgfVxufVxuXG4vLyBGcmFtZXdvcmsgZ3JpZCBnZW5lcmF0aW9uXG4vL1xuLy8gVXNlZCBvbmx5IGJ5IEJvb3RzdHJhcCB0byBnZW5lcmF0ZSB0aGUgY29ycmVjdCBudW1iZXIgb2YgZ3JpZCBjbGFzc2VzIGdpdmVuXG4vLyBhbnkgdmFsdWUgb2YgYCRncmlkLWNvbHVtbnNgLlxuXG5AbWl4aW4gbWFrZS1ncmlkLWNvbHVtbnMoJGNvbHVtbnM6ICRncmlkLWNvbHVtbnMsICRndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICBAZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkYnJlYWtwb2ludHMpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRicmVha3BvaW50cyk7XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50LCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIC8vIFByb3ZpZGUgYmFzaWMgYC5jb2wte2JwfWAgY2xhc3NlcyBmb3IgZXF1YWwtd2lkdGggZmxleGJveCBjb2x1bW5zXG4gICAgICAuY29sI3skaW5maXh9IHtcbiAgICAgICAgZmxleDogMSAwIDAlOyAvLyBGbGV4YnVncyAjNDogaHR0cHM6Ly9naXRodWIuY29tL3BoaWxpcHdhbHRvbi9mbGV4YnVncyNmbGV4YnVnLTRcbiAgICAgIH1cblxuICAgICAgLnJvdy1jb2xzI3skaW5maXh9LWF1dG8gPiAqIHtcbiAgICAgICAgQGluY2x1ZGUgbWFrZS1jb2wtYXV0bygpO1xuICAgICAgfVxuXG4gICAgICBAaWYgJGdyaWQtcm93LWNvbHVtbnMgPiAwIHtcbiAgICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZ3JpZC1yb3ctY29sdW1ucyB7XG4gICAgICAgICAgLnJvdy1jb2xzI3skaW5maXh9LSN7JGl9IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHJvdy1jb2xzKCRpKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLmNvbCN7JGluZml4fS1hdXRvIHtcbiAgICAgICAgQGluY2x1ZGUgbWFrZS1jb2wtYXV0bygpO1xuICAgICAgfVxuXG4gICAgICBAaWYgJGNvbHVtbnMgPiAwIHtcbiAgICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkY29sdW1ucyB7XG4gICAgICAgICAgLmNvbCN7JGluZml4fS0jeyRpfSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBtYWtlLWNvbCgkaSwgJGNvbHVtbnMpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIGAkY29sdW1ucyAtIDFgIGJlY2F1c2Ugb2Zmc2V0dGluZyBieSB0aGUgd2lkdGggb2YgYW4gZW50aXJlIHJvdyBpc24ndCBwb3NzaWJsZVxuICAgICAgICBAZm9yICRpIGZyb20gMCB0aHJvdWdoICgkY29sdW1ucyAtIDEpIHtcbiAgICAgICAgICBAaWYgbm90ICgkaW5maXggPT0gXCJcIiBhbmQgJGkgPT0gMCkgeyAvLyBBdm9pZCBlbWl0dGluZyB1c2VsZXNzIC5vZmZzZXQtMFxuICAgICAgICAgICAgLm9mZnNldCN7JGluZml4fS0jeyRpfSB7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIG1ha2UtY29sLW9mZnNldCgkaSwgJGNvbHVtbnMpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAvLyBHdXR0ZXJzXG4gICAgICAvL1xuICAgICAgLy8gTWFrZSB1c2Ugb2YgYC5nLSpgLCBgLmd4LSpgIG9yIGAuZ3ktKmAgdXRpbGl0aWVzIHRvIGNoYW5nZSBzcGFjaW5nIGJldHdlZW4gdGhlIGNvbHVtbnMuXG4gICAgICBAZWFjaCAka2V5LCAkdmFsdWUgaW4gJGd1dHRlcnMge1xuICAgICAgICAuZyN7JGluZml4fS0jeyRrZXl9LFxuICAgICAgICAuZ3gjeyRpbmZpeH0tI3ska2V5fSB7XG4gICAgICAgICAgLS0jeyRwcmVmaXh9Z3V0dGVyLXg6ICN7JHZhbHVlfTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5nI3skaW5maXh9LSN7JGtleX0sXG4gICAgICAgIC5neSN7JGluZml4fS0jeyRrZXl9IHtcbiAgICAgICAgICAtLSN7JHByZWZpeH1ndXR0ZXIteTogI3skdmFsdWV9O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBtYWtlLWNzc2dyaWQoJGNvbHVtbnM6ICRncmlkLWNvbHVtbnMsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGJyZWFrcG9pbnRzKSB7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkYnJlYWtwb2ludHMpO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAaWYgJGNvbHVtbnMgPiAwIHtcbiAgICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkY29sdW1ucyB7XG4gICAgICAgICAgLmctY29sI3skaW5maXh9LSN7JGl9IHtcbiAgICAgICAgICAgIGdyaWQtY29sdW1uOiBhdXRvIC8gc3BhbiAkaTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvLyBTdGFydCB3aXRoIGAxYCBiZWNhdXNlIGAwYCBpcyBhbmQgaW52YWxpZCB2YWx1ZS5cbiAgICAgICAgLy8gRW5kcyB3aXRoIGAkY29sdW1ucyAtIDFgIGJlY2F1c2Ugb2Zmc2V0dGluZyBieSB0aGUgd2lkdGggb2YgYW4gZW50aXJlIHJvdyBpc24ndCBwb3NzaWJsZS5cbiAgICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAoJGNvbHVtbnMgLSAxKSB7XG4gICAgICAgICAgLmctc3RhcnQjeyRpbmZpeH0tI3skaX0ge1xuICAgICAgICAgICAgZ3JpZC1jb2x1bW4tc3RhcnQ6ICRpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy9cbi8vIEJhc2ljIEJvb3RzdHJhcCB0YWJsZVxuLy9cblxuLnRhYmxlIHtcbiAgLy8gUmVzZXQgbmVlZGVkIGZvciBuZXN0aW5nIHRhYmxlc1xuICAtLSN7JHByZWZpeH10YWJsZS1jb2xvci10eXBlOiBpbml0aWFsO1xuICAtLSN7JHByZWZpeH10YWJsZS1iZy10eXBlOiBpbml0aWFsO1xuICAtLSN7JHByZWZpeH10YWJsZS1jb2xvci1zdGF0ZTogaW5pdGlhbDtcbiAgLS0jeyRwcmVmaXh9dGFibGUtYmctc3RhdGU6IGluaXRpYWw7XG4gIC8vIEVuZCBvZiByZXNldFxuICAtLSN7JHByZWZpeH10YWJsZS1jb2xvcjogI3skdGFibGUtY29sb3J9O1xuICAtLSN7JHByZWZpeH10YWJsZS1iZzogI3skdGFibGUtYmd9O1xuICAtLSN7JHByZWZpeH10YWJsZS1ib3JkZXItY29sb3I6ICN7JHRhYmxlLWJvcmRlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fXRhYmxlLWFjY2VudC1iZzogI3skdGFibGUtYWNjZW50LWJnfTtcbiAgLS0jeyRwcmVmaXh9dGFibGUtc3RyaXBlZC1jb2xvcjogI3skdGFibGUtc3RyaXBlZC1jb2xvcn07XG4gIC0tI3skcHJlZml4fXRhYmxlLXN0cmlwZWQtYmc6ICN7JHRhYmxlLXN0cmlwZWQtYmd9O1xuICAtLSN7JHByZWZpeH10YWJsZS1hY3RpdmUtY29sb3I6ICN7JHRhYmxlLWFjdGl2ZS1jb2xvcn07XG4gIC0tI3skcHJlZml4fXRhYmxlLWFjdGl2ZS1iZzogI3skdGFibGUtYWN0aXZlLWJnfTtcbiAgLS0jeyRwcmVmaXh9dGFibGUtaG92ZXItY29sb3I6ICN7JHRhYmxlLWhvdmVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9dGFibGUtaG92ZXItYmc6ICN7JHRhYmxlLWhvdmVyLWJnfTtcblxuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogJHNwYWNlcjtcbiAgdmVydGljYWwtYWxpZ246ICR0YWJsZS1jZWxsLXZlcnRpY2FsLWFsaWduO1xuICBib3JkZXItY29sb3I6IHZhcigtLSN7JHByZWZpeH10YWJsZS1ib3JkZXItY29sb3IpO1xuXG4gIC8vIFRhcmdldCB0aCAmIHRkXG4gIC8vIFdlIG5lZWQgdGhlIGNoaWxkIGNvbWJpbmF0b3IgdG8gcHJldmVudCBzdHlsZXMgbGVha2luZyB0byBuZXN0ZWQgdGFibGVzIHdoaWNoIGRvZXNuJ3QgaGF2ZSBhIGAudGFibGVgIGNsYXNzLlxuICAvLyBXZSB1c2UgdGhlIHVuaXZlcnNhbCBzZWxlY3RvcnMgaGVyZSB0byBzaW1wbGlmeSB0aGUgc2VsZWN0b3IgKGVsc2Ugd2Ugd291bGQgbmVlZCA2IGRpZmZlcmVudCBzZWxlY3RvcnMpLlxuICAvLyBBbm90aGVyIGFkdmFudGFnZSBpcyB0aGF0IHRoaXMgZ2VuZXJhdGVzIGxlc3MgY29kZSBhbmQgbWFrZXMgdGhlIHNlbGVjdG9yIGxlc3Mgc3BlY2lmaWMgbWFraW5nIGl0IGVhc2llciB0byBvdmVycmlkZS5cbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLW1heC11bml2ZXJzYWxcbiAgPiA6bm90KGNhcHRpb24pID4gKiA+ICoge1xuICAgIHBhZGRpbmc6ICR0YWJsZS1jZWxsLXBhZGRpbmcteSAkdGFibGUtY2VsbC1wYWRkaW5nLXg7XG4gICAgLy8gRm9sbG93aW5nIHRoZSBwcmVjZXB0IG9mIGNhc2NhZGVzOiBodHRwczovL2NvZGVwZW4uaW8vbWlyaWFtc3V6YW5uZS9mdWxsL3ZZTmdvZGJcbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fXRhYmxlLWNvbG9yLXN0YXRlLCB2YXIoLS0jeyRwcmVmaXh9dGFibGUtY29sb3ItdHlwZSwgdmFyKC0tI3skcHJlZml4fXRhYmxlLWNvbG9yKSkpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH10YWJsZS1iZyk7XG4gICAgYm9yZGVyLWJvdHRvbS13aWR0aDogJHRhYmxlLWJvcmRlci13aWR0aDtcbiAgICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCA5OTk5cHggdmFyKC0tI3skcHJlZml4fXRhYmxlLWJnLXN0YXRlLCB2YXIoLS0jeyRwcmVmaXh9dGFibGUtYmctdHlwZSwgdmFyKC0tI3skcHJlZml4fXRhYmxlLWFjY2VudC1iZykpKTtcbiAgfVxuXG4gID4gdGJvZHkge1xuICAgIHZlcnRpY2FsLWFsaWduOiBpbmhlcml0O1xuICB9XG5cbiAgPiB0aGVhZCB7XG4gICAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcbiAgfVxufVxuXG4udGFibGUtZ3JvdXAtZGl2aWRlciB7XG4gIGJvcmRlci10b3A6IGNhbGMoI3skdGFibGUtYm9yZGVyLXdpZHRofSAqIDIpIHNvbGlkICR0YWJsZS1ncm91cC1zZXBhcmF0b3ItY29sb3I7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG59XG5cbi8vXG4vLyBDaGFuZ2UgcGxhY2VtZW50IG9mIGNhcHRpb25zIHdpdGggYSBjbGFzc1xuLy9cblxuLmNhcHRpb24tdG9wIHtcbiAgY2FwdGlvbi1zaWRlOiB0b3A7XG59XG5cblxuLy9cbi8vIENvbmRlbnNlZCB0YWJsZSB3LyBoYWxmIHBhZGRpbmdcbi8vXG5cbi50YWJsZS1zbSB7XG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzZWxlY3Rvci1tYXgtdW5pdmVyc2FsXG4gID4gOm5vdChjYXB0aW9uKSA+ICogPiAqIHtcbiAgICBwYWRkaW5nOiAkdGFibGUtY2VsbC1wYWRkaW5nLXktc20gJHRhYmxlLWNlbGwtcGFkZGluZy14LXNtO1xuICB9XG59XG5cblxuLy8gQm9yZGVyIHZlcnNpb25zXG4vL1xuLy8gQWRkIG9yIHJlbW92ZSBib3JkZXJzIGFsbCBhcm91bmQgdGhlIHRhYmxlIGFuZCBiZXR3ZWVuIGFsbCB0aGUgY29sdW1ucy5cbi8vXG4vLyBXaGVuIGJvcmRlcnMgYXJlIGFkZGVkIG9uIGFsbCBzaWRlcyBvZiB0aGUgY2VsbHMsIHRoZSBjb3JuZXJzIGNhbiByZW5kZXIgb2RkIHdoZW5cbi8vIHRoZXNlIGJvcmRlcnMgZG8gbm90IGhhdmUgdGhlIHNhbWUgY29sb3Igb3IgaWYgdGhleSBhcmUgc2VtaS10cmFuc3BhcmVudC5cbi8vIFRoZXJlZm9yIHdlIGFkZCB0b3AgYW5kIGJvcmRlciBib3R0b21zIHRvIHRoZSBgdHJgcyBhbmQgbGVmdCBhbmQgcmlnaHQgYm9yZGVyc1xuLy8gdG8gdGhlIGB0ZGBzIG9yIGB0aGBzXG5cbi50YWJsZS1ib3JkZXJlZCB7XG4gID4gOm5vdChjYXB0aW9uKSA+ICoge1xuICAgIGJvcmRlci13aWR0aDogJHRhYmxlLWJvcmRlci13aWR0aCAwO1xuXG4gICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLW1heC11bml2ZXJzYWxcbiAgICA+ICoge1xuICAgICAgYm9yZGVyLXdpZHRoOiAwICR0YWJsZS1ib3JkZXItd2lkdGg7XG4gICAgfVxuICB9XG59XG5cbi50YWJsZS1ib3JkZXJsZXNzIHtcbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLW1heC11bml2ZXJzYWxcbiAgPiA6bm90KGNhcHRpb24pID4gKiA+ICoge1xuICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gIH1cblxuICA+IDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgYm9yZGVyLXRvcC13aWR0aDogMDtcbiAgfVxufVxuXG4vLyBaZWJyYS1zdHJpcGluZ1xuLy9cbi8vIERlZmF1bHQgemVicmEtc3RyaXBlIHN0eWxlcyAoYWx0ZXJuYXRpbmcgZ3JheSBhbmQgdHJhbnNwYXJlbnQgYmFja2dyb3VuZHMpXG5cbi8vIEZvciByb3dzXG4udGFibGUtc3RyaXBlZCB7XG4gID4gdGJvZHkgPiB0cjpudGgtb2YtdHlwZSgjeyR0YWJsZS1zdHJpcGVkLW9yZGVyfSkgPiAqIHtcbiAgICAtLSN7JHByZWZpeH10YWJsZS1jb2xvci10eXBlOiB2YXIoLS0jeyRwcmVmaXh9dGFibGUtc3RyaXBlZC1jb2xvcik7XG4gICAgLS0jeyRwcmVmaXh9dGFibGUtYmctdHlwZTogdmFyKC0tI3skcHJlZml4fXRhYmxlLXN0cmlwZWQtYmcpO1xuICB9XG59XG5cbi8vIEZvciBjb2x1bW5zXG4udGFibGUtc3RyaXBlZC1jb2x1bW5zIHtcbiAgPiA6bm90KGNhcHRpb24pID4gdHIgPiA6bnRoLWNoaWxkKCN7JHRhYmxlLXN0cmlwZWQtY29sdW1ucy1vcmRlcn0pIHtcbiAgICAtLSN7JHByZWZpeH10YWJsZS1jb2xvci10eXBlOiB2YXIoLS0jeyRwcmVmaXh9dGFibGUtc3RyaXBlZC1jb2xvcik7XG4gICAgLS0jeyRwcmVmaXh9dGFibGUtYmctdHlwZTogdmFyKC0tI3skcHJlZml4fXRhYmxlLXN0cmlwZWQtYmcpO1xuICB9XG59XG5cbi8vIEFjdGl2ZSB0YWJsZVxuLy9cbi8vIFRoZSBgLnRhYmxlLWFjdGl2ZWAgY2xhc3MgY2FuIGJlIGFkZGVkIHRvIGhpZ2hsaWdodCByb3dzIG9yIGNlbGxzXG5cbi50YWJsZS1hY3RpdmUge1xuICAtLSN7JHByZWZpeH10YWJsZS1jb2xvci1zdGF0ZTogdmFyKC0tI3skcHJlZml4fXRhYmxlLWFjdGl2ZS1jb2xvcik7XG4gIC0tI3skcHJlZml4fXRhYmxlLWJnLXN0YXRlOiB2YXIoLS0jeyRwcmVmaXh9dGFibGUtYWN0aXZlLWJnKTtcbn1cblxuLy8gSG92ZXIgZWZmZWN0XG4vL1xuLy8gUGxhY2VkIGhlcmUgc2luY2UgaXQgaGFzIHRvIGNvbWUgYWZ0ZXIgdGhlIHBvdGVudGlhbCB6ZWJyYSBzdHJpcGluZ1xuXG4udGFibGUtaG92ZXIge1xuICA+IHRib2R5ID4gdHI6aG92ZXIgPiAqIHtcbiAgICAtLSN7JHByZWZpeH10YWJsZS1jb2xvci1zdGF0ZTogdmFyKC0tI3skcHJlZml4fXRhYmxlLWhvdmVyLWNvbG9yKTtcbiAgICAtLSN7JHByZWZpeH10YWJsZS1iZy1zdGF0ZTogdmFyKC0tI3skcHJlZml4fXRhYmxlLWhvdmVyLWJnKTtcbiAgfVxufVxuXG5cbi8vIFRhYmxlIHZhcmlhbnRzXG4vL1xuLy8gVGFibGUgdmFyaWFudHMgc2V0IHRoZSB0YWJsZSBjZWxsIGJhY2tncm91bmRzLCBib3JkZXIgY29sb3JzXG4vLyBhbmQgdGhlIGNvbG9ycyBvZiB0aGUgc3RyaXBlZCwgaG92ZXJlZCAmIGFjdGl2ZSB0YWJsZXNcblxuQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRhYmxlLXZhcmlhbnRzIHtcbiAgQGluY2x1ZGUgdGFibGUtdmFyaWFudCgkY29sb3IsICR2YWx1ZSk7XG59XG5cbi8vIFJlc3BvbnNpdmUgdGFibGVzXG4vL1xuLy8gR2VuZXJhdGUgc2VyaWVzIG9mIGAudGFibGUtcmVzcG9uc2l2ZS0qYCBjbGFzc2VzIGZvciBjb25maWd1cmluZyB0aGUgc2NyZWVuXG4vLyBzaXplIG9mIHdoZXJlIHlvdXIgdGFibGUgd2lsbCBvdmVyZmxvdy5cblxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKCRicmVha3BvaW50KSB7XG4gICAgLnRhYmxlLXJlc3BvbnNpdmUjeyRpbmZpeH0ge1xuICAgICAgb3ZlcmZsb3cteDogYXV0bztcbiAgICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIHNjc3MtZG9jcy1zdGFydCB0YWJsZS12YXJpYW50XG5AbWl4aW4gdGFibGUtdmFyaWFudCgkc3RhdGUsICRiYWNrZ3JvdW5kKSB7XG4gIC50YWJsZS0jeyRzdGF0ZX0ge1xuICAgICRjb2xvcjogY29sb3ItY29udHJhc3Qob3BhcXVlKCRib2R5LWJnLCAkYmFja2dyb3VuZCkpO1xuICAgICRob3Zlci1iZzogbWl4KCRjb2xvciwgJGJhY2tncm91bmQsIHBlcmNlbnRhZ2UoJHRhYmxlLWhvdmVyLWJnLWZhY3RvcikpO1xuICAgICRzdHJpcGVkLWJnOiBtaXgoJGNvbG9yLCAkYmFja2dyb3VuZCwgcGVyY2VudGFnZSgkdGFibGUtc3RyaXBlZC1iZy1mYWN0b3IpKTtcbiAgICAkYWN0aXZlLWJnOiBtaXgoJGNvbG9yLCAkYmFja2dyb3VuZCwgcGVyY2VudGFnZSgkdGFibGUtYWN0aXZlLWJnLWZhY3RvcikpO1xuICAgICR0YWJsZS1ib3JkZXItY29sb3I6IG1peCgkY29sb3IsICRiYWNrZ3JvdW5kLCBwZXJjZW50YWdlKCR0YWJsZS1ib3JkZXItZmFjdG9yKSk7XG5cbiAgICAtLSN7JHByZWZpeH10YWJsZS1jb2xvcjogI3skY29sb3J9O1xuICAgIC0tI3skcHJlZml4fXRhYmxlLWJnOiAjeyRiYWNrZ3JvdW5kfTtcbiAgICAtLSN7JHByZWZpeH10YWJsZS1ib3JkZXItY29sb3I6ICN7JHRhYmxlLWJvcmRlci1jb2xvcn07XG4gICAgLS0jeyRwcmVmaXh9dGFibGUtc3RyaXBlZC1iZzogI3skc3RyaXBlZC1iZ307XG4gICAgLS0jeyRwcmVmaXh9dGFibGUtc3RyaXBlZC1jb2xvcjogI3tjb2xvci1jb250cmFzdCgkc3RyaXBlZC1iZyl9O1xuICAgIC0tI3skcHJlZml4fXRhYmxlLWFjdGl2ZS1iZzogI3skYWN0aXZlLWJnfTtcbiAgICAtLSN7JHByZWZpeH10YWJsZS1hY3RpdmUtY29sb3I6ICN7Y29sb3ItY29udHJhc3QoJGFjdGl2ZS1iZyl9O1xuICAgIC0tI3skcHJlZml4fXRhYmxlLWhvdmVyLWJnOiAjeyRob3Zlci1iZ307XG4gICAgLS0jeyRwcmVmaXh9dGFibGUtaG92ZXItY29sb3I6ICN7Y29sb3ItY29udHJhc3QoJGhvdmVyLWJnKX07XG5cbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fXRhYmxlLWNvbG9yKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLSN7JHByZWZpeH10YWJsZS1ib3JkZXItY29sb3IpO1xuICB9XG59XG4vLyBzY3NzLWRvY3MtZW5kIHRhYmxlLXZhcmlhbnRcbiIsIi8vXG4vLyBMYWJlbHNcbi8vXG5cbi5mb3JtLWxhYmVsIHtcbiAgbWFyZ2luLWJvdHRvbTogJGZvcm0tbGFiZWwtbWFyZ2luLWJvdHRvbTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRmb3JtLWxhYmVsLWZvbnQtc2l6ZSk7XG4gIGZvbnQtc3R5bGU6ICRmb3JtLWxhYmVsLWZvbnQtc3R5bGU7XG4gIGZvbnQtd2VpZ2h0OiAkZm9ybS1sYWJlbC1mb250LXdlaWdodDtcbiAgY29sb3I6ICRmb3JtLWxhYmVsLWNvbG9yO1xufVxuXG4vLyBGb3IgdXNlIHdpdGggaG9yaXpvbnRhbCBhbmQgaW5saW5lIGZvcm1zLCB3aGVuIHlvdSBuZWVkIHRoZSBsYWJlbCAob3IgbGVnZW5kKVxuLy8gdGV4dCB0byBhbGlnbiB3aXRoIHRoZSBmb3JtIGNvbnRyb2xzLlxuLmNvbC1mb3JtLWxhYmVsIHtcbiAgcGFkZGluZy10b3A6IGFkZCgkaW5wdXQtcGFkZGluZy15LCAkaW5wdXQtYm9yZGVyLXdpZHRoKTtcbiAgcGFkZGluZy1ib3R0b206IGFkZCgkaW5wdXQtcGFkZGluZy15LCAkaW5wdXQtYm9yZGVyLXdpZHRoKTtcbiAgbWFyZ2luLWJvdHRvbTogMDsgLy8gT3ZlcnJpZGUgdGhlIGA8bGVnZW5kPmAgZGVmYXVsdFxuICBAaW5jbHVkZSBmb250LXNpemUoaW5oZXJpdCk7IC8vIE92ZXJyaWRlIHRoZSBgPGxlZ2VuZD5gIGRlZmF1bHRcbiAgZm9udC1zdHlsZTogJGZvcm0tbGFiZWwtZm9udC1zdHlsZTtcbiAgZm9udC13ZWlnaHQ6ICRmb3JtLWxhYmVsLWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGZvcm0tbGFiZWwtY29sb3I7XG59XG5cbi5jb2wtZm9ybS1sYWJlbC1sZyB7XG4gIHBhZGRpbmctdG9wOiBhZGQoJGlucHV0LXBhZGRpbmcteS1sZywgJGlucHV0LWJvcmRlci13aWR0aCk7XG4gIHBhZGRpbmctYm90dG9tOiBhZGQoJGlucHV0LXBhZGRpbmcteS1sZywgJGlucHV0LWJvcmRlci13aWR0aCk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5wdXQtZm9udC1zaXplLWxnKTtcbn1cblxuLmNvbC1mb3JtLWxhYmVsLXNtIHtcbiAgcGFkZGluZy10b3A6IGFkZCgkaW5wdXQtcGFkZGluZy15LXNtLCAkaW5wdXQtYm9yZGVyLXdpZHRoKTtcbiAgcGFkZGluZy1ib3R0b206IGFkZCgkaW5wdXQtcGFkZGluZy15LXNtLCAkaW5wdXQtYm9yZGVyLXdpZHRoKTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUtc20pO1xufVxuIiwiLy9cbi8vIEZvcm0gdGV4dFxuLy9cblxuLmZvcm0tdGV4dCB7XG4gIG1hcmdpbi10b3A6ICRmb3JtLXRleHQtbWFyZ2luLXRvcDtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRmb3JtLXRleHQtZm9udC1zaXplKTtcbiAgZm9udC1zdHlsZTogJGZvcm0tdGV4dC1mb250LXN0eWxlO1xuICBmb250LXdlaWdodDogJGZvcm0tdGV4dC1mb250LXdlaWdodDtcbiAgY29sb3I6ICRmb3JtLXRleHQtY29sb3I7XG59XG4iLCIvL1xuLy8gR2VuZXJhbCBmb3JtIGNvbnRyb2xzIChwbHVzIGEgZmV3IHNwZWNpZmljIGhpZ2gtbGV2ZWwgaW50ZXJ2ZW50aW9ucylcbi8vXG5cbi5mb3JtLWNvbnRyb2wge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXkgJGlucHV0LXBhZGRpbmcteDtcbiAgZm9udC1mYW1pbHk6ICRpbnB1dC1mb250LWZhbWlseTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUpO1xuICBmb250LXdlaWdodDogJGlucHV0LWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGlucHV0LWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmc7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlcjogJGlucHV0LWJvcmRlci13aWR0aCBzb2xpZCAkaW5wdXQtYm9yZGVyLWNvbG9yO1xuICBhcHBlYXJhbmNlOiBub25lOyAvLyBGaXggYXBwZWFyYW5jZSBmb3IgZGF0ZSBpbnB1dHMgaW4gU2FmYXJpXG5cbiAgLy8gTm90ZTogVGhpcyBoYXMgbm8gZWZmZWN0IG9uIDxzZWxlY3Q+cyBpbiBzb21lIGJyb3dzZXJzLCBkdWUgdG8gdGhlIGxpbWl0ZWQgc3R5bGFiaWxpdHkgb2YgYDxzZWxlY3Q+YHMgaW4gQ1NTLlxuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRpbnB1dC1ib3JkZXItcmFkaXVzLCAwKTtcblxuICBAaW5jbHVkZSBib3gtc2hhZG93KCRpbnB1dC1ib3gtc2hhZG93KTtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkaW5wdXQtdHJhbnNpdGlvbik7XG5cbiAgJlt0eXBlPVwiZmlsZVwiXSB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjsgLy8gcHJldmVudCBwc2V1ZG8gZWxlbWVudCBidXR0b24gb3ZlcmxhcFxuXG4gICAgJjpub3QoOmRpc2FibGVkKTpub3QoW3JlYWRvbmx5XSkge1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIH1cbiAgfVxuXG4gIC8vIEN1c3RvbWl6ZSB0aGUgYDpmb2N1c2Agc3RhdGUgdG8gaW1pdGF0ZSBuYXRpdmUgV2ViS2l0IHN0eWxlcy5cbiAgJjpmb2N1cyB7XG4gICAgY29sb3I6ICRpbnB1dC1mb2N1cy1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtZm9jdXMtYmc7XG4gICAgYm9yZGVyLWNvbG9yOiAkaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yO1xuICAgIG91dGxpbmU6IDA7XG4gICAgQGlmICRlbmFibGUtc2hhZG93cyB7XG4gICAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRpbnB1dC1ib3gtc2hhZG93LCAkaW5wdXQtZm9jdXMtYm94LXNoYWRvdyk7XG4gICAgfSBAZWxzZSB7XG4gICAgICAvLyBBdm9pZCB1c2luZyBtaXhpbiBzbyB3ZSBjYW4gcGFzcyBjdXN0b20gZm9jdXMgc2hhZG93IHByb3Blcmx5XG4gICAgICBib3gtc2hhZG93OiAkaW5wdXQtZm9jdXMtYm94LXNoYWRvdztcbiAgICB9XG4gIH1cblxuICAmOjotd2Via2l0LWRhdGUtYW5kLXRpbWUtdmFsdWUge1xuICAgIC8vIE9uIEFuZHJvaWQgQ2hyb21lLCBmb3JtLWNvbnRyb2wncyBcIndpZHRoOiAxMDAlXCIgbWFrZXMgdGhlIGlucHV0IHdpZHRoIHRvbyBzbWFsbFxuICAgIC8vIFRlc3RlZCB1bmRlciBBbmRyb2lkIDExIC8gQ2hyb21lIDg5LCBBbmRyb2lkIDEyIC8gQ2hyb21lIDEwMCwgQW5kcm9pZCAxMyAvIENocm9tZSAxMDlcbiAgICAvL1xuICAgIC8vIE9uIGlPUyBTYWZhcmksIGZvcm0tY29udHJvbCdzIFwiYXBwZWFyYW5jZTogbm9uZVwiICsgXCJ3aWR0aDogMTAwJVwiIG1ha2VzIHRoZSBpbnB1dCB3aWR0aCB0b28gc21hbGxcbiAgICAvLyBUZXN0ZWQgdW5kZXIgaU9TIDE2LjIgLyBTYWZhcmkgMTYuMlxuICAgIG1pbi13aWR0aDogODVweDsgLy8gU2VlbXMgdG8gYmUgYSBnb29kIG1pbmltdW0gc2FmZSB3aWR0aFxuXG4gICAgLy8gQWRkIHNvbWUgaGVpZ2h0IHRvIGRhdGUgaW5wdXRzIG9uIGlPU1xuICAgIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjMzMDdcbiAgICAvLyBUT0RPOiB3ZSBjYW4gcmVtb3ZlIHRoaXMgd29ya2Fyb3VuZCBvbmNlIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xOTg5NTkgaXMgcmVzb2x2ZWRcbiAgICAvLyBNdWx0aXBseSBsaW5lLWhlaWdodCBieSAxZW0gaWYgaXQgaGFzIG5vIHVuaXRcbiAgICBoZWlnaHQ6IGlmKHVuaXQoJGlucHV0LWxpbmUtaGVpZ2h0KSA9PSBcIlwiLCAkaW5wdXQtbGluZS1oZWlnaHQgKiAxZW0sICRpbnB1dC1saW5lLWhlaWdodCk7XG5cbiAgICAvLyBBbmRyb2lkIENocm9tZSB0eXBlPVwiZGF0ZVwiIGlzIHRhbGxlciB0aGFuIHRoZSBvdGhlciBpbnB1dHNcbiAgICAvLyBiZWNhdXNlIG9mIFwibWFyZ2luOiAxcHggMjRweCAxcHggNHB4XCIgaW5zaWRlIHRoZSBzaGFkb3cgRE9NXG4gICAgLy8gVGVzdGVkIHVuZGVyIEFuZHJvaWQgMTEgLyBDaHJvbWUgODksIEFuZHJvaWQgMTIgLyBDaHJvbWUgMTAwLCBBbmRyb2lkIDEzIC8gQ2hyb21lIDEwOVxuICAgIG1hcmdpbjogMDtcbiAgfVxuXG4gIC8vIFByZXZlbnQgZXhjZXNzaXZlIGRhdGUgaW5wdXQgaGVpZ2h0IGluIFdlYmtpdFxuICAvLyBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzM0NDMzXG4gICY6Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuXG4gIC8vIFBsYWNlaG9sZGVyXG4gICY6OnBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogJGlucHV0LXBsYWNlaG9sZGVyLWNvbG9yO1xuICAgIC8vIE92ZXJyaWRlIEZpcmVmb3gncyB1bnVzdWFsIGRlZmF1bHQgb3BhY2l0eTsgc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzExNTI2LlxuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAvLyBEaXNhYmxlZCBpbnB1dHNcbiAgLy9cbiAgLy8gSFRNTDUgc2F5cyB0aGF0IGNvbnRyb2xzIHVuZGVyIGEgZmllbGRzZXQgPiBsZWdlbmQ6Zmlyc3QtY2hpbGQgd29uJ3QgYmVcbiAgLy8gZGlzYWJsZWQgaWYgdGhlIGZpZWxkc2V0IGlzIGRpc2FibGVkLiBEdWUgdG8gaW1wbGVtZW50YXRpb24gZGlmZmljdWx0eSwgd2VcbiAgLy8gZG9uJ3QgaG9ub3IgdGhhdCBlZGdlIGNhc2U7IHdlIHN0eWxlIHRoZW0gYXMgZGlzYWJsZWQgYW55d2F5LlxuICAmOmRpc2FibGVkIHtcbiAgICBjb2xvcjogJGlucHV0LWRpc2FibGVkLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1kaXNhYmxlZC1iZztcbiAgICBib3JkZXItY29sb3I6ICRpbnB1dC1kaXNhYmxlZC1ib3JkZXItY29sb3I7XG4gICAgLy8gaU9TIGZpeCBmb3IgdW5yZWFkYWJsZSBkaXNhYmxlZCBjb250ZW50OyBzZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xMTY1NS5cbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgLy8gRmlsZSBpbnB1dCBidXR0b25zIHRoZW1pbmdcbiAgJjo6ZmlsZS1zZWxlY3Rvci1idXR0b24ge1xuICAgIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXkgJGlucHV0LXBhZGRpbmcteDtcbiAgICBtYXJnaW46ICgtJGlucHV0LXBhZGRpbmcteSkgKC0kaW5wdXQtcGFkZGluZy14KTtcbiAgICBtYXJnaW4taW5saW5lLWVuZDogJGlucHV0LXBhZGRpbmcteDtcbiAgICBjb2xvcjogJGZvcm0tZmlsZS1idXR0b24tY29sb3I7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGZvcm0tZmlsZS1idXR0b24tYmcpO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGJvcmRlci1jb2xvcjogaW5oZXJpdDtcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci13aWR0aDogMDtcbiAgICBib3JkZXItaW5saW5lLWVuZC13aWR0aDogJGlucHV0LWJvcmRlci13aWR0aDtcbiAgICBib3JkZXItcmFkaXVzOiAwOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIHByb3BlcnR5LWRpc2FsbG93ZWQtbGlzdFxuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oJGJ0bi10cmFuc2l0aW9uKTtcbiAgfVxuXG4gICY6aG92ZXI6bm90KDpkaXNhYmxlZCk6bm90KFtyZWFkb25seV0pOjpmaWxlLXNlbGVjdG9yLWJ1dHRvbiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGZvcm0tZmlsZS1idXR0b24taG92ZXItYmc7XG4gIH1cbn1cblxuLy8gUmVhZG9ubHkgY29udHJvbHMgYXMgcGxhaW4gdGV4dFxuLy9cbi8vIEFwcGx5IGNsYXNzIHRvIGEgcmVhZG9ubHkgaW5wdXQgdG8gbWFrZSBpdCBhcHBlYXIgbGlrZSByZWd1bGFyIHBsYWluXG4vLyB0ZXh0ICh3aXRob3V0IGFueSBib3JkZXIsIGJhY2tncm91bmQgY29sb3IsIGZvY3VzIGluZGljYXRvcilcblxuLmZvcm0tY29udHJvbC1wbGFpbnRleHQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXkgMDtcbiAgbWFyZ2luLWJvdHRvbTogMDsgLy8gbWF0Y2ggaW5wdXRzIGlmIHRoaXMgY2xhc3MgY29tZXMgb24gaW5wdXRzIHdpdGggZGVmYXVsdCBtYXJnaW5zXG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkaW5wdXQtcGxhaW50ZXh0LWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXdpZHRoOiAkaW5wdXQtYm9yZGVyLXdpZHRoIDA7XG5cbiAgJjpmb2N1cyB7XG4gICAgb3V0bGluZTogMDtcbiAgfVxuXG4gICYuZm9ybS1jb250cm9sLXNtLFxuICAmLmZvcm0tY29udHJvbC1sZyB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gIH1cbn1cblxuLy8gRm9ybSBjb250cm9sIHNpemluZ1xuLy9cbi8vIEJ1aWxkIG9uIGAuZm9ybS1jb250cm9sYCB3aXRoIG1vZGlmaWVyIGNsYXNzZXMgdG8gZGVjcmVhc2Ugb3IgaW5jcmVhc2UgdGhlXG4vLyBoZWlnaHQgYW5kIGZvbnQtc2l6ZSBvZiBmb3JtIGNvbnRyb2xzLlxuLy9cbi8vIFJlcGVhdGVkIGluIGBfaW5wdXRfZ3JvdXAuc2Nzc2AgdG8gYXZvaWQgU2FzcyBleHRlbmQgaXNzdWVzLlxuXG4uZm9ybS1jb250cm9sLXNtIHtcbiAgbWluLWhlaWdodDogJGlucHV0LWhlaWdodC1zbTtcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteS1zbSAkaW5wdXQtcGFkZGluZy14LXNtO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZS1zbSk7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMtc20pO1xuXG4gICY6OmZpbGUtc2VsZWN0b3ItYnV0dG9uIHtcbiAgICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15LXNtICRpbnB1dC1wYWRkaW5nLXgtc207XG4gICAgbWFyZ2luOiAoLSRpbnB1dC1wYWRkaW5nLXktc20pICgtJGlucHV0LXBhZGRpbmcteC1zbSk7XG4gICAgbWFyZ2luLWlubGluZS1lbmQ6ICRpbnB1dC1wYWRkaW5nLXgtc207XG4gIH1cbn1cblxuLmZvcm0tY29udHJvbC1sZyB7XG4gIG1pbi1oZWlnaHQ6ICRpbnB1dC1oZWlnaHQtbGc7XG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXktbGcgJGlucHV0LXBhZGRpbmcteC1sZztcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUtbGcpO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRpbnB1dC1ib3JkZXItcmFkaXVzLWxnKTtcblxuICAmOjpmaWxlLXNlbGVjdG9yLWJ1dHRvbiB7XG4gICAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteS1sZyAkaW5wdXQtcGFkZGluZy14LWxnO1xuICAgIG1hcmdpbjogKC0kaW5wdXQtcGFkZGluZy15LWxnKSAoLSRpbnB1dC1wYWRkaW5nLXgtbGcpO1xuICAgIG1hcmdpbi1pbmxpbmUtZW5kOiAkaW5wdXQtcGFkZGluZy14LWxnO1xuICB9XG59XG5cbi8vIE1ha2Ugc3VyZSB0ZXh0YXJlYXMgZG9uJ3Qgc2hyaW5rIHRvbyBtdWNoIHdoZW4gcmVzaXplZFxuLy8gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMjkxMjRcbi8vIHN0eWxlbGludC1kaXNhYmxlIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZVxudGV4dGFyZWEge1xuICAmLmZvcm0tY29udHJvbCB7XG4gICAgbWluLWhlaWdodDogJGlucHV0LWhlaWdodDtcbiAgfVxuXG4gICYuZm9ybS1jb250cm9sLXNtIHtcbiAgICBtaW4taGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LXNtO1xuICB9XG5cbiAgJi5mb3JtLWNvbnRyb2wtbGcge1xuICAgIG1pbi1oZWlnaHQ6ICRpbnB1dC1oZWlnaHQtbGc7XG4gIH1cbn1cbi8vIHN0eWxlbGludC1lbmFibGUgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlXG5cbi5mb3JtLWNvbnRyb2wtY29sb3Ige1xuICB3aWR0aDogJGZvcm0tY29sb3Itd2lkdGg7XG4gIGhlaWdodDogJGlucHV0LWhlaWdodDtcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteTtcblxuICAmOm5vdCg6ZGlzYWJsZWQpOm5vdChbcmVhZG9ubHldKSB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG5cbiAgJjo6LW1vei1jb2xvci1zd2F0Y2gge1xuICAgIGJvcmRlcjogMCAhaW1wb3J0YW50OyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMpO1xuICB9XG5cbiAgJjo6LXdlYmtpdC1jb2xvci1zd2F0Y2gge1xuICAgIGJvcmRlcjogMCAhaW1wb3J0YW50OyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMpO1xuICB9XG5cbiAgJi5mb3JtLWNvbnRyb2wtc20geyBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQtc207IH1cbiAgJi5mb3JtLWNvbnRyb2wtbGcgeyBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQtbGc7IH1cbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIHByb3BlcnR5LWRpc2FsbG93ZWQtbGlzdFxuQG1peGluIHRyYW5zaXRpb24oJHRyYW5zaXRpb24uLi4pIHtcbiAgQGlmIGxlbmd0aCgkdHJhbnNpdGlvbikgPT0gMCB7XG4gICAgJHRyYW5zaXRpb246ICR0cmFuc2l0aW9uLWJhc2U7XG4gIH1cblxuICBAaWYgbGVuZ3RoKCR0cmFuc2l0aW9uKSA+IDEge1xuICAgIEBlYWNoICR2YWx1ZSBpbiAkdHJhbnNpdGlvbiB7XG4gICAgICBAaWYgJHZhbHVlID09IG51bGwgb3IgJHZhbHVlID09IG5vbmUge1xuICAgICAgICBAd2FybiBcIlRoZSBrZXl3b3JkICdub25lJyBvciAnbnVsbCcgbXVzdCBiZSB1c2VkIGFzIGEgc2luZ2xlIGFyZ3VtZW50LlwiO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBpZiAkZW5hYmxlLXRyYW5zaXRpb25zIHtcbiAgICBAaWYgbnRoKCR0cmFuc2l0aW9uLCAxKSAhPSBudWxsIHtcbiAgICAgIHRyYW5zaXRpb246ICR0cmFuc2l0aW9uO1xuICAgIH1cblxuICAgIEBpZiAkZW5hYmxlLXJlZHVjZWQtbW90aW9uIGFuZCBudGgoJHRyYW5zaXRpb24sIDEpICE9IG51bGwgYW5kIG50aCgkdHJhbnNpdGlvbiwgMSkgIT0gbm9uZSB7XG4gICAgICBAbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAgICAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gR3JhZGllbnRzXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBncmFkaWVudC1iZy1taXhpblxuQG1peGluIGdyYWRpZW50LWJnKCRjb2xvcjogbnVsbCkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XG5cbiAgQGlmICRlbmFibGUtZ3JhZGllbnRzIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB2YXIoLS0jeyRwcmVmaXh9Z3JhZGllbnQpO1xuICB9XG59XG4vLyBzY3NzLWRvY3MtZW5kIGdyYWRpZW50LWJnLW1peGluXG5cbi8vIHNjc3MtZG9jcy1zdGFydCBncmFkaWVudC1taXhpbnNcbi8vIEhvcml6b250YWwgZ3JhZGllbnQsIGZyb20gbGVmdCB0byByaWdodFxuLy9cbi8vIENyZWF0ZXMgdHdvIGNvbG9yIHN0b3BzLCBzdGFydCBhbmQgZW5kLCBieSBzcGVjaWZ5aW5nIGEgY29sb3IgYW5kIHBvc2l0aW9uIGZvciBlYWNoIGNvbG9yIHN0b3AuXG5AbWl4aW4gZ3JhZGllbnQteCgkc3RhcnQtY29sb3I6ICRncmF5LTcwMCwgJGVuZC1jb2xvcjogJGdyYXktODAwLCAkc3RhcnQtcGVyY2VudDogMCUsICRlbmQtcGVyY2VudDogMTAwJSkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICRzdGFydC1jb2xvciAkc3RhcnQtcGVyY2VudCwgJGVuZC1jb2xvciAkZW5kLXBlcmNlbnQpO1xufVxuXG4vLyBWZXJ0aWNhbCBncmFkaWVudCwgZnJvbSB0b3AgdG8gYm90dG9tXG4vL1xuLy8gQ3JlYXRlcyB0d28gY29sb3Igc3RvcHMsIHN0YXJ0IGFuZCBlbmQsIGJ5IHNwZWNpZnlpbmcgYSBjb2xvciBhbmQgcG9zaXRpb24gZm9yIGVhY2ggY29sb3Igc3RvcC5cbkBtaXhpbiBncmFkaWVudC15KCRzdGFydC1jb2xvcjogJGdyYXktNzAwLCAkZW5kLWNvbG9yOiAkZ3JheS04MDAsICRzdGFydC1wZXJjZW50OiBudWxsLCAkZW5kLXBlcmNlbnQ6IG51bGwpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgJHN0YXJ0LWNvbG9yICRzdGFydC1wZXJjZW50LCAkZW5kLWNvbG9yICRlbmQtcGVyY2VudCk7XG59XG5cbkBtaXhpbiBncmFkaWVudC1kaXJlY3Rpb25hbCgkc3RhcnQtY29sb3I6ICRncmF5LTcwMCwgJGVuZC1jb2xvcjogJGdyYXktODAwLCAkZGVnOiA0NWRlZykge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoJGRlZywgJHN0YXJ0LWNvbG9yLCAkZW5kLWNvbG9yKTtcbn1cblxuQG1peGluIGdyYWRpZW50LXgtdGhyZWUtY29sb3JzKCRzdGFydC1jb2xvcjogJGJsdWUsICRtaWQtY29sb3I6ICRwdXJwbGUsICRjb2xvci1zdG9wOiA1MCUsICRlbmQtY29sb3I6ICRyZWQpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAkc3RhcnQtY29sb3IsICRtaWQtY29sb3IgJGNvbG9yLXN0b3AsICRlbmQtY29sb3IpO1xufVxuXG5AbWl4aW4gZ3JhZGllbnQteS10aHJlZS1jb2xvcnMoJHN0YXJ0LWNvbG9yOiAkYmx1ZSwgJG1pZC1jb2xvcjogJHB1cnBsZSwgJGNvbG9yLXN0b3A6IDUwJSwgJGVuZC1jb2xvcjogJHJlZCkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoJHN0YXJ0LWNvbG9yLCAkbWlkLWNvbG9yICRjb2xvci1zdG9wLCAkZW5kLWNvbG9yKTtcbn1cblxuQG1peGluIGdyYWRpZW50LXJhZGlhbCgkaW5uZXItY29sb3I6ICRncmF5LTcwMCwgJG91dGVyLWNvbG9yOiAkZ3JheS04MDApIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogcmFkaWFsLWdyYWRpZW50KGNpcmNsZSwgJGlubmVyLWNvbG9yLCAkb3V0ZXItY29sb3IpO1xufVxuXG5AbWl4aW4gZ3JhZGllbnQtc3RyaXBlZCgkY29sb3I6IHJnYmEoJHdoaXRlLCAuMTUpLCAkYW5nbGU6IDQ1ZGVnKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgkYW5nbGUsICRjb2xvciAyNSUsIHRyYW5zcGFyZW50IDI1JSwgdHJhbnNwYXJlbnQgNTAlLCAkY29sb3IgNTAlLCAkY29sb3IgNzUlLCB0cmFuc3BhcmVudCA3NSUsIHRyYW5zcGFyZW50KTtcbn1cbi8vIHNjc3MtZG9jcy1lbmQgZ3JhZGllbnQtbWl4aW5zXG4iLCIvLyBTZWxlY3Rcbi8vXG4vLyBSZXBsYWNlcyB0aGUgYnJvd3NlciBkZWZhdWx0IHNlbGVjdCB3aXRoIGEgY3VzdG9tIG9uZSwgbW9zdGx5IHB1bGxlZCBmcm9tXG4vLyBodHRwczovL3ByaW1lci5naXRodWIuaW8vLlxuXG4uZm9ybS1zZWxlY3Qge1xuICAtLSN7JHByZWZpeH1mb3JtLXNlbGVjdC1iZy1pbWc6ICN7ZXNjYXBlLXN2ZygkZm9ybS1zZWxlY3QtaW5kaWNhdG9yKX07XG5cbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAkZm9ybS1zZWxlY3QtcGFkZGluZy15ICRmb3JtLXNlbGVjdC1pbmRpY2F0b3ItcGFkZGluZyAkZm9ybS1zZWxlY3QtcGFkZGluZy15ICRmb3JtLXNlbGVjdC1wYWRkaW5nLXg7XG4gIGZvbnQtZmFtaWx5OiAkZm9ybS1zZWxlY3QtZm9udC1mYW1pbHk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9ybS1zZWxlY3QtZm9udC1zaXplKTtcbiAgZm9udC13ZWlnaHQ6ICRmb3JtLXNlbGVjdC1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRmb3JtLXNlbGVjdC1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRmb3JtLXNlbGVjdC1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGZvcm0tc2VsZWN0LWJnO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB2YXIoLS0jeyRwcmVmaXh9Zm9ybS1zZWxlY3QtYmctaW1nKSwgdmFyKC0tI3skcHJlZml4fWZvcm0tc2VsZWN0LWJnLWljb24sIG5vbmUpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAkZm9ybS1zZWxlY3QtYmctcG9zaXRpb247XG4gIGJhY2tncm91bmQtc2l6ZTogJGZvcm0tc2VsZWN0LWJnLXNpemU7XG4gIGJvcmRlcjogJGZvcm0tc2VsZWN0LWJvcmRlci13aWR0aCBzb2xpZCAkZm9ybS1zZWxlY3QtYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRmb3JtLXNlbGVjdC1ib3JkZXItcmFkaXVzLCAwKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkZm9ybS1zZWxlY3QtYm94LXNoYWRvdyk7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJGZvcm0tc2VsZWN0LXRyYW5zaXRpb24pO1xuICBhcHBlYXJhbmNlOiBub25lO1xuXG4gICY6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogJGZvcm0tc2VsZWN0LWZvY3VzLWJvcmRlci1jb2xvcjtcbiAgICBvdXRsaW5lOiAwO1xuICAgIEBpZiAkZW5hYmxlLXNoYWRvd3Mge1xuICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygkZm9ybS1zZWxlY3QtYm94LXNoYWRvdywgJGZvcm0tc2VsZWN0LWZvY3VzLWJveC1zaGFkb3cpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgLy8gQXZvaWQgdXNpbmcgbWl4aW4gc28gd2UgY2FuIHBhc3MgY3VzdG9tIGZvY3VzIHNoYWRvdyBwcm9wZXJseVxuICAgICAgYm94LXNoYWRvdzogJGZvcm0tc2VsZWN0LWZvY3VzLWJveC1zaGFkb3c7XG4gICAgfVxuICB9XG5cbiAgJlttdWx0aXBsZV0sXG4gICZbc2l6ZV06bm90KFtzaXplPVwiMVwiXSkge1xuICAgIHBhZGRpbmctcmlnaHQ6ICRmb3JtLXNlbGVjdC1wYWRkaW5nLXg7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgfVxuXG4gICY6ZGlzYWJsZWQge1xuICAgIGNvbG9yOiAkZm9ybS1zZWxlY3QtZGlzYWJsZWQtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGZvcm0tc2VsZWN0LWRpc2FibGVkLWJnO1xuICAgIGJvcmRlci1jb2xvcjogJGZvcm0tc2VsZWN0LWRpc2FibGVkLWJvcmRlci1jb2xvcjtcbiAgfVxuXG4gIC8vIFJlbW92ZSBvdXRsaW5lIGZyb20gc2VsZWN0IGJveCBpbiBGRlxuICAmOi1tb3otZm9jdXNyaW5nIHtcbiAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgdGV4dC1zaGFkb3c6IDAgMCAwICRmb3JtLXNlbGVjdC1jb2xvcjtcbiAgfVxufVxuXG4uZm9ybS1zZWxlY3Qtc20ge1xuICBwYWRkaW5nLXRvcDogJGZvcm0tc2VsZWN0LXBhZGRpbmcteS1zbTtcbiAgcGFkZGluZy1ib3R0b206ICRmb3JtLXNlbGVjdC1wYWRkaW5nLXktc207XG4gIHBhZGRpbmctbGVmdDogJGZvcm0tc2VsZWN0LXBhZGRpbmcteC1zbTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRmb3JtLXNlbGVjdC1mb250LXNpemUtc20pO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRmb3JtLXNlbGVjdC1ib3JkZXItcmFkaXVzLXNtKTtcbn1cblxuLmZvcm0tc2VsZWN0LWxnIHtcbiAgcGFkZGluZy10b3A6ICRmb3JtLXNlbGVjdC1wYWRkaW5nLXktbGc7XG4gIHBhZGRpbmctYm90dG9tOiAkZm9ybS1zZWxlY3QtcGFkZGluZy15LWxnO1xuICBwYWRkaW5nLWxlZnQ6ICRmb3JtLXNlbGVjdC1wYWRkaW5nLXgtbGc7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9ybS1zZWxlY3QtZm9udC1zaXplLWxnKTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkZm9ybS1zZWxlY3QtYm9yZGVyLXJhZGl1cy1sZyk7XG59XG5cbkBpZiAkZW5hYmxlLWRhcmstbW9kZSB7XG4gIEBpbmNsdWRlIGNvbG9yLW1vZGUoZGFyaykge1xuICAgIC5mb3JtLXNlbGVjdCB7XG4gICAgICAtLSN7JHByZWZpeH1mb3JtLXNlbGVjdC1iZy1pbWc6ICN7ZXNjYXBlLXN2ZygkZm9ybS1zZWxlY3QtaW5kaWNhdG9yLWRhcmspfTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vXG4vLyBDaGVjay9yYWRpb1xuLy9cblxuLmZvcm0tY2hlY2sge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWluLWhlaWdodDogJGZvcm0tY2hlY2stbWluLWhlaWdodDtcbiAgcGFkZGluZy1sZWZ0OiAkZm9ybS1jaGVjay1wYWRkaW5nLXN0YXJ0O1xuICBtYXJnaW4tYm90dG9tOiAkZm9ybS1jaGVjay1tYXJnaW4tYm90dG9tO1xuXG4gIC5mb3JtLWNoZWNrLWlucHV0IHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW4tbGVmdDogJGZvcm0tY2hlY2stcGFkZGluZy1zdGFydCAqIC0xO1xuICB9XG59XG5cbi5mb3JtLWNoZWNrLXJldmVyc2Uge1xuICBwYWRkaW5nLXJpZ2h0OiAkZm9ybS1jaGVjay1wYWRkaW5nLXN0YXJ0O1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xuXG4gIC5mb3JtLWNoZWNrLWlucHV0IHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgbWFyZ2luLXJpZ2h0OiAkZm9ybS1jaGVjay1wYWRkaW5nLXN0YXJ0ICogLTE7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cbn1cblxuLmZvcm0tY2hlY2staW5wdXQge1xuICAtLSN7JHByZWZpeH1mb3JtLWNoZWNrLWJnOiAjeyRmb3JtLWNoZWNrLWlucHV0LWJnfTtcblxuICB3aWR0aDogJGZvcm0tY2hlY2staW5wdXQtd2lkdGg7XG4gIGhlaWdodDogJGZvcm0tY2hlY2staW5wdXQtd2lkdGg7XG4gIG1hcmdpbi10b3A6ICgkbGluZS1oZWlnaHQtYmFzZSAtICRmb3JtLWNoZWNrLWlucHV0LXdpZHRoKSAqIC41OyAvLyBsaW5lLWhlaWdodCBtaW51cyBjaGVjayBoZWlnaHRcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fWZvcm0tY2hlY2stYmcpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB2YXIoLS0jeyRwcmVmaXh9Zm9ybS1jaGVjay1iZy1pbWFnZSk7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICBib3JkZXI6ICRmb3JtLWNoZWNrLWlucHV0LWJvcmRlcjtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgcHJpbnQtY29sb3ItYWRqdXN0OiBleGFjdDsgLy8gS2VlcCB0aGVtZWQgYXBwZWFyYW5jZSBmb3IgcHJpbnRcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkZm9ybS1jaGVjay10cmFuc2l0aW9uKTtcblxuICAmW3R5cGU9XCJjaGVja2JveFwiXSB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkZm9ybS1jaGVjay1pbnB1dC1ib3JkZXItcmFkaXVzKTtcbiAgfVxuXG4gICZbdHlwZT1cInJhZGlvXCJdIHtcbiAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG4gICAgYm9yZGVyLXJhZGl1czogJGZvcm0tY2hlY2stcmFkaW8tYm9yZGVyLXJhZGl1cztcbiAgfVxuXG4gICY6YWN0aXZlIHtcbiAgICBmaWx0ZXI6ICRmb3JtLWNoZWNrLWlucHV0LWFjdGl2ZS1maWx0ZXI7XG4gIH1cblxuICAmOmZvY3VzIHtcbiAgICBib3JkZXItY29sb3I6ICRmb3JtLWNoZWNrLWlucHV0LWZvY3VzLWJvcmRlcjtcbiAgICBvdXRsaW5lOiAwO1xuICAgIGJveC1zaGFkb3c6ICRmb3JtLWNoZWNrLWlucHV0LWZvY3VzLWJveC1zaGFkb3c7XG4gIH1cblxuICAmOmNoZWNrZWQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRmb3JtLWNoZWNrLWlucHV0LWNoZWNrZWQtYmctY29sb3I7XG4gICAgYm9yZGVyLWNvbG9yOiAkZm9ybS1jaGVjay1pbnB1dC1jaGVja2VkLWJvcmRlci1jb2xvcjtcblxuICAgICZbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgICAgIEBpZiAkZW5hYmxlLWdyYWRpZW50cyB7XG4gICAgICAgIC0tI3skcHJlZml4fWZvcm0tY2hlY2stYmctaW1hZ2U6ICN7ZXNjYXBlLXN2ZygkZm9ybS1jaGVjay1pbnB1dC1jaGVja2VkLWJnLWltYWdlKX0sIHZhcigtLSN7JHByZWZpeH1ncmFkaWVudCk7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgLS0jeyRwcmVmaXh9Zm9ybS1jaGVjay1iZy1pbWFnZTogI3tlc2NhcGUtc3ZnKCRmb3JtLWNoZWNrLWlucHV0LWNoZWNrZWQtYmctaW1hZ2UpfTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmW3R5cGU9XCJyYWRpb1wiXSB7XG4gICAgICBAaWYgJGVuYWJsZS1ncmFkaWVudHMge1xuICAgICAgICAtLSN7JHByZWZpeH1mb3JtLWNoZWNrLWJnLWltYWdlOiAje2VzY2FwZS1zdmcoJGZvcm0tY2hlY2stcmFkaW8tY2hlY2tlZC1iZy1pbWFnZSl9LCB2YXIoLS0jeyRwcmVmaXh9Z3JhZGllbnQpO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIC0tI3skcHJlZml4fWZvcm0tY2hlY2stYmctaW1hZ2U6ICN7ZXNjYXBlLXN2ZygkZm9ybS1jaGVjay1yYWRpby1jaGVja2VkLWJnLWltYWdlKX07XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJlt0eXBlPVwiY2hlY2tib3hcIl06aW5kZXRlcm1pbmF0ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGZvcm0tY2hlY2staW5wdXQtaW5kZXRlcm1pbmF0ZS1iZy1jb2xvcjtcbiAgICBib3JkZXItY29sb3I6ICRmb3JtLWNoZWNrLWlucHV0LWluZGV0ZXJtaW5hdGUtYm9yZGVyLWNvbG9yO1xuXG4gICAgQGlmICRlbmFibGUtZ3JhZGllbnRzIHtcbiAgICAgIC0tI3skcHJlZml4fWZvcm0tY2hlY2stYmctaW1hZ2U6ICN7ZXNjYXBlLXN2ZygkZm9ybS1jaGVjay1pbnB1dC1pbmRldGVybWluYXRlLWJnLWltYWdlKX0sIHZhcigtLSN7JHByZWZpeH1ncmFkaWVudCk7XG4gICAgfSBAZWxzZSB7XG4gICAgICAtLSN7JHByZWZpeH1mb3JtLWNoZWNrLWJnLWltYWdlOiAje2VzY2FwZS1zdmcoJGZvcm0tY2hlY2staW5wdXQtaW5kZXRlcm1pbmF0ZS1iZy1pbWFnZSl9O1xuICAgIH1cbiAgfVxuXG4gICY6ZGlzYWJsZWQge1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGZpbHRlcjogbm9uZTtcbiAgICBvcGFjaXR5OiAkZm9ybS1jaGVjay1pbnB1dC1kaXNhYmxlZC1vcGFjaXR5O1xuICB9XG5cbiAgLy8gVXNlIGRpc2FibGVkIGF0dHJpYnV0ZSBpbiBhZGRpdGlvbiBvZiA6ZGlzYWJsZWQgcHNldWRvLWNsYXNzXG4gIC8vIFNlZTogaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8yODI0N1xuICAmW2Rpc2FibGVkXSxcbiAgJjpkaXNhYmxlZCB7XG4gICAgfiAuZm9ybS1jaGVjay1sYWJlbCB7XG4gICAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgICBvcGFjaXR5OiAkZm9ybS1jaGVjay1sYWJlbC1kaXNhYmxlZC1vcGFjaXR5O1xuICAgIH1cbiAgfVxufVxuXG4uZm9ybS1jaGVjay1sYWJlbCB7XG4gIGNvbG9yOiAkZm9ybS1jaGVjay1sYWJlbC1jb2xvcjtcbiAgY3Vyc29yOiAkZm9ybS1jaGVjay1sYWJlbC1jdXJzb3I7XG59XG5cbi8vXG4vLyBTd2l0Y2hcbi8vXG5cbi5mb3JtLXN3aXRjaCB7XG4gIHBhZGRpbmctbGVmdDogJGZvcm0tc3dpdGNoLXBhZGRpbmctc3RhcnQ7XG5cbiAgLmZvcm0tY2hlY2staW5wdXQge1xuICAgIC0tI3skcHJlZml4fWZvcm0tc3dpdGNoLWJnOiAje2VzY2FwZS1zdmcoJGZvcm0tc3dpdGNoLWJnLWltYWdlKX07XG5cbiAgICB3aWR0aDogJGZvcm0tc3dpdGNoLXdpZHRoO1xuICAgIG1hcmdpbi1sZWZ0OiAkZm9ybS1zd2l0Y2gtcGFkZGluZy1zdGFydCAqIC0xO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHZhcigtLSN7JHByZWZpeH1mb3JtLXN3aXRjaC1iZyk7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogbGVmdCBjZW50ZXI7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkZm9ybS1zd2l0Y2gtYm9yZGVyLXJhZGl1cyk7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigkZm9ybS1zd2l0Y2gtdHJhbnNpdGlvbik7XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIC0tI3skcHJlZml4fWZvcm0tc3dpdGNoLWJnOiAje2VzY2FwZS1zdmcoJGZvcm0tc3dpdGNoLWZvY3VzLWJnLWltYWdlKX07XG4gICAgfVxuXG4gICAgJjpjaGVja2VkIHtcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246ICRmb3JtLXN3aXRjaC1jaGVja2VkLWJnLXBvc2l0aW9uO1xuXG4gICAgICBAaWYgJGVuYWJsZS1ncmFkaWVudHMge1xuICAgICAgICAtLSN7JHByZWZpeH1mb3JtLXN3aXRjaC1iZzogI3tlc2NhcGUtc3ZnKCRmb3JtLXN3aXRjaC1jaGVja2VkLWJnLWltYWdlKX0sIHZhcigtLSN7JHByZWZpeH1ncmFkaWVudCk7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgLS0jeyRwcmVmaXh9Zm9ybS1zd2l0Y2gtYmc6ICN7ZXNjYXBlLXN2ZygkZm9ybS1zd2l0Y2gtY2hlY2tlZC1iZy1pbWFnZSl9O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICYuZm9ybS1jaGVjay1yZXZlcnNlIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAkZm9ybS1zd2l0Y2gtcGFkZGluZy1zdGFydDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG5cbiAgICAuZm9ybS1jaGVjay1pbnB1dCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6ICRmb3JtLXN3aXRjaC1wYWRkaW5nLXN0YXJ0ICogLTE7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICB9XG4gIH1cbn1cblxuLmZvcm0tY2hlY2staW5saW5lIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tcmlnaHQ6ICRmb3JtLWNoZWNrLWlubGluZS1tYXJnaW4tZW5kO1xufVxuXG4uYnRuLWNoZWNrIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBjbGlwOiByZWN0KDAsIDAsIDAsIDApO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcblxuICAmW2Rpc2FibGVkXSxcbiAgJjpkaXNhYmxlZCB7XG4gICAgKyAuYnRuIHtcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgZmlsdGVyOiBub25lO1xuICAgICAgb3BhY2l0eTogJGZvcm0tY2hlY2stYnRuLWNoZWNrLWRpc2FibGVkLW9wYWNpdHk7XG4gICAgfVxuICB9XG59XG5cbkBpZiAkZW5hYmxlLWRhcmstbW9kZSB7XG4gIEBpbmNsdWRlIGNvbG9yLW1vZGUoZGFyaykge1xuICAgIC5mb3JtLXN3aXRjaCAuZm9ybS1jaGVjay1pbnB1dDpub3QoOmNoZWNrZWQpOm5vdCg6Zm9jdXMpIHtcbiAgICAgIC0tI3skcHJlZml4fWZvcm0tc3dpdGNoLWJnOiAje2VzY2FwZS1zdmcoJGZvcm0tc3dpdGNoLWJnLWltYWdlLWRhcmspfTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIFJhbmdlXG4vL1xuLy8gU3R5bGUgcmFuZ2UgaW5wdXRzIHRoZSBzYW1lIGFjcm9zcyBicm93c2Vycy4gVmVuZG9yLXNwZWNpZmljIHJ1bGVzIGZvciBwc2V1ZG9cbi8vIGVsZW1lbnRzIGNhbm5vdCBiZSBtaXhlZC4gQXMgc3VjaCwgdGhlcmUgYXJlIG5vIHNoYXJlZCBzdHlsZXMgZm9yIGZvY3VzIG9yXG4vLyBhY3RpdmUgc3RhdGVzIG9uIHByZWZpeGVkIHNlbGVjdG9ycy5cblxuLmZvcm0tcmFuZ2Uge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhZGQoJGZvcm0tcmFuZ2UtdGh1bWItaGVpZ2h0LCAkZm9ybS1yYW5nZS10aHVtYi1mb2N1cy1ib3gtc2hhZG93LXdpZHRoICogMik7XG4gIHBhZGRpbmc6IDA7IC8vIE5lZWQgdG8gcmVzZXQgcGFkZGluZ1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYXBwZWFyYW5jZTogbm9uZTtcblxuICAmOmZvY3VzIHtcbiAgICBvdXRsaW5lOiAwO1xuXG4gICAgLy8gUHNldWRvLWVsZW1lbnRzIG11c3QgYmUgc3BsaXQgYWNyb3NzIG11bHRpcGxlIHJ1bGVzZXRzIHRvIGhhdmUgYW4gZWZmZWN0LlxuICAgIC8vIE5vIGJveC1zaGFkb3coKSBtaXhpbiBmb3IgZm9jdXMgYWNjZXNzaWJpbGl0eS5cbiAgICAmOjotd2Via2l0LXNsaWRlci10aHVtYiB7IGJveC1zaGFkb3c6ICRmb3JtLXJhbmdlLXRodW1iLWZvY3VzLWJveC1zaGFkb3c7IH1cbiAgICAmOjotbW96LXJhbmdlLXRodW1iICAgICB7IGJveC1zaGFkb3c6ICRmb3JtLXJhbmdlLXRodW1iLWZvY3VzLWJveC1zaGFkb3c7IH1cbiAgfVxuXG4gICY6Oi1tb3otZm9jdXMtb3V0ZXIge1xuICAgIGJvcmRlcjogMDtcbiAgfVxuXG4gICY6Oi13ZWJraXQtc2xpZGVyLXRodW1iIHtcbiAgICB3aWR0aDogJGZvcm0tcmFuZ2UtdGh1bWItd2lkdGg7XG4gICAgaGVpZ2h0OiAkZm9ybS1yYW5nZS10aHVtYi1oZWlnaHQ7XG4gICAgbWFyZ2luLXRvcDogKCRmb3JtLXJhbmdlLXRyYWNrLWhlaWdodCAtICRmb3JtLXJhbmdlLXRodW1iLWhlaWdodCkgKiAuNTsgLy8gV2Via2l0IHNwZWNpZmljXG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGZvcm0tcmFuZ2UtdGh1bWItYmcpO1xuICAgIGJvcmRlcjogJGZvcm0tcmFuZ2UtdGh1bWItYm9yZGVyO1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGZvcm0tcmFuZ2UtdGh1bWItYm9yZGVyLXJhZGl1cyk7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkZm9ybS1yYW5nZS10aHVtYi1ib3gtc2hhZG93KTtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRmb3JtLXJhbmdlLXRodW1iLXRyYW5zaXRpb24pO1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG5cbiAgICAmOmFjdGl2ZSB7XG4gICAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkZm9ybS1yYW5nZS10aHVtYi1hY3RpdmUtYmcpO1xuICAgIH1cbiAgfVxuXG4gICY6Oi13ZWJraXQtc2xpZGVyLXJ1bm5hYmxlLXRyYWNrIHtcbiAgICB3aWR0aDogJGZvcm0tcmFuZ2UtdHJhY2std2lkdGg7XG4gICAgaGVpZ2h0OiAkZm9ybS1yYW5nZS10cmFjay1oZWlnaHQ7XG4gICAgY29sb3I6IHRyYW5zcGFyZW50OyAvLyBXaHk/XG4gICAgY3Vyc29yOiAkZm9ybS1yYW5nZS10cmFjay1jdXJzb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGZvcm0tcmFuZ2UtdHJhY2stYmc7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRmb3JtLXJhbmdlLXRyYWNrLWJvcmRlci1yYWRpdXMpO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGZvcm0tcmFuZ2UtdHJhY2stYm94LXNoYWRvdyk7XG4gIH1cblxuICAmOjotbW96LXJhbmdlLXRodW1iIHtcbiAgICB3aWR0aDogJGZvcm0tcmFuZ2UtdGh1bWItd2lkdGg7XG4gICAgaGVpZ2h0OiAkZm9ybS1yYW5nZS10aHVtYi1oZWlnaHQ7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGZvcm0tcmFuZ2UtdGh1bWItYmcpO1xuICAgIGJvcmRlcjogJGZvcm0tcmFuZ2UtdGh1bWItYm9yZGVyO1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGZvcm0tcmFuZ2UtdGh1bWItYm9yZGVyLXJhZGl1cyk7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkZm9ybS1yYW5nZS10aHVtYi1ib3gtc2hhZG93KTtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRmb3JtLXJhbmdlLXRodW1iLXRyYW5zaXRpb24pO1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG5cbiAgICAmOmFjdGl2ZSB7XG4gICAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkZm9ybS1yYW5nZS10aHVtYi1hY3RpdmUtYmcpO1xuICAgIH1cbiAgfVxuXG4gICY6Oi1tb3otcmFuZ2UtdHJhY2sge1xuICAgIHdpZHRoOiAkZm9ybS1yYW5nZS10cmFjay13aWR0aDtcbiAgICBoZWlnaHQ6ICRmb3JtLXJhbmdlLXRyYWNrLWhlaWdodDtcbiAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgY3Vyc29yOiAkZm9ybS1yYW5nZS10cmFjay1jdXJzb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGZvcm0tcmFuZ2UtdHJhY2stYmc7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsgLy8gRmlyZWZveCBzcGVjaWZpYz9cbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRmb3JtLXJhbmdlLXRyYWNrLWJvcmRlci1yYWRpdXMpO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGZvcm0tcmFuZ2UtdHJhY2stYm94LXNoYWRvdyk7XG4gIH1cblxuICAmOmRpc2FibGVkIHtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcblxuICAgICY6Oi13ZWJraXQtc2xpZGVyLXRodW1iIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRmb3JtLXJhbmdlLXRodW1iLWRpc2FibGVkLWJnO1xuICAgIH1cblxuICAgICY6Oi1tb3otcmFuZ2UtdGh1bWIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGZvcm0tcmFuZ2UtdGh1bWItZGlzYWJsZWQtYmc7XG4gICAgfVxuICB9XG59XG4iLCIuZm9ybS1mbG9hdGluZyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICA+IC5mb3JtLWNvbnRyb2wsXG4gID4gLmZvcm0tY29udHJvbC1wbGFpbnRleHQsXG4gID4gLmZvcm0tc2VsZWN0IHtcbiAgICBoZWlnaHQ6ICRmb3JtLWZsb2F0aW5nLWhlaWdodDtcbiAgICBtaW4taGVpZ2h0OiAkZm9ybS1mbG9hdGluZy1oZWlnaHQ7XG4gICAgbGluZS1oZWlnaHQ6ICRmb3JtLWZsb2F0aW5nLWxpbmUtaGVpZ2h0O1xuICB9XG5cbiAgPiBsYWJlbCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHotaW5kZXg6IDI7XG4gICAgaGVpZ2h0OiAxMDAlOyAvLyBhbGxvdyB0ZXh0YXJlYXNcbiAgICBwYWRkaW5nOiAkZm9ybS1mbG9hdGluZy1wYWRkaW5nLXkgJGZvcm0tZmxvYXRpbmctcGFkZGluZy14O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgdGV4dC1hbGlnbjogc3RhcnQ7XG4gICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBib3JkZXI6ICRpbnB1dC1ib3JkZXItd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7IC8vIFJlcXVpcmVkIGZvciBhbGlnbmluZyBsYWJlbCdzIHRleHQgd2l0aCB0aGUgaW5wdXQgYXMgaXQgYWZmZWN0cyBpbm5lciBib3ggbW9kZWxcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiAwIDA7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigkZm9ybS1mbG9hdGluZy10cmFuc2l0aW9uKTtcbiAgfVxuXG4gID4gLmZvcm0tY29udHJvbCxcbiAgPiAuZm9ybS1jb250cm9sLXBsYWludGV4dCB7XG4gICAgcGFkZGluZzogJGZvcm0tZmxvYXRpbmctcGFkZGluZy15ICRmb3JtLWZsb2F0aW5nLXBhZGRpbmcteDtcblxuICAgICY6OnBsYWNlaG9sZGVyIHtcbiAgICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB9XG5cbiAgICAmOmZvY3VzLFxuICAgICY6bm90KDpwbGFjZWhvbGRlci1zaG93bikge1xuICAgICAgcGFkZGluZy10b3A6ICRmb3JtLWZsb2F0aW5nLWlucHV0LXBhZGRpbmctdDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAkZm9ybS1mbG9hdGluZy1pbnB1dC1wYWRkaW5nLWI7XG4gICAgfVxuICAgIC8vIER1cGxpY2F0ZWQgYmVjYXVzZSBgOi13ZWJraXQtYXV0b2ZpbGxgIGludmFsaWRhdGVzIG90aGVyIHNlbGVjdG9ycyB3aGVuIGdyb3VwZWRcbiAgICAmOi13ZWJraXQtYXV0b2ZpbGwge1xuICAgICAgcGFkZGluZy10b3A6ICRmb3JtLWZsb2F0aW5nLWlucHV0LXBhZGRpbmctdDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAkZm9ybS1mbG9hdGluZy1pbnB1dC1wYWRkaW5nLWI7XG4gICAgfVxuICB9XG5cbiAgPiAuZm9ybS1zZWxlY3Qge1xuICAgIHBhZGRpbmctdG9wOiAkZm9ybS1mbG9hdGluZy1pbnB1dC1wYWRkaW5nLXQ7XG4gICAgcGFkZGluZy1ib3R0b206ICRmb3JtLWZsb2F0aW5nLWlucHV0LXBhZGRpbmctYjtcbiAgfVxuXG4gID4gLmZvcm0tY29udHJvbDpmb2N1cyxcbiAgPiAuZm9ybS1jb250cm9sOm5vdCg6cGxhY2Vob2xkZXItc2hvd24pLFxuICA+IC5mb3JtLWNvbnRyb2wtcGxhaW50ZXh0LFxuICA+IC5mb3JtLXNlbGVjdCB7XG4gICAgfiBsYWJlbCB7XG4gICAgICBjb2xvcjogcmdiYSh2YXIoLS0jeyRwcmVmaXh9Ym9keS1jb2xvci1yZ2IpLCAjeyRmb3JtLWZsb2F0aW5nLWxhYmVsLW9wYWNpdHl9KTtcbiAgICAgIHRyYW5zZm9ybTogJGZvcm0tZmxvYXRpbmctbGFiZWwtdHJhbnNmb3JtO1xuXG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgaW5zZXQ6ICRmb3JtLWZsb2F0aW5nLXBhZGRpbmcteSAoJGZvcm0tZmxvYXRpbmctcGFkZGluZy14ICogLjUpO1xuICAgICAgICB6LWluZGV4OiAtMTtcbiAgICAgICAgaGVpZ2h0OiAkZm9ybS1mbG9hdGluZy1sYWJlbC1oZWlnaHQ7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iZztcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cyk7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC8vIER1cGxpY2F0ZWQgYmVjYXVzZSBgOi13ZWJraXQtYXV0b2ZpbGxgIGludmFsaWRhdGVzIG90aGVyIHNlbGVjdG9ycyB3aGVuIGdyb3VwZWRcbiAgPiAuZm9ybS1jb250cm9sOi13ZWJraXQtYXV0b2ZpbGwge1xuICAgIH4gbGFiZWwge1xuICAgICAgY29sb3I6IHJnYmEodmFyKC0tI3skcHJlZml4fWJvZHktY29sb3ItcmdiKSwgI3skZm9ybS1mbG9hdGluZy1sYWJlbC1vcGFjaXR5fSk7XG4gICAgICB0cmFuc2Zvcm06ICRmb3JtLWZsb2F0aW5nLWxhYmVsLXRyYW5zZm9ybTtcbiAgICB9XG4gIH1cblxuICA+IC5mb3JtLWNvbnRyb2wtcGxhaW50ZXh0IHtcbiAgICB+IGxhYmVsIHtcbiAgICAgIGJvcmRlci13aWR0aDogJGlucHV0LWJvcmRlci13aWR0aCAwOyAvLyBSZXF1aXJlZCB0byBwcm9wZXJseSBwb3NpdGlvbiBsYWJlbCB0ZXh0IC0gYXMgZXhwbGFpbmVkIGFib3ZlXG4gICAgfVxuICB9XG5cbiAgPiA6ZGlzYWJsZWQgfiBsYWJlbCB7XG4gICAgY29sb3I6ICRmb3JtLWZsb2F0aW5nLWxhYmVsLWRpc2FibGVkLWNvbG9yO1xuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWRpc2FibGVkLWJnO1xuICAgIH1cbiAgfVxufVxuIiwiLy9cbi8vIEJhc2Ugc3R5bGVzXG4vL1xuXG4uaW5wdXQtZ3JvdXAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDsgLy8gRm9yIGZvcm0gdmFsaWRhdGlvbiBmZWVkYmFja1xuICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgd2lkdGg6IDEwMCU7XG5cbiAgPiAuZm9ybS1jb250cm9sLFxuICA+IC5mb3JtLXNlbGVjdCxcbiAgPiAuZm9ybS1mbG9hdGluZyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyAvLyBGb3IgZm9jdXMgc3RhdGUncyB6LWluZGV4XG4gICAgZmxleDogMSAxIGF1dG87XG4gICAgd2lkdGg6IDElO1xuICAgIG1pbi13aWR0aDogMDsgLy8gaHR0cHM6Ly9zdGFja292ZXJmbG93LmNvbS9xdWVzdGlvbnMvMzYyNDcxNDAvd2h5LWRvbnQtZmxleC1pdGVtcy1zaHJpbmstcGFzdC1jb250ZW50LXNpemVcbiAgfVxuXG4gIC8vIEJyaW5nIHRoZSBcImFjdGl2ZVwiIGZvcm0gY29udHJvbCB0byB0aGUgdG9wIG9mIHN1cnJvdW5kaW5nIGVsZW1lbnRzXG4gID4gLmZvcm0tY29udHJvbDpmb2N1cyxcbiAgPiAuZm9ybS1zZWxlY3Q6Zm9jdXMsXG4gID4gLmZvcm0tZmxvYXRpbmc6Zm9jdXMtd2l0aGluIHtcbiAgICB6LWluZGV4OiA1O1xuICB9XG5cbiAgLy8gRW5zdXJlIGJ1dHRvbnMgYXJlIGFsd2F5cyBhYm92ZSBpbnB1dHMgZm9yIG1vcmUgdmlzdWFsbHkgcGxlYXNpbmcgYm9yZGVycy5cbiAgLy8gVGhpcyBpc24ndCBuZWVkZWQgZm9yIGAuaW5wdXQtZ3JvdXAtdGV4dGAgc2luY2UgaXQgc2hhcmVzIHRoZSBzYW1lIGJvcmRlci1jb2xvclxuICAvLyBhcyBvdXIgaW5wdXRzLlxuICAuYnRuIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMjtcblxuICAgICY6Zm9jdXMge1xuICAgICAgei1pbmRleDogNTtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBUZXh0dWFsIGFkZG9uc1xuLy9cbi8vIFNlcnZlcyBhcyBhIGNhdGNoLWFsbCBlbGVtZW50IGZvciBhbnkgdGV4dCBvciByYWRpby9jaGVja2JveCBpbnB1dCB5b3Ugd2lzaFxuLy8gdG8gcHJlcGVuZCBvciBhcHBlbmQgdG8gYW4gaW5wdXQuXG5cbi5pbnB1dC1ncm91cC10ZXh0IHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcGFkZGluZzogJGlucHV0LWdyb3VwLWFkZG9uLXBhZGRpbmcteSAkaW5wdXQtZ3JvdXAtYWRkb24tcGFkZGluZy14O1xuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZSk7IC8vIE1hdGNoIGlucHV0c1xuICBmb250LXdlaWdodDogJGlucHV0LWdyb3VwLWFkZG9uLWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGlucHV0LWdyb3VwLWFkZG9uLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1ncm91cC1hZGRvbi1iZztcbiAgYm9yZGVyOiAkaW5wdXQtYm9yZGVyLXdpZHRoIHNvbGlkICRpbnB1dC1ncm91cC1hZGRvbi1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMpO1xufVxuXG5cbi8vIFNpemluZ1xuLy9cbi8vIFJlbWl4IHRoZSBkZWZhdWx0IGZvcm0gY29udHJvbCBzaXppbmcgY2xhc3NlcyBpbnRvIG5ldyBvbmVzIGZvciBlYXNpZXJcbi8vIG1hbmlwdWxhdGlvbi5cblxuLmlucHV0LWdyb3VwLWxnID4gLmZvcm0tY29udHJvbCxcbi5pbnB1dC1ncm91cC1sZyA+IC5mb3JtLXNlbGVjdCxcbi5pbnB1dC1ncm91cC1sZyA+IC5pbnB1dC1ncm91cC10ZXh0LFxuLmlucHV0LWdyb3VwLWxnID4gLmJ0biB7XG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXktbGcgJGlucHV0LXBhZGRpbmcteC1sZztcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUtbGcpO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRpbnB1dC1ib3JkZXItcmFkaXVzLWxnKTtcbn1cblxuLmlucHV0LWdyb3VwLXNtID4gLmZvcm0tY29udHJvbCxcbi5pbnB1dC1ncm91cC1zbSA+IC5mb3JtLXNlbGVjdCxcbi5pbnB1dC1ncm91cC1zbSA+IC5pbnB1dC1ncm91cC10ZXh0LFxuLmlucHV0LWdyb3VwLXNtID4gLmJ0biB7XG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXktc20gJGlucHV0LXBhZGRpbmcteC1zbTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUtc20pO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRpbnB1dC1ib3JkZXItcmFkaXVzLXNtKTtcbn1cblxuLmlucHV0LWdyb3VwLWxnID4gLmZvcm0tc2VsZWN0LFxuLmlucHV0LWdyb3VwLXNtID4gLmZvcm0tc2VsZWN0IHtcbiAgcGFkZGluZy1yaWdodDogJGZvcm0tc2VsZWN0LXBhZGRpbmcteCArICRmb3JtLXNlbGVjdC1pbmRpY2F0b3ItcGFkZGluZztcbn1cblxuXG4vLyBSb3VuZGVkIGNvcm5lcnNcbi8vXG4vLyBUaGVzZSBydWxlc2V0cyBtdXN0IGNvbWUgYWZ0ZXIgdGhlIHNpemluZyBvbmVzIHRvIHByb3Blcmx5IG92ZXJyaWRlIHNtIGFuZCBsZ1xuLy8gYm9yZGVyLXJhZGl1cyB2YWx1ZXMgd2hlbiBleHRlbmRpbmcuIFRoZXkncmUgbW9yZSBzcGVjaWZpYyB0aGFuIHdlJ2QgbGlrZVxuLy8gd2l0aCB0aGUgYC5pbnB1dC1ncm91cCA+YCBwYXJ0LCBidXQgd2l0aG91dCBpdCwgd2UgY2Fubm90IG92ZXJyaWRlIHRoZSBzaXppbmcuXG5cbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1kdXBsaWNhdGUtc2VsZWN0b3JzXG4uaW5wdXQtZ3JvdXAge1xuICAmOm5vdCguaGFzLXZhbGlkYXRpb24pIHtcbiAgICA+IDpub3QoOmxhc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tdG9nZ2xlKTpub3QoLmRyb3Bkb3duLW1lbnUpOm5vdCguZm9ybS1mbG9hdGluZyksXG4gICAgPiAuZHJvcGRvd24tdG9nZ2xlOm50aC1sYXN0LWNoaWxkKG4gKyAzKSxcbiAgICA+IC5mb3JtLWZsb2F0aW5nOm5vdCg6bGFzdC1jaGlsZCkgPiAuZm9ybS1jb250cm9sLFxuICAgID4gLmZvcm0tZmxvYXRpbmc6bm90KDpsYXN0LWNoaWxkKSA+IC5mb3JtLXNlbGVjdCB7XG4gICAgICBAaW5jbHVkZSBib3JkZXItZW5kLXJhZGl1cygwKTtcbiAgICB9XG4gIH1cblxuICAmLmhhcy12YWxpZGF0aW9uIHtcbiAgICA+IDpudGgtbGFzdC1jaGlsZChuICsgMyk6bm90KC5kcm9wZG93bi10b2dnbGUpOm5vdCguZHJvcGRvd24tbWVudSk6bm90KC5mb3JtLWZsb2F0aW5nKSxcbiAgICA+IC5kcm9wZG93bi10b2dnbGU6bnRoLWxhc3QtY2hpbGQobiArIDQpLFxuICAgID4gLmZvcm0tZmxvYXRpbmc6bnRoLWxhc3QtY2hpbGQobiArIDMpID4gLmZvcm0tY29udHJvbCxcbiAgICA+IC5mb3JtLWZsb2F0aW5nOm50aC1sYXN0LWNoaWxkKG4gKyAzKSA+IC5mb3JtLXNlbGVjdCB7XG4gICAgICBAaW5jbHVkZSBib3JkZXItZW5kLXJhZGl1cygwKTtcbiAgICB9XG4gIH1cblxuICAkdmFsaWRhdGlvbi1tZXNzYWdlczogXCJcIjtcbiAgQGVhY2ggJHN0YXRlIGluIG1hcC1rZXlzKCRmb3JtLXZhbGlkYXRpb24tc3RhdGVzKSB7XG4gICAgJHZhbGlkYXRpb24tbWVzc2FnZXM6ICR2YWxpZGF0aW9uLW1lc3NhZ2VzICsgXCI6bm90KC5cIiArIHVucXVvdGUoJHN0YXRlKSArIFwiLXRvb2x0aXApXCIgKyBcIjpub3QoLlwiICsgdW5xdW90ZSgkc3RhdGUpICsgXCItZmVlZGJhY2spXCI7XG4gIH1cblxuICA+IDpub3QoOmZpcnN0LWNoaWxkKTpub3QoLmRyb3Bkb3duLW1lbnUpI3skdmFsaWRhdGlvbi1tZXNzYWdlc30ge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKCN7JGlucHV0LWJvcmRlci13aWR0aH0gKiAtMSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gICAgQGluY2x1ZGUgYm9yZGVyLXN0YXJ0LXJhZGl1cygwKTtcbiAgfVxuXG4gID4gLmZvcm0tZmxvYXRpbmc6bm90KDpmaXJzdC1jaGlsZCkgPiAuZm9ybS1jb250cm9sLFxuICA+IC5mb3JtLWZsb2F0aW5nOm5vdCg6Zmlyc3QtY2hpbGQpID4gLmZvcm0tc2VsZWN0IHtcbiAgICBAaW5jbHVkZSBib3JkZXItc3RhcnQtcmFkaXVzKDApO1xuICB9XG59XG4iLCIvLyBUaGlzIG1peGluIHVzZXMgYW4gYGlmKClgIHRlY2huaXF1ZSB0byBiZSBjb21wYXRpYmxlIHdpdGggRGFydCBTYXNzXG4vLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3Nhc3Mvc2Fzcy9pc3N1ZXMvMTg3MyNpc3N1ZWNvbW1lbnQtMTUyMjkzNzI1IGZvciBtb3JlIGRldGFpbHNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGZvcm0tdmFsaWRhdGlvbi1taXhpbnNcbkBtaXhpbiBmb3JtLXZhbGlkYXRpb24tc3RhdGUtc2VsZWN0b3IoJHN0YXRlKSB7XG4gIEBpZiAoJHN0YXRlID09IFwidmFsaWRcIiBvciAkc3RhdGUgPT0gXCJpbnZhbGlkXCIpIHtcbiAgICAud2FzLXZhbGlkYXRlZCAje2lmKCYsIFwiJlwiLCBcIlwiKX06I3skc3RhdGV9LFxuICAgICN7aWYoJiwgXCImXCIsIFwiXCIpfS5pcy0jeyRzdGF0ZX0ge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICAje2lmKCYsIFwiJlwiLCBcIlwiKX0uaXMtI3skc3RhdGV9IHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gZm9ybS12YWxpZGF0aW9uLXN0YXRlKFxuICAkc3RhdGUsXG4gICRjb2xvcixcbiAgJGljb24sXG4gICR0b29sdGlwLWNvbG9yOiBjb2xvci1jb250cmFzdCgkY29sb3IpLFxuICAkdG9vbHRpcC1iZy1jb2xvcjogcmdiYSgkY29sb3IsICRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtb3BhY2l0eSksXG4gICRmb2N1cy1ib3gtc2hhZG93OiAwIDAgJGlucHV0LWJ0bi1mb2N1cy1ibHVyICRpbnB1dC1mb2N1cy13aWR0aCByZ2JhKCRjb2xvciwgJGlucHV0LWJ0bi1mb2N1cy1jb2xvci1vcGFjaXR5KSxcbiAgJGJvcmRlci1jb2xvcjogJGNvbG9yXG4pIHtcbiAgLiN7JHN0YXRlfS1mZWVkYmFjayB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tdG9wOiAkZm9ybS1mZWVkYmFjay1tYXJnaW4tdG9wO1xuICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9ybS1mZWVkYmFjay1mb250LXNpemUpO1xuICAgIGZvbnQtc3R5bGU6ICRmb3JtLWZlZWRiYWNrLWZvbnQtc3R5bGU7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgfVxuXG4gIC4jeyRzdGF0ZX0tdG9vbHRpcCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMTAwJTtcbiAgICB6LWluZGV4OiA1O1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgbWF4LXdpZHRoOiAxMDAlOyAvLyBDb250YWluIHRvIHBhcmVudCB3aGVuIHBvc3NpYmxlXG4gICAgcGFkZGluZzogJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1wYWRkaW5nLXkgJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1wYWRkaW5nLXg7XG4gICAgbWFyZ2luLXRvcDogLjFyZW07XG4gICAgQGluY2x1ZGUgZm9udC1zaXplKCRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtZm9udC1zaXplKTtcbiAgICBsaW5lLWhlaWdodDogJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1saW5lLWhlaWdodDtcbiAgICBjb2xvcjogJHRvb2x0aXAtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHRvb2x0aXAtYmctY29sb3I7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkZm9ybS1mZWVkYmFjay10b29sdGlwLWJvcmRlci1yYWRpdXMpO1xuICB9XG5cbiAgQGluY2x1ZGUgZm9ybS12YWxpZGF0aW9uLXN0YXRlLXNlbGVjdG9yKCRzdGF0ZSkge1xuICAgIH4gLiN7JHN0YXRlfS1mZWVkYmFjayxcbiAgICB+IC4jeyRzdGF0ZX0tdG9vbHRpcCB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gIH1cblxuICAuZm9ybS1jb250cm9sIHtcbiAgICBAaW5jbHVkZSBmb3JtLXZhbGlkYXRpb24tc3RhdGUtc2VsZWN0b3IoJHN0YXRlKSB7XG4gICAgICBib3JkZXItY29sb3I6ICRib3JkZXItY29sb3I7XG5cbiAgICAgIEBpZiAkZW5hYmxlLXZhbGlkYXRpb24taWNvbnMge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkaW5wdXQtaGVpZ2h0LWlubmVyO1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBlc2NhcGUtc3ZnKCRpY29uKTtcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgJGlucHV0LWhlaWdodC1pbm5lci1xdWFydGVyIGNlbnRlcjtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiAkaW5wdXQtaGVpZ2h0LWlubmVyLWhhbGYgJGlucHV0LWhlaWdodC1pbm5lci1oYWxmO1xuICAgICAgfVxuXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyLWNvbG9yO1xuICAgICAgICBib3gtc2hhZG93OiAkZm9jdXMtYm94LXNoYWRvdztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlXG4gIHRleHRhcmVhLmZvcm0tY29udHJvbCB7XG4gICAgQGluY2x1ZGUgZm9ybS12YWxpZGF0aW9uLXN0YXRlLXNlbGVjdG9yKCRzdGF0ZSkge1xuICAgICAgQGlmICRlbmFibGUtdmFsaWRhdGlvbi1pY29ucyB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6ICRpbnB1dC1oZWlnaHQtaW5uZXI7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHRvcCAkaW5wdXQtaGVpZ2h0LWlubmVyLXF1YXJ0ZXIgcmlnaHQgJGlucHV0LWhlaWdodC1pbm5lci1xdWFydGVyO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5mb3JtLXNlbGVjdCB7XG4gICAgQGluY2x1ZGUgZm9ybS12YWxpZGF0aW9uLXN0YXRlLXNlbGVjdG9yKCRzdGF0ZSkge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyLWNvbG9yO1xuXG4gICAgICBAaWYgJGVuYWJsZS12YWxpZGF0aW9uLWljb25zIHtcbiAgICAgICAgJjpub3QoW211bHRpcGxlXSk6bm90KFtzaXplXSksXG4gICAgICAgICY6bm90KFttdWx0aXBsZV0pW3NpemU9XCIxXCJdIHtcbiAgICAgICAgICAtLSN7JHByZWZpeH1mb3JtLXNlbGVjdC1iZy1pY29uOiAje2VzY2FwZS1zdmcoJGljb24pfTtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkZm9ybS1zZWxlY3QtZmVlZGJhY2staWNvbi1wYWRkaW5nLWVuZDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAkZm9ybS1zZWxlY3QtYmctcG9zaXRpb24sICRmb3JtLXNlbGVjdC1mZWVkYmFjay1pY29uLXBvc2l0aW9uO1xuICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogJGZvcm0tc2VsZWN0LWJnLXNpemUsICRmb3JtLXNlbGVjdC1mZWVkYmFjay1pY29uLXNpemU7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGJvcmRlci1jb2xvcjtcbiAgICAgICAgYm94LXNoYWRvdzogJGZvY3VzLWJveC1zaGFkb3c7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmZvcm0tY29udHJvbC1jb2xvciB7XG4gICAgQGluY2x1ZGUgZm9ybS12YWxpZGF0aW9uLXN0YXRlLXNlbGVjdG9yKCRzdGF0ZSkge1xuICAgICAgQGlmICRlbmFibGUtdmFsaWRhdGlvbi1pY29ucyB7XG4gICAgICAgIHdpZHRoOiBhZGQoJGZvcm0tY29sb3Itd2lkdGgsICRpbnB1dC1oZWlnaHQtaW5uZXIpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5mb3JtLWNoZWNrLWlucHV0IHtcbiAgICBAaW5jbHVkZSBmb3JtLXZhbGlkYXRpb24tc3RhdGUtc2VsZWN0b3IoJHN0YXRlKSB7XG4gICAgICBib3JkZXItY29sb3I6ICRib3JkZXItY29sb3I7XG5cbiAgICAgICY6Y2hlY2tlZCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcbiAgICAgIH1cblxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGJveC1zaGFkb3c6ICRmb2N1cy1ib3gtc2hhZG93O1xuICAgICAgfVxuXG4gICAgICB+IC5mb3JtLWNoZWNrLWxhYmVsIHtcbiAgICAgICAgY29sb3I6ICRjb2xvcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLmZvcm0tY2hlY2staW5saW5lIC5mb3JtLWNoZWNrLWlucHV0IHtcbiAgICB+IC4jeyRzdGF0ZX0tZmVlZGJhY2sge1xuICAgICAgbWFyZ2luLWxlZnQ6IC41ZW07XG4gICAgfVxuICB9XG5cbiAgLmlucHV0LWdyb3VwIHtcbiAgICA+IC5mb3JtLWNvbnRyb2w6bm90KDpmb2N1cyksXG4gICAgPiAuZm9ybS1zZWxlY3Q6bm90KDpmb2N1cyksXG4gICAgPiAuZm9ybS1mbG9hdGluZzpub3QoOmZvY3VzLXdpdGhpbikge1xuICAgICAgQGluY2x1ZGUgZm9ybS12YWxpZGF0aW9uLXN0YXRlLXNlbGVjdG9yKCRzdGF0ZSkge1xuICAgICAgICBAaWYgJHN0YXRlID09IFwidmFsaWRcIiB7XG4gICAgICAgICAgei1pbmRleDogMztcbiAgICAgICAgfSBAZWxzZSBpZiAkc3RhdGUgPT0gXCJpbnZhbGlkXCIge1xuICAgICAgICAgIHotaW5kZXg6IDQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbi8vIHNjc3MtZG9jcy1lbmQgZm9ybS12YWxpZGF0aW9uLW1peGluc1xuIiwiLy9cbi8vIEJhc2Ugc3R5bGVzXG4vL1xuXG4uYnRuIHtcbiAgLy8gc2Nzcy1kb2NzLXN0YXJ0IGJ0bi1jc3MtdmFyc1xuICAtLSN7JHByZWZpeH1idG4tcGFkZGluZy14OiAjeyRidG4tcGFkZGluZy14fTtcbiAgLS0jeyRwcmVmaXh9YnRuLXBhZGRpbmcteTogI3skYnRuLXBhZGRpbmcteX07XG4gIC0tI3skcHJlZml4fWJ0bi1mb250LWZhbWlseTogI3skYnRuLWZvbnQtZmFtaWx5fTtcbiAgQGluY2x1ZGUgcmZzKCRidG4tZm9udC1zaXplLCAtLSN7JHByZWZpeH1idG4tZm9udC1zaXplKTtcbiAgLS0jeyRwcmVmaXh9YnRuLWZvbnQtd2VpZ2h0OiAjeyRidG4tZm9udC13ZWlnaHR9O1xuICAtLSN7JHByZWZpeH1idG4tbGluZS1oZWlnaHQ6ICN7JGJ0bi1saW5lLWhlaWdodH07XG4gIC0tI3skcHJlZml4fWJ0bi1jb2xvcjogI3skYnRuLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWJnOiB0cmFuc3BhcmVudDtcbiAgLS0jeyRwcmVmaXh9YnRuLWJvcmRlci13aWR0aDogI3skYnRuLWJvcmRlci13aWR0aH07XG4gIC0tI3skcHJlZml4fWJ0bi1ib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAtLSN7JHByZWZpeH1idG4tYm9yZGVyLXJhZGl1czogI3skYnRuLWJvcmRlci1yYWRpdXN9O1xuICAtLSN7JHByZWZpeH1idG4taG92ZXItYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgLS0jeyRwcmVmaXh9YnRuLWJveC1zaGFkb3c6ICN7JGJ0bi1ib3gtc2hhZG93fTtcbiAgLS0jeyRwcmVmaXh9YnRuLWRpc2FibGVkLW9wYWNpdHk6ICN7JGJ0bi1kaXNhYmxlZC1vcGFjaXR5fTtcbiAgLS0jeyRwcmVmaXh9YnRuLWZvY3VzLWJveC1zaGFkb3c6IDAgMCAwICN7JGJ0bi1mb2N1cy13aWR0aH0gcmdiYSh2YXIoLS0jeyRwcmVmaXh9YnRuLWZvY3VzLXNoYWRvdy1yZ2IpLCAuNSk7XG4gIC8vIHNjc3MtZG9jcy1lbmQgYnRuLWNzcy12YXJzXG5cbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nOiB2YXIoLS0jeyRwcmVmaXh9YnRuLXBhZGRpbmcteSkgdmFyKC0tI3skcHJlZml4fWJ0bi1wYWRkaW5nLXgpO1xuICBmb250LWZhbWlseTogdmFyKC0tI3skcHJlZml4fWJ0bi1mb250LWZhbWlseSk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSh2YXIoLS0jeyRwcmVmaXh9YnRuLWZvbnQtc2l6ZSkpO1xuICBmb250LXdlaWdodDogdmFyKC0tI3skcHJlZml4fWJ0bi1mb250LXdlaWdodCk7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS0jeyRwcmVmaXh9YnRuLWxpbmUtaGVpZ2h0KTtcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1idG4tY29sb3IpO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstZGVjb3JhdGlvbiA9PSBub25lLCBudWxsLCBub25lKTtcbiAgd2hpdGUtc3BhY2U6ICRidG4td2hpdGUtc3BhY2U7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGN1cnNvcjogaWYoJGVuYWJsZS1idXR0b24tcG9pbnRlcnMsIHBvaW50ZXIsIG51bGwpO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgYm9yZGVyOiB2YXIoLS0jeyRwcmVmaXh9YnRuLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tI3skcHJlZml4fWJ0bi1ib3JkZXItY29sb3IpO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKHZhcigtLSN7JHByZWZpeH1idG4tYm9yZGVyLXJhZGl1cykpO1xuICBAaW5jbHVkZSBncmFkaWVudC1iZyh2YXIoLS0jeyRwcmVmaXh9YnRuLWJnKSk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3codmFyKC0tI3skcHJlZml4fWJ0bi1ib3gtc2hhZG93KSk7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJGJ0bi10cmFuc2l0aW9uKTtcblxuICAmOmhvdmVyIHtcbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWJ0bi1ob3Zlci1jb2xvcik7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBpZigkbGluay1ob3Zlci1kZWNvcmF0aW9uID09IHVuZGVybGluZSwgbm9uZSwgbnVsbCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fWJ0bi1ob3Zlci1iZyk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YnRuLWhvdmVyLWJvcmRlci1jb2xvcik7XG4gIH1cblxuICAuYnRuLWNoZWNrICsgJjpob3ZlciB7XG4gICAgLy8gb3ZlcnJpZGUgZm9yIHRoZSBjaGVja2JveC9yYWRpbyBidXR0b25zXG4gICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1idG4tY29sb3IpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1idG4tYmcpO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tI3skcHJlZml4fWJ0bi1ib3JkZXItY29sb3IpO1xuICB9XG5cbiAgJjpmb2N1cy12aXNpYmxlIHtcbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWJ0bi1ob3Zlci1jb2xvcik7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcodmFyKC0tI3skcHJlZml4fWJ0bi1ob3Zlci1iZykpO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tI3skcHJlZml4fWJ0bi1ob3Zlci1ib3JkZXItY29sb3IpO1xuICAgIG91dGxpbmU6IDA7XG4gICAgLy8gQXZvaWQgdXNpbmcgbWl4aW4gc28gd2UgY2FuIHBhc3MgY3VzdG9tIGZvY3VzIHNoYWRvdyBwcm9wZXJseVxuICAgIEBpZiAkZW5hYmxlLXNoYWRvd3Mge1xuICAgICAgYm94LXNoYWRvdzogdmFyKC0tI3skcHJlZml4fWJ0bi1ib3gtc2hhZG93KSwgdmFyKC0tI3skcHJlZml4fWJ0bi1mb2N1cy1ib3gtc2hhZG93KTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIGJveC1zaGFkb3c6IHZhcigtLSN7JHByZWZpeH1idG4tZm9jdXMtYm94LXNoYWRvdyk7XG4gICAgfVxuICB9XG5cbiAgLmJ0bi1jaGVjazpmb2N1cy12aXNpYmxlICsgJiB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YnRuLWhvdmVyLWJvcmRlci1jb2xvcik7XG4gICAgb3V0bGluZTogMDtcbiAgICAvLyBBdm9pZCB1c2luZyBtaXhpbiBzbyB3ZSBjYW4gcGFzcyBjdXN0b20gZm9jdXMgc2hhZG93IHByb3Blcmx5XG4gICAgQGlmICRlbmFibGUtc2hhZG93cyB7XG4gICAgICBib3gtc2hhZG93OiB2YXIoLS0jeyRwcmVmaXh9YnRuLWJveC1zaGFkb3cpLCB2YXIoLS0jeyRwcmVmaXh9YnRuLWZvY3VzLWJveC1zaGFkb3cpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYm94LXNoYWRvdzogdmFyKC0tI3skcHJlZml4fWJ0bi1mb2N1cy1ib3gtc2hhZG93KTtcbiAgICB9XG4gIH1cblxuICAuYnRuLWNoZWNrOmNoZWNrZWQgKyAmLFxuICA6bm90KC5idG4tY2hlY2spICsgJjphY3RpdmUsXG4gICY6Zmlyc3QtY2hpbGQ6YWN0aXZlLFxuICAmLmFjdGl2ZSxcbiAgJi5zaG93IHtcbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWJ0bi1hY3RpdmUtY29sb3IpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1idG4tYWN0aXZlLWJnKTtcbiAgICAvLyBSZW1vdmUgQ1NTIGdyYWRpZW50cyBpZiB0aGV5J3JlIGVuYWJsZWRcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBpZigkZW5hYmxlLWdyYWRpZW50cywgbm9uZSwgbnVsbCk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YnRuLWFjdGl2ZS1ib3JkZXItY29sb3IpO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3codmFyKC0tI3skcHJlZml4fWJ0bi1hY3RpdmUtc2hhZG93KSk7XG5cbiAgICAmOmZvY3VzLXZpc2libGUge1xuICAgICAgLy8gQXZvaWQgdXNpbmcgbWl4aW4gc28gd2UgY2FuIHBhc3MgY3VzdG9tIGZvY3VzIHNoYWRvdyBwcm9wZXJseVxuICAgICAgQGlmICRlbmFibGUtc2hhZG93cyB7XG4gICAgICAgIGJveC1zaGFkb3c6IHZhcigtLSN7JHByZWZpeH1idG4tYWN0aXZlLXNoYWRvdyksIHZhcigtLSN7JHByZWZpeH1idG4tZm9jdXMtYm94LXNoYWRvdyk7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgYm94LXNoYWRvdzogdmFyKC0tI3skcHJlZml4fWJ0bi1mb2N1cy1ib3gtc2hhZG93KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmOmRpc2FibGVkLFxuICAmLmRpc2FibGVkLFxuICBmaWVsZHNldDpkaXNhYmxlZCAmIHtcbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWJ0bi1kaXNhYmxlZC1jb2xvcik7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fWJ0bi1kaXNhYmxlZC1iZyk7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogaWYoJGVuYWJsZS1ncmFkaWVudHMsIG5vbmUsIG51bGwpO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tI3skcHJlZml4fWJ0bi1kaXNhYmxlZC1ib3JkZXItY29sb3IpO1xuICAgIG9wYWNpdHk6IHZhcigtLSN7JHByZWZpeH1idG4tZGlzYWJsZWQtb3BhY2l0eSk7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdyhub25lKTtcbiAgfVxufVxuXG5cbi8vXG4vLyBBbHRlcm5hdGUgYnV0dG9uc1xuLy9cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGJ0bi12YXJpYW50LWxvb3BzXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgLmJ0bi0jeyRjb2xvcn0ge1xuICAgIEBpZiAkY29sb3IgPT0gXCJsaWdodFwiIHtcbiAgICAgIEBpbmNsdWRlIGJ1dHRvbi12YXJpYW50KFxuICAgICAgICAkdmFsdWUsXG4gICAgICAgICR2YWx1ZSxcbiAgICAgICAgJGhvdmVyLWJhY2tncm91bmQ6IHNoYWRlLWNvbG9yKCR2YWx1ZSwgJGJ0bi1ob3Zlci1iZy1zaGFkZS1hbW91bnQpLFxuICAgICAgICAkaG92ZXItYm9yZGVyOiBzaGFkZS1jb2xvcigkdmFsdWUsICRidG4taG92ZXItYm9yZGVyLXNoYWRlLWFtb3VudCksXG4gICAgICAgICRhY3RpdmUtYmFja2dyb3VuZDogc2hhZGUtY29sb3IoJHZhbHVlLCAkYnRuLWFjdGl2ZS1iZy1zaGFkZS1hbW91bnQpLFxuICAgICAgICAkYWN0aXZlLWJvcmRlcjogc2hhZGUtY29sb3IoJHZhbHVlLCAkYnRuLWFjdGl2ZS1ib3JkZXItc2hhZGUtYW1vdW50KVxuICAgICAgKTtcbiAgICB9IEBlbHNlIGlmICRjb2xvciA9PSBcImRhcmtcIiB7XG4gICAgICBAaW5jbHVkZSBidXR0b24tdmFyaWFudChcbiAgICAgICAgJHZhbHVlLFxuICAgICAgICAkdmFsdWUsXG4gICAgICAgICRob3Zlci1iYWNrZ3JvdW5kOiB0aW50LWNvbG9yKCR2YWx1ZSwgJGJ0bi1ob3Zlci1iZy10aW50LWFtb3VudCksXG4gICAgICAgICRob3Zlci1ib3JkZXI6IHRpbnQtY29sb3IoJHZhbHVlLCAkYnRuLWhvdmVyLWJvcmRlci10aW50LWFtb3VudCksXG4gICAgICAgICRhY3RpdmUtYmFja2dyb3VuZDogdGludC1jb2xvcigkdmFsdWUsICRidG4tYWN0aXZlLWJnLXRpbnQtYW1vdW50KSxcbiAgICAgICAgJGFjdGl2ZS1ib3JkZXI6IHRpbnQtY29sb3IoJHZhbHVlLCAkYnRuLWFjdGl2ZS1ib3JkZXItdGludC1hbW91bnQpXG4gICAgICApO1xuICAgIH0gQGVsc2Uge1xuICAgICAgQGluY2x1ZGUgYnV0dG9uLXZhcmlhbnQoJHZhbHVlLCAkdmFsdWUpO1xuICAgIH1cbiAgfVxufVxuXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgLmJ0bi1vdXRsaW5lLSN7JGNvbG9yfSB7XG4gICAgQGluY2x1ZGUgYnV0dG9uLW91dGxpbmUtdmFyaWFudCgkdmFsdWUpO1xuICB9XG59XG4vLyBzY3NzLWRvY3MtZW5kIGJ0bi12YXJpYW50LWxvb3BzXG5cblxuLy9cbi8vIExpbmsgYnV0dG9uc1xuLy9cblxuLy8gTWFrZSBhIGJ1dHRvbiBsb29rIGFuZCBiZWhhdmUgbGlrZSBhIGxpbmtcbi5idG4tbGluayB7XG4gIC0tI3skcHJlZml4fWJ0bi1mb250LXdlaWdodDogI3skZm9udC13ZWlnaHQtbm9ybWFsfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWNvbG9yOiAjeyRidG4tbGluay1jb2xvcn07XG4gIC0tI3skcHJlZml4fWJ0bi1iZzogdHJhbnNwYXJlbnQ7XG4gIC0tI3skcHJlZml4fWJ0bi1ib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAtLSN7JHByZWZpeH1idG4taG92ZXItY29sb3I6ICN7JGJ0bi1saW5rLWhvdmVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWhvdmVyLWJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIC0tI3skcHJlZml4fWJ0bi1hY3RpdmUtY29sb3I6ICN7JGJ0bi1saW5rLWhvdmVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWFjdGl2ZS1ib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAtLSN7JHByZWZpeH1idG4tZGlzYWJsZWQtY29sb3I6ICN7JGJ0bi1saW5rLWRpc2FibGVkLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWRpc2FibGVkLWJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIC0tI3skcHJlZml4fWJ0bi1ib3gtc2hhZG93OiAwIDAgMCAjMDAwOyAvLyBDYW4ndCB1c2UgYG5vbmVgIGFzIGtleXdvcmQgbmVnYXRlcyBhbGwgdmFsdWVzIHdoZW4gdXNlZCB3aXRoIG11bHRpcGxlIHNoYWRvd3NcbiAgLS0jeyRwcmVmaXh9YnRuLWZvY3VzLXNoYWRvdy1yZ2I6ICN7dG8tcmdiKG1peChjb2xvci1jb250cmFzdCgkbGluay1jb2xvciksICRsaW5rLWNvbG9yLCAxNSUpKX07XG5cbiAgdGV4dC1kZWNvcmF0aW9uOiAkbGluay1kZWNvcmF0aW9uO1xuICBAaWYgJGVuYWJsZS1ncmFkaWVudHMge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gIH1cblxuICAmOmhvdmVyLFxuICAmOmZvY3VzLXZpc2libGUge1xuICAgIHRleHQtZGVjb3JhdGlvbjogJGxpbmstaG92ZXItZGVjb3JhdGlvbjtcbiAgfVxuXG4gICY6Zm9jdXMtdmlzaWJsZSB7XG4gICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1idG4tY29sb3IpO1xuICB9XG5cbiAgJjpob3ZlciB7XG4gICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1idG4taG92ZXItY29sb3IpO1xuICB9XG5cbiAgLy8gTm8gbmVlZCBmb3IgYW4gYWN0aXZlIHN0YXRlIGhlcmVcbn1cblxuXG4vL1xuLy8gQnV0dG9uIFNpemVzXG4vL1xuXG4uYnRuLWxnIHtcbiAgQGluY2x1ZGUgYnV0dG9uLXNpemUoJGJ0bi1wYWRkaW5nLXktbGcsICRidG4tcGFkZGluZy14LWxnLCAkYnRuLWZvbnQtc2l6ZS1sZywgJGJ0bi1ib3JkZXItcmFkaXVzLWxnKTtcbn1cblxuLmJ0bi1zbSB7XG4gIEBpbmNsdWRlIGJ1dHRvbi1zaXplKCRidG4tcGFkZGluZy15LXNtLCAkYnRuLXBhZGRpbmcteC1zbSwgJGJ0bi1mb250LXNpemUtc20sICRidG4tYm9yZGVyLXJhZGl1cy1zbSk7XG59XG4iLCIvLyBCdXR0b24gdmFyaWFudHNcbi8vXG4vLyBFYXNpbHkgcHVtcCBvdXQgZGVmYXVsdCBzdHlsZXMsIGFzIHdlbGwgYXMgOmhvdmVyLCA6Zm9jdXMsIDphY3RpdmUsXG4vLyBhbmQgZGlzYWJsZWQgb3B0aW9ucyBmb3IgYWxsIGJ1dHRvbnNcblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGJ0bi12YXJpYW50LW1peGluXG5AbWl4aW4gYnV0dG9uLXZhcmlhbnQoXG4gICRiYWNrZ3JvdW5kLFxuICAkYm9yZGVyLFxuICAkY29sb3I6IGNvbG9yLWNvbnRyYXN0KCRiYWNrZ3JvdW5kKSxcbiAgJGhvdmVyLWJhY2tncm91bmQ6IGlmKCRjb2xvciA9PSAkY29sb3ItY29udHJhc3QtbGlnaHQsIHNoYWRlLWNvbG9yKCRiYWNrZ3JvdW5kLCAkYnRuLWhvdmVyLWJnLXNoYWRlLWFtb3VudCksIHRpbnQtY29sb3IoJGJhY2tncm91bmQsICRidG4taG92ZXItYmctdGludC1hbW91bnQpKSxcbiAgJGhvdmVyLWJvcmRlcjogaWYoJGNvbG9yID09ICRjb2xvci1jb250cmFzdC1saWdodCwgc2hhZGUtY29sb3IoJGJvcmRlciwgJGJ0bi1ob3Zlci1ib3JkZXItc2hhZGUtYW1vdW50KSwgdGludC1jb2xvcigkYm9yZGVyLCAkYnRuLWhvdmVyLWJvcmRlci10aW50LWFtb3VudCkpLFxuICAkaG92ZXItY29sb3I6IGNvbG9yLWNvbnRyYXN0KCRob3Zlci1iYWNrZ3JvdW5kKSxcbiAgJGFjdGl2ZS1iYWNrZ3JvdW5kOiBpZigkY29sb3IgPT0gJGNvbG9yLWNvbnRyYXN0LWxpZ2h0LCBzaGFkZS1jb2xvcigkYmFja2dyb3VuZCwgJGJ0bi1hY3RpdmUtYmctc2hhZGUtYW1vdW50KSwgdGludC1jb2xvcigkYmFja2dyb3VuZCwgJGJ0bi1hY3RpdmUtYmctdGludC1hbW91bnQpKSxcbiAgJGFjdGl2ZS1ib3JkZXI6IGlmKCRjb2xvciA9PSAkY29sb3ItY29udHJhc3QtbGlnaHQsIHNoYWRlLWNvbG9yKCRib3JkZXIsICRidG4tYWN0aXZlLWJvcmRlci1zaGFkZS1hbW91bnQpLCB0aW50LWNvbG9yKCRib3JkZXIsICRidG4tYWN0aXZlLWJvcmRlci10aW50LWFtb3VudCkpLFxuICAkYWN0aXZlLWNvbG9yOiBjb2xvci1jb250cmFzdCgkYWN0aXZlLWJhY2tncm91bmQpLFxuICAkZGlzYWJsZWQtYmFja2dyb3VuZDogJGJhY2tncm91bmQsXG4gICRkaXNhYmxlZC1ib3JkZXI6ICRib3JkZXIsXG4gICRkaXNhYmxlZC1jb2xvcjogY29sb3ItY29udHJhc3QoJGRpc2FibGVkLWJhY2tncm91bmQpXG4pIHtcbiAgLS0jeyRwcmVmaXh9YnRuLWNvbG9yOiAjeyRjb2xvcn07XG4gIC0tI3skcHJlZml4fWJ0bi1iZzogI3skYmFja2dyb3VuZH07XG4gIC0tI3skcHJlZml4fWJ0bi1ib3JkZXItY29sb3I6ICN7JGJvcmRlcn07XG4gIC0tI3skcHJlZml4fWJ0bi1ob3Zlci1jb2xvcjogI3skaG92ZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1idG4taG92ZXItYmc6ICN7JGhvdmVyLWJhY2tncm91bmR9O1xuICAtLSN7JHByZWZpeH1idG4taG92ZXItYm9yZGVyLWNvbG9yOiAjeyRob3Zlci1ib3JkZXJ9O1xuICAtLSN7JHByZWZpeH1idG4tZm9jdXMtc2hhZG93LXJnYjogI3t0by1yZ2IobWl4KCRjb2xvciwgJGJvcmRlciwgMTUlKSl9O1xuICAtLSN7JHByZWZpeH1idG4tYWN0aXZlLWNvbG9yOiAjeyRhY3RpdmUtY29sb3J9O1xuICAtLSN7JHByZWZpeH1idG4tYWN0aXZlLWJnOiAjeyRhY3RpdmUtYmFja2dyb3VuZH07XG4gIC0tI3skcHJlZml4fWJ0bi1hY3RpdmUtYm9yZGVyLWNvbG9yOiAjeyRhY3RpdmUtYm9yZGVyfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWFjdGl2ZS1zaGFkb3c6ICN7JGJ0bi1hY3RpdmUtYm94LXNoYWRvd307XG4gIC0tI3skcHJlZml4fWJ0bi1kaXNhYmxlZC1jb2xvcjogI3skZGlzYWJsZWQtY29sb3J9O1xuICAtLSN7JHByZWZpeH1idG4tZGlzYWJsZWQtYmc6ICN7JGRpc2FibGVkLWJhY2tncm91bmR9O1xuICAtLSN7JHByZWZpeH1idG4tZGlzYWJsZWQtYm9yZGVyLWNvbG9yOiAjeyRkaXNhYmxlZC1ib3JkZXJ9O1xufVxuLy8gc2Nzcy1kb2NzLWVuZCBidG4tdmFyaWFudC1taXhpblxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgYnRuLW91dGxpbmUtdmFyaWFudC1taXhpblxuQG1peGluIGJ1dHRvbi1vdXRsaW5lLXZhcmlhbnQoXG4gICRjb2xvcixcbiAgJGNvbG9yLWhvdmVyOiBjb2xvci1jb250cmFzdCgkY29sb3IpLFxuICAkYWN0aXZlLWJhY2tncm91bmQ6ICRjb2xvcixcbiAgJGFjdGl2ZS1ib3JkZXI6ICRjb2xvcixcbiAgJGFjdGl2ZS1jb2xvcjogY29sb3ItY29udHJhc3QoJGFjdGl2ZS1iYWNrZ3JvdW5kKVxuKSB7XG4gIC0tI3skcHJlZml4fWJ0bi1jb2xvcjogI3skY29sb3J9O1xuICAtLSN7JHByZWZpeH1idG4tYm9yZGVyLWNvbG9yOiAjeyRjb2xvcn07XG4gIC0tI3skcHJlZml4fWJ0bi1ob3Zlci1jb2xvcjogI3skY29sb3ItaG92ZXJ9O1xuICAtLSN7JHByZWZpeH1idG4taG92ZXItYmc6ICN7JGFjdGl2ZS1iYWNrZ3JvdW5kfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWhvdmVyLWJvcmRlci1jb2xvcjogI3skYWN0aXZlLWJvcmRlcn07XG4gIC0tI3skcHJlZml4fWJ0bi1mb2N1cy1zaGFkb3ctcmdiOiAje3RvLXJnYigkY29sb3IpfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWFjdGl2ZS1jb2xvcjogI3skYWN0aXZlLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWFjdGl2ZS1iZzogI3skYWN0aXZlLWJhY2tncm91bmR9O1xuICAtLSN7JHByZWZpeH1idG4tYWN0aXZlLWJvcmRlci1jb2xvcjogI3skYWN0aXZlLWJvcmRlcn07XG4gIC0tI3skcHJlZml4fWJ0bi1hY3RpdmUtc2hhZG93OiAjeyRidG4tYWN0aXZlLWJveC1zaGFkb3d9O1xuICAtLSN7JHByZWZpeH1idG4tZGlzYWJsZWQtY29sb3I6ICN7JGNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWRpc2FibGVkLWJnOiB0cmFuc3BhcmVudDtcbiAgLS0jeyRwcmVmaXh9YnRuLWRpc2FibGVkLWJvcmRlci1jb2xvcjogI3skY29sb3J9O1xuICAtLSN7JHByZWZpeH1ncmFkaWVudDogbm9uZTtcbn1cbi8vIHNjc3MtZG9jcy1lbmQgYnRuLW91dGxpbmUtdmFyaWFudC1taXhpblxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgYnRuLXNpemUtbWl4aW5cbkBtaXhpbiBidXR0b24tc2l6ZSgkcGFkZGluZy15LCAkcGFkZGluZy14LCAkZm9udC1zaXplLCAkYm9yZGVyLXJhZGl1cykge1xuICAtLSN7JHByZWZpeH1idG4tcGFkZGluZy15OiAjeyRwYWRkaW5nLXl9O1xuICAtLSN7JHByZWZpeH1idG4tcGFkZGluZy14OiAjeyRwYWRkaW5nLXh9O1xuICBAaW5jbHVkZSByZnMoJGZvbnQtc2l6ZSwgLS0jeyRwcmVmaXh9YnRuLWZvbnQtc2l6ZSk7XG4gIC0tI3skcHJlZml4fWJ0bi1ib3JkZXItcmFkaXVzOiAjeyRib3JkZXItcmFkaXVzfTtcbn1cbi8vIHNjc3MtZG9jcy1lbmQgYnRuLXNpemUtbWl4aW5cbiIsIi5mYWRlIHtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkdHJhbnNpdGlvbi1mYWRlKTtcblxuICAmOm5vdCguc2hvdykge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGNvbGxhcHNlLWNsYXNzZXNcbi5jb2xsYXBzZSB7XG4gICY6bm90KC5zaG93KSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4uY29sbGFwc2luZyB7XG4gIGhlaWdodDogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkdHJhbnNpdGlvbi1jb2xsYXBzZSk7XG5cbiAgJi5jb2xsYXBzZS1ob3Jpem9udGFsIHtcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigkdHJhbnNpdGlvbi1jb2xsYXBzZS13aWR0aCk7XG4gIH1cbn1cbi8vIHNjc3MtZG9jcy1lbmQgY29sbGFwc2UtY2xhc3Nlc1xuIiwiLy8gVGhlIGRyb3Bkb3duIHdyYXBwZXIgKGA8ZGl2PmApXG4uZHJvcHVwLFxuLmRyb3BlbmQsXG4uZHJvcGRvd24sXG4uZHJvcHN0YXJ0LFxuLmRyb3B1cC1jZW50ZXIsXG4uZHJvcGRvd24tY2VudGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uZHJvcGRvd24tdG9nZ2xlIHtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuICAvLyBHZW5lcmF0ZSB0aGUgY2FyZXQgYXV0b21hdGljYWxseVxuICBAaW5jbHVkZSBjYXJldCgpO1xufVxuXG4vLyBUaGUgZHJvcGRvd24gbWVudVxuLmRyb3Bkb3duLW1lbnUge1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgZHJvcGRvd24tY3NzLXZhcnNcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24temluZGV4OiAjeyR6aW5kZXgtZHJvcGRvd259O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1taW4td2lkdGg6ICN7JGRyb3Bkb3duLW1pbi13aWR0aH07XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLXBhZGRpbmcteDogI3skZHJvcGRvd24tcGFkZGluZy14fTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24tcGFkZGluZy15OiAjeyRkcm9wZG93bi1wYWRkaW5nLXl9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1zcGFjZXI6ICN7JGRyb3Bkb3duLXNwYWNlcn07XG4gIEBpbmNsdWRlIHJmcygkZHJvcGRvd24tZm9udC1zaXplLCAtLSN7JHByZWZpeH1kcm9wZG93bi1mb250LXNpemUpO1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1jb2xvcjogI3skZHJvcGRvd24tY29sb3J9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1iZzogI3skZHJvcGRvd24tYmd9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1ib3JkZXItY29sb3I6ICN7JGRyb3Bkb3duLWJvcmRlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWJvcmRlci1yYWRpdXM6ICN7JGRyb3Bkb3duLWJvcmRlci1yYWRpdXN9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1ib3JkZXItd2lkdGg6ICN7JGRyb3Bkb3duLWJvcmRlci13aWR0aH07XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWlubmVyLWJvcmRlci1yYWRpdXM6ICN7JGRyb3Bkb3duLWlubmVyLWJvcmRlci1yYWRpdXN9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1kaXZpZGVyLWJnOiAjeyRkcm9wZG93bi1kaXZpZGVyLWJnfTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24tZGl2aWRlci1tYXJnaW4teTogI3skZHJvcGRvd24tZGl2aWRlci1tYXJnaW4teX07XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWJveC1zaGFkb3c6ICN7JGRyb3Bkb3duLWJveC1zaGFkb3d9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1saW5rLWNvbG9yOiAjeyRkcm9wZG93bi1saW5rLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24tbGluay1ob3Zlci1jb2xvcjogI3skZHJvcGRvd24tbGluay1ob3Zlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWxpbmstaG92ZXItYmc6ICN7JGRyb3Bkb3duLWxpbmstaG92ZXItYmd9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1saW5rLWFjdGl2ZS1jb2xvcjogI3skZHJvcGRvd24tbGluay1hY3RpdmUtY29sb3J9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1saW5rLWFjdGl2ZS1iZzogI3skZHJvcGRvd24tbGluay1hY3RpdmUtYmd9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1saW5rLWRpc2FibGVkLWNvbG9yOiAjeyRkcm9wZG93bi1saW5rLWRpc2FibGVkLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24taXRlbS1wYWRkaW5nLXg6ICN7JGRyb3Bkb3duLWl0ZW0tcGFkZGluZy14fTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24taXRlbS1wYWRkaW5nLXk6ICN7JGRyb3Bkb3duLWl0ZW0tcGFkZGluZy15fTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24taGVhZGVyLWNvbG9yOiAjeyRkcm9wZG93bi1oZWFkZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1oZWFkZXItcGFkZGluZy14OiAjeyRkcm9wZG93bi1oZWFkZXItcGFkZGluZy14fTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24taGVhZGVyLXBhZGRpbmcteTogI3skZHJvcGRvd24taGVhZGVyLXBhZGRpbmcteX07XG4gIC8vIHNjc3MtZG9jcy1lbmQgZHJvcGRvd24tY3NzLXZhcnNcblxuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi16aW5kZXgpO1xuICBkaXNwbGF5OiBub25lOyAvLyBub25lIGJ5IGRlZmF1bHQsIGJ1dCBibG9jayBvbiBcIm9wZW5cIiBvZiB0aGUgbWVudVxuICBtaW4td2lkdGg6IHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1taW4td2lkdGgpO1xuICBwYWRkaW5nOiB2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24tcGFkZGluZy15KSB2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24tcGFkZGluZy14KTtcbiAgbWFyZ2luOiAwOyAvLyBPdmVycmlkZSBkZWZhdWx0IG1hcmdpbiBvZiB1bFxuICBAaW5jbHVkZSBmb250LXNpemUodmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLWZvbnQtc2l6ZSkpO1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLWNvbG9yKTtcbiAgdGV4dC1hbGlnbjogbGVmdDsgLy8gRW5zdXJlcyBwcm9wZXIgYWxpZ25tZW50IGlmIHBhcmVudCBoYXMgaXQgY2hhbmdlZCAoZS5nLiwgbW9kYWwgZm9vdGVyKVxuICBsaXN0LXN0eWxlOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24tYmcpO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICBib3JkZXI6IHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1ib3JkZXItY29sb3IpO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1ib3JkZXItcmFkaXVzKSk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3codmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLWJveC1zaGFkb3cpKTtcblxuICAmW2RhdGEtYnMtcG9wcGVyXSB7XG4gICAgdG9wOiAxMDAlO1xuICAgIGxlZnQ6IDA7XG4gICAgbWFyZ2luLXRvcDogdmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLXNwYWNlcik7XG4gIH1cblxuICBAaWYgJGRyb3Bkb3duLXBhZGRpbmcteSA9PSAwIHtcbiAgICA+IC5kcm9wZG93bi1pdGVtOmZpcnN0LWNoaWxkLFxuICAgID4gbGk6Zmlyc3QtY2hpbGQgLmRyb3Bkb3duLWl0ZW0ge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXModmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLWlubmVyLWJvcmRlci1yYWRpdXMpKTtcbiAgICB9XG4gICAgPiAuZHJvcGRvd24taXRlbTpsYXN0LWNoaWxkLFxuICAgID4gbGk6bGFzdC1jaGlsZCAuZHJvcGRvd24taXRlbSB7XG4gICAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24taW5uZXItYm9yZGVyLXJhZGl1cykpO1xuICAgIH1cblxuICB9XG59XG5cbi8vIHNjc3MtZG9jcy1zdGFydCByZXNwb25zaXZlLWJyZWFrcG9pbnRzXG4vLyBXZSBkZWxpYmVyYXRlbHkgaGFyZGNvZGUgdGhlIGBicy1gIHByZWZpeCBiZWNhdXNlIHdlIGNoZWNrXG4vLyB0aGlzIGN1c3RvbSBwcm9wZXJ0eSBpbiBKUyB0byBkZXRlcm1pbmUgUG9wcGVyJ3MgcG9zaXRpb25pbmdcblxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgLmRyb3Bkb3duLW1lbnUjeyRpbmZpeH0tc3RhcnQge1xuICAgICAgLS1icy1wb3NpdGlvbjogc3RhcnQ7XG5cbiAgICAgICZbZGF0YS1icy1wb3BwZXJdIHtcbiAgICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmRyb3Bkb3duLW1lbnUjeyRpbmZpeH0tZW5kIHtcbiAgICAgIC0tYnMtcG9zaXRpb246IGVuZDtcblxuICAgICAgJltkYXRhLWJzLXBvcHBlcl0ge1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgbGVmdDogYXV0bztcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbi8vIHNjc3MtZG9jcy1lbmQgcmVzcG9uc2l2ZS1icmVha3BvaW50c1xuXG4vLyBBbGxvdyBmb3IgZHJvcGRvd25zIHRvIGdvIGJvdHRvbSB1cCAoYWthLCBkcm9wdXAtbWVudSlcbi8vIEp1c3QgYWRkIC5kcm9wdXAgYWZ0ZXIgdGhlIHN0YW5kYXJkIC5kcm9wZG93biBjbGFzcyBhbmQgeW91J3JlIHNldC5cbi5kcm9wdXAge1xuICAuZHJvcGRvd24tbWVudVtkYXRhLWJzLXBvcHBlcl0ge1xuICAgIHRvcDogYXV0bztcbiAgICBib3R0b206IDEwMCU7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24tc3BhY2VyKTtcbiAgfVxuXG4gIC5kcm9wZG93bi10b2dnbGUge1xuICAgIEBpbmNsdWRlIGNhcmV0KHVwKTtcbiAgfVxufVxuXG4uZHJvcGVuZCB7XG4gIC5kcm9wZG93bi1tZW51W2RhdGEtYnMtcG9wcGVyXSB7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDEwMCU7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tbGVmdDogdmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLXNwYWNlcik7XG4gIH1cblxuICAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBAaW5jbHVkZSBjYXJldChlbmQpO1xuICAgICY6OmFmdGVyIHtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiAwO1xuICAgIH1cbiAgfVxufVxuXG4uZHJvcHN0YXJ0IHtcbiAgLmRyb3Bkb3duLW1lbnVbZGF0YS1icy1wb3BwZXJdIHtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDEwMCU7XG4gICAgbGVmdDogYXV0bztcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1hcmdpbi1yaWdodDogdmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLXNwYWNlcik7XG4gIH1cblxuICAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBAaW5jbHVkZSBjYXJldChzdGFydCk7XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiAwO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIERpdmlkZXJzIChiYXNpY2FsbHkgYW4gYDxocj5gKSB3aXRoaW4gdGhlIGRyb3Bkb3duXG4uZHJvcGRvd24tZGl2aWRlciB7XG4gIGhlaWdodDogMDtcbiAgbWFyZ2luOiB2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24tZGl2aWRlci1tYXJnaW4teSkgMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1kaXZpZGVyLWJnKTtcbiAgb3BhY2l0eTogMTsgLy8gUmV2aXNpdCBpbiB2NiB0byBkZS1kdXBlIHN0eWxlcyB0aGF0IGNvbmZsaWN0IHdpdGggPGhyPiBlbGVtZW50XG59XG5cbi8vIExpbmtzLCBidXR0b25zLCBhbmQgbW9yZSB3aXRoaW4gdGhlIGRyb3Bkb3duIG1lbnVcbi8vXG4vLyBgPGJ1dHRvbj5gLXNwZWNpZmljIHN0eWxlcyBhcmUgZGVub3RlZCB3aXRoIGAvLyBGb3IgPGJ1dHRvbj5zYFxuLmRyb3Bkb3duLWl0ZW0ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7IC8vIEZvciBgPGJ1dHRvbj5gc1xuICBwYWRkaW5nOiB2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24taXRlbS1wYWRkaW5nLXkpIHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1pdGVtLXBhZGRpbmcteCk7XG4gIGNsZWFyOiBib3RoO1xuICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbDtcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1saW5rLWNvbG9yKTtcbiAgdGV4dC1hbGlnbjogaW5oZXJpdDsgLy8gRm9yIGA8YnV0dG9uPmBzXG4gIHRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstZGVjb3JhdGlvbiA9PSBub25lLCBudWxsLCBub25lKTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgLy8gcHJldmVudCBsaW5rcyBmcm9tIHJhbmRvbWx5IGJyZWFraW5nIG9udG8gbmV3IGxpbmVzXG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyAvLyBGb3IgYDxidXR0b24+YHNcbiAgYm9yZGVyOiAwOyAvLyBGb3IgYDxidXR0b24+YHNcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24taXRlbS1ib3JkZXItcmFkaXVzLCAwKSk7XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1saW5rLWhvdmVyLWNvbG9yKTtcbiAgICB0ZXh0LWRlY29yYXRpb246IGlmKCRsaW5rLWhvdmVyLWRlY29yYXRpb24gPT0gdW5kZXJsaW5lLCBub25lLCBudWxsKTtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZyh2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24tbGluay1ob3Zlci1iZykpO1xuICB9XG5cbiAgJi5hY3RpdmUsXG4gICY6YWN0aXZlIHtcbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLWxpbmstYWN0aXZlLWNvbG9yKTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcodmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLWxpbmstYWN0aXZlLWJnKSk7XG4gIH1cblxuICAmLmRpc2FibGVkLFxuICAmOmRpc2FibGVkIHtcbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLWxpbmstZGlzYWJsZWQtY29sb3IpO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIC8vIFJlbW92ZSBDU1MgZ3JhZGllbnRzIGlmIHRoZXkncmUgZW5hYmxlZFxuICAgIGJhY2tncm91bmQtaW1hZ2U6IGlmKCRlbmFibGUtZ3JhZGllbnRzLCBub25lLCBudWxsKTtcbiAgfVxufVxuXG4uZHJvcGRvd24tbWVudS5zaG93IHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8vIERyb3Bkb3duIHNlY3Rpb24gaGVhZGVyc1xuLmRyb3Bkb3duLWhlYWRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiB2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24taGVhZGVyLXBhZGRpbmcteSkgdmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLWhlYWRlci1wYWRkaW5nLXgpO1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBmb3IgdXNlIHdpdGggaGVhZGluZyBlbGVtZW50c1xuICBAaW5jbHVkZSBmb250LXNpemUoJGZvbnQtc2l6ZS1zbSk7XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9ZHJvcGRvd24taGVhZGVyLWNvbG9yKTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgLy8gYXMgd2l0aCA+IGxpID4gYVxufVxuXG4vLyBEcm9wZG93biB0ZXh0XG4uZHJvcGRvd24taXRlbS10ZXh0IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1pdGVtLXBhZGRpbmcteSkgdmFyKC0tI3skcHJlZml4fWRyb3Bkb3duLWl0ZW0tcGFkZGluZy14KTtcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1kcm9wZG93bi1saW5rLWNvbG9yKTtcbn1cblxuLy8gRGFyayBkcm9wZG93bnNcbi5kcm9wZG93bi1tZW51LWRhcmsge1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgZHJvcGRvd24tZGFyay1jc3MtdmFyc1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1jb2xvcjogI3skZHJvcGRvd24tZGFyay1jb2xvcn07XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWJnOiAjeyRkcm9wZG93bi1kYXJrLWJnfTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24tYm9yZGVyLWNvbG9yOiAjeyRkcm9wZG93bi1kYXJrLWJvcmRlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWJveC1zaGFkb3c6ICN7JGRyb3Bkb3duLWRhcmstYm94LXNoYWRvd307XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWxpbmstY29sb3I6ICN7JGRyb3Bkb3duLWRhcmstbGluay1jb2xvcn07XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWxpbmstaG92ZXItY29sb3I6ICN7JGRyb3Bkb3duLWRhcmstbGluay1ob3Zlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWRpdmlkZXItYmc6ICN7JGRyb3Bkb3duLWRhcmstZGl2aWRlci1iZ307XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWxpbmstaG92ZXItYmc6ICN7JGRyb3Bkb3duLWRhcmstbGluay1ob3Zlci1iZ307XG4gIC0tI3skcHJlZml4fWRyb3Bkb3duLWxpbmstYWN0aXZlLWNvbG9yOiAjeyRkcm9wZG93bi1kYXJrLWxpbmstYWN0aXZlLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9ZHJvcGRvd24tbGluay1hY3RpdmUtYmc6ICN7JGRyb3Bkb3duLWRhcmstbGluay1hY3RpdmUtYmd9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1saW5rLWRpc2FibGVkLWNvbG9yOiAjeyRkcm9wZG93bi1kYXJrLWxpbmstZGlzYWJsZWQtY29sb3J9O1xuICAtLSN7JHByZWZpeH1kcm9wZG93bi1oZWFkZXItY29sb3I6ICN7JGRyb3Bkb3duLWRhcmstaGVhZGVyLWNvbG9yfTtcbiAgLy8gc2Nzcy1kb2NzLWVuZCBkcm9wZG93bi1kYXJrLWNzcy12YXJzXG59XG4iLCIvLyBzY3NzLWRvY3Mtc3RhcnQgY2FyZXQtbWl4aW5zXG5AbWl4aW4gY2FyZXQtZG93bigkd2lkdGg6ICRjYXJldC13aWR0aCkge1xuICBib3JkZXItdG9wOiAkd2lkdGggc29saWQ7XG4gIGJvcmRlci1yaWdodDogJHdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItYm90dG9tOiAwO1xuICBib3JkZXItbGVmdDogJHdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xufVxuXG5AbWl4aW4gY2FyZXQtdXAoJHdpZHRoOiAkY2FyZXQtd2lkdGgpIHtcbiAgYm9yZGVyLXRvcDogMDtcbiAgYm9yZGVyLXJpZ2h0OiAkd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1ib3R0b206ICR3aWR0aCBzb2xpZDtcbiAgYm9yZGVyLWxlZnQ6ICR3aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbn1cblxuQG1peGluIGNhcmV0LWVuZCgkd2lkdGg6ICRjYXJldC13aWR0aCkge1xuICBib3JkZXItdG9wOiAkd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yaWdodDogMDtcbiAgYm9yZGVyLWJvdHRvbTogJHdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItbGVmdDogJHdpZHRoIHNvbGlkO1xufVxuXG5AbWl4aW4gY2FyZXQtc3RhcnQoJHdpZHRoOiAkY2FyZXQtd2lkdGgpIHtcbiAgYm9yZGVyLXRvcDogJHdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmlnaHQ6ICR3aWR0aCBzb2xpZDtcbiAgYm9yZGVyLWJvdHRvbTogJHdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xufVxuXG5AbWl4aW4gY2FyZXQoXG4gICRkaXJlY3Rpb246IGRvd24sXG4gICR3aWR0aDogJGNhcmV0LXdpZHRoLFxuICAkc3BhY2luZzogJGNhcmV0LXNwYWNpbmcsXG4gICR2ZXJ0aWNhbC1hbGlnbjogJGNhcmV0LXZlcnRpY2FsLWFsaWduXG4pIHtcbiAgQGlmICRlbmFibGUtY2FyZXQge1xuICAgICY6OmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbi1sZWZ0OiAkc3BhY2luZztcbiAgICAgIHZlcnRpY2FsLWFsaWduOiAkdmVydGljYWwtYWxpZ247XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgQGlmICRkaXJlY3Rpb24gPT0gZG93biB7XG4gICAgICAgIEBpbmNsdWRlIGNhcmV0LWRvd24oJHdpZHRoKTtcbiAgICAgIH0gQGVsc2UgaWYgJGRpcmVjdGlvbiA9PSB1cCB7XG4gICAgICAgIEBpbmNsdWRlIGNhcmV0LXVwKCR3aWR0aCk7XG4gICAgICB9IEBlbHNlIGlmICRkaXJlY3Rpb24gPT0gZW5kIHtcbiAgICAgICAgQGluY2x1ZGUgY2FyZXQtZW5kKCR3aWR0aCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGlmICRkaXJlY3Rpb24gPT0gc3RhcnQge1xuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuXG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIG1hcmdpbi1yaWdodDogJHNwYWNpbmc7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiAkdmVydGljYWwtYWxpZ247XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIEBpbmNsdWRlIGNhcmV0LXN0YXJ0KCR3aWR0aCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJjplbXB0eTo6YWZ0ZXIge1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgfVxuICB9XG59XG4vLyBzY3NzLWRvY3MtZW5kIGNhcmV0LW1peGluc1xuIiwiLy8gTWFrZSB0aGUgZGl2IGJlaGF2ZSBsaWtlIGEgYnV0dG9uXG4uYnRuLWdyb3VwLFxuLmJ0bi1ncm91cC12ZXJ0aWNhbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IC8vIG1hdGNoIC5idG4gYWxpZ25tZW50IGdpdmVuIGZvbnQtc2l6ZSBoYWNrIGFib3ZlXG5cbiAgPiAuYnRuIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZmxleDogMSAxIGF1dG87XG4gIH1cblxuICAvLyBCcmluZyB0aGUgaG92ZXIsIGZvY3VzZWQsIGFuZCBcImFjdGl2ZVwiIGJ1dHRvbnMgdG8gdGhlIGZyb250IHRvIG92ZXJsYXlcbiAgLy8gdGhlIGJvcmRlcnMgcHJvcGVybHlcbiAgPiAuYnRuLWNoZWNrOmNoZWNrZWQgKyAuYnRuLFxuICA+IC5idG4tY2hlY2s6Zm9jdXMgKyAuYnRuLFxuICA+IC5idG46aG92ZXIsXG4gID4gLmJ0bjpmb2N1cyxcbiAgPiAuYnRuOmFjdGl2ZSxcbiAgPiAuYnRuLmFjdGl2ZSB7XG4gICAgei1pbmRleDogMTtcbiAgfVxufVxuXG4vLyBPcHRpb25hbDogR3JvdXAgbXVsdGlwbGUgYnV0dG9uIGdyb3VwcyB0b2dldGhlciBmb3IgYSB0b29sYmFyXG4uYnRuLXRvb2xiYXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcblxuICAuaW5wdXQtZ3JvdXAge1xuICAgIHdpZHRoOiBhdXRvO1xuICB9XG59XG5cbi5idG4tZ3JvdXAge1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRidG4tYm9yZGVyLXJhZGl1cyk7XG5cbiAgLy8gUHJldmVudCBkb3VibGUgYm9yZGVycyB3aGVuIGJ1dHRvbnMgYXJlIG5leHQgdG8gZWFjaCBvdGhlclxuICA+IDpub3QoLmJ0bi1jaGVjazpmaXJzdC1jaGlsZCkgKyAuYnRuLFxuICA+IC5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKCN7JGJ0bi1ib3JkZXItd2lkdGh9ICogLTEpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICB9XG5cbiAgLy8gUmVzZXQgcm91bmRlZCBjb3JuZXJzXG4gID4gLmJ0bjpub3QoOmxhc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tdG9nZ2xlKSxcbiAgPiAuYnRuLmRyb3Bkb3duLXRvZ2dsZS1zcGxpdDpmaXJzdC1jaGlsZCxcbiAgPiAuYnRuLWdyb3VwOm5vdCg6bGFzdC1jaGlsZCkgPiAuYnRuIHtcbiAgICBAaW5jbHVkZSBib3JkZXItZW5kLXJhZGl1cygwKTtcbiAgfVxuXG4gIC8vIFRoZSBsZWZ0IHJhZGl1cyBzaG91bGQgYmUgMCBpZiB0aGUgYnV0dG9uIGlzOlxuICAvLyAtIHRoZSBcInRoaXJkIG9yIG1vcmVcIiBjaGlsZFxuICAvLyAtIHRoZSBzZWNvbmQgY2hpbGQgYW5kIHRoZSBwcmV2aW91cyBlbGVtZW50IGlzbid0IGAuYnRuLWNoZWNrYCAobWFraW5nIGl0IHRoZSBmaXJzdCBjaGlsZCB2aXN1YWxseSlcbiAgLy8gLSBwYXJ0IG9mIGEgYnRuLWdyb3VwIHdoaWNoIGlzbid0IHRoZSBmaXJzdCBjaGlsZFxuICA+IC5idG46bnRoLWNoaWxkKG4gKyAzKSxcbiAgPiA6bm90KC5idG4tY2hlY2spICsgLmJ0bixcbiAgPiAuYnRuLWdyb3VwOm5vdCg6Zmlyc3QtY2hpbGQpID4gLmJ0biB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXN0YXJ0LXJhZGl1cygwKTtcbiAgfVxufVxuXG4vLyBTaXppbmdcbi8vXG4vLyBSZW1peCB0aGUgZGVmYXVsdCBidXR0b24gc2l6aW5nIGNsYXNzZXMgaW50byBuZXcgb25lcyBmb3IgZWFzaWVyIG1hbmlwdWxhdGlvbi5cblxuLmJ0bi1ncm91cC1zbSA+IC5idG4geyBAZXh0ZW5kIC5idG4tc207IH1cbi5idG4tZ3JvdXAtbGcgPiAuYnRuIHsgQGV4dGVuZCAuYnRuLWxnOyB9XG5cblxuLy9cbi8vIFNwbGl0IGJ1dHRvbiBkcm9wZG93bnNcbi8vXG5cbi5kcm9wZG93bi10b2dnbGUtc3BsaXQge1xuICBwYWRkaW5nLXJpZ2h0OiAkYnRuLXBhZGRpbmcteCAqIC43NTtcbiAgcGFkZGluZy1sZWZ0OiAkYnRuLXBhZGRpbmcteCAqIC43NTtcblxuICAmOjphZnRlcixcbiAgLmRyb3B1cCAmOjphZnRlcixcbiAgLmRyb3BlbmQgJjo6YWZ0ZXIge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG5cbiAgLmRyb3BzdGFydCAmOjpiZWZvcmUge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgfVxufVxuXG4uYnRuLXNtICsgLmRyb3Bkb3duLXRvZ2dsZS1zcGxpdCB7XG4gIHBhZGRpbmctcmlnaHQ6ICRidG4tcGFkZGluZy14LXNtICogLjc1O1xuICBwYWRkaW5nLWxlZnQ6ICRidG4tcGFkZGluZy14LXNtICogLjc1O1xufVxuXG4uYnRuLWxnICsgLmRyb3Bkb3duLXRvZ2dsZS1zcGxpdCB7XG4gIHBhZGRpbmctcmlnaHQ6ICRidG4tcGFkZGluZy14LWxnICogLjc1O1xuICBwYWRkaW5nLWxlZnQ6ICRidG4tcGFkZGluZy14LWxnICogLjc1O1xufVxuXG5cbi8vIFRoZSBjbGlja2FibGUgYnV0dG9uIGZvciB0b2dnbGluZyB0aGUgbWVudVxuLy8gU2V0IHRoZSBzYW1lIGluc2V0IHNoYWRvdyBhcyB0aGUgOmFjdGl2ZSBzdGF0ZVxuLmJ0bi1ncm91cC5zaG93IC5kcm9wZG93bi10b2dnbGUge1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCRidG4tYWN0aXZlLWJveC1zaGFkb3cpO1xuXG4gIC8vIFNob3cgbm8gc2hhZG93IGZvciBgLmJ0bi1saW5rYCBzaW5jZSBpdCBoYXMgbm8gb3RoZXIgYnV0dG9uIHN0eWxlcy5cbiAgJi5idG4tbGluayB7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdyhub25lKTtcbiAgfVxufVxuXG5cbi8vXG4vLyBWZXJ0aWNhbCBidXR0b24gZ3JvdXBzXG4vL1xuXG4uYnRuLWdyb3VwLXZlcnRpY2FsIHtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXG4gID4gLmJ0bixcbiAgPiAuYnRuLWdyb3VwIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gID4gLmJ0bjpub3QoOmZpcnN0LWNoaWxkKSxcbiAgPiAuYnRuLWdyb3VwOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBtYXJnaW4tdG9wOiBjYWxjKCN7JGJ0bi1ib3JkZXItd2lkdGh9ICogLTEpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICB9XG5cbiAgLy8gUmVzZXQgcm91bmRlZCBjb3JuZXJzXG4gID4gLmJ0bjpub3QoOmxhc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tdG9nZ2xlKSxcbiAgPiAuYnRuLWdyb3VwOm5vdCg6bGFzdC1jaGlsZCkgPiAuYnRuIHtcbiAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygwKTtcbiAgfVxuXG4gID4gLmJ0biB+IC5idG4sXG4gID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKSA+IC5idG4ge1xuICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKDApO1xuICB9XG59XG4iLCIvLyBCYXNlIGNsYXNzXG4vL1xuLy8gS2lja3N0YXJ0IGFueSBuYXZpZ2F0aW9uIGNvbXBvbmVudCB3aXRoIGEgc2V0IG9mIHN0eWxlIHJlc2V0cy4gV29ya3Mgd2l0aFxuLy8gYDxuYXY+YHMsIGA8dWw+YHMgb3IgYDxvbD5gcy5cblxuLm5hdiB7XG4gIC8vIHNjc3MtZG9jcy1zdGFydCBuYXYtY3NzLXZhcnNcbiAgLS0jeyRwcmVmaXh9bmF2LWxpbmstcGFkZGluZy14OiAjeyRuYXYtbGluay1wYWRkaW5nLXh9O1xuICAtLSN7JHByZWZpeH1uYXYtbGluay1wYWRkaW5nLXk6ICN7JG5hdi1saW5rLXBhZGRpbmcteX07XG4gIEBpbmNsdWRlIHJmcygkbmF2LWxpbmstZm9udC1zaXplLCAtLSN7JHByZWZpeH1uYXYtbGluay1mb250LXNpemUpO1xuICAtLSN7JHByZWZpeH1uYXYtbGluay1mb250LXdlaWdodDogI3skbmF2LWxpbmstZm9udC13ZWlnaHR9O1xuICAtLSN7JHByZWZpeH1uYXYtbGluay1jb2xvcjogI3skbmF2LWxpbmstY29sb3J9O1xuICAtLSN7JHByZWZpeH1uYXYtbGluay1ob3Zlci1jb2xvcjogI3skbmF2LWxpbmstaG92ZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1uYXYtbGluay1kaXNhYmxlZC1jb2xvcjogI3skbmF2LWxpbmstZGlzYWJsZWQtY29sb3J9O1xuICAvLyBzY3NzLWRvY3MtZW5kIG5hdi1jc3MtdmFyc1xuXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG4ubmF2LWxpbmsge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogdmFyKC0tI3skcHJlZml4fW5hdi1saW5rLXBhZGRpbmcteSkgdmFyKC0tI3skcHJlZml4fW5hdi1saW5rLXBhZGRpbmcteCk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSh2YXIoLS0jeyRwcmVmaXh9bmF2LWxpbmstZm9udC1zaXplKSk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS0jeyRwcmVmaXh9bmF2LWxpbmstZm9udC13ZWlnaHQpO1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fW5hdi1saW5rLWNvbG9yKTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBpZigkbGluay1kZWNvcmF0aW9uID09IG5vbmUsIG51bGwsIG5vbmUpO1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBib3JkZXI6IDA7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJG5hdi1saW5rLXRyYW5zaXRpb24pO1xuXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bmF2LWxpbmstaG92ZXItY29sb3IpO1xuICAgIHRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstaG92ZXItZGVjb3JhdGlvbiA9PSB1bmRlcmxpbmUsIG5vbmUsIG51bGwpO1xuICB9XG5cbiAgJjpmb2N1cy12aXNpYmxlIHtcbiAgICBvdXRsaW5lOiAwO1xuICAgIGJveC1zaGFkb3c6ICRuYXYtbGluay1mb2N1cy1ib3gtc2hhZG93O1xuICB9XG5cbiAgLy8gRGlzYWJsZWQgc3RhdGUgbGlnaHRlbnMgdGV4dFxuICAmLmRpc2FibGVkIHtcbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fW5hdi1saW5rLWRpc2FibGVkLWNvbG9yKTtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gIH1cbn1cblxuLy9cbi8vIFRhYnNcbi8vXG5cbi5uYXYtdGFicyB7XG4gIC8vIHNjc3MtZG9jcy1zdGFydCBuYXYtdGFicy1jc3MtdmFyc1xuICAtLSN7JHByZWZpeH1uYXYtdGFicy1ib3JkZXItd2lkdGg6ICN7JG5hdi10YWJzLWJvcmRlci13aWR0aH07XG4gIC0tI3skcHJlZml4fW5hdi10YWJzLWJvcmRlci1jb2xvcjogI3skbmF2LXRhYnMtYm9yZGVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bmF2LXRhYnMtYm9yZGVyLXJhZGl1czogI3skbmF2LXRhYnMtYm9yZGVyLXJhZGl1c307XG4gIC0tI3skcHJlZml4fW5hdi10YWJzLWxpbmstaG92ZXItYm9yZGVyLWNvbG9yOiAjeyRuYXYtdGFicy1saW5rLWhvdmVyLWJvcmRlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fW5hdi10YWJzLWxpbmstYWN0aXZlLWNvbG9yOiAjeyRuYXYtdGFicy1saW5rLWFjdGl2ZS1jb2xvcn07XG4gIC0tI3skcHJlZml4fW5hdi10YWJzLWxpbmstYWN0aXZlLWJnOiAjeyRuYXYtdGFicy1saW5rLWFjdGl2ZS1iZ307XG4gIC0tI3skcHJlZml4fW5hdi10YWJzLWxpbmstYWN0aXZlLWJvcmRlci1jb2xvcjogI3skbmF2LXRhYnMtbGluay1hY3RpdmUtYm9yZGVyLWNvbG9yfTtcbiAgLy8gc2Nzcy1kb2NzLWVuZCBuYXYtdGFicy1jc3MtdmFyc1xuXG4gIGJvcmRlci1ib3R0b206IHZhcigtLSN7JHByZWZpeH1uYXYtdGFicy1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLSN7JHByZWZpeH1uYXYtdGFicy1ib3JkZXItY29sb3IpO1xuXG4gIC5uYXYtbGluayB7XG4gICAgbWFyZ2luLWJvdHRvbTogY2FsYygtMSAqIHZhcigtLSN7JHByZWZpeH1uYXYtdGFicy1ib3JkZXItd2lkdGgpKTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgICBib3JkZXI6IHZhcigtLSN7JHByZWZpeH1uYXYtdGFicy1ib3JkZXItd2lkdGgpIHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKHZhcigtLSN7JHByZWZpeH1uYXYtdGFicy1ib3JkZXItcmFkaXVzKSk7XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgLy8gUHJldmVudHMgYWN0aXZlIC5uYXYtbGluayB0YWIgb3ZlcmxhcHBpbmcgZm9jdXMgb3V0bGluZSBvZiBwcmV2aW91cy9uZXh0IC5uYXYtbGlua1xuICAgICAgaXNvbGF0aW9uOiBpc29sYXRlO1xuICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bmF2LXRhYnMtbGluay1ob3Zlci1ib3JkZXItY29sb3IpO1xuICAgIH1cblxuICAgICYuZGlzYWJsZWQsXG4gICAgJjpkaXNhYmxlZCB7XG4gICAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fW5hdi1saW5rLWRpc2FibGVkLWNvbG9yKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB9XG4gIH1cblxuICAubmF2LWxpbmsuYWN0aXZlLFxuICAubmF2LWl0ZW0uc2hvdyAubmF2LWxpbmsge1xuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bmF2LXRhYnMtbGluay1hY3RpdmUtY29sb3IpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1uYXYtdGFicy1saW5rLWFjdGl2ZS1iZyk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bmF2LXRhYnMtbGluay1hY3RpdmUtYm9yZGVyLWNvbG9yKTtcbiAgfVxuXG4gIC5kcm9wZG93bi1tZW51IHtcbiAgICAvLyBNYWtlIGRyb3Bkb3duIGJvcmRlciBvdmVybGFwIHRhYiBib3JkZXJcbiAgICBtYXJnaW4tdG9wOiBjYWxjKC0xICogdmFyKC0tI3skcHJlZml4fW5hdi10YWJzLWJvcmRlci13aWR0aCkpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICAgIC8vIFJlbW92ZSB0aGUgdG9wIHJvdW5kZWQgY29ybmVycyBoZXJlIHNpbmNlIHRoZXJlIGlzIGEgaGFyZCBlZGdlIGFib3ZlIHRoZSBtZW51XG4gICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoMCk7XG4gIH1cbn1cblxuXG4vL1xuLy8gUGlsbHNcbi8vXG5cbi5uYXYtcGlsbHMge1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgbmF2LXBpbGxzLWNzcy12YXJzXG4gIC0tI3skcHJlZml4fW5hdi1waWxscy1ib3JkZXItcmFkaXVzOiAjeyRuYXYtcGlsbHMtYm9yZGVyLXJhZGl1c307XG4gIC0tI3skcHJlZml4fW5hdi1waWxscy1saW5rLWFjdGl2ZS1jb2xvcjogI3skbmF2LXBpbGxzLWxpbmstYWN0aXZlLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bmF2LXBpbGxzLWxpbmstYWN0aXZlLWJnOiAjeyRuYXYtcGlsbHMtbGluay1hY3RpdmUtYmd9O1xuICAvLyBzY3NzLWRvY3MtZW5kIG5hdi1waWxscy1jc3MtdmFyc1xuXG4gIC5uYXYtbGluayB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9bmF2LXBpbGxzLWJvcmRlci1yYWRpdXMpKTtcblxuICAgICY6ZGlzYWJsZWQge1xuICAgICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1uYXYtbGluay1kaXNhYmxlZC1jb2xvcik7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgfVxuICB9XG5cbiAgLm5hdi1saW5rLmFjdGl2ZSxcbiAgLnNob3cgPiAubmF2LWxpbmsge1xuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bmF2LXBpbGxzLWxpbmstYWN0aXZlLWNvbG9yKTtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZyh2YXIoLS0jeyRwcmVmaXh9bmF2LXBpbGxzLWxpbmstYWN0aXZlLWJnKSk7XG4gIH1cbn1cblxuXG4vL1xuLy8gVW5kZXJsaW5lXG4vL1xuXG4ubmF2LXVuZGVybGluZSB7XG4gIC8vIHNjc3MtZG9jcy1zdGFydCBuYXYtdW5kZXJsaW5lLWNzcy12YXJzXG4gIC0tI3skcHJlZml4fW5hdi11bmRlcmxpbmUtZ2FwOiAjeyRuYXYtdW5kZXJsaW5lLWdhcH07XG4gIC0tI3skcHJlZml4fW5hdi11bmRlcmxpbmUtYm9yZGVyLXdpZHRoOiAjeyRuYXYtdW5kZXJsaW5lLWJvcmRlci13aWR0aH07XG4gIC0tI3skcHJlZml4fW5hdi11bmRlcmxpbmUtbGluay1hY3RpdmUtY29sb3I6ICN7JG5hdi11bmRlcmxpbmUtbGluay1hY3RpdmUtY29sb3J9O1xuICAvLyBzY3NzLWRvY3MtZW5kIG5hdi11bmRlcmxpbmUtY3NzLXZhcnNcblxuICBnYXA6IHZhcigtLSN7JHByZWZpeH1uYXYtdW5kZXJsaW5lLWdhcCk7XG5cbiAgLm5hdi1saW5rIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBib3JkZXItYm90dG9tOiB2YXIoLS0jeyRwcmVmaXh9bmF2LXVuZGVybGluZS1ib3JkZXItd2lkdGgpIHNvbGlkIHRyYW5zcGFyZW50O1xuXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6IGN1cnJlbnRjb2xvcjtcbiAgICB9XG4gIH1cblxuICAubmF2LWxpbmsuYWN0aXZlLFxuICAuc2hvdyA+IC5uYXYtbGluayB7XG4gICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkO1xuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bmF2LXVuZGVybGluZS1saW5rLWFjdGl2ZS1jb2xvcik7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogY3VycmVudGNvbG9yO1xuICB9XG59XG5cblxuLy9cbi8vIEp1c3RpZmllZCB2YXJpYW50c1xuLy9cblxuLm5hdi1maWxsIHtcbiAgPiAubmF2LWxpbmssXG4gIC5uYXYtaXRlbSB7XG4gICAgZmxleDogMSAxIGF1dG87XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG59XG5cbi5uYXYtanVzdGlmaWVkIHtcbiAgPiAubmF2LWxpbmssXG4gIC5uYXYtaXRlbSB7XG4gICAgZmxleC1iYXNpczogMDtcbiAgICBmbGV4LWdyb3c6IDE7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG59XG5cbi5uYXYtZmlsbCxcbi5uYXYtanVzdGlmaWVkIHtcbiAgLm5hdi1pdGVtIC5uYXYtbGluayB7XG4gICAgd2lkdGg6IDEwMCU7IC8vIE1ha2Ugc3VyZSBidXR0b24gd2lsbCBncm93XG4gIH1cbn1cblxuXG4vLyBUYWJiYWJsZSB0YWJzXG4vL1xuLy8gSGlkZSB0YWJiYWJsZSBwYW5lcyB0byBzdGFydCwgc2hvdyB0aGVtIHdoZW4gYC5hY3RpdmVgXG5cbi50YWItY29udGVudCB7XG4gID4gLnRhYi1wYW5lIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gID4gLmFjdGl2ZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cbiIsIi8vIE5hdmJhclxuLy9cbi8vIFByb3ZpZGUgYSBzdGF0aWMgbmF2YmFyIGZyb20gd2hpY2ggd2UgZXhwYW5kIHRvIGNyZWF0ZSBmdWxsLXdpZHRoLCBmaXhlZCwgYW5kXG4vLyBvdGhlciBuYXZiYXIgdmFyaWF0aW9ucy5cblxuLm5hdmJhciB7XG4gIC8vIHNjc3MtZG9jcy1zdGFydCBuYXZiYXItY3NzLXZhcnNcbiAgLS0jeyRwcmVmaXh9bmF2YmFyLXBhZGRpbmcteDogI3tpZigkbmF2YmFyLXBhZGRpbmcteCA9PSBudWxsLCAwLCAkbmF2YmFyLXBhZGRpbmcteCl9O1xuICAtLSN7JHByZWZpeH1uYXZiYXItcGFkZGluZy15OiAjeyRuYXZiYXItcGFkZGluZy15fTtcbiAgLS0jeyRwcmVmaXh9bmF2YmFyLWNvbG9yOiAjeyRuYXZiYXItbGlnaHQtY29sb3J9O1xuICAtLSN7JHByZWZpeH1uYXZiYXItaG92ZXItY29sb3I6ICN7JG5hdmJhci1saWdodC1ob3Zlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fW5hdmJhci1kaXNhYmxlZC1jb2xvcjogI3skbmF2YmFyLWxpZ2h0LWRpc2FibGVkLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bmF2YmFyLWFjdGl2ZS1jb2xvcjogI3skbmF2YmFyLWxpZ2h0LWFjdGl2ZS1jb2xvcn07XG4gIC0tI3skcHJlZml4fW5hdmJhci1icmFuZC1wYWRkaW5nLXk6ICN7JG5hdmJhci1icmFuZC1wYWRkaW5nLXl9O1xuICAtLSN7JHByZWZpeH1uYXZiYXItYnJhbmQtbWFyZ2luLWVuZDogI3skbmF2YmFyLWJyYW5kLW1hcmdpbi1lbmR9O1xuICAtLSN7JHByZWZpeH1uYXZiYXItYnJhbmQtZm9udC1zaXplOiAjeyRuYXZiYXItYnJhbmQtZm9udC1zaXplfTtcbiAgLS0jeyRwcmVmaXh9bmF2YmFyLWJyYW5kLWNvbG9yOiAjeyRuYXZiYXItbGlnaHQtYnJhbmQtY29sb3J9O1xuICAtLSN7JHByZWZpeH1uYXZiYXItYnJhbmQtaG92ZXItY29sb3I6ICN7JG5hdmJhci1saWdodC1icmFuZC1ob3Zlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fW5hdmJhci1uYXYtbGluay1wYWRkaW5nLXg6ICN7JG5hdmJhci1uYXYtbGluay1wYWRkaW5nLXh9O1xuICAtLSN7JHByZWZpeH1uYXZiYXItdG9nZ2xlci1wYWRkaW5nLXk6ICN7JG5hdmJhci10b2dnbGVyLXBhZGRpbmcteX07XG4gIC0tI3skcHJlZml4fW5hdmJhci10b2dnbGVyLXBhZGRpbmcteDogI3skbmF2YmFyLXRvZ2dsZXItcGFkZGluZy14fTtcbiAgLS0jeyRwcmVmaXh9bmF2YmFyLXRvZ2dsZXItZm9udC1zaXplOiAjeyRuYXZiYXItdG9nZ2xlci1mb250LXNpemV9O1xuICAtLSN7JHByZWZpeH1uYXZiYXItdG9nZ2xlci1pY29uLWJnOiAje2VzY2FwZS1zdmcoJG5hdmJhci1saWdodC10b2dnbGVyLWljb24tYmcpfTtcbiAgLS0jeyRwcmVmaXh9bmF2YmFyLXRvZ2dsZXItYm9yZGVyLWNvbG9yOiAjeyRuYXZiYXItbGlnaHQtdG9nZ2xlci1ib3JkZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1uYXZiYXItdG9nZ2xlci1ib3JkZXItcmFkaXVzOiAjeyRuYXZiYXItdG9nZ2xlci1ib3JkZXItcmFkaXVzfTtcbiAgLS0jeyRwcmVmaXh9bmF2YmFyLXRvZ2dsZXItZm9jdXMtd2lkdGg6ICN7JG5hdmJhci10b2dnbGVyLWZvY3VzLXdpZHRofTtcbiAgLS0jeyRwcmVmaXh9bmF2YmFyLXRvZ2dsZXItdHJhbnNpdGlvbjogI3skbmF2YmFyLXRvZ2dsZXItdHJhbnNpdGlvbn07XG4gIC8vIHNjc3MtZG9jcy1lbmQgbmF2YmFyLWNzcy12YXJzXG5cbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7IC8vIGFsbG93IHVzIHRvIGRvIHRoZSBsaW5lIGJyZWFrIGZvciBjb2xsYXBzaW5nIGNvbnRlbnRcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyAvLyBzcGFjZSBvdXQgYnJhbmQgZnJvbSBsb2dvXG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH1uYXZiYXItcGFkZGluZy15KSB2YXIoLS0jeyRwcmVmaXh9bmF2YmFyLXBhZGRpbmcteCk7XG4gIEBpbmNsdWRlIGdyYWRpZW50LWJnKCk7XG5cbiAgLy8gQmVjYXVzZSBmbGV4IHByb3BlcnRpZXMgYXJlbid0IGluaGVyaXRlZCwgd2UgbmVlZCB0byByZWRlY2xhcmUgdGhlc2UgZmlyc3RcbiAgLy8gZmV3IHByb3BlcnRpZXMgc28gdGhhdCBjb250ZW50IG5lc3RlZCB3aXRoaW4gYmVoYXZlIHByb3Blcmx5LlxuICAvLyBUaGUgYGZsZXgtd3JhcGAgcHJvcGVydHkgaXMgaW5oZXJpdGVkIHRvIHNpbXBsaWZ5IHRoZSBleHBhbmRlZCBuYXZiYXJzXG4gICVjb250YWluZXItZmxleC1wcm9wZXJ0aWVzIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogaW5oZXJpdDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgfVxuXG4gID4gLmNvbnRhaW5lcixcbiAgPiAuY29udGFpbmVyLWZsdWlkIHtcbiAgICBAZXh0ZW5kICVjb250YWluZXItZmxleC1wcm9wZXJ0aWVzO1xuICB9XG5cbiAgQGVhY2ggJGJyZWFrcG9pbnQsICRjb250YWluZXItbWF4LXdpZHRoIGluICRjb250YWluZXItbWF4LXdpZHRocyB7XG4gICAgPiAuY29udGFpbmVyI3ticmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkY29udGFpbmVyLW1heC13aWR0aHMpfSB7XG4gICAgICBAZXh0ZW5kICVjb250YWluZXItZmxleC1wcm9wZXJ0aWVzO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIE5hdmJhciBicmFuZFxuLy9cbi8vIFVzZWQgZm9yIGJyYW5kLCBwcm9qZWN0LCBvciBzaXRlIG5hbWVzLlxuXG4ubmF2YmFyLWJyYW5kIHtcbiAgcGFkZGluZy10b3A6IHZhcigtLSN7JHByZWZpeH1uYXZiYXItYnJhbmQtcGFkZGluZy15KTtcbiAgcGFkZGluZy1ib3R0b206IHZhcigtLSN7JHByZWZpeH1uYXZiYXItYnJhbmQtcGFkZGluZy15KTtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoLS0jeyRwcmVmaXh9bmF2YmFyLWJyYW5kLW1hcmdpbi1lbmQpO1xuICBAaW5jbHVkZSBmb250LXNpemUodmFyKC0tI3skcHJlZml4fW5hdmJhci1icmFuZC1mb250LXNpemUpKTtcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1uYXZiYXItYnJhbmQtY29sb3IpO1xuICB0ZXh0LWRlY29yYXRpb246IGlmKCRsaW5rLWRlY29yYXRpb24gPT0gbm9uZSwgbnVsbCwgbm9uZSk7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1uYXZiYXItYnJhbmQtaG92ZXItY29sb3IpO1xuICAgIHRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstaG92ZXItZGVjb3JhdGlvbiA9PSB1bmRlcmxpbmUsIG5vbmUsIG51bGwpO1xuICB9XG59XG5cblxuLy8gTmF2YmFyIG5hdlxuLy9cbi8vIEN1c3RvbSBuYXZiYXIgbmF2aWdhdGlvbiAoZG9lc24ndCByZXF1aXJlIGAubmF2YCwgYnV0IGRvZXMgbWFrZSB1c2Ugb2YgYC5uYXYtbGlua2ApLlxuXG4ubmF2YmFyLW5hdiB7XG4gIC8vIHNjc3MtZG9jcy1zdGFydCBuYXZiYXItbmF2LWNzcy12YXJzXG4gIC0tI3skcHJlZml4fW5hdi1saW5rLXBhZGRpbmcteDogMDtcbiAgLS0jeyRwcmVmaXh9bmF2LWxpbmstcGFkZGluZy15OiAjeyRuYXYtbGluay1wYWRkaW5nLXl9O1xuICBAaW5jbHVkZSByZnMoJG5hdi1saW5rLWZvbnQtc2l6ZSwgLS0jeyRwcmVmaXh9bmF2LWxpbmstZm9udC1zaXplKTtcbiAgLS0jeyRwcmVmaXh9bmF2LWxpbmstZm9udC13ZWlnaHQ6ICN7JG5hdi1saW5rLWZvbnQtd2VpZ2h0fTtcbiAgLS0jeyRwcmVmaXh9bmF2LWxpbmstY29sb3I6IHZhcigtLSN7JHByZWZpeH1uYXZiYXItY29sb3IpO1xuICAtLSN7JHByZWZpeH1uYXYtbGluay1ob3Zlci1jb2xvcjogdmFyKC0tI3skcHJlZml4fW5hdmJhci1ob3Zlci1jb2xvcik7XG4gIC0tI3skcHJlZml4fW5hdi1saW5rLWRpc2FibGVkLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bmF2YmFyLWRpc2FibGVkLWNvbG9yKTtcbiAgLy8gc2Nzcy1kb2NzLWVuZCBuYXZiYXItbmF2LWNzcy12YXJzXG5cbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgLy8gY2Fubm90IHVzZSBgaW5oZXJpdGAgdG8gZ2V0IHRoZSBgLm5hdmJhcmBzIHZhbHVlXG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcblxuICAubmF2LWxpbmsge1xuICAgICYuYWN0aXZlLFxuICAgICYuc2hvdyB7XG4gICAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fW5hdmJhci1hY3RpdmUtY29sb3IpO1xuICAgIH1cbiAgfVxuXG4gIC5kcm9wZG93bi1tZW51IHtcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICB9XG59XG5cblxuLy8gTmF2YmFyIHRleHRcbi8vXG4vL1xuXG4ubmF2YmFyLXRleHQge1xuICBwYWRkaW5nLXRvcDogJG5hdi1saW5rLXBhZGRpbmcteTtcbiAgcGFkZGluZy1ib3R0b206ICRuYXYtbGluay1wYWRkaW5nLXk7XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bmF2YmFyLWNvbG9yKTtcblxuICBhLFxuICBhOmhvdmVyLFxuICBhOmZvY3VzICB7XG4gICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1uYXZiYXItYWN0aXZlLWNvbG9yKTtcbiAgfVxufVxuXG5cbi8vIFJlc3BvbnNpdmUgbmF2YmFyXG4vL1xuLy8gQ3VzdG9tIHN0eWxlcyBmb3IgcmVzcG9uc2l2ZSBjb2xsYXBzaW5nIGFuZCB0b2dnbGluZyBvZiBuYXZiYXIgY29udGVudHMuXG4vLyBQb3dlcmVkIGJ5IHRoZSBjb2xsYXBzZSBCb290c3RyYXAgSmF2YVNjcmlwdCBwbHVnaW4uXG5cbi8vIFdoZW4gY29sbGFwc2VkLCBwcmV2ZW50IHRoZSB0b2dnbGVhYmxlIG5hdmJhciBjb250ZW50cyBmcm9tIGFwcGVhcmluZyBpblxuLy8gdGhlIGRlZmF1bHQgZmxleGJveCByb3cgb3JpZW50YXRpb24uIFJlcXVpcmVzIHRoZSB1c2Ugb2YgYGZsZXgtd3JhcDogd3JhcGBcbi8vIG9uIHRoZSBgLm5hdmJhcmAgcGFyZW50LlxuLm5hdmJhci1jb2xsYXBzZSB7XG4gIGZsZXgtYmFzaXM6IDEwMCU7XG4gIGZsZXgtZ3JvdzogMTtcbiAgLy8gRm9yIGFsd2F5cyBleHBhbmRlZCBvciBleHRyYSBmdWxsIG5hdmJhcnMsIGVuc3VyZSBjb250ZW50IGFsaWducyBpdHNlbGZcbiAgLy8gcHJvcGVybHkgdmVydGljYWxseS4gQ2FuIGJlIGVhc2lseSBvdmVycmlkZGVuIHdpdGggZmxleCB1dGlsaXRpZXMuXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5cbi8vIEJ1dHRvbiBmb3IgdG9nZ2xpbmcgdGhlIG5hdmJhciB3aGVuIGluIGl0cyBjb2xsYXBzZWQgc3RhdGVcbi5uYXZiYXItdG9nZ2xlciB7XG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH1uYXZiYXItdG9nZ2xlci1wYWRkaW5nLXkpIHZhcigtLSN7JHByZWZpeH1uYXZiYXItdG9nZ2xlci1wYWRkaW5nLXgpO1xuICBAaW5jbHVkZSBmb250LXNpemUodmFyKC0tI3skcHJlZml4fW5hdmJhci10b2dnbGVyLWZvbnQtc2l6ZSkpO1xuICBsaW5lLWhlaWdodDogMTtcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1uYXZiYXItY29sb3IpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgLy8gcmVtb3ZlIGRlZmF1bHQgYnV0dG9uIHN0eWxlXG4gIGJvcmRlcjogdmFyKC0tI3skcHJlZml4fWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tI3skcHJlZml4fW5hdmJhci10b2dnbGVyLWJvcmRlci1jb2xvcik7IC8vIHJlbW92ZSBkZWZhdWx0IGJ1dHRvbiBzdHlsZVxuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKHZhcigtLSN7JHByZWZpeH1uYXZiYXItdG9nZ2xlci1ib3JkZXItcmFkaXVzKSk7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24odmFyKC0tI3skcHJlZml4fW5hdmJhci10b2dnbGVyLXRyYW5zaXRpb24pKTtcblxuICAmOmhvdmVyIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cblxuICAmOmZvY3VzIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgb3V0bGluZTogMDtcbiAgICBib3gtc2hhZG93OiAwIDAgMCB2YXIoLS0jeyRwcmVmaXh9bmF2YmFyLXRvZ2dsZXItZm9jdXMtd2lkdGgpO1xuICB9XG59XG5cbi8vIEtlZXAgYXMgYSBzZXBhcmF0ZSBlbGVtZW50IHNvIGZvbGtzIGNhbiBlYXNpbHkgb3ZlcnJpZGUgaXQgd2l0aCBhbm90aGVyIGljb25cbi8vIG9yIGltYWdlIGZpbGUgYXMgbmVlZGVkLlxuLm5hdmJhci10b2dnbGVyLWljb24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAxLjVlbTtcbiAgaGVpZ2h0OiAxLjVlbTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgYmFja2dyb3VuZC1pbWFnZTogdmFyKC0tI3skcHJlZml4fW5hdmJhci10b2dnbGVyLWljb24tYmcpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogMTAwJTtcbn1cblxuLm5hdmJhci1uYXYtc2Nyb2xsIHtcbiAgbWF4LWhlaWdodDogdmFyKC0tI3skcHJlZml4fXNjcm9sbC1oZWlnaHQsIDc1dmgpO1xuICBvdmVyZmxvdy15OiBhdXRvO1xufVxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgbmF2YmFyLWV4cGFuZC1sb29wXG4vLyBHZW5lcmF0ZSBzZXJpZXMgb2YgYC5uYXZiYXItZXhwYW5kLSpgIHJlc3BvbnNpdmUgY2xhc3NlcyBmb3IgY29uZmlndXJpbmdcbi8vIHdoZXJlIHlvdXIgbmF2YmFyIGNvbGxhcHNlcy5cbi5uYXZiYXItZXhwYW5kIHtcbiAgQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgICAkbmV4dDogYnJlYWtwb2ludC1uZXh0KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG4gICAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRuZXh0LCAkZ3JpZC1icmVha3BvaW50cyk7XG5cbiAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2Nzcy9zZWxlY3Rvci1uby11bmlvbi1jbGFzcy1uYW1lXG4gICAgJiN7JGluZml4fSB7XG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRuZXh0KSB7XG4gICAgICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG5cbiAgICAgICAgLm5hdmJhci1uYXYge1xuICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG5cbiAgICAgICAgICAuZHJvcGRvd24tbWVudSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLm5hdi1saW5rIHtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IHZhcigtLSN7JHByZWZpeH1uYXZiYXItbmF2LWxpbmstcGFkZGluZy14KTtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogdmFyKC0tI3skcHJlZml4fW5hdmJhci1uYXYtbGluay1wYWRkaW5nLXgpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5uYXZiYXItbmF2LXNjcm9sbCB7XG4gICAgICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgICAgIH1cblxuICAgICAgICAubmF2YmFyLWNvbGxhcHNlIHtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG4gICAgICAgICAgZmxleC1iYXNpczogYXV0bztcbiAgICAgICAgfVxuXG4gICAgICAgIC5uYXZiYXItdG9nZ2xlciB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5vZmZjYW52YXMge1xuICAgICAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuICAgICAgICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgICAgICAgei1pbmRleDogYXV0bztcbiAgICAgICAgICBmbGV4LWdyb3c6IDE7XG4gICAgICAgICAgd2lkdGg6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgICAgICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlICFpbXBvcnRhbnQ7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICAgICAgICBib3JkZXI6IDAgIWltcG9ydGFudDtcbiAgICAgICAgICB0cmFuc2Zvcm06IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICBAaW5jbHVkZSBib3gtc2hhZG93KG5vbmUpO1xuICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24obm9uZSk7XG4gICAgICAgICAgLy8gc3R5bGVsaW50LWVuYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcblxuICAgICAgICAgIC5vZmZjYW52YXMtaGVhZGVyIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLm9mZmNhbnZhcy1ib2R5IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBmbGV4LWdyb3c6IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgb3ZlcmZsb3cteTogdmlzaWJsZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbi8vIHNjc3MtZG9jcy1lbmQgbmF2YmFyLWV4cGFuZC1sb29wXG5cbi8vIE5hdmJhciB0aGVtZXNcbi8vXG4vLyBTdHlsZXMgZm9yIHN3aXRjaGluZyBiZXR3ZWVuIG5hdmJhcnMgd2l0aCBsaWdodCBvciBkYXJrIGJhY2tncm91bmQuXG5cbi5uYXZiYXItbGlnaHQge1xuICBAaW5jbHVkZSBkZXByZWNhdGUoXCJgLm5hdmJhci1saWdodGBcIiwgXCJ2NS4yLjBcIiwgXCJ2Ni4wLjBcIiwgdHJ1ZSk7XG59XG5cbi5uYXZiYXItZGFyayxcbi5uYXZiYXJbZGF0YS1icy10aGVtZT1cImRhcmtcIl0ge1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgbmF2YmFyLWRhcmstY3NzLXZhcnNcbiAgLS0jeyRwcmVmaXh9bmF2YmFyLWNvbG9yOiAjeyRuYXZiYXItZGFyay1jb2xvcn07XG4gIC0tI3skcHJlZml4fW5hdmJhci1ob3Zlci1jb2xvcjogI3skbmF2YmFyLWRhcmstaG92ZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1uYXZiYXItZGlzYWJsZWQtY29sb3I6ICN7JG5hdmJhci1kYXJrLWRpc2FibGVkLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bmF2YmFyLWFjdGl2ZS1jb2xvcjogI3skbmF2YmFyLWRhcmstYWN0aXZlLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bmF2YmFyLWJyYW5kLWNvbG9yOiAjeyRuYXZiYXItZGFyay1icmFuZC1jb2xvcn07XG4gIC0tI3skcHJlZml4fW5hdmJhci1icmFuZC1ob3Zlci1jb2xvcjogI3skbmF2YmFyLWRhcmstYnJhbmQtaG92ZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1uYXZiYXItdG9nZ2xlci1ib3JkZXItY29sb3I6ICN7JG5hdmJhci1kYXJrLXRvZ2dsZXItYm9yZGVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bmF2YmFyLXRvZ2dsZXItaWNvbi1iZzogI3tlc2NhcGUtc3ZnKCRuYXZiYXItZGFyay10b2dnbGVyLWljb24tYmcpfTtcbiAgLy8gc2Nzcy1kb2NzLWVuZCBuYXZiYXItZGFyay1jc3MtdmFyc1xufVxuXG5AaWYgJGVuYWJsZS1kYXJrLW1vZGUge1xuICBAaW5jbHVkZSBjb2xvci1tb2RlKGRhcmspIHtcbiAgICAubmF2YmFyLXRvZ2dsZXItaWNvbiB7XG4gICAgICAtLSN7JHByZWZpeH1uYXZiYXItdG9nZ2xlci1pY29uLWJnOiAje2VzY2FwZS1zdmcoJG5hdmJhci1kYXJrLXRvZ2dsZXItaWNvbi1iZyl9O1xuICAgIH1cbiAgfVxufVxuIiwiLy9cbi8vIEJhc2Ugc3R5bGVzXG4vL1xuXG4uY2FyZCB7XG4gIC8vIHNjc3MtZG9jcy1zdGFydCBjYXJkLWNzcy12YXJzXG4gIC0tI3skcHJlZml4fWNhcmQtc3BhY2VyLXk6ICN7JGNhcmQtc3BhY2VyLXl9O1xuICAtLSN7JHByZWZpeH1jYXJkLXNwYWNlci14OiAjeyRjYXJkLXNwYWNlci14fTtcbiAgLS0jeyRwcmVmaXh9Y2FyZC10aXRsZS1zcGFjZXIteTogI3skY2FyZC10aXRsZS1zcGFjZXIteX07XG4gIC0tI3skcHJlZml4fWNhcmQtdGl0bGUtY29sb3I6ICN7JGNhcmQtdGl0bGUtY29sb3J9O1xuICAtLSN7JHByZWZpeH1jYXJkLXN1YnRpdGxlLWNvbG9yOiAjeyRjYXJkLXN1YnRpdGxlLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9Y2FyZC1ib3JkZXItd2lkdGg6ICN7JGNhcmQtYm9yZGVyLXdpZHRofTtcbiAgLS0jeyRwcmVmaXh9Y2FyZC1ib3JkZXItY29sb3I6ICN7JGNhcmQtYm9yZGVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9Y2FyZC1ib3JkZXItcmFkaXVzOiAjeyRjYXJkLWJvcmRlci1yYWRpdXN9O1xuICAtLSN7JHByZWZpeH1jYXJkLWJveC1zaGFkb3c6ICN7JGNhcmQtYm94LXNoYWRvd307XG4gIC0tI3skcHJlZml4fWNhcmQtaW5uZXItYm9yZGVyLXJhZGl1czogI3skY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzfTtcbiAgLS0jeyRwcmVmaXh9Y2FyZC1jYXAtcGFkZGluZy15OiAjeyRjYXJkLWNhcC1wYWRkaW5nLXl9O1xuICAtLSN7JHByZWZpeH1jYXJkLWNhcC1wYWRkaW5nLXg6ICN7JGNhcmQtY2FwLXBhZGRpbmcteH07XG4gIC0tI3skcHJlZml4fWNhcmQtY2FwLWJnOiAjeyRjYXJkLWNhcC1iZ307XG4gIC0tI3skcHJlZml4fWNhcmQtY2FwLWNvbG9yOiAjeyRjYXJkLWNhcC1jb2xvcn07XG4gIC0tI3skcHJlZml4fWNhcmQtaGVpZ2h0OiAjeyRjYXJkLWhlaWdodH07XG4gIC0tI3skcHJlZml4fWNhcmQtY29sb3I6ICN7JGNhcmQtY29sb3J9O1xuICAtLSN7JHByZWZpeH1jYXJkLWJnOiAjeyRjYXJkLWJnfTtcbiAgLS0jeyRwcmVmaXh9Y2FyZC1pbWctb3ZlcmxheS1wYWRkaW5nOiAjeyRjYXJkLWltZy1vdmVybGF5LXBhZGRpbmd9O1xuICAtLSN7JHByZWZpeH1jYXJkLWdyb3VwLW1hcmdpbjogI3skY2FyZC1ncm91cC1tYXJnaW59O1xuICAvLyBzY3NzLWRvY3MtZW5kIGNhcmQtY3NzLXZhcnNcblxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIG1pbi13aWR0aDogMDsgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzIyNzQwI2lzc3VlY29tbWVudC0zMDU4NjgxMDZcbiAgaGVpZ2h0OiB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1oZWlnaHQpO1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWJvZHktY29sb3IpO1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1jYXJkLWJnKTtcbiAgYmFja2dyb3VuZC1jbGlwOiBib3JkZXItYm94O1xuICBib3JkZXI6IHZhcigtLSN7JHByZWZpeH1jYXJkLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tI3skcHJlZml4fWNhcmQtYm9yZGVyLWNvbG9yKTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9Y2FyZC1ib3JkZXItcmFkaXVzKSk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3codmFyKC0tI3skcHJlZml4fWNhcmQtYm94LXNoYWRvdykpO1xuXG4gID4gaHIge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxuXG4gID4gLmxpc3QtZ3JvdXAge1xuICAgIGJvcmRlci10b3A6IGluaGVyaXQ7XG4gICAgYm9yZGVyLWJvdHRvbTogaW5oZXJpdDtcblxuICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgYm9yZGVyLXRvcC13aWR0aDogMDtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKHZhcigtLSN7JHByZWZpeH1jYXJkLWlubmVyLWJvcmRlci1yYWRpdXMpKTtcbiAgICB9XG5cbiAgICAmOmxhc3QtY2hpbGQgIHtcbiAgICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gICAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9Y2FyZC1pbm5lci1ib3JkZXItcmFkaXVzKSk7XG4gICAgfVxuICB9XG5cbiAgLy8gRHVlIHRvIHNwZWNpZmljaXR5IG9mIHRoZSBhYm92ZSBzZWxlY3RvciAoYC5jYXJkID4gLmxpc3QtZ3JvdXBgKSwgd2UgbXVzdFxuICAvLyB1c2UgYSBjaGlsZCBzZWxlY3RvciBoZXJlIHRvIHByZXZlbnQgZG91YmxlIGJvcmRlcnMuXG4gID4gLmNhcmQtaGVhZGVyICsgLmxpc3QtZ3JvdXAsXG4gID4gLmxpc3QtZ3JvdXAgKyAuY2FyZC1mb290ZXIge1xuICAgIGJvcmRlci10b3A6IDA7XG4gIH1cbn1cblxuLmNhcmQtYm9keSB7XG4gIC8vIEVuYWJsZSBgZmxleC1ncm93OiAxYCBmb3IgZGVja3MgYW5kIGdyb3VwcyBzbyB0aGF0IGNhcmQgYmxvY2tzIHRha2UgdXBcbiAgLy8gYXMgbXVjaCBzcGFjZSBhcyBwb3NzaWJsZSwgZW5zdXJpbmcgZm9vdGVycyBhcmUgYWxpZ25lZCB0byB0aGUgYm90dG9tLlxuICBmbGV4OiAxIDEgYXV0bztcbiAgcGFkZGluZzogdmFyKC0tI3skcHJlZml4fWNhcmQtc3BhY2VyLXkpIHZhcigtLSN7JHByZWZpeH1jYXJkLXNwYWNlci14KTtcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1jYXJkLWNvbG9yKTtcbn1cblxuLmNhcmQtdGl0bGUge1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS0jeyRwcmVmaXh9Y2FyZC10aXRsZS1zcGFjZXIteSk7XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9Y2FyZC10aXRsZS1jb2xvcik7XG59XG5cbi5jYXJkLXN1YnRpdGxlIHtcbiAgbWFyZ2luLXRvcDogY2FsYygtLjUgKiB2YXIoLS0jeyRwcmVmaXh9Y2FyZC10aXRsZS1zcGFjZXIteSkpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICBtYXJnaW4tYm90dG9tOiAwO1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWNhcmQtc3VidGl0bGUtY29sb3IpO1xufVxuXG4uY2FyZC10ZXh0Omxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uY2FyZC1saW5rIHtcbiAgJjpob3ZlciB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBpZigkbGluay1ob3Zlci1kZWNvcmF0aW9uID09IHVuZGVybGluZSwgbm9uZSwgbnVsbCk7XG4gIH1cblxuICArIC5jYXJkLWxpbmsge1xuICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1zcGFjZXIteCk7XG4gIH1cbn1cblxuLy9cbi8vIE9wdGlvbmFsIHRleHR1YWwgY2Fwc1xuLy9cblxuLmNhcmQtaGVhZGVyIHtcbiAgcGFkZGluZzogdmFyKC0tI3skcHJlZml4fWNhcmQtY2FwLXBhZGRpbmcteSkgdmFyKC0tI3skcHJlZml4fWNhcmQtY2FwLXBhZGRpbmcteCk7XG4gIG1hcmdpbi1ib3R0b206IDA7IC8vIFJlbW92ZXMgdGhlIGRlZmF1bHQgbWFyZ2luLWJvdHRvbSBvZiA8aE4+XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1jYXAtY29sb3IpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1jYXAtYmcpO1xuICBib3JkZXItYm90dG9tOiB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLSN7JHByZWZpeH1jYXJkLWJvcmRlci1jb2xvcik7XG5cbiAgJjpmaXJzdC1jaGlsZCB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9Y2FyZC1pbm5lci1ib3JkZXItcmFkaXVzKSB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1pbm5lci1ib3JkZXItcmFkaXVzKSAwIDApO1xuICB9XG59XG5cbi5jYXJkLWZvb3RlciB7XG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH1jYXJkLWNhcC1wYWRkaW5nLXkpIHZhcigtLSN7JHByZWZpeH1jYXJkLWNhcC1wYWRkaW5nLXgpO1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWNhcmQtY2FwLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fWNhcmQtY2FwLWJnKTtcbiAgYm9yZGVyLXRvcDogdmFyKC0tI3skcHJlZml4fWNhcmQtYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1ib3JkZXItY29sb3IpO1xuXG4gICY6bGFzdC1jaGlsZCB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwIDAgdmFyKC0tI3skcHJlZml4fWNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cykgdmFyKC0tI3skcHJlZml4fWNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cykpO1xuICB9XG59XG5cblxuLy9cbi8vIEhlYWRlciBuYXZzXG4vL1xuXG4uY2FyZC1oZWFkZXItdGFicyB7XG4gIG1hcmdpbi1yaWdodDogY2FsYygtLjUgKiB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1jYXAtcGFkZGluZy14KSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gIG1hcmdpbi1ib3R0b206IGNhbGMoLTEgKiB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1jYXAtcGFkZGluZy15KSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKC0uNSAqIHZhcigtLSN7JHByZWZpeH1jYXJkLWNhcC1wYWRkaW5nLXgpKTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgYm9yZGVyLWJvdHRvbTogMDtcblxuICAubmF2LWxpbmsuYWN0aXZlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1iZyk7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdmFyKC0tI3skcHJlZml4fWNhcmQtYmcpO1xuICB9XG59XG5cbi5jYXJkLWhlYWRlci1waWxscyB7XG4gIG1hcmdpbi1yaWdodDogY2FsYygtLjUgKiB2YXIoLS0jeyRwcmVmaXh9Y2FyZC1jYXAtcGFkZGluZy14KSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKC0uNSAqIHZhcigtLSN7JHByZWZpeH1jYXJkLWNhcC1wYWRkaW5nLXgpKTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3Rcbn1cblxuLy8gQ2FyZCBpbWFnZVxuLmNhcmQtaW1nLW92ZXJsYXkge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgcGFkZGluZzogdmFyKC0tI3skcHJlZml4fWNhcmQtaW1nLW92ZXJsYXktcGFkZGluZyk7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXModmFyKC0tI3skcHJlZml4fWNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cykpO1xufVxuXG4uY2FyZC1pbWcsXG4uY2FyZC1pbWctdG9wLFxuLmNhcmQtaW1nLWJvdHRvbSB7XG4gIHdpZHRoOiAxMDAlOyAvLyBSZXF1aXJlZCBiZWNhdXNlIHdlIHVzZSBmbGV4Ym94IGFuZCB0aGlzIGluaGVyZW50bHkgYXBwbGllcyBhbGlnbi1zZWxmOiBzdHJldGNoXG59XG5cbi5jYXJkLWltZyxcbi5jYXJkLWltZy10b3Age1xuICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9Y2FyZC1pbm5lci1ib3JkZXItcmFkaXVzKSk7XG59XG5cbi5jYXJkLWltZyxcbi5jYXJkLWltZy1ib3R0b20ge1xuICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9Y2FyZC1pbm5lci1ib3JkZXItcmFkaXVzKSk7XG59XG5cblxuLy9cbi8vIENhcmQgZ3JvdXBzXG4vL1xuXG4uY2FyZC1ncm91cCB7XG4gIC8vIFRoZSBjaGlsZCBzZWxlY3RvciBhbGxvd3MgbmVzdGVkIGAuY2FyZGAgd2l0aGluIGAuY2FyZC1ncm91cGBcbiAgLy8gdG8gZGlzcGxheSBwcm9wZXJseS5cbiAgPiAuY2FyZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tI3skcHJlZml4fWNhcmQtZ3JvdXAtbWFyZ2luKTtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gICAgLy8gVGhlIGNoaWxkIHNlbGVjdG9yIGFsbG93cyBuZXN0ZWQgYC5jYXJkYCB3aXRoaW4gYC5jYXJkLWdyb3VwYFxuICAgIC8vIHRvIGRpc3BsYXkgcHJvcGVybHkuXG4gICAgPiAuY2FyZCB7XG4gICAgICAvLyBGbGV4YnVncyAjNDogaHR0cHM6Ly9naXRodWIuY29tL3BoaWxpcHdhbHRvbi9mbGV4YnVncyNmbGV4YnVnLTRcbiAgICAgIGZsZXg6IDEgMCAwJTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICAgICsgLmNhcmQge1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDA7XG4gICAgICB9XG5cbiAgICAgIC8vIEhhbmRsZSByb3VuZGVkIGNvcm5lcnNcbiAgICAgIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgICAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1lbmQtcmFkaXVzKDApO1xuXG4gICAgICAgICAgLmNhcmQtaW1nLXRvcCxcbiAgICAgICAgICAuY2FyZC1oZWFkZXIge1xuICAgICAgICAgICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByb3BlcnR5LWRpc2FsbG93ZWQtbGlzdFxuICAgICAgICAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XG4gICAgICAgICAgfVxuICAgICAgICAgIC5jYXJkLWltZy1ib3R0b20sXG4gICAgICAgICAgLmNhcmQtZm9vdGVyIHtcbiAgICAgICAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3RcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICY6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1zdGFydC1yYWRpdXMoMCk7XG5cbiAgICAgICAgICAuY2FyZC1pbWctdG9wLFxuICAgICAgICAgIC5jYXJkLWhlYWRlciB7XG4gICAgICAgICAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG4gICAgICAgICAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgICAuY2FyZC1pbWctYm90dG9tLFxuICAgICAgICAgIC5jYXJkLWZvb3RlciB7XG4gICAgICAgICAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG4gICAgICAgICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy9cbi8vIEJhc2Ugc3R5bGVzXG4vL1xuXG4uYWNjb3JkaW9uIHtcbiAgLy8gc2Nzcy1kb2NzLXN0YXJ0IGFjY29yZGlvbi1jc3MtdmFyc1xuICAtLSN7JHByZWZpeH1hY2NvcmRpb24tY29sb3I6ICN7JGFjY29yZGlvbi1jb2xvcn07XG4gIC0tI3skcHJlZml4fWFjY29yZGlvbi1iZzogI3skYWNjb3JkaW9uLWJnfTtcbiAgLS0jeyRwcmVmaXh9YWNjb3JkaW9uLXRyYW5zaXRpb246ICN7JGFjY29yZGlvbi10cmFuc2l0aW9ufTtcbiAgLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJvcmRlci1jb2xvcjogI3skYWNjb3JkaW9uLWJvcmRlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fWFjY29yZGlvbi1ib3JkZXItd2lkdGg6ICN7JGFjY29yZGlvbi1ib3JkZXItd2lkdGh9O1xuICAtLSN7JHByZWZpeH1hY2NvcmRpb24tYm9yZGVyLXJhZGl1czogI3skYWNjb3JkaW9uLWJvcmRlci1yYWRpdXN9O1xuICAtLSN7JHByZWZpeH1hY2NvcmRpb24taW5uZXItYm9yZGVyLXJhZGl1czogI3skYWNjb3JkaW9uLWlubmVyLWJvcmRlci1yYWRpdXN9O1xuICAtLSN7JHByZWZpeH1hY2NvcmRpb24tYnRuLXBhZGRpbmcteDogI3skYWNjb3JkaW9uLWJ1dHRvbi1wYWRkaW5nLXh9O1xuICAtLSN7JHByZWZpeH1hY2NvcmRpb24tYnRuLXBhZGRpbmcteTogI3skYWNjb3JkaW9uLWJ1dHRvbi1wYWRkaW5nLXl9O1xuICAtLSN7JHByZWZpeH1hY2NvcmRpb24tYnRuLWNvbG9yOiAjeyRhY2NvcmRpb24tYnV0dG9uLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJ0bi1iZzogI3skYWNjb3JkaW9uLWJ1dHRvbi1iZ307XG4gIC0tI3skcHJlZml4fWFjY29yZGlvbi1idG4taWNvbjogI3tlc2NhcGUtc3ZnKCRhY2NvcmRpb24tYnV0dG9uLWljb24pfTtcbiAgLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJ0bi1pY29uLXdpZHRoOiAjeyRhY2NvcmRpb24taWNvbi13aWR0aH07XG4gIC0tI3skcHJlZml4fWFjY29yZGlvbi1idG4taWNvbi10cmFuc2Zvcm06ICN7JGFjY29yZGlvbi1pY29uLXRyYW5zZm9ybX07XG4gIC0tI3skcHJlZml4fWFjY29yZGlvbi1idG4taWNvbi10cmFuc2l0aW9uOiAjeyRhY2NvcmRpb24taWNvbi10cmFuc2l0aW9ufTtcbiAgLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJ0bi1hY3RpdmUtaWNvbjogI3tlc2NhcGUtc3ZnKCRhY2NvcmRpb24tYnV0dG9uLWFjdGl2ZS1pY29uKX07XG4gIC0tI3skcHJlZml4fWFjY29yZGlvbi1idG4tZm9jdXMtYm9yZGVyLWNvbG9yOiAjeyRhY2NvcmRpb24tYnV0dG9uLWZvY3VzLWJvcmRlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fWFjY29yZGlvbi1idG4tZm9jdXMtYm94LXNoYWRvdzogI3skYWNjb3JkaW9uLWJ1dHRvbi1mb2N1cy1ib3gtc2hhZG93fTtcbiAgLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJvZHktcGFkZGluZy14OiAjeyRhY2NvcmRpb24tYm9keS1wYWRkaW5nLXh9O1xuICAtLSN7JHByZWZpeH1hY2NvcmRpb24tYm9keS1wYWRkaW5nLXk6ICN7JGFjY29yZGlvbi1ib2R5LXBhZGRpbmcteX07XG4gIC0tI3skcHJlZml4fWFjY29yZGlvbi1hY3RpdmUtY29sb3I6ICN7JGFjY29yZGlvbi1idXR0b24tYWN0aXZlLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWFjdGl2ZS1iZzogI3skYWNjb3JkaW9uLWJ1dHRvbi1hY3RpdmUtYmd9O1xuICAvLyBzY3NzLWRvY3MtZW5kIGFjY29yZGlvbi1jc3MtdmFyc1xufVxuXG4uYWNjb3JkaW9uLWJ1dHRvbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24tYnRuLXBhZGRpbmcteSkgdmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1idG4tcGFkZGluZy14KTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRmb250LXNpemUtYmFzZSk7XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJ0bi1jb2xvcik7XG4gIHRleHQtYWxpZ246IGxlZnQ7IC8vIFJlc2V0IGJ1dHRvbiBzdHlsZVxuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJ0bi1iZyk7XG4gIGJvcmRlcjogMDtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwKTtcbiAgb3ZlcmZsb3ctYW5jaG9yOiBub25lO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24tdHJhbnNpdGlvbikpO1xuXG4gICY6bm90KC5jb2xsYXBzZWQpIHtcbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1hY3RpdmUtY29sb3IpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24tYWN0aXZlLWJnKTtcbiAgICBib3gtc2hhZG93OiBpbnNldCAwIGNhbGMoLTEgKiB2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJvcmRlci13aWR0aCkpIDAgdmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1ib3JkZXItY29sb3IpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1idG4tYWN0aXZlLWljb24pO1xuICAgICAgdHJhbnNmb3JtOiB2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJ0bi1pY29uLXRyYW5zZm9ybSk7XG4gICAgfVxuICB9XG5cbiAgLy8gQWNjb3JkaW9uIGljb25cbiAgJjo6YWZ0ZXIge1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIHdpZHRoOiB2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJ0bi1pY29uLXdpZHRoKTtcbiAgICBoZWlnaHQ6IHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24tYnRuLWljb24td2lkdGgpO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1idG4taWNvbik7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24tYnRuLWljb24td2lkdGgpO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24odmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1idG4taWNvbi10cmFuc2l0aW9uKSk7XG4gIH1cblxuICAmOmhvdmVyIHtcbiAgICB6LWluZGV4OiAyO1xuICB9XG5cbiAgJjpmb2N1cyB7XG4gICAgei1pbmRleDogMztcbiAgICBib3JkZXItY29sb3I6IHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24tYnRuLWZvY3VzLWJvcmRlci1jb2xvcik7XG4gICAgb3V0bGluZTogMDtcbiAgICBib3gtc2hhZG93OiB2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJ0bi1mb2N1cy1ib3gtc2hhZG93KTtcbiAgfVxufVxuXG4uYWNjb3JkaW9uLWhlYWRlciB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5hY2NvcmRpb24taXRlbSB7XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1iZyk7XG4gIGJvcmRlcjogdmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24tYm9yZGVyLWNvbG9yKTtcblxuICAmOmZpcnN0LW9mLXR5cGUge1xuICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24tYm9yZGVyLXJhZGl1cykpO1xuXG4gICAgLmFjY29yZGlvbi1idXR0b24ge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXModmFyKC0tI3skcHJlZml4fWFjY29yZGlvbi1pbm5lci1ib3JkZXItcmFkaXVzKSk7XG4gICAgfVxuICB9XG5cbiAgJjpub3QoOmZpcnN0LW9mLXR5cGUpIHtcbiAgICBib3JkZXItdG9wOiAwO1xuICB9XG5cbiAgLy8gT25seSBzZXQgYSBib3JkZXItcmFkaXVzIG9uIHRoZSBsYXN0IGl0ZW0gaWYgdGhlIGFjY29yZGlvbiBpcyBjb2xsYXBzZWRcbiAgJjpsYXN0LW9mLXR5cGUge1xuICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24tYm9yZGVyLXJhZGl1cykpO1xuXG4gICAgLmFjY29yZGlvbi1idXR0b24ge1xuICAgICAgJi5jb2xsYXBzZWQge1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWlubmVyLWJvcmRlci1yYWRpdXMpKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuYWNjb3JkaW9uLWNvbGxhcHNlIHtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKHZhcigtLSN7JHByZWZpeH1hY2NvcmRpb24tYm9yZGVyLXJhZGl1cykpO1xuICAgIH1cbiAgfVxufVxuXG4uYWNjb3JkaW9uLWJvZHkge1xuICBwYWRkaW5nOiB2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJvZHktcGFkZGluZy15KSB2YXIoLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJvZHktcGFkZGluZy14KTtcbn1cblxuXG4vLyBGbHVzaCBhY2NvcmRpb24gaXRlbXNcbi8vXG4vLyBSZW1vdmUgYm9yZGVycyBhbmQgYm9yZGVyLXJhZGl1cyB0byBrZWVwIGFjY29yZGlvbiBpdGVtcyBlZGdlLXRvLWVkZ2UuXG5cbi5hY2NvcmRpb24tZmx1c2gge1xuICAuYWNjb3JkaW9uLWNvbGxhcHNlIHtcbiAgICBib3JkZXItd2lkdGg6IDA7XG4gIH1cblxuICAuYWNjb3JkaW9uLWl0ZW0ge1xuICAgIGJvcmRlci1yaWdodDogMDtcbiAgICBib3JkZXItbGVmdDogMDtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDApO1xuXG4gICAgJjpmaXJzdC1jaGlsZCB7IGJvcmRlci10b3A6IDA7IH1cbiAgICAmOmxhc3QtY2hpbGQgeyBib3JkZXItYm90dG9tOiAwOyB9XG5cbiAgICAuYWNjb3JkaW9uLWJ1dHRvbiB7XG4gICAgICAmLFxuICAgICAgJi5jb2xsYXBzZWQge1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDApO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AaWYgJGVuYWJsZS1kYXJrLW1vZGUge1xuICBAaW5jbHVkZSBjb2xvci1tb2RlKGRhcmspIHtcbiAgICAuYWNjb3JkaW9uLWJ1dHRvbjo6YWZ0ZXIge1xuICAgICAgLS0jeyRwcmVmaXh9YWNjb3JkaW9uLWJ0bi1pY29uOiAje2VzY2FwZS1zdmcoJGFjY29yZGlvbi1idXR0b24taWNvbi1kYXJrKX07XG4gICAgICAtLSN7JHByZWZpeH1hY2NvcmRpb24tYnRuLWFjdGl2ZS1pY29uOiAje2VzY2FwZS1zdmcoJGFjY29yZGlvbi1idXR0b24tYWN0aXZlLWljb24tZGFyayl9O1xuICAgIH1cbiAgfVxufVxuIiwiLmJyZWFkY3J1bWIge1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgYnJlYWRjcnVtYi1jc3MtdmFyc1xuICAtLSN7JHByZWZpeH1icmVhZGNydW1iLXBhZGRpbmcteDogI3skYnJlYWRjcnVtYi1wYWRkaW5nLXh9O1xuICAtLSN7JHByZWZpeH1icmVhZGNydW1iLXBhZGRpbmcteTogI3skYnJlYWRjcnVtYi1wYWRkaW5nLXl9O1xuICAtLSN7JHByZWZpeH1icmVhZGNydW1iLW1hcmdpbi1ib3R0b206ICN7JGJyZWFkY3J1bWItbWFyZ2luLWJvdHRvbX07XG4gIEBpbmNsdWRlIHJmcygkYnJlYWRjcnVtYi1mb250LXNpemUsIC0tI3skcHJlZml4fWJyZWFkY3J1bWItZm9udC1zaXplKTtcbiAgLS0jeyRwcmVmaXh9YnJlYWRjcnVtYi1iZzogI3skYnJlYWRjcnVtYi1iZ307XG4gIC0tI3skcHJlZml4fWJyZWFkY3J1bWItYm9yZGVyLXJhZGl1czogI3skYnJlYWRjcnVtYi1ib3JkZXItcmFkaXVzfTtcbiAgLS0jeyRwcmVmaXh9YnJlYWRjcnVtYi1kaXZpZGVyLWNvbG9yOiAjeyRicmVhZGNydW1iLWRpdmlkZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1icmVhZGNydW1iLWl0ZW0tcGFkZGluZy14OiAjeyRicmVhZGNydW1iLWl0ZW0tcGFkZGluZy14fTtcbiAgLS0jeyRwcmVmaXh9YnJlYWRjcnVtYi1pdGVtLWFjdGl2ZS1jb2xvcjogI3skYnJlYWRjcnVtYi1hY3RpdmUtY29sb3J9O1xuICAvLyBzY3NzLWRvY3MtZW5kIGJyZWFkY3J1bWItY3NzLXZhcnNcblxuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH1icmVhZGNydW1iLXBhZGRpbmcteSkgdmFyKC0tI3skcHJlZml4fWJyZWFkY3J1bWItcGFkZGluZy14KTtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tI3skcHJlZml4fWJyZWFkY3J1bWItbWFyZ2luLWJvdHRvbSk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSh2YXIoLS0jeyRwcmVmaXh9YnJlYWRjcnVtYi1mb250LXNpemUpKTtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fWJyZWFkY3J1bWItYmcpO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKHZhcigtLSN7JHByZWZpeH1icmVhZGNydW1iLWJvcmRlci1yYWRpdXMpKTtcbn1cblxuLmJyZWFkY3J1bWItaXRlbSB7XG4gIC8vIFRoZSBzZXBhcmF0b3IgYmV0d2VlbiBicmVhZGNydW1icyAoYnkgZGVmYXVsdCwgYSBmb3J3YXJkLXNsYXNoOiBcIi9cIilcbiAgKyAuYnJlYWRjcnVtYi1pdGVtIHtcbiAgICBwYWRkaW5nLWxlZnQ6IHZhcigtLSN7JHByZWZpeH1icmVhZGNydW1iLWl0ZW0tcGFkZGluZy14KTtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBmbG9hdDogbGVmdDsgLy8gU3VwcHJlc3MgaW5saW5lIHNwYWNpbmdzIGFuZCB1bmRlcmxpbmluZyBvZiB0aGUgc2VwYXJhdG9yXG4gICAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS0jeyRwcmVmaXh9YnJlYWRjcnVtYi1pdGVtLXBhZGRpbmcteCk7XG4gICAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWJyZWFkY3J1bWItZGl2aWRlci1jb2xvcik7XG4gICAgICBjb250ZW50OiB2YXIoLS0jeyRwcmVmaXh9YnJlYWRjcnVtYi1kaXZpZGVyLCBlc2NhcGUtc3ZnKCRicmVhZGNydW1iLWRpdmlkZXIpKSAje1wiLyogcnRsOlwifSB2YXIoLS0jeyRwcmVmaXh9YnJlYWRjcnVtYi1kaXZpZGVyLCBlc2NhcGUtc3ZnKCRicmVhZGNydW1iLWRpdmlkZXItZmxpcHBlZCkpICN7XCIqL1wifTtcbiAgICB9XG4gIH1cblxuICAmLmFjdGl2ZSB7XG4gICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1icmVhZGNydW1iLWl0ZW0tYWN0aXZlLWNvbG9yKTtcbiAgfVxufVxuIiwiLnBhZ2luYXRpb24ge1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgcGFnaW5hdGlvbi1jc3MtdmFyc1xuICAtLSN7JHByZWZpeH1wYWdpbmF0aW9uLXBhZGRpbmcteDogI3skcGFnaW5hdGlvbi1wYWRkaW5nLXh9O1xuICAtLSN7JHByZWZpeH1wYWdpbmF0aW9uLXBhZGRpbmcteTogI3skcGFnaW5hdGlvbi1wYWRkaW5nLXl9O1xuICBAaW5jbHVkZSByZnMoJHBhZ2luYXRpb24tZm9udC1zaXplLCAtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWZvbnQtc2l6ZSk7XG4gIC0tI3skcHJlZml4fXBhZ2luYXRpb24tY29sb3I6ICN7JHBhZ2luYXRpb24tY29sb3J9O1xuICAtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWJnOiAjeyRwYWdpbmF0aW9uLWJnfTtcbiAgLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1ib3JkZXItd2lkdGg6ICN7JHBhZ2luYXRpb24tYm9yZGVyLXdpZHRofTtcbiAgLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1ib3JkZXItY29sb3I6ICN7JHBhZ2luYXRpb24tYm9yZGVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1ib3JkZXItcmFkaXVzOiAjeyRwYWdpbmF0aW9uLWJvcmRlci1yYWRpdXN9O1xuICAtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWhvdmVyLWNvbG9yOiAjeyRwYWdpbmF0aW9uLWhvdmVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1ob3Zlci1iZzogI3skcGFnaW5hdGlvbi1ob3Zlci1iZ307XG4gIC0tI3skcHJlZml4fXBhZ2luYXRpb24taG92ZXItYm9yZGVyLWNvbG9yOiAjeyRwYWdpbmF0aW9uLWhvdmVyLWJvcmRlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fXBhZ2luYXRpb24tZm9jdXMtY29sb3I6ICN7JHBhZ2luYXRpb24tZm9jdXMtY29sb3J9O1xuICAtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWZvY3VzLWJnOiAjeyRwYWdpbmF0aW9uLWZvY3VzLWJnfTtcbiAgLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1mb2N1cy1ib3gtc2hhZG93OiAjeyRwYWdpbmF0aW9uLWZvY3VzLWJveC1zaGFkb3d9O1xuICAtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWFjdGl2ZS1jb2xvcjogI3skcGFnaW5hdGlvbi1hY3RpdmUtY29sb3J9O1xuICAtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWFjdGl2ZS1iZzogI3skcGFnaW5hdGlvbi1hY3RpdmUtYmd9O1xuICAtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWFjdGl2ZS1ib3JkZXItY29sb3I6ICN7JHBhZ2luYXRpb24tYWN0aXZlLWJvcmRlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fXBhZ2luYXRpb24tZGlzYWJsZWQtY29sb3I6ICN7JHBhZ2luYXRpb24tZGlzYWJsZWQtY29sb3J9O1xuICAtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWRpc2FibGVkLWJnOiAjeyRwYWdpbmF0aW9uLWRpc2FibGVkLWJnfTtcbiAgLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1kaXNhYmxlZC1ib3JkZXItY29sb3I6ICN7JHBhZ2luYXRpb24tZGlzYWJsZWQtYm9yZGVyLWNvbG9yfTtcbiAgLy8gc2Nzcy1kb2NzLWVuZCBwYWdpbmF0aW9uLWNzcy12YXJzXG5cbiAgZGlzcGxheTogZmxleDtcbiAgQGluY2x1ZGUgbGlzdC11bnN0eWxlZCgpO1xufVxuXG4ucGFnZS1saW5rIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogdmFyKC0tI3skcHJlZml4fXBhZ2luYXRpb24tcGFkZGluZy15KSB2YXIoLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1wYWRkaW5nLXgpO1xuICBAaW5jbHVkZSBmb250LXNpemUodmFyKC0tI3skcHJlZml4fXBhZ2luYXRpb24tZm9udC1zaXplKSk7XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1jb2xvcik7XG4gIHRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstZGVjb3JhdGlvbiA9PSBub25lLCBudWxsLCBub25lKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fXBhZ2luYXRpb24tYmcpO1xuICBib3JkZXI6IHZhcigtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tI3skcHJlZml4fXBhZ2luYXRpb24tYm9yZGVyLWNvbG9yKTtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkcGFnaW5hdGlvbi10cmFuc2l0aW9uKTtcblxuICAmOmhvdmVyIHtcbiAgICB6LWluZGV4OiAyO1xuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1ob3Zlci1jb2xvcik7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBpZigkbGluay1ob3Zlci1kZWNvcmF0aW9uID09IHVuZGVybGluZSwgbm9uZSwgbnVsbCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fXBhZ2luYXRpb24taG92ZXItYmcpO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tI3skcHJlZml4fXBhZ2luYXRpb24taG92ZXItYm9yZGVyLWNvbG9yKTtcbiAgfVxuXG4gICY6Zm9jdXMge1xuICAgIHotaW5kZXg6IDM7XG4gICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWZvY3VzLWNvbG9yKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1mb2N1cy1iZyk7XG4gICAgb3V0bGluZTogJHBhZ2luYXRpb24tZm9jdXMtb3V0bGluZTtcbiAgICBib3gtc2hhZG93OiB2YXIoLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1mb2N1cy1ib3gtc2hhZG93KTtcbiAgfVxuXG4gICYuYWN0aXZlLFxuICAuYWN0aXZlID4gJiB7XG4gICAgei1pbmRleDogMztcbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fXBhZ2luYXRpb24tYWN0aXZlLWNvbG9yKTtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZyh2YXIoLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1hY3RpdmUtYmcpKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWFjdGl2ZS1ib3JkZXItY29sb3IpO1xuICB9XG5cbiAgJi5kaXNhYmxlZCxcbiAgLmRpc2FibGVkID4gJiB7XG4gICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWRpc2FibGVkLWNvbG9yKTtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1kaXNhYmxlZC1iZyk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1kaXNhYmxlZC1ib3JkZXItY29sb3IpO1xuICB9XG59XG5cbi5wYWdlLWl0ZW0ge1xuICAmOm5vdCg6Zmlyc3QtY2hpbGQpIC5wYWdlLWxpbmsge1xuICAgIG1hcmdpbi1sZWZ0OiAkcGFnaW5hdGlvbi1tYXJnaW4tc3RhcnQ7XG4gIH1cblxuICBAaWYgJHBhZ2luYXRpb24tbWFyZ2luLXN0YXJ0ID09IGNhbGMoI3skcGFnaW5hdGlvbi1ib3JkZXItd2lkdGh9ICogLTEpIHtcbiAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgIC5wYWdlLWxpbmsge1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItc3RhcnQtcmFkaXVzKHZhcigtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWJvcmRlci1yYWRpdXMpKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgLnBhZ2UtbGluayB7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1lbmQtcmFkaXVzKHZhcigtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWJvcmRlci1yYWRpdXMpKTtcbiAgICAgIH1cbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgIC8vIEFkZCBib3JkZXItcmFkaXVzIHRvIGFsbCBwYWdlTGlua3MgaW4gY2FzZSB0aGV5IGhhdmUgbGVmdCBtYXJnaW5cbiAgICAucGFnZS1saW5rIHtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXModmFyKC0tI3skcHJlZml4fXBhZ2luYXRpb24tYm9yZGVyLXJhZGl1cykpO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vXG4vLyBTaXppbmdcbi8vXG5cbi5wYWdpbmF0aW9uLWxnIHtcbiAgQGluY2x1ZGUgcGFnaW5hdGlvbi1zaXplKCRwYWdpbmF0aW9uLXBhZGRpbmcteS1sZywgJHBhZ2luYXRpb24tcGFkZGluZy14LWxnLCAkZm9udC1zaXplLWxnLCAkcGFnaW5hdGlvbi1ib3JkZXItcmFkaXVzLWxnKTtcbn1cblxuLnBhZ2luYXRpb24tc20ge1xuICBAaW5jbHVkZSBwYWdpbmF0aW9uLXNpemUoJHBhZ2luYXRpb24tcGFkZGluZy15LXNtLCAkcGFnaW5hdGlvbi1wYWRkaW5nLXgtc20sICRmb250LXNpemUtc20sICRwYWdpbmF0aW9uLWJvcmRlci1yYWRpdXMtc20pO1xufVxuIiwiLy8gUGFnaW5hdGlvblxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgcGFnaW5hdGlvbi1taXhpblxuQG1peGluIHBhZ2luYXRpb24tc2l6ZSgkcGFkZGluZy15LCAkcGFkZGluZy14LCAkZm9udC1zaXplLCAkYm9yZGVyLXJhZGl1cykge1xuICAtLSN7JHByZWZpeH1wYWdpbmF0aW9uLXBhZGRpbmcteDogI3skcGFkZGluZy14fTtcbiAgLS0jeyRwcmVmaXh9cGFnaW5hdGlvbi1wYWRkaW5nLXk6ICN7JHBhZGRpbmcteX07XG4gIEBpbmNsdWRlIHJmcygkZm9udC1zaXplLCAtLSN7JHByZWZpeH1wYWdpbmF0aW9uLWZvbnQtc2l6ZSk7XG4gIC0tI3skcHJlZml4fXBhZ2luYXRpb24tYm9yZGVyLXJhZGl1czogI3skYm9yZGVyLXJhZGl1c307XG59XG4vLyBzY3NzLWRvY3MtZW5kIHBhZ2luYXRpb24tbWl4aW5cbiIsIi8vIEJhc2UgY2xhc3Ncbi8vXG4vLyBSZXF1aXJlcyBvbmUgb2YgdGhlIGNvbnRleHR1YWwsIGNvbG9yIG1vZGlmaWVyIGNsYXNzZXMgZm9yIGBjb2xvcmAgYW5kXG4vLyBgYmFja2dyb3VuZC1jb2xvcmAuXG5cbi5iYWRnZSB7XG4gIC8vIHNjc3MtZG9jcy1zdGFydCBiYWRnZS1jc3MtdmFyc1xuICAtLSN7JHByZWZpeH1iYWRnZS1wYWRkaW5nLXg6ICN7JGJhZGdlLXBhZGRpbmcteH07XG4gIC0tI3skcHJlZml4fWJhZGdlLXBhZGRpbmcteTogI3skYmFkZ2UtcGFkZGluZy15fTtcbiAgQGluY2x1ZGUgcmZzKCRiYWRnZS1mb250LXNpemUsIC0tI3skcHJlZml4fWJhZGdlLWZvbnQtc2l6ZSk7XG4gIC0tI3skcHJlZml4fWJhZGdlLWZvbnQtd2VpZ2h0OiAjeyRiYWRnZS1mb250LXdlaWdodH07XG4gIC0tI3skcHJlZml4fWJhZGdlLWNvbG9yOiAjeyRiYWRnZS1jb2xvcn07XG4gIC0tI3skcHJlZml4fWJhZGdlLWJvcmRlci1yYWRpdXM6ICN7JGJhZGdlLWJvcmRlci1yYWRpdXN9O1xuICAvLyBzY3NzLWRvY3MtZW5kIGJhZGdlLWNzcy12YXJzXG5cbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nOiB2YXIoLS0jeyRwcmVmaXh9YmFkZ2UtcGFkZGluZy15KSB2YXIoLS0jeyRwcmVmaXh9YmFkZ2UtcGFkZGluZy14KTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKHZhcigtLSN7JHByZWZpeH1iYWRnZS1mb250LXNpemUpKTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLSN7JHByZWZpeH1iYWRnZS1mb250LXdlaWdodCk7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWJhZGdlLWNvbG9yKTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXModmFyKC0tI3skcHJlZml4fWJhZGdlLWJvcmRlci1yYWRpdXMpKTtcbiAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoKTtcblxuICAvLyBFbXB0eSBiYWRnZXMgY29sbGFwc2UgYXV0b21hdGljYWxseVxuICAmOmVtcHR5IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi8vIFF1aWNrIGZpeCBmb3IgYmFkZ2VzIGluIGJ1dHRvbnNcbi5idG4gLmJhZGdlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IC0xcHg7XG59XG4iLCIvL1xuLy8gQmFzZSBzdHlsZXNcbi8vXG5cbi5hbGVydCB7XG4gIC8vIHNjc3MtZG9jcy1zdGFydCBhbGVydC1jc3MtdmFyc1xuICAtLSN7JHByZWZpeH1hbGVydC1iZzogdHJhbnNwYXJlbnQ7XG4gIC0tI3skcHJlZml4fWFsZXJ0LXBhZGRpbmcteDogI3skYWxlcnQtcGFkZGluZy14fTtcbiAgLS0jeyRwcmVmaXh9YWxlcnQtcGFkZGluZy15OiAjeyRhbGVydC1wYWRkaW5nLXl9O1xuICAtLSN7JHByZWZpeH1hbGVydC1tYXJnaW4tYm90dG9tOiAjeyRhbGVydC1tYXJnaW4tYm90dG9tfTtcbiAgLS0jeyRwcmVmaXh9YWxlcnQtY29sb3I6IGluaGVyaXQ7XG4gIC0tI3skcHJlZml4fWFsZXJ0LWJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIC0tI3skcHJlZml4fWFsZXJ0LWJvcmRlcjogI3skYWxlcnQtYm9yZGVyLXdpZHRofSBzb2xpZCB2YXIoLS0jeyRwcmVmaXh9YWxlcnQtYm9yZGVyLWNvbG9yKTtcbiAgLS0jeyRwcmVmaXh9YWxlcnQtYm9yZGVyLXJhZGl1czogI3skYWxlcnQtYm9yZGVyLXJhZGl1c307XG4gIC0tI3skcHJlZml4fWFsZXJ0LWxpbmstY29sb3I6IGluaGVyaXQ7XG4gIC8vIHNjc3MtZG9jcy1lbmQgYWxlcnQtY3NzLXZhcnNcblxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH1hbGVydC1wYWRkaW5nLXkpIHZhcigtLSN7JHByZWZpeH1hbGVydC1wYWRkaW5nLXgpO1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS0jeyRwcmVmaXh9YWxlcnQtbWFyZ2luLWJvdHRvbSk7XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YWxlcnQtY29sb3IpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YWxlcnQtYmcpO1xuICBib3JkZXI6IHZhcigtLSN7JHByZWZpeH1hbGVydC1ib3JkZXIpO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKHZhcigtLSN7JHByZWZpeH1hbGVydC1ib3JkZXItcmFkaXVzKSk7XG59XG5cbi8vIEhlYWRpbmdzIGZvciBsYXJnZXIgYWxlcnRzXG4uYWxlcnQtaGVhZGluZyB7XG4gIC8vIFNwZWNpZmllZCB0byBwcmV2ZW50IGNvbmZsaWN0cyBvZiBjaGFuZ2luZyAkaGVhZGluZ3MtY29sb3JcbiAgY29sb3I6IGluaGVyaXQ7XG59XG5cbi8vIFByb3ZpZGUgY2xhc3MgZm9yIGxpbmtzIHRoYXQgbWF0Y2ggYWxlcnRzXG4uYWxlcnQtbGluayB7XG4gIGZvbnQtd2VpZ2h0OiAkYWxlcnQtbGluay1mb250LXdlaWdodDtcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1hbGVydC1saW5rLWNvbG9yKTtcbn1cblxuXG4vLyBEaXNtaXNzaWJsZSBhbGVydHNcbi8vXG4vLyBFeHBhbmQgdGhlIHJpZ2h0IHBhZGRpbmcgYW5kIGFjY291bnQgZm9yIHRoZSBjbG9zZSBidXR0b24ncyBwb3NpdGlvbmluZy5cblxuLmFsZXJ0LWRpc21pc3NpYmxlIHtcbiAgcGFkZGluZy1yaWdodDogJGFsZXJ0LWRpc21pc3NpYmxlLXBhZGRpbmctcjtcblxuICAvLyBBZGp1c3QgY2xvc2UgbGluayBwb3NpdGlvblxuICAuYnRuLWNsb3NlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIHotaW5kZXg6ICRzdHJldGNoZWQtbGluay16LWluZGV4ICsgMTtcbiAgICBwYWRkaW5nOiAkYWxlcnQtcGFkZGluZy15ICogMS4yNSAkYWxlcnQtcGFkZGluZy14O1xuICB9XG59XG5cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IGFsZXJ0LW1vZGlmaWVyc1xuLy8gR2VuZXJhdGUgY29udGV4dHVhbCBtb2RpZmllciBjbGFzc2VzIGZvciBjb2xvcml6aW5nIHRoZSBhbGVydFxuQGVhY2ggJHN0YXRlIGluIG1hcC1rZXlzKCR0aGVtZS1jb2xvcnMpIHtcbiAgLmFsZXJ0LSN7JHN0YXRlfSB7XG4gICAgLS0jeyRwcmVmaXh9YWxlcnQtY29sb3I6IHZhcigtLSN7JHByZWZpeH0jeyRzdGF0ZX0tdGV4dC1lbXBoYXNpcyk7XG4gICAgLS0jeyRwcmVmaXh9YWxlcnQtYmc6IHZhcigtLSN7JHByZWZpeH0jeyRzdGF0ZX0tYmctc3VidGxlKTtcbiAgICAtLSN7JHByZWZpeH1hbGVydC1ib3JkZXItY29sb3I6IHZhcigtLSN7JHByZWZpeH0jeyRzdGF0ZX0tYm9yZGVyLXN1YnRsZSk7XG4gICAgLS0jeyRwcmVmaXh9YWxlcnQtbGluay1jb2xvcjogdmFyKC0tI3skcHJlZml4fSN7JHN0YXRlfS10ZXh0LWVtcGhhc2lzKTtcbiAgfVxufVxuLy8gc2Nzcy1kb2NzLWVuZCBhbGVydC1tb2RpZmllcnNcbiIsIi8vIERpc2FibGUgYW5pbWF0aW9uIGlmIHRyYW5zaXRpb25zIGFyZSBkaXNhYmxlZFxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgcHJvZ3Jlc3Mta2V5ZnJhbWVzXG5AaWYgJGVuYWJsZS10cmFuc2l0aW9ucyB7XG4gIEBrZXlmcmFtZXMgcHJvZ3Jlc3MtYmFyLXN0cmlwZXMge1xuICAgIDAlIHsgYmFja2dyb3VuZC1wb3NpdGlvbi14OiAkcHJvZ3Jlc3MtaGVpZ2h0OyB9XG4gIH1cbn1cbi8vIHNjc3MtZG9jcy1lbmQgcHJvZ3Jlc3Mta2V5ZnJhbWVzXG5cbi5wcm9ncmVzcyxcbi5wcm9ncmVzcy1zdGFja2VkIHtcbiAgLy8gc2Nzcy1kb2NzLXN0YXJ0IHByb2dyZXNzLWNzcy12YXJzXG4gIC0tI3skcHJlZml4fXByb2dyZXNzLWhlaWdodDogI3skcHJvZ3Jlc3MtaGVpZ2h0fTtcbiAgQGluY2x1ZGUgcmZzKCRwcm9ncmVzcy1mb250LXNpemUsIC0tI3skcHJlZml4fXByb2dyZXNzLWZvbnQtc2l6ZSk7XG4gIC0tI3skcHJlZml4fXByb2dyZXNzLWJnOiAjeyRwcm9ncmVzcy1iZ307XG4gIC0tI3skcHJlZml4fXByb2dyZXNzLWJvcmRlci1yYWRpdXM6ICN7JHByb2dyZXNzLWJvcmRlci1yYWRpdXN9O1xuICAtLSN7JHByZWZpeH1wcm9ncmVzcy1ib3gtc2hhZG93OiAjeyRwcm9ncmVzcy1ib3gtc2hhZG93fTtcbiAgLS0jeyRwcmVmaXh9cHJvZ3Jlc3MtYmFyLWNvbG9yOiAjeyRwcm9ncmVzcy1iYXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1wcm9ncmVzcy1iYXItYmc6ICN7JHByb2dyZXNzLWJhci1iZ307XG4gIC0tI3skcHJlZml4fXByb2dyZXNzLWJhci10cmFuc2l0aW9uOiAjeyRwcm9ncmVzcy1iYXItdHJhbnNpdGlvbn07XG4gIC8vIHNjc3MtZG9jcy1lbmQgcHJvZ3Jlc3MtY3NzLXZhcnNcblxuICBkaXNwbGF5OiBmbGV4O1xuICBoZWlnaHQ6IHZhcigtLSN7JHByZWZpeH1wcm9ncmVzcy1oZWlnaHQpO1xuICBvdmVyZmxvdzogaGlkZGVuOyAvLyBmb3JjZSByb3VuZGVkIGNvcm5lcnMgYnkgY3JvcHBpbmcgaXRcbiAgQGluY2x1ZGUgZm9udC1zaXplKHZhcigtLSN7JHByZWZpeH1wcm9ncmVzcy1mb250LXNpemUpKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fXByb2dyZXNzLWJnKTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9cHJvZ3Jlc3MtYm9yZGVyLXJhZGl1cykpO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KHZhcigtLSN7JHByZWZpeH1wcm9ncmVzcy1ib3gtc2hhZG93KSk7XG59XG5cbi5wcm9ncmVzcy1iYXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1wcm9ncmVzcy1iYXItY29sb3IpO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1wcm9ncmVzcy1iYXItYmcpO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKHZhcigtLSN7JHByZWZpeH1wcm9ncmVzcy1iYXItdHJhbnNpdGlvbikpO1xufVxuXG4ucHJvZ3Jlc3MtYmFyLXN0cmlwZWQge1xuICBAaW5jbHVkZSBncmFkaWVudC1zdHJpcGVkKCk7XG4gIGJhY2tncm91bmQtc2l6ZTogdmFyKC0tI3skcHJlZml4fXByb2dyZXNzLWhlaWdodCkgdmFyKC0tI3skcHJlZml4fXByb2dyZXNzLWhlaWdodCk7XG59XG5cbi5wcm9ncmVzcy1zdGFja2VkID4gLnByb2dyZXNzIHtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG59XG5cbi5wcm9ncmVzcy1zdGFja2VkID4gLnByb2dyZXNzID4gLnByb2dyZXNzLWJhciB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG5AaWYgJGVuYWJsZS10cmFuc2l0aW9ucyB7XG4gIC5wcm9ncmVzcy1iYXItYW5pbWF0ZWQge1xuICAgIGFuaW1hdGlvbjogJHByb2dyZXNzLWJhci1hbmltYXRpb24tdGltaW5nIHByb2dyZXNzLWJhci1zdHJpcGVzO1xuXG4gICAgQGlmICRlbmFibGUtcmVkdWNlZC1tb3Rpb24ge1xuICAgICAgQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgICAgICAgYW5pbWF0aW9uOiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gQmFzZSBjbGFzc1xuLy9cbi8vIEVhc2lseSB1c2FibGUgb24gPHVsPiwgPG9sPiwgb3IgPGRpdj4uXG5cbi5saXN0LWdyb3VwIHtcbiAgLy8gc2Nzcy1kb2NzLXN0YXJ0IGxpc3QtZ3JvdXAtY3NzLXZhcnNcbiAgLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1jb2xvcjogI3skbGlzdC1ncm91cC1jb2xvcn07XG4gIC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYmc6ICN7JGxpc3QtZ3JvdXAtYmd9O1xuICAtLSN7JHByZWZpeH1saXN0LWdyb3VwLWJvcmRlci1jb2xvcjogI3skbGlzdC1ncm91cC1ib3JkZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1saXN0LWdyb3VwLWJvcmRlci13aWR0aDogI3skbGlzdC1ncm91cC1ib3JkZXItd2lkdGh9O1xuICAtLSN7JHByZWZpeH1saXN0LWdyb3VwLWJvcmRlci1yYWRpdXM6ICN7JGxpc3QtZ3JvdXAtYm9yZGVyLXJhZGl1c307XG4gIC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtaXRlbS1wYWRkaW5nLXg6ICN7JGxpc3QtZ3JvdXAtaXRlbS1wYWRkaW5nLXh9O1xuICAtLSN7JHByZWZpeH1saXN0LWdyb3VwLWl0ZW0tcGFkZGluZy15OiAjeyRsaXN0LWdyb3VwLWl0ZW0tcGFkZGluZy15fTtcbiAgLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1hY3Rpb24tY29sb3I6ICN7JGxpc3QtZ3JvdXAtYWN0aW9uLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1hY3Rpb24taG92ZXItY29sb3I6ICN7JGxpc3QtZ3JvdXAtYWN0aW9uLWhvdmVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1hY3Rpb24taG92ZXItYmc6ICN7JGxpc3QtZ3JvdXAtaG92ZXItYmd9O1xuICAtLSN7JHByZWZpeH1saXN0LWdyb3VwLWFjdGlvbi1hY3RpdmUtY29sb3I6ICN7JGxpc3QtZ3JvdXAtYWN0aW9uLWFjdGl2ZS1jb2xvcn07XG4gIC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYWN0aW9uLWFjdGl2ZS1iZzogI3skbGlzdC1ncm91cC1hY3Rpb24tYWN0aXZlLWJnfTtcbiAgLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1kaXNhYmxlZC1jb2xvcjogI3skbGlzdC1ncm91cC1kaXNhYmxlZC1jb2xvcn07XG4gIC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtZGlzYWJsZWQtYmc6ICN7JGxpc3QtZ3JvdXAtZGlzYWJsZWQtYmd9O1xuICAtLSN7JHByZWZpeH1saXN0LWdyb3VwLWFjdGl2ZS1jb2xvcjogI3skbGlzdC1ncm91cC1hY3RpdmUtY29sb3J9O1xuICAtLSN7JHByZWZpeH1saXN0LWdyb3VwLWFjdGl2ZS1iZzogI3skbGlzdC1ncm91cC1hY3RpdmUtYmd9O1xuICAtLSN7JHByZWZpeH1saXN0LWdyb3VwLWFjdGl2ZS1ib3JkZXItY29sb3I6ICN7JGxpc3QtZ3JvdXAtYWN0aXZlLWJvcmRlci1jb2xvcn07XG4gIC8vIHNjc3MtZG9jcy1lbmQgbGlzdC1ncm91cC1jc3MtdmFyc1xuXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgLy8gTm8gbmVlZCB0byBzZXQgbGlzdC1zdHlsZTogbm9uZTsgc2luY2UgLmxpc3QtZ3JvdXAtaXRlbSBpcyBibG9jayBsZXZlbFxuICBwYWRkaW5nLWxlZnQ6IDA7IC8vIHJlc2V0IHBhZGRpbmcgYmVjYXVzZSB1bCBhbmQgb2xcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1ib3JkZXItcmFkaXVzKSk7XG59XG5cbi5saXN0LWdyb3VwLW51bWJlcmVkIHtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICBjb3VudGVyLXJlc2V0OiBzZWN0aW9uO1xuXG4gID4gLmxpc3QtZ3JvdXAtaXRlbTo6YmVmb3JlIHtcbiAgICAvLyBJbmNyZW1lbnRzIG9ubHkgdGhpcyBpbnN0YW5jZSBvZiB0aGUgc2VjdGlvbiBjb3VudGVyXG4gICAgY29udGVudDogY291bnRlcnMoc2VjdGlvbiwgXCIuXCIpIFwiLiBcIjtcbiAgICBjb3VudGVyLWluY3JlbWVudDogc2VjdGlvbjtcbiAgfVxufVxuXG4vLyBJbnRlcmFjdGl2ZSBsaXN0IGl0ZW1zXG4vL1xuLy8gVXNlIGFuY2hvciBvciBidXR0b24gZWxlbWVudHMgaW5zdGVhZCBvZiBgbGlgcyBvciBgZGl2YHMgdG8gY3JlYXRlIGludGVyYWN0aXZlXG4vLyBsaXN0IGl0ZW1zLiBJbmNsdWRlcyBhbiBleHRyYSBgLmFjdGl2ZWAgbW9kaWZpZXIgY2xhc3MgZm9yIHNlbGVjdGVkIGl0ZW1zLlxuXG4ubGlzdC1ncm91cC1pdGVtLWFjdGlvbiB7XG4gIHdpZHRoOiAxMDAlOyAvLyBGb3IgYDxidXR0b24+YHMgKGFuY2hvcnMgYmVjb21lIDEwMCUgYnkgZGVmYXVsdCB0aG91Z2gpXG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1hY3Rpb24tY29sb3IpO1xuICB0ZXh0LWFsaWduOiBpbmhlcml0OyAvLyBGb3IgYDxidXR0b24+YHMgKGFuY2hvcnMgaW5oZXJpdClcblxuICAvLyBIb3ZlciBzdGF0ZVxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICB6LWluZGV4OiAxOyAvLyBQbGFjZSBob3Zlci9mb2N1cyBpdGVtcyBhYm92ZSB0aGVpciBzaWJsaW5ncyBmb3IgcHJvcGVyIGJvcmRlciBzdHlsaW5nXG4gICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1saXN0LWdyb3VwLWFjdGlvbi1ob3Zlci1jb2xvcik7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1saXN0LWdyb3VwLWFjdGlvbi1ob3Zlci1iZyk7XG4gIH1cblxuICAmOmFjdGl2ZSB7XG4gICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1saXN0LWdyb3VwLWFjdGlvbi1hY3RpdmUtY29sb3IpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1saXN0LWdyb3VwLWFjdGlvbi1hY3RpdmUtYmcpO1xuICB9XG59XG5cbi8vIEluZGl2aWR1YWwgbGlzdCBpdGVtc1xuLy9cbi8vIFVzZSBvbiBgbGlgcyBvciBgZGl2YHMgd2l0aGluIHRoZSBgLmxpc3QtZ3JvdXBgIHBhcmVudC5cblxuLmxpc3QtZ3JvdXAtaXRlbSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH1saXN0LWdyb3VwLWl0ZW0tcGFkZGluZy15KSB2YXIoLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1pdGVtLXBhZGRpbmcteCk7XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1jb2xvcik7XG4gIHRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstZGVjb3JhdGlvbiA9PSBub25lLCBudWxsLCBub25lKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYmcpO1xuICBib3JkZXI6IHZhcigtLSN7JHByZWZpeH1saXN0LWdyb3VwLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYm9yZGVyLWNvbG9yKTtcblxuICAmOmZpcnN0LWNoaWxkIHtcbiAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cyhpbmhlcml0KTtcbiAgfVxuXG4gICY6bGFzdC1jaGlsZCB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoaW5oZXJpdCk7XG4gIH1cblxuICAmLmRpc2FibGVkLFxuICAmOmRpc2FibGVkIHtcbiAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtZGlzYWJsZWQtY29sb3IpO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1saXN0LWdyb3VwLWRpc2FibGVkLWJnKTtcbiAgfVxuXG4gIC8vIEluY2x1ZGUgYm90aCBoZXJlIGZvciBgPGE+YHMgYW5kIGA8YnV0dG9uPmBzXG4gICYuYWN0aXZlIHtcbiAgICB6LWluZGV4OiAyOyAvLyBQbGFjZSBhY3RpdmUgaXRlbXMgYWJvdmUgdGhlaXIgc2libGluZ3MgZm9yIHByb3BlciBib3JkZXIgc3R5bGluZ1xuICAgIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1hY3RpdmUtY29sb3IpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1saXN0LWdyb3VwLWFjdGl2ZS1iZyk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1hY3RpdmUtYm9yZGVyLWNvbG9yKTtcbiAgfVxuXG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBzY3NzL3NlbGVjdG9yLW5vLXJlZHVuZGFudC1uZXN0aW5nLXNlbGVjdG9yXG4gICYgKyAubGlzdC1ncm91cC1pdGVtIHtcbiAgICBib3JkZXItdG9wLXdpZHRoOiAwO1xuXG4gICAgJi5hY3RpdmUge1xuICAgICAgbWFyZ2luLXRvcDogY2FsYygtMSAqIHZhcigtLSN7JHByZWZpeH1saXN0LWdyb3VwLWJvcmRlci13aWR0aCkpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICAgICAgYm9yZGVyLXRvcC13aWR0aDogdmFyKC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoKTtcbiAgICB9XG4gIH1cbn1cblxuLy8gSG9yaXpvbnRhbFxuLy9cbi8vIENoYW5nZSB0aGUgbGF5b3V0IG9mIGxpc3QgZ3JvdXAgaXRlbXMgZnJvbSB2ZXJ0aWNhbCAoZGVmYXVsdCkgdG8gaG9yaXpvbnRhbC5cblxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCkge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgLmxpc3QtZ3JvdXAtaG9yaXpvbnRhbCN7JGluZml4fSB7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuXG4gICAgICA+IC5saXN0LWdyb3VwLWl0ZW0ge1xuICAgICAgICAmOmZpcnN0LWNoaWxkOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tc3RhcnQtcmFkaXVzKHZhcigtLSN7JHByZWZpeH1saXN0LWdyb3VwLWJvcmRlci1yYWRpdXMpKTtcbiAgICAgICAgICBAaW5jbHVkZSBib3JkZXItdG9wLWVuZC1yYWRpdXMoMCk7XG4gICAgICAgIH1cblxuICAgICAgICAmOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci10b3AtZW5kLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1ib3JkZXItcmFkaXVzKSk7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1zdGFydC1yYWRpdXMoMCk7XG4gICAgICAgIH1cblxuICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgfVxuXG4gICAgICAgICsgLmxpc3QtZ3JvdXAtaXRlbSB7XG4gICAgICAgICAgYm9yZGVyLXRvcC13aWR0aDogdmFyKC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoKTtcbiAgICAgICAgICBib3JkZXItbGVmdC13aWR0aDogMDtcblxuICAgICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBjYWxjKC0xICogdmFyKC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoKSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gICAgICAgICAgICBib3JkZXItbGVmdC13aWR0aDogdmFyKC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuXG4vLyBGbHVzaCBsaXN0IGl0ZW1zXG4vL1xuLy8gUmVtb3ZlIGJvcmRlcnMgYW5kIGJvcmRlci1yYWRpdXMgdG8ga2VlcCBsaXN0IGdyb3VwIGl0ZW1zIGVkZ2UtdG8tZWRnZS4gTW9zdFxuLy8gdXNlZnVsIHdpdGhpbiBvdGhlciBjb21wb25lbnRzIChlLmcuLCBjYXJkcykuXG5cbi5saXN0LWdyb3VwLWZsdXNoIHtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwKTtcblxuICA+IC5saXN0LWdyb3VwLWl0ZW0ge1xuICAgIGJvcmRlci13aWR0aDogMCAwIHZhcigtLSN7JHByZWZpeH1saXN0LWdyb3VwLWJvcmRlci13aWR0aCk7XG5cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBzY3NzLWRvY3Mtc3RhcnQgbGlzdC1ncm91cC1tb2RpZmllcnNcbi8vIExpc3QgZ3JvdXAgY29udGV4dHVhbCB2YXJpYW50c1xuLy9cbi8vIEFkZCBtb2RpZmllciBjbGFzc2VzIHRvIGNoYW5nZSB0ZXh0IGFuZCBiYWNrZ3JvdW5kIGNvbG9yIG9uIGluZGl2aWR1YWwgaXRlbXMuXG4vLyBPcmdhbml6YXRpb25hbGx5LCB0aGlzIG11c3QgY29tZSBhZnRlciB0aGUgYDpob3ZlcmAgc3RhdGVzLlxuXG5AZWFjaCAkc3RhdGUgaW4gbWFwLWtleXMoJHRoZW1lLWNvbG9ycykge1xuICAubGlzdC1ncm91cC1pdGVtLSN7JHN0YXRlfSB7XG4gICAgLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1jb2xvcjogdmFyKC0tI3skcHJlZml4fSN7JHN0YXRlfS10ZXh0LWVtcGhhc2lzKTtcbiAgICAtLSN7JHByZWZpeH1saXN0LWdyb3VwLWJnOiB2YXIoLS0jeyRwcmVmaXh9I3skc3RhdGV9LWJnLXN1YnRsZSk7XG4gICAgLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1ib3JkZXItY29sb3I6IHZhcigtLSN7JHByZWZpeH0jeyRzdGF0ZX0tYm9yZGVyLXN1YnRsZSk7XG4gICAgLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1hY3Rpb24taG92ZXItY29sb3I6IHZhcigtLSN7JHByZWZpeH1lbXBoYXNpcy1jb2xvcik7XG4gICAgLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1hY3Rpb24taG92ZXItYmc6IHZhcigtLSN7JHByZWZpeH0jeyRzdGF0ZX0tYm9yZGVyLXN1YnRsZSk7XG4gICAgLS0jeyRwcmVmaXh9bGlzdC1ncm91cC1hY3Rpb24tYWN0aXZlLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9ZW1waGFzaXMtY29sb3IpO1xuICAgIC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYWN0aW9uLWFjdGl2ZS1iZzogdmFyKC0tI3skcHJlZml4fSN7JHN0YXRlfS1ib3JkZXItc3VidGxlKTtcbiAgICAtLSN7JHByZWZpeH1saXN0LWdyb3VwLWFjdGl2ZS1jb2xvcjogdmFyKC0tI3skcHJlZml4fSN7JHN0YXRlfS1iZy1zdWJ0bGUpO1xuICAgIC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYWN0aXZlLWJnOiB2YXIoLS0jeyRwcmVmaXh9I3skc3RhdGV9LXRleHQtZW1waGFzaXMpO1xuICAgIC0tI3skcHJlZml4fWxpc3QtZ3JvdXAtYWN0aXZlLWJvcmRlci1jb2xvcjogdmFyKC0tI3skcHJlZml4fSN7JHN0YXRlfS10ZXh0LWVtcGhhc2lzKTtcbiAgfVxufVxuLy8gc2Nzcy1kb2NzLWVuZCBsaXN0LWdyb3VwLW1vZGlmaWVyc1xuIiwiLy8gVHJhbnNwYXJlbnQgYmFja2dyb3VuZCBhbmQgYm9yZGVyIHByb3BlcnRpZXMgaW5jbHVkZWQgZm9yIGJ1dHRvbiB2ZXJzaW9uLlxuLy8gaU9TIHJlcXVpcmVzIHRoZSBidXR0b24gZWxlbWVudCBpbnN0ZWFkIG9mIGFuIGFuY2hvciB0YWcuXG4vLyBJZiB5b3Ugd2FudCB0aGUgYW5jaG9yIHZlcnNpb24sIGl0IHJlcXVpcmVzIGBocmVmPVwiI1wiYC5cbi8vIFNlZSBodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi1VUy9kb2NzL1dlYi9FdmVudHMvY2xpY2sjU2FmYXJpX01vYmlsZVxuXG4uYnRuLWNsb3NlIHtcbiAgLy8gc2Nzcy1kb2NzLXN0YXJ0IGNsb3NlLWNzcy12YXJzXG4gIC0tI3skcHJlZml4fWJ0bi1jbG9zZS1jb2xvcjogI3skYnRuLWNsb3NlLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9YnRuLWNsb3NlLWJnOiAjeyBlc2NhcGUtc3ZnKCRidG4tY2xvc2UtYmcpIH07XG4gIC0tI3skcHJlZml4fWJ0bi1jbG9zZS1vcGFjaXR5OiAjeyRidG4tY2xvc2Utb3BhY2l0eX07XG4gIC0tI3skcHJlZml4fWJ0bi1jbG9zZS1ob3Zlci1vcGFjaXR5OiAjeyRidG4tY2xvc2UtaG92ZXItb3BhY2l0eX07XG4gIC0tI3skcHJlZml4fWJ0bi1jbG9zZS1mb2N1cy1zaGFkb3c6ICN7JGJ0bi1jbG9zZS1mb2N1cy1zaGFkb3d9O1xuICAtLSN7JHByZWZpeH1idG4tY2xvc2UtZm9jdXMtb3BhY2l0eTogI3skYnRuLWNsb3NlLWZvY3VzLW9wYWNpdHl9O1xuICAtLSN7JHByZWZpeH1idG4tY2xvc2UtZGlzYWJsZWQtb3BhY2l0eTogI3skYnRuLWNsb3NlLWRpc2FibGVkLW9wYWNpdHl9O1xuICAtLSN7JHByZWZpeH1idG4tY2xvc2Utd2hpdGUtZmlsdGVyOiAjeyRidG4tY2xvc2Utd2hpdGUtZmlsdGVyfTtcbiAgLy8gc2Nzcy1kb2NzLWVuZCBjbG9zZS1jc3MtdmFyc1xuXG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICB3aWR0aDogJGJ0bi1jbG9zZS13aWR0aDtcbiAgaGVpZ2h0OiAkYnRuLWNsb3NlLWhlaWdodDtcbiAgcGFkZGluZzogJGJ0bi1jbG9zZS1wYWRkaW5nLXkgJGJ0bi1jbG9zZS1wYWRkaW5nLXg7XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9YnRuLWNsb3NlLWNvbG9yKTtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgdmFyKC0tI3skcHJlZml4fWJ0bi1jbG9zZS1iZykgY2VudGVyIC8gJGJ0bi1jbG9zZS13aWR0aCBhdXRvIG5vLXJlcGVhdDsgLy8gaW5jbHVkZSB0cmFuc3BhcmVudCBmb3IgYnV0dG9uIGVsZW1lbnRzXG4gIGJvcmRlcjogMDsgLy8gZm9yIGJ1dHRvbiBlbGVtZW50c1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCk7XG4gIG9wYWNpdHk6IHZhcigtLSN7JHByZWZpeH1idG4tY2xvc2Utb3BhY2l0eSk7XG5cbiAgLy8gT3ZlcnJpZGUgPGE+J3MgaG92ZXIgc3R5bGVcbiAgJjpob3ZlciB7XG4gICAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1idG4tY2xvc2UtY29sb3IpO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBvcGFjaXR5OiB2YXIoLS0jeyRwcmVmaXh9YnRuLWNsb3NlLWhvdmVyLW9wYWNpdHkpO1xuICB9XG5cbiAgJjpmb2N1cyB7XG4gICAgb3V0bGluZTogMDtcbiAgICBib3gtc2hhZG93OiB2YXIoLS0jeyRwcmVmaXh9YnRuLWNsb3NlLWZvY3VzLXNoYWRvdyk7XG4gICAgb3BhY2l0eTogdmFyKC0tI3skcHJlZml4fWJ0bi1jbG9zZS1mb2N1cy1vcGFjaXR5KTtcbiAgfVxuXG4gICY6ZGlzYWJsZWQsXG4gICYuZGlzYWJsZWQge1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIHVzZXItc2VsZWN0OiBub25lO1xuICAgIG9wYWNpdHk6IHZhcigtLSN7JHByZWZpeH1idG4tY2xvc2UtZGlzYWJsZWQtb3BhY2l0eSk7XG4gIH1cbn1cblxuQG1peGluIGJ0bi1jbG9zZS13aGl0ZSgpIHtcbiAgZmlsdGVyOiB2YXIoLS0jeyRwcmVmaXh9YnRuLWNsb3NlLXdoaXRlLWZpbHRlcik7XG59XG5cbi5idG4tY2xvc2Utd2hpdGUge1xuICBAaW5jbHVkZSBidG4tY2xvc2Utd2hpdGUoKTtcbn1cblxuQGlmICRlbmFibGUtZGFyay1tb2RlIHtcbiAgQGluY2x1ZGUgY29sb3ItbW9kZShkYXJrKSB7XG4gICAgLmJ0bi1jbG9zZSB7XG4gICAgICBAaW5jbHVkZSBidG4tY2xvc2Utd2hpdGUoKTtcbiAgICB9XG4gIH1cbn1cbiIsIi50b2FzdCB7XG4gIC8vIHNjc3MtZG9jcy1zdGFydCB0b2FzdC1jc3MtdmFyc1xuICAtLSN7JHByZWZpeH10b2FzdC16aW5kZXg6ICN7JHppbmRleC10b2FzdH07XG4gIC0tI3skcHJlZml4fXRvYXN0LXBhZGRpbmcteDogI3skdG9hc3QtcGFkZGluZy14fTtcbiAgLS0jeyRwcmVmaXh9dG9hc3QtcGFkZGluZy15OiAjeyR0b2FzdC1wYWRkaW5nLXl9O1xuICAtLSN7JHByZWZpeH10b2FzdC1zcGFjaW5nOiAjeyR0b2FzdC1zcGFjaW5nfTtcbiAgLS0jeyRwcmVmaXh9dG9hc3QtbWF4LXdpZHRoOiAjeyR0b2FzdC1tYXgtd2lkdGh9O1xuICBAaW5jbHVkZSByZnMoJHRvYXN0LWZvbnQtc2l6ZSwgLS0jeyRwcmVmaXh9dG9hc3QtZm9udC1zaXplKTtcbiAgLS0jeyRwcmVmaXh9dG9hc3QtY29sb3I6ICN7JHRvYXN0LWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9dG9hc3QtYmc6ICN7JHRvYXN0LWJhY2tncm91bmQtY29sb3J9O1xuICAtLSN7JHByZWZpeH10b2FzdC1ib3JkZXItd2lkdGg6ICN7JHRvYXN0LWJvcmRlci13aWR0aH07XG4gIC0tI3skcHJlZml4fXRvYXN0LWJvcmRlci1jb2xvcjogI3skdG9hc3QtYm9yZGVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9dG9hc3QtYm9yZGVyLXJhZGl1czogI3skdG9hc3QtYm9yZGVyLXJhZGl1c307XG4gIC0tI3skcHJlZml4fXRvYXN0LWJveC1zaGFkb3c6ICN7JHRvYXN0LWJveC1zaGFkb3d9O1xuICAtLSN7JHByZWZpeH10b2FzdC1oZWFkZXItY29sb3I6ICN7JHRvYXN0LWhlYWRlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fXRvYXN0LWhlYWRlci1iZzogI3skdG9hc3QtaGVhZGVyLWJhY2tncm91bmQtY29sb3J9O1xuICAtLSN7JHByZWZpeH10b2FzdC1oZWFkZXItYm9yZGVyLWNvbG9yOiAjeyR0b2FzdC1oZWFkZXItYm9yZGVyLWNvbG9yfTtcbiAgLy8gc2Nzcy1kb2NzLWVuZCB0b2FzdC1jc3MtdmFyc1xuXG4gIHdpZHRoOiB2YXIoLS0jeyRwcmVmaXh9dG9hc3QtbWF4LXdpZHRoKTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBAaW5jbHVkZSBmb250LXNpemUodmFyKC0tI3skcHJlZml4fXRvYXN0LWZvbnQtc2l6ZSkpO1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fXRvYXN0LWNvbG9yKTtcbiAgcG9pbnRlci1ldmVudHM6IGF1dG87XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH10b2FzdC1iZyk7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlcjogdmFyKC0tI3skcHJlZml4fXRvYXN0LWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tI3skcHJlZml4fXRvYXN0LWJvcmRlci1jb2xvcik7XG4gIGJveC1zaGFkb3c6IHZhcigtLSN7JHByZWZpeH10b2FzdC1ib3gtc2hhZG93KTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyh2YXIoLS0jeyRwcmVmaXh9dG9hc3QtYm9yZGVyLXJhZGl1cykpO1xuXG4gICYuc2hvd2luZyB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuXG4gICY6bm90KC5zaG93KSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4udG9hc3QtY29udGFpbmVyIHtcbiAgLS0jeyRwcmVmaXh9dG9hc3QtemluZGV4OiAjeyR6aW5kZXgtdG9hc3R9O1xuXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogdmFyKC0tI3skcHJlZml4fXRvYXN0LXppbmRleCk7XG4gIHdpZHRoOiBtYXgtY29udGVudDtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcblxuICA+IDpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS0jeyRwcmVmaXh9dG9hc3Qtc3BhY2luZyk7XG4gIH1cbn1cblxuLnRvYXN0LWhlYWRlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH10b2FzdC1wYWRkaW5nLXkpIHZhcigtLSN7JHByZWZpeH10b2FzdC1wYWRkaW5nLXgpO1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fXRvYXN0LWhlYWRlci1jb2xvcik7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH10b2FzdC1oZWFkZXItYmcpO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICBib3JkZXItYm90dG9tOiB2YXIoLS0jeyRwcmVmaXh9dG9hc3QtYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS0jeyRwcmVmaXh9dG9hc3QtaGVhZGVyLWJvcmRlci1jb2xvcik7XG4gIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKGNhbGModmFyKC0tI3skcHJlZml4fXRvYXN0LWJvcmRlci1yYWRpdXMpIC0gdmFyKC0tI3skcHJlZml4fXRvYXN0LWJvcmRlci13aWR0aCkpKTtcblxuICAuYnRuLWNsb3NlIHtcbiAgICBtYXJnaW4tcmlnaHQ6IGNhbGMoLS41ICogdmFyKC0tI3skcHJlZml4fXRvYXN0LXBhZGRpbmcteCkpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICAgIG1hcmdpbi1sZWZ0OiB2YXIoLS0jeyRwcmVmaXh9dG9hc3QtcGFkZGluZy14KTtcbiAgfVxufVxuXG4udG9hc3QtYm9keSB7XG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH10b2FzdC1wYWRkaW5nLXgpO1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcblxuLy8gLm1vZGFsLW9wZW4gICAgICAtIGJvZHkgY2xhc3MgZm9yIGtpbGxpbmcgdGhlIHNjcm9sbFxuLy8gLm1vZGFsICAgICAgICAgICAtIGNvbnRhaW5lciB0byBzY3JvbGwgd2l0aGluXG4vLyAubW9kYWwtZGlhbG9nICAgIC0gcG9zaXRpb25pbmcgc2hlbGwgZm9yIHRoZSBhY3R1YWwgbW9kYWxcbi8vIC5tb2RhbC1jb250ZW50ICAgLSBhY3R1YWwgbW9kYWwgdy8gYmcgYW5kIGNvcm5lcnMgYW5kIHN0dWZmXG5cblxuLy8gQ29udGFpbmVyIHRoYXQgdGhlIG1vZGFsIHNjcm9sbHMgd2l0aGluXG4ubW9kYWwge1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgbW9kYWwtY3NzLXZhcnNcbiAgLS0jeyRwcmVmaXh9bW9kYWwtemluZGV4OiAjeyR6aW5kZXgtbW9kYWx9O1xuICAtLSN7JHByZWZpeH1tb2RhbC13aWR0aDogI3skbW9kYWwtbWR9O1xuICAtLSN7JHByZWZpeH1tb2RhbC1wYWRkaW5nOiAjeyRtb2RhbC1pbm5lci1wYWRkaW5nfTtcbiAgLS0jeyRwcmVmaXh9bW9kYWwtbWFyZ2luOiAjeyRtb2RhbC1kaWFsb2ctbWFyZ2lufTtcbiAgLS0jeyRwcmVmaXh9bW9kYWwtY29sb3I6ICN7JG1vZGFsLWNvbnRlbnQtY29sb3J9O1xuICAtLSN7JHByZWZpeH1tb2RhbC1iZzogI3skbW9kYWwtY29udGVudC1iZ307XG4gIC0tI3skcHJlZml4fW1vZGFsLWJvcmRlci1jb2xvcjogI3skbW9kYWwtY29udGVudC1ib3JkZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1tb2RhbC1ib3JkZXItd2lkdGg6ICN7JG1vZGFsLWNvbnRlbnQtYm9yZGVyLXdpZHRofTtcbiAgLS0jeyRwcmVmaXh9bW9kYWwtYm9yZGVyLXJhZGl1czogI3skbW9kYWwtY29udGVudC1ib3JkZXItcmFkaXVzfTtcbiAgLS0jeyRwcmVmaXh9bW9kYWwtYm94LXNoYWRvdzogI3skbW9kYWwtY29udGVudC1ib3gtc2hhZG93LXhzfTtcbiAgLS0jeyRwcmVmaXh9bW9kYWwtaW5uZXItYm9yZGVyLXJhZGl1czogI3skbW9kYWwtY29udGVudC1pbm5lci1ib3JkZXItcmFkaXVzfTtcbiAgLS0jeyRwcmVmaXh9bW9kYWwtaGVhZGVyLXBhZGRpbmcteDogI3skbW9kYWwtaGVhZGVyLXBhZGRpbmcteH07XG4gIC0tI3skcHJlZml4fW1vZGFsLWhlYWRlci1wYWRkaW5nLXk6ICN7JG1vZGFsLWhlYWRlci1wYWRkaW5nLXl9O1xuICAtLSN7JHByZWZpeH1tb2RhbC1oZWFkZXItcGFkZGluZzogI3skbW9kYWwtaGVhZGVyLXBhZGRpbmd9OyAvLyBUb2RvIGluIHY2OiBTcGxpdCB0aGlzIHBhZGRpbmcgaW50byB4IGFuZCB5XG4gIC0tI3skcHJlZml4fW1vZGFsLWhlYWRlci1ib3JkZXItY29sb3I6ICN7JG1vZGFsLWhlYWRlci1ib3JkZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1tb2RhbC1oZWFkZXItYm9yZGVyLXdpZHRoOiAjeyRtb2RhbC1oZWFkZXItYm9yZGVyLXdpZHRofTtcbiAgLS0jeyRwcmVmaXh9bW9kYWwtdGl0bGUtbGluZS1oZWlnaHQ6ICN7JG1vZGFsLXRpdGxlLWxpbmUtaGVpZ2h0fTtcbiAgLS0jeyRwcmVmaXh9bW9kYWwtZm9vdGVyLWdhcDogI3skbW9kYWwtZm9vdGVyLW1hcmdpbi1iZXR3ZWVufTtcbiAgLS0jeyRwcmVmaXh9bW9kYWwtZm9vdGVyLWJnOiAjeyRtb2RhbC1mb290ZXItYmd9O1xuICAtLSN7JHByZWZpeH1tb2RhbC1mb290ZXItYm9yZGVyLWNvbG9yOiAjeyRtb2RhbC1mb290ZXItYm9yZGVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9bW9kYWwtZm9vdGVyLWJvcmRlci13aWR0aDogI3skbW9kYWwtZm9vdGVyLWJvcmRlci13aWR0aH07XG4gIC8vIHNjc3MtZG9jcy1lbmQgbW9kYWwtY3NzLXZhcnNcblxuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogdmFyKC0tI3skcHJlZml4fW1vZGFsLXppbmRleCk7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgLy8gUHJldmVudCBDaHJvbWUgb24gV2luZG93cyBmcm9tIGFkZGluZyBhIGZvY3VzIG91dGxpbmUuIEZvciBkZXRhaWxzLCBzZWVcbiAgLy8gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMTA5NTEuXG4gIG91dGxpbmU6IDA7XG4gIC8vIFdlIGRlbGliZXJhdGVseSBkb24ndCB1c2UgYC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtgIGR1ZSB0byBhXG4gIC8vIGduYXJseSBpT1MgU2FmYXJpIGJ1ZzogaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE1ODM0MlxuICAvLyBTZWUgYWxzbyBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzE3Njk1XG59XG5cbi8vIFNoZWxsIGRpdiB0byBwb3NpdGlvbiB0aGUgbW9kYWwgd2l0aCBib3R0b20gcGFkZGluZ1xuLm1vZGFsLWRpYWxvZyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IGF1dG87XG4gIG1hcmdpbjogdmFyKC0tI3skcHJlZml4fW1vZGFsLW1hcmdpbik7XG4gIC8vIGFsbG93IGNsaWNrcyB0byBwYXNzIHRocm91Z2ggZm9yIGN1c3RvbSBjbGljayBoYW5kbGluZyB0byBjbG9zZSBtb2RhbFxuICBwb2ludGVyLWV2ZW50czogbm9uZTtcblxuICAvLyBXaGVuIGZhZGluZyBpbiB0aGUgbW9kYWwsIGFuaW1hdGUgaXQgdG8gc2xpZGUgZG93blxuICAubW9kYWwuZmFkZSAmIHtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRtb2RhbC10cmFuc2l0aW9uKTtcbiAgICB0cmFuc2Zvcm06ICRtb2RhbC1mYWRlLXRyYW5zZm9ybTtcbiAgfVxuICAubW9kYWwuc2hvdyAmIHtcbiAgICB0cmFuc2Zvcm06ICRtb2RhbC1zaG93LXRyYW5zZm9ybTtcbiAgfVxuXG4gIC8vIFdoZW4gdHJ5aW5nIHRvIGNsb3NlLCBhbmltYXRlIGZvY3VzIHRvIHNjYWxlXG4gIC5tb2RhbC5tb2RhbC1zdGF0aWMgJiB7XG4gICAgdHJhbnNmb3JtOiAkbW9kYWwtc2NhbGUtdHJhbnNmb3JtO1xuICB9XG59XG5cbi5tb2RhbC1kaWFsb2ctc2Nyb2xsYWJsZSB7XG4gIGhlaWdodDogY2FsYygxMDAlIC0gdmFyKC0tI3skcHJlZml4fW1vZGFsLW1hcmdpbikgKiAyKTtcblxuICAubW9kYWwtY29udGVudCB7XG4gICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICB9XG5cbiAgLm1vZGFsLWJvZHkge1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gIH1cbn1cblxuLm1vZGFsLWRpYWxvZy1jZW50ZXJlZCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIG1pbi1oZWlnaHQ6IGNhbGMoMTAwJSAtIHZhcigtLSN7JHByZWZpeH1tb2RhbC1tYXJnaW4pICogMik7XG59XG5cbi8vIEFjdHVhbCBtb2RhbFxuLm1vZGFsLWNvbnRlbnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIHdpZHRoOiAxMDAlOyAvLyBFbnN1cmUgYC5tb2RhbC1jb250ZW50YCBleHRlbmRzIHRoZSBmdWxsIHdpZHRoIG9mIHRoZSBwYXJlbnQgYC5tb2RhbC1kaWFsb2dgXG4gIC8vIGNvdW50ZXJhY3QgdGhlIHBvaW50ZXItZXZlbnRzOiBub25lOyBpbiB0aGUgLm1vZGFsLWRpYWxvZ1xuICBjb2xvcjogdmFyKC0tI3skcHJlZml4fW1vZGFsLWNvbG9yKTtcbiAgcG9pbnRlci1ldmVudHM6IGF1dG87XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1tb2RhbC1iZyk7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlcjogdmFyKC0tI3skcHJlZml4fW1vZGFsLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tI3skcHJlZml4fW1vZGFsLWJvcmRlci1jb2xvcik7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXModmFyKC0tI3skcHJlZml4fW1vZGFsLWJvcmRlci1yYWRpdXMpKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdyh2YXIoLS0jeyRwcmVmaXh9bW9kYWwtYm94LXNoYWRvdykpO1xuICAvLyBSZW1vdmUgZm9jdXMgb3V0bGluZSBmcm9tIG9wZW5lZCBtb2RhbFxuICBvdXRsaW5lOiAwO1xufVxuXG4vLyBNb2RhbCBiYWNrZ3JvdW5kXG4ubW9kYWwtYmFja2Ryb3Age1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgbW9kYWwtYmFja2Ryb3AtY3NzLXZhcnNcbiAgLS0jeyRwcmVmaXh9YmFja2Ryb3AtemluZGV4OiAjeyR6aW5kZXgtbW9kYWwtYmFja2Ryb3B9O1xuICAtLSN7JHByZWZpeH1iYWNrZHJvcC1iZzogI3skbW9kYWwtYmFja2Ryb3AtYmd9O1xuICAtLSN7JHByZWZpeH1iYWNrZHJvcC1vcGFjaXR5OiAjeyRtb2RhbC1iYWNrZHJvcC1vcGFjaXR5fTtcbiAgLy8gc2Nzcy1kb2NzLWVuZCBtb2RhbC1iYWNrZHJvcC1jc3MtdmFyc1xuXG4gIEBpbmNsdWRlIG92ZXJsYXktYmFja2Ryb3AodmFyKC0tI3skcHJlZml4fWJhY2tkcm9wLXppbmRleCksIHZhcigtLSN7JHByZWZpeH1iYWNrZHJvcC1iZyksIHZhcigtLSN7JHByZWZpeH1iYWNrZHJvcC1vcGFjaXR5KSk7XG59XG5cbi8vIE1vZGFsIGhlYWRlclxuLy8gVG9wIHNlY3Rpb24gb2YgdGhlIG1vZGFsIHcvIHRpdGxlIGFuZCBkaXNtaXNzXG4ubW9kYWwtaGVhZGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1zaHJpbms6IDA7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgLy8gUHV0IG1vZGFsIGhlYWRlciBlbGVtZW50cyAodGl0bGUgYW5kIGRpc21pc3MpIG9uIG9wcG9zaXRlIGVuZHNcbiAgcGFkZGluZzogdmFyKC0tI3skcHJlZml4fW1vZGFsLWhlYWRlci1wYWRkaW5nKTtcbiAgYm9yZGVyLWJvdHRvbTogdmFyKC0tI3skcHJlZml4fW1vZGFsLWhlYWRlci1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLSN7JHByZWZpeH1tb2RhbC1oZWFkZXItYm9yZGVyLWNvbG9yKTtcbiAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXModmFyKC0tI3skcHJlZml4fW1vZGFsLWlubmVyLWJvcmRlci1yYWRpdXMpKTtcblxuICAuYnRuLWNsb3NlIHtcbiAgICBwYWRkaW5nOiBjYWxjKHZhcigtLSN7JHByZWZpeH1tb2RhbC1oZWFkZXItcGFkZGluZy15KSAqIC41KSBjYWxjKHZhcigtLSN7JHByZWZpeH1tb2RhbC1oZWFkZXItcGFkZGluZy14KSAqIC41KTtcbiAgICBtYXJnaW46IGNhbGMoLS41ICogdmFyKC0tI3skcHJlZml4fW1vZGFsLWhlYWRlci1wYWRkaW5nLXkpKSBjYWxjKC0uNSAqIHZhcigtLSN7JHByZWZpeH1tb2RhbC1oZWFkZXItcGFkZGluZy14KSkgY2FsYygtLjUgKiB2YXIoLS0jeyRwcmVmaXh9bW9kYWwtaGVhZGVyLXBhZGRpbmcteSkpIGF1dG87XG4gIH1cbn1cblxuLy8gVGl0bGUgdGV4dCB3aXRoaW4gaGVhZGVyXG4ubW9kYWwtdGl0bGUge1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBsaW5lLWhlaWdodDogdmFyKC0tI3skcHJlZml4fW1vZGFsLXRpdGxlLWxpbmUtaGVpZ2h0KTtcbn1cblxuLy8gTW9kYWwgYm9keVxuLy8gV2hlcmUgYWxsIG1vZGFsIGNvbnRlbnQgcmVzaWRlcyAoc2libGluZyBvZiAubW9kYWwtaGVhZGVyIGFuZCAubW9kYWwtZm9vdGVyKVxuLm1vZGFsLWJvZHkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIC8vIEVuYWJsZSBgZmxleC1ncm93OiAxYCBzbyB0aGF0IHRoZSBib2R5IHRha2UgdXAgYXMgbXVjaCBzcGFjZSBhcyBwb3NzaWJsZVxuICAvLyB3aGVuIHRoZXJlIHNob3VsZCBiZSBhIGZpeGVkIGhlaWdodCBvbiBgLm1vZGFsLWRpYWxvZ2AuXG4gIGZsZXg6IDEgMSBhdXRvO1xuICBwYWRkaW5nOiB2YXIoLS0jeyRwcmVmaXh9bW9kYWwtcGFkZGluZyk7XG59XG5cbi8vIEZvb3RlciAoZm9yIGFjdGlvbnMpXG4ubW9kYWwtZm9vdGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1zaHJpbms6IDA7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgLy8gdmVydGljYWxseSBjZW50ZXJcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDsgLy8gUmlnaHQgYWxpZ24gYnV0dG9ucyB3aXRoIGZsZXggcHJvcGVydHkgYmVjYXVzZSB0ZXh0LWFsaWduIGRvZXNuJ3Qgd29yayBvbiBmbGV4IGl0ZW1zXG4gIHBhZGRpbmc6IGNhbGModmFyKC0tI3skcHJlZml4fW1vZGFsLXBhZGRpbmcpIC0gdmFyKC0tI3skcHJlZml4fW1vZGFsLWZvb3Rlci1nYXApICogLjUpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9bW9kYWwtZm9vdGVyLWJnKTtcbiAgYm9yZGVyLXRvcDogdmFyKC0tI3skcHJlZml4fW1vZGFsLWZvb3Rlci1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLSN7JHByZWZpeH1tb2RhbC1mb290ZXItYm9yZGVyLWNvbG9yKTtcbiAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXModmFyKC0tI3skcHJlZml4fW1vZGFsLWlubmVyLWJvcmRlci1yYWRpdXMpKTtcblxuICAvLyBQbGFjZSBtYXJnaW4gYmV0d2VlbiBmb290ZXIgZWxlbWVudHNcbiAgLy8gVGhpcyBzb2x1dGlvbiBpcyBmYXIgZnJvbSBpZGVhbCBiZWNhdXNlIG9mIHRoZSB1bml2ZXJzYWwgc2VsZWN0b3IgdXNhZ2UsXG4gIC8vIGJ1dCBpcyBuZWVkZWQgdG8gZml4IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjQ4MDBcbiAgPiAqIHtcbiAgICBtYXJnaW46IGNhbGModmFyKC0tI3skcHJlZml4fW1vZGFsLWZvb3Rlci1nYXApICogLjUpOyAvLyBUb2RvIGluIHY2OiByZXBsYWNlIHdpdGggZ2FwIG9uIHBhcmVudCBjbGFzc1xuICB9XG59XG5cbi8vIFNjYWxlIHVwIHRoZSBtb2RhbFxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xuICAubW9kYWwge1xuICAgIC0tI3skcHJlZml4fW1vZGFsLW1hcmdpbjogI3skbW9kYWwtZGlhbG9nLW1hcmdpbi15LXNtLXVwfTtcbiAgICAtLSN7JHByZWZpeH1tb2RhbC1ib3gtc2hhZG93OiAjeyRtb2RhbC1jb250ZW50LWJveC1zaGFkb3ctc20tdXB9O1xuICB9XG5cbiAgLy8gQXV0b21hdGljYWxseSBzZXQgbW9kYWwncyB3aWR0aCBmb3IgbGFyZ2VyIHZpZXdwb3J0c1xuICAubW9kYWwtZGlhbG9nIHtcbiAgICBtYXgtd2lkdGg6IHZhcigtLSN7JHByZWZpeH1tb2RhbC13aWR0aCk7XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICB9XG5cbiAgLm1vZGFsLXNtIHtcbiAgICAtLSN7JHByZWZpeH1tb2RhbC13aWR0aDogI3skbW9kYWwtc219O1xuICB9XG59XG5cbkBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcbiAgLm1vZGFsLWxnLFxuICAubW9kYWwteGwge1xuICAgIC0tI3skcHJlZml4fW1vZGFsLXdpZHRoOiAjeyRtb2RhbC1sZ307XG4gIH1cbn1cblxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCh4bCkge1xuICAubW9kYWwteGwge1xuICAgIC0tI3skcHJlZml4fW1vZGFsLXdpZHRoOiAjeyRtb2RhbC14bH07XG4gIH1cbn1cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IG1vZGFsLWZ1bGxzY3JlZW4tbG9vcFxuQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLWtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJGluZml4OiBicmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG4gICRwb3N0Zml4OiBpZigkaW5maXggIT0gXCJcIiwgJGluZml4ICsgXCItZG93blwiLCBcIlwiKTtcblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24oJGJyZWFrcG9pbnQpIHtcbiAgICAubW9kYWwtZnVsbHNjcmVlbiN7JHBvc3RmaXh9IHtcbiAgICAgIHdpZHRoOiAxMDB2dztcbiAgICAgIG1heC13aWR0aDogbm9uZTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIG1hcmdpbjogMDtcblxuICAgICAgLm1vZGFsLWNvbnRlbnQge1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwKTtcbiAgICAgIH1cblxuICAgICAgLm1vZGFsLWhlYWRlcixcbiAgICAgIC5tb2RhbC1mb290ZXIge1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDApO1xuICAgICAgfVxuXG4gICAgICAubW9kYWwtYm9keSB7XG4gICAgICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4vLyBzY3NzLWRvY3MtZW5kIG1vZGFsLWZ1bGxzY3JlZW4tbG9vcFxuIiwiLy8gU2hhcmVkIGJldHdlZW4gbW9kYWxzIGFuZCBvZmZjYW52YXNlc1xuQG1peGluIG92ZXJsYXktYmFja2Ryb3AoJHppbmRleCwgJGJhY2tkcm9wLWJnLCAkYmFja2Ryb3Atb3BhY2l0eSkge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleDtcbiAgd2lkdGg6IDEwMHZ3O1xuICBoZWlnaHQ6IDEwMHZoO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2Ryb3AtYmc7XG5cbiAgLy8gRmFkZSBmb3IgYmFja2Ryb3BcbiAgJi5mYWRlIHsgb3BhY2l0eTogMDsgfVxuICAmLnNob3cgeyBvcGFjaXR5OiAkYmFja2Ryb3Atb3BhY2l0eTsgfVxufVxuIiwiLy8gQmFzZSBjbGFzc1xuLnRvb2x0aXAge1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgdG9vbHRpcC1jc3MtdmFyc1xuICAtLSN7JHByZWZpeH10b29sdGlwLXppbmRleDogI3skemluZGV4LXRvb2x0aXB9O1xuICAtLSN7JHByZWZpeH10b29sdGlwLW1heC13aWR0aDogI3skdG9vbHRpcC1tYXgtd2lkdGh9O1xuICAtLSN7JHByZWZpeH10b29sdGlwLXBhZGRpbmcteDogI3skdG9vbHRpcC1wYWRkaW5nLXh9O1xuICAtLSN7JHByZWZpeH10b29sdGlwLXBhZGRpbmcteTogI3skdG9vbHRpcC1wYWRkaW5nLXl9O1xuICAtLSN7JHByZWZpeH10b29sdGlwLW1hcmdpbjogI3skdG9vbHRpcC1tYXJnaW59O1xuICBAaW5jbHVkZSByZnMoJHRvb2x0aXAtZm9udC1zaXplLCAtLSN7JHByZWZpeH10b29sdGlwLWZvbnQtc2l6ZSk7XG4gIC0tI3skcHJlZml4fXRvb2x0aXAtY29sb3I6ICN7JHRvb2x0aXAtY29sb3J9O1xuICAtLSN7JHByZWZpeH10b29sdGlwLWJnOiAjeyR0b29sdGlwLWJnfTtcbiAgLS0jeyRwcmVmaXh9dG9vbHRpcC1ib3JkZXItcmFkaXVzOiAjeyR0b29sdGlwLWJvcmRlci1yYWRpdXN9O1xuICAtLSN7JHByZWZpeH10b29sdGlwLW9wYWNpdHk6ICN7JHRvb2x0aXAtb3BhY2l0eX07XG4gIC0tI3skcHJlZml4fXRvb2x0aXAtYXJyb3ctd2lkdGg6ICN7JHRvb2x0aXAtYXJyb3ctd2lkdGh9O1xuICAtLSN7JHByZWZpeH10b29sdGlwLWFycm93LWhlaWdodDogI3skdG9vbHRpcC1hcnJvdy1oZWlnaHR9O1xuICAvLyBzY3NzLWRvY3MtZW5kIHRvb2x0aXAtY3NzLXZhcnNcblxuICB6LWluZGV4OiB2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC16aW5kZXgpO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiB2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC1tYXJnaW4pO1xuICBAaW5jbHVkZSBkZXByZWNhdGUoXCJgJHRvb2x0aXAtbWFyZ2luYFwiLCBcInY1XCIsIFwidjUueFwiLCB0cnVlKTtcbiAgLy8gT3VyIHBhcmVudCBlbGVtZW50IGNhbiBiZSBhcmJpdHJhcnkgc2luY2UgdG9vbHRpcHMgYXJlIGJ5IGRlZmF1bHQgaW5zZXJ0ZWQgYXMgYSBzaWJsaW5nIG9mIHRoZWlyIHRhcmdldCBlbGVtZW50LlxuICAvLyBTbyByZXNldCBvdXIgZm9udCBhbmQgdGV4dCBwcm9wZXJ0aWVzIHRvIGF2b2lkIGluaGVyaXRpbmcgd2VpcmQgdmFsdWVzLlxuICBAaW5jbHVkZSByZXNldC10ZXh0KCk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSh2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC1mb250LXNpemUpKTtcbiAgLy8gQWxsb3cgYnJlYWtpbmcgdmVyeSBsb25nIHdvcmRzIHNvIHRoZXkgZG9uJ3Qgb3ZlcmZsb3cgdGhlIHRvb2x0aXAncyBib3VuZHNcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICBvcGFjaXR5OiAwO1xuXG4gICYuc2hvdyB7IG9wYWNpdHk6IHZhcigtLSN7JHByZWZpeH10b29sdGlwLW9wYWNpdHkpOyB9XG5cbiAgLnRvb2x0aXAtYXJyb3cge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiB2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC1hcnJvdy13aWR0aCk7XG4gICAgaGVpZ2h0OiB2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC1hcnJvdy1oZWlnaHQpO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICB9XG4gIH1cbn1cblxuLmJzLXRvb2x0aXAtdG9wIC50b29sdGlwLWFycm93IHtcbiAgYm90dG9tOiBjYWxjKC0xICogdmFyKC0tI3skcHJlZml4fXRvb2x0aXAtYXJyb3ctaGVpZ2h0KSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG5cbiAgJjo6YmVmb3JlIHtcbiAgICB0b3A6IC0xcHg7XG4gICAgYm9yZGVyLXdpZHRoOiB2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC1hcnJvdy1oZWlnaHQpIGNhbGModmFyKC0tI3skcHJlZml4fXRvb2x0aXAtYXJyb3ctd2lkdGgpICogLjUpIDA7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogdmFyKC0tI3skcHJlZml4fXRvb2x0aXAtYmcpO1xuICB9XG59XG5cbi8qIHJ0bDpiZWdpbjppZ25vcmUgKi9cbi5icy10b29sdGlwLWVuZCAudG9vbHRpcC1hcnJvdyB7XG4gIGxlZnQ6IGNhbGMoLTEgKiB2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC1hcnJvdy1oZWlnaHQpKTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgd2lkdGg6IHZhcigtLSN7JHByZWZpeH10b29sdGlwLWFycm93LWhlaWdodCk7XG4gIGhlaWdodDogdmFyKC0tI3skcHJlZml4fXRvb2x0aXAtYXJyb3ctd2lkdGgpO1xuXG4gICY6OmJlZm9yZSB7XG4gICAgcmlnaHQ6IC0xcHg7XG4gICAgYm9yZGVyLXdpZHRoOiBjYWxjKHZhcigtLSN7JHByZWZpeH10b29sdGlwLWFycm93LXdpZHRoKSAqIC41KSB2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC1hcnJvdy1oZWlnaHQpIGNhbGModmFyKC0tI3skcHJlZml4fXRvb2x0aXAtYXJyb3ctd2lkdGgpICogLjUpIDA7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC1iZyk7XG4gIH1cbn1cblxuLyogcnRsOmVuZDppZ25vcmUgKi9cblxuLmJzLXRvb2x0aXAtYm90dG9tIC50b29sdGlwLWFycm93IHtcbiAgdG9wOiBjYWxjKC0xICogdmFyKC0tI3skcHJlZml4fXRvb2x0aXAtYXJyb3ctaGVpZ2h0KSk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG5cbiAgJjo6YmVmb3JlIHtcbiAgICBib3R0b206IC0xcHg7XG4gICAgYm9yZGVyLXdpZHRoOiAwIGNhbGModmFyKC0tI3skcHJlZml4fXRvb2x0aXAtYXJyb3ctd2lkdGgpICogLjUpIHZhcigtLSN7JHByZWZpeH10b29sdGlwLWFycm93LWhlaWdodCk7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZnVuY3Rpb24tZGlzYWxsb3dlZC1saXN0XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdmFyKC0tI3skcHJlZml4fXRvb2x0aXAtYmcpO1xuICB9XG59XG5cbi8qIHJ0bDpiZWdpbjppZ25vcmUgKi9cbi5icy10b29sdGlwLXN0YXJ0IC50b29sdGlwLWFycm93IHtcbiAgcmlnaHQ6IGNhbGMoLTEgKiB2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC1hcnJvdy1oZWlnaHQpKTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgd2lkdGg6IHZhcigtLSN7JHByZWZpeH10b29sdGlwLWFycm93LWhlaWdodCk7XG4gIGhlaWdodDogdmFyKC0tI3skcHJlZml4fXRvb2x0aXAtYXJyb3ctd2lkdGgpO1xuXG4gICY6OmJlZm9yZSB7XG4gICAgbGVmdDogLTFweDtcbiAgICBib3JkZXItd2lkdGg6IGNhbGModmFyKC0tI3skcHJlZml4fXRvb2x0aXAtYXJyb3ctd2lkdGgpICogLjUpIDAgY2FsYyh2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC1hcnJvdy13aWR0aCkgKiAuNSkgdmFyKC0tI3skcHJlZml4fXRvb2x0aXAtYXJyb3ctaGVpZ2h0KTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgICBib3JkZXItbGVmdC1jb2xvcjogdmFyKC0tI3skcHJlZml4fXRvb2x0aXAtYmcpO1xuICB9XG59XG5cbi8qIHJ0bDplbmQ6aWdub3JlICovXG5cbi5icy10b29sdGlwLWF1dG8ge1xuICAmW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49XCJ0b3BcIl0ge1xuICAgIEBleHRlbmQgLmJzLXRvb2x0aXAtdG9wO1xuICB9XG4gICZbZGF0YS1wb3BwZXItcGxhY2VtZW50Xj1cInJpZ2h0XCJdIHtcbiAgICBAZXh0ZW5kIC5icy10b29sdGlwLWVuZDtcbiAgfVxuICAmW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49XCJib3R0b21cIl0ge1xuICAgIEBleHRlbmQgLmJzLXRvb2x0aXAtYm90dG9tO1xuICB9XG4gICZbZGF0YS1wb3BwZXItcGxhY2VtZW50Xj1cImxlZnRcIl0ge1xuICAgIEBleHRlbmQgLmJzLXRvb2x0aXAtc3RhcnQ7XG4gIH1cbn1cblxuLy8gV3JhcHBlciBmb3IgdGhlIHRvb2x0aXAgY29udGVudFxuLnRvb2x0aXAtaW5uZXIge1xuICBtYXgtd2lkdGg6IHZhcigtLSN7JHByZWZpeH10b29sdGlwLW1heC13aWR0aCk7XG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH10b29sdGlwLXBhZGRpbmcteSkgdmFyKC0tI3skcHJlZml4fXRvb2x0aXAtcGFkZGluZy14KTtcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH10b29sdGlwLWNvbG9yKTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9dG9vbHRpcC1iZyk7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXModmFyKC0tI3skcHJlZml4fXRvb2x0aXAtYm9yZGVyLXJhZGl1cykpO1xufVxuIiwiQG1peGluIHJlc2V0LXRleHQge1xuICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LWJhc2U7XG4gIC8vIFdlIGRlbGliZXJhdGVseSBkbyBOT1QgcmVzZXQgZm9udC1zaXplIG9yIG92ZXJmbG93LXdyYXAgLyB3b3JkLXdyYXAuXG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtYmFzZTtcbiAgdGV4dC1hbGlnbjogbGVmdDsgLy8gRmFsbGJhY2sgZm9yIHdoZXJlIGBzdGFydGAgaXMgbm90IHN1cHBvcnRlZFxuICB0ZXh0LWFsaWduOiBzdGFydDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIGxldHRlci1zcGFjaW5nOiBub3JtYWw7XG4gIHdvcmQtYnJlYWs6IG5vcm1hbDtcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgd29yZC1zcGFjaW5nOiBub3JtYWw7XG4gIGxpbmUtYnJlYWs6IGF1dG87XG59XG4iLCIucG9wb3ZlciB7XG4gIC8vIHNjc3MtZG9jcy1zdGFydCBwb3BvdmVyLWNzcy12YXJzXG4gIC0tI3skcHJlZml4fXBvcG92ZXItemluZGV4OiAjeyR6aW5kZXgtcG9wb3Zlcn07XG4gIC0tI3skcHJlZml4fXBvcG92ZXItbWF4LXdpZHRoOiAjeyRwb3BvdmVyLW1heC13aWR0aH07XG4gIEBpbmNsdWRlIHJmcygkcG9wb3Zlci1mb250LXNpemUsIC0tI3skcHJlZml4fXBvcG92ZXItZm9udC1zaXplKTtcbiAgLS0jeyRwcmVmaXh9cG9wb3Zlci1iZzogI3skcG9wb3Zlci1iZ307XG4gIC0tI3skcHJlZml4fXBvcG92ZXItYm9yZGVyLXdpZHRoOiAjeyRwb3BvdmVyLWJvcmRlci13aWR0aH07XG4gIC0tI3skcHJlZml4fXBvcG92ZXItYm9yZGVyLWNvbG9yOiAjeyRwb3BvdmVyLWJvcmRlci1jb2xvcn07XG4gIC0tI3skcHJlZml4fXBvcG92ZXItYm9yZGVyLXJhZGl1czogI3skcG9wb3Zlci1ib3JkZXItcmFkaXVzfTtcbiAgLS0jeyRwcmVmaXh9cG9wb3Zlci1pbm5lci1ib3JkZXItcmFkaXVzOiAjeyRwb3BvdmVyLWlubmVyLWJvcmRlci1yYWRpdXN9O1xuICAtLSN7JHByZWZpeH1wb3BvdmVyLWJveC1zaGFkb3c6ICN7JHBvcG92ZXItYm94LXNoYWRvd307XG4gIC0tI3skcHJlZml4fXBvcG92ZXItaGVhZGVyLXBhZGRpbmcteDogI3skcG9wb3Zlci1oZWFkZXItcGFkZGluZy14fTtcbiAgLS0jeyRwcmVmaXh9cG9wb3Zlci1oZWFkZXItcGFkZGluZy15OiAjeyRwb3BvdmVyLWhlYWRlci1wYWRkaW5nLXl9O1xuICBAaW5jbHVkZSByZnMoJHBvcG92ZXItaGVhZGVyLWZvbnQtc2l6ZSwgLS0jeyRwcmVmaXh9cG9wb3Zlci1oZWFkZXItZm9udC1zaXplKTtcbiAgLS0jeyRwcmVmaXh9cG9wb3Zlci1oZWFkZXItY29sb3I6ICN7JHBvcG92ZXItaGVhZGVyLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9cG9wb3Zlci1oZWFkZXItYmc6ICN7JHBvcG92ZXItaGVhZGVyLWJnfTtcbiAgLS0jeyRwcmVmaXh9cG9wb3Zlci1ib2R5LXBhZGRpbmcteDogI3skcG9wb3Zlci1ib2R5LXBhZGRpbmcteH07XG4gIC0tI3skcHJlZml4fXBvcG92ZXItYm9keS1wYWRkaW5nLXk6ICN7JHBvcG92ZXItYm9keS1wYWRkaW5nLXl9O1xuICAtLSN7JHByZWZpeH1wb3BvdmVyLWJvZHktY29sb3I6ICN7JHBvcG92ZXItYm9keS1jb2xvcn07XG4gIC0tI3skcHJlZml4fXBvcG92ZXItYXJyb3ctd2lkdGg6ICN7JHBvcG92ZXItYXJyb3ctd2lkdGh9O1xuICAtLSN7JHByZWZpeH1wb3BvdmVyLWFycm93LWhlaWdodDogI3skcG9wb3Zlci1hcnJvdy1oZWlnaHR9O1xuICAtLSN7JHByZWZpeH1wb3BvdmVyLWFycm93LWJvcmRlcjogdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYm9yZGVyLWNvbG9yKTtcbiAgLy8gc2Nzcy1kb2NzLWVuZCBwb3BvdmVyLWNzcy12YXJzXG5cbiAgei1pbmRleDogdmFyKC0tI3skcHJlZml4fXBvcG92ZXItemluZGV4KTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1heC13aWR0aDogdmFyKC0tI3skcHJlZml4fXBvcG92ZXItbWF4LXdpZHRoKTtcbiAgLy8gT3VyIHBhcmVudCBlbGVtZW50IGNhbiBiZSBhcmJpdHJhcnkgc2luY2UgdG9vbHRpcHMgYXJlIGJ5IGRlZmF1bHQgaW5zZXJ0ZWQgYXMgYSBzaWJsaW5nIG9mIHRoZWlyIHRhcmdldCBlbGVtZW50LlxuICAvLyBTbyByZXNldCBvdXIgZm9udCBhbmQgdGV4dCBwcm9wZXJ0aWVzIHRvIGF2b2lkIGluaGVyaXRpbmcgd2VpcmQgdmFsdWVzLlxuICBAaW5jbHVkZSByZXNldC10ZXh0KCk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSh2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1mb250LXNpemUpKTtcbiAgLy8gQWxsb3cgYnJlYWtpbmcgdmVyeSBsb25nIHdvcmRzIHNvIHRoZXkgZG9uJ3Qgb3ZlcmZsb3cgdGhlIHBvcG92ZXIncyBib3VuZHNcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1iZyk7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlcjogdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1ib3JkZXItY29sb3IpO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWJvcmRlci1yYWRpdXMpKTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdyh2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1ib3gtc2hhZG93KSk7XG5cbiAgLnBvcG92ZXItYXJyb3cge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1hcnJvdy13aWR0aCk7XG4gICAgaGVpZ2h0OiB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1hcnJvdy1oZWlnaHQpO1xuXG4gICAgJjo6YmVmb3JlLFxuICAgICY6OmFmdGVyIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgICAgYm9yZGVyLXdpZHRoOiAwO1xuICAgIH1cbiAgfVxufVxuXG4uYnMtcG9wb3Zlci10b3Age1xuICA+IC5wb3BvdmVyLWFycm93IHtcbiAgICBib3R0b206IGNhbGMoLTEgKiAodmFyKC0tI3skcHJlZml4fXBvcG92ZXItYXJyb3ctaGVpZ2h0KSkgLSB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1ib3JkZXItd2lkdGgpKTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcblxuICAgICY6OmJlZm9yZSxcbiAgICAmOjphZnRlciB7XG4gICAgICBib3JkZXItd2lkdGg6IHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWFycm93LWhlaWdodCkgY2FsYyh2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1hcnJvdy13aWR0aCkgKiAuNSkgMDsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgICB9XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgYm9yZGVyLXRvcC1jb2xvcjogdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYXJyb3ctYm9yZGVyKTtcbiAgICB9XG5cbiAgICAmOjphZnRlciB7XG4gICAgICBib3R0b206IHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWJvcmRlci13aWR0aCk7XG4gICAgICBib3JkZXItdG9wLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1iZyk7XG4gICAgfVxuICB9XG59XG5cbi8qIHJ0bDpiZWdpbjppZ25vcmUgKi9cbi5icy1wb3BvdmVyLWVuZCB7XG4gID4gLnBvcG92ZXItYXJyb3cge1xuICAgIGxlZnQ6IGNhbGMoLTEgKiAodmFyKC0tI3skcHJlZml4fXBvcG92ZXItYXJyb3ctaGVpZ2h0KSkgLSB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1ib3JkZXItd2lkdGgpKTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgICB3aWR0aDogdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYXJyb3ctaGVpZ2h0KTtcbiAgICBoZWlnaHQ6IHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWFycm93LXdpZHRoKTtcblxuICAgICY6OmJlZm9yZSxcbiAgICAmOjphZnRlciB7XG4gICAgICBib3JkZXItd2lkdGg6IGNhbGModmFyKC0tI3skcHJlZml4fXBvcG92ZXItYXJyb3ctd2lkdGgpICogLjUpIHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWFycm93LWhlaWdodCkgY2FsYyh2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1hcnJvdy13aWR0aCkgKiAuNSkgMDsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgICB9XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgbGVmdDogMDtcbiAgICAgIGJvcmRlci1yaWdodC1jb2xvcjogdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYXJyb3ctYm9yZGVyKTtcbiAgICB9XG5cbiAgICAmOjphZnRlciB7XG4gICAgICBsZWZ0OiB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1ib3JkZXItd2lkdGgpO1xuICAgICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1iZyk7XG4gICAgfVxuICB9XG59XG5cbi8qIHJ0bDplbmQ6aWdub3JlICovXG5cbi5icy1wb3BvdmVyLWJvdHRvbSB7XG4gID4gLnBvcG92ZXItYXJyb3cge1xuICAgIHRvcDogY2FsYygtMSAqICh2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1hcnJvdy1oZWlnaHQpKSAtIHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWJvcmRlci13aWR0aCkpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuXG4gICAgJjo6YmVmb3JlLFxuICAgICY6OmFmdGVyIHtcbiAgICAgIGJvcmRlci13aWR0aDogMCBjYWxjKHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWFycm93LXdpZHRoKSAqIC41KSB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1hcnJvdy1oZWlnaHQpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICAgIH1cblxuICAgICY6OmJlZm9yZSB7XG4gICAgICB0b3A6IDA7XG4gICAgICBib3JkZXItYm90dG9tLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1hcnJvdy1ib3JkZXIpO1xuICAgIH1cblxuICAgICY6OmFmdGVyIHtcbiAgICAgIHRvcDogdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYm9yZGVyLXdpZHRoKTtcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWJnKTtcbiAgICB9XG4gIH1cblxuICAvLyBUaGlzIHdpbGwgcmVtb3ZlIHRoZSBwb3BvdmVyLWhlYWRlcidzIGJvcmRlciBqdXN0IGJlbG93IHRoZSBhcnJvd1xuICAucG9wb3Zlci1oZWFkZXI6OmJlZm9yZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiA1MCU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWFycm93LXdpZHRoKTtcbiAgICBtYXJnaW4tbGVmdDogY2FsYygtLjUgKiB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1hcnJvdy13aWR0aCkpOyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGZ1bmN0aW9uLWRpc2FsbG93ZWQtbGlzdFxuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgYm9yZGVyLWJvdHRvbTogdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1oZWFkZXItYmcpO1xuICB9XG59XG5cbi8qIHJ0bDpiZWdpbjppZ25vcmUgKi9cbi5icy1wb3BvdmVyLXN0YXJ0IHtcbiAgPiAucG9wb3Zlci1hcnJvdyB7XG4gICAgcmlnaHQ6IGNhbGMoLTEgKiAodmFyKC0tI3skcHJlZml4fXBvcG92ZXItYXJyb3ctaGVpZ2h0KSkgLSB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1ib3JkZXItd2lkdGgpKTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgICB3aWR0aDogdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYXJyb3ctaGVpZ2h0KTtcbiAgICBoZWlnaHQ6IHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWFycm93LXdpZHRoKTtcblxuICAgICY6OmJlZm9yZSxcbiAgICAmOjphZnRlciB7XG4gICAgICBib3JkZXItd2lkdGg6IGNhbGModmFyKC0tI3skcHJlZml4fXBvcG92ZXItYXJyb3ctd2lkdGgpICogLjUpIDAgY2FsYyh2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1hcnJvdy13aWR0aCkgKiAuNSkgdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYXJyb3ctaGVpZ2h0KTsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcbiAgICB9XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBib3JkZXItbGVmdC1jb2xvcjogdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYXJyb3ctYm9yZGVyKTtcbiAgICB9XG5cbiAgICAmOjphZnRlciB7XG4gICAgICByaWdodDogdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYm9yZGVyLXdpZHRoKTtcbiAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1iZyk7XG4gICAgfVxuICB9XG59XG5cbi8qIHJ0bDplbmQ6aWdub3JlICovXG5cbi5icy1wb3BvdmVyLWF1dG8ge1xuICAmW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49XCJ0b3BcIl0ge1xuICAgIEBleHRlbmQgLmJzLXBvcG92ZXItdG9wO1xuICB9XG4gICZbZGF0YS1wb3BwZXItcGxhY2VtZW50Xj1cInJpZ2h0XCJdIHtcbiAgICBAZXh0ZW5kIC5icy1wb3BvdmVyLWVuZDtcbiAgfVxuICAmW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49XCJib3R0b21cIl0ge1xuICAgIEBleHRlbmQgLmJzLXBvcG92ZXItYm90dG9tO1xuICB9XG4gICZbZGF0YS1wb3BwZXItcGxhY2VtZW50Xj1cImxlZnRcIl0ge1xuICAgIEBleHRlbmQgLmJzLXBvcG92ZXItc3RhcnQ7XG4gIH1cbn1cblxuLy8gT2Zmc2V0IHRoZSBwb3BvdmVyIHRvIGFjY291bnQgZm9yIHRoZSBwb3BvdmVyIGFycm93XG4ucG9wb3Zlci1oZWFkZXIge1xuICBwYWRkaW5nOiB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1oZWFkZXItcGFkZGluZy15KSB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1oZWFkZXItcGFkZGluZy14KTtcbiAgbWFyZ2luLWJvdHRvbTogMDsgLy8gUmVzZXQgdGhlIGRlZmF1bHQgZnJvbSBSZWJvb3RcbiAgQGluY2x1ZGUgZm9udC1zaXplKHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWhlYWRlci1mb250LXNpemUpKTtcbiAgY29sb3I6IHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWhlYWRlci1jb2xvcik7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWhlYWRlci1iZyk7XG4gIGJvcmRlci1ib3R0b206IHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tI3skcHJlZml4fXBvcG92ZXItYm9yZGVyLWNvbG9yKTtcbiAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXModmFyKC0tI3skcHJlZml4fXBvcG92ZXItaW5uZXItYm9yZGVyLXJhZGl1cykpO1xuXG4gICY6ZW1wdHkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLnBvcG92ZXItYm9keSB7XG4gIHBhZGRpbmc6IHZhcigtLSN7JHByZWZpeH1wb3BvdmVyLWJvZHktcGFkZGluZy15KSB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1ib2R5LXBhZGRpbmcteCk7XG4gIGNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9cG9wb3Zlci1ib2R5LWNvbG9yKTtcbn1cbiIsIi8vIE5vdGVzIG9uIHRoZSBjbGFzc2VzOlxuLy9cbi8vIDEuIC5jYXJvdXNlbC5wb2ludGVyLWV2ZW50IHNob3VsZCBpZGVhbGx5IGJlIHBhbi15ICh0byBhbGxvdyBmb3IgdXNlcnMgdG8gc2Nyb2xsIHZlcnRpY2FsbHkpXG4vLyAgICBldmVuIHdoZW4gdGhlaXIgc2Nyb2xsIGFjdGlvbiBzdGFydGVkIG9uIGEgY2Fyb3VzZWwsIGJ1dCBmb3IgY29tcGF0aWJpbGl0eSAod2l0aCBGaXJlZm94KVxuLy8gICAgd2UncmUgcHJldmVudGluZyBhbGwgYWN0aW9ucyBpbnN0ZWFkXG4vLyAyLiBUaGUgLmNhcm91c2VsLWl0ZW0tc3RhcnQgYW5kIC5jYXJvdXNlbC1pdGVtLWVuZCBpcyB1c2VkIHRvIGluZGljYXRlIHdoZXJlXG4vLyAgICB0aGUgYWN0aXZlIHNsaWRlIGlzIGhlYWRpbmcuXG4vLyAzLiAuYWN0aXZlLmNhcm91c2VsLWl0ZW0gaXMgdGhlIGN1cnJlbnQgc2xpZGUuXG4vLyA0LiAuYWN0aXZlLmNhcm91c2VsLWl0ZW0tc3RhcnQgYW5kIC5hY3RpdmUuY2Fyb3VzZWwtaXRlbS1lbmQgaXMgdGhlIGN1cnJlbnRcbi8vICAgIHNsaWRlIGluIGl0cyBpbi10cmFuc2l0aW9uIHN0YXRlLiBPbmx5IG9uZSBvZiB0aGVzZSBvY2N1cnMgYXQgYSB0aW1lLlxuLy8gNS4gLmNhcm91c2VsLWl0ZW0tbmV4dC5jYXJvdXNlbC1pdGVtLXN0YXJ0IGFuZCAuY2Fyb3VzZWwtaXRlbS1wcmV2LmNhcm91c2VsLWl0ZW0tZW5kXG4vLyAgICBpcyB0aGUgdXBjb21pbmcgc2xpZGUgaW4gdHJhbnNpdGlvbi5cblxuLmNhcm91c2VsIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uY2Fyb3VzZWwucG9pbnRlci1ldmVudCB7XG4gIHRvdWNoLWFjdGlvbjogcGFuLXk7XG59XG5cbi5jYXJvdXNlbC1pbm5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIEBpbmNsdWRlIGNsZWFyZml4KCk7XG59XG5cbi5jYXJvdXNlbC1pdGVtIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBub25lO1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1yaWdodDogLTEwMCU7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkY2Fyb3VzZWwtdHJhbnNpdGlvbik7XG59XG5cbi5jYXJvdXNlbC1pdGVtLmFjdGl2ZSxcbi5jYXJvdXNlbC1pdGVtLW5leHQsXG4uY2Fyb3VzZWwtaXRlbS1wcmV2IHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5jYXJvdXNlbC1pdGVtLW5leHQ6bm90KC5jYXJvdXNlbC1pdGVtLXN0YXJ0KSxcbi5hY3RpdmUuY2Fyb3VzZWwtaXRlbS1lbmQge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSk7XG59XG5cbi5jYXJvdXNlbC1pdGVtLXByZXY6bm90KC5jYXJvdXNlbC1pdGVtLWVuZCksXG4uYWN0aXZlLmNhcm91c2VsLWl0ZW0tc3RhcnQge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpO1xufVxuXG5cbi8vXG4vLyBBbHRlcm5hdGUgdHJhbnNpdGlvbnNcbi8vXG5cbi5jYXJvdXNlbC1mYWRlIHtcbiAgLmNhcm91c2VsLWl0ZW0ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eTtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gIH1cblxuICAuY2Fyb3VzZWwtaXRlbS5hY3RpdmUsXG4gIC5jYXJvdXNlbC1pdGVtLW5leHQuY2Fyb3VzZWwtaXRlbS1zdGFydCxcbiAgLmNhcm91c2VsLWl0ZW0tcHJldi5jYXJvdXNlbC1pdGVtLWVuZCB7XG4gICAgei1pbmRleDogMTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgLmFjdGl2ZS5jYXJvdXNlbC1pdGVtLXN0YXJ0LFxuICAuYWN0aXZlLmNhcm91c2VsLWl0ZW0tZW5kIHtcbiAgICB6LWluZGV4OiAwO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbihvcGFjaXR5IDBzICRjYXJvdXNlbC10cmFuc2l0aW9uLWR1cmF0aW9uKTtcbiAgfVxufVxuXG5cbi8vXG4vLyBMZWZ0L3JpZ2h0IGNvbnRyb2xzIGZvciBuYXZcbi8vXG5cbi5jYXJvdXNlbC1jb250cm9sLXByZXYsXG4uY2Fyb3VzZWwtY29udHJvbC1uZXh0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGJvdHRvbTogMDtcbiAgei1pbmRleDogMTtcbiAgLy8gVXNlIGZsZXggZm9yIGFsaWdubWVudCAoMS0zKVxuICBkaXNwbGF5OiBmbGV4OyAvLyAxLiBhbGxvdyBmbGV4IHN0eWxlc1xuICBhbGlnbi1pdGVtczogY2VudGVyOyAvLyAyLiB2ZXJ0aWNhbGx5IGNlbnRlciBjb250ZW50c1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgLy8gMy4gaG9yaXpvbnRhbGx5IGNlbnRlciBjb250ZW50c1xuICB3aWR0aDogJGNhcm91c2VsLWNvbnRyb2wtd2lkdGg7XG4gIHBhZGRpbmc6IDA7XG4gIGNvbG9yOiAkY2Fyb3VzZWwtY29udHJvbC1jb2xvcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBib3JkZXI6IDA7XG4gIG9wYWNpdHk6ICRjYXJvdXNlbC1jb250cm9sLW9wYWNpdHk7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJGNhcm91c2VsLWNvbnRyb2wtdHJhbnNpdGlvbik7XG5cbiAgLy8gSG92ZXIvZm9jdXMgc3RhdGVcbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgY29sb3I6ICRjYXJvdXNlbC1jb250cm9sLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBvdXRsaW5lOiAwO1xuICAgIG9wYWNpdHk6ICRjYXJvdXNlbC1jb250cm9sLWhvdmVyLW9wYWNpdHk7XG4gIH1cbn1cbi5jYXJvdXNlbC1jb250cm9sLXByZXYge1xuICBsZWZ0OiAwO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBpZigkZW5hYmxlLWdyYWRpZW50cywgbGluZWFyLWdyYWRpZW50KDkwZGVnLCByZ2JhKCRibGFjaywgLjI1KSwgcmdiYSgkYmxhY2ssIC4wMDEpKSwgbnVsbCk7XG59XG4uY2Fyb3VzZWwtY29udHJvbC1uZXh0IHtcbiAgcmlnaHQ6IDA7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGlmKCRlbmFibGUtZ3JhZGllbnRzLCBsaW5lYXItZ3JhZGllbnQoMjcwZGVnLCByZ2JhKCRibGFjaywgLjI1KSwgcmdiYSgkYmxhY2ssIC4wMDEpKSwgbnVsbCk7XG59XG5cbi8vIEljb25zIGZvciB3aXRoaW5cbi5jYXJvdXNlbC1jb250cm9sLXByZXYtaWNvbixcbi5jYXJvdXNlbC1jb250cm9sLW5leHQtaWNvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6ICRjYXJvdXNlbC1jb250cm9sLWljb24td2lkdGg7XG4gIGhlaWdodDogJGNhcm91c2VsLWNvbnRyb2wtaWNvbi13aWR0aDtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTAlO1xuICBiYWNrZ3JvdW5kLXNpemU6IDEwMCUgMTAwJTtcbn1cblxuLyogcnRsOm9wdGlvbnM6IHtcbiAgXCJhdXRvUmVuYW1lXCI6IHRydWUsXG4gIFwic3RyaW5nTWFwXCI6WyB7XG4gICAgXCJuYW1lXCIgICAgOiBcInByZXYtbmV4dFwiLFxuICAgIFwic2VhcmNoXCIgIDogXCJwcmV2XCIsXG4gICAgXCJyZXBsYWNlXCIgOiBcIm5leHRcIlxuICB9IF1cbn0gKi9cbi5jYXJvdXNlbC1jb250cm9sLXByZXYtaWNvbiB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGVzY2FwZS1zdmcoJGNhcm91c2VsLWNvbnRyb2wtcHJldi1pY29uLWJnKTtcbn1cbi5jYXJvdXNlbC1jb250cm9sLW5leHQtaWNvbiB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGVzY2FwZS1zdmcoJGNhcm91c2VsLWNvbnRyb2wtbmV4dC1pY29uLWJnKTtcbn1cblxuLy8gT3B0aW9uYWwgaW5kaWNhdG9yIHBpcHMvY29udHJvbHNcbi8vXG4vLyBBZGQgYSBjb250YWluZXIgKHN1Y2ggYXMgYSBsaXN0KSB3aXRoIHRoZSBmb2xsb3dpbmcgY2xhc3MgYW5kIGFkZCBhbiBpdGVtIChpZGVhbGx5IGEgZm9jdXNhYmxlIGNvbnRyb2wsXG4vLyBsaWtlIGEgYnV0dG9uKSB3aXRoIGRhdGEtYnMtdGFyZ2V0IGZvciBlYWNoIHNsaWRlIHlvdXIgY2Fyb3VzZWwgaG9sZHMuXG5cbi5jYXJvdXNlbC1pbmRpY2F0b3JzIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAyO1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgcGFkZGluZzogMDtcbiAgLy8gVXNlIHRoZSAuY2Fyb3VzZWwtY29udHJvbCdzIHdpZHRoIGFzIG1hcmdpbiBzbyB3ZSBkb24ndCBvdmVybGF5IHRob3NlXG4gIG1hcmdpbi1yaWdodDogJGNhcm91c2VsLWNvbnRyb2wtd2lkdGg7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIG1hcmdpbi1sZWZ0OiAkY2Fyb3VzZWwtY29udHJvbC13aWR0aDtcblxuICBbZGF0YS1icy10YXJnZXRdIHtcbiAgICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgICBmbGV4OiAwIDEgYXV0bztcbiAgICB3aWR0aDogJGNhcm91c2VsLWluZGljYXRvci13aWR0aDtcbiAgICBoZWlnaHQ6ICRjYXJvdXNlbC1pbmRpY2F0b3ItaGVpZ2h0O1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAkY2Fyb3VzZWwtaW5kaWNhdG9yLXNwYWNlcjtcbiAgICBtYXJnaW4tbGVmdDogJGNhcm91c2VsLWluZGljYXRvci1zcGFjZXI7XG4gICAgdGV4dC1pbmRlbnQ6IC05OTlweDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNhcm91c2VsLWluZGljYXRvci1hY3RpdmUtYmc7XG4gICAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgICBib3JkZXI6IDA7XG4gICAgLy8gVXNlIHRyYW5zcGFyZW50IGJvcmRlcnMgdG8gaW5jcmVhc2UgdGhlIGhpdCBhcmVhIGJ5IDEwcHggb24gdG9wIGFuZCBib3R0b20uXG4gICAgYm9yZGVyLXRvcDogJGNhcm91c2VsLWluZGljYXRvci1oaXQtYXJlYS1oZWlnaHQgc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLWJvdHRvbTogJGNhcm91c2VsLWluZGljYXRvci1oaXQtYXJlYS1oZWlnaHQgc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgb3BhY2l0eTogJGNhcm91c2VsLWluZGljYXRvci1vcGFjaXR5O1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oJGNhcm91c2VsLWluZGljYXRvci10cmFuc2l0aW9uKTtcbiAgfVxuXG4gIC5hY3RpdmUge1xuICAgIG9wYWNpdHk6ICRjYXJvdXNlbC1pbmRpY2F0b3ItYWN0aXZlLW9wYWNpdHk7XG4gIH1cbn1cblxuXG4vLyBPcHRpb25hbCBjYXB0aW9uc1xuLy9cbi8vXG5cbi5jYXJvdXNlbC1jYXB0aW9uIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogKDEwMCUgLSAkY2Fyb3VzZWwtY2FwdGlvbi13aWR0aCkgKiAuNTtcbiAgYm90dG9tOiAkY2Fyb3VzZWwtY2FwdGlvbi1zcGFjZXI7XG4gIGxlZnQ6ICgxMDAlIC0gJGNhcm91c2VsLWNhcHRpb24td2lkdGgpICogLjU7XG4gIHBhZGRpbmctdG9wOiAkY2Fyb3VzZWwtY2FwdGlvbi1wYWRkaW5nLXk7XG4gIHBhZGRpbmctYm90dG9tOiAkY2Fyb3VzZWwtY2FwdGlvbi1wYWRkaW5nLXk7XG4gIGNvbG9yOiAkY2Fyb3VzZWwtY2FwdGlvbi1jb2xvcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4vLyBEYXJrIG1vZGUgY2Fyb3VzZWxcblxuQG1peGluIGNhcm91c2VsLWRhcmsoKSB7XG4gIC5jYXJvdXNlbC1jb250cm9sLXByZXYtaWNvbixcbiAgLmNhcm91c2VsLWNvbnRyb2wtbmV4dC1pY29uIHtcbiAgICBmaWx0ZXI6ICRjYXJvdXNlbC1kYXJrLWNvbnRyb2wtaWNvbi1maWx0ZXI7XG4gIH1cblxuICAuY2Fyb3VzZWwtaW5kaWNhdG9ycyBbZGF0YS1icy10YXJnZXRdIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY2Fyb3VzZWwtZGFyay1pbmRpY2F0b3ItYWN0aXZlLWJnO1xuICB9XG5cbiAgLmNhcm91c2VsLWNhcHRpb24ge1xuICAgIGNvbG9yOiAkY2Fyb3VzZWwtZGFyay1jYXB0aW9uLWNvbG9yO1xuICB9XG59XG5cbi5jYXJvdXNlbC1kYXJrIHtcbiAgQGluY2x1ZGUgY2Fyb3VzZWwtZGFyaygpO1xufVxuXG5AaWYgJGVuYWJsZS1kYXJrLW1vZGUge1xuICBAaW5jbHVkZSBjb2xvci1tb2RlKGRhcmspIHtcbiAgICBAaWYgJGNvbG9yLW1vZGUtdHlwZSA9PSBcIm1lZGlhLXF1ZXJ5XCIge1xuICAgICAgLmNhcm91c2VsIHtcbiAgICAgICAgQGluY2x1ZGUgY2Fyb3VzZWwtZGFyaygpO1xuICAgICAgfVxuICAgIH0gQGVsc2Uge1xuICAgICAgLmNhcm91c2VsLFxuICAgICAgJi5jYXJvdXNlbCB7XG4gICAgICAgIEBpbmNsdWRlIGNhcm91c2VsLWRhcmsoKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIHNjc3MtZG9jcy1zdGFydCBjbGVhcmZpeFxuQG1peGluIGNsZWFyZml4KCkge1xuICAmOjphZnRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgY29udGVudDogXCJcIjtcbiAgfVxufVxuLy8gc2Nzcy1kb2NzLWVuZCBjbGVhcmZpeFxuIiwiLy9cbi8vIFJvdGF0aW5nIGJvcmRlclxuLy9cblxuLnNwaW5uZXItZ3Jvdyxcbi5zcGlubmVyLWJvcmRlciB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IHZhcigtLSN7JHByZWZpeH1zcGlubmVyLXdpZHRoKTtcbiAgaGVpZ2h0OiB2YXIoLS0jeyRwcmVmaXh9c3Bpbm5lci1oZWlnaHQpO1xuICB2ZXJ0aWNhbC1hbGlnbjogdmFyKC0tI3skcHJlZml4fXNwaW5uZXItdmVydGljYWwtYWxpZ24pO1xuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgYW5pbWF0aW9uOiB2YXIoLS0jeyRwcmVmaXh9c3Bpbm5lci1hbmltYXRpb24tc3BlZWQpIGxpbmVhciBpbmZpbml0ZSB2YXIoLS0jeyRwcmVmaXh9c3Bpbm5lci1hbmltYXRpb24tbmFtZSk7XG59XG5cbi8vIHNjc3MtZG9jcy1zdGFydCBzcGlubmVyLWJvcmRlci1rZXlmcmFtZXNcbkBrZXlmcmFtZXMgc3Bpbm5lci1ib3JkZXIge1xuICB0byB7IHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZykgI3tcIi8qIHJ0bDppZ25vcmUgKi9cIn07IH1cbn1cbi8vIHNjc3MtZG9jcy1lbmQgc3Bpbm5lci1ib3JkZXIta2V5ZnJhbWVzXG5cbi5zcGlubmVyLWJvcmRlciB7XG4gIC8vIHNjc3MtZG9jcy1zdGFydCBzcGlubmVyLWJvcmRlci1jc3MtdmFyc1xuICAtLSN7JHByZWZpeH1zcGlubmVyLXdpZHRoOiAjeyRzcGlubmVyLXdpZHRofTtcbiAgLS0jeyRwcmVmaXh9c3Bpbm5lci1oZWlnaHQ6ICN7JHNwaW5uZXItaGVpZ2h0fTtcbiAgLS0jeyRwcmVmaXh9c3Bpbm5lci12ZXJ0aWNhbC1hbGlnbjogI3skc3Bpbm5lci12ZXJ0aWNhbC1hbGlnbn07XG4gIC0tI3skcHJlZml4fXNwaW5uZXItYm9yZGVyLXdpZHRoOiAjeyRzcGlubmVyLWJvcmRlci13aWR0aH07XG4gIC0tI3skcHJlZml4fXNwaW5uZXItYW5pbWF0aW9uLXNwZWVkOiAjeyRzcGlubmVyLWFuaW1hdGlvbi1zcGVlZH07XG4gIC0tI3skcHJlZml4fXNwaW5uZXItYW5pbWF0aW9uLW5hbWU6IHNwaW5uZXItYm9yZGVyO1xuICAvLyBzY3NzLWRvY3MtZW5kIHNwaW5uZXItYm9yZGVyLWNzcy12YXJzXG5cbiAgYm9yZGVyOiB2YXIoLS0jeyRwcmVmaXh9c3Bpbm5lci1ib3JkZXItd2lkdGgpIHNvbGlkIGN1cnJlbnRjb2xvcjtcbiAgYm9yZGVyLXJpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLnNwaW5uZXItYm9yZGVyLXNtIHtcbiAgLy8gc2Nzcy1kb2NzLXN0YXJ0IHNwaW5uZXItYm9yZGVyLXNtLWNzcy12YXJzXG4gIC0tI3skcHJlZml4fXNwaW5uZXItd2lkdGg6ICN7JHNwaW5uZXItd2lkdGgtc219O1xuICAtLSN7JHByZWZpeH1zcGlubmVyLWhlaWdodDogI3skc3Bpbm5lci1oZWlnaHQtc219O1xuICAtLSN7JHByZWZpeH1zcGlubmVyLWJvcmRlci13aWR0aDogI3skc3Bpbm5lci1ib3JkZXItd2lkdGgtc219O1xuICAvLyBzY3NzLWRvY3MtZW5kIHNwaW5uZXItYm9yZGVyLXNtLWNzcy12YXJzXG59XG5cbi8vXG4vLyBHcm93aW5nIGNpcmNsZVxuLy9cblxuLy8gc2Nzcy1kb2NzLXN0YXJ0IHNwaW5uZXItZ3Jvdy1rZXlmcmFtZXNcbkBrZXlmcmFtZXMgc3Bpbm5lci1ncm93IHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XG4gIH1cbiAgNTAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgfVxufVxuLy8gc2Nzcy1kb2NzLWVuZCBzcGlubmVyLWdyb3cta2V5ZnJhbWVzXG5cbi5zcGlubmVyLWdyb3cge1xuICAvLyBzY3NzLWRvY3Mtc3RhcnQgc3Bpbm5lci1ncm93LWNzcy12YXJzXG4gIC0tI3skcHJlZml4fXNwaW5uZXItd2lkdGg6ICN7JHNwaW5uZXItd2lkdGh9O1xuICAtLSN7JHByZWZpeH1zcGlubmVyLWhlaWdodDogI3skc3Bpbm5lci1oZWlnaHR9O1xuICAtLSN7JHByZWZpeH1zcGlubmVyLXZlcnRpY2FsLWFsaWduOiAjeyRzcGlubmVyLXZlcnRpY2FsLWFsaWdufTtcbiAgLS0jeyRwcmVmaXh9c3Bpbm5lci1hbmltYXRpb24tc3BlZWQ6ICN7JHNwaW5uZXItYW5pbWF0aW9uLXNwZWVkfTtcbiAgLS0jeyRwcmVmaXh9c3Bpbm5lci1hbmltYXRpb24tbmFtZTogc3Bpbm5lci1ncm93O1xuICAvLyBzY3NzLWRvY3MtZW5kIHNwaW5uZXItZ3Jvdy1jc3MtdmFyc1xuXG4gIGJhY2tncm91bmQtY29sb3I6IGN1cnJlbnRjb2xvcjtcbiAgb3BhY2l0eTogMDtcbn1cblxuLnNwaW5uZXItZ3Jvdy1zbSB7XG4gIC0tI3skcHJlZml4fXNwaW5uZXItd2lkdGg6ICN7JHNwaW5uZXItd2lkdGgtc219O1xuICAtLSN7JHByZWZpeH1zcGlubmVyLWhlaWdodDogI3skc3Bpbm5lci1oZWlnaHQtc219O1xufVxuXG5AaWYgJGVuYWJsZS1yZWR1Y2VkLW1vdGlvbiB7XG4gIEBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gICAgLnNwaW5uZXItYm9yZGVyLFxuICAgIC5zcGlubmVyLWdyb3cge1xuICAgICAgLS0jeyRwcmVmaXh9c3Bpbm5lci1hbmltYXRpb24tc3BlZWQ6ICN7JHNwaW5uZXItYW5pbWF0aW9uLXNwZWVkICogMn07XG4gICAgfVxuICB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBmdW5jdGlvbi1kaXNhbGxvd2VkLWxpc3RcblxuJW9mZmNhbnZhcy1jc3MtdmFycyB7XG4gIC8vIHNjc3MtZG9jcy1zdGFydCBvZmZjYW52YXMtY3NzLXZhcnNcbiAgLS0jeyRwcmVmaXh9b2ZmY2FudmFzLXppbmRleDogI3skemluZGV4LW9mZmNhbnZhc307XG4gIC0tI3skcHJlZml4fW9mZmNhbnZhcy13aWR0aDogI3skb2ZmY2FudmFzLWhvcml6b250YWwtd2lkdGh9O1xuICAtLSN7JHByZWZpeH1vZmZjYW52YXMtaGVpZ2h0OiAjeyRvZmZjYW52YXMtdmVydGljYWwtaGVpZ2h0fTtcbiAgLS0jeyRwcmVmaXh9b2ZmY2FudmFzLXBhZGRpbmcteDogI3skb2ZmY2FudmFzLXBhZGRpbmcteH07XG4gIC0tI3skcHJlZml4fW9mZmNhbnZhcy1wYWRkaW5nLXk6ICN7JG9mZmNhbnZhcy1wYWRkaW5nLXl9O1xuICAtLSN7JHByZWZpeH1vZmZjYW52YXMtY29sb3I6ICN7JG9mZmNhbnZhcy1jb2xvcn07XG4gIC0tI3skcHJlZml4fW9mZmNhbnZhcy1iZzogI3skb2ZmY2FudmFzLWJnLWNvbG9yfTtcbiAgLS0jeyRwcmVmaXh9b2ZmY2FudmFzLWJvcmRlci13aWR0aDogI3skb2ZmY2FudmFzLWJvcmRlci13aWR0aH07XG4gIC0tI3skcHJlZml4fW9mZmNhbnZhcy1ib3JkZXItY29sb3I6ICN7JG9mZmNhbnZhcy1ib3JkZXItY29sb3J9O1xuICAtLSN7JHByZWZpeH1vZmZjYW52YXMtYm94LXNoYWRvdzogI3skb2ZmY2FudmFzLWJveC1zaGFkb3d9O1xuICAtLSN7JHByZWZpeH1vZmZjYW52YXMtdHJhbnNpdGlvbjogI3t0cmFuc2Zvcm0gJG9mZmNhbnZhcy10cmFuc2l0aW9uLWR1cmF0aW9uIGVhc2UtaW4tb3V0fTtcbiAgLS0jeyRwcmVmaXh9b2ZmY2FudmFzLXRpdGxlLWxpbmUtaGVpZ2h0OiAjeyRvZmZjYW52YXMtdGl0bGUtbGluZS1oZWlnaHR9O1xuICAvLyBzY3NzLWRvY3MtZW5kIG9mZmNhbnZhcy1jc3MtdmFyc1xufVxuXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICAkbmV4dDogYnJlYWtwb2ludC1uZXh0KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG4gICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkbmV4dCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gIC5vZmZjYW52YXMjeyRpbmZpeH0ge1xuICAgIEBleHRlbmQgJW9mZmNhbnZhcy1jc3MtdmFycztcbiAgfVxufVxuXG5AZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICAkbmV4dDogYnJlYWtwb2ludC1uZXh0KCRicmVha3BvaW50LCAkZ3JpZC1icmVha3BvaW50cyk7XG4gICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkbmV4dCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gIC5vZmZjYW52YXMjeyRpbmZpeH0ge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkbmV4dCkge1xuICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgei1pbmRleDogdmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy16aW5kZXgpO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICBjb2xvcjogdmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy1jb2xvcik7XG4gICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS0jeyRwcmVmaXh9b2ZmY2FudmFzLWJnKTtcbiAgICAgIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gICAgICBvdXRsaW5lOiAwO1xuICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdyh2YXIoLS0jeyRwcmVmaXh9b2ZmY2FudmFzLWJveC1zaGFkb3cpKTtcbiAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24odmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy10cmFuc2l0aW9uKSk7XG5cbiAgICAgICYub2ZmY2FudmFzLXN0YXJ0IHtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB3aWR0aDogdmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy13aWR0aCk7XG4gICAgICAgIGJvcmRlci1yaWdodDogdmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLSN7JHByZWZpeH1vZmZjYW52YXMtYm9yZGVyLWNvbG9yKTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTtcbiAgICAgIH1cblxuICAgICAgJi5vZmZjYW52YXMtZW5kIHtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgd2lkdGg6IHZhcigtLSN7JHByZWZpeH1vZmZjYW52YXMtd2lkdGgpO1xuICAgICAgICBib3JkZXItbGVmdDogdmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLSN7JHByZWZpeH1vZmZjYW52YXMtYm9yZGVyLWNvbG9yKTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpO1xuICAgICAgfVxuXG4gICAgICAmLm9mZmNhbnZhcy10b3Age1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBoZWlnaHQ6IHZhcigtLSN7JHByZWZpeH1vZmZjYW52YXMtaGVpZ2h0KTtcbiAgICAgICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogdmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLSN7JHByZWZpeH1vZmZjYW52YXMtYm9yZGVyLWNvbG9yKTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAlKTtcbiAgICAgIH1cblxuICAgICAgJi5vZmZjYW52YXMtYm90dG9tIHtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIGhlaWdodDogdmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy1oZWlnaHQpO1xuICAgICAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgICAgICBib3JkZXItdG9wOiB2YXIoLS0jeyRwcmVmaXh9b2ZmY2FudmFzLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy1ib3JkZXItY29sb3IpO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAwJSk7XG4gICAgICB9XG5cbiAgICAgICYuc2hvd2luZyxcbiAgICAgICYuc2hvdzpub3QoLmhpZGluZykge1xuICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgICB9XG5cbiAgICAgICYuc2hvd2luZyxcbiAgICAgICYuaGlkaW5nLFxuICAgICAgJi5zaG93IHtcbiAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaWYgbm90ICgkaW5maXggPT0gXCJcIikge1xuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkbmV4dCkge1xuICAgICAgICAtLSN7JHByZWZpeH1vZmZjYW52YXMtaGVpZ2h0OiBhdXRvO1xuICAgICAgICAtLSN7JHByZWZpeH1vZmZjYW52YXMtYm9yZGVyLXdpZHRoOiAwO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50OyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4gICAgICAgIC5vZmZjYW52YXMtaGVhZGVyIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgLm9mZmNhbnZhcy1ib2R5IHtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIGZsZXgtZ3JvdzogMDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgIG92ZXJmbG93LXk6IHZpc2libGU7XG4gICAgICAgICAgLy8gUmVzZXQgYGJhY2tncm91bmQtY29sb3JgIGluIGNhc2UgYC5iZy0qYCBjbGFzc2VzIGFyZSB1c2VkIGluIG9mZmNhbnZhc1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLm9mZmNhbnZhcy1iYWNrZHJvcCB7XG4gIEBpbmNsdWRlIG92ZXJsYXktYmFja2Ryb3AoJHppbmRleC1vZmZjYW52YXMtYmFja2Ryb3AsICRvZmZjYW52YXMtYmFja2Ryb3AtYmcsICRvZmZjYW52YXMtYmFja2Ryb3Atb3BhY2l0eSk7XG59XG5cbi5vZmZjYW52YXMtaGVhZGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBwYWRkaW5nOiB2YXIoLS0jeyRwcmVmaXh9b2ZmY2FudmFzLXBhZGRpbmcteSkgdmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy1wYWRkaW5nLXgpO1xuXG4gIC5idG4tY2xvc2Uge1xuICAgIHBhZGRpbmc6IGNhbGModmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy1wYWRkaW5nLXkpICogLjUpIGNhbGModmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy1wYWRkaW5nLXgpICogLjUpO1xuICAgIG1hcmdpbi10b3A6IGNhbGMoLS41ICogdmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy1wYWRkaW5nLXkpKTtcbiAgICBtYXJnaW4tcmlnaHQ6IGNhbGMoLS41ICogdmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy1wYWRkaW5nLXgpKTtcbiAgICBtYXJnaW4tYm90dG9tOiBjYWxjKC0uNSAqIHZhcigtLSN7JHByZWZpeH1vZmZjYW52YXMtcGFkZGluZy15KSk7XG4gIH1cbn1cblxuLm9mZmNhbnZhcy10aXRsZSB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGxpbmUtaGVpZ2h0OiB2YXIoLS0jeyRwcmVmaXh9b2ZmY2FudmFzLXRpdGxlLWxpbmUtaGVpZ2h0KTtcbn1cblxuLm9mZmNhbnZhcy1ib2R5IHtcbiAgZmxleC1ncm93OiAxO1xuICBwYWRkaW5nOiB2YXIoLS0jeyRwcmVmaXh9b2ZmY2FudmFzLXBhZGRpbmcteSkgdmFyKC0tI3skcHJlZml4fW9mZmNhbnZhcy1wYWRkaW5nLXgpO1xuICBvdmVyZmxvdy15OiBhdXRvO1xufVxuIiwiLnBsYWNlaG9sZGVyIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtaW4taGVpZ2h0OiAxZW07XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGN1cnNvcjogd2FpdDtcbiAgYmFja2dyb3VuZC1jb2xvcjogY3VycmVudGNvbG9yO1xuICBvcGFjaXR5OiAkcGxhY2Vob2xkZXItb3BhY2l0eS1tYXg7XG5cbiAgJi5idG46OmJlZm9yZSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gIH1cbn1cblxuLy8gU2l6aW5nXG4ucGxhY2Vob2xkZXIteHMge1xuICBtaW4taGVpZ2h0OiAuNmVtO1xufVxuXG4ucGxhY2Vob2xkZXItc20ge1xuICBtaW4taGVpZ2h0OiAuOGVtO1xufVxuXG4ucGxhY2Vob2xkZXItbGcge1xuICBtaW4taGVpZ2h0OiAxLjJlbTtcbn1cblxuLy8gQW5pbWF0aW9uXG4ucGxhY2Vob2xkZXItZ2xvdyB7XG4gIC5wbGFjZWhvbGRlciB7XG4gICAgYW5pbWF0aW9uOiBwbGFjZWhvbGRlci1nbG93IDJzIGVhc2UtaW4tb3V0IGluZmluaXRlO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgcGxhY2Vob2xkZXItZ2xvdyB7XG4gIDUwJSB7XG4gICAgb3BhY2l0eTogJHBsYWNlaG9sZGVyLW9wYWNpdHktbWluO1xuICB9XG59XG5cbi5wbGFjZWhvbGRlci13YXZlIHtcbiAgbWFzay1pbWFnZTogbGluZWFyLWdyYWRpZW50KDEzMGRlZywgJGJsYWNrIDU1JSwgcmdiYSgwLCAwLCAwLCAoMSAtICRwbGFjZWhvbGRlci1vcGFjaXR5LW1pbikpIDc1JSwgJGJsYWNrIDk1JSk7XG4gIG1hc2stc2l6ZTogMjAwJSAxMDAlO1xuICBhbmltYXRpb246IHBsYWNlaG9sZGVyLXdhdmUgMnMgbGluZWFyIGluZmluaXRlO1xufVxuXG5Aa2V5ZnJhbWVzIHBsYWNlaG9sZGVyLXdhdmUge1xuICAxMDAlIHtcbiAgICBtYXNrLXBvc2l0aW9uOiAtMjAwJSAwJTtcbiAgfVxufVxuIiwiLy8gQWxsLWNhcHMgYFJHQkEoKWAgZnVuY3Rpb24gdXNlZCBiZWNhdXNlIG9mIHRoaXMgU2FzcyBidWc6IGh0dHBzOi8vZ2l0aHViLmNvbS9zYXNzL25vZGUtc2Fzcy9pc3N1ZXMvMjI1MVxuQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gICRjb2xvci1yZ2I6IHRvLXJnYigkdmFsdWUpO1xuICAudGV4dC1iZy0jeyRjb2xvcn0ge1xuICAgIGNvbG9yOiBjb2xvci1jb250cmFzdCgkdmFsdWUpIGlmKCRlbmFibGUtaW1wb3J0YW50LXV0aWxpdGllcywgIWltcG9ydGFudCwgbnVsbCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogUkdCQSgkY29sb3ItcmdiLCB2YXIoLS0jeyRwcmVmaXh9Ymctb3BhY2l0eSwgMSkpIGlmKCRlbmFibGUtaW1wb3J0YW50LXV0aWxpdGllcywgIWltcG9ydGFudCwgbnVsbCk7XG4gIH1cbn1cbiIsIi8vIEFsbC1jYXBzIGBSR0JBKClgIGZ1bmN0aW9uIHVzZWQgYmVjYXVzZSBvZiB0aGlzIFNhc3MgYnVnOiBodHRwczovL2dpdGh1Yi5jb20vc2Fzcy9ub2RlLXNhc3MvaXNzdWVzLzIyNTFcbkBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICAubGluay0jeyRjb2xvcn0ge1xuICAgIGNvbG9yOiBSR0JBKHZhcigtLSN7JHByZWZpeH0jeyRjb2xvcn0tcmdiKSwgdmFyKC0tI3skcHJlZml4fWxpbmstb3BhY2l0eSwgMSkpIGlmKCRlbmFibGUtaW1wb3J0YW50LXV0aWxpdGllcywgIWltcG9ydGFudCwgbnVsbCk7XG4gICAgdGV4dC1kZWNvcmF0aW9uLWNvbG9yOiBSR0JBKHZhcigtLSN7JHByZWZpeH0jeyRjb2xvcn0tcmdiKSwgdmFyKC0tI3skcHJlZml4fWxpbmstdW5kZXJsaW5lLW9wYWNpdHksIDEpKSBpZigkZW5hYmxlLWltcG9ydGFudC11dGlsaXRpZXMsICFpbXBvcnRhbnQsIG51bGwpO1xuXG4gICAgQGlmICRsaW5rLXNoYWRlLXBlcmNlbnRhZ2UgIT0gMCB7XG4gICAgICAmOmhvdmVyLFxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgICRob3Zlci1jb2xvcjogaWYoY29sb3ItY29udHJhc3QoJHZhbHVlKSA9PSAkY29sb3ItY29udHJhc3QtbGlnaHQsIHNoYWRlLWNvbG9yKCR2YWx1ZSwgJGxpbmstc2hhZGUtcGVyY2VudGFnZSksIHRpbnQtY29sb3IoJHZhbHVlLCAkbGluay1zaGFkZS1wZXJjZW50YWdlKSk7XG4gICAgICAgIGNvbG9yOiBSR0JBKCN7dG8tcmdiKCRob3Zlci1jb2xvcil9LCB2YXIoLS0jeyRwcmVmaXh9bGluay1vcGFjaXR5LCAxKSkgaWYoJGVuYWJsZS1pbXBvcnRhbnQtdXRpbGl0aWVzLCAhaW1wb3J0YW50LCBudWxsKTtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uLWNvbG9yOiBSR0JBKHRvLXJnYigkaG92ZXItY29sb3IpLCB2YXIoLS0jeyRwcmVmaXh9bGluay11bmRlcmxpbmUtb3BhY2l0eSwgMSkpIGlmKCRlbmFibGUtaW1wb3J0YW50LXV0aWxpdGllcywgIWltcG9ydGFudCwgbnVsbCk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIE9uZS1vZmYgc3BlY2lhbCBsaW5rIGhlbHBlciBhcyBhIGJyaWRnZSB1bnRpbCB2NlxuLmxpbmstYm9keS1lbXBoYXNpcyB7XG4gIGNvbG9yOiBSR0JBKHZhcigtLSN7JHByZWZpeH1lbXBoYXNpcy1jb2xvci1yZ2IpLCB2YXIoLS0jeyRwcmVmaXh9bGluay1vcGFjaXR5LCAxKSkgaWYoJGVuYWJsZS1pbXBvcnRhbnQtdXRpbGl0aWVzLCAhaW1wb3J0YW50LCBudWxsKTtcbiAgdGV4dC1kZWNvcmF0aW9uLWNvbG9yOiBSR0JBKHZhcigtLSN7JHByZWZpeH1lbXBoYXNpcy1jb2xvci1yZ2IpLCB2YXIoLS0jeyRwcmVmaXh9bGluay11bmRlcmxpbmUtb3BhY2l0eSwgMSkpIGlmKCRlbmFibGUtaW1wb3J0YW50LXV0aWxpdGllcywgIWltcG9ydGFudCwgbnVsbCk7XG5cbiAgQGlmICRsaW5rLXNoYWRlLXBlcmNlbnRhZ2UgIT0gMCB7XG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIGNvbG9yOiBSR0JBKHZhcigtLSN7JHByZWZpeH1lbXBoYXNpcy1jb2xvci1yZ2IpLCB2YXIoLS0jeyRwcmVmaXh9bGluay1vcGFjaXR5LCAuNzUpKSBpZigkZW5hYmxlLWltcG9ydGFudC11dGlsaXRpZXMsICFpbXBvcnRhbnQsIG51bGwpO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uLWNvbG9yOiBSR0JBKHZhcigtLSN7JHByZWZpeH1lbXBoYXNpcy1jb2xvci1yZ2IpLCB2YXIoLS0jeyRwcmVmaXh9bGluay11bmRlcmxpbmUtb3BhY2l0eSwgLjc1KSkgaWYoJGVuYWJsZS1pbXBvcnRhbnQtdXRpbGl0aWVzLCAhaW1wb3J0YW50LCBudWxsKTtcbiAgICB9XG4gIH1cbn1cbiIsIi5mb2N1cy1yaW5nOmZvY3VzIHtcbiAgb3V0bGluZTogMDtcbiAgLy8gQnkgZGVmYXVsdCwgdGhlcmUgaXMgbm8gYC0tYnMtZm9jdXMtcmluZy14YCwgYC0tYnMtZm9jdXMtcmluZy15YCwgb3IgYC0tYnMtZm9jdXMtcmluZy1ibHVyYCwgYnV0IHdlIHByb3ZpZGUgQ1NTIHZhcmlhYmxlcyB3aXRoIGZhbGxiYWNrcyB0byBpbml0aWFsIGAwYCB2YWx1ZXNcbiAgYm94LXNoYWRvdzogdmFyKC0tI3skcHJlZml4fWZvY3VzLXJpbmcteCwgMCkgdmFyKC0tI3skcHJlZml4fWZvY3VzLXJpbmcteSwgMCkgdmFyKC0tI3skcHJlZml4fWZvY3VzLXJpbmctYmx1ciwgMCkgdmFyKC0tI3skcHJlZml4fWZvY3VzLXJpbmctd2lkdGgpIHZhcigtLSN7JHByZWZpeH1mb2N1cy1yaW5nLWNvbG9yKTtcbn1cbiIsIi5pY29uLWxpbmsge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgZ2FwOiAkaWNvbi1saW5rLWdhcDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgdGV4dC1kZWNvcmF0aW9uLWNvbG9yOiByZ2JhKHZhcigtLSN7JHByZWZpeH1saW5rLWNvbG9yLXJnYiksIHZhcigtLSN7JHByZWZpeH1saW5rLW9wYWNpdHksIC41KSk7XG4gIHRleHQtdW5kZXJsaW5lLW9mZnNldDogJGljb24tbGluay11bmRlcmxpbmUtb2Zmc2V0O1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG5cbiAgPiAuYmkge1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIHdpZHRoOiAkaWNvbi1saW5rLWljb24tc2l6ZTtcbiAgICBoZWlnaHQ6ICRpY29uLWxpbmstaWNvbi1zaXplO1xuICAgIGZpbGw6IGN1cnJlbnRjb2xvcjtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRpY29uLWxpbmstaWNvbi10cmFuc2l0aW9uKTtcbiAgfVxufVxuXG4uaWNvbi1saW5rLWhvdmVyIHtcbiAgJjpob3ZlcixcbiAgJjpmb2N1cy12aXNpYmxlIHtcbiAgICA+IC5iaSB7XG4gICAgICB0cmFuc2Zvcm06IHZhcigtLSN7JHByZWZpeH1pY29uLWxpbmstdHJhbnNmb3JtLCAkaWNvbi1saW5rLWljb24tdHJhbnNmb3JtKTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIENyZWRpdDogTmljb2xhcyBHYWxsYWdoZXIgYW5kIFNVSVQgQ1NTLlxuXG4ucmF0aW8ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuXG4gICY6OmJlZm9yZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZy10b3A6IHZhcigtLSN7JHByZWZpeH1hc3BlY3QtcmF0aW8pO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gIH1cblxuICA+ICoge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gIH1cbn1cblxuQGVhY2ggJGtleSwgJHJhdGlvIGluICRhc3BlY3QtcmF0aW9zIHtcbiAgLnJhdGlvLSN7JGtleX0ge1xuICAgIC0tI3skcHJlZml4fWFzcGVjdC1yYXRpbzogI3skcmF0aW99O1xuICB9XG59XG4iLCIvLyBTaG9ydGhhbmRcblxuLmZpeGVkLXRvcCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleC1maXhlZDtcbn1cblxuLmZpeGVkLWJvdHRvbSB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleC1maXhlZDtcbn1cblxuLy8gUmVzcG9uc2l2ZSBzdGlja3kgdG9wIGFuZCBib3R0b21cbkBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICAgIC5zdGlja3kjeyRpbmZpeH0tdG9wIHtcbiAgICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgICB0b3A6IDA7XG4gICAgICB6LWluZGV4OiAkemluZGV4LXN0aWNreTtcbiAgICB9XG5cbiAgICAuc3RpY2t5I3skaW5maXh9LWJvdHRvbSB7XG4gICAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgei1pbmRleDogJHppbmRleC1zdGlja3k7XG4gICAgfVxuICB9XG59XG4iLCIvLyBzY3NzLWRvY3Mtc3RhcnQgc3RhY2tzXG4uaHN0YWNrIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgYWxpZ24tc2VsZjogc3RyZXRjaDtcbn1cblxuLnZzdGFjayB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXg6IDEgMSBhdXRvO1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1zZWxmOiBzdHJldGNoO1xufVxuLy8gc2Nzcy1kb2NzLWVuZCBzdGFja3NcbiIsIi8vXG4vLyBWaXN1YWxseSBoaWRkZW5cbi8vXG5cbi52aXN1YWxseS1oaWRkZW4sXG4udmlzdWFsbHktaGlkZGVuLWZvY3VzYWJsZTpub3QoOmZvY3VzKTpub3QoOmZvY3VzLXdpdGhpbikge1xuICBAaW5jbHVkZSB2aXN1YWxseS1oaWRkZW4oKTtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4vLyBIaWRlIGNvbnRlbnQgdmlzdWFsbHkgd2hpbGUga2VlcGluZyBpdCBhY2Nlc3NpYmxlIHRvIGFzc2lzdGl2ZSB0ZWNobm9sb2dpZXNcbi8vXG4vLyBTZWU6IGh0dHBzOi8vd3d3LmExMXlwcm9qZWN0LmNvbS9wb3N0cy8yMDEzLTAxLTExLWhvdy10by1oaWRlLWNvbnRlbnQvXG4vLyBTZWU6IGh0dHBzOi8va2l0dHlnaXJhdWRlbC5jb20vMjAxNi8xMC8xMy9jc3MtaGlkZS1hbmQtc2Vlay9cblxuQG1peGluIHZpc3VhbGx5LWhpZGRlbigpIHtcbiAgd2lkdGg6IDFweCAhaW1wb3J0YW50O1xuICBoZWlnaHQ6IDFweCAhaW1wb3J0YW50O1xuICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gIG1hcmdpbjogLTFweCAhaW1wb3J0YW50OyAvLyBGaXggZm9yIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjU2ODZcbiAgb3ZlcmZsb3c6IGhpZGRlbiAhaW1wb3J0YW50O1xuICBjbGlwOiByZWN0KDAsIDAsIDAsIDApICFpbXBvcnRhbnQ7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXAgIWltcG9ydGFudDtcbiAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7XG5cbiAgLy8gRml4IGZvciBwb3NpdGlvbmVkIHRhYmxlIGNhcHRpb24gdGhhdCBjb3VsZCBiZWNvbWUgYW5vbnltb3VzIGNlbGxzXG4gICY6bm90KGNhcHRpb24pIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4vLyBVc2UgdG8gb25seSBkaXNwbGF5IGNvbnRlbnQgd2hlbiBpdCdzIGZvY3VzZWQsIG9yIG9uZSBvZiBpdHMgY2hpbGQgZWxlbWVudHMgaXMgZm9jdXNlZFxuLy8gKGkuZS4gd2hlbiBmb2N1cyBpcyB3aXRoaW4gdGhlIGVsZW1lbnQvY29udGFpbmVyIHRoYXQgdGhlIGNsYXNzIHdhcyBhcHBsaWVkIHRvKVxuLy9cbi8vIFVzZWZ1bCBmb3IgXCJTa2lwIHRvIG1haW4gY29udGVudFwiIGxpbmtzOyBzZWUgaHR0cHM6Ly93d3cudzMub3JnL1RSLzIwMTMvTk9URS1XQ0FHMjAtVEVDSFMtMjAxMzA5MDUvRzFcblxuQG1peGluIHZpc3VhbGx5LWhpZGRlbi1mb2N1c2FibGUoKSB7XG4gICY6bm90KDpmb2N1cyk6bm90KDpmb2N1cy13aXRoaW4pIHtcbiAgICBAaW5jbHVkZSB2aXN1YWxseS1oaWRkZW4oKTtcbiAgfVxufVxuIiwiLy9cbi8vIFN0cmV0Y2hlZCBsaW5rXG4vL1xuXG4uc3RyZXRjaGVkLWxpbmsge1xuICAmOjojeyRzdHJldGNoZWQtbGluay1wc2V1ZG8tZWxlbWVudH0ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgei1pbmRleDogJHN0cmV0Y2hlZC1saW5rLXotaW5kZXg7XG4gICAgY29udGVudDogXCJcIjtcbiAgfVxufVxuIiwiLy9cbi8vIFRleHQgdHJ1bmNhdGlvblxuLy9cblxuLnRleHQtdHJ1bmNhdGUge1xuICBAaW5jbHVkZSB0ZXh0LXRydW5jYXRlKCk7XG59XG4iLCIvLyBUZXh0IHRydW5jYXRlXG4vLyBSZXF1aXJlcyBpbmxpbmUtYmxvY2sgb3IgYmxvY2sgZm9yIHByb3BlciBzdHlsaW5nXG5cbkBtaXhpbiB0ZXh0LXRydW5jYXRlKCkge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cbiIsIi52ciB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYWxpZ24tc2VsZjogc3RyZXRjaDtcbiAgd2lkdGg6IDFweDtcbiAgbWluLWhlaWdodDogMWVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBjdXJyZW50Y29sb3I7XG4gIG9wYWNpdHk6ICRoci1vcGFjaXR5O1xufVxuIiwiLy8gVXRpbGl0eSBnZW5lcmF0b3Jcbi8vIFVzZWQgdG8gZ2VuZXJhdGUgdXRpbGl0aWVzICYgcHJpbnQgdXRpbGl0aWVzXG5AbWl4aW4gZ2VuZXJhdGUtdXRpbGl0eSgkdXRpbGl0eSwgJGluZml4OiBcIlwiLCAkaXMtcmZzLW1lZGlhLXF1ZXJ5OiBmYWxzZSkge1xuICAkdmFsdWVzOiBtYXAtZ2V0KCR1dGlsaXR5LCB2YWx1ZXMpO1xuXG4gIC8vIElmIHRoZSB2YWx1ZXMgYXJlIGEgbGlzdCBvciBzdHJpbmcsIGNvbnZlcnQgaXQgaW50byBhIG1hcFxuICBAaWYgdHlwZS1vZigkdmFsdWVzKSA9PSBcInN0cmluZ1wiIG9yIHR5cGUtb2YobnRoKCR2YWx1ZXMsIDEpKSAhPSBcImxpc3RcIiB7XG4gICAgJHZhbHVlczogemlwKCR2YWx1ZXMsICR2YWx1ZXMpO1xuICB9XG5cbiAgQGVhY2ggJGtleSwgJHZhbHVlIGluICR2YWx1ZXMge1xuICAgICRwcm9wZXJ0aWVzOiBtYXAtZ2V0KCR1dGlsaXR5LCBwcm9wZXJ0eSk7XG5cbiAgICAvLyBNdWx0aXBsZSBwcm9wZXJ0aWVzIGFyZSBwb3NzaWJsZSwgZm9yIGV4YW1wbGUgd2l0aCB2ZXJ0aWNhbCBvciBob3Jpem9udGFsIG1hcmdpbnMgb3IgcGFkZGluZ3NcbiAgICBAaWYgdHlwZS1vZigkcHJvcGVydGllcykgPT0gXCJzdHJpbmdcIiB7XG4gICAgICAkcHJvcGVydGllczogYXBwZW5kKCgpLCAkcHJvcGVydGllcyk7XG4gICAgfVxuXG4gICAgLy8gVXNlIGN1c3RvbSBjbGFzcyBpZiBwcmVzZW50XG4gICAgJHByb3BlcnR5LWNsYXNzOiBpZihtYXAtaGFzLWtleSgkdXRpbGl0eSwgY2xhc3MpLCBtYXAtZ2V0KCR1dGlsaXR5LCBjbGFzcyksIG50aCgkcHJvcGVydGllcywgMSkpO1xuICAgICRwcm9wZXJ0eS1jbGFzczogaWYoJHByb3BlcnR5LWNsYXNzID09IG51bGwsIFwiXCIsICRwcm9wZXJ0eS1jbGFzcyk7XG5cbiAgICAvLyBVc2UgY3VzdG9tIENTUyB2YXJpYWJsZSBuYW1lIGlmIHByZXNlbnQsIG90aGVyd2lzZSBkZWZhdWx0IHRvIGBjbGFzc2BcbiAgICAkY3NzLXZhcmlhYmxlLW5hbWU6IGlmKG1hcC1oYXMta2V5KCR1dGlsaXR5LCBjc3MtdmFyaWFibGUtbmFtZSksIG1hcC1nZXQoJHV0aWxpdHksIGNzcy12YXJpYWJsZS1uYW1lKSwgbWFwLWdldCgkdXRpbGl0eSwgY2xhc3MpKTtcblxuICAgIC8vIFN0YXRlIHBhcmFtcyB0byBnZW5lcmF0ZSBwc2V1ZG8tY2xhc3Nlc1xuICAgICRzdGF0ZTogaWYobWFwLWhhcy1rZXkoJHV0aWxpdHksIHN0YXRlKSwgbWFwLWdldCgkdXRpbGl0eSwgc3RhdGUpLCAoKSk7XG5cbiAgICAkaW5maXg6IGlmKCRwcm9wZXJ0eS1jbGFzcyA9PSBcIlwiIGFuZCBzdHItc2xpY2UoJGluZml4LCAxLCAxKSA9PSBcIi1cIiwgc3RyLXNsaWNlKCRpbmZpeCwgMiksICRpbmZpeCk7XG5cbiAgICAvLyBEb24ndCBwcmVmaXggaWYgdmFsdWUga2V5IGlzIG51bGwgKGUuZy4gd2l0aCBzaGFkb3cgY2xhc3MpXG4gICAgJHByb3BlcnR5LWNsYXNzLW1vZGlmaWVyOiBpZigka2V5LCBpZigkcHJvcGVydHktY2xhc3MgPT0gXCJcIiBhbmQgJGluZml4ID09IFwiXCIsIFwiXCIsIFwiLVwiKSArICRrZXksIFwiXCIpO1xuXG4gICAgQGlmIG1hcC1nZXQoJHV0aWxpdHksIHJmcykge1xuICAgICAgLy8gSW5zaWRlIHRoZSBtZWRpYSBxdWVyeVxuICAgICAgQGlmICRpcy1yZnMtbWVkaWEtcXVlcnkge1xuICAgICAgICAkdmFsOiByZnMtdmFsdWUoJHZhbHVlKTtcblxuICAgICAgICAvLyBEbyBub3QgcmVuZGVyIGFueXRoaW5nIGlmIGZsdWlkIGFuZCBub24gZmx1aWQgdmFsdWVzIGFyZSB0aGUgc2FtZVxuICAgICAgICAkdmFsdWU6IGlmKCR2YWwgPT0gcmZzLWZsdWlkLXZhbHVlKCR2YWx1ZSksIG51bGwsICR2YWwpO1xuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICAkdmFsdWU6IHJmcy1mbHVpZC12YWx1ZSgkdmFsdWUpO1xuICAgICAgfVxuICAgIH1cblxuICAgICRpcy1jc3MtdmFyOiBtYXAtZ2V0KCR1dGlsaXR5LCBjc3MtdmFyKTtcbiAgICAkaXMtbG9jYWwtdmFyczogbWFwLWdldCgkdXRpbGl0eSwgbG9jYWwtdmFycyk7XG4gICAgJGlzLXJ0bDogbWFwLWdldCgkdXRpbGl0eSwgcnRsKTtcblxuICAgIEBpZiAkdmFsdWUgIT0gbnVsbCB7XG4gICAgICBAaWYgJGlzLXJ0bCA9PSBmYWxzZSB7XG4gICAgICAgIC8qIHJ0bDpiZWdpbjpyZW1vdmUgKi9cbiAgICAgIH1cblxuICAgICAgQGlmICRpcy1jc3MtdmFyIHtcbiAgICAgICAgLiN7JHByb3BlcnR5LWNsYXNzICsgJGluZml4ICsgJHByb3BlcnR5LWNsYXNzLW1vZGlmaWVyfSB7XG4gICAgICAgICAgLS0jeyRwcmVmaXh9I3skY3NzLXZhcmlhYmxlLW5hbWV9OiAjeyR2YWx1ZX07XG4gICAgICAgIH1cblxuICAgICAgICBAZWFjaCAkcHNldWRvIGluICRzdGF0ZSB7XG4gICAgICAgICAgLiN7JHByb3BlcnR5LWNsYXNzICsgJGluZml4ICsgJHByb3BlcnR5LWNsYXNzLW1vZGlmaWVyfS0jeyRwc2V1ZG99OiN7JHBzZXVkb30ge1xuICAgICAgICAgICAgLS0jeyRwcmVmaXh9I3skY3NzLXZhcmlhYmxlLW5hbWV9OiAjeyR2YWx1ZX07XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgLiN7JHByb3BlcnR5LWNsYXNzICsgJGluZml4ICsgJHByb3BlcnR5LWNsYXNzLW1vZGlmaWVyfSB7XG4gICAgICAgICAgQGVhY2ggJHByb3BlcnR5IGluICRwcm9wZXJ0aWVzIHtcbiAgICAgICAgICAgIEBpZiAkaXMtbG9jYWwtdmFycyB7XG4gICAgICAgICAgICAgIEBlYWNoICRsb2NhbC12YXIsICR2YXJpYWJsZSBpbiAkaXMtbG9jYWwtdmFycyB7XG4gICAgICAgICAgICAgICAgLS0jeyRwcmVmaXh9I3skbG9jYWwtdmFyfTogI3skdmFyaWFibGV9O1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAjeyRwcm9wZXJ0eX06ICR2YWx1ZSBpZigkZW5hYmxlLWltcG9ydGFudC11dGlsaXRpZXMsICFpbXBvcnRhbnQsIG51bGwpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIEBlYWNoICRwc2V1ZG8gaW4gJHN0YXRlIHtcbiAgICAgICAgICAuI3skcHJvcGVydHktY2xhc3MgKyAkaW5maXggKyAkcHJvcGVydHktY2xhc3MtbW9kaWZpZXJ9LSN7JHBzZXVkb306I3skcHNldWRvfSB7XG4gICAgICAgICAgICBAZWFjaCAkcHJvcGVydHkgaW4gJHByb3BlcnRpZXMge1xuICAgICAgICAgICAgICBAaWYgJGlzLWxvY2FsLXZhcnMge1xuICAgICAgICAgICAgICAgIEBlYWNoICRsb2NhbC12YXIsICR2YXJpYWJsZSBpbiAkaXMtbG9jYWwtdmFycyB7XG4gICAgICAgICAgICAgICAgICAtLSN7JHByZWZpeH0jeyRsb2NhbC12YXJ9OiAjeyR2YXJpYWJsZX07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICN7JHByb3BlcnR5fTogJHZhbHVlIGlmKCRlbmFibGUtaW1wb3J0YW50LXV0aWxpdGllcywgIWltcG9ydGFudCwgbnVsbCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIEBpZiAkaXMtcnRsID09IGZhbHNlIHtcbiAgICAgICAgLyogcnRsOmVuZDpyZW1vdmUgKi9cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIExvb3Agb3ZlciBlYWNoIGJyZWFrcG9pbnRcbkBlYWNoICRicmVha3BvaW50IGluIG1hcC1rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG5cbiAgLy8gR2VuZXJhdGUgbWVkaWEgcXVlcnkgaWYgbmVlZGVkXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoJGJyZWFrcG9pbnQpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICAgIC8vIExvb3Agb3ZlciBlYWNoIHV0aWxpdHkgcHJvcGVydHlcbiAgICBAZWFjaCAka2V5LCAkdXRpbGl0eSBpbiAkdXRpbGl0aWVzIHtcbiAgICAgIC8vIFRoZSB1dGlsaXR5IGNhbiBiZSBkaXNhYmxlZCB3aXRoIGBmYWxzZWAsIHRodXMgY2hlY2sgaWYgdGhlIHV0aWxpdHkgaXMgYSBtYXAgZmlyc3RcbiAgICAgIC8vIE9ubHkgcHJvY2VlZCBpZiByZXNwb25zaXZlIG1lZGlhIHF1ZXJpZXMgYXJlIGVuYWJsZWQgb3IgaWYgaXQncyB0aGUgYmFzZSBtZWRpYSBxdWVyeVxuICAgICAgQGlmIHR5cGUtb2YoJHV0aWxpdHkpID09IFwibWFwXCIgYW5kIChtYXAtZ2V0KCR1dGlsaXR5LCByZXNwb25zaXZlKSBvciAkaW5maXggPT0gXCJcIikge1xuICAgICAgICBAaW5jbHVkZSBnZW5lcmF0ZS11dGlsaXR5KCR1dGlsaXR5LCAkaW5maXgpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBSRlMgcmVzY2FsaW5nXG5AbWVkaWEgKG1pbi13aWR0aDogJHJmcy1tcS12YWx1ZSkge1xuICBAZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAta2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuXG4gICAgQGlmIChtYXAtZ2V0KCRncmlkLWJyZWFrcG9pbnRzLCAkYnJlYWtwb2ludCkgPCAkcmZzLWJyZWFrcG9pbnQpIHtcbiAgICAgIC8vIExvb3Agb3ZlciBlYWNoIHV0aWxpdHkgcHJvcGVydHlcbiAgICAgIEBlYWNoICRrZXksICR1dGlsaXR5IGluICR1dGlsaXRpZXMge1xuICAgICAgICAvLyBUaGUgdXRpbGl0eSBjYW4gYmUgZGlzYWJsZWQgd2l0aCBgZmFsc2VgLCB0aHVzIGNoZWNrIGlmIHRoZSB1dGlsaXR5IGlzIGEgbWFwIGZpcnN0XG4gICAgICAgIC8vIE9ubHkgcHJvY2VlZCBpZiByZXNwb25zaXZlIG1lZGlhIHF1ZXJpZXMgYXJlIGVuYWJsZWQgb3IgaWYgaXQncyB0aGUgYmFzZSBtZWRpYSBxdWVyeVxuICAgICAgICBAaWYgdHlwZS1vZigkdXRpbGl0eSkgPT0gXCJtYXBcIiBhbmQgbWFwLWdldCgkdXRpbGl0eSwgcmZzKSBhbmQgKG1hcC1nZXQoJHV0aWxpdHksIHJlc3BvbnNpdmUpIG9yICRpbmZpeCA9PSBcIlwiKSB7XG4gICAgICAgICAgQGluY2x1ZGUgZ2VuZXJhdGUtdXRpbGl0eSgkdXRpbGl0eSwgJGluZml4LCB0cnVlKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5cbi8vIFByaW50IHV0aWxpdGllc1xuQG1lZGlhIHByaW50IHtcbiAgQGVhY2ggJGtleSwgJHV0aWxpdHkgaW4gJHV0aWxpdGllcyB7XG4gICAgLy8gVGhlIHV0aWxpdHkgY2FuIGJlIGRpc2FibGVkIHdpdGggYGZhbHNlYCwgdGh1cyBjaGVjayBpZiB0aGUgdXRpbGl0eSBpcyBhIG1hcCBmaXJzdFxuICAgIC8vIFRoZW4gY2hlY2sgaWYgdGhlIHV0aWxpdHkgbmVlZHMgcHJpbnQgc3R5bGVzXG4gICAgQGlmIHR5cGUtb2YoJHV0aWxpdHkpID09IFwibWFwXCIgYW5kIG1hcC1nZXQoJHV0aWxpdHksIHByaW50KSA9PSB0cnVlIHtcbiAgICAgIEBpbmNsdWRlIGdlbmVyYXRlLXV0aWxpdHkoJHV0aWxpdHksIFwiLXByaW50XCIpO1xuICAgIH1cbiAgfVxufVxuIiwiLypcbiAqIENvb2tpZXMgc3R5bGVzXG4gKiBodHRwczovL3BsYXlncm91bmQuY29va2llY29uc2VudC5vcmVzdGJpZGEuY29tL1xuICovXG4gLmNjLW1haW4sICNjYy1tYWluIHtcbiAgICAtLWNjLWJ0bi1wcmltYXJ5LWJnOiAjZDcwZDE3O1xuICAgIC0tY2MtYnRuLXByaW1hcnktY29sb3I6IHZhcigtLWNjLWJnKTtcbiAgICAtLWNjLWJ0bi1wcmltYXJ5LWJvcmRlci1jb2xvcjogdmFyKC0tY2MtYmcpO1xuICAgIC0tY2MtYnRuLXByaW1hcnktaG92ZXItYm9yZGVyLWNvbG9yOiAjZjQwZDE4O1xuICAgIC0tY2MtYnRuLXByaW1hcnktaG92ZXItYmc6ICNmNDBkMTg7XG59Il0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9*/