body {
  background-color: #121213;
  color: white;
  font-family: "Helvetica Neue", Arial, sans-serif;
}

.navbar {
  margin-bottom: 20px;
  border-bottom: 1px solid #3a3a3c;
}

.navbar-brand {
  font-weight: 700;
  font-size: 1.5rem;
  letter-spacing: 0.2rem;
}

.header {
  border-bottom: 1px solid #3a3a3c;
  padding: 10px 0;
}

.wordle-title {
  font-weight: 700;
  font-size: 2rem;
  letter-spacing: 0.2rem;
}

.game-board {
  max-width: 350px;
  margin: 20px auto;
}

.letter-row {
  display: flex;
  justify-content: center;
  margin-bottom: 10px;
}

.letter-box {
  border: 2px solid #3a3a3c;
  width: 60px;
  height: 60px;
  margin: 0 3px;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 2rem;
  font-weight: bold;
  text-transform: uppercase;
}

.filled-box {
  border: 2px solid #565758;
}

.correct {
  background-color: #538d4e;
  border-color: #538d4e;
}

.present {
  background-color: #b59f3b;
  border-color: #b59f3b;
}

.absent {
  background-color: #3a3a3c;
  border-color: #3a3a3c;
}

.keyboard {
  max-width: 600px;
  margin: 30px auto;
}

.keyboard-row {
  display: flex;
  justify-content: center;
  margin-bottom: 8px;
}

.key-button {
  background-color: #818384;
  color: white;
  font-weight: bold;
  border: none;
  border-radius: 4px;
  margin: 0 4px;
  height: 65px;
  min-width: 43px;
  font-size: 1.1rem;
  cursor: pointer;
  text-transform: uppercase;
}

.key-button-wide {
  min-width: 75px;
}

/* Add these styles for a cleaner game message */
#game-message {
  height: 30px;
  margin-bottom: 15px;
  font-size: 16px;
  font-weight: 500;
}

.message-text {
  display: inline-block;
  padding: 5px 10px;
  border-radius: 4px;
  animation: fadeOut 2s ease-in-out forwards;
  animation-delay: 3s;
}

.message-error {
  color: #f5c6cb;
}

.message-warning {
  color: #ffeeba;
}

.message-success {
  color: #c3e6cb;
}

.message-info {
  color: #bee5eb;
}

@keyframes fadeOut {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}
/* Home Page Styles */
.games-section {
  margin: 40px 0;
}

.game-icon-container {
  margin: 30px 0;
}

.game-icon-link {
  text-decoration: none;
  color: inherit;
  display: inline-block;
  transition: transform 0.3s ease;
}

.game-icon-link:hover {
  transform: scale(1.05);
  color: inherit;
}

.game-icon {
  background: linear-gradient(135deg, #538d4e, #b59f3b);
  border-radius: 20px;
  padding: 20px;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.3);
  transition: all 0.3s ease;
}

.game-icon:hover {
  box-shadow: 0 15px 40px rgba(0, 0, 0, 0.4);
}

.icon-grid {
  margin-bottom: 15px;
}

.icon-row {
  display: flex;
  justify-content: center;
  margin-bottom: 2px;
}

.icon-letter-box {
  width: 25px;
  height: 25px;
  border: 2px solid rgba(255, 255, 255, 0.8);
  margin: 0 1px;
  border-radius: 3px;
  background-color: rgba(255, 255, 255, 0.1);
}

.icon-text {
  font-size: 1.3rem;
  font-weight: bold;
  color: white;
  text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.5);
}

/* Coming Soon Games Styles */
.coming-soon-container {
  display: flex;
  justify-content: center;
  gap: 30px;
  flex-wrap: wrap;
}

.coming-soon-game {
  text-align: center;
  opacity: 0.25;
  transition: opacity 0.3s ease;
}

.coming-soon-game:hover {
  opacity: 0.4;
}

.coming-soon-icon {
  font-size: 3rem;
  margin-bottom: 10px;
  filter: grayscale(100%);
}

.coming-soon-text {
  font-size: 0.85rem;
  font-weight: 300;
  color: #ced4da;
}

/* Mobile App-like Styles */
@media (max-width: 768px) {
  body {
    -webkit-overflow-scrolling: touch;
    overscroll-behavior: none;
  }
  .container {
    padding-left: 15px;
    padding-right: 15px;
  }
  .navbar {
    padding: 0.5rem 1rem;
  }
  .navbar-brand {
    font-size: 1.3rem;
  }
  .game-icon {
    padding: 15px;
  }
  .icon-letter-box {
    width: 22px;
    height: 22px;
  }
  .icon-text {
    font-size: 1.1rem;
  }
  .coming-soon-container {
    gap: 20px;
  }
  .coming-soon-icon {
    font-size: 2.5rem;
  }
}
@media (max-width: 480px) {
  .game-icon {
    padding: 12px;
  }
  .icon-letter-box {
    width: 20px;
    height: 20px;
  }
  .icon-text {
    font-size: 1rem;
  }
  .coming-soon-container {
    gap: 15px;
  }
  .coming-soon-icon {
    font-size: 2rem;
  }
  .coming-soon-text {
    font-size: 0.9rem;
  }
}
/* PWA-specific styles for native app feel */
@media (display-mode: standalone) {
  body {
    padding-top: env(safe-area-inset-top);
    padding-bottom: env(safe-area-inset-bottom);
  }
  .navbar {
    padding-top: calc(0.5rem + env(safe-area-inset-top));
  }
}
/* Daily Challenges Section */
.daily-challenges-section {
  margin-bottom: 3rem;
}

.daily-challenges-scroll {
  overflow-x: auto;
  overflow-y: hidden;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none; /* Firefox */
  -ms-overflow-style: none; /* IE and Edge */
}

.daily-challenges-scroll::-webkit-scrollbar {
  display: none; /* Chrome, Safari, Opera */
}

.daily-challenges-container {
  display: flex;
  gap: 1.5rem;
  padding: 0.5rem 0;
  min-width: -moz-max-content;
  min-width: max-content;
}

.daily-challenge-card {
  background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
  border-radius: 16px;
  padding: 1.5rem;
  min-width: 280px;
  max-width: 320px;
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.1);
  border: 1px solid rgba(255, 255, 255, 0.2);
  -webkit-backdrop-filter: blur(10px);
          backdrop-filter: blur(10px);
  transition: all 0.3s ease;
  position: relative;
  overflow: hidden;
}

.daily-challenge-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 12px 40px rgba(0, 0, 0, 0.15);
}

.daily-challenge-card.coming-soon {
  background: linear-gradient(135deg, #6c757d 0%, #495057 100%);
  opacity: 0.8;
}

.challenge-icon {
  text-align: center;
  margin-bottom: 1rem;
}

.icon-grid {
  display: inline-grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2px;
  margin-bottom: 0.5rem;
}

.icon-row {
  display: flex;
  gap: 2px;
}

.icon-letter-box {
  width: 12px;
  height: 12px;
  background-color: rgba(255, 255, 255, 0.3);
  border-radius: 2px;
}

.spelling-bee-icon,
.sudoku-icon {
  font-size: 2rem;
  margin-bottom: 0.5rem;
}

.challenge-info h5 {
  color: white;
  font-weight: 700;
  margin-bottom: 0.5rem;
  text-align: center;
}

.challenge-date {
  color: rgba(255, 255, 255, 0.8);
  font-size: 0.9rem;
  margin-bottom: 0.5rem;
  text-align: center;
}

.challenge-status {
  text-align: center;
  margin-bottom: 0.5rem;
}

.completion-count {
  color: rgba(255, 255, 255, 0.7);
  font-size: 0.8rem;
  text-align: center;
  margin-bottom: 1rem;
}

.challenge-actions {
  display: flex;
  gap: 0.5rem;
  justify-content: center;
}

/* Free Play Section */
.free-play-section {
  margin-bottom: 3rem;
}

.free-play-cards {
  display: flex;
  justify-content: center;
  gap: 2rem;
  flex-wrap: wrap;
}

.free-play-card {
  background: linear-gradient(135deg, #28a745 0%, #20c997 100%);
  border-radius: 16px;
  padding: 2rem;
  min-width: 280px;
  max-width: 320px;
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.1);
  border: 1px solid rgba(255, 255, 255, 0.2);
  -webkit-backdrop-filter: blur(10px);
          backdrop-filter: blur(10px);
  transition: all 0.3s ease;
  text-align: center;
  color: white;
}

.free-play-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 12px 40px rgba(0, 0, 0, 0.15);
}

.free-play-card .game-icon {
  margin-bottom: 1.5rem;
}

.free-play-card .card-body {
  padding: 0;
}

.free-play-card h5 {
  color: white;
  font-weight: 700;
  margin-bottom: 0.5rem;
}

.free-play-card .text-muted {
  color: rgba(255, 255, 255, 0.8) !important;
  margin-bottom: 1.5rem;
}

/* Games Section */
.games-section {
  margin-bottom: 3rem;
}

.game-icon-container {
  display: flex;
  justify-content: center;
  margin-bottom: 2rem;
}

.game-icon-link {
  text-decoration: none;
  color: inherit;
}

.game-icon {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 2rem;
  background: linear-gradient(135deg, #007bff 0%, #0056b3 100%);
  border-radius: 16px;
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.1);
  transition: all 0.3s ease;
  color: white;
  min-width: 200px;
}

.game-icon:hover {
  transform: translateY(-4px);
  box-shadow: 0 12px 40px rgba(0, 0, 0, 0.15);
  text-decoration: none;
  color: white;
}

.icon-text {
  font-weight: 700;
  font-size: 1.2rem;
  margin-top: 1rem;
  letter-spacing: 0.1rem;
}

.coming-soon-games {
  text-align: center;
}

.coming-soon-container {
  display: flex;
  justify-content: center;
  gap: 2rem;
  flex-wrap: wrap;
}

.coming-soon-game {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 1.5rem;
  background: rgba(108, 117, 125, 0.1);
  border-radius: 12px;
  border: 2px dashed rgba(108, 117, 125, 0.3);
  min-width: 120px;
}

.coming-soon-icon {
  font-size: 2rem;
  margin-bottom: 0.5rem;
}

.coming-soon-text {
  font-weight: 600;
  color: #6c757d;
  font-size: 0.9rem;
}

