/* src/main/frontend/css/style.css */
:root {
  --color-bg-gradient-start: #5091DD;
  --color-bg-gradient-end: #030617;
  --color-bg-main: #F4F7F8;
  --color-bg-dark: #36454F;
  --color-bg-light: #FFFFFF;
  --color-bg-extra: darkslategray;
  --color-bg-hover-dark: #36454F;
  --color-bg-hover-light: #F7F8F9;
  --color-highlight: #60a5fa;
  --color-link: #1d4ed8;
  --color-link-hover: #1e40af;
  --color-link-underline: rgba(29, 78, 216, 0.35);
  --color-pos-first: #FFD700;
  --color-pos-second: #C0C0C0;
  --color-pos-third: #CD7F32;
  --color-pos-four-five: #AABFC9;
  --color-error: #D32F2F;
  --color-error-bg: rgba(220, 38, 38, 0.05);
  --border-color-light: #E5E5E5;
  --border-color-standard: lightgray;
  --border-color-dark: #36454F;
  --border-width-sm: 1px;
  --border-width-md: 2px;
  --border-width-xl: 3px;
  --border-radius: 8px;
  --space-xs: 4px;
  --space-sm: 8px;
  --space-md: 12px;
  --space-lg: 16px;
  --space-xl: 24px;
  --font-heading:
    "PillGothic300mgBold",
    "Lucida Grande",
    Helvetica,
    Arial,
    sans-serif;
  --font-base: Arial, sans-serif;
  --font-size-3xs: 0.625rem;
  --font-size-2xs: 0.6875rem;
  --font-size-xs: 0.75rem;
  --font-size-sm: 0.8125rem;
  --font-size-md: 0.875rem;
  --font-size-base: 1rem;
  --font-size-lg: 1.125rem;
  --font-size-xl: 1.25rem;
  --font-size-2xl: 1.5rem;
  --font-size-3xl: 1.875rem;
  --font-size-4xl: 2.5rem;
  --font-weight-bold: 600;
  --font-color-dark: #36454F;
  --font-color-light: #F4F7F8;
  --z-index-table-sticky: 2;
  --z-index-table-sticky-head: 3;
  --z-index-sticky-header: 10;
  --z-index-loading-overlay: 20;
  --z-index-dropdown: 500;
  --z-index-backdrop: 990;
  --z-index-drawer: 1000;
  --z-index-modal: 1050;
}
html {
  font-family: var(--font-base);
  background:
    radial-gradient(
      ellipse at bottom,
      var(--color-bg-gradient-start) 0%,
      var(--color-bg-gradient-end) 100%) no-repeat fixed;
  color: var(--font-color-dark);
}
body {
  font-size: var(--font-size-base);
  display: grid;
  margin: 0;
  overflow-wrap: break-word;
  word-break: break-word;
}
p {
  margin: 5px 0;
}
h1,
h2,
h3,
h4,
h5 {
  font-family: var(--font-heading);
  color: var(--font-color-dark);
  margin: 20px 0 10px 0;
}
.footer h1,
.footer h2,
.footer h3,
.footer h4,
.footer h5 {
  color: var(--font-color-light);
}
a,
a:link,
a:visited {
  color: var(--color-link);
  text-decoration: none;
}
a:hover,
a:active {
  color: var(--color-link-hover);
  text-decoration: underline;
}
.header .patreon {
  font-size: var(--font-size-3xl);
}
.header .patreon a,
.header .patreon a:link,
.header .patreon a:visited {
  color: var(--color-bg-dark);
  text-decoration: none;
  transition: color 0.15s ease;
}
.header .patreon a:is(:hover, :focus-visible, :active) {
  color: var(--color-link);
}
.font-bold {
  font-weight: var(--font-weight-bold);
}
.font-muted {
  color: var(--font-color-dark);
}
.font-color-light {
  color: var(--font-color-light);
}
.text-center {
  text-align: center;
}
.hidden {
  display: none !important;
}
.no-list-markers {
  list-style-type: none;
}
input[type=submit],
input[type=file],
select {
  background-color: var(--color-bg-light);
}
textarea,
input[type=password],
input[type=text],
input[type=email] {
  background-color: var(--color-bg-light);
}
textarea,
input[type=submit],
input[type=file],
input[type=password],
input[type=text],
input[type=email],
select {
  border: var(--border-width-md) solid var(--border-color-light);
  border-radius: var(--border-radius);
  color: var(--font-color-dark);
  cursor: pointer;
  padding: var(--space-sm) var(--space-md);
}
input[type=checkbox] {
  margin: 0;
}
table {
  font-size: var(--font-size-sm);
  border-collapse: separate;
  border-spacing: 0;
  background: var(--color-bg-light);
  width: 100%;
  border-radius: var(--border-radius);
  border: var(--border-width-sm) solid var(--border-color-light);
  overflow: hidden;
}
table thead {
  font-family: var(--font-heading);
  color: var(--color-bg-light);
  text-transform: none;
}
table thead tr th,
table thead tr td {
  padding: var(--space-md) var(--space-lg);
  color: white;
  background: var(--color-bg-dark);
  white-space: nowrap;
  text-align: left;
  border-bottom: var(--border-width-sm) solid var(--border-color-light);
  font-weight: var(--font-weight-bold);
}
table thead a,
table thead a:is(:link, :visited, :hover, :active, :focus, :focus-visible) {
  color: var(--font-color-light);
  text-decoration-color: currentColor;
}
.flex-row-item--world-record a,
.flex-row-item--world-record a:is(:link, :visited, :hover, :active, :focus, :focus-visible),
.flex-row--news-footer a,
.flex-row--news-footer a:is(:link, :visited, :hover, :active, :focus, :focus-visible),
.side-area a,
.side-area a:is(:link, :visited, :hover, :active, :focus, :focus-visible),
table tbody a,
table tbody a:is(:link, :visited, :hover, :active, :focus, :focus-visible) {
  color: var(--font-color-dark);
  text-decoration-color: currentColor;
}
table tbody tr th,
table tbody tr td {
  padding: var(--space-sm) var(--space-md);
  white-space: nowrap;
  color: var(--font-color-dark);
  border-bottom: var(--border-width-sm) solid var(--border-color-light);
  text-align: left;
}
table tbody tr:last-child td {
  border-bottom: none;
}
table tbody tr:hover {
  background-color: var(--color-bg-hover-light);
  transition: background-color 0.15s ease;
}
table tbody tr:nth-child(odd) {
  background-color: var(--color-bg-hover-light);
}
.sticky-table {
  overflow-x: auto;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  overscroll-behavior-x: contain;
}
.sticky-table table {
  overflow: visible;
}
.sticky-table table thead tr:first-child th:first-child,
.sticky-table table thead tr:first-child td:first-child {
  border-top-left-radius: calc(var(--border-radius) - var(--border-width-sm));
}
.sticky-table table thead tr:first-child th:last-child,
.sticky-table table thead tr:first-child td:last-child {
  border-top-right-radius: calc(var(--border-radius) - var(--border-width-sm));
}
.sticky-table table tbody tr:last-child th:first-child,
.sticky-table table tbody tr:last-child td:first-child {
  border-bottom-left-radius: calc(var(--border-radius) - var(--border-width-sm));
}
.sticky-table table tbody tr:last-child th:last-child,
.sticky-table table tbody tr:last-child td:last-child {
  border-bottom-right-radius: calc(var(--border-radius) - var(--border-width-sm));
}
.sticky-table--compare table thead h3 {
  color: var(--font-color-light);
  margin: var(--space-xs);
}
.sticky-table--compare table td {
  background-color: var(--color-bg-light);
}
.sticky-table--hardware-results table tbody tr td:nth-child(even),
.sticky-table--compare table tbody tr td:nth-child(even) {
  background-color: var(--color-bg-hover-light);
}
.sticky-table--compare table thead tr th {
  background-color: var(--color-bg-dark);
  color: #ffffff;
  border-right: var(--border-width-sm) solid var(--border-color-light);
}
.sticky-table table thead th.sticky-col,
.sticky-table table thead td.sticky-col,
.sticky-table--compare table thead th.sticky-col {
  position: -webkit-sticky;
  position: sticky;
  left: 0;
  z-index: var(--z-index-table-sticky-head, 3);
  background-color: var(--color-bg-dark);
  background-clip: padding-box;
  box-shadow: 2px 0 5px rgba(0, 0, 0, 0.08);
}
.sticky-table table tbody th.sticky-col,
.sticky-table table tbody td.sticky-col,
.sticky-table--compare table tbody th.sticky-col {
  position: -webkit-sticky;
  position: sticky;
  left: 0;
  z-index: var(--z-index-table-sticky, 2);
  background-color: var(--color-bg-light);
  background-clip: padding-box;
  box-shadow: 2px 0 5px rgba(0, 0, 0, 0.08);
}
body.waiting,
body.waiting * {
  cursor: wait;
}
.table-navigation {
  display: flex;
  justify-content: center;
  margin-top: var(--space-md);
}
.table-navigation .pagination {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  align-items: center;
}
.table-navigation .pagination li:not(:last-child) {
  margin-right: var(--space-xs);
}
.table-navigation .pagination .button {
  min-width: 32px;
  height: 32px;
  padding: 0 var(--space-xs);
  border-radius: var(--border-radius);
  border: var(--border-width-sm) solid var(--border-color-light);
  background-color: var(--color-bg-light);
  color: var(--font-color-dark);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  transition: background-color 0.15s ease, color 0.15s ease;
}
.table-navigation .pagination .button.button--primary,
.table-navigation .pagination .button.focus {
  background-color: var(--font-color-dark);
  color: #ffffff;
  border-color: var(--font-color-dark);
}
.table-navigation .pagination .button:not(.button--primary):not(.focus):hover {
  background-color: var(--color-bg-hover-light, #f3f4f6);
}
.table-avatar-wrapper {
  display: flex;
  align-items: center;
  gap: var(--space-md);
}
.table-avatar-wrapper img {
  width: 30px;
  height: 30px;
  border-radius: 50%;
}
.table-avatar-wrapper .participant {
  width: 130px;
  overflow: hidden;
  text-overflow: ellipsis;
}
.table-avatar-wrapper--followers {
  background: var(--color-bg-light);
  border: var(--border-width-sm) solid var(--border-color-light);
  border-radius: var(--border-radius);
  padding: var(--space-xs) var(--space-sm);
  box-sizing: border-box;
  transition: background-color 0.15s ease, border-color 0.15s ease;
}
.table-avatar-wrapper--followers:hover {
  background: var(--color-bg-hover-light);
  border-color: var(--border-color-standard);
}
.table-first-pos {
  border-left: 5px solid var(--color-pos-first);
}
.table-second-pos {
  border-left: 5px solid var(--border-color-light);
}
.table-third-pos {
  border-left: 5px solid var(--color-pos-third);
}
.table-pos {
  border-left: 5px solid lightgrey;
}
.scrollable-table-wrapper {
  max-height: 200px;
  overflow-y: auto;
  overflow-x: auto;
  border: var(--border-width-sm) solid var(--border-color-light);
  border-radius: var(--border-radius);
  background: var(--color-bg-light);
}
.scrollable-table-wrapper table {
  border: none;
  border-radius: 0;
  margin: 0;
  overflow: visible;
}
.scrollable-table-wrapper table thead tr th,
.scrollable-table-wrapper table thead tr td {
  position: -webkit-sticky;
  position: sticky;
  top: 0;
  z-index: 10;
  background: var(--color-bg-dark);
}
body.search-open {
  overflow: hidden;
}
.global-search-backdrop {
  display: none;
  position: fixed;
  inset: 0;
  width: 100vw;
  height: 100vh;
  background-color: rgba(3, 6, 23, 0.75);
  backdrop-filter: blur(4px);
  z-index: var(--z-index-backdrop, 990);
}
.global-search,
.global-search-wrapper {
  position: relative;
}
.global-search-button {
  font-size: var(--font-size-lg);
}
.global-search-autocomplete {
  font-size: var(--font-size-sm);
  background: #030617;
  border-radius: 0 0 8px 8px;
  box-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.5);
  overflow: hidden;
}
.global-search-autocomplete-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 8px 12px;
  background: #030617;
  border-bottom: 1px solid rgba(255, 255, 255, 0.08);
  color: #94a3b8;
}
.global-search-header-tools {
  display: flex;
  align-items: center;
  gap: 8px;
}
.global-search-spinner {
  display: inline-flex;
  align-items: center;
  color: #38bdf8;
}
.global-search-content {
  padding: 8px 12px 24px;
  background-color: var(--color-bg-dark);
}
.global-search-content .category-header {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 8px 12px;
  background: rgba(255, 255, 255, 0.08);
  border-radius: 6px;
  color: #cbd5e1;
  font-weight: var(--font-weight-bold);
  letter-spacing: 0.05em;
  text-transform: uppercase;
}
.global-search-content .category-header i {
  color: var(--color-highlight);
}
.global-search-content .category-badge {
  margin-left: auto;
  padding: 2px 7px;
  background: rgba(255, 255, 255, 0.15);
  border-radius: 10px;
  color: #ffffff;
}
.global-search-content .search-item-list {
  list-style: none;
  padding: 0;
  margin: 4px 0 0;
}
.global-search-content .search-item {
  border-bottom: 1px solid rgba(255, 255, 255, 0.06);
}
.global-search-content .search-item:last-child {
  border-bottom: none;
}
.global-search-content .item-link,
.global-search-content .item-link:link,
.global-search-content .item-link:visited {
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: 25px;
  padding: 10px 12px;
  color: #f8fafc;
  text-decoration: none;
  border-radius: 4px;
  transition:
    background-color 0.15s ease,
    color 0.15s ease,
    transform 0.15s ease;
}
.global-search-content .item-link:hover,
.global-search-content .item-link:focus,
.global-search-content .item-link:active,
.global-search-content .item-link.is-active {
  background-color: rgba(255, 255, 255, 0.12);
  color: #ffffff;
  outline: none;
}
.global-search-content .item-arrow {
  color: #64748b;
  transition: color 0.15s ease, transform 0.15s ease;
}
.global-search-content .item-link:is(:hover, :focus, :active, .is-active) .item-arrow {
  color: #38bdf8;
  transform: translateX(3px);
}
.global-search-content .search-empty-state,
.global-search-content .search-prompt-state {
  padding: 40px 20px;
  text-align: center;
  color: #94a3b8;
}
.global-search-content .empty-icon,
.global-search-content .prompt-icon {
  margin-bottom: 12px;
  color: #64748b;
}
.global-search-content .prompt-icon {
  color: var(--color-highlight);
}
.global-search-content .empty-title,
.global-search-content .prompt-title {
  margin-bottom: 6px;
  color: #f1f5f9;
  font-size: var(--font-size-lg);
  font-weight: var(--font-weight-bold);
}
.global-search-content .empty-subtitle,
.global-search-content .prompt-subtitle {
  display: block;
  max-width: 320px;
  margin: 0 auto;
  font-size: var(--font-size-sm);
  line-height: 1.4;
}
.navigation {
  display: flex;
  flex-direction: row;
  width: 100%;
  background: var(--color-bg-dark);
  text-transform: capitalize;
}
.nav {
  position: relative;
  display: flex;
  width: 100%;
  font-family: var(--font-heading);
}
.nav__mobile-bar {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  width: 100%;
  padding: 6px 16px;
  box-sizing: border-box;
}
.nav__mobile-actions {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-left: auto;
}
.nav__dropdown {
  position: relative;
}
.nav__account-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  height: 40px;
  padding: 0 12px;
  background: rgba(255, 255, 255, 0.08);
  border: 1px solid rgba(255, 255, 255, 0.15);
  border-radius: 6px;
  color: var(--font-color-light);
  cursor: pointer;
  user-select: none;
  transition:
    background 0.2s ease,
    border-color 0.2s ease,
    color 0.2s ease;
}
.nav__account-btn:is(:hover, :focus-visible),
.nav__dropdown--open .nav__account-btn {
  background: rgba(255, 255, 255, 0.15);
  border-color: rgba(255, 255, 255, 0.3);
  color: #ffffff;
}
.nav__account-btn:focus-visible {
  outline: 2px solid var(--font-color-dark, #006ee0);
  outline-offset: 2px;
}
.nav__caret {
  font-size: var(--font-size-3xs);
  color: #38bdf8;
  transition: transform 0.2s ease, color 0.2s ease;
}
.nav__dropdown--open .nav__caret {
  transform: rotate(180deg);
  color: #38bdf8;
}
.nav__dropdown-menu {
  position: absolute;
  top: calc(100% + 8px);
  right: 0;
  min-width: 200px;
  padding: 6px 0;
  background: var(--color-bg-light);
  border: var(--border-width-sm) solid var(--border-color-light);
  border-radius: var(--border-radius);
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.18);
  overflow: hidden;
  z-index: var(--z-index-dropdown, 500);
  opacity: 0;
  visibility: hidden;
  transform: translateY(-6px);
  pointer-events: none;
  transition:
    opacity 0.2s ease,
    transform 0.2s ease,
    visibility 0.2s ease;
}
.nav__dropdown--open .nav__dropdown-menu {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
  pointer-events: auto;
}
.nav__dropdown-header {
  padding: 10px 16px;
  border-bottom: var(--border-width-sm) solid var(--border-color-light);
  background: var(--color-bg-hover-light);
}
.nav__dropdown-user {
  display: block;
  font-weight: var(--font-weight-bold);
  color: var(--font-color-dark);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.nav__dropdown-item,
.nav__dropdown-item:visited {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 10px 16px;
  color: var(--font-color-dark);
  text-decoration: none;
  transition: background 0.15s ease, color 0.15s ease;
}
.nav__dropdown-item:is(:hover, :focus-visible, :active) {
  background: var(--color-bg-hover-light);
  color: var(--font-color-dark);
  text-decoration: none;
}
.nav__dropdown-item i {
  width: 16px;
  text-align: center;
  color: #64748b;
  transition: color 0.15s ease;
}
.nav__dropdown-item:is(:hover, :focus-visible) i {
  color: var(--font-color-dark);
}
.nav__dropdown-divider {
  height: 1px;
  background: var(--border-color-light);
  margin: 4px 0;
}
.nav__dropdown-item--logout,
.nav__dropdown-item--logout:visited {
  color: var(--color-error, #D32F2F);
}
.nav__dropdown-item--logout i {
  color: var(--color-error, #D32F2F);
}
.nav__dropdown-item--logout:is(:hover, :focus-visible, :active) {
  background: #fef2f2;
  color: #b91c1c;
}
.nav__dropdown-item--logout:is(:hover, :focus-visible) i {
  color: #b91c1c;
}
.nav__burger {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  background: transparent;
  border: none;
  border-radius: 6px;
  color: var(--font-color-light);
  font-size: var(--font-size-lg);
  cursor: pointer;
  user-select: none;
  transition: background 0.2s ease, color 0.2s ease;
}
.nav__burger i {
  font-size: inherit;
}
.nav__burger:is(:hover, :focus-visible) {
  background: rgba(255, 255, 255, 0.1);
  color: #ffffff;
}
.nav__overlay {
  display: none;
  position: fixed;
  inset: 0;
  width: 100vw;
  height: 100vh;
  background-color: rgba(3, 6, 23, 0.7);
  backdrop-filter: blur(2px);
  z-index: var(--z-index-backdrop, 990);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity 0.3s ease, visibility 0.3s ease;
}
.nav__drawer {
  width: 100%;
}
.nav__drawer-header {
  display: none;
  align-items: center;
  justify-content: space-between;
  padding: 16px 20px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}
.nav__drawer-title {
  color: #ffffff;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}
.nav__close {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  background: transparent;
  border: none;
  border-radius: 6px;
  color: var(--font-color-light);
  cursor: pointer;
  transition: background 0.2s ease, color 0.2s ease;
}
.nav__close:is(:hover, :focus-visible) {
  background: rgba(255, 255, 255, 0.1);
  color: #ffffff;
}
.nav__list {
  list-style: none;
  margin: 0;
  padding: 0;
}
.nav__item {
  position: relative;
}
.nav__link,
.nav__link:link,
.nav__link:visited {
  display: flex;
  align-items: center;
  padding: 12px 16px;
  color: var(--font-color-light);
  font-weight: var(--font-weight-bold);
  letter-spacing: 0.3px;
  text-decoration: none;
  white-space: nowrap;
  transition: background 0.2s ease, color 0.2s ease;
}
.nav__link:is(:hover, :focus-visible, :active) {
  background: var(--color-bg-hover-dark);
  color: var(--font-color-light);
  text-decoration: none;
}
.nav__link-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
}
.nav__sub-toggle {
  display: none;
}
.nav__sub {
  list-style: none;
  margin: 0;
  padding: 0;
}
.nav__sub-link,
.nav__sub-link:link,
.nav__sub-link:visited {
  display: block;
  padding: 10px 18px;
  color: var(--font-color-dark);
  text-decoration: none;
  transition: background 0.15s ease, color 0.15s ease;
}
.nav__sub-link:is(:hover, :focus-visible, :active) {
  background: var(--color-bg-hover-dark);
  color: var(--font-color-light);
  text-decoration: none;
}
.nav__item--cta {
  display: flex;
  align-items: center;
}
.nav__link--cta {
  gap: 6px;
}
.nav__link--cta i {
  color: #38bdf8;
  transition: color 0.2s ease;
}
.nav__link--cta:is(:hover, :focus-visible) i {
  color: var(--color-highlight);
}
.main-area {
  display: grid;
  gap: var(--space-lg);
  background: var(--color-bg-main);
  overflow: auto;
  min-height: 900px;
  padding: var(--space-lg) 0;
  align-content: start;
  background-image:
    radial-gradient(
      ellipse 65% 55% at 50% 55%,
      rgba(190, 225, 255, 0.7) 0%,
      rgba(215, 235, 255, 0.35) 45%,
      rgba(255, 255, 255, 0) 75%);
  background-repeat: no-repeat;
}
.side-area {
  font-size: var(--font-size-sm);
  background: var(--color-bg-main);
  padding: var(--space-lg) 0;
}
.side-area--tree {
  background: var(--color-bg-light);
}
.footer {
  background: var(--color-bg-hover-dark);
  font-weight: var(--font-weight-bold);
  color: var(--font-color-light);
}
.footer a,
.footer a:link,
.footer a:visited {
  color: var(--font-color-light);
}
.footer a:is(:hover, :focus-visible, :active) {
  color: #ffffff;
  text-decoration: underline;
}
.content {
  display: grid;
  grid-template-columns: 20px minmax(0, 1fr) 20px;
  row-gap: 10px;
  font-size: var(--font-size-sm);
}
.content > * {
  grid-column: 2;
}
.content > .flex-row--world-records {
  grid-column: 1/-1;
}
.sub-content {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.hero-banner {
  width: 100%;
  box-sizing: border-box;
  background: var(--color-bg-extra);
  border-radius: var(--border-radius);
  padding: var(--space-lg) var(--space-md);
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.hero-body {
  display: flex;
  flex-direction: column;
  gap: var(--space-xs);
}
.hero-title {
  font-weight: var(--font-weight-bold);
  color: var(--font-color-light);
  margin: 0;
}
.hero-subtitle {
  color: var(--font-color-light);
  margin: 0;
}
.hardware-hero-section {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
  margin-bottom: 24px;
}
.hardware-hero-image-card {
  flex: 1 1 300px;
  max-width: 100%;
  background: #ffffff;
  border: 1px solid #e2e8f0;
  border-radius: 8px;
  padding: 16px;
  display: flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
}
.hardware-benchmark-image-wrapper img {
  max-width: 100%;
  height: auto;
  object-fit: contain;
}
.hardware-hero-stats-grid {
  flex: 2 1 320px;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 12px;
}
.hardware-hero-stat-card {
  background: #ffffff;
  border: 1px solid #e2e8f0;
  border-radius: 8px;
  padding: 16px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;
  box-sizing: border-box;
}
.hardware-hero-stat-card h3 {
  font-size: var(--font-size-xl);
  font-weight: 700;
  color: #0f172a;
  margin: 0 0 4px 0;
  text-align: center;
}
.hardware-sub-label {
  color: #64748b;
  margin: 0 0 8px 0;
  text-align: center;
}
.hardware-stat-label {
  color: #64748b;
  margin: 0;
  text-align: center;
}
.hardware-family-link {
  color: var(--color-link);
  text-decoration: none;
  margin-top: 6px;
  text-align: center;
}
.hardware-family-link:hover {
  color: var(--color-link-hover);
  text-decoration: underline;
  text-underline-offset: 2px;
}
.hardware-tab-menu {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 6px;
  margin-top: 8px;
  width: 100%;
}
.hardware-tab-menu .button {
  flex: 1 1 auto;
  text-align: center;
  padding: 6px 12px;
}
.image-modal {
  display: none;
  position: fixed;
  z-index: 1;
  padding: 50px 0 0 0;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  overflow: auto;
  background-color: rgb(0, 0, 0);
  background-color: rgba(0, 0, 0, 0.9);
}
.image-modal-content {
  margin: auto auto;
  display: block;
  max-width: 80%;
  max-height: 90%;
}
.image-wrapper {
  width: 100%;
  overflow: hidden;
}
.image {
  max-width: 100%;
  height: auto;
  display: block;
}
.benchmark-image-wrapper {
  background: black;
  border-radius: var(--border-radius);
  align-content: center;
}
.benchmark-image-wrapper img {
  border: var(--border-width-sm) solid var(--border-color-light);
  border-radius: var(--border-radius);
  width: 100%;
  max-width: 400px;
}
.list li.stage-info {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  box-sizing: border-box;
  gap: var(--space-md);
}
.list li.stage-info:last-child {
  border-bottom: none;
}
.list li.stage-info:hover {
  background-color: #f9fafb;
}
.stage-info-title,
.stage-info-rank,
.stage-info-score,
.stage-info-target {
  box-sizing: border-box;
  display: flex;
  align-items: center;
}
.stage-info .text-muted {
  color: #9ca3af;
}
.stage-info .stage-link {
  color: var(--font-color-dark);
  text-decoration: none;
}
.stage-info .stage-link:hover {
  color: var(--color-link);
  text-decoration: underline;
  text-underline-offset: 2px;
}
.stage-info .score-value,
.stage-info .score-link {
  font-family:
    ui-monospace,
    SFMono-Regular,
    Menlo,
    Monaco,
    Consolas,
    monospace;
  color: var(--font-color-dark);
}
.stage-info .score-link {
  color: var(--color-link);
  text-decoration: none;
}
.stage-info .score-link:hover {
  color: var(--color-link-hover);
  text-decoration: underline;
  text-underline-offset: 2px;
}
.stage-info .fa-trophy {
  color: #f59e0b;
  margin-right: 4px;
}
.stage-info .target-icon {
  color: #ef4444;
  margin-right: 4px;
}
.grid-box {
  display: grid;
  gap: var(--space-md);
}
.grid-box--submit-hardware {
  grid-template-columns: auto auto;
}
.grid-box--submit-hardware > div {
  display: flex;
  flex-direction: column;
}
.grid-box--submit-hardware img {
  max-width: 120px;
  max-height: 120px;
  object-fit: contain;
  margin: 0 auto;
  border-radius: var(--border-radius);
  border: 1px solid var(--border-color-light);
}
.grid-box--hardware-result {
  grid-template-columns: 140px 120px 200px auto;
  align-items: center;
}
.grid-box--wall {
  grid-template-rows: repeat(2, 1fr);
  grid-auto-flow: column;
  overflow: auto;
  border: var(--border-width-sm) solid var(--border-color-light);
  border-radius: var(--border-radius);
  gap: 0;
}
.grid-box--achievement-info {
  grid-template-columns: 1fr;
  grid-template-rows: 1fr;
}
.grid-box--achievement,
.grid-box--partner {
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
}
.grid-box--highlight-submission,
.grid-box--submission-hardware {
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
}
.grid-box--compo,
.grid-box--profile,
.grid-box--submission-ranking {
  grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
}
.grid-box--benchmarks,
.grid-box--hardware-overview,
.grid-box--league-info,
.grid-box--news,
.grid-box--search {
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
}
.grid-box--profile-account-settings {
  grid-template-columns: repeat(auto-fit, minmax(min(280px, 100%), 500px));
}
.grid-box-card {
  display: flex;
  padding: var(--space-md);
  border-radius: var(--border-radius);
  background: var(--color-bg-light);
  border: var(--border-width-sm) solid var(--border-color-light);
  font-size: var(--font-size-sm);
}
.grid-box-card--submit-hardware {
  flex-direction: column;
  flex: 1;
}
.grid-box-card--compo-points-info {
  flex-direction: column;
  overflow: auto;
  max-height: 200px;
}
.grid-box-card--description {
  flex-direction: column;
  white-space: pre-line;
  overflow-wrap: break-word;
}
.grid-box-card--sidebar-ranking {
  position: relative;
  flex-direction: column;
  gap: var(--space-md);
  background: var(--color-bg-hover-light);
}
.grid-box-card--news {
  background: var(--color-bg-hover-light);
  position: relative;
  cursor: pointer;
  transition:
    transform 0.2s ease,
    box-shadow 0.2s ease,
    background-color 0.2s ease;
}
.grid-box-card--news .flex-row--news-footer a::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
}
.grid-box-card--news,
.grid-box-card--achievement {
  flex-direction: column;
  text-align: center;
}
.grid-box-card--benchmark-stats,
.grid-box-card--partner {
  flex-direction: column;
  text-align: center;
  justify-content: center;
  align-content: center;
}
.grid-box-card--news:hover {
  background-color: var(--color-bg-hover-light);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
  transform: translateY(-2px);
}
.grid-box-card--wall {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 10px 20px;
  border: none;
  border-radius: 0;
  white-space: nowrap;
  padding: 0 var(--space-md);
}
.grid-box-card--wall-ranking-info {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: var(--space-xl);
  padding: var(--space-sm) var(--space-md);
  border: none;
  border-radius: 0;
  border-top: var(--border-width-sm) solid var(--border-color-light);
  white-space: nowrap;
}
.grid-box-card--wall-ranking-info .grid-spec {
  width: auto;
  flex: 0 0 auto;
}
.grid-box-card--benchmarks {
  flex-direction: column;
  padding: 0;
  border-radius: 0;
  background: none;
  border: 0;
}
.grid-box-card--benchmarks,
.grid-box-card--compo,
.grid-box-card--hardware-overview,
.grid-box-card--highlight-submission,
.grid-box-card--league-info,
.grid-box-card--login,
.grid-box-card--profile,
.grid-box-card--register,
.grid-box-card--reset-password,
.grid-box-card--search,
.grid-box-card--submission-hardware,
.grid-box-card--top-filter {
  flex-direction: column;
}
.grid-box-card--highlight-submission {
  background: var(--color-bg-light);
  flex-direction: column;
}
.grid-spec {
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin: 0;
  padding: 0;
  width: 100%;
}
.grid-spec-row {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 5px 0;
  overflow: auto;
  border-bottom: 1px solid var(--border-color-light);
}
.grid-spec-row .table-avatar-wrapper > a {
  font-size: var(--font-size-lg);
}
.grid-spec-row--stacked {
  flex-direction: column;
  align-items: flex-start;
  gap: 5px;
  border-bottom: 1px solid var(--border-color-light);
}
.grid-spec-row:last-child {
  border-bottom: none;
}
.grid-spec-row .attribute {
  display: block;
  color: var(--font-color-dark);
}
.grid-spec-row .attribute-nowrap,
.grid-spec-row .attribute--nowrap {
  white-space: nowrap;
}
.grid-spec-row .value {
  display: block;
  color: var(--font-color-dark);
}
.grid-spec-row--stacked .value {
  text-align: left;
  width: 100%;
  margin: 0;
}
.font-bold--partner {
  color: var(--font-color-dark, #0f172a);
}
.modal-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background-color: rgba(0, 0, 0, 0.6);
  z-index: var(--z-index-modal, 1050);
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity 0.35s cubic-bezier(0.4, 0, 0.2, 1), visibility 0.35s cubic-bezier(0.4, 0, 0.2, 1);
}
.modal-overlay.is-open {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}
.modal-dialog {
  background: var(--color-bg-main);
  width: 90%;
  max-width: 1200px;
  max-height: 85vh;
  border-radius: var(--border-radius);
  display: flex;
  flex-direction: column;
  overflow: hidden;
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2);
}
.modal-dialog--result-history {
  max-width: 600px;
}
.modal-dialog--result-moderation {
  max-width: 800px;
}
.modal-dialog--social {
  max-width: 480px;
}
.modal-header {
  padding: var(--space-sm) var(--space-lg);
  display: flex;
  justify-content: space-between;
  align-items: center;
  border-bottom: var(--border-width-sm) solid var(--border-color-light);
}
.modal-body {
  padding: var(--space-md);
  overflow-y: auto;
  flex-grow: 1;
}
.modal-footer {
  padding: var(--space-md) var(--space-lg);
  border-top: var(--border-width-sm) solid var(--border-color-light);
  text-align: right;
}
ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
.list {
  display: grid;
  gap: var(--space-md);
}
.list li {
  padding: var(--space-md) 0;
  border-bottom: var(--border-width-sm) solid var(--border-color-light);
}
.list li:last-child {
  border-bottom: none;
}
.list--scrollable {
  max-height: 160px;
  overflow-y: auto;
  padding-right: 5px;
}
.profile-banner-wrapper {
  position: relative;
  width: 100%;
}
.profile-banner-wrapper.has-banner .profile-banner img {
  width: 100%;
  aspect-ratio: 6 / 1;
  min-height: 120px;
  object-fit: cover;
  object-position: center;
  display: block;
  border-radius: 4px;
}
.profile-banner-wrapper.has-banner .avatar-wrapper {
  position: absolute;
  bottom: 12px;
  left: 20px;
  z-index: 2;
}
.profile-banner-wrapper.has-banner .avatar {
  width: 120px;
  height: 120px;
  border-radius: 50%;
  border: 3px solid #ffffff;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.7);
  object-fit: cover;
  display: block;
}
.profile-banner-wrapper.no-banner .avatar-wrapper {
  position: static;
}
.profile-banner-wrapper.no-banner .avatar {
  width: 120px;
  height: 120px;
  border-radius: 50%;
  object-fit: cover;
  display: block;
}
.side-area .content.executor ul,
.terms-and-conditions .content ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
.side-area .content.executor ul li {
  padding: 5px 0;
}
.filter {
}
.filter .list,
.filter ul {
  list-style: none;
  padding: 0;
  margin: 0;
}
.filter .list li,
.filter ul li {
  padding: 5px 0 5px 0;
}
.filter .filter-key {
  margin-bottom: 5px;
  font-weight: var(--font-weight-bold);
}
.filter .ranking-filter {
  display: flex;
  flex-wrap: wrap;
  overflow-x: visible;
  white-space: normal;
  gap: 6px;
  padding: 4px 0 8px 0;
  margin-bottom: 10px;
}
.filter-chips-bar {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: var(--space-xs);
  padding: var(--space-xs) var(--space-sm);
  background: var(--color-bg-light);
  border-radius: var(--border-radius);
  border: var(--border-width-sm) solid var(--border-color-light);
  margin-top: var(--space-xs);
}
.filter-chips-list {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 6px;
}
.filter-chip {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 2px 8px;
  background: var(--color-bg-main);
  border: var(--border-width-sm) solid var(--border-color-light);
  border-radius: 20px;
  color: var(--color-text-main);
  line-height: 1.4;
}
.filter-chip-label {
  white-space: nowrap;
}
.filter-chip-remove {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: transparent;
  border: none;
  color: var(--color-text-muted);
  line-height: 1;
  padding: 0;
  margin: 0;
  cursor: pointer;
  border-radius: 50%;
  width: 16px;
  height: 16px;
}
.filter-chip-remove:hover {
  color: var(--color-error);
  background: var(--color-error-bg);
}
.filter-chip-clear-all {
  background: transparent;
  border: none;
  color: #64748b;
  cursor: pointer;
  padding: 2px 6px;
  text-decoration: underline;
  line-height: 1.4;
}
.filter-chip-clear-all:hover {
  color: var(--color-error);
}
.progressbar {
  border: 1px solid #999;
  margin: 5px auto;
  width: 100px;
  height: 5px;
}
.progressbar > div {
  background: green;
  height: 100%;
  width: 100%;
}
.comment-container .comment-wrapper {
  width: calc(100% - 60px);
}
.submission-suggestions {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 12px;
  background-color: #f0f7ff;
  border: 1px solid #bae6fd;
  border-left: 4px solid #0284c7;
  padding: 10px 16px;
  border-radius: 6px;
  max-width: 100%;
  box-sizing: border-box;
  overflow: auto;
}
.submission-suggestion {
  display: flex;
  align-items: center;
  gap: 8px;
  color: #0369a1;
  min-width: 0;
}
.button.btn-participate .contest-name {
  font-weight: var(--font-weight-bold);
}
.button.btn-participate .stage-name {
  opacity: 0.9;
  font-weight: var(--font-weight-bold);
}
.submission-score-card {
  display: flex;
  gap: 10px;
  align-items: center;
  padding: 0 10px 0 10px;
  max-width: 100%;
  box-sizing: border-box;
  font-family: var(--font-heading);
  margin-bottom: 10px;
  font-size: var(--font-size-3xl);
}
.submission-score-card .avatar-wrapper {
  flex-shrink: 0;
}
.submission-score-card .avatar-wrapper a {
  text-decoration: none;
}
.submission-score-card .avatar {
  width: 120px;
  height: 120px;
  border-radius: 50%;
  object-fit: cover;
  display: block;
}
.submission-score-card .score-details {
  display: flex;
  gap: 10px;
  flex-direction: column;
}
.submission-score-card .score-details-row {
  display: flex;
  gap: 10px;
  flex-direction: row;
  align-items: center;
}
.submission-score-card .user-info {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 10px;
}
.submission-score-card .score-label,
.submission-score-card .connector-text {
  color: gray;
  font-style: italic;
}
.submission-score-card .temp-wrapper {
  display: inline-flex;
  align-items: center;
  background-color: #f1f5f9;
  padding: 2px 6px;
  border-radius: 4px;
  color: #475569;
}
.submission-sub-score {
  display: flex;
  flex-wrap: wrap;
  gap: 6px 12px;
  margin-top: 8px;
  padding: 8px 10px;
  background-color: #f8fafc;
  border: 1px solid #e2e8f0;
  border-radius: 6px;
  box-sizing: border-box;
}
.submission-sub-score .sub-score-item {
  display: inline-flex;
  align-items: center;
  gap: 4px;
}
.submission-sub-score .sub-score-name {
  color: #64748b;
  font-weight: var(--font-weight-bold);
}
.submission-sub-score .sub-score-name::after {
  content: ":";
}
.submission-sub-score .sub-score-val {
  font-weight: var(--font-weight-bold);
  color: #0f172a;
}
.form-row {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  width: 100%;
  margin-bottom: 10px;
}
.form-row.form-actions {
  display: flex;
  justify-content: flex-end;
  gap: var(--space-md);
  margin-top: var(--space-md);
}
.form-row.form-modal-actions {
  display: flex;
  justify-content: flex-end;
  gap: var(--space-md);
}
.form-group {
  display: flex;
  flex-direction: column;
  gap: var(--space-xs);
  flex: 1 1 auto;
  min-width: 0;
}
.form-group--row {
  flex-direction: row;
  align-items: center;
  flex-wrap: wrap;
}
.form-group--row > label {
  width: 100%;
}
.form-group--row > input {
  flex: 1;
}
.form-group-checkbox {
  display: flex;
  align-items: center;
  margin-top: var(--space-sm);
}
.form-group label {
  color: var(--font-color-dark);
}
.form-group-checkbox label {
  display: inline-flex;
  align-items: center;
  gap: var(--space-md);
  cursor: pointer;
  user-select: none;
  color: var(--font-color-dark);
}
.form-group-checkbox input[type=checkbox] {
  width: 20px;
  height: 20px;
  cursor: pointer;
  accent-color: var(--font-color-dark);
}
.form-group-checkbox input[type=checkbox].field-error {
  outline: 2px solid var(--color-error, #dc2626);
  outline-offset: 1px;
  border-color: var(--color-error, #dc2626);
}
.form-group-checkbox:has(.field-error) {
  padding: var(--space-xs, 0.5rem);
  border: 1px solid var(--color-error, #dc2626);
  border-radius: var(--border-radius, 0.375rem);
  background-color: var(--color-error-bg, rgba(220, 38, 38, 0.03));
}
.form-group-checkbox .binding-error {
  color: var(--color-error, #dc2626);
}
.form-group.has-error label {
  color: var(--color-error);
}
.form-group.has-error input {
  border-color: var(--color-error);
  background-color: var(--color-error-bg);
}
.form-filter {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  gap: var(--space-xs);
}
#ranking_filter {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-items: flex-start;
  gap: var(--space-md) var(--space-lg);
  margin-bottom: var(--space-md);
}
#ranking_filter .form-group {
  display: flex;
  flex-direction: column;
  gap: var(--space-xs);
  flex: 0 1 auto;
  max-width: 100%;
}
.form-input-search-wrapper {
  position: relative;
  width: 100%;
}
.form-input-search-wrapper .search-icon {
  position: absolute;
  left: 12px;
  top: 50%;
  transform: translateY(-50%);
  color: #94a3b8;
}
.form-input-search-wrapper input {
  width: 100%;
  padding-left: 36px;
  box-sizing: border-box;
}
.form-input-with-unit {
  display: flex;
  align-items: center;
  border: var(--border-width-md) solid var(--border-color-light);
  border-radius: var(--border-radius);
  padding-right: var(--space-md);
}
.form-input-with-unit .form-input {
  border: none;
  flex: 1;
  outline: none;
}
.form-input.field-error {
  border: var(--border-width-md) solid var(--color-error);
}
.form-input-with-unit:has(.field-error) {
  border: var(--border-width-md) solid var(--color-error);
}
.form-input-with-unit .form-input.field-error {
  border: none;
}
.form-input-with-unit .field-error {
  border: none;
  outline: none;
}
.form-unit-suffix {
  color: #6c757d;
  white-space: nowrap;
  user-select: none;
}
.form-input-with-unit.field-error {
  border: var(--border-width-md) solid var(--color-error);
}
.binding-error {
  color: var(--color-error);
}
.banner-image img {
  width: 100%;
  height: auto;
  min-height: 100px;
  border-radius: var(--border-radius);
}
.flex-column--compo-tree {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.flex-column-item--compo-tree-root {
  background-color: #ffffff;
  border: 1px solid #e5e7eb;
  border-left: 4px solid #2563eb;
  border-radius: 6px;
  padding: 12px 16px;
  position: relative;
  z-index: 2;
}
.compo-tree-children {
  position: relative;
  padding-left: 28px;
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.compo-tree-children::before {
  content: "";
  position: absolute;
  left: 12px;
  top: -12px;
  bottom: 24px;
  width: 2px;
  background-color: #cbd5e1;
}
.flex-column-item--compo-tree {
  position: relative;
  background-color: #ffffff;
  border: 1px solid #e5e7eb;
  border-radius: 6px;
  padding: 10px 14px;
}
.flex-column-item--compo-tree::before {
  content: "";
  position: absolute;
  left: -16px;
  top: 50%;
  width: 14px;
  height: 2px;
  background-color: #cbd5e1;
}
.flex-column-item--compo-tree.active {
  border-color: #3b82f6;
  background-color: #eff6ff;
}
.flex-column-item--compo-tree.active::before {
  background-color: #3b82f6;
}
.grid-spec-row--stacked .attribute {
  color: #6b7280;
  margin-bottom: 2px;
}
.leader-grid {
  display: flex;
  flex-direction: column;
  width: 100%;
}
.leader-grid h2 {
  margin: 0 0 12px 0;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: #64748b;
  display: flex;
  align-items: center;
  gap: 8px;
  border-bottom: 1px solid #f1f5f9;
  padding-bottom: 8px;
}
.leader-grid .text-gold {
  color: #f59e0b;
  filter: drop-shadow(0 0 4px rgba(245, 158, 11, 0.3));
}
.leader-info {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}
.leader-user {
  display: flex;
  align-items: center;
  gap: 10px;
  min-width: 0;
}
.leader-avatar {
  height: 44px;
  width: 44px;
  border-radius: 50%;
  object-fit: cover;
  border: 2px solid #f59e0b;
  box-shadow: 0 0 6px rgba(245, 158, 11, 0.2);
  flex-shrink: 0;
}
.leader-name {
  color: #0f172a;
  letter-spacing: 0.01em;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.leader-points {
  display: inline-flex;
  align-items: center;
  padding: 3px 8px;
  background: #0f172a;
  border: 1px solid #1e293b;
  border-radius: 4px;
  color: #fbbf24;
  font-family: var(--font-mono, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace);
  font-variant-numeric: tabular-nums;
  letter-spacing: 0.04em;
  white-space: nowrap;
  text-shadow: 0 0 6px rgba(251, 191, 36, 0.3);
}
.leader-empty-state {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 12px 14px;
  background: #f8fafc;
  border: 1px dashed #cbd5e1;
  border-radius: 6px;
  width: 100%;
  box-sizing: border-box;
}
.leader-empty-state .empty-icon {
  flex-shrink: 0;
}
.leader-empty-state .empty-details {
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 0;
}
.leader-empty-state .empty-title {
  color: #1e293b;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}
.leader-empty-state .empty-subtitle {
  font-family: var(--font-mono, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace);
  font-variant-numeric: tabular-nums;
  letter-spacing: 0.02em;
}
.flex-row {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-md);
  align-items: center;
}
.flex-row--achievement-action {
  justify-content: flex-end;
  margin-bottom: var(--space-md);
}
.flex-row--additional-images {
  align-items: flex-end;
}
.flex-row--world-records {
  flex-wrap: nowrap;
  overflow: auto;
  background: var(--color-bg-alt);
  padding: var(--space-md);
}
.flex-row--benchmark-links {
  flex-wrap: nowrap;
}
.flex-row--table-compare-header {
  justify-content: space-between;
  flex-wrap: nowrap;
}
.flex-row--news-header {
  justify-content: space-between;
  padding: var(--space-md);
  font-weight: var(--font-weight-bold);
}
.flex-row--news-footer {
  justify-content: center;
  padding: var(--space-md);
  font-size: var(--font-size-lg);
  font-weight: var(--font-weight-bold);
}
.flex-row--wall {
  gap: var(--space-md);
  padding: var(--space-md) 0;
}
.flex-row--wall-social {
  justify-content: space-between;
  align-items: center;
  gap: var(--space-md);
  padding: var(--space-xs) 0;
  margin-bottom: var(--space-sm);
}
.modal-member-list {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-lg);
  align-items: center;
}
.flex-row--action,
.flex-row--info {
  gap: var(--space-md) var(--space-lg);
  padding: var(--space-md);
  background: var(--color-bg-light);
  border: var(--border-width-sm) solid var(--border-color-light);
  border-radius: var(--border-radius);
  color: var(--font-color-dark);
  justify-content: space-between;
  align-items: center;
}
.flex-row-group {
  display: flex;
  align-items: center;
  gap: var(--space-md);
}
.flex-row-group--meta {
  color: #6b7280;
}
.flex-row-item {
  display: inline-flex;
  align-items: center;
  gap: var(--space-md);
}
.flex-row-item--world-record {
  flex-direction: column;
  min-width: 400px;
  padding: var(--space-md);
  border-radius: var(--border-radius);
  background: var(--color-bg-light);
  border: 1px solid var(--border-color-light);
  width: 100%;
}
.status-badge {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 2px 8px;
  border-radius: 6px;
  border: var(--border-width-sm) solid currentColor;
  background: transparent;
  font-size: var(--font-size-xs);
  font-weight: var(--font-weight-bold);
  letter-spacing: 0.2px;
  line-height: 1;
}
.status-badge i {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: inherit;
  flex-shrink: 0;
}
.status-badge i::before {
  font-family: "Font Awesome 6 Free", "Font Awesome 5 Free";
  font-weight: 900;
}
.status-value {
  text-transform: capitalize;
  font-weight: var(--font-weight-bold);
}
.status-success,
.status-green {
  color: #16a34a;
}
.status-success i::before,
.status-green i::before {
  content: "\f00c";
}
.status-warning {
  color: #d97706;
}
.status-warning i::before {
  content: "\f071";
}
.status-unknown,
.status-gray {
  color: #64748b;
}
.status-unknown i::before,
.status-gray i::before {
  content: "\f05a";
}
.status-processing {
  color: #2563eb;
}
.status-processing i::before {
  content: "\f1ce";
}
.status-open {
  color: #16a34a;
}
.status-open i::before {
  content: "\f3c1";
}
.status-closed {
  color: #dc2626;
}
.status-closed i::before {
  content: "\f023";
}
.status-official {
  color: #475569;
}
.status-official i::before {
  content: "\f00c";
}
.status-online {
  color: #0284c7;
}
.status-online i::before {
  content: "\f0ac";
}
.status-live {
  color: #dc2626;
}
.status-live i::before {
  content: "\f001";
}
.status-active {
  color: #16a34a;
}
.status-active i::before {
  content: "\f00c";
}
.status-inactive {
  color: #64748b;
}
.status-inactive i::before {
  content: "\f05e";
}
.alert {
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  gap: var(--space-md);
  padding: var(--space-md) var(--space-lg);
  border-radius: var(--border-radius);
  border: var(--border-width-sm) solid transparent;
  font-size: var(--font-size-md);
  line-height: 1.5;
  width: 100%;
  margin-bottom: var(--space-md);
  box-sizing: border-box;
}
.alert > div {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: var(--space-xs);
}
.alert p {
  margin: 0;
}
.alert i {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: var(--font-size-lg);
  line-height: 1.5;
  flex-shrink: 0;
}
.alert i::before {
  font-family: "Font Awesome 6 Free", "Font Awesome 5 Free";
  font-weight: 900;
}
.alert-warning {
  color: #92400e;
  background-color: #fffbeb;
  border-color: #fde68a;
}
.alert-warning i::before {
  content: "\f071";
}
.alert-danger {
  color: #991b1b;
  background-color: #fef2f2;
  border-color: #fecaca;
}
.alert-danger i::before {
  content: "\f06a";
}
.alert-info {
  color: #1e40af;
  background-color: #eff6ff;
  border-color: #bfdbfe;
}
.alert-info i::before {
  content: "\f05a";
}
.alert-success {
  color: #166534;
  background-color: #f0fdf4;
  border-color: #bbf7d0;
}
.alert-success i::before {
  content: "\f00c";
}
.status-badge--full {
  display: flex;
  width: 100%;
  padding: var(--space-md) var(--space-lg);
  line-height: 1.5;
  font-size: var(--font-size-md);
  font-weight: normal;
  letter-spacing: normal;
  box-sizing: border-box;
}
.cooling-air-stock {
  color: #64748b;
}
.cooling-air-stock i::before {
  content: "\f72e";
}
.cooling-air-custom {
  color: #16a34a;
}
.cooling-air-custom i::before {
  content: "\f72e";
}
.cooling-water-custom {
  color: #2563eb;
}
.cooling-water-custom i::before {
  content: "\f043";
}
.cooling-aio-water {
  color: #0891b2;
}
.cooling-aio-water i::before {
  content: "\f043";
}
.cooling-water-chilled-cold {
  color: #0284c7;
}
.cooling-water-chilled-cold i::before {
  content: "\f2dc";
}
.cooling-dry-ice {
  color: #475569;
}
.cooling-dry-ice i::before {
  content: "\f1b2";
}
.cooling-single-stage-phase-change {
  color: #0d9488;
}
.cooling-single-stage-phase-change i::before {
  content: "\f2dc";
}
.cooling-cascade-phase-change {
  color: #4f46e5;
}
.cooling-cascade-phase-change i::before {
  content: "\f2dc";
}
.cooling-liquid-nitrogen {
  color: #1e40af;
}
.cooling-liquid-nitrogen i::before {
  content: "\f0c3";
}
.cooling-liquid-helium {
  color: #475569;
}
.cooling-liquid-helium i::before {
  content: "\f7a6";
}
.league-elite {
  color: #d97706;
}
.league-elite i::before {
  content: "\f521";
}
.league-extreme {
  color: #dc2626;
}
.league-extreme i::before {
  content: "\f06d";
}
.league-apprentice {
  color: #1e40af;
}
.league-apprentice i::before {
  content: "\f0d0";
}
.league-enthusiast {
  color: #2563eb;
}
.league-enthusiast i::before {
  content: "\f0e7";
}
.league-novice {
  color: #16a34a;
}
.league-novice i::before {
  content: "\f4d8";
}
.league-rookie {
  color: #64748b;
}
.league-rookie i::before {
  content: "\f19d";
}
.ref-review {
  color: #0284c7;
}
.ref-review i::before {
  content: "\f1e5";
}
.ref-news,
.ref-press,
.ref-roundup,
.ref-static-content {
  color: #475569;
}
.ref-news i::before,
.ref-press i::before,
.ref-roundup i::before,
.ref-static-content i::before {
  content: "\f1ea";
}
.ref-discussion {
  color: #4f46e5;
}
.ref-discussion i::before {
  content: "\f086";
}
.ref-rule {
  color: #d97706;
}
.ref-rule i::before {
  content: "\f06a";
}
.ref-esports {
  color: #dc2626;
}
.ref-esports i::before {
  content: "\f2db";
}
.screenshot-box {
  display: flex;
  gap: 10px;
  overflow: auto;
  width: 100%;
}
.screenshot-box a {
  text-decoration: none;
}
.screenshot-box img {
  border-radius: 4px;
}
.screenshot-box--highlight-submission img {
  height: 100px;
}
.screenshot-box--submission img {
  height: 250px;
}
.screenshot-box--news {
  display: flex;
  justify-content: center;
  overflow: hidden;
  height: 200px;
}
.screenshot-box--news img {
  max-width: 300px;
}
.rich-text-content {
  color: #334155;
}
.rich-text-content h1,
.rich-text-content h2,
.rich-text-content h3,
.rich-text-content h4 {
  color: #0f172a;
  font-weight: var(--font-weight-bold);
  margin-top: 1rem;
  margin-bottom: 0.5rem;
  line-height: 1.3;
}
.rich-text-content strong,
.rich-text-content b {
  color: #0f172a;
  font-weight: var(--font-weight-bold);
}
.rich-text-content p {
  margin-top: 0;
  margin-bottom: 0.75rem;
}
.rich-text-content ul,
.rich-text-content ol {
  padding-left: 1.25rem;
  margin-top: 0.5rem;
  margin-bottom: 0.75rem;
}
.rich-text-content li {
  margin-bottom: 0.35rem;
}
.rich-text-content a {
  color: var(--color-link);
  text-decoration: underline;
  text-decoration-color: var(--color-link-underline);
  text-underline-offset: 3px;
  transition: color 0.15s ease, text-decoration-color 0.15s ease;
}
.rich-text-content a:hover {
  color: var(--color-link-hover);
  text-decoration-color: currentColor;
}
.rich-text-content code,
.rich-text-content pre {
  background: #f1f5f9;
  padding: 0.2rem 0.4rem;
  border-radius: var(--border-radius);
  font-family: monospace;
  color: #0f172a;
}
.rich-text-content img {
  width: 100%;
  max-width: 600px;
  border-radius: var(--border-radius);
}
.rich-text-content table {
  display: block;
  width: 100%;
  max-width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  border-collapse: collapse;
  margin-top: 1rem;
  margin-bottom: 1rem;
}
.rich-text-content th,
.rich-text-content td {
  padding: var(--space-sm) var(--space-md);
  border: var(--border-width-sm) solid var(--border-color-light);
  text-align: left;
}
.rich-text-content th {
  background-color: var(--color-bg-hover-light);
  font-weight: var(--font-weight-bold);
  color: var(--font-color-dark);
}
.rich-text-content tr:hover td {
  background-color: var(--color-bg-hover-light);
}
.rich-text-content iframe {
  width: 100%;
  max-width: 600px;
  aspect-ratio: 16 / 9;
  display: block;
  margin-top: 1rem;
  margin-bottom: 1rem;
  border: none;
  border-radius: var(--border-radius);
}
.comments-section {
}
.comments-title {
  font-weight: var(--font-weight-bold);
  color: #1e293b;
  margin-bottom: 16px;
}
.submitter-quote-card {
  background-color: #f8fafc;
  border-left: 4px solid #0284c7;
  border-radius: 4px;
  padding: 12px 16px;
  margin-bottom: 20px;
}
.quote-header {
  display: flex;
  gap: 6px;
  margin-bottom: 6px;
}
.quote-author {
  font-weight: var(--font-weight-bold);
  color: #0284c7;
  text-decoration: none;
}
.quote-author:hover {
  text-decoration: underline;
}
.quote-action {
  color: #64748b;
}
.quote-body {
  margin: 0;
  font-style: italic;
  color: #334155;
}
.quote-icon {
  color: #94a3b8;
  margin-right: 6px;
}
.comments-thread {
  display: flex;
  flex-direction: column;
  gap: 12px;
  margin-bottom: 24px;
}
.comments-empty {
  color: #64748b;
  font-style: italic;
}
.comment-card {
  display: flex;
  gap: 12px;
  background-color: #f8fafc;
  border: 1px solid #e2e8f0;
  border-radius: 6px;
  padding: 12px 16px;
}
.comment-avatar-link {
  flex-shrink: 0;
}
.comment-avatar {
  width: 36px;
  height: 36px;
  border-radius: 50%;
  object-fit: cover;
}
.comment-body {
  flex: 1;
  min-width: 0;
}
.comment-header {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 6px;
}
.comment-author {
  color: #0284c7;
  text-decoration: none;
}
.comment-author:hover {
  text-decoration: underline;
}
.comment-timestamp {
  color: #64748b;
}
.comment-text {
  color: #334155;
  word-break: break-word;
}
.comment-form-box {
  margin-top: 16px;
}
.comment-form {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.comment-textarea {
  width: 100%;
  padding: 10px;
  border: 1px solid #cbd5e1;
  border-radius: 6px;
  font-family: inherit;
  resize: vertical;
  box-sizing: border-box;
}
.comment-textarea:focus {
  outline: none;
  border-color: #0284c7;
  box-shadow: 0 0 0 2px rgba(2, 132, 199, 0.15);
}
.comment-form-actions {
  display: flex;
  justify-content: flex-end;
}
.btn-primary {
  background-color: #0284c7;
  color: #ffffff;
  border: none;
  padding: 8px 16px;
  border-radius: 4px;
  font-weight: var(--font-weight-bold);
  cursor: pointer;
  transition: background-color 0.15s ease;
}
.btn-primary:hover {
  background-color: #0369a1;
}
.comment-login-notice {
  color: #64748b;
  font-style: italic;
}
.comment-text img {
  max-width: 100%;
  height: auto;
  display: block;
  margin: 10px 0;
  border-radius: 4px;
}
.faint {
  opacity: 0.2;
}
.side-area .content .hardware-tree {
  height: 1200px;
  overflow: auto;
}
.reset-password .content .grid input[type=password],
.reset-password .content .grid input[type=text] {
  width: 100%;
  box-sizing: border-box;
  display: inline-block;
}
.reset-password .content .grid .row {
  width: 100%;
}
.side-area .content .grid {
  display: grid;
  grid-template-columns: auto;
  grid-gap: 10px;
}
.timer .countdown-wrapper span {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  grid-gap: 10px;
}
.timer .countdown-wrapper .count {
  color: gainsboro;
  background: var(--color-bg-dark);
  margin-bottom: 10px;
  border-radius: 4px;
  padding: 10px;
  text-align: center;
}
.timer .countdown-wrapper .countdownlabel {
  text-transform: uppercase;
  text-align: center;
  color: var(--color-bg-dark);
  font-weight: var(--font-weight-bold);
}
.side-area-ranking-grid {
  display: flex;
  flex-direction: column;
  gap: var(--space-sm);
}
.side-area-ranking-grid > *:not(:last-child) {
  padding-bottom: var(--space-xs);
  border-bottom: var(--border-width-sm) solid var(--border-color-light);
}
.side-area-ranking-grid-row {
  display: grid;
  grid-template-columns: 5px 15px auto auto;
  grid-gap: var(--space-sm);
  align-items: center;
  justify-items: left;
  max-height: 700px;
  overflow: auto;
}
.side-area-ranking-grid-row:hover {
  background-color: #f1f5f9;
}
.side-area-wr-ranking-grid {
  display: grid;
  grid-template-columns: 5px 40px auto auto;
  grid-template-rows: auto auto;
  grid-gap: 10px;
  align-items: center;
  justify-items: left;
}
.grid-box-card--sidebar-ranking .side-area-wr-ranking-grid:not(:last-child) {
  padding-bottom: var(--space-xs);
  border-bottom: var(--border-width-sm) solid var(--border-color-light);
}
.side-area-wr-ranking-grid:hover {
  background-color: #f1f5f9;
}
.side-area-wr-ranking-grid .hardware {
  grid-column: 2 / -1;
}
.side-area-ranking-grid .pos-marker,
.side-area-ranking-grid .pos,
.side-area-ranking-grid .name,
.side-area-ranking-grid .points,
.side-area-wr-ranking-grid .pos-marker,
.side-area-wr-ranking-grid .pos,
.side-area-wr-ranking-grid .name,
.side-area-wr-ranking-grid .points,
.side-area-wr-ranking-grid .score,
.side-area-wr-ranking-grid .hardware {
  white-space: nowrap;
}
.side-area-wr-ranking-grid .score,
.side-area-ranking-grid .points,
.side-area-wr-ranking-grid .points {
  justify-self: end;
}
.side-area-wr-ranking-grid .pos-marker,
.side-area-ranking-grid .pos-marker {
  width: 5px;
  height: 100%;
}
.side-area-wr-ranking-grid .pos-marker {
  grid-column: 1;
  grid-row: 1 / -1;
}
.side-area-ranking .row {
  display: grid;
  grid-template-columns: 70px 20px auto 150px;
  align-items: center;
  grid-gap: 10px;
  margin-bottom: 5px;
  background: #F0F0F0;
  border-radius: 4px;
}
.side-area-ranking .row .pos {
  border-radius: 4px;
  border: solid 1px var(--color-pos-four-five);
  text-align: center;
  width: 100%;
}
.side-area-ranking .row .name {
  min-width: 100px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.captcha-challenge .content.wrapper {
  display: grid;
  justify-content: center;
}
.captcha-challenge .content.wrapper .row {
  display: flex;
  justify-content: center;
}
.reset-password .content .grid {
  display: grid;
  grid-template-columns: auto;
  grid-template-rows: auto;
}
.reset-password .content .grid {
  grid-gap: 10px;
}
.reset-password .content .grid {
  align-items: center;
  justify-items: center;
}
.reset-password .content .grid {
  width: 30%;
  margin: auto;
  min-width: 320px;
}
.reset-password .content .grid .action {
  justify-self: end;
}
.grid-box-card--login,
.grid-box-card--register,
.grid-box-card--reset-password {
  max-width: 350px;
  width: 100%;
  margin: var(--space-xl) auto;
  gap: var(--space-md);
  text-align: center;
}
.grid-box-card--login > p,
.grid-box-card--register > p,
.grid-box-card--reset-password > p {
  color: #64748b;
  margin: 0;
}
.grid-box-card--login > p a,
.grid-box-card--register > p a,
.grid-box-card--reset-password > p a {
  color: inherit;
  text-decoration: underline;
}
.grid-box-card--login form,
.grid-box-card--register form,
.grid-box-card--reset-password form {
  display: flex;
  flex-direction: column;
  gap: var(--space-md);
  text-align: left;
}
.grid-box-card--login form button[type=submit],
.grid-box-card--register form button[type=submit],
.grid-box-card--reset-password form button[type=submit] {
  width: 100%;
}
.grid-box-card--register .recaptcha-wrapper,
.grid-box-card--reset-password .recaptcha-wrapper {
  display: flex;
  justify-content: center;
  width: 100%;
  overflow-x: auto;
}
.form-label-row {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  width: 100%;
}
.form-input-password-wrapper {
  position: relative;
  width: 100%;
  display: flex;
  align-items: center;
}
.form-input-password-wrapper .form-input,
.form-input-password-wrapper input {
  width: 100%;
  padding-right: 42px;
  box-sizing: border-box;
}
.password-toggle-btn {
  position: absolute;
  right: 8px;
  background: transparent;
  border: none;
  padding: 6px;
  cursor: pointer;
  color: #94a3b8;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.password-toggle-btn:hover {
  color: var(--font-color-dark);
}
.login-footer {
  text-align: center;
  color: #64748b;
  padding-top: var(--space-md);
  border-top: 1px solid var(--border-color-light);
}
.side-area .content .article-link {
  margin: 0 0 10px 0;
}
.footer .content .info {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
  font-family: var(--font-heading);
}
.footer .info ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
.footer .system-info {
  text-align: center;
  font-family: var(--font-heading);
}
.footer .partner-info {
  text-align: center;
}
.footer .content .partner-info {
  margin: 20px 0 20px 0;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  gap: 20px;
}
.footer .content .partner-info .partner-box {
  height: 70px;
  display: flex;
  justify-content: center;
  align-items: center;
}
.main-area.hw-data {
  position: relative;
  z-index: 1;
}
.main-area.hw-data .hw-data-overlay {
  background: rgba(0, 0, 0, 0.5);
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  display: none;
  position: absolute;
  z-index: var(--z-index-loading-overlay, 20);
  cursor: wait;
  animation-name: loading;
  animation-duration: 1s;
  animation-iteration-count: infinite;
  animation-direction: alternate;
}
.hardware-overview .content-type-2 .manufacturer-grid,
.main-area.hw-data .content .manufacturer-grid {
  display: flex;
  align-items: center;
  gap: 5px;
}
.main-area.hw-data .content .manufacturer-grid .manufacturer-headline-grid-cell {
  height: 40px;
  display: flex;
  gap: 5px;
  align-items: center;
}
.main-area.hw-data .content .manufacturer-grid .manufacturer-headline-grid-cell img {
  height: 40px;
  width: auto;
  display: block;
  object-fit: contain;
}
.hardware-overview .content-type-2 .manufacturer-grid .manufacturer-grid-cell,
.main-area.hw-data .content .manufacturer-grid .manufacturer-grid-cell {
  height: 20px;
  display: flex;
  gap: 5px;
  align-items: center;
}
.hardware-overview .content-type-2 .manufacturer-grid .manufacturer-grid-cell img,
.main-area.hw-data .content .manufacturer-grid .manufacturer-grid-cell img {
  height: 20px;
  width: auto;
  display: block;
  object-fit: contain;
}
@keyframes loading {
  from {
    background-color: rgba(0, 0, 0, 0.5);
  }
  to {
    background-color: rgba(0, 0, 0, 0.4);
  }
}
.gold {
  background-color: var(--color-pos-first);
}
.silver {
  background-color: var(--border-color-light);
}
.bronze {
  background-color: var(--color-pos-third);
}
.medal {
  background-color: var(--color-pos-four-five);
}
.nomedal {
  background-color: lightgrey;
}
.gold-trophy {
  color: var(--color-pos-first);
}
.silver-trophy {
  color: var(--color-pos-second);
}
.bronze-trophy {
  color: var(--color-pos-third);
}
@keyframes shimmer {
  0% {
    background-position: 200% 0;
  }
  100% {
    background-position: -200% 0;
  }
}
.is-loading {
  position: relative;
  overflow: hidden;
  pointer-events: none;
}
.is-loading::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background:
    linear-gradient(
      90deg,
      rgba(232, 238, 241, 0) 0%,
      rgba(255, 255, 255, 0.6) 50%,
      rgba(232, 238, 241, 0) 100%);
  background-size: 200% 100%;
  animation: shimmer 1.5s infinite;
  z-index: 2;
}
@keyframes shimmer {
  0% {
    background-position: 200% 0;
  }
  100% {
    background-position: -200% 0;
  }
}
.button {
  font-family: var(--font-heading);
  background-color: var(--color-bg-light);
  border: var(--border-width-sm) solid var(--border-color-light);
  border-radius: 20px;
  color: var(--font-color-dark);
  cursor: pointer;
  padding: var(--space-sm) var(--space-md);
  text-align: center;
  user-select: none;
  -webkit-user-select: none;
  touch-action: manipulation;
  white-space: nowrap;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: var(--space-md);
}
.button--info-row {
  padding: var(--space-sm) var(--space-md);
  gap: var(--space-xs);
  height: auto;
}
.button--modal-header-close {
  background: transparent;
  border: none;
}
.button--modal-header-close:hover {
  opacity: 0.7;
}
.button--modal-header-close:focus {
  outline: none;
}
.button--primary {
  background-color: var(--font-color-dark);
  color: white;
  border-color: var(--font-color-dark);
}
.button--primary:hover {
  opacity: 0.9;
}
.button--image {
  background: transparent;
  border: none;
  padding: 0;
  margin: 0;
  font: inherit;
  color: inherit;
  cursor: pointer;
  display: block;
  width: 100%;
}
.button--danger {
  color: #dc2626;
  border-color: #fca5a5;
  background-color: #fff5f5;
}
.button--danger:hover {
  background-color: var(--color-bg-hover-light);
  border-color: var(--border-color-light);
  color: var(--font-color-dark);
}
.active,
.button:hover {
  border-color: var(--color-bg-hover-dark);
  box-shadow: rgba(0, 0, 0, .1) 0 1px 1px;
  background: lightgray;
  text-decoration: none;
}
.focus,
.button:focus {
  border-color: #4285f4;
  color: white;
  outline: none;
  background: var(--color-bg-hover-dark);
}
.button:disabled,
.button.disabled {
  opacity: 0.5;
  cursor: not-allowed;
  pointer-events: none;
  box-shadow: none;
}
.badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 18px;
  height: 18px;
  padding: 0 5px;
  border-radius: 10px;
  line-height: 1;
  background-color: var(--font-color-dark);
  color: var(--font-color-light);
  box-sizing: border-box;
}
.button .badge {
  margin-left: calc(-1 * var(--space-xs));
}
.button--primary .badge {
  background-color: var(--color-bg-light);
  color: var(--font-color-dark);
}
.info-message {
  background: #ddffff;
  padding: var(--space-md);
  border-radius: var(--border-radius);
}
.warn-message {
  background: #ffc;
  padding: var(--space-md);
  border-radius: var(--border-radius);
}
.error-message {
  background: var(--color-error);
  padding: var(--space-md);
  border-radius: var(--border-radius);
  color: var(--font-color-light);
}
.error-message a,
.info-message a {
  color: inherit;
  text-decoration: underline;
  font-weight: var(--font-weight-bold);
}
.binding-error {
  color: var(--color-error);
}
.form-input {
  border: var(--border-width-md) solid var(--border-color-light);
  border-radius: var(--border-radius);
  background-color: var(--color-bg-light);
  color: var(--font-color-dark);
  padding: var(--space-sm) var(--space-md);
  box-sizing: border-box;
}
input[type=checkbox].field-error {
  outline: var(--border-width-md) solid var(--border-color-error);
  background-color: var(--color-bg-light);
}
.field-error {
  border: var(--border-width-md) solid var(--border-color-error);
  background-color: var(--color-bg-light);
}
.ui-widget {
  font-family:
    Arial,
    Helvetica,
    sans-serif;
}
.ui-widget-content {
  border: var(--border-width-sm) solid var(--border-color-light);
  border-radius: 0;
  background: var(--color-bg-main);
  color: var(--font-color-dark);
}
.ui-widget-content a,
.ui-widget-content a:link,
.ui-widget-content a:hover,
.ui-widget-content a:visited,
.ui-widget-content a:active {
  color: var(--font-color-dark);
}
.ui-widget-content a:hover {
  text-decoration: underline;
}
.ui-state-hover,
.ui-widget-content .ui-state-hover,
.ui-widget-header .ui-state-hover,
.ui-state-focus,
.ui-widget-content .ui-state-focus,
.ui-widget-header .ui-state-focus {
  border: none;
  background: var(--color-bg-main);
}
.ui-state-hover,
.ui-widget-content a.ui-state-hover,
.ui-widget-header .ui-state-hover,
.ui-state-focus,
.ui-widget-content .ui-state-focus,
.ui-widget-header .ui-state-focus {
  border: none;
  background: var(--color-bg-main);
}
.ui-menu .ui-menu-item a.ui-state-hover {
  margin: 0;
}
.result-status-comment .content .event-container,
.reporting-overview .content .sticky-table .event-container {
  background-color: #f8f9fa;
  border-left: 4px solid #4a90e2;
  padding: 10px 16px;
  margin: 4px 0;
  max-height: 160px;
  overflow-y: auto;
}
.result-status-comment .content .event-container::-webkit-scrollbar,
.reporting-overview .content .sticky-table .event-container::-webkit-scrollbar {
  width: 6px;
}
.result-status-comment .content .event-container::-webkit-scrollbar-track,
.reporting-overview .content .sticky-table .event-container::-webkit-scrollbar-track {
  background: #e9ecef;
}
.result-status-comment .content .event-container::-webkit-scrollbar-thumb,
.reporting-overview .content .sticky-table .event-container::-webkit-scrollbar-thumb {
  background: #adb5bd;
  border-radius: 3px;
}
.result-status-comment .content .event-container::-webkit-scrollbar-thumb:hover,
.reporting-overview .content .sticky-table .event-container::-webkit-scrollbar-thumb:hover {
  background: #6c757d;
}
.result-status-comment .content .event-timeline,
.reporting-overview .content .sticky-table .event-timeline {
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.result-status-comment .content .event-item,
.reporting-overview .content .sticky-table .event-item {
  display: flex;
  align-items: flex-start;
}
.result-status-comment .content .event-icon,
.reporting-overview .content .sticky-table .event-icon {
  color: #8c98a4;
  margin-right: 10px;
  font-weight: var(--font-weight-bold);
}
.result-status-comment .content .event-meta,
.reporting-overview .content .sticky-table .event-meta {
  min-width: 160px;
  color: #6c757d;
  font-family: monospace;
}
.result-status-comment .content .event-user,
.reporting-overview .content .sticky-table .event-user {
  min-width: 140px;
  font-weight: var(--font-weight-bold);
  color: #2b303a;
  margin-right: 12px;
}
.result-status-comment .content .event-desc,
.reporting-overview .content .sticky-table .event-desc {
  color: #333;
  flex-grow: 1;
  width: 100%;
  white-space: normal;
  overflow-wrap: anywhere;
}
.reporting-overview .content .sticky-table .nested-row td {
  padding: 0;
  border-bottom: 2px solid #e0e0e0;
}
.reporting-overview .content .search-group-mobile {
  width: 100%;
}
.reporting-overview .content .search-input-wrapper {
  position: relative;
  display: flex;
  width: 100%;
  max-width: 400px;
}
.reporting-overview .content .search-input-wrapper input[type=text] {
  width: 100%;
  padding-right: 90px;
  box-sizing: border-box;
}
.reporting-overview .content .search-input-wrapper button {
  position: absolute;
  right: 2px;
  top: 2px;
  bottom: 2px;
  border-radius: 0 4px 4px 0;
  cursor: pointer;
}
.reporting-overview .content .sticky-table .event-container {
  padding: 5px 10px;
}
.reporting-overview .content .sticky-table .event-timeline {
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.reporting-overview .content .sticky-table .event-item {
  display: flex;
  align-items: center;
  gap: 10px;
}
.tab-menu {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
  gap: var(--space-xs);
  border-bottom: var(--border-width-sm) solid var(--border-color-light);
  margin-bottom: var(--space-md);
}
.tab-menu--hardware {
  margin-bottom: 10px;
}
.tab-menu > * {
  flex: 0 0 auto;
}
.tab-menu select {
  margin-bottom: var(--space-xs);
}
.filter.tab-menu {
  border-bottom: none;
  margin-bottom: 0;
}
.tab-menu .button {
  background: transparent;
  border: none;
  border-radius: 0;
  border-bottom: 2px solid transparent;
  margin-bottom: -1px;
  color: var(--font-color-dark);
  font-weight: 500;
  padding: var(--space-sm) var(--space-md);
  gap: var(--space-sm);
  box-shadow: none;
  transition: color 0.15s ease, border-color 0.15s ease;
}
.tab-menu .button:hover {
  background: transparent;
  border-color: var(--border-color-standard);
  color: var(--color-link);
  box-shadow: none;
}
.tab-menu .button:focus {
  outline: none;
  box-shadow: none;
  background: transparent;
}
.tab-menu .button.focus,
.tab-menu .button.active,
.tab-menu .button.focus:hover,
.tab-menu .button.active:hover,
.tab-menu .button.focus:focus,
.tab-menu .button.active:focus {
  background: transparent;
  border-color: var(--color-link);
  color: var(--color-link);
  font-weight: var(--font-weight-bold);
  box-shadow: none;
}
.tab-menu .button:focus-visible {
  outline: 2px solid var(--color-highlight);
  outline-offset: -2px;
}
.tab-menu .table-navigation {
  margin-left: auto;
  margin-top: 0;
  margin-bottom: var(--space-xs);
}
.flex-row > .table-navigation {
  margin-left: auto;
  margin-top: 0;
}
.sidebar-title {
  color: #1e293b;
  margin-bottom: 12px;
}
.sidebar-title-link {
  color: #0284c7;
  text-decoration: none;
}
.sidebar-title-link:hover {
  text-decoration: underline;
}
.sidebar-empty {
  color: #64748b;
  font-style: italic;
}
.wr-ranking-card {
  display: flex;
  flex-direction: column;
  border: var(--border-width-sm) solid #f8fafc;
  border-radius: 6px;
  overflow: hidden;
}
.wr-ranking-card .wr-ranking-row:not(:last-child) {
  padding-bottom: var(--space-xs);
  border-bottom: var(--border-width-sm) solid var(--border-color-light);
}
.wr-ranking-row {
  display: flex;
  align-items: center;
  position: relative;
  padding: 6px 10px 6px 0;
  gap: 8px;
  border-bottom: 1px solid #f1f5f9;
  transition: background-color 0.15s ease;
}
.wr-ranking-row:last-child {
  border-bottom: none;
}
.wr-ranking-row:hover {
  background-color: #f1f5f9;
}
.wr-ranking-row.is-active {
  background-color: #d8e8ee;
}
.pos-marker {
  width: 4px;
  align-self: stretch;
  flex-shrink: 0;
}
.pos-marker.gold {
  background-color: #eab308;
}
.pos-marker.silver {
  background-color: #94a3b8;
}
.pos-marker.bronze {
  background-color: #d97706;
}
.pos-marker.medal {
  background-color: #38bdf8;
}
.pos-marker.nomedal {
  background-color: transparent;
}
.rank-pos {
  color: #475569;
  text-align: center;
  flex-shrink: 0;
}
.rank-content {
  display: flex;
  flex-direction: column;
  min-width: 0;
  flex: 1;
  gap: 2px;
}
.rank-user-line {
  display: flex;
  align-items: center;
  gap: 6px;
  min-width: 0;
}
.rank-avatar {
  width: 20px;
  height: 20px;
  border-radius: 50%;
  object-fit: cover;
  flex-shrink: 0;
}
.rank-username {
  color: #0284c7;
  text-decoration: none;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.rank-username:hover {
  text-decoration: underline;
}
.rank-hardware-line {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.rank-hw-link {
  color: #475569;
  text-decoration: none;
}
.rank-hw-link:hover {
  color: #0284c7;
}
.rank-clock {
  color: #64748b;
}
.rank-score {
  flex-shrink: 0;
  text-align: right;
}
.rank-score-link {
  color: #0f172a;
  text-decoration: none;
}
.rank-score-link:hover {
  color: #0284c7;
}
.history-meta {
  display: flex;
  gap: 6px;
  color: #94a3b8;
  font-weight: var(--font-weight-bold);
  margin-bottom: 2px;
}
.history-meta::after {
  content: "";
}
.history-user {
  color: #38bdf8;
}
.history-desc {
  display: flex;
  align-items: flex-start;
  gap: 6px;
}
.history-icon {
  color: #64748b;
  margin-top: 2px;
}
.hw-tree-list,
.hw-tree-sublist {
  list-style: none;
  margin: 0;
  padding: 0;
}
.hw-tree-sublist {
  padding-left: var(--space-md);
  border-left: var(--border-width-sm) solid var(--border-color-light);
  margin-left: var(--space-sm);
}
.hw-tree-summary {
  display: list-item;
  cursor: pointer;
  border-radius: var(--border-radius);
}
.hw-tree-summary::-webkit-details-marker {
  display: none;
}
.hw-tree-summary::marker {
  content: "";
  display: none;
}
.hw-tree-summary-content {
  display: flex;
  align-items: center;
  gap: var(--space-sm);
  padding: var(--space-sm) var(--space-md);
}
.hw-tree-summary-content .hw-tree-link {
  display: inline;
  padding: 0;
  background: transparent;
  color: inherit;
  flex: 1;
}
.hw-tree-summary-content .hw-tree-label {
  flex: 1;
}
.hw-tree-summary-content::before {
  content: "\f054";
  font-family: "Font Awesome 6 Free", "FontAwesome";
  color: #94a3b8;
  transition: transform 0.2s ease;
}
.hw-tree-branch[open] > .hw-tree-summary .hw-tree-summary-content::before {
  transform: rotate(90deg);
  color: var(--font-color-dark);
}
.hw-tree-link {
  display: block;
  padding: var(--space-sm) var(--space-md);
  color: var(--font-color-dark);
  text-decoration: none;
  border-radius: var(--border-radius);
}
.hw-tree-summary:not(:has(.hw-tree-link.is-active)):hover,
.hw-tree-link:not(.is-active):hover {
  background: var(--color-bg-hover-light);
  color: var(--font-color-dark);
}
.hw-tree-summary-content .hw-tree-link:hover {
  background: transparent;
}
.hw-tree-link.is-active,
.hw-tree-summary:has(.hw-tree-link.is-active) {
  background: var(--color-bg-hover-dark);
  font-weight: var(--font-weight-bold);
}
.hw-tree-link.is-active:is(:link, :visited, :hover, :focus, :active),
.hw-tree-summary:has(.hw-tree-link.is-active),
.hw-tree-summary:has(.hw-tree-link.is-active) .hw-tree-link:is(:link, :visited, :hover, :focus, :active),
.hw-tree-summary:has(.hw-tree-link.is-active) .hw-tree-label,
.hw-tree-summary:has(.hw-tree-link.is-active) .hw-tree-summary-content::before {
  color: var(--font-color-light);
  text-decoration: none;
}
@media screen and (min-width: 1201px) {
  .header {
    display: flex;
    flex-direction: row;
    align-items: center;
    flex-wrap: wrap;
  }
  .header .logo-wrapper,
  .header .partner-wrapper,
  .header .account-wrapper {
    display: flex;
    flex-direction: row;
    align-items: center;
    padding: 10px;
    flex-wrap: wrap;
    gap: 10px 20px;
    justify-content: center;
  }
  .header .logo-wrapper,
  .header .partner-wrapper {
    justify-content: center;
  }
  .header .account-wrapper {
    justify-content: right;
    margin-left: auto;
  }
  .header .account-wrapper .grid {
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 5px;
    text-align: center;
  }
  .header .partner-wrapper,
  .header .account-wrapper {
    color: gainsboro;
    font-family: var(--font-heading);
  }
  .header .partner-wrapper .partner-info {
  }
  .header .partner-wrapper .platinum-partner img {
    height: 30px;
  }
  .header,
  .navigation,
  .footer {
    grid-column: 1 / -1;
  }
  .header .account a,
  .header .account a:link,
  .header .account a:hover,
  .header .account a:visited,
  .header .account a:active {
    color: gainsboro;
    text-decoration: none;
  }
  .header .account {
    list-style: none;
    margin: 0;
    padding: 0;
  }
  .header .account li {
    color: gainsboro;
    float: left;
    padding: 10px;
  }
  .header .logo-wrapper {
    position: relative;
    z-index: 1000;
  }
  body.one-column {
    grid-template-columns: auto;
    grid-template-rows: auto auto 1fr auto;
    max-width: 2000px;
    margin: auto;
  }
  body.left-sidebar {
    grid-template-columns: 1fr 3fr;
    grid-template-rows: auto auto 1fr auto;
    max-width: 2000px;
    margin: auto;
  }
  body.right-sidebar {
    grid-template-columns: 3fr 1fr;
    grid-template-rows: auto auto 1fr auto;
    max-width: 2000px;
    margin: auto;
  }
  .nav__list {
    display: flex;
    align-items: center;
    flex-direction: row;
    flex-wrap: nowrap;
    width: 100%;
  }
  .nav__item--cta {
    margin-left: auto;
  }
  .nav__item--has-sub > .nav__link-row > .nav__link::after {
    content: "";
    display: inline-block;
    margin-left: 6px;
    vertical-align: middle;
    border-top: 4px solid #38bdf8;
    border-right: 4px solid transparent;
    border-left: 4px solid transparent;
    transition: transform 0.2s ease, border-top-color 0.2s ease;
  }
  .nav__item--has-sub:is(:hover, :focus-within) > .nav__link-row > .nav__link::after {
    transform: rotate(180deg);
    border-top-color: var(--color-highlight);
  }
  .nav__sub {
    position: absolute;
    top: 100%;
    left: 0;
    min-width: 240px;
    padding: 6px 0;
    background: var(--color-bg-light);
    border: var(--border-width-sm) solid var(--border-color-light);
    border-radius: 0 0 6px 6px;
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.15);
    z-index: var(--z-index-dropdown, 500);
    opacity: 0;
    visibility: hidden;
    transform: translateY(6px);
    pointer-events: none;
    transition:
      opacity 0.2s ease,
      transform 0.2s ease,
      visibility 0.2s ease;
  }
  .nav__sub::before {
    content: "";
    position: absolute;
    top: -6px;
    left: 0;
    right: 0;
    height: 6px;
  }
  .nav__item--has-sub:is(:hover, :focus-within) > .nav__sub {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
    pointer-events: auto;
  }
  .nodesktop {
    display: none !important;
  }
  .global-search {
    display: flex;
    align-items: center;
    position: relative;
    margin: 0;
  }
  .global-search-input-group {
    display: flex;
    align-items: center;
  }
  .global-search input[type=text],
  .global-search input[type=search],
  .global-search-input,
  .global-search button[type=submit],
  .global-search-button {
    position: relative;
    z-index: 1000;
    height: 40px;
    box-sizing: border-box;
  }
  .global-search input[type=text],
  .global-search input[type=search],
  .global-search-input {
    width: 190px;
    padding: 0 14px 0 18px;
    border: var(--border-width-md) solid var(--color-bg-dark);
    border-right: none;
    border-radius: 9999px 0 0 9999px;
    background-color: var(--color-bg-dark);
    color: #ffffff;
    outline: none;
    transition:
      width 0.25s ease,
      border-color 0.2s ease,
      background-color 0.2s ease;
  }
  .global-search input[type=text]::placeholder,
  .global-search input[type=search]::placeholder,
  .global-search-input::placeholder {
    color: #94a3b8;
  }
  .global-search input[type=text]:focus,
  .global-search input[type=search]:focus,
  .global-search-input:focus {
    width: 260px;
    border-color: rgba(56, 189, 248, 0.5);
    background-color: rgba(255, 255, 255, 0.1);
  }
  .global-search button[type=submit],
  .global-search-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    padding: 0 16px 0 10px;
    margin: 0;
    border: var(--border-width-md) solid var(--color-bg-dark);
    border-left: none;
    border-radius: 0 9999px 9999px 0;
    background-color: var(--color-bg-dark);
    color: #94a3b8;
    font-size: var(--font-size-lg);
    cursor: pointer;
    outline: none;
    box-shadow: none;
    vertical-align: top;
    transition:
      background-color 0.2s ease,
      border-color 0.2s ease,
      color 0.2s ease;
  }
  .global-search:hover .global-search-input,
  .global-search:hover .global-search-button {
    border-color: rgba(255, 255, 255, 0.2);
  }
  .global-search button[type=submit]:hover,
  .global-search-button:hover,
  .global-search button[type=submit]:focus-visible,
  .global-search-button:focus-visible {
    background-color: var(--color-bg-hover-dark);
    border-color: rgba(56, 189, 248, 0.5);
    color: #38bdf8;
  }
  .global-search:focus-within .global-search-input {
    border-color: rgba(56, 189, 248, 0.5);
  }
  .global-search:focus-within .global-search-button {
    border-color: rgba(56, 189, 248, 0.5);
    background-color: rgba(255, 255, 255, 0.1);
    color: #38bdf8;
  }
  .global-search-autocomplete-wrapper {
    display: none;
    position: fixed;
    top: 75px;
    left: 50%;
    transform: translateX(-50%);
    width: 900px;
    max-width: 92vw;
    z-index: var(--z-index-modal, 1050);
    border-radius: 8px;
    border: 1px solid rgba(255, 255, 255, 0.12);
    box-shadow: 0 25px 60px rgba(0, 0, 0, 0.7);
    overflow: hidden;
  }
  .global-search-autocomplete-header {
    padding: 10px 16px;
    background-color: var(--color-bg-dark);
    border-bottom: var(--border-width-sm) solid var(--border-color-light);
    color: #f8fafc;
  }
  .global-search-desktop-action {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
  }
  .global-search-autocomplete-header .button,
  .global-search-desktop-action .button {
    padding: 4px 8px;
    border: none;
    background: transparent;
    color: #ffffff;
    cursor: pointer;
    outline: none;
    box-shadow: none;
    transition: color 0.2s ease, transform 0.2s ease;
  }
  .global-search-autocomplete-header .button:hover,
  .global-search-desktop-action .button:hover {
    background: transparent;
    color: var(--font-color-dark);
  }
  .global-search-content .search-results-container {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 16px;
    align-items: start;
    max-height: 70vh;
    overflow-y: auto;
  }
  .global-search-content .search-category-group {
    width: 100%;
    box-sizing: border-box;
  }
}
@media screen and (max-width: 1200px) {
  body.left-sidebar,
  body.right-sidebar {
    grid-template-columns: 1fr;
  }
  .nomobile {
    display: none !important;
  }
  .content {
    grid-template-columns: 10px minmax(0, 1fr) 10px;
  }
  .header {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 15px;
    align-items: center;
    padding: 10px;
  }
  .header .logo-wrapper {
    grid-column: 1;
    grid-row: 1;
    display: flex;
    align-items: center;
    gap: 30px;
  }
  .header .partner-wrapper {
    grid-column: span 2;
    grid-row: 2;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    text-align: center;
    gap: 8px;
    width: 100%;
    font-family: var(--font-heading);
    color: gainsboro;
  }
  .header .partner-wrapper .platinum-partner img {
    height: 30px;
  }
  .side-area {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    z-index: var(--z-index-drawer, 1000);
    transform: translateY(100%);
    transition: transform 0.35s cubic-bezier(0.4, 0, 0.2, 1);
    overflow-y: auto;
    box-sizing: border-box;
  }
  .side-area.is-open {
    transform: translateY(0);
  }
  .side-area .content {
    padding: 0 15px 30px 15px;
  }
  .side-area .content .hardware-tree,
  .side-area .content .hardwareTree,
  .side-area .content .hw-tree {
    height: calc(100vh - 70px);
    overflow-y: auto;
  }
  .hw-tree-summary-content,
  .hw-tree-link {
    padding: 10px 12px;
  }
  .sidebar-mobile-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    position: -webkit-sticky;
    position: sticky;
    top: 0;
    z-index: var(--z-index-sticky-header, 10);
    padding: 5px;
    background: var(--color-bg-alt);
    color: var(--font-color-dark);
    border-bottom: 2px solid #005bb7;
    margin: 0 -15px 20px -15px;
    text-transform: uppercase;
    font-family: var(--font-heading);
  }
  .modal-overlay,
  .modal-overlay--fullscreen-mobile {
    padding: 0;
    align-items: stretch;
    justify-content: stretch;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    height: 100%;
    height: 100dvh;
  }
  .modal-dialog,
  .modal-dialog--fullscreen-mobile {
    position: fixed;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    width: 100%;
    max-width: none;
    height: 100%;
    height: 100dvh;
    max-height: 100dvh;
    border-radius: 0;
    box-shadow: none;
    margin: 0;
    overflow: hidden;
    transform: translateY(100%);
    transition: transform 0.35s cubic-bezier(0.4, 0, 0.2, 1);
    will-change: transform;
    display: flex;
    flex-direction: column;
  }
  .modal-overlay.is-open .modal-dialog,
  .modal-overlay--fullscreen-mobile.is-open .modal-dialog--fullscreen-mobile {
    transform: translateY(0);
  }
  .modal-dialog .modal-header,
  .modal-dialog--fullscreen-mobile .modal-header {
    flex-shrink: 0;
    background: var(--color-bg-main);
    border-bottom: var(--border-width-sm) solid var(--border-color-light);
    padding: max(10px, env(safe-area-inset-top, 10px)) max(15px, env(safe-area-inset-right, 15px)) 10px max(15px, env(safe-area-inset-left, 15px));
  }
  .modal-dialog .modal-body,
  .modal-dialog--fullscreen-mobile .modal-body {
    flex: 1 1 0;
    min-height: 0;
    overflow-y: auto;
    overscroll-behavior-y: contain;
    -webkit-overflow-scrolling: touch;
    padding: 15px max(15px, env(safe-area-inset-right, 15px)) 15px max(15px, env(safe-area-inset-left, 15px));
  }
  .modal-dialog .modal-footer,
  .modal-dialog--fullscreen-mobile .modal-footer {
    flex-shrink: 0;
    background: var(--color-bg-main);
    border-top: var(--border-width-sm) solid var(--border-color-light);
    padding: 12px max(15px, env(safe-area-inset-right, 15px)) max(12px, env(safe-area-inset-bottom, 12px)) max(15px, env(safe-area-inset-left, 15px));
  }
  .modal-dialog .form-modal-actions,
  .modal-dialog--fullscreen-mobile .form-modal-actions {
    display: flex;
    gap: var(--space-md);
    justify-content: flex-end;
    align-items: center;
    margin: 0;
  }
  .modal-dialog .modal-footer .button,
  .modal-dialog--fullscreen-mobile .form-modal-actions .button {
    min-height: 44px;
  }
  @media (prefers-reduced-motion: reduce) {
    .modal-dialog,
    .modal-dialog.modal-dialog--fullscreen-mobile {
      transition: none;
    }
  }
  .nav__overlay {
    display: block;
  }
  .nav--open .nav__overlay {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
  }
  .nav__drawer {
    position: fixed;
    top: 0;
    left: 0;
    width: 320px;
    max-width: 85vw;
    height: 100%;
    display: flex;
    flex-direction: column;
    background: var(--color-bg-dark);
    z-index: var(--z-index-drawer, 1000);
    overflow-y: auto;
    overflow-x: hidden;
    box-shadow: none;
    transform: translateX(-100%);
    will-change: transform;
    transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  }
  .nav--open .nav__drawer {
    transform: translateX(0);
  }
  .nav__drawer-header {
    display: flex;
  }
  .nav__list {
    display: flex;
    flex-direction: column;
    width: 100%;
    padding: 8px 0 30px 0;
  }
  .nav__link-row {
    border-bottom: 1px solid rgba(255, 255, 255, 0.05);
  }
  .nav__link,
  .nav__link:link,
  .nav__link:visited {
    flex: 1;
    padding: 14px 20px;
  }
  .nav__link-row:is(:hover, :focus-within),
  .nav__link:is(:hover, :focus-visible) {
    background: rgba(255, 255, 255, 0.08);
    color: #ffffff;
  }
  .nav__sub-toggle {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 48px;
    height: 48px;
    background: transparent;
    border: none;
    color: #38bdf8;
    cursor: pointer;
    transition: background 0.2s ease, color 0.2s ease;
  }
  .nav__sub-toggle:is(:hover, :focus-visible) {
    background: rgba(255, 255, 255, 0.12);
    color: var(--color-highlight);
  }
  .nav__item--open .nav__sub-toggle i {
    transform: rotate(180deg);
    color: var(--color-highlight);
  }
  .nav__sub {
    display: none;
    padding: 4px 0;
    background: rgba(0, 0, 0, 0.2);
  }
  .nav__item--open .nav__sub {
    display: block;
  }
  .nav__sub-link,
  .nav__sub-link:link,
  .nav__sub-link:visited {
    padding: 11px 20px 11px 36px;
    color: var(--font-color-light);
  }
  .nav__sub-link:is(:hover, :focus-visible, :active) {
    background: rgba(255, 255, 255, 0.12);
    color: #ffffff;
  }
  .nav__link--cta {
    justify-content: center;
    text-align: center;
    width: 100%;
  }
  .filter .ranking-filter {
    flex-wrap: nowrap;
    overflow-x: auto;
    white-space: nowrap;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
  }
  .filter .ranking-filter::-webkit-scrollbar {
    display: none;
  }
  .tab-menu {
    flex-wrap: nowrap;
    overflow-x: auto;
    white-space: nowrap;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    padding: 0;
  }
  .tab-menu::-webkit-scrollbar {
    display: none;
  }
  .hero-banner {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start;
    gap: var(--space-lg);
  }
  .grid-box--submit-hardware {
    grid-template-columns: auto;
  }
  .submission-score-card {
    flex-direction: column;
    align-items: flex-start;
  }
  .submission-score-card .score-details {
    flex-wrap: wrap;
  }
  .submission-score-card .score-details-row {
    flex-wrap: wrap;
  }
  .flex-row--action,
  .flex-row--info {
    flex-wrap: nowrap;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    margin: 10px 0;
  }
  .flex-row--action::-webkit-scrollbar,
  .flex-row--info::-webkit-scrollbar {
    display: none;
  }
  .flex-row--action > *,
  .flex-row--info > * {
    flex-shrink: 0;
  }
  .profile-banner-wrapper.has-banner .avatar {
    width: 60px;
    height: 60px;
  }
  .profile-banner-wrapper.has-banner .avatar-wrapper {
    bottom: 10px;
    left: 12px;
  }
  .reporting-overview .content .sticky-table table,
  .reporting-overview .content .sticky-table tbody,
  .reporting-overview .content .sticky-table td {
    display: block;
    width: 100%;
    box-sizing: border-box;
  }
  .reporting-overview .content .sticky-table thead {
    display: none;
  }
  .reporting-overview .content .sticky-table tbody tr {
    display: flex;
    flex-direction: column;
    width: 100%;
    box-sizing: border-box;
    background: #ffffff;
    border: 1px solid #c0c0c0;
    border-radius: 6px;
    margin-bottom: 12px;
    padding: 12px;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
  }
  .reporting-overview .content .sticky-table tbody tr:nth-child(odd) td,
  .reporting-overview .content .sticky-table tbody tr:nth-child(even) td {
    background-color: transparent;
  }
  .reporting-overview .content .sticky-table tbody tr td {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 8px 0;
    border-bottom: 1px dashed #e5e5e5;
    white-space: normal;
  }
  .reporting-overview .content .sticky-table tbody tr td:last-child {
    border-bottom: none;
  }
  .reporting-overview .content .sticky-table tbody tr td[data-label]::before {
    content: attr(data-label);
    font-family: var(--font-heading);
    color: var(--font-color-dark);
    text-transform: uppercase;
    padding-right: 12px;
  }
  .reporting-overview .content .sticky-table tbody tr td.col-user {
    order: 2;
  }
  .reporting-overview .content .sticky-table tbody tr td.col-score {
    order: 3;
    font-weight: var(--font-weight-bold);
    color: var(--font-color-dark);
  }
  .reporting-overview .content .sticky-table tbody tr td.col-hardware {
    order: 4;
    border-top: none;
    padding-top: 2px;
    color: #556b73;
  }
  .result-status-comment .content .event-container,
  .reporting-overview .content .sticky-table .event-container {
    max-height: 200px;
    margin-top: 8px;
    padding: 8px 10px;
    border-left: 3px solid var(--font-color-dark);
  }
  .reporting-overview .content .sticky-table .event-container {
    width: 100%;
  }
  .result-status-comment .content .event-item,
  .reporting-overview .content .sticky-table .event-item {
    flex-direction: column;
    align-items: flex-start;
    gap: 2px;
    padding-bottom: 6px;
    border-bottom: 1px solid var(--color-bg-hover-dark);
  }
  .reporting-overview .content .sticky-table .event-item:last-child {
    border-bottom: none;
    padding-bottom: 0;
  }
  .reporting-overview .content .sticky-table .event-meta,
  .reporting-overview .content .sticky-table .event-user {
    min-width: unset;
  }
  .reporting-overview .content .search-input-wrapper {
    max-width: 100%;
  }
  .reporting-overview .content .sticky-table .status-badge {
    width: 100%;
  }
  .global-search,
  .global-search-wrapper {
    margin-left: auto;
    display: flex;
    justify-content: flex-end;
  }
  .global-search button[type=submit],
  .global-search-button {
    background: transparent;
    border: none;
    box-shadow: none;
    padding: 6px 10px;
    color: gainsboro;
    font-size: var(--font-size-lg);
    cursor: pointer;
    outline: none;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .global-search button[type=submit] i,
  .global-search-button i {
    background: transparent;
    color: inherit;
    font-size: inherit;
  }
  .global-search button[type=submit]:hover,
  .global-search-button:hover {
    color: var(--color-bg-hover-dark);
  }
  .global-search-autocomplete-wrapper {
    display: none;
    position: fixed;
    inset: 0;
    top: 0;
    left: 0;
    transform: none;
    width: 100vw;
    height: 100vh;
    max-width: 100vw;
    border: none;
    border-radius: 0;
    box-shadow: none;
    z-index: var(--z-index-modal, 1050);
    background: #030617;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
  }
  .global-search-autocomplete {
    display: flex;
    flex-direction: column;
    min-height: 100vh;
    background: #030617;
  }
  .global-search-autocomplete-header {
    position: sticky;
    top: 0;
    z-index: var(--z-index-sticky-header, 10);
    padding: 10px 12px;
    background: #030617;
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
  }
  .global-search-mobile-action {
    display: flex;
    align-items: center;
    gap: 10px;
    width: 100%;
  }
  .global-search-mobile-action .button {
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 44px;
    min-height: 44px;
    padding: 0;
    border: none;
    background: transparent;
    color: #94a3b8;
    cursor: pointer;
  }
  .global-search-mobile-action .button:active {
    color: #38bdf8;
  }
  .global-search-mobile-action .global-search-spinner {
    color: #38bdf8;
    margin-right: 4px;
  }
  .global-search-mobile-action input.input {
    flex: 1;
    min-height: 44px;
    padding: 0 14px;
    border: 1px solid #1e293b;
    border-radius: 8px;
    background: #0b1329;
    color: #f8fafc;
    font-size: inherit;
    outline: none;
  }
  .global-search-mobile-action input.input:focus {
    border-color: #38bdf8;
  }
  .global-search-content {
    flex: 1;
    padding: 12px 12px 32px;
  }
  .form-filter {
    flex-direction: row;
    flex-wrap: wrap;
    overflow-x: visible;
    overflow-y: visible;
    gap: var(--space-xs);
  }
  .form-filter > * {
    flex-shrink: 0;
    scroll-snap-align: none;
  }
  .modal-body .form-filter {
    flex-wrap: wrap;
    overflow-x: visible;
  }
  .modal-body .form-filter > * {
    scroll-snap-align: none;
  }
  .modal-body #ranking_filter {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-items: flex-start;
    gap: var(--space-md) var(--space-lg);
    margin-bottom: 0;
  }
  .filter-chips-bar {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    overflow-x: visible;
    overflow-y: visible;
    gap: var(--space-xs);
  }
  .filter-chips-bar > * {
    flex-shrink: 0;
  }
  .filter-chips-list {
    display: flex;
    flex-wrap: wrap;
    gap: var(--space-xs);
  }
  .filter-chips-list > * {
    flex-shrink: 0;
  }
}
.vote-cell {
  position: relative;
  white-space: nowrap;
}
.vote-cell .vote-pill {
  font-size: var(--font-size-sm);
}
.vote-widget {
  position: relative;
  display: inline-flex;
  align-items: center;
}
.vote-pill {
  display: inline-flex;
  align-items: center;
  background-color: var(--color-bg-light);
  border: var(--border-width-sm) solid var(--border-color-dark);
  border-radius: 16px;
  padding: 2px 4px;
  font-size: var(--font-size-xs);
  line-height: 1;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
  transition: border-color 0.15s ease;
}
.vote-pill:hover {
  border-color: var(--color-highlight);
}
.vote-pill__btn {
  background: none;
  border: none;
  padding: 3px 6px;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  gap: 4px;
  color: var(--font-color-dark);
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
  text-decoration: none;
  transition: color 0.15s ease;
}
.vote-pill__btn:hover {
  color: var(--color-highlight);
  text-decoration: none;
}
.vote-pill__action.has-voted {
  color: var(--color-highlight);
}
.vote-pill__action--disabled {
  opacity: 0.6;
  cursor: pointer;
}
.vote-pill__divider {
  width: 1px;
  height: 14px;
  background-color: var(--border-color-light);
  margin: 0 1px;
}
.vote-pill__count {
  font-weight: var(--font-weight-bold);
}
.vote-pill__caret {
  font-size: var(--font-size-3xs);
  opacity: 0.7;
}
.vote-dropdown-menu {
  position: fixed;
  min-width: 180px;
  max-width: 240px;
  max-height: 220px;
  overflow-y: auto;
  font-size: var(--font-size-xs);
  background-color: var(--color-bg-light);
  border: var(--border-width-sm) solid var(--border-color-dark);
  border-radius: var(--border-radius);
  box-shadow: 0 6px 16px rgba(0, 0, 0, 0.15);
  z-index: var(--z-index-dropdown, 500);
  text-align: left;
}
.vote-popover-header {
  padding: 8px 12px;
  font-weight: var(--font-weight-bold);
  border-bottom: var(--border-width-sm) solid var(--border-color-light);
  display: flex;
  align-items: center;
  gap: 6px;
}
.vote-popover-list {
  list-style: none;
  margin: 0;
  padding: 4px 0;
}
.vote-popover-item {
  padding: 0;
}
.vote-user-link {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 6px 12px;
  color: var(--font-color-dark);
  text-decoration: none;
  transition: background-color 0.15s ease, color 0.15s ease;
}
.vote-user-link:hover {
  background-color: var(--color-bg-hover-light);
  color: var(--color-highlight);
  text-decoration: none;
}
.vote-user-avatar {
  width: 20px;
  height: 20px;
  border-radius: 50%;
  object-fit: cover;
  flex-shrink: 0;
}
.vote-popover-empty,
.vote-loading,
.vote-popover-error {
  padding: 12px;
  color: #888;
  text-align: center;
}
/*# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vZnJvbnRlbmQvY3NzL3N0eWxlLmNzcyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiOnJvb3Qge1xuICAgIC8qIEJvZHkgY29sb3JzICovXG4gICAgLS1jb2xvci1iZy1ncmFkaWVudC1zdGFydDogIzUwOTFERDtcbiAgICAtLWNvbG9yLWJnLWdyYWRpZW50LWVuZDogIzAzMDYxNztcblxuICAgIC8qIEJHIENvbG9ycyAqL1xuICAgIC0tY29sb3ItYmctbWFpbjogI0Y0RjdGODtcbiAgICAtLWNvbG9yLWJnLWRhcms6ICMzNjQ1NEY7XG4gICAgLS1jb2xvci1iZy1saWdodDogI0ZGRkZGRjtcbiAgICAtLWNvbG9yLWJnLWV4dHJhOiBkYXJrc2xhdGVncmF5O1xuICAgIC0tY29sb3ItYmctaG92ZXItZGFyazogIzM2NDU0RjtcbiAgICAtLWNvbG9yLWJnLWhvdmVyLWxpZ2h0OiAjRjdGOEY5O1xuXG4gICAgLS1jb2xvci1oaWdobGlnaHQ6ICM2MGE1ZmE7XG5cbiAgICAvKiBMaW5rcyAqL1xuICAgIC0tY29sb3ItbGluazogIzFkNGVkODtcbiAgICAtLWNvbG9yLWxpbmstaG92ZXI6ICMxZTQwYWY7XG4gICAgLS1jb2xvci1saW5rLXVuZGVybGluZTogcmdiYSgyOSwgNzgsIDIxNiwgMC4zNSk7XG5cbiAgICAvKiBSYW5raW5ncyAqL1xuICAgIC0tY29sb3ItcG9zLWZpcnN0OiAjRkZENzAwO1xuICAgIC0tY29sb3ItcG9zLXNlY29uZDogI0MwQzBDMDtcbiAgICAtLWNvbG9yLXBvcy10aGlyZDogI0NEN0YzMjtcbiAgICAtLWNvbG9yLXBvcy1mb3VyLWZpdmU6ICNBQUJGQzk7XG5cbiAgICAtLWNvbG9yLWVycm9yOiAjRDMyRjJGO1xuICAgIC0tY29sb3ItZXJyb3ItYmc6IHJnYmEoMjIwLCAzOCwgMzgsIDAuMDUpO1xuXG4gICAgLyogQm9yZGVyICovXG4gICAgLS1ib3JkZXItY29sb3ItbGlnaHQ6ICNFNUU1RTU7XG4gICAgLS1ib3JkZXItY29sb3Itc3RhbmRhcmQ6IGxpZ2h0Z3JheTtcbiAgICAtLWJvcmRlci1jb2xvci1kYXJrOiAjMzY0NTRGO1xuICAgIC0tYm9yZGVyLXdpZHRoLXNtOiAxcHg7XG4gICAgLS1ib3JkZXItd2lkdGgtbWQ6IDJweDtcbiAgICAtLWJvcmRlci13aWR0aC14bDogM3B4O1xuICAgIC0tYm9yZGVyLXJhZGl1czogOHB4O1xuXG4gICAgLyogU3BhY2luZyAqL1xuICAgIC0tc3BhY2UteHM6ICA0cHg7XG4gICAgLS1zcGFjZS1zbTogIDhweDtcbiAgICAtLXNwYWNlLW1kOiAxMnB4O1xuICAgIC0tc3BhY2UtbGc6IDE2cHg7XG4gICAgLS1zcGFjZS14bDogMjRweDtcblxuICAgIC8qIEZvbnQgKi9cbiAgICAtLWZvbnQtaGVhZGluZzogXCJQaWxsR290aGljMzAwbWdCb2xkXCIsIFwiTHVjaWRhIEdyYW5kZVwiLCBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmO1xuICAgIC0tZm9udC1iYXNlOiBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgICAtLWZvbnQtc2l6ZS0zeHM6ICAwLjYyNXJlbTtcbiAgICAtLWZvbnQtc2l6ZS0yeHM6ICAwLjY4NzVyZW07XG4gICAgLS1mb250LXNpemUteHM6ICAgMC43NXJlbTtcbiAgICAtLWZvbnQtc2l6ZS1zbTogICAwLjgxMjVyZW07XG4gICAgLS1mb250LXNpemUtbWQ6ICAgMC44NzVyZW07XG4gICAgLS1mb250LXNpemUtYmFzZTogMXJlbTtcbiAgICAtLWZvbnQtc2l6ZS1sZzogICAxLjEyNXJlbTtcbiAgICAtLWZvbnQtc2l6ZS14bDogICAxLjI1cmVtO1xuICAgIC0tZm9udC1zaXplLTJ4bDogIDEuNXJlbTtcbiAgICAtLWZvbnQtc2l6ZS0zeGw6ICAxLjg3NXJlbTtcbiAgICAtLWZvbnQtc2l6ZS00eGw6ICAyLjVyZW07XG4gICAgLS1mb250LXdlaWdodC1ib2xkOiA2MDA7XG4gICAgLS1mb250LWNvbG9yLWRhcms6ICMzNjQ1NEY7XG4gICAgLS1mb250LWNvbG9yLWxpZ2h0OiAjRjRGN0Y4O1xuXG4gICAgLS16LWluZGV4LXRhYmxlLXN0aWNreTogMjsgICAgICAgICAgLyogdGJvZHkgc3RpY2t5IGNvbHVtbnMgKi9cbiAgICAtLXotaW5kZXgtdGFibGUtc3RpY2t5LWhlYWQ6IDM7ICAgICAvKiB0aGVhZCBzdGlja3kgY29sdW1ucyAqL1xuICAgIC0tei1pbmRleC1zdGlja3ktaGVhZGVyOiAxMDsgICAgICAgIC8qIEluLXBhZ2Ugc3RpY2t5IGhlYWRlcnMgKi9cbiAgICAtLXotaW5kZXgtbG9hZGluZy1vdmVybGF5OiAyMDsgICAgICAvKiBJbi1wYWdlL2NvbXBvbmVudCBsb2FkZXJzICovXG4gICAgLS16LWluZGV4LWRyb3Bkb3duOiA1MDA7ICAgICAgICAgICAgLyogTWVudXMgYW5kIGZseW91dHMgKi9cbiAgICAtLXotaW5kZXgtYmFja2Ryb3A6IDk5MDsgICAgICAgICAgICAvKiBEaW1tZXIgb3ZlcmxheXMgKi9cbiAgICAtLXotaW5kZXgtZHJhd2VyOiAxMDAwOyAgICAgICAgICAgICAvKiBPZmYtY2FudmFzIG5hdmlnYXRpb24gJiBzaWRlYmFycyAqL1xuICAgIC0tei1pbmRleC1tb2RhbDogMTA1MDsgICAgICAgICAgICAgIC8qIFNlYXJjaCBtb2RhbCAmIGRpYWxvZ3MgKi9cbn1cblxuaHRtbCB7XG4gICAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtYmFzZSk7XG4gICAgYmFja2dyb3VuZDogcmFkaWFsLWdyYWRpZW50KGVsbGlwc2UgYXQgYm90dG9tLCB2YXIoLS1jb2xvci1iZy1ncmFkaWVudC1zdGFydCkgMCUsIHZhcigtLWNvbG9yLWJnLWdyYWRpZW50LWVuZCkgMTAwJSkgbm8tcmVwZWF0IGZpeGVkO1xuICAgIGNvbG9yOiB2YXIoLS1mb250LWNvbG9yLWRhcmspO1xufVxuXG5ib2R5IHtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1iYXNlKTtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIG1hcmdpbjogMDtcbiAgICBvdmVyZmxvdy13cmFwOiBicmVhay13b3JkO1xuICAgIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7XG59XG5cbnAge1xuICAgIG1hcmdpbjogNXB4IDA7XG59XG5cbmgxLCBoMiwgaDMsIGg0LCBoNSB7XG4gICAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtaGVhZGluZyk7XG4gICAgY29sb3I6IHZhcigtLWZvbnQtY29sb3ItZGFyayk7XG4gICAgbWFyZ2luOiAyMHB4IDAgMTBweCAwO1xufVxuXG4uZm9vdGVyIGgxLCAuZm9vdGVyIGgyLCAuZm9vdGVyIGgzLCAuZm9vdGVyIGg0LFxuLmZvb3RlciBoNSB7XG4gICAgY29sb3I6IHZhcigtLWZvbnQtY29sb3ItbGlnaHQpO1xufVxuXG5hLCBhOmxpbmssIGE6dmlzaXRlZCB7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWxpbmspO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuYTpob3ZlciwgYTphY3RpdmUge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1saW5rLWhvdmVyKTtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbn1cblxuLmhlYWRlciAucGF0cmVvbiB7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtM3hsKTtcbn1cblxuLmhlYWRlciAucGF0cmVvbiBhLFxuLmhlYWRlciAucGF0cmVvbiBhOmxpbmssXG4uaGVhZGVyIC5wYXRyZW9uIGE6dmlzaXRlZCB7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWJnLWRhcmspO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB0cmFuc2l0aW9uOiBjb2xvciAwLjE1cyBlYXNlO1xufVxuXG4uaGVhZGVyIC5wYXRyZW9uIGE6aXMoOmhvdmVyLCA6Zm9jdXMtdmlzaWJsZSwgOmFjdGl2ZSkge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1saW5rKTtcbn1cblxuLmZvbnQtYm9sZCB7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJvbGQpO1xufVxuXG4uZm9udC1tdXRlZCB7XG4gICAgY29sb3I6IHZhcigtLWZvbnQtY29sb3ItZGFyayk7XG59XG5cbi5mb250LWNvbG9yLWxpZ2h0IHtcbiAgICBjb2xvcjogdmFyKC0tZm9udC1jb2xvci1saWdodCk7XG59XG5cbi50ZXh0LWNlbnRlciB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uaGlkZGVuIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi5uby1saXN0LW1hcmtlcnMge1xuICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbn1cblxuaW5wdXRbdHlwZT1zdWJtaXRdLFxuaW5wdXRbdHlwZT1maWxlXSxcbnNlbGVjdCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYmctbGlnaHQpO1xufVxuXG50ZXh0YXJlYSxcbmlucHV0W3R5cGU9cGFzc3dvcmRdLFxuaW5wdXRbdHlwZT10ZXh0XSxcbmlucHV0W3R5cGU9ZW1haWxdIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1iZy1saWdodCk7XG59XG5cbnRleHRhcmVhLFxuaW5wdXRbdHlwZT1zdWJtaXRdLFxuaW5wdXRbdHlwZT1maWxlXSxcbmlucHV0W3R5cGU9cGFzc3dvcmRdLFxuaW5wdXRbdHlwZT10ZXh0XSxcbmlucHV0W3R5cGU9ZW1haWxdLFxuc2VsZWN0IHtcbiAgICBib3JkZXI6IHZhcigtLWJvcmRlci13aWR0aC1tZCkgc29saWQgdmFyKC0tYm9yZGVyLWNvbG9yLWxpZ2h0KTtcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtcbiAgICBjb2xvcjogdmFyKC0tZm9udC1jb2xvci1kYXJrKTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgcGFkZGluZzogdmFyKC0tc3BhY2Utc20pIHZhcigtLXNwYWNlLW1kKTtcbn1cblxuaW5wdXRbdHlwZT1jaGVja2JveF0ge1xuICAgIG1hcmdpbjogMDtcbn1cblxuLyogVGFibGUgKi9cbnRhYmxlIHtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1zbSk7XG4gICAgYm9yZGVyLWNvbGxhcHNlOiBzZXBhcmF0ZTtcbiAgICBib3JkZXItc3BhY2luZzogMDtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1iZy1saWdodCk7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7XG4gICAgYm9yZGVyOiB2YXIoLS1ib3JkZXItd2lkdGgtc20pIHNvbGlkIHZhcigtLWJvcmRlci1jb2xvci1saWdodCk7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxudGFibGUgdGhlYWQge1xuICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWhlYWRpbmcpO1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1iZy1saWdodCk7XG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG59XG5cbnRhYmxlIHRoZWFkIHRyIHRoLFxudGFibGUgdGhlYWQgdHIgdGQge1xuICAgIHBhZGRpbmc6IHZhcigtLXNwYWNlLW1kKSB2YXIoLS1zcGFjZS1sZyk7XG4gICAgY29sb3I6IHdoaXRlO1xuICAgIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLWJnLWRhcmspO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBib3JkZXItYm90dG9tOiB2YXIoLS1ib3JkZXItd2lkdGgtc20pIHNvbGlkIHZhcigtLWJvcmRlci1jb2xvci1saWdodCk7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJvbGQpO1xufVxuXG50YWJsZSB0aGVhZCBhLFxudGFibGUgdGhlYWQgYTppcyg6bGluaywgOnZpc2l0ZWQsIDpob3ZlciwgOmFjdGl2ZSwgOmZvY3VzLCA6Zm9jdXMtdmlzaWJsZSkge1xuICAgIGNvbG9yOiB2YXIoLS1mb250LWNvbG9yLWxpZ2h0KTtcbiAgICB0ZXh0LWRlY29yYXRpb24tY29sb3I6IGN1cnJlbnRDb2xvcjtcbn1cblxuLmZsZXgtcm93LWl0ZW0tLXdvcmxkLXJlY29yZCBhLFxuLmZsZXgtcm93LWl0ZW0tLXdvcmxkLXJlY29yZCBhOmlzKDpsaW5rLCA6dmlzaXRlZCwgOmhvdmVyLCA6YWN0aXZlLCA6Zm9jdXMsIDpmb2N1cy12aXNpYmxlKSxcbi5mbGV4LXJvdy0tbmV3cy1mb290ZXIgYSxcbi5mbGV4LXJvdy0tbmV3cy1mb290ZXIgYTppcyg6bGluaywgOnZpc2l0ZWQsIDpob3ZlciwgOmFjdGl2ZSwgOmZvY3VzLCA6Zm9jdXMtdmlzaWJsZSksXG4uc2lkZS1hcmVhIGEsXG4uc2lkZS1hcmVhIGE6aXMoOmxpbmssIDp2aXNpdGVkLCA6aG92ZXIsIDphY3RpdmUsIDpmb2N1cywgOmZvY3VzLXZpc2libGUpLFxudGFibGUgdGJvZHkgYSxcbnRhYmxlIHRib2R5IGE6aXMoOmxpbmssIDp2aXNpdGVkLCA6aG92ZXIsIDphY3RpdmUsIDpmb2N1cywgOmZvY3VzLXZpc2libGUpIHtcbiAgICBjb2xvcjogdmFyKC0tZm9udC1jb2xvci1kYXJrKTtcbiAgICB0ZXh0LWRlY29yYXRpb24tY29sb3I6IGN1cnJlbnRDb2xvcjtcbn1cblxudGFibGUgdGJvZHkgdHIgdGgsXG50YWJsZSB0Ym9keSB0ciB0ZCB7XG4gICAgcGFkZGluZzogdmFyKC0tc3BhY2Utc20pIHZhcigtLXNwYWNlLW1kKTtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIGNvbG9yOiB2YXIoLS1mb250LWNvbG9yLWRhcmspO1xuICAgIGJvcmRlci1ib3R0b206IHZhcigtLWJvcmRlci13aWR0aC1zbSkgc29saWQgdmFyKC0tYm9yZGVyLWNvbG9yLWxpZ2h0KTtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG50YWJsZSB0Ym9keSB0cjpsYXN0LWNoaWxkIHRkIHtcbiAgICBib3JkZXItYm90dG9tOiBub25lO1xufVxuXG50YWJsZSB0Ym9keSB0cjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYmctaG92ZXItbGlnaHQpO1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4xNXMgZWFzZTtcbn1cblxudGFibGUgdGJvZHkgdHI6bnRoLWNoaWxkKG9kZCkge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJnLWhvdmVyLWxpZ2h0KTtcbn1cblxuLnN0aWNreS10YWJsZSB7XG4gICAgb3ZlcmZsb3cteDogYXV0bztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgbWluLXdpZHRoOiAwO1xuICAgIG92ZXJzY3JvbGwtYmVoYXZpb3IteDogY29udGFpbjtcbn1cblxuLnN0aWNreS10YWJsZSB0YWJsZSB7XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG59XG5cbi5zdGlja3ktdGFibGUgdGFibGUgdGhlYWQgdHI6Zmlyc3QtY2hpbGQgdGg6Zmlyc3QtY2hpbGQsXG4uc3RpY2t5LXRhYmxlIHRhYmxlIHRoZWFkIHRyOmZpcnN0LWNoaWxkIHRkOmZpcnN0LWNoaWxkIHtcbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiBjYWxjKHZhcigtLWJvcmRlci1yYWRpdXMpIC0gdmFyKC0tYm9yZGVyLXdpZHRoLXNtKSk7XG59XG5cbi5zdGlja3ktdGFibGUgdGFibGUgdGhlYWQgdHI6Zmlyc3QtY2hpbGQgdGg6bGFzdC1jaGlsZCxcbi5zdGlja3ktdGFibGUgdGFibGUgdGhlYWQgdHI6Zmlyc3QtY2hpbGQgdGQ6bGFzdC1jaGlsZCB7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IGNhbGModmFyKC0tYm9yZGVyLXJhZGl1cykgLSB2YXIoLS1ib3JkZXItd2lkdGgtc20pKTtcbn1cblxuLnN0aWNreS10YWJsZSB0YWJsZSB0Ym9keSB0cjpsYXN0LWNoaWxkIHRoOmZpcnN0LWNoaWxkLFxuLnN0aWNreS10YWJsZSB0YWJsZSB0Ym9keSB0cjpsYXN0LWNoaWxkIHRkOmZpcnN0LWNoaWxkIHtcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiBjYWxjKHZhcigtLWJvcmRlci1yYWRpdXMpIC0gdmFyKC0tYm9yZGVyLXdpZHRoLXNtKSk7XG59XG5cbi5zdGlja3ktdGFibGUgdGFibGUgdGJvZHkgdHI6bGFzdC1jaGlsZCB0aDpsYXN0LWNoaWxkLFxuLnN0aWNreS10YWJsZSB0YWJsZSB0Ym9keSB0cjpsYXN0LWNoaWxkIHRkOmxhc3QtY2hpbGQge1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiBjYWxjKHZhcigtLWJvcmRlci1yYWRpdXMpIC0gdmFyKC0tYm9yZGVyLXdpZHRoLXNtKSk7XG59XG5cbi5zdGlja3ktdGFibGUtLWNvbXBhcmUgdGFibGUgdGhlYWQgaDMgIHtcbiAgICBjb2xvcjogdmFyKC0tZm9udC1jb2xvci1saWdodCk7XG4gICAgbWFyZ2luOiB2YXIoLS1zcGFjZS14cyk7XG59XG5cbi5zdGlja3ktdGFibGUtLWNvbXBhcmUgdGFibGUgdGQge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJnLWxpZ2h0KTtcbn1cblxuLnN0aWNreS10YWJsZS0taGFyZHdhcmUtcmVzdWx0cyAgdGFibGUgdGJvZHkgdHIgdGQ6bnRoLWNoaWxkKGV2ZW4pLFxuLnN0aWNreS10YWJsZS0tY29tcGFyZSB0YWJsZSB0Ym9keSB0ciB0ZDpudGgtY2hpbGQoZXZlbikge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJnLWhvdmVyLWxpZ2h0KTtcbn1cblxuLnN0aWNreS10YWJsZS0tY29tcGFyZSB0YWJsZSB0aGVhZCB0ciB0aCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYmctZGFyayk7XG4gICAgY29sb3I6ICNmZmZmZmY7XG4gICAgYm9yZGVyLXJpZ2h0OiB2YXIoLS1ib3JkZXItd2lkdGgtc20pIHNvbGlkIHZhcigtLWJvcmRlci1jb2xvci1saWdodCk7XG59XG5cbi5zdGlja3ktdGFibGUgdGFibGUgdGhlYWQgdGguc3RpY2t5LWNvbCxcbi5zdGlja3ktdGFibGUgdGFibGUgdGhlYWQgdGQuc3RpY2t5LWNvbCxcbi5zdGlja3ktdGFibGUtLWNvbXBhcmUgdGFibGUgdGhlYWQgdGguc3RpY2t5LWNvbCB7XG4gICAgcG9zaXRpb246IC13ZWJraXQtc3RpY2t5O1xuICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgbGVmdDogMDtcbiAgICB6LWluZGV4OiB2YXIoLS16LWluZGV4LXRhYmxlLXN0aWNreS1oZWFkLCAzKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1iZy1kYXJrKTtcbiAgICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICAgIGJveC1zaGFkb3c6IDJweCAwIDVweCByZ2JhKDAsIDAsIDAsIDAuMDgpO1xufVxuXG4uc3RpY2t5LXRhYmxlIHRhYmxlIHRib2R5IHRoLnN0aWNreS1jb2wsXG4uc3RpY2t5LXRhYmxlIHRhYmxlIHRib2R5IHRkLnN0aWNreS1jb2wsXG4uc3RpY2t5LXRhYmxlLS1jb21wYXJlIHRhYmxlIHRib2R5IHRoLnN0aWNreS1jb2wge1xuICAgIHBvc2l0aW9uOiAtd2Via2l0LXN0aWNreTtcbiAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgIGxlZnQ6IDA7XG4gICAgei1pbmRleDogdmFyKC0tei1pbmRleC10YWJsZS1zdGlja3ksIDIpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJnLWxpZ2h0KTtcbiAgICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICAgIGJveC1zaGFkb3c6IDJweCAwIDVweCByZ2JhKDAsIDAsIDAsIDAuMDgpO1xufVxuXG5ib2R5LndhaXRpbmcsXG5ib2R5LndhaXRpbmcgKiB7XG4gICAgY3Vyc29yOiB3YWl0O1xufVxuXG4udGFibGUtbmF2aWdhdGlvbiB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBtYXJnaW4tdG9wOiB2YXIoLS1zcGFjZS1tZCk7XG59XG5cbi50YWJsZS1uYXZpZ2F0aW9uIC5wYWdpbmF0aW9uIHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cblxuLnRhYmxlLW5hdmlnYXRpb24gLnBhZ2luYXRpb24gbGk6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1zcGFjZS14cyk7XG59XG5cbi50YWJsZS1uYXZpZ2F0aW9uIC5wYWdpbmF0aW9uIC5idXR0b24ge1xuICAgIG1pbi13aWR0aDogMzJweDtcbiAgICBoZWlnaHQ6IDMycHg7XG4gICAgcGFkZGluZzogMCB2YXIoLS1zcGFjZS14cyk7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7XG4gICAgYm9yZGVyOiB2YXIoLS1ib3JkZXItd2lkdGgtc20pIHNvbGlkIHZhcigtLWJvcmRlci1jb2xvci1saWdodCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYmctbGlnaHQpO1xuICAgIGNvbG9yOiB2YXIoLS1mb250LWNvbG9yLWRhcmspO1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjE1cyBlYXNlLCBjb2xvciAwLjE1cyBlYXNlO1xufVxuXG4udGFibGUtbmF2aWdhdGlvbiAucGFnaW5hdGlvbiAuYnV0dG9uLmJ1dHRvbi0tcHJpbWFyeSxcbi50YWJsZS1uYXZpZ2F0aW9uIC5wYWdpbmF0aW9uIC5idXR0b24uZm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWZvbnQtY29sb3ItZGFyayk7XG4gICAgY29sb3I6ICNmZmZmZmY7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1mb250LWNvbG9yLWRhcmspO1xufVxuXG4udGFibGUtbmF2aWdhdGlvbiAucGFnaW5hdGlvbiAuYnV0dG9uOm5vdCguYnV0dG9uLS1wcmltYXJ5KTpub3QoLmZvY3VzKTpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYmctaG92ZXItbGlnaHQsICNmM2Y0ZjYpO1xufVxuXG4udGFibGUtYXZhdGFyLXdyYXBwZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBnYXA6IHZhcigtLXNwYWNlLW1kKTtcbn1cblxuLnRhYmxlLWF2YXRhci13cmFwcGVyIGltZyB7XG4gICAgd2lkdGg6IDMwcHg7XG4gICAgaGVpZ2h0OiAzMHB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbn1cblxuLnRhYmxlLWF2YXRhci13cmFwcGVyIC5wYXJ0aWNpcGFudCB7XG4gICAgd2lkdGg6IDEzMHB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG59XG5cbi50YWJsZS1hdmF0YXItd3JhcHBlci0tZm9sbG93ZXJzIHtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1iZy1saWdodCk7XG4gICAgYm9yZGVyOiB2YXIoLS1ib3JkZXItd2lkdGgtc20pIHNvbGlkIHZhcigtLWJvcmRlci1jb2xvci1saWdodCk7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7XG4gICAgcGFkZGluZzogdmFyKC0tc3BhY2UteHMpIHZhcigtLXNwYWNlLXNtKTtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4xNXMgZWFzZSwgYm9yZGVyLWNvbG9yIDAuMTVzIGVhc2U7XG59XG5cbi50YWJsZS1hdmF0YXItd3JhcHBlci0tZm9sbG93ZXJzOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1iZy1ob3Zlci1saWdodCk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1ib3JkZXItY29sb3Itc3RhbmRhcmQpO1xufVxuXG4udGFibGUtZmlyc3QtcG9zIHtcbiAgICBib3JkZXItbGVmdDogNXB4IHNvbGlkIHZhcigtLWNvbG9yLXBvcy1maXJzdCk7XG59XG5cbi50YWJsZS1zZWNvbmQtcG9zIHtcbiAgICBib3JkZXItbGVmdDogNXB4IHNvbGlkIHZhcigtLWJvcmRlci1jb2xvci1saWdodCk7XG59XG5cbi50YWJsZS10aGlyZC1wb3Mge1xuICAgIGJvcmRlci1sZWZ0OiA1cHggc29saWQgdmFyKC0tY29sb3ItcG9zLXRoaXJkKTtcbn1cblxuLnRhYmxlLXBvcyB7XG4gICAgYm9yZGVyLWxlZnQ6IDVweCBzb2xpZCBsaWdodGdyZXk7XG59XG5cbi5zY3JvbGxhYmxlLXRhYmxlLXdyYXBwZXIge1xuICAgIG1heC1oZWlnaHQ6IDIwMHB4O1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgb3ZlcmZsb3cteDogYXV0bztcbiAgICBib3JkZXI6IHZhcigtLWJvcmRlci13aWR0aC1zbSkgc29saWQgdmFyKC0tYm9yZGVyLWNvbG9yLWxpZ2h0KTtcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1iZy1saWdodCk7XG59XG5cbi5zY3JvbGxhYmxlLXRhYmxlLXdyYXBwZXIgdGFibGUge1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIG1hcmdpbjogMDtcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbn1cblxuLnNjcm9sbGFibGUtdGFibGUtd3JhcHBlciB0YWJsZSB0aGVhZCB0ciB0aCxcbi5zY3JvbGxhYmxlLXRhYmxlLXdyYXBwZXIgdGFibGUgdGhlYWQgdHIgdGQge1xuICAgIHBvc2l0aW9uOiAtd2Via2l0LXN0aWNreTtcbiAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgIHRvcDogMDtcbiAgICB6LWluZGV4OiAxMDtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1iZy1kYXJrKTtcbn1cblxuLyogR2xvYmFsIHNlYXJjaCAqL1xuYm9keS5zZWFyY2gtb3BlbiB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLmdsb2JhbC1zZWFyY2gtYmFja2Ryb3Age1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIGluc2V0OiAwO1xuICAgIHdpZHRoOiAxMDB2dztcbiAgICBoZWlnaHQ6IDEwMHZoO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMywgNiwgMjMsIDAuNzUpO1xuICAgIGJhY2tkcm9wLWZpbHRlcjogYmx1cig0cHgpO1xuICAgIHotaW5kZXg6IHZhcigtLXotaW5kZXgtYmFja2Ryb3AsIDk5MCk7XG59XG5cbi5nbG9iYWwtc2VhcmNoLFxuLmdsb2JhbC1zZWFyY2gtd3JhcHBlciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uZ2xvYmFsLXNlYXJjaC1idXR0b24ge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWxnKTtcbn1cblxuLmdsb2JhbC1zZWFyY2gtYXV0b2NvbXBsZXRlIHtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1zbSk7XG4gICAgYmFja2dyb3VuZDogIzAzMDYxNztcbiAgICBib3JkZXItcmFkaXVzOiAwIDAgOHB4IDhweDtcbiAgICBib3gtc2hhZG93OiAwIDEwcHggMjVweCAtNXB4IHJnYmEoMCwgMCwgMCwgMC41KTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4uZ2xvYmFsLXNlYXJjaC1hdXRvY29tcGxldGUtaGVhZGVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIHBhZGRpbmc6IDhweCAxMnB4O1xuICAgIGJhY2tncm91bmQ6ICMwMzA2MTc7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wOCk7XG4gICAgY29sb3I6ICM5NGEzYjg7XG59XG5cbi5nbG9iYWwtc2VhcmNoLWhlYWRlci10b29scyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGdhcDogOHB4O1xufVxuXG4uZ2xvYmFsLXNlYXJjaC1zcGlubmVyIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGNvbG9yOiAjMzhiZGY4O1xufVxuXG4uZ2xvYmFsLXNlYXJjaC1jb250ZW50IHtcbiAgICBwYWRkaW5nOiA4cHggMTJweCAyNHB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJnLWRhcmspO1xufVxuXG4uZ2xvYmFsLXNlYXJjaC1jb250ZW50IC5jYXRlZ29yeS1oZWFkZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBnYXA6IDhweDtcbiAgICBwYWRkaW5nOiA4cHggMTJweDtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDgpO1xuICAgIGJvcmRlci1yYWRpdXM6IDZweDtcbiAgICBjb2xvcjogI2NiZDVlMTtcbiAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtYm9sZCk7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuMDVlbTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG4uZ2xvYmFsLXNlYXJjaC1jb250ZW50IC5jYXRlZ29yeS1oZWFkZXIgaSB7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWhpZ2hsaWdodCk7XG59XG5cbi5nbG9iYWwtc2VhcmNoLWNvbnRlbnQgLmNhdGVnb3J5LWJhZGdlIHtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBwYWRkaW5nOiAycHggN3B4O1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNSk7XG4gICAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgICBjb2xvcjogI2ZmZmZmZjtcbn1cblxuLmdsb2JhbC1zZWFyY2gtY29udGVudCAuc2VhcmNoLWl0ZW0tbGlzdCB7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1hcmdpbjogNHB4IDAgMDtcbn1cblxuLmdsb2JhbC1zZWFyY2gtY29udGVudCAuc2VhcmNoLWl0ZW0ge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDYpO1xufVxuXG4uZ2xvYmFsLXNlYXJjaC1jb250ZW50IC5zZWFyY2gtaXRlbTpsYXN0LWNoaWxkIHtcbiAgICBib3JkZXItYm90dG9tOiBub25lO1xufVxuXG4uZ2xvYmFsLXNlYXJjaC1jb250ZW50IC5pdGVtLWxpbmssXG4uZ2xvYmFsLXNlYXJjaC1jb250ZW50IC5pdGVtLWxpbms6bGluayxcbi5nbG9iYWwtc2VhcmNoLWNvbnRlbnQgLml0ZW0tbGluazp2aXNpdGVkIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIG1pbi1oZWlnaHQ6IDI1cHg7XG4gICAgcGFkZGluZzogMTBweCAxMnB4O1xuICAgIGNvbG9yOiAjZjhmYWZjO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjE1cyBlYXNlLCBjb2xvciAwLjE1cyBlYXNlLCB0cmFuc2Zvcm0gMC4xNXMgZWFzZTtcbn1cblxuLmdsb2JhbC1zZWFyY2gtY29udGVudCAuaXRlbS1saW5rOmhvdmVyLFxuLmdsb2JhbC1zZWFyY2gtY29udGVudCAuaXRlbS1saW5rOmZvY3VzLFxuLmdsb2JhbC1zZWFyY2gtY29udGVudCAuaXRlbS1saW5rOmFjdGl2ZSxcbi5nbG9iYWwtc2VhcmNoLWNvbnRlbnQgLml0ZW0tbGluay5pcy1hY3RpdmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xMik7XG4gICAgY29sb3I6ICNmZmZmZmY7XG4gICAgb3V0bGluZTogbm9uZTtcbn1cblxuLmdsb2JhbC1zZWFyY2gtY29udGVudCAuaXRlbS1hcnJvdyB7XG4gICAgY29sb3I6ICM2NDc0OGI7XG4gICAgdHJhbnNpdGlvbjogY29sb3IgMC4xNXMgZWFzZSwgdHJhbnNmb3JtIDAuMTVzIGVhc2U7XG59XG5cbi5nbG9iYWwtc2VhcmNoLWNvbnRlbnQgLml0ZW0tbGluazppcyg6aG92ZXIsIDpmb2N1cywgOmFjdGl2ZSwgLmlzLWFjdGl2ZSkgLml0ZW0tYXJyb3cge1xuICAgIGNvbG9yOiAjMzhiZGY4O1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgzcHgpO1xufVxuXG4uZ2xvYmFsLXNlYXJjaC1jb250ZW50IC5zZWFyY2gtZW1wdHktc3RhdGUsXG4uZ2xvYmFsLXNlYXJjaC1jb250ZW50IC5zZWFyY2gtcHJvbXB0LXN0YXRlIHtcbiAgICBwYWRkaW5nOiA0MHB4IDIwcHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGNvbG9yOiAjOTRhM2I4O1xufVxuXG4uZ2xvYmFsLXNlYXJjaC1jb250ZW50IC5lbXB0eS1pY29uLFxuLmdsb2JhbC1zZWFyY2gtY29udGVudCAucHJvbXB0LWljb24ge1xuICAgIG1hcmdpbi1ib3R0b206IDEycHg7XG4gICAgY29sb3I6ICM2NDc0OGI7XG59XG5cbi5nbG9iYWwtc2VhcmNoLWNvbnRlbnQgLnByb21wdC1pY29uIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItaGlnaGxpZ2h0KTtcbn1cblxuLmdsb2JhbC1zZWFyY2gtY29udGVudCAuZW1wdHktdGl0bGUsXG4uZ2xvYmFsLXNlYXJjaC1jb250ZW50IC5wcm9tcHQtdGl0bGUge1xuICAgIG1hcmdpbi1ib3R0b206IDZweDtcbiAgICBjb2xvcjogI2YxZjVmOTtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1sZyk7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJvbGQpO1xufVxuXG4uZ2xvYmFsLXNlYXJjaC1jb250ZW50IC5lbXB0eS1zdWJ0aXRsZSxcbi5nbG9iYWwtc2VhcmNoLWNvbnRlbnQgLnByb21wdC1zdWJ0aXRsZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWF4LXdpZHRoOiAzMjBweDtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1zbSk7XG4gICAgbGluZS1oZWlnaHQ6IDEuNDtcbn1cblxuLyogTmF2aWdhdGlvbiAqL1xuLm5hdmlnYXRpb24ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1iZy1kYXJrKTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbn1cblxuLm5hdiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtaGVhZGluZyk7XG59XG5cbi5uYXZfX21vYmlsZS1iYXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmc6IDZweCAxNnB4O1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbi5uYXZfX21vYmlsZS1hY3Rpb25zIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZ2FwOiAxMHB4O1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xufVxuXG4vKiBNb2JpbGUgQmFyIEFjY291bnQgRHJvcGRvd24gKi9cbi5uYXZfX2Ryb3Bkb3duIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5uYXZfX2FjY291bnQtYnRuIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgZ2FwOiA2cHg7XG4gICAgaGVpZ2h0OiA0MHB4O1xuICAgIHBhZGRpbmc6IDAgMTJweDtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDgpO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNSk7XG4gICAgYm9yZGVyLXJhZGl1czogNnB4O1xuICAgIGNvbG9yOiB2YXIoLS1mb250LWNvbG9yLWxpZ2h0KTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjJzIGVhc2UsIGJvcmRlci1jb2xvciAwLjJzIGVhc2UsIGNvbG9yIDAuMnMgZWFzZTtcbn1cblxuLm5hdl9fYWNjb3VudC1idG46aXMoOmhvdmVyLCA6Zm9jdXMtdmlzaWJsZSksXG4ubmF2X19kcm9wZG93bi0tb3BlbiAubmF2X19hY2NvdW50LWJ0biB7XG4gICAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE1KTtcbiAgICBib3JkZXItY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4zKTtcbiAgICBjb2xvcjogI2ZmZmZmZjtcbn1cblxuLm5hdl9fYWNjb3VudC1idG46Zm9jdXMtdmlzaWJsZSB7XG4gICAgb3V0bGluZTogMnB4IHNvbGlkIHZhcigtLWZvbnQtY29sb3ItZGFyaywgIzAwNmVlMCk7XG4gICAgb3V0bGluZS1vZmZzZXQ6IDJweDtcbn1cblxuLm5hdl9fY2FyZXQge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLTN4cyk7XG4gICAgY29sb3I6ICMzOGJkZjg7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMnMgZWFzZSwgY29sb3IgMC4ycyBlYXNlO1xufVxuXG4ubmF2X19kcm9wZG93bi0tb3BlbiAubmF2X19jYXJldCB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbiAgICBjb2xvcjogIzM4YmRmODtcbn1cblxuLm5hdl9fZHJvcGRvd24tbWVudSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogY2FsYygxMDAlICsgOHB4KTtcbiAgICByaWdodDogMDtcbiAgICBtaW4td2lkdGg6IDIwMHB4O1xuICAgIHBhZGRpbmc6IDZweCAwO1xuICAgIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLWJnLWxpZ2h0KTtcbiAgICBib3JkZXI6IHZhcigtLWJvcmRlci13aWR0aC1zbSkgc29saWQgdmFyKC0tYm9yZGVyLWNvbG9yLWxpZ2h0KTtcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtcbiAgICBib3gtc2hhZG93OiAwIDhweCAyNHB4IHJnYmEoMCwgMCwgMCwgMC4xOCk7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB6LWluZGV4OiB2YXIoLS16LWluZGV4LWRyb3Bkb3duLCA1MDApO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNnB4KTtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMnMgZWFzZSwgdHJhbnNmb3JtIDAuMnMgZWFzZSwgdmlzaWJpbGl0eSAwLjJzIGVhc2U7XG59XG5cbi5uYXZfX2Ryb3Bkb3duLS1vcGVuIC5uYXZfX2Ryb3Bkb3duLW1lbnUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgcG9pbnRlci1ldmVudHM6IGF1dG87XG59XG5cbi5uYXZfX2Ryb3Bkb3duLWhlYWRlciB7XG4gICAgcGFkZGluZzogMTBweCAxNnB4O1xuICAgIGJvcmRlci1ib3R0b206IHZhcigtLWJvcmRlci13aWR0aC1zbSkgc29saWQgdmFyKC0tYm9yZGVyLWNvbG9yLWxpZ2h0KTtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1iZy1ob3Zlci1saWdodCk7XG59XG5cbi5uYXZfX2Ryb3Bkb3duLXVzZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1ib2xkKTtcbiAgICBjb2xvcjogdmFyKC0tZm9udC1jb2xvci1kYXJrKTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cbi5uYXZfX2Ryb3Bkb3duLWl0ZW0sXG4ubmF2X19kcm9wZG93bi1pdGVtOnZpc2l0ZWQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBnYXA6IDEwcHg7XG4gICAgcGFkZGluZzogMTBweCAxNnB4O1xuICAgIGNvbG9yOiB2YXIoLS1mb250LWNvbG9yLWRhcmspO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuMTVzIGVhc2UsIGNvbG9yIDAuMTVzIGVhc2U7XG59XG5cbi5uYXZfX2Ryb3Bkb3duLWl0ZW06aXMoOmhvdmVyLCA6Zm9jdXMtdmlzaWJsZSwgOmFjdGl2ZSkge1xuICAgIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLWJnLWhvdmVyLWxpZ2h0KTtcbiAgICBjb2xvcjogdmFyKC0tZm9udC1jb2xvci1kYXJrKTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi5uYXZfX2Ryb3Bkb3duLWl0ZW0gaSB7XG4gICAgd2lkdGg6IDE2cHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGNvbG9yOiAjNjQ3NDhiO1xuICAgIHRyYW5zaXRpb246IGNvbG9yIDAuMTVzIGVhc2U7XG59XG5cbi5uYXZfX2Ryb3Bkb3duLWl0ZW06aXMoOmhvdmVyLCA6Zm9jdXMtdmlzaWJsZSkgaSB7XG4gICAgY29sb3I6IHZhcigtLWZvbnQtY29sb3ItZGFyayk7XG59XG5cbi5uYXZfX2Ryb3Bkb3duLWRpdmlkZXIge1xuICAgIGhlaWdodDogMXB4O1xuICAgIGJhY2tncm91bmQ6IHZhcigtLWJvcmRlci1jb2xvci1saWdodCk7XG4gICAgbWFyZ2luOiA0cHggMDtcbn1cblxuLm5hdl9fZHJvcGRvd24taXRlbS0tbG9nb3V0LFxuLm5hdl9fZHJvcGRvd24taXRlbS0tbG9nb3V0OnZpc2l0ZWQge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1lcnJvciwgI0QzMkYyRik7XG59XG5cbi5uYXZfX2Ryb3Bkb3duLWl0ZW0tLWxvZ291dCBpIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItZXJyb3IsICNEMzJGMkYpO1xufVxuXG4ubmF2X19kcm9wZG93bi1pdGVtLS1sb2dvdXQ6aXMoOmhvdmVyLCA6Zm9jdXMtdmlzaWJsZSwgOmFjdGl2ZSkge1xuICAgIGJhY2tncm91bmQ6ICNmZWYyZjI7XG4gICAgY29sb3I6ICNiOTFjMWM7XG59XG5cbi5uYXZfX2Ryb3Bkb3duLWl0ZW0tLWxvZ291dDppcyg6aG92ZXIsIDpmb2N1cy12aXNpYmxlKSBpIHtcbiAgICBjb2xvcjogI2I5MWMxYztcbn1cblxuLm5hdl9fYnVyZ2VyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgd2lkdGg6IDQ0cHg7XG4gICAgaGVpZ2h0OiA0NHB4O1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBib3JkZXItcmFkaXVzOiA2cHg7XG4gICAgY29sb3I6IHZhcigtLWZvbnQtY29sb3ItbGlnaHQpO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWxnKTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjJzIGVhc2UsIGNvbG9yIDAuMnMgZWFzZTtcbn1cblxuLm5hdl9fYnVyZ2VyIGkge1xuICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbn1cblxuLm5hdl9fYnVyZ2VyOmlzKDpob3ZlciwgOmZvY3VzLXZpc2libGUpIHtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSk7XG4gICAgY29sb3I6ICNmZmZmZmY7XG59XG5cbi5uYXZfX292ZXJsYXkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIGluc2V0OiAwO1xuICAgIHdpZHRoOiAxMDB2dztcbiAgICBoZWlnaHQ6IDEwMHZoO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMywgNiwgMjMsIDAuNyk7XG4gICAgYmFja2Ryb3AtZmlsdGVyOiBibHVyKDJweCk7XG4gICAgei1pbmRleDogdmFyKC0tei1pbmRleC1iYWNrZHJvcCwgOTkwKTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3MgZWFzZSwgdmlzaWJpbGl0eSAwLjNzIGVhc2U7XG59XG5cbi5uYXZfX2RyYXdlciB7XG4gICAgd2lkdGg6IDEwMCU7XG59XG5cbi5uYXZfX2RyYXdlci1oZWFkZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgcGFkZGluZzogMTZweCAyMHB4O1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSk7XG59XG5cbi5uYXZfX2RyYXdlci10aXRsZSB7XG4gICAgY29sb3I6ICNmZmZmZmY7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBsZXR0ZXItc3BhY2luZzogMC41cHg7XG59XG5cbi5uYXZfX2Nsb3NlIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgd2lkdGg6IDQwcHg7XG4gICAgaGVpZ2h0OiA0MHB4O1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBib3JkZXItcmFkaXVzOiA2cHg7XG4gICAgY29sb3I6IHZhcigtLWZvbnQtY29sb3ItbGlnaHQpO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuMnMgZWFzZSwgY29sb3IgMC4ycyBlYXNlO1xufVxuXG4ubmF2X19jbG9zZTppcyg6aG92ZXIsIDpmb2N1cy12aXNpYmxlKSB7XG4gICAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpO1xuICAgIGNvbG9yOiAjZmZmZmZmO1xufVxuXG4ubmF2X19saXN0IHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xufVxuXG4ubmF2X19pdGVtIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5uYXZfX2xpbmssXG4ubmF2X19saW5rOmxpbmssXG4ubmF2X19saW5rOnZpc2l0ZWQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBwYWRkaW5nOiAxMnB4IDE2cHg7XG4gICAgY29sb3I6IHZhcigtLWZvbnQtY29sb3ItbGlnaHQpO1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1ib2xkKTtcbiAgICBsZXR0ZXItc3BhY2luZzogMC4zcHg7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjJzIGVhc2UsIGNvbG9yIDAuMnMgZWFzZTtcbn1cblxuLm5hdl9fbGluazppcyg6aG92ZXIsIDpmb2N1cy12aXNpYmxlLCA6YWN0aXZlKSB7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tY29sb3ItYmctaG92ZXItZGFyayk7XG4gICAgY29sb3I6IHZhcigtLWZvbnQtY29sb3ItbGlnaHQpO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLm5hdl9fbGluay1yb3cge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgd2lkdGg6IDEwMCU7XG59XG5cbi5uYXZfX3N1Yi10b2dnbGUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5uYXZfX3N1YiB7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbn1cblxuLm5hdl9fc3ViLWxpbmssXG4ubmF2X19zdWItbGluazpsaW5rLFxuLm5hdl9fc3ViLWxpbms6dmlzaXRlZCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogMTBweCAxOHB4O1xuICAgIGNvbG9yOiB2YXIoLS1mb250LWNvbG9yLWRhcmspO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuMTVzIGVhc2UsIGNvbG9yIDAuMTVzIGVhc2U7XG59XG5cbi5uYXZfX3N1Yi1saW5rOmlzKDpob3ZlciwgOmZvY3VzLXZpc2libGUsIDphY3RpdmUpIHtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1iZy1ob3Zlci1kYXJrKTtcbiAgICBjb2xvcjogdmFyKC0tZm9udC1jb2xvci1saWdodCk7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4vKiBTdWJtaXQgU2NvcmUgTGluayAqL1xuLm5hdl9faXRlbS0tY3RhIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5cbi5uYXZfX2xpbmstLWN0YSB7XG4gICAgZ2FwOiA2cHg7XG59XG5cbi5uYXZfX2xpbmstLWN0YSBpIHtcbiAgICBjb2xvcjogIzM4YmRmODtcbiAgICB0cmFuc2l0aW9uOiBjb2xvciAwLjJzIGVhc2U7XG59XG5cbi5uYXZfX2xpbmstLWN0YTppcyg6aG92ZXIsIDpmb2N1cy12aXNpYmxlKSBpIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItaGlnaGxpZ2h0KTtcbn1cblxuLm1haW4tYXJlYSB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBnYXA6IHZhcigtLXNwYWNlLWxnKSA7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tY29sb3ItYmctbWFpbik7XG4gICAgb3ZlcmZsb3c6IGF1dG87XG4gICAgbWluLWhlaWdodDogOTAwcHg7XG4gICAgcGFkZGluZzogdmFyKC0tc3BhY2UtbGcpIDA7XG4gICAgYWxpZ24tY29udGVudDogc3RhcnQ7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogcmFkaWFsLWdyYWRpZW50KCBlbGxpcHNlIDY1JSA1NSUgYXQgNTAlIDU1JSwgcmdiYSgxOTAsIDIyNSwgMjU1LCAwLjcpIDAlLCByZ2JhKDIxNSwgMjM1LCAyNTUsIDAuMzUpIDQ1JSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSA3NSUgKTtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xufVxuXG4uc2lkZS1hcmVhIHtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1zbSk7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tY29sb3ItYmctbWFpbik7XG4gICAgcGFkZGluZzogdmFyKC0tc3BhY2UtbGcpIDA7XG59XG5cbi5zaWRlLWFyZWEtLXRyZWUge1xuICAgIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLWJnLWxpZ2h0KTtcbn1cblxuLmZvb3RlciB7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tY29sb3ItYmctaG92ZXItZGFyayk7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJvbGQpO1xuICAgIGNvbG9yOiB2YXIoLS1mb250LWNvbG9yLWxpZ2h0KTtcbn1cblxuLmZvb3RlciBhLFxuLmZvb3RlciBhOmxpbmssXG4uZm9vdGVyIGE6dmlzaXRlZCB7XG4gICAgY29sb3I6IHZhcigtLWZvbnQtY29sb3ItbGlnaHQpO1xufVxuXG4uZm9vdGVyIGE6aXMoOmhvdmVyLCA6Zm9jdXMtdmlzaWJsZSwgOmFjdGl2ZSkge1xuICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xufVxuXG4vKiBDb250ZW50IHdyYXBwZXIgKi9cbi5jb250ZW50IHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMjBweCBtaW5tYXgoMCwgMWZyKSAyMHB4O1xuICAgIHJvdy1nYXA6IDEwcHg7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtc20pO1xufVxuXG4uY29udGVudCA+ICoge1xuICAgIGdyaWQtY29sdW1uOiAyO1xufVxuXG4uY29udGVudCA+IC5mbGV4LXJvdy0td29ybGQtcmVjb3JkcyB7XG4gICAgZ3JpZC1jb2x1bW46IDEvLTE7XG59XG5cbi5zdWItY29udGVudCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGdhcDogMTBweDtcbn1cblxuLyogaGVybyBiYW5uZXIgKi9cbi5oZXJvLWJhbm5lciB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1iZy1leHRyYSk7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7XG4gICAgcGFkZGluZzogdmFyKC0tc3BhY2UtbGcpIHZhcigtLXNwYWNlLW1kKTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuXG4uaGVyby1ib2R5IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgZ2FwOiB2YXIoLS1zcGFjZS14cyk7XG59XG5cbi5oZXJvLXRpdGxlIHtcbiAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtYm9sZCk7XG4gICAgY29sb3I6IHZhcigtLWZvbnQtY29sb3ItbGlnaHQpO1xuICAgIG1hcmdpbjogMDtcbn1cblxuLmhlcm8tc3VidGl0bGUge1xuICAgIGNvbG9yOiB2YXIoLS1mb250LWNvbG9yLWxpZ2h0KTtcbiAgICBtYXJnaW46IDA7XG59XG5cbi8qIEhhcmR3YXJlIGhlcm8gc2N0aW9uICovXG4uaGFyZHdhcmUtaGVyby1zZWN0aW9uIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBnYXA6IDE2cHg7XG4gIG1hcmdpbi1ib3R0b206IDI0cHg7XG59XG5cbi5oYXJkd2FyZS1oZXJvLWltYWdlLWNhcmQge1xuICBmbGV4OiAxIDEgMzAwcHg7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgYm9yZGVyOiAxcHggc29saWQgI2UyZThmMDtcbiAgYm9yZGVyLXJhZGl1czogOHB4O1xuICBwYWRkaW5nOiAxNnB4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuLmhhcmR3YXJlLWJlbmNobWFyay1pbWFnZS13cmFwcGVyIGltZyB7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvO1xuICBvYmplY3QtZml0OiBjb250YWluO1xufVxuXG4uaGFyZHdhcmUtaGVyby1zdGF0cy1ncmlkIHtcbiAgZmxleDogMiAxIDMyMHB4O1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdChhdXRvLWZpdCwgbWlubWF4KDIyMHB4LCAxZnIpKTtcbiAgZ2FwOiAxMnB4O1xufVxuXG4uaGFyZHdhcmUtaGVyby1zdGF0LWNhcmQge1xuICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZTJlOGYwO1xuICBib3JkZXItcmFkaXVzOiA4cHg7XG4gIHBhZGRpbmc6IDE2cHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbi5oYXJkd2FyZS1oZXJvLXN0YXQtY2FyZCBoMyB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXhsKTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgY29sb3I6ICMwZjE3MmE7XG4gIG1hcmdpbjogMCAwIDRweCAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5oYXJkd2FyZS1zdWItbGFiZWwge1xuICBjb2xvcjogIzY0NzQ4YjtcbiAgbWFyZ2luOiAwIDAgOHB4IDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLmhhcmR3YXJlLXN0YXQtbGFiZWwge1xuICBjb2xvcjogIzY0NzQ4YjtcbiAgbWFyZ2luOiAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5oYXJkd2FyZS1mYW1pbHktbGluayB7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci1saW5rKTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBtYXJnaW4tdG9wOiA2cHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLmhhcmR3YXJlLWZhbWlseS1saW5rOmhvdmVyIHtcbiAgY29sb3I6IHZhcigtLWNvbG9yLWxpbmstaG92ZXIpO1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgdGV4dC11bmRlcmxpbmUtb2Zmc2V0OiAycHg7XG59XG5cbi5oYXJkd2FyZS10YWItbWVudSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGdhcDogNnB4O1xuICBtYXJnaW4tdG9wOiA4cHg7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uaGFyZHdhcmUtdGFiLW1lbnUgLmJ1dHRvbiB7XG4gIGZsZXg6IDEgMSBhdXRvO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDZweCAxMnB4O1xufVxuXG4uaW1hZ2UtbW9kYWwge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHotaW5kZXg6IDE7XG4gICAgcGFkZGluZzogNTBweCAwIDAgMDtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgb3ZlcmZsb3c6IGF1dG87XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDAsIDAsIDApO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC45KTtcbn1cblxuLmltYWdlLW1vZGFsLWNvbnRlbnQge1xuICAgIG1hcmdpbjogYXV0byBhdXRvO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1heC13aWR0aDogODAlO1xuICAgIG1heC1oZWlnaHQ6IDkwJTtcbn1cblxuLyogaW1hZ2UgKi9cbi5pbWFnZS13cmFwcGVyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4uaW1hZ2Uge1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5iZW5jaG1hcmstaW1hZ2Utd3JhcHBlciB7XG4gICAgYmFja2dyb3VuZDogYmxhY2s7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7XG4gICAgYWxpZ24tY29udGVudDogY2VudGVyO1xufVxuXG4uYmVuY2htYXJrLWltYWdlLXdyYXBwZXIgaW1nIHtcbiAgICBib3JkZXI6IHZhcigtLWJvcmRlci13aWR0aC1zbSkgc29saWQgdmFyKC0tYm9yZGVyLWNvbG9yLWxpZ2h0KTtcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXgtd2lkdGg6IDQwMHB4O1xufVxuXG4vKiBDb21wbyBzdGFnZSBpbmZvIGNhcmQgKi9cbi5saXN0IGxpLnN0YWdlLWluZm8ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBnYXA6IHZhcigtLXNwYWNlLW1kKTtcbn1cblxuLmxpc3QgbGkuc3RhZ2UtaW5mbzpsYXN0LWNoaWxkIHtcbiAgICBib3JkZXItYm90dG9tOiBub25lO1xufVxuXG4ubGlzdCBsaS5zdGFnZS1pbmZvOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjlmYWZiO1xufVxuXG4uc3RhZ2UtaW5mby10aXRsZSxcbi5zdGFnZS1pbmZvLXJhbmssXG4uc3RhZ2UtaW5mby1zY29yZSxcbi5zdGFnZS1pbmZvLXRhcmdldCB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5cbi5zdGFnZS1pbmZvIC50ZXh0LW11dGVkIHtcbiAgICBjb2xvcjogIzljYTNhZjtcbn1cblxuLnN0YWdlLWluZm8gLnN0YWdlLWxpbmsge1xuICAgIGNvbG9yOiB2YXIoLS1mb250LWNvbG9yLWRhcmspO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLnN0YWdlLWluZm8gLnN0YWdlLWxpbms6aG92ZXIge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1saW5rKTtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICB0ZXh0LXVuZGVybGluZS1vZmZzZXQ6IDJweDtcbn1cblxuLnN0YWdlLWluZm8gLnNjb3JlLXZhbHVlLFxuLnN0YWdlLWluZm8gLnNjb3JlLWxpbmsge1xuICAgIGZvbnQtZmFtaWx5OiB1aS1tb25vc3BhY2UsIFNGTW9uby1SZWd1bGFyLCBNZW5sbywgTW9uYWNvLCBDb25zb2xhcywgbW9ub3NwYWNlO1xuICAgIGNvbG9yOiB2YXIoLS1mb250LWNvbG9yLWRhcmspO1xufVxuXG4uc3RhZ2UtaW5mbyAuc2NvcmUtbGluayB7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWxpbmspO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLnN0YWdlLWluZm8gLnNjb3JlLWxpbms6aG92ZXIge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1saW5rLWhvdmVyKTtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICB0ZXh0LXVuZGVybGluZS1vZmZzZXQ6IDJweDtcbn1cblxuLnN0YWdlLWluZm8gLmZhLXRyb3BoeSB7XG4gICAgY29sb3I6ICNmNTllMGI7XG4gICAgbWFyZ2luLXJpZ2h0OiA0cHg7XG59XG5cbi5zdGFnZS1pbmZvIC50YXJnZXQtaWNvbiB7XG4gICAgY29sb3I6ICNlZjQ0NDQ7XG4gICAgbWFyZ2luLXJpZ2h0OiA0cHg7XG59XG5cbi8qIEdyaWQgYm94ZXMgKi9cbi5ncmlkLWJveCB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBnYXA6IHZhcigtLXNwYWNlLW1kKTtcbn1cblxuLmdyaWQtYm94LS1zdWJtaXQtaGFyZHdhcmUge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogYXV0byBhdXRvO1xufVxuXG4uZ3JpZC1ib3gtLXN1Ym1pdC1oYXJkd2FyZSA+IGRpdiB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xufVxuXG4uZ3JpZC1ib3gtLXN1Ym1pdC1oYXJkd2FyZSBpbWcge1xuICAgIG1heC13aWR0aDogMTIwcHg7XG4gICAgbWF4LWhlaWdodDogMTIwcHg7XG4gICAgb2JqZWN0LWZpdDogY29udGFpbjtcbiAgICBtYXJnaW46IDAgYXV0bztcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7XG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1jb2xvci1saWdodCk7XG59XG5cbi5ncmlkLWJveC0taGFyZHdhcmUtcmVzdWx0IHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDE0MHB4IDEyMHB4IDIwMHB4IGF1dG87XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cblxuLmdyaWQtYm94LS13YWxsIHtcbiAgICBncmlkLXRlbXBsYXRlLXJvd3M6IHJlcGVhdCgyLCAxZnIpO1xuICAgIGdyaWQtYXV0by1mbG93OiBjb2x1bW47XG4gICAgb3ZlcmZsb3c6IGF1dG87XG4gICAgYm9yZGVyOiB2YXIoLS1ib3JkZXItd2lkdGgtc20pIHNvbGlkIHZhcigtLWJvcmRlci1jb2xvci1saWdodCk7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7XG4gICAgZ2FwOiAwO1xufVxuXG4uZ3JpZC1ib3gtLWFjaGlldmVtZW50LWluZm8ge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xuICAgIGdyaWQtdGVtcGxhdGUtcm93czogMWZyO1xufVxuXG4uZ3JpZC1ib3gtLWFjaGlldmVtZW50LFxuLmdyaWQtYm94LS1wYXJ0bmVyIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdChhdXRvLWZpdCwgbWlubWF4KDE4MHB4LCAxZnIpKTtcbn1cblxuLmdyaWQtYm94LS1oaWdobGlnaHQtc3VibWlzc2lvbixcbi5ncmlkLWJveC0tc3VibWlzc2lvbi1oYXJkd2FyZSB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoYXV0by1maXQsIG1pbm1heCgyMDBweCwgMWZyKSk7XG59XG5cbi5ncmlkLWJveC0tY29tcG8sXG4uZ3JpZC1ib3gtLXByb2ZpbGUsXG4uZ3JpZC1ib3gtLXN1Ym1pc3Npb24tcmFua2luZyB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoYXV0by1maXQsIG1pbm1heCgyNTBweCwgMWZyKSk7XG59XG5cbi5ncmlkLWJveC0tYmVuY2htYXJrcyxcbi5ncmlkLWJveC0taGFyZHdhcmUtb3ZlcnZpZXcsXG4uZ3JpZC1ib3gtLWxlYWd1ZS1pbmZvLFxuLmdyaWQtYm94LS1uZXdzLFxuLmdyaWQtYm94LS1zZWFyY2gge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KGF1dG8tZml0LCBtaW5tYXgoMzAwcHgsIDFmcikpO1xufVxuXG4uZ3JpZC1ib3gtLXByb2ZpbGUtYWNjb3VudC1zZXR0aW5ncyB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoYXV0by1maXQsIG1pbm1heChtaW4oMjgwcHgsIDEwMCUpLCA1MDBweCkpO1xufVxuXG4uZ3JpZC1ib3gtY2FyZCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBwYWRkaW5nOiB2YXIoLS1zcGFjZS1tZCk7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tY29sb3ItYmctbGlnaHQpO1xuICAgIGJvcmRlcjogdmFyKC0tYm9yZGVyLXdpZHRoLXNtKSBzb2xpZCB2YXIoLS1ib3JkZXItY29sb3ItbGlnaHQpO1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXNtKTtcbn1cblxuLmdyaWQtYm94LWNhcmQtLXN1Ym1pdC1oYXJkd2FyZSB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBmbGV4OiAxO1xufVxuXG4uZ3JpZC1ib3gtY2FyZC0tY29tcG8tcG9pbnRzLWluZm8ge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgb3ZlcmZsb3c6IGF1dG87XG4gICAgbWF4LWhlaWdodDogMjAwcHg7XG59XG5cbi5ncmlkLWJveC1jYXJkLS1kZXNjcmlwdGlvbiB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICB3aGl0ZS1zcGFjZTogcHJlLWxpbmU7XG4gICAgb3ZlcmZsb3ctd3JhcDogYnJlYWstd29yZDtcbn1cblxuLmdyaWQtYm94LWNhcmQtLXNpZGViYXItcmFua2luZyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgZ2FwOiB2YXIoLS1zcGFjZS1tZCk7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tY29sb3ItYmctaG92ZXItbGlnaHQpO1xufVxuXG4uZ3JpZC1ib3gtY2FyZC0tbmV3cyB7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tY29sb3ItYmctaG92ZXItbGlnaHQpO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMnMgZWFzZSwgYm94LXNoYWRvdyAwLjJzIGVhc2UsIGJhY2tncm91bmQtY29sb3IgMC4ycyBlYXNlO1xufVxuXG4uZ3JpZC1ib3gtY2FyZC0tbmV3cyAuZmxleC1yb3ctLW5ld3MtZm9vdGVyIGE6OmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBpbnNldDogMDtcbiAgICB6LWluZGV4OiAxO1xufVxuXG4uZ3JpZC1ib3gtY2FyZC0tbmV3cyxcbi5ncmlkLWJveC1jYXJkLS1hY2hpZXZlbWVudCB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5ncmlkLWJveC1jYXJkLS1iZW5jaG1hcmstc3RhdHMsXG4uZ3JpZC1ib3gtY2FyZC0tcGFydG5lciB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgYWxpZ24tY29udGVudDogY2VudGVyO1xufVxuXG4uZ3JpZC1ib3gtY2FyZC0tbmV3czpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYmctaG92ZXItbGlnaHQpO1xuICAgIGJveC1zaGFkb3c6IDAgNHB4IDEycHggcmdiYSgwLCAwLCAwLCAwLjEpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMnB4KTtcbn1cblxuLmdyaWQtYm94LWNhcmQtLXdhbGwge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGdhcDogMTBweCAyMHB4O1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgcGFkZGluZzogMCB2YXIoLS1zcGFjZS1tZCk7XG59XG5cbi5ncmlkLWJveC1jYXJkLS13YWxsLXJhbmtpbmctaW5mbyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZ2FwOiB2YXIoLS1zcGFjZS14bCk7XG4gICAgcGFkZGluZzogdmFyKC0tc3BhY2Utc20pIHZhcigtLXNwYWNlLW1kKTtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICBib3JkZXItdG9wOiB2YXIoLS1ib3JkZXItd2lkdGgtc20pIHNvbGlkIHZhcigtLWJvcmRlci1jb2xvci1saWdodCk7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxuLmdyaWQtYm94LWNhcmQtLXdhbGwtcmFua2luZy1pbmZvIC5ncmlkLXNwZWMge1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIGZsZXg6IDAgMCBhdXRvO1xufVxuXG4uZ3JpZC1ib3gtY2FyZC0tYmVuY2htYXJrcyB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICBib3JkZXI6IDA7XG59XG5cbi5ncmlkLWJveC1jYXJkLS1iZW5jaG1hcmtzLFxuLmdyaWQtYm94LWNhcmQtLWNvbXBvLFxuLmdyaWQtYm94LWNhcmQtLWhhcmR3YXJlLW92ZXJ2aWV3LFxuLmdyaWQtYm94LWNhcmQtLWhpZ2hsaWdodC1zdWJtaXNzaW9uLFxuLmdyaWQtYm94LWNhcmQtLWxlYWd1ZS1pbmZvLFxuLmdyaWQtYm94LWNhcmQtLWxvZ2luLFxuLmdyaWQtYm94LWNhcmQtLXByb2ZpbGUsXG4uZ3JpZC1ib3gtY2FyZC0tcmVnaXN0ZXIsXG4uZ3JpZC1ib3gtY2FyZC0tcmVzZXQtcGFzc3dvcmQsXG4uZ3JpZC1ib3gtY2FyZC0tc2VhcmNoLFxuLmdyaWQtYm94LWNhcmQtLXN1Ym1pc3Npb24taGFyZHdhcmUsXG4uZ3JpZC1ib3gtY2FyZC0tdG9wLWZpbHRlciB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbn1cblxuLmdyaWQtYm94LWNhcmQtLWhpZ2hsaWdodC1zdWJtaXNzaW9uIHtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1iZy1saWdodCk7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbn1cblxuLyogU3BlYyAqL1xuLmdyaWQtc3BlYyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGdhcDogMTBweDtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICB3aWR0aDogMTAwJTtcbn1cblxuLmdyaWQtc3BlYy1yb3cge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgcGFkZGluZzogNXB4IDA7XG4gICAgb3ZlcmZsb3c6IGF1dG87XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1jb2xvci1saWdodCk7XG59XG5cbi5ncmlkLXNwZWMtcm93IC50YWJsZS1hdmF0YXItd3JhcHBlciA+IGEge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLWxnKTtcbn1cblxuLmdyaWQtc3BlYy1yb3ctLXN0YWNrZWQge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgZ2FwOiA1cHg7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1jb2xvci1saWdodCk7XG59XG5cbi5ncmlkLXNwZWMtcm93Omxhc3QtY2hpbGQge1xuICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG59XG5cbi5ncmlkLXNwZWMtcm93IC5hdHRyaWJ1dGUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNvbG9yOiB2YXIoLS1mb250LWNvbG9yLWRhcmspO1xufVxuXG4uZ3JpZC1zcGVjLXJvdyAuYXR0cmlidXRlLW5vd3JhcCxcbi5ncmlkLXNwZWMtcm93IC5hdHRyaWJ1dGUtLW5vd3JhcCB7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxuLmdyaWQtc3BlYy1yb3cgLnZhbHVlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjb2xvcjogdmFyKC0tZm9udC1jb2xvci1kYXJrKTtcbn1cblxuLmdyaWQtc3BlYy1yb3ctLXN0YWNrZWQgLnZhbHVlIHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbjogMDtcbn1cblxuLyogRXh0cmEgZm9udCBzZXR0aW5ncyAqL1xuLmZvbnQtYm9sZC0tcGFydG5lciB7XG4gICAgY29sb3I6IHZhcigtLWZvbnQtY29sb3ItZGFyaywgIzBmMTcyYSk7XG59XG5cbi8qIE1vZGFsIG92ZXJsYXkgKi9cbi5tb2RhbC1vdmVybGF5IHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMHZ3O1xuICAgIGhlaWdodDogMTAwdmg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjYpO1xuICAgIHotaW5kZXg6IHZhcigtLXotaW5kZXgtbW9kYWwsIDEwNTApO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMzVzIGN1YmljLWJlemllcigwLjQsIDAsIDAuMiwgMSksIHZpc2liaWxpdHkgMC4zNXMgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC4yLCAxKTtcbn1cblxuLm1vZGFsLW92ZXJsYXkuaXMtb3BlbiB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xufVxuXG4ubW9kYWwtZGlhbG9nIHtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1iZy1tYWluKTtcbiAgICB3aWR0aDogOTAlO1xuICAgIG1heC13aWR0aDogMTIwMHB4O1xuICAgIG1heC1oZWlnaHQ6IDg1dmg7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgYm94LXNoYWRvdzogMCA0cHggMTVweCByZ2JhKDAsIDAsIDAsIDAuMik7XG59XG5cbi5tb2RhbC1kaWFsb2ctLXJlc3VsdC1oaXN0b3J5IHtcbiAgICBtYXgtd2lkdGg6IDYwMHB4O1xufVxuXG4ubW9kYWwtZGlhbG9nLS1yZXN1bHQtbW9kZXJhdGlvbiB7XG4gICAgbWF4LXdpZHRoOiA4MDBweDtcbn1cblxuLm1vZGFsLWRpYWxvZy0tc29jaWFsIHtcbiAgICBtYXgtd2lkdGg6IDQ4MHB4O1xufVxuXG4ubW9kYWwtaGVhZGVyIHtcbiAgICBwYWRkaW5nOiB2YXIoLS1zcGFjZS1zbSkgdmFyKC0tc3BhY2UtbGcpO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgYm9yZGVyLWJvdHRvbTogdmFyKC0tYm9yZGVyLXdpZHRoLXNtKSBzb2xpZCB2YXIoLS1ib3JkZXItY29sb3ItbGlnaHQpO1xufVxuXG4ubW9kYWwtYm9keSB7XG4gICAgcGFkZGluZzogdmFyKC0tc3BhY2UtbWQpO1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgZmxleC1ncm93OiAxO1xufVxuXG4ubW9kYWwtZm9vdGVyIHtcbiAgICBwYWRkaW5nOiB2YXIoLS1zcGFjZS1tZCkgdmFyKC0tc3BhY2UtbGcpO1xuICAgIGJvcmRlci10b3A6IHZhcigtLWJvcmRlci13aWR0aC1zbSkgc29saWQgdmFyKC0tYm9yZGVyLWNvbG9yLWxpZ2h0KTtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbn1cblxuLyogTGlzdCAqL1xudWwge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG59XG5cbi5saXN0IHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdhcDogdmFyKC0tc3BhY2UtbWQpO1xufVxuXG4ubGlzdCBsaSB7XG4gICAgcGFkZGluZzogdmFyKC0tc3BhY2UtbWQpIDA7XG4gICAgYm9yZGVyLWJvdHRvbTogdmFyKC0tYm9yZGVyLXdpZHRoLXNtKSBzb2xpZCB2YXIoLS1ib3JkZXItY29sb3ItbGlnaHQpO1xufVxuXG4ubGlzdCBsaTpsYXN0LWNoaWxkIHtcbiAgICBib3JkZXItYm90dG9tOiBub25lO1xufVxuXG4ubGlzdC0tc2Nyb2xsYWJsZSB7XG4gICAgbWF4LWhlaWdodDogMTYwcHg7XG4gICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICBwYWRkaW5nLXJpZ2h0OiA1cHg7XG59XG5cbi8qIFByb2ZpbGUgYmFubmVyICovXG4ucHJvZmlsZS1iYW5uZXItd3JhcHBlciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiAxMDAlO1xufVxuXG4ucHJvZmlsZS1iYW5uZXItd3JhcHBlci5oYXMtYmFubmVyIC5wcm9maWxlLWJhbm5lciBpbWcge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGFzcGVjdC1yYXRpbzogNiAvIDE7XG4gICAgbWluLWhlaWdodDogMTIwcHg7XG4gICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgb2JqZWN0LXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgYm9yZGVyLXJhZGl1czogNHB4O1xufVxuXG4ucHJvZmlsZS1iYW5uZXItd3JhcHBlci5oYXMtYmFubmVyIC5hdmF0YXItd3JhcHBlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogMTJweDtcbiAgICBsZWZ0OiAyMHB4O1xuICAgIHotaW5kZXg6IDI7XG59XG5cbi5wcm9maWxlLWJhbm5lci13cmFwcGVyLmhhcy1iYW5uZXIgLmF2YXRhciB7XG4gICAgd2lkdGg6IDEyMHB4O1xuICAgIGhlaWdodDogMTIwcHg7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIGJvcmRlcjogM3B4IHNvbGlkICNmZmZmZmY7XG4gICAgYm94LXNoYWRvdzogMCAycHggOHB4IHJnYmEoMCwgMCwgMCwgMC43KTtcbiAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICBkaXNwbGF5OiBibG9jaztcbn1cblxuLnByb2ZpbGUtYmFubmVyLXdyYXBwZXIubm8tYmFubmVyIC5hdmF0YXItd3JhcHBlciB7XG4gICAgcG9zaXRpb246IHN0YXRpYztcbn1cblxuLnByb2ZpbGUtYmFubmVyLXdyYXBwZXIubm8tYmFubmVyIC5hdmF0YXIge1xuICAgIHdpZHRoOiAxMjBweDtcbiAgICBoZWlnaHQ6IDEyMHB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICBkaXNwbGF5OiBibG9jaztcbn1cblxuLnNpZGUtYXJlYSAuY29udGVudC5leGVjdXRvciB1bCxcbi50ZXJtcy1hbmQtY29uZGl0aW9ucyAuY29udGVudCB1bCB7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbn1cblxuLnNpZGUtYXJlYSAuY29udGVudC5leGVjdXRvciB1bCBsaSB7XG4gICAgcGFkZGluZzogNXB4IDA7XG59XG5cbi8qIFN0YXJ0IGZpbHRlciBzZXR0aW5ncyAqL1xuLmZpbHRlciB7fVxuXG4uZmlsdGVyIC5saXN0LFxuLmZpbHRlciB1bCB7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1hcmdpbjogMDtcbn1cblxuLmZpbHRlciAubGlzdCBsaSxcbi5maWx0ZXIgdWwgbGkge1xuICAgIHBhZGRpbmc6IDVweCAwIDVweCAwO1xufVxuXG4uZmlsdGVyIC5maWx0ZXIta2V5IHtcbiAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJvbGQpO1xufVxuXG4uZmlsdGVyIC5yYW5raW5nLWZpbHRlciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgb3ZlcmZsb3cteDogdmlzaWJsZTtcbiAgICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICAgIGdhcDogNnB4O1xuICAgIHBhZGRpbmc6IDRweCAwIDhweCAwO1xuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG59XG5cblxuLyogQWN0aXZlIEZpbHRlciBDaGlwcyAqL1xuLmZpbHRlci1jaGlwcy1iYXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgZ2FwOiB2YXIoLS1zcGFjZS14cyk7XG4gICAgcGFkZGluZzogdmFyKC0tc3BhY2UteHMpIHZhcigtLXNwYWNlLXNtKTtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1iZy1saWdodCk7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7XG4gICAgYm9yZGVyOiB2YXIoLS1ib3JkZXItd2lkdGgtc20pIHNvbGlkIHZhcigtLWJvcmRlci1jb2xvci1saWdodCk7XG4gICAgbWFyZ2luLXRvcDogdmFyKC0tc3BhY2UteHMpO1xufVxuXG4uZmlsdGVyLWNoaXBzLWxpc3Qge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgZ2FwOiA2cHg7XG59XG5cbi5maWx0ZXItY2hpcCB7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBnYXA6IDZweDtcbiAgICBwYWRkaW5nOiAycHggOHB4O1xuICAgIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLWJnLW1haW4pO1xuICAgIGJvcmRlcjogdmFyKC0tYm9yZGVyLXdpZHRoLXNtKSBzb2xpZCB2YXIoLS1ib3JkZXItY29sb3ItbGlnaHQpO1xuICAgIGJvcmRlci1yYWRpdXM6IDIwcHg7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLXRleHQtbWFpbik7XG4gICAgbGluZS1oZWlnaHQ6IDEuNDtcbn1cblxuLmZpbHRlci1jaGlwLWxhYmVsIHtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG4uZmlsdGVyLWNoaXAtcmVtb3ZlIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dC1tdXRlZCk7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgcGFkZGluZzogMDtcbiAgICBtYXJnaW46IDA7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICB3aWR0aDogMTZweDtcbiAgICBoZWlnaHQ6IDE2cHg7XG59XG5cbi5maWx0ZXItY2hpcC1yZW1vdmU6aG92ZXIge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1lcnJvcik7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tY29sb3ItZXJyb3ItYmcpO1xufVxuXG4uZmlsdGVyLWNoaXAtY2xlYXItYWxsIHtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgY29sb3I6ICM2NDc0OGI7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHBhZGRpbmc6IDJweCA2cHg7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgbGluZS1oZWlnaHQ6IDEuNDtcbn1cblxuLmZpbHRlci1jaGlwLWNsZWFyLWFsbDpob3ZlciB7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWVycm9yKTtcbn1cblxuLyogUHJvZ3Jlc3MgKi9cbi5wcm9ncmVzc2JhciB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIzk5OTtcbiAgICBtYXJnaW46IDVweCBhdXRvO1xuICAgIHdpZHRoOiAxMDBweDtcbiAgICBoZWlnaHQ6IDVweDtcbn1cblxuLnByb2dyZXNzYmFyID4gZGl2IHtcbiAgICBiYWNrZ3JvdW5kOiBncmVlbjtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgd2lkdGg6IDEwMCU7XG59XG5cbi5jb21tZW50LWNvbnRhaW5lciAuY29tbWVudC13cmFwcGVyIHtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gNjBweCk7XG59XG5cbi8qIFN1Ym1pc3Npb24gc3VnZ2VzdGlvbnMgKi9cbi5zdWJtaXNzaW9uLXN1Z2dlc3Rpb25zIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBnYXA6IDEycHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2YwZjdmZjtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjYmFlNmZkO1xuICAgIGJvcmRlci1sZWZ0OiA0cHggc29saWQgIzAyODRjNztcbiAgICBwYWRkaW5nOiAxMHB4IDE2cHg7XG4gICAgYm9yZGVyLXJhZGl1czogNnB4O1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIG92ZXJmbG93OiBhdXRvO1xufVxuXG4uc3VibWlzc2lvbi1zdWdnZXN0aW9uIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZ2FwOiA4cHg7XG4gICAgY29sb3I6ICMwMzY5YTE7XG4gICAgbWluLXdpZHRoOiAwO1xufVxuXG4uYnV0dG9uLmJ0bi1wYXJ0aWNpcGF0ZSAuY29udGVzdC1uYW1lIHtcbiAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtYm9sZCk7XG59XG5cbi5idXR0b24uYnRuLXBhcnRpY2lwYXRlIC5zdGFnZS1uYW1lIHtcbiAgICBvcGFjaXR5OiAwLjk7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJvbGQpO1xufVxuXG4vKiBTdWJtaXNzaW9uIHNjb3JlICovXG4uc3VibWlzc2lvbi1zY29yZS1jYXJkIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGdhcDogMTBweDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIHBhZGRpbmc6IDAgMTBweCAwIDEwcHg7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtaGVhZGluZyk7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS0zeGwpO1xufVxuXG4uc3VibWlzc2lvbi1zY29yZS1jYXJkIC5hdmF0YXItd3JhcHBlciB7XG4gICAgZmxleC1zaHJpbms6IDA7XG59XG5cbi5zdWJtaXNzaW9uLXNjb3JlLWNhcmQgLmF2YXRhci13cmFwcGVyIGEge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLnN1Ym1pc3Npb24tc2NvcmUtY2FyZCAuYXZhdGFyIHtcbiAgICB3aWR0aDogMTIwcHg7XG4gICAgaGVpZ2h0OiAxMjBweDtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5zdWJtaXNzaW9uLXNjb3JlLWNhcmQgLnNjb3JlLWRldGFpbHMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZ2FwOiAxMHB4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG59XG5cbi5zdWJtaXNzaW9uLXNjb3JlLWNhcmQgLnNjb3JlLWRldGFpbHMtcm93IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGdhcDogMTBweDtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5cbi5zdWJtaXNzaW9uLXNjb3JlLWNhcmQgLnVzZXItaW5mbyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZ2FwOiAxMHB4O1xufVxuXG4uc3VibWlzc2lvbi1zY29yZS1jYXJkIC5zY29yZS1sYWJlbCxcbi5zdWJtaXNzaW9uLXNjb3JlLWNhcmQgLmNvbm5lY3Rvci10ZXh0IHtcbiAgICBjb2xvcjogZ3JheTtcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG5cbi5zdWJtaXNzaW9uLXNjb3JlLWNhcmQgLnRlbXAtd3JhcHBlciB7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjFmNWY5O1xuICAgIHBhZGRpbmc6IDJweCA2cHg7XG4gICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgIGNvbG9yOiAjNDc1NTY5O1xufVxuXG4vKiBTdWJtaXNzaW9uIHN1YiBzY29yZSAqL1xuLnN1Ym1pc3Npb24tc3ViLXNjb3JlIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBnYXA6IDZweCAxMnB4O1xuICAgIG1hcmdpbi10b3A6IDhweDtcbiAgICBwYWRkaW5nOiA4cHggMTBweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmYWZjO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNlMmU4ZjA7XG4gICAgYm9yZGVyLXJhZGl1czogNnB4O1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbi5zdWJtaXNzaW9uLXN1Yi1zY29yZSAuc3ViLXNjb3JlLWl0ZW0ge1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZ2FwOiA0cHg7XG59XG5cbi5zdWJtaXNzaW9uLXN1Yi1zY29yZSAuc3ViLXNjb3JlLW5hbWUge1xuICAgIGNvbG9yOiAjNjQ3NDhiO1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1ib2xkKTtcbn1cblxuLnN1Ym1pc3Npb24tc3ViLXNjb3JlIC5zdWItc2NvcmUtbmFtZTo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiOlwiO1xufVxuXG4uc3VibWlzc2lvbi1zdWItc2NvcmUgLnN1Yi1zY29yZS12YWwge1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1ib2xkKTtcbiAgICBjb2xvcjogIzBmMTcyYTtcbn1cblxuLyogRm9ybSAqL1xuLmZvcm0tcm93IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBnYXA6IDEwcHg7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbn1cblxuLmZvcm0tcm93LmZvcm0tYWN0aW9ucyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgIGdhcDogdmFyKC0tc3BhY2UtbWQpO1xuICAgIG1hcmdpbi10b3A6IHZhcigtLXNwYWNlLW1kKTtcbn1cblxuLmZvcm0tcm93LmZvcm0tbW9kYWwtYWN0aW9ucyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgIGdhcDogdmFyKC0tc3BhY2UtbWQpO1xufVxuXG4uZm9ybS1ncm91cCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGdhcDogdmFyKC0tc3BhY2UteHMpO1xuICAgIGZsZXg6IDEgMSBhdXRvO1xuICAgIG1pbi13aWR0aDogMDtcbn1cblxuLmZvcm0tZ3JvdXAtLXJvdyB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbn1cblxuLmZvcm0tZ3JvdXAtLXJvdyA+IGxhYmVsIHtcbiAgICB3aWR0aDogMTAwJTtcbn1cblxuLmZvcm0tZ3JvdXAtLXJvdyA+IGlucHV0IHtcbiAgICBmbGV4OiAxO1xufVxuXG4uZm9ybS1ncm91cC1jaGVja2JveCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIG1hcmdpbi10b3A6IHZhcigtLXNwYWNlLXNtKTtcbn1cblxuLmZvcm0tZ3JvdXAgbGFiZWwge1xuICAgIGNvbG9yOiB2YXIoLS1mb250LWNvbG9yLWRhcmspO1xufVxuXG4uZm9ybS1ncm91cC1jaGVja2JveCBsYWJlbCB7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBnYXA6IHZhcigtLXNwYWNlLW1kKTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgY29sb3I6IHZhcigtLWZvbnQtY29sb3ItZGFyayk7XG59XG5cbi5mb3JtLWdyb3VwLWNoZWNrYm94IGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gICAgd2lkdGg6IDIwcHg7XG4gICAgaGVpZ2h0OiAyMHB4O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBhY2NlbnQtY29sb3I6IHZhcigtLWZvbnQtY29sb3ItZGFyayk7XG59XG5cbi5mb3JtLWdyb3VwLWNoZWNrYm94IGlucHV0W3R5cGU9XCJjaGVja2JveFwiXS5maWVsZC1lcnJvciB7XG4gICAgb3V0bGluZTogMnB4IHNvbGlkIHZhcigtLWNvbG9yLWVycm9yLCAjZGMyNjI2KTtcbiAgICBvdXRsaW5lLW9mZnNldDogMXB4O1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItZXJyb3IsICNkYzI2MjYpO1xufVxuXG4uZm9ybS1ncm91cC1jaGVja2JveDpoYXMoLmZpZWxkLWVycm9yKSB7XG4gICAgcGFkZGluZzogdmFyKC0tc3BhY2UteHMsIDAuNXJlbSk7XG4gICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tY29sb3ItZXJyb3IsICNkYzI2MjYpO1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMsIDAuMzc1cmVtKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1lcnJvci1iZywgcmdiYSgyMjAsIDM4LCAzOCwgMC4wMykpO1xufVxuXG4uZm9ybS1ncm91cC1jaGVja2JveCAuYmluZGluZy1lcnJvciB7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWVycm9yLCAjZGMyNjI2KTtcbn1cblxuLmZvcm0tZ3JvdXAuaGFzLWVycm9yIGxhYmVsIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItZXJyb3IpO1xufVxuXG4uZm9ybS1ncm91cC5oYXMtZXJyb3IgaW5wdXQge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItZXJyb3IpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWVycm9yLWJnKTtcbn1cblxuLmZvcm0tZmlsdGVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGdhcDogdmFyKC0tc3BhY2UteHMpO1xufVxuXG4jcmFua2luZ19maWx0ZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgZ2FwOiB2YXIoLS1zcGFjZS1tZCkgdmFyKC0tc3BhY2UtbGcpO1xuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNlLW1kKTtcbn1cblxuI3JhbmtpbmdfZmlsdGVyIC5mb3JtLWdyb3VwIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgZ2FwOiB2YXIoLS1zcGFjZS14cyk7XG4gICAgZmxleDogMCAxIGF1dG87XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xufVxuXG4uZm9ybS1pbnB1dC1zZWFyY2gtd3JhcHBlciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiAxMDAlO1xufVxuXG4uZm9ybS1pbnB1dC1zZWFyY2gtd3JhcHBlciAuc2VhcmNoLWljb24ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAxMnB4O1xuICAgIHRvcDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICBjb2xvcjogIzk0YTNiODtcbn1cblxuLmZvcm0taW5wdXQtc2VhcmNoLXdyYXBwZXIgaW5wdXQge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmctbGVmdDogMzZweDtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG4uZm9ybS1pbnB1dC13aXRoLXVuaXQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBib3JkZXI6IHZhcigtLWJvcmRlci13aWR0aC1tZCkgc29saWQgdmFyKC0tYm9yZGVyLWNvbG9yLWxpZ2h0KTtcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1zcGFjZS1tZCk7XG59XG5cbi5mb3JtLWlucHV0LXdpdGgtdW5pdCAuZm9ybS1pbnB1dCB7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGZsZXg6IDE7XG4gICAgb3V0bGluZTogbm9uZTtcbn1cblxuLmZvcm0taW5wdXQuZmllbGQtZXJyb3Ige1xuICAgIGJvcmRlcjogdmFyKC0tYm9yZGVyLXdpZHRoLW1kKSAgc29saWQgdmFyKC0tY29sb3ItZXJyb3IpO1xufVxuXG4uZm9ybS1pbnB1dC13aXRoLXVuaXQ6aGFzKC5maWVsZC1lcnJvcikge1xuICAgIGJvcmRlcjogdmFyKC0tYm9yZGVyLXdpZHRoLW1kKSBzb2xpZCB2YXIoLS1jb2xvci1lcnJvcik7XG59XG5cbi5mb3JtLWlucHV0LXdpdGgtdW5pdCAuZm9ybS1pbnB1dC5maWVsZC1lcnJvciB7XG4gICAgYm9yZGVyOiBub25lO1xufVxuXG4uZm9ybS1pbnB1dC13aXRoLXVuaXQgLmZpZWxkLWVycm9yIHtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgb3V0bGluZTogbm9uZTtcbn1cblxuLmZvcm0tdW5pdC1zdWZmaXgge1xuICAgIGNvbG9yOiAjNmM3NTdkO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XG59XG5cbi5mb3JtLWlucHV0LXdpdGgtdW5pdC5maWVsZC1lcnJvciB7XG4gICAgYm9yZGVyOiB2YXIoLS1ib3JkZXItd2lkdGgtbWQpIHNvbGlkIHZhcigtLWNvbG9yLWVycm9yKTtcbn1cblxuLmJpbmRpbmctZXJyb3Ige1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1lcnJvcik7XG59XG5cbi5iYW5uZXItaW1hZ2UgaW1nIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgbWluLWhlaWdodDogMTAwcHg7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7XG59XG5cbi8qIENvbXBvIHRyZWUgKi9cbi5mbGV4LWNvbHVtbi0tY29tcG8tdHJlZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBnYXA6IDEycHg7XG59XG5cbi5mbGV4LWNvbHVtbi1pdGVtLS1jb21wby10cmVlLXJvb3Qge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2U1ZTdlYjtcbiAgICBib3JkZXItbGVmdDogNHB4IHNvbGlkICMyNTYzZWI7XG4gICAgYm9yZGVyLXJhZGl1czogNnB4O1xuICAgIHBhZGRpbmc6IDEycHggMTZweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMjtcbn1cblxuLmNvbXBvLXRyZWUtY2hpbGRyZW4ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nLWxlZnQ6IDI4cHg7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGdhcDogMTBweDtcbn1cblxuLmNvbXBvLXRyZWUtY2hpbGRyZW46OmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMTJweDtcbiAgICB0b3A6IC0xMnB4O1xuICAgIGJvdHRvbTogMjRweDtcbiAgICB3aWR0aDogMnB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNjYmQ1ZTE7XG59XG5cbi5mbGV4LWNvbHVtbi1pdGVtLS1jb21wby10cmVlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZTVlN2ViO1xuICAgIGJvcmRlci1yYWRpdXM6IDZweDtcbiAgICBwYWRkaW5nOiAxMHB4IDE0cHg7XG59XG5cbi5mbGV4LWNvbHVtbi1pdGVtLS1jb21wby10cmVlOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IC0xNnB4O1xuICAgIHRvcDogNTAlO1xuICAgIHdpZHRoOiAxNHB4O1xuICAgIGhlaWdodDogMnB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNjYmQ1ZTE7XG59XG5cbi5mbGV4LWNvbHVtbi1pdGVtLS1jb21wby10cmVlLmFjdGl2ZSB7XG4gICAgYm9yZGVyLWNvbG9yOiAjM2I4MmY2O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlZmY2ZmY7XG59XG5cbi5mbGV4LWNvbHVtbi1pdGVtLS1jb21wby10cmVlLmFjdGl2ZTo6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjM2I4MmY2O1xufVxuXG4uZ3JpZC1zcGVjLXJvdy0tc3RhY2tlZCAuYXR0cmlidXRlIHtcbiAgICBjb2xvcjogIzZiNzI4MDtcbiAgICBtYXJnaW4tYm90dG9tOiAycHg7XG59XG5cbi8qIENvbXBvIGxlYWRlciBzaWRlYmFyIC0gTGlnaHQgVGVjaG5pY2FsICovXG4ubGVhZGVyLWdyaWQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICB3aWR0aDogMTAwJTtcbn1cblxuLmxlYWRlci1ncmlkIGgyIHtcbiAgICBtYXJnaW46IDAgMCAxMnB4IDA7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBsZXR0ZXItc3BhY2luZzogMC4wOGVtO1xuICAgIGNvbG9yOiAjNjQ3NDhiO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBnYXA6IDhweDtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2YxZjVmOTtcbiAgICBwYWRkaW5nLWJvdHRvbTogOHB4O1xufVxuXG4ubGVhZGVyLWdyaWQgLnRleHQtZ29sZCB7XG4gICAgY29sb3I6ICNmNTllMGI7XG4gICAgZmlsdGVyOiBkcm9wLXNoYWRvdygwIDAgNHB4IHJnYmEoMjQ1LCAxNTgsIDExLCAwLjMpKTtcbn1cblxuLmxlYWRlci1pbmZvIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIGdhcDogMTJweDtcbn1cblxuLmxlYWRlci11c2VyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZ2FwOiAxMHB4O1xuICAgIG1pbi13aWR0aDogMDtcbn1cblxuLmxlYWRlci1hdmF0YXIge1xuICAgIGhlaWdodDogNDRweDtcbiAgICB3aWR0aDogNDRweDtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgYm9yZGVyOiAycHggc29saWQgI2Y1OWUwYjtcbiAgICBib3gtc2hhZG93OiAwIDAgNnB4IHJnYmEoMjQ1LCAxNTgsIDExLCAwLjIpO1xuICAgIGZsZXgtc2hyaW5rOiAwO1xufVxuXG4ubGVhZGVyLW5hbWUge1xuICAgIGNvbG9yOiAjMGYxNzJhO1xuICAgIGxldHRlci1zcGFjaW5nOiAwLjAxZW07XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG4ubGVhZGVyLXBvaW50cyB7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBwYWRkaW5nOiAzcHggOHB4O1xuICAgIGJhY2tncm91bmQ6ICMwZjE3MmE7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIzFlMjkzYjtcbiAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgY29sb3I6ICNmYmJmMjQ7XG4gICAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtbW9ubywgdWktbW9ub3NwYWNlLCBTRk1vbm8tUmVndWxhciwgTWVubG8sIE1vbmFjbywgQ29uc29sYXMsIG1vbm9zcGFjZSk7XG4gICAgZm9udC12YXJpYW50LW51bWVyaWM6IHRhYnVsYXItbnVtcztcbiAgICBsZXR0ZXItc3BhY2luZzogMC4wNGVtO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgdGV4dC1zaGFkb3c6IDAgMCA2cHggcmdiYSgyNTEsIDE5MSwgMzYsIDAuMyk7XG59XG5cbi5sZWFkZXItZW1wdHktc3RhdGUge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBnYXA6IDEycHg7XG4gICAgcGFkZGluZzogMTJweCAxNHB4O1xuICAgIGJhY2tncm91bmQ6ICNmOGZhZmM7XG4gICAgYm9yZGVyOiAxcHggZGFzaGVkICNjYmQ1ZTE7XG4gICAgYm9yZGVyLXJhZGl1czogNnB4O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbi5sZWFkZXItZW1wdHktc3RhdGUgLmVtcHR5LWljb24ge1xuICAgIGZsZXgtc2hyaW5rOiAwO1xufVxuXG4ubGVhZGVyLWVtcHR5LXN0YXRlIC5lbXB0eS1kZXRhaWxzIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgZ2FwOiAycHg7XG4gICAgbWluLXdpZHRoOiAwO1xufVxuXG4ubGVhZGVyLWVtcHR5LXN0YXRlIC5lbXB0eS10aXRsZSB7XG4gICAgY29sb3I6ICMxZTI5M2I7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuMDRlbTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG4ubGVhZGVyLWVtcHR5LXN0YXRlIC5lbXB0eS1zdWJ0aXRsZSB7XG4gICAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtbW9ubywgdWktbW9ub3NwYWNlLCBTRk1vbm8tUmVndWxhciwgTWVubG8sIE1vbmFjbywgQ29uc29sYXMsIG1vbm9zcGFjZSk7XG4gICAgZm9udC12YXJpYW50LW51bWVyaWM6IHRhYnVsYXItbnVtcztcbiAgICBsZXR0ZXItc3BhY2luZzogMC4wMmVtO1xufVxuXG4vKiBGbGV4IHJvd3MgKi9cbi5mbGV4LXJvdyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgZ2FwOiB2YXIoLS1zcGFjZS1tZCk7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cblxuLmZsZXgtcm93LS1hY2hpZXZlbWVudC1hY3Rpb24ge1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2UtbWQpO1xufVxuXG4uZmxleC1yb3ctLWFkZGl0aW9uYWwtaW1hZ2VzIHtcbiAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG59XG5cbi5mbGV4LXJvdy0td29ybGQtcmVjb3JkcyB7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgb3ZlcmZsb3c6IGF1dG87XG5cdGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLWJnLWFsdCk7XG5cdHBhZGRpbmc6IHZhcigtLXNwYWNlLW1kKTtcbn1cblxuLmZsZXgtcm93LS1iZW5jaG1hcmstbGlua3Mge1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xufVxuXG4uZmxleC1yb3ctLXRhYmxlLWNvbXBhcmUtaGVhZGVyIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG59XG5cbi5mbGV4LXJvdy0tbmV3cy1oZWFkZXIge1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBwYWRkaW5nOiB2YXIoLS1zcGFjZS1tZCk7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJvbGQpO1xufVxuXG4uZmxleC1yb3ctLW5ld3MtZm9vdGVyIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBwYWRkaW5nOiB2YXIoLS1zcGFjZS1tZCk7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtbGcpO1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1ib2xkKTtcbn1cblxuLmZsZXgtcm93LS13YWxsIHtcbiAgICBnYXA6IHZhcigtLXNwYWNlLW1kKTtcbiAgICBwYWRkaW5nOiB2YXIoLS1zcGFjZS1tZCkgMDtcbn1cblxuLmZsZXgtcm93LS13YWxsLXNvY2lhbCB7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZ2FwOiB2YXIoLS1zcGFjZS1tZCk7XG4gICAgcGFkZGluZzogdmFyKC0tc3BhY2UteHMpIDA7XG4gICAgbWFyZ2luLWJvdHRvbTogdmFyKC0tc3BhY2Utc20pO1xufVxuXG4ubW9kYWwtbWVtYmVyLWxpc3Qge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGdhcDogdmFyKC0tc3BhY2UtbGcpO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5cbi5mbGV4LXJvdy0tYWN0aW9uLFxuLmZsZXgtcm93LS1pbmZvIHtcbiAgICBnYXA6IHZhcigtLXNwYWNlLW1kKSB2YXIoLS1zcGFjZS1sZyk7XG4gICAgcGFkZGluZzogdmFyKC0tc3BhY2UtbWQpO1xuICAgIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLWJnLWxpZ2h0KTtcbiAgICBib3JkZXI6IHZhcigtLWJvcmRlci13aWR0aC1zbSkgc29saWQgdmFyKC0tYm9yZGVyLWNvbG9yLWxpZ2h0KTtcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtcbiAgICBjb2xvcjogdmFyKC0tZm9udC1jb2xvci1kYXJrKTtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cblxuLmZsZXgtcm93LWdyb3VwIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZ2FwOiB2YXIoLS1zcGFjZS1tZCk7XG59XG5cbi5mbGV4LXJvdy1ncm91cC0tbWV0YSB7XG4gIGNvbG9yOiAjNmI3MjgwO1xufVxuXG4uZmxleC1yb3ctaXRlbSB7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBnYXA6IHZhcigtLXNwYWNlLW1kKTtcbn1cblxuLmZsZXgtcm93LWl0ZW0tLXdvcmxkLXJlY29yZCB7XG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdG1pbi13aWR0aDogNDAwcHg7XG5cdHBhZGRpbmc6IHZhcigtLXNwYWNlLW1kKTtcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7XG5cdGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLWJnLWxpZ2h0KTtcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYm9yZGVyLWNvbG9yLWxpZ2h0KTtcblx0d2lkdGg6IDEwMCU7XG59XG5cbi8qIEJhZGdlICovXG4uc3RhdHVzLWJhZGdlIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGdhcDogNnB4O1xuICAgIHBhZGRpbmc6IDJweCA4cHg7XG4gICAgYm9yZGVyLXJhZGl1czogNnB4O1xuICAgIGJvcmRlcjogdmFyKC0tYm9yZGVyLXdpZHRoLXNtKSBzb2xpZCBjdXJyZW50Q29sb3I7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUteHMpO1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1ib2xkKTtcbiAgICBsZXR0ZXItc3BhY2luZzogMC4ycHg7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG59XG5cbi5zdGF0dXMtYmFkZ2UgaSB7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgICBmbGV4LXNocmluazogMDtcbn1cblxuLnN0YXR1cy1iYWRnZSBpOjpiZWZvcmUge1xuICAgIGZvbnQtZmFtaWx5OiBcIkZvbnQgQXdlc29tZSA2IEZyZWVcIiwgXCJGb250IEF3ZXNvbWUgNSBGcmVlXCI7XG4gICAgZm9udC13ZWlnaHQ6IDkwMDtcbn1cblxuLnN0YXR1cy12YWx1ZSB7XG4gICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJvbGQpO1xufVxuXG4uc3RhdHVzLXN1Y2Nlc3MsXG4uc3RhdHVzLWdyZWVuIHtcbiAgICBjb2xvcjogIzE2YTM0YTtcbn1cbi5zdGF0dXMtc3VjY2VzcyBpOjpiZWZvcmUsXG4uc3RhdHVzLWdyZWVuIGk6OmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcXGYwMGNcIjsgLyogZmEtY2hlY2sgKi9cbn1cblxuLnN0YXR1cy13YXJuaW5nIHtcbiAgICBjb2xvcjogI2Q5NzcwNjtcbn1cbi5zdGF0dXMtd2FybmluZyBpOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXFxmMDcxXCI7IC8qIGZhLXRyaWFuZ2xlLWV4Y2xhbWF0aW9uICovXG59XG5cbi5zdGF0dXMtdW5rbm93bixcbi5zdGF0dXMtZ3JheSB7XG4gICAgY29sb3I6ICM2NDc0OGI7XG59XG4uc3RhdHVzLXVua25vd24gaTo6YmVmb3JlLFxuLnN0YXR1cy1ncmF5IGk6OmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcXGYwNWFcIjsgLyogZmEtY2lyY2xlLWluZm8gKi9cbn1cblxuLnN0YXR1cy1wcm9jZXNzaW5nIHtcbiAgICBjb2xvcjogIzI1NjNlYjtcbn1cbi5zdGF0dXMtcHJvY2Vzc2luZyBpOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXFxmMWNlXCI7IC8qIGZhLWNpcmNsZS1ub3RjaCAqL1xufVxuXG4uc3RhdHVzLW9wZW4ge1xuICAgIGNvbG9yOiAjMTZhMzRhO1xufVxuLnN0YXR1cy1vcGVuIGk6OmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcXGYzYzFcIjsgLyogZmEtbG9jay1vcGVuICovXG59XG5cbi5zdGF0dXMtY2xvc2VkIHtcbiAgICBjb2xvcjogI2RjMjYyNjtcbn1cbi5zdGF0dXMtY2xvc2VkIGk6OmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcXGYwMjNcIjsgLyogZmEtbG9jayAqL1xufVxuXG4uc3RhdHVzLW9mZmljaWFsIHtcbiAgICBjb2xvcjogIzQ3NTU2OTtcbn1cbi5zdGF0dXMtb2ZmaWNpYWwgaTo6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlxcZjAwY1wiOyAvKiBmYS1jaGVjayAqL1xufVxuXG4uc3RhdHVzLW9ubGluZSB7XG4gICAgY29sb3I6ICMwMjg0Yzc7XG59XG4uc3RhdHVzLW9ubGluZSBpOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXFxmMGFjXCI7IC8qIGZhLWdsb2JlICovXG59XG5cbi5zdGF0dXMtbGl2ZSB7XG4gICAgY29sb3I6ICNkYzI2MjY7XG59XG4uc3RhdHVzLWxpdmUgaTo6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlxcZjAwMVwiOyAvKiBmYS10b3dlci1icm9hZGNhc3QgKi9cbn1cblxuLnN0YXR1cy1hY3RpdmUge1xuICAgIGNvbG9yOiAjMTZhMzRhO1xufVxuLnN0YXR1cy1hY3RpdmUgaTo6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlxcZjAwY1wiOyAvKiBmYS1jaGVjayAqL1xufVxuXG4uc3RhdHVzLWluYWN0aXZlIHtcbiAgICBjb2xvcjogIzY0NzQ4Yjtcbn1cbi5zdGF0dXMtaW5hY3RpdmUgaTo6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlxcZjA1ZVwiOyAvKiBmYS1iYW4gKi9cbn1cblxuLyogQWxlcnRzIC8gQ2FsbG91dHMgKi9cbi5hbGVydCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgIGdhcDogdmFyKC0tc3BhY2UtbWQpO1xuICAgIHBhZGRpbmc6IHZhcigtLXNwYWNlLW1kKSB2YXIoLS1zcGFjZS1sZyk7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7XG4gICAgYm9yZGVyOiB2YXIoLS1ib3JkZXItd2lkdGgtc20pIHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLW1kKTtcbiAgICBsaW5lLWhlaWdodDogMS41O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNlLW1kKTtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG4uYWxlcnQgPiBkaXYge1xuICAgIGZsZXg6IDE7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGdhcDogdmFyKC0tc3BhY2UteHMpO1xufVxuXG4uYWxlcnQgcCB7XG4gICAgbWFyZ2luOiAwO1xufVxuXG4uYWxlcnQgaSB7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1sZyk7XG4gICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICBmbGV4LXNocmluazogMDtcbn1cblxuLmFsZXJ0IGk6OmJlZm9yZSB7XG4gICAgZm9udC1mYW1pbHk6IFwiRm9udCBBd2Vzb21lIDYgRnJlZVwiLCBcIkZvbnQgQXdlc29tZSA1IEZyZWVcIjtcbiAgICBmb250LXdlaWdodDogOTAwO1xufVxuXG4uYWxlcnQtd2FybmluZyB7XG4gICAgY29sb3I6ICM5MjQwMGU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmJlYjtcbiAgICBib3JkZXItY29sb3I6ICNmZGU2OGE7XG59XG4uYWxlcnQtd2FybmluZyBpOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXFxmMDcxXCI7IC8qIGZhLXRyaWFuZ2xlLWV4Y2xhbWF0aW9uICovXG59XG5cbi5hbGVydC1kYW5nZXIge1xuICAgIGNvbG9yOiAjOTkxYjFiO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZWYyZjI7XG4gICAgYm9yZGVyLWNvbG9yOiAjZmVjYWNhO1xufVxuLmFsZXJ0LWRhbmdlciBpOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXFxmMDZhXCI7IC8qIGZhLWNpcmNsZS1leGNsYW1hdGlvbiAqL1xufVxuXG4uYWxlcnQtaW5mbyB7XG4gICAgY29sb3I6ICMxZTQwYWY7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2VmZjZmZjtcbiAgICBib3JkZXItY29sb3I6ICNiZmRiZmU7XG59XG4uYWxlcnQtaW5mbyBpOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXFxmMDVhXCI7IC8qIGZhLWNpcmNsZS1pbmZvICovXG59XG5cbi5hbGVydC1zdWNjZXNzIHtcbiAgICBjb2xvcjogIzE2NjUzNDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjBmZGY0O1xuICAgIGJvcmRlci1jb2xvcjogI2JiZjdkMDtcbn1cbi5hbGVydC1zdWNjZXNzIGk6OmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcXGYwMGNcIjsgLyogZmEtY2hlY2sgKi9cbn1cblxuLyogRnVsbCBiYWRnZSBzdXBwb3J0IChiYWNrd2FyZHMgY29tcGF0aWJpbGl0eSBmb3IgLnN0YXR1cy1iYWRnZS0tZnVsbCkgKi9cbi5zdGF0dXMtYmFkZ2UtLWZ1bGwge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZzogdmFyKC0tc3BhY2UtbWQpIHZhcigtLXNwYWNlLWxnKTtcbiAgICBsaW5lLWhlaWdodDogMS41O1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLW1kKTtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIGxldHRlci1zcGFjaW5nOiBub3JtYWw7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuLyogQ29vbGluZyBCYWRnZXMgKi9cbi5jb29saW5nLWFpci1zdG9jayB7XG4gICAgY29sb3I6ICM2NDc0OGI7XG59XG4uY29vbGluZy1haXItc3RvY2sgaTo6YmVmb3JlIHsgY29udGVudDogXCJcXGY3MmVcIjsgfSAvKiBmYS1mYW4gKi9cblxuLmNvb2xpbmctYWlyLWN1c3RvbSB7XG4gICAgY29sb3I6ICMxNmEzNGE7XG59XG4uY29vbGluZy1haXItY3VzdG9tIGk6OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNzJlXCI7IH0gLyogZmEtZmFuICovXG5cbi5jb29saW5nLXdhdGVyLWN1c3RvbSB7XG4gICAgY29sb3I6ICMyNTYzZWI7XG59XG4uY29vbGluZy13YXRlci1jdXN0b20gaTo6YmVmb3JlIHsgY29udGVudDogXCJcXGYwNDNcIjsgfSAvKiBmYS1kcm9wbGV0ICovXG5cbi5jb29saW5nLWFpby13YXRlciB7XG4gICAgY29sb3I6ICMwODkxYjI7XG59XG4uY29vbGluZy1haW8td2F0ZXIgaTo6YmVmb3JlIHsgY29udGVudDogXCJcXGYwNDNcIjsgfSAvKiBmYS1kcm9wbGV0ICovXG5cbi5jb29saW5nLXdhdGVyLWNoaWxsZWQtY29sZCB7XG4gICAgY29sb3I6ICMwMjg0Yzc7XG59XG4uY29vbGluZy13YXRlci1jaGlsbGVkLWNvbGQgaTo6YmVmb3JlIHsgY29udGVudDogXCJcXGYyZGNcIjsgfSAvKiBmYS1zbm93Zmxha2UgKi9cblxuLmNvb2xpbmctZHJ5LWljZSB7XG4gICAgY29sb3I6ICM0NzU1Njk7XG59XG4uY29vbGluZy1kcnktaWNlIGk6OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWIyXCI7IH0gLyogZmEtY3ViZSAqL1xuXG4uY29vbGluZy1zaW5nbGUtc3RhZ2UtcGhhc2UtY2hhbmdlIHtcbiAgICBjb2xvcjogIzBkOTQ4ODtcbn1cbi5jb29saW5nLXNpbmdsZS1zdGFnZS1waGFzZS1jaGFuZ2UgaTo6YmVmb3JlIHsgY29udGVudDogXCJcXGYyZGNcIjsgfSAvKiBmYS1zbm93Zmxha2UgKi9cblxuLmNvb2xpbmctY2FzY2FkZS1waGFzZS1jaGFuZ2Uge1xuICAgIGNvbG9yOiAjNGY0NmU1O1xufVxuLmNvb2xpbmctY2FzY2FkZS1waGFzZS1jaGFuZ2UgaTo6YmVmb3JlIHsgY29udGVudDogXCJcXGYyZGNcIjsgfSAvKiBmYS1zbm93Zmxha2UgKi9cblxuLmNvb2xpbmctbGlxdWlkLW5pdHJvZ2VuIHtcbiAgICBjb2xvcjogIzFlNDBhZjtcbn1cbi5jb29saW5nLWxpcXVpZC1uaXRyb2dlbiBpOjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjBjM1wiOyB9IC8qIGZhLWZsYXNrICovXG5cbi5jb29saW5nLWxpcXVpZC1oZWxpdW0ge1xuICAgIGNvbG9yOiAjNDc1NTY5O1xufVxuLmNvb2xpbmctbGlxdWlkLWhlbGl1bSBpOjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjdhNlwiOyB9IC8qIGZhLWF0b20gKi9cblxuLyogTGVhZ3VlIEJhZGdlcyAqL1xuLmxlYWd1ZS1lbGl0ZSB7XG4gICAgY29sb3I6ICNkOTc3MDY7XG59XG4ubGVhZ3VlLWVsaXRlIGk6OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNTIxXCI7IH0gLyogZmEtY3Jvd24gKi9cblxuLmxlYWd1ZS1leHRyZW1lIHtcbiAgICBjb2xvcjogI2RjMjYyNjtcbn1cbi5sZWFndWUtZXh0cmVtZSBpOjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjA2ZFwiOyB9IC8qIGZhLWZpcmUgKi9cblxuLmxlYWd1ZS1hcHByZW50aWNlIHtcbiAgICBjb2xvcjogIzFlNDBhZjtcbn1cbi5sZWFndWUtYXBwcmVudGljZSBpOjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjBkMFwiOyB9IC8qIGZhLW1hZ2ljICovXG5cbi5sZWFndWUtZW50aHVzaWFzdCB7XG4gICAgY29sb3I6ICMyNTYzZWI7XG59XG4ubGVhZ3VlLWVudGh1c2lhc3QgaTo6YmVmb3JlIHsgY29udGVudDogXCJcXGYwZTdcIjsgfSAvKiBmYS1ib2x0ICovXG5cbi5sZWFndWUtbm92aWNlIHtcbiAgICBjb2xvcjogIzE2YTM0YTtcbn1cbi5sZWFndWUtbm92aWNlIGk6OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmNGQ4XCI7IH0gLyogZmEtc2VlZGxpbmcgKi9cblxuLmxlYWd1ZS1yb29raWUge1xuICAgIGNvbG9yOiAjNjQ3NDhiO1xufVxuLmxlYWd1ZS1yb29raWUgaTo6YmVmb3JlIHsgY29udGVudDogXCJcXGYxOWRcIjsgfSAvKiBmYS1ncmFkdWF0aW9uLWNhcCAqL1xuXG4vKiBSZWZlcmVuY2UgQmFkZ2VzICovXG4ucmVmLXJldmlldyB7XG4gICAgY29sb3I6ICMwMjg0Yzc7XG59XG4ucmVmLXJldmlldyBpOjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFlNVwiOyB9IC8qIGZhLWJpbm9jdWxhcnMgKi9cblxuLnJlZi1uZXdzLFxuLnJlZi1wcmVzcyxcbi5yZWYtcm91bmR1cCxcbi5yZWYtc3RhdGljLWNvbnRlbnQge1xuICAgIGNvbG9yOiAjNDc1NTY5O1xufVxuLnJlZi1uZXdzIGk6OmJlZm9yZSxcbi5yZWYtcHJlc3MgaTo6YmVmb3JlLFxuLnJlZi1yb3VuZHVwIGk6OmJlZm9yZSxcbi5yZWYtc3RhdGljLWNvbnRlbnQgaTo6YmVmb3JlIHsgY29udGVudDogXCJcXGYxZWFcIjsgfSAvKiBmYS1uZXdzcGFwZXIgKi9cblxuLnJlZi1kaXNjdXNzaW9uIHtcbiAgICBjb2xvcjogIzRmNDZlNTtcbn1cbi5yZWYtZGlzY3Vzc2lvbiBpOjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjA4NlwiOyB9IC8qIGZhLWNvbW1lbnRzICovXG5cbi5yZWYtcnVsZSB7XG4gICAgY29sb3I6ICNkOTc3MDY7XG59XG4ucmVmLXJ1bGUgaTo6YmVmb3JlIHsgY29udGVudDogXCJcXGYwNmFcIjsgfSAvKiBmYS1jaXJjbGUtZXhjbGFtYXRpb24gKi9cblxuLnJlZi1lc3BvcnRzIHtcbiAgICBjb2xvcjogI2RjMjYyNjtcbn1cbi5yZWYtZXNwb3J0cyBpOjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjJkYlwiOyB9IC8qIGZhLW1pY3JvY2hpcCAqL1xuXG4uc2NyZWVuc2hvdC1ib3gge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZ2FwOiAxMHB4O1xuICAgIG92ZXJmbG93OiBhdXRvO1xuICAgIHdpZHRoOiAxMDAlO1xufVxuXG4uc2NyZWVuc2hvdC1ib3ggYSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4uc2NyZWVuc2hvdC1ib3ggaW1nIHtcbiAgICBib3JkZXItcmFkaXVzOiA0cHg7XG59XG5cbi5zY3JlZW5zaG90LWJveC0taGlnaGxpZ2h0LXN1Ym1pc3Npb24gaW1nIHtcbiAgICBoZWlnaHQ6IDEwMHB4O1xufVxuXG4uc2NyZWVuc2hvdC1ib3gtLXN1Ym1pc3Npb24gaW1nIHtcbiAgICBoZWlnaHQ6IDI1MHB4O1xufVxuXG4uc2NyZWVuc2hvdC1ib3gtLW5ld3Mge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBoZWlnaHQ6IDIwMHB4XG59XG5cbi5zY3JlZW5zaG90LWJveC0tbmV3cyBpbWcge1xuICAgIG1heC13aWR0aDogMzAwcHg7XG59XG5cbi8qIEVkaXRvciB0ZXh0IGFkZGVkIGJ5IG1vZGVyYXRvcnMgKi9cbi5yaWNoLXRleHQtY29udGVudCB7XG4gICAgY29sb3I6ICMzMzQxNTU7XG59XG5cbi5yaWNoLXRleHQtY29udGVudCBoMSxcbi5yaWNoLXRleHQtY29udGVudCBoMixcbi5yaWNoLXRleHQtY29udGVudCBoMyxcbi5yaWNoLXRleHQtY29udGVudCBoNCB7XG4gICAgY29sb3I6ICMwZjE3MmE7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJvbGQpO1xuICAgIG1hcmdpbi10b3A6IDFyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjM7XG59XG5cbi5yaWNoLXRleHQtY29udGVudCBzdHJvbmcsXG4ucmljaC10ZXh0LWNvbnRlbnQgYiB7XG4gICAgY29sb3I6ICMwZjE3MmE7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJvbGQpO1xufVxuXG4ucmljaC10ZXh0LWNvbnRlbnQgcCB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjc1cmVtO1xufVxuXG4ucmljaC10ZXh0LWNvbnRlbnQgdWwsXG4ucmljaC10ZXh0LWNvbnRlbnQgb2wge1xuICAgIHBhZGRpbmctbGVmdDogMS4yNXJlbTtcbiAgICBtYXJnaW4tdG9wOiAwLjVyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMC43NXJlbTtcbn1cblxuLnJpY2gtdGV4dC1jb250ZW50IGxpIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjM1cmVtO1xufVxuXG4ucmljaC10ZXh0LWNvbnRlbnQgYSB7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWxpbmspO1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgIHRleHQtZGVjb3JhdGlvbi1jb2xvcjogdmFyKC0tY29sb3ItbGluay11bmRlcmxpbmUpO1xuICAgIHRleHQtdW5kZXJsaW5lLW9mZnNldDogM3B4O1xuICAgIHRyYW5zaXRpb246IGNvbG9yIDAuMTVzIGVhc2UsIHRleHQtZGVjb3JhdGlvbi1jb2xvciAwLjE1cyBlYXNlO1xufVxuXG4ucmljaC10ZXh0LWNvbnRlbnQgYTpob3ZlciB7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWxpbmstaG92ZXIpO1xuICAgIHRleHQtZGVjb3JhdGlvbi1jb2xvcjogY3VycmVudENvbG9yO1xufVxuXG4ucmljaC10ZXh0LWNvbnRlbnQgY29kZSxcbi5yaWNoLXRleHQtY29udGVudCBwcmUge1xuICAgIGJhY2tncm91bmQ6ICNmMWY1Zjk7XG4gICAgcGFkZGluZzogMC4ycmVtIDAuNHJlbTtcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtcbiAgICBmb250LWZhbWlseTogbW9ub3NwYWNlO1xuICAgIGNvbG9yOiAjMGYxNzJhO1xufVxuXG4ucmljaC10ZXh0LWNvbnRlbnQgaW1nIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogNjAwcHg7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpO1xufVxuXG4ucmljaC10ZXh0LWNvbnRlbnQgdGFibGUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBvdmVyZmxvdy14OiBhdXRvO1xuICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuICAgIG1hcmdpbi10b3A6IDFyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cblxuLnJpY2gtdGV4dC1jb250ZW50IHRoLFxuLnJpY2gtdGV4dC1jb250ZW50IHRkIHtcbiAgICBwYWRkaW5nOiB2YXIoLS1zcGFjZS1zbSkgdmFyKC0tc3BhY2UtbWQpO1xuICAgIGJvcmRlcjogdmFyKC0tYm9yZGVyLXdpZHRoLXNtKSBzb2xpZCB2YXIoLS1ib3JkZXItY29sb3ItbGlnaHQpO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG59XG5cbi5yaWNoLXRleHQtY29udGVudCB0aCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYmctaG92ZXItbGlnaHQpO1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1ib2xkKTtcbiAgICBjb2xvcjogdmFyKC0tZm9udC1jb2xvci1kYXJrKTtcbn1cblxuLnJpY2gtdGV4dC1jb250ZW50IHRyOmhvdmVyIHRkIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1iZy1ob3Zlci1saWdodCk7XG59XG5cbi5yaWNoLXRleHQtY29udGVudCBpZnJhbWUge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1heC13aWR0aDogNjAwcHg7XG4gICAgYXNwZWN0LXJhdGlvOiAxNiAvIDk7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtcbn1cblxuLyogU3VibWlzc2lvbiBjb21tZW50cyAqL1xuLmNvbW1lbnRzLXNlY3Rpb24ge1xufVxuXG4uY29tbWVudHMtdGl0bGUge1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1ib2xkKTtcbiAgICBjb2xvcjogIzFlMjkzYjtcbiAgICBtYXJnaW4tYm90dG9tOiAxNnB4O1xufVxuXG4uc3VibWl0dGVyLXF1b3RlLWNhcmQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmOGZhZmM7XG4gICAgYm9yZGVyLWxlZnQ6IDRweCBzb2xpZCAjMDI4NGM3O1xuICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICBwYWRkaW5nOiAxMnB4IDE2cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbn1cblxuLnF1b3RlLWhlYWRlciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBnYXA6IDZweDtcbiAgICBtYXJnaW4tYm90dG9tOiA2cHg7XG59XG5cbi5xdW90ZS1hdXRob3Ige1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1ib2xkKTtcbiAgICBjb2xvcjogIzAyODRjNztcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi5xdW90ZS1hdXRob3I6aG92ZXIge1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xufVxuXG4ucXVvdGUtYWN0aW9uIHtcbiAgICBjb2xvcjogIzY0NzQ4Yjtcbn1cblxuLnF1b3RlLWJvZHkge1xuICAgIG1hcmdpbjogMDtcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgY29sb3I6ICMzMzQxNTU7XG59XG5cbi5xdW90ZS1pY29uIHtcbiAgICBjb2xvcjogIzk0YTNiODtcbiAgICBtYXJnaW4tcmlnaHQ6IDZweDtcbn1cblxuLmNvbW1lbnRzLXRocmVhZCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGdhcDogMTJweDtcbiAgICBtYXJnaW4tYm90dG9tOiAyNHB4O1xufVxuXG4uY29tbWVudHMtZW1wdHkge1xuICAgIGNvbG9yOiAjNjQ3NDhiO1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cblxuLmNvbW1lbnQtY2FyZCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBnYXA6IDEycHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZmFmYztcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZTJlOGYwO1xuICAgIGJvcmRlci1yYWRpdXM6IDZweDtcbiAgICBwYWRkaW5nOiAxMnB4IDE2cHg7XG59XG5cbi5jb21tZW50LWF2YXRhci1saW5rIHtcbiAgICBmbGV4LXNocmluazogMDtcbn1cblxuLmNvbW1lbnQtYXZhdGFyIHtcbiAgICB3aWR0aDogMzZweDtcbiAgICBoZWlnaHQ6IDM2cHg7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIG9iamVjdC1maXQ6IGNvdmVyO1xufVxuXG4uY29tbWVudC1ib2R5IHtcbiAgICBmbGV4OiAxO1xuICAgIG1pbi13aWR0aDogMDtcbn1cblxuLmNvbW1lbnQtaGVhZGVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZ2FwOiAxMnB4O1xuICAgIG1hcmdpbi1ib3R0b206IDZweDtcbn1cblxuLmNvbW1lbnQtYXV0aG9yIHtcbiAgICBjb2xvcjogIzAyODRjNztcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi5jb21tZW50LWF1dGhvcjpob3ZlciB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG5cbi5jb21tZW50LXRpbWVzdGFtcCB7XG4gICAgY29sb3I6ICM2NDc0OGI7XG59XG5cbi5jb21tZW50LXRleHQge1xuICAgIGNvbG9yOiAjMzM0MTU1O1xuICAgIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7XG59XG5cbi5jb21tZW50LWZvcm0tYm94IHtcbiAgICBtYXJnaW4tdG9wOiAxNnB4O1xufVxuXG4uY29tbWVudC1mb3JtIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgZ2FwOiAxMHB4O1xufVxuXG4uY29tbWVudC10ZXh0YXJlYSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZzogMTBweDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjY2JkNWUxO1xuICAgIGJvcmRlci1yYWRpdXM6IDZweDtcbiAgICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgICByZXNpemU6IHZlcnRpY2FsO1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbi5jb21tZW50LXRleHRhcmVhOmZvY3VzIHtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIGJvcmRlci1jb2xvcjogIzAyODRjNztcbiAgICBib3gtc2hhZG93OiAwIDAgMCAycHggcmdiYSgyLCAxMzIsIDE5OSwgMC4xNSk7XG59XG5cbi5jb21tZW50LWZvcm0tYWN0aW9ucyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xufVxuXG4uYnRuLXByaW1hcnkge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMjg0Yzc7XG4gICAgY29sb3I6ICNmZmZmZmY7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIHBhZGRpbmc6IDhweCAxNnB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtYm9sZCk7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4xNXMgZWFzZTtcbn1cblxuLmJ0bi1wcmltYXJ5OmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDM2OWExO1xufVxuXG4uY29tbWVudC1sb2dpbi1ub3RpY2Uge1xuICAgIGNvbG9yOiAjNjQ3NDhiO1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cblxuLmNvbW1lbnQtdGV4dCBpbWcge1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luOiAxMHB4IDA7XG4gICAgYm9yZGVyLXJhZGl1czogNHB4O1xufVxuXG4uZmFpbnQge1xuICAgIG9wYWNpdHk6IDAuMjtcbn1cblxuLnNpZGUtYXJlYSAuY29udGVudCAuaGFyZHdhcmUtdHJlZSB7XG4gICAgaGVpZ2h0OiAxMjAwcHg7XG4gICAgb3ZlcmZsb3c6IGF1dG87XG59XG5cbi5yZXNldC1wYXNzd29yZCAuY29udGVudCAuZ3JpZCBpbnB1dFt0eXBlPXBhc3N3b3JkXSxcbi5yZXNldC1wYXNzd29yZCAuY29udGVudCAuZ3JpZCBpbnB1dFt0eXBlPXRleHRdIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLnJlc2V0LXBhc3N3b3JkIC5jb250ZW50IC5ncmlkIC5yb3cge1xuICAgIHdpZHRoOiAxMDAlO1xufVxuXG4uc2lkZS1hcmVhIC5jb250ZW50IC5ncmlkIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogYXV0bztcbiAgICBncmlkLWdhcDogMTBweDtcbn1cblxuLyogQ29tcGV0aXRpb24gY2xvY2sgKi9cbi50aW1lciAuY291bnRkb3duLXdyYXBwZXIgc3BhbiB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnIgMWZyO1xuICAgIGdyaWQtZ2FwOiAxMHB4O1xufVxuXG4udGltZXIgLmNvdW50ZG93bi13cmFwcGVyIC5jb3VudCB7XG4gICAgY29sb3I6IGdhaW5zYm9ybztcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1iZy1kYXJrKTtcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICBwYWRkaW5nOiAxMHB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLnRpbWVyIC5jb3VudGRvd24td3JhcHBlciAuY291bnRkb3dubGFiZWwge1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1iZy1kYXJrKTtcbiAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtYm9sZCk7XG59XG5cbi5zaWRlLWFyZWEtcmFua2luZy1ncmlkIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgZ2FwOiB2YXIoLS1zcGFjZS1zbSk7XG59XG5cbi5zaWRlLWFyZWEtcmFua2luZy1ncmlkID4gKjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tc3BhY2UteHMpO1xuICAgIGJvcmRlci1ib3R0b206IHZhcigtLWJvcmRlci13aWR0aC1zbSkgc29saWQgdmFyKC0tYm9yZGVyLWNvbG9yLWxpZ2h0KTtcbn1cblxuLnNpZGUtYXJlYS1yYW5raW5nLWdyaWQtcm93IHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogNXB4IDE1cHggYXV0byBhdXRvO1xuICAgIGdyaWQtZ2FwOiB2YXIoLS1zcGFjZS1zbSk7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWl0ZW1zOiBsZWZ0O1xuICAgIG1heC1oZWlnaHQ6IDcwMHB4O1xuICAgIG92ZXJmbG93OiBhdXRvO1xufVxuXG4uc2lkZS1hcmVhLXJhbmtpbmctZ3JpZC1yb3c6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmMWY1Zjk7XG59XG5cbi5zaWRlLWFyZWEtd3ItcmFua2luZy1ncmlkIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogNXB4IDQwcHggYXV0byBhdXRvO1xuICAgIGdyaWQtdGVtcGxhdGUtcm93czogYXV0byBhdXRvO1xuICAgIGdyaWQtZ2FwOiAxMHB4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1pdGVtczogbGVmdDtcbn1cblxuLmdyaWQtYm94LWNhcmQtLXNpZGViYXItcmFua2luZyAuc2lkZS1hcmVhLXdyLXJhbmtpbmctZ3JpZDpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogdmFyKC0tc3BhY2UteHMpO1xuICAgIGJvcmRlci1ib3R0b206IHZhcigtLWJvcmRlci13aWR0aC1zbSkgc29saWQgdmFyKC0tYm9yZGVyLWNvbG9yLWxpZ2h0KTtcbn1cblxuLnNpZGUtYXJlYS13ci1yYW5raW5nLWdyaWQ6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmMWY1Zjk7XG59XG5cbi5zaWRlLWFyZWEtd3ItcmFua2luZy1ncmlkIC5oYXJkd2FyZSB7XG4gICAgZ3JpZC1jb2x1bW46IDIgLyAtMTtcbn1cblxuLnNpZGUtYXJlYS1yYW5raW5nLWdyaWQgLnBvcy1tYXJrZXIsXG4uc2lkZS1hcmVhLXJhbmtpbmctZ3JpZCAucG9zLFxuLnNpZGUtYXJlYS1yYW5raW5nLWdyaWQgLm5hbWUsXG4uc2lkZS1hcmVhLXJhbmtpbmctZ3JpZCAucG9pbnRzLFxuLnNpZGUtYXJlYS13ci1yYW5raW5nLWdyaWQgLnBvcy1tYXJrZXIsXG4uc2lkZS1hcmVhLXdyLXJhbmtpbmctZ3JpZCAucG9zLFxuLnNpZGUtYXJlYS13ci1yYW5raW5nLWdyaWQgLm5hbWUsXG4uc2lkZS1hcmVhLXdyLXJhbmtpbmctZ3JpZCAucG9pbnRzLFxuLnNpZGUtYXJlYS13ci1yYW5raW5nLWdyaWQgLnNjb3JlLFxuLnNpZGUtYXJlYS13ci1yYW5raW5nLWdyaWQgLmhhcmR3YXJlIHtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG4uc2lkZS1hcmVhLXdyLXJhbmtpbmctZ3JpZCAuc2NvcmUsXG4uc2lkZS1hcmVhLXJhbmtpbmctZ3JpZCAucG9pbnRzLFxuLnNpZGUtYXJlYS13ci1yYW5raW5nLWdyaWQgLnBvaW50cyB7XG4gICAganVzdGlmeS1zZWxmOiBlbmQ7XG59XG5cbi5zaWRlLWFyZWEtd3ItcmFua2luZy1ncmlkIC5wb3MtbWFya2VyLFxuLnNpZGUtYXJlYS1yYW5raW5nLWdyaWQgLnBvcy1tYXJrZXIge1xuICAgIHdpZHRoOiA1cHg7XG4gICAgaGVpZ2h0OiAxMDAlO1xufVxuXG4uc2lkZS1hcmVhLXdyLXJhbmtpbmctZ3JpZCAucG9zLW1hcmtlciB7XG4gICAgZ3JpZC1jb2x1bW46IDE7XG4gICAgZ3JpZC1yb3c6IDEgLyAtMTtcbn1cblxuLnNpZGUtYXJlYS1yYW5raW5nIC5yb3cge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiA3MHB4IDIwcHggYXV0byAxNTBweDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGdyaWQtZ2FwOiAxMHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgICBiYWNrZ3JvdW5kOiAjRjBGMEYwO1xuICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbn1cblxuLnNpZGUtYXJlYS1yYW5raW5nIC5yb3cgLnBvcyB7XG4gICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgIGJvcmRlcjogc29saWQgMXB4IHZhcigtLWNvbG9yLXBvcy1mb3VyLWZpdmUpO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB3aWR0aDogMTAwJTtcbn1cblxuLnNpZGUtYXJlYS1yYW5raW5nIC5yb3cgLm5hbWUge1xuICAgIG1pbi13aWR0aDogMTAwcHg7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xufVxuXG4uY2FwdGNoYS1jaGFsbGVuZ2UgLmNvbnRlbnQud3JhcHBlciB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cblxuLmNhcHRjaGEtY2hhbGxlbmdlIC5jb250ZW50LndyYXBwZXIgLnJvdyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cblxuLnJlc2V0LXBhc3N3b3JkIC5jb250ZW50IC5ncmlkIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogYXV0bztcbiAgICBncmlkLXRlbXBsYXRlLXJvd3M6IGF1dG87XG59XG5cbi5yZXNldC1wYXNzd29yZCAuY29udGVudCAuZ3JpZCB7XG4gICAgZ3JpZC1nYXA6IDEwcHg7XG59XG5cbi5yZXNldC1wYXNzd29yZCAuY29udGVudCAuZ3JpZCB7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWl0ZW1zOiBjZW50ZXI7XG59XG5cbi5yZXNldC1wYXNzd29yZCAuY29udGVudCAuZ3JpZCB7XG4gICAgd2lkdGg6IDMwJTtcbiAgICBtYXJnaW46IGF1dG87XG4gICAgbWluLXdpZHRoOiAzMjBweDtcbn1cblxuLnJlc2V0LXBhc3N3b3JkIC5jb250ZW50IC5ncmlkIC5hY3Rpb24ge1xuICAgIGp1c3RpZnktc2VsZjogZW5kO1xufVxuXG4vKiBBdXRoIENhcmRzOiBMb2dpbiwgUmVnaXN0ZXIgJiBSZXNldCBQYXNzd29yZCAqL1xuLmdyaWQtYm94LWNhcmQtLWxvZ2luLFxuLmdyaWQtYm94LWNhcmQtLXJlZ2lzdGVyLFxuLmdyaWQtYm94LWNhcmQtLXJlc2V0LXBhc3N3b3JkIHtcbiAgICBtYXgtd2lkdGg6IDM1MHB4O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbjogdmFyKC0tc3BhY2UteGwpIGF1dG87XG4gICAgZ2FwOiB2YXIoLS1zcGFjZS1tZCk7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uZ3JpZC1ib3gtY2FyZC0tbG9naW4gPiBwLFxuLmdyaWQtYm94LWNhcmQtLXJlZ2lzdGVyID4gcCxcbi5ncmlkLWJveC1jYXJkLS1yZXNldC1wYXNzd29yZCA+IHAge1xuICAgIGNvbG9yOiAjNjQ3NDhiO1xuICAgIG1hcmdpbjogMDtcbn1cblxuLmdyaWQtYm94LWNhcmQtLWxvZ2luID4gcCBhLFxuLmdyaWQtYm94LWNhcmQtLXJlZ2lzdGVyID4gcCBhLFxuLmdyaWQtYm94LWNhcmQtLXJlc2V0LXBhc3N3b3JkID4gcCBhIHtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbn1cblxuLmdyaWQtYm94LWNhcmQtLWxvZ2luIGZvcm0sXG4uZ3JpZC1ib3gtY2FyZC0tcmVnaXN0ZXIgZm9ybSxcbi5ncmlkLWJveC1jYXJkLS1yZXNldC1wYXNzd29yZCBmb3JtIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgZ2FwOiB2YXIoLS1zcGFjZS1tZCk7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxuLmdyaWQtYm94LWNhcmQtLWxvZ2luIGZvcm0gYnV0dG9uW3R5cGU9XCJzdWJtaXRcIl0sXG4uZ3JpZC1ib3gtY2FyZC0tcmVnaXN0ZXIgZm9ybSBidXR0b25bdHlwZT1cInN1Ym1pdFwiXSxcbi5ncmlkLWJveC1jYXJkLS1yZXNldC1wYXNzd29yZCBmb3JtIGJ1dHRvblt0eXBlPVwic3VibWl0XCJdIHtcbiAgICB3aWR0aDogMTAwJTtcbn1cblxuLmdyaWQtYm94LWNhcmQtLXJlZ2lzdGVyIC5yZWNhcHRjaGEtd3JhcHBlcixcbi5ncmlkLWJveC1jYXJkLS1yZXNldC1wYXNzd29yZCAucmVjYXB0Y2hhLXdyYXBwZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgb3ZlcmZsb3cteDogYXV0bztcbn1cblxuLmZvcm0tbGFiZWwtcm93IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBhbGlnbi1pdGVtczogYmFzZWxpbmU7XG4gICAgd2lkdGg6IDEwMCU7XG59XG5cbi5mb3JtLWlucHV0LXBhc3N3b3JkLXdyYXBwZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5cbi5mb3JtLWlucHV0LXBhc3N3b3JkLXdyYXBwZXIgLmZvcm0taW5wdXQsXG4uZm9ybS1pbnB1dC1wYXNzd29yZC13cmFwcGVyIGlucHV0IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nLXJpZ2h0OiA0MnB4O1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbi5wYXNzd29yZC10b2dnbGUtYnRuIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDhweDtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgcGFkZGluZzogNnB4O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBjb2xvcjogIzk0YTNiODtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuXG4ucGFzc3dvcmQtdG9nZ2xlLWJ0bjpob3ZlciB7XG4gICAgY29sb3I6IHZhcigtLWZvbnQtY29sb3ItZGFyayk7XG59XG5cbi5sb2dpbi1mb290ZXIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBjb2xvcjogIzY0NzQ4YjtcbiAgICBwYWRkaW5nLXRvcDogdmFyKC0tc3BhY2UtbWQpO1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1ib3JkZXItY29sb3ItbGlnaHQpO1xufVxuXG4uc2lkZS1hcmVhIC5jb250ZW50IC5hcnRpY2xlLWxpbmsge1xuICAgIG1hcmdpbjogMCAwIDEwcHggMDtcbn1cblxuLmZvb3RlciAuY29udGVudCAuaW5mbyB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdChhdXRvLWZpbGwsIG1pbm1heCgzMjBweCwgMWZyKSk7XG4gICAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtaGVhZGluZyk7XG59XG5cbi5mb290ZXIgLmluZm8gdWwge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG59XG5cbi5mb290ZXIgLnN5c3RlbS1pbmZvIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtaGVhZGluZyk7XG59XG5cbi5mb290ZXIgLnBhcnRuZXItaW5mbyB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uZm9vdGVyIC5jb250ZW50IC5wYXJ0bmVyLWluZm8ge1xuICAgIG1hcmdpbjogMjBweCAwIDIwcHggMDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZ2FwOiAyMHB4O1xufVxuXG4uZm9vdGVyIC5jb250ZW50IC5wYXJ0bmVyLWluZm8gLnBhcnRuZXItYm94IHtcbiAgICBoZWlnaHQ6IDcwcHg7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuXG4ubWFpbi1hcmVhLmh3LWRhdGEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAxO1xufVxuXG4ubWFpbi1hcmVhLmh3LWRhdGEgLmh3LWRhdGEtb3ZlcmxheSB7XG4gICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjUpO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgdG9wOiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB6LWluZGV4OiB2YXIoLS16LWluZGV4LWxvYWRpbmctb3ZlcmxheSwgMjApO1xuICAgIGN1cnNvcjogd2FpdDtcbiAgICBhbmltYXRpb24tbmFtZTogbG9hZGluZztcbiAgICBhbmltYXRpb24tZHVyYXRpb246IDFzO1xuICAgIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IGluZmluaXRlO1xuICAgIGFuaW1hdGlvbi1kaXJlY3Rpb246IGFsdGVybmF0ZTtcbn1cblxuLmhhcmR3YXJlLW92ZXJ2aWV3IC5jb250ZW50LXR5cGUtMiAubWFudWZhY3R1cmVyLWdyaWQsXG4ubWFpbi1hcmVhLmh3LWRhdGEgLmNvbnRlbnQgLm1hbnVmYWN0dXJlci1ncmlkIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZ2FwOiA1cHg7XG59XG5cbi5tYWluLWFyZWEuaHctZGF0YSAuY29udGVudCAubWFudWZhY3R1cmVyLWdyaWQgLm1hbnVmYWN0dXJlci1oZWFkbGluZS1ncmlkLWNlbGwge1xuICAgIGhlaWdodDogNDBweDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGdhcDogNXB4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5cbi5tYWluLWFyZWEuaHctZGF0YSAuY29udGVudCAubWFudWZhY3R1cmVyLWdyaWQgLm1hbnVmYWN0dXJlci1oZWFkbGluZS1ncmlkLWNlbGwgaW1nIHtcbiAgICBoZWlnaHQ6IDQwcHg7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgb2JqZWN0LWZpdDogY29udGFpbjtcbn1cblxuLmhhcmR3YXJlLW92ZXJ2aWV3IC5jb250ZW50LXR5cGUtMiAubWFudWZhY3R1cmVyLWdyaWQgLm1hbnVmYWN0dXJlci1ncmlkLWNlbGwsXG4ubWFpbi1hcmVhLmh3LWRhdGEgLmNvbnRlbnQgLm1hbnVmYWN0dXJlci1ncmlkIC5tYW51ZmFjdHVyZXItZ3JpZC1jZWxsIHtcbiAgICBoZWlnaHQ6IDIwcHg7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBnYXA6IDVweDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuXG4uaGFyZHdhcmUtb3ZlcnZpZXcgLmNvbnRlbnQtdHlwZS0yIC5tYW51ZmFjdHVyZXItZ3JpZCAubWFudWZhY3R1cmVyLWdyaWQtY2VsbCBpbWcsXG4ubWFpbi1hcmVhLmh3LWRhdGEgLmNvbnRlbnQgLm1hbnVmYWN0dXJlci1ncmlkIC5tYW51ZmFjdHVyZXItZ3JpZC1jZWxsIGltZyB7XG4gICAgaGVpZ2h0OiAyMHB4O1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG9iamVjdC1maXQ6IGNvbnRhaW47XG59XG5cbkBrZXlmcmFtZXMgbG9hZGluZyB7XG4gICAgZnJvbSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC41KTtcbiAgICB9XG4gICAgdG8ge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNCk7XG4gICAgfVxufVxuXG4uZ29sZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItcG9zLWZpcnN0KTtcbn1cblxuLnNpbHZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYm9yZGVyLWNvbG9yLWxpZ2h0KTtcbn1cblxuLmJyb256ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItcG9zLXRoaXJkKTtcbn1cblxuLm1lZGFsIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1wb3MtZm91ci1maXZlKTtcbn1cblxuLm5vbWVkYWwge1xuICAgIGJhY2tncm91bmQtY29sb3I6IGxpZ2h0Z3JleTtcbn1cblxuLmdvbGQtdHJvcGh5IHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItcG9zLWZpcnN0KTtcbn1cblxuLnNpbHZlci10cm9waHkge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1wb3Mtc2Vjb25kKTtcbn1cblxuLmJyb256ZS10cm9waHkge1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1wb3MtdGhpcmQpO1xufVxuXG5Aa2V5ZnJhbWVzIHNoaW1tZXIge1xuICAgIDAlIHtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMjAwJSAwO1xuICAgIH1cbiAgICAxMDAlIHtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTIwMCUgMDtcbiAgICB9XG59XG5cbi5pcy1sb2FkaW5nIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cblxuLmlzLWxvYWRpbmc6OmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KFxuICAgICAgICAgICAgOTBkZWcsXG4gICAgICAgICAgICByZ2JhKDIzMiwgMjM4LCAyNDEsIDApIDAlLFxuICAgICAgICAgICAgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjYpIDUwJSxcbiAgICAgICAgICAgIHJnYmEoMjMyLCAyMzgsIDI0MSwgMCkgMTAwJVxuICAgICk7XG5cbiAgICBiYWNrZ3JvdW5kLXNpemU6IDIwMCUgMTAwJTtcbiAgICBhbmltYXRpb246IHNoaW1tZXIgMS41cyBpbmZpbml0ZTtcbiAgICB6LWluZGV4OiAyO1xufVxuXG5Aa2V5ZnJhbWVzIHNoaW1tZXIge1xuICAgIDAlIHtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMjAwJSAwO1xuICAgIH1cbiAgICAxMDAlIHtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTIwMCUgMDtcbiAgICB9XG59XG5cbi5idXR0b24ge1xuICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWhlYWRpbmcpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJnLWxpZ2h0KTtcbiAgICBib3JkZXI6IHZhcigtLWJvcmRlci13aWR0aC1zbSkgc29saWQgdmFyKC0tYm9yZGVyLWNvbG9yLWxpZ2h0KTtcbiAgICBib3JkZXItcmFkaXVzOiAyMHB4O1xuICAgIGNvbG9yOiB2YXIoLS1mb250LWNvbG9yLWRhcmspO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBwYWRkaW5nOiB2YXIoLS1zcGFjZS1zbSkgdmFyKC0tc3BhY2UtbWQpO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAgIHRvdWNoLWFjdGlvbjogbWFuaXB1bGF0aW9uO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgZ2FwOiB2YXIoLS1zcGFjZS1tZCk7XG59XG5cbi5idXR0b24tLWluZm8tcm93IHtcbiAgICBwYWRkaW5nOiB2YXIoLS1zcGFjZS1zbSkgdmFyKC0tc3BhY2UtbWQpO1xuICAgIGdhcDogdmFyKC0tc3BhY2UteHMpO1xuICAgIGhlaWdodDogYXV0bztcbn1cblxuLmJ1dHRvbi0tbW9kYWwtaGVhZGVyLWNsb3NlIHtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXI6IG5vbmU7XG59XG5cbi5idXR0b24tLW1vZGFsLWhlYWRlci1jbG9zZTpob3ZlciB7XG4gICAgb3BhY2l0eTogMC43O1xufVxuXG4uYnV0dG9uLS1tb2RhbC1oZWFkZXItY2xvc2U6Zm9jdXMge1xuICAgIG91dGxpbmU6IG5vbmU7XG59XG5cbi5idXR0b24tLXByaW1hcnkge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWZvbnQtY29sb3ItZGFyayk7XG4gICAgY29sb3I6IHdoaXRlO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tZm9udC1jb2xvci1kYXJrKTtcbn1cblxuLmJ1dHRvbi0tcHJpbWFyeTpob3ZlciB7XG4gICAgb3BhY2l0eTogMC45O1xufVxuXG4uYnV0dG9uLS1pbWFnZSB7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbWFyZ2luOiAwO1xuICAgIGZvbnQ6IGluaGVyaXQ7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xufVxuXG4uYnV0dG9uLS1kYW5nZXIge1xuICAgIGNvbG9yOiAjZGMyNjI2O1xuICAgIGJvcmRlci1jb2xvcjogI2ZjYTVhNTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmNWY1O1xufVxuXG4uYnV0dG9uLS1kYW5nZXI6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJnLWhvdmVyLWxpZ2h0KTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWJvcmRlci1jb2xvci1saWdodCk7XG4gICAgY29sb3I6IHZhcigtLWZvbnQtY29sb3ItZGFyayk7XG59XG5cbi5hY3RpdmUsXG4uYnV0dG9uOmhvdmVyIHtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLWJnLWhvdmVyLWRhcmspO1xuICAgIGJveC1zaGFkb3c6IHJnYmEoMCwgMCwgMCwgLjEpIDAgMXB4IDFweDtcbiAgICBiYWNrZ3JvdW5kOiBsaWdodGdyYXk7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4uZm9jdXMsXG4uYnV0dG9uOmZvY3VzIHtcbiAgICBib3JkZXItY29sb3I6ICM0Mjg1ZjQ7XG4gICAgY29sb3I6IHdoaXRlO1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tY29sb3ItYmctaG92ZXItZGFyayk7XG59XG5cbi5idXR0b246ZGlzYWJsZWQsXG4uYnV0dG9uLmRpc2FibGVkIHtcbiAgICBvcGFjaXR5OiAwLjU7XG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBib3gtc2hhZG93OiBub25lO1xufVxuXG4uYmFkZ2Uge1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgbWluLXdpZHRoOiAxOHB4O1xuICAgIGhlaWdodDogMThweDtcbiAgICBwYWRkaW5nOiAwIDVweDtcbiAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWZvbnQtY29sb3ItZGFyayk7XG4gICAgY29sb3I6IHZhcigtLWZvbnQtY29sb3ItbGlnaHQpO1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbi5idXR0b24gLmJhZGdlIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYygtMSAqIHZhcigtLXNwYWNlLXhzKSk7XG59XG5cbi5idXR0b24tLXByaW1hcnkgLmJhZGdlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1iZy1saWdodCk7XG4gICAgY29sb3I6IHZhcigtLWZvbnQtY29sb3ItZGFyayk7XG59XG5cbi5pbmZvLW1lc3NhZ2Uge1xuICAgIGJhY2tncm91bmQ6ICNkZGZmZmY7XG4gICAgcGFkZGluZzogdmFyKC0tc3BhY2UtbWQpO1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpO1xufVxuXG4ud2Fybi1tZXNzYWdlIHtcbiAgICBiYWNrZ3JvdW5kOiAjZmZjO1xuICAgIHBhZGRpbmc6IHZhcigtLXNwYWNlLW1kKTtcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtcbn1cblxuLmVycm9yLW1lc3NhZ2Uge1xuICAgIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLWVycm9yKTtcbiAgICBwYWRkaW5nOiB2YXIoLS1zcGFjZS1tZCk7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7XG4gICAgY29sb3I6IHZhcigtLWZvbnQtY29sb3ItbGlnaHQpO1xufVxuXG4uZXJyb3ItbWVzc2FnZSBhLFxuLmluZm8tbWVzc2FnZSBhIHtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICBmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtYm9sZCk7XG59XG5cbi5iaW5kaW5nLWVycm9yIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItZXJyb3IpO1xufVxuXG4uZm9ybS1pbnB1dCB7XG4gICAgYm9yZGVyOiB2YXIoLS1ib3JkZXItd2lkdGgtbWQpIHNvbGlkIHZhcigtLWJvcmRlci1jb2xvci1saWdodCk7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYmctbGlnaHQpO1xuICAgIGNvbG9yOiB2YXIoLS1mb250LWNvbG9yLWRhcmspO1xuICAgIHBhZGRpbmc6IHZhcigtLXNwYWNlLXNtKSB2YXIoLS1zcGFjZS1tZCk7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdLmZpZWxkLWVycm9yIHtcbiAgICBvdXRsaW5lOiB2YXIoLS1ib3JkZXItd2lkdGgtbWQpIHNvbGlkIHZhcigtLWJvcmRlci1jb2xvci1lcnJvcik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYmctbGlnaHQpO1xufVxuXG4uZmllbGQtZXJyb3Ige1xuICAgIGJvcmRlcjogdmFyKC0tYm9yZGVyLXdpZHRoLW1kKSBzb2xpZCB2YXIoLS1ib3JkZXItY29sb3ItZXJyb3IpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJnLWxpZ2h0KTtcbn1cblxuLyogSlF1ZXJ5IFVJIG92ZXJ3cml0ZXMgd2lsbCBiZSByZW1vdmVkIGFzIHNvb24gYXMgdGhlIGZyYW1ld29yayBpcyBubyBsb25nZXIgbmVlZGVkICovXG4udWktd2lkZ2V0IHtcbiAgICBmb250LWZhbWlseTogQXJpYWwsIEhlbHZldGljYSwgc2Fucy1zZXJpZjtcbn1cblxuLnVpLXdpZGdldC1jb250ZW50IHtcbiAgICBib3JkZXI6IHZhcigtLWJvcmRlci13aWR0aC1zbSkgc29saWQgdmFyKC0tYm9yZGVyLWNvbG9yLWxpZ2h0KTtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLWJnLW1haW4pO1xuICAgIGNvbG9yOiB2YXIoLS1mb250LWNvbG9yLWRhcmspO1xufVxuXG4udWktd2lkZ2V0LWNvbnRlbnQgYSxcbi51aS13aWRnZXQtY29udGVudCBhOmxpbmssXG4udWktd2lkZ2V0LWNvbnRlbnQgYTpob3Zlcixcbi51aS13aWRnZXQtY29udGVudCBhOnZpc2l0ZWQsXG4udWktd2lkZ2V0LWNvbnRlbnQgYTphY3RpdmUge1xuICAgIGNvbG9yOiB2YXIoLS1mb250LWNvbG9yLWRhcmspO1xufVxuXG4udWktd2lkZ2V0LWNvbnRlbnQgYTpob3ZlciB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG5cbi51aS1zdGF0ZS1ob3Zlcixcbi51aS13aWRnZXQtY29udGVudCAudWktc3RhdGUtaG92ZXIsXG4udWktd2lkZ2V0LWhlYWRlciAudWktc3RhdGUtaG92ZXIsXG4udWktc3RhdGUtZm9jdXMsXG4udWktd2lkZ2V0LWNvbnRlbnQgLnVpLXN0YXRlLWZvY3VzLFxuLnVpLXdpZGdldC1oZWFkZXIgLnVpLXN0YXRlLWZvY3VzIHtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tY29sb3ItYmctbWFpbik7XG59XG5cbi51aS1zdGF0ZS1ob3Zlcixcbi51aS13aWRnZXQtY29udGVudCBhLnVpLXN0YXRlLWhvdmVyLFxuLnVpLXdpZGdldC1oZWFkZXIgLnVpLXN0YXRlLWhvdmVyLFxuLnVpLXN0YXRlLWZvY3VzLFxuLnVpLXdpZGdldC1jb250ZW50IC51aS1zdGF0ZS1mb2N1cyxcbi51aS13aWRnZXQtaGVhZGVyIC51aS1zdGF0ZS1mb2N1cyB7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLWJnLW1haW4pO1xufVxuXG4udWktbWVudSAudWktbWVudS1pdGVtIGEudWktc3RhdGUtaG92ZXIge1xuICAgIG1hcmdpbjogMDtcbn1cblxuLnJlc3VsdC1zdGF0dXMtY29tbWVudCAuY29udGVudCAuZXZlbnQtY29udGFpbmVyLFxuLnJlcG9ydGluZy1vdmVydmlldyAuY29udGVudCAuc3RpY2t5LXRhYmxlIC5ldmVudC1jb250YWluZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmOGY5ZmE7XG4gICAgYm9yZGVyLWxlZnQ6IDRweCBzb2xpZCAjNGE5MGUyO1xuICAgIHBhZGRpbmc6IDEwcHggMTZweDtcbiAgICBtYXJnaW46IDRweCAwO1xuXG4gICAgbWF4LWhlaWdodDogMTYwcHg7XG4gICAgb3ZlcmZsb3cteTogYXV0bztcbn1cblxuLnJlc3VsdC1zdGF0dXMtY29tbWVudCAuY29udGVudCAuZXZlbnQtY29udGFpbmVyOjotd2Via2l0LXNjcm9sbGJhcixcbi5yZXBvcnRpbmctb3ZlcnZpZXcgLmNvbnRlbnQgLnN0aWNreS10YWJsZSAuZXZlbnQtY29udGFpbmVyOjotd2Via2l0LXNjcm9sbGJhciB7XG4gICAgd2lkdGg6IDZweDtcbn1cblxuLnJlc3VsdC1zdGF0dXMtY29tbWVudCAuY29udGVudCAuZXZlbnQtY29udGFpbmVyOjotd2Via2l0LXNjcm9sbGJhci10cmFjayxcbi5yZXBvcnRpbmctb3ZlcnZpZXcgLmNvbnRlbnQgLnN0aWNreS10YWJsZSAuZXZlbnQtY29udGFpbmVyOjotd2Via2l0LXNjcm9sbGJhci10cmFjayB7XG4gICAgYmFja2dyb3VuZDogI2U5ZWNlZjtcbn1cblxuLnJlc3VsdC1zdGF0dXMtY29tbWVudCAuY29udGVudCAuZXZlbnQtY29udGFpbmVyOjotd2Via2l0LXNjcm9sbGJhci10aHVtYixcbi5yZXBvcnRpbmctb3ZlcnZpZXcgLmNvbnRlbnQgLnN0aWNreS10YWJsZSAuZXZlbnQtY29udGFpbmVyOjotd2Via2l0LXNjcm9sbGJhci10aHVtYiB7XG4gICAgYmFja2dyb3VuZDogI2FkYjViZDtcbiAgICBib3JkZXItcmFkaXVzOiAzcHg7XG59XG5cbi5yZXN1bHQtc3RhdHVzLWNvbW1lbnQgLmNvbnRlbnQgLmV2ZW50LWNvbnRhaW5lcjo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWI6aG92ZXIsXG4ucmVwb3J0aW5nLW92ZXJ2aWV3IC5jb250ZW50IC5zdGlja3ktdGFibGUgLmV2ZW50LWNvbnRhaW5lcjo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWI6aG92ZXIge1xuICAgIGJhY2tncm91bmQ6ICM2Yzc1N2Q7XG59XG5cbi5yZXN1bHQtc3RhdHVzLWNvbW1lbnQgLmNvbnRlbnQgLmV2ZW50LXRpbWVsaW5lLFxuLnJlcG9ydGluZy1vdmVydmlldyAuY29udGVudCAuc3RpY2t5LXRhYmxlIC5ldmVudC10aW1lbGluZSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGdhcDogNnB4O1xufVxuXG4ucmVzdWx0LXN0YXR1cy1jb21tZW50IC5jb250ZW50IC5ldmVudC1pdGVtLFxuLnJlcG9ydGluZy1vdmVydmlldyAuY29udGVudCAuc3RpY2t5LXRhYmxlIC5ldmVudC1pdGVtIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xufVxuXG4ucmVzdWx0LXN0YXR1cy1jb21tZW50IC5jb250ZW50IC5ldmVudC1pY29uLFxuLnJlcG9ydGluZy1vdmVydmlldyAuY29udGVudCAuc3RpY2t5LXRhYmxlIC5ldmVudC1pY29uIHtcbiAgICBjb2xvcjogIzhjOThhNDtcbiAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJvbGQpO1xufVxuXG4ucmVzdWx0LXN0YXR1cy1jb21tZW50IC5jb250ZW50IC5ldmVudC1tZXRhLFxuLnJlcG9ydGluZy1vdmVydmlldyAuY29udGVudCAuc3RpY2t5LXRhYmxlIC5ldmVudC1tZXRhIHtcbiAgICBtaW4td2lkdGg6IDE2MHB4O1xuICAgIGNvbG9yOiAjNmM3NTdkO1xuICAgIGZvbnQtZmFtaWx5OiBtb25vc3BhY2U7XG59XG5cbi5yZXN1bHQtc3RhdHVzLWNvbW1lbnQgLmNvbnRlbnQgLmV2ZW50LXVzZXIsXG4ucmVwb3J0aW5nLW92ZXJ2aWV3IC5jb250ZW50IC5zdGlja3ktdGFibGUgLmV2ZW50LXVzZXIge1xuICAgIG1pbi13aWR0aDogMTQwcHg7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJvbGQpO1xuICAgIGNvbG9yOiAjMmIzMDNhO1xuICAgIG1hcmdpbi1yaWdodDogMTJweDtcbn1cblxuLnJlc3VsdC1zdGF0dXMtY29tbWVudCAuY29udGVudCAuZXZlbnQtZGVzYyxcbi5yZXBvcnRpbmctb3ZlcnZpZXcgLmNvbnRlbnQgLnN0aWNreS10YWJsZSAuZXZlbnQtZGVzYyB7XG4gICAgY29sb3I6ICMzMzM7XG4gICAgZmxleC1ncm93OiAxO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gICAgb3ZlcmZsb3ctd3JhcDogYW55d2hlcmU7XG59XG5cbi5yZXBvcnRpbmctb3ZlcnZpZXcgLmNvbnRlbnQgLnN0aWNreS10YWJsZSAubmVzdGVkLXJvdyB0ZCB7XG4gICAgcGFkZGluZzogMDtcbiAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgI2UwZTBlMDtcbn1cblxuLnJlcG9ydGluZy1vdmVydmlldyAuY29udGVudCAuc2VhcmNoLWdyb3VwLW1vYmlsZSB7XG4gICAgd2lkdGg6IDEwMCU7XG59XG5cbi5yZXBvcnRpbmctb3ZlcnZpZXcgLmNvbnRlbnQgLnNlYXJjaC1pbnB1dC13cmFwcGVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXgtd2lkdGg6IDQwMHB4O1xufVxuXG4ucmVwb3J0aW5nLW92ZXJ2aWV3IC5jb250ZW50IC5zZWFyY2gtaW5wdXQtd3JhcHBlciBpbnB1dFt0eXBlPVwidGV4dFwiXSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZy1yaWdodDogOTBweDtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG4ucmVwb3J0aW5nLW92ZXJ2aWV3IC5jb250ZW50IC5zZWFyY2gtaW5wdXQtd3JhcHBlciBidXR0b24ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMnB4O1xuICAgIHRvcDogMnB4O1xuICAgIGJvdHRvbTogMnB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDAgNHB4IDRweCAwO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLnJlcG9ydGluZy1vdmVydmlldyAuY29udGVudCAuc3RpY2t5LXRhYmxlIC5ldmVudC1jb250YWluZXIge1xuICAgIHBhZGRpbmc6IDVweCAxMHB4O1xufVxuXG4ucmVwb3J0aW5nLW92ZXJ2aWV3IC5jb250ZW50IC5zdGlja3ktdGFibGUgLmV2ZW50LXRpbWVsaW5lIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgZ2FwOiA0cHg7XG59XG5cbi5yZXBvcnRpbmctb3ZlcnZpZXcgLmNvbnRlbnQgLnN0aWNreS10YWJsZSAuZXZlbnQtaXRlbSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGdhcDogMTBweDtcbn1cblxuLyogVGFiIG1lbnUgKi9cbi50YWItbWVudSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuICAgIGdhcDogdmFyKC0tc3BhY2UteHMpO1xuICAgIGJvcmRlci1ib3R0b206IHZhcigtLWJvcmRlci13aWR0aC1zbSkgc29saWQgdmFyKC0tYm9yZGVyLWNvbG9yLWxpZ2h0KTtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjZS1tZCk7XG59XG5cbi50YWItbWVudS0taGFyZHdhcmUge1xuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG59XG5cbi50YWItbWVudSA+ICoge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xufVxuXG4udGFiLW1lbnUgc2VsZWN0IHtcbiAgICBtYXJnaW4tYm90dG9tOiB2YXIoLS1zcGFjZS14cyk7XG59XG5cbi5maWx0ZXIudGFiLW1lbnUge1xuICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLnRhYi1tZW51IC5idXR0b24ge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBtYXJnaW4tYm90dG9tOiAtMXB4O1xuICAgIGNvbG9yOiB2YXIoLS1mb250LWNvbG9yLWRhcmspO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgcGFkZGluZzogdmFyKC0tc3BhY2Utc20pIHZhcigtLXNwYWNlLW1kKTtcbiAgICBnYXA6IHZhcigtLXNwYWNlLXNtKTtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICAgIHRyYW5zaXRpb246IGNvbG9yIDAuMTVzIGVhc2UsIGJvcmRlci1jb2xvciAwLjE1cyBlYXNlO1xufVxuXG4udGFiLW1lbnUgLmJ1dHRvbjpob3ZlciB7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1ib3JkZXItY29sb3Itc3RhbmRhcmQpO1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1saW5rKTtcbiAgICBib3gtc2hhZG93OiBub25lO1xufVxuXG4udGFiLW1lbnUgLmJ1dHRvbjpmb2N1cyB7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xufVxuXG4udGFiLW1lbnUgLmJ1dHRvbi5mb2N1cyxcbi50YWItbWVudSAuYnV0dG9uLmFjdGl2ZSxcbi50YWItbWVudSAuYnV0dG9uLmZvY3VzOmhvdmVyLFxuLnRhYi1tZW51IC5idXR0b24uYWN0aXZlOmhvdmVyLFxuLnRhYi1tZW51IC5idXR0b24uZm9jdXM6Zm9jdXMsXG4udGFiLW1lbnUgLmJ1dHRvbi5hY3RpdmU6Zm9jdXMge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItbGluayk7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWxpbmspO1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1ib2xkKTtcbiAgICBib3gtc2hhZG93OiBub25lO1xufVxuXG4udGFiLW1lbnUgLmJ1dHRvbjpmb2N1cy12aXNpYmxlIHtcbiAgICBvdXRsaW5lOiAycHggc29saWQgdmFyKC0tY29sb3ItaGlnaGxpZ2h0KTtcbiAgICBvdXRsaW5lLW9mZnNldDogLTJweDtcbn1cblxuLnRhYi1tZW51IC50YWJsZS1uYXZpZ2F0aW9uIHtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1hcmdpbi1ib3R0b206IHZhcigtLXNwYWNlLXhzKTtcbn1cblxuLmZsZXgtcm93ID4gLnRhYmxlLW5hdmlnYXRpb24ge1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi10b3A6IDA7XG59XG5cbi8qIFNpZGViYXIgKi9cbi5zaWRlYmFyLXRpdGxlIHtcbiAgICBjb2xvcjogIzFlMjkzYjtcbiAgICBtYXJnaW4tYm90dG9tOiAxMnB4O1xufVxuXG4uc2lkZWJhci10aXRsZS1saW5rIHtcbiAgICBjb2xvcjogIzAyODRjNztcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi5zaWRlYmFyLXRpdGxlLWxpbms6aG92ZXIge1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xufVxuXG4uc2lkZWJhci1lbXB0eSB7XG4gICAgY29sb3I6ICM2NDc0OGI7XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuXG4ud3ItcmFua2luZy1jYXJkIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgYm9yZGVyOiB2YXIoLS1ib3JkZXItd2lkdGgtc20pIHNvbGlkICNmOGZhZmM7XG4gICAgYm9yZGVyLXJhZGl1czogNnB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi53ci1yYW5raW5nLWNhcmQgLndyLXJhbmtpbmctcm93Om5vdCg6bGFzdC1jaGlsZCkge1xuICAgIHBhZGRpbmctYm90dG9tOiB2YXIoLS1zcGFjZS14cyk7XG4gICAgYm9yZGVyLWJvdHRvbTogdmFyKC0tYm9yZGVyLXdpZHRoLXNtKSBzb2xpZCB2YXIoLS1ib3JkZXItY29sb3ItbGlnaHQpO1xufVxuXG4ud3ItcmFua2luZy1yb3cge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZzogNnB4IDEwcHggNnB4IDA7XG4gICAgZ2FwOiA4cHg7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNmMWY1Zjk7XG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjE1cyBlYXNlO1xufVxuXG4ud3ItcmFua2luZy1yb3c6bGFzdC1jaGlsZCB7XG4gICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbn1cblxuLndyLXJhbmtpbmctcm93OmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjFmNWY5O1xufVxuXG4ud3ItcmFua2luZy1yb3cuaXMtYWN0aXZlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDhlOGVlO1xufVxuXG4ucG9zLW1hcmtlciB7XG4gICAgd2lkdGg6IDRweDtcbiAgICBhbGlnbi1zZWxmOiBzdHJldGNoO1xuICAgIGZsZXgtc2hyaW5rOiAwO1xufVxuXG4ucG9zLW1hcmtlci5nb2xkIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWFiMzA4O1xufVxuXG4ucG9zLW1hcmtlci5zaWx2ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM5NGEzYjg7XG59XG5cbi5wb3MtbWFya2VyLmJyb256ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Q5NzcwNjtcbn1cblxuLnBvcy1tYXJrZXIubWVkYWwge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMzOGJkZjg7XG59XG5cbi5wb3MtbWFya2VyLm5vbWVkYWwge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4ucmFuay1wb3Mge1xuICAgIGNvbG9yOiAjNDc1NTY5O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBmbGV4LXNocmluazogMDtcbn1cblxuLyogTWFpbiBSb3cgSW5mbyAqL1xuLnJhbmstY29udGVudCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIG1pbi13aWR0aDogMDtcbiAgICBmbGV4OiAxO1xuICAgIGdhcDogMnB4O1xufVxuXG4ucmFuay11c2VyLWxpbmUge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBnYXA6IDZweDtcbiAgICBtaW4td2lkdGg6IDA7XG59XG5cbi5yYW5rLWF2YXRhciB7XG4gICAgd2lkdGg6IDIwcHg7XG4gICAgaGVpZ2h0OiAyMHB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICBmbGV4LXNocmluazogMDtcbn1cblxuLnJhbmstdXNlcm5hbWUge1xuICAgIGNvbG9yOiAjMDI4NGM3O1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG59XG5cbi5yYW5rLXVzZXJuYW1lOmhvdmVyIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbn1cblxuLnJhbmstaGFyZHdhcmUtbGluZSB7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xufVxuXG4ucmFuay1ody1saW5rIHtcbiAgICBjb2xvcjogIzQ3NTU2OTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi5yYW5rLWh3LWxpbms6aG92ZXIge1xuICAgIGNvbG9yOiAjMDI4NGM3O1xufVxuXG4ucmFuay1jbG9jayB7XG4gICAgY29sb3I6ICM2NDc0OGI7XG59XG5cbi5yYW5rLXNjb3JlIHtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbn1cblxuLnJhbmstc2NvcmUtbGluayB7XG4gICAgY29sb3I6ICMwZjE3MmE7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4ucmFuay1zY29yZS1saW5rOmhvdmVyIHtcbiAgICBjb2xvcjogIzAyODRjNztcbn1cblxuLyogUmVzdWx0IGhpc3RvcnkgKi9cbi5oaXN0b3J5LW1ldGEge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZ2FwOiA2cHg7XG4gICAgY29sb3I6ICM5NGEzYjg7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJvbGQpO1xuICAgIG1hcmdpbi1ib3R0b206IDJweDtcbn1cblxuLmhpc3RvcnktbWV0YTo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG59XG5cbi5oaXN0b3J5LXVzZXIge1xuICAgIGNvbG9yOiAjMzhiZGY4O1xufVxuXG4uaGlzdG9yeS1kZXNjIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgIGdhcDogNnB4O1xufVxuXG4uaGlzdG9yeS1pY29uIHtcbiAgICBjb2xvcjogIzY0NzQ4YjtcbiAgICBtYXJnaW4tdG9wOiAycHg7XG59XG5cbi8qIEhhcmR3YXJlIHRyZWUgKi9cbi5ody10cmVlLWxpc3QsIFxuLmh3LXRyZWUtc3VibGlzdCB7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbn1cblxuLmh3LXRyZWUtc3VibGlzdCB7XG4gICAgcGFkZGluZy1sZWZ0OiB2YXIoLS1zcGFjZS1tZCk7XG4gICAgYm9yZGVyLWxlZnQ6IHZhcigtLWJvcmRlci13aWR0aC1zbSkgc29saWQgdmFyKC0tYm9yZGVyLWNvbG9yLWxpZ2h0KTtcbiAgICBtYXJnaW4tbGVmdDogdmFyKC0tc3BhY2Utc20pO1xufVxuXG4uaHctdHJlZS1zdW1tYXJ5IHtcbiAgICBkaXNwbGF5OiBsaXN0LWl0ZW07XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpO1xufVxuXG4uaHctdHJlZS1zdW1tYXJ5Ojotd2Via2l0LWRldGFpbHMtbWFya2VyIHtcbiAgICBkaXNwbGF5OiBub25lO1xufVxuXG4uaHctdHJlZS1zdW1tYXJ5OjptYXJrZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgZGlzcGxheTogbm9uZTtcbn1cblxuLmh3LXRyZWUtc3VtbWFyeS1jb250ZW50IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZ2FwOiB2YXIoLS1zcGFjZS1zbSk7XG4gICAgcGFkZGluZzogdmFyKC0tc3BhY2Utc20pIHZhcigtLXNwYWNlLW1kKTtcbn1cblxuLmh3LXRyZWUtc3VtbWFyeS1jb250ZW50IC5ody10cmVlLWxpbmsge1xuICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIGZsZXg6IDE7XG59XG5cbi5ody10cmVlLXN1bW1hcnktY29udGVudCAuaHctdHJlZS1sYWJlbCB7XG4gICAgZmxleDogMTtcbn1cblxuLmh3LXRyZWUtc3VtbWFyeS1jb250ZW50OjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXFxmMDU0XCI7XG4gICAgZm9udC1mYW1pbHk6IFwiRm9udCBBd2Vzb21lIDYgRnJlZVwiLCBcIkZvbnRBd2Vzb21lXCI7XG4gICAgY29sb3I6ICM5NGEzYjg7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMnMgZWFzZTtcbn1cblxuLmh3LXRyZWUtYnJhbmNoW29wZW5dID4gLmh3LXRyZWUtc3VtbWFyeSAuaHctdHJlZS1zdW1tYXJ5LWNvbnRlbnQ6OmJlZm9yZSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xuICAgIGNvbG9yOiB2YXIoLS1mb250LWNvbG9yLWRhcmspO1xufVxuXG4uaHctdHJlZS1saW5rIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiB2YXIoLS1zcGFjZS1zbSkgdmFyKC0tc3BhY2UtbWQpO1xuICAgIGNvbG9yOiB2YXIoLS1mb250LWNvbG9yLWRhcmspO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtcbn1cblxuLmh3LXRyZWUtc3VtbWFyeTpub3QoOmhhcyguaHctdHJlZS1saW5rLmlzLWFjdGl2ZSkpOmhvdmVyLFxuLmh3LXRyZWUtbGluazpub3QoLmlzLWFjdGl2ZSk6aG92ZXIge1xuICAgIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLWJnLWhvdmVyLWxpZ2h0KTtcbiAgICBjb2xvcjogdmFyKC0tZm9udC1jb2xvci1kYXJrKTtcbn1cblxuLmh3LXRyZWUtc3VtbWFyeS1jb250ZW50IC5ody10cmVlLWxpbms6aG92ZXIge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xufVxuXG4uaHctdHJlZS1saW5rLmlzLWFjdGl2ZSxcbi5ody10cmVlLXN1bW1hcnk6aGFzKC5ody10cmVlLWxpbmsuaXMtYWN0aXZlKSB7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tY29sb3ItYmctaG92ZXItZGFyayk7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJvbGQpO1xufVxuXG4uaHctdHJlZS1saW5rLmlzLWFjdGl2ZTppcyg6bGluaywgOnZpc2l0ZWQsIDpob3ZlciwgOmZvY3VzLCA6YWN0aXZlKSxcbi5ody10cmVlLXN1bW1hcnk6aGFzKC5ody10cmVlLWxpbmsuaXMtYWN0aXZlKSxcbi5ody10cmVlLXN1bW1hcnk6aGFzKC5ody10cmVlLWxpbmsuaXMtYWN0aXZlKSAuaHctdHJlZS1saW5rOmlzKDpsaW5rLCA6dmlzaXRlZCwgOmhvdmVyLCA6Zm9jdXMsIDphY3RpdmUpLFxuLmh3LXRyZWUtc3VtbWFyeTpoYXMoLmh3LXRyZWUtbGluay5pcy1hY3RpdmUpIC5ody10cmVlLWxhYmVsLFxuLmh3LXRyZWUtc3VtbWFyeTpoYXMoLmh3LXRyZWUtbGluay5pcy1hY3RpdmUpIC5ody10cmVlLXN1bW1hcnktY29udGVudDo6YmVmb3JlIHtcbiAgICBjb2xvcjogdmFyKC0tZm9udC1jb2xvci1saWdodCk7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4vKiBEZXNrdG9wIHNldHRpbmdzICovXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMjAxcHgpIHtcblxuICAgIC5oZWFkZXIge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgfVxuXG4gICAgLmhlYWRlciAubG9nby13cmFwcGVyLFxuICAgIC5oZWFkZXIgLnBhcnRuZXItd3JhcHBlcixcbiAgICAuaGVhZGVyIC5hY2NvdW50LXdyYXBwZXIge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBwYWRkaW5nOiAxMHB4O1xuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgIGdhcDogMTBweCAyMHB4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICB9XG5cbiAgICAuaGVhZGVyIC5sb2dvLXdyYXBwZXIsXG4gICAgLmhlYWRlciAucGFydG5lci13cmFwcGVyIHtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgfVxuXG4gICAgLmhlYWRlciAuYWNjb3VudC13cmFwcGVyIHtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiByaWdodDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgfVxuXG4gICAgLmhlYWRlciAuYWNjb3VudC13cmFwcGVyIC5ncmlkIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIGdhcDogNXB4O1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxuXG4gICAgLmhlYWRlciAucGFydG5lci13cmFwcGVyLFxuICAgIC5oZWFkZXIgLmFjY291bnQtd3JhcHBlciB7XG4gICAgICAgIGNvbG9yOiBnYWluc2Jvcm87XG4gICAgICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWhlYWRpbmcpO1xuICAgIH1cblxuICAgIC5oZWFkZXIgLnBhcnRuZXItd3JhcHBlciAucGFydG5lci1pbmZvIHtcbiAgICB9XG5cbiAgICAuaGVhZGVyIC5wYXJ0bmVyLXdyYXBwZXIgLnBsYXRpbnVtLXBhcnRuZXIgaW1nIHtcbiAgICAgICAgaGVpZ2h0OiAzMHB4O1xuICAgIH1cblxuICAgIC5oZWFkZXIsIC5uYXZpZ2F0aW9uLCAuZm9vdGVyIHtcbiAgICAgICAgZ3JpZC1jb2x1bW46IDEgLyAtMTtcbiAgICB9XG5cbiAgICAuaGVhZGVyIC5hY2NvdW50IGEsXG4gICAgLmhlYWRlciAuYWNjb3VudCBhOmxpbmssXG4gICAgLmhlYWRlciAuYWNjb3VudCBhOmhvdmVyLFxuICAgIC5oZWFkZXIgLmFjY291bnQgYTp2aXNpdGVkLFxuICAgIC5oZWFkZXIgLmFjY291bnQgYTphY3RpdmUge1xuICAgICAgICBjb2xvcjogZ2FpbnNib3JvO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgfVxuXG4gICAgLmhlYWRlciAuYWNjb3VudCB7XG4gICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICB9XG5cbiAgICAuaGVhZGVyIC5hY2NvdW50IGxpIHtcbiAgICAgICAgY29sb3I6IGdhaW5zYm9ybztcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgfVxuXG4gICAgLmhlYWRlciAubG9nby13cmFwcGVyIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB6LWluZGV4OiAxMDAwO1xuICAgIH1cblxuICAgIGJvZHkub25lLWNvbHVtbiB7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogYXV0bztcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiBhdXRvIGF1dG8gMWZyIGF1dG87XG4gICAgICAgIG1heC13aWR0aDogMjAwMHB4O1xuICAgICAgICBtYXJnaW46IGF1dG87XG4gICAgfVxuXG4gICAgYm9keS5sZWZ0LXNpZGViYXIge1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAzZnI7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtcm93czogYXV0byBhdXRvIDFmciBhdXRvO1xuICAgICAgICBtYXgtd2lkdGg6IDIwMDBweDtcbiAgICAgICAgbWFyZ2luOiBhdXRvO1xuICAgIH1cblxuICAgIGJvZHkucmlnaHQtc2lkZWJhciB7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogM2ZyIDFmcjtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiBhdXRvIGF1dG8gMWZyIGF1dG87XG4gICAgICAgIG1heC13aWR0aDogMjAwMHB4O1xuICAgICAgICBtYXJnaW46IGF1dG87XG4gICAgfVxuXG4gICAgLm5hdl9fbGlzdCB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICAubmF2X19pdGVtLS1jdGEge1xuICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICB9XG5cbiAgICAubmF2X19pdGVtLS1oYXMtc3ViID4gLm5hdl9fbGluay1yb3cgPiAubmF2X19saW5rOjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDZweDtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgYm9yZGVyLXRvcDogNHB4IHNvbGlkICMzOGJkZjg7XG4gICAgICAgIGJvcmRlci1yaWdodDogNHB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICBib3JkZXItbGVmdDogNHB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4ycyBlYXNlLCBib3JkZXItdG9wLWNvbG9yIDAuMnMgZWFzZTtcbiAgICB9XG5cbiAgICAubmF2X19pdGVtLS1oYXMtc3ViOmlzKDpob3ZlciwgOmZvY3VzLXdpdGhpbikgPiAubmF2X19saW5rLXJvdyA+IC5uYXZfX2xpbms6OmFmdGVyIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbiAgICAgICAgYm9yZGVyLXRvcC1jb2xvcjogdmFyKC0tY29sb3ItaGlnaGxpZ2h0KTtcbiAgICB9XG5cbiAgICAubmF2X19zdWIge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMTAwJTtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgbWluLXdpZHRoOiAyNDBweDtcbiAgICAgICAgcGFkZGluZzogNnB4IDA7XG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLWJnLWxpZ2h0KTtcbiAgICAgICAgYm9yZGVyOiB2YXIoLS1ib3JkZXItd2lkdGgtc20pIHNvbGlkIHZhcigtLWJvcmRlci1jb2xvci1saWdodCk7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDAgMCA2cHggNnB4O1xuICAgICAgICBib3gtc2hhZG93OiAwIDEwcHggMjVweCByZ2JhKDAsIDAsIDAsIDAuMTUpO1xuICAgICAgICB6LWluZGV4OiB2YXIoLS16LWluZGV4LWRyb3Bkb3duLCA1MDApO1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg2cHgpO1xuICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzIGVhc2UsIHRyYW5zZm9ybSAwLjJzIGVhc2UsIHZpc2liaWxpdHkgMC4ycyBlYXNlO1xuICAgIH1cblxuICAgIC8qIEhvdmVyIGJyaWRnZSBwcmV2ZW50aW5nIGN1cnNvciBkcm9wcyAqL1xuICAgIC5uYXZfX3N1Yjo6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IC02cHg7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBoZWlnaHQ6IDZweDtcbiAgICB9XG5cbiAgICAubmF2X19pdGVtLS1oYXMtc3ViOmlzKDpob3ZlciwgOmZvY3VzLXdpdGhpbikgPiAubmF2X19zdWIge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xuICAgIH1cblxuICAgIC5ub2Rlc2t0b3Age1xuICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLyogR2xvYmFsIHNlYXJjaCAqL1xuICAgIC5nbG9iYWwtc2VhcmNoIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgfVxuXG4gICAgLmdsb2JhbC1zZWFyY2gtaW5wdXQtZ3JvdXAge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIH1cblxuICAgIC5nbG9iYWwtc2VhcmNoIGlucHV0W3R5cGU9XCJ0ZXh0XCJdLFxuICAgIC5nbG9iYWwtc2VhcmNoIGlucHV0W3R5cGU9XCJzZWFyY2hcIl0sXG4gICAgLmdsb2JhbC1zZWFyY2gtaW5wdXQsXG4gICAgLmdsb2JhbC1zZWFyY2ggYnV0dG9uW3R5cGU9XCJzdWJtaXRcIl0sXG4gICAgLmdsb2JhbC1zZWFyY2gtYnV0dG9uIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB6LWluZGV4OiAxMDAwO1xuICAgICAgICBoZWlnaHQ6IDQwcHg7XG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgfVxuXG4gICAgLmdsb2JhbC1zZWFyY2ggaW5wdXRbdHlwZT1cInRleHRcIl0sXG4gICAgLmdsb2JhbC1zZWFyY2ggaW5wdXRbdHlwZT1cInNlYXJjaFwiXSxcbiAgICAuZ2xvYmFsLXNlYXJjaC1pbnB1dCB7XG4gICAgICAgIHdpZHRoOiAxOTBweDtcbiAgICAgICAgcGFkZGluZzogMCAxNHB4IDAgMThweDtcbiAgICAgICAgYm9yZGVyOiB2YXIoLS1ib3JkZXItd2lkdGgtbWQpIHNvbGlkIHZhcigtLWNvbG9yLWJnLWRhcmspO1xuICAgICAgICBib3JkZXItcmlnaHQ6IG5vbmU7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDk5OTlweCAwIDAgOTk5OXB4O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1iZy1kYXJrKTtcbiAgICAgICAgY29sb3I6ICNmZmZmZmY7XG4gICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICAgIHRyYW5zaXRpb246IHdpZHRoIDAuMjVzIGVhc2UsIGJvcmRlci1jb2xvciAwLjJzIGVhc2UsIGJhY2tncm91bmQtY29sb3IgMC4ycyBlYXNlO1xuICAgIH1cblxuICAgIC5nbG9iYWwtc2VhcmNoIGlucHV0W3R5cGU9XCJ0ZXh0XCJdOjpwbGFjZWhvbGRlcixcbiAgICAuZ2xvYmFsLXNlYXJjaCBpbnB1dFt0eXBlPVwic2VhcmNoXCJdOjpwbGFjZWhvbGRlcixcbiAgICAuZ2xvYmFsLXNlYXJjaC1pbnB1dDo6cGxhY2Vob2xkZXIge1xuICAgICAgICBjb2xvcjogIzk0YTNiODtcbiAgICB9XG5cbiAgICAuZ2xvYmFsLXNlYXJjaCBpbnB1dFt0eXBlPVwidGV4dFwiXTpmb2N1cyxcbiAgICAuZ2xvYmFsLXNlYXJjaCBpbnB1dFt0eXBlPVwic2VhcmNoXCJdOmZvY3VzLFxuICAgIC5nbG9iYWwtc2VhcmNoLWlucHV0OmZvY3VzIHtcbiAgICAgICAgd2lkdGg6IDI2MHB4O1xuICAgICAgICBib3JkZXItY29sb3I6IHJnYmEoNTYsIDE4OSwgMjQ4LCAwLjUpO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSk7XG4gICAgfVxuXG4gICAgLmdsb2JhbC1zZWFyY2ggYnV0dG9uW3R5cGU9XCJzdWJtaXRcIl0sXG4gICAgLmdsb2JhbC1zZWFyY2gtYnV0dG9uIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICB3aWR0aDogNDRweDtcbiAgICAgICAgcGFkZGluZzogMCAxNnB4IDAgMTBweDtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBib3JkZXI6IHZhcigtLWJvcmRlci13aWR0aC1tZCkgc29saWQgdmFyKC0tY29sb3ItYmctZGFyayk7XG4gICAgICAgIGJvcmRlci1sZWZ0OiBub25lO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwIDk5OTlweCA5OTk5cHggMDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYmctZGFyayk7XG4gICAgICAgIGNvbG9yOiAjOTRhM2I4O1xuICAgICAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS1sZyk7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjJzIGVhc2UsIGJvcmRlci1jb2xvciAwLjJzIGVhc2UsIGNvbG9yIDAuMnMgZWFzZTtcbiAgICB9XG5cbiAgICAuZ2xvYmFsLXNlYXJjaDpob3ZlciAuZ2xvYmFsLXNlYXJjaC1pbnB1dCxcbiAgICAuZ2xvYmFsLXNlYXJjaDpob3ZlciAuZ2xvYmFsLXNlYXJjaC1idXR0b24ge1xuICAgICAgICBib3JkZXItY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yKTtcbiAgICB9XG5cbiAgICAuZ2xvYmFsLXNlYXJjaCBidXR0b25bdHlwZT1cInN1Ym1pdFwiXTpob3ZlcixcbiAgICAuZ2xvYmFsLXNlYXJjaC1idXR0b246aG92ZXIsXG4gICAgLmdsb2JhbC1zZWFyY2ggYnV0dG9uW3R5cGU9XCJzdWJtaXRcIl06Zm9jdXMtdmlzaWJsZSxcbiAgICAuZ2xvYmFsLXNlYXJjaC1idXR0b246Zm9jdXMtdmlzaWJsZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJnLWhvdmVyLWRhcmspO1xuICAgICAgICBib3JkZXItY29sb3I6IHJnYmEoNTYsIDE4OSwgMjQ4LCAwLjUpO1xuICAgICAgICBjb2xvcjogIzM4YmRmODtcbiAgICB9XG5cbiAgICAuZ2xvYmFsLXNlYXJjaDpmb2N1cy13aXRoaW4gLmdsb2JhbC1zZWFyY2gtaW5wdXQge1xuICAgICAgICBib3JkZXItY29sb3I6IHJnYmEoNTYsIDE4OSwgMjQ4LCAwLjUpO1xuICAgIH1cblxuICAgIC5nbG9iYWwtc2VhcmNoOmZvY3VzLXdpdGhpbiAuZ2xvYmFsLXNlYXJjaC1idXR0b24ge1xuICAgICAgICBib3JkZXItY29sb3I6IHJnYmEoNTYsIDE4OSwgMjQ4LCAwLjUpO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSk7XG4gICAgICAgIGNvbG9yOiAjMzhiZGY4O1xuICAgIH1cblxuICAgIC5nbG9iYWwtc2VhcmNoLWF1dG9jb21wbGV0ZS13cmFwcGVyIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgICB0b3A6IDc1cHg7XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgICAgICB3aWR0aDogOTAwcHg7XG4gICAgICAgIG1heC13aWR0aDogOTJ2dztcbiAgICAgICAgei1pbmRleDogdmFyKC0tei1pbmRleC1tb2RhbCwgMTA1MCk7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEyKTtcbiAgICAgICAgYm94LXNoYWRvdzogMCAyNXB4IDYwcHggcmdiYSgwLCAwLCAwLCAwLjcpO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIH1cblxuICAgIC5nbG9iYWwtc2VhcmNoLWF1dG9jb21wbGV0ZS1oZWFkZXIge1xuICAgICAgICBwYWRkaW5nOiAxMHB4IDE2cHg7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJnLWRhcmspO1xuICAgICAgICBib3JkZXItYm90dG9tOiB2YXIoLS1ib3JkZXItd2lkdGgtc20pIHNvbGlkIHZhcigtLWJvcmRlci1jb2xvci1saWdodCk7XG4gICAgICAgIGNvbG9yOiAjZjhmYWZjO1xuICAgIH1cblxuICAgIC5nbG9iYWwtc2VhcmNoLWRlc2t0b3AtYWN0aW9uIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICAuZ2xvYmFsLXNlYXJjaC1hdXRvY29tcGxldGUtaGVhZGVyIC5idXR0b24sXG4gICAgLmdsb2JhbC1zZWFyY2gtZGVza3RvcC1hY3Rpb24gLmJ1dHRvbiB7XG4gICAgICAgIHBhZGRpbmc6IDRweCA4cHg7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICAgIHRyYW5zaXRpb246IGNvbG9yIDAuMnMgZWFzZSwgdHJhbnNmb3JtIDAuMnMgZWFzZTtcbiAgICB9XG5cbiAgICAuZ2xvYmFsLXNlYXJjaC1hdXRvY29tcGxldGUtaGVhZGVyIC5idXR0b246aG92ZXIsXG4gICAgLmdsb2JhbC1zZWFyY2gtZGVza3RvcC1hY3Rpb24gLmJ1dHRvbjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgICBjb2xvcjogdmFyKC0tZm9udC1jb2xvci1kYXJrKTtcbiAgICB9XG5cbiAgICAuZ2xvYmFsLXNlYXJjaC1jb250ZW50IC5zZWFyY2gtcmVzdWx0cy1jb250YWluZXIge1xuICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdChhdXRvLWZpdCwgbWlubWF4KDI4MHB4LCAxZnIpKTtcbiAgICAgICAgZ2FwOiAxNnB4O1xuICAgICAgICBhbGlnbi1pdGVtczogc3RhcnQ7XG4gICAgICAgIG1heC1oZWlnaHQ6IDcwdmg7XG4gICAgICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgfVxuXG4gICAgLmdsb2JhbC1zZWFyY2gtY29udGVudCAuc2VhcmNoLWNhdGVnb3J5LWdyb3VwIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgfVxuXG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEyMDBweCkge1xuXG4gICAgYm9keS5sZWZ0LXNpZGViYXIsXG4gICAgYm9keS5yaWdodC1zaWRlYmFyIHtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG4gICAgfVxuXG4gICAgLm5vbW9iaWxlIHtcbiAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC8qIENvbnRlbnQgc2V0dGluZ3MgKi9cbiAgICAuY29udGVudCB7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMTBweCBtaW5tYXgoMCwgMWZyKSAxMHB4O1xuICAgIH1cblxuICAgIC5oZWFkZXIge1xuICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnI7XG4gICAgICAgIGdhcDogMTVweDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgcGFkZGluZzogMTBweDtcbiAgICB9XG5cbiAgICAuaGVhZGVyIC5sb2dvLXdyYXBwZXIge1xuICAgICAgICBncmlkLWNvbHVtbjogMTtcbiAgICAgICAgZ3JpZC1yb3c6IDE7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGdhcDogMzBweDtcbiAgICB9XG5cbiAgICAuaGVhZGVyIC5wYXJ0bmVyLXdyYXBwZXIge1xuICAgICAgICBncmlkLWNvbHVtbjogc3BhbiAyO1xuICAgICAgICBncmlkLXJvdzogMjtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgZ2FwOiA4cHg7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBmb250LWZhbWlseTogdmFyKC0tZm9udC1oZWFkaW5nKTtcbiAgICAgICAgY29sb3I6IGdhaW5zYm9ybztcbiAgICB9XG5cbiAgICAuaGVhZGVyIC5wYXJ0bmVyLXdyYXBwZXIgLnBsYXRpbnVtLXBhcnRuZXIgaW1nIHtcbiAgICAgICAgaGVpZ2h0OiAzMHB4O1xuICAgIH1cblxuICAgIC5zaWRlLWFyZWEge1xuICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgd2lkdGg6IDEwMHZ3O1xuICAgICAgICBoZWlnaHQ6IDEwMHZoO1xuICAgICAgICB6LWluZGV4OiB2YXIoLS16LWluZGV4LWRyYXdlciwgMTAwMCk7XG5cbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwMCUpO1xuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zNXMgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC4yLCAxKTtcbiAgICAgICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICB9XG5cbiAgICAuc2lkZS1hcmVhLmlzLW9wZW4ge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgfVxuXG4gICAgLnNpZGUtYXJlYSAuY29udGVudCB7XG4gICAgICAgIHBhZGRpbmc6IDAgMTVweCAzMHB4IDE1cHg7XG4gICAgfVxuXG4gICAgLnNpZGUtYXJlYSAuY29udGVudCAuaGFyZHdhcmUtdHJlZSxcbiAgICAuc2lkZS1hcmVhIC5jb250ZW50IC5oYXJkd2FyZVRyZWUsXG4gICAgLnNpZGUtYXJlYSAuY29udGVudCAuaHctdHJlZSB7XG4gICAgICAgIGhlaWdodDogY2FsYygxMDB2aCAtIDcwcHgpO1xuICAgICAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgIH1cblxuICAgIC5ody10cmVlLXN1bW1hcnktY29udGVudCxcbiAgICAuaHctdHJlZS1saW5rIHtcbiAgICAgICAgcGFkZGluZzogMTBweCAxMnB4O1xuICAgIH1cblxuICAgIC5zaWRlYmFyLW1vYmlsZS1oZWFkZXIge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIHBvc2l0aW9uOiAtd2Via2l0LXN0aWNreTtcbiAgICAgICAgcG9zaXRpb246IHN0aWNreTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICB6LWluZGV4OiB2YXIoLS16LWluZGV4LXN0aWNreS1oZWFkZXIsIDEwKTtcbiAgICAgICAgcGFkZGluZzogNXB4O1xuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1iZy1hbHQpO1xuICAgICAgICBjb2xvcjogdmFyKC0tZm9udC1jb2xvci1kYXJrKTtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICMwMDViYjc7XG4gICAgICAgIG1hcmdpbjogMCAtMTVweCAyMHB4IC0xNXB4O1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBmb250LWZhbWlseTogdmFyKC0tZm9udC1oZWFkaW5nKTtcbiAgICB9XG5cbiAgICAubW9kYWwtb3ZlcmxheSxcbiAgICAubW9kYWwtb3ZlcmxheS0tZnVsbHNjcmVlbi1tb2JpbGUge1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzdHJldGNoO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxMDBkdmg7XG4gICAgfVxuXG4gICAgLm1vZGFsLWRpYWxvZyxcbiAgICAubW9kYWwtZGlhbG9nLS1mdWxsc2NyZWVuLW1vYmlsZSB7XG4gICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMTAwZHZoO1xuICAgICAgICBtYXgtaGVpZ2h0OiAxMDBkdmg7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAwJSk7XG4gICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjM1cyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpO1xuICAgICAgICB3aWxsLWNoYW5nZTogdHJhbnNmb3JtO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIH1cblxuICAgIC5tb2RhbC1vdmVybGF5LmlzLW9wZW4gLm1vZGFsLWRpYWxvZyxcbiAgICAubW9kYWwtb3ZlcmxheS0tZnVsbHNjcmVlbi1tb2JpbGUuaXMtb3BlbiAubW9kYWwtZGlhbG9nLS1mdWxsc2NyZWVuLW1vYmlsZSB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICB9XG5cbiAgICAubW9kYWwtZGlhbG9nIC5tb2RhbC1oZWFkZXIsXG4gICAgLm1vZGFsLWRpYWxvZy0tZnVsbHNjcmVlbi1tb2JpbGUgLm1vZGFsLWhlYWRlciB7XG4gICAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1iZy1tYWluKTtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogdmFyKC0tYm9yZGVyLXdpZHRoLXNtKSBzb2xpZCB2YXIoLS1ib3JkZXItY29sb3ItbGlnaHQpO1xuICAgICAgICBwYWRkaW5nOiBtYXgoMTBweCwgZW52KHNhZmUtYXJlYS1pbnNldC10b3AsIDEwcHgpKSBtYXgoMTVweCwgZW52KHNhZmUtYXJlYS1pbnNldC1yaWdodCwgMTVweCkpIDEwcHggbWF4KDE1cHgsIGVudihzYWZlLWFyZWEtaW5zZXQtbGVmdCwgMTVweCkpO1xuICAgIH1cblxuICAgIC5tb2RhbC1kaWFsb2cgLm1vZGFsLWJvZHksXG4gICAgLm1vZGFsLWRpYWxvZy0tZnVsbHNjcmVlbi1tb2JpbGUgLm1vZGFsLWJvZHkge1xuICAgICAgICBmbGV4OiAxIDEgMDtcbiAgICAgICAgbWluLWhlaWdodDogMDtcbiAgICAgICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICAgICAgb3ZlcnNjcm9sbC1iZWhhdmlvci15OiBjb250YWluO1xuICAgICAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gICAgICAgIHBhZGRpbmc6IDE1cHggbWF4KDE1cHgsIGVudihzYWZlLWFyZWEtaW5zZXQtcmlnaHQsIDE1cHgpKSAxNXB4IG1heCgxNXB4LCBlbnYoc2FmZS1hcmVhLWluc2V0LWxlZnQsIDE1cHgpKTtcbiAgICB9XG5cblxuICAgIC5tb2RhbC1kaWFsb2cgLm1vZGFsLWZvb3RlcixcbiAgICAubW9kYWwtZGlhbG9nLS1mdWxsc2NyZWVuLW1vYmlsZSAubW9kYWwtZm9vdGVyIHtcbiAgICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLWJnLW1haW4pO1xuICAgICAgICBib3JkZXItdG9wOiB2YXIoLS1ib3JkZXItd2lkdGgtc20pIHNvbGlkIHZhcigtLWJvcmRlci1jb2xvci1saWdodCk7XG4gICAgICAgIHBhZGRpbmc6IDEycHggbWF4KDE1cHgsIGVudihzYWZlLWFyZWEtaW5zZXQtcmlnaHQsIDE1cHgpKSBtYXgoMTJweCwgZW52KHNhZmUtYXJlYS1pbnNldC1ib3R0b20sIDEycHgpKSBtYXgoMTVweCwgZW52KHNhZmUtYXJlYS1pbnNldC1sZWZ0LCAxNXB4KSk7XG4gICAgfVxuXG4gICAgLm1vZGFsLWRpYWxvZyAuZm9ybS1tb2RhbC1hY3Rpb25zLFxuICAgIC5tb2RhbC1kaWFsb2ctLWZ1bGxzY3JlZW4tbW9iaWxlIC5mb3JtLW1vZGFsLWFjdGlvbnMge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBnYXA6IHZhcigtLXNwYWNlLW1kKTtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgIH1cblxuICAgIC5tb2RhbC1kaWFsb2cgLm1vZGFsLWZvb3RlciAuYnV0dG9uLFxuICAgIC5tb2RhbC1kaWFsb2ctLWZ1bGxzY3JlZW4tbW9iaWxlIC5mb3JtLW1vZGFsLWFjdGlvbnMgLmJ1dHRvbiB7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDQ0cHg7XG4gICAgfVxuXG4gICAgQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgICAgICAgLm1vZGFsLWRpYWxvZyxcbiAgICAgICAgLm1vZGFsLWRpYWxvZy5tb2RhbC1kaWFsb2ctLWZ1bGxzY3JlZW4tbW9iaWxlIHtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAubmF2X19vdmVybGF5IHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgLm5hdi0tb3BlbiAubmF2X19vdmVybGF5IHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IGF1dG87XG4gICAgfVxuXG4gICAgLm5hdl9fZHJhd2VyIHtcbiAgICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHdpZHRoOiAzMjBweDtcbiAgICAgICAgbWF4LXdpZHRoOiA4NXZ3O1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLWJnLWRhcmspO1xuICAgICAgICB6LWluZGV4OiB2YXIoLS16LWluZGV4LWRyYXdlciwgMTAwMCk7XG4gICAgICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgICAgIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTtcbiAgICAgICAgd2lsbC1jaGFuZ2U6IHRyYW5zZm9ybTtcbiAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuM3MgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC4yLCAxKTtcbiAgICB9XG5cbiAgICAubmF2LS1vcGVuIC5uYXZfX2RyYXdlciB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgICB9XG5cbiAgICAubmF2X19kcmF3ZXItaGVhZGVyIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICB9XG5cbiAgICAubmF2X19saXN0IHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHBhZGRpbmc6IDhweCAwIDMwcHggMDtcbiAgICB9XG5cbiAgICAubmF2X19saW5rLXJvdyB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDUpO1xuICAgIH1cblxuICAgIC5uYXZfX2xpbmssXG4gICAgLm5hdl9fbGluazpsaW5rLFxuICAgIC5uYXZfX2xpbms6dmlzaXRlZCB7XG4gICAgICAgIGZsZXg6IDE7XG4gICAgICAgIHBhZGRpbmc6IDE0cHggMjBweDtcbiAgICB9XG5cbiAgICAubmF2X19saW5rLXJvdzppcyg6aG92ZXIsIDpmb2N1cy13aXRoaW4pLFxuICAgIC5uYXZfX2xpbms6aXMoOmhvdmVyLCA6Zm9jdXMtdmlzaWJsZSkge1xuICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDgpO1xuICAgICAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICB9XG5cbiAgICAubmF2X19zdWItdG9nZ2xlIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIHdpZHRoOiA0OHB4O1xuICAgICAgICBoZWlnaHQ6IDQ4cHg7XG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIGNvbG9yOiAjMzhiZGY4O1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQgMC4ycyBlYXNlLCBjb2xvciAwLjJzIGVhc2U7XG4gICAgfVxuXG4gICAgLm5hdl9fc3ViLXRvZ2dsZTppcyg6aG92ZXIsIDpmb2N1cy12aXNpYmxlKSB7XG4gICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xMik7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1jb2xvci1oaWdobGlnaHQpO1xuICAgIH1cblxuICAgIC5uYXZfX2l0ZW0tLW9wZW4gLm5hdl9fc3ViLXRvZ2dsZSBpIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbiAgICAgICAgY29sb3I6IHZhcigtLWNvbG9yLWhpZ2hsaWdodCk7XG4gICAgfVxuXG4gICAgLm5hdl9fc3ViIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgcGFkZGluZzogNHB4IDA7XG4gICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4yKTtcbiAgICB9XG5cbiAgICAubmF2X19pdGVtLS1vcGVuIC5uYXZfX3N1YiB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cblxuICAgIC5uYXZfX3N1Yi1saW5rLFxuICAgIC5uYXZfX3N1Yi1saW5rOmxpbmssXG4gICAgLm5hdl9fc3ViLWxpbms6dmlzaXRlZCB7XG4gICAgICAgIHBhZGRpbmc6IDExcHggMjBweCAxMXB4IDM2cHg7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1mb250LWNvbG9yLWxpZ2h0KTtcbiAgICB9XG5cbiAgICAubmF2X19zdWItbGluazppcyg6aG92ZXIsIDpmb2N1cy12aXNpYmxlLCA6YWN0aXZlKSB7XG4gICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xMik7XG4gICAgICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgIH1cblxuICAgIC5uYXZfX2xpbmstLWN0YSB7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgIC5maWx0ZXIgLnJhbmtpbmctZmlsdGVyIHtcbiAgICAgICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgICAgIG92ZXJmbG93LXg6IGF1dG87XG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgICAgICAgc2Nyb2xsYmFyLXdpZHRoOiBub25lO1xuICAgIH1cblxuICAgIC5maWx0ZXIgLnJhbmtpbmctZmlsdGVyOjotd2Via2l0LXNjcm9sbGJhciB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgLnRhYi1tZW51IHtcbiAgICAgICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgICAgIG92ZXJmbG93LXg6IGF1dG87XG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgICAgICAgc2Nyb2xsYmFyLXdpZHRoOiBub25lO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgIH1cblxuICAgIC50YWItbWVudTo6LXdlYmtpdC1zY3JvbGxiYXIge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIC8qIGhlcm8gYmFubmVyICovXG4gICAgLmhlcm8tYmFubmVyIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICAgICAgZ2FwOiB2YXIoLS1zcGFjZS1sZyk7XG4gICAgfVxuXG4gICAgLyogR3JpZCBib3gqL1xuICAgIC5ncmlkLWJveC0tc3VibWl0LWhhcmR3YXJlIHtcbiAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBhdXRvO1xuICAgIH1cblxuICAgIC8qIFN1Ym1pc3Npb24gKi9cbiAgICAuc3VibWlzc2lvbi1zY29yZS1jYXJkIHtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgfVxuXG4gICAgLnN1Ym1pc3Npb24tc2NvcmUtY2FyZCAuc2NvcmUtZGV0YWlscyB7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICB9XG5cbiAgICAuc3VibWlzc2lvbi1zY29yZS1jYXJkIC5zY29yZS1kZXRhaWxzLXJvdyB7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICB9XG5cbiAgICAvKiBGbGV4IHJvd3MgKi9cbiAgICAuZmxleC1yb3ctLWFjdGlvbixcbiAgICAuZmxleC1yb3ctLWluZm8ge1xuICAgICAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICAgICAgb3ZlcmZsb3cteDogYXV0bztcbiAgICAgICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICAgICAgICBzY3JvbGxiYXItd2lkdGg6IG5vbmU7XG4gICAgICAgIG1hcmdpbjogMTBweCAwO1xuICAgIH1cblxuICAgLmZsZXgtcm93LS1hY3Rpb246Oi13ZWJraXQtc2Nyb2xsYmFyLFxuICAgLmZsZXgtcm93LS1pbmZvOjotd2Via2l0LXNjcm9sbGJhciB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICB9XG5cbiAgICAuZmxleC1yb3ctLWFjdGlvbiA+ICosXG4gICAgLmZsZXgtcm93LS1pbmZvID4gKiB7XG4gICAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIH1cblxuICAgIC8qIFByb2ZpbGUgYmFubmVyICovXG4gICAgLnByb2ZpbGUtYmFubmVyLXdyYXBwZXIuaGFzLWJhbm5lciAuYXZhdGFyIHtcbiAgICAgICAgd2lkdGg6IDYwcHg7XG4gICAgICAgIGhlaWdodDogNjBweDtcbiAgICB9XG5cbiAgICAucHJvZmlsZS1iYW5uZXItd3JhcHBlci5oYXMtYmFubmVyIC5hdmF0YXItd3JhcHBlciB7XG4gICAgICAgIGJvdHRvbTogMTBweDtcbiAgICAgICAgbGVmdDogMTJweDtcbiAgICB9XG5cbiAgICAvKiBSZXBvcnRpbmcgKi9cbiAgICAucmVwb3J0aW5nLW92ZXJ2aWV3IC5jb250ZW50IC5zdGlja3ktdGFibGUgdGFibGUsXG4gICAgLnJlcG9ydGluZy1vdmVydmlldyAuY29udGVudCAuc3RpY2t5LXRhYmxlIHRib2R5LFxuICAgIC5yZXBvcnRpbmctb3ZlcnZpZXcgLmNvbnRlbnQgLnN0aWNreS10YWJsZSB0ZCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICB9XG5cbiAgICAucmVwb3J0aW5nLW92ZXJ2aWV3IC5jb250ZW50IC5zdGlja3ktdGFibGUgdGhlYWQge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIC5yZXBvcnRpbmctb3ZlcnZpZXcgLmNvbnRlbnQgLnN0aWNreS10YWJsZSB0Ym9keSB0ciB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjYzBjMGMwO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA2cHg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEycHg7XG4gICAgICAgIHBhZGRpbmc6IDEycHg7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMnB4IDRweCByZ2JhKDAsIDAsIDAsIDAuMDUpO1xuICAgIH1cblxuICAgIC5yZXBvcnRpbmctb3ZlcnZpZXcgLmNvbnRlbnQgLnN0aWNreS10YWJsZSB0Ym9keSB0cjpudGgtY2hpbGQob2RkKSB0ZCxcbiAgICAucmVwb3J0aW5nLW92ZXJ2aWV3IC5jb250ZW50IC5zdGlja3ktdGFibGUgdGJvZHkgdHI6bnRoLWNoaWxkKGV2ZW4pIHRkIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgfVxuXG4gICAgLnJlcG9ydGluZy1vdmVydmlldyAuY29udGVudCAuc3RpY2t5LXRhYmxlIHRib2R5IHRyIHRkIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBwYWRkaW5nOiA4cHggMDtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IGRhc2hlZCAjZTVlNWU1O1xuICAgICAgICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICAgIH1cblxuICAgIC5yZXBvcnRpbmctb3ZlcnZpZXcgLmNvbnRlbnQgLnN0aWNreS10YWJsZSB0Ym9keSB0ciB0ZDpsYXN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICB9XG5cbiAgICAucmVwb3J0aW5nLW92ZXJ2aWV3IC5jb250ZW50IC5zdGlja3ktdGFibGUgdGJvZHkgdHIgdGRbZGF0YS1sYWJlbF06OmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6IGF0dHIoZGF0YS1sYWJlbCk7XG4gICAgICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWhlYWRpbmcpO1xuICAgICAgICBjb2xvcjogdmFyKC0tZm9udC1jb2xvci1kYXJrKTtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMTJweDtcbiAgICB9XG5cbiAgICAucmVwb3J0aW5nLW92ZXJ2aWV3IC5jb250ZW50IC5zdGlja3ktdGFibGUgdGJvZHkgdHIgdGQuY29sLXVzZXIge1xuICAgICAgICBvcmRlcjogMjtcbiAgICB9XG5cbiAgICAucmVwb3J0aW5nLW92ZXJ2aWV3IC5jb250ZW50IC5zdGlja3ktdGFibGUgdGJvZHkgdHIgdGQuY29sLXNjb3JlIHtcbiAgICAgICAgb3JkZXI6IDM7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1ib2xkKTtcbiAgICAgICAgY29sb3I6IHZhcigtLWZvbnQtY29sb3ItZGFyayk7XG4gICAgfVxuXG4gICAgLnJlcG9ydGluZy1vdmVydmlldyAuY29udGVudCAuc3RpY2t5LXRhYmxlIHRib2R5IHRyIHRkLmNvbC1oYXJkd2FyZSB7XG4gICAgICAgIG9yZGVyOiA0O1xuICAgICAgICBib3JkZXItdG9wOiBub25lO1xuICAgICAgICBwYWRkaW5nLXRvcDogMnB4O1xuICAgICAgICBjb2xvcjogIzU1NmI3MztcbiAgICB9XG5cbiAgICAucmVzdWx0LXN0YXR1cy1jb21tZW50IC5jb250ZW50IC5ldmVudC1jb250YWluZXIsXG4gICAgLnJlcG9ydGluZy1vdmVydmlldyAuY29udGVudCAuc3RpY2t5LXRhYmxlIC5ldmVudC1jb250YWluZXIge1xuICAgICAgICBtYXgtaGVpZ2h0OiAyMDBweDtcbiAgICAgICAgbWFyZ2luLXRvcDogOHB4O1xuICAgICAgICBwYWRkaW5nOiA4cHggMTBweDtcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDNweCBzb2xpZCB2YXIoLS1mb250LWNvbG9yLWRhcmspO1xuICAgIH1cblxuICAgIC5yZXBvcnRpbmctb3ZlcnZpZXcgLmNvbnRlbnQgLnN0aWNreS10YWJsZSAuZXZlbnQtY29udGFpbmVyIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgLnJlc3VsdC1zdGF0dXMtY29tbWVudCAuY29udGVudCAuZXZlbnQtaXRlbSxcbiAgICAucmVwb3J0aW5nLW92ZXJ2aWV3IC5jb250ZW50IC5zdGlja3ktdGFibGUgLmV2ZW50LWl0ZW0ge1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICAgICAgZ2FwOiAycHg7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA2cHg7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1jb2xvci1iZy1ob3Zlci1kYXJrKTtcbiAgICB9XG5cbiAgICAucmVwb3J0aW5nLW92ZXJ2aWV3IC5jb250ZW50IC5zdGlja3ktdGFibGUgLmV2ZW50LWl0ZW06bGFzdC1jaGlsZCB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgIH1cblxuICAgIC5yZXBvcnRpbmctb3ZlcnZpZXcgLmNvbnRlbnQgLnN0aWNreS10YWJsZSAuZXZlbnQtbWV0YSxcbiAgICAucmVwb3J0aW5nLW92ZXJ2aWV3IC5jb250ZW50IC5zdGlja3ktdGFibGUgLmV2ZW50LXVzZXIge1xuICAgICAgICBtaW4td2lkdGg6IHVuc2V0O1xuICAgIH1cblxuICAgIC5yZXBvcnRpbmctb3ZlcnZpZXcgLmNvbnRlbnQgLnNlYXJjaC1pbnB1dC13cmFwcGVyIHtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgIC5yZXBvcnRpbmctb3ZlcnZpZXcgLmNvbnRlbnQgLnN0aWNreS10YWJsZSAuc3RhdHVzLWJhZGdlIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgLyogR2xvYmFsIHNlYXJjaCAqL1xuICAgIC5nbG9iYWwtc2VhcmNoLFxuICAgIC5nbG9iYWwtc2VhcmNoLXdyYXBwZXIge1xuICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICB9XG5cbiAgICAuZ2xvYmFsLXNlYXJjaCBidXR0b25bdHlwZT1cInN1Ym1pdFwiXSxcbiAgICAuZ2xvYmFsLXNlYXJjaC1idXR0b24ge1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICBwYWRkaW5nOiA2cHggMTBweDtcbiAgICAgICAgY29sb3I6IGdhaW5zYm9ybztcbiAgICAgICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtbGcpO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIH1cblxuICAgIC5nbG9iYWwtc2VhcmNoIGJ1dHRvblt0eXBlPVwic3VibWl0XCJdIGksXG4gICAgLmdsb2JhbC1zZWFyY2gtYnV0dG9uIGkge1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgICB9XG5cbiAgICAuZ2xvYmFsLXNlYXJjaCBidXR0b25bdHlwZT1cInN1Ym1pdFwiXTpob3ZlcixcbiAgICAuZ2xvYmFsLXNlYXJjaC1idXR0b246aG92ZXIge1xuICAgICAgICBjb2xvcjogdmFyKC0tY29sb3ItYmctaG92ZXItZGFyayk7XG4gICAgfVxuXG4gICAgLmdsb2JhbC1zZWFyY2gtYXV0b2NvbXBsZXRlLXdyYXBwZXIge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICAgIGluc2V0OiAwO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgd2lkdGg6IDEwMHZ3O1xuICAgICAgICBoZWlnaHQ6IDEwMHZoO1xuICAgICAgICBtYXgtd2lkdGg6IDEwMHZ3O1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICAgIHotaW5kZXg6IHZhcigtLXotaW5kZXgtbW9kYWwsIDEwNTApO1xuICAgICAgICBiYWNrZ3JvdW5kOiAjMDMwNjE3O1xuICAgICAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgICAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gICAgfVxuXG4gICAgLmdsb2JhbC1zZWFyY2gtYXV0b2NvbXBsZXRlIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgbWluLWhlaWdodDogMTAwdmg7XG4gICAgICAgIGJhY2tncm91bmQ6ICMwMzA2MTc7XG4gICAgfVxuXG4gICAgLmdsb2JhbC1zZWFyY2gtYXV0b2NvbXBsZXRlLWhlYWRlciB7XG4gICAgICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgei1pbmRleDogdmFyKC0tei1pbmRleC1zdGlja3ktaGVhZGVyLCAxMCk7XG4gICAgICAgIHBhZGRpbmc6IDEwcHggMTJweDtcbiAgICAgICAgYmFja2dyb3VuZDogIzAzMDYxNztcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKTtcbiAgICB9XG5cbiAgICAuZ2xvYmFsLXNlYXJjaC1tb2JpbGUtYWN0aW9uIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgZ2FwOiAxMHB4O1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICAuZ2xvYmFsLXNlYXJjaC1tb2JpbGUtYWN0aW9uIC5idXR0b24ge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgbWluLXdpZHRoOiA0NHB4O1xuICAgICAgICBtaW4taGVpZ2h0OiA0NHB4O1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgICBjb2xvcjogIzk0YTNiODtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIH1cblxuICAgIC5nbG9iYWwtc2VhcmNoLW1vYmlsZS1hY3Rpb24gLmJ1dHRvbjphY3RpdmUge1xuICAgICAgICBjb2xvcjogIzM4YmRmODtcbiAgICB9XG5cbiAgICAuZ2xvYmFsLXNlYXJjaC1tb2JpbGUtYWN0aW9uIC5nbG9iYWwtc2VhcmNoLXNwaW5uZXIge1xuICAgICAgICBjb2xvcjogIzM4YmRmODtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiA0cHg7XG4gICAgfVxuXG4gICAgLmdsb2JhbC1zZWFyY2gtbW9iaWxlLWFjdGlvbiBpbnB1dC5pbnB1dCB7XG4gICAgICAgIGZsZXg6IDE7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDQ0cHg7XG4gICAgICAgIHBhZGRpbmc6IDAgMTRweDtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgIzFlMjkzYjtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogOHB4O1xuICAgICAgICBiYWNrZ3JvdW5kOiAjMGIxMzI5O1xuICAgICAgICBjb2xvcjogI2Y4ZmFmYztcbiAgICAgICAgZm9udC1zaXplOiBpbmhlcml0O1xuICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgIH1cblxuICAgIC5nbG9iYWwtc2VhcmNoLW1vYmlsZS1hY3Rpb24gaW5wdXQuaW5wdXQ6Zm9jdXMge1xuICAgICAgICBib3JkZXItY29sb3I6ICMzOGJkZjg7XG4gICAgfVxuXG4gICAgLmdsb2JhbC1zZWFyY2gtY29udGVudCB7XG4gICAgICAgIGZsZXg6IDE7XG4gICAgICAgIHBhZGRpbmc6IDEycHggMTJweCAzMnB4O1xuICAgIH1cblxuICAgIC5mb3JtLWZpbHRlciB7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgb3ZlcmZsb3cteDogdmlzaWJsZTtcbiAgICAgICAgb3ZlcmZsb3cteTogdmlzaWJsZTtcbiAgICAgICAgZ2FwOiB2YXIoLS1zcGFjZS14cyk7XG4gICAgfVxuXG4gICAgLmZvcm0tZmlsdGVyID4gKiB7XG4gICAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgICAgICBzY3JvbGwtc25hcC1hbGlnbjogbm9uZTtcbiAgICB9XG5cbiAgICAubW9kYWwtYm9keSAuZm9ybS1maWx0ZXIge1xuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgIG92ZXJmbG93LXg6IHZpc2libGU7XG4gICAgfVxuXG4gICAgLm1vZGFsLWJvZHkgLmZvcm0tZmlsdGVyID4gKiB7XG4gICAgICAgIHNjcm9sbC1zbmFwLWFsaWduOiBub25lO1xuICAgIH1cblxuICAgIC5tb2RhbC1ib2R5ICNyYW5raW5nX2ZpbHRlciB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgICAgIGdhcDogdmFyKC0tc3BhY2UtbWQpIHZhcigtLXNwYWNlLWxnKTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG5cbiAgICAuZmlsdGVyLWNoaXBzLWJhciB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgb3ZlcmZsb3cteDogdmlzaWJsZTtcbiAgICAgICAgb3ZlcmZsb3cteTogdmlzaWJsZTtcbiAgICAgICAgZ2FwOiB2YXIoLS1zcGFjZS14cyk7XG4gICAgfVxuXG4gICAgLmZpbHRlci1jaGlwcy1iYXIgPiAqIHtcbiAgICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgfVxuXG4gICAgLmZpbHRlci1jaGlwcy1saXN0IHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICBnYXA6IHZhcigtLXNwYWNlLXhzKTtcbiAgICB9XG5cbiAgICAuZmlsdGVyLWNoaXBzLWxpc3QgPiAqIHtcbiAgICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgfVxufVxuXG4vKiBWb3RlIFdpZGdldCAmIFBvcG92ZXIgKi9cbi52b3RlLWNlbGwge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG4udm90ZS1jZWxsIC52b3RlLXBpbGwge1xuICAgIGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zaXplLXNtKTtcbn1cblxuLnZvdGUtd2lkZ2V0IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cblxuLnZvdGUtcGlsbCB7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1iZy1saWdodCk7XG4gICAgYm9yZGVyOiB2YXIoLS1ib3JkZXItd2lkdGgtc20pIHNvbGlkIHZhcigtLWJvcmRlci1jb2xvci1kYXJrKTtcbiAgICBib3JkZXItcmFkaXVzOiAxNnB4O1xuICAgIHBhZGRpbmc6IDJweCA0cHg7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUteHMpO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIGJveC1zaGFkb3c6IDAgMXB4IDJweCByZ2JhKDAsIDAsIDAsIDAuMDUpO1xuICAgIHRyYW5zaXRpb246IGJvcmRlci1jb2xvciAwLjE1cyBlYXNlO1xufVxuXG4udm90ZS1waWxsOmhvdmVyIHtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLWhpZ2hsaWdodCk7XG59XG5cbi52b3RlLXBpbGxfX2J0biB7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgcGFkZGluZzogM3B4IDZweDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBnYXA6IDRweDtcbiAgICBjb2xvcjogdmFyKC0tZm9udC1jb2xvci1kYXJrKTtcbiAgICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgICBmb250LXNpemU6IGluaGVyaXQ7XG4gICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIHRyYW5zaXRpb246IGNvbG9yIDAuMTVzIGVhc2U7XG59XG5cbi52b3RlLXBpbGxfX2J0bjpob3ZlciB7XG4gICAgY29sb3I6IHZhcigtLWNvbG9yLWhpZ2hsaWdodCk7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4udm90ZS1waWxsX19hY3Rpb24uaGFzLXZvdGVkIHtcbiAgICBjb2xvcjogdmFyKC0tY29sb3ItaGlnaGxpZ2h0KTtcbn1cblxuLnZvdGUtcGlsbF9fYWN0aW9uLS1kaXNhYmxlZCB7XG4gICAgb3BhY2l0eTogMC42O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLnZvdGUtcGlsbF9fZGl2aWRlciB7XG4gICAgd2lkdGg6IDFweDtcbiAgICBoZWlnaHQ6IDE0cHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYm9yZGVyLWNvbG9yLWxpZ2h0KTtcbiAgICBtYXJnaW46IDAgMXB4O1xufVxuXG4udm90ZS1waWxsX19jb3VudCB7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LWJvbGQpO1xufVxuXG4udm90ZS1waWxsX19jYXJldCB7XG4gICAgZm9udC1zaXplOiB2YXIoLS1mb250LXNpemUtM3hzKTtcbiAgICBvcGFjaXR5OiAwLjc7XG59XG5cbi8qIERyb3Bkb3duIFBvcG92ZXIgKi9cbi52b3RlLWRyb3Bkb3duLW1lbnUge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICBtaW4td2lkdGg6IDE4MHB4O1xuICAgIG1heC13aWR0aDogMjQwcHg7XG4gICAgbWF4LWhlaWdodDogMjIwcHg7XG4gICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICBmb250LXNpemU6IHZhcigtLWZvbnQtc2l6ZS14cyk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYmctbGlnaHQpO1xuICAgIGJvcmRlcjogdmFyKC0tYm9yZGVyLXdpZHRoLXNtKSBzb2xpZCB2YXIoLS1ib3JkZXItY29sb3ItZGFyayk7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7XG4gICAgYm94LXNoYWRvdzogMCA2cHggMTZweCByZ2JhKDAsIDAsIDAsIDAuMTUpO1xuICAgIHotaW5kZXg6IHZhcigtLXotaW5kZXgtZHJvcGRvd24sIDUwMCk7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxuLnZvdGUtcG9wb3Zlci1oZWFkZXIge1xuICAgIHBhZGRpbmc6IDhweCAxMnB4O1xuICAgIGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1ib2xkKTtcbiAgICBib3JkZXItYm90dG9tOiB2YXIoLS1ib3JkZXItd2lkdGgtc20pIHNvbGlkIHZhcigtLWJvcmRlci1jb2xvci1saWdodCk7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGdhcDogNnB4O1xufVxuXG4udm90ZS1wb3BvdmVyLWxpc3Qge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDRweCAwO1xufVxuXG4udm90ZS1wb3BvdmVyLWl0ZW0ge1xuICAgIHBhZGRpbmc6IDA7XG59XG5cbi52b3RlLXVzZXItbGluayB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGdhcDogOHB4O1xuICAgIHBhZGRpbmc6IDZweCAxMnB4O1xuICAgIGNvbG9yOiB2YXIoLS1mb250LWNvbG9yLWRhcmspO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMTVzIGVhc2UsIGNvbG9yIDAuMTVzIGVhc2U7XG59XG5cbi52b3RlLXVzZXItbGluazpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYmctaG92ZXItbGlnaHQpO1xuICAgIGNvbG9yOiB2YXIoLS1jb2xvci1oaWdobGlnaHQpO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLnZvdGUtdXNlci1hdmF0YXIge1xuICAgIHdpZHRoOiAyMHB4O1xuICAgIGhlaWdodDogMjBweDtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgZmxleC1zaHJpbms6IDA7XG59XG5cbi52b3RlLXBvcG92ZXItZW1wdHksXG4udm90ZS1sb2FkaW5nLFxuLnZvdGUtcG9wb3Zlci1lcnJvciB7XG4gICAgcGFkZGluZzogMTJweDtcbiAgICBjb2xvcjogIzg4ODtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4iXSwKICAibWFwcGluZ3MiOiAiO0FBQUE7QUFFSSw2QkFBMkI7QUFDM0IsMkJBQXlCO0FBR3pCLG1CQUFpQjtBQUNqQixtQkFBaUI7QUFDakIsb0JBQWtCO0FBQ2xCLG9CQUFrQjtBQUNsQix5QkFBdUI7QUFDdkIsMEJBQXdCO0FBRXhCLHFCQUFtQjtBQUduQixnQkFBYztBQUNkLHNCQUFvQjtBQUNwQiwwQkFBd0IsS0FBSyxFQUFFLEVBQUUsRUFBRSxFQUFFLEdBQUcsRUFBRTtBQUcxQyxxQkFBbUI7QUFDbkIsc0JBQW9CO0FBQ3BCLHFCQUFtQjtBQUNuQix5QkFBdUI7QUFFdkIsaUJBQWU7QUFDZixvQkFB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 */
