/*!****************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./assets/styles/style.css ***!
  \****************************************************************************************************************/
/**
* Template Name: NiceAdmin - v2.5.0
* Template URL: https://bootstrapmade.com/nice-admin-bootstrap-admin-html-template/
* Author: BootstrapMade.com
* License: https://bootstrapmade.com/license/
*/
/*--------------------------------------------------------------
# General
--------------------------------------------------------------*/
#ui-id-1 {
  position: absolute;
}

:root {
  scroll-behavior: smooth;
  --color-bg-page: #06090e;
  --color-bg-page-2: #0d1522;
  --color-surface: rgba(10, 16, 26, 0.65);
  --color-surface-strong: rgba(13, 20, 31, 0.95);
  --color-surface-soft: rgba(255, 255, 255, 0.03);
  --color-border-soft: rgba(0, 229, 255, 0.12);
  --color-border-strong: rgba(0, 229, 255, 0.3);
  --color-text-primary: #f0f4f8;
  --color-text-secondary: #8b9bb4;
  --color-accent: #00e5ff;
  --color-accent-soft: rgba(0, 229, 255, 0.1);
  --color-accent-secondary: #7b4dff;
  --shadow-soft: 0 8px 24px rgba(0, 0, 0, 0.4);
  --shadow-glow: 0 0 15px rgba(0, 229, 255, 0.15);
  --radius-lg: 16px;
  --radius-md: 10px;
}

html {
  scrollbar-width: thin;
  scrollbar-color: rgba(0, 230, 255, 0.38) rgba(255, 255, 255, 0.05);
}

html::-webkit-scrollbar {
  width: 10px;
  height: 10px;
  background-color: var(--color-bg-page) !important;
}

html::-webkit-scrollbar-thumb {
  background: rgba(255, 255, 255, 0.1) !important;
  border-radius: 5px;
  border: none !important;
}

html::-webkit-scrollbar-track {
  background-color: transparent !important;
  border-radius: 5px;
}

html::-webkit-scrollbar-thumb:hover,
html::-webkit-scrollbar-thumb:active {
  background: rgba(255, 255, 255, 0.2) !important;
}

body {
  font-family: "Inter", "Open Sans", sans-serif;
  color: var(--color-text-primary);
  background: linear-gradient(180deg, #060e18 0%, #172d47 48%, #0b1522 100%);
  background-attachment: fixed;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: top center;
  min-height: 100vh;
  position: relative;
  overflow-x: hidden;
  isolation: isolate;
}

body::before {
  content: "";
  position: fixed;
  inset: 0;
  pointer-events: none;
  background:
    radial-gradient(circle at 15% 0%, rgba(0, 229, 255, 0.06), transparent 35%),
    radial-gradient(
      circle at 85% 100%,
      rgba(123, 77, 255, 0.06),
      transparent 35%
    );
  z-index: -1;
}

input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
textarea:-webkit-autofill,
textarea:-webkit-autofill:hover,
textarea:-webkit-autofill:focus,
select:-webkit-autofill,
select:-webkit-autofill:hover,
select:-webkit-autofill:focus {
  -webkit-text-fill-color: #e9f7ff !important;
  caret-color: #e9f7ff !important;
  border: 1px solid rgba(0, 243, 255, 0.35) !important;
  -webkit-box-shadow: 0 0 0 1000px rgba(11, 25, 41, 0.92) inset !important;
  box-shadow: 0 0 0 1000px rgba(11, 25, 41, 0.92) inset !important;
  transition:
    background-color 99999s ease-out 0s,
    color 99999s ease-out 0s;
}

input:autofill,
textarea:autofill,
select:autofill {
  color: #e9f7ff !important;
  background-color: rgba(11, 25, 41, 0.92) !important;
}

input,
textarea,
select {
  color-scheme: dark;
}

select,
option,
optgroup {
  background-color: var(--color-surface-strong) !important;
  color: var(--color-text-primary) !important;
}

a {
  color: var(--color-accent);
  text-decoration: none;
}

/* a:hover {
    color: #48ca55;
    text-decoration: none;
} */

h1 {
  color: var(--color-text-primary);
}

h2,
h3,
h4,
h5,
h6 {
  font-family: "Inter", sans-serif;
  color: var(--color-text-primary);
}

/*--------------------------------------------------------------
# Main
--------------------------------------------------------------*/
#main {
  /* parte de abajo del navbar, (tittle)*/
  background-color: transparent;
  margin-top: 60px;
  padding: 24px 32px;
  transition: all 0.3s;
  overflow-x: auto;
  color: var(--color-text-primary);
}

#main::-webkit-scrollbar {
  width: 10px;
  height: 10px;
  background-color: #050b14 !important;
}

#main::-webkit-scrollbar-thumb {
  background: rgba(255, 255, 255, 0.1) !important;
  border-radius: 5px;
  border: none !important;
}

#main::-webkit-scrollbar-track {
  background-color: rgba(255, 255, 255, 0.05) !important;
  border-radius: 5px;
}

#main {
  scrollbar-width: thin;
  scrollbar-color: rgba(0, 230, 255, 0.36) rgba(255, 255, 255, 0.09);
}

#main::-webkit-scrollbar-thumb:hover,
#main::-webkit-scrollbar-thumb:active {
  background: rgba(255, 255, 255, 0.2) !important;
}

@media (max-width: 1199px) {
  #main {
    padding: 20px;
  }
}

/*--------------------------------------------------------------
# Page Title
--------------------------------------------------------------*/
.pagetitle {
  margin-bottom: 10px;
}

.pagetitle h1 {
  font-size: 34px;
  margin-bottom: 0;
  font-weight: 600;
  color: var(--color-accent) !important;
}

.logo span {
  color: var(--color-text-primary) !important;
}

@media (min-width: 768px) {
  .dropdown-menu-arrow::before {
    content: "";
    width: 13px;
    height: 13px;
    background: #fff;
    position: absolute;
    top: -7px;
    right: 20px;
    transform: rotate(45deg);
    border-top: 1px solid #eaedf1;
    border-left: 1px solid #eaedf1;
  }
}

@-webkit-keyframes dropdown-animate {
  0% {
    opacity: 0;
  }

  100% {
    opacity: 1;
  }

  0% {
    opacity: 0;
  }
}

@keyframes dropdown-animate {
  0% {
    opacity: 0;
  }

  100% {
    opacity: 1;
  }

  0% {
    opacity: 0;
  }
}
/*--------------------------------------------------------------
# Back to top button
--------------------------------------------------------------*/
.back-to-top {
  position: fixed;
  visibility: hidden;
  opacity: 0;
  right: 15px;
  bottom: 15px;
  z-index: 99999;
  background: var(--color-surface-strong);
  width: 40px;
  height: 40px;
  border-radius: 12px;
  transition: all 0.4s;
  box-shadow: var(--shadow-soft);
}

.back-to-top i {
  font-size: 24px;
  color: #fff;
  line-height: 0;
}

.back-to-top:hover {
  background: rgba(0, 229, 255, 0.05);
  color: var(--color-accent);
  border: 1px solid var(--color-border-strong);
  box-shadow: var(--shadow-soft);
}

.back-to-top.active {
  visibility: visible;
  opacity: 1;
}
/*--------------------------------------------------------------
# Header
--------------------------------------------------------------*/
/* Estilo base del logo */
.logo {
  display: flex;
  align-items: center;
  gap: 6px;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  max-width: 100%;
}

/* Imagen del logo */
.logo img {
  width: 48px;
  height: 48px;
  max-height: 48px;
  border-radius: 50%;
  object-fit: cover;
  border: 1px solid var(--color-border-soft);
}

/* Texto del logo */
.logo span {
  font-size: 22px;
  font-weight: 700;
  color: var(--color-accent); /* azul cielo */
  font-family: "Nunito", sans-serif;
  display: inline-block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  max-width: 100%;
}

/* Para pantallas grandes */
@media (min-width: 1200px) {
  .logo {
    width: 210px;
  }
}

/* Para tablets y celulares */
@media (max-width: 1199.98px) {
  .logo {
    width: auto;
    max-width: 180px;
  }

  .logo img {
    width: 30px;
    height: 30px;
    max-height: 40px;
  }

  .logo span {
    font-size: 16px;
  }
}

/* Para celulares pequeños (menos de 576px) */
@media (max-width: 575.98px) {
  .logo {
    max-width: 140px;
  }

  .logo span {
    font-size: 14px;
  }
}

/*header*/
.header {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  height: 60px;
  z-index: 997;
  transition: all 0.5s;
  padding: 20px;
  background: rgba(10, 15, 24, 0.85);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  border-bottom: 1px solid var(--color-border-soft);
  margin: 0;
  border-radius: 0;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.5);
  border-right: none;
}

.header .toggle-sidebar-btn {
  /*Menu hamburguesa*/
  font-size: 32px;
  padding-left: 10px;
  cursor: pointer;
  color: var(--color-text-primary) !important;
  transition: 0.3s;
}

.header .search-bar {
  padding: 0 10px;
}

.language-switcher {
  margin-left: 0 !important;
  margin-right: auto;
}

.language-toggle {
  display: inline-flex !important;
  align-items: center;
  gap: 8px;
  color: var(--color-text-primary) !important;
  border: 1px solid var(--color-border-soft) !important;
  background-color: rgba(0, 0, 0, 0.2) !important;
  font-family:
    "Segoe UI Emoji", "Apple Color Emoji", "Noto Color Emoji",
    "Twemoji Mozilla", "Open Sans", sans-serif;
  box-shadow: var(--shadow-soft);
}

.language-toggle:hover,
.language-toggle:focus,
.language-toggle.show {
  color: #ffffff !important;
  border-color: var(--color-border-strong) !important;
  background-color: rgba(0, 229, 255, 0.05) !important;
  box-shadow: var(--shadow-soft) !important;
}

.language-toggle::after {
  margin-left: 2px;
}

.language-switcher .language-menu {
  min-width: 180px;
}

.language-switcher .language-option {
  gap: 10px;
  font-family:
    "Segoe UI Emoji", "Apple Color Emoji", "Noto Color Emoji",
    "Twemoji Mozilla", "Open Sans", sans-serif;
}

.language-switcher .language-flag {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 1.5rem;
  font-size: 1rem;
  line-height: 1;
}

.language-switcher .language-text {
  line-height: 1;
}

.language-switcher .language-option.active {
  background-color: rgba(0, 229, 255, 0.05) !important;
  color: var(--color-accent) !important;
}

.language-switcher .language-option.active .language-text {
}

#language option {
  background-color: var(--color-surface-strong);
  color: #ffffff;
  padding: 10px;
  font-family:
    "Segoe UI Emoji", "Apple Color Emoji", "Noto Color Emoji",
    "Twemoji Mozilla", "Open Sans", sans-serif;
}
@media (max-width: 1199px) {
  .header .search-bar {
    position: fixed;
    top: 50px;
    left: 0;
    right: 0;
    padding-left: 20px;
    box-shadow: 0px 0px 15px 0px rgba(0, 0, 0, 0.3);
    z-index: 9999;
    transition: 0.3s;
    visibility: hidden;
    opacity: 0;
  }

  .header .search-bar-show {
    top: 60px;
    visibility: visible;
    opacity: 1;
  }
}

.header .search-form {
  width: 100%;
}

inputHeader,
selectHeader {
  background-color: rgba(0, 0, 0, 0.2) !important;
  color: var(--color-text-primary) !important;
  border: 1px solid var(--color-border-soft) !important;
  border-radius: 8px;
}

.header .search-form input {
  background-color: rgba(0, 0, 0, 0.2) !important;
  font-size: 14px;
  color: var(--color-text-primary);
  padding: 7px 38px 7px 8px;
  transition: 0.3s;
  width: 100%;
  font-family: "Inter", sans-serif;
  font-weight: 500;
  font-size: 15px;
  letter-spacing: 0.5px;
  border: 1px solid var(--color-border-soft) !important;
  border-radius: 8px;
}

.header .search-form input::placeholder {
  /*texto a buscar*/
  color: var(--color-text-secondary) !important;
  font-weight: 400;
  font-style: italic;
}

.header .search-form input:focus,
.header .search-form input:hover {
  outline: none;
  box-shadow: 0 0 0 0.2rem rgba(0, 230, 255, 0.15);
}

.header .search-form button {
  border: 0;
  padding: 0;
  margin-left: -30px;
  background: none;
}

.header .search-form button i {
  color: var(--color-accent);
}

/*--------------------------------------------------------------
# Header Nav
--------------------------------------------------------------*/
.header-nav ul {
  list-style: none;
}

.header-nav > ul {
  margin: 0;
  padding: 0;
}

.header-nav .nav-icon {
  font-size: 22px;
  color: var(--color-text-primary);
  margin-right: 25px;
  position: relative;
  transition: 0.3s;
}

.header-nav .nav-icon:hover {
  color: var(--color-accent);
}

/*nav derecho, profile*/
.header-nav .nav-profile {
  color: var(--color-text-primary) !important;
}

.header-nav .nav-profile .profile-avatar {
  width: 44px;
  height: 44px;
  min-width: 44px;
  margin-right: 2px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  object-fit: cover;
}

.header-nav .nav-profile img.profile-avatar {
  border: 1px solid var(--color-accent);
}

.header-nav .nav-profile .profile-initials {
  background: var(--color-surface-strong) !important;
  border: 1px solid var(--color-accent);
  color: #ffffff;
  font-size: 16px;
  font-weight: 700;
  line-height: 1;
  text-transform: uppercase;
}

.header-nav .nav-profile:hover .profile-avatar {
  border-color: var(--color-accent);
}

.header-nav .nav-profile span {
  font-size: 14px;
  font-weight: 600;
  color: var(--color-text-primary);
  display: inline-block;
  max-width: 180px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.header-nav .badge-number {
  position: absolute;
  inset: -2px -5px auto auto;
  font-weight: normal;
  font-size: 12px;
  padding: 3px 6px;
  background: var(--color-accent);
  color: #ffffff;
  border-radius: 10px;
}

.header-nav .notifications {
  inset: 8px -15px auto auto !important;
}

.header-nav .notifications .notification-item {
  display: flex;
  align-items: center;
  padding: 15px 10px;
  transition: 0.3s;
  background-color: transparent;
  border-bottom: 1px solid var(--color-border-soft);
}

.header-nav .notifications .notification-item i {
  margin: 0 20px 0 10px;
  font-size: 24px;
  color: #007bff;
}

.header-nav .notifications .notification-item h4 {
  font-size: 16px;
  font-weight: 600;
  margin-bottom: 5px;
  color: #003366;
}

.header-nav .notifications .notification-item:hover {
  background-color: rgba(0, 229, 255, 0.05); /* Hover azul cielo */
}

.header-nav .messages {
  inset: 8px -15px auto auto !important;
}

.header-nav .messages .message-item {
  padding: 15px 10px;
  transition: 0.3s;
  background-color: transparent;
  border-bottom: 1px solid var(--color-border-soft);
}

.header-nav .messages .message-item a {
  display: flex;
}

.header-nav .messages .message-item img {
  margin: 0 20px 0 10px;
  max-height: 40px;
  border-radius: 50%;
  border: 2px solid var(--color-accent); /* Borde azul brillante */
}

.header-nav .messages .message-item h4 {
  font-size: 16px;
  font-weight: 600;
  margin-bottom: 5px;
  color: #003366; /* Azul profundo */
}

.header-nav .messages .message-item:hover {
  background-color: rgba(0, 229, 255, 0.05);
}

.header-nav .profile {
  min-width: 240px;
  padding-bottom: 0;
  top: 8px !important;
  background-color: var(--color-surface-strong);
  border: 1px solid var(--color-border-soft);
  border-radius: 8px;
  box-shadow: var(--shadow-soft);
}

.header-nav .profile .dropdown-header h6 {
  font-size: 18px;
  margin-bottom: 0;
  font-weight: 600;
  color: var(--color-accent);
}

.header-nav .profile .dropdown-header span {
  font-size: 14px;
  color: var(--color-text-secondary);
}

.header-nav .profile .dropdown-item {
  font-size: 14px;
  padding: 10px 15px;
  transition: 0.3s;
  color: var(--color-text-primary);
  background-color: transparent;
}

.header-nav .profile .dropdown-item i {
  margin-right: 10px;
  font-size: 18px;
  line-height: 0;
  color: var(--color-accent);
  transition: 0.3s;
}

.header-nav .profile .dropdown-item:hover {
  background-color: rgba(0, 229, 255, 0.05);
  color: var(--color-accent);
}

/*forzar el profile*/
.dropdown-menu,
.navbar .dropdown-menu {
  background-color: var(--color-surface-strong) !important;
  border: 1px solid var(--color-border-soft) !important;
  color: var(--color-text-primary) !important;
  box-shadow: var(--shadow-soft) !important;
  padding: 0.5rem 0;
  border-radius: 8px;
}

.dropdown-item,
.navbar .dropdown-item {
  color: #e9f7ff !important;
  background-color: transparent !important;
  transition: all 0.2s ease;
  padding: 10px 20px;
}

.dropdown-item:hover,
.dropdown-item:focus,
.navbar .dropdown-item:hover {
  background-color: rgba(0, 229, 255, 0.05) !important;
  color: var(--color-accent) !important;
  padding-left: 25px;
}

.dropdown-divider {
  border-top: 1px solid var(--color-border-soft) !important;
  margin: 0.5rem 0;
}
.header-nav .profile .dropdown-header .emailnav {
  color: #e9f7ff !important;
}

/*--------------------------------------------------------------
# Sidebar IZQUIERDAAAAAAAAAAAAAAAA
--------------------------------------------------------------*/
/* ======= SIDEBAR BASE ======= */
.sidebar {
  position: fixed;
  top: 60px;
  left: 0;
  bottom: 0;
  width: 300px;
  z-index: 1000 !important;
  padding: 20px;
  overflow-y: scroll;
  background: var(--color-surface-strong);
  border-radius: 0;
  transition: all 0.3s ease-in-out;
  /*no scroll bar*/
  -ms-overflow-style: none;
  scrollbar-width: none;
  box-shadow: 4px 0 24px rgba(0, 0, 0, 0.3);
  border-right: 1px solid var(--color-border-soft);
}

.sidebar::-webkit-scrollbar {
  display: none;
}

/* ======= SCROLLBAR CUSTOM ======= */
.sidebar::-webkit-scrollbar {
  width: 8px;
  height: 8px;
  background-color: #050b14; /* Azul pastel */
}

.sidebar::-webkit-scrollbar-thumb {
  background: rgba(255, 255, 255, 0.1);
  border-radius: 5px;
}

/* ======= RESPONSIVE BEHAVIOR ======= */
@media (max-width: 1199px) {
  .sidebar {
    left: -300px;
  }

  .toggle-sidebar .sidebar {
    left: 0;
  }
}

@media (min-width: 1200px) {
  #main,
  #footer {
    margin-left: 300px;
  }

  .toggle-sidebar #main,
  .toggle-sidebar #footer {
    margin-left: 0;
  }

  .toggle-sidebar .sidebar {
    left: -300px;
  }

  .header .search-bar {
    min-width: 250px; /* Aquí sí le damos tamaño grande */
    margin-left: auto; /* El resorte que empuja a la derecha */
    margin-right: 15px;
    display: block;
  }

  .language-switcher {
    margin-left: 0;
    margin-right: 25px;
  }
}


.ui-table-detail-panel {
    border-radius: 14px;
    background: linear-gradient(180deg, #12324a 0%, #0d2538 100%);
    padding: 0.8rem;
}

.ui-table-detail-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: 0.7rem;
}

.ui-table-detail-item {
    display: flex;
    flex-direction: row !important;
    align-items: flex-start !important;
    justify-content: flex-start !important;
    gap: 0.75rem;
    padding: 0.55rem 0.65rem !important;
    border-radius: 10px;
    border: 1px solid rgba(0, 243, 255, 0.18);
    background: rgba(0, 150, 255, 0.08);
    text-align: left;
}

.ui-table-detail-item--full {
    grid-column: 1 / -1;
}

.ui-table-detail-item--statuscompact {
    width: 100%;
    max-width: 100%;
    min-width: 0;
    justify-self: stretch;
    flex: 1 1 auto;
}

.ui-table-detail-text-wrapper {
    display: flex;
    flex-direction: column;
    align-items: flex-start !important;
    gap: 2px;
    min-width: 0;
}

.ui-table-detail-label {
    font-size: 0.65rem !important;
    text-transform: uppercase;
    color: #00f3ff !important;
    font-weight: 700;
    letter-spacing: 0.05em;
    margin-bottom: 0;
    text-align: left !important;
}

.ui-table-detail-value {
    color: #ffffff;
    font-size: 0.92rem;
    font-weight: 500;
    word-break: break-word;
    white-space: normal !important;
    text-align: left !important;
}

.bootstrap-table .detail-view td {
    padding: 0 !important;
    background: linear-gradient(180deg, #12324a 0%, #0d2538 100%) !important;
    border-bottom: 1px solid rgba(0, 243, 255, 0.2) !important;
}

/* ======= NAV STYLES ======= */
.sidebar-nav {
  padding: 2px;
  margin: 2px;
  list-style: none;
  min-height: calc(100vh - 20px);
}

.sidebar-nav li {
  list-style: none;
  margin: 0;
  padding: 0;
}

.sidebar-nav .nav-item {
  margin-bottom: 20px;
}

.sidebar-nav .nav-heading {
  font-size: 12px;
  text-transform: uppercase;
  color: var(--color-text-primary);
  font-weight: 600;
  margin: 12px 0 6px 15px;
  border-left: 4px solid rgba(0, 230, 255, 0.52);
  border-radius: 6px;
  padding-left: 8px;
}

/* ======= NAV LINKS ======= */
.sidebar-nav .nav-link {
  display: flex;
  align-items: center;
  font-size: 15px;
  font-weight: 600;
  color: var(--color-text-primary);
  background-color: transparent;
  padding: 10px 16px;
  border-radius: 8px;
  border: 1px solid transparent;
  box-shadow: none;
  transition:
    background-color 0.3s,
    color 0.3s,
    box-shadow 0.3s,
    transform 0.3s;
  will-change: transform, box-shadow;
  text-rendering: geometricPrecision;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  backface-visibility: hidden;
  transform: translateZ(0);
}

.sidebar-nav .nav-link:hover {
  background: linear-gradient(
    135deg,
    rgba(0, 230, 255, 0.12),
    rgba(138, 92, 255, 0.1)
  );
  color: #ffffff;
  box-shadow:
    0 0 0 1px rgba(0, 230, 255, 0.25),
    var(--shadow-glow);
  border-color: rgba(0, 230, 255, 0.34);
}

/* iconos nav  */
.sidebar-nav .nav-link i {
  font-size: 18px;
  margin-right: 12px;
  color: var(--color-accent);
  text-shadow: 0 0 8px rgba(0, 230, 255, 0.2);
}

/*cuando no esta sin seleccionar*/
.sidebar-nav .nav-link.collapsed {
  background-color: rgba(11, 25, 41, 0.86);
  color: var(--color-text-primary);
}
/*HOVER*/
.sidebar-nav .nav-link:hover,
.sidebar-nav .nav-link.active {
  /*     background: linear-gradient(135deg, rgba(0, 230, 255, 0.12), rgba(138, 92, 255, 0.08));
 */
  background: #0000004d;
  color: #ffffff;
  transform: scale(1.05);
  transition: all 0.3s ease;
  border-color: var(--color-accent);
  /*     box-shadow: 0 0 0 1px rgba(0, 230, 255, 0.2), var(--shadow-glow);
 */
}

.sidebar-nav .nav-link:hover i,
.sidebar-nav .nav-link.active i {
  color: #ffffff !important;
  transform: scale(1.1);
  transition: all 0.3s ease;
}

.sidebar-nav .nav-link.collapsed i {
  color: var(--color-text-primary); /* Ícono cambia a azul más oscuro */
}

.sidebar-nav .nav-link .bi-chevron-down {
  margin-left: auto;
  transition: transform 0.2s ease-in-out;
}

.sidebar-nav .nav-link:not(.collapsed) .bi-chevron-down {
  transform: rotate(180deg);
}

.sidebar-nav .nav-link span {
  transition: all 0.3s ease;
}

.sidebar-nav .nav-link:hover span {
  color: var(--color-accent);
}

/* ======= SUBMENÚ ======= */
.sidebar-nav .nav-content {
  padding: 5px 0 0;
  margin: 0;
  list-style: none;
}

.sidebar-nav .nav-content a {
  display: flex;
  align-items: center;
  font-size: 14px;
  font-weight: 600;
  color: var(--color-text-secondary); /* Azul intermedio */
  padding: 12px 0 12px 40px;
  transition: 0.3s;
}

.sidebar-nav .nav-content a i {
  font-size: 6px;
  margin-right: 10px;
  border-radius: 50%;
}

.sidebar-nav .nav-content a:hover,
.sidebar-nav .nav-content a.active {
  background: rgba(0, 229, 255, 0.05);
  color: var(--color-accent);
  border-radius: 8px;
}

/*--------------------------------------------------------------
# Dashboard
--------------------------------------------------------------*/
/*!*--------------------------------------------------------------*/
/*# Icons list page*/
/*--------------------------------------------------------------*!*/
.iconslist {
  display: grid;
  max-width: 100%;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  gap: 1.25rem;
  padding-top: 15px;
}

.iconslist .icon {
  background-color: #fff;
  border-radius: 0.25rem;
  text-align: center;
  color: #012970;
  padding: 15px 0;
}

.iconslist i {
  margin: 0.25rem;
  font-size: 2.5rem;
}

.iconslist .label {
  font-family: var(--bs-font-monospace);
  display: inline-block;
  width: 100%;
  overflow: hidden;
  padding: 0.25rem;
  font-size: 12px;
  text-overflow: ellipsis;
  white-space: nowrap;
  color: #666;
}

/*--------------------------------------------------------------
# F.A.Q Page
--------------------------------------------------------------*/
.faq .basic h6 {
  font-size: 18px;
  font-weight: 600;
  color: #4154f1;
}

.faq .basic p {
  color: #6980aa;
}

/*--------------------------------------------------------------
# Contact
--------------------------------------------------------------*/
.contact .info-box {
  padding: 28px 30px;
}

.contact .info-box i {
  font-size: 38px;
  line-height: 0;
  color: #4154f1;
}

.contact .info-box h3 {
  font-size: 20px;
  color: #012970;
  font-weight: 700;
  margin: 20px 0 10px 0;
}

.contact .info-box p {
  padding: 0;
  line-height: 24px;
  font-size: 14px;
  margin-bottom: 0;
}

.contact .php-email-form .error-message {
  display: none;
  color: #fff;
  background: #ed3c0d;
  text-align: left;
  padding: 15px;
  margin-bottom: 24px;
  font-weight: 600;
}

.contact .php-email-form .sent-message {
  display: none;
  color: #fff;
  background: #18d26e;
  text-align: center;
  padding: 15px;
  margin-bottom: 24px;
  font-weight: 600;
}

.contact .php-email-form .loading {
  display: none;
  background: #fff;
  text-align: center;
  padding: 15px;
  margin-bottom: 24px;
}

.contact .php-email-form .loading:before {
  content: "";
  display: inline-block;
  border-radius: 50%;
  width: 24px;
  height: 24px;
  margin: 0 10px -6px 0;
  border: 3px solid #18d26e;
  border-top-color: #eee;
  -webkit-animation: animate-loading 1s linear infinite;
  animation: animate-loading 1s linear infinite;
}

.contact .php-email-form input,
.contact .php-email-form textarea {
  border-radius: 0;
  box-shadow: none;
  font-size: 14px;
  border-radius: 0;
}

.contact .php-email-form input:focus,
.contact .php-email-form textarea:focus {
  border-color: #4154f1;
}

.contact .php-email-form input {
  padding: 10px 15px;
}

.contact .php-email-form textarea {
  padding: 12px 15px;
}

.contact .php-email-form button[type="submit"] {
  background: #4154f1;
  border: 0;
  padding: 10px 30px;
  color: #fff;
  transition: 0.4s;
  border-radius: 4px;
}

.contact .php-email-form button[type="submit"]:hover {
  background: #5969f3;
}

@-webkit-keyframes animate-loading {
  0% {
    transform: rotate(0deg);
  }

  100% {
    transform: rotate(360deg);
  }
}

@keyframes animate-loading {
  0% {
    transform: rotate(0deg);
  }

  100% {
    transform: rotate(360deg);
  }
}

/*--------------------------------------------------------------
# Error 404
--------------------------------------------------------------*/
.error-404 {
  padding: 30px;
}

.error-404 h1 {
  font-size: 180px;
  font-weight: 700;
  color: #4154f1;
  margin-bottom: 0;
  line-height: 150px;
}

.error-404 h2 {
  font-size: 24px;
  font-weight: 700;
  color: #012970;
  margin-bottom: 30px;
}

.error-404 .btn {
  background: #51678f;
  color: #fff;
  padding: 8px 30px;
}

.error-404 .btn:hover {
  background: #3e4f6f;
}

@media (min-width: 992px) {
  .error-404 img {
    max-width: 50%;
  }
}

/*--------------------------------------------------------------
# Footer
--------------------------------------------------------------*/
.footer {
  padding: 20px 0;
  font-size: 14px;
  transition: all 0.3s;
  background-color: transparent; /* Fondo azul cielo muy claro */
  border-top: 1px solid #b5d9ff; /* Línea superior azul clara */
  box-shadow: 0 -2px 10px rgba(0, 123, 255, 0.1); /* Sombra sutil superior */
}

.footer .copyright {
  text-align: center;
  color: var(--color-accent); /* Azul cielo principal */
  font-weight: 600;
}

.footer .credits {
  padding-top: 5px;
  text-align: center;
  font-size: 13px;
  color: var(--color-text-secondary); /* Azul más suave */
}

input[type="checkbox"] {
  width: 20px;
  height: 20px;
  accent-color: var(--color-accent);
  cursor: pointer;
  border-radius: 6px;
  background-color: rgba(0, 0, 0, 0.2) !important;
  border: 1px solid var(--color-border-soft) !important;
}

input[type="checkbox"] {
  border: 1px solid var(--color-border-soft);
  border-radius: 6px;
}

/*/* Hover */
input[type="checkbox"]:hover {
  border-color: var(--color-accent);
}

/* Cuando está marcado */
input[type="checkbox"]:checked {
  border-color: var(--color-accent) !important;
  background-color: var(--color-accent) !important;
}

input,
textarea,
select {
  border: 1px solid var(--color-border-soft) !important;
  border-radius: 8px;
  padding: 10px;
  font-size: 14px;
  color: var(--color-text-primary);
  background-color: rgba(0, 0, 0, 0.2);
}

input:focus,
textarea:focus,
select:focus {
  border-color: var(--color-accent) !important;
  box-shadow: 0 0 0 2px rgba(0, 229, 255, 0.15) !important;
  background-color: rgba(0, 0, 0, 0.4);
}
/* estilos de los alert */
div:where(.swal2-container) div:where(.swal2-popup) {
  background-color: var(--color-surface-strong) !important;
  border: 1px solid var(--color-border-soft) !important;
  border-radius: 16px !important;
  box-shadow: 0 20px 40px rgba(0, 0, 0, 0.6) !important;
  padding: 2em !important;
}

div:where(.swal2-container) .swal2-title {
  color: #ffffff !important;
  font-family: "Poppins", sans-serif !important;
  font-weight: 700 !important;
}
div:where(.swal2-container) .swal2-html-container {
  color: var(--color-text-secondary) !important;
  font-family: "Poppins", sans-serif !important;
  font-size: 1rem !important;
}

div:where(.swal2-container) .swal2-confirm {
  background-color: var(--color-accent) !important;
  border: none !important;
  color: #000 !important;
  font-weight: 600 !important;
  border-radius: 8px !important;
  padding: 10px 30px !important;
  transition: all 0.3s ease !important;
}

div:where(.swal2-container) .swal2-confirm:hover {
  background-color: #00b8cc !important;
  box-shadow: 0 0 15px var(--shadow-glow) !important;
}

div:where(.swal2-container) .swal2-cancel {
  background-color: transparent !important;
  border: 1px solid var(--color-text-secondary) !important;
  color: var(--color-text-secondary) !important;
  border-radius: 8px !important;
}

div:where(.swal2-container) .swal2-cancel:hover {
  color: var(--color-text-primary) !important;
  border-color: var(--color-text-primary) !important;
  background-color: rgba(255, 255, 255, 0.05) !important;
}

div:where(.swal2-icon).swal2-success {
  border-color: #00ff9d !important;
  color: #00ff9d !important;
}

div:where(.swal2-icon).swal2-success .swal2-success-ring {
  border: 0.25em solid rgba(0, 255, 157, 0.22) !important;
}

div:where(.swal2-icon).swal2-success [class^="swal2-success-line"] {
  background-color: #00ff9d !important;
  box-shadow: 0 0 10px rgba(0, 255, 157, 0.28) !important;
}

div:where(.swal2-container) .swal2-loader {
  border-color: var(--color-accent) transparent var(--color-accent) transparent !important;
}

div:where(.swal2-container).swal-loading-overlay {
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
}

div:where(.swal2-container).swal-loading-overlay
  div:where(.swal2-popup).swal-loading-popup {
  box-shadow:
    0 0 35px rgba(0, 230, 255, 0.14),
    0 18px 48px rgba(0, 0, 0, 0.55) !important;
}

/* =========================================
   FIX: AUTOCOMPLETADO (Chrome/Edge/Safari)
   ========================================= */

/* Seleccionamos el estado 'autofill' del input */
input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
input:-webkit-autofill:active {
  /* 1. CAMBIAR EL COLOR DE LA LETRA */
  /* Usamos esta propiedad específica de Webkit para forzar el blanco */
  -webkit-text-fill-color: #e9f7ff !important;

  -webkit-box-shadow: 0 0 0 1000px #112e47 inset !important;

  font-family: "Barlow", sans-serif !important; /* O la fuente que elegiste */
  transition: background-color 5000s ease-in-out 0s;
}

/* --------------------------------------------------------------
# Responsive refinements (mobile/tablet)
-------------------------------------------------------------- */
@media (max-width: 991.98px) {
  #main {
    padding: 16px 14px;
  }

  .pagetitle h1 {
    font-size: 1.75rem;
    line-height: 1.2;
  }

  .header {
    padding: 10px 12px;
    border-right: 0;
  }

  .header .toggle-sidebar-btn {
    font-size: 28px;
    padding-left: 0;
  }

  .header-nav .nav-icon {
    margin-right: 12px;
  }

  .header-nav .nav-profile .profile-avatar {
    width: 40px;
    height: 40px;
    min-width: 40px;
  }

  .logo .logo-text {
    max-width: 110px;
  }

  .header-nav .nav-profile .profile-name {
    display: inline-block;
    max-width: 130px;
  }

  .sidebar {
    width: 280px;
    padding: 14px 10px;
  }

  .toggle-sidebar .sidebar {
    left: 0;
  }
}

@media (max-width: 767.98px) {
  #main {
    padding: 12px 10px;
  }

  .pagetitle h1 {
    font-size: 1.35rem;
  }

  .header .search-bar {
    padding-left: 10px;
    padding-right: 10px;
  }

  .logo .logo-text {
    max-width: 84px;
  }

  .header-nav .nav-profile .profile-avatar {
    width: 34px;
    height: 34px;
    min-width: 34px;
  }

  .header-nav .nav-profile .profile-name {
    max-width: 84px;
    font-size: 12px;
  }

  .sidebar {
    width: 260px;
    left: -260px;
    border-right-width: 2px;
  }

  .toggle-sidebar .sidebar {
    left: 0;
  }

  .sidebar-nav .nav-link {
    font-size: 14px;
    padding: 10px 12px;
  }

  .sidebar-nav .nav-link i {
    font-size: 16px;
    margin-right: 8px;
  }

  .sidebar-nav .nav-content a {
    padding-left: 28px;
    font-size: 13px;
  }
}

.jconfirm .jconfirm-bg {
  background-color: rgba(5, 11, 20, 0.72) !important;
}

.jconfirm .jconfirm-box {
  background-color: var(--color-surface-strong) !important;
  border: 1px solid var(--color-border-soft) !important;
  border-radius: 16px !important;
  box-shadow: 0 20px 40px rgba(0, 0, 0, 0.6) !important;
  padding: 2em !important;
}

.jconfirm .jconfirm-title-c {
  padding-bottom: 8px !important;
}

.jconfirm .jconfirm-title {
  color: #ffffff !important;
  font-family: "Poppins", sans-serif !important;
  font-weight: 700 !important;
}

.jconfirm .jconfirm-content {
  color: var(--color-text-secondary) !important;
  font-family: "Poppins", sans-serif !important;
  font-size: 1rem !important;
  line-height: 1.55 !important;
}

.jconfirm .jconfirm-buttons {
  display: flex !important;
  justify-content: flex-end;
  gap: 12px;
  padding-top: 10px !important;
}

.jconfirm .jconfirm-buttons .btn {
  border-radius: 8px !important;
  padding: 10px 30px !important;
  font-weight: 700 !important;
  letter-spacing: 0.02em;
  border: 1px solid transparent !important;
  box-shadow: none !important;
  transition: all 0.3s ease !important;
}

.jconfirm .jconfirm-buttons .btn-primary {
  background-color: var(--color-accent) !important;
  color: #000 !important;
}

.jconfirm .jconfirm-buttons .btn-danger {
  background-color: transparent !important;
  border: 1px solid var(--color-text-secondary) !important;
  color: var(--color-text-secondary) !important;
}

.jconfirm .jconfirm-buttons .btn-primary:hover {
  background-color: #00b8cc !important;
  box-shadow: 0 0 15px var(--shadow-glow) !important;
}

.jconfirm .jconfirm-buttons .btn-danger:hover {
  color: var(--color-text-primary) !important;
  border-color: var(--color-text-primary) !important;
  background-color: rgba(255, 255, 255, 0.05) !important;
}

.jconfirm .jconfirm-buttons .btn:focus {
  outline: none !important;
  box-shadow: 0 0 0 0.2rem rgba(0, 230, 255, 0.14) !important;
}

.surface-panel {
  background: var(--color-surface);
  border: 1px solid var(--color-border-soft);
  border-radius: var(--radius-lg);
  box-shadow: var(--shadow-soft);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
}

.surface-panel-strong {
  background: var(--color-surface-strong);
  border: 1px solid var(--color-border-strong);
  border-radius: var(--radius-lg);
  box-shadow: var(--shadow-soft), var(--shadow-glow);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
}

.surface-panel-soft {
  background: var(--color-surface-soft);
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: var(--radius-md);
}

.text-accent {
  color: var(--color-accent) !important;
}

.text-muted-soft {
  color: var(--color-text-secondary) !important;
}

.soft-divider {
  border-color: rgba(0, 230, 255, 0.12) !important;
}

@media (max-width: 767.98px) {
  body {
    background-attachment: scroll;
  }

  #main {
    padding: 12px 10px;
  }
}

/*!*****************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./assets/styles/tables.css ***!
  \*****************************************************************************************************************/
/* Estilos generales para la tabla */
.estilos_generales {
    width: 100%;
    max-width: 100%;
    display: table;
    margin: 0;
    border-collapse: separate;
    border-spacing: 0;
    font-family: 'Inter', sans-serif;
    background-color: var(--color-surface, rgba(10, 16, 26, 0.65)) !important;
    backdrop-filter: blur(10px);
    color: var(--color-text-primary, #f0f4f8);
    border: 1px solid var(--color-border-soft, rgba(0, 229, 255, 0.15));
    border-radius: 12px;
}

.bootstrap-table {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0;
}

.bootstrap-table .fixed-table-toolbar,
.bootstrap-table .fixed-table-pagination,
.bootstrap-table .fixed-table-container,
.bootstrap-table .fixed-table-header,
.bootstrap-table .fixed-table-body,
.bootstrap-table .fixed-table-footer {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0;
}

.estilos_generales th {
    font-size: 15px;
    font-weight: bold;
    padding: 12px 13px;
    background: rgba(0, 0, 0, 0.4);
    color: var(--color-accent, #00e5ff);
    border-bottom: 1px solid var(--color-border-strong, rgba(0, 229, 255, 0.3));
    text-align: left;
    white-space: nowrap;
}

.estilos_generales td {
    padding: 8px;
    font-size: 13px;
    background: transparent;
    color: var(--color-text-primary, #f0f4f8);
    border-bottom: 1px solid rgba(255, 255, 255, 0.05);
    white-space: nowrap;
}

.osp-table-ui .fixed-table-container .table {
    display: table !important;
    width: 100% !important;
    table-layout: auto;
    color: var(--color-text-primary, #f0f4f8) !important;
    background-color: transparent !important;
}

.osp-table-ui,
.osp-table-ui .fixed-table-container,
.osp-table-ui .fixed-table-header,
.osp-table-ui .fixed-table-body {
    width: 100% !important;
    max-width: 100%;
    min-width: 0;
}

.osp-table-ui .fixed-table-container {
    overflow: hidden;
}

.osp-table-ui .fixed-table-container .fixed-table-header table,
.osp-table-ui .fixed-table-container .fixed-table-body table,
.osp-table-ui .fixed-table-container .fixed-table-footer table {
    width: 100% !important;
    min-width: 100% !important;
    max-width: 100% !important;
    margin-inline: 0;
}

.osp-table-ui .fixed-table-container .table th {
    color: var(--color-accent, #00e5ff) !important;
    background-color: rgba(0, 0, 0, 0.4) !important;
    border-bottom: 1px solid var(--color-border-strong, rgba(0, 229, 255, 0.3)) !important;
}

.osp-table-ui .fixed-table-container .table td {
    color: var(--color-text-primary, #f0f4f8) !important;
    background-color: transparent !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.05) !important;
}

.osp-table-ui .fixed-table-container thead th .th-inner {
    width: 100%;
    min-height: 40px;
    padding: 0.72rem 1rem !important;
    white-space: nowrap;
}

.osp-table-ui .fixed-table-container .table thead th.detail,
.osp-table-ui .fixed-table-container .table tbody > tr[data-index] > td:first-child {
    width: 46px;
    min-width: 46px;
    text-align: center;
}

.osp-table-ui .fixed-table-container tbody td {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    vertical-align: middle;
}

.osp-table-ui .fixed-table-container tbody td:last-child,
.osp-table-ui .fixed-table-container thead th:last-child {
    width: 1%;
}

.paises-table-shell .osp-table-ui,
.paises-table-shell .osp-table-ui .fixed-table-container,
.paises-table-shell .osp-table-ui .fixed-table-header,
.paises-table-shell .osp-table-ui .fixed-table-body {
    width: 100% !important;
}

.paises-table-shell .osp-table-ui .fixed-table-container .table {
    display: table !important;
    width: 100% !important;
    table-layout: fixed;
}

.paises-table-shell .osp-table-ui .fixed-table-container .fixed-table-header table,
.paises-table-shell .osp-table-ui .fixed-table-container .fixed-table-body table,
.paises-table-shell .osp-table-ui .fixed-table-container .fixed-table-footer table {
    width: 100% !important;
    min-width: 100% !important;
    max-width: 100% !important;
}

.paises-table-shell .osp-table-ui .fixed-table-container .table th,
.paises-table-shell .osp-table-ui .fixed-table-container .table td {
    white-space: normal;
    overflow: visible !important;
    text-overflow: unset !important;
    word-break: break-word;
    overflow-wrap: anywhere;
}

.paises-table-shell .osp-table-ui .fixed-table-container .table td:last-child,
.paises-table-shell .osp-table-ui .fixed-table-container .table th:last-child {
    width: 28%;
}

.paises-table-shell .osp-table-ui .fixed-table-container .table td:nth-child(4),
.paises-table-shell .osp-table-ui .fixed-table-container .table th:nth-child(4) {
    width: 24%;
}

.paises-table-shell .osp-table-ui .fixed-table-container .table .btn {
    white-space: nowrap;
}

.paises-table-shell .osp-table-ui .fixed-table-container thead th .th-inner {
    white-space: normal;
    overflow: visible !important;
    text-overflow: unset !important;
    word-break: break-word;
    overflow-wrap: anywhere;
}

.paises-table-shell .osp-table-ui .fixed-table-container tbody td > *,
.paises-table-shell .osp-table-ui .fixed-table-container tbody td span,
.paises-table-shell .osp-table-ui .fixed-table-container tbody td div,
.paises-table-shell .osp-table-ui .fixed-table-container tbody td a:not(.btn) {
    white-space: normal;
    overflow: visible !important;
    text-overflow: unset !important;
    word-break: break-word;
    overflow-wrap: anywhere;
}

.estilos_generales td a,
.estilos_generales td a:visited {
    color: var(--color-accent, #00e5ff) !important;
    text-decoration: none !important;
    font-weight: 600;
    transition: color 0.2s ease, text-shadow 0.2s ease;
}

.estilos_generales td a:hover,
.estilos_generales td a:focus {
    color: #fff !important;
    text-decoration: none !important;
    text-shadow: 0 0 8px var(--color-accent, #00e5ff);
}

.estilos_generales tbody tr:hover {
    background-color: rgba(0, 229, 255, 0.05);
}

/* scrolbar de la tabla */
.estilos_generales::-webkit-scrollbar,
.osp-table-ui .fixed-table-body::-webkit-scrollbar {
    height: 10px !important;
    background-color: #050b14 !important;
}


.estilos_generales::-webkit-scrollbar-thumb,
.osp-table-ui .fixed-table-body::-webkit-scrollbar-thumb {
    background-color: rgba(255, 255, 255, 0.1) !important;
    border-radius: 5px;
    border: none !important;
}

/* El fondo por donde corre la barra */
.estilos_generales::-webkit-scrollbar-track,
.osp-table-ui .fixed-table-body::-webkit-scrollbar-track {
    background-color: rgba(255, 255, 255, 0.05) !important; /* Gris muy sutil */
    border-radius: 5px;
}

/*
[id^="toolbar_"] {
    display: flex;
    flex-wrap: nowrap;
    overflow-x: auto;
    gap: 8px;
    padding: 6px 0;
    max-width: 100%;
    scrollbar-width: thin;
    scrollbar-color: #112e55 transparent !important;
    white-space: nowrap;
}


[id^="toolbar_"] > * {
    flex: 0 0 auto;
}

[id^="toolbar_"]::-webkit-scrollbar {
    height: 8px;
}

[id^="toolbar_"]::-webkit-scrollbar-thumb {
    background: #1c4f7a !important;
    border-radius: 4px;
}


*/

/* Para pantallas pequeñas */
@media (max-width: 767px) {
    [id^="toolbar_"] {
        flex-direction: row;
        flex-wrap: nowrap;
        overflow-x: auto;
        width: 100%;
    }

    [id^="toolbar_"] button {
        flex: 0 0 auto;
        font-size: 14px;
    }

    .estilos_generales {
        overflow-x: auto;
        display: block;
        width: 100%;
    }

    .estilos_generales th,
    .estilos_generales td {
        white-space: nowrap;
    }
}

/*CUSTOMSSSSSSSSS*/
/* Botones generales personalizados */
.btn-custom, .btn-custom-text, .btn {
    border-radius: 6px;
    font-weight: 600;
    transition: 0.3s ease-in-out;
    color: #ffffff !important;
}

/* Estilo común para todos los botones */

.btn-custom-text,
.btn.btn-primary,
.btn.btn-secondary {
    background-color: rgba(17, 47, 71, 0.85) !important;
    border: 1px solid rgba(0, 200, 255, 0.5) !important;
    color: #e9f7ff !important;
}

/* Hover de botones */
.btn-custom {
    background-color: rgba(17, 47, 71, 0.85);
    border: 1px solid rgba(0, 200, 255, 0.5) !important;
    color: #e9f7ff !important;
}

.btn-custom:hover {
    background-color: rgba(0, 150, 255, 0.5) !important;
}


.btn.btn-primary:hover,
.btn.btn-secondary:hover {
    background-color: rgba(0, 150, 255, 0.5) !important;
    box-shadow: 0 0 10px rgba(0, 200, 255, 0.5);
}

/* Botones deshabilitados */
.btn:disabled {
    background-color: rgba(255, 255, 255, 0.1) !important;
    border-color: rgba(255, 255, 255, 0.1) !important;
    color: rgba(255, 255, 255, 0.3) !important;
}

/* Botón peligro */
.btn.btn-danger {
    background-color: rgba(17, 47, 71, 0.85) !important;
    border: 1px solid rgba(0, 200, 255, 0.5) !important;
    color: #e9f7ff !important;
}

.btn.btn-danger:not(:disabled) {
 border: 1px solid rgba(194, 69, 108, 0.8) !important;
  color: rgba(246, 57, 116, 0.8) !important;
  box-shadow: 0 0 10px rgba(255, 0, 80, 0.25) !important;
  text-shadow: 0 0 5px rgba(0, 0, 0, 0.5);
  transition: all 0.3s ease-in-out;

}

.btn.btn-danger:hover {
    background-color: rgba(255, 0, 80, 0.7) !important;
    box-shadow: 0 0 20px rgba(255, 0, 80, 0.6) !important;
    color: #ffffff !important;
    border-color: #ffffff !important;
}

/* Botón éxito */
.btn.btn-success{
    background-color: rgba(0, 255, 136, 0.3) !important;
    color: #ffffff !important;
    border: 1px solid rgba(0, 255, 136, 0.8) !important;
    box-shadow: 0 0 10px rgba(0, 255, 136, 0.25) !important;
    text-shadow: 0 0 5px rgba(0, 0, 0, 0.5);
    transition: all 0.3s ease-in-out;
}

.btn.btn-success:hover {
  
    box-shadow: 0 0 10px rgba(0, 255, 136, 0.6) !important;

   
}

/* Botón advertencia */
.btn.btn-warning {
    background-color: rgba(17, 47, 71, 0.85) !important;
    color: #e9f7ff !important;
    border: 1px solid rgba(0, 200, 255, 0.5) !important;
}


.btn.btn-warning:not(:disabled) {
    background-color: rgba(255, 190, 0, 0.3) !important;
    box-shadow: 0 0 10px rgba(255, 190, 0, 0.25) !important;
    border: 1px solid rgba(255, 190, 0, 0.8) !important;
    color: #ffffff !important;
    text-shadow: 0 0 5px rgba(0, 0, 0, 0.5);
    transition: all 0.3s ease-in-out;
}

.btn.btn-warning:hover {
    background-color: rgba(255, 190, 0, 0.7) !important;
    color: #ffffff !important;
    box-shadow: 0 0 20px rgba(255, 190, 0, 0.6) !important;
    border-color: #ffffff !important;
}

/* Botón secundario */
.btn.btn-secondary {
    background-color: #f1f4f6 !important;
    color: #006c8c !important;
    border: 1px solid #c8dfe5 !important;
}

.btn.btn-secondary:hover {
    background-color: #e2eef3 !important;
}

/* Texto principal */
.text-principal {
    color: #ffffff !important;
    text-shadow: 0 0 2px rgba(80, 200, 255, 0.9) !important;
}

.dataTables_filter input, /*input arriba tabla*/
input[type="search"] {
/*     background-color: rgba(17, 47, 71, 0.9) !important;
 */    border: 1px solid #00e5ff !important;
/*     box-shadow: 0 0 5px #00f3ff !important;
 */    color: #ffffff !important;
    border-radius: 10px !important;
    outline: none;
    transition: all 0.3s;
}


.dataTables_filter input::placeholder,
input[type="search"]::placeholder,
.search input::placeholder {
    color: #e1e3e6 !important;
    font-weight: 400;
    font-style: italic;
    opacity: 1 !important;
}

.dataTables_filter input:focus,
input[type="search"]:focus {
  /*   background-color: rgba(17, 47, 71, 0.9) !important;
    border: 1px solid #4154f1 !important; */
    box-shadow: 0 0 4px #00f3ff !important;
}
/*detail groups*/
.estilos_generales .detail-view td {
    background-color: rgba(0, 0, 0, 0.2) !important;
    border: none !important;
}

.estilos_generales .detail-view .card,
.estilos_generales .detail-view .card-body,
.estilos_generales .detail-view .detail-view-inner {
    background-color: transparent !important;
    border: none !important;
    box-shadow: none !important;
}

.estilos_generales .detail-view,
.estilos_generales .detail-view p,
.estilos_generales .detail-view span,
.estilos_generales .detail-view div,
.estilos_generales .detail-view td{
    color: var(--color-text-primary, #f0f4f8) !important;
}

.estilos_generales .detail-view b,
.estilos_generales .detail-view strong,
.estilos_generales .detail-view label {
    color: var(--color-accent, #00e5ff) !important;

}

.osp-table-ui .fixed-table-toolbar .dropdown-menu {
    background-color: var(--color-surface-strong, #0d1522) !important;
    border: 1px solid var(--color-border-soft, rgba(0, 229, 255, 0.15)) !important;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.6);
}

.osp-table-ui .fixed-table-toolbar .dropdown-menu .dropdown-item,
.osp-table-ui .fixed-table-toolbar .dropdown-menu label,
.osp-table-ui .fixed-table-toolbar .dropdown-menu span {
    color: var(--color-text-primary, #f0f4f8) !important;
    background-color: transparent !important;
    cursor: pointer;
}

.osp-table-ui .fixed-table-toolbar .dropdown-menu .dropdown-item:hover,
.osp-table-ui .fixed-table-toolbar .dropdown-menu label:hover {
    background-color: rgba(0, 229, 255, 0.05) !important;
    color: var(--color-accent, #00e5ff) !important;
}

.osp-table-ui .fixed-table-toolbar .dropdown-menu input[type="checkbox"] {
    margin-right: 10px;
    accent-color: var(--color-accent, #00e5ff);
}
.estilos_generales .detail-view th div,
.estilos_generales .detail-view th span {
    background-color: rgba(0, 0, 0, 0.4) !important;
    color: var(--color-accent, #00e5ff) !important;
    border-bottom: 1px solid var(--color-border-strong, rgba(0, 229, 255, 0.3))!important;
}

.estilos_generales .detail-view th {
    background-color: rgba(0, 0, 0, 0.2) !important;
    border: none !important;
}

.osp-table-ui .detail-view > td {
    width: 100% !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
}

.osp-table-ui .detail-icon {
    vertical-align: middle;
}

.osp-row-detail {
    width: 100%;
    display: block;
    box-sizing: border-box;
    padding: 1rem 1.1rem 1.15rem;
    margin: 0;
    background: linear-gradient(180deg, rgba(6, 14, 24, 0.92) 0%, rgba(12, 26, 43, 0.94) 100%);
    border-top: 1px solid rgba(0, 229, 255, 0.1);
}

.osp-row-detail__header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: 1rem;
}

.osp-row-detail__eyebrow {
    display: block;
    margin-bottom: 0.25rem;
    font-size: 0.72rem;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--color-text-secondary, #8b9bb4);
}

.osp-row-detail__title {
    margin: 0;
    font-size: 1rem;
    font-weight: 700;
    color: var(--color-text-primary, #f0f4f8);
}

.osp-row-detail__status {
    display: inline-flex;
    align-items: center;
    padding: 0.38rem 0.72rem;
    border-radius: 999px;
    font-size: 0.78rem;
    font-weight: 700;
    letter-spacing: 0.02em;
    white-space: nowrap;
    border: 1px solid transparent;
}

.osp-row-detail__status.is-active {
    background: rgba(0, 255, 136, 0.12);
    color: #6fffc1;
    border-color: rgba(0, 255, 136, 0.35);
}

.osp-row-detail__status.is-inactive {
    background: rgba(255, 0, 80, 0.12);
    color: #ff8eb0;
    border-color: rgba(255, 0, 80, 0.35);
}

.osp-row-detail__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.85rem;
    width: 100%;
}

.osp-row-detail__item {
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 0.28rem;
    padding: 0.85rem 0.9rem;
    border-radius: 12px;
    background: rgba(255, 255, 255, 0.03);
    border: 1px solid rgba(0, 229, 255, 0.08);
}

.osp-row-detail__label {
    font-size: 0.76rem;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color: var(--color-accent, #00e5ff);
}

.osp-row-detail__value {
    font-size: 0.95rem;
    color: var(--color-text-primary, #f0f4f8);
    word-break: break-word;
}
/*btnsubmit de uploadFile*/
.btnGuardarT,
#modal_cargar .btn-outline-success {
    background-color: transparent !important;
    border: 1px solid #00e676 !important;
    color: #00e676 !important;
    font-weight: 500;
    transition: 0.3s;
    margin-top: 50px;
    padding: 8px 20px;
    min-width: 100px;
    font-size: 14px !important;
    margin-right: 20px !important;
}
.btnGuardarT:hover,
#modal_cargar .btn-outline-success:hover {
    background-color: rgba(0, 230, 118, 0.1) !important;
    color: #FFFFFF !important;
    box-shadow: 0 0 15px rgba(0, 230, 118, 0.2);
}
/*modal upload file*/
#modal_cargar .modal-content {
    background-color: var(--color-surface-strong, #0d1522) !important;
    border: 1px solid var(--color-border-soft, rgba(0, 229, 255, 0.15)) !important;
    box-shadow: 0 20px 50px rgba(0, 0, 0, 0.6) !important;
    color: var(--color-text-primary, #f0f4f8) !important;
}

#modal_cargar .modal-header,
#modal_cargar .modal-footer {
    border-color: var(--color-border-soft, rgba(0, 229, 255, 0.15)) !important;
}


#modal_cargar .btn-close {
    filter: invert(1) grayscale(100%) brightness(200%);
}

#modal_cargar input[type="file"] { /*seleccionarArchivo*/
    background-color: rgba(0, 0, 0, 0.3) !important;
    color: var(--color-text-primary, #f0f4f8) !important;
    border: 1px dashed var(--color-accent, #00e5ff) !important;
}


/*btnSave*/

    .modal-body {
        background-color: #00000075 !important;
        color: var(--color-text-primary, #f0f4f8) !important;
    }


.btnResetT{
    background-color: transparent !important;
    border: 1px solid var(--color-text-secondary, #8b9bb4) !important;
    color: var(--color-text-secondary, #8b9bb4) !important;
    font-weight: 500;
    transition: 0.3s;
    margin-top: 50px;
    padding: 8px 20px;
    min-width: 100px;
    font-size: 14px !important;
}

.btnResetT:hover{
    background-color: rgba(255, 255, 255, 0.05) !important;
    color: var(--color-text-primary, #f0f4f8) !important;
}



/* inputs y selects */
.form-control, .form-select {
    background-color: rgba(0, 0, 0, 0.2) !important;
    border: 1px solid rgb(0 229 255 / 26%) !important;
    color: var(--color-text-primary, #f0f4f8) !important;
}

.form-control:focus, .form-select:focus {
    border-color: var(--color-accent, #00e5ff) !important;
    box-shadow: 0 0 0 2px rgba(0, 229, 255, 0.15) !important;
}

.input-group{
    background-color: rgba(11, 25, 41, 0.6) !important;
    border-color:  #00f3ff!important;
    color: #ffffff !important;

}
/*dropdowns de modales*/

.modal .form-select {
    background-color: rgba(17, 47, 71, 0.95) !important;
    border-color: #00f3ff !important;
    border: 1px solid #00f3ff !important;
    color: #e9f7ff !important;
    background-image: url("data:image/svg+xml,%3csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 16 16%27%3e%3cpath fill=%27none%27 stroke=%27%2300f3ff%27 stroke-linecap=%27round%27 stroke-linejoin=%27round%27 stroke-width=%272%27 d=%27M2 5l6 6 6-6%27/%3e%3c/svg%3e") !important;
}

.modal .form-select:focus {
    background-color: #0d2538 !important;
    border-color: #00f3ff !important;
    box-shadow: 0 0 15px rgba(0, 243, 255, 0.3) !important;
    color: #ffffff !important;
}

.modal .form-select option,
.modal .form-select optgroup {
    background-color: #0d2538 !important;
    color: #ffffff !important;
}

#modal_emails .modal-body input.form-control::placeholder,
#modal_emails .swal2-input::placeholder {
    color: rgba(225, 235, 245, 0.78) !important;
    opacity: 1 !important;
}

#modal_emails .modal-body input.ui-autocomplete-input {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    opacity: 1 !important;
}

#modal_emails .modal-body input.ui-autocomplete-input::placeholder {
    color: #ffffff !important;
    opacity: 1 !important;
}

#modal_emails .modal-body input.ui-autocomplete-input::-webkit-input-placeholder {
    color: #ffffff !important;
    opacity: 1 !important;
}

#modal_emails .modal-body input.ui-autocomplete-input:disabled::placeholder {
    color: rgba(225, 238, 255, 0.82) !important;
    opacity: 1 !important;
}

#modal_emails .modal-body input.ui-autocomplete-input:disabled::-webkit-input-placeholder {
    color: rgba(225, 238, 255, 0.82) !important;
    opacity: 1 !important;
}

#modal_emails .modal-body input.ui-autocomplete-input::-moz-placeholder {
    color: #ffffff !important;
    opacity: 1 !important;
}

#modal_emails .modal-body input.ui-autocomplete-input:disabled::-moz-placeholder {
    color: rgba(225, 238, 255, 0.82) !important;
    opacity: 1 !important;
}

#modal_emails .modal-body input.ui-autocomplete-input:-ms-input-placeholder {
    color: #ffffff !important;
}

#modal_emails .modal-body input.ui-autocomplete-input:disabled:-ms-input-placeholder {
    color: rgba(225, 238, 255, 0.82) !important;
}

#modal_emails .modal-body input.ui-autocomplete-input:disabled {
    background-color: rgba(11, 25, 41, 0.6) !important;
    border-color: #00f3ff !important;
    color: rgba(225, 238, 255, 0.82) !important;
    -webkit-text-fill-color: rgba(225, 238, 255, 0.82) !important;
    opacity: 1 !important;
}

#modal_emails .swal2-container #swal_inline_input.swal2-input {
    background-color: #ffffff !important;
    color: #000000 !important;
    border: 1px solid #6b7785 !important;
}

#modal_emails .swal2-container #swal_inline_input.swal2-input::placeholder {
    color: #5f5f5f !important;
    opacity: 1 !important;
}

body.page-emails-index .ui-autocomplete {
    background-color: #0d2538 !important;
    border: 1px solid #00f3ff !important;
    border-radius: 8px !important;
    box-shadow: 0 0 16px rgba(0, 243, 255, 0.25) !important;
}

body.page-emails-index #filtroGrupo input.ui-autocomplete-input {
    background-color: rgba(11, 25, 41, 0.6) !important;
    border: 1px solid #00f3ff !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    opacity: 1 !important;
}

body.page-emails-index #filtroGrupo input.ui-autocomplete-input::placeholder,
body.page-emails-index #filtroGrupo input.ui-autocomplete-input::-webkit-input-placeholder,
body.page-emails-index #filtroGrupo input.ui-autocomplete-input::-moz-placeholder {
    color: #ffffff !important;
    opacity: 1 !important;
}

body.page-emails-index #filtroGrupo input.ui-autocomplete-input:disabled {
    background-color: rgba(11, 25, 41, 0.6) !important;
    border: 1px solid #00f3ff !important;
    color: rgba(225, 238, 255, 0.82) !important;
    -webkit-text-fill-color: rgba(225, 238, 255, 0.82) !important;
    opacity: 1 !important;
}

body.page-emails-index #filtroGrupo input.ui-autocomplete-input:disabled::placeholder,
body.page-emails-index #filtroGrupo input.ui-autocomplete-input:disabled::-webkit-input-placeholder,
body.page-emails-index #filtroGrupo input.ui-autocomplete-input:disabled::-moz-placeholder {
    color: rgba(225, 238, 255, 0.82) !important;
    opacity: 1 !important;
}

body.page-emails-index .ui-autocomplete .ui-menu-item-wrapper {
    color: #ffffff !important;
    border: 0 !important;
}

body.page-emails-index .ui-autocomplete .ui-menu-item-wrapper.ui-state-active,
body.page-emails-index .ui-autocomplete .ui-menu-item-wrapper:hover {
    background-color: rgba(0, 243, 255, 0.2) !important;
    color: #ffffff !important;
}

#btn_nuevo_filtro_correo,
#btn_ir_carga_masiva {
    background-color: rgba(11, 25, 41, 0.9) !important;
    border: 1px solid #00f3ff !important;
    color: #e9f7ff !important;
    box-shadow: 0 0 14px rgba(0, 243, 255, 0.35) !important;
    text-shadow: 0 0 6px rgba(0, 243, 255, 0.4);
}

#btn_nuevo_filtro_correo:hover,
#btn_ir_carga_masiva:hover {
    background-color: rgba(17, 47, 71, 0.95) !important;
    border-color: #00f3ff !important;
    color: #ffffff !important;
    box-shadow: 0 0 18px rgba(0, 243, 255, 0.55) !important;
    transform: translateY(-1px);
}

.modal-form-section-title {
    display: flex;
    align-items: center;
    gap: 8px;
    padding-bottom: 8px;
    margin-bottom: 4px;
    border-bottom: 1px solid rgba(0, 243, 255, 0.25);
    color: rgba(222, 242, 255, 0.9);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.excel-upload-card {
    border: 1px solid rgba(0, 243, 255, 0.35);
    border-radius: 10px;
    padding: 14px;
    background: linear-gradient(180deg, rgba(14, 34, 52, 0.9) 0%, rgba(11, 25, 41, 0.75) 100%);
    box-shadow: inset 0 0 0 1px rgba(0, 243, 255, 0.08), 0 6px 20px rgba(0, 0, 0, 0.2);
}

.excel-upload-head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px;
    flex-wrap: wrap;
}

.excel-upload-head h6 {
    margin: 0;
    font-size: 14px;
    font-weight: 700;
    color: #ffffff;
}

.excel-upload-head small {
    color: rgba(206, 230, 244, 0.8);
}

.excel-upload-template-btn {
    white-space: nowrap;
}

.excel-upload-input-wrap {
    margin-top: 12px;
}

.excel-dropzone {
    border: 1px dashed rgba(0, 243, 255, 0.45);
    border-radius: 10px;
    padding: 16px 14px;
    text-align: center;
    background-color: rgba(10, 23, 36, 0.65);
    color: rgba(230, 247, 255, 0.95);
    cursor: pointer;
    transition: border-color 0.2s ease, background-color 0.2s ease, box-shadow 0.2s ease;
    outline: none;
}

.excel-dropzone i {
    display: block;
    font-size: 24px;
    margin-bottom: 6px;
    color: #00f3ff;
}

.excel-dropzone .excel-dropzone-title {
    font-weight: 700;
    font-size: 13px;
    margin-bottom: 2px;
}

.excel-dropzone small {
    color: rgba(190, 219, 236, 0.86);
}

.excel-dropzone:hover,
.excel-dropzone:focus,
.excel-dropzone.is-dragover {
    border-color: #00f3ff;
    background-color: rgba(0, 243, 255, 0.14);
    box-shadow: 0 0 0 2px rgba(0, 243, 255, 0.18);
}

.excel-upload-meta {
    margin-top: 10px;
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
}

.excel-upload-label {
    color: rgba(214, 238, 251, 0.95);
    font-weight: 600;
    font-size: 12px;
}

.excel-upload-file-name {
    color: rgba(255, 255, 255, 0.92);
    font-size: 12px;
}

.excel-upload-preview {
    margin-top: 10px;
}

.excel-upload-preview .table-responsive {
    background-color: rgba(10, 23, 36, 0.75);
    border-color: rgba(0, 243, 255, 0.25) !important;
}

#emailModalPreviewTable th,
#subgrupoPreviewTable th {
    background-color: rgba(0, 243, 255, 0.12);
    color: #dff5ff;
    font-weight: 700;
    border-color: rgba(0, 243, 255, 0.2);
}

#emailModalPreviewTable td,
#subgrupoPreviewTable td {
    color: #f5fbff;
    border-color: rgba(0, 243, 255, 0.12);
}

#emailModalPreviewTable,
#subgrupoPreviewTable {
    --bs-table-color: #f5fbff;
    --bs-table-bg: rgba(10, 23, 36, 0.9);
    --bs-table-striped-color: #f5fbff;
    --bs-table-striped-bg: rgba(255, 255, 255, 0.05);
    --bs-table-hover-color: #ffffff;
    --bs-table-hover-bg: rgba(0, 243, 255, 0.1);
}

#emailModalPreviewTable th,
#subgrupoPreviewTable th,
#emailModalPreviewTable td,
#subgrupoPreviewTable td {
    color: #f5fbff !important;
}

#modal_emails .modal-footer,
#modal_cargar .modal-footer,
#modal_grupo .modal-footer{
    background-color: rgb(38, 73, 103) !important;
    border-top: 2px solid rgba(80, 200, 255, 0.2) !important;
    box-shadow: 0 -5px 15px rgba(0, 0, 0, 0.2) !important;
    border-bottom-left-radius: 8px;
    border-bottom-right-radius: 8px;
}
/*modal */


.modal-header {
    background: linear-gradient(90deg, rgba(11, 25, 41, 0.95) 0%, rgba(38, 73, 103, 0.5) 100%) !important;
    border-bottom: 1px solid rgba(0, 243, 255, 0.3) !important; /* Línea cian abajo */
    color: #ffffff !important;
}

.modal-title {
    color: #ffffff !important;
    font-weight: bold;
    text-shadow: 0 0 2px rgba(80, 200, 255, 0.9) !important;
    margin-left: 5px;
}


.modal-header .btn-close {
    filter: invert(1) grayscale(100%) brightness(200%) !important;
    opacity: 0.8;

}

.modal-content {
    background-color: rgb(38, 73, 103) !important;
    border: 1px solid #00f3ff !important;
    box-shadow: 0 0 25px rgba(0, 243, 255, 0.15) !important;
    color: #ffffff !important;
}

.modal-body input.form-control,
.modal-body select.form-control {
    background-color: rgba(11, 25, 41, 0.6) !important;
    border: 1px solid rgba(0, 243, 255, 0.73) !important;
    color: #ffffff !important;
    box-shadow: none !important;
}


.modal-body input.form-control:focus,
.modal-body select.form-control:focus {
    background-color: rgba(11, 25, 41, 0.9) !important;
    border-color:rgba(0, 243, 255, 0.73)!important;
    box-shadow: 0 0 10px rgba(0, 243, 255, 0.3) !important;
}
.modal-body input.form-control::placeholder {
    color: rgba(214, 233, 255, 0.72) !important;
    opacity: 1 !important;
}

.modal-body input.ui-autocomplete-input::placeholder {
    color: #ffffff !important;
    opacity: 1 !important;
}

.modal-body input.ui-autocomplete-input:disabled::placeholder {
    color: rgba(225, 238, 255, 0.78) !important;
    opacity: 1 !important;
}

.modal-body label {
    color: #ffffff !important;
    font-weight: 500;
    margin-bottom: 5px;
}



.modal-footer {
    background-color: rgba(11, 25, 41, 0.5) !important; /* Un poco más oscuro */
    border-top: 1px solid rgba(0, 243, 255, 0.3) !important; /* Línea separadora */
}


.modal-footer .btn-secondary {
    background-color: transparent !important;
    border: 1px solid #c4e5ee !important;
    color: #c4e5ee !important;
    box-shadow: 0 0 10px rgba(196, 229, 238, 0.3);
}

.modal-footer .btn-secondary:hover {
    background-color: rgba(196, 229, 238, 0.15) !important;
    color: #fff !important;
    box-shadow: 0 0 10px rgba(196, 229, 238, 0.8), inset 0 0 10px rgba(196, 229, 238, 0.5);
    transform: translateY(-2px);
}

.modal-footer .btn-primary {
    background-color: transparent !important;
    border: 1px solid #00ff88 !important;
    color: #00ff88 !important;
    box-shadow: 0 0 10px rgba(0, 255, 136, 0.3);
}

/*  (AUTOFILL) delos input  */
input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
input:-webkit-autofill:active {
    -webkit-box-shadow: 0 0 0 30px rgb(11, 25, 41) inset !important;
    -webkit-text-fill-color: #ffffff !important;
    border: 1px solid rgba(0, 243, 255, 0.5) !important;
    transition: background-color 5000s ease-in-out 0s;
    caret-color: #ffffff !important;
    color: #FFFFFF;
}

/* --------------------------------------------------------------
# Responsive fixes for tables and action toolbars
-------------------------------------------------------------- */
@media (max-width: 991.98px) {
    .osp-table-ui .fixed-table-toolbar,
    .osp-table-ui .fixed-table-toolbar .columns,
    .osp-table-ui .fixed-table-toolbar .search,
    [id^="toolbar_"] {
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        gap: 8px;
    }

    .osp-table-ui .fixed-table-toolbar .search {
        width: 100%;
        margin-top: 6px;
    }

    .osp-table-ui .fixed-table-toolbar .search input,
    .osp-table-ui .fixed-table-toolbar .search .form-control,
    input[type="search"] {
        width: 100% !important;
        max-width: 100%;
    }

    .btnGuardarT,
    .btnResetT,
    #modal_cargar .btn-outline-success {
        width: 100%;
        margin-top: 12px;
        margin-right: 0 !important;
        min-width: 0;
    }

    .modal-footer .btn {
        width: 100%;
        margin: 6px 0 !important;
    }

    .excel-upload-head {
        flex-direction: column;
    }

    .excel-upload-template-btn {
        width: 100%;
    }
}

@media (max-width: 767.98px) {
    .estilos_generales th {
        font-size: 13px;
        padding: 10px 8px;
    }

    .estilos_generales td {
        font-size: 12px;
        padding: 8px 6px;
    }

    [id^="toolbar_"],
    .osp-table-ui .fixed-table-toolbar .columns {
        display: flex !important;
        flex-wrap: nowrap !important;
        overflow-x: auto;
        width: 100%;
        gap: 2px;
        align-items: center !important;
        padding-bottom: 6px;
        scrollbar-width: none;
    }

    [id^="toolbar_"]::-webkit-scrollbar,
    .osp-table-ui .fixed-table-toolbar .columns::-webkit-scrollbar {
        display: none;
    }

    [id^="toolbar_"] button,
    .osp-table-ui .fixed-table-toolbar .btn {
        width: 38px !important;
        height: 38px !important;
        min-width: 38px !important;
        min-height: 38px !important;
        flex: 0 0 auto;
        font-size: 0 !important;
        padding: 0 !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
    }

    [id^="toolbar_"] button i,
    .osp-table-ui .fixed-table-toolbar .btn i {
        font-size: 16px !important;
        margin: 0 !important;
    }

    .osp-table-ui .fixed-table-toolbar .btn.dropdown-toggle::after {
        display: none !important;
    }

    .osp-table-ui .fixed-table-toolbar .dropdown-menu {
        max-width: calc(100vw - 32px);
    }

    .osp-row-detail {
        padding: 0.85rem;
    }

    .osp-row-detail__header {
        flex-direction: column;
        align-items: stretch;
    }

    .osp-row-detail__status {
        align-self: flex-start;
    }

    .osp-row-detail__grid {
        grid-template-columns: 1fr;
    }
}


.osp-table-ui .fixed-table-pagination {
    color: var(--color-text-primary, #f0f4f8) !important;
}

.osp-table-ui .fixed-table-pagination .pagination {
    gap: 6px;
}

.osp-table-ui .fixed-table-pagination .page-link {
    background-color: rgba(0, 0, 0, 0.2) !important;
    border: 1px solid rgba(255, 255, 255, 0.1) !important;
    color: var(--color-text-secondary, #8b9bb4) !important;
    border-radius: 8px !important;
    transition: all 0.2s ease;
}

.osp-table-ui .fixed-table-pagination .page-link:hover,
.osp-table-ui .fixed-table-pagination .page-link:focus {
    background-color: rgba(255, 255, 255, 0.05) !important;
    border-color: var(--color-accent, #00e5ff) !important;
    color: var(--color-accent, #00e5ff) !important;
}

.osp-table-ui .fixed-table-pagination .page-item.active .page-link {
    background-color: rgba(0, 229, 255, 0.1) !important;
    border-color: var(--color-accent, #00e5ff) !important;
    color: var(--color-accent, #00e5ff) !important;
}

.osp-table-ui .fixed-table-pagination .page-item.disabled .page-link {
    background-color: rgba(255, 255, 255, 0.06) !important;
    border-color: rgba(255, 255, 255, 0.1) !important;
    color: rgba(233, 247, 255, 0.4) !important;
}

.osp-table-ui .fixed-table-pagination .pagination-info,
.osp-table-ui .fixed-table-pagination .page-list {
    color: #cfe8f7 !important;
}

.osp-table-ui .fixed-table-pagination .page-list .btn,
.osp-table-ui .fixed-table-pagination .page-list .dropdown-toggle {
    background-color: rgba(17, 47, 71, 0.9) !important;
    border: 1px solid rgba(0, 243, 255, 0.35) !important;
    color: #e9f7ff !important;
}

.osp-table-ui .fixed-table-pagination .dropdown-menu,
.osp-table-ui .fixed-table-pagination .page-list .dropdown-menu {
    background-color: #0d2538 !important;
    border: 1px solid rgba(80, 200, 255, 0.5) !important;
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5) !important;
}

.osp-table-ui .fixed-table-pagination .dropdown-item,
.osp-table-ui .fixed-table-pagination .dropdown-menu li > a,
.osp-table-ui .fixed-table-pagination .dropdown-menu li > span {
    color: #e9f7ff !important;
    background-color: transparent !important;
}

.osp-table-ui .fixed-table-pagination .dropdown-item:hover,
.osp-table-ui .fixed-table-pagination .dropdown-item:focus,
.osp-table-ui .fixed-table-pagination .dropdown-menu li > a:hover {
    background-color: rgba(0, 150, 255, 0.3) !important;
    color: #ffffff !important;
}


.ui-widget-content {
    background: var(--color-surface-strong, #0d1522) !important;
    color: var(--color-text-primary, #f0f4f8) !important;
    border: 1px solid var(--color-border-soft, rgba(0, 229, 255, 0.15)) !important;
}

.ui-widget-content a {
    color: var(--color-text-primary, #f0f4f8) !important;
}

/*!*****************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./assets/styles/vistas.css ***!
  \*****************************************************************************************************************/
/* Estilos para el contenedor de WhatsApp */
.whatsapp-container {
    position: fixed;
    bottom: 20px;
    right: 15px;
    background-color: #25D366; /* Color de fondo de WhatsApp */
    padding: 10px;
    border-radius: 5px;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
    z-index: 2; /* Asegura que WhatsApp esté encima de Telegram */
}

/* Estilos para el contenedor de Telegram */
.telegram-container {
    position: fixed;
    bottom: 65px; /* Ajusta la posición para que esté debajo de WhatsApp */
    right: 16px;
    background-color: #0088cc; /* Color de fondo de Telegram */
    padding: 12px;
    border-radius: 5px;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
    z-index: 1; /* Asegura que Telegram esté debajo de WhatsApp */
}

/* Estilos para el enlace de WhatsApp y Telegram */
.whatsapp-link, .telegram-link {
    text-decoration: none;
    color: #fff; /* Color del texto */
    display: flex;
    align-items: center;
}

/* Estilos para el ícono de WhatsApp y Telegram */
.whatsapp-icon, .telegram-icon {
    font-size: 24px; /* Tamaño del ícono */
    margin-right: 10px;
    Color:#fff;
}

/* Estilos para el texto de WhatsApp y Telegram */
.whatsapp-text, .telegram-text {
    font-size:14px;
}

.whatsapp-text{
    color:#fff !important;
}

/* Ocultar los controles de número en Chrome, Safari, Edge y Opera */
input[type="number"]::-webkit-outer-spin-button,
input[type="number"]::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

/* Ocultar los controles de número en Firefox */
input[type="number"] {
    -moz-appearance: textfield;
    appearance: textfield;
}


.empresa {
    font-family: 'Bradley Hand ITC', cursive;
    font-size: 25px;
}

.idIngredientes {
    text-align: center;
    font-family: 'Roboto  Thin', cursive;
    font-size: 25px;
}

.idContenido {
    text-align: center;
    font-family: 'arial  Thin', cursive;
    font-size: 20px;

}

.bannerItem {
    display: block;
    width: 100%;
    height: 500px;
}
.bannerItem img {
    height: 100%;
    width: 100%;
}

.img-normalizada{
    width: 350px;
    height: 280px;
    border-radius: 10px;
    object-fit: cover;
}

.idPrecio {
    text-align: center;
    font-family: 'arial  Thin', cursive;
    font-size: 35px;
    animation: blink 1.5s infinite;
}

/*@keyframes blink {*/
/*    0%, 100% {*/
/*        opacity: 1;*/
/*    }*/
/*    50% {*/
/*        opacity: 0;*/
/*    }*/
/*}*//* --------------------------------------------------------------
# Responsive adjustments for floating actions and media blocks
-------------------------------------------------------------- */
@media (max-width: 991.98px) {
    .bannerItem {
        height: clamp(220px, 45vw, 380px);
    }

    .img-normalizada {
        width: 100%;
        max-width: 320px;
        height: auto;
        aspect-ratio: 5 / 4;
    }
}

@media (max-width: 767.98px) {
    .whatsapp-container,
    .telegram-container {
        right: 10px;
        padding: 10px;
    }

    .telegram-container {
        bottom: 60px;
    }

    .whatsapp-text,
    .telegram-text {
        display: none;
    }

    .whatsapp-icon,
    .telegram-icon {
        margin-right: 0;
        font-size: 22px;
    }

    .empresa {
        font-size: 20px;
    }

    .idPrecio {
        font-size: 28px;
    }
}

/*!**********************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./assets/styles/subscription-expiration.css ***!
  \**********************************************************************************************************************************/
.expiration-card-wrapper {
    max-width: 760px;
    margin: 0 auto 1.5rem;
}

.expiration-card {
    display: flex;
    align-items: center;
    gap: 5rem;
    padding: 1rem 1.25rem;
    border-radius: 14px;
    border: 1px solid rgba(80, 200, 255, 0.35);
    background: linear-gradient(135deg, rgba(9, 32, 53, 0.92), rgba(20, 58, 92, 0.78));
    box-shadow: 0 14px 32px rgba(2, 10, 21, 0.35), inset 0 0 0 1px rgba(255, 255, 255, 0.04);
    margin-bottom: 50px;
}

.expiration-card__icon {
    width: 46px;
    height: 46px;
    border-radius: 12px;
    display: grid;
    place-items: center;
    background: rgba(0, 170, 255, 0.15);
    color: #7ae2ff;
    font-size: 1.2rem;
    border: 1px solid rgba(122, 226, 255, 0.35);
}

.expiration-card__content {
    min-width: 0;
}

.expiration-card__title {
    margin: 0;
    font-size: 0.85rem;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.expiration-card__countdown {
    margin: 0.2rem 0 0;
    font-size: 1.05rem;
    font-weight: 700;
    line-height: 1.3;
    word-break: break-word;
}

.expiration-card__countdown.is-expired {
    color: #ffb0bb !important;
    text-shadow: 0 0 12px rgba(255, 120, 145, 0.7) !important;
}

.expiration-navbar {
    display: inline-flex;
    align-items: center;
    gap: 0.45rem;
    padding: 0.35rem 0.7rem;
    border-radius: 999px;
    border: 1px solid rgba(80, 200, 255, 0.28);
    background: linear-gradient(135deg, rgba(9, 32, 53, 0.92), rgba(20, 58, 92, 0.78));
    color: #e6f8ff;
    font-size: 0.78rem;
    font-weight: 700;
    line-height: 1.1;
    max-width: min(56vw, 360px);
}

.expiration-navbar i {
    font-size: 0.9rem;
    color: #7ae2ff;
    flex-shrink: 0;
}

#contador-expiracion-navbar {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.dropdown-header #expiration-navbar-item .expiration-navbar {
    max-width: 100%;
    width: 100%;
}

#seccion-inicial.full-height:not(.d-none) {
    min-height: calc(100vh - 140px);
    display: flex;
    align-items: center;
    justify-content: center;
}

#seccion-inicial.full-height.d-none {
    display: none !important;
}

.subscription-shell {
    max-width: 1080px;
    margin: 0 auto;
}

.subscription-hero {
    background: linear-gradient(135deg, rgba(8, 27, 45, 0.92), rgba(22, 57, 91, 0.78));
    border: 1px solid rgba(80, 200, 255, 0.22);
    border-radius: 18px;
    padding: 2.25rem 1.5rem;
    box-shadow: 0 20px 45px rgba(0, 0, 0, 0.3);
}

.subscription-hero .lead {
    max-width: 680px;
    margin-left: auto;
    margin-right: auto;
}

.subscription-cta-btn {
    min-width: 210px;
    border-radius: 12px;
    font-weight: 700;
    letter-spacing: 0.02em;
}

.subscription-plan-card {
    background: linear-gradient(140deg, rgba(8, 27, 45, 0.95), rgba(18, 49, 78, 0.8));
    border: 1px solid rgba(80, 200, 255, 0.24);
    border-radius: 16px;
    box-shadow: 0 18px 36px rgba(0, 0, 0, 0.28);
    overflow: hidden;
}

.subscription-plan-card__header {
    background: linear-gradient(90deg, rgba(0, 174, 255, 0.15), rgba(0, 243, 255, 0.04));
    border-bottom: 1px solid rgba(80, 200, 255, 0.2);
    padding: 0.95rem 1rem;
}

.subscription-plan-card__title {
    font-size: 1rem;
    letter-spacing: 0.05em;
}

.subscription-plan-card__meta {
    color: #d9f2ff;
    margin-bottom: 0.5rem;
}

.subscription-plan-card__price {
    font-size: 1.4rem;
    font-weight: 700;
    color: #7ae2ff;
    margin-bottom: 1rem;
}

.subscription-plan-card__features {
    margin-top: 0.75rem;
    margin-bottom: 0;
    max-height: 220px;
    overflow-y: auto;
    padding-right: 0.4rem;
}

.subscription-plan-card__features li {
    background: rgba(122, 226, 255, 0.08);
    border: 1px solid rgba(122, 226, 255, 0.16);
    border-radius: 10px;
    padding: 0.65rem 0.75rem;
    margin-bottom: 0.55rem;
}

.subscription-plan-card__features strong {
    color: #e5f8ff;
}

.subscription-plan-card__features small {
    color: rgba(229, 248, 255, 0.8) !important;
}

.subscription-plan-card__button {
    border-radius: 10px;
    font-weight: 700;
}

#info-plan-seleccionado.subscription-selected-plan {
    border: 1px solid rgba(80, 200, 255, 0.3);
    background: linear-gradient(120deg, rgba(11, 40, 64, 0.9), rgba(17, 63, 97, 0.72));
    border-radius: 12px;
    color: #e6f8ff;
    margin: 1rem auto 0;
    max-width: 980px;
}

.subscription-selected-plan .btn {
    color: #9cdfff !important;
    text-decoration: none;
    font-weight: 700;
}

#vista-tres .subscription-payment-panel {
    background: linear-gradient(140deg, rgba(8, 27, 45, 0.95), rgba(19, 54, 86, 0.82));
    border: 1px solid rgba(80, 200, 255, 0.2);
    border-radius: 16px;
    padding: 1.5rem;
    box-shadow: 0 18px 36px rgba(0, 0, 0, 0.24);
}

.subscription-payment-btn {
    border-radius: 12px;
    min-height: 56px;
    font-weight: 700;
    letter-spacing: 0.02em;
}

@media (max-width: 768px) {
    .expiration-card {
        padding: 0.9rem 1rem;
    }

    .expiration-card__countdown {
        font-size: 0.95rem;
    }

    .expiration-navbar {
        max-width: 48vw;
        font-size: 0.72rem;
        padding: 0.28rem 0.55rem;
    }

    .subscription-hero {
        padding: 1.5rem 1rem;
    }
}

/*!**************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./assets/styles/app.css ***!
  \**************************************************************************************************************/
/* ================================
   APP.SCSS — ORDEN CORRECTO
================================ */

/* --- Frameworks base --- */

/* --- Plugins de tablas --- */

/* --- jQuery UI --- */

/* --- Alertas & Notificaciones --- */

/* --- Editores --- */

/* --- Iconos extras --- */

/* --- Utilidades y Widgets --- */

/* --- Pickr (Color Picker) --- */

/* --- Estilos personalizados del proyecto --- */

/*!******************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./assets/styles/configuracion/modal.css ***!
  \******************************************************************************************************************************/
.modalStyle .modal-content
{
    background-color: rgb(38, 73, 103) !important;
    border: 1px solid #00f3ff !important;
    box-shadow: 0 0 25px rgba(0, 243, 255, 0.15) !important;
    color: #ffffff !important;
}

.modalStyle .modal-header
{
    background: linear-gradient(90deg, rgba(11, 25, 41, 0.95) 0%, rgba(38, 73, 103, 0.5) 100%);
    border-bottom: 1px solid rgba(0, 243, 255, 0.3) !important;
}

.modalStyle .modal-title
{
    color: #ffffff !important;
    font-weight: bold;
    text-shadow: 0 0 6px rgba(80, 200, 255, 0.9),
    0 0 14px rgba(80, 200, 255, 0.7) !important;
    margin-left: 5px;
}

.modalStyle .btn-close
{
    filter: invert(1) grayscale(100%) brightness(200%);
    opacity: 0.8;
}

.modalStyle .table {
    background-color: rgba(17, 47, 71, 0.85) !important;
    color: #ffffff !important;
    border-collapse: separate;
    border-spacing: 0;
    width: 100%;
    margin-bottom: 0;
    border-radius: 6px;
}

.modalStyle .table th,
.modalStyle .table td {
    border: 1px solid rgba(80, 200, 255, 0.15) !important; /* Rejilla sutil */
    vertical-align: middle;
    color: #e9f7ff !important;
    padding: 8px;
    font-size: 13px;
    background-color: inherit;
}

.modalStyle .table thead th {
    background-color: rgba(0, 150, 255, 0.2) !important;
    color: #ffffff !important;
    text-transform: uppercase;
    font-size: 0.85rem;
    letter-spacing: 1px;
    border-bottom: 2px solid #00f3ff !important;
    text-align: center;
}

.modalStyle .table tbody th {
    text-align: left !important;
    color: #ffffff !important;
    font-weight: normal;
}

.modalStyle .table tbody tr:hover td,
.modalStyle .table tbody tr:hover th,
.modal-content .table tbody tr:hover th
{
    background-color: rgba(0, 243, 255, 0.15) !important; /* Más brillante al pasar mouse */
    cursor: pointer;
}

.modalStyle .nav-tabs {
    border-bottom: 1px solid rgba(80, 200, 255, 0.2);
}

.modalStyle .nav-link {
    color: #a0c0d0;
    border: 1px solid transparent;
    transition: all 0.3s ease;
}

.modalStyle .nav-link:hover {
    color: #00f3ff;
    background-color: rgba(0, 243, 255, 0.05);
}

.modalStyle .nav-link.active {
    background-color: rgba(0, 243, 255, 0.1) !important;
    color: #00f3ff !important;
    border-color: rgba(0, 243, 255, 0.5) rgba(0, 243, 255, 0.5) transparent !important;
    text-shadow: 0 0 8px rgba(0, 243, 255, 0.4);
    font-weight: bold;
}


.modalStyle input[type="checkbox"] {
    appearance: none;
    -webkit-appearance: none;
    width: 18px;
    height: 18px;
    background-color: rgba(11, 25, 41, 0.8);
    border: 1px solid #00f3ff;
    border-radius: 3px;
    cursor: pointer;
    display: inline-block;
    position: relative;
    vertical-align: middle;
}

.modalStyle input[type="checkbox"]:checked {
    background-color: rgba(0, 243, 255, 0.2);
    box-shadow: 0 0 8px rgba(0, 243, 255, 0.6);
}

.modalStyle input[type="checkbox"]:checked::after {
    content: '✔';
    font-size: 12px;
    color: #00f3ff;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    font-weight: bold;
}

.modalStyle .card,
.modalStyle .card-body,
.modalStyle .tab-content,
.modalStyle .tab-pane {
    background-color: transparent !important;
    border: none !important;
    box-shadow: none !important;
}

.modalStyle .card-title {
    color: #ffffff;
    border-left: 3px solid #00f3ff;
    padding-left: 10px;
    margin-bottom: 20px;
}

.modalStyle .btn
{
    border-width: 2px !important;
    margin-right: 15px !important;
    font-weight: 600;
    letter-spacing: 1px;
    padding: 6px 20px;
    transition: all 0.3s ease-in-out;
}

.modalStyle .btn-outline-success
{
    color: #00ff88 !important;
    border-color: #00ff88 !important;
    background-color: transparent;
    box-shadow: 0 0 10px rgba(0, 255, 136, 0.3);
}

.modalStyle .btn-outline-success:hover
{
    background-color: rgba(0, 255, 136, 0.15) !important;
    color: #ffffff !important;
    box-shadow: 0 0 10px rgba(0, 255, 136, 0.8), inset 0 0 10px rgba(0, 255, 136, 0.5);
    transform: translateY(-2px);
}

.modalStyle .btn-outline-secondary

{
    color: #c4e5ee !important;
    border-color: #c4e5ee !important;
    background-color: transparent;
    box-shadow: 0 0 10px rgba(196, 229, 238, 0.3);
}

.modalStyle .btn-outline-secondary:hover
{
    background-color: rgba(196, 229, 238, 0.15) !important;
    color: #ffffff !important;
    box-shadow: 0 0 10px rgba(196, 229, 238, 0.8), inset 0 0 10px rgba(196, 229, 238, 0.5);
    transform: translateY(-2px);
}

.requiredStyle{
    color: white !important;
}

.modalStyle .modal-footer {
    background-color: rgba(11, 25, 41, 0.5) !important;
    border: none !important;
    border-top: 1px solid rgba(0, 243, 255, 0.3) !important;
    color: #fff;
}

/* --------------------------------------------------------------
# Responsive modal tabs and table overflow
-------------------------------------------------------------- */
@media (max-width: 991.98px) {
    .modalStyle .nav-tabs {
        overflow-x: auto;
        overflow-y: hidden;
        flex-wrap: nowrap;
        padding-bottom: 4px;
    }

    .modalStyle .nav-tabs .nav-item {
        flex: 0 0 auto;
    }

    .modalStyle .table {
        display: block;
        width: 100%;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }

    .modalStyle .btn {
        margin-right: 0 !important;
    }

    .modalStyle .modal-footer {
        display: flex;
        flex-wrap: wrap;
        gap: 8px;
    }

    .modalStyle .modal-footer .btn {
        flex: 1 1 180px;
    }
}

@media (max-width: 575.98px) {
    .modalStyle .modal-footer .btn {
        width: 100%;
        flex: 1 1 100%;
    }

    .modalStyle .table th,
    .modalStyle .table td {
        font-size: 12px;
        padding: 6px;
    }
}

/*!*************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./assets/styles/localeSwitcher.css ***!
  \*************************************************************************************************************************/
.navbar-locale-switch,
.auth-login-locale-bar {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: flex-end;
    min-width: 126px;
}

.auth-login-locale-bar {
    width: 100%;
    margin-bottom: 1.25rem;
}

.auth-login-locale-switch,
.navbar-locale-switch {
    position: relative;
    display: inline-flex;
    align-items: center;
}

.locale-select-shell {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: flex-end;
    cursor: pointer;
    border: 1px solid rgba(116, 234, 255, 0.35);
    border-radius: 999px;
    background: rgba(4, 36, 57, 0.82);
    box-shadow: 0 14px 28px rgba(2, 16, 29, 0.18);
    min-height: 42px;
    transition: border-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
}

.locale-select-shell:hover {
    border-color: rgba(116, 234, 255, 0.62);
    box-shadow: 0 18px 34px rgba(2, 16, 29, 0.24);
    transform: translateY(-1px);
}

#kit-locale-select.form-select-sm,
.locale-select-enhanced {
    position: relative;
    z-index: 2;
    width: 100%;
    min-width: 126px;
    height: 42px;
    padding: 0;
    margin: 0;
    opacity: 0;
    pointer-events: none;
    border: 0;
    background: transparent;
    appearance: none;
}

.locale-select-label {
    position: absolute;
    inset: 0;
    display: inline-flex;
    align-items: center;
    justify-content: flex-start;
    gap: 0.45rem;
    padding: 0 2rem 0 2.3rem;
    color: #e8fbff;
    font-size: 0.9rem;
    font-weight: 600;
    letter-spacing: 0.01em;
    pointer-events: none;
    user-select: none;
}

.locale-select-label::before {
    content: "🌐";
    position: absolute;
    left: 0.85rem;
    top: 50%;
    transform: translateY(-50%);
    font-size: 1rem;
}

.locale-select-label::after {
    content: "";
    position: absolute;
    right: 0.95rem;
    top: 50%;
    width: 0.5rem;
    height: 0.5rem;
    border-right: 2px solid rgba(232, 251, 255, 0.86);
    border-bottom: 2px solid rgba(232, 251, 255, 0.86);
    transform: translateY(-65%) rotate(45deg);
    transition: transform 0.2s ease;
}

.locale-select-shell.is-open .locale-select-label::after {
    transform: translateY(-15%) rotate(225deg);
}

.locale-select-label[data-locale^="en"]::before {
    content: "🇺🇸";
}

.locale-select-label[data-locale^="es"]::before {
    content: "🇪🇸";
}

.locale-select-label[data-locale^="pt"]::before {
    content: "🇧🇷";
}

.locale-select-label[data-locale^="fr"]::before {
    content: "🇫🇷";
}

.locale-select-menu {
    position: absolute;
    top: calc(100% + 0.55rem);
    right: 0;
    min-width: 100%;
    padding: 0.45rem;
    border-radius: 1rem;
    border: 1px solid rgba(116, 234, 255, 0.26);
    background: rgba(4, 36, 57, 0.97);
    box-shadow: 0 22px 38px rgba(2, 16, 29, 0.3);
    opacity: 0;
    visibility: hidden;
    transform: translateY(-6px);
    transition: opacity 0.2s ease, transform 0.2s ease, visibility 0.2s ease;
    z-index: 25;
}

.locale-select-shell.is-open .locale-select-menu {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}

.locale-select-option {
    width: 100%;
    display: flex;
    align-items: center;
    gap: 0.65rem;
    border: 0;
    border-radius: 0.8rem;
    background: transparent;
    color: #e8fbff;
    padding: 0.7rem 0.85rem;
    text-align: left;
    cursor: pointer;
    transition: background-color 0.2s ease, color 0.2s ease;
}

.locale-select-option:hover,
.locale-select-option.is-active {
    background: rgba(117, 234, 255, 0.18);
    color: #75eaff;
}

.locale-select-option-flag {
    font-size: 1rem;
    line-height: 1;
}

.locale-select-option-flag::before {
    content: "🌐";
}

.locale-select-option[data-locale^="en"] .locale-select-option-flag::before {
    content: "🇺🇸";
}

.locale-select-option[data-locale^="es"] .locale-select-option-flag::before {
    content: "🇪🇸";
}

.locale-select-option[data-locale^="pt"] .locale-select-option-flag::before {
    content: "🇧🇷";
}

.locale-select-option[data-locale^="fr"] .locale-select-option-flag::before {
    content: "🇫🇷";
}

.locale-select-option-text {
    font-size: 0.9rem;
    font-weight: 600;
    letter-spacing: 0.01em;
}

@media (max-width: 768px) {
    .navbar-locale-switch,
    .auth-login-locale-bar {
        min-width: 82px;
    }

    .locale-select-shell {
        min-height: 38px;
    }

    #kit-locale-select.form-select-sm,
    .locale-select-enhanced {
        min-width: 82px;
        height: 38px;
    }

    .locale-select-label {
        justify-content: center;
        padding: 0 1.85rem 0 1.85rem;
        font-size: 0.82rem;
    }

    .locale-select-label::before {
        left: 0.6rem;
    }

    .locale-select-label::after {
        right: 0.75rem;
    }

    .locale-select-menu {
        min-width: 120px;
    }
}


/*# sourceMappingURL=data:application/json;charset=utf-8;base64,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WUFBWTtJQUNaLFNBQVM7SUFDVCxxQkFBcUI7SUFDckIsdUJBQXVCO0lBQ3ZCLGNBQWM7SUFDZCx1QkFBdUI7SUFDdkIsZ0JBQWdCO0lBQ2hCLGVBQWU7SUFDZix1REFBdUQ7QUFDM0Q7O0FBRUE7O0lBRUkscUNBQXFDO0lBQ3JDLGNBQWM7QUFDbEI7O0FBRUE7SUFDSSxlQUFlO0lBQ2YsY0FBYztBQUNsQjs7QUFFQTtJQUNJLGFBQWE7QUFDakI7O0FBRUE7SUFDSSxlQUFlO0FBQ25COztBQUVBO0lBQ0ksZUFBZTtBQUNuQjs7QUFFQTtJQUNJLGVBQWU7QUFDbkI7O0FBRUE7SUFDSSxlQUFlO0FBQ25COztBQUVBO0lBQ0ksaUJBQWlCO0lBQ2pCLGdCQUFnQjtJQUNoQixzQkFBc0I7QUFDMUI7O0FBRUE7SUFDSTs7UUFFSSxlQUFlO0lBQ25COztJQUVBO1FBQ0ksZ0JBQWdCO0lBQ3BCOztJQUVBOztRQUVJLGVBQWU7UUFDZixZQUFZO0lBQ2hCOztJQUVBO1FBQ0ksdUJBQXVCO1FBQ3ZCLDRCQUE0QjtRQUM1QixrQkFBa0I7SUFDdEI7O0lBRUE7UUFDSSxZQUFZO0lBQ2hCOztJQUVBO1FBQ0ksY0FBYztJQUNsQjs7SUFFQTtRQUNJLGdCQUFnQjtJQUNwQjtBQUNKIiwic291cmNlcyI6WyJ3ZWJwYWNrOi8vLy4vYXNzZXRzL3N0eWxlcy9zdHlsZS5jc3MiLCJ3ZWJwYWNrOi8vLy4vYXNzZXRzL3N0eWxlcy90YWJsZXMuY3NzIiwid2VicGFjazovLy8uL2Fzc2V0cy9zdHlsZXMvdmlzdGFzLmNzcyIsIndlYnBhY2s6Ly8vLi9hc3NldHMvc3R5bGVzL3N1YnNjcmlwdGlvbi1leHBpcmF0aW9uLmNzcyIsIndlYnBhY2s6Ly8vLi9hc3NldHMvc3R5bGVzL2FwcC5jc3MiLCJ3ZWJwYWNrOi8vLy4vYXNzZXRzL3N0eWxlcy9jb25maWd1cmFjaW9uL21vZGFsLmNzcyIsIndlYnBhY2s6Ly8vLi9hc3NldHMvc3R5bGVzL2xvY2FsZVN3aXRjaGVyLmNzcyJdLCJzb3VyY2VzQ29udGVudCI6WyIvKipcclxuKiBUZW1wbGF0ZSBOYW1lOiBOaWNlQWRtaW4gLSB2Mi41LjBcclxuKiBUZW1wbGF0ZSBVUkw6IGh0dHBzOi8vYm9vdHN0cmFwbWFkZS5jb20vbmljZS1hZG1pbi1ib290c3RyYXAtYWRtaW4taHRtbC10ZW1wbGF0ZS9cclxuKiBBdXRob3I6IEJvb3RzdHJhcE1hZGUuY29tXHJcbiogTGljZW5zZTogaHR0cHM6Ly9ib290c3RyYXBtYWRlLmNvbS9saWNlbnNlL1xyXG4qL1xyXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiMgR2VuZXJhbFxyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXHJcbiN1aS1pZC0xIHtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbn1cclxuXHJcbjpyb290IHtcclxuICBzY3JvbGwtYmVoYXZpb3I6IHNtb290aDtcclxuICAtLWNvbG9yLWJnLXBhZ2U6ICMwNjA5MGU7XHJcbiAgLS1jb2xvci1iZy1wYWdlLTI6ICMwZDE1MjI7XHJcbiAgLS1jb2xvci1zdXJmYWNlOiByZ2JhKDEwLCAxNiwgMjYsIDAuNjUpO1xyXG4gIC0tY29sb3Itc3VyZmFjZS1zdHJvbmc6IHJnYmEoMTMsIDIwLCAzMSwgMC45NSk7XHJcbiAgLS1jb2xvci1zdXJmYWNlLXNvZnQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wMyk7XHJcbiAgLS1jb2xvci1ib3JkZXItc29mdDogcmdiYSgwLCAyMjksIDI1NSwgMC4xMik7XHJcbiAgLS1jb2xvci1ib3JkZXItc3Ryb25nOiByZ2JhKDAsIDIyOSwgMjU1LCAwLjMpO1xyXG4gIC0tY29sb3ItdGV4dC1wcmltYXJ5OiAjZjBmNGY4O1xyXG4gIC0tY29sb3ItdGV4dC1zZWNvbmRhcnk6ICM4YjliYjQ7XHJcbiAgLS1jb2xvci1hY2NlbnQ6ICMwMGU1ZmY7XHJcbiAgLS1jb2xvci1hY2NlbnQtc29mdDogcmdiYSgwLCAyMjksIDI1NSwgMC4xKTtcclxuICAtLWNvbG9yLWFjY2VudC1zZWNvbmRhcnk6ICM3YjRkZmY7XHJcbiAgLS1zaGFkb3ctc29mdDogMCA4cHggMjRweCByZ2JhKDAsIDAsIDAsIDAuNCk7XHJcbiAgLS1zaGFkb3ctZ2xvdzogMCAwIDE1cHggcmdiYSgwLCAyMjksIDI1NSwgMC4xNSk7XHJcbiAgLS1yYWRpdXMtbGc6IDE2cHg7XHJcbiAgLS1yYWRpdXMtbWQ6IDEwcHg7XHJcbn1cclxuXHJcbmh0bWwge1xyXG4gIHNjcm9sbGJhci13aWR0aDogdGhpbjtcclxuICBzY3JvbGxiYXItY29sb3I6IHJnYmEoMCwgMjMwLCAyNTUsIDAuMzgpIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wNSk7XHJcbn1cclxuXHJcbmh0bWw6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcclxuICB3aWR0aDogMTBweDtcclxuICBoZWlnaHQ6IDEwcHg7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYmctcGFnZSkgIWltcG9ydGFudDtcclxufVxyXG5cclxuaHRtbDo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWIge1xyXG4gIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKSAhaW1wb3J0YW50O1xyXG4gIGJvcmRlci1yYWRpdXM6IDVweDtcclxuICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcclxufVxyXG5cclxuaHRtbDo6LXdlYmtpdC1zY3JvbGxiYXItdHJhY2sge1xyXG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XHJcbiAgYm9yZGVyLXJhZGl1czogNXB4O1xyXG59XHJcblxyXG5odG1sOjotd2Via2l0LXNjcm9sbGJhci10aHVtYjpob3ZlcixcclxuaHRtbDo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWI6YWN0aXZlIHtcclxuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMikgIWltcG9ydGFudDtcclxufVxyXG5cclxuYm9keSB7XHJcbiAgZm9udC1mYW1pbHk6IFwiSW50ZXJcIiwgXCJPcGVuIFNhbnNcIiwgc2Fucy1zZXJpZjtcclxuICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1wcmltYXJ5KTtcclxuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCAjMDYwZTE4IDAlLCAjMTcyZDQ3IDQ4JSwgIzBiMTUyMiAxMDAlKTtcclxuICBiYWNrZ3JvdW5kLWF0dGFjaG1lbnQ6IGZpeGVkO1xyXG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XHJcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcclxuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiB0b3AgY2VudGVyO1xyXG4gIG1pbi1oZWlnaHQ6IDEwMHZoO1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICBvdmVyZmxvdy14OiBoaWRkZW47XHJcbiAgaXNvbGF0aW9uOiBpc29sYXRlO1xyXG59XHJcblxyXG5ib2R5OjpiZWZvcmUge1xyXG4gIGNvbnRlbnQ6IFwiXCI7XHJcbiAgcG9zaXRpb246IGZpeGVkO1xyXG4gIGluc2V0OiAwO1xyXG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG4gIGJhY2tncm91bmQ6XHJcbiAgICByYWRpYWwtZ3JhZGllbnQoY2lyY2xlIGF0IDE1JSAwJSwgcmdiYSgwLCAyMjksIDI1NSwgMC4wNiksIHRyYW5zcGFyZW50IDM1JSksXHJcbiAgICByYWRpYWwtZ3JhZGllbnQoXHJcbiAgICAgIGNpcmNsZSBhdCA4NSUgMTAwJSxcclxuICAgICAgcmdiYSgxMjMsIDc3LCAyNTUsIDAuMDYpLFxyXG4gICAgICB0cmFuc3BhcmVudCAzNSVcclxuICAgICk7XHJcbiAgei1pbmRleDogLTE7XHJcbn1cclxuXHJcbmlucHV0Oi13ZWJraXQtYXV0b2ZpbGwsXHJcbmlucHV0Oi13ZWJraXQtYXV0b2ZpbGw6aG92ZXIsXHJcbmlucHV0Oi13ZWJraXQtYXV0b2ZpbGw6Zm9jdXMsXHJcbnRleHRhcmVhOi13ZWJraXQtYXV0b2ZpbGwsXHJcbnRleHRhcmVhOi13ZWJraXQtYXV0b2ZpbGw6aG92ZXIsXHJcbnRleHRhcmVhOi13ZWJraXQtYXV0b2ZpbGw6Zm9jdXMsXHJcbnNlbGVjdDotd2Via2l0LWF1dG9maWxsLFxyXG5zZWxlY3Q6LXdlYmtpdC1hdXRvZmlsbDpob3Zlcixcclxuc2VsZWN0Oi13ZWJraXQtYXV0b2ZpbGw6Zm9jdXMge1xyXG4gIC13ZWJraXQtdGV4dC1maWxsLWNvbG9yOiAjZTlmN2ZmICFpbXBvcnRhbnQ7XHJcbiAgY2FyZXQtY29sb3I6ICNlOWY3ZmYgIWltcG9ydGFudDtcclxuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDAsIDI0MywgMjU1LCAwLjM1KSAhaW1wb3J0YW50O1xyXG4gIC13ZWJraXQtYm94LXNoYWRvdzogMCAwIDAgMTAwMHB4IHJnYmEoMTEsIDI1LCA0MSwgMC45MikgaW5zZXQgIWltcG9ydGFudDtcclxuICBib3gtc2hhZG93OiAwIDAgMCAxMDAwcHggcmdiYSgxMSwgMjUsIDQxLCAwLjkyKSBpbnNldCAhaW1wb3J0YW50O1xyXG4gIHRyYW5zaXRpb246XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yIDk5OTk5cyBlYXNlLW91dCAwcyxcclxuICAgIGNvbG9yIDk5OTk5cyBlYXNlLW91dCAwcztcclxufVxyXG5cclxuaW5wdXQ6YXV0b2ZpbGwsXHJcbnRleHRhcmVhOmF1dG9maWxsLFxyXG5zZWxlY3Q6YXV0b2ZpbGwge1xyXG4gIGNvbG9yOiAjZTlmN2ZmICFpbXBvcnRhbnQ7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxMSwgMjUsIDQxLCAwLjkyKSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG5pbnB1dCxcclxudGV4dGFyZWEsXHJcbnNlbGVjdCB7XHJcbiAgY29sb3Itc2NoZW1lOiBkYXJrO1xyXG59XHJcblxyXG5zZWxlY3QsXHJcbm9wdGlvbixcclxub3B0Z3JvdXAge1xyXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXN1cmZhY2Utc3Ryb25nKSAhaW1wb3J0YW50O1xyXG4gIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LXByaW1hcnkpICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbmEge1xyXG4gIGNvbG9yOiB2YXIoLS1jb2xvci1hY2NlbnQpO1xyXG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxufVxyXG5cclxuLyogYTpob3ZlciB7XHJcbiAgICBjb2xvcjogIzQ4Y2E1NTtcclxuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxufSAqL1xyXG5cclxuaDEge1xyXG4gIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LXByaW1hcnkpO1xyXG59XHJcblxyXG5oMixcclxuaDMsXHJcbmg0LFxyXG5oNSxcclxuaDYge1xyXG4gIGZvbnQtZmFtaWx5OiBcIkludGVyXCIsIHNhbnMtc2VyaWY7XHJcbiAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQtcHJpbWFyeSk7XHJcbn1cclxuXHJcbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuIyBNYWluXHJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cclxuI21haW4ge1xyXG4gIC8qIHBhcnRlIGRlIGFiYWpvIGRlbCBuYXZiYXIsICh0aXR0bGUpKi9cclxuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICBtYXJnaW4tdG9wOiA2MHB4O1xyXG4gIHBhZGRpbmc6IDI0cHggMzJweDtcclxuICB0cmFuc2l0aW9uOiBhbGwgMC4zcztcclxuICBvdmVyZmxvdy14OiBhdXRvO1xyXG4gIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LXByaW1hcnkpO1xyXG59XHJcblxyXG4jbWFpbjo6LXdlYmtpdC1zY3JvbGxiYXIge1xyXG4gIHdpZHRoOiAxMHB4O1xyXG4gIGhlaWdodDogMTBweDtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDUwYjE0ICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbiNtYWluOjotd2Via2l0LXNjcm9sbGJhci10aHVtYiB7XHJcbiAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpICFpbXBvcnRhbnQ7XHJcbiAgYm9yZGVyLXJhZGl1czogNXB4O1xyXG4gIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4jbWFpbjo6LXdlYmtpdC1zY3JvbGxiYXItdHJhY2sge1xyXG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wNSkgIWltcG9ydGFudDtcclxuICBib3JkZXItcmFkaXVzOiA1cHg7XHJcbn1cclxuXHJcbiNtYWluIHtcclxuICBzY3JvbGxiYXItd2lkdGg6IHRoaW47XHJcbiAgc2Nyb2xsYmFyLWNvbG9yOiByZ2JhKDAsIDIzMCwgMjU1LCAwLjM2KSByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDkpO1xyXG59XHJcblxyXG4jbWFpbjo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWI6aG92ZXIsXHJcbiNtYWluOjotd2Via2l0LXNjcm9sbGJhci10aHVtYjphY3RpdmUge1xyXG4gIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yKSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG5AbWVkaWEgKG1heC13aWR0aDogMTE5OXB4KSB7XHJcbiAgI21haW4ge1xyXG4gICAgcGFkZGluZzogMjBweDtcclxuICB9XHJcbn1cclxuXHJcbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuIyBQYWdlIFRpdGxlXHJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cclxuLnBhZ2V0aXRsZSB7XHJcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcclxufVxyXG5cclxuLnBhZ2V0aXRsZSBoMSB7XHJcbiAgZm9udC1zaXplOiAzNHB4O1xyXG4gIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgZm9udC13ZWlnaHQ6IDYwMDtcclxuICBjb2xvcjogdmFyKC0tY29sb3ItYWNjZW50KSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4ubG9nbyBzcGFuIHtcclxuICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1wcmltYXJ5KSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcclxuICAuZHJvcGRvd24tbWVudS1hcnJvdzo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICB3aWR0aDogMTNweDtcclxuICAgIGhlaWdodDogMTNweDtcclxuICAgIGJhY2tncm91bmQ6ICNmZmY7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICB0b3A6IC03cHg7XHJcbiAgICByaWdodDogMjBweDtcclxuICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcclxuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZWFlZGYxO1xyXG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjZWFlZGYxO1xyXG4gIH1cclxufVxyXG5cclxuQC13ZWJraXQta2V5ZnJhbWVzIGRyb3Bkb3duLWFuaW1hdGUge1xyXG4gIDAlIHtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgfVxyXG5cclxuICAxMDAlIHtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgfVxyXG5cclxuICAwJSB7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gIH1cclxufVxyXG5cclxuQGtleWZyYW1lcyBkcm9wZG93bi1hbmltYXRlIHtcclxuICAwJSB7XHJcbiAgICBvcGFjaXR5OiAwO1xyXG4gIH1cclxuXHJcbiAgMTAwJSB7XHJcbiAgICBvcGFjaXR5OiAxO1xyXG4gIH1cclxuXHJcbiAgMCUge1xyXG4gICAgb3BhY2l0eTogMDtcclxuICB9XHJcbn1cclxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4jIEJhY2sgdG8gdG9wIGJ1dHRvblxyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXHJcbi5iYWNrLXRvLXRvcCB7XHJcbiAgcG9zaXRpb246IGZpeGVkO1xyXG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcclxuICBvcGFjaXR5OiAwO1xyXG4gIHJpZ2h0OiAxNXB4O1xyXG4gIGJvdHRvbTogMTVweDtcclxuICB6LWluZGV4OiA5OTk5OTtcclxuICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1zdXJmYWNlLXN0cm9uZyk7XHJcbiAgd2lkdGg6IDQwcHg7XHJcbiAgaGVpZ2h0OiA0MHB4O1xyXG4gIGJvcmRlci1yYWRpdXM6IDEycHg7XHJcbiAgdHJhbnNpdGlvbjogYWxsIDAuNHM7XHJcbiAgYm94LXNoYWRvdzogdmFyKC0tc2hhZG93LXNvZnQpO1xyXG59XHJcblxyXG4uYmFjay10by10b3AgaSB7XHJcbiAgZm9udC1zaXplOiAyNHB4O1xyXG4gIGNvbG9yOiAjZmZmO1xyXG4gIGxpbmUtaGVpZ2h0OiAwO1xyXG59XHJcblxyXG4uYmFjay10by10b3A6aG92ZXIge1xyXG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMjI5LCAyNTUsIDAuMDUpO1xyXG4gIGNvbG9yOiB2YXIoLS1jb2xvci1hY2NlbnQpO1xyXG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWJvcmRlci1zdHJvbmcpO1xyXG4gIGJveC1zaGFkb3c6IHZhcigtLXNoYWRvdy1zb2Z0KTtcclxufVxyXG5cclxuLmJhY2stdG8tdG9wLmFjdGl2ZSB7XHJcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcclxuICBvcGFjaXR5OiAxO1xyXG59XHJcbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuIyBIZWFkZXJcclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xyXG4vKiBFc3RpbG8gYmFzZSBkZWwgbG9nbyAqL1xyXG4ubG9nbyB7XHJcbiAgZGlzcGxheTogZmxleDtcclxuICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gIGdhcDogNnB4O1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcclxuICBtYXgtd2lkdGg6IDEwMCU7XHJcbn1cclxuXHJcbi8qIEltYWdlbiBkZWwgbG9nbyAqL1xyXG4ubG9nbyBpbWcge1xyXG4gIHdpZHRoOiA0OHB4O1xyXG4gIGhlaWdodDogNDhweDtcclxuICBtYXgtaGVpZ2h0OiA0OHB4O1xyXG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcclxuICBvYmplY3QtZml0OiBjb3ZlcjtcclxuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1ib3JkZXItc29mdCk7XHJcbn1cclxuXHJcbi8qIFRleHRvIGRlbCBsb2dvICovXHJcbi5sb2dvIHNwYW4ge1xyXG4gIGZvbnQtc2l6ZTogMjJweDtcclxuICBmb250LXdlaWdodDogNzAwO1xyXG4gIGNvbG9yOiB2YXIoLS1jb2xvci1hY2NlbnQpOyAvKiBhenVsIGNpZWxvICovXHJcbiAgZm9udC1mYW1pbHk6IFwiTnVuaXRvXCIsIHNhbnMtc2VyaWY7XHJcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XHJcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuICBtYXgtd2lkdGg6IDEwMCU7XHJcbn1cclxuXHJcbi8qIFBhcmEgcGFudGFsbGFzIGdyYW5kZXMgKi9cclxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xyXG4gIC5sb2dvIHtcclxuICAgIHdpZHRoOiAyMTBweDtcclxuICB9XHJcbn1cclxuXHJcbi8qIFBhcmEgdGFibGV0cyB5IGNlbHVsYXJlcyAqL1xyXG5AbWVkaWEgKG1heC13aWR0aDogMTE5OS45OHB4KSB7XHJcbiAgLmxvZ28ge1xyXG4gICAgd2lkdGg6IGF1dG87XHJcbiAgICBtYXgtd2lkdGg6IDE4MHB4O1xyXG4gIH1cclxuXHJcbiAgLmxvZ28gaW1nIHtcclxuICAgIHdpZHRoOiAzMHB4O1xyXG4gICAgaGVpZ2h0OiAzMHB4O1xyXG4gICAgbWF4LWhlaWdodDogNDBweDtcclxuICB9XHJcblxyXG4gIC5sb2dvIHNwYW4ge1xyXG4gICAgZm9udC1zaXplOiAxNnB4O1xyXG4gIH1cclxufVxyXG5cclxuLyogUGFyYSBjZWx1bGFyZXMgcGVxdWXDsW9zIChtZW5vcyBkZSA1NzZweCkgKi9cclxuQG1lZGlhIChtYXgtd2lkdGg6IDU3NS45OHB4KSB7XHJcbiAgLmxvZ28ge1xyXG4gICAgbWF4LXdpZHRoOiAxNDBweDtcclxuICB9XHJcblxyXG4gIC5sb2dvIHNwYW4ge1xyXG4gICAgZm9udC1zaXplOiAxNHB4O1xyXG4gIH1cclxufVxyXG5cclxuLypoZWFkZXIqL1xyXG4uaGVhZGVyIHtcclxuICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgdG9wOiAwO1xyXG4gIGxlZnQ6IDA7XHJcbiAgcmlnaHQ6IDA7XHJcbiAgaGVpZ2h0OiA2MHB4O1xyXG4gIHotaW5kZXg6IDk5NztcclxuICB0cmFuc2l0aW9uOiBhbGwgMC41cztcclxuICBwYWRkaW5nOiAyMHB4O1xyXG4gIGJhY2tncm91bmQ6IHJnYmEoMTAsIDE1LCAyNCwgMC44NSk7XHJcbiAgYmFja2Ryb3AtZmlsdGVyOiBibHVyKDEwcHgpO1xyXG4gIC13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOiBibHVyKDEwcHgpO1xyXG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1jb2xvci1ib3JkZXItc29mdCk7XHJcbiAgbWFyZ2luOiAwO1xyXG4gIGJvcmRlci1yYWRpdXM6IDA7XHJcbiAgYm94LXNoYWRvdzogMCA0cHggMjBweCByZ2JhKDAsIDAsIDAsIDAuNSk7XHJcbiAgYm9yZGVyLXJpZ2h0OiBub25lO1xyXG59XHJcblxyXG4uaGVhZGVyIC50b2dnbGUtc2lkZWJhci1idG4ge1xyXG4gIC8qTWVudSBoYW1idXJndWVzYSovXHJcbiAgZm9udC1zaXplOiAzMnB4O1xyXG4gIHBhZGRpbmctbGVmdDogMTBweDtcclxuICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQtcHJpbWFyeSkgIWltcG9ydGFudDtcclxuICB0cmFuc2l0aW9uOiAwLjNzO1xyXG59XHJcblxyXG4uaGVhZGVyIC5zZWFyY2gtYmFyIHtcclxuICBwYWRkaW5nOiAwIDEwcHg7XHJcbn1cclxuXHJcbi5sYW5ndWFnZS1zd2l0Y2hlciB7XHJcbiAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDtcclxuICBtYXJnaW4tcmlnaHQ6IGF1dG87XHJcbn1cclxuXHJcbi5sYW5ndWFnZS10b2dnbGUge1xyXG4gIGRpc3BsYXk6IGlubGluZS1mbGV4ICFpbXBvcnRhbnQ7XHJcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICBnYXA6IDhweDtcclxuICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1wcmltYXJ5KSAhaW1wb3J0YW50O1xyXG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWJvcmRlci1zb2Z0KSAhaW1wb3J0YW50O1xyXG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4yKSAhaW1wb3J0YW50O1xyXG4gIGZvbnQtZmFtaWx5OlxyXG4gICAgXCJTZWdvZSBVSSBFbW9qaVwiLCBcIkFwcGxlIENvbG9yIEVtb2ppXCIsIFwiTm90byBDb2xvciBFbW9qaVwiLFxyXG4gICAgXCJUd2Vtb2ppIE1vemlsbGFcIiwgXCJPcGVuIFNhbnNcIiwgc2Fucy1zZXJpZjtcclxuICBib3gtc2hhZG93OiB2YXIoLS1zaGFkb3ctc29mdCk7XHJcbn1cclxuXHJcbi5sYW5ndWFnZS10b2dnbGU6aG92ZXIsXHJcbi5sYW5ndWFnZS10b2dnbGU6Zm9jdXMsXHJcbi5sYW5ndWFnZS10b2dnbGUuc2hvdyB7XHJcbiAgY29sb3I6ICNmZmZmZmYgIWltcG9ydGFudDtcclxuICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLWJvcmRlci1zdHJvbmcpICFpbXBvcnRhbnQ7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAyMjksIDI1NSwgMC4wNSkgIWltcG9ydGFudDtcclxuICBib3gtc2hhZG93OiB2YXIoLS1zaGFkb3ctc29mdCkgIWltcG9ydGFudDtcclxufVxyXG5cclxuLmxhbmd1YWdlLXRvZ2dsZTo6YWZ0ZXIge1xyXG4gIG1hcmdpbi1sZWZ0OiAycHg7XHJcbn1cclxuXHJcbi5sYW5ndWFnZS1zd2l0Y2hlciAubGFuZ3VhZ2UtbWVudSB7XHJcbiAgbWluLXdpZHRoOiAxODBweDtcclxufVxyXG5cclxuLmxhbmd1YWdlLXN3aXRjaGVyIC5sYW5ndWFnZS1vcHRpb24ge1xyXG4gIGdhcDogMTBweDtcclxuICBmb250LWZhbWlseTpcclxuICAgIFwiU2Vnb2UgVUkgRW1vamlcIiwgXCJBcHBsZSBDb2xvciBFbW9qaVwiLCBcIk5vdG8gQ29sb3IgRW1vamlcIixcclxuICAgIFwiVHdlbW9qaSBNb3ppbGxhXCIsIFwiT3BlbiBTYW5zXCIsIHNhbnMtc2VyaWY7XHJcbn1cclxuXHJcbi5sYW5ndWFnZS1zd2l0Y2hlciAubGFuZ3VhZ2UtZmxhZyB7XHJcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XHJcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICBtaW4td2lkdGg6IDEuNXJlbTtcclxuICBmb250LXNpemU6IDFyZW07XHJcbiAgbGluZS1oZWlnaHQ6IDE7XHJcbn1cclxuXHJcbi5sYW5ndWFnZS1zd2l0Y2hlciAubGFuZ3VhZ2UtdGV4dCB7XHJcbiAgbGluZS1oZWlnaHQ6IDE7XHJcbn1cclxuXHJcbi5sYW5ndWFnZS1zd2l0Y2hlciAubGFuZ3VhZ2Utb3B0aW9uLmFjdGl2ZSB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAyMjksIDI1NSwgMC4wNSkgIWltcG9ydGFudDtcclxuICBjb2xvcjogdmFyKC0tY29sb3ItYWNjZW50KSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4ubGFuZ3VhZ2Utc3dpdGNoZXIgLmxhbmd1YWdlLW9wdGlvbi5hY3RpdmUgLmxhbmd1YWdlLXRleHQge1xyXG59XHJcblxyXG4jbGFuZ3VhZ2Ugb3B0aW9uIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1zdXJmYWNlLXN0cm9uZyk7XHJcbiAgY29sb3I6ICNmZmZmZmY7XHJcbiAgcGFkZGluZzogMTBweDtcclxuICBmb250LWZhbWlseTpcclxuICAgIFwiU2Vnb2UgVUkgRW1vamlcIiwgXCJBcHBsZSBDb2xvciBFbW9qaVwiLCBcIk5vdG8gQ29sb3IgRW1vamlcIixcclxuICAgIFwiVHdlbW9qaSBNb3ppbGxhXCIsIFwiT3BlbiBTYW5zXCIsIHNhbnMtc2VyaWY7XHJcbn1cclxuQG1lZGlhIChtYXgtd2lkdGg6IDExOTlweCkge1xyXG4gIC5oZWFkZXIgLnNlYXJjaC1iYXIge1xyXG4gICAgcG9zaXRpb246IGZpeGVkO1xyXG4gICAgdG9wOiA1MHB4O1xyXG4gICAgbGVmdDogMDtcclxuICAgIHJpZ2h0OiAwO1xyXG4gICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xyXG4gICAgYm94LXNoYWRvdzogMHB4IDBweCAxNXB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMyk7XHJcbiAgICB6LWluZGV4OiA5OTk5O1xyXG4gICAgdHJhbnNpdGlvbjogMC4zcztcclxuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcclxuICAgIG9wYWNpdHk6IDA7XHJcbiAgfVxyXG5cclxuICAuaGVhZGVyIC5zZWFyY2gtYmFyLXNob3cge1xyXG4gICAgdG9wOiA2MHB4O1xyXG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcclxuICAgIG9wYWNpdHk6IDE7XHJcbiAgfVxyXG59XHJcblxyXG4uaGVhZGVyIC5zZWFyY2gtZm9ybSB7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbn1cclxuXHJcbmlucHV0SGVhZGVyLFxyXG5zZWxlY3RIZWFkZXIge1xyXG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4yKSAhaW1wb3J0YW50O1xyXG4gIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LXByaW1hcnkpICFpbXBvcnRhbnQ7XHJcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tY29sb3ItYm9yZGVyLXNvZnQpICFpbXBvcnRhbnQ7XHJcbiAgYm9yZGVyLXJhZGl1czogOHB4O1xyXG59XHJcblxyXG4uaGVhZGVyIC5zZWFyY2gtZm9ybSBpbnB1dCB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjIpICFpbXBvcnRhbnQ7XHJcbiAgZm9udC1zaXplOiAxNHB4O1xyXG4gIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LXByaW1hcnkpO1xyXG4gIHBhZGRpbmc6IDdweCAzOHB4IDdweCA4cHg7XHJcbiAgdHJhbnNpdGlvbjogMC4zcztcclxuICB3aWR0aDogMTAwJTtcclxuICBmb250LWZhbWlseTogXCJJbnRlclwiLCBzYW5zLXNlcmlmO1xyXG4gIGZvbnQtd2VpZ2h0OiA1MDA7XHJcbiAgZm9udC1zaXplOiAxNXB4O1xyXG4gIGxldHRlci1zcGFjaW5nOiAwLjVweDtcclxuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1ib3JkZXItc29mdCkgIWltcG9ydGFudDtcclxuICBib3JkZXItcmFkaXVzOiA4cHg7XHJcbn1cclxuXHJcbi5oZWFkZXIgLnNlYXJjaC1mb3JtIGlucHV0OjpwbGFjZWhvbGRlciB7XHJcbiAgLyp0ZXh0byBhIGJ1c2NhciovXHJcbiAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQtc2Vjb25kYXJ5KSAhaW1wb3J0YW50O1xyXG4gIGZvbnQtd2VpZ2h0OiA0MDA7XHJcbiAgZm9udC1zdHlsZTogaXRhbGljO1xyXG59XHJcblxyXG4uaGVhZGVyIC5zZWFyY2gtZm9ybSBpbnB1dDpmb2N1cyxcclxuLmhlYWRlciAuc2VhcmNoLWZvcm0gaW5wdXQ6aG92ZXIge1xyXG4gIG91dGxpbmU6IG5vbmU7XHJcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoMCwgMjMwLCAyNTUsIDAuMTUpO1xyXG59XHJcblxyXG4uaGVhZGVyIC5zZWFyY2gtZm9ybSBidXR0b24ge1xyXG4gIGJvcmRlcjogMDtcclxuICBwYWRkaW5nOiAwO1xyXG4gIG1hcmdpbi1sZWZ0OiAtMzBweDtcclxuICBiYWNrZ3JvdW5kOiBub25lO1xyXG59XHJcblxyXG4uaGVhZGVyIC5zZWFyY2gtZm9ybSBidXR0b24gaSB7XHJcbiAgY29sb3I6IHZhcigtLWNvbG9yLWFjY2VudCk7XHJcbn1cclxuXHJcbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuIyBIZWFkZXIgTmF2XHJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cclxuLmhlYWRlci1uYXYgdWwge1xyXG4gIGxpc3Qtc3R5bGU6IG5vbmU7XHJcbn1cclxuXHJcbi5oZWFkZXItbmF2ID4gdWwge1xyXG4gIG1hcmdpbjogMDtcclxuICBwYWRkaW5nOiAwO1xyXG59XHJcblxyXG4uaGVhZGVyLW5hdiAubmF2LWljb24ge1xyXG4gIGZvbnQtc2l6ZTogMjJweDtcclxuICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1wcmltYXJ5KTtcclxuICBtYXJnaW4tcmlnaHQ6IDI1cHg7XHJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gIHRyYW5zaXRpb246IDAuM3M7XHJcbn1cclxuXHJcbi5oZWFkZXItbmF2IC5uYXYtaWNvbjpob3ZlciB7XHJcbiAgY29sb3I6IHZhcigtLWNvbG9yLWFjY2VudCk7XHJcbn1cclxuXHJcbi8qbmF2IGRlcmVjaG8sIHByb2ZpbGUqL1xyXG4uaGVhZGVyLW5hdiAubmF2LXByb2ZpbGUge1xyXG4gIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LXByaW1hcnkpICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5oZWFkZXItbmF2IC5uYXYtcHJvZmlsZSAucHJvZmlsZS1hdmF0YXIge1xyXG4gIHdpZHRoOiA0NHB4O1xyXG4gIGhlaWdodDogNDRweDtcclxuICBtaW4td2lkdGg6IDQ0cHg7XHJcbiAgbWFyZ2luLXJpZ2h0OiAycHg7XHJcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XHJcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuICBib3JkZXItcmFkaXVzOiA1MCU7XHJcbiAgb2JqZWN0LWZpdDogY292ZXI7XHJcbn1cclxuXHJcbi5oZWFkZXItbmF2IC5uYXYtcHJvZmlsZSBpbWcucHJvZmlsZS1hdmF0YXIge1xyXG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWFjY2VudCk7XHJcbn1cclxuXHJcbi5oZWFkZXItbmF2IC5uYXYtcHJvZmlsZSAucHJvZmlsZS1pbml0aWFscyB7XHJcbiAgYmFja2dyb3VuZDogdmFyKC0tY29sb3Itc3VyZmFjZS1zdHJvbmcpICFpbXBvcnRhbnQ7XHJcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tY29sb3ItYWNjZW50KTtcclxuICBjb2xvcjogI2ZmZmZmZjtcclxuICBmb250LXNpemU6IDE2cHg7XHJcbiAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICBsaW5lLWhlaWdodDogMTtcclxuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG59XHJcblxyXG4uaGVhZGVyLW5hdiAubmF2LXByb2ZpbGU6aG92ZXIgLnByb2ZpbGUtYXZhdGFyIHtcclxuICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLWFjY2VudCk7XHJcbn1cclxuXHJcbi5oZWFkZXItbmF2IC5uYXYtcHJvZmlsZSBzcGFuIHtcclxuICBmb250LXNpemU6IDE0cHg7XHJcbiAgZm9udC13ZWlnaHQ6IDYwMDtcclxuICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1wcmltYXJ5KTtcclxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgbWF4LXdpZHRoOiAxODBweDtcclxuICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xyXG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbn1cclxuXHJcbi5oZWFkZXItbmF2IC5iYWRnZS1udW1iZXIge1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICBpbnNldDogLTJweCAtNXB4IGF1dG8gYXV0bztcclxuICBmb250LXdlaWdodDogbm9ybWFsO1xyXG4gIGZvbnQtc2l6ZTogMTJweDtcclxuICBwYWRkaW5nOiAzcHggNnB4O1xyXG4gIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLWFjY2VudCk7XHJcbiAgY29sb3I6ICNmZmZmZmY7XHJcbiAgYm9yZGVyLXJhZGl1czogMTBweDtcclxufVxyXG5cclxuLmhlYWRlci1uYXYgLm5vdGlmaWNhdGlvbnMge1xyXG4gIGluc2V0OiA4cHggLTE1cHggYXV0byBhdXRvICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5oZWFkZXItbmF2IC5ub3RpZmljYXRpb25zIC5ub3RpZmljYXRpb24taXRlbSB7XHJcbiAgZGlzcGxheTogZmxleDtcclxuICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gIHBhZGRpbmc6IDE1cHggMTBweDtcclxuICB0cmFuc2l0aW9uOiAwLjNzO1xyXG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1jb2xvci1ib3JkZXItc29mdCk7XHJcbn1cclxuXHJcbi5oZWFkZXItbmF2IC5ub3RpZmljYXRpb25zIC5ub3RpZmljYXRpb24taXRlbSBpIHtcclxuICBtYXJnaW46IDAgMjBweCAwIDEwcHg7XHJcbiAgZm9udC1zaXplOiAyNHB4O1xyXG4gIGNvbG9yOiAjMDA3YmZmO1xyXG59XHJcblxyXG4uaGVhZGVyLW5hdiAubm90aWZpY2F0aW9ucyAubm90aWZpY2F0aW9uLWl0ZW0gaDQge1xyXG4gIGZvbnQtc2l6ZTogMTZweDtcclxuICBmb250LXdlaWdodDogNjAwO1xyXG4gIG1hcmdpbi1ib3R0b206IDVweDtcclxuICBjb2xvcjogIzAwMzM2NjtcclxufVxyXG5cclxuLmhlYWRlci1uYXYgLm5vdGlmaWNhdGlvbnMgLm5vdGlmaWNhdGlvbi1pdGVtOmhvdmVyIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDIyOSwgMjU1LCAwLjA1KTsgLyogSG92ZXIgYXp1bCBjaWVsbyAqL1xyXG59XHJcblxyXG4uaGVhZGVyLW5hdiAubWVzc2FnZXMge1xyXG4gIGluc2V0OiA4cHggLTE1cHggYXV0byBhdXRvICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5oZWFkZXItbmF2IC5tZXNzYWdlcyAubWVzc2FnZS1pdGVtIHtcclxuICBwYWRkaW5nOiAxNXB4IDEwcHg7XHJcbiAgdHJhbnNpdGlvbjogMC4zcztcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tY29sb3ItYm9yZGVyLXNvZnQpO1xyXG59XHJcblxyXG4uaGVhZGVyLW5hdiAubWVzc2FnZXMgLm1lc3NhZ2UtaXRlbSBhIHtcclxuICBkaXNwbGF5OiBmbGV4O1xyXG59XHJcblxyXG4uaGVhZGVyLW5hdiAubWVzc2FnZXMgLm1lc3NhZ2UtaXRlbSBpbWcge1xyXG4gIG1hcmdpbjogMCAyMHB4IDAgMTBweDtcclxuICBtYXgtaGVpZ2h0OiA0MHB4O1xyXG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcclxuICBib3JkZXI6IDJweCBzb2xpZCB2YXIoLS1jb2xvci1hY2NlbnQpOyAvKiBCb3JkZSBhenVsIGJyaWxsYW50ZSAqL1xyXG59XHJcblxyXG4uaGVhZGVyLW5hdiAubWVzc2FnZXMgLm1lc3NhZ2UtaXRlbSBoNCB7XHJcbiAgZm9udC1zaXplOiAxNnB4O1xyXG4gIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgbWFyZ2luLWJvdHRvbTogNXB4O1xyXG4gIGNvbG9yOiAjMDAzMzY2OyAvKiBBenVsIHByb2Z1bmRvICovXHJcbn1cclxuXHJcbi5oZWFkZXItbmF2IC5tZXNzYWdlcyAubWVzc2FnZS1pdGVtOmhvdmVyIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDIyOSwgMjU1LCAwLjA1KTtcclxufVxyXG5cclxuLmhlYWRlci1uYXYgLnByb2ZpbGUge1xyXG4gIG1pbi13aWR0aDogMjQwcHg7XHJcbiAgcGFkZGluZy1ib3R0b206IDA7XHJcbiAgdG9wOiA4cHggIWltcG9ydGFudDtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1zdXJmYWNlLXN0cm9uZyk7XHJcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tY29sb3ItYm9yZGVyLXNvZnQpO1xyXG4gIGJvcmRlci1yYWRpdXM6IDhweDtcclxuICBib3gtc2hhZG93OiB2YXIoLS1zaGFkb3ctc29mdCk7XHJcbn1cclxuXHJcbi5oZWFkZXItbmF2IC5wcm9maWxlIC5kcm9wZG93bi1oZWFkZXIgaDYge1xyXG4gIGZvbnQtc2l6ZTogMThweDtcclxuICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgY29sb3I6IHZhcigtLWNvbG9yLWFjY2VudCk7XHJcbn1cclxuXHJcbi5oZWFkZXItbmF2IC5wcm9maWxlIC5kcm9wZG93bi1oZWFkZXIgc3BhbiB7XHJcbiAgZm9udC1zaXplOiAxNHB4O1xyXG4gIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LXNlY29uZGFyeSk7XHJcbn1cclxuXHJcbi5oZWFkZXItbmF2IC5wcm9maWxlIC5kcm9wZG93bi1pdGVtIHtcclxuICBmb250LXNpemU6IDE0cHg7XHJcbiAgcGFkZGluZzogMTBweCAxNXB4O1xyXG4gIHRyYW5zaXRpb246IDAuM3M7XHJcbiAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQtcHJpbWFyeSk7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbn1cclxuXHJcbi5oZWFkZXItbmF2IC5wcm9maWxlIC5kcm9wZG93bi1pdGVtIGkge1xyXG4gIG1hcmdpbi1yaWdodDogMTBweDtcclxuICBmb250LXNpemU6IDE4cHg7XHJcbiAgbGluZS1oZWlnaHQ6IDA7XHJcbiAgY29sb3I6IHZhcigtLWNvbG9yLWFjY2VudCk7XHJcbiAgdHJhbnNpdGlvbjogMC4zcztcclxufVxyXG5cclxuLmhlYWRlci1uYXYgLnByb2ZpbGUgLmRyb3Bkb3duLWl0ZW06aG92ZXIge1xyXG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMjI5LCAyNTUsIDAuMDUpO1xyXG4gIGNvbG9yOiB2YXIoLS1jb2xvci1hY2NlbnQpO1xyXG59XHJcblxyXG4vKmZvcnphciBlbCBwcm9maWxlKi9cclxuLmRyb3Bkb3duLW1lbnUsXHJcbi5uYXZiYXIgLmRyb3Bkb3duLW1lbnUge1xyXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXN1cmZhY2Utc3Ryb25nKSAhaW1wb3J0YW50O1xyXG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWJvcmRlci1zb2Z0KSAhaW1wb3J0YW50O1xyXG4gIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LXByaW1hcnkpICFpbXBvcnRhbnQ7XHJcbiAgYm94LXNoYWRvdzogdmFyKC0tc2hhZG93LXNvZnQpICFpbXBvcnRhbnQ7XHJcbiAgcGFkZGluZzogMC41cmVtIDA7XHJcbiAgYm9yZGVyLXJhZGl1czogOHB4O1xyXG59XHJcblxyXG4uZHJvcGRvd24taXRlbSxcclxuLm5hdmJhciAuZHJvcGRvd24taXRlbSB7XHJcbiAgY29sb3I6ICNlOWY3ZmYgIWltcG9ydGFudDtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xyXG4gIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2U7XHJcbiAgcGFkZGluZzogMTBweCAyMHB4O1xyXG59XHJcblxyXG4uZHJvcGRvd24taXRlbTpob3ZlcixcclxuLmRyb3Bkb3duLWl0ZW06Zm9jdXMsXHJcbi5uYXZiYXIgLmRyb3Bkb3duLWl0ZW06aG92ZXIge1xyXG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMjI5LCAyNTUsIDAuMDUpICFpbXBvcnRhbnQ7XHJcbiAgY29sb3I6IHZhcigtLWNvbG9yLWFjY2VudCkgIWltcG9ydGFudDtcclxuICBwYWRkaW5nLWxlZnQ6IDI1cHg7XHJcbn1cclxuXHJcbi5kcm9wZG93bi1kaXZpZGVyIHtcclxuICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tY29sb3ItYm9yZGVyLXNvZnQpICFpbXBvcnRhbnQ7XHJcbiAgbWFyZ2luOiAwLjVyZW0gMDtcclxufVxyXG4uaGVhZGVyLW5hdiAucHJvZmlsZSAuZHJvcGRvd24taGVhZGVyIC5lbWFpbG5hdiB7XHJcbiAgY29sb3I6ICNlOWY3ZmYgIWltcG9ydGFudDtcclxufVxyXG5cclxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4jIFNpZGViYXIgSVpRVUlFUkRBQUFBQUFBQUFBQUFBQUFBXHJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cclxuLyogPT09PT09PSBTSURFQkFSIEJBU0UgPT09PT09PSAqL1xyXG4uc2lkZWJhciB7XHJcbiAgcG9zaXRpb246IGZpeGVkO1xyXG4gIHRvcDogNjBweDtcclxuICBsZWZ0OiAwO1xyXG4gIGJvdHRvbTogMDtcclxuICB3aWR0aDogMzAwcHg7XHJcbiAgei1pbmRleDogMTAwMCAhaW1wb3J0YW50O1xyXG4gIHBhZGRpbmc6IDIwcHg7XHJcbiAgb3ZlcmZsb3cteTogc2Nyb2xsO1xyXG4gIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLXN1cmZhY2Utc3Ryb25nKTtcclxuICBib3JkZXItcmFkaXVzOiAwO1xyXG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xyXG4gIC8qbm8gc2Nyb2xsIGJhciovXHJcbiAgLW1zLW92ZXJmbG93LXN0eWxlOiBub25lO1xyXG4gIHNjcm9sbGJhci13aWR0aDogbm9uZTtcclxuICBib3gtc2hhZG93OiA0cHggMCAyNHB4IHJnYmEoMCwgMCwgMCwgMC4zKTtcclxuICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1ib3JkZXItc29mdCk7XHJcbn1cclxuXHJcbi5zaWRlYmFyOjotd2Via2l0LXNjcm9sbGJhciB7XHJcbiAgZGlzcGxheTogbm9uZTtcclxufVxyXG5cclxuLyogPT09PT09PSBTQ1JPTExCQVIgQ1VTVE9NID09PT09PT0gKi9cclxuLnNpZGViYXI6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcclxuICB3aWR0aDogOHB4O1xyXG4gIGhlaWdodDogOHB4O1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICMwNTBiMTQ7IC8qIEF6dWwgcGFzdGVsICovXHJcbn1cclxuXHJcbi5zaWRlYmFyOjotd2Via2l0LXNjcm9sbGJhci10aHVtYiB7XHJcbiAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpO1xyXG4gIGJvcmRlci1yYWRpdXM6IDVweDtcclxufVxyXG5cclxuLyogPT09PT09PSBSRVNQT05TSVZFIEJFSEFWSU9SID09PT09PT0gKi9cclxuQG1lZGlhIChtYXgtd2lkdGg6IDExOTlweCkge1xyXG4gIC5zaWRlYmFyIHtcclxuICAgIGxlZnQ6IC0zMDBweDtcclxuICB9XHJcblxyXG4gIC50b2dnbGUtc2lkZWJhciAuc2lkZWJhciB7XHJcbiAgICBsZWZ0OiAwO1xyXG4gIH1cclxufVxyXG5cclxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xyXG4gICNtYWluLFxyXG4gICNmb290ZXIge1xyXG4gICAgbWFyZ2luLWxlZnQ6IDMwMHB4O1xyXG4gIH1cclxuXHJcbiAgLnRvZ2dsZS1zaWRlYmFyICNtYWluLFxyXG4gIC50b2dnbGUtc2lkZWJhciAjZm9vdGVyIHtcclxuICAgIG1hcmdpbi1sZWZ0OiAwO1xyXG4gIH1cclxuXHJcbiAgLnRvZ2dsZS1zaWRlYmFyIC5zaWRlYmFyIHtcclxuICAgIGxlZnQ6IC0zMDBweDtcclxuICB9XHJcblxyXG4gIC5oZWFkZXIgLnNlYXJjaC1iYXIge1xyXG4gICAgbWluLXdpZHRoOiAyNTBweDsgLyogQXF1w60gc8OtIGxlIGRhbW9zIHRhbWHDsW8gZ3JhbmRlICovXHJcbiAgICBtYXJnaW4tbGVmdDogYXV0bzsgLyogRWwgcmVzb3J0ZSBxdWUgZW1wdWphIGEgbGEgZGVyZWNoYSAqL1xyXG4gICAgbWFyZ2luLXJpZ2h0OiAxNXB4O1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgfVxyXG5cclxuICAubGFuZ3VhZ2Utc3dpdGNoZXIge1xyXG4gICAgbWFyZ2luLWxlZnQ6IDA7XHJcbiAgICBtYXJnaW4tcmlnaHQ6IDI1cHg7XHJcbiAgfVxyXG59XHJcblxyXG5cclxuLnVpLXRhYmxlLWRldGFpbC1wYW5lbCB7XHJcbiAgICBib3JkZXItcmFkaXVzOiAxNHB4O1xyXG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgIzEyMzI0YSAwJSwgIzBkMjUzOCAxMDAlKTtcclxuICAgIHBhZGRpbmc6IDAuOHJlbTtcclxufVxyXG5cclxuLnVpLXRhYmxlLWRldGFpbC1ncmlkIHtcclxuICAgIGRpc3BsYXk6IGdyaWQ7XHJcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdChhdXRvLWZpdCwgbWlubWF4KDIyMHB4LCAxZnIpKTtcclxuICAgIGdhcDogMC43cmVtO1xyXG59XHJcblxyXG4udWktdGFibGUtZGV0YWlsLWl0ZW0ge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGZsZXgtZGlyZWN0aW9uOiByb3cgIWltcG9ydGFudDtcclxuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7XHJcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQgIWltcG9ydGFudDtcclxuICAgIGdhcDogMC43NXJlbTtcclxuICAgIHBhZGRpbmc6IDAuNTVyZW0gMC42NXJlbSAhaW1wb3J0YW50O1xyXG4gICAgYm9yZGVyLXJhZGl1czogMTBweDtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMCwgMjQzLCAyNTUsIDAuMTgpO1xyXG4gICAgYmFja2dyb3VuZDogcmdiYSgwLCAxNTAsIDI1NSwgMC4wOCk7XHJcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG59XHJcblxyXG4udWktdGFibGUtZGV0YWlsLWl0ZW0tLWZ1bGwge1xyXG4gICAgZ3JpZC1jb2x1bW46IDEgLyAtMTtcclxufVxyXG5cclxuLnVpLXRhYmxlLWRldGFpbC1pdGVtLS1zdGF0dXNjb21wYWN0IHtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgbWF4LXdpZHRoOiAxMDAlO1xyXG4gICAgbWluLXdpZHRoOiAwO1xyXG4gICAganVzdGlmeS1zZWxmOiBzdHJldGNoO1xyXG4gICAgZmxleDogMSAxIGF1dG87XHJcbn1cclxuXHJcbi51aS10YWJsZS1kZXRhaWwtdGV4dC13cmFwcGVyIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQgIWltcG9ydGFudDtcclxuICAgIGdhcDogMnB4O1xyXG4gICAgbWluLXdpZHRoOiAwO1xyXG59XHJcblxyXG4udWktdGFibGUtZGV0YWlsLWxhYmVsIHtcclxuICAgIGZvbnQtc2l6ZTogMC42NXJlbSAhaW1wb3J0YW50O1xyXG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgIGNvbG9yOiAjMDBmM2ZmICFpbXBvcnRhbnQ7XHJcbiAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuMDVlbTtcclxuICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICB0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi51aS10YWJsZS1kZXRhaWwtdmFsdWUge1xyXG4gICAgY29sb3I6ICNmZmZmZmY7XHJcbiAgICBmb250LXNpemU6IDAuOTJyZW07XHJcbiAgICBmb250LXdlaWdodDogNTAwO1xyXG4gICAgd29yZC1icmVhazogYnJlYWstd29yZDtcclxuICAgIHdoaXRlLXNwYWNlOiBub3JtYWwgIWltcG9ydGFudDtcclxuICAgIHRleHQtYWxpZ246IGxlZnQgIWltcG9ydGFudDtcclxufVxyXG5cclxuLmJvb3RzdHJhcC10YWJsZSAuZGV0YWlsLXZpZXcgdGQge1xyXG4gICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xyXG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgIzEyMzI0YSAwJSwgIzBkMjUzOCAxMDAlKSAhaW1wb3J0YW50O1xyXG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMCwgMjQzLCAyNTUsIDAuMikgIWltcG9ydGFudDtcclxufVxyXG5cclxuLyogPT09PT09PSBOQVYgU1RZTEVTID09PT09PT0gKi9cclxuLnNpZGViYXItbmF2IHtcclxuICBwYWRkaW5nOiAycHg7XHJcbiAgbWFyZ2luOiAycHg7XHJcbiAgbGlzdC1zdHlsZTogbm9uZTtcclxuICBtaW4taGVpZ2h0OiBjYWxjKDEwMHZoIC0gMjBweCk7XHJcbn1cclxuXHJcbi5zaWRlYmFyLW5hdiBsaSB7XHJcbiAgbGlzdC1zdHlsZTogbm9uZTtcclxuICBtYXJnaW46IDA7XHJcbiAgcGFkZGluZzogMDtcclxufVxyXG5cclxuLnNpZGViYXItbmF2IC5uYXYtaXRlbSB7XHJcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcclxufVxyXG5cclxuLnNpZGViYXItbmF2IC5uYXYtaGVhZGluZyB7XHJcbiAgZm9udC1zaXplOiAxMnB4O1xyXG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQtcHJpbWFyeSk7XHJcbiAgZm9udC13ZWlnaHQ6IDYwMDtcclxuICBtYXJnaW46IDEycHggMCA2cHggMTVweDtcclxuICBib3JkZXItbGVmdDogNHB4IHNvbGlkIHJnYmEoMCwgMjMwLCAyNTUsIDAuNTIpO1xyXG4gIGJvcmRlci1yYWRpdXM6IDZweDtcclxuICBwYWRkaW5nLWxlZnQ6IDhweDtcclxufVxyXG5cclxuLyogPT09PT09PSBOQVYgTElOS1MgPT09PT09PSAqL1xyXG4uc2lkZWJhci1uYXYgLm5hdi1saW5rIHtcclxuICBkaXNwbGF5OiBmbGV4O1xyXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgZm9udC1zaXplOiAxNXB4O1xyXG4gIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQtcHJpbWFyeSk7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgcGFkZGluZzogMTBweCAxNnB4O1xyXG4gIGJvcmRlci1yYWRpdXM6IDhweDtcclxuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcclxuICBib3gtc2hhZG93OiBub25lO1xyXG4gIHRyYW5zaXRpb246XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yIDAuM3MsXHJcbiAgICBjb2xvciAwLjNzLFxyXG4gICAgYm94LXNoYWRvdyAwLjNzLFxyXG4gICAgdHJhbnNmb3JtIDAuM3M7XHJcbiAgd2lsbC1jaGFuZ2U6IHRyYW5zZm9ybSwgYm94LXNoYWRvdztcclxuICB0ZXh0LXJlbmRlcmluZzogZ2VvbWV0cmljUHJlY2lzaW9uO1xyXG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xyXG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XHJcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xyXG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcclxufVxyXG5cclxuLnNpZGViYXItbmF2IC5uYXYtbGluazpob3ZlciB7XHJcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KFxyXG4gICAgMTM1ZGVnLFxyXG4gICAgcmdiYSgwLCAyMzAsIDI1NSwgMC4xMiksXHJcbiAgICByZ2JhKDEzOCwgOTIsIDI1NSwgMC4xKVxyXG4gICk7XHJcbiAgY29sb3I6ICNmZmZmZmY7XHJcbiAgYm94LXNoYWRvdzpcclxuICAgIDAgMCAwIDFweCByZ2JhKDAsIDIzMCwgMjU1LCAwLjI1KSxcclxuICAgIHZhcigtLXNoYWRvdy1nbG93KTtcclxuICBib3JkZXItY29sb3I6IHJnYmEoMCwgMjMwLCAyNTUsIDAuMzQpO1xyXG59XHJcblxyXG4vKiBpY29ub3MgbmF2ICAqL1xyXG4uc2lkZWJhci1uYXYgLm5hdi1saW5rIGkge1xyXG4gIGZvbnQtc2l6ZTogMThweDtcclxuICBtYXJnaW4tcmlnaHQ6IDEycHg7XHJcbiAgY29sb3I6IHZhcigtLWNvbG9yLWFjY2VudCk7XHJcbiAgdGV4dC1zaGFkb3c6IDAgMCA4cHggcmdiYSgwLCAyMzAsIDI1NSwgMC4yKTtcclxufVxyXG5cclxuLypjdWFuZG8gbm8gZXN0YSBzaW4gc2VsZWNjaW9uYXIqL1xyXG4uc2lkZWJhci1uYXYgLm5hdi1saW5rLmNvbGxhcHNlZCB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxMSwgMjUsIDQxLCAwLjg2KTtcclxuICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1wcmltYXJ5KTtcclxufVxyXG4vKkhPVkVSKi9cclxuLnNpZGViYXItbmF2IC5uYXYtbGluazpob3ZlcixcclxuLnNpZGViYXItbmF2IC5uYXYtbGluay5hY3RpdmUge1xyXG4gIC8qICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCByZ2JhKDAsIDIzMCwgMjU1LCAwLjEyKSwgcmdiYSgxMzgsIDkyLCAyNTUsIDAuMDgpKTtcclxuICovXHJcbiAgYmFja2dyb3VuZDogIzAwMDAwMDRkO1xyXG4gIGNvbG9yOiAjZmZmZmZmO1xyXG4gIHRyYW5zZm9ybTogc2NhbGUoMS4wNSk7XHJcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcclxuICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLWFjY2VudCk7XHJcbiAgLyogICAgIGJveC1zaGFkb3c6IDAgMCAwIDFweCByZ2JhKDAsIDIzMCwgMjU1LCAwLjIpLCB2YXIoLS1zaGFkb3ctZ2xvdyk7XHJcbiAqL1xyXG59XHJcblxyXG4uc2lkZWJhci1uYXYgLm5hdi1saW5rOmhvdmVyIGksXHJcbi5zaWRlYmFyLW5hdiAubmF2LWxpbmsuYWN0aXZlIGkge1xyXG4gIGNvbG9yOiAjZmZmZmZmICFpbXBvcnRhbnQ7XHJcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLjEpO1xyXG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XHJcbn1cclxuXHJcbi5zaWRlYmFyLW5hdiAubmF2LWxpbmsuY29sbGFwc2VkIGkge1xyXG4gIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LXByaW1hcnkpOyAvKiDDjWNvbm8gY2FtYmlhIGEgYXp1bCBtw6FzIG9zY3VybyAqL1xyXG59XHJcblxyXG4uc2lkZWJhci1uYXYgLm5hdi1saW5rIC5iaS1jaGV2cm9uLWRvd24ge1xyXG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xyXG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjJzIGVhc2UtaW4tb3V0O1xyXG59XHJcblxyXG4uc2lkZWJhci1uYXYgLm5hdi1saW5rOm5vdCguY29sbGFwc2VkKSAuYmktY2hldnJvbi1kb3duIHtcclxuICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xyXG59XHJcblxyXG4uc2lkZWJhci1uYXYgLm5hdi1saW5rIHNwYW4ge1xyXG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XHJcbn1cclxuXHJcbi5zaWRlYmFyLW5hdiAubmF2LWxpbms6aG92ZXIgc3BhbiB7XHJcbiAgY29sb3I6IHZhcigtLWNvbG9yLWFjY2VudCk7XHJcbn1cclxuXHJcbi8qID09PT09PT0gU1VCTUVOw5ogPT09PT09PSAqL1xyXG4uc2lkZWJhci1uYXYgLm5hdi1jb250ZW50IHtcclxuICBwYWRkaW5nOiA1cHggMCAwO1xyXG4gIG1hcmdpbjogMDtcclxuICBsaXN0LXN0eWxlOiBub25lO1xyXG59XHJcblxyXG4uc2lkZWJhci1uYXYgLm5hdi1jb250ZW50IGEge1xyXG4gIGRpc3BsYXk6IGZsZXg7XHJcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICBmb250LXNpemU6IDE0cHg7XHJcbiAgZm9udC13ZWlnaHQ6IDYwMDtcclxuICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1zZWNvbmRhcnkpOyAvKiBBenVsIGludGVybWVkaW8gKi9cclxuICBwYWRkaW5nOiAxMnB4IDAgMTJweCA0MHB4O1xyXG4gIHRyYW5zaXRpb246IDAuM3M7XHJcbn1cclxuXHJcbi5zaWRlYmFyLW5hdiAubmF2LWNvbnRlbnQgYSBpIHtcclxuICBmb250LXNpemU6IDZweDtcclxuICBtYXJnaW4tcmlnaHQ6IDEwcHg7XHJcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xyXG59XHJcblxyXG4uc2lkZWJhci1uYXYgLm5hdi1jb250ZW50IGE6aG92ZXIsXHJcbi5zaWRlYmFyLW5hdiAubmF2LWNvbnRlbnQgYS5hY3RpdmUge1xyXG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMjI5LCAyNTUsIDAuMDUpO1xyXG4gIGNvbG9yOiB2YXIoLS1jb2xvci1hY2NlbnQpO1xyXG4gIGJvcmRlci1yYWRpdXM6IDhweDtcclxufVxyXG5cclxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4jIERhc2hib2FyZFxyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXHJcbi8qISotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXHJcbi8qIyBJY29ucyBsaXN0IHBhZ2UqL1xyXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKiEqL1xyXG4uaWNvbnNsaXN0IHtcclxuICBkaXNwbGF5OiBncmlkO1xyXG4gIG1heC13aWR0aDogMTAwJTtcclxuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdChhdXRvLWZpdCwgbWlubWF4KDE4MHB4LCAxZnIpKTtcclxuICBnYXA6IDEuMjVyZW07XHJcbiAgcGFkZGluZy10b3A6IDE1cHg7XHJcbn1cclxuXHJcbi5pY29uc2xpc3QgLmljb24ge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XHJcbiAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgY29sb3I6ICMwMTI5NzA7XHJcbiAgcGFkZGluZzogMTVweCAwO1xyXG59XHJcblxyXG4uaWNvbnNsaXN0IGkge1xyXG4gIG1hcmdpbjogMC4yNXJlbTtcclxuICBmb250LXNpemU6IDIuNXJlbTtcclxufVxyXG5cclxuLmljb25zbGlzdCAubGFiZWwge1xyXG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1icy1mb250LW1vbm9zcGFjZSk7XHJcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgcGFkZGluZzogMC4yNXJlbTtcclxuICBmb250LXNpemU6IDEycHg7XHJcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XHJcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuICBjb2xvcjogIzY2NjtcclxufVxyXG5cclxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4jIEYuQS5RIFBhZ2VcclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xyXG4uZmFxIC5iYXNpYyBoNiB7XHJcbiAgZm9udC1zaXplOiAxOHB4O1xyXG4gIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgY29sb3I6ICM0MTU0ZjE7XHJcbn1cclxuXHJcbi5mYXEgLmJhc2ljIHAge1xyXG4gIGNvbG9yOiAjNjk4MGFhO1xyXG59XHJcblxyXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiMgQ29udGFjdFxyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXHJcbi5jb250YWN0IC5pbmZvLWJveCB7XHJcbiAgcGFkZGluZzogMjhweCAzMHB4O1xyXG59XHJcblxyXG4uY29udGFjdCAuaW5mby1ib3ggaSB7XHJcbiAgZm9udC1zaXplOiAzOHB4O1xyXG4gIGxpbmUtaGVpZ2h0OiAwO1xyXG4gIGNvbG9yOiAjNDE1NGYxO1xyXG59XHJcblxyXG4uY29udGFjdCAuaW5mby1ib3ggaDMge1xyXG4gIGZvbnQtc2l6ZTogMjBweDtcclxuICBjb2xvcjogIzAxMjk3MDtcclxuICBmb250LXdlaWdodDogNzAwO1xyXG4gIG1hcmdpbjogMjBweCAwIDEwcHggMDtcclxufVxyXG5cclxuLmNvbnRhY3QgLmluZm8tYm94IHAge1xyXG4gIHBhZGRpbmc6IDA7XHJcbiAgbGluZS1oZWlnaHQ6IDI0cHg7XHJcbiAgZm9udC1zaXplOiAxNHB4O1xyXG4gIG1hcmdpbi1ib3R0b206IDA7XHJcbn1cclxuXHJcbi5jb250YWN0IC5waHAtZW1haWwtZm9ybSAuZXJyb3ItbWVzc2FnZSB7XHJcbiAgZGlzcGxheTogbm9uZTtcclxuICBjb2xvcjogI2ZmZjtcclxuICBiYWNrZ3JvdW5kOiAjZWQzYzBkO1xyXG4gIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgcGFkZGluZzogMTVweDtcclxuICBtYXJnaW4tYm90dG9tOiAyNHB4O1xyXG4gIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbn1cclxuXHJcbi5jb250YWN0IC5waHAtZW1haWwtZm9ybSAuc2VudC1tZXNzYWdlIHtcclxuICBkaXNwbGF5OiBub25lO1xyXG4gIGNvbG9yOiAjZmZmO1xyXG4gIGJhY2tncm91bmQ6ICMxOGQyNmU7XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gIHBhZGRpbmc6IDE1cHg7XHJcbiAgbWFyZ2luLWJvdHRvbTogMjRweDtcclxuICBmb250LXdlaWdodDogNjAwO1xyXG59XHJcblxyXG4uY29udGFjdCAucGhwLWVtYWlsLWZvcm0gLmxvYWRpbmcge1xyXG4gIGRpc3BsYXk6IG5vbmU7XHJcbiAgYmFja2dyb3VuZDogI2ZmZjtcclxuICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgcGFkZGluZzogMTVweDtcclxuICBtYXJnaW4tYm90dG9tOiAyNHB4O1xyXG59XHJcblxyXG4uY29udGFjdCAucGhwLWVtYWlsLWZvcm0gLmxvYWRpbmc6YmVmb3JlIHtcclxuICBjb250ZW50OiBcIlwiO1xyXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICBib3JkZXItcmFkaXVzOiA1MCU7XHJcbiAgd2lkdGg6IDI0cHg7XHJcbiAgaGVpZ2h0OiAyNHB4O1xyXG4gIG1hcmdpbjogMCAxMHB4IC02cHggMDtcclxuICBib3JkZXI6IDNweCBzb2xpZCAjMThkMjZlO1xyXG4gIGJvcmRlci10b3AtY29sb3I6ICNlZWU7XHJcbiAgLXdlYmtpdC1hbmltYXRpb246IGFuaW1hdGUtbG9hZGluZyAxcyBsaW5lYXIgaW5maW5pdGU7XHJcbiAgYW5pbWF0aW9uOiBhbmltYXRlLWxvYWRpbmcgMXMgbGluZWFyIGluZmluaXRlO1xyXG59XHJcblxyXG4uY29udGFjdCAucGhwLWVtYWlsLWZvcm0gaW5wdXQsXHJcbi5jb250YWN0IC5waHAtZW1haWwtZm9ybSB0ZXh0YXJlYSB7XHJcbiAgYm9yZGVyLXJhZGl1czogMDtcclxuICBib3gtc2hhZG93OiBub25lO1xyXG4gIGZvbnQtc2l6ZTogMTRweDtcclxuICBib3JkZXItcmFkaXVzOiAwO1xyXG59XHJcblxyXG4uY29udGFjdCAucGhwLWVtYWlsLWZvcm0gaW5wdXQ6Zm9jdXMsXHJcbi5jb250YWN0IC5waHAtZW1haWwtZm9ybSB0ZXh0YXJlYTpmb2N1cyB7XHJcbiAgYm9yZGVyLWNvbG9yOiAjNDE1NGYxO1xyXG59XHJcblxyXG4uY29udGFjdCAucGhwLWVtYWlsLWZvcm0gaW5wdXQge1xyXG4gIHBhZGRpbmc6IDEwcHggMTVweDtcclxufVxyXG5cclxuLmNvbnRhY3QgLnBocC1lbWFpbC1mb3JtIHRleHRhcmVhIHtcclxuICBwYWRkaW5nOiAxMnB4IDE1cHg7XHJcbn1cclxuXHJcbi5jb250YWN0IC5waHAtZW1haWwtZm9ybSBidXR0b25bdHlwZT1cInN1Ym1pdFwiXSB7XHJcbiAgYmFja2dyb3VuZDogIzQxNTRmMTtcclxuICBib3JkZXI6IDA7XHJcbiAgcGFkZGluZzogMTBweCAzMHB4O1xyXG4gIGNvbG9yOiAjZmZmO1xyXG4gIHRyYW5zaXRpb246IDAuNHM7XHJcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xyXG59XHJcblxyXG4uY29udGFjdCAucGhwLWVtYWlsLWZvcm0gYnV0dG9uW3R5cGU9XCJzdWJtaXRcIl06aG92ZXIge1xyXG4gIGJhY2tncm91bmQ6ICM1OTY5ZjM7XHJcbn1cclxuXHJcbkAtd2Via2l0LWtleWZyYW1lcyBhbmltYXRlLWxvYWRpbmcge1xyXG4gIDAlIHtcclxuICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xyXG4gIH1cclxuXHJcbiAgMTAwJSB7XHJcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xyXG4gIH1cclxufVxyXG5cclxuQGtleWZyYW1lcyBhbmltYXRlLWxvYWRpbmcge1xyXG4gIDAlIHtcclxuICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xyXG4gIH1cclxuXHJcbiAgMTAwJSB7XHJcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xyXG4gIH1cclxufVxyXG5cclxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4jIEVycm9yIDQwNFxyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXHJcbi5lcnJvci00MDQge1xyXG4gIHBhZGRpbmc6IDMwcHg7XHJcbn1cclxuXHJcbi5lcnJvci00MDQgaDEge1xyXG4gIGZvbnQtc2l6ZTogMTgwcHg7XHJcbiAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICBjb2xvcjogIzQxNTRmMTtcclxuICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gIGxpbmUtaGVpZ2h0OiAxNTBweDtcclxufVxyXG5cclxuLmVycm9yLTQwNCBoMiB7XHJcbiAgZm9udC1zaXplOiAyNHB4O1xyXG4gIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgY29sb3I6ICMwMTI5NzA7XHJcbiAgbWFyZ2luLWJvdHRvbTogMzBweDtcclxufVxyXG5cclxuLmVycm9yLTQwNCAuYnRuIHtcclxuICBiYWNrZ3JvdW5kOiAjNTE2NzhmO1xyXG4gIGNvbG9yOiAjZmZmO1xyXG4gIHBhZGRpbmc6IDhweCAzMHB4O1xyXG59XHJcblxyXG4uZXJyb3ItNDA0IC5idG46aG92ZXIge1xyXG4gIGJhY2tncm91bmQ6ICMzZTRmNmY7XHJcbn1cclxuXHJcbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xyXG4gIC5lcnJvci00MDQgaW1nIHtcclxuICAgIG1heC13aWR0aDogNTAlO1xyXG4gIH1cclxufVxyXG5cclxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4jIEZvb3RlclxyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXHJcbi5mb290ZXIge1xyXG4gIHBhZGRpbmc6IDIwcHggMDtcclxuICBmb250LXNpemU6IDE0cHg7XHJcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3M7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7IC8qIEZvbmRvIGF6dWwgY2llbG8gbXV5IGNsYXJvICovXHJcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNiNWQ5ZmY7IC8qIEzDrW5lYSBzdXBlcmlvciBhenVsIGNsYXJhICovXHJcbiAgYm94LXNoYWRvdzogMCAtMnB4IDEwcHggcmdiYSgwLCAxMjMsIDI1NSwgMC4xKTsgLyogU29tYnJhIHN1dGlsIHN1cGVyaW9yICovXHJcbn1cclxuXHJcbi5mb290ZXIgLmNvcHlyaWdodCB7XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gIGNvbG9yOiB2YXIoLS1jb2xvci1hY2NlbnQpOyAvKiBBenVsIGNpZWxvIHByaW5jaXBhbCAqL1xyXG4gIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbn1cclxuXHJcbi5mb290ZXIgLmNyZWRpdHMge1xyXG4gIHBhZGRpbmctdG9wOiA1cHg7XHJcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gIGZvbnQtc2l6ZTogMTNweDtcclxuICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1zZWNvbmRhcnkpOyAvKiBBenVsIG3DoXMgc3VhdmUgKi9cclxufVxyXG5cclxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcclxuICB3aWR0aDogMjBweDtcclxuICBoZWlnaHQ6IDIwcHg7XHJcbiAgYWNjZW50LWNvbG9yOiB2YXIoLS1jb2xvci1hY2NlbnQpO1xyXG4gIGN1cnNvcjogcG9pbnRlcjtcclxuICBib3JkZXItcmFkaXVzOiA2cHg7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjIpICFpbXBvcnRhbnQ7XHJcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tY29sb3ItYm9yZGVyLXNvZnQpICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbmlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XHJcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tY29sb3ItYm9yZGVyLXNvZnQpO1xyXG4gIGJvcmRlci1yYWRpdXM6IDZweDtcclxufVxyXG5cclxuLyovKiBIb3ZlciAqL1xyXG5pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl06aG92ZXIge1xyXG4gIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItYWNjZW50KTtcclxufVxyXG5cclxuLyogQ3VhbmRvIGVzdMOhIG1hcmNhZG8gKi9cclxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdOmNoZWNrZWQge1xyXG4gIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItYWNjZW50KSAhaW1wb3J0YW50O1xyXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWFjY2VudCkgIWltcG9ydGFudDtcclxufVxyXG5cclxuaW5wdXQsXHJcbnRleHRhcmVhLFxyXG5zZWxlY3Qge1xyXG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWJvcmRlci1zb2Z0KSAhaW1wb3J0YW50O1xyXG4gIGJvcmRlci1yYWRpdXM6IDhweDtcclxuICBwYWRkaW5nOiAxMHB4O1xyXG4gIGZvbnQtc2l6ZTogMTRweDtcclxuICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1wcmltYXJ5KTtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMik7XHJcbn1cclxuXHJcbmlucHV0OmZvY3VzLFxyXG50ZXh0YXJlYTpmb2N1cyxcclxuc2VsZWN0OmZvY3VzIHtcclxuICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLWFjY2VudCkgIWltcG9ydGFudDtcclxuICBib3gtc2hhZG93OiAwIDAgMCAycHggcmdiYSgwLCAyMjksIDI1NSwgMC4xNSkgIWltcG9ydGFudDtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNCk7XHJcbn1cclxuLyogZXN0aWxvcyBkZSBsb3MgYWxlcnQgKi9cclxuZGl2OndoZXJlKC5zd2FsMi1jb250YWluZXIpIGRpdjp3aGVyZSguc3dhbDItcG9wdXApIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1zdXJmYWNlLXN0cm9uZykgIWltcG9ydGFudDtcclxuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1ib3JkZXItc29mdCkgIWltcG9ydGFudDtcclxuICBib3JkZXItcmFkaXVzOiAxNnB4ICFpbXBvcnRhbnQ7XHJcbiAgYm94LXNoYWRvdzogMCAyMHB4IDQwcHggcmdiYSgwLCAwLCAwLCAwLjYpICFpbXBvcnRhbnQ7XHJcbiAgcGFkZGluZzogMmVtICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbmRpdjp3aGVyZSguc3dhbDItY29udGFpbmVyKSAuc3dhbDItdGl0bGUge1xyXG4gIGNvbG9yOiAjZmZmZmZmICFpbXBvcnRhbnQ7XHJcbiAgZm9udC1mYW1pbHk6IFwiUG9wcGluc1wiLCBzYW5zLXNlcmlmICFpbXBvcnRhbnQ7XHJcbiAgZm9udC13ZWlnaHQ6IDcwMCAhaW1wb3J0YW50O1xyXG59XHJcbmRpdjp3aGVyZSguc3dhbDItY29udGFpbmVyKSAuc3dhbDItaHRtbC1jb250YWluZXIge1xyXG4gIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LXNlY29uZGFyeSkgIWltcG9ydGFudDtcclxuICBmb250LWZhbWlseTogXCJQb3BwaW5zXCIsIHNhbnMtc2VyaWYgIWltcG9ydGFudDtcclxuICBmb250LXNpemU6IDFyZW0gIWltcG9ydGFudDtcclxufVxyXG5cclxuZGl2OndoZXJlKC5zd2FsMi1jb250YWluZXIpIC5zd2FsMi1jb25maXJtIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1hY2NlbnQpICFpbXBvcnRhbnQ7XHJcbiAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XHJcbiAgY29sb3I6ICMwMDAgIWltcG9ydGFudDtcclxuICBmb250LXdlaWdodDogNjAwICFpbXBvcnRhbnQ7XHJcbiAgYm9yZGVyLXJhZGl1czogOHB4ICFpbXBvcnRhbnQ7XHJcbiAgcGFkZGluZzogMTBweCAzMHB4ICFpbXBvcnRhbnQ7XHJcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG5kaXY6d2hlcmUoLnN3YWwyLWNvbnRhaW5lcikgLnN3YWwyLWNvbmZpcm06aG92ZXIge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICMwMGI4Y2MgIWltcG9ydGFudDtcclxuICBib3gtc2hhZG93OiAwIDAgMTVweCB2YXIoLS1zaGFkb3ctZ2xvdykgIWltcG9ydGFudDtcclxufVxyXG5cclxuZGl2OndoZXJlKC5zd2FsMi1jb250YWluZXIpIC5zd2FsMi1jYW5jZWwge1xyXG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XHJcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tY29sb3ItdGV4dC1zZWNvbmRhcnkpICFpbXBvcnRhbnQ7XHJcbiAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQtc2Vjb25kYXJ5KSAhaW1wb3J0YW50O1xyXG4gIGJvcmRlci1yYWRpdXM6IDhweCAhaW1wb3J0YW50O1xyXG59XHJcblxyXG5kaXY6d2hlcmUoLnN3YWwyLWNvbnRhaW5lcikgLnN3YWwyLWNhbmNlbDpob3ZlciB7XHJcbiAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQtcHJpbWFyeSkgIWltcG9ydGFudDtcclxuICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLXRleHQtcHJpbWFyeSkgIWltcG9ydGFudDtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDUpICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbmRpdjp3aGVyZSguc3dhbDItaWNvbikuc3dhbDItc3VjY2VzcyB7XHJcbiAgYm9yZGVyLWNvbG9yOiAjMDBmZjlkICFpbXBvcnRhbnQ7XHJcbiAgY29sb3I6ICMwMGZmOWQgIWltcG9ydGFudDtcclxufVxyXG5cclxuZGl2OndoZXJlKC5zd2FsMi1pY29uKS5zd2FsMi1zdWNjZXNzIC5zd2FsMi1zdWNjZXNzLXJpbmcge1xyXG4gIGJvcmRlcjogMC4yNWVtIHNvbGlkIHJnYmEoMCwgMjU1LCAxNTcsIDAuMjIpICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbmRpdjp3aGVyZSguc3dhbDItaWNvbikuc3dhbDItc3VjY2VzcyBbY2xhc3NePVwic3dhbDItc3VjY2Vzcy1saW5lXCJdIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDBmZjlkICFpbXBvcnRhbnQ7XHJcbiAgYm94LXNoYWRvdzogMCAwIDEwcHggcmdiYSgwLCAyNTUsIDE1NywgMC4yOCkgIWltcG9ydGFudDtcclxufVxyXG5cclxuZGl2OndoZXJlKC5zd2FsMi1jb250YWluZXIpIC5zd2FsMi1sb2FkZXIge1xyXG4gIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItYWNjZW50KSB0cmFuc3BhcmVudCB2YXIoLS1jb2xvci1hY2NlbnQpIHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbmRpdjp3aGVyZSguc3dhbDItY29udGFpbmVyKS5zd2FsLWxvYWRpbmctb3ZlcmxheSB7XHJcbiAgYmFja2Ryb3AtZmlsdGVyOiBibHVyKDhweCk7XHJcbiAgLXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6IGJsdXIoOHB4KTtcclxufVxyXG5cclxuZGl2OndoZXJlKC5zd2FsMi1jb250YWluZXIpLnN3YWwtbG9hZGluZy1vdmVybGF5XHJcbiAgZGl2OndoZXJlKC5zd2FsMi1wb3B1cCkuc3dhbC1sb2FkaW5nLXBvcHVwIHtcclxuICBib3gtc2hhZG93OlxyXG4gICAgMCAwIDM1cHggcmdiYSgwLCAyMzAsIDI1NSwgMC4xNCksXHJcbiAgICAwIDE4cHggNDhweCByZ2JhKDAsIDAsIDAsIDAuNTUpICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiAgIEZJWDogQVVUT0NPTVBMRVRBRE8gKENocm9tZS9FZGdlL1NhZmFyaSlcclxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi8qIFNlbGVjY2lvbmFtb3MgZWwgZXN0YWRvICdhdXRvZmlsbCcgZGVsIGlucHV0ICovXHJcbmlucHV0Oi13ZWJraXQtYXV0b2ZpbGwsXHJcbmlucHV0Oi13ZWJraXQtYXV0b2ZpbGw6aG92ZXIsXHJcbmlucHV0Oi13ZWJraXQtYXV0b2ZpbGw6Zm9jdXMsXHJcbmlucHV0Oi13ZWJraXQtYXV0b2ZpbGw6YWN0aXZlIHtcclxuICAvKiAxLiBDQU1CSUFSIEVMIENPTE9SIERFIExBIExFVFJBICovXHJcbiAgLyogVXNhbW9zIGVzdGEgcHJvcGllZGFkIGVzcGVjw61maWNhIGRlIFdlYmtpdCBwYXJhIGZvcnphciBlbCBibGFuY28gKi9cclxuICAtd2Via2l0LXRleHQtZmlsbC1jb2xvcjogI2U5ZjdmZiAhaW1wb3J0YW50O1xyXG5cclxuICAtd2Via2l0LWJveC1zaGFkb3c6IDAgMCAwIDEwMDBweCAjMTEyZTQ3IGluc2V0ICFpbXBvcnRhbnQ7XHJcblxyXG4gIGZvbnQtZmFtaWx5OiBcIkJhcmxvd1wiLCBzYW5zLXNlcmlmICFpbXBvcnRhbnQ7IC8qIE8gbGEgZnVlbnRlIHF1ZSBlbGVnaXN0ZSAqL1xyXG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgNTAwMHMgZWFzZS1pbi1vdXQgMHM7XHJcbn1cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiMgUmVzcG9uc2l2ZSByZWZpbmVtZW50cyAobW9iaWxlL3RhYmxldClcclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cclxuQG1lZGlhIChtYXgtd2lkdGg6IDk5MS45OHB4KSB7XHJcbiAgI21haW4ge1xyXG4gICAgcGFkZGluZzogMTZweCAxNHB4O1xyXG4gIH1cclxuXHJcbiAgLnBhZ2V0aXRsZSBoMSB7XHJcbiAgICBmb250LXNpemU6IDEuNzVyZW07XHJcbiAgICBsaW5lLWhlaWdodDogMS4yO1xyXG4gIH1cclxuXHJcbiAgLmhlYWRlciB7XHJcbiAgICBwYWRkaW5nOiAxMHB4IDEycHg7XHJcbiAgICBib3JkZXItcmlnaHQ6IDA7XHJcbiAgfVxyXG5cclxuICAuaGVhZGVyIC50b2dnbGUtc2lkZWJhci1idG4ge1xyXG4gICAgZm9udC1zaXplOiAyOHB4O1xyXG4gICAgcGFkZGluZy1sZWZ0OiAwO1xyXG4gIH1cclxuXHJcbiAgLmhlYWRlci1uYXYgLm5hdi1pY29uIHtcclxuICAgIG1hcmdpbi1yaWdodDogMTJweDtcclxuICB9XHJcblxyXG4gIC5oZWFkZXItbmF2IC5uYXYtcHJvZmlsZSAucHJvZmlsZS1hdmF0YXIge1xyXG4gICAgd2lkdGg6IDQwcHg7XHJcbiAgICBoZWlnaHQ6IDQwcHg7XHJcbiAgICBtaW4td2lkdGg6IDQwcHg7XHJcbiAgfVxyXG5cclxuICAubG9nbyAubG9nby10ZXh0IHtcclxuICAgIG1heC13aWR0aDogMTEwcHg7XHJcbiAgfVxyXG5cclxuICAuaGVhZGVyLW5hdiAubmF2LXByb2ZpbGUgLnByb2ZpbGUtbmFtZSB7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICBtYXgtd2lkdGg6IDEzMHB4O1xyXG4gIH1cclxuXHJcbiAgLnNpZGViYXIge1xyXG4gICAgd2lkdGg6IDI4MHB4O1xyXG4gICAgcGFkZGluZzogMTRweCAxMHB4O1xyXG4gIH1cclxuXHJcbiAgLnRvZ2dsZS1zaWRlYmFyIC5zaWRlYmFyIHtcclxuICAgIGxlZnQ6IDA7XHJcbiAgfVxyXG59XHJcblxyXG5AbWVkaWEgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcclxuICAjbWFpbiB7XHJcbiAgICBwYWRkaW5nOiAxMnB4IDEwcHg7XHJcbiAgfVxyXG5cclxuICAucGFnZXRpdGxlIGgxIHtcclxuICAgIGZvbnQtc2l6ZTogMS4zNXJlbTtcclxuICB9XHJcblxyXG4gIC5oZWFkZXIgLnNlYXJjaC1iYXIge1xyXG4gICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xyXG4gICAgcGFkZGluZy1yaWdodDogMTBweDtcclxuICB9XHJcblxyXG4gIC5sb2dvIC5sb2dvLXRleHQge1xyXG4gICAgbWF4LXdpZHRoOiA4NHB4O1xyXG4gIH1cclxuXHJcbiAgLmhlYWRlci1uYXYgLm5hdi1wcm9maWxlIC5wcm9maWxlLWF2YXRhciB7XHJcbiAgICB3aWR0aDogMzRweDtcclxuICAgIGhlaWdodDogMzRweDtcclxuICAgIG1pbi13aWR0aDogMzRweDtcclxuICB9XHJcblxyXG4gIC5oZWFkZXItbmF2IC5uYXYtcHJvZmlsZSAucHJvZmlsZS1uYW1lIHtcclxuICAgIG1heC13aWR0aDogODRweDtcclxuICAgIGZvbnQtc2l6ZTogMTJweDtcclxuICB9XHJcblxyXG4gIC5zaWRlYmFyIHtcclxuICAgIHdpZHRoOiAyNjBweDtcclxuICAgIGxlZnQ6IC0yNjBweDtcclxuICAgIGJvcmRlci1yaWdodC13aWR0aDogMnB4O1xyXG4gIH1cclxuXHJcbiAgLnRvZ2dsZS1zaWRlYmFyIC5zaWRlYmFyIHtcclxuICAgIGxlZnQ6IDA7XHJcbiAgfVxyXG5cclxuICAuc2lkZWJhci1uYXYgLm5hdi1saW5rIHtcclxuICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgIHBhZGRpbmc6IDEwcHggMTJweDtcclxuICB9XHJcblxyXG4gIC5zaWRlYmFyLW5hdiAubmF2LWxpbmsgaSB7XHJcbiAgICBmb250LXNpemU6IDE2cHg7XHJcbiAgICBtYXJnaW4tcmlnaHQ6IDhweDtcclxuICB9XHJcblxyXG4gIC5zaWRlYmFyLW5hdiAubmF2LWNvbnRlbnQgYSB7XHJcbiAgICBwYWRkaW5nLWxlZnQ6IDI4cHg7XHJcbiAgICBmb250LXNpemU6IDEzcHg7XHJcbiAgfVxyXG59XHJcblxyXG4uamNvbmZpcm0gLmpjb25maXJtLWJnIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDUsIDExLCAyMCwgMC43MikgIWltcG9ydGFudDtcclxufVxyXG5cclxuLmpjb25maXJtIC5qY29uZmlybS1ib3gge1xyXG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXN1cmZhY2Utc3Ryb25nKSAhaW1wb3J0YW50O1xyXG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWJvcmRlci1zb2Z0KSAhaW1wb3J0YW50O1xyXG4gIGJvcmRlci1yYWRpdXM6IDE2cHggIWltcG9ydGFudDtcclxuICBib3gtc2hhZG93OiAwIDIwcHggNDBweCByZ2JhKDAsIDAsIDAsIDAuNikgIWltcG9ydGFudDtcclxuICBwYWRkaW5nOiAyZW0gIWltcG9ydGFudDtcclxufVxyXG5cclxuLmpjb25maXJtIC5qY29uZmlybS10aXRsZS1jIHtcclxuICBwYWRkaW5nLWJvdHRvbTogOHB4ICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5qY29uZmlybSAuamNvbmZpcm0tdGl0bGUge1xyXG4gIGNvbG9yOiAjZmZmZmZmICFpbXBvcnRhbnQ7XHJcbiAgZm9udC1mYW1pbHk6IFwiUG9wcGluc1wiLCBzYW5zLXNlcmlmICFpbXBvcnRhbnQ7XHJcbiAgZm9udC13ZWlnaHQ6IDcwMCAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4uamNvbmZpcm0gLmpjb25maXJtLWNvbnRlbnQge1xyXG4gIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LXNlY29uZGFyeSkgIWltcG9ydGFudDtcclxuICBmb250LWZhbWlseTogXCJQb3BwaW5zXCIsIHNhbnMtc2VyaWYgIWltcG9ydGFudDtcclxuICBmb250LXNpemU6IDFyZW0gIWltcG9ydGFudDtcclxuICBsaW5lLWhlaWdodDogMS41NSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4uamNvbmZpcm0gLmpjb25maXJtLWJ1dHRvbnMge1xyXG4gIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcclxuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xyXG4gIGdhcDogMTJweDtcclxuICBwYWRkaW5nLXRvcDogMTBweCAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4uamNvbmZpcm0gLmpjb25maXJtLWJ1dHRvbnMgLmJ0biB7XHJcbiAgYm9yZGVyLXJhZGl1czogOHB4ICFpbXBvcnRhbnQ7XHJcbiAgcGFkZGluZzogMTBweCAzMHB4ICFpbXBvcnRhbnQ7XHJcbiAgZm9udC13ZWlnaHQ6IDcwMCAhaW1wb3J0YW50O1xyXG4gIGxldHRlci1zcGFjaW5nOiAwLjAyZW07XHJcbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcclxuICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XHJcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4uamNvbmZpcm0gLmpjb25maXJtLWJ1dHRvbnMgLmJ0bi1wcmltYXJ5IHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1hY2NlbnQpICFpbXBvcnRhbnQ7XHJcbiAgY29sb3I6ICMwMDAgIWltcG9ydGFudDtcclxufVxyXG5cclxuLmpjb25maXJtIC5qY29uZmlybS1idXR0b25zIC5idG4tZGFuZ2VyIHtcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xyXG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNvbG9yLXRleHQtc2Vjb25kYXJ5KSAhaW1wb3J0YW50O1xyXG4gIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LXNlY29uZGFyeSkgIWltcG9ydGFudDtcclxufVxyXG5cclxuLmpjb25maXJtIC5qY29uZmlybS1idXR0b25zIC5idG4tcHJpbWFyeTpob3ZlciB7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwYjhjYyAhaW1wb3J0YW50O1xyXG4gIGJveC1zaGFkb3c6IDAgMCAxNXB4IHZhcigtLXNoYWRvdy1nbG93KSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4uamNvbmZpcm0gLmpjb25maXJtLWJ1dHRvbnMgLmJ0bi1kYW5nZXI6aG92ZXIge1xyXG4gIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LXByaW1hcnkpICFpbXBvcnRhbnQ7XHJcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LXByaW1hcnkpICFpbXBvcnRhbnQ7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA1KSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4uamNvbmZpcm0gLmpjb25maXJtLWJ1dHRvbnMgLmJ0bjpmb2N1cyB7XHJcbiAgb3V0bGluZTogbm9uZSAhaW1wb3J0YW50O1xyXG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDAsIDIzMCwgMjU1LCAwLjE0KSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4uc3VyZmFjZS1wYW5lbCB7XHJcbiAgYmFja2dyb3VuZDogdmFyKC0tY29sb3Itc3VyZmFjZSk7XHJcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tY29sb3ItYm9yZGVyLXNvZnQpO1xyXG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1sZyk7XHJcbiAgYm94LXNoYWRvdzogdmFyKC0tc2hhZG93LXNvZnQpO1xyXG4gIGJhY2tkcm9wLWZpbHRlcjogYmx1cigxNHB4KTtcclxuICAtd2Via2l0LWJhY2tkcm9wLWZpbHRlcjogYmx1cigxNHB4KTtcclxufVxyXG5cclxuLnN1cmZhY2UtcGFuZWwtc3Ryb25nIHtcclxuICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1zdXJmYWNlLXN0cm9uZyk7XHJcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tY29sb3ItYm9yZGVyLXN0cm9uZyk7XHJcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLWxnKTtcclxuICBib3gtc2hhZG93OiB2YXIoLS1zaGFkb3ctc29mdCksIHZhcigtLXNoYWRvdy1nbG93KTtcclxuICBiYWNrZHJvcC1maWx0ZXI6IGJsdXIoMTZweCk7XHJcbiAgLXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6IGJsdXIoMTZweCk7XHJcbn1cclxuXHJcbi5zdXJmYWNlLXBhbmVsLXNvZnQge1xyXG4gIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLXN1cmZhY2Utc29mdCk7XHJcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA4KTtcclxuICBib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtbWQpO1xyXG59XHJcblxyXG4udGV4dC1hY2NlbnQge1xyXG4gIGNvbG9yOiB2YXIoLS1jb2xvci1hY2NlbnQpICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi50ZXh0LW11dGVkLXNvZnQge1xyXG4gIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LXNlY29uZGFyeSkgIWltcG9ydGFudDtcclxufVxyXG5cclxuLnNvZnQtZGl2aWRlciB7XHJcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsIDIzMCwgMjU1LCAwLjEyKSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG5AbWVkaWEgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcclxuICBib2R5IHtcclxuICAgIGJhY2tncm91bmQtYXR0YWNobWVudDogc2Nyb2xsO1xyXG4gIH1cclxuXHJcbiAgI21haW4ge1xyXG4gICAgcGFkZGluZzogMTJweCAxMHB4O1xyXG4gIH1cclxufVxyXG4iLCIvKiBFc3RpbG9zIGdlbmVyYWxlcyBwYXJhIGxhIHRhYmxhICovXHJcbi5lc3RpbG9zX2dlbmVyYWxlcyB7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIG1heC13aWR0aDogMTAwJTtcclxuICAgIGRpc3BsYXk6IHRhYmxlO1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gICAgYm9yZGVyLWNvbGxhcHNlOiBzZXBhcmF0ZTtcclxuICAgIGJvcmRlci1zcGFjaW5nOiAwO1xyXG4gICAgZm9udC1mYW1pbHk6ICdJbnRlcicsIHNhbnMtc2VyaWY7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1zdXJmYWNlLCByZ2JhKDEwLCAxNiwgMjYsIDAuNjUpKSAhaW1wb3J0YW50O1xyXG4gICAgYmFja2Ryb3AtZmlsdGVyOiBibHVyKDEwcHgpO1xyXG4gICAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQtcHJpbWFyeSwgI2YwZjRmOCk7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1ib3JkZXItc29mdCwgcmdiYSgwLCAyMjksIDI1NSwgMC4xNSkpO1xyXG4gICAgYm9yZGVyLXJhZGl1czogMTJweDtcclxufVxyXG5cclxuLmJvb3RzdHJhcC10YWJsZSB7XHJcbiAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xyXG4gICAgbWF4LXdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XHJcbiAgICBtaW4td2lkdGg6IDA7XHJcbn1cclxuXHJcbi5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLXRvb2xiYXIsXHJcbi5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLXBhZ2luYXRpb24sXHJcbi5ib290c3RyYXAtdGFibGUgLmZpeGVkLXRhYmxlLWNvbnRhaW5lcixcclxuLmJvb3RzdHJhcC10YWJsZSAuZml4ZWQtdGFibGUtaGVhZGVyLFxyXG4uYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1ib2R5LFxyXG4uYm9vdHN0cmFwLXRhYmxlIC5maXhlZC10YWJsZS1mb290ZXIge1xyXG4gICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcclxuICAgIG1heC13aWR0aDogMTAwJSAhaW1wb3J0YW50O1xyXG4gICAgbWluLXdpZHRoOiAwO1xyXG59XHJcblxyXG4uZXN0aWxvc19nZW5lcmFsZXMgdGgge1xyXG4gICAgZm9udC1zaXplOiAxNXB4O1xyXG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICBwYWRkaW5nOiAxMnB4IDEzcHg7XHJcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuNCk7XHJcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItYWNjZW50LCAjMDBlNWZmKTtcclxuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1jb2xvci1ib3JkZXItc3Ryb25nLCByZ2JhKDAsIDIyOSwgMjU1LCAwLjMpKTtcclxuICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG59XHJcblxyXG4uZXN0aWxvc19nZW5lcmFsZXMgdGQge1xyXG4gICAgcGFkZGluZzogOHB4O1xyXG4gICAgZm9udC1zaXplOiAxM3B4O1xyXG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XHJcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1wcmltYXJ5LCAjZjBmNGY4KTtcclxuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDUpO1xyXG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxufVxyXG5cclxuLm9zcC10YWJsZS11aSAuZml4ZWQtdGFibGUtY29udGFpbmVyIC50YWJsZSB7XHJcbiAgICBkaXNwbGF5OiB0YWJsZSAhaW1wb3J0YW50O1xyXG4gICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcclxuICAgIHRhYmxlLWxheW91dDogYXV0bztcclxuICAgIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LXByaW1hcnksICNmMGY0ZjgpICFpbXBvcnRhbnQ7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4ub3NwLXRhYmxlLXVpLFxyXG4ub3NwLXRhYmxlLXVpIC5maXhlZC10YWJsZS1jb250YWluZXIsXHJcbi5vc3AtdGFibGUtdWkgLmZpeGVkLXRhYmxlLWhlYWRlcixcclxuLm9zcC10YWJsZS11aSAuZml4ZWQtdGFibGUtYm9keSB7XHJcbiAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xyXG4gICAgbWF4LXdpZHRoOiAxMDAlO1xyXG4gICAgbWluLXdpZHRoOiAwO1xyXG59XHJcblxyXG4ub3NwLXRhYmxlLXVpIC5maXhlZC10YWJsZS1jb250YWluZXIge1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxufVxyXG5cclxuLm9zcC10YWJsZS11aSAuZml4ZWQtdGFibGUtY29udGFpbmVyIC5maXhlZC10YWJsZS1oZWFkZXIgdGFibGUsXHJcbi5vc3AtdGFibGUtdWkgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciAuZml4ZWQtdGFibGUtYm9keSB0YWJsZSxcclxuLm9zcC10YWJsZS11aSAuZml4ZWQtdGFibGUtY29udGFpbmVyIC5maXhlZC10YWJsZS1mb290ZXIgdGFibGUge1xyXG4gICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcclxuICAgIG1pbi13aWR0aDogMTAwJSAhaW1wb3J0YW50O1xyXG4gICAgbWF4LXdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XHJcbiAgICBtYXJnaW4taW5saW5lOiAwO1xyXG59XHJcblxyXG4ub3NwLXRhYmxlLXVpIC5maXhlZC10YWJsZS1jb250YWluZXIgLnRhYmxlIHRoIHtcclxuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1hY2NlbnQsICMwMGU1ZmYpICFpbXBvcnRhbnQ7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNCkgIWltcG9ydGFudDtcclxuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1jb2xvci1ib3JkZXItc3Ryb25nLCByZ2JhKDAsIDIyOSwgMjU1LCAwLjMpKSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4ub3NwLXRhYmxlLXVpIC5maXhlZC10YWJsZS1jb250YWluZXIgLnRhYmxlIHRkIHtcclxuICAgIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LXByaW1hcnksICNmMGY0ZjgpICFpbXBvcnRhbnQ7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xyXG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wNSkgIWltcG9ydGFudDtcclxufVxyXG5cclxuLm9zcC10YWJsZS11aSAuZml4ZWQtdGFibGUtY29udGFpbmVyIHRoZWFkIHRoIC50aC1pbm5lciB7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIG1pbi1oZWlnaHQ6IDQwcHg7XHJcbiAgICBwYWRkaW5nOiAwLjcycmVtIDFyZW0gIWltcG9ydGFudDtcclxuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbn1cclxuXHJcbi5vc3AtdGFibGUtdWkgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciAudGFibGUgdGhlYWQgdGguZGV0YWlsLFxyXG4ub3NwLXRhYmxlLXVpIC5maXhlZC10YWJsZS1jb250YWluZXIgLnRhYmxlIHRib2R5ID4gdHJbZGF0YS1pbmRleF0gPiB0ZDpmaXJzdC1jaGlsZCB7XHJcbiAgICB3aWR0aDogNDZweDtcclxuICAgIG1pbi13aWR0aDogNDZweDtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxufVxyXG5cclxuLm9zcC10YWJsZS11aSAuZml4ZWQtdGFibGUtY29udGFpbmVyIHRib2R5IHRkIHtcclxuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XHJcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG59XHJcblxyXG4ub3NwLXRhYmxlLXVpIC5maXhlZC10YWJsZS1jb250YWluZXIgdGJvZHkgdGQ6bGFzdC1jaGlsZCxcclxuLm9zcC10YWJsZS11aSAuZml4ZWQtdGFibGUtY29udGFpbmVyIHRoZWFkIHRoOmxhc3QtY2hpbGQge1xyXG4gICAgd2lkdGg6IDElO1xyXG59XHJcblxyXG4ucGFpc2VzLXRhYmxlLXNoZWxsIC5vc3AtdGFibGUtdWksXHJcbi5wYWlzZXMtdGFibGUtc2hlbGwgLm9zcC10YWJsZS11aSAuZml4ZWQtdGFibGUtY29udGFpbmVyLFxyXG4ucGFpc2VzLXRhYmxlLXNoZWxsIC5vc3AtdGFibGUtdWkgLmZpeGVkLXRhYmxlLWhlYWRlcixcclxuLnBhaXNlcy10YWJsZS1zaGVsbCAub3NwLXRhYmxlLXVpIC5maXhlZC10YWJsZS1ib2R5IHtcclxuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5wYWlzZXMtdGFibGUtc2hlbGwgLm9zcC10YWJsZS11aSAuZml4ZWQtdGFibGUtY29udGFpbmVyIC50YWJsZSB7XHJcbiAgICBkaXNwbGF5OiB0YWJsZSAhaW1wb3J0YW50O1xyXG4gICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcclxuICAgIHRhYmxlLWxheW91dDogZml4ZWQ7XHJcbn1cclxuXHJcbi5wYWlzZXMtdGFibGUtc2hlbGwgLm9zcC10YWJsZS11aSAuZml4ZWQtdGFibGUtY29udGFpbmVyIC5maXhlZC10YWJsZS1oZWFkZXIgdGFibGUsXHJcbi5wYWlzZXMtdGFibGUtc2hlbGwgLm9zcC10YWJsZS11aSAuZml4ZWQtdGFibGUtY29udGFpbmVyIC5maXhlZC10YWJsZS1ib2R5IHRhYmxlLFxyXG4ucGFpc2VzLXRhYmxlLXNoZWxsIC5vc3AtdGFibGUtdWkgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciAuZml4ZWQtdGFibGUtZm9vdGVyIHRhYmxlIHtcclxuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XHJcbiAgICBtaW4td2lkdGg6IDEwMCUgIWltcG9ydGFudDtcclxuICAgIG1heC13aWR0aDogMTAwJSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4ucGFpc2VzLXRhYmxlLXNoZWxsIC5vc3AtdGFibGUtdWkgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciAudGFibGUgdGgsXHJcbi5wYWlzZXMtdGFibGUtc2hlbGwgLm9zcC10YWJsZS11aSAuZml4ZWQtdGFibGUtY29udGFpbmVyIC50YWJsZSB0ZCB7XHJcbiAgICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xyXG4gICAgb3ZlcmZsb3c6IHZpc2libGUgIWltcG9ydGFudDtcclxuICAgIHRleHQtb3ZlcmZsb3c6IHVuc2V0ICFpbXBvcnRhbnQ7XHJcbiAgICB3b3JkLWJyZWFrOiBicmVhay13b3JkO1xyXG4gICAgb3ZlcmZsb3ctd3JhcDogYW55d2hlcmU7XHJcbn1cclxuXHJcbi5wYWlzZXMtdGFibGUtc2hlbGwgLm9zcC10YWJsZS11aSAuZml4ZWQtdGFibGUtY29udGFpbmVyIC50YWJsZSB0ZDpsYXN0LWNoaWxkLFxyXG4ucGFpc2VzLXRhYmxlLXNoZWxsIC5vc3AtdGFibGUtdWkgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciAudGFibGUgdGg6bGFzdC1jaGlsZCB7XHJcbiAgICB3aWR0aDogMjglO1xyXG59XHJcblxyXG4ucGFpc2VzLXRhYmxlLXNoZWxsIC5vc3AtdGFibGUtdWkgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciAudGFibGUgdGQ6bnRoLWNoaWxkKDQpLFxyXG4ucGFpc2VzLXRhYmxlLXNoZWxsIC5vc3AtdGFibGUtdWkgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciAudGFibGUgdGg6bnRoLWNoaWxkKDQpIHtcclxuICAgIHdpZHRoOiAyNCU7XHJcbn1cclxuXHJcbi5wYWlzZXMtdGFibGUtc2hlbGwgLm9zcC10YWJsZS11aSAuZml4ZWQtdGFibGUtY29udGFpbmVyIC50YWJsZSAuYnRuIHtcclxuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbn1cclxuXHJcbi5wYWlzZXMtdGFibGUtc2hlbGwgLm9zcC10YWJsZS11aSAuZml4ZWQtdGFibGUtY29udGFpbmVyIHRoZWFkIHRoIC50aC1pbm5lciB7XHJcbiAgICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xyXG4gICAgb3ZlcmZsb3c6IHZpc2libGUgIWltcG9ydGFudDtcclxuICAgIHRleHQtb3ZlcmZsb3c6IHVuc2V0ICFpbXBvcnRhbnQ7XHJcbiAgICB3b3JkLWJyZWFrOiBicmVhay13b3JkO1xyXG4gICAgb3ZlcmZsb3ctd3JhcDogYW55d2hlcmU7XHJcbn1cclxuXHJcbi5wYWlzZXMtdGFibGUtc2hlbGwgLm9zcC10YWJsZS11aSAuZml4ZWQtdGFibGUtY29udGFpbmVyIHRib2R5IHRkID4gKixcclxuLnBhaXNlcy10YWJsZS1zaGVsbCAub3NwLXRhYmxlLXVpIC5maXhlZC10YWJsZS1jb250YWluZXIgdGJvZHkgdGQgc3BhbixcclxuLnBhaXNlcy10YWJsZS1zaGVsbCAub3NwLXRhYmxlLXVpIC5maXhlZC10YWJsZS1jb250YWluZXIgdGJvZHkgdGQgZGl2LFxyXG4ucGFpc2VzLXRhYmxlLXNoZWxsIC5vc3AtdGFibGUtdWkgLmZpeGVkLXRhYmxlLWNvbnRhaW5lciB0Ym9keSB0ZCBhOm5vdCguYnRuKSB7XHJcbiAgICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xyXG4gICAgb3ZlcmZsb3c6IHZpc2libGUgIWltcG9ydGFudDtcclxuICAgIHRleHQtb3ZlcmZsb3c6IHVuc2V0ICFpbXBvcnRhbnQ7XHJcbiAgICB3b3JkLWJyZWFrOiBicmVhay13b3JkO1xyXG4gICAgb3ZlcmZsb3ctd3JhcDogYW55d2hlcmU7XHJcbn1cclxuXHJcbi5lc3RpbG9zX2dlbmVyYWxlcyB0ZCBhLFxyXG4uZXN0aWxvc19nZW5lcmFsZXMgdGQgYTp2aXNpdGVkIHtcclxuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1hY2NlbnQsICMwMGU1ZmYpICFpbXBvcnRhbnQ7XHJcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcclxuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICB0cmFuc2l0aW9uOiBjb2xvciAwLjJzIGVhc2UsIHRleHQtc2hhZG93IDAuMnMgZWFzZTtcclxufVxyXG5cclxuLmVzdGlsb3NfZ2VuZXJhbGVzIHRkIGE6aG92ZXIsXHJcbi5lc3RpbG9zX2dlbmVyYWxlcyB0ZCBhOmZvY3VzIHtcclxuICAgIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XHJcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcclxuICAgIHRleHQtc2hhZG93OiAwIDAgOHB4IHZhcigtLWNvbG9yLWFjY2VudCwgIzAwZTVmZik7XHJcbn1cclxuXHJcbi5lc3RpbG9zX2dlbmVyYWxlcyB0Ym9keSB0cjpob3ZlciB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDIyOSwgMjU1LCAwLjA1KTtcclxufVxyXG5cclxuLyogc2Nyb2xiYXIgZGUgbGEgdGFibGEgKi9cclxuLmVzdGlsb3NfZ2VuZXJhbGVzOjotd2Via2l0LXNjcm9sbGJhcixcclxuLm9zcC10YWJsZS11aSAuZml4ZWQtdGFibGUtYm9keTo6LXdlYmtpdC1zY3JvbGxiYXIge1xyXG4gICAgaGVpZ2h0OiAxMHB4ICFpbXBvcnRhbnQ7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDUwYjE0ICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcblxyXG4uZXN0aWxvc19nZW5lcmFsZXM6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iLFxyXG4ub3NwLXRhYmxlLXVpIC5maXhlZC10YWJsZS1ib2R5Ojotd2Via2l0LXNjcm9sbGJhci10aHVtYiB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSkgIWltcG9ydGFudDtcclxuICAgIGJvcmRlci1yYWRpdXM6IDVweDtcclxuICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4vKiBFbCBmb25kbyBwb3IgZG9uZGUgY29ycmUgbGEgYmFycmEgKi9cclxuLmVzdGlsb3NfZ2VuZXJhbGVzOjotd2Via2l0LXNjcm9sbGJhci10cmFjayxcclxuLm9zcC10YWJsZS11aSAuZml4ZWQtdGFibGUtYm9keTo6LXdlYmtpdC1zY3JvbGxiYXItdHJhY2sge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA1KSAhaW1wb3J0YW50OyAvKiBHcmlzIG11eSBzdXRpbCAqL1xyXG4gICAgYm9yZGVyLXJhZGl1czogNXB4O1xyXG59XHJcblxyXG4vKlxyXG5baWRePVwidG9vbGJhcl9cIl0ge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGZsZXgtd3JhcDogbm93cmFwO1xyXG4gICAgb3ZlcmZsb3cteDogYXV0bztcclxuICAgIGdhcDogOHB4O1xyXG4gICAgcGFkZGluZzogNnB4IDA7XHJcbiAgICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgICBzY3JvbGxiYXItd2lkdGg6IHRoaW47XHJcbiAgICBzY3JvbGxiYXItY29sb3I6ICMxMTJlNTUgdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcclxuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbn1cclxuXHJcblxyXG5baWRePVwidG9vbGJhcl9cIl0gPiAqIHtcclxuICAgIGZsZXg6IDAgMCBhdXRvO1xyXG59XHJcblxyXG5baWRePVwidG9vbGJhcl9cIl06Oi13ZWJraXQtc2Nyb2xsYmFyIHtcclxuICAgIGhlaWdodDogOHB4O1xyXG59XHJcblxyXG5baWRePVwidG9vbGJhcl9cIl06Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iIHtcclxuICAgIGJhY2tncm91bmQ6ICMxYzRmN2EgIWltcG9ydGFudDtcclxuICAgIGJvcmRlci1yYWRpdXM6IDRweDtcclxufVxyXG5cclxuXHJcbiovXHJcblxyXG4vKiBQYXJhIHBhbnRhbGxhcyBwZXF1ZcOxYXMgKi9cclxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XHJcbiAgICBbaWRePVwidG9vbGJhcl9cIl0ge1xyXG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XHJcbiAgICAgICAgZmxleC13cmFwOiBub3dyYXA7XHJcbiAgICAgICAgb3ZlcmZsb3cteDogYXV0bztcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgIH1cclxuXHJcbiAgICBbaWRePVwidG9vbGJhcl9cIl0gYnV0dG9uIHtcclxuICAgICAgICBmbGV4OiAwIDAgYXV0bztcclxuICAgICAgICBmb250LXNpemU6IDE0cHg7XHJcbiAgICB9XHJcblxyXG4gICAgLmVzdGlsb3NfZ2VuZXJhbGVzIHtcclxuICAgICAgICBvdmVyZmxvdy14OiBhdXRvO1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgfVxyXG5cclxuICAgIC5lc3RpbG9zX2dlbmVyYWxlcyB0aCxcclxuICAgIC5lc3RpbG9zX2dlbmVyYWxlcyB0ZCB7XHJcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuICAgIH1cclxufVxyXG5cclxuLypDVVNUT01TU1NTU1NTU1MqL1xyXG4vKiBCb3RvbmVzIGdlbmVyYWxlcyBwZXJzb25hbGl6YWRvcyAqL1xyXG4uYnRuLWN1c3RvbSwgLmJ0bi1jdXN0b20tdGV4dCwgLmJ0biB7XHJcbiAgICBib3JkZXItcmFkaXVzOiA2cHg7XHJcbiAgICBmb250LXdlaWdodDogNjAwO1xyXG4gICAgdHJhbnNpdGlvbjogMC4zcyBlYXNlLWluLW91dDtcclxuICAgIGNvbG9yOiAjZmZmZmZmICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi8qIEVzdGlsbyBjb23Dum4gcGFyYSB0b2RvcyBsb3MgYm90b25lcyAqL1xyXG5cclxuLmJ0bi1jdXN0b20tdGV4dCxcclxuLmJ0bi5idG4tcHJpbWFyeSxcclxuLmJ0bi5idG4tc2Vjb25kYXJ5IHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMTcsIDQ3LCA3MSwgMC44NSkgIWltcG9ydGFudDtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMCwgMjAwLCAyNTUsIDAuNSkgIWltcG9ydGFudDtcclxuICAgIGNvbG9yOiAjZTlmN2ZmICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi8qIEhvdmVyIGRlIGJvdG9uZXMgKi9cclxuLmJ0bi1jdXN0b20ge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxNywgNDcsIDcxLCAwLjg1KTtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMCwgMjAwLCAyNTUsIDAuNSkgIWltcG9ydGFudDtcclxuICAgIGNvbG9yOiAjZTlmN2ZmICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5idG4tY3VzdG9tOmhvdmVyIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMTUwLCAyNTUsIDAuNSkgIWltcG9ydGFudDtcclxufVxyXG5cclxuXHJcbi5idG4uYnRuLXByaW1hcnk6aG92ZXIsXHJcbi5idG4uYnRuLXNlY29uZGFyeTpob3ZlciB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDE1MCwgMjU1LCAwLjUpICFpbXBvcnRhbnQ7XHJcbiAgICBib3gtc2hhZG93OiAwIDAgMTBweCByZ2JhKDAsIDIwMCwgMjU1LCAwLjUpO1xyXG59XHJcblxyXG4vKiBCb3RvbmVzIGRlc2hhYmlsaXRhZG9zICovXHJcbi5idG46ZGlzYWJsZWQge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpICFpbXBvcnRhbnQ7XHJcbiAgICBib3JkZXItY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKSAhaW1wb3J0YW50O1xyXG4gICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4zKSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4vKiBCb3TDs24gcGVsaWdybyAqL1xyXG4uYnRuLmJ0bi1kYW5nZXIge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxNywgNDcsIDcxLCAwLjg1KSAhaW1wb3J0YW50O1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgwLCAyMDAsIDI1NSwgMC41KSAhaW1wb3J0YW50O1xyXG4gICAgY29sb3I6ICNlOWY3ZmYgIWltcG9ydGFudDtcclxufVxyXG5cclxuLmJ0bi5idG4tZGFuZ2VyOm5vdCg6ZGlzYWJsZWQpIHtcclxuIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMTk0LCA2OSwgMTA4LCAwLjgpICFpbXBvcnRhbnQ7XHJcbiAgY29sb3I6IHJnYmEoMjQ2LCA1NywgMTE2LCAwLjgpICFpbXBvcnRhbnQ7XHJcbiAgYm94LXNoYWRvdzogMCAwIDEwcHggcmdiYSgyNTUsIDAsIDgwLCAwLjI1KSAhaW1wb3J0YW50O1xyXG4gIHRleHQtc2hhZG93OiAwIDAgNXB4IHJnYmEoMCwgMCwgMCwgMC41KTtcclxuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcclxuXHJcbn1cclxuXHJcbi5idG4uYnRuLWRhbmdlcjpob3ZlciB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMCwgODAsIDAuNykgIWltcG9ydGFudDtcclxuICAgIGJveC1zaGFkb3c6IDAgMCAyMHB4IHJnYmEoMjU1LCAwLCA4MCwgMC42KSAhaW1wb3J0YW50O1xyXG4gICAgY29sb3I6ICNmZmZmZmYgIWltcG9ydGFudDtcclxuICAgIGJvcmRlci1jb2xvcjogI2ZmZmZmZiAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4vKiBCb3TDs24gw6l4aXRvICovXHJcbi5idG4uYnRuLXN1Y2Nlc3N7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDI1NSwgMTM2LCAwLjMpICFpbXBvcnRhbnQ7XHJcbiAgICBjb2xvcjogI2ZmZmZmZiAhaW1wb3J0YW50O1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgwLCAyNTUsIDEzNiwgMC44KSAhaW1wb3J0YW50O1xyXG4gICAgYm94LXNoYWRvdzogMCAwIDEwcHggcmdiYSgwLCAyNTUsIDEzNiwgMC4yNSkgIWltcG9ydGFudDtcclxuICAgIHRleHQtc2hhZG93OiAwIDAgNXB4IHJnYmEoMCwgMCwgMCwgMC41KTtcclxuICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xyXG59XHJcblxyXG4uYnRuLmJ0bi1zdWNjZXNzOmhvdmVyIHtcclxuICBcclxuICAgIGJveC1zaGFkb3c6IDAgMCAxMHB4IHJnYmEoMCwgMjU1LCAxMzYsIDAuNikgIWltcG9ydGFudDtcclxuXHJcbiAgIFxyXG59XHJcblxyXG4vKiBCb3TDs24gYWR2ZXJ0ZW5jaWEgKi9cclxuLmJ0bi5idG4td2FybmluZyB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDE3LCA0NywgNzEsIDAuODUpICFpbXBvcnRhbnQ7XHJcbiAgICBjb2xvcjogI2U5ZjdmZiAhaW1wb3J0YW50O1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgwLCAyMDAsIDI1NSwgMC41KSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG5cclxuLmJ0bi5idG4td2FybmluZzpub3QoOmRpc2FibGVkKSB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMTkwLCAwLCAwLjMpICFpbXBvcnRhbnQ7XHJcbiAgICBib3gtc2hhZG93OiAwIDAgMTBweCByZ2JhKDI1NSwgMTkwLCAwLCAwLjI1KSAhaW1wb3J0YW50O1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgyNTUsIDE5MCwgMCwgMC44KSAhaW1wb3J0YW50O1xyXG4gICAgY29sb3I6ICNmZmZmZmYgIWltcG9ydGFudDtcclxuICAgIHRleHQtc2hhZG93OiAwIDAgNXB4IHJnYmEoMCwgMCwgMCwgMC41KTtcclxuICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xyXG59XHJcblxyXG4uYnRuLmJ0bi13YXJuaW5nOmhvdmVyIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAxOTAsIDAsIDAuNykgIWltcG9ydGFudDtcclxuICAgIGNvbG9yOiAjZmZmZmZmICFpbXBvcnRhbnQ7XHJcbiAgICBib3gtc2hhZG93OiAwIDAgMjBweCByZ2JhKDI1NSwgMTkwLCAwLCAwLjYpICFpbXBvcnRhbnQ7XHJcbiAgICBib3JkZXItY29sb3I6ICNmZmZmZmYgIWltcG9ydGFudDtcclxufVxyXG5cclxuLyogQm90w7NuIHNlY3VuZGFyaW8gKi9cclxuLmJ0bi5idG4tc2Vjb25kYXJ5IHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICNmMWY0ZjYgIWltcG9ydGFudDtcclxuICAgIGNvbG9yOiAjMDA2YzhjICFpbXBvcnRhbnQ7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjYzhkZmU1ICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5idG4uYnRuLXNlY29uZGFyeTpob3ZlciB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTJlZWYzICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi8qIFRleHRvIHByaW5jaXBhbCAqL1xyXG4udGV4dC1wcmluY2lwYWwge1xyXG4gICAgY29sb3I6ICNmZmZmZmYgIWltcG9ydGFudDtcclxuICAgIHRleHQtc2hhZG93OiAwIDAgMnB4IHJnYmEoODAsIDIwMCwgMjU1LCAwLjkpICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5kYXRhVGFibGVzX2ZpbHRlciBpbnB1dCwgLyppbnB1dCBhcnJpYmEgdGFibGEqL1xyXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdIHtcclxuLyogICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMTcsIDQ3LCA3MSwgMC45KSAhaW1wb3J0YW50O1xyXG4gKi8gICAgYm9yZGVyOiAxcHggc29saWQgIzAwZTVmZiAhaW1wb3J0YW50O1xyXG4vKiAgICAgYm94LXNoYWRvdzogMCAwIDVweCAjMDBmM2ZmICFpbXBvcnRhbnQ7XHJcbiAqLyAgICBjb2xvcjogI2ZmZmZmZiAhaW1wb3J0YW50O1xyXG4gICAgYm9yZGVyLXJhZGl1czogMTBweCAhaW1wb3J0YW50O1xyXG4gICAgb3V0bGluZTogbm9uZTtcclxuICAgIHRyYW5zaXRpb246IGFsbCAwLjNzO1xyXG59XHJcblxyXG5cclxuLmRhdGFUYWJsZXNfZmlsdGVyIGlucHV0OjpwbGFjZWhvbGRlcixcclxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXTo6cGxhY2Vob2xkZXIsXHJcbi5zZWFyY2ggaW5wdXQ6OnBsYWNlaG9sZGVyIHtcclxuICAgIGNvbG9yOiAjZTFlM2U2ICFpbXBvcnRhbnQ7XHJcbiAgICBmb250LXdlaWdodDogNDAwO1xyXG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xyXG4gICAgb3BhY2l0eTogMSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4uZGF0YVRhYmxlc19maWx0ZXIgaW5wdXQ6Zm9jdXMsXHJcbmlucHV0W3R5cGU9XCJzZWFyY2hcIl06Zm9jdXMge1xyXG4gIC8qICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxNywgNDcsIDcxLCAwLjkpICFpbXBvcnRhbnQ7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjNDE1NGYxICFpbXBvcnRhbnQ7ICovXHJcbiAgICBib3gtc2hhZG93OiAwIDAgNHB4ICMwMGYzZmYgIWltcG9ydGFudDtcclxufVxyXG4vKmRldGFpbCBncm91cHMqL1xyXG4uZXN0aWxvc19nZW5lcmFsZXMgLmRldGFpbC12aWV3IHRkIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4yKSAhaW1wb3J0YW50O1xyXG4gICAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5lc3RpbG9zX2dlbmVyYWxlcyAuZGV0YWlsLXZpZXcgLmNhcmQsXHJcbi5lc3RpbG9zX2dlbmVyYWxlcyAuZGV0YWlsLXZpZXcgLmNhcmQtYm9keSxcclxuLmVzdGlsb3NfZ2VuZXJhbGVzIC5kZXRhaWwtdmlldyAuZGV0YWlsLXZpZXctaW5uZXIge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcclxuICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4uZXN0aWxvc19nZW5lcmFsZXMgLmRldGFpbC12aWV3LFxyXG4uZXN0aWxvc19nZW5lcmFsZXMgLmRldGFpbC12aWV3IHAsXHJcbi5lc3RpbG9zX2dlbmVyYWxlcyAuZGV0YWlsLXZpZXcgc3BhbixcclxuLmVzdGlsb3NfZ2VuZXJhbGVzIC5kZXRhaWwtdmlldyBkaXYsXHJcbi5lc3RpbG9zX2dlbmVyYWxlcyAuZGV0YWlsLXZpZXcgdGR7XHJcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1wcmltYXJ5LCAjZjBmNGY4KSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4uZXN0aWxvc19nZW5lcmFsZXMgLmRldGFpbC12aWV3IGIsXHJcbi5lc3RpbG9zX2dlbmVyYWxlcyAuZGV0YWlsLXZpZXcgc3Ryb25nLFxyXG4uZXN0aWxvc19nZW5lcmFsZXMgLmRldGFpbC12aWV3IGxhYmVsIHtcclxuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1hY2NlbnQsICMwMGU1ZmYpICFpbXBvcnRhbnQ7XHJcblxyXG59XHJcblxyXG4ub3NwLXRhYmxlLXVpIC5maXhlZC10YWJsZS10b29sYmFyIC5kcm9wZG93bi1tZW51IHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLXN1cmZhY2Utc3Ryb25nLCAjMGQxNTIyKSAhaW1wb3J0YW50O1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tY29sb3ItYm9yZGVyLXNvZnQsIHJnYmEoMCwgMjI5LCAyNTUsIDAuMTUpKSAhaW1wb3J0YW50O1xyXG4gICAgYm94LXNoYWRvdzogMCAxMHB4IDMwcHggcmdiYSgwLCAwLCAwLCAwLjYpO1xyXG59XHJcblxyXG4ub3NwLXRhYmxlLXVpIC5maXhlZC10YWJsZS10b29sYmFyIC5kcm9wZG93bi1tZW51IC5kcm9wZG93bi1pdGVtLFxyXG4ub3NwLXRhYmxlLXVpIC5maXhlZC10YWJsZS10b29sYmFyIC5kcm9wZG93bi1tZW51IGxhYmVsLFxyXG4ub3NwLXRhYmxlLXVpIC5maXhlZC10YWJsZS10b29sYmFyIC5kcm9wZG93bi1tZW51IHNwYW4ge1xyXG4gICAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQtcHJpbWFyeSwgI2YwZjRmOCkgIWltcG9ydGFudDtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbn1cclxuXHJcbi5vc3AtdGFibGUtdWkgLmZpeGVkLXRhYmxlLXRvb2xiYXIgLmRyb3Bkb3duLW1lbnUgLmRyb3Bkb3duLWl0ZW06aG92ZXIsXHJcbi5vc3AtdGFibGUtdWkgLmZpeGVkLXRhYmxlLXRvb2xiYXIgLmRyb3Bkb3duLW1lbnUgbGFiZWw6aG92ZXIge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAyMjksIDI1NSwgMC4wNSkgIWltcG9ydGFudDtcclxuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1hY2NlbnQsICMwMGU1ZmYpICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5vc3AtdGFibGUtdWkgLmZpeGVkLXRhYmxlLXRvb2xiYXIgLmRyb3Bkb3duLW1lbnUgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcclxuICAgIG1hcmdpbi1yaWdodDogMTBweDtcclxuICAgIGFjY2VudC1jb2xvcjogdmFyKC0tY29sb3ItYWNjZW50LCAjMDBlNWZmKTtcclxufVxyXG4uZXN0aWxvc19nZW5lcmFsZXMgLmRldGFpbC12aWV3IHRoIGRpdixcclxuLmVzdGlsb3NfZ2VuZXJhbGVzIC5kZXRhaWwtdmlldyB0aCBzcGFuIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC40KSAhaW1wb3J0YW50O1xyXG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWFjY2VudCwgIzAwZTVmZikgIWltcG9ydGFudDtcclxuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1jb2xvci1ib3JkZXItc3Ryb25nLCByZ2JhKDAsIDIyOSwgMjU1LCAwLjMpKSFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5lc3RpbG9zX2dlbmVyYWxlcyAuZGV0YWlsLXZpZXcgdGgge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjIpICFpbXBvcnRhbnQ7XHJcbiAgICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcclxufVxyXG5cclxuLm9zcC10YWJsZS11aSAuZGV0YWlsLXZpZXcgPiB0ZCB7XHJcbiAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xyXG4gICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xyXG4gICAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7XHJcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4ub3NwLXRhYmxlLXVpIC5kZXRhaWwtaWNvbiB7XHJcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG59XHJcblxyXG4ub3NwLXJvdy1kZXRhaWwge1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbiAgICBwYWRkaW5nOiAxcmVtIDEuMXJlbSAxLjE1cmVtO1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgcmdiYSg2LCAxNCwgMjQsIDAuOTIpIDAlLCByZ2JhKDEyLCAyNiwgNDMsIDAuOTQpIDEwMCUpO1xyXG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHJnYmEoMCwgMjI5LCAyNTUsIDAuMSk7XHJcbn1cclxuXHJcbi5vc3Atcm93LWRldGFpbF9faGVhZGVyIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcclxuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgIGdhcDogMXJlbTtcclxuICAgIG1hcmdpbi1ib3R0b206IDFyZW07XHJcbn1cclxuXHJcbi5vc3Atcm93LWRldGFpbF9fZXllYnJvdyB7XHJcbiAgICBkaXNwbGF5OiBibG9jaztcclxuICAgIG1hcmdpbi1ib3R0b206IDAuMjVyZW07XHJcbiAgICBmb250LXNpemU6IDAuNzJyZW07XHJcbiAgICBsZXR0ZXItc3BhY2luZzogMC4wOGVtO1xyXG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LXNlY29uZGFyeSwgIzhiOWJiNCk7XHJcbn1cclxuXHJcbi5vc3Atcm93LWRldGFpbF9fdGl0bGUge1xyXG4gICAgbWFyZ2luOiAwO1xyXG4gICAgZm9udC1zaXplOiAxcmVtO1xyXG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LXByaW1hcnksICNmMGY0ZjgpO1xyXG59XHJcblxyXG4ub3NwLXJvdy1kZXRhaWxfX3N0YXR1cyB7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBwYWRkaW5nOiAwLjM4cmVtIDAuNzJyZW07XHJcbiAgICBib3JkZXItcmFkaXVzOiA5OTlweDtcclxuICAgIGZvbnQtc2l6ZTogMC43OHJlbTtcclxuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICBsZXR0ZXItc3BhY2luZzogMC4wMmVtO1xyXG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xyXG59XHJcblxyXG4ub3NwLXJvdy1kZXRhaWxfX3N0YXR1cy5pcy1hY3RpdmUge1xyXG4gICAgYmFja2dyb3VuZDogcmdiYSgwLCAyNTUsIDEzNiwgMC4xMik7XHJcbiAgICBjb2xvcjogIzZmZmZjMTtcclxuICAgIGJvcmRlci1jb2xvcjogcmdiYSgwLCAyNTUsIDEzNiwgMC4zNSk7XHJcbn1cclxuXHJcbi5vc3Atcm93LWRldGFpbF9fc3RhdHVzLmlzLWluYWN0aXZlIHtcclxuICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAwLCA4MCwgMC4xMik7XHJcbiAgICBjb2xvcjogI2ZmOGViMDtcclxuICAgIGJvcmRlci1jb2xvcjogcmdiYSgyNTUsIDAsIDgwLCAwLjM1KTtcclxufVxyXG5cclxuLm9zcC1yb3ctZGV0YWlsX19ncmlkIHtcclxuICAgIGRpc3BsYXk6IGdyaWQ7XHJcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCBtaW5tYXgoMCwgMWZyKSk7XHJcbiAgICBnYXA6IDAuODVyZW07XHJcbiAgICB3aWR0aDogMTAwJTtcclxufVxyXG5cclxuLm9zcC1yb3ctZGV0YWlsX19pdGVtIHtcclxuICAgIG1pbi13aWR0aDogMDtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG4gICAgZ2FwOiAwLjI4cmVtO1xyXG4gICAgcGFkZGluZzogMC44NXJlbSAwLjlyZW07XHJcbiAgICBib3JkZXItcmFkaXVzOiAxMnB4O1xyXG4gICAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjAzKTtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMCwgMjI5LCAyNTUsIDAuMDgpO1xyXG59XHJcblxyXG4ub3NwLXJvdy1kZXRhaWxfX2xhYmVsIHtcclxuICAgIGZvbnQtc2l6ZTogMC43NnJlbTtcclxuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICBsZXR0ZXItc3BhY2luZzogMC4wNGVtO1xyXG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1hY2NlbnQsICMwMGU1ZmYpO1xyXG59XHJcblxyXG4ub3NwLXJvdy1kZXRhaWxfX3ZhbHVlIHtcclxuICAgIGZvbnQtc2l6ZTogMC45NXJlbTtcclxuICAgIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LXByaW1hcnksICNmMGY0ZjgpO1xyXG4gICAgd29yZC1icmVhazogYnJlYWstd29yZDtcclxufVxyXG4vKmJ0bnN1Ym1pdCBkZSB1cGxvYWRGaWxlKi9cclxuLmJ0bkd1YXJkYXJULFxyXG4jbW9kYWxfY2FyZ2FyIC5idG4tb3V0bGluZS1zdWNjZXNzIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjMDBlNjc2ICFpbXBvcnRhbnQ7XHJcbiAgICBjb2xvcjogIzAwZTY3NiAhaW1wb3J0YW50O1xyXG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcclxuICAgIHRyYW5zaXRpb246IDAuM3M7XHJcbiAgICBtYXJnaW4tdG9wOiA1MHB4O1xyXG4gICAgcGFkZGluZzogOHB4IDIwcHg7XHJcbiAgICBtaW4td2lkdGg6IDEwMHB4O1xyXG4gICAgZm9udC1zaXplOiAxNHB4ICFpbXBvcnRhbnQ7XHJcbiAgICBtYXJnaW4tcmlnaHQ6IDIwcHggIWltcG9ydGFudDtcclxufVxyXG4uYnRuR3VhcmRhclQ6aG92ZXIsXHJcbiNtb2RhbF9jYXJnYXIgLmJ0bi1vdXRsaW5lLXN1Y2Nlc3M6aG92ZXIge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAyMzAsIDExOCwgMC4xKSAhaW1wb3J0YW50O1xyXG4gICAgY29sb3I6ICNGRkZGRkYgIWltcG9ydGFudDtcclxuICAgIGJveC1zaGFkb3c6IDAgMCAxNXB4IHJnYmEoMCwgMjMwLCAxMTgsIDAuMik7XHJcbn1cclxuLyptb2RhbCB1cGxvYWQgZmlsZSovXHJcbiNtb2RhbF9jYXJnYXIgLm1vZGFsLWNvbnRlbnQge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3Itc3VyZmFjZS1zdHJvbmcsICMwZDE1MjIpICFpbXBvcnRhbnQ7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1ib3JkZXItc29mdCwgcmdiYSgwLCAyMjksIDI1NSwgMC4xNSkpICFpbXBvcnRhbnQ7XHJcbiAgICBib3gtc2hhZG93OiAwIDIwcHggNTBweCByZ2JhKDAsIDAsIDAsIDAuNikgIWltcG9ydGFudDtcclxuICAgIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LXByaW1hcnksICNmMGY0ZjgpICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbiNtb2RhbF9jYXJnYXIgLm1vZGFsLWhlYWRlcixcclxuI21vZGFsX2NhcmdhciAubW9kYWwtZm9vdGVyIHtcclxuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItYm9yZGVyLXNvZnQsIHJnYmEoMCwgMjI5LCAyNTUsIDAuMTUpKSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG5cclxuI21vZGFsX2NhcmdhciAuYnRuLWNsb3NlIHtcclxuICAgIGZpbHRlcjogaW52ZXJ0KDEpIGdyYXlzY2FsZSgxMDAlKSBicmlnaHRuZXNzKDIwMCUpO1xyXG59XHJcblxyXG4jbW9kYWxfY2FyZ2FyIGlucHV0W3R5cGU9XCJmaWxlXCJdIHsgLypzZWxlY2Npb25hckFyY2hpdm8qL1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjMpICFpbXBvcnRhbnQ7XHJcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1wcmltYXJ5LCAjZjBmNGY4KSAhaW1wb3J0YW50O1xyXG4gICAgYm9yZGVyOiAxcHggZGFzaGVkIHZhcigtLWNvbG9yLWFjY2VudCwgIzAwZTVmZikgIWltcG9ydGFudDtcclxufVxyXG5cclxuXHJcbi8qYnRuU2F2ZSovXHJcblxyXG4gICAgLm1vZGFsLWJvZHkge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDAwMDA3NSAhaW1wb3J0YW50O1xyXG4gICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LXByaW1hcnksICNmMGY0ZjgpICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcblxyXG5cclxuLmJ0blJlc2V0VHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1jb2xvci10ZXh0LXNlY29uZGFyeSwgIzhiOWJiNCkgIWltcG9ydGFudDtcclxuICAgIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LXNlY29uZGFyeSwgIzhiOWJiNCkgIWltcG9ydGFudDtcclxuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XHJcbiAgICB0cmFuc2l0aW9uOiAwLjNzO1xyXG4gICAgbWFyZ2luLXRvcDogNTBweDtcclxuICAgIHBhZGRpbmc6IDhweCAyMHB4O1xyXG4gICAgbWluLXdpZHRoOiAxMDBweDtcclxuICAgIGZvbnQtc2l6ZTogMTRweCAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4uYnRuUmVzZXRUOmhvdmVye1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA1KSAhaW1wb3J0YW50O1xyXG4gICAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQtcHJpbWFyeSwgI2YwZjRmOCkgIWltcG9ydGFudDtcclxufVxyXG5cclxuXHJcblxyXG4vKiBpbnB1dHMgeSBzZWxlY3RzICovXHJcbi5mb3JtLWNvbnRyb2wsIC5mb3JtLXNlbGVjdCB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMikgIWltcG9ydGFudDtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYigwIDIyOSAyNTUgLyAyNiUpICFpbXBvcnRhbnQ7XHJcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1wcmltYXJ5LCAjZjBmNGY4KSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4uZm9ybS1jb250cm9sOmZvY3VzLCAuZm9ybS1zZWxlY3Q6Zm9jdXMge1xyXG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1hY2NlbnQsICMwMGU1ZmYpICFpbXBvcnRhbnQ7XHJcbiAgICBib3gtc2hhZG93OiAwIDAgMCAycHggcmdiYSgwLCAyMjksIDI1NSwgMC4xNSkgIWltcG9ydGFudDtcclxufVxyXG5cclxuLmlucHV0LWdyb3Vwe1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxMSwgMjUsIDQxLCAwLjYpICFpbXBvcnRhbnQ7XHJcbiAgICBib3JkZXItY29sb3I6ICAjMDBmM2ZmIWltcG9ydGFudDtcclxuICAgIGNvbG9yOiAjZmZmZmZmICFpbXBvcnRhbnQ7XHJcblxyXG59XHJcbi8qZHJvcGRvd25zIGRlIG1vZGFsZXMqL1xyXG5cclxuLm1vZGFsIC5mb3JtLXNlbGVjdCB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDE3LCA0NywgNzEsIDAuOTUpICFpbXBvcnRhbnQ7XHJcbiAgICBib3JkZXItY29sb3I6ICMwMGYzZmYgIWltcG9ydGFudDtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkICMwMGYzZmYgIWltcG9ydGFudDtcclxuICAgIGNvbG9yOiAjZTlmN2ZmICFpbXBvcnRhbnQ7XHJcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDE2IDE2JyUzZSUzY3BhdGggZmlsbD0nbm9uZScgc3Ryb2tlPSclMjMwMGYzZmYnIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLWxpbmVqb2luPSdyb3VuZCcgc3Ryb2tlLXdpZHRoPScyJyBkPSdNMiA1bDYgNiA2LTYnLyUzZSUzYy9zdmclM2VcIikgIWltcG9ydGFudDtcclxufVxyXG5cclxuLm1vZGFsIC5mb3JtLXNlbGVjdDpmb2N1cyB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGQyNTM4ICFpbXBvcnRhbnQ7XHJcbiAgICBib3JkZXItY29sb3I6ICMwMGYzZmYgIWltcG9ydGFudDtcclxuICAgIGJveC1zaGFkb3c6IDAgMCAxNXB4IHJnYmEoMCwgMjQzLCAyNTUsIDAuMykgIWltcG9ydGFudDtcclxuICAgIGNvbG9yOiAjZmZmZmZmICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5tb2RhbCAuZm9ybS1zZWxlY3Qgb3B0aW9uLFxyXG4ubW9kYWwgLmZvcm0tc2VsZWN0IG9wdGdyb3VwIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICMwZDI1MzggIWltcG9ydGFudDtcclxuICAgIGNvbG9yOiAjZmZmZmZmICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbiNtb2RhbF9lbWFpbHMgLm1vZGFsLWJvZHkgaW5wdXQuZm9ybS1jb250cm9sOjpwbGFjZWhvbGRlcixcclxuI21vZGFsX2VtYWlscyAuc3dhbDItaW5wdXQ6OnBsYWNlaG9sZGVyIHtcclxuICAgIGNvbG9yOiByZ2JhKDIyNSwgMjM1LCAyNDUsIDAuNzgpICFpbXBvcnRhbnQ7XHJcbiAgICBvcGFjaXR5OiAxICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbiNtb2RhbF9lbWFpbHMgLm1vZGFsLWJvZHkgaW5wdXQudWktYXV0b2NvbXBsZXRlLWlucHV0IHtcclxuICAgIGNvbG9yOiAjZmZmZmZmICFpbXBvcnRhbnQ7XHJcbiAgICAtd2Via2l0LXRleHQtZmlsbC1jb2xvcjogI2ZmZmZmZiAhaW1wb3J0YW50O1xyXG4gICAgb3BhY2l0eTogMSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4jbW9kYWxfZW1haWxzIC5tb2RhbC1ib2R5IGlucHV0LnVpLWF1dG9jb21wbGV0ZS1pbnB1dDo6cGxhY2Vob2xkZXIge1xyXG4gICAgY29sb3I6ICNmZmZmZmYgIWltcG9ydGFudDtcclxuICAgIG9wYWNpdHk6IDEgIWltcG9ydGFudDtcclxufVxyXG5cclxuI21vZGFsX2VtYWlscyAubW9kYWwtYm9keSBpbnB1dC51aS1hdXRvY29tcGxldGUtaW5wdXQ6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge1xyXG4gICAgY29sb3I6ICNmZmZmZmYgIWltcG9ydGFudDtcclxuICAgIG9wYWNpdHk6IDEgIWltcG9ydGFudDtcclxufVxyXG5cclxuI21vZGFsX2VtYWlscyAubW9kYWwtYm9keSBpbnB1dC51aS1hdXRvY29tcGxldGUtaW5wdXQ6ZGlzYWJsZWQ6OnBsYWNlaG9sZGVyIHtcclxuICAgIGNvbG9yOiByZ2JhKDIyNSwgMjM4LCAyNTUsIDAuODIpICFpbXBvcnRhbnQ7XHJcbiAgICBvcGFjaXR5OiAxICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbiNtb2RhbF9lbWFpbHMgLm1vZGFsLWJvZHkgaW5wdXQudWktYXV0b2NvbXBsZXRlLWlucHV0OmRpc2FibGVkOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyIHtcclxuICAgIGNvbG9yOiByZ2JhKDIyNSwgMjM4LCAyNTUsIDAuODIpICFpbXBvcnRhbnQ7XHJcbiAgICBvcGFjaXR5OiAxICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbiNtb2RhbF9lbWFpbHMgLm1vZGFsLWJvZHkgaW5wdXQudWktYXV0b2NvbXBsZXRlLWlucHV0OjotbW96LXBsYWNlaG9sZGVyIHtcclxuICAgIGNvbG9yOiAjZmZmZmZmICFpbXBvcnRhbnQ7XHJcbiAgICBvcGFjaXR5OiAxICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbiNtb2RhbF9lbWFpbHMgLm1vZGFsLWJvZHkgaW5wdXQudWktYXV0b2NvbXBsZXRlLWlucHV0OmRpc2FibGVkOjotbW96LXBsYWNlaG9sZGVyIHtcclxuICAgIGNvbG9yOiByZ2JhKDIyNSwgMjM4LCAyNTUsIDAuODIpICFpbXBvcnRhbnQ7XHJcbiAgICBvcGFjaXR5OiAxICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbiNtb2RhbF9lbWFpbHMgLm1vZGFsLWJvZHkgaW5wdXQudWktYXV0b2NvbXBsZXRlLWlucHV0Oi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7XHJcbiAgICBjb2xvcjogI2ZmZmZmZiAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4jbW9kYWxfZW1haWxzIC5tb2RhbC1ib2R5IGlucHV0LnVpLWF1dG9jb21wbGV0ZS1pbnB1dDpkaXNhYmxlZDotbXMtaW5wdXQtcGxhY2Vob2xkZXIge1xyXG4gICAgY29sb3I6IHJnYmEoMjI1LCAyMzgsIDI1NSwgMC44MikgIWltcG9ydGFudDtcclxufVxyXG5cclxuI21vZGFsX2VtYWlscyAubW9kYWwtYm9keSBpbnB1dC51aS1hdXRvY29tcGxldGUtaW5wdXQ6ZGlzYWJsZWQge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxMSwgMjUsIDQxLCAwLjYpICFpbXBvcnRhbnQ7XHJcbiAgICBib3JkZXItY29sb3I6ICMwMGYzZmYgIWltcG9ydGFudDtcclxuICAgIGNvbG9yOiByZ2JhKDIyNSwgMjM4LCAyNTUsIDAuODIpICFpbXBvcnRhbnQ7XHJcbiAgICAtd2Via2l0LXRleHQtZmlsbC1jb2xvcjogcmdiYSgyMjUsIDIzOCwgMjU1LCAwLjgyKSAhaW1wb3J0YW50O1xyXG4gICAgb3BhY2l0eTogMSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4jbW9kYWxfZW1haWxzIC5zd2FsMi1jb250YWluZXIgI3N3YWxfaW5saW5lX2lucHV0LnN3YWwyLWlucHV0IHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmYgIWltcG9ydGFudDtcclxuICAgIGNvbG9yOiAjMDAwMDAwICFpbXBvcnRhbnQ7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjNmI3Nzg1ICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbiNtb2RhbF9lbWFpbHMgLnN3YWwyLWNvbnRhaW5lciAjc3dhbF9pbmxpbmVfaW5wdXQuc3dhbDItaW5wdXQ6OnBsYWNlaG9sZGVyIHtcclxuICAgIGNvbG9yOiAjNWY1ZjVmICFpbXBvcnRhbnQ7XHJcbiAgICBvcGFjaXR5OiAxICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbmJvZHkucGFnZS1lbWFpbHMtaW5kZXggLnVpLWF1dG9jb21wbGV0ZSB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGQyNTM4ICFpbXBvcnRhbnQ7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjMDBmM2ZmICFpbXBvcnRhbnQ7XHJcbiAgICBib3JkZXItcmFkaXVzOiA4cHggIWltcG9ydGFudDtcclxuICAgIGJveC1zaGFkb3c6IDAgMCAxNnB4IHJnYmEoMCwgMjQzLCAyNTUsIDAuMjUpICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbmJvZHkucGFnZS1lbWFpbHMtaW5kZXggI2ZpbHRyb0dydXBvIGlucHV0LnVpLWF1dG9jb21wbGV0ZS1pbnB1dCB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDExLCAyNSwgNDEsIDAuNikgIWltcG9ydGFudDtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkICMwMGYzZmYgIWltcG9ydGFudDtcclxuICAgIGNvbG9yOiAjZmZmZmZmICFpbXBvcnRhbnQ7XHJcbiAgICAtd2Via2l0LXRleHQtZmlsbC1jb2xvcjogI2ZmZmZmZiAhaW1wb3J0YW50O1xyXG4gICAgb3BhY2l0eTogMSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG5ib2R5LnBhZ2UtZW1haWxzLWluZGV4ICNmaWx0cm9HcnVwbyBpbnB1dC51aS1hdXRvY29tcGxldGUtaW5wdXQ6OnBsYWNlaG9sZGVyLFxyXG5ib2R5LnBhZ2UtZW1haWxzLWluZGV4ICNmaWx0cm9HcnVwbyBpbnB1dC51aS1hdXRvY29tcGxldGUtaW5wdXQ6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIsXHJcbmJvZHkucGFnZS1lbWFpbHMtaW5kZXggI2ZpbHRyb0dydXBvIGlucHV0LnVpLWF1dG9jb21wbGV0ZS1pbnB1dDo6LW1vei1wbGFjZWhvbGRlciB7XHJcbiAgICBjb2xvcjogI2ZmZmZmZiAhaW1wb3J0YW50O1xyXG4gICAgb3BhY2l0eTogMSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG5ib2R5LnBhZ2UtZW1haWxzLWluZGV4ICNmaWx0cm9HcnVwbyBpbnB1dC51aS1hdXRvY29tcGxldGUtaW5wdXQ6ZGlzYWJsZWQge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxMSwgMjUsIDQxLCAwLjYpICFpbXBvcnRhbnQ7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjMDBmM2ZmICFpbXBvcnRhbnQ7XHJcbiAgICBjb2xvcjogcmdiYSgyMjUsIDIzOCwgMjU1LCAwLjgyKSAhaW1wb3J0YW50O1xyXG4gICAgLXdlYmtpdC10ZXh0LWZpbGwtY29sb3I6IHJnYmEoMjI1LCAyMzgsIDI1NSwgMC44MikgIWltcG9ydGFudDtcclxuICAgIG9wYWNpdHk6IDEgIWltcG9ydGFudDtcclxufVxyXG5cclxuYm9keS5wYWdlLWVtYWlscy1pbmRleCAjZmlsdHJvR3J1cG8gaW5wdXQudWktYXV0b2NvbXBsZXRlLWlucHV0OmRpc2FibGVkOjpwbGFjZWhvbGRlcixcclxuYm9keS5wYWdlLWVtYWlscy1pbmRleCAjZmlsdHJvR3J1cG8gaW5wdXQudWktYXV0b2NvbXBsZXRlLWlucHV0OmRpc2FibGVkOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyLFxyXG5ib2R5LnBhZ2UtZW1haWxzLWluZGV4ICNmaWx0cm9HcnVwbyBpbnB1dC51aS1hdXRvY29tcGxldGUtaW5wdXQ6ZGlzYWJsZWQ6Oi1tb3otcGxhY2Vob2xkZXIge1xyXG4gICAgY29sb3I6IHJnYmEoMjI1LCAyMzgsIDI1NSwgMC44MikgIWltcG9ydGFudDtcclxuICAgIG9wYWNpdHk6IDEgIWltcG9ydGFudDtcclxufVxyXG5cclxuYm9keS5wYWdlLWVtYWlscy1pbmRleCAudWktYXV0b2NvbXBsZXRlIC51aS1tZW51LWl0ZW0td3JhcHBlciB7XHJcbiAgICBjb2xvcjogI2ZmZmZmZiAhaW1wb3J0YW50O1xyXG4gICAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbmJvZHkucGFnZS1lbWFpbHMtaW5kZXggLnVpLWF1dG9jb21wbGV0ZSAudWktbWVudS1pdGVtLXdyYXBwZXIudWktc3RhdGUtYWN0aXZlLFxyXG5ib2R5LnBhZ2UtZW1haWxzLWluZGV4IC51aS1hdXRvY29tcGxldGUgLnVpLW1lbnUtaXRlbS13cmFwcGVyOmhvdmVyIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMjQzLCAyNTUsIDAuMikgIWltcG9ydGFudDtcclxuICAgIGNvbG9yOiAjZmZmZmZmICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbiNidG5fbnVldm9fZmlsdHJvX2NvcnJlbyxcclxuI2J0bl9pcl9jYXJnYV9tYXNpdmEge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxMSwgMjUsIDQxLCAwLjkpICFpbXBvcnRhbnQ7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjMDBmM2ZmICFpbXBvcnRhbnQ7XHJcbiAgICBjb2xvcjogI2U5ZjdmZiAhaW1wb3J0YW50O1xyXG4gICAgYm94LXNoYWRvdzogMCAwIDE0cHggcmdiYSgwLCAyNDMsIDI1NSwgMC4zNSkgIWltcG9ydGFudDtcclxuICAgIHRleHQtc2hhZG93OiAwIDAgNnB4IHJnYmEoMCwgMjQzLCAyNTUsIDAuNCk7XHJcbn1cclxuXHJcbiNidG5fbnVldm9fZmlsdHJvX2NvcnJlbzpob3ZlcixcclxuI2J0bl9pcl9jYXJnYV9tYXNpdmE6aG92ZXIge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxNywgNDcsIDcxLCAwLjk1KSAhaW1wb3J0YW50O1xyXG4gICAgYm9yZGVyLWNvbG9yOiAjMDBmM2ZmICFpbXBvcnRhbnQ7XHJcbiAgICBjb2xvcjogI2ZmZmZmZiAhaW1wb3J0YW50O1xyXG4gICAgYm94LXNoYWRvdzogMCAwIDE4cHggcmdiYSgwLCAyNDMsIDI1NSwgMC41NSkgIWltcG9ydGFudDtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMXB4KTtcclxufVxyXG5cclxuLm1vZGFsLWZvcm0tc2VjdGlvbi10aXRsZSB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGdhcDogOHB4O1xyXG4gICAgcGFkZGluZy1ib3R0b206IDhweDtcclxuICAgIG1hcmdpbi1ib3R0b206IDRweDtcclxuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDAsIDI0MywgMjU1LCAwLjI1KTtcclxuICAgIGNvbG9yOiByZ2JhKDIyMiwgMjQyLCAyNTUsIDAuOSk7XHJcbiAgICBmb250LXNpemU6IDEycHg7XHJcbiAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuMDhlbTtcclxuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbn1cclxuXHJcbi5leGNlbC11cGxvYWQtY2FyZCB7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDAsIDI0MywgMjU1LCAwLjM1KTtcclxuICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XHJcbiAgICBwYWRkaW5nOiAxNHB4O1xyXG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgcmdiYSgxNCwgMzQsIDUyLCAwLjkpIDAlLCByZ2JhKDExLCAyNSwgNDEsIDAuNzUpIDEwMCUpO1xyXG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgMXB4IHJnYmEoMCwgMjQzLCAyNTUsIDAuMDgpLCAwIDZweCAyMHB4IHJnYmEoMCwgMCwgMCwgMC4yKTtcclxufVxyXG5cclxuLmV4Y2VsLXVwbG9hZC1oZWFkIHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcclxuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgIGdhcDogMTJweDtcclxuICAgIGZsZXgtd3JhcDogd3JhcDtcclxufVxyXG5cclxuLmV4Y2VsLXVwbG9hZC1oZWFkIGg2IHtcclxuICAgIG1hcmdpbjogMDtcclxuICAgIGZvbnQtc2l6ZTogMTRweDtcclxuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICBjb2xvcjogI2ZmZmZmZjtcclxufVxyXG5cclxuLmV4Y2VsLXVwbG9hZC1oZWFkIHNtYWxsIHtcclxuICAgIGNvbG9yOiByZ2JhKDIwNiwgMjMwLCAyNDQsIDAuOCk7XHJcbn1cclxuXHJcbi5leGNlbC11cGxvYWQtdGVtcGxhdGUtYnRuIHtcclxuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbn1cclxuXHJcbi5leGNlbC11cGxvYWQtaW5wdXQtd3JhcCB7XHJcbiAgICBtYXJnaW4tdG9wOiAxMnB4O1xyXG59XHJcblxyXG4uZXhjZWwtZHJvcHpvbmUge1xyXG4gICAgYm9yZGVyOiAxcHggZGFzaGVkIHJnYmEoMCwgMjQzLCAyNTUsIDAuNDUpO1xyXG4gICAgYm9yZGVyLXJhZGl1czogMTBweDtcclxuICAgIHBhZGRpbmc6IDE2cHggMTRweDtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMTAsIDIzLCAzNiwgMC42NSk7XHJcbiAgICBjb2xvcjogcmdiYSgyMzAsIDI0NywgMjU1LCAwLjk1KTtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIHRyYW5zaXRpb246IGJvcmRlci1jb2xvciAwLjJzIGVhc2UsIGJhY2tncm91bmQtY29sb3IgMC4ycyBlYXNlLCBib3gtc2hhZG93IDAuMnMgZWFzZTtcclxuICAgIG91dGxpbmU6IG5vbmU7XHJcbn1cclxuXHJcbi5leGNlbC1kcm9wem9uZSBpIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgZm9udC1zaXplOiAyNHB4O1xyXG4gICAgbWFyZ2luLWJvdHRvbTogNnB4O1xyXG4gICAgY29sb3I6ICMwMGYzZmY7XHJcbn1cclxuXHJcbi5leGNlbC1kcm9wem9uZSAuZXhjZWwtZHJvcHpvbmUtdGl0bGUge1xyXG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgIGZvbnQtc2l6ZTogMTNweDtcclxuICAgIG1hcmdpbi1ib3R0b206IDJweDtcclxufVxyXG5cclxuLmV4Y2VsLWRyb3B6b25lIHNtYWxsIHtcclxuICAgIGNvbG9yOiByZ2JhKDE5MCwgMjE5LCAyMzYsIDAuODYpO1xyXG59XHJcblxyXG4uZXhjZWwtZHJvcHpvbmU6aG92ZXIsXHJcbi5leGNlbC1kcm9wem9uZTpmb2N1cyxcclxuLmV4Y2VsLWRyb3B6b25lLmlzLWRyYWdvdmVyIHtcclxuICAgIGJvcmRlci1jb2xvcjogIzAwZjNmZjtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMjQzLCAyNTUsIDAuMTQpO1xyXG4gICAgYm94LXNoYWRvdzogMCAwIDAgMnB4IHJnYmEoMCwgMjQzLCAyNTUsIDAuMTgpO1xyXG59XHJcblxyXG4uZXhjZWwtdXBsb2FkLW1ldGEge1xyXG4gICAgbWFyZ2luLXRvcDogMTBweDtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgZ2FwOiA4cHg7XHJcbiAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbn1cclxuXHJcbi5leGNlbC11cGxvYWQtbGFiZWwge1xyXG4gICAgY29sb3I6IHJnYmEoMjE0LCAyMzgsIDI1MSwgMC45NSk7XHJcbiAgICBmb250LXdlaWdodDogNjAwO1xyXG4gICAgZm9udC1zaXplOiAxMnB4O1xyXG59XHJcblxyXG4uZXhjZWwtdXBsb2FkLWZpbGUtbmFtZSB7XHJcbiAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjkyKTtcclxuICAgIGZvbnQtc2l6ZTogMTJweDtcclxufVxyXG5cclxuLmV4Y2VsLXVwbG9hZC1wcmV2aWV3IHtcclxuICAgIG1hcmdpbi10b3A6IDEwcHg7XHJcbn1cclxuXHJcbi5leGNlbC11cGxvYWQtcHJldmlldyAudGFibGUtcmVzcG9uc2l2ZSB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDEwLCAyMywgMzYsIDAuNzUpO1xyXG4gICAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsIDI0MywgMjU1LCAwLjI1KSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4jZW1haWxNb2RhbFByZXZpZXdUYWJsZSB0aCxcclxuI3N1YmdydXBvUHJldmlld1RhYmxlIHRoIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMjQzLCAyNTUsIDAuMTIpO1xyXG4gICAgY29sb3I6ICNkZmY1ZmY7XHJcbiAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsIDI0MywgMjU1LCAwLjIpO1xyXG59XHJcblxyXG4jZW1haWxNb2RhbFByZXZpZXdUYWJsZSB0ZCxcclxuI3N1YmdydXBvUHJldmlld1RhYmxlIHRkIHtcclxuICAgIGNvbG9yOiAjZjVmYmZmO1xyXG4gICAgYm9yZGVyLWNvbG9yOiByZ2JhKDAsIDI0MywgMjU1LCAwLjEyKTtcclxufVxyXG5cclxuI2VtYWlsTW9kYWxQcmV2aWV3VGFibGUsXHJcbiNzdWJncnVwb1ByZXZpZXdUYWJsZSB7XHJcbiAgICAtLWJzLXRhYmxlLWNvbG9yOiAjZjVmYmZmO1xyXG4gICAgLS1icy10YWJsZS1iZzogcmdiYSgxMCwgMjMsIDM2LCAwLjkpO1xyXG4gICAgLS1icy10YWJsZS1zdHJpcGVkLWNvbG9yOiAjZjVmYmZmO1xyXG4gICAgLS1icy10YWJsZS1zdHJpcGVkLWJnOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDUpO1xyXG4gICAgLS1icy10YWJsZS1ob3Zlci1jb2xvcjogI2ZmZmZmZjtcclxuICAgIC0tYnMtdGFibGUtaG92ZXItYmc6IHJnYmEoMCwgMjQzLCAyNTUsIDAuMSk7XHJcbn1cclxuXHJcbiNlbWFpbE1vZGFsUHJldmlld1RhYmxlIHRoLFxyXG4jc3ViZ3J1cG9QcmV2aWV3VGFibGUgdGgsXHJcbiNlbWFpbE1vZGFsUHJldmlld1RhYmxlIHRkLFxyXG4jc3ViZ3J1cG9QcmV2aWV3VGFibGUgdGQge1xyXG4gICAgY29sb3I6ICNmNWZiZmYgIWltcG9ydGFudDtcclxufVxyXG5cclxuI21vZGFsX2VtYWlscyAubW9kYWwtZm9vdGVyLFxyXG4jbW9kYWxfY2FyZ2FyIC5tb2RhbC1mb290ZXIsXHJcbiNtb2RhbF9ncnVwbyAubW9kYWwtZm9vdGVye1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDM4LCA3MywgMTAzKSAhaW1wb3J0YW50O1xyXG4gICAgYm9yZGVyLXRvcDogMnB4IHNvbGlkIHJnYmEoODAsIDIwMCwgMjU1LCAwLjIpICFpbXBvcnRhbnQ7XHJcbiAgICBib3gtc2hhZG93OiAwIC01cHggMTVweCByZ2JhKDAsIDAsIDAsIDAuMikgIWltcG9ydGFudDtcclxuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDhweDtcclxuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiA4cHg7XHJcbn1cclxuLyptb2RhbCAqL1xyXG5cclxuXHJcbi5tb2RhbC1oZWFkZXIge1xyXG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDkwZGVnLCByZ2JhKDExLCAyNSwgNDEsIDAuOTUpIDAlLCByZ2JhKDM4LCA3MywgMTAzLCAwLjUpIDEwMCUpICFpbXBvcnRhbnQ7XHJcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgwLCAyNDMsIDI1NSwgMC4zKSAhaW1wb3J0YW50OyAvKiBMw61uZWEgY2lhbiBhYmFqbyAqL1xyXG4gICAgY29sb3I6ICNmZmZmZmYgIWltcG9ydGFudDtcclxufVxyXG5cclxuLm1vZGFsLXRpdGxlIHtcclxuICAgIGNvbG9yOiAjZmZmZmZmICFpbXBvcnRhbnQ7XHJcbiAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgIHRleHQtc2hhZG93OiAwIDAgMnB4IHJnYmEoODAsIDIwMCwgMjU1LCAwLjkpICFpbXBvcnRhbnQ7XHJcbiAgICBtYXJnaW4tbGVmdDogNXB4O1xyXG59XHJcblxyXG5cclxuLm1vZGFsLWhlYWRlciAuYnRuLWNsb3NlIHtcclxuICAgIGZpbHRlcjogaW52ZXJ0KDEpIGdyYXlzY2FsZSgxMDAlKSBicmlnaHRuZXNzKDIwMCUpICFpbXBvcnRhbnQ7XHJcbiAgICBvcGFjaXR5OiAwLjg7XHJcblxyXG59XHJcblxyXG4ubW9kYWwtY29udGVudCB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMzgsIDczLCAxMDMpICFpbXBvcnRhbnQ7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjMDBmM2ZmICFpbXBvcnRhbnQ7XHJcbiAgICBib3gtc2hhZG93OiAwIDAgMjVweCByZ2JhKDAsIDI0MywgMjU1LCAwLjE1KSAhaW1wb3J0YW50O1xyXG4gICAgY29sb3I6ICNmZmZmZmYgIWltcG9ydGFudDtcclxufVxyXG5cclxuLm1vZGFsLWJvZHkgaW5wdXQuZm9ybS1jb250cm9sLFxyXG4ubW9kYWwtYm9keSBzZWxlY3QuZm9ybS1jb250cm9sIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMTEsIDI1LCA0MSwgMC42KSAhaW1wb3J0YW50O1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgwLCAyNDMsIDI1NSwgMC43MykgIWltcG9ydGFudDtcclxuICAgIGNvbG9yOiAjZmZmZmZmICFpbXBvcnRhbnQ7XHJcbiAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcblxyXG4ubW9kYWwtYm9keSBpbnB1dC5mb3JtLWNvbnRyb2w6Zm9jdXMsXHJcbi5tb2RhbC1ib2R5IHNlbGVjdC5mb3JtLWNvbnRyb2w6Zm9jdXMge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxMSwgMjUsIDQxLCAwLjkpICFpbXBvcnRhbnQ7XHJcbiAgICBib3JkZXItY29sb3I6cmdiYSgwLCAyNDMsIDI1NSwgMC43MykhaW1wb3J0YW50O1xyXG4gICAgYm94LXNoYWRvdzogMCAwIDEwcHggcmdiYSgwLCAyNDMsIDI1NSwgMC4zKSAhaW1wb3J0YW50O1xyXG59XHJcbi5tb2RhbC1ib2R5IGlucHV0LmZvcm0tY29udHJvbDo6cGxhY2Vob2xkZXIge1xyXG4gICAgY29sb3I6IHJnYmEoMjE0LCAyMzMsIDI1NSwgMC43MikgIWltcG9ydGFudDtcclxuICAgIG9wYWNpdHk6IDEgIWltcG9ydGFudDtcclxufVxyXG5cclxuLm1vZGFsLWJvZHkgaW5wdXQudWktYXV0b2NvbXBsZXRlLWlucHV0OjpwbGFjZWhvbGRlciB7XHJcbiAgICBjb2xvcjogI2ZmZmZmZiAhaW1wb3J0YW50O1xyXG4gICAgb3BhY2l0eTogMSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4ubW9kYWwtYm9keSBpbnB1dC51aS1hdXRvY29tcGxldGUtaW5wdXQ6ZGlzYWJsZWQ6OnBsYWNlaG9sZGVyIHtcclxuICAgIGNvbG9yOiByZ2JhKDIyNSwgMjM4LCAyNTUsIDAuNzgpICFpbXBvcnRhbnQ7XHJcbiAgICBvcGFjaXR5OiAxICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5tb2RhbC1ib2R5IGxhYmVsIHtcclxuICAgIGNvbG9yOiAjZmZmZmZmICFpbXBvcnRhbnQ7XHJcbiAgICBmb250LXdlaWdodDogNTAwO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogNXB4O1xyXG59XHJcblxyXG5cclxuXHJcbi5tb2RhbC1mb290ZXIge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxMSwgMjUsIDQxLCAwLjUpICFpbXBvcnRhbnQ7IC8qIFVuIHBvY28gbcOhcyBvc2N1cm8gKi9cclxuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCByZ2JhKDAsIDI0MywgMjU1LCAwLjMpICFpbXBvcnRhbnQ7IC8qIEzDrW5lYSBzZXBhcmFkb3JhICovXHJcbn1cclxuXHJcblxyXG4ubW9kYWwtZm9vdGVyIC5idG4tc2Vjb25kYXJ5IHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjYzRlNWVlICFpbXBvcnRhbnQ7XHJcbiAgICBjb2xvcjogI2M0ZTVlZSAhaW1wb3J0YW50O1xyXG4gICAgYm94LXNoYWRvdzogMCAwIDEwcHggcmdiYSgxOTYsIDIyOSwgMjM4LCAwLjMpO1xyXG59XHJcblxyXG4ubW9kYWwtZm9vdGVyIC5idG4tc2Vjb25kYXJ5OmhvdmVyIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMTk2LCAyMjksIDIzOCwgMC4xNSkgIWltcG9ydGFudDtcclxuICAgIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XHJcbiAgICBib3gtc2hhZG93OiAwIDAgMTBweCByZ2JhKDE5NiwgMjI5LCAyMzgsIDAuOCksIGluc2V0IDAgMCAxMHB4IHJnYmEoMTk2LCAyMjksIDIzOCwgMC41KTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMnB4KTtcclxufVxyXG5cclxuLm1vZGFsLWZvb3RlciAuYnRuLXByaW1hcnkge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkICMwMGZmODggIWltcG9ydGFudDtcclxuICAgIGNvbG9yOiAjMDBmZjg4ICFpbXBvcnRhbnQ7XHJcbiAgICBib3gtc2hhZG93OiAwIDAgMTBweCByZ2JhKDAsIDI1NSwgMTM2LCAwLjMpO1xyXG59XHJcblxyXG4vKiAgKEFVVE9GSUxMKSBkZWxvcyBpbnB1dCAgKi9cclxuaW5wdXQ6LXdlYmtpdC1hdXRvZmlsbCxcclxuaW5wdXQ6LXdlYmtpdC1hdXRvZmlsbDpob3ZlcixcclxuaW5wdXQ6LXdlYmtpdC1hdXRvZmlsbDpmb2N1cyxcclxuaW5wdXQ6LXdlYmtpdC1hdXRvZmlsbDphY3RpdmUge1xyXG4gICAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDAgMCAzMHB4IHJnYigxMSwgMjUsIDQxKSBpbnNldCAhaW1wb3J0YW50O1xyXG4gICAgLXdlYmtpdC10ZXh0LWZpbGwtY29sb3I6ICNmZmZmZmYgIWltcG9ydGFudDtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMCwgMjQzLCAyNTUsIDAuNSkgIWltcG9ydGFudDtcclxuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgNTAwMHMgZWFzZS1pbi1vdXQgMHM7XHJcbiAgICBjYXJldC1jb2xvcjogI2ZmZmZmZiAhaW1wb3J0YW50O1xyXG4gICAgY29sb3I6ICNGRkZGRkY7XHJcbn1cclxuXHJcbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbiMgUmVzcG9uc2l2ZSBmaXhlcyBmb3IgdGFibGVzIGFuZCBhY3Rpb24gdG9vbGJhcnNcclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cclxuQG1lZGlhIChtYXgtd2lkdGg6IDk5MS45OHB4KSB7XHJcbiAgICAub3NwLXRhYmxlLXVpIC5maXhlZC10YWJsZS10b29sYmFyLFxyXG4gICAgLm9zcC10YWJsZS11aSAuZml4ZWQtdGFibGUtdG9vbGJhciAuY29sdW1ucyxcclxuICAgIC5vc3AtdGFibGUtdWkgLmZpeGVkLXRhYmxlLXRvb2xiYXIgLnNlYXJjaCxcclxuICAgIFtpZF49XCJ0b29sYmFyX1wiXSB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICBnYXA6IDhweDtcclxuICAgIH1cclxuXHJcbiAgICAub3NwLXRhYmxlLXVpIC5maXhlZC10YWJsZS10b29sYmFyIC5zZWFyY2gge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIG1hcmdpbi10b3A6IDZweDtcclxuICAgIH1cclxuXHJcbiAgICAub3NwLXRhYmxlLXVpIC5maXhlZC10YWJsZS10b29sYmFyIC5zZWFyY2ggaW5wdXQsXHJcbiAgICAub3NwLXRhYmxlLXVpIC5maXhlZC10YWJsZS10b29sYmFyIC5zZWFyY2ggLmZvcm0tY29udHJvbCxcclxuICAgIGlucHV0W3R5cGU9XCJzZWFyY2hcIl0ge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xyXG4gICAgfVxyXG5cclxuICAgIC5idG5HdWFyZGFyVCxcclxuICAgIC5idG5SZXNldFQsXHJcbiAgICAjbW9kYWxfY2FyZ2FyIC5idG4tb3V0bGluZS1zdWNjZXNzIHtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBtYXJnaW4tdG9wOiAxMnB4O1xyXG4gICAgICAgIG1hcmdpbi1yaWdodDogMCAhaW1wb3J0YW50O1xyXG4gICAgICAgIG1pbi13aWR0aDogMDtcclxuICAgIH1cclxuXHJcbiAgICAubW9kYWwtZm9vdGVyIC5idG4ge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIG1hcmdpbjogNnB4IDAgIWltcG9ydGFudDtcclxuICAgIH1cclxuXHJcbiAgICAuZXhjZWwtdXBsb2FkLWhlYWQge1xyXG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbiAgICB9XHJcblxyXG4gICAgLmV4Y2VsLXVwbG9hZC10ZW1wbGF0ZS1idG4ge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgfVxyXG59XHJcblxyXG5AbWVkaWEgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcclxuICAgIC5lc3RpbG9zX2dlbmVyYWxlcyB0aCB7XHJcbiAgICAgICAgZm9udC1zaXplOiAxM3B4O1xyXG4gICAgICAgIHBhZGRpbmc6IDEwcHggOHB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5lc3RpbG9zX2dlbmVyYWxlcyB0ZCB7XHJcbiAgICAgICAgZm9udC1zaXplOiAxMnB4O1xyXG4gICAgICAgIHBhZGRpbmc6IDhweCA2cHg7XHJcbiAgICB9XHJcblxyXG4gICAgW2lkXj1cInRvb2xiYXJfXCJdLFxyXG4gICAgLm9zcC10YWJsZS11aSAuZml4ZWQtdGFibGUtdG9vbGJhciAuY29sdW1ucyB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xyXG4gICAgICAgIGZsZXgtd3JhcDogbm93cmFwICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgb3ZlcmZsb3cteDogYXV0bztcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBnYXA6IDJweDtcclxuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDZweDtcclxuICAgICAgICBzY3JvbGxiYXItd2lkdGg6IG5vbmU7XHJcbiAgICB9XHJcblxyXG4gICAgW2lkXj1cInRvb2xiYXJfXCJdOjotd2Via2l0LXNjcm9sbGJhcixcclxuICAgIC5vc3AtdGFibGUtdWkgLmZpeGVkLXRhYmxlLXRvb2xiYXIgLmNvbHVtbnM6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcclxuICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgfVxyXG5cclxuICAgIFtpZF49XCJ0b29sYmFyX1wiXSBidXR0b24sXHJcbiAgICAub3NwLXRhYmxlLXVpIC5maXhlZC10YWJsZS10b29sYmFyIC5idG4ge1xyXG4gICAgICAgIHdpZHRoOiAzOHB4ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgaGVpZ2h0OiAzOHB4ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgbWluLXdpZHRoOiAzOHB4ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgbWluLWhlaWdodDogMzhweCAhaW1wb3J0YW50O1xyXG4gICAgICAgIGZsZXg6IDAgMCBhdXRvO1xyXG4gICAgICAgIGZvbnQtc2l6ZTogMCAhaW1wb3J0YW50O1xyXG4gICAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleCAhaW1wb3J0YW50O1xyXG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXIgIWltcG9ydGFudDtcclxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlciAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG5cclxuICAgIFtpZF49XCJ0b29sYmFyX1wiXSBidXR0b24gaSxcclxuICAgIC5vc3AtdGFibGUtdWkgLmZpeGVkLXRhYmxlLXRvb2xiYXIgLmJ0biBpIHtcclxuICAgICAgICBmb250LXNpemU6IDE2cHggIWltcG9ydGFudDtcclxuICAgICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcclxuICAgIH1cclxuXHJcbiAgICAub3NwLXRhYmxlLXVpIC5maXhlZC10YWJsZS10b29sYmFyIC5idG4uZHJvcGRvd24tdG9nZ2xlOjphZnRlciB7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG5cclxuICAgIC5vc3AtdGFibGUtdWkgLmZpeGVkLXRhYmxlLXRvb2xiYXIgLmRyb3Bkb3duLW1lbnUge1xyXG4gICAgICAgIG1heC13aWR0aDogY2FsYygxMDB2dyAtIDMycHgpO1xyXG4gICAgfVxyXG5cclxuICAgIC5vc3Atcm93LWRldGFpbCB7XHJcbiAgICAgICAgcGFkZGluZzogMC44NXJlbTtcclxuICAgIH1cclxuXHJcbiAgICAub3NwLXJvdy1kZXRhaWxfX2hlYWRlciB7XHJcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuICAgICAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcclxuICAgIH1cclxuXHJcbiAgICAub3NwLXJvdy1kZXRhaWxfX3N0YXR1cyB7XHJcbiAgICAgICAgYWxpZ24tc2VsZjogZmxleC1zdGFydDtcclxuICAgIH1cclxuXHJcbiAgICAub3NwLXJvdy1kZXRhaWxfX2dyaWQge1xyXG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xyXG4gICAgfVxyXG59XHJcblxyXG5cclxuLm9zcC10YWJsZS11aSAuZml4ZWQtdGFibGUtcGFnaW5hdGlvbiB7XHJcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1wcmltYXJ5LCAjZjBmNGY4KSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4ub3NwLXRhYmxlLXVpIC5maXhlZC10YWJsZS1wYWdpbmF0aW9uIC5wYWdpbmF0aW9uIHtcclxuICAgIGdhcDogNnB4O1xyXG59XHJcblxyXG4ub3NwLXRhYmxlLXVpIC5maXhlZC10YWJsZS1wYWdpbmF0aW9uIC5wYWdlLWxpbmsge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjIpICFpbXBvcnRhbnQ7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSkgIWltcG9ydGFudDtcclxuICAgIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0LXNlY29uZGFyeSwgIzhiOWJiNCkgIWltcG9ydGFudDtcclxuICAgIGJvcmRlci1yYWRpdXM6IDhweCAhaW1wb3J0YW50O1xyXG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZTtcclxufVxyXG5cclxuLm9zcC10YWJsZS11aSAuZml4ZWQtdGFibGUtcGFnaW5hdGlvbiAucGFnZS1saW5rOmhvdmVyLFxyXG4ub3NwLXRhYmxlLXVpIC5maXhlZC10YWJsZS1wYWdpbmF0aW9uIC5wYWdlLWxpbms6Zm9jdXMge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA1KSAhaW1wb3J0YW50O1xyXG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1hY2NlbnQsICMwMGU1ZmYpICFpbXBvcnRhbnQ7XHJcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItYWNjZW50LCAjMDBlNWZmKSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4ub3NwLXRhYmxlLXVpIC5maXhlZC10YWJsZS1wYWdpbmF0aW9uIC5wYWdlLWl0ZW0uYWN0aXZlIC5wYWdlLWxpbmsge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAyMjksIDI1NSwgMC4xKSAhaW1wb3J0YW50O1xyXG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1hY2NlbnQsICMwMGU1ZmYpICFpbXBvcnRhbnQ7XHJcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItYWNjZW50LCAjMDBlNWZmKSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4ub3NwLXRhYmxlLXVpIC5maXhlZC10YWJsZS1wYWdpbmF0aW9uIC5wYWdlLWl0ZW0uZGlzYWJsZWQgLnBhZ2UtbGluayB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDYpICFpbXBvcnRhbnQ7XHJcbiAgICBib3JkZXItY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKSAhaW1wb3J0YW50O1xyXG4gICAgY29sb3I6IHJnYmEoMjMzLCAyNDcsIDI1NSwgMC40KSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4ub3NwLXRhYmxlLXVpIC5maXhlZC10YWJsZS1wYWdpbmF0aW9uIC5wYWdpbmF0aW9uLWluZm8sXHJcbi5vc3AtdGFibGUtdWkgLmZpeGVkLXRhYmxlLXBhZ2luYXRpb24gLnBhZ2UtbGlzdCB7XHJcbiAgICBjb2xvcjogI2NmZThmNyAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4ub3NwLXRhYmxlLXVpIC5maXhlZC10YWJsZS1wYWdpbmF0aW9uIC5wYWdlLWxpc3QgLmJ0bixcclxuLm9zcC10YWJsZS11aSAuZml4ZWQtdGFibGUtcGFnaW5hdGlvbiAucGFnZS1saXN0IC5kcm9wZG93bi10b2dnbGUge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxNywgNDcsIDcxLCAwLjkpICFpbXBvcnRhbnQ7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDAsIDI0MywgMjU1LCAwLjM1KSAhaW1wb3J0YW50O1xyXG4gICAgY29sb3I6ICNlOWY3ZmYgIWltcG9ydGFudDtcclxufVxyXG5cclxuLm9zcC10YWJsZS11aSAuZml4ZWQtdGFibGUtcGFnaW5hdGlvbiAuZHJvcGRvd24tbWVudSxcclxuLm9zcC10YWJsZS11aSAuZml4ZWQtdGFibGUtcGFnaW5hdGlvbiAucGFnZS1saXN0IC5kcm9wZG93bi1tZW51IHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICMwZDI1MzggIWltcG9ydGFudDtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoODAsIDIwMCwgMjU1LCAwLjUpICFpbXBvcnRhbnQ7XHJcbiAgICBib3gtc2hhZG93OiAwIDVweCAxNXB4IHJnYmEoMCwgMCwgMCwgMC41KSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4ub3NwLXRhYmxlLXVpIC5maXhlZC10YWJsZS1wYWdpbmF0aW9uIC5kcm9wZG93bi1pdGVtLFxyXG4ub3NwLXRhYmxlLXVpIC5maXhlZC10YWJsZS1wYWdpbmF0aW9uIC5kcm9wZG93bi1tZW51IGxpID4gYSxcclxuLm9zcC10YWJsZS11aSAuZml4ZWQtdGFibGUtcGFnaW5hdGlvbiAuZHJvcGRvd24tbWVudSBsaSA+IHNwYW4ge1xyXG4gICAgY29sb3I6ICNlOWY3ZmYgIWltcG9ydGFudDtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5vc3AtdGFibGUtdWkgLmZpeGVkLXRhYmxlLXBhZ2luYXRpb24gLmRyb3Bkb3duLWl0ZW06aG92ZXIsXHJcbi5vc3AtdGFibGUtdWkgLmZpeGVkLXRhYmxlLXBhZ2luYXRpb24gLmRyb3Bkb3duLWl0ZW06Zm9jdXMsXHJcbi5vc3AtdGFibGUtdWkgLmZpeGVkLXRhYmxlLXBhZ2luYXRpb24gLmRyb3Bkb3duLW1lbnUgbGkgPiBhOmhvdmVyIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMTUwLCAyNTUsIDAuMykgIWltcG9ydGFudDtcclxuICAgIGNvbG9yOiAjZmZmZmZmICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcblxyXG4udWktd2lkZ2V0LWNvbnRlbnQge1xyXG4gICAgYmFja2dyb3VuZDogdmFyKC0tY29sb3Itc3VyZmFjZS1zdHJvbmcsICMwZDE1MjIpICFpbXBvcnRhbnQ7XHJcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1wcmltYXJ5LCAjZjBmNGY4KSAhaW1wb3J0YW50O1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tY29sb3ItYm9yZGVyLXNvZnQsIHJnYmEoMCwgMjI5LCAyNTUsIDAuMTUpKSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4udWktd2lkZ2V0LWNvbnRlbnQgYSB7XHJcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1wcmltYXJ5LCAjZjBmNGY4KSAhaW1wb3J0YW50O1xyXG59XHJcbiIsIi8qIEVzdGlsb3MgcGFyYSBlbCBjb250ZW5lZG9yIGRlIFdoYXRzQXBwICovXHJcbi53aGF0c2FwcC1jb250YWluZXIge1xyXG4gICAgcG9zaXRpb246IGZpeGVkO1xyXG4gICAgYm90dG9tOiAyMHB4O1xyXG4gICAgcmlnaHQ6IDE1cHg7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjVEMzY2OyAvKiBDb2xvciBkZSBmb25kbyBkZSBXaGF0c0FwcCAqL1xyXG4gICAgcGFkZGluZzogMTBweDtcclxuICAgIGJvcmRlci1yYWRpdXM6IDVweDtcclxuICAgIGJveC1zaGFkb3c6IDAgMCAxMHB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcclxuICAgIHotaW5kZXg6IDI7IC8qIEFzZWd1cmEgcXVlIFdoYXRzQXBwIGVzdMOpIGVuY2ltYSBkZSBUZWxlZ3JhbSAqL1xyXG59XHJcblxyXG4vKiBFc3RpbG9zIHBhcmEgZWwgY29udGVuZWRvciBkZSBUZWxlZ3JhbSAqL1xyXG4udGVsZWdyYW0tY29udGFpbmVyIHtcclxuICAgIHBvc2l0aW9uOiBmaXhlZDtcclxuICAgIGJvdHRvbTogNjVweDsgLyogQWp1c3RhIGxhIHBvc2ljacOzbiBwYXJhIHF1ZSBlc3TDqSBkZWJham8gZGUgV2hhdHNBcHAgKi9cclxuICAgIHJpZ2h0OiAxNnB4O1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwODhjYzsgLyogQ29sb3IgZGUgZm9uZG8gZGUgVGVsZWdyYW0gKi9cclxuICAgIHBhZGRpbmc6IDEycHg7XHJcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7XHJcbiAgICBib3gtc2hhZG93OiAwIDAgMTBweCByZ2JhKDAsIDAsIDAsIDAuMSk7XHJcbiAgICB6LWluZGV4OiAxOyAvKiBBc2VndXJhIHF1ZSBUZWxlZ3JhbSBlc3TDqSBkZWJham8gZGUgV2hhdHNBcHAgKi9cclxufVxyXG5cclxuLyogRXN0aWxvcyBwYXJhIGVsIGVubGFjZSBkZSBXaGF0c0FwcCB5IFRlbGVncmFtICovXHJcbi53aGF0c2FwcC1saW5rLCAudGVsZWdyYW0tbGluayB7XHJcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICBjb2xvcjogI2ZmZjsgLyogQ29sb3IgZGVsIHRleHRvICovXHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxufVxyXG5cclxuLyogRXN0aWxvcyBwYXJhIGVsIMOtY29ubyBkZSBXaGF0c0FwcCB5IFRlbGVncmFtICovXHJcbi53aGF0c2FwcC1pY29uLCAudGVsZWdyYW0taWNvbiB7XHJcbiAgICBmb250LXNpemU6IDI0cHg7IC8qIFRhbWHDsW8gZGVsIMOtY29ubyAqL1xyXG4gICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xyXG4gICAgQ29sb3I6I2ZmZjtcclxufVxyXG5cclxuLyogRXN0aWxvcyBwYXJhIGVsIHRleHRvIGRlIFdoYXRzQXBwIHkgVGVsZWdyYW0gKi9cclxuLndoYXRzYXBwLXRleHQsIC50ZWxlZ3JhbS10ZXh0IHtcclxuICAgIGZvbnQtc2l6ZToxNHB4O1xyXG59XHJcblxyXG4ud2hhdHNhcHAtdGV4dHtcclxuICAgIGNvbG9yOiNmZmYgIWltcG9ydGFudDtcclxufVxyXG5cclxuLyogT2N1bHRhciBsb3MgY29udHJvbGVzIGRlIG7Dum1lcm8gZW4gQ2hyb21lLCBTYWZhcmksIEVkZ2UgeSBPcGVyYSAqL1xyXG5pbnB1dFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uLFxyXG5pbnB1dFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uIHtcclxuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcclxuICAgIG1hcmdpbjogMDtcclxufVxyXG5cclxuLyogT2N1bHRhciBsb3MgY29udHJvbGVzIGRlIG7Dum1lcm8gZW4gRmlyZWZveCAqL1xyXG5pbnB1dFt0eXBlPVwibnVtYmVyXCJdIHtcclxuICAgIC1tb3otYXBwZWFyYW5jZTogdGV4dGZpZWxkO1xyXG4gICAgYXBwZWFyYW5jZTogdGV4dGZpZWxkO1xyXG59XHJcblxyXG5cclxuLmVtcHJlc2Ege1xyXG4gICAgZm9udC1mYW1pbHk6ICdCcmFkbGV5IEhhbmQgSVRDJywgY3Vyc2l2ZTtcclxuICAgIGZvbnQtc2l6ZTogMjVweDtcclxufVxyXG5cclxuLmlkSW5ncmVkaWVudGVzIHtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIGZvbnQtZmFtaWx5OiAnUm9ib3RvICBUaGluJywgY3Vyc2l2ZTtcclxuICAgIGZvbnQtc2l6ZTogMjVweDtcclxufVxyXG5cclxuLmlkQ29udGVuaWRvIHtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIGZvbnQtZmFtaWx5OiAnYXJpYWwgIFRoaW4nLCBjdXJzaXZlO1xyXG4gICAgZm9udC1zaXplOiAyMHB4O1xyXG5cclxufVxyXG5cclxuLmJhbm5lckl0ZW0ge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGhlaWdodDogNTAwcHg7XHJcbn1cclxuLmJhbm5lckl0ZW0gaW1nIHtcclxuICAgIGhlaWdodDogMTAwJTtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG59XHJcblxyXG4uaW1nLW5vcm1hbGl6YWRhe1xyXG4gICAgd2lkdGg6IDM1MHB4O1xyXG4gICAgaGVpZ2h0OiAyODBweDtcclxuICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XHJcbiAgICBvYmplY3QtZml0OiBjb3ZlcjtcclxufVxyXG5cclxuLmlkUHJlY2lvIHtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIGZvbnQtZmFtaWx5OiAnYXJpYWwgIFRoaW4nLCBjdXJzaXZlO1xyXG4gICAgZm9udC1zaXplOiAzNXB4O1xyXG4gICAgYW5pbWF0aW9uOiBibGluayAxLjVzIGluZmluaXRlO1xyXG59XHJcblxyXG4vKkBrZXlmcmFtZXMgYmxpbmsgeyovXHJcbi8qICAgIDAlLCAxMDAlIHsqL1xyXG4vKiAgICAgICAgb3BhY2l0eTogMTsqL1xyXG4vKiAgICB9Ki9cclxuLyogICAgNTAlIHsqL1xyXG4vKiAgICAgICAgb3BhY2l0eTogMDsqL1xyXG4vKiAgICB9Ki9cclxuLyp9Ki8vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4jIFJlc3BvbnNpdmUgYWRqdXN0bWVudHMgZm9yIGZsb2F0aW5nIGFjdGlvbnMgYW5kIG1lZGlhIGJsb2Nrc1xyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xyXG5AbWVkaWEgKG1heC13aWR0aDogOTkxLjk4cHgpIHtcclxuICAgIC5iYW5uZXJJdGVtIHtcclxuICAgICAgICBoZWlnaHQ6IGNsYW1wKDIyMHB4LCA0NXZ3LCAzODBweCk7XHJcbiAgICB9XHJcblxyXG4gICAgLmltZy1ub3JtYWxpemFkYSB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgbWF4LXdpZHRoOiAzMjBweDtcclxuICAgICAgICBoZWlnaHQ6IGF1dG87XHJcbiAgICAgICAgYXNwZWN0LXJhdGlvOiA1IC8gNDtcclxuICAgIH1cclxufVxyXG5cclxuQG1lZGlhIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XHJcbiAgICAud2hhdHNhcHAtY29udGFpbmVyLFxyXG4gICAgLnRlbGVncmFtLWNvbnRhaW5lciB7XHJcbiAgICAgICAgcmlnaHQ6IDEwcHg7XHJcbiAgICAgICAgcGFkZGluZzogMTBweDtcclxuICAgIH1cclxuXHJcbiAgICAudGVsZWdyYW0tY29udGFpbmVyIHtcclxuICAgICAgICBib3R0b206IDYwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgLndoYXRzYXBwLXRleHQsXHJcbiAgICAudGVsZWdyYW0tdGV4dCB7XHJcbiAgICAgICAgZGlzcGxheTogbm9uZTtcclxuICAgIH1cclxuXHJcbiAgICAud2hhdHNhcHAtaWNvbixcclxuICAgIC50ZWxlZ3JhbS1pY29uIHtcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XHJcbiAgICAgICAgZm9udC1zaXplOiAyMnB4O1xyXG4gICAgfVxyXG5cclxuICAgIC5lbXByZXNhIHtcclxuICAgICAgICBmb250LXNpemU6IDIwcHg7XHJcbiAgICB9XHJcblxyXG4gICAgLmlkUHJlY2lvIHtcclxuICAgICAgICBmb250LXNpemU6IDI4cHg7XHJcbiAgICB9XHJcbn1cclxuIiwiLmV4cGlyYXRpb24tY2FyZC13cmFwcGVyIHtcclxuICAgIG1heC13aWR0aDogNzYwcHg7XHJcbiAgICBtYXJnaW46IDAgYXV0byAxLjVyZW07XHJcbn1cclxuXHJcbi5leHBpcmF0aW9uLWNhcmQge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICBnYXA6IDVyZW07XHJcbiAgICBwYWRkaW5nOiAxcmVtIDEuMjVyZW07XHJcbiAgICBib3JkZXItcmFkaXVzOiAxNHB4O1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSg4MCwgMjAwLCAyNTUsIDAuMzUpO1xyXG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgcmdiYSg5LCAzMiwgNTMsIDAuOTIpLCByZ2JhKDIwLCA1OCwgOTIsIDAuNzgpKTtcclxuICAgIGJveC1zaGFkb3c6IDAgMTRweCAzMnB4IHJnYmEoMiwgMTAsIDIxLCAwLjM1KSwgaW5zZXQgMCAwIDAgMXB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wNCk7XHJcbiAgICBtYXJnaW4tYm90dG9tOiA1MHB4O1xyXG59XHJcblxyXG4uZXhwaXJhdGlvbi1jYXJkX19pY29uIHtcclxuICAgIHdpZHRoOiA0NnB4O1xyXG4gICAgaGVpZ2h0OiA0NnB4O1xyXG4gICAgYm9yZGVyLXJhZGl1czogMTJweDtcclxuICAgIGRpc3BsYXk6IGdyaWQ7XHJcbiAgICBwbGFjZS1pdGVtczogY2VudGVyO1xyXG4gICAgYmFja2dyb3VuZDogcmdiYSgwLCAxNzAsIDI1NSwgMC4xNSk7XHJcbiAgICBjb2xvcjogIzdhZTJmZjtcclxuICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgxMjIsIDIyNiwgMjU1LCAwLjM1KTtcclxufVxyXG5cclxuLmV4cGlyYXRpb24tY2FyZF9fY29udGVudCB7XHJcbiAgICBtaW4td2lkdGg6IDA7XHJcbn1cclxuXHJcbi5leHBpcmF0aW9uLWNhcmRfX3RpdGxlIHtcclxuICAgIG1hcmdpbjogMDtcclxuICAgIGZvbnQtc2l6ZTogMC44NXJlbTtcclxuICAgIGxldHRlci1zcGFjaW5nOiAwLjA4ZW07XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG59XHJcblxyXG4uZXhwaXJhdGlvbi1jYXJkX19jb3VudGRvd24ge1xyXG4gICAgbWFyZ2luOiAwLjJyZW0gMCAwO1xyXG4gICAgZm9udC1zaXplOiAxLjA1cmVtO1xyXG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgIGxpbmUtaGVpZ2h0OiAxLjM7XHJcbiAgICB3b3JkLWJyZWFrOiBicmVhay13b3JkO1xyXG59XHJcblxyXG4uZXhwaXJhdGlvbi1jYXJkX19jb3VudGRvd24uaXMtZXhwaXJlZCB7XG4gICAgY29sb3I6ICNmZmIwYmIgIWltcG9ydGFudDtcbiAgICB0ZXh0LXNoYWRvdzogMCAwIDEycHggcmdiYSgyNTUsIDEyMCwgMTQ1LCAwLjcpICFpbXBvcnRhbnQ7XG59XG5cbi5leHBpcmF0aW9uLW5hdmJhciB7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBnYXA6IDAuNDVyZW07XG4gICAgcGFkZGluZzogMC4zNXJlbSAwLjdyZW07XG4gICAgYm9yZGVyLXJhZGl1czogOTk5cHg7XG4gICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSg4MCwgMjAwLCAyNTUsIDAuMjgpO1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsIHJnYmEoOSwgMzIsIDUzLCAwLjkyKSwgcmdiYSgyMCwgNTgsIDkyLCAwLjc4KSk7XG4gICAgY29sb3I6ICNlNmY4ZmY7XG4gICAgZm9udC1zaXplOiAwLjc4cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgbGluZS1oZWlnaHQ6IDEuMTtcbiAgICBtYXgtd2lkdGg6IG1pbig1NnZ3LCAzNjBweCk7XG59XG5cbi5leHBpcmF0aW9uLW5hdmJhciBpIHtcbiAgICBmb250LXNpemU6IDAuOXJlbTtcbiAgICBjb2xvcjogIzdhZTJmZjtcbiAgICBmbGV4LXNocmluazogMDtcbn1cblxuI2NvbnRhZG9yLWV4cGlyYWNpb24tbmF2YmFyIHtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG59XG5cbi5kcm9wZG93bi1oZWFkZXIgI2V4cGlyYXRpb24tbmF2YmFyLWl0ZW0gLmV4cGlyYXRpb24tbmF2YmFyIHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgd2lkdGg6IDEwMCU7XG59XG5cclxuI3NlY2Npb24taW5pY2lhbC5mdWxsLWhlaWdodDpub3QoLmQtbm9uZSkge1xyXG4gICAgbWluLWhlaWdodDogY2FsYygxMDB2aCAtIDE0MHB4KTtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbn1cclxuXHJcbiNzZWNjaW9uLWluaWNpYWwuZnVsbC1oZWlnaHQuZC1ub25lIHtcclxuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcclxufVxyXG5cclxuLnN1YnNjcmlwdGlvbi1zaGVsbCB7XHJcbiAgICBtYXgtd2lkdGg6IDEwODBweDtcclxuICAgIG1hcmdpbjogMCBhdXRvO1xyXG59XHJcblxyXG4uc3Vic2NyaXB0aW9uLWhlcm8ge1xyXG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgcmdiYSg4LCAyNywgNDUsIDAuOTIpLCByZ2JhKDIyLCA1NywgOTEsIDAuNzgpKTtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoODAsIDIwMCwgMjU1LCAwLjIyKTtcclxuICAgIGJvcmRlci1yYWRpdXM6IDE4cHg7XHJcbiAgICBwYWRkaW5nOiAyLjI1cmVtIDEuNXJlbTtcclxuICAgIGJveC1zaGFkb3c6IDAgMjBweCA0NXB4IHJnYmEoMCwgMCwgMCwgMC4zKTtcclxufVxyXG5cclxuLnN1YnNjcmlwdGlvbi1oZXJvIC5sZWFkIHtcclxuICAgIG1heC13aWR0aDogNjgwcHg7XHJcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcclxuICAgIG1hcmdpbi1yaWdodDogYXV0bztcclxufVxyXG5cclxuLnN1YnNjcmlwdGlvbi1jdGEtYnRuIHtcclxuICAgIG1pbi13aWR0aDogMjEwcHg7XHJcbiAgICBib3JkZXItcmFkaXVzOiAxMnB4O1xyXG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgIGxldHRlci1zcGFjaW5nOiAwLjAyZW07XHJcbn1cclxuXHJcbi5zdWJzY3JpcHRpb24tcGxhbi1jYXJkIHtcclxuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxNDBkZWcsIHJnYmEoOCwgMjcsIDQ1LCAwLjk1KSwgcmdiYSgxOCwgNDksIDc4LCAwLjgpKTtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoODAsIDIwMCwgMjU1LCAwLjI0KTtcclxuICAgIGJvcmRlci1yYWRpdXM6IDE2cHg7XHJcbiAgICBib3gtc2hhZG93OiAwIDE4cHggMzZweCByZ2JhKDAsIDAsIDAsIDAuMjgpO1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxufVxyXG5cclxuLnN1YnNjcmlwdGlvbi1wbGFuLWNhcmRfX2hlYWRlciB7XHJcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoOTBkZWcsIHJnYmEoMCwgMTc0LCAyNTUsIDAuMTUpLCByZ2JhKDAsIDI0MywgMjU1LCAwLjA0KSk7XHJcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSg4MCwgMjAwLCAyNTUsIDAuMik7XHJcbiAgICBwYWRkaW5nOiAwLjk1cmVtIDFyZW07XHJcbn1cclxuXHJcbi5zdWJzY3JpcHRpb24tcGxhbi1jYXJkX190aXRsZSB7XHJcbiAgICBmb250LXNpemU6IDFyZW07XHJcbiAgICBsZXR0ZXItc3BhY2luZzogMC4wNWVtO1xyXG59XHJcblxyXG4uc3Vic2NyaXB0aW9uLXBsYW4tY2FyZF9fbWV0YSB7XHJcbiAgICBjb2xvcjogI2Q5ZjJmZjtcclxuICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcclxufVxyXG5cclxuLnN1YnNjcmlwdGlvbi1wbGFuLWNhcmRfX3ByaWNlIHtcclxuICAgIGZvbnQtc2l6ZTogMS40cmVtO1xyXG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgIGNvbG9yOiAjN2FlMmZmO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcclxufVxyXG5cclxuLnN1YnNjcmlwdGlvbi1wbGFuLWNhcmRfX2ZlYXR1cmVzIHtcclxuICAgIG1hcmdpbi10b3A6IDAuNzVyZW07XHJcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgbWF4LWhlaWdodDogMjIwcHg7XHJcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xyXG4gICAgcGFkZGluZy1yaWdodDogMC40cmVtO1xyXG59XHJcblxyXG4uc3Vic2NyaXB0aW9uLXBsYW4tY2FyZF9fZmVhdHVyZXMgbGkge1xyXG4gICAgYmFja2dyb3VuZDogcmdiYSgxMjIsIDIyNiwgMjU1LCAwLjA4KTtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMTIyLCAyMjYsIDI1NSwgMC4xNik7XHJcbiAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xyXG4gICAgcGFkZGluZzogMC42NXJlbSAwLjc1cmVtO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMC41NXJlbTtcclxufVxyXG5cclxuLnN1YnNjcmlwdGlvbi1wbGFuLWNhcmRfX2ZlYXR1cmVzIHN0cm9uZyB7XHJcbiAgICBjb2xvcjogI2U1ZjhmZjtcclxufVxyXG5cclxuLnN1YnNjcmlwdGlvbi1wbGFuLWNhcmRfX2ZlYXR1cmVzIHNtYWxsIHtcclxuICAgIGNvbG9yOiByZ2JhKDIyOSwgMjQ4LCAyNTUsIDAuOCkgIWltcG9ydGFudDtcclxufVxyXG5cclxuLnN1YnNjcmlwdGlvbi1wbGFuLWNhcmRfX2J1dHRvbiB7XHJcbiAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xyXG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcclxufVxyXG5cclxuI2luZm8tcGxhbi1zZWxlY2Npb25hZG8uc3Vic2NyaXB0aW9uLXNlbGVjdGVkLXBsYW4ge1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSg4MCwgMjAwLCAyNTUsIDAuMyk7XHJcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTIwZGVnLCByZ2JhKDExLCA0MCwgNjQsIDAuOSksIHJnYmEoMTcsIDYzLCA5NywgMC43MikpO1xyXG4gICAgYm9yZGVyLXJhZGl1czogMTJweDtcclxuICAgIGNvbG9yOiAjZTZmOGZmO1xyXG4gICAgbWFyZ2luOiAxcmVtIGF1dG8gMDtcclxuICAgIG1heC13aWR0aDogOTgwcHg7XHJcbn1cclxuXHJcbi5zdWJzY3JpcHRpb24tc2VsZWN0ZWQtcGxhbiAuYnRuIHtcclxuICAgIGNvbG9yOiAjOWNkZmZmICFpbXBvcnRhbnQ7XHJcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICBmb250LXdlaWdodDogNzAwO1xyXG59XHJcblxyXG4jdmlzdGEtdHJlcyAuc3Vic2NyaXB0aW9uLXBheW1lbnQtcGFuZWwge1xyXG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE0MGRlZywgcmdiYSg4LCAyNywgNDUsIDAuOTUpLCByZ2JhKDE5LCA1NCwgODYsIDAuODIpKTtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoODAsIDIwMCwgMjU1LCAwLjIpO1xyXG4gICAgYm9yZGVyLXJhZGl1czogMTZweDtcclxuICAgIHBhZGRpbmc6IDEuNXJlbTtcclxuICAgIGJveC1zaGFkb3c6IDAgMThweCAzNnB4IHJnYmEoMCwgMCwgMCwgMC4yNCk7XHJcbn1cclxuXHJcbi5zdWJzY3JpcHRpb24tcGF5bWVudC1idG4ge1xyXG4gICAgYm9yZGVyLXJhZGl1czogMTJweDtcclxuICAgIG1pbi1oZWlnaHQ6IDU2cHg7XHJcbiAgICBmb250LXdlaWdodDogNzAwO1xyXG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuMDJlbTtcclxufVxyXG5cclxuQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gICAgLmV4cGlyYXRpb24tY2FyZCB7XG4gICAgICAgIHBhZGRpbmc6IDAuOXJlbSAxcmVtO1xuICAgIH1cblxuICAgIC5leHBpcmF0aW9uLWNhcmRfX2NvdW50ZG93biB7XG4gICAgICAgIGZvbnQtc2l6ZTogMC45NXJlbTtcbiAgICB9XG5cbiAgICAuZXhwaXJhdGlvbi1uYXZiYXIge1xuICAgICAgICBtYXgtd2lkdGg6IDQ4dnc7XG4gICAgICAgIGZvbnQtc2l6ZTogMC43MnJlbTtcbiAgICAgICAgcGFkZGluZzogMC4yOHJlbSAwLjU1cmVtO1xuICAgIH1cblxuICAgIC5zdWJzY3JpcHRpb24taGVybyB7XG4gICAgICAgIHBhZGRpbmc6IDEuNXJlbSAxcmVtO1xuICAgIH1cbn1cbiIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiAgIEFQUC5TQ1NTIOKAlCBPUkRFTiBDT1JSRUNUT1xyXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLyogLS0tIEZyYW1ld29ya3MgYmFzZSAtLS0gKi9cclxuQGltcG9ydCBcImJvb3RzdHJhcFwiO1xyXG5AaW1wb3J0IFwiYm9vdHN0cmFwLWljb25zL2ZvbnQvYm9vdHN0cmFwLWljb25zLmNzc1wiO1xyXG5AaW1wb3J0IFwiQGZvcnRhd2Vzb21lL2ZvbnRhd2Vzb21lLWZyZWUvY3NzL2FsbC5taW4uY3NzXCI7XHJcblxyXG4vKiAtLS0gUGx1Z2lucyBkZSB0YWJsYXMgLS0tICovXHJcbkBpbXBvcnQgXCJib290c3RyYXAtdGFibGUvZGlzdC9ib290c3RyYXAtdGFibGUubWluLmNzc1wiO1xyXG5AaW1wb3J0IFwiYm9vdHN0cmFwLXRhYmxlL2Rpc3QvZXh0ZW5zaW9ucy9yZW9yZGVyLXJvd3MvYm9vdHN0cmFwLXRhYmxlLXJlb3JkZXItcm93cy5taW4uY3NzXCI7XHJcblxyXG4vKiAtLS0galF1ZXJ5IFVJIC0tLSAqL1xyXG5AaW1wb3J0IFwianF1ZXJ5LXVpL3RoZW1lcy9iYXNlL2FsbC5jc3NcIjtcclxuXHJcbi8qIC0tLSBBbGVydGFzICYgTm90aWZpY2FjaW9uZXMgLS0tICovXHJcbkBpbXBvcnQgXCJzd2VldGFsZXJ0Mi9kaXN0L3N3ZWV0YWxlcnQyLm1pbi5jc3NcIjtcclxuQGltcG9ydCBcInRvYXN0ci9idWlsZC90b2FzdHIubWluLmNzc1wiO1xyXG5AaW1wb3J0IFwianF1ZXJ5LWNvbmZpcm0vY3NzL2pxdWVyeS1jb25maXJtLmNzc1wiO1xyXG5cclxuLyogLS0tIEVkaXRvcmVzIC0tLSAqL1xyXG5AaW1wb3J0IFwiZnJvYWxhLWVkaXRvci9jc3MvZnJvYWxhX2VkaXRvci5wa2dkLm1pbi5jc3NcIjtcclxuXHJcbi8qIC0tLSBJY29ub3MgZXh0cmFzIC0tLSAqL1xyXG5AaW1wb3J0IFwiYm94aWNvbnMvY3NzL2JveGljb25zLm1pbi5jc3NcIjtcclxuQGltcG9ydCBcInJlbWl4aWNvbi9mb250cy9yZW1peGljb24uY3NzXCI7XHJcblxyXG4vKiAtLS0gVXRpbGlkYWRlcyB5IFdpZGdldHMgLS0tICovXHJcbkBpbXBvcnQgXCJmbGF0cGlja3IvZGlzdC9mbGF0cGlja3IuY3NzXCI7XHJcbkBpbXBvcnQgXCJsZWFmbGV0L2Rpc3QvbGVhZmxldC5jc3NcIjtcclxuXHJcbi8qIC0tLSBQaWNrciAoQ29sb3IgUGlja2VyKSAtLS0gKi9cclxuQGltcG9ydCBcIkBzaW1vbndlcC9waWNrci9kaXN0L3RoZW1lcy9jbGFzc2ljLm1pbi5jc3NcIjtcclxuXHJcbi8qIC0tLSBFc3RpbG9zIHBlcnNvbmFsaXphZG9zIGRlbCBwcm95ZWN0byAtLS0gKi9cclxuQGltcG9ydCBcInN0eWxlLmNzc1wiO1xyXG5AaW1wb3J0IFwidGFibGVzLmNzc1wiO1xyXG5AaW1wb3J0IFwidmlzdGFzLmNzc1wiO1xyXG5AaW1wb3J0IFwic3Vic2NyaXB0aW9uLWV4cGlyYXRpb24uY3NzXCI7XHJcbiIsIi5tb2RhbFN0eWxlIC5tb2RhbC1jb250ZW50XHJcbntcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYigzOCwgNzMsIDEwMykgIWltcG9ydGFudDtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkICMwMGYzZmYgIWltcG9ydGFudDtcclxuICAgIGJveC1zaGFkb3c6IDAgMCAyNXB4IHJnYmEoMCwgMjQzLCAyNTUsIDAuMTUpICFpbXBvcnRhbnQ7XHJcbiAgICBjb2xvcjogI2ZmZmZmZiAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4ubW9kYWxTdHlsZSAubW9kYWwtaGVhZGVyXHJcbntcclxuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCg5MGRlZywgcmdiYSgxMSwgMjUsIDQxLCAwLjk1KSAwJSwgcmdiYSgzOCwgNzMsIDEwMywgMC41KSAxMDAlKTtcclxuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDAsIDI0MywgMjU1LCAwLjMpICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5tb2RhbFN0eWxlIC5tb2RhbC10aXRsZVxyXG57XHJcbiAgICBjb2xvcjogI2ZmZmZmZiAhaW1wb3J0YW50O1xyXG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICB0ZXh0LXNoYWRvdzogMCAwIDZweCByZ2JhKDgwLCAyMDAsIDI1NSwgMC45KSxcclxuICAgIDAgMCAxNHB4IHJnYmEoODAsIDIwMCwgMjU1LCAwLjcpICFpbXBvcnRhbnQ7XHJcbiAgICBtYXJnaW4tbGVmdDogNXB4O1xyXG59XHJcblxyXG4ubW9kYWxTdHlsZSAuYnRuLWNsb3NlXHJcbntcclxuICAgIGZpbHRlcjogaW52ZXJ0KDEpIGdyYXlzY2FsZSgxMDAlKSBicmlnaHRuZXNzKDIwMCUpO1xyXG4gICAgb3BhY2l0eTogMC44O1xyXG59XHJcblxyXG4ubW9kYWxTdHlsZSAudGFibGUge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxNywgNDcsIDcxLCAwLjg1KSAhaW1wb3J0YW50O1xyXG4gICAgY29sb3I6ICNmZmZmZmYgIWltcG9ydGFudDtcclxuICAgIGJvcmRlci1jb2xsYXBzZTogc2VwYXJhdGU7XHJcbiAgICBib3JkZXItc3BhY2luZzogMDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgIGJvcmRlci1yYWRpdXM6IDZweDtcclxufVxyXG5cclxuLm1vZGFsU3R5bGUgLnRhYmxlIHRoLFxyXG4ubW9kYWxTdHlsZSAudGFibGUgdGQge1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSg4MCwgMjAwLCAyNTUsIDAuMTUpICFpbXBvcnRhbnQ7IC8qIFJlamlsbGEgc3V0aWwgKi9cclxuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcbiAgICBjb2xvcjogI2U5ZjdmZiAhaW1wb3J0YW50O1xyXG4gICAgcGFkZGluZzogOHB4O1xyXG4gICAgZm9udC1zaXplOiAxM3B4O1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogaW5oZXJpdDtcclxufVxyXG5cclxuLm1vZGFsU3R5bGUgLnRhYmxlIHRoZWFkIHRoIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMTUwLCAyNTUsIDAuMikgIWltcG9ydGFudDtcclxuICAgIGNvbG9yOiAjZmZmZmZmICFpbXBvcnRhbnQ7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgZm9udC1zaXplOiAwLjg1cmVtO1xyXG4gICAgbGV0dGVyLXNwYWNpbmc6IDFweDtcclxuICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjMDBmM2ZmICFpbXBvcnRhbnQ7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbn1cclxuXHJcbi5tb2RhbFN0eWxlIC50YWJsZSB0Ym9keSB0aCB7XHJcbiAgICB0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQ7XHJcbiAgICBjb2xvcjogI2ZmZmZmZiAhaW1wb3J0YW50O1xyXG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxufVxyXG5cclxuLm1vZGFsU3R5bGUgLnRhYmxlIHRib2R5IHRyOmhvdmVyIHRkLFxyXG4ubW9kYWxTdHlsZSAudGFibGUgdGJvZHkgdHI6aG92ZXIgdGgsXHJcbi5tb2RhbC1jb250ZW50IC50YWJsZSB0Ym9keSB0cjpob3ZlciB0aFxyXG57XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDI0MywgMjU1LCAwLjE1KSAhaW1wb3J0YW50OyAvKiBNw6FzIGJyaWxsYW50ZSBhbCBwYXNhciBtb3VzZSAqL1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG59XHJcblxyXG4ubW9kYWxTdHlsZSAubmF2LXRhYnMge1xyXG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoODAsIDIwMCwgMjU1LCAwLjIpO1xyXG59XHJcblxyXG4ubW9kYWxTdHlsZSAubmF2LWxpbmsge1xyXG4gICAgY29sb3I6ICNhMGMwZDA7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcclxuICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XHJcbn1cclxuXHJcbi5tb2RhbFN0eWxlIC5uYXYtbGluazpob3ZlciB7XHJcbiAgICBjb2xvcjogIzAwZjNmZjtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMjQzLCAyNTUsIDAuMDUpO1xyXG59XHJcblxyXG4ubW9kYWxTdHlsZSAubmF2LWxpbmsuYWN0aXZlIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMjQzLCAyNTUsIDAuMSkgIWltcG9ydGFudDtcclxuICAgIGNvbG9yOiAjMDBmM2ZmICFpbXBvcnRhbnQ7XHJcbiAgICBib3JkZXItY29sb3I6IHJnYmEoMCwgMjQzLCAyNTUsIDAuNSkgcmdiYSgwLCAyNDMsIDI1NSwgMC41KSB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xyXG4gICAgdGV4dC1zaGFkb3c6IDAgMCA4cHggcmdiYSgwLCAyNDMsIDI1NSwgMC40KTtcclxuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG59XHJcblxyXG5cclxuLm1vZGFsU3R5bGUgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcclxuICAgIGFwcGVhcmFuY2U6IG5vbmU7XHJcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XHJcbiAgICB3aWR0aDogMThweDtcclxuICAgIGhlaWdodDogMThweDtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMTEsIDI1LCA0MSwgMC44KTtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkICMwMGYzZmY7XHJcbiAgICBib3JkZXItcmFkaXVzOiAzcHg7XHJcbiAgICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG59XHJcblxyXG4ubW9kYWxTdHlsZSBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl06Y2hlY2tlZCB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDI0MywgMjU1LCAwLjIpO1xyXG4gICAgYm94LXNoYWRvdzogMCAwIDhweCByZ2JhKDAsIDI0MywgMjU1LCAwLjYpO1xyXG59XHJcblxyXG4ubW9kYWxTdHlsZSBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl06Y2hlY2tlZDo6YWZ0ZXIge1xyXG4gICAgY29udGVudDogJ+KclCc7XHJcbiAgICBmb250LXNpemU6IDEycHg7XHJcbiAgICBjb2xvcjogIzAwZjNmZjtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIHRvcDogNTAlO1xyXG4gICAgbGVmdDogNTAlO1xyXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XHJcbiAgICBmb250LXdlaWdodDogYm9sZDtcclxufVxyXG5cclxuLm1vZGFsU3R5bGUgLmNhcmQsXHJcbi5tb2RhbFN0eWxlIC5jYXJkLWJvZHksXHJcbi5tb2RhbFN0eWxlIC50YWItY29udGVudCxcclxuLm1vZGFsU3R5bGUgLnRhYi1wYW5lIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XHJcbiAgICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcclxuICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcclxufVxyXG5cclxuLm1vZGFsU3R5bGUgLmNhcmQtdGl0bGUge1xyXG4gICAgY29sb3I6ICNmZmZmZmY7XHJcbiAgICBib3JkZXItbGVmdDogM3B4IHNvbGlkICMwMGYzZmY7XHJcbiAgICBwYWRkaW5nLWxlZnQ6IDEwcHg7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG59XHJcblxyXG4ubW9kYWxTdHlsZSAuYnRuXHJcbntcclxuICAgIGJvcmRlci13aWR0aDogMnB4ICFpbXBvcnRhbnQ7XHJcbiAgICBtYXJnaW4tcmlnaHQ6IDE1cHggIWltcG9ydGFudDtcclxuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICBsZXR0ZXItc3BhY2luZzogMXB4O1xyXG4gICAgcGFkZGluZzogNnB4IDIwcHg7XHJcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcclxufVxyXG5cclxuLm1vZGFsU3R5bGUgLmJ0bi1vdXRsaW5lLXN1Y2Nlc3Ncclxue1xyXG4gICAgY29sb3I6ICMwMGZmODggIWltcG9ydGFudDtcclxuICAgIGJvcmRlci1jb2xvcjogIzAwZmY4OCAhaW1wb3J0YW50O1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbiAgICBib3gtc2hhZG93OiAwIDAgMTBweCByZ2JhKDAsIDI1NSwgMTM2LCAwLjMpO1xyXG59XHJcblxyXG4ubW9kYWxTdHlsZSAuYnRuLW91dGxpbmUtc3VjY2Vzczpob3ZlclxyXG57XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDI1NSwgMTM2LCAwLjE1KSAhaW1wb3J0YW50O1xyXG4gICAgY29sb3I6ICNmZmZmZmYgIWltcG9ydGFudDtcclxuICAgIGJveC1zaGFkb3c6IDAgMCAxMHB4IHJnYmEoMCwgMjU1LCAxMzYsIDAuOCksIGluc2V0IDAgMCAxMHB4IHJnYmEoMCwgMjU1LCAxMzYsIDAuNSk7XHJcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTJweCk7XHJcbn1cclxuXHJcbi5tb2RhbFN0eWxlIC5idG4tb3V0bGluZS1zZWNvbmRhcnlcclxuXHJcbntcclxuICAgIGNvbG9yOiAjYzRlNWVlICFpbXBvcnRhbnQ7XHJcbiAgICBib3JkZXItY29sb3I6ICNjNGU1ZWUgIWltcG9ydGFudDtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG4gICAgYm94LXNoYWRvdzogMCAwIDEwcHggcmdiYSgxOTYsIDIyOSwgMjM4LCAwLjMpO1xyXG59XHJcblxyXG4ubW9kYWxTdHlsZSAuYnRuLW91dGxpbmUtc2Vjb25kYXJ5OmhvdmVyXHJcbntcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMTk2LCAyMjksIDIzOCwgMC4xNSkgIWltcG9ydGFudDtcclxuICAgIGNvbG9yOiAjZmZmZmZmICFpbXBvcnRhbnQ7XHJcbiAgICBib3gtc2hhZG93OiAwIDAgMTBweCByZ2JhKDE5NiwgMjI5LCAyMzgsIDAuOCksIGluc2V0IDAgMCAxMHB4IHJnYmEoMTk2LCAyMjksIDIzOCwgMC41KTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMnB4KTtcclxufVxyXG5cclxuLnJlcXVpcmVkU3R5bGV7XHJcbiAgICBjb2xvcjogd2hpdGUgIWltcG9ydGFudDtcclxufVxyXG5cclxuLm1vZGFsU3R5bGUgLm1vZGFsLWZvb3RlciB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDExLCAyNSwgNDEsIDAuNSkgIWltcG9ydGFudDtcclxuICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHJnYmEoMCwgMjQzLCAyNTUsIDAuMykgIWltcG9ydGFudDtcclxuICAgIGNvbG9yOiAjZmZmO1xyXG59XHJcblxyXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4jIFJlc3BvbnNpdmUgbW9kYWwgdGFicyBhbmQgdGFibGUgb3ZlcmZsb3dcclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cclxuQG1lZGlhIChtYXgtd2lkdGg6IDk5MS45OHB4KSB7XHJcbiAgICAubW9kYWxTdHlsZSAubmF2LXRhYnMge1xyXG4gICAgICAgIG92ZXJmbG93LXg6IGF1dG87XHJcbiAgICAgICAgb3ZlcmZsb3cteTogaGlkZGVuO1xyXG4gICAgICAgIGZsZXgtd3JhcDogbm93cmFwO1xyXG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA0cHg7XHJcbiAgICB9XHJcblxyXG4gICAgLm1vZGFsU3R5bGUgLm5hdi10YWJzIC5uYXYtaXRlbSB7XHJcbiAgICAgICAgZmxleDogMCAwIGF1dG87XHJcbiAgICB9XHJcblxyXG4gICAgLm1vZGFsU3R5bGUgLnRhYmxlIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBvdmVyZmxvdy14OiBhdXRvO1xyXG4gICAgICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcclxuICAgIH1cclxuXHJcbiAgICAubW9kYWxTdHlsZSAuYnRuIHtcclxuICAgICAgICBtYXJnaW4tcmlnaHQ6IDAgIWltcG9ydGFudDtcclxuICAgIH1cclxuXHJcbiAgICAubW9kYWxTdHlsZSAubW9kYWwtZm9vdGVyIHtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgICAgICBnYXA6IDhweDtcclxuICAgIH1cclxuXHJcbiAgICAubW9kYWxTdHlsZSAubW9kYWwtZm9vdGVyIC5idG4ge1xyXG4gICAgICAgIGZsZXg6IDEgMSAxODBweDtcclxuICAgIH1cclxufVxyXG5cclxuQG1lZGlhIChtYXgtd2lkdGg6IDU3NS45OHB4KSB7XHJcbiAgICAubW9kYWxTdHlsZSAubW9kYWwtZm9vdGVyIC5idG4ge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICAgIGZsZXg6IDEgMSAxMDAlO1xyXG4gICAgfVxyXG5cclxuICAgIC5tb2RhbFN0eWxlIC50YWJsZSB0aCxcclxuICAgIC5tb2RhbFN0eWxlIC50YWJsZSB0ZCB7XHJcbiAgICAgICAgZm9udC1zaXplOiAxMnB4O1xyXG4gICAgICAgIHBhZGRpbmc6IDZweDtcclxuICAgIH1cclxufVxyXG4iLCIubmF2YmFyLWxvY2FsZS1zd2l0Y2gsXG4uYXV0aC1sb2dpbi1sb2NhbGUtYmFyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgIG1pbi13aWR0aDogMTI2cHg7XG59XG5cbi5hdXRoLWxvZ2luLWxvY2FsZS1iYXIge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1ib3R0b206IDEuMjVyZW07XG59XG5cbi5hdXRoLWxvZ2luLWxvY2FsZS1zd2l0Y2gsXG4ubmF2YmFyLWxvY2FsZS1zd2l0Y2gge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuXG4ubG9jYWxlLXNlbGVjdC1zaGVsbCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgxMTYsIDIzNCwgMjU1LCAwLjM1KTtcbiAgICBib3JkZXItcmFkaXVzOiA5OTlweDtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDQsIDM2LCA1NywgMC44Mik7XG4gICAgYm94LXNoYWRvdzogMCAxNHB4IDI4cHggcmdiYSgyLCAxNiwgMjksIDAuMTgpO1xuICAgIG1pbi1oZWlnaHQ6IDQycHg7XG4gICAgdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIDAuMnMgZWFzZSwgYm94LXNoYWRvdyAwLjJzIGVhc2UsIHRyYW5zZm9ybSAwLjJzIGVhc2U7XG59XG5cbi5sb2NhbGUtc2VsZWN0LXNoZWxsOmhvdmVyIHtcbiAgICBib3JkZXItY29sb3I6IHJnYmEoMTE2LCAyMzQsIDI1NSwgMC42Mik7XG4gICAgYm94LXNoYWRvdzogMCAxOHB4IDM0cHggcmdiYSgyLCAxNiwgMjksIDAuMjQpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMXB4KTtcbn1cblxuI2tpdC1sb2NhbGUtc2VsZWN0LmZvcm0tc2VsZWN0LXNtLFxuLmxvY2FsZS1zZWxlY3QtZW5oYW5jZWQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAyO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1pbi13aWR0aDogMTI2cHg7XG4gICAgaGVpZ2h0OiA0MnB4O1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbWFyZ2luOiAwO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgYm9yZGVyOiAwO1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG59XG5cbi5sb2NhbGUtc2VsZWN0LWxhYmVsIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgaW5zZXQ6IDA7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgZ2FwOiAwLjQ1cmVtO1xuICAgIHBhZGRpbmc6IDAgMnJlbSAwIDIuM3JlbTtcbiAgICBjb2xvcjogI2U4ZmJmZjtcbiAgICBmb250LXNpemU6IDAuOXJlbTtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGxldHRlci1zcGFjaW5nOiAwLjAxZW07XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XG59XG5cbi5sb2NhbGUtc2VsZWN0LWxhYmVsOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwi8J+MkFwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwLjg1cmVtO1xuICAgIHRvcDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICBmb250LXNpemU6IDFyZW07XG59XG5cbi5sb2NhbGUtc2VsZWN0LWxhYmVsOjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDAuOTVyZW07XG4gICAgdG9wOiA1MCU7XG4gICAgd2lkdGg6IDAuNXJlbTtcbiAgICBoZWlnaHQ6IDAuNXJlbTtcbiAgICBib3JkZXItcmlnaHQ6IDJweCBzb2xpZCByZ2JhKDIzMiwgMjUxLCAyNTUsIDAuODYpO1xuICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCByZ2JhKDIzMiwgMjUxLCAyNTUsIDAuODYpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNjUlKSByb3RhdGUoNDVkZWcpO1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjJzIGVhc2U7XG59XG5cbi5sb2NhbGUtc2VsZWN0LXNoZWxsLmlzLW9wZW4gLmxvY2FsZS1zZWxlY3QtbGFiZWw6OmFmdGVyIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTE1JSkgcm90YXRlKDIyNWRlZyk7XG59XG5cbi5sb2NhbGUtc2VsZWN0LWxhYmVsW2RhdGEtbG9jYWxlXj1cImVuXCJdOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwi8J+HuvCfh7hcIjtcbn1cblxuLmxvY2FsZS1zZWxlY3QtbGFiZWxbZGF0YS1sb2NhbGVePVwiZXNcIl06OmJlZm9yZSB7XG4gICAgY29udGVudDogXCLwn4eq8J+HuFwiO1xufVxuXG4ubG9jYWxlLXNlbGVjdC1sYWJlbFtkYXRhLWxvY2FsZV49XCJwdFwiXTo6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIvCfh6fwn4e3XCI7XG59XG5cbi5sb2NhbGUtc2VsZWN0LWxhYmVsW2RhdGEtbG9jYWxlXj1cImZyXCJdOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwi8J+Hq/Cfh7dcIjtcbn1cblxuLmxvY2FsZS1zZWxlY3QtbWVudSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogY2FsYygxMDAlICsgMC41NXJlbSk7XG4gICAgcmlnaHQ6IDA7XG4gICAgbWluLXdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmc6IDAuNDVyZW07XG4gICAgYm9yZGVyLXJhZGl1czogMXJlbTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDExNiwgMjM0LCAyNTUsIDAuMjYpO1xuICAgIGJhY2tncm91bmQ6IHJnYmEoNCwgMzYsIDU3LCAwLjk3KTtcbiAgICBib3gtc2hhZG93OiAwIDIycHggMzhweCByZ2JhKDIsIDE2LCAyOSwgMC4zKTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTZweCk7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzIGVhc2UsIHRyYW5zZm9ybSAwLjJzIGVhc2UsIHZpc2liaWxpdHkgMC4ycyBlYXNlO1xuICAgIHotaW5kZXg6IDI1O1xufVxuXG4ubG9jYWxlLXNlbGVjdC1zaGVsbC5pcy1vcGVuIC5sb2NhbGUtc2VsZWN0LW1lbnUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG59XG5cbi5sb2NhbGUtc2VsZWN0LW9wdGlvbiB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGdhcDogMC42NXJlbTtcbiAgICBib3JkZXI6IDA7XG4gICAgYm9yZGVyLXJhZGl1czogMC44cmVtO1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIGNvbG9yOiAjZThmYmZmO1xuICAgIHBhZGRpbmc6IDAuN3JlbSAwLjg1cmVtO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4ycyBlYXNlLCBjb2xvciAwLjJzIGVhc2U7XG59XG5cbi5sb2NhbGUtc2VsZWN0LW9wdGlvbjpob3Zlcixcbi5sb2NhbGUtc2VsZWN0LW9wdGlvbi5pcy1hY3RpdmUge1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMTE3LCAyMzQsIDI1NSwgMC4xOCk7XG4gICAgY29sb3I6ICM3NWVhZmY7XG59XG5cbi5sb2NhbGUtc2VsZWN0LW9wdGlvbi1mbGFnIHtcbiAgICBmb250LXNpemU6IDFyZW07XG4gICAgbGluZS1oZWlnaHQ6IDE7XG59XG5cbi5sb2NhbGUtc2VsZWN0LW9wdGlvbi1mbGFnOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwi8J+MkFwiO1xufVxuXG4ubG9jYWxlLXNlbGVjdC1vcHRpb25bZGF0YS1sb2NhbGVePVwiZW5cIl0gLmxvY2FsZS1zZWxlY3Qtb3B0aW9uLWZsYWc6OmJlZm9yZSB7XG4gICAgY29udGVudDogXCLwn4e68J+HuFwiO1xufVxuXG4ubG9jYWxlLXNlbGVjdC1vcHRpb25bZGF0YS1sb2NhbGVePVwiZXNcIl0gLmxvY2FsZS1zZWxlY3Qtb3B0aW9uLWZsYWc6OmJlZm9yZSB7XG4gICAgY29udGVudDogXCLwn4eq8J+HuFwiO1xufVxuXG4ubG9jYWxlLXNlbGVjdC1vcHRpb25bZGF0YS1sb2NhbGVePVwicHRcIl0gLmxvY2FsZS1zZWxlY3Qtb3B0aW9uLWZsYWc6OmJlZm9yZSB7XG4gICAgY29udGVudDogXCLwn4en8J+Ht1wiO1xufVxuXG4ubG9jYWxlLXNlbGVjdC1vcHRpb25bZGF0YS1sb2NhbGVePVwiZnJcIl0gLmxvY2FsZS1zZWxlY3Qtb3B0aW9uLWZsYWc6OmJlZm9yZSB7XG4gICAgY29udGVudDogXCLwn4er8J+Ht1wiO1xufVxuXG4ubG9jYWxlLXNlbGVjdC1vcHRpb24tdGV4dCB7XG4gICAgZm9udC1zaXplOiAwLjlyZW07XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBsZXR0ZXItc3BhY2luZzogMC4wMWVtO1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgICAubmF2YmFyLWxvY2FsZS1zd2l0Y2gsXG4gICAgLmF1dGgtbG9naW4tbG9jYWxlLWJhciB7XG4gICAgICAgIG1pbi13aWR0aDogODJweDtcbiAgICB9XG5cbiAgICAubG9jYWxlLXNlbGVjdC1zaGVsbCB7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDM4cHg7XG4gICAgfVxuXG4gICAgI2tpdC1sb2NhbGUtc2VsZWN0LmZvcm0tc2VsZWN0LXNtLFxuICAgIC5sb2NhbGUtc2VsZWN0LWVuaGFuY2VkIHtcbiAgICAgICAgbWluLXdpZHRoOiA4MnB4O1xuICAgICAgICBoZWlnaHQ6IDM4cHg7XG4gICAgfVxuXG4gICAgLmxvY2FsZS1zZWxlY3QtbGFiZWwge1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgcGFkZGluZzogMCAxLjg1cmVtIDAgMS44NXJlbTtcbiAgICAgICAgZm9udC1zaXplOiAwLjgycmVtO1xuICAgIH1cblxuICAgIC5sb2NhbGUtc2VsZWN0LWxhYmVsOjpiZWZvcmUge1xuICAgICAgICBsZWZ0OiAwLjZyZW07XG4gICAgfVxuXG4gICAgLmxvY2FsZS1zZWxlY3QtbGFiZWw6OmFmdGVyIHtcbiAgICAgICAgcmlnaHQ6IDAuNzVyZW07XG4gICAgfVxuXG4gICAgLmxvY2FsZS1zZWxlY3QtbWVudSB7XG4gICAgICAgIG1pbi13aWR0aDogMTIwcHg7XG4gICAgfVxufVxuIl0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9*/