/* Responsive Design */
@media (max-width: 768px) {
  .daily-challenges-container {
    gap: 1rem;
    padding: 0.25rem 0;
  }
  .daily-challenge-card {
    min-width: 250px;
    padding: 1.25rem;
  }
  .free-play-cards {
    gap: 1rem;
  }
  .free-play-card {
    min-width: 250px;
    padding: 1.5rem;
  }
  .game-icon {
    min-width: 150px;
    padding: 1.5rem;
  }
  .coming-soon-container {
    gap: 1rem;
  }
  .coming-soon-game {
    min-width: 100px;
    padding: 1rem;
  }
}
@media (max-width: 480px) {
  .daily-challenge-card {
    min-width: 220px;
    padding: 1rem;
  }
  .free-play-card {
    min-width: 220px;
    padding: 1.25rem;
  }
  .game-icon {
    min-width: 120px;
    padding: 1.25rem;
  }
  .icon-text {
    font-size: 1rem;
  }
}
/* Animation for cards */
@keyframes fadeInUp {
  from {
    opacity: 0;
    transform: translateY(30px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.daily-challenge-card,
.free-play-card,
.game-icon {
  animation: fadeInUp 0.6s ease-out;
}

.daily-challenge-card:nth-child(2) {
  animation-delay: 0.1s;
}

.daily-challenge-card:nth-child(3) {
  animation-delay: 0.2s;
}

/* Hover effects for better interactivity */
.daily-challenge-card:active,
.free-play-card:active,
.game-icon:active {
  transform: translateY(-2px);
  transition: transform 0.1s ease;
}

body {
  background: #18191a;
  color: #f1f3f4;
}

.dark-card {
  background: #23272b;
  border-radius: 18px;
  box-shadow: 0 2px 16px rgba(0, 0, 0, 0.25);
  border: 1px solid #23272b;
  color: #f1f3f4;
}

.game-card {
  transition: box-shadow 0.2s, transform 0.2s;
}

.game-card:hover {
  box-shadow: 0 4px 24px rgba(0, 0, 0, 0.35);
  transform: translateY(-2px) scale(1.01);
}

.main-card {
  min-height: 260px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

.archive-stack {
  display: flex;
  flex-direction: column;
}

.archive-card {
  min-height: 70px;
  background: #23272b;
  border-left: 4px solid #444c56;
  border-radius: 12px;
  color: #f1f3f4;
}

.archive-card .btn {
  border-radius: 50%;
  padding: 0.4em 0.6em;
}

.coming-soon-card {
  min-width: 220px;
  min-height: 120px;
  background: #23272b;
  border: 1.5px dashed #444c56;
  color: #bdbdbd;
  opacity: 0.85;
}

.wordle-icon-grid {
  display: inline-block;
  background: #18191a;
  border-radius: 6px;
  padding: 2px 4px;
  box-shadow: 0 1px 4px rgba(0, 0, 0, 0.18);
}

.icon-row {
  display: flex;
  gap: 2px;
}

.icon-letter-box {
  width: 16px;
  height: 16px;
  background: #3a3a3c;
  border-radius: 2px;
  margin: 1px;
  border: 1.5px solid #23272b;
}

/* Responsive layout for archive stack */
@media (max-width: 991px) {
  .archive-stack {
    flex-direction: row;
    gap: 1rem;
    overflow-x: auto;
  }
  .archive-card {
    min-width: 180px;
    margin-bottom: 0 !important;
    margin-right: 1rem;
  }
}
@media (max-width: 767px) {
  .main-card, .archive-card, .coming-soon-card {
    min-width: 100%;
    margin-bottom: 1rem;
  }
  .archive-stack {
    flex-direction: column;
    gap: 0.5rem;
  }
}
.game-title {
  font-family: "Montserrat", "Arial Black", Arial, sans-serif;
  font-weight: 700;
  letter-spacing: 0.02em;
  color: #fff;
}

.game-desc, .game-date, .author {
  color: #bdbdbd;
}

.badge.bg-primary {
  background: #538d4e !important;
  color: #fff !important;
}

.badge.bg-success {
  background: #198754 !important;
  color: #fff !important;
}

/* Icon styles for coming soon */
.spelling-bee-icon, .connections-icon, .sudoku-icon {
  font-size: 2rem;
  line-height: 1;
}

/* Archive icon (Bootstrap icon fallback) */
.bi-archive::before {
  content: "\f187";
  font-family: "bootstrap-icons";
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.main-wordle-card {
  min-height: 340px;
  box-shadow: 0 6px 32px rgba(0, 0, 0, 0.35);
  border: none;
  background: linear-gradient(135deg, #23272b 80%, #2d333b 100%);
  position: relative;
  transition: box-shadow 0.2s, transform 0.2s;
}

.main-wordle-card:hover {
  box-shadow: 0 10px 40px rgba(0, 0, 0, 0.45);
  transform: translateY(-2px) scale(1.01);
}

.wordle-icon-grid-lg {
  display: inline-block;
  background: #18191a;
  border-radius: 8px;
  padding: 6px 10px;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.18);
}

.icon-letter-box-lg {
  width: 32px;
  height: 32px;
  background: #3a3a3c;
  border-radius: 3px;
  margin: 2px;
  border: 2px solid #23272b;
  display: inline-block;
}

.main-title {
  font-family: "Montserrat", "Arial Black", Arial, sans-serif;
  font-weight: 800;
  font-size: 2.2rem;
  letter-spacing: 0.03em;
  color: #fff;
}

.main-date {
  color: #bdbdbd;
  font-size: 1.1rem;
  font-weight: 600;
}

.archive-scroll-container {
  overflow-x: auto;
  margin-bottom: 0.5rem;
}

.archive-scroll {
  min-width: 100%;
  padding-bottom: 2px;
}

.archive-card-sm {
  min-width: 110px;
  max-width: 120px;
  min-height: 150px;
  background: #23272b;
  border-radius: 14px;
  box-shadow: 0 1px 8px rgba(0, 0, 0, 0.18);
  border: 1.5px solid #353a40;
  align-items: center;
  justify-content: center;
  text-align: center;
  position: relative;
  transition: box-shadow 0.18s, transform 0.18s;
}

.archive-card-sm:hover {
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.25);
  transform: translateY(-2px) scale(1.03);
}

.wordle-icon-grid-sm {
  display: inline-block;
  background: #18191a;
  border-radius: 5px;
  padding: 2px 4px;
  box-shadow: 0 1px 4px rgba(0, 0, 0, 0.12);
}

.icon-letter-box-sm {
  width: 14px;
  height: 14px;
  background: #3a3a3c;
  border-radius: 2px;
  margin: 1px;
  border: 1.2px solid #23272b;
  display: inline-block;
}

.archive-date-sm {
  color: #bdbdbd;
  font-size: 0.95rem;
}

.archive-badge {
  font-size: 0.8rem;
  padding: 0.2em 0.5em;
  border-radius: 8px;
}

.freeplay-scroll-container {
  overflow-x: auto;
  margin-bottom: 0.5rem;
}

.freeplay-scroll {
  min-width: 100%;
  padding-bottom: 2px;
}

.freeplay-card-sm {
  min-width: 110px;
  max-width: 120px;
  min-height: 120px;
  background: #23272b;
  border-radius: 14px;
  box-shadow: 0 1px 8px rgba(0, 0, 0, 0.18);
  border: 1.5px solid #353a40;
  align-items: center;
  justify-content: center;
  text-align: center;
  transition: box-shadow 0.18s, transform 0.18s;
}

.freeplay-card-sm:hover {
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.25);
  transform: translateY(-2px) scale(1.03);
}

.freeplay-label {
  color: #bdbdbd;
  font-size: 1rem;
}

.coming-soon-card {
  min-width: 220px;
  min-height: 120px;
  background: #23272b;
  border: 1.5px dashed #444c56;
  color: #bdbdbd;
  opacity: 0.85;
}

/* Responsive layout for scrolls and cards */
@media (max-width: 991px) {
  .archive-scroll, .freeplay-scroll {
    gap: 0.7rem !important;
  }
  .main-wordle-card {
    min-height: 260px;
  }
}
@media (max-width: 767px) {
  .main-wordle-card, .archive-card-sm, .freeplay-card-sm, .coming-soon-card {
    min-width: 100%;
    margin-bottom: 1rem;
  }
  .archive-scroll, .freeplay-scroll {
    flex-direction: row;
    gap: 0.5rem;
  }
}
.btn-primary, .btn-success {
  font-weight: 700;
  border-radius: 8px;
  letter-spacing: 0.01em;
}

.btn-outline-primary {
  border-radius: 8px;
}

.badge.bg-primary {
  background: #538d4e !important;
  color: #fff !important;
}

.badge.bg-success {
  background: #198754 !important;
  color: #fff !important;
}

.spelling-bee-icon, .connections-icon, .sudoku-icon {
  font-size: 2rem;
  line-height: 1;
}

/* ===== HERO SECTION ===== */
.hero-section {
  background: linear-gradient(135deg, #1a1a2e 0%, #16213e 50%, #0f3460 100%);
  padding: 80px 0 60px;
  position: relative;
  overflow: hidden;
}

.hero-section::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><defs><pattern id="grid" width="10" height="10" patternUnits="userSpaceOnUse"><path d="M 10 0 L 0 0 0 10" fill="none" stroke="rgba(255,255,255,0.03)" stroke-width="0.5"/></pattern></defs><rect width="100" height="100" fill="url(%23grid)"/></svg>');
  opacity: 0.5;
}

.hero-content {
  position: relative;
  z-index: 2;
}

.hero-title {
  font-size: 3.5rem;
  font-weight: 800;
  line-height: 1.1;
  margin-bottom: 1.5rem;
  color: #ffffff;
}

.text-gradient {
  background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

.hero-subtitle {
  font-size: 1.25rem;
  color: #b8c5d6;
  margin-bottom: 2rem;
  line-height: 1.6;
}

.hero-actions {
  display: flex;
  gap: 1rem;
  flex-wrap: wrap;
}

.hero-game-preview {
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  z-index: 2;
}

.game-preview-card {
  background: rgba(255, 255, 255, 0.1);
  -webkit-backdrop-filter: blur(20px);
          backdrop-filter: blur(20px);
  border: 1px solid rgba(255, 255, 255, 0.2);
  border-radius: 20px;
  padding: 1.5rem;
  text-align: center;
  box-shadow: 0 20px 40px rgba(0, 0, 0, 0.3);
  transition: transform 0.3s ease;
  margin-bottom: 1.5rem;
}

.game-preview-card:hover {
  transform: translateY(-10px);
}

.wordle-icon-grid-hero {
  display: inline-block;
  background: rgba(0, 0, 0, 0.3);
  border-radius: 10px;
  padding: 6px 8px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2);
}

.icon-letter-box-hero {
  width: 20px;
  height: 20px;
  border-radius: 3px;
  margin: 1px;
  display: inline-block;
  border: 1.5px solid rgba(255, 255, 255, 0.3);
}

.icon-letter-box-hero.correct {
  background-color: #538d4e;
  border-color: #538d4e;
}

.icon-letter-box-hero.present {
  background-color: #b59f3b;
  border-color: #b59f3b;
}

.icon-letter-box-hero.absent {
  background-color: #3a3a3c;
  border-color: #3a3a3c;
}

.other-games-preview {
  display: flex;
  justify-content: center;
  gap: 1.5rem;
  flex-wrap: wrap;
}

.game-icon-small {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.5rem;
  padding: 1rem;
  background: rgba(255, 255, 255, 0.05);
  border-radius: 12px;
  border: 1px solid rgba(255, 255, 255, 0.1);
  transition: transform 0.2s ease;
  min-width: 80px;
}

.game-icon-small:hover {
  transform: translateY(-3px);
  background: rgba(255, 255, 255, 0.08);
}

.game-icon-bee,
.game-icon-connections,
.game-icon-sudoku {
  font-size: 2rem;
  filter: grayscale(30%);
}

.game-icon-small span {
  font-size: 0.8rem;
  color: #b8c5d6;
  font-weight: 500;
  text-align: center;
}

/* ===== SECTION HEADERS ===== */
.section-header {
  text-align: center;
  margin-bottom: 1rem;
}

.section-title {
  font-size: 2.5rem;
  font-weight: 700;
  color: #ffffff;
  margin-bottom: 1rem;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
}

.section-title .icon {
  font-size: 2rem;
}

.section-subtitle {
  font-size: 1.1rem;
  color: #b8c5d6;
  max-width: 600px;
  margin: 0 auto;
}

/* ===== WORDLE MAIN CARD ===== */
.wordle-main-card {
  background: linear-gradient(135deg, #23272b 0%, #2d333b 100%);
  border-radius: 20px;
  padding: 2rem;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.3);
  border: 1px solid rgba(255, 255, 255, 0.1);
  transition: transform 0.3s ease, box-shadow 0.3s ease;
  height: 100%;
}

.wordle-main-card:hover {
  transform: translateY(-5px);
  box-shadow: 0 20px 40px rgba(0, 0, 0, 0.4);
}

.wordle-header {
  display: flex;
  align-items: center;
  gap: 1.5rem;
  margin-bottom: 2rem;
}

.wordle-icon {
  flex-shrink: 0;
}

.wordle-info {
  flex: 1;
}

.wordle-title {
  font-size: 1.5rem;
  font-weight: 700;
  color: #ffffff;
  margin-bottom: 0.5rem;
}

.wordle-date {
  color: #b8c5d6;
  font-size: 0.9rem;
  margin-bottom: 0.5rem;
}

.completion-status {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}

/* ===== WORDLE QUICK STATS ===== */
.wordle-quick-stats {
  margin-bottom: 2rem;
  padding: 1.5rem;
  background: rgba(255, 255, 255, 0.05);
  border-radius: 12px;
}

.stat-row {
  display: flex;
  gap: 1rem;
  margin-bottom: 1rem;
}

.stat-row:last-child {
  margin-bottom: 0;
}

.stat-item {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  flex: 1;
  padding: 0.75rem;
  background: rgba(255, 255, 255, 0.03);
  border-radius: 8px;
  transition: transform 0.2s ease;
}

.stat-item:hover {
  transform: translateY(-2px);
  background: rgba(255, 255, 255, 0.05);
}

.stat-icon {
  font-size: 1.2rem;
  flex-shrink: 0;
}

.stat-content {
  flex: 1;
  min-width: 0;
}

.stat-number {
  display: block;
  font-size: 1.3rem;
  font-weight: 700;
  color: #667eea;
  line-height: 1;
}

.stat-label {
  font-size: 0.75rem;
  color: #b8c5d6;
  margin-top: 0.25rem;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.wordle-actions {
  text-align: center;
}

/* ===== WORDLE ARCHIVE SECTION ===== */
.wordle-archive-section {
  background: linear-gradient(135deg, #23272b 0%, #2d333b 100%);
  border-radius: 20px;
  padding: 2rem;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.3);
  border: 1px solid rgba(255, 255, 255, 0.1);
  height: 100%;
}

.archive-title {
  font-size: 1.3rem;
  font-weight: 700;
  color: #ffffff;
  margin-bottom: 1.5rem;
}

.archive-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(120px, 1fr));
  gap: 1rem;
}

.archive-card {
  background: rgba(255, 255, 255, 0.05);
  border-radius: 12px;
  padding: 1rem;
  transition: transform 0.2s ease, background-color 0.2s ease;
  border: 1px solid rgba(255, 255, 255, 0.1);
}

.archive-card:hover {
  transform: translateY(-3px);
  background: rgba(255, 255, 255, 0.08);
}

.archive-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 1rem;
}

.archive-date {
  text-align: center;
}

.date-day {
  font-size: 1.2rem;
  font-weight: 700;
  color: #ffffff;
  line-height: 1;
}

.date-month {
  font-size: 0.8rem;
  color: #b8c5d6;
  text-transform: uppercase;
}

.archive-content {
  text-align: center;
}

.archive-info {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 0.75rem;
}

.archive-weekday {
  font-size: 0.8rem;
  color: #b8c5d6;
  text-transform: capitalize;
}

.completion-badge {
  font-size: 0.9rem;
}

/* ===== WORDLE FREE PLAY CARD ===== */
.wordle-free-play-card {
  background: linear-gradient(135deg, #23272b 0%, #2d333b 100%);
  border-radius: 20px;
  padding: 2rem;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.3);
  border: 1px solid rgba(255, 255, 255, 0.1);
  height: 100%;
  transition: transform 0.3s ease;
}

.wordle-free-play-card:hover {
  transform: translateY(-5px);
}

.free-play-header {
  text-align: center;
  margin-bottom: 1.5rem;
}

.free-play-title {
  font-size: 1.3rem;
  font-weight: 700;
  color: #ffffff;
  margin-top: 1rem;
}

.free-play-description {
  color: #b8c5d6;
  text-align: center;
  margin-bottom: 1.5rem;
  line-height: 1.6;
}

.free-play-features {
  margin-bottom: 2rem;
}

.feature-item {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  margin-bottom: 0.5rem;
  color: #b8c5d6;
}

.feature-icon {
  font-size: 1.1rem;
}

.feature-text {
  font-size: 0.9rem;
}

/* ===== WORDLE ICON GRIDS ===== */
.wordle-icon-grid-lg {
  display: inline-block;
  background: #18191a;
  border-radius: 8px;
  padding: 6px 10px;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.18);
}

.icon-letter-box-lg {
  width: 32px;
  height: 32px;
  background: #3a3a3c;
  border-radius: 3px;
  margin: 2px;
  border: 2px solid #23272b;
  display: inline-block;
}

.icon-letter-box-lg.correct {
  background-color: #538d4e;
  border-color: #538d4e;
}

.icon-letter-box-lg.present {
  background-color: #b59f3b;
  border-color: #b59f3b;
}

.icon-letter-box-lg.absent {
  background-color: #3a3a3c;
  border-color: #3a3a3c;
}

.wordle-icon-grid-sm {
  display: inline-block;
  background: #18191a;
  border-radius: 5px;
  padding: 2px 4px;
  box-shadow: 0 1px 4px rgba(0, 0, 0, 0.12);
}

.icon-letter-box-sm {
  width: 14px;
  height: 14px;
  background: #3a3a3c;
  border-radius: 2px;
  margin: 1px;
  border: 1.2px solid #23272b;
  display: inline-block;
}

.icon-letter-box-sm.correct {
  background-color: #538d4e;
  border-color: #538d4e;
}

.icon-letter-box-sm.present {
  background-color: #b59f3b;
  border-color: #b59f3b;
}

.icon-letter-box-sm.absent {
  background-color: #3a3a3c;
  border-color: #3a3a3c;
}

/* ===== COMING SOON CARDS ===== */
.coming-soon-card {
  background: linear-gradient(135deg, #23272b 0%, #2d333b 100%);
  border-radius: 20px;
  padding: 2rem;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.3);
  border: 2px dashed rgba(255, 255, 255, 0.2);
  text-align: center;
  transition: transform 0.3s ease;
  opacity: 0.8;
  height: 100%;
}

.coming-soon-card:hover {
  transform: translateY(-5px);
  opacity: 1;
}

.coming-soon-icon {
  font-size: 3rem;
  margin-bottom: 1rem;
  filter: grayscale(50%);
}

.coming-soon-title {
  font-size: 1.3rem;
  font-weight: 700;
  color: #ffffff;
  margin-bottom: 1rem;
}

.coming-soon-description {
  color: #b8c5d6;
  margin-bottom: 1.5rem;
  line-height: 1.6;
}

.coming-soon-features {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  justify-content: center;
  margin-bottom: 1.5rem;
}

.feature-tag {
  background: rgba(255, 255, 255, 0.1);
  color: #b8c5d6;
  padding: 0.25rem 0.75rem;
  border-radius: 20px;
  font-size: 0.8rem;
  border: 1px solid rgba(255, 255, 255, 0.2);
}

.coming-soon-badge {
  background: linear-gradient(135deg, #6c757d 0%, #495057 100%);
  color: #ffffff;
  padding: 0.5rem 1rem;
  border-radius: 20px;
  font-size: 0.9rem;
  font-weight: 600;
}

/* ===== COMMUNITY SECTION ===== */
.community-section {
  background: linear-gradient(135deg, #1a1a2e 0%, #16213e 100%);
  padding: 80px 0;
  position: relative;
  overflow: hidden;
}

.community-section::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><defs><pattern id="dots" width="20" height="20" patternUnits="userSpaceOnUse"><circle cx="10" cy="10" r="1" fill="rgba(255,255,255,0.05)"/></pattern></defs><rect width="100" height="100" fill="url(%23dots)"/></svg>');
  opacity: 0.5;
}

.community-content {
  position: relative;
  z-index: 2;
}

.community-title {
  font-size: 2.5rem;
  font-weight: 700;
  color: #ffffff;
  margin-bottom: 1.5rem;
}

.community-text {
  font-size: 1.1rem;
  color: #b8c5d6;
  margin-bottom: 2rem;
  line-height: 1.6;
}

.community-features {
  margin-bottom: 2rem;
}

.community-feature {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  margin-bottom: 1rem;
  color: #b8c5d6;
  font-size: 1rem;
}

.community-actions {
  display: flex;
  align-items: center;
  gap: 1rem;
  flex-wrap: wrap;
}

.community-visual {
  position: relative;
  z-index: 2;
  display: flex;
  justify-content: center;
}

.community-stats {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1.5rem;
  max-width: 400px;
}

.stat-card {
  background: rgba(255, 255, 255, 0.1);
  -webkit-backdrop-filter: blur(20px);
          backdrop-filter: blur(20px);
  border: 1px solid rgba(255, 255, 255, 0.2);
  border-radius: 16px;
  padding: 1.5rem;
  text-align: center;
  transition: transform 0.3s ease;
}

.stat-card:hover {
  transform: translateY(-5px);
}

.stat-card .stat-number {
  font-size: 2rem;
  font-weight: 700;
  color: #667eea;
  line-height: 1;
  margin-bottom: 0.5rem;
}

.stat-card .stat-label {
  font-size: 0.9rem;
  color: #b8c5d6;
}

/* ===== RESPONSIVE DESIGN ===== */
@media (max-width: 991px) {
  .hero-title {
    font-size: 2.8rem;
  }
  .section-title {
    font-size: 2rem;
  }
  .wordle-header {
    flex-direction: column;
    text-align: center;
    gap: 1rem;
  }
  .stat-row {
    flex-direction: column;
    gap: 0.75rem;
  }
  .archive-grid {
    grid-template-columns: repeat(auto-fill, minmax(100px, 1fr));
  }
  .community-stats {
    grid-template-columns: 1fr;
    gap: 1rem;
  }
  .other-games-preview {
    gap: 1rem;
  }
  .game-icon-small {
    min-width: 70px;
    padding: 0.75rem;
  }
}
@media (max-width: 767px) {
  .hero-section {
    padding: 60px 0 40px;
  }
  .hero-title {
    font-size: 2.2rem;
  }
  .hero-subtitle {
    font-size: 1.1rem;
  }
  .hero-actions {
    flex-direction: column;
    align-items: stretch;
  }
  .section-title {
    font-size: 1.8rem;
  }
  .wordle-main-card,
  .wordle-archive-section,
  .wordle-free-play-card {
    padding: 1.5rem;
  }
  .wordle-quick-stats {
    padding: 1rem;
  }
  .stat-item {
    padding: 0.5rem;
  }
  .stat-number {
    font-size: 1.1rem;
  }
  .stat-label {
    font-size: 0.7rem;
  }
  .archive-grid {
    grid-template-columns: repeat(auto-fill, minmax(80px, 1fr));
    gap: 0.75rem;
  }
  .community-title {
    font-size: 2rem;
  }
  .community-stats {
    grid-template-columns: 1fr;
  }
  .game-preview-card {
    padding: 1rem;
    margin-bottom: 1rem;
  }
  .wordle-icon-grid-hero {
    padding: 4px 6px;
  }
  .icon-letter-box-hero {
    width: 18px;
    height: 18px;
  }
  .other-games-preview {
    gap: 0.75rem;
    justify-content: space-around;
  }
  .game-icon-small {
    min-width: 60px;
    padding: 0.5rem;
  }
  .game-icon-bee,
  .game-icon-connections,
  .game-icon-sudoku {
    font-size: 1.5rem;
  }
  .game-icon-small span {
    font-size: 0.7rem;
  }
}
@media (max-width: 480px) {
  .hero-title {
    font-size: 1.8rem;
  }
  .section-title {
    font-size: 1.5rem;
  }
  .wordle-title {
    font-size: 1.3rem;
  }
  .archive-grid {
    grid-template-columns: repeat(2, 1fr);
  }
  .stat-item {
    flex-direction: column;
    text-align: center;
    gap: 0.5rem;
  }
  .stat-icon {
    font-size: 1rem;
  }
  .stat-number {
    font-size: 1rem;
  }
  .stat-label {
    font-size: 0.65rem;
  }
  .game-preview-card {
    padding: 0.75rem;
  }
  .wordle-icon-grid-hero {
    padding: 3px 5px;
  }
  .icon-letter-box-hero {
    width: 16px;
    height: 16px;
  }
  .other-games-preview {
    gap: 0.5rem;
    flex-direction: column;
    align-items: center;
  }
  .game-icon-small {
    min-width: 80px;
    flex-direction: row;
    gap: 0.5rem;
    padding: 0.75rem;
  }
  .game-icon-bee,
  .game-icon-connections,
  .game-icon-sudoku {
    font-size: 1.3rem;
  }
  .game-icon-small span {
    font-size: 0.8rem;
  }
}
/* ===== ANIMATIONS ===== */
@keyframes fadeInUp {
  from {
    opacity: 0;
    transform: translateY(30px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.wordle-main-card,
.archive-card,
.wordle-free-play-card,
.coming-soon-card,
.stat-card {
  animation: fadeInUp 0.6s ease-out;
}

.archive-card:nth-child(2) {
  animation-delay: 0.1s;
}

.archive-card:nth-child(3) {
  animation-delay: 0.2s;
}

.archive-card:nth-child(4) {
  animation-delay: 0.3s;
}

.archive-card:nth-child(5) {
  animation-delay: 0.4s;
}

.archive-card:nth-child(6) {
  animation-delay: 0.5s;
}

.archive-card:nth-child(7) {
  animation-delay: 0.6s;
}

/* ===== UTILITY CLASSES ===== */
.text-muted {
  color: #b8c5d6 !important;
}

.btn-primary {
  background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
  border: none;
  font-weight: 600;
  transition: transform 0.2s ease;
  border-radius: 8px;
}

.btn-primary:hover {
  transform: translateY(-2px);
  box-shadow: 0 8px 20px rgba(102, 126, 234, 0.4);
}

.btn-success {
  background: linear-gradient(135deg, #28a745 0%, #20c997 100%);
  border: none;
  font-weight: 600;
  transition: transform 0.2s ease;
  border-radius: 8px;
}

.btn-success:hover {
  transform: translateY(-2px);
  box-shadow: 0 8px 20px rgba(40, 167, 69, 0.4);
}

.btn-outline-primary {
  border-color: #667eea;
  color: #667eea;
  font-weight: 600;
  transition: all 0.2s ease;
  border-radius: 8px;
}

.btn-outline-primary:hover {
  background: #667eea;
  border-color: #667eea;
  transform: translateY(-2px);
}

.btn-outline-light {
  border-color: rgba(255, 255, 255, 0.3);
  color: #ffffff;
  font-weight: 600;
  transition: all 0.2s ease;
  border-radius: 8px;
}

.btn-outline-light:hover {
  background: rgba(255, 255, 255, 0.1);
  border-color: rgba(255, 255, 255, 0.5);
  color: #ffffff;
  transform: translateY(-2px);
}

/* Override Bootstrap's default rounded buttons */
.btn {
  border-radius: 8px !important;
}

.btn-sm {
  border-radius: 6px !important;
}

.btn-lg {
  border-radius: 10px !important;
}

/* ===== SCROLLBAR STYLING ===== */
.archive-scroll-container,
.freeplay-scroll-container {
  overflow-x: auto;
  scrollbar-width: thin;
  scrollbar-color: rgba(255, 255, 255, 0.2) transparent;
}

.archive-scroll-container::-webkit-scrollbar,
.freeplay-scroll-container::-webkit-scrollbar {
  height: 6px;
}

.archive-scroll-container::-webkit-scrollbar-track,
.freeplay-scroll-container::-webkit-scrollbar-track {
  background: transparent;
}

.archive-scroll-container::-webkit-scrollbar-thumb,
.freeplay-scroll-container::-webkit-scrollbar-thumb {
  background: rgba(255, 255, 255, 0.2);
  border-radius: 3px;
}

.archive-scroll-container::-webkit-scrollbar-thumb:hover,
.freeplay-scroll-container::-webkit-scrollbar-thumb:hover {
  background: rgba(255, 255, 255, 0.3);
}

/* Add styles for new game mode cards */
.wordle-mode-card {
  background: linear-gradient(135deg, #1a1a1a 0%, #2d2d2d 100%);
  border: 1px solid #3a3a3c;
  border-radius: 12px;
  padding: 1.5rem;
  height: 100%;
  transition: all 0.3s ease;
  position: relative;
  overflow: hidden;
}

.wordle-mode-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 8px 25px rgba(0, 0, 0, 0.3);
  border-color: #4a4a4c;
}

.wordle-mode-card::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 3px;
  background: linear-gradient(90deg, #538d4e, #b59f3b, #3a3a3c);
  opacity: 0.7;
}

.mode-header {
  display: flex;
  align-items: center;
  margin-bottom: 1rem;
}

.mode-icon {
  font-size: 2rem;
  margin-right: 1rem;
  width: 50px;
  height: 50px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(255, 255, 255, 0.1);
  border-radius: 50%;
}

.mode-title {
  color: white;
  font-weight: 600;
  margin: 0;
  font-size: 1.25rem;
}

.mode-content {
  color: #e0e0e0;
}

.mode-description {
  margin-bottom: 1rem;
  line-height: 1.5;
  color: #b0b0b0;
}

.mode-features {
  display: flex;
  gap: 1rem;
  margin-bottom: 1.5rem;
  flex-wrap: wrap;
}

.feature-item {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  font-size: 0.9rem;
  color: #d0d0d0;
}

.feature-icon {
  font-size: 1rem;
}

.feature-text {
  font-weight: 500;
}

.mode-stats {
  display: flex;
  gap: 1rem;
  margin-bottom: 1.5rem;
  padding: 1rem;
  background: rgba(255, 255, 255, 0.05);
  border-radius: 8px;
}

.mode-stats .stat-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  flex: 1;
}

.mode-stats .stat-number {
  font-size: 1.5rem;
  font-weight: bold;
  color: #538d4e;
}

.mode-stats .stat-label {
  font-size: 0.8rem;
  color: #b0b0b0;
  text-align: center;
}

/* Responsive adjustments */
@media (max-width: 768px) {
  .wordle-mode-card {
    padding: 1rem;
  }
  .mode-features {
    gap: 0.5rem;
  }
  .mode-stats {
    flex-direction: column;
    gap: 0.5rem;
  }
  .mode-stats .stat-item {
    flex-direction: row;
    justify-content: space-between;
  }
  .mode-stats .stat-label {
    text-align: left;
  }
}
.challenges-link-section {
  background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
  border-radius: 20px;
  padding: 3rem 2rem;
  color: white;
  text-align: center;
  margin: 2rem 0;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
  transition: all 0.3s ease;
}

.challenges-link-section:hover {
  transform: translateY(-5px);
  box-shadow: 0 15px 40px rgba(0, 0, 0, 0.15);
}

.challenges-link-section h4 {
  color: white;
  font-weight: 600;
  margin-bottom: 1rem;
}

.challenges-link-section p {
  color: rgba(255, 255, 255, 0.9);
  font-size: 1.1rem;
  margin-bottom: 2rem;
}

.challenges-link-section .btn {
  background: rgba(255, 255, 255, 0.2);
  border: 2px solid rgba(255, 255, 255, 0.3);
  color: white;
  font-weight: 600;
  padding: 12px 30px;
  transition: all 0.3s ease;
}

.challenges-link-section .btn:hover {
  background: rgba(255, 255, 255, 0.3);
  border-color: rgba(255, 255, 255, 0.5);
  color: white;
  transform: scale(1.05);
}

@media (max-width: 768px) {
  .challenges-link-section {
    padding: 2rem 1rem;
  }
  .challenges-link-section h4 {
    font-size: 1.5rem;
  }
  .challenges-link-section p {
    font-size: 1rem;
  }
}
/* Challenges Page Styles */
.challenges-page .archive-card {
  background: linear-gradient(135deg, #1a1a1a 0%, #2d2d2d 100%);
  border-radius: 15px;
  padding: 1.5rem;
  color: white;
  transition: all 0.3s ease;
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  border: 1px solid #3a3a3c;
}

.challenges-page .archive-card:hover {
  transform: translateY(-5px);
  box-shadow: 0 15px 40px rgba(0, 0, 0, 0.2);
}

.challenges-page .archive-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 1rem;
}

.challenges-page .archive-date {
  text-align: center;
  background: rgba(255, 255, 255, 0.2);
  border-radius: 10px;
  padding: 0.5rem;
  min-width: 60px;
}

.challenges-page .date-day {
  font-size: 1.5rem;
  font-weight: bold;
  line-height: 1;
}

.challenges-page .date-month {
  font-size: 0.8rem;
  text-transform: uppercase;
  opacity: 0.9;
}

.challenges-page .archive-content {
  flex-grow: 1;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

.challenges-page .archive-info {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 1rem;
}

.challenges-page .archive-weekday {
  font-size: 0.9rem;
  opacity: 0.9;
}

.challenges-page .completion-badge {
  font-size: 1.2rem;
}

.challenges-page .btn {
  border-radius: 8px;
  font-weight: 600;
  transition: all 0.3s ease;
}

.challenges-page .btn:hover {
  transform: scale(1.05);
}

/* Pagination Styles */
.pagination {
  margin-top: 3rem;
}

.pagination .page-link {
  background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
  border: none;
  color: white;
  margin: 0 2px;
  border-radius: 8px;
  transition: all 0.3s ease;
}

.pagination .page-link:hover {
  background: linear-gradient(135deg, #5a6fd8 0%, #6a4190 100%);
  transform: translateY(-2px);
}

.pagination .page-item.active .page-link {
  background: linear-gradient(135deg, #4CAF50 0%, #45a049 100%);
  box-shadow: 0 5px 15px rgba(76, 175, 80, 0.3);
}

.pagination .page-item.disabled .page-link {
  background: #6c757d;
  color: #adb5bd;
}

@media (max-width: 768px) {
  .challenges-page .archive-card {
    padding: 1rem;
  }
  .challenges-page .archive-header {
    flex-direction: column;
    gap: 1rem;
  }
  .challenges-page .archive-date {
    min-width: 50px;
  }
  .challenges-page .date-day {
    font-size: 1.2rem;
  }
  .challenges-page .date-month {
    font-size: 0.7rem;
  }
}
/* Mobile-First Wordle Card Styles */
.wordle-main-card {
  background: linear-gradient(135deg, #2c3e50 0%, #34495e 100%);
  border-radius: 20px;
  padding: 2rem;
  color: white;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.2);
  transition: all 0.3s ease;
  margin-bottom: 2rem;
}

.wordle-main-card:hover {
  transform: translateY(-5px);
  box-shadow: 0 15px 40px rgba(0, 0, 0, 0.3);
}

.wordle-header {
  display: flex;
  align-items: center;
  gap: 1.5rem;
  margin-bottom: 2rem;
}

.wordle-icon {
  flex-shrink: 0;
}

.wordle-info {
  flex-grow: 1;
}

.wordle-title {
  font-size: 1.8rem;
  font-weight: 700;
  margin-bottom: 0.5rem;
  color: white;
}

.wordle-subtitle {
  font-size: 1rem;
  opacity: 0.9;
  margin-bottom: 1rem;
}

.completion-status {
  margin-top: 0.5rem;
}

.completion-status .badge {
  font-size: 0.9rem;
  padding: 0.5rem 1rem;
}

/* Mobile-First Button Grid */
.wordle-actions .btn {
  border-radius: 12px;
  font-weight: 600;
  font-size: 1rem;
  padding: 1rem;
  min-height: 60px;
  transition: all 0.3s ease;
  border: 2px solid transparent;
  position: relative;
  overflow: hidden;
}

.wordle-actions .btn:hover {
  transform: translateY(-2px);
  box-shadow: 0 8px 25px rgba(0, 0, 0, 0.15);
}

.wordle-actions .btn:active {
  transform: translateY(0);
}

.btn-icon {
  font-size: 1.5rem;
  margin-right: 0.75rem;
  display: inline-block;
}

.btn-text {
  font-weight: 600;
}

/* Button Color Variants */
.wordle-actions .btn-success {
  background: linear-gradient(135deg, #4CAF50 0%, #45a049 100%);
  border-color: #4CAF50;
  color: white;
}

.wordle-actions .btn-success:hover {
  background: linear-gradient(135deg, #45a049 0%, #3d8b40 100%);
  border-color: #45a049;
  color: white;
}

.wordle-actions .btn-outline-primary {
  background: rgba(255, 255, 255, 0.1);
  border-color: rgba(255, 255, 255, 0.3);
  color: white;
}

.wordle-actions .btn-outline-primary:hover {
  background: rgba(255, 255, 255, 0.2);
  border-color: rgba(255, 255, 255, 0.5);
  color: white;
}

.wordle-actions .btn-outline-success {
  background: rgba(255, 255, 255, 0.1);
  border-color: rgba(255, 255, 255, 0.3);
  color: white;
}

.wordle-actions .btn-outline-success:hover {
  background: rgba(255, 255, 255, 0.2);
  border-color: rgba(255, 255, 255, 0.5);
  color: white;
}

.wordle-actions .btn-outline-info {
  background: rgba(255, 255, 255, 0.1);
  border-color: rgba(255, 255, 255, 0.3);
  color: white;
}

.wordle-actions .btn-outline-info:hover {
  background: rgba(255, 255, 255, 0.2);
  border-color: rgba(255, 255, 255, 0.5);
  color: white;
}

.wordle-actions .btn-secondary {
  background: linear-gradient(135deg, #6c757d 0%, #5a6268 100%);
  border-color: #6c757d;
  color: white;
}

.wordle-actions .btn-secondary:hover {
  background: linear-gradient(135deg, #5a6268 0%, #495057 100%);
  border-color: #5a6268;
  color: white;
}

/* Stats Section */
.wordle-quick-stats {
  background: rgba(255, 255, 255, 0.1);
  border-radius: 15px;
  padding: 1.5rem;
  margin-bottom: 2rem;
  -webkit-backdrop-filter: blur(10px);
          backdrop-filter: blur(10px);
}

.stat-row {
  display: flex;
  justify-content: space-around;
  gap: 1rem;
}

.stat-item {
  text-align: center;
  flex: 1;
}

.stat-icon {
  font-size: 1.5rem;
  display: block;
  margin-bottom: 0.5rem;
}

.stat-number {
  font-size: 1.5rem;
  font-weight: 700;
  display: block;
  color: white;
}

.stat-label {
  font-size: 0.8rem;
  opacity: 0.8;
  display: block;
  margin-top: 0.25rem;
}

/* Responsive Design */
@media (max-width: 768px) {
  .wordle-main-card {
    padding: 1.5rem;
    margin: 0 0.5rem 2rem 0.5rem;
  }
  .wordle-header {
    flex-direction: column;
    text-align: center;
    gap: 1rem;
  }
  .wordle-title {
    font-size: 1.5rem;
  }
  .wordle-subtitle {
    font-size: 0.9rem;
  }
  .wordle-actions .btn {
    font-size: 0.9rem;
    padding: 0.75rem;
    min-height: 50px;
  }
  .btn-icon {
    font-size: 1.2rem;
    margin-right: 0.5rem;
  }
  .stat-row {
    flex-direction: column;
    gap: 1rem;
  }
  .stat-item {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
  }
  .stat-icon {
    margin-bottom: 0;
  }
  .stat-number {
    font-size: 1.2rem;
  }
  .stat-label {
    font-size: 0.75rem;
  }
}
@media (max-width: 480px) {
  .wordle-main-card {
    padding: 1rem;
    border-radius: 15px;
  }
  .wordle-title {
    font-size: 1.3rem;
  }
  .wordle-subtitle {
    font-size: 0.85rem;
  }
  .wordle-actions .btn {
    font-size: 0.85rem;
    padding: 0.6rem;
    min-height: 45px;
  }
  .btn-icon {
    font-size: 1.1rem;
    margin-right: 0.4rem;
  }
  .completion-status .badge {
    font-size: 0.8rem;
    padding: 0.4rem 0.8rem;
  }
}
/* Container adjustments for mobile */
@media (max-width: 768px) {
  .container {
    padding-left: 0.5rem;
    padding-right: 0.5rem;
  }
  .col-lg-8.col-md-10.col-12 {
    padding-left: 0;
    padding-right: 0;
  }
}

/*# sourceMappingURL=data:application/json;base64,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QUNBO0lBQ0Usc0JBQXNCO0lBQ3RCLFNBQVM7RUFDWDtFQUNBO0lBQ0UsYUFBYTtJQUNiLG1CQUFtQjtJQUNuQix1QkFBdUI7SUFDdkIsV0FBVztFQUNiO0VBQ0E7SUFDRSxnQkFBZ0I7RUFDbEI7RUFDQTtJQUNFLGlCQUFpQjtFQUNuQjtFQUNBO0lBQ0Usa0JBQWtCO0VBQ3BCO0FBQ0Y7QUFDQTtFQUNFO0lBQ0UsYUFBYTtJQUNiLG1CQUFtQjtFQUNyQjtFQUNBO0lBQ0UsaUJBQWlCO0VBQ25CO0VBQ0E7SUFDRSxrQkFBa0I7RUFDcEI7RUFDQTtJQUNFLGtCQUFrQjtJQUNsQixlQUFlO0lBQ2YsZ0JBQWdCO0VBQ2xCO0VBQ0E7SUFDRSxpQkFBaUI7SUFDakIsb0JBQW9CO0VBQ3RCO0VBQ0E7SUFDRSxpQkFBaUI7SUFDakIsc0JBQXNCO0VBQ3hCO0FBQ0Y7QUFDQSxxQ0FBcUM7QUFDckM7RUFDRTtJQUNFLG9CQUFvQjtJQUNwQixxQkFBcUI7RUFDdkI7RUFDQTtJQUNFLGVBQWU7SUFDZixnQkFBZ0I7RUFDbEI7QUFDRiIsImZpbGUiOiJhcHBsaWNhdGlvbi5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyJib2R5IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzEyMTIxMztcbiAgY29sb3I6IHdoaXRlO1xuICBmb250LWZhbWlseTogXCJIZWx2ZXRpY2EgTmV1ZVwiLCBBcmlhbCwgc2Fucy1zZXJpZjtcbn1cblxuLm5hdmJhciB7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjM2EzYTNjO1xufVxuXG4ubmF2YmFyLWJyYW5kIHtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgZm9udC1zaXplOiAxLjVyZW07XG4gIGxldHRlci1zcGFjaW5nOiAwLjJyZW07XG59XG5cbi5oZWFkZXIge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzNhM2EzYztcbiAgcGFkZGluZzogMTBweCAwO1xufVxuXG4ud29yZGxlLXRpdGxlIHtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgZm9udC1zaXplOiAycmVtO1xuICBsZXR0ZXItc3BhY2luZzogMC4ycmVtO1xufVxuXG4uZ2FtZS1ib2FyZCB7XG4gIG1heC13aWR0aDogMzUwcHg7XG4gIG1hcmdpbjogMjBweCBhdXRvO1xufVxuXG4ubGV0dGVyLXJvdyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xufVxuXG4ubGV0dGVyLWJveCB7XG4gIGJvcmRlcjogMnB4IHNvbGlkICMzYTNhM2M7XG4gIHdpZHRoOiA2MHB4O1xuICBoZWlnaHQ6IDYwcHg7XG4gIG1hcmdpbjogMCAzcHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBmb250LXNpemU6IDJyZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG4uZmlsbGVkLWJveCB7XG4gIGJvcmRlcjogMnB4IHNvbGlkICM1NjU3NTg7XG59XG5cbi5jb3JyZWN0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzUzOGQ0ZTtcbiAgYm9yZGVyLWNvbG9yOiAjNTM4ZDRlO1xufVxuXG4ucHJlc2VudCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNiNTlmM2I7XG4gIGJvcmRlci1jb2xvcjogI2I1OWYzYjtcbn1cblxuLmFic2VudCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzYTNhM2M7XG4gIGJvcmRlci1jb2xvcjogIzNhM2EzYztcbn1cblxuLmtleWJvYXJkIHtcbiAgbWF4LXdpZHRoOiA2MDBweDtcbiAgbWFyZ2luOiAzMHB4IGF1dG87XG59XG5cbi5rZXlib2FyZC1yb3cge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgbWFyZ2luLWJvdHRvbTogOHB4O1xufVxuXG4ua2V5LWJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM4MTgzODQ7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGJvcmRlcjogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICBtYXJnaW46IDAgNHB4O1xuICBoZWlnaHQ6IDY1cHg7XG4gIG1pbi13aWR0aDogNDNweDtcbiAgZm9udC1zaXplOiAxLjFyZW07XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuLmtleS1idXR0b24td2lkZSB7XG4gIG1pbi13aWR0aDogNzVweDtcbn1cblxuLyogQWRkIHRoZXNlIHN0eWxlcyBmb3IgYSBjbGVhbmVyIGdhbWUgbWVzc2FnZSAqL1xuI2dhbWUtbWVzc2FnZSB7XG4gIGhlaWdodDogMzBweDtcbiAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBmb250LXdlaWdodDogNTAwO1xufVxuXG4ubWVzc2FnZS10ZXh0IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nOiA1cHggMTBweDtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICBhbmltYXRpb246IGZhZGVPdXQgMnMgZWFzZS1pbi1vdXQgZm9yd2FyZHM7XG4gIGFuaW1hdGlvbi1kZWxheTogM3M7XG59XG5cbi5tZXNzYWdlLWVycm9yIHtcbiAgY29sb3I6ICNmNWM2Y2I7XG59XG5cbi5tZXNzYWdlLXdhcm5pbmcge1xuICBjb2xvcjogI2ZmZWViYTtcbn1cblxuLm1lc3NhZ2Utc3VjY2VzcyB7XG4gIGNvbG9yOiAjYzNlNmNiO1xufVxuXG4ubWVzc2FnZS1pbmZvIHtcbiAgY29sb3I6ICNiZWU1ZWI7XG59XG5cbkBrZXlmcmFtZXMgZmFkZU91dCB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cbi8qIEhvbWUgUGFnZSBTdHlsZXMgKi9cbi5nYW1lcy1zZWN0aW9uIHtcbiAgbWFyZ2luOiA0MHB4IDA7XG59XG5cbi5nYW1lLWljb24tY29udGFpbmVyIHtcbiAgbWFyZ2luOiAzMHB4IDA7XG59XG5cbi5nYW1lLWljb24tbGluayB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuM3MgZWFzZTtcbn1cblxuLmdhbWUtaWNvbi1saW5rOmhvdmVyIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLjA1KTtcbiAgY29sb3I6IGluaGVyaXQ7XG59XG5cbi5nYW1lLWljb24ge1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCAjNTM4ZDRlLCAjYjU5ZjNiKTtcbiAgYm9yZGVyLXJhZGl1czogMjBweDtcbiAgcGFkZGluZzogMjBweDtcbiAgYm94LXNoYWRvdzogMCAxMHB4IDMwcHggcmdiYSgwLCAwLCAwLCAwLjMpO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xufVxuXG4uZ2FtZS1pY29uOmhvdmVyIHtcbiAgYm94LXNoYWRvdzogMCAxNXB4IDQwcHggcmdiYSgwLCAwLCAwLCAwLjQpO1xufVxuXG4uaWNvbi1ncmlkIHtcbiAgbWFyZ2luLWJvdHRvbTogMTVweDtcbn1cblxuLmljb24tcm93IHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIG1hcmdpbi1ib3R0b206IDJweDtcbn1cblxuLmljb24tbGV0dGVyLWJveCB7XG4gIHdpZHRoOiAyNXB4O1xuICBoZWlnaHQ6IDI1cHg7XG4gIGJvcmRlcjogMnB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44KTtcbiAgbWFyZ2luOiAwIDFweDtcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSk7XG59XG5cbi5pY29uLXRleHQge1xuICBmb250LXNpemU6IDEuM3JlbTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgdGV4dC1zaGFkb3c6IDJweCAycHggNHB4IHJnYmEoMCwgMCwgMCwgMC41KTtcbn1cblxuLyogQ29taW5nIFNvb24gR2FtZXMgU3R5bGVzICovXG4uY29taW5nLXNvb24tY29udGFpbmVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGdhcDogMzBweDtcbiAgZmxleC13cmFwOiB3cmFwO1xufVxuXG4uY29taW5nLXNvb24tZ2FtZSB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgb3BhY2l0eTogMC4yNTtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzIGVhc2U7XG59XG5cbi5jb21pbmctc29vbi1nYW1lOmhvdmVyIHtcbiAgb3BhY2l0eTogMC40O1xufVxuXG4uY29taW5nLXNvb24taWNvbiB7XG4gIGZvbnQtc2l6ZTogM3JlbTtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgZmlsdGVyOiBncmF5c2NhbGUoMTAwJSk7XG59XG5cbi5jb21pbmctc29vbi10ZXh0IHtcbiAgZm9udC1zaXplOiAwLjg1cmVtO1xuICBmb250LXdlaWdodDogMzAwO1xuICBjb2xvcjogI2NlZDRkYTtcbn1cblxuLyogTW9iaWxlIEFwcC1saWtlIFN0eWxlcyAqL1xuQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gIGJvZHkge1xuICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgICBvdmVyc2Nyb2xsLWJlaGF2aW9yOiBub25lO1xuICB9XG4gIC5jb250YWluZXIge1xuICAgIHBhZGRpbmctbGVmdDogMTVweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxNXB4O1xuICB9XG4gIC5uYXZiYXIge1xuICAgIHBhZGRpbmc6IDAuNXJlbSAxcmVtO1xuICB9XG4gIC5uYXZiYXItYnJhbmQge1xuICAgIGZvbnQtc2l6ZTogMS4zcmVtO1xuICB9XG4gIC5nYW1lLWljb24ge1xuICAgIHBhZGRpbmc6IDE1cHg7XG4gIH1cbiAgLmljb24tbGV0dGVyLWJveCB7XG4gICAgd2lkdGg6IDIycHg7XG4gICAgaGVpZ2h0OiAyMnB4O1xuICB9XG4gIC5pY29uLXRleHQge1xuICAgIGZvbnQtc2l6ZTogMS4xcmVtO1xuICB9XG4gIC5jb21pbmctc29vbi1jb250YWluZXIge1xuICAgIGdhcDogMjBweDtcbiAgfVxuICAuY29taW5nLXNvb24taWNvbiB7XG4gICAgZm9udC1zaXplOiAyLjVyZW07XG4gIH1cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA0ODBweCkge1xuICAuZ2FtZS1pY29uIHtcbiAgICBwYWRkaW5nOiAxMnB4O1xuICB9XG4gIC5pY29uLWxldHRlci1ib3gge1xuICAgIHdpZHRoOiAyMHB4O1xuICAgIGhlaWdodDogMjBweDtcbiAgfVxuICAuaWNvbi10ZXh0IHtcbiAgICBmb250LXNpemU6IDFyZW07XG4gIH1cbiAgLmNvbWluZy1zb29uLWNvbnRhaW5lciB7XG4gICAgZ2FwOiAxNXB4O1xuICB9XG4gIC5jb21pbmctc29vbi1pY29uIHtcbiAgICBmb250LXNpemU6IDJyZW07XG4gIH1cbiAgLmNvbWluZy1zb29uLXRleHQge1xuICAgIGZvbnQtc2l6ZTogMC45cmVtO1xuICB9XG59XG4vKiBQV0Etc3BlY2lmaWMgc3R5bGVzIGZvciBuYXRpdmUgYXBwIGZlZWwgKi9cbkBtZWRpYSAoZGlzcGxheS1tb2RlOiBzdGFuZGFsb25lKSB7XG4gIGJvZHkge1xuICAgIHBhZGRpbmctdG9wOiBlbnYoc2FmZS1hcmVhLWluc2V0LXRvcCk7XG4gICAgcGFkZGluZy1ib3R0b206IGVudihzYWZlLWFyZWEtaW5zZXQtYm90dG9tKTtcbiAgfVxuICAubmF2YmFyIHtcbiAgICBwYWRkaW5nLXRvcDogY2FsYygwLjVyZW0gKyBlbnYoc2FmZS1hcmVhLWluc2V0LXRvcCkpO1xuICB9XG59XG4vKiBEYWlseSBDaGFsbGVuZ2VzIFNlY3Rpb24gKi9cbi5kYWlseS1jaGFsbGVuZ2VzLXNlY3Rpb24ge1xuICBtYXJnaW4tYm90dG9tOiAzcmVtO1xufVxuXG4uZGFpbHktY2hhbGxlbmdlcy1zY3JvbGwge1xuICBvdmVyZmxvdy14OiBhdXRvO1xuICBvdmVyZmxvdy15OiBoaWRkZW47XG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgc2Nyb2xsYmFyLXdpZHRoOiBub25lOyAvKiBGaXJlZm94ICovXG4gIC1tcy1vdmVyZmxvdy1zdHlsZTogbm9uZTsgLyogSUUgYW5kIEVkZ2UgKi9cbn1cblxuLmRhaWx5LWNoYWxsZW5nZXMtc2Nyb2xsOjotd2Via2l0LXNjcm9sbGJhciB7XG4gIGRpc3BsYXk6IG5vbmU7IC8qIENocm9tZSwgU2FmYXJpLCBPcGVyYSAqL1xufVxuXG4uZGFpbHktY2hhbGxlbmdlcy1jb250YWluZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBnYXA6IDEuNXJlbTtcbiAgcGFkZGluZzogMC41cmVtIDA7XG4gIG1pbi13aWR0aDogbWF4LWNvbnRlbnQ7XG59XG5cbi5kYWlseS1jaGFsbGVuZ2UtY2FyZCB7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsICM2NjdlZWEgMCUsICM3NjRiYTIgMTAwJSk7XG4gIGJvcmRlci1yYWRpdXM6IDE2cHg7XG4gIHBhZGRpbmc6IDEuNXJlbTtcbiAgbWluLXdpZHRoOiAyODBweDtcbiAgbWF4LXdpZHRoOiAzMjBweDtcbiAgYm94LXNoYWRvdzogMCA4cHggMzJweCByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yKTtcbiAgYmFja2Ryb3AtZmlsdGVyOiBibHVyKDEwcHgpO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5kYWlseS1jaGFsbGVuZ2UtY2FyZDpob3ZlciB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNHB4KTtcbiAgYm94LXNoYWRvdzogMCAxMnB4IDQwcHggcmdiYSgwLCAwLCAwLCAwLjE1KTtcbn1cblxuLmRhaWx5LWNoYWxsZW5nZS1jYXJkLmNvbWluZy1zb29uIHtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgIzZjNzU3ZCAwJSwgIzQ5NTA1NyAxMDAlKTtcbiAgb3BhY2l0eTogMC44O1xufVxuXG4uY2hhbGxlbmdlLWljb24ge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG5cbi5pY29uLWdyaWQge1xuICBkaXNwbGF5OiBpbmxpbmUtZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMywgMWZyKTtcbiAgZ2FwOiAycHg7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbn1cblxuLmljb24tcm93IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZ2FwOiAycHg7XG59XG5cbi5pY29uLWxldHRlci1ib3gge1xuICB3aWR0aDogMTJweDtcbiAgaGVpZ2h0OiAxMnB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMyk7XG4gIGJvcmRlci1yYWRpdXM6IDJweDtcbn1cblxuLnNwZWxsaW5nLWJlZS1pY29uLFxuLnN1ZG9rdS1pY29uIHtcbiAgZm9udC1zaXplOiAycmVtO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG59XG5cbi5jaGFsbGVuZ2UtaW5mbyBoNSB7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5jaGFsbGVuZ2UtZGF0ZSB7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOCk7XG4gIGZvbnQtc2l6ZTogMC45cmVtO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLmNoYWxsZW5nZS1zdGF0dXMge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbn1cblxuLmNvbXBsZXRpb24tY291bnQge1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjcpO1xuICBmb250LXNpemU6IDAuOHJlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuXG4uY2hhbGxlbmdlLWFjdGlvbnMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBnYXA6IDAuNXJlbTtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG5cbi8qIEZyZWUgUGxheSBTZWN0aW9uICovXG4uZnJlZS1wbGF5LXNlY3Rpb24ge1xuICBtYXJnaW4tYm90dG9tOiAzcmVtO1xufVxuXG4uZnJlZS1wbGF5LWNhcmRzIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGdhcDogMnJlbTtcbiAgZmxleC13cmFwOiB3cmFwO1xufVxuXG4uZnJlZS1wbGF5LWNhcmQge1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCAjMjhhNzQ1IDAlLCAjMjBjOTk3IDEwMCUpO1xuICBib3JkZXItcmFkaXVzOiAxNnB4O1xuICBwYWRkaW5nOiAycmVtO1xuICBtaW4td2lkdGg6IDI4MHB4O1xuICBtYXgtd2lkdGg6IDMyMHB4O1xuICBib3gtc2hhZG93OiAwIDhweCAzMnB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjIpO1xuICBiYWNrZHJvcC1maWx0ZXI6IGJsdXIoMTBweCk7XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgY29sb3I6IHdoaXRlO1xufVxuXG4uZnJlZS1wbGF5LWNhcmQ6aG92ZXIge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTRweCk7XG4gIGJveC1zaGFkb3c6IDAgMTJweCA0MHB4IHJnYmEoMCwgMCwgMCwgMC4xNSk7XG59XG5cbi5mcmVlLXBsYXktY2FyZCAuZ2FtZS1pY29uIHtcbiAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xufVxuXG4uZnJlZS1wbGF5LWNhcmQgLmNhcmQtYm9keSB7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi5mcmVlLXBsYXktY2FyZCBoNSB7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xufVxuXG4uZnJlZS1wbGF5LWNhcmQgLnRleHQtbXV0ZWQge1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpICFpbXBvcnRhbnQ7XG4gIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbn1cblxuLyogR2FtZXMgU2VjdGlvbiAqL1xuLmdhbWVzLXNlY3Rpb24ge1xuICBtYXJnaW4tYm90dG9tOiAzcmVtO1xufVxuXG4uZ2FtZS1pY29uLWNvbnRhaW5lciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBtYXJnaW4tYm90dG9tOiAycmVtO1xufVxuXG4uZ2FtZS1pY29uLWxpbmsge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGNvbG9yOiBpbmhlcml0O1xufVxuXG4uZ2FtZS1pY29uIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcGFkZGluZzogMnJlbTtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgIzAwN2JmZiAwJSwgIzAwNTZiMyAxMDAlKTtcbiAgYm9yZGVyLXJhZGl1czogMTZweDtcbiAgYm94LXNoYWRvdzogMCA4cHggMzJweCByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgbWluLXdpZHRoOiAyMDBweDtcbn1cblxuLmdhbWUtaWNvbjpob3ZlciB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNHB4KTtcbiAgYm94LXNoYWRvdzogMCAxMnB4IDQwcHggcmdiYSgwLCAwLCAwLCAwLjE1KTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBjb2xvcjogd2hpdGU7XG59XG5cbi5pY29uLXRleHQge1xuICBmb250LXdlaWdodDogNzAwO1xuICBmb250LXNpemU6IDEuMnJlbTtcbiAgbWFyZ2luLXRvcDogMXJlbTtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMXJlbTtcbn1cblxuLmNvbWluZy1zb29uLWdhbWVzIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uY29taW5nLXNvb24tY29udGFpbmVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGdhcDogMnJlbTtcbiAgZmxleC13cmFwOiB3cmFwO1xufVxuXG4uY29taW5nLXNvb24tZ2FtZSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDEuNXJlbTtcbiAgYmFja2dyb3VuZDogcmdiYSgxMDgsIDExNywgMTI1LCAwLjEpO1xuICBib3JkZXItcmFkaXVzOiAxMnB4O1xuICBib3JkZXI6IDJweCBkYXNoZWQgcmdiYSgxMDgsIDExNywgMTI1LCAwLjMpO1xuICBtaW4td2lkdGg6IDEyMHB4O1xufVxuXG4uY29taW5nLXNvb24taWNvbiB7XG4gIGZvbnQtc2l6ZTogMnJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xufVxuXG4uY29taW5nLXNvb24tdGV4dCB7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGNvbG9yOiAjNmM3NTdkO1xuICBmb250LXNpemU6IDAuOXJlbTtcbn1cblxuLyogUmVzcG9uc2l2ZSBEZXNpZ24gKi9cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xuICAuZGFpbHktY2hhbGxlbmdlcy1jb250YWluZXIge1xuICAgIGdhcDogMXJlbTtcbiAgICBwYWRkaW5nOiAwLjI1cmVtIDA7XG4gIH1cbiAgLmRhaWx5LWNoYWxsZW5nZS1jYXJkIHtcbiAgICBtaW4td2lkdGg6IDI1MHB4O1xuICAgIHBhZGRpbmc6IDEuMjVyZW07XG4gIH1cbiAgLmZyZWUtcGxheS1jYXJkcyB7XG4gICAgZ2FwOiAxcmVtO1xuICB9XG4gIC5mcmVlLXBsYXktY2FyZCB7XG4gICAgbWluLXdpZHRoOiAyNTBweDtcbiAgICBwYWRkaW5nOiAxLjVyZW07XG4gIH1cbiAgLmdhbWUtaWNvbiB7XG4gICAgbWluLXdpZHRoOiAxNTBweDtcbiAgICBwYWRkaW5nOiAxLjVyZW07XG4gIH1cbiAgLmNvbWluZy1zb29uLWNvbnRhaW5lciB7XG4gICAgZ2FwOiAxcmVtO1xuICB9XG4gIC5jb21pbmctc29vbi1nYW1lIHtcbiAgICBtaW4td2lkdGg6IDEwMHB4O1xuICAgIHBhZGRpbmc6IDFyZW07XG4gIH1cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA0ODBweCkge1xuICAuZGFpbHktY2hhbGxlbmdlLWNhcmQge1xuICAgIG1pbi13aWR0aDogMjIwcHg7XG4gICAgcGFkZGluZzogMXJlbTtcbiAgfVxuICAuZnJlZS1wbGF5LWNhcmQge1xuICAgIG1pbi13aWR0aDogMjIwcHg7XG4gICAgcGFkZGluZzogMS4yNXJlbTtcbiAgfVxuICAuZ2FtZS1pY29uIHtcbiAgICBtaW4td2lkdGg6IDEyMHB4O1xuICAgIHBhZGRpbmc6IDEuMjVyZW07XG4gIH1cbiAgLmljb24tdGV4dCB7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICB9XG59XG4vKiBBbmltYXRpb24gZm9yIGNhcmRzICovXG5Aa2V5ZnJhbWVzIGZhZGVJblVwIHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMzBweCk7XG4gIH1cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB9XG59XG4uZGFpbHktY2hhbGxlbmdlLWNhcmQsXG4uZnJlZS1wbGF5LWNhcmQsXG4uZ2FtZS1pY29uIHtcbiAgYW5pbWF0aW9uOiBmYWRlSW5VcCAwLjZzIGVhc2Utb3V0O1xufVxuXG4uZGFpbHktY2hhbGxlbmdlLWNhcmQ6bnRoLWNoaWxkKDIpIHtcbiAgYW5pbWF0aW9uLWRlbGF5OiAwLjFzO1xufVxuXG4uZGFpbHktY2hhbGxlbmdlLWNhcmQ6bnRoLWNoaWxkKDMpIHtcbiAgYW5pbWF0aW9uLWRlbGF5OiAwLjJzO1xufVxuXG4vKiBIb3ZlciBlZmZlY3RzIGZvciBiZXR0ZXIgaW50ZXJhY3Rpdml0eSAqL1xuLmRhaWx5LWNoYWxsZW5nZS1jYXJkOmFjdGl2ZSxcbi5mcmVlLXBsYXktY2FyZDphY3RpdmUsXG4uZ2FtZS1pY29uOmFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMnB4KTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMXMgZWFzZTtcbn1cblxuYm9keSB7XG4gIGJhY2tncm91bmQ6ICMxODE5MWE7XG4gIGNvbG9yOiAjZjFmM2Y0O1xufVxuXG4uZGFyay1jYXJkIHtcbiAgYmFja2dyb3VuZDogIzIzMjcyYjtcbiAgYm9yZGVyLXJhZGl1czogMThweDtcbiAgYm94LXNoYWRvdzogMCAycHggMTZweCByZ2JhKDAsIDAsIDAsIDAuMjUpO1xuICBib3JkZXI6IDFweCBzb2xpZCAjMjMyNzJiO1xuICBjb2xvcjogI2YxZjNmNDtcbn1cblxuLmdhbWUtY2FyZCB7XG4gIHRyYW5zaXRpb246IGJveC1zaGFkb3cgMC4ycywgdHJhbnNmb3JtIDAuMnM7XG59XG5cbi5nYW1lLWNhcmQ6aG92ZXIge1xuICBib3gtc2hhZG93OiAwIDRweCAyNHB4IHJnYmEoMCwgMCwgMCwgMC4zNSk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMnB4KSBzY2FsZSgxLjAxKTtcbn1cblxuLm1haW4tY2FyZCB7XG4gIG1pbi1oZWlnaHQ6IDI2MHB4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG59XG5cbi5hcmNoaXZlLXN0YWNrIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbn1cblxuLmFyY2hpdmUtY2FyZCB7XG4gIG1pbi1oZWlnaHQ6IDcwcHg7XG4gIGJhY2tncm91bmQ6ICMyMzI3MmI7XG4gIGJvcmRlci1sZWZ0OiA0cHggc29saWQgIzQ0NGM1NjtcbiAgYm9yZGVyLXJhZGl1czogMTJweDtcbiAgY29sb3I6ICNmMWYzZjQ7XG59XG5cbi5hcmNoaXZlLWNhcmQgLmJ0biB7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgcGFkZGluZzogMC40ZW0gMC42ZW07XG59XG5cbi5jb21pbmctc29vbi1jYXJkIHtcbiAgbWluLXdpZHRoOiAyMjBweDtcbiAgbWluLWhlaWdodDogMTIwcHg7XG4gIGJhY2tncm91bmQ6ICMyMzI3MmI7XG4gIGJvcmRlcjogMS41cHggZGFzaGVkICM0NDRjNTY7XG4gIGNvbG9yOiAjYmRiZGJkO1xuICBvcGFjaXR5OiAwLjg1O1xufVxuXG4ud29yZGxlLWljb24tZ3JpZCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYmFja2dyb3VuZDogIzE4MTkxYTtcbiAgYm9yZGVyLXJhZGl1czogNnB4O1xuICBwYWRkaW5nOiAycHggNHB4O1xuICBib3gtc2hhZG93OiAwIDFweCA0cHggcmdiYSgwLCAwLCAwLCAwLjE4KTtcbn1cblxuLmljb24tcm93IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZ2FwOiAycHg7XG59XG5cbi5pY29uLWxldHRlci1ib3gge1xuICB3aWR0aDogMTZweDtcbiAgaGVpZ2h0OiAxNnB4O1xuICBiYWNrZ3JvdW5kOiAjM2EzYTNjO1xuICBib3JkZXItcmFkaXVzOiAycHg7XG4gIG1hcmdpbjogMXB4O1xuICBib3JkZXI6IDEuNXB4IHNvbGlkICMyMzI3MmI7XG59XG5cbi8qIFJlc3BvbnNpdmUgbGF5b3V0IGZvciBhcmNoaXZlIHN0YWNrICovXG5AbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgLmFyY2hpdmUtc3RhY2sge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgZ2FwOiAxcmVtO1xuICAgIG92ZXJmbG93LXg6IGF1dG87XG4gIH1cbiAgLmFyY2hpdmUtY2FyZCB7XG4gICAgbWluLXdpZHRoOiAxODBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLXJpZ2h0OiAxcmVtO1xuICB9XG59XG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLm1haW4tY2FyZCwgLmFyY2hpdmUtY2FyZCwgLmNvbWluZy1zb29uLWNhcmQge1xuICAgIG1pbi13aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICB9XG4gIC5hcmNoaXZlLXN0YWNrIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGdhcDogMC41cmVtO1xuICB9XG59XG4uZ2FtZS10aXRsZSB7XG4gIGZvbnQtZmFtaWx5OiBcIk1vbnRzZXJyYXRcIiwgXCJBcmlhbCBCbGFja1wiLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDJlbTtcbiAgY29sb3I6ICNmZmY7XG59XG5cbi5nYW1lLWRlc2MsIC5nYW1lLWRhdGUsIC5hdXRob3Ige1xuICBjb2xvcjogI2JkYmRiZDtcbn1cblxuLmJhZGdlLmJnLXByaW1hcnkge1xuICBiYWNrZ3JvdW5kOiAjNTM4ZDRlICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG59XG5cbi5iYWRnZS5iZy1zdWNjZXNzIHtcbiAgYmFja2dyb3VuZDogIzE5ODc1NCAhaW1wb3J0YW50O1xuICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xufVxuXG4vKiBJY29uIHN0eWxlcyBmb3IgY29taW5nIHNvb24gKi9cbi5zcGVsbGluZy1iZWUtaWNvbiwgLmNvbm5lY3Rpb25zLWljb24sIC5zdWRva3UtaWNvbiB7XG4gIGZvbnQtc2l6ZTogMnJlbTtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG5cbi8qIEFyY2hpdmUgaWNvbiAoQm9vdHN0cmFwIGljb24gZmFsbGJhY2spICovXG4uYmktYXJjaGl2ZTo6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxODdcIjtcbiAgZm9udC1mYW1pbHk6IFwiYm9vdHN0cmFwLWljb25zXCI7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC12YXJpYW50OiBub3JtYWw7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICBsaW5lLWhlaWdodDogMTtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG59XG5cbi5tYWluLXdvcmRsZS1jYXJkIHtcbiAgbWluLWhlaWdodDogMzQwcHg7XG4gIGJveC1zaGFkb3c6IDAgNnB4IDMycHggcmdiYSgwLCAwLCAwLCAwLjM1KTtcbiAgYm9yZGVyOiBub25lO1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCAjMjMyNzJiIDgwJSwgIzJkMzMzYiAxMDAlKTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuMnMsIHRyYW5zZm9ybSAwLjJzO1xufVxuXG4ubWFpbi13b3JkbGUtY2FyZDpob3ZlciB7XG4gIGJveC1zaGFkb3c6IDAgMTBweCA0MHB4IHJnYmEoMCwgMCwgMCwgMC40NSk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMnB4KSBzY2FsZSgxLjAxKTtcbn1cblxuLndvcmRsZS1pY29uLWdyaWQtbGcge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGJhY2tncm91bmQ6ICMxODE5MWE7XG4gIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgcGFkZGluZzogNnB4IDEwcHg7XG4gIGJveC1zaGFkb3c6IDAgMnB4IDhweCByZ2JhKDAsIDAsIDAsIDAuMTgpO1xufVxuXG4uaWNvbi1sZXR0ZXItYm94LWxnIHtcbiAgd2lkdGg6IDMycHg7XG4gIGhlaWdodDogMzJweDtcbiAgYmFja2dyb3VuZDogIzNhM2EzYztcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xuICBtYXJnaW46IDJweDtcbiAgYm9yZGVyOiAycHggc29saWQgIzIzMjcyYjtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4ubWFpbi10aXRsZSB7XG4gIGZvbnQtZmFtaWx5OiBcIk1vbnRzZXJyYXRcIiwgXCJBcmlhbCBCbGFja1wiLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgZm9udC1zaXplOiAyLjJyZW07XG4gIGxldHRlci1zcGFjaW5nOiAwLjAzZW07XG4gIGNvbG9yOiAjZmZmO1xufVxuXG4ubWFpbi1kYXRlIHtcbiAgY29sb3I6ICNiZGJkYmQ7XG4gIGZvbnQtc2l6ZTogMS4xcmVtO1xuICBmb250LXdlaWdodDogNjAwO1xufVxuXG4uYXJjaGl2ZS1zY3JvbGwtY29udGFpbmVyIHtcbiAgb3ZlcmZsb3cteDogYXV0bztcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xufVxuXG4uYXJjaGl2ZS1zY3JvbGwge1xuICBtaW4td2lkdGg6IDEwMCU7XG4gIHBhZGRpbmctYm90dG9tOiAycHg7XG59XG5cbi5hcmNoaXZlLWNhcmQtc20ge1xuICBtaW4td2lkdGg6IDExMHB4O1xuICBtYXgtd2lkdGg6IDEyMHB4O1xuICBtaW4taGVpZ2h0OiAxNTBweDtcbiAgYmFja2dyb3VuZDogIzIzMjcyYjtcbiAgYm9yZGVyLXJhZGl1czogMTRweDtcbiAgYm94LXNoYWRvdzogMCAxcHggOHB4IHJnYmEoMCwgMCwgMCwgMC4xOCk7XG4gIGJvcmRlcjogMS41cHggc29saWQgIzM1M2E0MDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuMThzLCB0cmFuc2Zvcm0gMC4xOHM7XG59XG5cbi5hcmNoaXZlLWNhcmQtc206aG92ZXIge1xuICBib3gtc2hhZG93OiAwIDRweCAxNnB4IHJnYmEoMCwgMCwgMCwgMC4yNSk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMnB4KSBzY2FsZSgxLjAzKTtcbn1cblxuLndvcmRsZS1pY29uLWdyaWQtc20ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGJhY2tncm91bmQ6ICMxODE5MWE7XG4gIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgcGFkZGluZzogMnB4IDRweDtcbiAgYm94LXNoYWRvdzogMCAxcHggNHB4IHJnYmEoMCwgMCwgMCwgMC4xMik7XG59XG5cbi5pY29uLWxldHRlci1ib3gtc20ge1xuICB3aWR0aDogMTRweDtcbiAgaGVpZ2h0OiAxNHB4O1xuICBiYWNrZ3JvdW5kOiAjM2EzYTNjO1xuICBib3JkZXItcmFkaXVzOiAycHg7XG4gIG1hcmdpbjogMXB4O1xuICBib3JkZXI6IDEuMnB4IHNvbGlkICMyMzI3MmI7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLmFyY2hpdmUtZGF0ZS1zbSB7XG4gIGNvbG9yOiAjYmRiZGJkO1xuICBmb250LXNpemU6IDAuOTVyZW07XG59XG5cbi5hcmNoaXZlLWJhZGdlIHtcbiAgZm9udC1zaXplOiAwLjhyZW07XG4gIHBhZGRpbmc6IDAuMmVtIDAuNWVtO1xuICBib3JkZXItcmFkaXVzOiA4cHg7XG59XG5cbi5mcmVlcGxheS1zY3JvbGwtY29udGFpbmVyIHtcbiAgb3ZlcmZsb3cteDogYXV0bztcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xufVxuXG4uZnJlZXBsYXktc2Nyb2xsIHtcbiAgbWluLXdpZHRoOiAxMDAlO1xuICBwYWRkaW5nLWJvdHRvbTogMnB4O1xufVxuXG4uZnJlZXBsYXktY2FyZC1zbSB7XG4gIG1pbi13aWR0aDogMTEwcHg7XG4gIG1heC13aWR0aDogMTIwcHg7XG4gIG1pbi1oZWlnaHQ6IDEyMHB4O1xuICBiYWNrZ3JvdW5kOiAjMjMyNzJiO1xuICBib3JkZXItcmFkaXVzOiAxNHB4O1xuICBib3gtc2hhZG93OiAwIDFweCA4cHggcmdiYSgwLCAwLCAwLCAwLjE4KTtcbiAgYm9yZGVyOiAxLjVweCBzb2xpZCAjMzUzYTQwO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuMThzLCB0cmFuc2Zvcm0gMC4xOHM7XG59XG5cbi5mcmVlcGxheS1jYXJkLXNtOmhvdmVyIHtcbiAgYm94LXNoYWRvdzogMCA0cHggMTZweCByZ2JhKDAsIDAsIDAsIDAuMjUpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTJweCkgc2NhbGUoMS4wMyk7XG59XG5cbi5mcmVlcGxheS1sYWJlbCB7XG4gIGNvbG9yOiAjYmRiZGJkO1xuICBmb250LXNpemU6IDFyZW07XG59XG5cbi5jb21pbmctc29vbi1jYXJkIHtcbiAgbWluLXdpZHRoOiAyMjBweDtcbiAgbWluLWhlaWdodDogMTIwcHg7XG4gIGJhY2tncm91bmQ6ICMyMzI3MmI7XG4gIGJvcmRlcjogMS41cHggZGFzaGVkICM0NDRjNTY7XG4gIGNvbG9yOiAjYmRiZGJkO1xuICBvcGFjaXR5OiAwLjg1O1xufVxuXG4vKiBSZXNwb25zaXZlIGxheW91dCBmb3Igc2Nyb2xscyBhbmQgY2FyZHMgKi9cbkBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAuYXJjaGl2ZS1zY3JvbGwsIC5mcmVlcGxheS1zY3JvbGwge1xuICAgIGdhcDogMC43cmVtICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm1haW4td29yZGxlLWNhcmQge1xuICAgIG1pbi1oZWlnaHQ6IDI2MHB4O1xuICB9XG59XG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLm1haW4td29yZGxlLWNhcmQsIC5hcmNoaXZlLWNhcmQtc20sIC5mcmVlcGxheS1jYXJkLXNtLCAuY29taW5nLXNvb24tY2FyZCB7XG4gICAgbWluLXdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIH1cbiAgLmFyY2hpdmUtc2Nyb2xsLCAuZnJlZXBsYXktc2Nyb2xsIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIGdhcDogMC41cmVtO1xuICB9XG59XG4uYnRuLXByaW1hcnksIC5idG4tc3VjY2VzcyB7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDFlbTtcbn1cblxuLmJ0bi1vdXRsaW5lLXByaW1hcnkge1xuICBib3JkZXItcmFkaXVzOiA4cHg7XG59XG5cbi5iYWRnZS5iZy1wcmltYXJ5IHtcbiAgYmFja2dyb3VuZDogIzUzOGQ0ZSAhaW1wb3J0YW50O1xuICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xufVxuXG4uYmFkZ2UuYmctc3VjY2VzcyB7XG4gIGJhY2tncm91bmQ6ICMxOTg3NTQgIWltcG9ydGFudDtcbiAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbn1cblxuLnNwZWxsaW5nLWJlZS1pY29uLCAuY29ubmVjdGlvbnMtaWNvbiwgLnN1ZG9rdS1pY29uIHtcbiAgZm9udC1zaXplOiAycmVtO1xuICBsaW5lLWhlaWdodDogMTtcbn1cblxuLyogPT09PT0gSEVSTyBTRUNUSU9OID09PT09ICovXG4uaGVyby1zZWN0aW9uIHtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgIzFhMWEyZSAwJSwgIzE2MjEzZSA1MCUsICMwZjM0NjAgMTAwJSk7XG4gIHBhZGRpbmc6IDgwcHggMCA2MHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5oZXJvLXNlY3Rpb246OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBiYWNrZ3JvdW5kOiB1cmwoJ2RhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2aWV3Qm94PVwiMCAwIDEwMCAxMDBcIj48ZGVmcz48cGF0dGVybiBpZD1cImdyaWRcIiB3aWR0aD1cIjEwXCIgaGVpZ2h0PVwiMTBcIiBwYXR0ZXJuVW5pdHM9XCJ1c2VyU3BhY2VPblVzZVwiPjxwYXRoIGQ9XCJNIDEwIDAgTCAwIDAgMCAxMFwiIGZpbGw9XCJub25lXCIgc3Ryb2tlPVwicmdiYSgyNTUsMjU1LDI1NSwwLjAzKVwiIHN0cm9rZS13aWR0aD1cIjAuNVwiLz48L3BhdHRlcm4+PC9kZWZzPjxyZWN0IHdpZHRoPVwiMTAwXCIgaGVpZ2h0PVwiMTAwXCIgZmlsbD1cInVybCglMjNncmlkKVwiLz48L3N2Zz4nKTtcbiAgb3BhY2l0eTogMC41O1xufVxuXG4uaGVyby1jb250ZW50IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAyO1xufVxuXG4uaGVyby10aXRsZSB7XG4gIGZvbnQtc2l6ZTogMy41cmVtO1xuICBmb250LXdlaWdodDogODAwO1xuICBsaW5lLWhlaWdodDogMS4xO1xuICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG4gIGNvbG9yOiAjZmZmZmZmO1xufVxuXG4udGV4dC1ncmFkaWVudCB7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsICM2NjdlZWEgMCUsICM3NjRiYTIgMTAwJSk7XG4gIC13ZWJraXQtYmFja2dyb3VuZC1jbGlwOiB0ZXh0O1xuICAtd2Via2l0LXRleHQtZmlsbC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJhY2tncm91bmQtY2xpcDogdGV4dDtcbn1cblxuLmhlcm8tc3VidGl0bGUge1xuICBmb250LXNpemU6IDEuMjVyZW07XG4gIGNvbG9yOiAjYjhjNWQ2O1xuICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICBsaW5lLWhlaWdodDogMS42O1xufVxuXG4uaGVyby1hY3Rpb25zIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZ2FwOiAxcmVtO1xuICBmbGV4LXdyYXA6IHdyYXA7XG59XG5cbi5oZXJvLWdhbWUtcHJldmlldyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDI7XG59XG5cbi5nYW1lLXByZXZpZXctY2FyZCB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKTtcbiAgYmFja2Ryb3AtZmlsdGVyOiBibHVyKDIwcHgpO1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMik7XG4gIGJvcmRlci1yYWRpdXM6IDIwcHg7XG4gIHBhZGRpbmc6IDEuNXJlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBib3gtc2hhZG93OiAwIDIwcHggNDBweCByZ2JhKDAsIDAsIDAsIDAuMyk7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzIGVhc2U7XG4gIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbn1cblxuLmdhbWUtcHJldmlldy1jYXJkOmhvdmVyIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMHB4KTtcbn1cblxuLndvcmRsZS1pY29uLWdyaWQtaGVybyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjMpO1xuICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICBwYWRkaW5nOiA2cHggOHB4O1xuICBib3gtc2hhZG93OiAwIDRweCAxMnB4IHJnYmEoMCwgMCwgMCwgMC4yKTtcbn1cblxuLmljb24tbGV0dGVyLWJveC1oZXJvIHtcbiAgd2lkdGg6IDIwcHg7XG4gIGhlaWdodDogMjBweDtcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xuICBtYXJnaW46IDFweDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBib3JkZXI6IDEuNXB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4zKTtcbn1cblxuLmljb24tbGV0dGVyLWJveC1oZXJvLmNvcnJlY3Qge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNTM4ZDRlO1xuICBib3JkZXItY29sb3I6ICM1MzhkNGU7XG59XG5cbi5pY29uLWxldHRlci1ib3gtaGVyby5wcmVzZW50IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2I1OWYzYjtcbiAgYm9yZGVyLWNvbG9yOiAjYjU5ZjNiO1xufVxuXG4uaWNvbi1sZXR0ZXItYm94LWhlcm8uYWJzZW50IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzNhM2EzYztcbiAgYm9yZGVyLWNvbG9yOiAjM2EzYTNjO1xufVxuXG4ub3RoZXItZ2FtZXMtcHJldmlldyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBnYXA6IDEuNXJlbTtcbiAgZmxleC13cmFwOiB3cmFwO1xufVxuXG4uZ2FtZS1pY29uLXNtYWxsIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiAwLjVyZW07XG4gIHBhZGRpbmc6IDFyZW07XG4gIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wNSk7XG4gIGJvcmRlci1yYWRpdXM6IDEycHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMnMgZWFzZTtcbiAgbWluLXdpZHRoOiA4MHB4O1xufVxuXG4uZ2FtZS1pY29uLXNtYWxsOmhvdmVyIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0zcHgpO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDgpO1xufVxuXG4uZ2FtZS1pY29uLWJlZSxcbi5nYW1lLWljb24tY29ubmVjdGlvbnMsXG4uZ2FtZS1pY29uLXN1ZG9rdSB7XG4gIGZvbnQtc2l6ZTogMnJlbTtcbiAgZmlsdGVyOiBncmF5c2NhbGUoMzAlKTtcbn1cblxuLmdhbWUtaWNvbi1zbWFsbCBzcGFuIHtcbiAgZm9udC1zaXplOiAwLjhyZW07XG4gIGNvbG9yOiAjYjhjNWQ2O1xuICBmb250LXdlaWdodDogNTAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi8qID09PT09IFNFQ1RJT04gSEVBREVSUyA9PT09PSAqL1xuLnNlY3Rpb24taGVhZGVyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuXG4uc2VjdGlvbi10aXRsZSB7XG4gIGZvbnQtc2l6ZTogMi41cmVtO1xuICBmb250LXdlaWdodDogNzAwO1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGdhcDogMC41cmVtO1xufVxuXG4uc2VjdGlvbi10aXRsZSAuaWNvbiB7XG4gIGZvbnQtc2l6ZTogMnJlbTtcbn1cblxuLnNlY3Rpb24tc3VidGl0bGUge1xuICBmb250LXNpemU6IDEuMXJlbTtcbiAgY29sb3I6ICNiOGM1ZDY7XG4gIG1heC13aWR0aDogNjAwcHg7XG4gIG1hcmdpbjogMCBhdXRvO1xufVxuXG4vKiA9PT09PSBXT1JETEUgTUFJTiBDQVJEID09PT09ICovXG4ud29yZGxlLW1haW4tY2FyZCB7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsICMyMzI3MmIgMCUsICMyZDMzM2IgMTAwJSk7XG4gIGJvcmRlci1yYWRpdXM6IDIwcHg7XG4gIHBhZGRpbmc6IDJyZW07XG4gIGJveC1zaGFkb3c6IDAgMTBweCAzMHB4IHJnYmEoMCwgMCwgMCwgMC4zKTtcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcyBlYXNlLCBib3gtc2hhZG93IDAuM3MgZWFzZTtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuXG4ud29yZGxlLW1haW4tY2FyZDpob3ZlciB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNXB4KTtcbiAgYm94LXNoYWRvdzogMCAyMHB4IDQwcHggcmdiYSgwLCAwLCAwLCAwLjQpO1xufVxuXG4ud29yZGxlLWhlYWRlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGdhcDogMS41cmVtO1xuICBtYXJnaW4tYm90dG9tOiAycmVtO1xufVxuXG4ud29yZGxlLWljb24ge1xuICBmbGV4LXNocmluazogMDtcbn1cblxuLndvcmRsZS1pbmZvIHtcbiAgZmxleDogMTtcbn1cblxuLndvcmRsZS10aXRsZSB7XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xuICBmb250LXdlaWdodDogNzAwO1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xufVxuXG4ud29yZGxlLWRhdGUge1xuICBjb2xvcjogI2I4YzVkNjtcbiAgZm9udC1zaXplOiAwLjlyZW07XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbn1cblxuLmNvbXBsZXRpb24tc3RhdHVzIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiAwLjVyZW07XG59XG5cbi8qID09PT09IFdPUkRMRSBRVUlDSyBTVEFUUyA9PT09PSAqL1xuLndvcmRsZS1xdWljay1zdGF0cyB7XG4gIG1hcmdpbi1ib3R0b206IDJyZW07XG4gIHBhZGRpbmc6IDEuNXJlbTtcbiAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA1KTtcbiAgYm9yZGVyLXJhZGl1czogMTJweDtcbn1cblxuLnN0YXQtcm93IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZ2FwOiAxcmVtO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuXG4uc3RhdC1yb3c6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5zdGF0LWl0ZW0ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBnYXA6IDAuNzVyZW07XG4gIGZsZXg6IDE7XG4gIHBhZGRpbmc6IDAuNzVyZW07XG4gIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wMyk7XG4gIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMnMgZWFzZTtcbn1cblxuLnN0YXQtaXRlbTpob3ZlciB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMnB4KTtcbiAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA1KTtcbn1cblxuLnN0YXQtaWNvbiB7XG4gIGZvbnQtc2l6ZTogMS4ycmVtO1xuICBmbGV4LXNocmluazogMDtcbn1cblxuLnN0YXQtY29udGVudCB7XG4gIGZsZXg6IDE7XG4gIG1pbi13aWR0aDogMDtcbn1cblxuLnN0YXQtbnVtYmVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtc2l6ZTogMS4zcmVtO1xuICBmb250LXdlaWdodDogNzAwO1xuICBjb2xvcjogIzY2N2VlYTtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG5cbi5zdGF0LWxhYmVsIHtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xuICBjb2xvcjogI2I4YzVkNjtcbiAgbWFyZ2luLXRvcDogMC4yNXJlbTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG59XG5cbi53b3JkbGUtYWN0aW9ucyB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLyogPT09PT0gV09SRExFIEFSQ0hJVkUgU0VDVElPTiA9PT09PSAqL1xuLndvcmRsZS1hcmNoaXZlLXNlY3Rpb24ge1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCAjMjMyNzJiIDAlLCAjMmQzMzNiIDEwMCUpO1xuICBib3JkZXItcmFkaXVzOiAyMHB4O1xuICBwYWRkaW5nOiAycmVtO1xuICBib3gtc2hhZG93OiAwIDEwcHggMzBweCByZ2JhKDAsIDAsIDAsIDAuMyk7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKTtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuXG4uYXJjaGl2ZS10aXRsZSB7XG4gIGZvbnQtc2l6ZTogMS4zcmVtO1xuICBmb250LXdlaWdodDogNzAwO1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xufVxuXG4uYXJjaGl2ZS1ncmlkIHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoYXV0by1maWxsLCBtaW5tYXgoMTIwcHgsIDFmcikpO1xuICBnYXA6IDFyZW07XG59XG5cbi5hcmNoaXZlLWNhcmQge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDUpO1xuICBib3JkZXItcmFkaXVzOiAxMnB4O1xuICBwYWRkaW5nOiAxcmVtO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4ycyBlYXNlLCBiYWNrZ3JvdW5kLWNvbG9yIDAuMnMgZWFzZTtcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpO1xufVxuXG4uYXJjaGl2ZS1jYXJkOmhvdmVyIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0zcHgpO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDgpO1xufVxuXG4uYXJjaGl2ZS1oZWFkZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG5cbi5hcmNoaXZlLWRhdGUge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5kYXRlLWRheSB7XG4gIGZvbnQtc2l6ZTogMS4ycmVtO1xuICBmb250LXdlaWdodDogNzAwO1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG5cbi5kYXRlLW1vbnRoIHtcbiAgZm9udC1zaXplOiAwLjhyZW07XG4gIGNvbG9yOiAjYjhjNWQ2O1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG4uYXJjaGl2ZS1jb250ZW50IHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uYXJjaGl2ZS1pbmZvIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBtYXJnaW4tYm90dG9tOiAwLjc1cmVtO1xufVxuXG4uYXJjaGl2ZS13ZWVrZGF5IHtcbiAgZm9udC1zaXplOiAwLjhyZW07XG4gIGNvbG9yOiAjYjhjNWQ2O1xuICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbn1cblxuLmNvbXBsZXRpb24tYmFkZ2Uge1xuICBmb250LXNpemU6IDAuOXJlbTtcbn1cblxuLyogPT09PT0gV09SRExFIEZSRUUgUExBWSBDQVJEID09PT09ICovXG4ud29yZGxlLWZyZWUtcGxheS1jYXJkIHtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgIzIzMjcyYiAwJSwgIzJkMzMzYiAxMDAlKTtcbiAgYm9yZGVyLXJhZGl1czogMjBweDtcbiAgcGFkZGluZzogMnJlbTtcbiAgYm94LXNoYWRvdzogMCAxMHB4IDMwcHggcmdiYSgwLCAwLCAwLCAwLjMpO1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSk7XG4gIGhlaWdodDogMTAwJTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuM3MgZWFzZTtcbn1cblxuLndvcmRsZS1mcmVlLXBsYXktY2FyZDpob3ZlciB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNXB4KTtcbn1cblxuLmZyZWUtcGxheS1oZWFkZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbn1cblxuLmZyZWUtcGxheS10aXRsZSB7XG4gIGZvbnQtc2l6ZTogMS4zcmVtO1xuICBmb250LXdlaWdodDogNzAwO1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgbWFyZ2luLXRvcDogMXJlbTtcbn1cblxuLmZyZWUtcGxheS1kZXNjcmlwdGlvbiB7XG4gIGNvbG9yOiAjYjhjNWQ2O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNjtcbn1cblxuLmZyZWUtcGxheS1mZWF0dXJlcyB7XG4gIG1hcmdpbi1ib3R0b206IDJyZW07XG59XG5cbi5mZWF0dXJlLWl0ZW0ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBnYXA6IDAuNXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuICBjb2xvcjogI2I4YzVkNjtcbn1cblxuLmZlYXR1cmUtaWNvbiB7XG4gIGZvbnQtc2l6ZTogMS4xcmVtO1xufVxuXG4uZmVhdHVyZS10ZXh0IHtcbiAgZm9udC1zaXplOiAwLjlyZW07XG59XG5cbi8qID09PT09IFdPUkRMRSBJQ09OIEdSSURTID09PT09ICovXG4ud29yZGxlLWljb24tZ3JpZC1sZyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYmFja2dyb3VuZDogIzE4MTkxYTtcbiAgYm9yZGVyLXJhZGl1czogOHB4O1xuICBwYWRkaW5nOiA2cHggMTBweDtcbiAgYm94LXNoYWRvdzogMCAycHggOHB4IHJnYmEoMCwgMCwgMCwgMC4xOCk7XG59XG5cbi5pY29uLWxldHRlci1ib3gtbGcge1xuICB3aWR0aDogMzJweDtcbiAgaGVpZ2h0OiAzMnB4O1xuICBiYWNrZ3JvdW5kOiAjM2EzYTNjO1xuICBib3JkZXItcmFkaXVzOiAzcHg7XG4gIG1hcmdpbjogMnB4O1xuICBib3JkZXI6IDJweCBzb2xpZCAjMjMyNzJiO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi5pY29uLWxldHRlci1ib3gtbGcuY29ycmVjdCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM1MzhkNGU7XG4gIGJvcmRlci1jb2xvcjogIzUzOGQ0ZTtcbn1cblxuLmljb24tbGV0dGVyLWJveC1sZy5wcmVzZW50IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2I1OWYzYjtcbiAgYm9yZGVyLWNvbG9yOiAjYjU5ZjNiO1xufVxuXG4uaWNvbi1sZXR0ZXItYm94LWxnLmFic2VudCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzYTNhM2M7XG4gIGJvcmRlci1jb2xvcjogIzNhM2EzYztcbn1cblxuLndvcmRsZS1pY29uLWdyaWQtc20ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGJhY2tncm91bmQ6ICMxODE5MWE7XG4gIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgcGFkZGluZzogMnB4IDRweDtcbiAgYm94LXNoYWRvdzogMCAxcHggNHB4IHJnYmEoMCwgMCwgMCwgMC4xMik7XG59XG5cbi5pY29uLWxldHRlci1ib3gtc20ge1xuICB3aWR0aDogMTRweDtcbiAgaGVpZ2h0OiAxNHB4O1xuICBiYWNrZ3JvdW5kOiAjM2EzYTNjO1xuICBib3JkZXItcmFkaXVzOiAycHg7XG4gIG1hcmdpbjogMXB4O1xuICBib3JkZXI6IDEuMnB4IHNvbGlkICMyMzI3MmI7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLmljb24tbGV0dGVyLWJveC1zbS5jb3JyZWN0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzUzOGQ0ZTtcbiAgYm9yZGVyLWNvbG9yOiAjNTM4ZDRlO1xufVxuXG4uaWNvbi1sZXR0ZXItYm94LXNtLnByZXNlbnQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYjU5ZjNiO1xuICBib3JkZXItY29sb3I6ICNiNTlmM2I7XG59XG5cbi5pY29uLWxldHRlci1ib3gtc20uYWJzZW50IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzNhM2EzYztcbiAgYm9yZGVyLWNvbG9yOiAjM2EzYTNjO1xufVxuXG4vKiA9PT09PSBDT01JTkcgU09PTiBDQVJEUyA9PT09PSAqL1xuLmNvbWluZy1zb29uLWNhcmQge1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCAjMjMyNzJiIDAlLCAjMmQzMzNiIDEwMCUpO1xuICBib3JkZXItcmFkaXVzOiAyMHB4O1xuICBwYWRkaW5nOiAycmVtO1xuICBib3gtc2hhZG93OiAwIDEwcHggMzBweCByZ2JhKDAsIDAsIDAsIDAuMyk7XG4gIGJvcmRlcjogMnB4IGRhc2hlZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMik7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuM3MgZWFzZTtcbiAgb3BhY2l0eTogMC44O1xuICBoZWlnaHQ6IDEwMCU7XG59XG5cbi5jb21pbmctc29vbi1jYXJkOmhvdmVyIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01cHgpO1xuICBvcGFjaXR5OiAxO1xufVxuXG4uY29taW5nLXNvb24taWNvbiB7XG4gIGZvbnQtc2l6ZTogM3JlbTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgZmlsdGVyOiBncmF5c2NhbGUoNTAlKTtcbn1cblxuLmNvbWluZy1zb29uLXRpdGxlIHtcbiAgZm9udC1zaXplOiAxLjNyZW07XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGNvbG9yOiAjZmZmZmZmO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuXG4uY29taW5nLXNvb24tZGVzY3JpcHRpb24ge1xuICBjb2xvcjogI2I4YzVkNjtcbiAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xuICBsaW5lLWhlaWdodDogMS42O1xufVxuXG4uY29taW5nLXNvb24tZmVhdHVyZXMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGdhcDogMC41cmVtO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xufVxuXG4uZmVhdHVyZS10YWcge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSk7XG4gIGNvbG9yOiAjYjhjNWQ2O1xuICBwYWRkaW5nOiAwLjI1cmVtIDAuNzVyZW07XG4gIGJvcmRlci1yYWRpdXM6IDIwcHg7XG4gIGZvbnQtc2l6ZTogMC44cmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMik7XG59XG5cbi5jb21pbmctc29vbi1iYWRnZSB7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsICM2Yzc1N2QgMCUsICM0OTUwNTcgMTAwJSk7XG4gIGNvbG9yOiAjZmZmZmZmO1xuICBwYWRkaW5nOiAwLjVyZW0gMXJlbTtcbiAgYm9yZGVyLXJhZGl1czogMjBweDtcbiAgZm9udC1zaXplOiAwLjlyZW07XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG5cbi8qID09PT09IENPTU1VTklUWSBTRUNUSU9OID09PT09ICovXG4uY29tbXVuaXR5LXNlY3Rpb24ge1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCAjMWExYTJlIDAlLCAjMTYyMTNlIDEwMCUpO1xuICBwYWRkaW5nOiA4MHB4IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLmNvbW11bml0eS1zZWN0aW9uOjpiZWZvcmUge1xuICBjb250ZW50OiBcIlwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgYmFja2dyb3VuZDogdXJsKCdkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmlld0JveD1cIjAgMCAxMDAgMTAwXCI+PGRlZnM+PHBhdHRlcm4gaWQ9XCJkb3RzXCIgd2lkdGg9XCIyMFwiIGhlaWdodD1cIjIwXCIgcGF0dGVyblVuaXRzPVwidXNlclNwYWNlT25Vc2VcIj48Y2lyY2xlIGN4PVwiMTBcIiBjeT1cIjEwXCIgcj1cIjFcIiBmaWxsPVwicmdiYSgyNTUsMjU1LDI1NSwwLjA1KVwiLz48L3BhdHRlcm4+PC9kZWZzPjxyZWN0IHdpZHRoPVwiMTAwXCIgaGVpZ2h0PVwiMTAwXCIgZmlsbD1cInVybCglMjNkb3RzKVwiLz48L3N2Zz4nKTtcbiAgb3BhY2l0eTogMC41O1xufVxuXG4uY29tbXVuaXR5LWNvbnRlbnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDI7XG59XG5cbi5jb21tdW5pdHktdGl0bGUge1xuICBmb250LXNpemU6IDIuNXJlbTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgY29sb3I6ICNmZmZmZmY7XG4gIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbn1cblxuLmNvbW11bml0eS10ZXh0IHtcbiAgZm9udC1zaXplOiAxLjFyZW07XG4gIGNvbG9yOiAjYjhjNWQ2O1xuICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICBsaW5lLWhlaWdodDogMS42O1xufVxuXG4uY29tbXVuaXR5LWZlYXR1cmVzIHtcbiAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbn1cblxuLmNvbW11bml0eS1mZWF0dXJlIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiAwLjc1cmVtO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBjb2xvcjogI2I4YzVkNjtcbiAgZm9udC1zaXplOiAxcmVtO1xufVxuXG4uY29tbXVuaXR5LWFjdGlvbnMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBnYXA6IDFyZW07XG4gIGZsZXgtd3JhcDogd3JhcDtcbn1cblxuLmNvbW11bml0eS12aXN1YWwge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDI7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuXG4uY29tbXVuaXR5LXN0YXRzIHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMywgMWZyKTtcbiAgZ2FwOiAxLjVyZW07XG4gIG1heC13aWR0aDogNDAwcHg7XG59XG5cbi5zdGF0LWNhcmQge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSk7XG4gIGJhY2tkcm9wLWZpbHRlcjogYmx1cigyMHB4KTtcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjIpO1xuICBib3JkZXItcmFkaXVzOiAxNnB4O1xuICBwYWRkaW5nOiAxLjVyZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuM3MgZWFzZTtcbn1cblxuLnN0YXQtY2FyZDpob3ZlciB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNXB4KTtcbn1cblxuLnN0YXQtY2FyZCAuc3RhdC1udW1iZXIge1xuICBmb250LXNpemU6IDJyZW07XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGNvbG9yOiAjNjY3ZWVhO1xuICBsaW5lLWhlaWdodDogMTtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xufVxuXG4uc3RhdC1jYXJkIC5zdGF0LWxhYmVsIHtcbiAgZm9udC1zaXplOiAwLjlyZW07XG4gIGNvbG9yOiAjYjhjNWQ2O1xufVxuXG4vKiA9PT09PSBSRVNQT05TSVZFIERFU0lHTiA9PT09PSAqL1xuQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gIC5oZXJvLXRpdGxlIHtcbiAgICBmb250LXNpemU6IDIuOHJlbTtcbiAgfVxuICAuc2VjdGlvbi10aXRsZSB7XG4gICAgZm9udC1zaXplOiAycmVtO1xuICB9XG4gIC53b3JkbGUtaGVhZGVyIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBnYXA6IDFyZW07XG4gIH1cbiAgLnN0YXQtcm93IHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGdhcDogMC43NXJlbTtcbiAgfVxuICAuYXJjaGl2ZS1ncmlkIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdChhdXRvLWZpbGwsIG1pbm1heCgxMDBweCwgMWZyKSk7XG4gIH1cbiAgLmNvbW11bml0eS1zdGF0cyB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG4gICAgZ2FwOiAxcmVtO1xuICB9XG4gIC5vdGhlci1nYW1lcy1wcmV2aWV3IHtcbiAgICBnYXA6IDFyZW07XG4gIH1cbiAgLmdhbWUtaWNvbi1zbWFsbCB7XG4gICAgbWluLXdpZHRoOiA3MHB4O1xuICAgIHBhZGRpbmc6IDAuNzVyZW07XG4gIH1cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAuaGVyby1zZWN0aW9uIHtcbiAgICBwYWRkaW5nOiA2MHB4IDAgNDBweDtcbiAgfVxuICAuaGVyby10aXRsZSB7XG4gICAgZm9udC1zaXplOiAyLjJyZW07XG4gIH1cbiAgLmhlcm8tc3VidGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMS4xcmVtO1xuICB9XG4gIC5oZXJvLWFjdGlvbnMge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gIH1cbiAgLnNlY3Rpb24tdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMS44cmVtO1xuICB9XG4gIC53b3JkbGUtbWFpbi1jYXJkLFxuICAud29yZGxlLWFyY2hpdmUtc2VjdGlvbixcbiAgLndvcmRsZS1mcmVlLXBsYXktY2FyZCB7XG4gICAgcGFkZGluZzogMS41cmVtO1xuICB9XG4gIC53b3JkbGUtcXVpY2stc3RhdHMge1xuICAgIHBhZGRpbmc6IDFyZW07XG4gIH1cbiAgLnN0YXQtaXRlbSB7XG4gICAgcGFkZGluZzogMC41cmVtO1xuICB9XG4gIC5zdGF0LW51bWJlciB7XG4gICAgZm9udC1zaXplOiAxLjFyZW07XG4gIH1cbiAgLnN0YXQtbGFiZWwge1xuICAgIGZvbnQtc2l6ZTogMC43cmVtO1xuICB9XG4gIC5hcmNoaXZlLWdyaWQge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KGF1dG8tZmlsbCwgbWlubWF4KDgwcHgsIDFmcikpO1xuICAgIGdhcDogMC43NXJlbTtcbiAgfVxuICAuY29tbXVuaXR5LXRpdGxlIHtcbiAgICBmb250LXNpemU6IDJyZW07XG4gIH1cbiAgLmNvbW11bml0eS1zdGF0cyB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG4gIH1cbiAgLmdhbWUtcHJldmlldy1jYXJkIHtcbiAgICBwYWRkaW5nOiAxcmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIH1cbiAgLndvcmRsZS1pY29uLWdyaWQtaGVybyB7XG4gICAgcGFkZGluZzogNHB4IDZweDtcbiAgfVxuICAuaWNvbi1sZXR0ZXItYm94LWhlcm8ge1xuICAgIHdpZHRoOiAxOHB4O1xuICAgIGhlaWdodDogMThweDtcbiAgfVxuICAub3RoZXItZ2FtZXMtcHJldmlldyB7XG4gICAgZ2FwOiAwLjc1cmVtO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kO1xuICB9XG4gIC5nYW1lLWljb24tc21hbGwge1xuICAgIG1pbi13aWR0aDogNjBweDtcbiAgICBwYWRkaW5nOiAwLjVyZW07XG4gIH1cbiAgLmdhbWUtaWNvbi1iZWUsXG4gIC5nYW1lLWljb24tY29ubmVjdGlvbnMsXG4gIC5nYW1lLWljb24tc3Vkb2t1IHtcbiAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgfVxuICAuZ2FtZS1pY29uLXNtYWxsIHNwYW4ge1xuICAgIGZvbnQtc2l6ZTogMC43cmVtO1xuICB9XG59XG5AbWVkaWEgKG1heC13aWR0aDogNDgwcHgpIHtcbiAgLmhlcm8tdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMS44cmVtO1xuICB9XG4gIC5zZWN0aW9uLXRpdGxlIHtcbiAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgfVxuICAud29yZGxlLXRpdGxlIHtcbiAgICBmb250LXNpemU6IDEuM3JlbTtcbiAgfVxuICAuYXJjaGl2ZS1ncmlkIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCAxZnIpO1xuICB9XG4gIC5zdGF0LWl0ZW0ge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGdhcDogMC41cmVtO1xuICB9XG4gIC5zdGF0LWljb24ge1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgfVxuICAuc3RhdC1udW1iZXIge1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgfVxuICAuc3RhdC1sYWJlbCB7XG4gICAgZm9udC1zaXplOiAwLjY1cmVtO1xuICB9XG4gIC5nYW1lLXByZXZpZXctY2FyZCB7XG4gICAgcGFkZGluZzogMC43NXJlbTtcbiAgfVxuICAud29yZGxlLWljb24tZ3JpZC1oZXJvIHtcbiAgICBwYWRkaW5nOiAzcHggNXB4O1xuICB9XG4gIC5pY29uLWxldHRlci1ib3gtaGVybyB7XG4gICAgd2lkdGg6IDE2cHg7XG4gICAgaGVpZ2h0OiAxNnB4O1xuICB9XG4gIC5vdGhlci1nYW1lcy1wcmV2aWV3IHtcbiAgICBnYXA6IDAuNXJlbTtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIH1cbiAgLmdhbWUtaWNvbi1zbWFsbCB7XG4gICAgbWluLXdpZHRoOiA4MHB4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgZ2FwOiAwLjVyZW07XG4gICAgcGFkZGluZzogMC43NXJlbTtcbiAgfVxuICAuZ2FtZS1pY29uLWJlZSxcbiAgLmdhbWUtaWNvbi1jb25uZWN0aW9ucyxcbiAgLmdhbWUtaWNvbi1zdWRva3Uge1xuICAgIGZvbnQtc2l6ZTogMS4zcmVtO1xuICB9XG4gIC5nYW1lLWljb24tc21hbGwgc3BhbiB7XG4gICAgZm9udC1zaXplOiAwLjhyZW07XG4gIH1cbn1cbi8qID09PT09IEFOSU1BVElPTlMgPT09PT0gKi9cbkBrZXlmcmFtZXMgZmFkZUluVXAge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgzMHB4KTtcbiAgfVxuICB0byB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gIH1cbn1cbi53b3JkbGUtbWFpbi1jYXJkLFxuLmFyY2hpdmUtY2FyZCxcbi53b3JkbGUtZnJlZS1wbGF5LWNhcmQsXG4uY29taW5nLXNvb24tY2FyZCxcbi5zdGF0LWNhcmQge1xuICBhbmltYXRpb246IGZhZGVJblVwIDAuNnMgZWFzZS1vdXQ7XG59XG5cbi5hcmNoaXZlLWNhcmQ6bnRoLWNoaWxkKDIpIHtcbiAgYW5pbWF0aW9uLWRlbGF5OiAwLjFzO1xufVxuXG4uYXJjaGl2ZS1jYXJkOm50aC1jaGlsZCgzKSB7XG4gIGFuaW1hdGlvbi1kZWxheTogMC4ycztcbn1cblxuLmFyY2hpdmUtY2FyZDpudGgtY2hpbGQoNCkge1xuICBhbmltYXRpb24tZGVsYXk6IDAuM3M7XG59XG5cbi5hcmNoaXZlLWNhcmQ6bnRoLWNoaWxkKDUpIHtcbiAgYW5pbWF0aW9uLWRlbGF5OiAwLjRzO1xufVxuXG4uYXJjaGl2ZS1jYXJkOm50aC1jaGlsZCg2KSB7XG4gIGFuaW1hdGlvbi1kZWxheTogMC41cztcbn1cblxuLmFyY2hpdmUtY2FyZDpudGgtY2hpbGQoNykge1xuICBhbmltYXRpb24tZGVsYXk6IDAuNnM7XG59XG5cbi8qID09PT09IFVUSUxJVFkgQ0xBU1NFUyA9PT09PSAqL1xuLnRleHQtbXV0ZWQge1xuICBjb2xvcjogI2I4YzVkNiAhaW1wb3J0YW50O1xufVxuXG4uYnRuLXByaW1hcnkge1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCAjNjY3ZWVhIDAlLCAjNzY0YmEyIDEwMCUpO1xuICBib3JkZXI6IG5vbmU7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjJzIGVhc2U7XG4gIGJvcmRlci1yYWRpdXM6IDhweDtcbn1cblxuLmJ0bi1wcmltYXJ5OmhvdmVyIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0ycHgpO1xuICBib3gtc2hhZG93OiAwIDhweCAyMHB4IHJnYmEoMTAyLCAxMjYsIDIzNCwgMC40KTtcbn1cblxuLmJ0bi1zdWNjZXNzIHtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgIzI4YTc0NSAwJSwgIzIwYzk5NyAxMDAlKTtcbiAgYm9yZGVyOiBub25lO1xuICBmb250LXdlaWdodDogNjAwO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4ycyBlYXNlO1xuICBib3JkZXItcmFkaXVzOiA4cHg7XG59XG5cbi5idG4tc3VjY2Vzczpob3ZlciB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMnB4KTtcbiAgYm94LXNoYWRvdzogMCA4cHggMjBweCByZ2JhKDQwLCAxNjcsIDY5LCAwLjQpO1xufVxuXG4uYnRuLW91dGxpbmUtcHJpbWFyeSB7XG4gIGJvcmRlci1jb2xvcjogIzY2N2VlYTtcbiAgY29sb3I6ICM2NjdlZWE7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2U7XG4gIGJvcmRlci1yYWRpdXM6IDhweDtcbn1cblxuLmJ0bi1vdXRsaW5lLXByaW1hcnk6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiAjNjY3ZWVhO1xuICBib3JkZXItY29sb3I6ICM2NjdlZWE7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMnB4KTtcbn1cblxuLmJ0bi1vdXRsaW5lLWxpZ2h0IHtcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMyk7XG4gIGNvbG9yOiAjZmZmZmZmO1xuICBmb250LXdlaWdodDogNjAwO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlO1xuICBib3JkZXItcmFkaXVzOiA4cHg7XG59XG5cbi5idG4tb3V0bGluZS1saWdodDpob3ZlciB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKTtcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7XG4gIGNvbG9yOiAjZmZmZmZmO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTJweCk7XG59XG5cbi8qIE92ZXJyaWRlIEJvb3RzdHJhcCdzIGRlZmF1bHQgcm91bmRlZCBidXR0b25zICovXG4uYnRuIHtcbiAgYm9yZGVyLXJhZGl1czogOHB4ICFpbXBvcnRhbnQ7XG59XG5cbi5idG4tc20ge1xuICBib3JkZXItcmFkaXVzOiA2cHggIWltcG9ydGFudDtcbn1cblxuLmJ0bi1sZyB7XG4gIGJvcmRlci1yYWRpdXM6IDEwcHggIWltcG9ydGFudDtcbn1cblxuLyogPT09PT0gU0NST0xMQkFSIFNUWUxJTkcgPT09PT0gKi9cbi5hcmNoaXZlLXNjcm9sbC1jb250YWluZXIsXG4uZnJlZXBsYXktc2Nyb2xsLWNvbnRhaW5lciB7XG4gIG92ZXJmbG93LXg6IGF1dG87XG4gIHNjcm9sbGJhci13aWR0aDogdGhpbjtcbiAgc2Nyb2xsYmFyLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMikgdHJhbnNwYXJlbnQ7XG59XG5cbi5hcmNoaXZlLXNjcm9sbC1jb250YWluZXI6Oi13ZWJraXQtc2Nyb2xsYmFyLFxuLmZyZWVwbGF5LXNjcm9sbC1jb250YWluZXI6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcbiAgaGVpZ2h0OiA2cHg7XG59XG5cbi5hcmNoaXZlLXNjcm9sbC1jb250YWluZXI6Oi13ZWJraXQtc2Nyb2xsYmFyLXRyYWNrLFxuLmZyZWVwbGF5LXNjcm9sbC1jb250YWluZXI6Oi13ZWJraXQtc2Nyb2xsYmFyLXRyYWNrIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG59XG5cbi5hcmNoaXZlLXNjcm9sbC1jb250YWluZXI6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iLFxuLmZyZWVwbGF5LXNjcm9sbC1jb250YWluZXI6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iIHtcbiAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjIpO1xuICBib3JkZXItcmFkaXVzOiAzcHg7XG59XG5cbi5hcmNoaXZlLXNjcm9sbC1jb250YWluZXI6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iOmhvdmVyLFxuLmZyZWVwbGF5LXNjcm9sbC1jb250YWluZXI6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjMpO1xufVxuXG4vKiBBZGQgc3R5bGVzIGZvciBuZXcgZ2FtZSBtb2RlIGNhcmRzICovXG4ud29yZGxlLW1vZGUtY2FyZCB7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsICMxYTFhMWEgMCUsICMyZDJkMmQgMTAwJSk7XG4gIGJvcmRlcjogMXB4IHNvbGlkICMzYTNhM2M7XG4gIGJvcmRlci1yYWRpdXM6IDEycHg7XG4gIHBhZGRpbmc6IDEuNXJlbTtcbiAgaGVpZ2h0OiAxMDAlO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi53b3JkbGUtbW9kZS1jYXJkOmhvdmVyIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0ycHgpO1xuICBib3gtc2hhZG93OiAwIDhweCAyNXB4IHJnYmEoMCwgMCwgMCwgMC4zKTtcbiAgYm9yZGVyLWNvbG9yOiAjNGE0YTRjO1xufVxuXG4ud29yZGxlLW1vZGUtY2FyZDo6YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICBoZWlnaHQ6IDNweDtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDkwZGVnLCAjNTM4ZDRlLCAjYjU5ZjNiLCAjM2EzYTNjKTtcbiAgb3BhY2l0eTogMC43O1xufVxuXG4ubW9kZS1oZWFkZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuXG4ubW9kZS1pY29uIHtcbiAgZm9udC1zaXplOiAycmVtO1xuICBtYXJnaW4tcmlnaHQ6IDFyZW07XG4gIHdpZHRoOiA1MHB4O1xuICBoZWlnaHQ6IDUwcHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSk7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbn1cblxuLm1vZGUtdGl0bGUge1xuICBjb2xvcjogd2hpdGU7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIG1hcmdpbjogMDtcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xufVxuXG4ubW9kZS1jb250ZW50IHtcbiAgY29sb3I6ICNlMGUwZTA7XG59XG5cbi5tb2RlLWRlc2NyaXB0aW9uIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgY29sb3I6ICNiMGIwYjA7XG59XG5cbi5tb2RlLWZlYXR1cmVzIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZ2FwOiAxcmVtO1xuICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG4gIGZsZXgtd3JhcDogd3JhcDtcbn1cblxuLmZlYXR1cmUtaXRlbSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGdhcDogMC41cmVtO1xuICBmb250LXNpemU6IDAuOXJlbTtcbiAgY29sb3I6ICNkMGQwZDA7XG59XG5cbi5mZWF0dXJlLWljb24ge1xuICBmb250LXNpemU6IDFyZW07XG59XG5cbi5mZWF0dXJlLXRleHQge1xuICBmb250LXdlaWdodDogNTAwO1xufVxuXG4ubW9kZS1zdGF0cyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGdhcDogMXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xuICBwYWRkaW5nOiAxcmVtO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDUpO1xuICBib3JkZXItcmFkaXVzOiA4cHg7XG59XG5cbi5tb2RlLXN0YXRzIC5zdGF0LWl0ZW0ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBmbGV4OiAxO1xufVxuXG4ubW9kZS1zdGF0cyAuc3RhdC1udW1iZXIge1xuICBmb250LXNpemU6IDEuNXJlbTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGNvbG9yOiAjNTM4ZDRlO1xufVxuXG4ubW9kZS1zdGF0cyAuc3RhdC1sYWJlbCB7XG4gIGZvbnQtc2l6ZTogMC44cmVtO1xuICBjb2xvcjogI2IwYjBiMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4vKiBSZXNwb25zaXZlIGFkanVzdG1lbnRzICovXG5AbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgLndvcmRsZS1tb2RlLWNhcmQge1xuICAgIHBhZGRpbmc6IDFyZW07XG4gIH1cbiAgLm1vZGUtZmVhdHVyZXMge1xuICAgIGdhcDogMC41cmVtO1xuICB9XG4gIC5tb2RlLXN0YXRzIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGdhcDogMC41cmVtO1xuICB9XG4gIC5tb2RlLXN0YXRzIC5zdGF0LWl0ZW0ge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICB9XG4gIC5tb2RlLXN0YXRzIC5zdGF0LWxhYmVsIHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB9XG59XG4uY2hhbGxlbmdlcy1saW5rLXNlY3Rpb24ge1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCAjNjY3ZWVhIDAlLCAjNzY0YmEyIDEwMCUpO1xuICBib3JkZXItcmFkaXVzOiAyMHB4O1xuICBwYWRkaW5nOiAzcmVtIDJyZW07XG4gIGNvbG9yOiB3aGl0ZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBtYXJnaW46IDJyZW0gMDtcbiAgYm94LXNoYWRvdzogMCAxMHB4IDMwcHggcmdiYSgwLCAwLCAwLCAwLjEpO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xufVxuXG4uY2hhbGxlbmdlcy1saW5rLXNlY3Rpb246aG92ZXIge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTVweCk7XG4gIGJveC1zaGFkb3c6IDAgMTVweCA0MHB4IHJnYmEoMCwgMCwgMCwgMC4xNSk7XG59XG5cbi5jaGFsbGVuZ2VzLWxpbmstc2VjdGlvbiBoNCB7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cblxuLmNoYWxsZW5nZXMtbGluay1zZWN0aW9uIHAge1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjkpO1xuICBmb250LXNpemU6IDEuMXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbn1cblxuLmNoYWxsZW5nZXMtbGluay1zZWN0aW9uIC5idG4ge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMik7XG4gIGJvcmRlcjogMnB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4zKTtcbiAgY29sb3I6IHdoaXRlO1xuICBmb250LXdlaWdodDogNjAwO1xuICBwYWRkaW5nOiAxMnB4IDMwcHg7XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XG59XG5cbi5jaGFsbGVuZ2VzLWxpbmstc2VjdGlvbiAuYnRuOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjMpO1xuICBib3JkZXItY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTtcbiAgY29sb3I6IHdoaXRlO1xuICB0cmFuc2Zvcm06IHNjYWxlKDEuMDUpO1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgLmNoYWxsZW5nZXMtbGluay1zZWN0aW9uIHtcbiAgICBwYWRkaW5nOiAycmVtIDFyZW07XG4gIH1cbiAgLmNoYWxsZW5nZXMtbGluay1zZWN0aW9uIGg0IHtcbiAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgfVxuICAuY2hhbGxlbmdlcy1saW5rLXNlY3Rpb24gcCB7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICB9XG59XG4vKiBDaGFsbGVuZ2VzIFBhZ2UgU3R5bGVzICovXG4uY2hhbGxlbmdlcy1wYWdlIC5hcmNoaXZlLWNhcmQge1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCAjMWExYTFhIDAlLCAjMmQyZDJkIDEwMCUpO1xuICBib3JkZXItcmFkaXVzOiAxNXB4O1xuICBwYWRkaW5nOiAxLjVyZW07XG4gIGNvbG9yOiB3aGl0ZTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGJvcmRlcjogMXB4IHNvbGlkICMzYTNhM2M7XG59XG5cbi5jaGFsbGVuZ2VzLXBhZ2UgLmFyY2hpdmUtY2FyZDpob3ZlciB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNXB4KTtcbiAgYm94LXNoYWRvdzogMCAxNXB4IDQwcHggcmdiYSgwLCAwLCAwLCAwLjIpO1xufVxuXG4uY2hhbGxlbmdlcy1wYWdlIC5hcmNoaXZlLWhlYWRlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cblxuLmNoYWxsZW5nZXMtcGFnZSAuYXJjaGl2ZS1kYXRlIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMik7XG4gIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gIHBhZGRpbmc6IDAuNXJlbTtcbiAgbWluLXdpZHRoOiA2MHB4O1xufVxuXG4uY2hhbGxlbmdlcy1wYWdlIC5kYXRlLWRheSB7XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG5cbi5jaGFsbGVuZ2VzLXBhZ2UgLmRhdGUtbW9udGgge1xuICBmb250LXNpemU6IDAuOHJlbTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgb3BhY2l0eTogMC45O1xufVxuXG4uY2hhbGxlbmdlcy1wYWdlIC5hcmNoaXZlLWNvbnRlbnQge1xuICBmbGV4LWdyb3c6IDE7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcbn1cblxuLmNoYWxsZW5nZXMtcGFnZSAuYXJjaGl2ZS1pbmZvIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuXG4uY2hhbGxlbmdlcy1wYWdlIC5hcmNoaXZlLXdlZWtkYXkge1xuICBmb250LXNpemU6IDAuOXJlbTtcbiAgb3BhY2l0eTogMC45O1xufVxuXG4uY2hhbGxlbmdlcy1wYWdlIC5jb21wbGV0aW9uLWJhZGdlIHtcbiAgZm9udC1zaXplOiAxLjJyZW07XG59XG5cbi5jaGFsbGVuZ2VzLXBhZ2UgLmJ0biB7XG4gIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcbn1cblxuLmNoYWxsZW5nZXMtcGFnZSAuYnRuOmhvdmVyIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLjA1KTtcbn1cblxuLyogUGFnaW5hdGlvbiBTdHlsZXMgKi9cbi5wYWdpbmF0aW9uIHtcbiAgbWFyZ2luLXRvcDogM3JlbTtcbn1cblxuLnBhZ2luYXRpb24gLnBhZ2UtbGluayB7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsICM2NjdlZWEgMCUsICM3NjRiYTIgMTAwJSk7XG4gIGJvcmRlcjogbm9uZTtcbiAgY29sb3I6IHdoaXRlO1xuICBtYXJnaW46IDAgMnB4O1xuICBib3JkZXItcmFkaXVzOiA4cHg7XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XG59XG5cbi5wYWdpbmF0aW9uIC5wYWdlLWxpbms6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCAjNWE2ZmQ4IDAlLCAjNmE0MTkwIDEwMCUpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTJweCk7XG59XG5cbi5wYWdpbmF0aW9uIC5wYWdlLWl0ZW0uYWN0aXZlIC5wYWdlLWxpbmsge1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCAjNENBRjUwIDAlLCAjNDVhMDQ5IDEwMCUpO1xuICBib3gtc2hhZG93OiAwIDVweCAxNXB4IHJnYmEoNzYsIDE3NSwgODAsIDAuMyk7XG59XG5cbi5wYWdpbmF0aW9uIC5wYWdlLWl0ZW0uZGlzYWJsZWQgLnBhZ2UtbGluayB7XG4gIGJhY2tncm91bmQ6ICM2Yzc1N2Q7XG4gIGNvbG9yOiAjYWRiNWJkO1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgLmNoYWxsZW5nZXMtcGFnZSAuYXJjaGl2ZS1jYXJkIHtcbiAgICBwYWRkaW5nOiAxcmVtO1xuICB9XG4gIC5jaGFsbGVuZ2VzLXBhZ2UgLmFyY2hpdmUtaGVhZGVyIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGdhcDogMXJlbTtcbiAgfVxuICAuY2hhbGxlbmdlcy1wYWdlIC5hcmNoaXZlLWRhdGUge1xuICAgIG1pbi13aWR0aDogNTBweDtcbiAgfVxuICAuY2hhbGxlbmdlcy1wYWdlIC5kYXRlLWRheSB7XG4gICAgZm9udC1zaXplOiAxLjJyZW07XG4gIH1cbiAgLmNoYWxsZW5nZXMtcGFnZSAuZGF0ZS1tb250aCB7XG4gICAgZm9udC1zaXplOiAwLjdyZW07XG4gIH1cbn1cbi8qIE1vYmlsZS1GaXJzdCBXb3JkbGUgQ2FyZCBTdHlsZXMgKi9cbi53b3JkbGUtbWFpbi1jYXJkIHtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgIzJjM2U1MCAwJSwgIzM0NDk1ZSAxMDAlKTtcbiAgYm9yZGVyLXJhZGl1czogMjBweDtcbiAgcGFkZGluZzogMnJlbTtcbiAgY29sb3I6IHdoaXRlO1xuICBib3gtc2hhZG93OiAwIDEwcHggMzBweCByZ2JhKDAsIDAsIDAsIDAuMik7XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XG4gIG1hcmdpbi1ib3R0b206IDJyZW07XG59XG5cbi53b3JkbGUtbWFpbi1jYXJkOmhvdmVyIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01cHgpO1xuICBib3gtc2hhZG93OiAwIDE1cHggNDBweCByZ2JhKDAsIDAsIDAsIDAuMyk7XG59XG5cbi53b3JkbGUtaGVhZGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiAxLjVyZW07XG4gIG1hcmdpbi1ib3R0b206IDJyZW07XG59XG5cbi53b3JkbGUtaWNvbiB7XG4gIGZsZXgtc2hyaW5rOiAwO1xufVxuXG4ud29yZGxlLWluZm8ge1xuICBmbGV4LWdyb3c6IDE7XG59XG5cbi53b3JkbGUtdGl0bGUge1xuICBmb250LXNpemU6IDEuOHJlbTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuICBjb2xvcjogd2hpdGU7XG59XG5cbi53b3JkbGUtc3VidGl0bGUge1xuICBmb250LXNpemU6IDFyZW07XG4gIG9wYWNpdHk6IDAuOTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cblxuLmNvbXBsZXRpb24tc3RhdHVzIHtcbiAgbWFyZ2luLXRvcDogMC41cmVtO1xufVxuXG4uY29tcGxldGlvbi1zdGF0dXMgLmJhZGdlIHtcbiAgZm9udC1zaXplOiAwLjlyZW07XG4gIHBhZGRpbmc6IDAuNXJlbSAxcmVtO1xufVxuXG4vKiBNb2JpbGUtRmlyc3QgQnV0dG9uIEdyaWQgKi9cbi53b3JkbGUtYWN0aW9ucyAuYnRuIHtcbiAgYm9yZGVyLXJhZGl1czogMTJweDtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBwYWRkaW5nOiAxcmVtO1xuICBtaW4taGVpZ2h0OiA2MHB4O1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xuICBib3JkZXI6IDJweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4ud29yZGxlLWFjdGlvbnMgLmJ0bjpob3ZlciB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMnB4KTtcbiAgYm94LXNoYWRvdzogMCA4cHggMjVweCByZ2JhKDAsIDAsIDAsIDAuMTUpO1xufVxuXG4ud29yZGxlLWFjdGlvbnMgLmJ0bjphY3RpdmUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG59XG5cbi5idG4taWNvbiB7XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xuICBtYXJnaW4tcmlnaHQ6IDAuNzVyZW07XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLmJ0bi10ZXh0IHtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbn1cblxuLyogQnV0dG9uIENvbG9yIFZhcmlhbnRzICovXG4ud29yZGxlLWFjdGlvbnMgLmJ0bi1zdWNjZXNzIHtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgIzRDQUY1MCAwJSwgIzQ1YTA0OSAxMDAlKTtcbiAgYm9yZGVyLWNvbG9yOiAjNENBRjUwO1xuICBjb2xvcjogd2hpdGU7XG59XG5cbi53b3JkbGUtYWN0aW9ucyAuYnRuLXN1Y2Nlc3M6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCAjNDVhMDQ5IDAlLCAjM2Q4YjQwIDEwMCUpO1xuICBib3JkZXItY29sb3I6ICM0NWEwNDk7XG4gIGNvbG9yOiB3aGl0ZTtcbn1cblxuLndvcmRsZS1hY3Rpb25zIC5idG4tb3V0bGluZS1wcmltYXJ5IHtcbiAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpO1xuICBib3JkZXItY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4zKTtcbiAgY29sb3I6IHdoaXRlO1xufVxuXG4ud29yZGxlLWFjdGlvbnMgLmJ0bi1vdXRsaW5lLXByaW1hcnk6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMik7XG4gIGJvcmRlci1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpO1xuICBjb2xvcjogd2hpdGU7XG59XG5cbi53b3JkbGUtYWN0aW9ucyAuYnRuLW91dGxpbmUtc3VjY2VzcyB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKTtcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMyk7XG4gIGNvbG9yOiB3aGl0ZTtcbn1cblxuLndvcmRsZS1hY3Rpb25zIC5idG4tb3V0bGluZS1zdWNjZXNzOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjIpO1xuICBib3JkZXItY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTtcbiAgY29sb3I6IHdoaXRlO1xufVxuXG4ud29yZGxlLWFjdGlvbnMgLmJ0bi1vdXRsaW5lLWluZm8ge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSk7XG4gIGJvcmRlci1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjMpO1xuICBjb2xvcjogd2hpdGU7XG59XG5cbi53b3JkbGUtYWN0aW9ucyAuYnRuLW91dGxpbmUtaW5mbzpob3ZlciB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yKTtcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7XG4gIGNvbG9yOiB3aGl0ZTtcbn1cblxuLndvcmRsZS1hY3Rpb25zIC5idG4tc2Vjb25kYXJ5IHtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgIzZjNzU3ZCAwJSwgIzVhNjI2OCAxMDAlKTtcbiAgYm9yZGVyLWNvbG9yOiAjNmM3NTdkO1xuICBjb2xvcjogd2hpdGU7XG59XG5cbi53b3JkbGUtYWN0aW9ucyAuYnRuLXNlY29uZGFyeTpob3ZlciB7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsICM1YTYyNjggMCUsICM0OTUwNTcgMTAwJSk7XG4gIGJvcmRlci1jb2xvcjogIzVhNjI2ODtcbiAgY29sb3I6IHdoaXRlO1xufVxuXG4vKiBTdGF0cyBTZWN0aW9uICovXG4ud29yZGxlLXF1aWNrLXN0YXRzIHtcbiAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpO1xuICBib3JkZXItcmFkaXVzOiAxNXB4O1xuICBwYWRkaW5nOiAxLjVyZW07XG4gIG1hcmdpbi1ib3R0b206IDJyZW07XG4gIGJhY2tkcm9wLWZpbHRlcjogYmx1cigxMHB4KTtcbn1cblxuLnN0YXQtcm93IHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7XG4gIGdhcDogMXJlbTtcbn1cblxuLnN0YXQtaXRlbSB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZmxleDogMTtcbn1cblxuLnN0YXQtaWNvbiB7XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xufVxuXG4uc3RhdC1udW1iZXIge1xuICBmb250LXNpemU6IDEuNXJlbTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNvbG9yOiB3aGl0ZTtcbn1cblxuLnN0YXQtbGFiZWwge1xuICBmb250LXNpemU6IDAuOHJlbTtcbiAgb3BhY2l0eTogMC44O1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLXRvcDogMC4yNXJlbTtcbn1cblxuLyogUmVzcG9uc2l2ZSBEZXNpZ24gKi9cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xuICAud29yZGxlLW1haW4tY2FyZCB7XG4gICAgcGFkZGluZzogMS41cmVtO1xuICAgIG1hcmdpbjogMCAwLjVyZW0gMnJlbSAwLjVyZW07XG4gIH1cbiAgLndvcmRsZS1oZWFkZXIge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGdhcDogMXJlbTtcbiAgfVxuICAud29yZGxlLXRpdGxlIHtcbiAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgfVxuICAud29yZGxlLXN1YnRpdGxlIHtcbiAgICBmb250LXNpemU6IDAuOXJlbTtcbiAgfVxuICAud29yZGxlLWFjdGlvbnMgLmJ0biB7XG4gICAgZm9udC1zaXplOiAwLjlyZW07XG4gICAgcGFkZGluZzogMC43NXJlbTtcbiAgICBtaW4taGVpZ2h0OiA1MHB4O1xuICB9XG4gIC5idG4taWNvbiB7XG4gICAgZm9udC1zaXplOiAxLjJyZW07XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjVyZW07XG4gIH1cbiAgLnN0YXQtcm93IHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGdhcDogMXJlbTtcbiAgfVxuICAuc3RhdC1pdGVtIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgZ2FwOiAwLjVyZW07XG4gIH1cbiAgLnN0YXQtaWNvbiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuICAuc3RhdC1udW1iZXIge1xuICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuICB9XG4gIC5zdGF0LWxhYmVsIHtcbiAgICBmb250LXNpemU6IDAuNzVyZW07XG4gIH1cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA0ODBweCkge1xuICAud29yZGxlLW1haW4tY2FyZCB7XG4gICAgcGFkZGluZzogMXJlbTtcbiAgICBib3JkZXItcmFkaXVzOiAxNXB4O1xuICB9XG4gIC53b3JkbGUtdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMS4zcmVtO1xuICB9XG4gIC53b3JkbGUtc3VidGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMC44NXJlbTtcbiAgfVxuICAud29yZGxlLWFjdGlvbnMgLmJ0biB7XG4gICAgZm9udC1zaXplOiAwLjg1cmVtO1xuICAgIHBhZGRpbmc6IDAuNnJlbTtcbiAgICBtaW4taGVpZ2h0OiA0NXB4O1xuICB9XG4gIC5idG4taWNvbiB7XG4gICAgZm9udC1zaXplOiAxLjFyZW07XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjRyZW07XG4gIH1cbiAgLmNvbXBsZXRpb24tc3RhdHVzIC5iYWRnZSB7XG4gICAgZm9udC1zaXplOiAwLjhyZW07XG4gICAgcGFkZGluZzogMC40cmVtIDAuOHJlbTtcbiAgfVxufVxuLyogQ29udGFpbmVyIGFkanVzdG1lbnRzIGZvciBtb2JpbGUgKi9cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xuICAuY29udGFpbmVyIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNXJlbTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjVyZW07XG4gIH1cbiAgLmNvbC1sZy04LmNvbC1tZC0xMC5jb2wtMTIge1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICB9XG59XG4iXX0= */