@charset "UTF-8";
/* =============================================================
   Tradante â public.css
   Shared styles for all public-facing pages
   Font: Space Grotesk (body) + Bebas Neue (display) + IBM Plex Mono (data)
   Framework: Bootstrap 5.3
   ============================================================= */
:root {
  --font-display: "Bebas Neue", sans-serif;
  --font-mono: "IBM Plex Mono", monospace;
  --font-body: "Space Grotesk", sans-serif;
}

html[data-theme=violet] {
  --bg: #0A0414;
  --bg2: #0E0820;
  --bg3: #130C28;
  --bg4: #1A1035;
  --accent: #8B5CF6;
  --accent2: #6D28D9;
  --accent3: #A78BFA;
  --grad: linear-gradient(135deg, #4C1D95 0%, #7C3AED 45%, #A78BFA 100%);
  --border: rgba(255,255,255,0.07);
  --border-h: rgba(139,92,246,0.4);
  --text: #F0F0F4;
  --text2: rgba(240,240,244,0.6);
  --text3: rgba(240,240,244,0.3);
  --badge: rgba(139,92,246,0.1);
  --glow1: rgba(139,92,246,0.28);
  --glow2: rgba(109,40,217,0.18);
  --accent-rgb: 139, 92, 246;
  --app-bg: #090911;
  --app-surface: #0f0f1a;
  --app-surface2: #141421;
  --app-surface3: #1a1a2e;
  --app-accent: #8B5CF6;
  --app-accent2: #7C3AED;
  --app-accent3: #A78BFA;
  --app-grad: linear-gradient(135deg, #8B5CF6, #A78BFA);
  --app-border: rgba(255,255,255,0.07);
  --app-border-h: rgba(139,92,246,0.35);
  --app-text: rgba(255,255,255,0.92);
  --app-text2: rgba(255,255,255,0.55);
  --app-text3: rgba(255,255,255,0.28);
}

html[data-theme=black] {
  --bg: #04040A;
  --bg2: #08060E;
  --bg3: #0D0A18;
  --bg4: #120E22;
  --accent: #D91AAD;
  --accent2: #8C0F70;
  --accent3: #E83DC0;
  --grad: linear-gradient(135deg, #5C0A48 0%, #9B0F7A 40%, #D91AAD 75%, #E83DC0 100%);
  --border: rgba(255,255,255,0.07);
  --border-h: rgba(217,26,173,0.45);
  --text: #F0F0F4;
  --text2: rgba(240,240,244,0.6);
  --text3: rgba(240,240,244,0.3);
  --badge: rgba(217,26,173,0.1);
  --glow1: rgba(217,26,173,0.22);
  --glow2: rgba(140,15,112,0.18);
  --accent-rgb: 217, 26, 173;
  --app-bg: #04040A;
  --app-surface: #08060E;
  --app-surface2: #0D0A18;
  --app-surface3: #120E22;
  --app-accent: #D91AAD;
  --app-accent2: #8C0F70;
  --app-accent3: #E83DC0;
  --app-grad: linear-gradient(135deg, #D91AAD, #E83DC0);
  --app-border: rgba(255,255,255,0.07);
  --app-border-h: rgba(217,26,173,0.35);
  --app-text: rgba(255,255,255,0.92);
  --app-text2: rgba(255,255,255,0.55);
  --app-text3: rgba(255,255,255,0.28);
}

html[data-theme=blue] {
  --bg: #0D1020;
  --bg2: #121525;
  --bg3: #17192E;
  --bg4: #1C1F38;
  --accent: #4F8EF7;
  --accent2: #1A56DB;
  --accent3: #93BBFD;
  --grad: linear-gradient(135deg, #1A3A8F 0%, #1A56DB 40%, #4F8EF7 75%, #93BBFD 100%);
  --border: rgba(255,255,255,0.07);
  --border-h: rgba(79,142,247,0.45);
  --text: #F0F0F4;
  --text2: rgba(240,240,244,0.6);
  --text3: rgba(240,240,244,0.3);
  --badge: rgba(79,142,247,0.1);
  --glow1: rgba(79,142,247,0.2);
  --glow2: rgba(26,86,219,0.14);
  --accent-rgb: 79, 142, 247;
  --app-bg: #0D1020;
  --app-surface: #121525;
  --app-surface2: #17192E;
  --app-surface3: #1C1F38;
  --app-accent: #4F8EF7;
  --app-accent2: #1A56DB;
  --app-accent3: #93BBFD;
  --app-grad: linear-gradient(135deg, #4F8EF7, #93BBFD);
  --app-border: rgba(255,255,255,0.07);
  --app-border-h: rgba(79,142,247,0.35);
  --app-text: rgba(255,255,255,0.92);
  --app-text2: rgba(255,255,255,0.55);
  --app-text3: rgba(255,255,255,0.28);
}

/* ââ GOOGLE FONTS ââ */
/* ââ THEME VARIABLES ââ */
/* Static vars â never change */
:root {
  --green: #22c55e;
  --red: #ef4444;
  --gold: #F5C518;
  --teal: #06B6D4;
  /* Default to violet so page never flashes unstyled */
  --bg: #0A0414;
  --bg2: #0E0820;
  --bg3: #130C28;
  --bg4: #1A1035;
  --accent: #8B5CF6;
  --accent2: #6D28D9;
  --accent3: #A78BFA;
  --grad: linear-gradient(135deg, #4C1D95 0%, #7C3AED 45%, #A78BFA 100%);
  --border: rgba(255,255,255,0.07);
  --border-h: rgba(139,92,246,0.4);
  --text: #F0F0F4;
  --text2: rgba(240,240,244,0.6);
  --text3: rgba(240,240,244,0.3);
  --badge: rgba(139,92,246,0.1);
  --nav-bg: rgba(10,4,20,0.92);
  --card-bg: rgba(19,12,40,0.95);
  --glow1: rgba(139,92,246,0.28);
  --glow2: rgba(109,40,217,0.18);
  --grid-color: rgba(139,92,246,0.14);
  --w05: rgba(255,255,255,0.05);
  --w08: rgba(255,255,255,0.08);
  --w12: rgba(255,255,255,0.12);
  --w20: rgba(255,255,255,0.20);
  --w40: rgba(255,255,255,0.40);
  --w60: rgba(255,255,255,0.60);
}

/* VIOLET THEME â explicit, same as :root defaults */
html[data-theme=violet] {
  --bg: #0A0414;
  --bg2: #0E0820;
  --bg3: #130C28;
  --bg4: #1A1035;
  --accent: #8B5CF6;
  --accent2: #6D28D9;
  --accent3: #A78BFA;
  --grad: linear-gradient(135deg, #4C1D95 0%, #7C3AED 45%, #A78BFA 100%);
  --border: rgba(255,255,255,0.07);
  --border-h: rgba(139,92,246,0.4);
  --text: #F0F0F4;
  --text2: rgba(240,240,244,0.6);
  --text3: rgba(240,240,244,0.3);
  --badge: rgba(139,92,246,0.1);
  --nav-bg: rgba(10,4,20,0.92);
  --card-bg: rgba(19,12,40,0.95);
  --glow1: rgba(139,92,246,0.28);
  --glow2: rgba(109,40,217,0.18);
  --grid-color: rgba(139,92,246,0.14);
}

/* BLACK THEME â overrides everything above */
html[data-theme=black] {
  --bg: #04040A;
  --bg2: #08060E;
  --bg3: #0D0A18;
  --bg4: #120E22;
  --accent: #D91AAD;
  --accent2: #8C0F70;
  --accent3: #E83DC0;
  --grad: linear-gradient(135deg, #5C0A48 0%, #9B0F7A 40%, #D91AAD 75%, #E83DC0 100%);
  --border: rgba(255,255,255,0.07);
  --border-h: rgba(217,26,173,0.45);
  --text: #F0F0F4;
  --text2: rgba(240,240,244,0.6);
  --text3: rgba(240,240,244,0.3);
  --badge: rgba(217,26,173,0.1);
  --nav-bg: rgba(4,4,10,0.92);
  --card-bg: rgba(13,10,24,0.95);
  --glow1: rgba(217,26,173,0.22);
  --glow2: rgba(140,15,112,0.18);
  --grid-color: rgba(217,26,173,0.12);
  --w05: rgba(255,255,255,0.05);
  --w08: rgba(255,255,255,0.08);
  --w12: rgba(255,255,255,0.12);
  --w20: rgba(255,255,255,0.20);
  --w40: rgba(255,255,255,0.40);
  --w60: rgba(255,255,255,0.60);
}

/* BLUE THEME â navy to sky, matches existing live app */
html[data-theme=blue] {
  --bg: #0D1020;
  --bg2: #121525;
  --bg3: #17192E;
  --bg4: #1C1F38;
  --accent: #4F8EF7;
  --accent2: #1A56DB;
  --accent3: #93BBFD;
  --grad: linear-gradient(135deg, #1A3A8F 0%, #1A56DB 40%, #4F8EF7 75%, #93BBFD 100%);
  --border: rgba(255,255,255,0.07);
  --border-h: rgba(79,142,247,0.45);
  --text: #F0F0F4;
  --text2: rgba(240,240,244,0.6);
  --text3: rgba(240,240,244,0.3);
  --badge: rgba(79,142,247,0.1);
  --nav-bg: rgba(13,16,32,0.92);
  --card-bg: rgba(23,25,46,0.95);
  --glow1: rgba(79,142,247,0.2);
  --glow2: rgba(26,86,219,0.14);
  --grid-color: rgba(79,142,247,0.12);
}

/* VIOLET THEME handled above in html[data-theme="violet"] */
/* This block intentionally removed â keeping only for legacy */
html[data-theme=violet-legacy] {
  --bg: #0A0414;
  --bg2: #0E0820;
  --bg3: #130C28;
  --bg4: #1A1035;
  --accent: #8B5CF6;
  --accent2: #6D28D9;
  --accent3: #A78BFA;
  --grad: linear-gradient(135deg, #4C1D95 0%, #7C3AED 45%, #A78BFA 100%);
  --border: rgba(255,255,255,0.07);
  --border-h: rgba(139,92,246,0.4);
  --text: #F0F0F4;
  --text2: rgba(240,240,244,0.6);
  --text3: rgba(240,240,244,0.3);
  --badge: rgba(139,92,246,0.1);
  --nav-bg: rgba(10,4,20,0.92);
  --card-bg: rgba(19,12,40,0.95);
  --glow1: rgba(139,92,246,0.28);
  --glow2: rgba(109,40,217,0.18);
  --grid-color: rgba(139,92,246,0.14);
  --w05: rgba(255,255,255,0.05);
  --w08: rgba(255,255,255,0.08);
  --w12: rgba(255,255,255,0.12);
  --w20: rgba(255,255,255,0.20);
  --w40: rgba(255,255,255,0.40);
  --w60: rgba(255,255,255,0.60);
}

/* ââ BASE ââ */
html {
  height: 100%;
  background: var(--bg);
}

body {
  font-family: var(--font-body);
  background: var(--bg);
  color: var(--text);
  -webkit-font-smoothing: antialiased;
  min-height: 100vh;
}

::-webkit-scrollbar {
  width: 4px;
  height: 4px;
}

::-webkit-scrollbar-track {
  background: var(--bg2);
}

::-webkit-scrollbar-thumb {
  background: var(--accent2);
  border-radius: 2px;
}

/* ââ BACKGROUND EFFECTS ââ */
.tr-bg-glow {
  position: fixed;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  background: radial-gradient(ellipse 80% 70% at 50% -5%, var(--glow1) 0%, transparent 60%), radial-gradient(ellipse 55% 50% at 5% 90%, var(--glow2) 0%, transparent 55%), radial-gradient(ellipse 45% 45% at 95% 85%, rgba(196, 181, 253, 0.06) 0%, transparent 55%);
}

.tr-bg-grid {
  position: fixed;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  background-image: linear-gradient(var(--grid-color) 1px, transparent 1px), linear-gradient(90deg, var(--grid-color) 1px, transparent 1px);
  background-size: 60px 60px;
  mask-image: radial-gradient(ellipse 100% 100% at 50% 50%, black 20%, transparent 78%);
  -webkit-mask-image: radial-gradient(ellipse 100% 100% at 50% 50%, black 20%, transparent 78%);
}

/* Animated travel dots along grid lines */
.tr-bg-grid::before {
  content: "";
  position: fixed;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  background-image: radial-gradient(circle 3px at 0 0, var(--accent) 0%, transparent 60%);
  background-size: 60px 60px;
  mask-image: radial-gradient(ellipse 100% 100% at 50% 50%, black 20%, transparent 78%);
  -webkit-mask-image: radial-gradient(ellipse 100% 100% at 50% 50%, black 20%, transparent 78%);
  animation: grid-travel-h 2s linear infinite;
  opacity: 0.7;
}

.tr-bg-grid::after {
  content: "";
  position: fixed;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  background-image: radial-gradient(circle 3px at 0 0, var(--accent) 0%, transparent 60%);
  background-size: 60px 60px;
  mask-image: radial-gradient(ellipse 100% 100% at 50% 50%, black 20%, transparent 78%);
  -webkit-mask-image: radial-gradient(ellipse 100% 100% at 50% 50%, black 20%, transparent 78%);
  animation: grid-travel-v 2s linear infinite;
  opacity: 0.7;
}

@keyframes grid-travel-h {
  from {
    background-position: 0 0;
  }
  to {
    background-position: 60px 0;
  }
}
@keyframes grid-travel-v {
  from {
    background-position: 0 0;
  }
  to {
    background-position: 0 60px;
  }
}
/* Video background with blur/fade effect */
.tr-bg-video {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: -1;
  overflow: hidden;
  pointer-events: none;
}

.tr-bg-video video {
  position: absolute;
  top: 50%;
  left: 50%;
  min-width: 100%;
  min-height: 100%;
  width: auto;
  height: auto;
  transform: translate(-50%, -50%);
  filter: blur(8px) brightness(0.3) saturate(1.2);
  opacity: 0.4;
  -o-object-fit: cover;
     object-fit: cover;
}

.tr-bg-video::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg, var(--bg) 0%, transparent 40%, transparent 60%, var(--bg) 100%), radial-gradient(ellipse 100% 80% at 50% 20%, transparent 0%, var(--bg) 70%), radial-gradient(ellipse 60% 60% at 50% 100%, rgba(0, 0, 0, 0.8) 0%, transparent 60%);
  z-index: 1;
}

/* ââ NAVBAR ââ */
.tr-navbar {
  background: var(--nav-bg) !important;
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
  border-bottom: 1px solid var(--border);
  padding: 0.6rem 1.5rem;
  transition: background 0.35s, border-color 0.35s;
}

.tr-navbar .navbar-brand {
  display: flex;
  align-items: center;
  gap: 10px;
  text-decoration: none;
}

.tr-navbar .brand-logo {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  border: 1.5px solid var(--accent);
  box-shadow: 0 0 10px rgba(139, 92, 246, 0.3);
  -o-object-fit: cover;
     object-fit: cover;
}

.tr-navbar .brand-name {
  font-family: var(--font-display);
  font-size: 20px;
  letter-spacing: 4px;
  color: var(--text);
}

.tr-navbar .nav-link {
  font-family: var(--font-mono);
  font-size: 10px;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  color: var(--text3) !important;
  transition: color 0.2s;
  padding: 0.4rem 0.8rem;
}

.tr-navbar .nav-link:hover,
.tr-navbar .nav-link.active {
  color: var(--accent) !important;
}

.tr-navbar .navbar-toggler {
  border-color: var(--border);
  padding: 4px 8px;
}

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

.tr-navbar .navbar-collapse {
  padding: 0.5rem 0;
}

/* Theme switcher in nav - dropdown version */
.tr-theme-switch {
  position: relative;
  display: inline-block;
}

.tr-theme-dropdown {
  background: var(--bg3);
  border: 1px solid var(--border);
  border-radius: 10px;
  padding: 8px 12px;
  cursor: pointer;
  display: flex;
  align-items: center;
  gap: 8px;
  color: var(--text2);
  font-family: var(--font-mono);
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 1px;
  text-transform: uppercase;
  transition: all 0.2s;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  min-width: 100px;
}

.tr-theme-dropdown:hover {
  border-color: var(--border-h);
  background: var(--bg4);
  color: var(--text);
}

.tr-theme-dropdown::after {
  content: "â¼";
  font-size: 8px;
  margin-left: auto;
  transition: transform 0.2s;
}

.tr-theme-dropdown.open::after {
  transform: rotate(180deg);
}

.tr-theme-icon {
  width: 12px;
  height: 12px;
  border-radius: 3px;
  flex-shrink: 0;
}

.tr-theme-menu {
  position: absolute;
  top: calc(100% + 8px);
  left: 0;
  right: 0;
  background: var(--bg3);
  border: 1px solid var(--border);
  border-radius: 10px;
  overflow: hidden;
  opacity: 0;
  visibility: hidden;
  transform: translateY(-10px);
  transition: all 0.2s;
  z-index: 1000;
  -webkit-backdrop-filter: blur(20px);
          backdrop-filter: blur(20px);
}

.tr-theme-menu.open {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}

.tr-theme-option {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 10px 12px;
  cursor: pointer;
  color: var(--text3);
  font-family: var(--font-mono);
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 1px;
  text-transform: uppercase;
  transition: all 0.2s;
  border-bottom: 1px solid var(--border);
}

.tr-theme-option:last-child {
  border-bottom: none;
}

.tr-theme-option:hover {
  background: var(--bg4);
  color: var(--text2);
}

.tr-theme-option.active {
  background: linear-gradient(135deg, var(--accent2), var(--accent));
  color: #fff;
}

.tr-theme-option .tr-theme-icon {
  width: 16px;
  height: 16px;
  border-radius: 4px;
}

/* ââ AUTH SPLIT LAYOUT ââ */
.tr-auth-wrap {
  min-height: 100vh;
  display: flex;
  align-items: stretch;
  position: relative;
  z-index: 1;
}

.tr-auth-left {
  background: linear-gradient(145deg, var(--bg2), var(--bg3));
  border-right: 1px solid var(--border);
  padding: 3rem 2.5rem;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

.tr-auth-right {
  background: var(--card-bg);
  -webkit-backdrop-filter: blur(20px);
          backdrop-filter: blur(20px);
  padding: 3rem 2.5rem;
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-height: 100vh;
}

@media (max-width: 767.98px) {
  .tr-auth-left {
    display: none;
  }
  .tr-auth-right {
    padding: 2rem 1.5rem;
  }
}
/* ââ LEFT PANEL ââ */
.tr-left-tag {
  font-family: var(--font-mono);
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 3px;
  text-transform: uppercase;
  color: var(--accent);
  margin-bottom: 1rem;
  display: flex;
  align-items: center;
  gap: 8px;
}

.tr-left-tag::before {
  content: "";
  width: 16px;
  height: 1px;
  background: var(--accent);
}

.tr-left-h {
  font-family: var(--font-display);
  font-size: clamp(40px, 5vw, 60px);
  letter-spacing: 2px;
  line-height: 0.95;
  color: #fff;
  margin-bottom: 1rem;
}

.tr-left-h em {
  font-style: normal;
  background: var(--grad);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

.tr-left-sub {
  font-size: 13px;
  color: var(--text2);
  line-height: 1.7;
  margin-bottom: 1.5rem;
}

.tr-perk {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  padding: 12px;
  background: var(--w05);
  border: 1px solid var(--w08);
  border-radius: 10px;
  margin-bottom: 10px;
  transition: all 0.2s;
}

.tr-perk:hover {
  background: rgba(139, 92, 246, 0.08);
  border-color: var(--border-h);
}

.tr-perk-icon {
  width: 34px;
  height: 34px;
  border-radius: 8px;
  flex-shrink: 0;
  background: linear-gradient(135deg, var(--accent2), var(--accent));
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 16px;
}

.tr-perk-title {
  font-family: var(--font-display);
  font-size: 15px;
  letter-spacing: 1px;
  color: #fff;
  margin-bottom: 2px;
}

.tr-perk-desc {
  font-size: 11px;
  color: var(--text3);
  line-height: 1.5;
}

/* ââ FORM PANEL ââ */
.tr-form-top-bar {
  height: 3px;
  background: var(--grad);
  border-radius: 2px;
  margin-bottom: 1.5rem;
}

.tr-form-title {
  font-family: var(--font-display);
  font-size: 30px;
  letter-spacing: 2px;
  color: #fff;
  margin-bottom: 4px;
  line-height: 1;
}

.tr-form-sub {
  font-size: 12px;
  color: var(--text3);
  line-height: 1.6;
  margin-bottom: 1.5rem;
}

.tr-form-sub strong {
  color: var(--accent);
  font-weight: 600;
}

/* ââ FORM ELEMENTS ââ */
.tr-label {
  font-family: var(--font-mono);
  font-size: 9px;
  font-weight: 600;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: var(--text3);
  margin-bottom: 5px;
}

.tr-input {
  background: var(--w05);
  border: 1px solid var(--w12);
  border-radius: 10px;
  padding: 11px 14px;
  font-family: var(--font-body);
  font-size: 13px;
  color: #fff;
  outline: none;
  transition: all 0.25s;
  width: 100%;
}

.tr-input::-moz-placeholder {
  color: var(--w20);
}

.tr-input::placeholder {
  color: var(--w20);
}

.tr-input:focus {
  border-color: rgba(139, 92, 246, 0.5);
  background: rgba(139, 92, 246, 0.04);
  box-shadow: 0 0 0 3px rgba(139, 92, 246, 0.12);
  outline: none;
}

.tr-input.is-invalid {
  border-color: rgba(239, 68, 68, 0.6);
}

.tr-input.is-valid {
  border-color: rgba(34, 197, 94, 0.5);
}

.tr-select {
  background: var(--w05);
  border: 1px solid var(--w12);
  border-radius: 10px;
  padding: 11px 14px;
  font-family: var(--font-body);
  font-size: 13px;
  color: #fff;
  outline: none;
  transition: all 0.25s;
  width: 100%;
  cursor: pointer;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='rgba(255,255,255,0.3)' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 14px center;
}

.tr-select:focus {
  border-color: rgba(139, 92, 246, 0.5);
  box-shadow: 0 0 0 3px rgba(139, 92, 246, 0.12);
}

.tr-select option {
  background: #111;
  color: #fff;
}

.tr-pass-wrap {
  position: relative;
}

.tr-pass-toggle {
  position: absolute;
  right: 12px;
  top: 50%;
  transform: translateY(-50%);
  background: none;
  border: none;
  color: var(--text3);
  cursor: pointer;
  font-size: 14px;
  padding: 0;
  transition: color 0.2s;
}

.tr-pass-toggle:hover {
  color: #fff;
}

.tr-invalid-feedback {
  font-family: var(--font-mono);
  font-size: 10px;
  letter-spacing: 1px;
  color: rgba(239, 68, 68, 0.8);
  margin-top: 4px;
  min-height: 14px;
  display: block;
}

/* ââ BUTTONS ââ */
.tr-btn-primary {
  width: 100%;
  font-family: var(--font-display);
  font-size: 18px;
  letter-spacing: 3px;
  color: #000;
  border: none;
  cursor: pointer;
  padding: 13px 20px;
  border-radius: 12px;
  background: var(--grad);
  transition: all 0.25s;
  box-shadow: 0 6px 22px rgba(139, 92, 246, 0.4);
}

.tr-btn-primary:hover {
  transform: translateY(-2px);
  box-shadow: 0 12px 34px rgba(139, 92, 246, 0.6);
}

.tr-btn-primary:active {
  transform: translateY(0);
}

.tr-btn-primary.loading {
  pointer-events: none;
  opacity: 0.7;
}

.tr-btn-outline {
  width: 100%;
  font-family: var(--font-display);
  font-size: 17px;
  letter-spacing: 3px;
  color: var(--accent3);
  border: 1px solid rgba(139, 92, 246, 0.3);
  cursor: pointer;
  padding: 12px 20px;
  border-radius: 12px;
  background: transparent;
  transition: all 0.25s;
}

.tr-btn-outline:hover {
  background: rgba(139, 92, 246, 0.08);
  border-color: rgba(139, 92, 246, 0.55);
  transform: translateY(-1px);
}

/* ââ STEPS BAR ââ */
.tr-steps {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 1.5rem;
}

.tr-step-item {
  display: flex;
  align-items: center;
  gap: 6px;
}

.tr-step-num {
  width: 24px;
  height: 24px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: var(--font-display);
  font-size: 13px;
  flex-shrink: 0;
}

.tr-step-num.active {
  background: var(--grad);
  color: #000;
}

.tr-step-num.done {
  background: rgba(34, 197, 94, 0.15);
  border: 1px solid rgba(34, 197, 94, 0.35);
  color: #22c55e;
}

.tr-step-num.idle {
  background: var(--w05);
  border: 1px solid var(--w12);
  color: var(--text3);
}

.tr-step-label {
  font-family: var(--font-mono);
  font-size: 9px;
  letter-spacing: 1.5px;
  text-transform: uppercase;
}

.tr-step-label.active {
  color: #fff;
}

.tr-step-label.idle {
  color: var(--text3);
}

.tr-step-arrow {
  color: var(--text3);
  font-size: 12px;
  margin: 0 2px;
}

/* ââ DIVIDERS ââ */
.tr-sep {
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 1rem 0;
}

.tr-sep::before, .tr-sep::after {
  content: "";
  flex: 1;
  height: 1px;
  background: var(--w08);
}

.tr-sep span {
  font-family: var(--font-mono);
  font-size: 9px;
  letter-spacing: 2px;
  color: var(--w20);
  text-transform: uppercase;
  white-space: nowrap;
}

.tr-grad-line {
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(139, 92, 246, 0.35), transparent);
  margin: 1rem 0;
}

/* ââ BADGES / PILLS ââ */
.tr-badge {
  font-family: var(--font-mono);
  font-size: 9px;
  font-weight: 600;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  padding: 4px 10px;
  border-radius: 6px;
  display: inline-block;
}

.tr-badge-accent {
  background: var(--badge);
  border: 1px solid var(--border-h);
  color: var(--accent3);
}

.tr-badge-green {
  background: rgba(34, 197, 94, 0.1);
  border: 1px solid rgba(34, 197, 94, 0.25);
  color: #22c55e;
}

.tr-badge-red {
  background: rgba(239, 68, 68, 0.1);
  border: 1px solid rgba(239, 68, 68, 0.25);
  color: #ef4444;
}

.tr-badge-gold {
  background: rgba(245, 197, 24, 0.1);
  border: 1px solid rgba(245, 197, 24, 0.25);
  color: #F5C518;
}

/* ââ OTP / 2FA INPUTS ââ */
.tr-otp-wrap {
  display: flex;
  gap: 8px;
  justify-content: center;
  margin: 1rem 0;
}

.tr-otp-input {
  width: 48px;
  height: 56px;
  text-align: center;
  font-family: var(--font-mono);
  font-size: 22px;
  font-weight: 600;
  color: #fff;
  background: var(--w05);
  border: 1px solid var(--w12);
  border-radius: 10px;
  outline: none;
  transition: all 0.25s;
  caret-color: var(--accent);
}

.tr-otp-input:focus {
  border-color: var(--accent);
  box-shadow: 0 0 0 3px var(--badge);
}

@media (max-width: 375px) {
  .tr-otp-input {
    width: 38px;
    height: 48px;
    font-size: 18px;
  }
  .tr-otp-wrap {
    gap: 5px;
  }
}
/* ââ METHOD SELECTION (forgot password) ââ */
.tr-method-box {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  padding: 14px 16px;
  background: var(--w05);
  border: 1px solid var(--w08);
  border-radius: 12px;
  margin-bottom: 10px;
  cursor: pointer;
  transition: all 0.2s;
}

.tr-method-box:hover,
.tr-method-box.selected {
  background: rgba(139, 92, 246, 0.08);
  border-color: var(--border-h);
}

.tr-method-icon {
  width: 38px;
  height: 38px;
  border-radius: 10px;
  flex-shrink: 0;
  background: var(--w08);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 18px;
  transition: background 0.2s;
}

.tr-method-box.selected .tr-method-icon {
  background: var(--grad);
}

.tr-method-title {
  font-family: var(--font-display);
  font-size: 16px;
  letter-spacing: 1px;
  color: #fff;
  margin-bottom: 2px;
}

.tr-method-desc {
  font-size: 11px;
  color: var(--text3);
  line-height: 1.4;
}

/* ââ CARD / PANEL ââ */
.tr-card {
  background: var(--card-bg);
  border: 1px solid var(--border);
  border-radius: 14px;
  transition: border-color 0.2s, box-shadow 0.2s;
}

.tr-card:hover {
  border-color: var(--border-h);
}

.tr-card-header {
  padding: 0.9rem 1.1rem;
  border-bottom: 1px solid var(--border);
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.tr-card-label {
  font-family: var(--font-mono);
  font-size: 9px;
  font-weight: 600;
  letter-spacing: 2.5px;
  text-transform: uppercase;
  color: var(--text3);
}

/* ââ LINKS ââ */
.tr-link {
  color: var(--accent);
  text-decoration: none;
  font-weight: 600;
  transition: opacity 0.2s;
}

.tr-link:hover {
  opacity: 0.8;
  text-decoration: underline;
}

.tr-link-muted {
  font-family: var(--font-mono);
  font-size: 10px;
  letter-spacing: 1px;
  text-transform: uppercase;
  color: var(--text3);
  text-decoration: none;
  transition: color 0.2s;
}

.tr-link-muted:hover {
  color: var(--accent);
}

/* ââ TERMS ââ */
.tr-terms {
  font-size: 11px;
  color: var(--text3);
  line-height: 1.6;
  margin-bottom: 1rem;
}

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

/* ââ ANIMATIONS ââ */
@keyframes tr-fadeUp {
  from {
    opacity: 0;
    transform: translateY(16px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes tr-pulse {
  0%, 100% {
    opacity: 1;
    transform: scale(1);
  }
  50% {
    opacity: 0.5;
    transform: scale(0.8);
  }
}
@keyframes tr-shake {
  0%, 100% {
    transform: translateX(0);
  }
  20% {
    transform: translateX(-7px);
  }
  40% {
    transform: translateX(7px);
  }
  60% {
    transform: translateX(-4px);
  }
  80% {
    transform: translateX(4px);
  }
}
.tr-anim-fade {
  animation: tr-fadeUp 0.5s ease both;
}

/* ââ RESPONSIVE UTILITIES ââ */
@media (max-width: 575.98px) {
  .tr-form-title {
    font-size: 26px;
  }
  .tr-btn-primary, .tr-btn-outline {
    font-size: 16px;
    padding: 12px 16px;
  }
}
/* ââ FOOTER (public pages) ââ */
.tr-public-footer {
  background: var(--bg2);
  border-top: 1px solid var(--border);
  padding: 2rem 1.5rem 1.5rem;
  margin-top: auto;
  position: relative;
  z-index: 1;
}

.tr-footer-wordmark {
  font-family: var(--font-display);
  font-size: 16px;
  letter-spacing: 4px;
  color: #fff;
}

.tr-footer-hash {
  font-family: var(--font-display);
  font-size: 12px;
  letter-spacing: 3px;
  background: var(--grad);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

.tr-footer-links a {
  font-family: var(--font-mono);
  font-size: 10px;
  letter-spacing: 1px;
  text-transform: uppercase;
  color: var(--text3);
  text-decoration: none;
  transition: color 0.2s;
  margin: 0 10px;
}

.tr-footer-links a:hover {
  color: var(--accent);
}

.tr-footer-copy {
  font-family: var(--font-mono);
  font-size: 10px;
  color: var(--text3);
  letter-spacing: 0.5px;
}

/* == Home page component classes == */
/* Section layouts */
.tr-section-bg {
  padding: 100px 0;
  background: var(--bg);
}

.tr-section-bg2 {
  padding: 100px 0;
  background: var(--bg2);
}

.tr-hero {
  min-height: 100vh;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  padding: 120px 16px 80px;
}

.tr-cta-section {
  padding: 120px 0;
  text-align: center;
  position: relative;
  overflow: hidden;
}

.tr-nav-transparent {
  background: transparent !important;
  border-bottom-color: transparent !important;
}

.tr-nav-transparent.scrolled {
  background: var(--nav-bg) !important;
  border-bottom-color: var(--border) !important;
}

.tr-cta-watermark {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  pointer-events: none;
  overflow: hidden;
}

.tr-cta-watermark span {
  font-family: var(--font-display);
  font-size: clamp(80px, 16vw, 200px);
  letter-spacing: 20px;
  color: var(--text);
  opacity: 0.03;
  white-space: nowrap;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
}

.tr-cta-title {
  font-family: var(--font-display);
  font-size: clamp(48px, 7vw, 88px);
  letter-spacing: 2px;
  line-height: 0.9;
  color: var(--text);
  margin-bottom: 20px;
}

.tr-cta-title em {
  font-style: normal;
  background: var(--grad);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

/* Section typography */
.tr-section-tag {
  font-family: var(--font-mono);
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 4px;
  text-transform: uppercase;
  color: var(--accent);
  margin-bottom: 12px;
}

.tr-section-title {
  font-family: var(--font-display);
  font-size: clamp(44px, 6vw, 68px);
  letter-spacing: 2px;
  line-height: 0.92;
  color: var(--text);
}

.tr-section-title em {
  font-style: normal;
  background: var(--grad);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

.tr-section-title-lg {
  font-family: var(--font-display);
  font-size: clamp(44px, 7vw, 80px);
  letter-spacing: 2px;
  line-height: 0.9;
  color: var(--text);
  margin-bottom: 24px;
}

.tr-section-title-lg em {
  font-style: normal;
  background: var(--grad);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

.tr-section-title-xl {
  font-family: var(--font-display);
  font-size: clamp(44px, 10vw, 120px);
  letter-spacing: 3px;
  line-height: 0.88;
  margin-bottom: 18px;
}

.tr-section-title-xl span {
  display: block;
}

.tr-section-title-xl .tr-title-plain {
  color: var(--text);
}

.tr-section-title-xl .tr-title-grad {
  background: var(--grad);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

.tr-section-sub {
  font-size: 15px;
  color: var(--text2);
  line-height: 1.8;
}

.tr-section-sub-muted {
  font-size: 14px;
  color: var(--text3);
  line-height: 1.6;
}

.tr-grad-text {
  background: var(--grad);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  font-style: normal;
}

/* Hero */
.tr-hero-title {
  font-family: var(--font-display);
  font-size: clamp(72px, 13vw, 140px);
  line-height: 0.88;
  letter-spacing: 3px;
  margin-bottom: 8px;
}

.tr-hero-title span {
  display: block;
}

.tr-hero-title .tr-title-plain {
  color: var(--text);
}

.tr-hero-title .tr-title-grad {
  background: var(--grad);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

.tr-hero-title .tr-title-muted {
  color: var(--w12);
  font-size: clamp(52px, 9vw, 96px);
  letter-spacing: 10px;
}

.tr-hero-sub {
  font-size: 15px;
  font-weight: 300;
  color: var(--text2);
  line-height: 1.75;
}

.tr-hero-sub strong {
  color: var(--text);
  font-weight: 600;
}

.tr-hero-badge {
  background: rgba(139, 92, 246, 0.1);
  border: 1px solid rgba(139, 92, 246, 0.25);
}

.tr-badge-text {
  font-family: var(--font-mono);
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 3px;
  text-transform: uppercase;
  color: var(--accent);
}

.tr-pulse-dot {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--accent);
  box-shadow: 0 0 8px var(--accent);
  display: inline-block;
  animation: tr-pulse 1.5s ease-in-out infinite;
}

.tr-pulse-dot-green {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--green);
  box-shadow: 0 0 6px var(--green);
  display: inline-block;
  animation: tr-pulse 1.5s ease-in-out infinite;
}

/* Hero stats grid */
.tr-stats-grid {
  max-width: 700px;
  border: 1px solid var(--border);
  border-radius: 14px;
  overflow: hidden;
  background: var(--w05);
}

.tr-stats-col-bordered {
  border-right: 1px solid var(--border);
}

.tr-stat-value {
  font-family: var(--font-display);
  font-size: 28px;
  background: var(--grad);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

.tr-stat-label {
  font-family: var(--font-mono);
  font-size: 8px;
  letter-spacing: 2px;
  color: var(--text3);
  text-transform: uppercase;
}

/* Feature cards */
.tr-feature-icon {
  width: 38px;
  height: 38px;
  border-radius: 10px;
  background: var(--w05);
  border: 1px solid var(--border);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 17px;
  margin-bottom: 12px;
}

.tr-feature-num {
  font-family: var(--font-mono);
  font-size: 9px;
  letter-spacing: 2px;
  color: var(--text3);
  text-transform: uppercase;
  margin-bottom: 4px;
}

.tr-feature-title {
  font-family: var(--font-display);
  font-size: 20px;
  letter-spacing: 1px;
  color: var(--text);
  margin-bottom: 5px;
}

.tr-feature-desc {
  font-size: 12px;
  color: var(--text3);
  line-height: 1.6;
}

/* Feature list (about section) */
.tr-feature-list {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.tr-feature-item {
  display: flex;
  align-items: flex-start;
  gap: 14px;
  padding: 16px;
  background: var(--w05);
  border: 1px solid var(--border);
  border-radius: 12px;
}

.tr-feature-item-icon {
  width: 40px;
  height: 40px;
  border-radius: 10px;
  background: var(--grad);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 18px;
  flex-shrink: 0;
}

.tr-feature-item-title {
  font-family: var(--font-display);
  font-size: 17px;
  letter-spacing: 1px;
  color: var(--text);
  margin-bottom: 3px;
}

.tr-feature-item-desc {
  font-size: 12px;
  color: var(--text3);
  line-height: 1.6;
}

/* Quote box */
.tr-quote-box {
  background: var(--card-bg);
  border: 1px solid var(--border);
  border-radius: 20px;
  padding: 36px;
  position: relative;
  overflow: hidden;
}

.tr-grad-bar {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 3px;
  background: var(--grad);
}

.tr-quote-label {
  font-family: var(--font-mono);
  font-size: 9px;
  letter-spacing: 3px;
  text-transform: uppercase;
  color: var(--text3);
  margin-bottom: 20px;
}

.tr-blockquote {
  font-size: 15px;
  line-height: 1.8;
  color: var(--text2);
  margin: 0 0 24px;
  font-style: italic;
}

.tr-author {
  display: flex;
  align-items: center;
  gap: 12px;
}

.tr-author-avatar {
  width: 44px;
  height: 44px;
  border-radius: 50%;
  background: var(--grad);
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: var(--font-display);
  font-size: 20px;
  color: #000;
  flex-shrink: 0;
}

.tr-author-name {
  font-family: var(--font-display);
  font-size: 16px;
  letter-spacing: 1px;
  color: var(--text);
}

.tr-author-title {
  font-family: var(--font-mono);
  font-size: 9px;
  letter-spacing: 2px;
  color: var(--text3);
  text-transform: uppercase;
}

.tr-quote-stats {
  margin-top: 28px;
  padding-top: 24px;
  border-top: 1px solid var(--border);
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 16px;
}

.tr-mini-stat-value {
  font-family: var(--font-display);
  font-size: 30px;
  background: var(--grad);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

.tr-mini-stat-label {
  font-family: var(--font-mono);
  font-size: 8px;
  letter-spacing: 1.5px;
  color: var(--text3);
  text-transform: uppercase;
  margin-top: 2px;
}

/* Challenge cards */
.tr-challenge-header {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  margin-bottom: 24px;
}

.tr-card-type-label {
  font-family: var(--font-mono);
  font-size: 9px;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: var(--text3);
  margin-bottom: 6px;
}

.tr-card-type-label-accent {
  font-family: var(--font-mono);
  font-size: 9px;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: var(--accent);
  margin-bottom: 6px;
}

.tr-challenge-plan {
  font-family: var(--font-display);
  font-size: 32px;
  letter-spacing: 2px;
  color: var(--text);
}

.tr-check-list {
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin-bottom: 28px;
}

.tr-check-item {
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: 12px;
  color: var(--text2);
}

.tr-check-item-muted {
  color: var(--text3);
}

.tr-check-ok {
  color: var(--green);
}

.tr-check-no {
  color: var(--text3);
}

/* Token stats */
.tr-token-stat {
  background: var(--w05);
  border: 1px solid var(--border);
  border-radius: 12px;
  padding: 18px;
  text-align: center;
}

.tr-token-stat-value {
  font-family: var(--font-display);
  font-size: 26px;
  background: var(--grad);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

.tr-token-stat-label {
  font-family: var(--font-mono);
  font-size: 8px;
  letter-spacing: 2px;
  color: var(--text3);
  text-transform: uppercase;
  margin-top: 4px;
}

/* Gamification */
.tr-gamify-icon {
  font-size: 36px;
  margin-bottom: 12px;
}

.tr-gamify-title {
  font-family: var(--font-display);
  font-size: 22px;
  letter-spacing: 1px;
  color: var(--text);
  margin-bottom: 6px;
}

.tr-gamify-desc {
  font-size: 12px;
  color: var(--text3);
  line-height: 1.6;
}

.tr-how-step-title {
  font-family: var(--font-display);
  font-size: 20px;
  letter-spacing: 1px;
  color: var(--text);
  margin-bottom: 8px;
}

.tr-how-step-desc {
  font-size: 12px;
  color: var(--text3);
  line-height: 1.7;
}

/* Leaderboard */
.tr-lb-header {
  display: grid;
  grid-template-columns: 32px 1fr 80px 80px;
  gap: 12px;
  padding: 6px 14px;
  margin-bottom: 6px;
}

.tr-lb-header-cell {
  font-family: var(--font-mono);
  font-size: 8px;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: var(--text3);
}

.tr-lb-header-cell-r {
  text-align: right;
}

.tr-lb-rank {
  font-family: var(--font-display);
  font-size: 16px;
  color: var(--text3);
}

.tr-lb-rank-gold {
  font-family: var(--font-display);
  font-size: 16px;
  color: var(--gold);
}

.tr-lb-trader {
  display: flex;
  align-items: center;
  gap: 8px;
}

.tr-lb-avatar {
  width: 28px;
  height: 28px;
  border-radius: 50%;
  background: var(--grad);
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: var(--font-display);
  font-size: 13px;
  color: #000;
  flex-shrink: 0;
}

.tr-lb-avatar-blue {
  background: linear-gradient(135deg, #1A56DB, #4F8EF7);
  color: #fff;
}

.tr-lb-avatar-pink {
  background: linear-gradient(135deg, #D91AAD, #E83DC0);
  color: #fff;
}

.tr-lb-avatar-green {
  background: linear-gradient(135deg, #22c55e, #16a34a);
  color: #fff;
}

.tr-lb-avatar-gold {
  background: linear-gradient(135deg, #F5C518, #d97706);
  color: #000;
}

.tr-lb-name {
  font-size: 13px;
  color: var(--text);
}

.tr-lb-level {
  font-family: var(--font-mono);
  font-size: 8px;
  color: var(--text3);
}

.tr-lb-value {
  font-family: var(--font-display);
  font-size: 16px;
  color: var(--text);
  text-align: right;
}

.tr-lb-winrate {
  font-family: var(--font-mono);
  font-size: 11px;
  color: var(--green);
  text-align: right;
}

.tr-lb-link {
  font-family: var(--font-mono);
  font-size: 10px;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: var(--accent);
  text-decoration: none;
}

/* Payout box */
.tr-payout-box {
  background: var(--card-bg);
  border: 1px solid var(--border-h);
  border-radius: 18px;
  padding: 28px;
  position: relative;
  overflow: hidden;
  margin-bottom: 20px;
}

.tr-payout-bar {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 3px;
  background: var(--grad);
}

.tr-payout-meta {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 20px;
}

.tr-payout-label {
  font-family: var(--font-mono);
  font-size: 9px;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: var(--text3);
}

.tr-payout-amount {
  font-family: var(--font-display);
  font-size: 52px;
  background: var(--grad);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  line-height: 1;
  margin-bottom: 6px;
}

.tr-payout-recipient {
  font-family: var(--font-mono);
  font-size: 9px;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: var(--text3);
  margin-bottom: 20px;
}

.tr-payout-address {
  font-family: var(--font-mono);
  font-size: 10px;
  letter-spacing: 0.5px;
  color: var(--text3);
  background: var(--w05);
  border: 1px solid var(--border);
  border-radius: 8px;
  padding: 10px 12px;
  word-break: break-all;
}

.tr-payout-confirmed {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-top: 14px;
}

.tr-payout-confirmed-text {
  font-family: var(--font-mono);
  font-size: 9px;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: var(--green);
}

/* Activity box */
.tr-activity-box {
  background: var(--card-bg);
  border: 1px solid var(--border);
  border-radius: 18px;
  padding: 24px;
}

.tr-activity-header {
  font-family: var(--font-mono);
  font-size: 9px;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: var(--text3);
  margin-bottom: 16px;
}

.tr-activity-items {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.tr-activity-item {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.tr-activity-desc {
  font-size: 12px;
  color: var(--text2);
}

.tr-activity-value {
  font-family: var(--font-display);
  font-size: 20px;
  background: var(--grad);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

/* Misc */
.tr-divider {
  height: 1px;
  background: var(--border);
}

/* Nav button extras */
.tr-nav-login-btn {
  font-family: var(--font-mono);
  font-size: 10px;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  color: var(--text2);
  border: 1px solid var(--border);
  padding: 6px 14px;
  border-radius: 6px;
  text-decoration: none;
}

.tr-nav-signup-btn {
  font-family: var(--font-display);
  font-size: 14px;
  letter-spacing: 2px;
  color: #000;
  background: var(--grad);
  border: none;
  padding: 6px 16px;
  border-radius: 6px;
  font-weight: 400;
  text-decoration: none;
}

.tr-nav-dev-toggle {
  font-family: var(--font-mono);
  font-size: 9px;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  color: rgba(255, 255, 255, 0.18);
  text-decoration: none;
}

.tr-nav-dev-menu {
  background: var(--bg3) !important;
  border: 1px solid var(--border) !important;
  min-width: 130px;
}

.tr-nav-dev-item {
  font-family: var(--font-mono) !important;
  font-size: 10px !important;
  letter-spacing: 1px !important;
  color: var(--text3) !important;
}

.tr-footer-section-label {
  font-family: var(--font-mono);
  font-size: 9px;
  letter-spacing: 3px;
  text-transform: uppercase;
  color: var(--text3);
  margin-bottom: 14px;
}

/* Button size variants */
.tr-btn-xl {
  width: auto;
  padding: 18px 60px;
  border-radius: 50px;
  text-decoration: none;
  display: inline-block;
  font-size: 20px;
  letter-spacing: 4px;
  font-weight: 400;
}

.tr-btn-inline {
  width: auto;
  padding: 14px 40px;
  text-decoration: none;
}

/* == Auth page layout and form styles == */
.modal-content {
  background: var(--bg2);
  border: 1px solid var(--border-h);
  border-radius: 16px;
}

.modal-header {
  border-bottom: 1px solid var(--border);
}

.modal-footer {
  border-top: 1px solid var(--border);
}

.table {
  color: var(--text2);
}

.table > :not(caption) > * > * {
  background: transparent;
  border-color: var(--border);
}

.dropdown-menu {
  background: var(--bg3);
  border: 1px solid var(--border);
}

.dropdown-item {
  color: var(--text2);
}

.dropdown-item:hover {
  background: rgba(255, 255, 255, 0.05);
  color: var(--text);
}

.bgg {
  position: fixed;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  background: radial-gradient(ellipse 80% 65% at 50% -5%, var(--glow1) 0%, transparent 60%), radial-gradient(ellipse 50% 45% at 8% 90%, var(--glow2) 0%, transparent 55%);
}

.bggrid {
  position: fixed;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  background-image: linear-gradient(var(--grid-c) 1px, transparent 1px), linear-gradient(90deg, var(--grid-c) 1px, transparent 1px);
  background-size: 60px 60px;
  mask-image: radial-gradient(ellipse 100% 100% at 50% 50%, black 20%, transparent 78%);
  -webkit-mask-image: radial-gradient(ellipse 100% 100% at 50% 50%, black 20%, transparent 78%);
}

.bggrid::before {
  content: "";
  position: fixed;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  background-image: radial-gradient(circle 3px at 0 0, var(--accent) 0%, transparent 60%);
  background-size: 60px 60px;
  mask-image: radial-gradient(ellipse 100% 100% at 50% 50%, black 20%, transparent 78%);
  -webkit-mask-image: radial-gradient(ellipse 100% 100% at 50% 50%, black 20%, transparent 78%);
  animation: grid-travel-h 2s linear infinite;
  opacity: 0.7;
}

.bggrid::after {
  content: "";
  position: fixed;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  background-image: radial-gradient(circle 3px at 0 0, var(--accent) 0%, transparent 60%);
  background-size: 60px 60px;
  mask-image: radial-gradient(ellipse 100% 100% at 50% 50%, black 20%, transparent 78%);
  -webkit-mask-image: radial-gradient(ellipse 100% 100% at 50% 50%, black 20%, transparent 78%);
  animation: grid-travel-v 2s linear infinite;
  opacity: 0.7;
}

.tr-nav {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 1030;
  height: 64px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 2rem;
  background: var(--nav-bg);
  -webkit-backdrop-filter: blur(24px);
          backdrop-filter: blur(24px);
  border-bottom: 1px solid var(--border);
}

.tr-nav-logo {
  display: flex;
  align-items: center;
  gap: 10px;
  text-decoration: none;
}

.tr-nav-logo-img {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  overflow: hidden;
  border: 1.5px solid var(--accent);
}

.tr-nav-logo-img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.tr-nav-wordmark {
  font-family: var(--font-display);
  font-size: 20px;
  letter-spacing: 4px;
  color: var(--text);
}

.tr-nav-right {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
}

.tr-nav-link {
  font-family: var(--font-mono);
  font-size: 10px;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  color: var(--text3);
  text-decoration: none;
  padding: 6px 12px;
  border: 1px solid var(--border);
  border-radius: 6px;
  transition: all 0.2s;
  white-space: nowrap;
}

.tr-nav-link:hover {
  border-color: var(--border-h);
  color: var(--accent);
}

.tr-page {
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 88px 24px 48px;
  position: relative;
  z-index: 1;
}

.tr-split {
  display: grid;
  grid-template-columns: 1fr 1fr;
  max-width: 960px;
  width: 100%;
  border-radius: 20px;
  overflow: hidden;
  border: 1px solid var(--border);
  box-shadow: 0 40px 100px rgba(0, 0, 0, 0.5);
}

.tr-left {
  background: linear-gradient(145deg, var(--bg2), var(--bg3));
  padding: 52px 44px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  border-right: 1px solid var(--border);
}

.tr-right {
  background: var(--card-bg);
  -webkit-backdrop-filter: blur(20px);
          backdrop-filter: blur(20px);
  padding: 52px 44px;
}

.left-tag {
  font-family: var(--font-mono);
  font-size: 10px;
  letter-spacing: 3px;
  text-transform: uppercase;
  color: var(--accent);
  margin-bottom: 18px;
  display: flex;
  align-items: center;
  gap: 8px;
}

.left-tag::before {
  content: "";
  width: 16px;
  height: 1px;
  background: var(--accent);
}

.left-h {
  font-family: var(--font-display);
  font-size: clamp(36px, 4vw, 56px);
  letter-spacing: 2px;
  line-height: 0.95;
  color: var(--text);
  margin-bottom: 14px;
}

.left-h em {
  font-style: normal;
  background: var(--grad);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

.left-sub {
  font-size: 13px;
  color: var(--text2);
  line-height: 1.7;
  margin-bottom: 26px;
}

.left-perks {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.perk {
  display: flex;
  align-items: flex-start;
  gap: 10px;
}

.perk-icon {
  width: 32px;
  height: 32px;
  border-radius: 8px;
  background: linear-gradient(135deg, var(--accent2), var(--accent));
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 14px;
  flex-shrink: 0;
}

.perk-title {
  font-family: var(--font-display);
  font-size: 15px;
  letter-spacing: 1px;
  color: var(--text);
  margin-bottom: 2px;
}

.perk-desc {
  font-size: 11px;
  color: var(--text3);
  line-height: 1.5;
}

.left-bottom {
  font-family: var(--font-mono);
  font-size: 9px;
  letter-spacing: 2px;
  color: var(--text3);
  text-transform: uppercase;
  margin-top: 24px;
}

.form-logo {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  margin-bottom: 22px;
}

.form-logo img {
  width: 34px;
  height: 34px;
  border-radius: 50%;
  border: 1.5px solid var(--accent);
}

.form-logo-text {
  font-family: var(--font-display);
  font-size: 17px;
  letter-spacing: 3px;
  color: var(--text);
}

.form-top-bar {
  height: 3px;
  background: var(--grad);
  border-radius: 2px;
  margin-bottom: 22px;
}

.form-title {
  font-family: var(--font-display);
  font-size: 28px;
  letter-spacing: 2px;
  color: var(--text);
  margin-bottom: 4px;
  line-height: 1;
}

.form-sub {
  font-size: 12px;
  color: var(--text3);
  line-height: 1.6;
  margin-bottom: 18px;
}

.form-sub strong {
  color: var(--accent);
  font-weight: 600;
}

.fg {
  display: flex;
  flex-direction: column;
  gap: 4px;
  margin-bottom: 11px;
}

.fg label {
  font-family: var(--font-mono);
  font-size: 9px;
  font-weight: 600;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: var(--text3);
}

.fi {
  background: var(--w05) !important;
  border: 1px solid var(--w12) !important;
  border-radius: 10px;
  padding: 11px 13px;
  font-family: var(--font-body) !important;
  font-size: 13px;
  color: var(--text) !important;
  outline: none;
  transition: all 0.25s;
  width: 100%;
}

.fi::-moz-placeholder {
  color: var(--w20) !important;
}

.fi::placeholder {
  color: var(--w20) !important;
}

.fi:focus {
  border-color: var(--border-h) !important;
  background: rgba(139, 92, 246, 0.04) !important;
  box-shadow: 0 0 0 3px rgba(139, 92, 246, 0.1) !important;
}

.fi:-webkit-autofill, .fi:-webkit-autofill:hover, .fi:-webkit-autofill:focus {
  box-shadow: 0 0 0 1000px var(--bg4) inset !important;
  -webkit-text-fill-color: var(--text) !important;
  caret-color: var(--text) !important;
  border: 1px solid var(--w12) !important;
  outline: none !important;
  outline-width: 0 !important;
  outline-offset: 0 !important;
  -webkit-transition: background-color 5000s ease-in-out 0s, border-color 0s !important;
  transition: background-color 5000s ease-in-out 0s, border-color 0s !important;
}

.fi:-webkit-autofill,
.fi:-webkit-autofill:hover,
.fi:-webkit-autofill:focus,
.fi:autofill,
.fi:autofill:hover,
.fi:autofill:focus {
  box-shadow: 0 0 0 1000px var(--bg4) inset !important;
  -webkit-text-fill-color: var(--text) !important;
  caret-color: var(--text) !important;
  border: 1px solid var(--w12) !important;
  outline: none !important;
  outline-width: 0 !important;
  outline-offset: 0 !important;
  -webkit-transition: background-color 5000s ease-in-out 0s, border-color 0s !important;
  transition: background-color 5000s ease-in-out 0s, border-color 0s !important;
}

.fi-wrap {
  position: relative;
}

.fi-toggle {
  position: absolute;
  right: 12px;
  top: 50%;
  transform: translateY(-50%);
  background: none;
  border: none;
  color: var(--text3);
  cursor: pointer;
  font-size: 14px;
  padding: 0;
  transition: color 0.2s;
}

.fi-toggle:hover {
  color: var(--text);
}

.frow {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
}

.fs {
  background: var(--w05) !important;
  border: 1px solid var(--w12) !important;
  border-radius: 10px;
  padding: 11px 13px;
  font-family: var(--font-body) !important;
  font-size: 13px;
  color: var(--text) !important;
  outline: none;
  transition: all 0.25s;
  width: 100%;
  cursor: pointer;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='rgba(255,255,255,0.3)' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
  background-position: right 12px center !important;
}

.fs:focus {
  border-color: var(--border-h) !important;
  box-shadow: 0 0 0 3px rgba(139, 92, 246, 0.1) !important;
}

.fs option {
  background: #111;
  color: #fff;
}

.btn-submit {
  width: 100%;
  font-family: var(--font-display);
  font-size: 18px;
  letter-spacing: 3px;
  color: #000;
  border: none;
  cursor: pointer;
  padding: 13px 20px;
  border-radius: 12px;
  background: var(--grad);
  transition: all 0.25s;
  box-shadow: 0 6px 22px rgba(139, 92, 246, 0.35);
  margin-top: 4px;
  display: block;
}

.btn-submit:hover {
  transform: translateY(-2px);
  box-shadow: 0 12px 32px rgba(139, 92, 246, 0.55);
}

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

.btn-out {
  width: 100%;
  font-family: var(--font-display);
  font-size: 17px;
  letter-spacing: 2px;
  color: var(--accent3);
  border: 1px solid rgba(139, 92, 246, 0.3);
  cursor: pointer;
  padding: 11px 20px;
  border-radius: 12px;
  background: transparent;
  transition: all 0.25s;
  margin-top: 8px;
  display: block;
}

.btn-out:hover {
  background: rgba(139, 92, 246, 0.07);
  border-color: rgba(139, 92, 246, 0.55);
  transform: translateY(-1px);
}

.form-sep {
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 12px 0;
}

.form-sep::before, .form-sep::after {
  content: "";
  flex: 1;
  height: 1px;
  background: var(--w08);
}

.form-sep span {
  font-family: var(--font-mono);
  font-size: 9px;
  letter-spacing: 2px;
  color: var(--w20);
  text-transform: uppercase;
  white-space: nowrap;
}

.form-link {
  text-align: right;
  margin-bottom: 11px;
}

.form-link a {
  font-family: var(--font-mono);
  font-size: 10px;
  letter-spacing: 1px;
  color: var(--accent);
  text-decoration: none;
}

.form-link a:hover {
  text-decoration: underline;
}

.form-note {
  text-align: center;
  font-size: 12px;
  color: var(--text3);
  margin-top: 12px;
}

.form-note a {
  color: var(--accent);
  text-decoration: none;
  font-weight: 600;
}

.tr-alert {
  border-radius: 10px;
  padding: 11px 14px;
  font-size: 13px;
  margin-bottom: 14px;
  font-family: var(--font-body);
  min-height: 42px;
}

.tr-alert-danger {
  background: rgba(248, 113, 113, 0.1);
  border: 1px solid rgba(248, 113, 113, 0.3);
  color: #f87171;
}

.tr-alert-success {
  background: rgba(52, 211, 153, 0.1);
  border: 1px solid rgba(52, 211, 153, 0.3);
  color: #34d399;
}

.reg-steps {
  display: flex;
  gap: 6px;
  align-items: center;
}

.reg-step {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--w12);
  transition: all 0.3s;
}

.reg-step.active {
  background: var(--accent);
  width: 20px;
  border-radius: 4px;
}

.reg-inline-error {
  font-size: 12px;
  color: #f87171;
  font-family: var(--font-mono);
  letter-spacing: 0.5px;
  min-height: 18px;
  margin-bottom: 10px;
}

.reg-avatar-row {
  display: flex;
  align-items: center;
  gap: 16px;
  margin-bottom: 20px;
  padding: 14px;
  background: var(--w05);
  border: 1px solid var(--border);
  border-radius: 12px;
}

.reg-avatar-preview {
  width: 64px;
  height: 64px;
  flex-shrink: 0;
  border-radius: 14px;
  overflow: hidden;
}

.reg-avatar-preview svg {
  display: block;
}

.reg-avatar-label {
  font-family: var(--font-mono);
  font-size: 10px;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: var(--text3);
  margin-bottom: 4px;
}

.reg-avatar-sub {
  font-size: 12px;
  color: var(--text2);
}

.reg-tos {
  margin: 16px 0 20px;
}

.reg-tos-label {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  cursor: pointer;
}

.reg-tos-check {
  display: none;
}

.reg-tos-box {
  width: 18px;
  height: 18px;
  flex-shrink: 0;
  border: 1px solid var(--w12);
  border-radius: 5px;
  background: var(--w05);
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.2s;
  margin-top: 1px;
}

.reg-tos-check:checked + .reg-tos-box {
  background: var(--accent);
  border-color: var(--accent);
}

.reg-tos-check:checked + .reg-tos-box::after {
  content: "✓";
  font-size: 11px;
  color: #fff;
  font-weight: 700;
}

.reg-tos-text {
  font-size: 12px;
  color: var(--text2);
  line-height: 1.6;
}

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

.otp-wrap {
  display: flex;
  gap: 8px;
  margin-bottom: 20px;
}

.otp-input {
  width: 100%;
  text-align: center;
  font-size: 18px;
  font-family: var(--font-mono);
  padding: 12px 4px !important;
  text-transform: uppercase;
}

.otp-input:disabled {
  opacity: 0.35;
  cursor: not-allowed;
}

.otp-progress-track {
  width: 100%;
  height: 3px;
  background: var(--w08);
  border-radius: 2px;
  margin-bottom: 24px;
  overflow: hidden;
}

.otp-progress-fill {
  height: 100%;
  width: 100%;
  background: var(--grad);
  border-radius: 2px;
  transition: width 120s linear;
}

.otp-progress-fill.otp-expired {
  background: rgba(248, 113, 113, 0.6);
}

.otp-countdown {
  font-family: var(--font-mono);
  font-size: 13px;
  font-weight: 500;
  color: var(--accent);
  letter-spacing: 2px;
  padding: 4px 10px;
  border: 1px solid var(--border);
  border-radius: 8px;
  min-width: 52px;
  text-align: center;
}

.otp-countdown.otp-expired {
  color: #f87171;
  border-color: rgba(248, 113, 113, 0.4);
}

.form-terms {
  font-size: 11px;
  color: var(--text3);
  line-height: 1.6;
  margin-bottom: 14px;
}

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

.back-link {
  font-family: var(--font-mono);
  font-size: 10px;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  color: var(--text3);
  text-decoration: none;
  display: block;
  text-align: center;
  margin-top: 14px;
  transition: color 0.2s;
}

.back-link:hover {
  color: var(--accent);
}

.steps-bar {
  display: flex;
  gap: 8px;
  margin-bottom: 20px;
  align-items: center;
}

.step-item {
  display: flex;
  align-items: center;
  gap: 6px;
  font-family: var(--font-mono);
  font-size: 9px;
  letter-spacing: 1.5px;
  text-transform: uppercase;
}

.step-num {
  width: 22px;
  height: 22px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: var(--font-display);
  font-size: 13px;
  flex-shrink: 0;
}

.step-num.active {
  background: var(--grad);
  color: #000;
}

.step-num.done {
  background: rgba(34, 197, 94, 0.15);
  border: 1px solid rgba(34, 197, 94, 0.35);
  color: #22c55e;
}

.step-num.idle {
  background: var(--w05);
  border: 1px solid var(--w12);
  color: var(--text3);
}

.step-label.active {
  color: var(--text);
}

.step-label.idle {
  color: var(--text3);
}

.step-arrow {
  color: var(--text3);
  font-size: 12px;
  margin: 0 2px;
}

.otp-wrap {
  display: flex;
  gap: 8px;
  justify-content: center;
  margin: 14px 0;
}

.otp-input {
  width: 48px;
  height: 54px;
  text-align: center;
  font-family: var(--font-mono);
  font-size: 22px;
  font-weight: 600;
  color: var(--text);
  background: var(--w05);
  border: 1px solid var(--w12);
  border-radius: 10px;
  outline: none;
  transition: all 0.25s;
  caret-color: var(--accent);
}

.otp-input:focus {
  border-color: var(--accent);
  box-shadow: 0 0 0 3px rgba(139, 92, 246, 0.12);
}

.method-box {
  padding: 14px 16px;
  background: var(--w05);
  border: 1px solid var(--w08);
  border-radius: 12px;
  margin-bottom: 10px;
  cursor: pointer;
  transition: all 0.2s;
  display: flex;
  align-items: center;
  gap: 12px;
}

.method-box.selected, .method-box:hover {
  background: rgba(139, 92, 246, 0.08);
  border-color: var(--border-h);
}

.method-icon {
  width: 36px;
  height: 36px;
  border-radius: 10px;
  background: var(--w08);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 16px;
  flex-shrink: 0;
  transition: background 0.2s;
}

.method-box.selected .method-icon {
  background: var(--grad);
}

.method-title {
  font-family: var(--font-display);
  font-size: 16px;
  letter-spacing: 1px;
  color: var(--text);
  margin-bottom: 2px;
}

.method-desc {
  font-size: 11px;
  color: var(--text3);
  line-height: 1.4;
}

/* Skip verification — muted dashed button */
.btn-skip {
  display: block;
  width: 100%;
  font-family: var(--font-mono);
  font-size: 10px;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: var(--text3);
  border: 1px dashed var(--w12);
  border-radius: 12px;
  padding: 11px 16px;
  text-align: center;
  text-decoration: none;
  transition: all 0.25s;
  cursor: pointer;
  margin-top: 0;
}

.btn-skip:hover {
  border-color: var(--w20);
  color: var(--text2);
  background: var(--w05);
}

/* Registration step panels — no-layout-shift transitions */
.reg-panel-wrap {
  position: relative;
}

.reg-step-panel {
  display: none;
}

.reg-step-panel.active {
  display: block;
}

/* Password rules */
.pw-rules {
  display: flex;
  flex-direction: column;
  gap: 4px;
  margin-top: 8px;
  padding: 10px 12px;
  background: var(--w05);
  border-radius: 8px;
  border: 1px solid var(--w08);
}

.pw-rule {
  display: flex;
  align-items: center;
  gap: 7px;
  font-family: var(--font-mono);
  font-size: 10px;
  letter-spacing: 0.5px;
  color: var(--text3);
  transition: color 0.2s;
}

.pw-rule.valid {
  color: #22c55e;
}

.pw-rule-dot {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--w20);
  flex-shrink: 0;
  transition: background 0.2s;
}

.pw-rule.valid .pw-rule-dot {
  background: #22c55e;
}

/* Field status indicator (email / username) */
.fi-status {
  position: absolute;
  right: 12px;
  top: 50%;
  transform: translateY(-50%);
  font-size: 13px;
  font-family: var(--font-mono);
  pointer-events: none;
  transition: color 0.2s;
}

.fi-ok {
  color: #22c55e;
}

.fi-err {
  color: #f87171;
}

.fi-checking {
  color: var(--text3);
  animation: tr-pulse 1s infinite;
}

/* Avatar refresh */
.reg-avatar-info {
  flex: 1;
}

.reg-avatar-refresh {
  width: 32px;
  height: 32px;
  border-radius: 8px;
  background: var(--w05);
  border: 1px solid var(--w12);
  color: var(--text3);
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.2s;
  flex-shrink: 0;
  font-weight: 400;
  padding: 0;
}

.reg-avatar-refresh:hover {
  background: rgba(139, 92, 246, 0.08);
  border-color: var(--border-h);
  color: var(--accent);
}

.reg-avatar-refresh.spinning svg {
  animation: spin360 0.4s linear;
}

@keyframes spin360 {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}
@media (max-width: 768px) {
  .tr-split {
    grid-template-columns: 1fr;
    border-radius: 16px;
    max-width: 480px;
  }
  .tr-left {
    display: none;
  }
  .tr-right {
    padding: 36px 28px;
  }
  .tr-nav {
    padding: 0 1rem;
  }
  .tr-page {
    padding: 80px 16px 32px;
  }
}
@media (max-width: 480px) {
  .tr-right {
    padding: 28px 20px;
  }
  .frow {
    grid-template-columns: 1fr;
  }
  .otp-input {
    width: 40px;
    height: 48px;
    font-size: 18px;
  }
  .otp-wrap {
    gap: 5px;
  }
}
@media (max-width: 360px) {
  .otp-input {
    width: 34px;
    height: 44px;
    font-size: 16px;
  }
  .otp-wrap {
    gap: 4px;
  }
}
/* ── PAGE COMPONENTS — marketing/landing widgets ──────────────────────── */
@keyframes fU {
  from {
    opacity: 0;
    transform: translateY(22px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes tick {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(-50%);
  }
}
@keyframes spin {
  from {
    transform: rotate(0);
  }
  to {
    transform: rotate(360deg);
  }
}
@keyframes st-pulse {
  0%, 100% {
    opacity: 1;
    transform: scale(1);
  }
  50% {
    opacity: 0.5;
    transform: scale(0.8);
  }
}
/* HERO */
.hero {
  min-height: 100vh;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  padding: 110px 24px 80px;
  position: relative;
  overflow: hidden;
  background: var(--bg);
}

.hero-bg {
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: radial-gradient(ellipse 100% 65% at 50% -5%, rgba(var(--accent-rgb), 0.28) 0%, transparent 60%), radial-gradient(ellipse 55% 45% at 8% 90%, rgba(var(--accent-rgb), 0.2) 0%, transparent 55%), radial-gradient(ellipse 45% 40% at 92% 85%, rgba(var(--accent-rgb), 0.08) 0%, transparent 55%);
}

.hero-grid {
  position: absolute;
  inset: 0;
  pointer-events: none;
  background-image: linear-gradient(rgba(var(--accent-rgb), 0.06) 1px, transparent 1px), linear-gradient(90deg, rgba(var(--accent-rgb), 0.06) 1px, transparent 1px);
  background-size: 58px 58px;
  mask-image: radial-gradient(ellipse 85% 85% at 50% 50%, black 25%, transparent 100%);
  -webkit-mask-image: radial-gradient(ellipse 85% 85% at 50% 50%, black 25%, transparent 100%);
}

.hero-pill {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-family: var(--font-mono);
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 3px;
  text-transform: uppercase;
  padding: 7px 18px;
  border-radius: 100px;
  background: rgba(var(--accent-rgb), 0.1);
  border: 1px solid rgba(var(--accent-rgb), 0.3);
  color: var(--accent);
  margin-bottom: 26px;
  animation: fU 0.8s ease both;
  position: relative;
  z-index: 1;
}

.hero-dot {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--accent);
  animation: st-pulse 1.5s ease-in-out infinite;
  box-shadow: 0 0 8px var(--accent);
}

.hero-h1 {
  font-family: var(--font-display);
  font-size: clamp(82px, 13vw, 152px);
  line-height: 0.88;
  letter-spacing: 3px;
  margin-bottom: 4px;
  position: relative;
  z-index: 1;
  animation: fU 0.8s 0.1s ease both;
}

.h1-l1 {
  display: block;
  color: #fff;
  text-shadow: 0 0 80px rgba(var(--accent-rgb), 0.15);
}

.h1-l2 {
  display: block;
  background: var(--grad);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  filter: drop-shadow(0 0 28px rgba(var(--accent-rgb), 0.35));
}

.h1-l3 {
  display: block;
  color: rgba(255, 255, 255, 0.12);
  font-size: clamp(56px, 9vw, 100px);
  letter-spacing: 10px;
}

.hero-sub {
  font-size: 16px;
  font-weight: 300;
  color: rgba(255, 255, 255, 0.6);
  line-height: 1.75;
  max-width: 560px;
  margin: 22px auto 12px;
  position: relative;
  z-index: 1;
  animation: fU 0.8s 0.2s ease both;
}

.hero-sub strong {
  color: #fff;
  font-weight: 600;
}

.hero-sub2 {
  font-size: 14px;
  font-weight: 300;
  color: rgba(255, 255, 255, 0.4);
  line-height: 1.7;
  max-width: 480px;
  margin: 0 auto 36px;
  position: relative;
  z-index: 1;
  animation: fU 0.8s 0.25s ease both;
}

.hero-ctas {
  display: flex;
  gap: 14px;
  justify-content: center;
  flex-wrap: wrap;
  margin-bottom: 60px;
  position: relative;
  z-index: 1;
  animation: fU 0.8s 0.3s ease both;
}

.btn-main {
  font-family: var(--font-display);
  font-size: 19px;
  letter-spacing: 3px;
  color: #000;
  text-decoration: none;
  padding: 15px 42px;
  background: var(--grad);
  border-radius: 8px;
  transition: all 0.25s;
  display: inline-block;
  box-shadow: 0 8px 30px rgba(var(--accent-rgb), 0.35);
  border: none;
  cursor: pointer;
  font-weight: 400;
}

.btn-main:hover {
  transform: translateY(-3px);
  box-shadow: 0 16px 48px rgba(var(--accent-rgb), 0.5);
  color: #000;
}

.btn-out {
  font-family: var(--font-display);
  font-size: 19px;
  letter-spacing: 3px;
  color: #fff;
  text-decoration: none;
  padding: 15px 42px;
  border: 1.5px solid rgba(255, 255, 255, 0.2);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.04);
  transition: all 0.25s;
  display: inline-block;
  font-weight: 400;
}

.btn-out:hover {
  border-color: var(--accent);
  background: rgba(var(--accent-rgb), 0.08);
  transform: translateY(-3px);
  color: #fff;
}

.hero-stats {
  display: flex;
  gap: 0;
  justify-content: center;
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 14px;
  overflow: hidden;
  max-width: 720px;
  width: 100%;
  position: relative;
  z-index: 1;
  background: rgba(255, 255, 255, 0.02);
  -webkit-backdrop-filter: blur(10px);
          backdrop-filter: blur(10px);
  animation: fU 0.8s 0.4s ease both;
}

.hstat {
  flex: 1;
  padding: 22px 16px;
  text-align: center;
  border-right: 1px solid rgba(255, 255, 255, 0.08);
}

.hstat:last-child {
  border-right: none;
}

.hstat-n {
  font-family: var(--font-display);
  font-size: 36px;
  letter-spacing: 1px;
  line-height: 1;
  background: var(--grad);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

.hstat-l {
  font-family: var(--font-mono);
  font-size: 9px;
  letter-spacing: 2px;
  color: rgba(255, 255, 255, 0.4);
  text-transform: uppercase;
  margin-top: 4px;
}

/* TICKER */
.ticker {
  overflow: hidden;
  padding: 13px 0;
  position: relative;
  border-top: 1px solid rgba(255, 255, 255, 0.08);
  border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}

.ticker::before, .ticker::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  width: 100px;
  z-index: 2;
}

.ticker::before {
  left: 0;
  background: linear-gradient(90deg, var(--bg), transparent);
}

.ticker::after {
  right: 0;
  background: linear-gradient(-90deg, var(--bg), transparent);
}

.ticker-inner {
  display: flex;
  animation: tick 28s linear infinite;
  white-space: nowrap;
}

.ti {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  padding: 0 30px;
  font-family: var(--font-mono);
  font-size: 11px;
  font-weight: 500;
  letter-spacing: 2px;
  text-transform: uppercase;
}

.ti.c1 {
  color: var(--accent);
}

.ti.c2 {
  color: var(--accent3);
}

.ti.c3 {
  color: var(--accent3);
}

.ti.c4 {
  color: var(--accent3);
}

.ti-dot {
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background: currentColor;
  opacity: 0.5;
  flex-shrink: 0;
}

/* GRADIENT RULE */
.gline {
  height: 1px;
  background: linear-gradient(90deg, transparent, var(--accent), var(--accent3), var(--accent3), transparent);
}

/* SECTION PRIMITIVES */
.sec {
  padding: 110px 24px;
  position: relative;
}

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

.stag {
  font-family: var(--font-mono);
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 4px;
  text-transform: uppercase;
  color: var(--accent);
  margin-bottom: 14px;
  display: flex;
  align-items: center;
  gap: 10px;
}

.stag::before {
  content: "";
  width: 18px;
  height: 1px;
  background: var(--accent);
  flex-shrink: 0;
}

.sh2 {
  font-family: var(--font-display);
  font-size: clamp(50px, 7vw, 84px);
  letter-spacing: 2px;
  line-height: 0.92;
  color: #fff;
  margin-bottom: 14px;
}

.sh2 em {
  font-style: normal;
  background: var(--grad);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

.ssub {
  font-size: 14px;
  color: rgba(255, 255, 255, 0.6);
  line-height: 1.75;
  max-width: 520px;
}

.ssub2 {
  font-size: 13px;
  color: rgba(255, 255, 255, 0.4);
  line-height: 1.7;
  max-width: 520px;
  margin-top: 10px;
}

/* INTRO */
.intro-bg {
  background: var(--bg2);
}

.intro-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 80px;
  align-items: center;
}

.intro-right {
  display: flex;
  flex-direction: column;
  gap: 28px;
}

.intro-block {
  padding: 24px 26px;
  background: rgba(255, 255, 255, 0.05);
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 14px;
  border-left: 3px solid var(--accent);
  transition: all 0.25s;
}

.intro-block:hover {
  background: rgba(var(--accent-rgb), 0.06);
  border-left-color: var(--accent3);
}

.intro-block-label {
  font-family: var(--font-mono);
  font-size: 9px;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: var(--accent);
  margin-bottom: 8px;
}

.intro-block-title {
  font-family: var(--font-display);
  font-size: 22px;
  letter-spacing: 1px;
  color: #fff;
  margin-bottom: 6px;
}

.intro-block-text {
  font-size: 13px;
  color: rgba(255, 255, 255, 0.6);
  line-height: 1.65;
}

.intro-quote {
  margin-top: 28px;
  padding: 22px 24px;
  background: rgba(var(--accent-rgb), 0.06);
  border: 1px solid rgba(var(--accent-rgb), 0.2);
  border-radius: 14px;
  position: relative;
}

.intro-quote::before {
  content: '"';
  font-family: var(--font-display);
  font-size: 80px;
  color: rgba(var(--accent-rgb), 0.15);
  position: absolute;
  top: -10px;
  left: 16px;
  line-height: 1;
}

.intro-quote p {
  font-size: 14px;
  font-style: italic;
  color: rgba(255, 255, 255, 0.6);
  line-height: 1.7;
  position: relative;
  z-index: 1;
}

.intro-quote span {
  display: block;
  margin-top: 10px;
  font-family: var(--font-mono);
  font-size: 10px;
  letter-spacing: 2px;
  color: var(--accent);
  text-transform: uppercase;
}

/* FEATURES */
.feat-bg {
  background: var(--bg);
}

.feat-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1px;
  margin-top: 60px;
  background: rgba(255, 255, 255, 0.08);
  border-radius: 18px;
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, 0.08);
}

.fc {
  background: var(--bg3);
  padding: 36px 30px;
  position: relative;
  overflow: hidden;
  transition: background 0.3s;
  cursor: default;
}

.fc::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg, rgba(var(--accent-rgb), 0.07) 0%, transparent 60%);
  opacity: 0;
  transition: opacity 0.3s;
}

.fc:hover::before {
  opacity: 1;
}

.fc-bar {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: 2px;
  background: var(--grad);
  transform: scaleX(0);
  transform-origin: left;
  transition: transform 0.35s ease;
}

.fc:hover .fc-bar {
  transform: scaleX(1);
}

.fc-icon {
  width: 46px;
  height: 46px;
  border-radius: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 20px;
  margin-bottom: 18px;
  background: rgba(255, 255, 255, 0.05);
  border: 1px solid rgba(255, 255, 255, 0.08);
  transition: all 0.3s;
}

.fc:hover .fc-icon {
  background: rgba(var(--accent-rgb), 0.15);
  border-color: rgba(var(--accent-rgb), 0.3);
}

.fc-num {
  font-family: var(--font-mono);
  font-size: 9px;
  letter-spacing: 2px;
  color: rgba(255, 255, 255, 0.4);
  text-transform: uppercase;
  margin-bottom: 8px;
}

.fc-title {
  font-family: var(--font-display);
  font-size: 26px;
  letter-spacing: 1px;
  color: #fff;
  margin-bottom: 8px;
}

.fc-desc {
  font-size: 13px;
  color: rgba(255, 255, 255, 0.4);
  line-height: 1.6;
  margin-bottom: 8px;
}

.fc-detail {
  font-size: 12px;
  color: rgba(255, 255, 255, 0.2);
  line-height: 1.55;
}

/* HOW IT WORKS */
.how-bg {
  background: var(--bg2);
}

.how-intro {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 80px;
  align-items: start;
  margin-bottom: 64px;
}

.steps {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 0;
  position: relative;
}

.steps::before {
  content: "";
  position: absolute;
  top: 27px;
  left: calc(12.5% + 14px);
  right: calc(12.5% + 14px);
  height: 1px;
  background: linear-gradient(90deg, var(--accent), var(--accent2), var(--accent3), var(--accent3));
  z-index: 0;
}

.step {
  text-align: center;
  padding: 0 14px;
  position: relative;
  z-index: 1;
}

.step-n {
  width: 54px;
  height: 54px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: var(--font-display);
  font-size: 22px;
  letter-spacing: 1px;
  margin: 0 auto 18px;
  position: relative;
  transition: all 0.3s;
}

.step:nth-child(1) .step-n {
  background: rgba(var(--accent-rgb), 0.15);
  border: 1px solid var(--accent);
  color: var(--accent);
  box-shadow: 0 0 18px rgba(var(--accent-rgb), 0.25);
}

.step:nth-child(2) .step-n {
  background: rgba(var(--accent-rgb), 0.15);
  border: 1px solid var(--accent2);
  color: var(--accent2);
  box-shadow: 0 0 18px rgba(var(--accent-rgb), 0.2);
}

.step:nth-child(3) .step-n {
  background: rgba(var(--accent-rgb), 0.15);
  border: 1px solid var(--accent3);
  color: var(--accent3);
  box-shadow: 0 0 18px rgba(var(--accent-rgb), 0.2);
}

.step:nth-child(4) .step-n {
  background: rgba(var(--accent-rgb), 0.12);
  border: 1px solid var(--accent3);
  color: var(--accent3);
  box-shadow: 0 0 18px rgba(var(--accent-rgb), 0.2);
}

.step-title {
  font-family: var(--font-display);
  font-size: 20px;
  letter-spacing: 1px;
  color: #fff;
  margin-bottom: 8px;
}

.step-desc {
  font-size: 12px;
  color: rgba(255, 255, 255, 0.4);
  line-height: 1.6;
}

/* CHALLENGES */
.chal-bg {
  background: var(--bg);
  position: relative;
  overflow: hidden;
}

.chal-bg::before {
  content: "";
  position: absolute;
  top: -200px;
  left: -200px;
  width: 600px;
  height: 600px;
  background: radial-gradient(circle, rgba(var(--accent-rgb), 0.07) 0%, transparent 70%);
  pointer-events: none;
}

.chal-bg::after {
  content: "";
  position: absolute;
  bottom: -200px;
  right: -200px;
  width: 600px;
  height: 600px;
  background: radial-gradient(circle, rgba(var(--accent-rgb), 0.07) 0%, transparent 70%);
  pointer-events: none;
}

.chal-intro {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 80px;
  align-items: end;
  margin-bottom: 60px;
}

.chal-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px;
}

.cc {
  border-radius: 20px;
  padding: 42px 38px;
  border: 1px solid rgba(255, 255, 255, 0.08);
  position: relative;
  overflow: hidden;
}

.cc-demo {
  background: linear-gradient(145deg, #0c0c18 0%, #131020 100%);
}

.cc-fund {
  background: linear-gradient(145deg, #0c0810 0%, #180420 50%, #0c0810 100%);
  border-color: rgba(var(--accent-rgb), 0.25);
}

.cc-fund::before {
  content: "";
  position: absolute;
  inset: 0;
  background: radial-gradient(ellipse 100% 50% at 50% 0%, rgba(var(--accent-rgb), 0.1) 0%, transparent 65%);
  pointer-events: none;
}

.cc-badge {
  display: inline-block;
  font-family: var(--font-mono);
  font-size: 9px;
  font-weight: 600;
  letter-spacing: 2px;
  text-transform: uppercase;
  padding: 5px 12px;
  border-radius: 4px;
  margin-bottom: 22px;
}

.bd {
  background: rgba(255, 255, 255, 0.05);
  border: 1px solid rgba(255, 255, 255, 0.12);
  color: rgba(255, 255, 255, 0.6);
}

.bf {
  background: var(--grad);
  color: #000;
}

.cc-title {
  font-family: var(--font-display);
  font-size: 48px;
  letter-spacing: 1px;
  color: #fff;
  line-height: 0.95;
  margin-bottom: 14px;
}

.cc-fund .cc-title {
  background: var(--grad);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

.cc-desc {
  font-size: 14px;
  color: rgba(255, 255, 255, 0.6);
  line-height: 1.65;
  margin-bottom: 10px;
}

.cc-desc2 {
  font-size: 13px;
  color: rgba(255, 255, 255, 0.4);
  line-height: 1.6;
  margin-bottom: 28px;
}

.cc-list {
  list-style: none;
  margin-bottom: 32px;
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.cc-list li {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  font-size: 13px;
  color: rgba(255, 255, 255, 0.6);
  line-height: 1.4;
}

.chk {
  width: 18px;
  height: 18px;
  border-radius: 50%;
  flex-shrink: 0;
  margin-top: 1px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.cg {
  background: rgba(34, 197, 94, 0.15);
}

.cm {
  background: rgba(var(--accent-rgb), 0.18);
}

.cc-btn {
  display: inline-block;
  font-family: var(--font-display);
  font-size: 17px;
  letter-spacing: 2px;
  text-decoration: none;
  padding: 13px 28px;
  border-radius: 10px;
  transition: all 0.25s;
  cursor: pointer;
  border: none;
  font-weight: 400;
}

.cc-btn-d {
  color: #fff;
  border: 1.5px solid rgba(255, 255, 255, 0.12);
  background: rgba(255, 255, 255, 0.05);
}

.cc-btn-d:hover {
  border-color: rgba(255, 255, 255, 0.4);
  background: rgba(255, 255, 255, 0.08);
  transform: translateY(-2px);
  color: #fff;
}

.cc-btn-f {
  color: #000;
  background: var(--grad);
  box-shadow: 0 6px 24px rgba(var(--accent-rgb), 0.3);
}

.cc-btn-f:hover {
  transform: translateY(-3px);
  box-shadow: 0 12px 36px rgba(var(--accent-rgb), 0.45);
  color: #000;
}

/* TOKEN / ORB */
.tok-bg {
  background: var(--bg2);
  position: relative;
  overflow: hidden;
}

.tok-bg::before {
  content: "";
  position: absolute;
  inset: 0;
  background: radial-gradient(ellipse 60% 80% at 0% 50%, rgba(var(--accent-rgb), 0.13) 0%, transparent 55%), radial-gradient(ellipse 50% 60% at 100% 50%, rgba(var(--accent-rgb), 0.09) 0%, transparent 55%);
  pointer-events: none;
}

.tok-layout {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 80px;
  align-items: center;
  position: relative;
  z-index: 1;
}

.tok-body p {
  font-size: 14px;
  color: rgba(255, 255, 255, 0.6);
  line-height: 1.75;
  margin-top: 14px;
}

.tok-body p + p {
  margin-top: 10px;
  font-size: 13px;
  color: rgba(255, 255, 255, 0.4);
  line-height: 1.7;
}

.tok-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px;
  margin-top: 32px;
}

.tstat {
  padding: 20px 18px;
  border-radius: 14px;
  background: rgba(255, 255, 255, 0.03);
  border: 1px solid rgba(255, 255, 255, 0.08);
  position: relative;
  overflow: hidden;
}

.tstat::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 2px;
  background: var(--grad);
}

.tstat-v {
  font-family: var(--font-display);
  font-size: 28px;
  letter-spacing: 1px;
  line-height: 1;
  background: var(--grad);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  margin-bottom: 4px;
}

.tstat-k {
  font-family: var(--font-mono);
  font-size: 9px;
  letter-spacing: 2px;
  color: rgba(255, 255, 255, 0.4);
  text-transform: uppercase;
}

.orb-wrap {
  position: relative;
  width: 300px;
  height: 300px;
  margin: 0 auto;
}

.orb1, .orb2 {
  position: absolute;
  border-radius: 50%;
  border: 1px solid;
}

.orb1 {
  inset: 0;
  border-color: rgba(var(--accent-rgb), 0.2);
  animation: spin 22s linear infinite;
}

.orb2 {
  inset: 32px;
  border-color: rgba(var(--accent-rgb), 0.15);
  animation: spin 14s linear infinite reverse;
}

.orb-dot {
  position: absolute;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  top: -5px;
  left: 50%;
  transform: translateX(-50%);
}

.od-m {
  background: var(--accent);
  box-shadow: 0 0 14px var(--accent);
}

.od-g {
  background: var(--accent3);
  box-shadow: 0 0 12px var(--accent3);
}

.orb-c {
  position: absolute;
  inset: 72px;
  border-radius: 50%;
  background: linear-gradient(145deg, var(--bg3), var(--bg4));
  border: 2px solid rgba(var(--accent-rgb), 0.35);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  box-shadow: 0 0 40px rgba(var(--accent-rgb), 0.15), inset 0 0 30px rgba(var(--accent-rgb), 0.05);
}

.orb-c img {
  width: 58px;
  height: 58px;
  border-radius: 50%;
  -o-object-fit: cover;
     object-fit: cover;
}

.orb-c-lbl {
  font-family: var(--font-display);
  font-size: 17px;
  letter-spacing: 3px;
  background: var(--grad);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  margin-top: 5px;
}

/* GAMIFICATION */
.gam-bg {
  background: var(--bg);
}

.gam-intro {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 80px;
  align-items: start;
  margin-bottom: 60px;
}

.gam-right p {
  font-size: 14px;
  color: rgba(255, 255, 255, 0.6);
  line-height: 1.75;
}

.gam-right p + p {
  margin-top: 12px;
  font-size: 13px;
  color: rgba(255, 255, 255, 0.4);
  line-height: 1.7;
}

.gam-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 14px;
}

.gc {
  padding: 28px 22px;
  border-radius: 16px;
  background: var(--bg3);
  border: 1px solid rgba(255, 255, 255, 0.08);
  text-align: center;
  transition: all 0.3s;
  cursor: default;
  position: relative;
  overflow: hidden;
}

.gc::before {
  content: "";
  position: absolute;
  inset: 0;
  background: var(--grad);
  opacity: 0;
  transition: opacity 0.3s;
}

.gc:hover {
  transform: translateY(-5px);
  border-color: transparent;
}

.gc:hover::before {
  opacity: 0.08;
}

.gc:hover .gc-icon {
  transform: scale(1.15);
}

.gc-icon {
  font-size: 28px;
  margin-bottom: 14px;
  display: block;
  transition: transform 0.3s;
}

.gc-title {
  font-family: var(--font-display);
  font-size: 22px;
  letter-spacing: 1px;
  color: #fff;
  margin-bottom: 8px;
}

.gc-desc {
  font-size: 12px;
  color: rgba(255, 255, 255, 0.4);
  line-height: 1.55;
}

/* SOCIAL PROOF / LEADERBOARD */
.sp-bg {
  background: var(--bg2);
  position: relative;
  overflow: hidden;
}

.sp-bg::before {
  content: "";
  position: absolute;
  inset: 0;
  background: radial-gradient(ellipse 80% 60% at 50% 100%, rgba(var(--accent-rgb), 0.1) 0%, transparent 60%);
  pointer-events: none;
}

.sp-layout {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 60px;
  align-items: start;
}

.lb-wrap {
  background: rgba(255, 255, 255, 0.02);
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 18px;
  overflow: hidden;
  -webkit-backdrop-filter: blur(10px);
          backdrop-filter: blur(10px);
}

.lb-head {
  padding: 16px 22px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  border-bottom: 1px solid rgba(255, 255, 255, 0.08);
  background: rgba(255, 255, 255, 0.02);
}

.lb-htitle {
  font-family: var(--font-mono);
  font-size: 10px;
  letter-spacing: 2px;
  color: rgba(255, 255, 255, 0.4);
  text-transform: uppercase;
}

.lb-live {
  display: flex;
  align-items: center;
  gap: 6px;
  font-family: var(--font-mono);
  font-size: 10px;
  color: #22c55e;
  letter-spacing: 1px;
}

.lb-ldot {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #22c55e;
  animation: st-pulse 1.5s ease-in-out infinite;
}

.lb-row {
  display: grid;
  grid-template-columns: 32px 34px 1fr auto auto;
  align-items: center;
  gap: 12px;
  padding: 12px 22px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.05);
  transition: background 0.15s;
}

.lb-row:hover {
  background: rgba(255, 255, 255, 0.05);
}

.lb-row:last-child {
  border-bottom: none;
}

.lb-rn {
  font-family: var(--font-display);
  font-size: 20px;
  color: rgba(255, 255, 255, 0.4);
  text-align: center;
}

.lb-rn.g {
  background: linear-gradient(135deg, var(--accent3), #e8b800);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

.lb-rn.s {
  background: linear-gradient(135deg, #C0C0C0, #888);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

.lb-rn.b {
  background: linear-gradient(135deg, #CD7F32, #a05a1a);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

.lb-av {
  width: 34px;
  height: 34px;
  border-radius: 50%;
  background: var(--grad);
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: var(--font-display);
  font-size: 14px;
  color: #fff;
  flex-shrink: 0;
}

.lb-name {
  font-size: 14px;
  font-weight: 600;
  color: #fff;
}

.lb-trades {
  font-family: var(--font-mono);
  font-size: 10px;
  color: rgba(255, 255, 255, 0.4);
}

.lb-profit {
  font-family: var(--font-mono);
  font-size: 11px;
  font-weight: 600;
  color: #22c55e;
}

.lb-link {
  display: block;
  text-align: center;
  font-family: var(--font-mono);
  font-size: 10px;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: var(--accent);
  text-decoration: none;
  padding: 14px;
  border-top: 1px solid rgba(255, 255, 255, 0.08);
  transition: background 0.2s;
}

.lb-link:hover {
  background: rgba(var(--accent-rgb), 0.05);
  color: var(--accent);
}

/* PAYOUT CERT */
.payout-wrap {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.payout-title {
  font-family: var(--font-display);
  font-size: 28px;
  letter-spacing: 1px;
  color: #fff;
  margin-bottom: 4px;
}

.payout-sub {
  font-size: 13px;
  color: rgba(255, 255, 255, 0.4);
  line-height: 1.65;
  margin-bottom: 20px;
}

.payout-cert {
  background: linear-gradient(145deg, var(--bg3), var(--bg4));
  border: 1px solid rgba(var(--accent-rgb), 0.25);
  border-radius: 16px;
  padding: 24px;
  position: relative;
  overflow: hidden;
}

.payout-cert::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 3px;
  background: var(--grad);
}

.pc-label {
  font-family: var(--font-mono);
  font-size: 9px;
  letter-spacing: 3px;
  text-transform: uppercase;
  color: var(--accent);
  margin-bottom: 14px;
}

.pc-date {
  font-family: var(--font-mono);
  font-size: 10px;
  color: rgba(255, 255, 255, 0.4);
  margin-bottom: 10px;
}

.pc-name {
  font-family: var(--font-display);
  font-size: 26px;
  letter-spacing: 2px;
  color: #fff;
  margin-bottom: 14px;
}

.pc-amount {
  font-family: var(--font-display);
  font-size: 44px;
  letter-spacing: 1px;
  background: var(--grad);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  line-height: 1;
  margin-bottom: 4px;
}

.pc-meta {
  font-family: var(--font-mono);
  font-size: 10px;
  color: rgba(255, 255, 255, 0.4);
  display: flex;
  gap: 20px;
  flex-wrap: wrap;
}

.pc-badge {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 5px 12px;
  background: rgba(34, 197, 94, 0.1);
  border: 1px solid rgba(34, 197, 94, 0.2);
  border-radius: 6px;
  font-family: var(--font-mono);
  font-size: 10px;
  color: #22c55e;
  letter-spacing: 1px;
  margin-top: 12px;
}

.pc-badge-dot {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #22c55e;
}

.payout-stats {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 12px;
  margin-top: 16px;
}

.ps {
  padding: 14px 12px;
  background: rgba(255, 255, 255, 0.05);
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 10px;
  text-align: center;
}

.ps-n {
  font-family: var(--font-display);
  font-size: 22px;
  letter-spacing: 1px;
  background: var(--grad);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  line-height: 1;
}

.ps-l {
  font-family: var(--font-mono);
  font-size: 8px;
  letter-spacing: 1.5px;
  color: rgba(255, 255, 255, 0.4);
  text-transform: uppercase;
  margin-top: 3px;
}

/* INVESTOR */
.inv-bg {
  background: linear-gradient(135deg, var(--bg4) 0%, var(--accent2) 30%, var(--accent) 70%, var(--bg) 100%);
  padding: 80px 24px;
  text-align: center;
  position: relative;
  overflow: hidden;
}

.inv-bg::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: linear-gradient(rgba(255, 255, 255, 0.025) 1px, transparent 1px), linear-gradient(90deg, rgba(255, 255, 255, 0.025) 1px, transparent 1px);
  background-size: 44px 44px;
}

.inv-tag {
  font-family: var(--font-mono);
  font-size: 10px;
  letter-spacing: 3px;
  text-transform: uppercase;
  color: rgba(255, 255, 255, 0.45);
  margin-bottom: 16px;
  position: relative;
  z-index: 1;
}

.inv-h {
  font-family: var(--font-display);
  font-size: clamp(44px, 6vw, 70px);
  letter-spacing: 2px;
  color: #fff;
  margin-bottom: 12px;
  line-height: 0.95;
  position: relative;
  z-index: 1;
}

.inv-sub {
  font-size: 14px;
  color: rgba(255, 255, 255, 0.6);
  line-height: 1.7;
  max-width: 480px;
  margin: 0 auto 10px;
  position: relative;
  z-index: 1;
}

.inv-sub2 {
  font-size: 13px;
  color: rgba(255, 255, 255, 0.4);
  line-height: 1.65;
  max-width: 460px;
  margin: 0 auto 30px;
  position: relative;
  z-index: 1;
}

.inv-pills {
  display: flex;
  gap: 12px;
  justify-content: center;
  flex-wrap: wrap;
  margin-bottom: 32px;
  position: relative;
  z-index: 1;
}

.inv-pill {
  font-family: var(--font-mono);
  font-size: 10px;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  padding: 7px 14px;
  border-radius: 6px;
  background: rgba(255, 255, 255, 0.1);
  border: 1px solid rgba(255, 255, 255, 0.18);
  color: rgba(255, 255, 255, 0.75);
}

.inv-btn {
  display: inline-block;
  font-family: var(--font-display);
  font-size: 18px;
  letter-spacing: 3px;
  color: #000;
  text-decoration: none;
  padding: 14px 40px;
  background: linear-gradient(135deg, var(--accent3), #e8b800);
  border-radius: 8px;
  transition: all 0.25s;
  box-shadow: 0 8px 28px rgba(var(--accent-rgb), 0.3);
  font-weight: 400;
  position: relative;
  z-index: 1;
}

.inv-btn:hover {
  transform: translateY(-2px);
  box-shadow: 0 14px 40px rgba(var(--accent-rgb), 0.45);
  color: #000;
}

.inv-stats {
  display: flex;
  gap: 48px;
  justify-content: center;
  margin-top: 36px;
  flex-wrap: wrap;
  position: relative;
  z-index: 1;
}

.is-n {
  font-family: var(--font-display);
  font-size: 38px;
  letter-spacing: 1px;
  color: #fff;
  line-height: 1;
}

.is-l {
  font-family: var(--font-mono);
  font-size: 9px;
  letter-spacing: 2px;
  color: rgba(255, 255, 255, 0.4);
  text-transform: uppercase;
  margin-top: 4px;
}

/* FINAL CTA */
.fcta {
  background: var(--bg);
  text-align: center;
  padding: 130px 24px;
  position: relative;
  overflow: hidden;
}

.fcta::before {
  content: "";
  position: absolute;
  top: -100px;
  left: 50%;
  transform: translateX(-50%);
  width: 900px;
  height: 900px;
  background: radial-gradient(circle, rgba(var(--accent-rgb), 0.11) 0%, rgba(var(--accent-rgb), 0.06) 40%, transparent 65%);
  pointer-events: none;
}

.fcta-wm {
  position: absolute;
  bottom: -80px;
  left: 50%;
  transform: translateX(-50%);
  font-family: var(--font-display);
  font-size: 280px;
  letter-spacing: 12px;
  color: rgba(255, 255, 255, 0.018);
  pointer-events: none;
  white-space: nowrap;
  line-height: 1;
}

.fcta-i {
  position: relative;
  z-index: 1;
  max-width: 660px;
  margin: 0 auto;
}

.fcta-h {
  font-family: var(--font-display);
  font-size: clamp(64px, 10vw, 118px);
  letter-spacing: 3px;
  line-height: 0.88;
  margin-bottom: 20px;
}

.fcta-h span:first-child {
  color: #fff;
  display: block;
}

.fcta-h span:last-child {
  display: block;
  background: var(--grad);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  filter: drop-shadow(0 0 40px rgba(var(--accent-rgb), 0.25));
}

.fcta-sub {
  font-size: 15px;
  color: rgba(255, 255, 255, 0.6);
  line-height: 1.75;
  margin-bottom: 10px;
}

.fcta-sub2 {
  font-size: 13px;
  color: rgba(255, 255, 255, 0.4);
  line-height: 1.7;
  margin-bottom: 40px;
}

.fcta-btn {
  display: inline-block;
  font-family: var(--font-display);
  font-size: 20px;
  letter-spacing: 3px;
  color: #000;
  text-decoration: none;
  padding: 16px 52px;
  background: var(--grad);
  border-radius: 50px;
  transition: all 0.3s;
  box-shadow: 0 10px 40px rgba(var(--accent-rgb), 0.35);
  cursor: pointer;
  border: none;
  font-weight: 400;
}

.fcta-btn:hover {
  transform: translateY(-4px);
  box-shadow: 0 20px 60px rgba(var(--accent-rgb), 0.5);
  color: #000;
}

.fcta-tag {
  margin-top: 20px;
  font-family: var(--font-mono);
  font-size: 10px;
  letter-spacing: 3px;
  color: rgba(255, 255, 255, 0.4);
  text-transform: uppercase;
}

/* EXTENDED FOOTER */
.ft {
  display: grid;
  grid-template-columns: 2fr 1fr 1fr 1fr;
  gap: 48px;
  margin-bottom: 48px;
}

.fb-logo {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 14px;
}

.fb-logo img {
  width: 30px;
  height: 30px;
  border-radius: 50%;
  border: 1px solid rgba(var(--accent-rgb), 0.4);
}

.fb-logo span {
  font-family: var(--font-display);
  font-size: 18px;
  letter-spacing: 3px;
  color: #fff;
}

.fb-tag {
  font-size: 12px;
  color: rgba(255, 255, 255, 0.4);
  line-height: 1.7;
  margin-bottom: 18px;
  max-width: 240px;
}

.fb-soc {
  display: flex;
  gap: 10px;
}

.fsoc {
  width: 32px;
  height: 32px;
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.05);
  border: 1px solid rgba(255, 255, 255, 0.08);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 13px;
  transition: all 0.2s;
  text-decoration: none;
  color: rgba(255, 255, 255, 0.6);
}

.fsoc:hover {
  background: rgba(var(--accent-rgb), 0.15);
  border-color: rgba(var(--accent-rgb), 0.3);
  color: var(--accent);
}

.fc2 h4 {
  font-family: var(--font-mono);
  font-size: 10px;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: rgba(255, 255, 255, 0.4);
  margin-bottom: 16px;
}

.fc2 ul {
  list-style: none;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.fc2 a {
  font-size: 13px;
  color: rgba(255, 255, 255, 0.6);
  text-decoration: none;
  transition: color 0.2s;
}

.fc2 a:hover {
  color: var(--accent);
}

.fbot {
  border-top: 1px solid rgba(255, 255, 255, 0.05);
  padding-top: 24px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  gap: 12px;
}

.fcopy {
  font-family: var(--font-mono);
  font-size: 10px;
  color: rgba(255, 255, 255, 0.4);
  letter-spacing: 0.5px;
}

.fhash {
  font-family: var(--font-display);
  font-size: 14px;
  letter-spacing: 3px;
  background: var(--grad);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

/* MODAL — tr-modal-* prefix avoids Bootstrap collision */
.tr-modal-overlay {
  position: fixed;
  inset: 0;
  z-index: 500;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 20px;
  background: rgba(4, 4, 10, 0.85);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.3s;
}

.tr-modal-overlay.open {
  opacity: 1;
  pointer-events: all;
}

.tr-modal {
  width: 100%;
  max-width: 480px;
  background: var(--bg3);
  border: 1px solid rgba(var(--accent-rgb), 0.2);
  border-radius: 24px;
  overflow: hidden;
  position: relative;
  transform: translateY(20px) scale(0.97);
  transition: transform 0.3s;
  box-shadow: 0 40px 100px rgba(0, 0, 0, 0.6), 0 0 80px rgba(var(--accent-rgb), 0.08);
}

.tr-modal-overlay.open .tr-modal {
  transform: translateY(0) scale(1);
}

.tr-modal-top {
  height: 4px;
  background: var(--grad);
}

.tr-modal-head {
  padding: 32px 36px 24px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.08);
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.tr-modal-logo {
  display: flex;
  align-items: center;
  gap: 10px;
}

.tr-modal-logo img {
  width: 36px;
  height: 36px;
  border-radius: 50%;
  border: 1.5px solid rgba(var(--accent-rgb), 0.5);
  box-shadow: 0 0 12px rgba(var(--accent-rgb), 0.2);
}

.tr-modal-logo-text {
  font-family: var(--font-display);
  font-size: 18px;
  letter-spacing: 3px;
  color: #fff;
}

.tr-modal-close {
  width: 32px;
  height: 32px;
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.05);
  border: 1px solid rgba(255, 255, 255, 0.08);
  color: rgba(255, 255, 255, 0.4);
  font-size: 18px;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.2s;
  line-height: 1;
}

.tr-modal-close:hover {
  background: rgba(var(--accent-rgb), 0.1);
  border-color: rgba(var(--accent-rgb), 0.3);
  color: #fff;
}

.tr-modal-body {
  padding: 28px 36px 36px;
}

.tr-modal-title {
  font-family: var(--font-display);
  font-size: 34px;
  letter-spacing: 2px;
  color: #fff;
  margin-bottom: 6px;
  line-height: 1;
}

.tr-modal-sub {
  font-size: 13px;
  color: rgba(255, 255, 255, 0.4);
  line-height: 1.6;
  margin-bottom: 28px;
}

.tr-modal-sub strong {
  color: var(--accent);
  font-weight: 600;
}

.tr-form-row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px;
  margin-bottom: 14px;
}

.tr-form-group {
  display: flex;
  flex-direction: column;
  gap: 6px;
  margin-bottom: 14px;
}

.tr-form-group label {
  font-family: var(--font-mono);
  font-size: 9px;
  font-weight: 600;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: rgba(255, 255, 255, 0.4);
}

.tr-form-input {
  background: rgba(255, 255, 255, 0.05);
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 10px;
  padding: 12px 16px;
  font-family: var(--font-body), sans-serif;
  font-size: 14px;
  color: #fff;
  outline: none;
  transition: all 0.25s;
  width: 100%;
}

.tr-form-input::-moz-placeholder {
  color: rgba(255, 255, 255, 0.2);
}

.tr-form-input::placeholder {
  color: rgba(255, 255, 255, 0.2);
}

.tr-form-input:focus {
  border-color: rgba(var(--accent-rgb), 0.5);
  background: rgba(var(--accent-rgb), 0.04);
  box-shadow: 0 0 0 3px rgba(var(--accent-rgb), 0.1);
}

.tr-form-select {
  background: rgba(255, 255, 255, 0.05);
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 10px;
  padding: 12px 16px;
  font-family: var(--font-body), sans-serif;
  font-size: 14px;
  color: #fff;
  outline: none;
  transition: all 0.25s;
  width: 100%;
  cursor: pointer;
  -webkit-appearance: none;
  -moz-appearance: none;
       appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='rgba(255,255,255,0.3)' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 14px center;
}

.tr-form-select:focus {
  border-color: rgba(var(--accent-rgb), 0.5);
  box-shadow: 0 0 0 3px rgba(var(--accent-rgb), 0.1);
}

.tr-form-select option {
  background: #111;
  color: #fff;
}

.tr-pass-wrap {
  position: relative;
}

.tr-pass-toggle {
  position: absolute;
  right: 14px;
  top: 50%;
  transform: translateY(-50%);
  background: none;
  border: none;
  color: rgba(255, 255, 255, 0.4);
  cursor: pointer;
  font-size: 14px;
  padding: 0;
  transition: color 0.2s;
}

.tr-pass-toggle:hover {
  color: #fff;
}

.tr-form-divider {
  display: flex;
  align-items: center;
  gap: 12px;
  margin: 18px 0;
}

.tr-form-divider::before, .tr-form-divider::after {
  content: "";
  flex: 1;
  height: 1px;
  background: rgba(255, 255, 255, 0.08);
}

.tr-form-divider span {
  font-family: var(--font-mono);
  font-size: 10px;
  letter-spacing: 2px;
  color: rgba(255, 255, 255, 0.2);
  text-transform: uppercase;
  white-space: nowrap;
}

.tr-form-terms {
  font-size: 12px;
  color: rgba(255, 255, 255, 0.4);
  line-height: 1.6;
  margin-bottom: 20px;
}

.tr-form-terms a {
  color: var(--accent);
  text-decoration: none;
}

.tr-form-terms a:hover {
  text-decoration: underline;
}

.tr-modal-submit {
  width: 100%;
  font-family: var(--font-display);
  font-size: 19px;
  letter-spacing: 3px;
  color: #000;
  border: none;
  cursor: pointer;
  padding: 15px 20px;
  border-radius: 12px;
  background: var(--grad);
  transition: all 0.25s;
  box-shadow: 0 6px 24px rgba(var(--accent-rgb), 0.3);
  font-weight: 400;
}

.tr-modal-submit:hover {
  transform: translateY(-2px);
  box-shadow: 0 12px 36px rgba(var(--accent-rgb), 0.45);
}

.tr-modal-login {
  text-align: center;
  margin-top: 18px;
  font-size: 13px;
  color: rgba(255, 255, 255, 0.4);
}

.tr-modal-login a {
  color: var(--accent);
  text-decoration: none;
  font-weight: 600;
}

.tr-modal-login a:hover {
  text-decoration: underline;
}

/* ============================================================
   HOME (INDEX) PAGE
   ============================================================ */
.tr-ticker {
  width: 100%;
  overflow: hidden;
  background: var(--bg2);
  border-top: 1px solid var(--border);
  border-bottom: 1px solid var(--border);
  padding: 10px 0;
  position: relative;
  z-index: 1;
}

.tr-ticker-inner {
  display: flex;
  gap: 40px;
  width: -moz-max-content;
  width: max-content;
  animation: tr-ticker-scroll 40s linear infinite;
}

.tr-ticker-item {
  display: flex;
  align-items: center;
  gap: 8px;
  white-space: nowrap;
  font-family: var(--font-mono);
  font-size: 10px;
  letter-spacing: 1px;
}

.tr-ticker-sym {
  color: var(--text2);
}

.tr-ticker-up {
  color: var(--green);
}

.tr-ticker-dn {
  color: var(--red);
}

.tr-ticker-sep {
  color: var(--border-h);
}

@keyframes tr-ticker-scroll {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(-50%);
  }
}
.hp-how-steps {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 0;
  position: relative;
}

.hp-how-step {
  text-align: center;
  padding: 0 16px;
  position: relative;
}

.hp-how-step-line {
  position: absolute;
  top: 27px;
  left: calc(50% + 38px);
  right: -16px;
  height: 1px;
  background: linear-gradient(90deg, var(--accent), transparent);
}

.hp-step-num {
  width: 56px;
  height: 56px;
  border-radius: 50%;
  background: var(--grad);
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: var(--font-display);
  font-size: 24px;
  color: #000;
  margin: 0 auto 16px;
  position: relative;
  z-index: 1;
  box-shadow: 0 0 20px rgba(139, 92, 246, 0.4);
}

.hp-challenge-card {
  background: var(--card-bg);
  border: 1px solid var(--border);
  border-radius: 18px;
  padding: 32px;
  position: relative;
  overflow: hidden;
  transition: border-color 0.2s, transform 0.2s;
  height: 100%;
}

.hp-challenge-card:hover {
  border-color: var(--border-h);
  transform: translateY(-4px);
}

.hp-challenge-card.featured {
  border-color: var(--border-h);
}

.hp-challenge-card.featured::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(145deg, var(--accent2), transparent 50%);
  opacity: 0.06;
  pointer-events: none;
}

.hp-orbit-container {
  position: relative;
  width: 260px;
  height: 260px;
  margin: 0 auto;
}

.hp-orbit-center {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 86px;
  height: 86px;
  border-radius: 50%;
  background: var(--grad);
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: var(--font-display);
  font-size: 20px;
  color: #000;
  box-shadow: 0 0 40px rgba(139, 92, 246, 0.5);
  z-index: 2;
}

.hp-orbit-ring {
  position: absolute;
  top: 50%;
  left: 50%;
  border: 1px dashed var(--border-h);
  border-radius: 50%;
  transform: translate(-50%, -50%);
}

.hp-orbit-ring-1 {
  width: 154px;
  height: 154px;
  animation: hp-orbit-spin 8s linear infinite;
}

.hp-orbit-ring-2 {
  width: 240px;
  height: 240px;
  animation: hp-orbit-spin 14s linear infinite reverse;
}

.hp-orbit-dot {
  position: absolute;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: var(--accent);
  top: -5px;
  left: 50%;
  transform: translateX(-50%);
  box-shadow: 0 0 8px var(--accent);
}

@keyframes hp-orbit-spin {
  from {
    transform: translate(-50%, -50%) rotate(0deg);
  }
  to {
    transform: translate(-50%, -50%) rotate(360deg);
  }
}
.hp-lb-row {
  display: grid;
  grid-template-columns: 32px 1fr 80px 80px;
  gap: 12px;
  align-items: center;
  padding: 10px 14px;
  border-radius: 10px;
  background: var(--w05);
  border: 1px solid var(--border);
  margin-bottom: 6px;
  transition: border-color 0.2s;
}

.hp-lb-row:hover {
  border-color: var(--border-h);
}

.hp-lb-row.top {
  border-color: var(--border-h);
  background: rgba(139, 92, 246, 0.07);
}

@media (max-width: 767px) {
  .hp-how-steps {
    grid-template-columns: 1fr 1fr;
  }
  .hp-how-step-line {
    display: none;
  }
  .hp-orbit-container {
    width: 200px;
    height: 200px;
  }
  .hp-orbit-ring-2 {
    width: 184px;
    height: 184px;
  }
  .hp-orbit-center {
    width: 68px;
    height: 68px;
    font-size: 16px;
  }
}
@media (max-width: 479px) {
  .hp-how-steps {
    grid-template-columns: 1fr;
  }
}
/* ============================================================
   PLATFORM PAGE
   ============================================================ */
.pl-hero {
  padding: 130px 0 60px;
  text-align: center;
}

.pl-hero-title {
  font-family: var(--font-display);
  font-size: clamp(60px, 10vw, 110px);
  line-height: 0.88;
  letter-spacing: 3px;
  color: var(--text);
  margin-bottom: 16px;
}

.pl-hero-title em {
  font-style: normal;
  background: var(--grad);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

.pl-intro-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 64px;
  align-items: start;
}

.pl-intro-quote {
  background: var(--card-bg);
  border: 1px solid var(--border-h);
  border-radius: 16px;
  padding: 28px;
  position: relative;
  overflow: hidden;
  margin-top: 28px;
}

.pl-intro-quote::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 3px;
  background: var(--grad);
}

.pl-intro-block {
  display: flex;
  align-items: flex-start;
  gap: 16px;
  padding: 20px;
  border-radius: 14px;
  background: var(--w05);
  border: 1px solid var(--border);
  margin-bottom: 16px;
  transition: border-color 0.2s, transform 0.2s;
}

.pl-intro-block:hover {
  border-color: var(--border-h);
  transform: translateX(4px);
}

.pl-intro-block-icon {
  width: 46px;
  height: 46px;
  border-radius: 12px;
  background: var(--grad);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 20px;
  flex-shrink: 0;
}

.pl-intro-block-title {
  font-family: var(--font-display);
  font-size: 19px;
  letter-spacing: 1px;
  color: var(--text);
  margin-bottom: 6px;
}

.pl-intro-block-desc {
  font-size: 13px;
  color: var(--text3);
  line-height: 1.7;
}

.pl-feat-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
}

.pl-fc {
  background: var(--card-bg);
  border: 1px solid var(--border);
  border-radius: 16px;
  padding: 28px 24px;
  position: relative;
  overflow: hidden;
  transition: border-color 0.2s, transform 0.2s;
  cursor: default;
}

.pl-fc:hover {
  border-color: var(--border-h);
  transform: translateY(-3px);
}

.pl-fc-bar {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: 3px;
  background: var(--grad);
  transform: scaleX(0);
  transform-origin: left;
  transition: transform 0.35s ease;
}

.pl-fc:hover .pl-fc-bar {
  transform: scaleX(1);
}

.pl-fc-icon {
  width: 44px;
  height: 44px;
  border-radius: 12px;
  background: var(--w05);
  border: 1px solid var(--border);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 20px;
  margin-bottom: 18px;
}

.pl-fc-num {
  font-family: var(--font-mono);
  font-size: 9px;
  letter-spacing: 2px;
  color: var(--text3);
  text-transform: uppercase;
  margin-bottom: 6px;
}

.pl-fc-title {
  font-family: var(--font-display);
  font-size: 20px;
  letter-spacing: 1px;
  color: var(--text);
  margin-bottom: 8px;
}

.pl-fc-desc {
  font-size: 12px;
  color: var(--text2);
  line-height: 1.6;
  margin-bottom: 10px;
}

.pl-fc-detail {
  font-size: 11px;
  color: var(--text3);
  line-height: 1.6;
}

.pl-steps {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 0;
}

.pl-step {
  text-align: center;
  padding: 0 18px;
  position: relative;
}

.pl-step:not(:last-child)::after {
  content: "";
  position: absolute;
  top: 27px;
  left: calc(50% + 32px);
  right: -18px;
  height: 2px;
  background: linear-gradient(90deg, var(--accent), transparent);
}

.pl-step-n {
  width: 56px;
  height: 56px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: var(--font-display);
  font-size: 22px;
  color: #fff;
  margin: 0 auto 20px;
  border: 2px solid;
  position: relative;
  z-index: 1;
}

.pl-step-title {
  font-family: var(--font-display);
  font-size: 19px;
  letter-spacing: 1px;
  color: var(--text);
  margin-bottom: 10px;
}

.pl-step-desc {
  font-size: 12px;
  color: var(--text3);
  line-height: 1.8;
}

@media (max-width: 991px) {
  .pl-intro-grid {
    grid-template-columns: 1fr;
    gap: 40px;
  }
}
@media (max-width: 767px) {
  .pl-feat-grid {
    grid-template-columns: 1fr 1fr;
  }
  .pl-steps {
    grid-template-columns: 1fr 1fr;
  }
  .pl-step:not(:last-child)::after {
    display: none;
  }
}
@media (max-width: 479px) {
  .pl-feat-grid {
    grid-template-columns: 1fr;
  }
  .pl-steps {
    grid-template-columns: 1fr;
  }
}
/* ============================================================
   GAMIFIED TRADING PAGE
   ============================================================ */
.ch-hero {
  padding: 130px 0 60px;
  text-align: center;
}

.ch-hero-title {
  font-family: var(--font-display);
  font-size: clamp(56px, 10vw, 110px);
  line-height: 0.88;
  letter-spacing: 3px;
  color: var(--text);
  margin-bottom: 16px;
}

.ch-hero-title em {
  font-style: normal;
  background: var(--grad);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

.ch-chal-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 24px;
}

.ch-card {
  background: var(--card-bg);
  border: 1px solid var(--border);
  border-radius: 20px;
  padding: 36px;
  position: relative;
  overflow: hidden;
  height: 100%;
}

.ch-card.featured {
  border-color: var(--border-h);
}

.ch-card.featured::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(145deg, var(--accent2), transparent 50%);
  opacity: 0.06;
  pointer-events: none;
}

.ch-card-top {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 3px;
  background: var(--grad);
}

.ch-check {
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: 13px;
  color: var(--text2);
  margin-bottom: 10px;
}

.ch-check svg {
  flex-shrink: 0;
}

.ch-check.dim {
  color: var(--text3);
}

.ch-orb-wrap {
  position: relative;
  width: 280px;
  height: 280px;
  margin: 0 auto;
}

.ch-orb1 {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 160px;
  height: 160px;
  border: 1px dashed var(--border-h);
  border-radius: 50%;
  transform: translate(-50%, -50%);
  animation: ch-spin 8s linear infinite;
}

.ch-orb2 {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 260px;
  height: 260px;
  border: 1px dashed var(--border-h);
  border-radius: 50%;
  transform: translate(-50%, -50%);
  animation: ch-spin 14s linear infinite reverse;
}

.ch-orb-dot {
  position: absolute;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: var(--accent);
  top: -5px;
  left: 50%;
  transform: translateX(-50%);
  box-shadow: 0 0 10px var(--accent);
}

.ch-orb-dot-gold {
  background: var(--gold);
  box-shadow: 0 0 10px var(--gold);
}

.ch-orb-c {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 90px;
  height: 90px;
  border-radius: 50%;
  background: var(--grad);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  z-index: 2;
  box-shadow: 0 0 40px rgba(139, 92, 246, 0.5);
}

.ch-orb-c-label {
  font-family: var(--font-display);
  font-size: 20px;
  color: #000;
  letter-spacing: 1px;
  line-height: 1;
}

.ch-orb-c-sub {
  font-family: var(--font-mono);
  font-size: 8px;
  letter-spacing: 2px;
  color: rgba(0, 0, 0, 0.6);
  text-transform: uppercase;
  margin-top: 4px;
}

.ch-tok-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px;
}

.ch-tstat {
  background: var(--w05);
  border: 1px solid var(--border);
  border-radius: 14px;
  padding: 20px;
  text-align: center;
  position: relative;
  overflow: hidden;
}

.ch-tstat::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 2px;
  background: var(--grad);
}

.ch-tstat-value {
  font-family: var(--font-display);
  font-size: 28px;
  background: var(--grad);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  margin-bottom: 4px;
}

.ch-tstat-label {
  font-family: var(--font-mono);
  font-size: 8px;
  letter-spacing: 2px;
  color: var(--text3);
  text-transform: uppercase;
}

@keyframes ch-spin {
  from {
    transform: translate(-50%, -50%) rotate(0deg);
  }
  to {
    transform: translate(-50%, -50%) rotate(360deg);
  }
}
.ch-gam-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 20px;
}

.ch-gc {
  background: var(--card-bg);
  border: 1px solid var(--border);
  border-radius: 16px;
  padding: 28px 20px;
  text-align: center;
  position: relative;
  overflow: hidden;
  transition: border-color 0.2s, transform 0.2s;
  cursor: default;
}

.ch-gc:hover {
  border-color: var(--border-h);
  transform: translateY(-4px);
}

.ch-gc-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(145deg, var(--accent2), transparent);
  opacity: 0;
  transition: opacity 0.3s;
  pointer-events: none;
}

.ch-gc:hover .ch-gc-overlay {
  opacity: 0.1;
}

.ch-lb-row {
  display: grid;
  grid-template-columns: 32px 1fr 60px 80px 80px;
  gap: 10px;
  align-items: center;
  padding: 10px 14px;
  border-radius: 10px;
  background: var(--w05);
  border: 1px solid var(--border);
  margin-bottom: 6px;
  transition: border-color 0.2s;
}

.ch-lb-row:hover {
  border-color: var(--border-h);
}

.ch-lb-row.gold {
  border-color: rgba(245, 197, 24, 0.4);
  background: rgba(245, 197, 24, 0.06);
}

.ch-lb-row.silver {
  border-color: rgba(200, 200, 200, 0.3);
  background: rgba(200, 200, 200, 0.04);
}

.ch-lb-row.bronze {
  border-color: rgba(205, 127, 50, 0.3);
  background: rgba(205, 127, 50, 0.04);
}

.ch-lb-header {
  display: grid;
  grid-template-columns: 32px 1fr 60px 80px 80px;
  gap: 10px;
  padding: 6px 14px;
  margin-bottom: 6px;
}

.ch-lb-trades {
  font-family: var(--font-mono);
  font-size: 11px;
  color: var(--text2);
}

.ch-lb-silver {
  font-family: var(--font-display);
  font-size: 16px;
  color: #C0C0C0;
}

.ch-lb-bronze {
  font-family: var(--font-display);
  font-size: 16px;
  color: #CD7F32;
}

.ch-cert {
  background: var(--card-bg);
  border: 1px solid var(--border-h);
  border-radius: 20px;
  padding: 30px;
  position: relative;
  overflow: hidden;
}

.ch-cert::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 3px;
  background: var(--grad);
}

.ch-cert-badge {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 5px 12px;
  border-radius: 20px;
  background: rgba(34, 197, 94, 0.12);
  border: 1px solid rgba(34, 197, 94, 0.3);
  font-family: var(--font-mono);
  font-size: 9px;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: var(--green);
}

.ch-cert-label {
  font-family: var(--font-mono);
  font-size: 9px;
  letter-spacing: 3px;
  text-transform: uppercase;
  color: var(--text3);
  margin-bottom: 20px;
}

.ch-cert-date {
  font-family: var(--font-mono);
  font-size: 10px;
  letter-spacing: 2px;
  color: var(--text3);
  text-transform: uppercase;
  margin-bottom: 10px;
}

.ch-cert-trader {
  font-family: var(--font-display);
  font-size: 28px;
  letter-spacing: 2px;
  color: var(--text);
  margin-bottom: 6px;
}

.ch-cert-amount {
  font-family: var(--font-display);
  font-size: 56px;
  letter-spacing: 1px;
  background: var(--grad);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  line-height: 1;
  margin-bottom: 16px;
}

.ch-cert-meta {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 10px;
  padding-top: 18px;
  border-top: 1px solid var(--border);
  margin-bottom: 20px;
}

.ch-cert-meta-item {
  text-align: center;
}

.ch-cert-meta-label {
  font-family: var(--font-mono);
  font-size: 8px;
  letter-spacing: 1.5px;
  color: var(--text3);
  text-transform: uppercase;
  margin-bottom: 4px;
}

.ch-cert-meta-value {
  font-family: var(--font-display);
  font-size: 14px;
  letter-spacing: 1px;
  color: var(--text);
}

.ch-cert-meta-value.green {
  color: var(--green);
}

.ch-cert-stats {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 10px;
  padding-top: 16px;
  border-top: 1px solid var(--border);
  margin-bottom: 22px;
  text-align: center;
}

.ch-cert-stat-value {
  font-family: var(--font-display);
  font-size: 22px;
  background: var(--grad);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

.ch-cert-stat-label {
  font-family: var(--font-mono);
  font-size: 8px;
  letter-spacing: 1.5px;
  color: var(--text3);
  text-transform: uppercase;
  margin-top: 2px;
}

@media (max-width: 991px) {
  .ch-chal-grid {
    grid-template-columns: 1fr;
  }
  .ch-gam-grid {
    grid-template-columns: 1fr 1fr;
  }
  .ch-lb-row, .ch-lb-header {
    grid-template-columns: 28px 1fr 60px 70px;
    font-size: 11px;
  }
  .ch-lb-row .col-trades {
    display: none;
  }
}
@media (max-width: 767px) {
  .ch-gam-grid {
    grid-template-columns: 1fr 1fr;
  }
  .ch-orb-wrap {
    width: 220px;
    height: 220px;
  }
  .ch-orb2 {
    width: 210px;
    height: 210px;
  }
}
@media (max-width: 479px) {
  .ch-gam-grid {
    grid-template-columns: 1fr;
  }
}
/* ============================================================
   PARTNERSHIPS PAGE
   ============================================================ */
.af-hero {
  padding: 130px 0 80px;
  text-align: center;
}

.af-hero-title {
  font-family: var(--font-display);
  font-size: clamp(58px, 10vw, 110px);
  line-height: 0.88;
  letter-spacing: 3px;
  color: var(--text);
  margin-bottom: 16px;
}

.af-hero-title em {
  font-style: normal;
  background: var(--grad);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

.af-step-title {
  font-family: var(--font-display);
  font-size: 20px;
  letter-spacing: 1px;
  color: var(--text);
  margin-bottom: 10px;
}

.af-step-desc {
  font-size: 13px;
  color: var(--text3);
  line-height: 1.8;
}

.af-tier-header {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  margin-bottom: 20px;
}

.af-tier-label {
  font-family: var(--font-mono);
  font-size: 9px;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: var(--text3);
  margin-bottom: 8px;
}

.af-tier-label-accent {
  color: var(--accent);
}

.af-tier-rate {
  font-family: var(--font-display);
  font-size: 50px;
  letter-spacing: 1px;
  background: var(--grad);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  line-height: 1;
}

.af-tier-rate-sub {
  font-family: var(--font-mono);
  font-size: 9px;
  letter-spacing: 1px;
  color: var(--text3);
  margin-top: 6px;
}

.af-tier-desc {
  font-size: 13px;
  color: var(--text2);
  line-height: 1.7;
  margin-bottom: 24px;
}

.af-tier-checks {
  margin-bottom: 28px;
}

.af-tier-btn {
  width: 100%;
  display: block;
  text-align: center;
  padding: 12px 20px;
  text-decoration: none;
}

.af-cta-section {
  padding: 100px 0;
  background: var(--bg2);
  text-align: center;
  position: relative;
  overflow: hidden;
}

.af-tier-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
}

.af-tier {
  background: var(--card-bg);
  border: 1px solid var(--border);
  border-radius: 20px;
  padding: 32px;
  position: relative;
  overflow: hidden;
  height: 100%;
  transition: border-color 0.2s, transform 0.2s;
}

.af-tier:hover {
  border-color: var(--border-h);
  transform: translateY(-4px);
}

.af-tier.featured {
  border-color: var(--border-h);
}

.af-tier-top {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 3px;
  background: var(--grad);
}

.af-check {
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: 13px;
  color: var(--text2);
  margin-bottom: 10px;
}

.af-check svg {
  flex-shrink: 0;
}

.af-steps {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
}

.af-step {
  text-align: center;
  padding: 32px 20px;
  background: var(--w05);
  border: 1px solid var(--border);
  border-radius: 16px;
  position: relative;
}

.af-step-n {
  width: 52px;
  height: 52px;
  border-radius: 50%;
  background: var(--grad);
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: var(--font-display);
  font-size: 22px;
  color: #000;
  margin: 0 auto 18px;
}

.af-stat {
  text-align: center;
  padding: 20px;
  border-right: 1px solid var(--border);
}

.af-stat:last-child {
  border-right: none;
}

@media (max-width: 991px) {
  .af-tier-grid {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 767px) {
  .af-steps {
    grid-template-columns: 1fr;
  }
}
/* RESPONSIVE — marketing widgets */
@media (max-width: 900px) {
  .intro-grid, .how-intro, .chal-intro, .tok-layout, .gam-intro, .sp-layout, .ft {
    grid-template-columns: 1fr;
    gap: 40px;
  }
  .feat-grid, .gam-grid {
    grid-template-columns: 1fr 1fr;
  }
  .steps {
    grid-template-columns: 1fr 1fr;
    gap: 32px;
  }
  .steps::before {
    display: none;
  }
  .chal-grid {
    grid-template-columns: 1fr;
  }
  .tr-form-row {
    grid-template-columns: 1fr;
  }
  .payout-stats {
    grid-template-columns: 1fr 1fr;
  }
}
@media (max-width: 600px) {
  .hero-h1 {
    font-size: clamp(60px, 15vw, 100px);
  }
  .sh2 {
    font-size: clamp(40px, 10vw, 60px);
  }
  .sec {
    padding: 70px 20px;
  }
  .cc {
    padding: 28px 22px;
  }
  .hero-stats {
    flex-direction: column;
    border-radius: 0;
  }
  .hstat {
    border-right: none;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
  }
  .hstat:last-child {
    border-bottom: none;
  }
  .feat-grid, .gam-grid {
    grid-template-columns: 1fr;
  }
  .ft {
    grid-template-columns: 1fr 1fr;
  }
}
/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInNjc3MvQXJlYXMvcHVibGljL3B1YmxpYy5zY3NzIiwic2Nzcy9BcmVhcy9fY29tbW9uLnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQ09BO0VBQ0U7RUFDQTtFQUNBOzs7QUFJRjtFQUVFO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7O0FBSUY7RUFFRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUlGO0VBRUU7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOzs7QUQ1R0Y7QUFFQTtBQUNBO0FBQ0E7RUFDRTtFQUNBO0VBQ0E7RUFDQTtBQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7OztBQUdGO0FBQ0E7RUFDRTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VB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TztFQUFRO0VBQVc7OztBQUMvRDtFQUFVO0VBQWE7RUFBbUI7RUFBUztFQUFlO0VBQW1COzs7QUFDckY7RUFBYzs7O0FBQ2Q7RUFBVTtFQUFhO0VBQW9DOzs7QUFDM0Q7RUFBUztFQUFrQjtFQUFrQjtFQUFzQjtFQUErQjtFQUFtQjs7O0FBQ3JIO0VBQVc7RUFBVztFQUFZO0VBQWtCO0VBQXVCO0VBQWE7RUFBbUI7RUFBdUI7RUFBZ0M7RUFBZTtFQUFXOzs7QUFDNUw7RUFBUztFQUFrQjtFQUFhOzs7QUFDeEM7RUFBb0I7OztBQUNwQjtFQUF3QjtJQUFjOzs7QUFDdEM7RUFBd0I7SUFBVTs7O0FBRWxDO0FBQ0E7RUFDRTtJQUF5RTtJQUEwQjs7RUFDbkc7SUFBcUI7O0VBQ3JCO0lBQU87SUFBOEI7O0VBQ3JDO0lBQWU7O0VBQ2Y7SUFBVzs7RUFDWDtJQUFhOztFQUNiO0lBQWM7OztBQUVoQjtFQUNFO0lBQVM7O0VBQ1Q7SUFBSzs7RUFDTDtJQUFLOztFQUNMO0lBQUk7O0VBQ0o7SUFBWTtJQUFzQjs7RUFDbEM7SUFBTztJQUFrQjs7RUFDekI7SUFBa0I7O0VBQ2xCO0lBQXFCOztFQUNyQjtJQUFJIiwiZmlsZSI6InNjc3MvQXJlYXMvcHVibGljL3B1YmxpYy5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBUcmFkYW50ZSDDosKAwpQgcHVibGljLmNzc1xuICAgU2hhcmVkIHN0eWxlcyBmb3IgYWxsIHB1YmxpYy1mYWNpbmcgcGFnZXNcbiAgIEZvbnQ6IFNwYWNlIEdyb3Rlc2sgKGJvZHkpICsgQmViYXMgTmV1ZSAoZGlzcGxheSkgKyBJQk0gUGxleCBNb25vIChkYXRhKVxuICAgRnJhbWV3b3JrOiBCb290c3RyYXAgNS4zXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8vIFNoYXJlZCBmb250cyArIDMtdGhlbWUgc3lzdGVtXG5AaW1wb3J0ICcuLi9fY29tbW9uJztcblxuLyogw6LClMKAw6LClMKAIEdPT0dMRSBGT05UUyDDosKUwoDDosKUwoAgKi9cblxuLyogw6LClMKAw6LClMKAIFRIRU1FIFZBUklBQkxFUyDDosKUwoDDosKUwoAgKi9cbi8qIFN0YXRpYyB2YXJzIMOiwoDClCBuZXZlciBjaGFuZ2UgKi9cbjpyb290IHtcbiAgLS1ncmVlbjogIzIyYzU1ZTtcbiAgLS1yZWQ6ICAgI2VmNDQ0NDtcbiAgLS1nb2xkOiAgI0Y1QzUxODtcbiAgLS10ZWFsOiAgIzA2QjZENDtcbiAgLyogRGVmYXVsdCB0byB2aW9sZXQgc28gcGFnZSBuZXZlciBmbGFzaGVzIHVuc3R5bGVkICovXG4gIC0tYmc6ICAgICAgICAgIzBBMDQxNDtcbiAgLS1iZzI6ICAgICAgICAjMEUwODIwO1xuICAtLWJnMzogICAgICAgICMxMzBDMjg7XG4gIC0tYmc0OiAgICAgICAgIzFBMTAzNTtcbiAgLS1hY2NlbnQ6ICAgICAjOEI1Q0Y2O1xuICAtLWFjY2VudDI6ICAgICM2RDI4RDk7XG4gIC0tYWNjZW50MzogICAgI0E3OEJGQTtcbiAgLS1ncmFkOiAgICAgICBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCAjNEMxRDk1IDAlLCAjN0MzQUVEIDQ1JSwgI0E3OEJGQSAxMDAlKTtcbiAgLS1ib3JkZXI6ICAgICByZ2JhKDI1NSwyNTUsMjU1LDAuMDcpO1xuICAtLWJvcmRlci1oOiAgIHJnYmEoMTM5LDkyLDI0NiwwLjQpO1xuICAtLXRleHQ6ICAgICAgICNGMEYwRjQ7XG4gIC0tdGV4dDI6ICAgICAgcmdiYSgyNDAsMjQwLDI0NCwwLjYpO1xuICAtLXRleHQzOiAgICAgIHJnYmEoMjQwLDI0MCwyNDQsMC4zKTtcbiAgLS1iYWRnZTogICAgICByZ2JhKDEzOSw5MiwyNDYsMC4xKTtcbiAgLS1uYXYtYmc6ICAgICByZ2JhKDEwLDQsMjAsMC45Mik7XG4gIC0tY2FyZC1iZzogICAgcmdiYSgxOSwxMiw0MCwwLjk1KTtcbiAgLS1nbG93MTogICAgICByZ2JhKDEzOSw5MiwyNDYsMC4yOCk7XG4gIC0tZ2xvdzI6ICAgICAgcmdiYSgxMDksNDAsMjE3LDAuMTgpO1xuICAtLWdyaWQtY29sb3I6IHJnYmEoMTM5LDkyLDI0NiwwLjE0KTtcbiAgLS13MDU6IHJnYmEoMjU1LDI1NSwyNTUsMC4wNSk7XG4gIC0tdzA4OiByZ2JhKDI1NSwyNTUsMjU1LDAuMDgpO1xuICAtLXcxMjogcmdiYSgyNTUsMjU1LDI1NSwwLjEyKTtcbiAgLS13MjA6IHJnYmEoMjU1LDI1NSwyNTUsMC4yMCk7XG4gIC0tdzQwOiByZ2JhKDI1NSwyNTUsMjU1LDAuNDApO1xuICAtLXc2MDogcmdiYSgyNTUsMjU1LDI1NSwwLjYwKTtcbn1cblxuLyogVklPTEVUIFRIRU1FIMOiwoDClCBleHBsaWNpdCwgc2FtZSBhcyA6cm9vdCBkZWZhdWx0cyAqL1xuaHRtbFtkYXRhLXRoZW1lPVwidmlvbGV0XCJdIHtcbiAgLS1iZzogICAgICAgICAjMEEwNDE0O1xuICAtLWJnMjogICAgICAgICMwRTA4MjA7XG4gIC0tYmczOiAgICAgICAgIzEzMEMyODtcbiAgLS1iZzQ6ICAgICAgICAjMUExMDM1O1xuICAtLWFjY2VudDogICAgICM4QjVDRjY7XG4gIC0tYWNjZW50MjogICAgIzZEMjhEOTtcbiAgLS1hY2NlbnQzOiAgICAjQTc4QkZBO1xuICAtLWdyYWQ6ICAgICAgIGxpbmVhci1ncmFkaWVudCgxMzVkZWcsICM0QzFEOTUgMCUsICM3QzNBRUQgNDUlLCAjQTc4QkZBIDEwMCUpO1xuICAtLWJvcmRlcjogICAgIHJnYmEoMjU1LDI1NSwyNTUsMC4wNyk7XG4gIC0tYm9yZGVyLWg6ICAgcmdiYSgxMzksOTIsMjQ2LDAuNCk7XG4gIC0tdGV4dDogICAgICAgI0YwRjBGNDtcbiAgLS10ZXh0MjogICAgICByZ2JhKDI0MCwyNDAsMjQ0LDAuNik7XG4gIC0tdGV4dDM6ICAgICAgcmdiYSgyNDAsMjQwLDI0NCwwLjMpO1xuICAtLWJhZGdlOiAgICAgIHJnYmEoMTM5LDkyLDI0NiwwLjEpO1xuICAtLW5hdi1iZzogICAgIHJnYmEoMTAsNCwyMCwwLjkyKTtcbiAgLS1jYXJkLWJnOiAgICByZ2JhKDE5LDEyLDQwLDAuOTUpO1xuICAtLWdsb3cxOiAgICAgIHJnYmEoMTM5LDkyLDI0NiwwLjI4KTtcbiAgLS1nbG93MjogICAgICByZ2JhKDEwOSw0MCwyMTcsMC4xOCk7XG4gIC0tZ3JpZC1jb2xvcjogcmdiYSgxMzksOTIsMjQ2LDAuMTQpO1xufVxuXG4vKiBCTEFDSyBUSEVNRSDDosKAwpQgb3ZlcnJpZGVzIGV2ZXJ5dGhpbmcgYWJvdmUgKi9cbmh0bWxbZGF0YS10aGVtZT1cImJsYWNrXCJdIHtcbiAgLS1iZzogICAgICAgICAjMDQwNDBBO1xuICAtLWJnMjogICAgICAgICMwODA2MEU7XG4gIC0tYmczOiAgICAgICAgIzBEMEExODtcbiAgLS1iZzQ6ICAgICAgICAjMTIwRTIyO1xuICAtLWFjY2VudDogICAgICNEOTFBQUQ7XG4gIC0tYWNjZW50MjogICAgIzhDMEY3MDtcbiAgLS1hY2NlbnQzOiAgICAjRTgzREMwO1xuICAtLWdyYWQ6ICAgICAgIGxpbmVhci1ncmFkaWVudCgxMzVkZWcsICM1QzBBNDggMCUsICM5QjBGN0EgNDAlLCAjRDkxQUFEIDc1JSwgI0U4M0RDMCAxMDAlKTtcbiAgLS1ib3JkZXI6ICAgICByZ2JhKDI1NSwyNTUsMjU1LDAuMDcpO1xuICAtLWJvcmRlci1oOiAgIHJnYmEoMjE3LDI2LDE3MywwLjQ1KTtcbiAgLS10ZXh0OiAgICAgICAjRjBGMEY0O1xuICAtLXRleHQyOiAgICAgIHJnYmEoMjQwLDI0MCwyNDQsMC42KTtcbiAgLS10ZXh0MzogICAgICByZ2JhKDI0MCwyNDAsMjQ0LDAuMyk7XG4gIC0tYmFkZ2U6ICAgICAgcmdiYSgyMTcsMjYsMTczLDAuMSk7XG4gIC0tbmF2LWJnOiAgICAgcmdiYSg0LDQsMTAsMC45Mik7XG4gIC0tY2FyZC1iZzogICAgcmdiYSgxMywxMCwyNCwwLjk1KTtcbiAgLS1nbG93MTogICAgICByZ2JhKDIxNywyNiwxNzMsMC4yMik7XG4gIC0tZ2xvdzI6ICAgICAgcmdiYSgxNDAsMTUsMTEyLDAuMTgpO1xuICAtLWdyaWQtY29sb3I6IHJnYmEoMjE3LDI2LDE3MywwLjEyKTtcbiAgLS13MDU6IHJnYmEoMjU1LDI1NSwyNTUsMC4wNSk7XG4gIC0tdzA4OiByZ2JhKDI1NSwyNTUsMjU1LDAuMDgpO1xuICAtLXcxMjogcmdiYSgyNTUsMjU1LDI1NSwwLjEyKTtcbiAgLS13MjA6IHJnYmEoMjU1LDI1NSwyNTUsMC4yMCk7XG4gIC0tdzQwOiByZ2JhKDI1NSwyNTUsMjU1LDAuNDApO1xuICAtLXc2MDogcmdiYSgyNTUsMjU1LDI1NSwwLjYwKTtcbn1cblxuLyogQkxVRSBUSEVNRSDDosKAwpQgbmF2eSB0byBza3ksIG1hdGNoZXMgZXhpc3RpbmcgbGl2ZSBhcHAgKi9cbmh0bWxbZGF0YS10aGVtZT1cImJsdWVcIl0ge1xuICAtLWJnOiAgICAgICAgICMwRDEwMjA7XG4gIC0tYmcyOiAgICAgICAgIzEyMTUyNTtcbiAgLS1iZzM6ICAgICAgICAjMTcxOTJFO1xuICAtLWJnNDogICAgICAgICMxQzFGMzg7XG4gIC0tYWNjZW50OiAgICAgIzRGOEVGNztcbiAgLS1hY2NlbnQyOiAgICAjMUE1NkRCO1xuICAtLWFjY2VudDM6ICAgICM5M0JCRkQ7XG4gIC0tZ3JhZDogICAgICAgbGluZWFyLWdyYWRpZW50KDEzNWRlZywgIzFBM0E4RiAwJSwgIzFBNTZEQiA0MCUsICM0RjhFRjcgNzUlLCAjOTNCQkZEIDEwMCUpO1xuICAtLWJvcmRlcjogICAgIHJnYmEoMjU1LDI1NSwyNTUsMC4wNyk7XG4gIC0tYm9yZGVyLWg6ICAgcmdiYSg3OSwxNDIsMjQ3LDAuNDUpO1xuICAtLXRleHQ6ICAgICAgICNGMEYwRjQ7XG4gIC0tdGV4dDI6ICAgICAgcmdiYSgyNDAsMjQwLDI0NCwwLjYpO1xuICAtLXRleHQzOiAgICAgIHJnYmEoMjQwLDI0MCwyNDQsMC4zKTtcbiAgLS1iYWRnZTogICAgICByZ2JhKDc5LDE0MiwyNDcsMC4xKTtcbiAgLS1uYXYtYmc6ICAgICByZ2JhKDEzLDE2LDMyLDAuOTIpO1xuICAtLWNhcmQtYmc6ICAgIHJnYmEoMjMsMjUsNDYsMC45NSk7XG4gIC0tZ2xvdzE6ICAgICAgcmdiYSg3OSwxNDIsMjQ3LDAuMik7XG4gIC0tZ2xvdzI6ICAgICAgcmdiYSgyNiw4NiwyMTksMC4xNCk7XG4gIC0tZ3JpZC1jb2xvcjogcmdiYSg3OSwxNDIsMjQ3LDAuMTIpO1xufVxuXG5cbi8qIFZJT0xFVCBUSEVNRSBoYW5kbGVkIGFib3ZlIGluIGh0bWxbZGF0YS10aGVtZT1cInZpb2xldFwiXSAqL1xuLyogVGhpcyBibG9jayBpbnRlbnRpb25hbGx5IHJlbW92ZWQgw6LCgMKUIGtlZXBpbmcgb25seSBmb3IgbGVnYWN5ICovXG5odG1sW2RhdGEtdGhlbWU9XCJ2aW9sZXQtbGVnYWN5XCJdIHtcbiAgLS1iZzogICAgICAgICAjMEEwNDE0O1xuICAtLWJnMjogICAgICAgICMwRTA4MjA7XG4gIC0tYmczOiAgICAgICAgIzEzMEMyODtcbiAgLS1iZzQ6ICAgICAgICAjMUExMDM1O1xuICAtLWFjY2VudDogICAgICM4QjVDRjY7XG4gIC0tYWNjZW50MjogICAgIzZEMjhEOTtcbiAgLS1hY2NlbnQzOiAgICAjQTc4QkZBO1xuICAtLWdyYWQ6ICAgICAgIGxpbmVhci1ncmFkaWVudCgxMzVkZWcsICM0QzFEOTUgMCUsICM3QzNBRUQgNDUlLCAjQTc4QkZBIDEwMCUpO1xuICAtLWJvcmRlcjogICAgIHJnYmEoMjU1LDI1NSwyNTUsMC4wNyk7XG4gIC0tYm9yZGVyLWg6ICAgcmdiYSgxMzksOTIsMjQ2LDAuNCk7XG4gIC0tdGV4dDogICAgICAgI0YwRjBGNDtcbiAgLS10ZXh0MjogICAgICByZ2JhKDI0MCwyNDAsMjQ0LDAuNik7XG4gIC0tdGV4dDM6ICAgICAgcmdiYSgyNDAsMjQwLDI0NCwwLjMpO1xuICAtLWJhZGdlOiAgICAgIHJnYmEoMTM5LDkyLDI0NiwwLjEpO1xuICAtLW5hdi1iZzogICAgIHJnYmEoMTAsNCwyMCwwLjkyKTtcbiAgLS1jYXJkLWJnOiAgICByZ2JhKDE5LDEyLDQwLDAuOTUpO1xuICAtLWdsb3cxOiAgICAgIHJnYmEoMTM5LDkyLDI0NiwwLjI4KTtcbiAgLS1nbG93MjogICAgICByZ2JhKDEwOSw0MCwyMTcsMC4xOCk7XG4gIC0tZ3JpZC1jb2xvcjogcmdiYSgxMzksOTIsMjQ2LDAuMTQpO1xuICAtLXcwNTogcmdiYSgyNTUsMjU1LDI1NSwwLjA1KTtcbiAgLS13MDg6IHJnYmEoMjU1LDI1NSwyNTUsMC4wOCk7XG4gIC0tdzEyOiByZ2JhKDI1NSwyNTUsMjU1LDAuMTIpO1xuICAtLXcyMDogcmdiYSgyNTUsMjU1LDI1NSwwLjIwKTtcbiAgLS13NDA6IHJnYmEoMjU1LDI1NSwyNTUsMC40MCk7XG4gIC0tdzYwOiByZ2JhKDI1NSwyNTUsMjU1LDAuNjApO1xufVxuXG4vKiDDosKUwoDDosKUwoAgQkFTRSDDosKUwoDDosKUwoAgKi9cbmh0bWwgeyBoZWlnaHQ6IDEwMCU7IGJhY2tncm91bmQ6IHZhcigtLWJnKTsgfVxuYm9keSB7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWJvZHkpO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1iZyk7XG4gIGNvbG9yOiB2YXIoLS10ZXh0KTtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIG1pbi1oZWlnaHQ6IDEwMHZoO1xufVxuOjotd2Via2l0LXNjcm9sbGJhciB7IHdpZHRoOiA0cHg7IGhlaWdodDogNHB4OyB9XG46Oi13ZWJraXQtc2Nyb2xsYmFyLXRyYWNrIHsgYmFja2dyb3VuZDogdmFyKC0tYmcyKTsgfVxuOjotd2Via2l0LXNjcm9sbGJhci10aHVtYiB7IGJhY2tncm91bmQ6IHZhcigtLWFjY2VudDIpOyBib3JkZXItcmFkaXVzOiAycHg7IH1cblxuLyogw6LClMKAw6LClMKAIEJBQ0tHUk9VTkQgRUZGRUNUUyDDosKUwoDDosKUwoAgKi9cbi50ci1iZy1nbG93IHtcbiAgcG9zaXRpb246IGZpeGVkOyBpbnNldDogMDsgei1pbmRleDogMDsgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIGJhY2tncm91bmQ6XG4gICAgcmFkaWFsLWdyYWRpZW50KGVsbGlwc2UgODAlIDcwJSBhdCA1MCUgLTUlLCAgdmFyKC0tZ2xvdzEpIDAlLCB0cmFuc3BhcmVudCA2MCUpLFxuICAgIHJhZGlhbC1ncmFkaWVudChlbGxpcHNlIDU1JSA1MCUgYXQgNSUgIDkwJSwgIHZhcigtLWdsb3cyKSAwJSwgdHJhbnNwYXJlbnQgNTUlKSxcbiAgICByYWRpYWwtZ3JhZGllbnQoZWxsaXBzZSA0NSUgNDUlIGF0IDk1JSA4NSUsICByZ2JhKDE5NiwxODEsMjUzLC4wNikgMCUsIHRyYW5zcGFyZW50IDU1JSk7XG59XG4udHItYmctZ3JpZCB7XG4gIHBvc2l0aW9uOiBmaXhlZDsgaW5zZXQ6IDA7IHotaW5kZXg6IDA7IHBvaW50ZXItZXZlbnRzOiBub25lO1xuICBiYWNrZ3JvdW5kLWltYWdlOlxuICAgIGxpbmVhci1ncmFkaWVudCh2YXIoLS1ncmlkLWNvbG9yKSAxcHgsIHRyYW5zcGFyZW50IDFweCksXG4gICAgbGluZWFyLWdyYWRpZW50KDkwZGVnLCB2YXIoLS1ncmlkLWNvbG9yKSAxcHgsIHRyYW5zcGFyZW50IDFweCk7XG4gIGJhY2tncm91bmQtc2l6ZTogNjBweCA2MHB4O1xuICBtYXNrLWltYWdlOiByYWRpYWwtZ3JhZGllbnQoZWxsaXBzZSAxMDAlIDEwMCUgYXQgNTAlIDUwJSwgYmxhY2sgMjAlLCB0cmFuc3BhcmVudCA3OCUpO1xuICAtd2Via2l0LW1hc2staW1hZ2U6IHJhZGlhbC1ncmFkaWVudChlbGxpcHNlIDEwMCUgMTAwJSBhdCA1MCUgNTAlLCBibGFjayAyMCUsIHRyYW5zcGFyZW50IDc4JSk7XG59XG5cbi8qIEFuaW1hdGVkIHRyYXZlbCBkb3RzIGFsb25nIGdyaWQgbGluZXMgKi9cbi50ci1iZy1ncmlkOjpiZWZvcmUge1xuICBjb250ZW50OiAnJztcbiAgcG9zaXRpb246IGZpeGVkO1xuICBpbnNldDogMDtcbiAgei1pbmRleDogMDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHJhZGlhbC1ncmFkaWVudChjaXJjbGUgM3B4IGF0IDAgMCwgdmFyKC0tYWNjZW50KSAwJSwgdHJhbnNwYXJlbnQgNjAlKTtcbiAgYmFja2dyb3VuZC1zaXplOiA2MHB4IDYwcHg7XG4gIG1hc2staW1hZ2U6IHJhZGlhbC1ncmFkaWVudChlbGxpcHNlIDEwMCUgMTAwJSBhdCA1MCUgNTAlLCBibGFjayAyMCUsIHRyYW5zcGFyZW50IDc4JSk7XG4gIC13ZWJraXQtbWFzay1pbWFnZTogcmFkaWFsLWdyYWRpZW50KGVsbGlwc2UgMTAwJSAxMDAlIGF0IDUwJSA1MCUsIGJsYWNrIDIwJSwgdHJhbnNwYXJlbnQgNzglKTtcbiAgYW5pbWF0aW9uOiBncmlkLXRyYXZlbC1oIDJzIGxpbmVhciBpbmZpbml0ZTtcbiAgb3BhY2l0eTogMC43O1xufVxuXG4udHItYmctZ3JpZDo6YWZ0ZXIge1xuICBjb250ZW50OiAnJztcbiAgcG9zaXRpb246IGZpeGVkO1xuICBpbnNldDogMDtcbiAgei1pbmRleDogMDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHJhZGlhbC1ncmFkaWVudChjaXJjbGUgM3B4IGF0IDAgMCwgdmFyKC0tYWNjZW50KSAwJSwgdHJhbnNwYXJlbnQgNjAlKTtcbiAgYmFja2dyb3VuZC1zaXplOiA2MHB4IDYwcHg7XG4gIG1hc2staW1hZ2U6IHJhZGlhbC1ncmFkaWVudChlbGxpcHNlIDEwMCUgMTAwJSBhdCA1MCUgNTAlLCBibGFjayAyMCUsIHRyYW5zcGFyZW50IDc4JSk7XG4gIC13ZWJraXQtbWFzay1pbWFnZTogcmFkaWFsLWdyYWRpZW50KGVsbGlwc2UgMTAwJSAxMDAlIGF0IDUwJSA1MCUsIGJsYWNrIDIwJSwgdHJhbnNwYXJlbnQgNzglKTtcbiAgYW5pbWF0aW9uOiBncmlkLXRyYXZlbC12IDJzIGxpbmVhciBpbmZpbml0ZTtcbiAgb3BhY2l0eTogMC43O1xufVxuXG5Aa2V5ZnJhbWVzIGdyaWQtdHJhdmVsLWgge1xuICBmcm9tIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAwOyB9XG4gIHRvICAgeyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA2MHB4IDA7IH1cbn1cblxuQGtleWZyYW1lcyBncmlkLXRyYXZlbC12IHtcbiAgZnJvbSB7IGJhY2tncm91bmQtcG9zaXRpb246IDAgMDsgfVxuICB0byAgIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogMCA2MHB4OyB9XG59XG5cbi8qIFZpZGVvIGJhY2tncm91bmQgd2l0aCBibHVyL2ZhZGUgZWZmZWN0ICovXG4udHItYmctdmlkZW8ge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgei1pbmRleDogLTE7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuXG4udHItYmctdmlkZW8gdmlkZW8ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiA1MCU7XG4gIG1pbi13aWR0aDogMTAwJTtcbiAgbWluLWhlaWdodDogMTAwJTtcbiAgd2lkdGg6IGF1dG87XG4gIGhlaWdodDogYXV0bztcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gIGZpbHRlcjogYmx1cig4cHgpIGJyaWdodG5lc3MoMC4zKSBzYXR1cmF0ZSgxLjIpO1xuICBvcGFjaXR5OiAwLjQ7XG4gIG9iamVjdC1maXQ6IGNvdmVyO1xufVxuXG4udHItYmctdmlkZW86OmFmdGVyIHtcbiAgY29udGVudDogJyc7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgaW5zZXQ6IDA7XG4gIGJhY2tncm91bmQ6IFxuICAgIGxpbmVhci1ncmFkaWVudCgxMzVkZWcsIHZhcigtLWJnKSAwJSwgdHJhbnNwYXJlbnQgNDAlLCB0cmFuc3BhcmVudCA2MCUsIHZhcigtLWJnKSAxMDAlKSxcbiAgICByYWRpYWwtZ3JhZGllbnQoZWxsaXBzZSAxMDAlIDgwJSBhdCA1MCUgMjAlLCB0cmFuc3BhcmVudCAwJSwgdmFyKC0tYmcpIDcwJSksXG4gICAgcmFkaWFsLWdyYWRpZW50KGVsbGlwc2UgNjAlIDYwJSBhdCA1MCUgMTAwJSwgcmdiYSgwLDAsMCwwLjgpIDAlLCB0cmFuc3BhcmVudCA2MCUpO1xuICB6LWluZGV4OiAxO1xufVxuXG4vKiDDosKUwoDDosKUwoAgTkFWQkFSIMOiwpTCgMOiwpTCgCAqL1xuLnRyLW5hdmJhciB7XG4gIGJhY2tncm91bmQ6IHZhcigtLW5hdi1iZykgIWltcG9ydGFudDtcbiAgYmFja2Ryb3AtZmlsdGVyOiBibHVyKDIwcHgpO1xuICAtd2Via2l0LWJhY2tkcm9wLWZpbHRlcjogYmx1cigyMHB4KTtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWJvcmRlcik7XG4gIHBhZGRpbmc6IDAuNnJlbSAxLjVyZW07XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQgLjM1cywgYm9yZGVyLWNvbG9yIC4zNXM7XG59XG4udHItbmF2YmFyIC5uYXZiYXItYnJhbmQge1xuICBkaXNwbGF5OiBmbGV4OyBhbGlnbi1pdGVtczogY2VudGVyOyBnYXA6IDEwcHg7IHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cbi50ci1uYXZiYXIgLmJyYW5kLWxvZ28ge1xuICB3aWR0aDogMzJweDsgaGVpZ2h0OiAzMnB4OyBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGJvcmRlcjogMS41cHggc29saWQgdmFyKC0tYWNjZW50KTtcbiAgYm94LXNoYWRvdzogMCAwIDEwcHggcmdiYSgxMzksOTIsMjQ2LDAuMyk7XG4gIG9iamVjdC1maXQ6IGNvdmVyO1xufVxuLnRyLW5hdmJhciAuYnJhbmQtbmFtZSB7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWRpc3BsYXkpO1xuICBmb250LXNpemU6IDIwcHg7IGxldHRlci1zcGFjaW5nOiA0cHg7IGNvbG9yOiB2YXIoLS10ZXh0KTtcbn1cbi50ci1uYXZiYXIgLm5hdi1saW5rIHtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtbW9ubyk7XG4gIGZvbnQtc2l6ZTogMTBweDsgbGV0dGVyLXNwYWNpbmc6IDEuNXB4OyB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBjb2xvcjogdmFyKC0tdGV4dDMpICFpbXBvcnRhbnQ7IHRyYW5zaXRpb246IGNvbG9yIDAuMnM7IHBhZGRpbmc6IDAuNHJlbSAwLjhyZW07XG59XG4udHItbmF2YmFyIC5uYXYtbGluazpob3Zlcixcbi50ci1uYXZiYXIgLm5hdi1saW5rLmFjdGl2ZSB7IGNvbG9yOiB2YXIoLS1hY2NlbnQpICFpbXBvcnRhbnQ7IH1cbi50ci1uYXZiYXIgLm5hdmJhci10b2dnbGVyIHtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1ib3JkZXIpOyBwYWRkaW5nOiA0cHggOHB4O1xufVxuLnRyLW5hdmJhciAubmF2YmFyLXRvZ2dsZXItaWNvbiB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMzAgMzAnJTNlJTNjcGF0aCBzdHJva2U9J3JnYmEoMjU1LDI1NSwyNTUsMC41KScgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbWl0ZXJsaW1pdD0nMTAnIHN0cm9rZS13aWR0aD0nMicgZD0nTTQgN2gyMk00IDE1aDIyTTQgMjNoMjInLyUzZSUzYy9zdmclM2VcIik7XG59XG4udHItbmF2YmFyIC5uYXZiYXItY29sbGFwc2UgeyBwYWRkaW5nOiAwLjVyZW0gMDsgfVxuXG4vKiBUaGVtZSBzd2l0Y2hlciBpbiBuYXYgLSBkcm9wZG93biB2ZXJzaW9uICovXG4udHItdGhlbWUtc3dpdGNoIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi50ci10aGVtZS1kcm9wZG93biB7XG4gIGJhY2tncm91bmQ6IHZhcigtLWJnMyk7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJvcmRlcik7XG4gIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gIHBhZGRpbmc6IDhweCAxMnB4O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGdhcDogOHB4O1xuICBjb2xvcjogdmFyKC0tdGV4dDIpO1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC1tb25vKTtcbiAgZm9udC1zaXplOiAxMHB4O1xuICBmb250LXdlaWdodDogNjAwO1xuICBsZXR0ZXItc3BhY2luZzogMXB4O1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4ycztcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIG1pbi13aWR0aDogMTAwcHg7XG59XG5cbi50ci10aGVtZS1kcm9wZG93bjpob3ZlciB7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tYm9yZGVyLWgpO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1iZzQpO1xuICBjb2xvcjogdmFyKC0tdGV4dCk7XG59XG5cbi50ci10aGVtZS1kcm9wZG93bjo6YWZ0ZXIge1xuICBjb250ZW50OiAnw6LClsK8JztcbiAgZm9udC1zaXplOiA4cHg7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4ycztcbn1cblxuLnRyLXRoZW1lLWRyb3Bkb3duLm9wZW46OmFmdGVyIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbn1cblxuLnRyLXRoZW1lLWljb24ge1xuICB3aWR0aDogMTJweDtcbiAgaGVpZ2h0OiAxMnB4O1xuICBib3JkZXItcmFkaXVzOiAzcHg7XG4gIGZsZXgtc2hyaW5rOiAwO1xufVxuXG4udHItdGhlbWUtbWVudSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiBjYWxjKDEwMCUgKyA4cHgpO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgYmFja2dyb3VuZDogdmFyKC0tYmczKTtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tYm9yZGVyKTtcbiAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgb3BhY2l0eTogMDtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwcHgpO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4ycztcbiAgei1pbmRleDogMTAwMDtcbiAgYmFja2Ryb3AtZmlsdGVyOiBibHVyKDIwcHgpO1xufVxuXG4udHItdGhlbWUtbWVudS5vcGVuIHtcbiAgb3BhY2l0eTogMTtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xufVxuXG4udHItdGhlbWUtb3B0aW9uIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiAxMHB4O1xuICBwYWRkaW5nOiAxMHB4IDEycHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgY29sb3I6IHZhcigtLXRleHQzKTtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtbW9ubyk7XG4gIGZvbnQtc2l6ZTogMTBweDtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDFweDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMnM7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1ib3JkZXIpO1xufVxuXG4udHItdGhlbWUtb3B0aW9uOmxhc3QtY2hpbGQge1xuICBib3JkZXItYm90dG9tOiBub25lO1xufVxuXG4udHItdGhlbWUtb3B0aW9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tYmc0KTtcbiAgY29sb3I6IHZhcigtLXRleHQyKTtcbn1cblxuLnRyLXRoZW1lLW9wdGlvbi5hY3RpdmUge1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCB2YXIoLS1hY2NlbnQyKSwgdmFyKC0tYWNjZW50KSk7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG4udHItdGhlbWUtb3B0aW9uIC50ci10aGVtZS1pY29uIHtcbiAgd2lkdGg6IDE2cHg7XG4gIGhlaWdodDogMTZweDtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xufVxuXG4vKiDDosKUwoDDosKUwoAgQVVUSCBTUExJVCBMQVlPVVQgw6LClMKAw6LClMKAICovXG4udHItYXV0aC13cmFwIHtcbiAgbWluLWhlaWdodDogMTAwdmg7IGRpc3BsYXk6IGZsZXg7IGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IHotaW5kZXg6IDE7XG59XG4udHItYXV0aC1sZWZ0IHtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE0NWRlZywgdmFyKC0tYmcyKSwgdmFyKC0tYmczKSk7XG4gIGJvcmRlci1yaWdodDogMXB4IHNvbGlkIHZhcigtLWJvcmRlcik7XG4gIHBhZGRpbmc6IDNyZW0gMi41cmVtO1xuICBkaXNwbGF5OiBmbGV4OyBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG59XG4udHItYXV0aC1yaWdodCB7XG4gIGJhY2tncm91bmQ6IHZhcigtLWNhcmQtYmcpO1xuICBiYWNrZHJvcC1maWx0ZXI6IGJsdXIoMjBweCk7XG4gIHBhZGRpbmc6IDNyZW0gMi41cmVtO1xuICBkaXNwbGF5OiBmbGV4OyBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgbWluLWhlaWdodDogMTAwdmg7XG59XG5AbWVkaWEgKG1heC13aWR0aDogNzY3Ljk4cHgpIHtcbiAgLnRyLWF1dGgtbGVmdCB7IGRpc3BsYXk6IG5vbmU7IH1cbiAgLnRyLWF1dGgtcmlnaHQgeyBwYWRkaW5nOiAycmVtIDEuNXJlbTsgfVxufVxuXG4vKiDDosKUwoDDosKUwoAgTEVGVCBQQU5FTCDDosKUwoDDosKUwoAgKi9cbi50ci1sZWZ0LXRhZyB7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LW1vbm8pOyBmb250LXNpemU6IDEwcHg7IGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGxldHRlci1zcGFjaW5nOiAzcHg7IHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IGNvbG9yOiB2YXIoLS1hY2NlbnQpO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtOyBkaXNwbGF5OiBmbGV4OyBhbGlnbi1pdGVtczogY2VudGVyOyBnYXA6IDhweDtcbn1cbi50ci1sZWZ0LXRhZzo6YmVmb3JlIHsgY29udGVudDogJyc7IHdpZHRoOiAxNnB4OyBoZWlnaHQ6IDFweDsgYmFja2dyb3VuZDogdmFyKC0tYWNjZW50KTsgfVxuLnRyLWxlZnQtaCB7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWRpc3BsYXkpO1xuICBmb250LXNpemU6IGNsYW1wKDQwcHgsIDV2dywgNjBweCk7XG4gIGxldHRlci1zcGFjaW5nOiAycHg7IGxpbmUtaGVpZ2h0OiAwLjk1OyBjb2xvcjogI2ZmZjsgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cbi50ci1sZWZ0LWggZW0ge1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGJhY2tncm91bmQ6IHZhcigtLWdyYWQpO1xuICAtd2Via2l0LWJhY2tncm91bmQtY2xpcDogdGV4dDsgLXdlYmtpdC10ZXh0LWZpbGwtY29sb3I6IHRyYW5zcGFyZW50O1xuICBiYWNrZ3JvdW5kLWNsaXA6IHRleHQ7XG59XG4udHItbGVmdC1zdWIgeyBmb250LXNpemU6IDEzcHg7IGNvbG9yOiB2YXIoLS10ZXh0Mik7IGxpbmUtaGVpZ2h0OiAxLjc7IG1hcmdpbi1ib3R0b206IDEuNXJlbTsgfVxuLnRyLXBlcmsge1xuICBkaXNwbGF5OiBmbGV4OyBhbGlnbi1pdGVtczogZmxleC1zdGFydDsgZ2FwOiAxMnB4O1xuICBwYWRkaW5nOiAxMnB4OyBiYWNrZ3JvdW5kOiB2YXIoLS13MDUpOyBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS13MDgpO1xuICBib3JkZXItcmFkaXVzOiAxMHB4OyBtYXJnaW4tYm90dG9tOiAxMHB4OyB0cmFuc2l0aW9uOiBhbGwgMC4ycztcbn1cbi50ci1wZXJrOmhvdmVyIHsgYmFja2dyb3VuZDogcmdiYSgxMzksOTIsMjQ2LDAuMDgpOyBib3JkZXItY29sb3I6IHZhcigtLWJvcmRlci1oKTsgfVxuLnRyLXBlcmstaWNvbiB7XG4gIHdpZHRoOiAzNHB4OyBoZWlnaHQ6IDM0cHg7IGJvcmRlci1yYWRpdXM6IDhweDsgZmxleC1zaHJpbms6IDA7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsIHZhcigtLWFjY2VudDIpLCB2YXIoLS1hY2NlbnQpKTtcbiAgZGlzcGxheTogZmxleDsgYWxpZ24taXRlbXM6IGNlbnRlcjsganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IGZvbnQtc2l6ZTogMTZweDtcbn1cbi50ci1wZXJrLXRpdGxlIHsgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtZGlzcGxheSk7IGZvbnQtc2l6ZTogMTVweDsgbGV0dGVyLXNwYWNpbmc6IDFweDsgY29sb3I6ICNmZmY7IG1hcmdpbi1ib3R0b206IDJweDsgfVxuLnRyLXBlcmstZGVzYyB7IGZvbnQtc2l6ZTogMTFweDsgY29sb3I6IHZhcigtLXRleHQzKTsgbGluZS1oZWlnaHQ6IDEuNTsgfVxuXG4vKiDDosKUwoDDosKUwoAgRk9STSBQQU5FTCDDosKUwoDDosKUwoAgKi9cbi50ci1mb3JtLXRvcC1iYXIgeyBoZWlnaHQ6IDNweDsgYmFja2dyb3VuZDogdmFyKC0tZ3JhZCk7IGJvcmRlci1yYWRpdXM6IDJweDsgbWFyZ2luLWJvdHRvbTogMS41cmVtOyB9XG4udHItZm9ybS10aXRsZSB7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWRpc3BsYXkpO1xuICBmb250LXNpemU6IDMwcHg7IGxldHRlci1zcGFjaW5nOiAycHg7IGNvbG9yOiAjZmZmOyBtYXJnaW4tYm90dG9tOiA0cHg7IGxpbmUtaGVpZ2h0OiAxO1xufVxuLnRyLWZvcm0tc3ViIHsgZm9udC1zaXplOiAxMnB4OyBjb2xvcjogdmFyKC0tdGV4dDMpOyBsaW5lLWhlaWdodDogMS42OyBtYXJnaW4tYm90dG9tOiAxLjVyZW07IH1cbi50ci1mb3JtLXN1YiBzdHJvbmcgeyBjb2xvcjogdmFyKC0tYWNjZW50KTsgZm9udC13ZWlnaHQ6IDYwMDsgfVxuXG4vKiDDosKUwoDDosKUwoAgRk9STSBFTEVNRU5UUyDDosKUwoDDosKUwoAgKi9cbi50ci1sYWJlbCB7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LW1vbm8pOyBmb250LXNpemU6IDlweDsgZm9udC13ZWlnaHQ6IDYwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDJweDsgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgY29sb3I6IHZhcigtLXRleHQzKTsgbWFyZ2luLWJvdHRvbTogNXB4O1xufVxuLnRyLWlucHV0IHtcbiAgYmFja2dyb3VuZDogdmFyKC0tdzA1KTsgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tdzEyKTsgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgcGFkZGluZzogMTFweCAxNHB4OyBmb250LWZhbWlseTogdmFyKC0tZm9udC1ib2R5KTsgZm9udC1zaXplOiAxM3B4O1xuICBjb2xvcjogI2ZmZjsgb3V0bGluZTogbm9uZTsgdHJhbnNpdGlvbjogYWxsIDAuMjVzOyB3aWR0aDogMTAwJTtcbn1cbi50ci1pbnB1dDo6cGxhY2Vob2xkZXIgeyBjb2xvcjogdmFyKC0tdzIwKTsgfVxuLnRyLWlucHV0OmZvY3VzIHtcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKDEzOSw5MiwyNDYsMC41KTtcbiAgYmFja2dyb3VuZDogcmdiYSgxMzksOTIsMjQ2LDAuMDQpO1xuICBib3gtc2hhZG93OiAwIDAgMCAzcHggcmdiYSgxMzksOTIsMjQ2LDAuMTIpO1xuICBvdXRsaW5lOiBub25lO1xufVxuLnRyLWlucHV0LmlzLWludmFsaWQgeyBib3JkZXItY29sb3I6IHJnYmEoMjM5LDY4LDY4LDAuNik7IH1cbi50ci1pbnB1dC5pcy12YWxpZCAgIHsgYm9yZGVyLWNvbG9yOiByZ2JhKDM0LDE5Nyw5NCwwLjUpOyB9XG4udHItc2VsZWN0IHtcbiAgYmFja2dyb3VuZDogdmFyKC0tdzA1KTsgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tdzEyKTsgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgcGFkZGluZzogMTFweCAxNHB4OyBmb250LWZhbWlseTogdmFyKC0tZm9udC1ib2R5KTsgZm9udC1zaXplOiAxM3B4O1xuICBjb2xvcjogI2ZmZjsgb3V0bGluZTogbm9uZTsgdHJhbnNpdGlvbjogYWxsIDAuMjVzOyB3aWR0aDogMTAwJTtcbiAgY3Vyc29yOiBwb2ludGVyOyBhcHBlYXJhbmNlOiBub25lO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNDc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzEyJyBoZWlnaHQ9JzgnIHZpZXdCb3g9JzAgMCAxMiA4JyUzRSUzQ3BhdGggZD0nTTEgMWw1IDUgNS01JyBzdHJva2U9J3JnYmEoMjU1LDI1NSwyNTUsMC4zKScgc3Ryb2tlLXdpZHRoPScxLjUnIGZpbGw9J25vbmUnIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcvJTNFJTNDL3N2ZyUzRVwiKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDsgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgMTRweCBjZW50ZXI7XG59XG4udHItc2VsZWN0OmZvY3VzIHsgYm9yZGVyLWNvbG9yOiByZ2JhKDEzOSw5MiwyNDYsMC41KTsgYm94LXNoYWRvdzogMCAwIDAgM3B4IHJnYmEoMTM5LDkyLDI0NiwwLjEyKTsgfVxuLnRyLXNlbGVjdCBvcHRpb24geyBiYWNrZ3JvdW5kOiAjMTExOyBjb2xvcjogI2ZmZjsgfVxuLnRyLXBhc3Mtd3JhcCB7IHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuLnRyLXBhc3MtdG9nZ2xlIHtcbiAgcG9zaXRpb246IGFic29sdXRlOyByaWdodDogMTJweDsgdG9wOiA1MCU7IHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgYmFja2dyb3VuZDogbm9uZTsgYm9yZGVyOiBub25lOyBjb2xvcjogdmFyKC0tdGV4dDMpOyBjdXJzb3I6IHBvaW50ZXI7XG4gIGZvbnQtc2l6ZTogMTRweDsgcGFkZGluZzogMDsgdHJhbnNpdGlvbjogY29sb3IgMC4ycztcbn1cbi50ci1wYXNzLXRvZ2dsZTpob3ZlciB7IGNvbG9yOiAjZmZmOyB9XG4udHItaW52YWxpZC1mZWVkYmFjayB7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LW1vbm8pOyBmb250LXNpemU6IDEwcHg7IGxldHRlci1zcGFjaW5nOiAxcHg7XG4gIGNvbG9yOiByZ2JhKDIzOSw2OCw2OCwwLjgpOyBtYXJnaW4tdG9wOiA0cHg7IG1pbi1oZWlnaHQ6IDE0cHg7IGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vKiDDosKUwoDDosKUwoAgQlVUVE9OUyDDosKUwoDDosKUwoAgKi9cbi50ci1idG4tcHJpbWFyeSB7XG4gIHdpZHRoOiAxMDAlOyBmb250LWZhbWlseTogdmFyKC0tZm9udC1kaXNwbGF5KTsgZm9udC1zaXplOiAxOHB4OyBsZXR0ZXItc3BhY2luZzogM3B4O1xuICBjb2xvcjogIzAwMDsgYm9yZGVyOiBub25lOyBjdXJzb3I6IHBvaW50ZXI7IHBhZGRpbmc6IDEzcHggMjBweDsgYm9yZGVyLXJhZGl1czogMTJweDtcbiAgYmFja2dyb3VuZDogdmFyKC0tZ3JhZCk7IHRyYW5zaXRpb246IGFsbCAwLjI1cztcbiAgYm94LXNoYWRvdzogMCA2cHggMjJweCByZ2JhKDEzOSw5MiwyNDYsMC40KTtcbn1cbi50ci1idG4tcHJpbWFyeTpob3ZlciB7IHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMnB4KTsgYm94LXNoYWRvdzogMCAxMnB4IDM0cHggcmdiYSgxMzksOTIsMjQ2LDAuNik7IH1cbi50ci1idG4tcHJpbWFyeTphY3RpdmUgeyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7IH1cbi50ci1idG4tcHJpbWFyeS5sb2FkaW5nIHsgcG9pbnRlci1ldmVudHM6IG5vbmU7IG9wYWNpdHk6IDAuNzsgfVxuLnRyLWJ0bi1vdXRsaW5lIHtcbiAgd2lkdGg6IDEwMCU7IGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWRpc3BsYXkpOyBmb250LXNpemU6IDE3cHg7IGxldHRlci1zcGFjaW5nOiAzcHg7XG4gIGNvbG9yOiB2YXIoLS1hY2NlbnQzKTsgYm9yZGVyOiAxcHggc29saWQgcmdiYSgxMzksOTIsMjQ2LDAuMyk7IGN1cnNvcjogcG9pbnRlcjtcbiAgcGFkZGluZzogMTJweCAyMHB4OyBib3JkZXItcmFkaXVzOiAxMnB4OyBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDsgdHJhbnNpdGlvbjogYWxsIDAuMjVzO1xufVxuLnRyLWJ0bi1vdXRsaW5lOmhvdmVyIHsgYmFja2dyb3VuZDogcmdiYSgxMzksOTIsMjQ2LDAuMDgpOyBib3JkZXItY29sb3I6IHJnYmEoMTM5LDkyLDI0NiwwLjU1KTsgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xcHgpOyB9XG5cbi8qIMOiwpTCgMOiwpTCgCBTVEVQUyBCQVIgw6LClMKAw6LClMKAICovXG4udHItc3RlcHMgeyBkaXNwbGF5OiBmbGV4OyBhbGlnbi1pdGVtczogY2VudGVyOyBnYXA6IDhweDsgbWFyZ2luLWJvdHRvbTogMS41cmVtOyB9XG4udHItc3RlcC1pdGVtIHsgZGlzcGxheTogZmxleDsgYWxpZ24taXRlbXM6IGNlbnRlcjsgZ2FwOiA2cHg7IH1cbi50ci1zdGVwLW51bSB7XG4gIHdpZHRoOiAyNHB4OyBoZWlnaHQ6IDI0cHg7IGJvcmRlci1yYWRpdXM6IDUwJTsgZGlzcGxheTogZmxleDsgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWRpc3BsYXkpOyBmb250LXNpemU6IDEzcHg7IGZsZXgtc2hyaW5rOiAwO1xufVxuLnRyLXN0ZXAtbnVtLmFjdGl2ZSB7IGJhY2tncm91bmQ6IHZhcigtLWdyYWQpOyBjb2xvcjogIzAwMDsgfVxuLnRyLXN0ZXAtbnVtLmRvbmUgICB7IGJhY2tncm91bmQ6IHJnYmEoMzQsMTk3LDk0LDAuMTUpOyBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDM0LDE5Nyw5NCwwLjM1KTsgY29sb3I6ICMyMmM1NWU7IH1cbi50ci1zdGVwLW51bS5pZGxlICAgeyBiYWNrZ3JvdW5kOiB2YXIoLS13MDUpOyBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS13MTIpOyBjb2xvcjogdmFyKC0tdGV4dDMpOyB9XG4udHItc3RlcC1sYWJlbCB7IGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LW1vbm8pOyBmb250LXNpemU6IDlweDsgbGV0dGVyLXNwYWNpbmc6IDEuNXB4OyB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XG4udHItc3RlcC1sYWJlbC5hY3RpdmUgeyBjb2xvcjogI2ZmZjsgfVxuLnRyLXN0ZXAtbGFiZWwuaWRsZSAgIHsgY29sb3I6IHZhcigtLXRleHQzKTsgfVxuLnRyLXN0ZXAtYXJyb3cgeyBjb2xvcjogdmFyKC0tdGV4dDMpOyBmb250LXNpemU6IDEycHg7IG1hcmdpbjogMCAycHg7IH1cblxuLyogw6LClMKAw6LClMKAIERJVklERVJTIMOiwpTCgMOiwpTCgCAqL1xuLnRyLXNlcCB7XG4gIGRpc3BsYXk6IGZsZXg7IGFsaWduLWl0ZW1zOiBjZW50ZXI7IGdhcDogMTBweDsgbWFyZ2luOiAxcmVtIDA7XG59XG4udHItc2VwOjpiZWZvcmUsIC50ci1zZXA6OmFmdGVyIHsgY29udGVudDogJyc7IGZsZXg6IDE7IGhlaWdodDogMXB4OyBiYWNrZ3JvdW5kOiB2YXIoLS13MDgpOyB9XG4udHItc2VwIHNwYW4ge1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC1tb25vKTsgZm9udC1zaXplOiA5cHg7IGxldHRlci1zcGFjaW5nOiAycHg7XG4gIGNvbG9yOiB2YXIoLS13MjApOyB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuLnRyLWdyYWQtbGluZSB7IGhlaWdodDogMXB4OyBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoOTBkZWcsIHRyYW5zcGFyZW50LCByZ2JhKDEzOSw5MiwyNDYsMC4zNSksIHRyYW5zcGFyZW50KTsgbWFyZ2luOiAxcmVtIDA7IH1cblxuLyogw6LClMKAw6LClMKAIEJBREdFUyAvIFBJTExTIMOiwpTCgMOiwpTCgCAqL1xuLnRyLWJhZGdlIHtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtbW9ubyk7IGZvbnQtc2l6ZTogOXB4OyBmb250LXdlaWdodDogNjAwOyBsZXR0ZXItc3BhY2luZzogMS41cHg7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IHBhZGRpbmc6IDRweCAxMHB4OyBib3JkZXItcmFkaXVzOiA2cHg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cbi50ci1iYWRnZS1hY2NlbnQgeyBiYWNrZ3JvdW5kOiB2YXIoLS1iYWRnZSk7IGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1oKTsgY29sb3I6IHZhcigtLWFjY2VudDMpOyB9XG4udHItYmFkZ2UtZ3JlZW4gIHsgYmFja2dyb3VuZDogcmdiYSgzNCwxOTcsOTQsMC4xKTsgYm9yZGVyOiAxcHggc29saWQgcmdiYSgzNCwxOTcsOTQsMC4yNSk7IGNvbG9yOiAjMjJjNTVlOyB9XG4udHItYmFkZ2UtcmVkICAgIHsgYmFja2dyb3VuZDogcmdiYSgyMzksNjgsNjgsMC4xKTsgYm9yZGVyOiAxcHggc29saWQgcmdiYSgyMzksNjgsNjgsMC4yNSk7IGNvbG9yOiAjZWY0NDQ0OyB9XG4udHItYmFkZ2UtZ29sZCAgIHsgYmFja2dyb3VuZDogcmdiYSgyNDUsMTk3LDI0LDAuMSk7IGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMjQ1LDE5NywyNCwwLjI1KTsgY29sb3I6ICNGNUM1MTg7IH1cblxuLyogw6LClMKAw6LClMKAIE9UUCAvIDJGQSBJTlBVVFMgw6LClMKAw6LClMKAICovXG4udHItb3RwLXdyYXAgeyBkaXNwbGF5OiBmbGV4OyBnYXA6IDhweDsganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IG1hcmdpbjogMXJlbSAwOyB9XG4udHItb3RwLWlucHV0IHtcbiAgd2lkdGg6IDQ4cHg7IGhlaWdodDogNTZweDsgdGV4dC1hbGlnbjogY2VudGVyO1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC1tb25vKTsgZm9udC1zaXplOiAyMnB4OyBmb250LXdlaWdodDogNjAwOyBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZDogdmFyKC0tdzA1KTsgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tdzEyKTsgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgb3V0bGluZTogbm9uZTsgdHJhbnNpdGlvbjogYWxsIDAuMjVzOyBjYXJldC1jb2xvcjogdmFyKC0tYWNjZW50KTtcbn1cbi50ci1vdHAtaW5wdXQ6Zm9jdXMgeyBib3JkZXItY29sb3I6IHZhcigtLWFjY2VudCk7IGJveC1zaGFkb3c6IDAgMCAwIDNweCB2YXIoLS1iYWRnZSk7IH1cbkBtZWRpYSAobWF4LXdpZHRoOiAzNzVweCkge1xuICAudHItb3RwLWlucHV0IHsgd2lkdGg6IDM4cHg7IGhlaWdodDogNDhweDsgZm9udC1zaXplOiAxOHB4OyB9XG4gIC50ci1vdHAtd3JhcCAgeyBnYXA6IDVweDsgfVxufVxuXG4vKiDDosKUwoDDosKUwoAgTUVUSE9EIFNFTEVDVElPTiAoZm9yZ290IHBhc3N3b3JkKSDDosKUwoDDosKUwoAgKi9cbi50ci1tZXRob2QtYm94IHtcbiAgZGlzcGxheTogZmxleDsgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7IGdhcDogMTJweDsgcGFkZGluZzogMTRweCAxNnB4O1xuICBiYWNrZ3JvdW5kOiB2YXIoLS13MDUpOyBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS13MDgpOyBib3JkZXItcmFkaXVzOiAxMnB4O1xuICBtYXJnaW4tYm90dG9tOiAxMHB4OyBjdXJzb3I6IHBvaW50ZXI7IHRyYW5zaXRpb246IGFsbCAwLjJzO1xufVxuLnRyLW1ldGhvZC1ib3g6aG92ZXIsXG4udHItbWV0aG9kLWJveC5zZWxlY3RlZCB7IGJhY2tncm91bmQ6IHJnYmEoMTM5LDkyLDI0NiwwLjA4KTsgYm9yZGVyLWNvbG9yOiB2YXIoLS1ib3JkZXItaCk7IH1cbi50ci1tZXRob2QtaWNvbiB7XG4gIHdpZHRoOiAzOHB4OyBoZWlnaHQ6IDM4cHg7IGJvcmRlci1yYWRpdXM6IDEwcHg7IGZsZXgtc2hyaW5rOiAwO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS13MDgpOyBkaXNwbGF5OiBmbGV4OyBhbGlnbi1pdGVtczogY2VudGVyOyBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgZm9udC1zaXplOiAxOHB4OyB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuMnM7XG59XG4udHItbWV0aG9kLWJveC5zZWxlY3RlZCAudHItbWV0aG9kLWljb24geyBiYWNrZ3JvdW5kOiB2YXIoLS1ncmFkKTsgfVxuLnRyLW1ldGhvZC10aXRsZSB7IGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWRpc3BsYXkpOyBmb250LXNpemU6IDE2cHg7IGxldHRlci1zcGFjaW5nOiAxcHg7IGNvbG9yOiAjZmZmOyBtYXJnaW4tYm90dG9tOiAycHg7IH1cbi50ci1tZXRob2QtZGVzYyAgeyBmb250LXNpemU6IDExcHg7IGNvbG9yOiB2YXIoLS10ZXh0Myk7IGxpbmUtaGVpZ2h0OiAxLjQ7IH1cblxuLyogw6LClMKAw6LClMKAIENBUkQgLyBQQU5FTCDDosKUwoDDosKUwoAgKi9cbi50ci1jYXJkIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tY2FyZC1iZyk7IGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJvcmRlcik7XG4gIGJvcmRlci1yYWRpdXM6IDE0cHg7IHRyYW5zaXRpb246IGJvcmRlci1jb2xvciAwLjJzLCBib3gtc2hhZG93IDAuMnM7XG59XG4udHItY2FyZDpob3ZlciB7IGJvcmRlci1jb2xvcjogdmFyKC0tYm9yZGVyLWgpOyB9XG4udHItY2FyZC1oZWFkZXIge1xuICBwYWRkaW5nOiAwLjlyZW0gMS4xcmVtOyBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYm9yZGVyKTtcbiAgZGlzcGxheTogZmxleDsgYWxpZ24taXRlbXM6IGNlbnRlcjsganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xufVxuLnRyLWNhcmQtbGFiZWwge1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC1tb25vKTsgZm9udC1zaXplOiA5cHg7IGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGxldHRlci1zcGFjaW5nOiAyLjVweDsgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgY29sb3I6IHZhcigtLXRleHQzKTtcbn1cblxuLyogw6LClMKAw6LClMKAIExJTktTIMOiwpTCgMOiwpTCgCAqL1xuLnRyLWxpbmsgeyBjb2xvcjogdmFyKC0tYWNjZW50KTsgdGV4dC1kZWNvcmF0aW9uOiBub25lOyBmb250LXdlaWdodDogNjAwOyB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMnM7IH1cbi50ci1saW5rOmhvdmVyIHsgb3BhY2l0eTogMC44OyB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxuLnRyLWxpbmstbXV0ZWQgeyBmb250LWZhbWlseTogdmFyKC0tZm9udC1tb25vKTsgZm9udC1zaXplOiAxMHB4OyBsZXR0ZXItc3BhY2luZzogMXB4OyB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyBjb2xvcjogdmFyKC0tdGV4dDMpOyB0ZXh0LWRlY29yYXRpb246IG5vbmU7IHRyYW5zaXRpb246IGNvbG9yIDAuMnM7IH1cbi50ci1saW5rLW11dGVkOmhvdmVyIHsgY29sb3I6IHZhcigtLWFjY2VudCk7IH1cblxuLyogw6LClMKAw6LClMKAIFRFUk1TIMOiwpTCgMOiwpTCgCAqL1xuLnRyLXRlcm1zIHsgZm9udC1zaXplOiAxMXB4OyBjb2xvcjogdmFyKC0tdGV4dDMpOyBsaW5lLWhlaWdodDogMS42OyBtYXJnaW4tYm90dG9tOiAxcmVtOyB9XG4udHItdGVybXMgYSB7IGNvbG9yOiB2YXIoLS1hY2NlbnQpOyB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cblxuLyogw6LClMKAw6LClMKAIEFOSU1BVElPTlMgw6LClMKAw6LClMKAICovXG5Aa2V5ZnJhbWVzIHRyLWZhZGVVcCB7XG4gIGZyb20geyBvcGFjaXR5OiAwOyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTZweCk7IH1cbiAgdG8gICB7IG9wYWNpdHk6IDE7IHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTsgfVxufVxuQGtleWZyYW1lcyB0ci1wdWxzZSB7IDAlLDEwMCUgeyBvcGFjaXR5OjE7IHRyYW5zZm9ybTpzY2FsZSgxKTsgfSA1MCUgeyBvcGFjaXR5Oi41OyB0cmFuc2Zvcm06c2NhbGUoLjgpOyB9IH1cbkBrZXlmcmFtZXMgdHItc2hha2Uge1xuICAwJSwxMDAlIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApOyB9XG4gIDIwJSAgICAgIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC03cHgpOyB9XG4gIDQwJSAgICAgIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDdweCk7IH1cbiAgNjAlICAgICAgeyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTRweCk7IH1cbiAgODAlICAgICAgeyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNHB4KTsgfVxufVxuLnRyLWFuaW0tZmFkZSB7IGFuaW1hdGlvbjogdHItZmFkZVVwIDAuNXMgZWFzZSBib3RoOyB9XG5cbi8qIMOiwpTCgMOiwpTCgCBSRVNQT05TSVZFIFVUSUxJVElFUyDDosKUwoDDosKUwoAgKi9cbkBtZWRpYSAobWF4LXdpZHRoOiA1NzUuOThweCkge1xuICAudHItZm9ybS10aXRsZSB7IGZvbnQtc2l6ZTogMjZweDsgfVxuICAudHItYnRuLXByaW1hcnksIC50ci1idG4tb3V0bGluZSB7IGZvbnQtc2l6ZTogMTZweDsgcGFkZGluZzogMTJweCAxNnB4OyB9XG59XG5cbi8qIMOiwpTCgMOiwpTCgCBGT09URVIgKHB1YmxpYyBwYWdlcykgw6LClMKAw6LClMKAICovXG4udHItcHVibGljLWZvb3RlciB7XG4gIGJhY2tncm91bmQ6IHZhcigtLWJnMik7IGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1ib3JkZXIpO1xuICBwYWRkaW5nOiAycmVtIDEuNXJlbSAxLjVyZW07IG1hcmdpbi10b3A6IGF1dG87XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgei1pbmRleDogMTtcbn1cbi50ci1mb290ZXItd29yZG1hcmsge1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC1kaXNwbGF5KTsgZm9udC1zaXplOiAxNnB4OyBsZXR0ZXItc3BhY2luZzogNHB4OyBjb2xvcjogI2ZmZjtcbn1cbi50ci1mb290ZXItaGFzaCB7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWRpc3BsYXkpOyBmb250LXNpemU6IDEycHg7IGxldHRlci1zcGFjaW5nOiAzcHg7XG4gIGJhY2tncm91bmQ6IHZhcigtLWdyYWQpOyAtd2Via2l0LWJhY2tncm91bmQtY2xpcDogdGV4dDsgLXdlYmtpdC10ZXh0LWZpbGwtY29sb3I6IHRyYW5zcGFyZW50OyBiYWNrZ3JvdW5kLWNsaXA6IHRleHQ7XG59XG4udHItZm9vdGVyLWxpbmtzIGEge1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC1tb25vKTsgZm9udC1zaXplOiAxMHB4OyBsZXR0ZXItc3BhY2luZzogMXB4OyB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBjb2xvcjogdmFyKC0tdGV4dDMpOyB0ZXh0LWRlY29yYXRpb246IG5vbmU7IHRyYW5zaXRpb246IGNvbG9yIDAuMnM7IG1hcmdpbjogMCAxMHB4O1xufVxuLnRyLWZvb3Rlci1saW5rcyBhOmhvdmVyIHsgY29sb3I6IHZhcigtLWFjY2VudCk7IH1cbi50ci1mb290ZXItY29weSB7IGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LW1vbm8pOyBmb250LXNpemU6IDEwcHg7IGNvbG9yOiB2YXIoLS10ZXh0Myk7IGxldHRlci1zcGFjaW5nOiAwLjVweDsgfVxuXG5cblxuLyogPT0gSG9tZSBwYWdlIGNvbXBvbmVudCBjbGFzc2VzID09ICovXG5cbi8qIFNlY3Rpb24gbGF5b3V0cyAqL1xuLnRyLXNlY3Rpb24tYmcgIHsgcGFkZGluZzogMTAwcHggMDsgYmFja2dyb3VuZDogdmFyKC0tYmcpOyB9XG4udHItc2VjdGlvbi1iZzIgeyBwYWRkaW5nOiAxMDBweCAwOyBiYWNrZ3JvdW5kOiB2YXIoLS1iZzIpOyB9XG4udHItaGVybyB7IG1pbi1oZWlnaHQ6IDEwMHZoOyBkaXNwbGF5OiBmbGV4OyBhbGlnbi1pdGVtczogY2VudGVyOyBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgdGV4dC1hbGlnbjogY2VudGVyOyBwYWRkaW5nOiAxMjBweCAxNnB4IDgwcHg7IH1cbi50ci1jdGEtc2VjdGlvbiB7IHBhZGRpbmc6IDEyMHB4IDA7IHRleHQtYWxpZ246IGNlbnRlcjsgcG9zaXRpb246IHJlbGF0aXZlOyBvdmVyZmxvdzogaGlkZGVuOyB9XG4udHItbmF2LXRyYW5zcGFyZW50IHsgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDsgYm9yZGVyLWJvdHRvbS1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDsgfVxuLnRyLW5hdi10cmFuc3BhcmVudC5zY3JvbGxlZCB7IGJhY2tncm91bmQ6IHZhcigtLW5hdi1iZykgIWltcG9ydGFudDsgYm9yZGVyLWJvdHRvbS1jb2xvcjogdmFyKC0tYm9yZGVyKSAhaW1wb3J0YW50OyB9XG4udHItY3RhLXdhdGVybWFyayB7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgaW5zZXQ6IDA7IGRpc3BsYXk6IGZsZXg7IGFsaWduLWl0ZW1zOiBjZW50ZXI7IGp1c3RpZnktY29udGVudDogY2VudGVyOyBwb2ludGVyLWV2ZW50czogbm9uZTsgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuLnRyLWN0YS13YXRlcm1hcmsgc3BhbiB7IGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWRpc3BsYXkpOyBmb250LXNpemU6IGNsYW1wKDgwcHgsMTZ2dywyMDBweCk7IGxldHRlci1zcGFjaW5nOiAyMHB4OyBjb2xvcjogdmFyKC0tdGV4dCk7IG9wYWNpdHk6IC4wMzsgd2hpdGUtc3BhY2U6IG5vd3JhcDsgdXNlci1zZWxlY3Q6IG5vbmU7IH1cbi50ci1jdGEtdGl0bGUgeyBmb250LWZhbWlseTogdmFyKC0tZm9udC1kaXNwbGF5KTsgZm9udC1zaXplOiBjbGFtcCg0OHB4LDd2dyw4OHB4KTsgbGV0dGVyLXNwYWNpbmc6IDJweDsgbGluZS1oZWlnaHQ6IC45OyBjb2xvcjogdmFyKC0tdGV4dCk7IG1hcmdpbi1ib3R0b206IDIwcHg7IH1cbi50ci1jdGEtdGl0bGUgZW0geyBmb250LXN0eWxlOiBub3JtYWw7IGJhY2tncm91bmQ6IHZhcigtLWdyYWQpOyAtd2Via2l0LWJhY2tncm91bmQtY2xpcDogdGV4dDsgLXdlYmtpdC10ZXh0LWZpbGwtY29sb3I6IHRyYW5zcGFyZW50OyBiYWNrZ3JvdW5kLWNsaXA6IHRleHQ7IH1cblxuLyogU2VjdGlvbiB0eXBvZ3JhcGh5ICovXG4udHItc2VjdGlvbi10YWcge1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC1tb25vKTsgZm9udC1zaXplOiAxMHB4OyBmb250LXdlaWdodDogNjAwO1xuICBsZXR0ZXItc3BhY2luZzogNHB4OyB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBjb2xvcjogdmFyKC0tYWNjZW50KTsgbWFyZ2luLWJvdHRvbTogMTJweDtcbn1cbi50ci1zZWN0aW9uLXRpdGxlIHtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtZGlzcGxheSk7XG4gIGZvbnQtc2l6ZTogY2xhbXAoNDRweCwgNnZ3LCA2OHB4KTtcbiAgbGV0dGVyLXNwYWNpbmc6IDJweDsgbGluZS1oZWlnaHQ6IC45MjsgY29sb3I6IHZhcigtLXRleHQpO1xufVxuLnRyLXNlY3Rpb24tdGl0bGUgZW0geyBmb250LXN0eWxlOiBub3JtYWw7IGJhY2tncm91bmQ6IHZhcigtLWdyYWQpOyAtd2Via2l0LWJhY2tncm91bmQtY2xpcDogdGV4dDsgLXdlYmtpdC10ZXh0LWZpbGwtY29sb3I6IHRyYW5zcGFyZW50OyBiYWNrZ3JvdW5kLWNsaXA6IHRleHQ7IH1cbi50ci1zZWN0aW9uLXRpdGxlLWxnIHtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtZGlzcGxheSk7XG4gIGZvbnQtc2l6ZTogY2xhbXAoNDRweCwgN3Z3LCA4MHB4KTtcbiAgbGV0dGVyLXNwYWNpbmc6IDJweDsgbGluZS1oZWlnaHQ6IC45OyBjb2xvcjogdmFyKC0tdGV4dCk7XG4gIG1hcmdpbi1ib3R0b206IDI0cHg7XG59XG4udHItc2VjdGlvbi10aXRsZS1sZyBlbSB7IGZvbnQtc3R5bGU6IG5vcm1hbDsgYmFja2dyb3VuZDogdmFyKC0tZ3JhZCk7IC13ZWJraXQtYmFja2dyb3VuZC1jbGlwOiB0ZXh0OyAtd2Via2l0LXRleHQtZmlsbC1jb2xvcjogdHJhbnNwYXJlbnQ7IGJhY2tncm91bmQtY2xpcDogdGV4dDsgfVxuLnRyLXNlY3Rpb24tdGl0bGUteGwge1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC1kaXNwbGF5KTtcbiAgZm9udC1zaXplOiBjbGFtcCg0NHB4LCAxMHZ3LCAxMjBweCk7XG4gIGxldHRlci1zcGFjaW5nOiAzcHg7IGxpbmUtaGVpZ2h0OiAuODg7IG1hcmdpbi1ib3R0b206IDE4cHg7XG59XG4udHItc2VjdGlvbi10aXRsZS14bCBzcGFuIHsgZGlzcGxheTogYmxvY2s7IH1cbi50ci1zZWN0aW9uLXRpdGxlLXhsIC50ci10aXRsZS1wbGFpbiB7IGNvbG9yOiB2YXIoLS10ZXh0KTsgfVxuLnRyLXNlY3Rpb24tdGl0bGUteGwgLnRyLXRpdGxlLWdyYWQgeyBiYWNrZ3JvdW5kOiB2YXIoLS1ncmFkKTsgLXdlYmtpdC1iYWNrZ3JvdW5kLWNsaXA6IHRleHQ7IC13ZWJraXQtdGV4dC1maWxsLWNvbG9yOiB0cmFuc3BhcmVudDsgYmFja2dyb3VuZC1jbGlwOiB0ZXh0OyB9XG4udHItc2VjdGlvbi1zdWIgeyBmb250LXNpemU6IDE1cHg7IGNvbG9yOiB2YXIoLS10ZXh0Mik7IGxpbmUtaGVpZ2h0OiAxLjg7IH1cbi50ci1zZWN0aW9uLXN1Yi1tdXRlZCB7IGZvbnQtc2l6ZTogMTRweDsgY29sb3I6IHZhcigtLXRleHQzKTsgbGluZS1oZWlnaHQ6IDEuNjsgfVxuLnRyLWdyYWQtdGV4dCB7IGJhY2tncm91bmQ6IHZhcigtLWdyYWQpOyAtd2Via2l0LWJhY2tncm91bmQtY2xpcDogdGV4dDsgLXdlYmtpdC10ZXh0LWZpbGwtY29sb3I6IHRyYW5zcGFyZW50OyBiYWNrZ3JvdW5kLWNsaXA6IHRleHQ7IGZvbnQtc3R5bGU6IG5vcm1hbDsgfVxuXG4vKiBIZXJvICovXG4udHItaGVyby10aXRsZSB7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWRpc3BsYXkpO1xuICBmb250LXNpemU6IGNsYW1wKDcycHgsIDEzdncsIDE0MHB4KTtcbiAgbGluZS1oZWlnaHQ6IC44ODsgbGV0dGVyLXNwYWNpbmc6IDNweDsgbWFyZ2luLWJvdHRvbTogOHB4O1xufVxuLnRyLWhlcm8tdGl0bGUgc3BhbiB7IGRpc3BsYXk6IGJsb2NrOyB9XG4udHItaGVyby10aXRsZSAudHItdGl0bGUtcGxhaW4geyBjb2xvcjogdmFyKC0tdGV4dCk7IH1cbi50ci1oZXJvLXRpdGxlIC50ci10aXRsZS1ncmFkIHsgYmFja2dyb3VuZDogdmFyKC0tZ3JhZCk7IC13ZWJraXQtYmFja2dyb3VuZC1jbGlwOiB0ZXh0OyAtd2Via2l0LXRleHQtZmlsbC1jb2xvcjogdHJhbnNwYXJlbnQ7IGJhY2tncm91bmQtY2xpcDogdGV4dDsgfVxuLnRyLWhlcm8tdGl0bGUgLnRyLXRpdGxlLW11dGVkIHsgY29sb3I6IHZhcigtLXcxMik7IGZvbnQtc2l6ZTogY2xhbXAoNTJweCwgOXZ3LCA5NnB4KTsgbGV0dGVyLXNwYWNpbmc6IDEwcHg7IH1cbi50ci1oZXJvLXN1YiB7IGZvbnQtc2l6ZTogMTVweDsgZm9udC13ZWlnaHQ6IDMwMDsgY29sb3I6IHZhcigtLXRleHQyKTsgbGluZS1oZWlnaHQ6IDEuNzU7IH1cbi50ci1oZXJvLXN1YiBzdHJvbmcgeyBjb2xvcjogdmFyKC0tdGV4dCk7IGZvbnQtd2VpZ2h0OiA2MDA7IH1cbi50ci1oZXJvLWJhZGdlIHsgYmFja2dyb3VuZDogcmdiYSgxMzksOTIsMjQ2LDAuMSk7IGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMTM5LDkyLDI0NiwwLjI1KTsgfVxuLnRyLWJhZGdlLXRleHQgeyBmb250LWZhbWlseTogdmFyKC0tZm9udC1tb25vKTsgZm9udC1zaXplOiAxMHB4OyBmb250LXdlaWdodDogNjAwOyBsZXR0ZXItc3BhY2luZzogM3B4OyB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyBjb2xvcjogdmFyKC0tYWNjZW50KTsgfVxuLnRyLXB1bHNlLWRvdCB7XG4gIHdpZHRoOiA2cHg7IGhlaWdodDogNnB4OyBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGJhY2tncm91bmQ6IHZhcigtLWFjY2VudCk7IGJveC1zaGFkb3c6IDAgMCA4cHggdmFyKC0tYWNjZW50KTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrOyBhbmltYXRpb246IHRyLXB1bHNlIDEuNXMgZWFzZS1pbi1vdXQgaW5maW5pdGU7XG59XG4udHItcHVsc2UtZG90LWdyZWVuIHtcbiAgd2lkdGg6IDZweDsgaGVpZ2h0OiA2cHg7IGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgYmFja2dyb3VuZDogdmFyKC0tZ3JlZW4pOyBib3gtc2hhZG93OiAwIDAgNnB4IHZhcigtLWdyZWVuKTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrOyBhbmltYXRpb246IHRyLXB1bHNlIDEuNXMgZWFzZS1pbi1vdXQgaW5maW5pdGU7XG59XG5cbi8qIEhlcm8gc3RhdHMgZ3JpZCAqL1xuLnRyLXN0YXRzLWdyaWQgeyBtYXgtd2lkdGg6IDcwMHB4OyBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1ib3JkZXIpOyBib3JkZXItcmFkaXVzOiAxNHB4OyBvdmVyZmxvdzogaGlkZGVuOyBiYWNrZ3JvdW5kOiB2YXIoLS13MDUpOyB9XG4udHItc3RhdHMtY29sLWJvcmRlcmVkIHsgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgdmFyKC0tYm9yZGVyKTsgfVxuLnRyLXN0YXQtdmFsdWUgeyBmb250LWZhbWlseTogdmFyKC0tZm9udC1kaXNwbGF5KTsgZm9udC1zaXplOiAyOHB4OyBiYWNrZ3JvdW5kOiB2YXIoLS1ncmFkKTsgLXdlYmtpdC1iYWNrZ3JvdW5kLWNsaXA6IHRleHQ7IC13ZWJraXQtdGV4dC1maWxsLWNvbG9yOiB0cmFuc3BhcmVudDsgYmFja2dyb3VuZC1jbGlwOiB0ZXh0OyB9XG4udHItc3RhdC1sYWJlbCB7IGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LW1vbm8pOyBmb250LXNpemU6IDhweDsgbGV0dGVyLXNwYWNpbmc6IDJweDsgY29sb3I6IHZhcigtLXRleHQzKTsgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuXG4vKiBGZWF0dXJlIGNhcmRzICovXG4udHItZmVhdHVyZS1pY29uIHsgd2lkdGg6IDM4cHg7IGhlaWdodDogMzhweDsgYm9yZGVyLXJhZGl1czogMTBweDsgYmFja2dyb3VuZDogdmFyKC0tdzA1KTsgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tYm9yZGVyKTsgZGlzcGxheTogZmxleDsgYWxpZ24taXRlbXM6IGNlbnRlcjsganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IGZvbnQtc2l6ZTogMTdweDsgbWFyZ2luLWJvdHRvbTogMTJweDsgfVxuLnRyLWZlYXR1cmUtbnVtIHsgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtbW9ubyk7IGZvbnQtc2l6ZTogOXB4OyBsZXR0ZXItc3BhY2luZzogMnB4OyBjb2xvcjogdmFyKC0tdGV4dDMpOyB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyBtYXJnaW4tYm90dG9tOiA0cHg7IH1cbi50ci1mZWF0dXJlLXRpdGxlIHsgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtZGlzcGxheSk7IGZvbnQtc2l6ZTogMjBweDsgbGV0dGVyLXNwYWNpbmc6IDFweDsgY29sb3I6IHZhcigtLXRleHQpOyBtYXJnaW4tYm90dG9tOiA1cHg7IH1cbi50ci1mZWF0dXJlLWRlc2MgeyBmb250LXNpemU6IDEycHg7IGNvbG9yOiB2YXIoLS10ZXh0Myk7IGxpbmUtaGVpZ2h0OiAxLjY7IH1cblxuLyogRmVhdHVyZSBsaXN0IChhYm91dCBzZWN0aW9uKSAqL1xuLnRyLWZlYXR1cmUtbGlzdCB7IGRpc3BsYXk6IGZsZXg7IGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IGdhcDogMTJweDsgfVxuLnRyLWZlYXR1cmUtaXRlbSB7IGRpc3BsYXk6IGZsZXg7IGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0OyBnYXA6IDE0cHg7IHBhZGRpbmc6IDE2cHg7IGJhY2tncm91bmQ6IHZhcigtLXcwNSk7IGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJvcmRlcik7IGJvcmRlci1yYWRpdXM6IDEycHg7IH1cbi50ci1mZWF0dXJlLWl0ZW0taWNvbiB7IHdpZHRoOiA0MHB4OyBoZWlnaHQ6IDQwcHg7IGJvcmRlci1yYWRpdXM6IDEwcHg7IGJhY2tncm91bmQ6IHZhcigtLWdyYWQpOyBkaXNwbGF5OiBmbGV4OyBhbGlnbi1pdGVtczogY2VudGVyOyBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgZm9udC1zaXplOiAxOHB4OyBmbGV4LXNocmluazogMDsgfVxuLnRyLWZlYXR1cmUtaXRlbS10aXRsZSB7IGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWRpc3BsYXkpOyBmb250LXNpemU6IDE3cHg7IGxldHRlci1zcGFjaW5nOiAxcHg7IGNvbG9yOiB2YXIoLS10ZXh0KTsgbWFyZ2luLWJvdHRvbTogM3B4OyB9XG4udHItZmVhdHVyZS1pdGVtLWRlc2MgeyBmb250LXNpemU6IDEycHg7IGNvbG9yOiB2YXIoLS10ZXh0Myk7IGxpbmUtaGVpZ2h0OiAxLjY7IH1cblxuLyogUXVvdGUgYm94ICovXG4udHItcXVvdGUtYm94IHsgYmFja2dyb3VuZDogdmFyKC0tY2FyZC1iZyk7IGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJvcmRlcik7IGJvcmRlci1yYWRpdXM6IDIwcHg7IHBhZGRpbmc6IDM2cHg7IHBvc2l0aW9uOiByZWxhdGl2ZTsgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuLnRyLWdyYWQtYmFyIHsgcG9zaXRpb246IGFic29sdXRlOyB0b3A6IDA7IGxlZnQ6IDA7IHJpZ2h0OiAwOyBoZWlnaHQ6IDNweDsgYmFja2dyb3VuZDogdmFyKC0tZ3JhZCk7IH1cbi50ci1xdW90ZS1sYWJlbCB7IGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LW1vbm8pOyBmb250LXNpemU6IDlweDsgbGV0dGVyLXNwYWNpbmc6IDNweDsgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgY29sb3I6IHZhcigtLXRleHQzKTsgbWFyZ2luLWJvdHRvbTogMjBweDsgfVxuLnRyLWJsb2NrcXVvdGUgeyBmb250LXNpemU6IDE1cHg7IGxpbmUtaGVpZ2h0OiAxLjg7IGNvbG9yOiB2YXIoLS10ZXh0Mik7IG1hcmdpbjogMCAwIDI0cHg7IGZvbnQtc3R5bGU6IGl0YWxpYzsgfVxuLnRyLWF1dGhvciB7IGRpc3BsYXk6IGZsZXg7IGFsaWduLWl0ZW1zOiBjZW50ZXI7IGdhcDogMTJweDsgfVxuLnRyLWF1dGhvci1hdmF0YXIgeyB3aWR0aDogNDRweDsgaGVpZ2h0OiA0NHB4OyBib3JkZXItcmFkaXVzOiA1MCU7IGJhY2tncm91bmQ6IHZhcigtLWdyYWQpOyBkaXNwbGF5OiBmbGV4OyBhbGlnbi1pdGVtczogY2VudGVyOyBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtZGlzcGxheSk7IGZvbnQtc2l6ZTogMjBweDsgY29sb3I6ICMwMDA7IGZsZXgtc2hyaW5rOiAwOyB9XG4udHItYXV0aG9yLW5hbWUgeyBmb250LWZhbWlseTogdmFyKC0tZm9udC1kaXNwbGF5KTsgZm9udC1zaXplOiAxNnB4OyBsZXR0ZXItc3BhY2luZzogMXB4OyBjb2xvcjogdmFyKC0tdGV4dCk7IH1cbi50ci1hdXRob3ItdGl0bGUgeyBmb250LWZhbWlseTogdmFyKC0tZm9udC1tb25vKTsgZm9udC1zaXplOiA5cHg7IGxldHRlci1zcGFjaW5nOiAycHg7IGNvbG9yOiB2YXIoLS10ZXh0Myk7IHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cbi50ci1xdW90ZS1zdGF0cyB7IG1hcmdpbi10b3A6IDI4cHg7IHBhZGRpbmctdG9wOiAyNHB4OyBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tYm9yZGVyKTsgZGlzcGxheTogZ3JpZDsgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyIDFmcjsgZ2FwOiAxNnB4OyB9XG4udHItbWluaS1zdGF0LXZhbHVlIHsgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtZGlzcGxheSk7IGZvbnQtc2l6ZTogMzBweDsgYmFja2dyb3VuZDogdmFyKC0tZ3JhZCk7IC13ZWJraXQtYmFja2dyb3VuZC1jbGlwOiB0ZXh0OyAtd2Via2l0LXRleHQtZmlsbC1jb2xvcjogdHJhbnNwYXJlbnQ7IGJhY2tncm91bmQtY2xpcDogdGV4dDsgfVxuLnRyLW1pbmktc3RhdC1sYWJlbCB7IGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LW1vbm8pOyBmb250LXNpemU6IDhweDsgbGV0dGVyLXNwYWNpbmc6IDEuNXB4OyBjb2xvcjogdmFyKC0tdGV4dDMpOyB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyBtYXJnaW4tdG9wOiAycHg7IH1cblxuLyogQ2hhbGxlbmdlIGNhcmRzICovXG4udHItY2hhbGxlbmdlLWhlYWRlciB7IGRpc3BsYXk6IGZsZXg7IGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7IG1hcmdpbi1ib3R0b206IDI0cHg7IH1cbi50ci1jYXJkLXR5cGUtbGFiZWwgeyBmb250LWZhbWlseTogdmFyKC0tZm9udC1tb25vKTsgZm9udC1zaXplOiA5cHg7IGxldHRlci1zcGFjaW5nOiAycHg7IHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IGNvbG9yOiB2YXIoLS10ZXh0Myk7IG1hcmdpbi1ib3R0b206IDZweDsgfVxuLnRyLWNhcmQtdHlwZS1sYWJlbC1hY2NlbnQgeyBmb250LWZhbWlseTogdmFyKC0tZm9udC1tb25vKTsgZm9udC1zaXplOiA5cHg7IGxldHRlci1zcGFjaW5nOiAycHg7IHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IGNvbG9yOiB2YXIoLS1hY2NlbnQpOyBtYXJnaW4tYm90dG9tOiA2cHg7IH1cbi50ci1jaGFsbGVuZ2UtcGxhbiB7IGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWRpc3BsYXkpOyBmb250LXNpemU6IDMycHg7IGxldHRlci1zcGFjaW5nOiAycHg7IGNvbG9yOiB2YXIoLS10ZXh0KTsgfVxuLnRyLWNoZWNrLWxpc3QgeyBkaXNwbGF5OiBmbGV4OyBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyBnYXA6IDEwcHg7IG1hcmdpbi1ib3R0b206IDI4cHg7IH1cbi50ci1jaGVjay1pdGVtIHsgZGlzcGxheTogZmxleDsgYWxpZ24taXRlbXM6IGNlbnRlcjsgZ2FwOiAxMHB4OyBmb250LXNpemU6IDEycHg7IGNvbG9yOiB2YXIoLS10ZXh0Mik7IH1cbi50ci1jaGVjay1pdGVtLW11dGVkIHsgY29sb3I6IHZhcigtLXRleHQzKTsgfVxuLnRyLWNoZWNrLW9rIHsgY29sb3I6IHZhcigtLWdyZWVuKTsgfVxuLnRyLWNoZWNrLW5vIHsgY29sb3I6IHZhcigtLXRleHQzKTsgfVxuXG4vKiBUb2tlbiBzdGF0cyAqL1xuLnRyLXRva2VuLXN0YXQgeyBiYWNrZ3JvdW5kOiB2YXIoLS13MDUpOyBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1ib3JkZXIpOyBib3JkZXItcmFkaXVzOiAxMnB4OyBwYWRkaW5nOiAxOHB4OyB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbi50ci10b2tlbi1zdGF0LXZhbHVlIHsgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtZGlzcGxheSk7IGZvbnQtc2l6ZTogMjZweDsgYmFja2dyb3VuZDogdmFyKC0tZ3JhZCk7IC13ZWJraXQtYmFja2dyb3VuZC1jbGlwOiB0ZXh0OyAtd2Via2l0LXRleHQtZmlsbC1jb2xvcjogdHJhbnNwYXJlbnQ7IGJhY2tncm91bmQtY2xpcDogdGV4dDsgfVxuLnRyLXRva2VuLXN0YXQtbGFiZWwgeyBmb250LWZhbWlseTogdmFyKC0tZm9udC1tb25vKTsgZm9udC1zaXplOiA4cHg7IGxldHRlci1zcGFjaW5nOiAycHg7IGNvbG9yOiB2YXIoLS10ZXh0Myk7IHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IG1hcmdpbi10b3A6IDRweDsgfVxuXG4vKiBHYW1pZmljYXRpb24gKi9cbi50ci1nYW1pZnktaWNvbiB7IGZvbnQtc2l6ZTogMzZweDsgbWFyZ2luLWJvdHRvbTogMTJweDsgfVxuLnRyLWdhbWlmeS10aXRsZSB7IGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWRpc3BsYXkpOyBmb250LXNpemU6IDIycHg7IGxldHRlci1zcGFjaW5nOiAxcHg7IGNvbG9yOiB2YXIoLS10ZXh0KTsgbWFyZ2luLWJvdHRvbTogNnB4OyB9XG4udHItZ2FtaWZ5LWRlc2MgeyBmb250LXNpemU6IDEycHg7IGNvbG9yOiB2YXIoLS10ZXh0Myk7IGxpbmUtaGVpZ2h0OiAxLjY7IH1cbi50ci1ob3ctc3RlcC10aXRsZSB7IGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWRpc3BsYXkpOyBmb250LXNpemU6IDIwcHg7IGxldHRlci1zcGFjaW5nOiAxcHg7IGNvbG9yOiB2YXIoLS10ZXh0KTsgbWFyZ2luLWJvdHRvbTogOHB4OyB9XG4udHItaG93LXN0ZXAtZGVzYyB7IGZvbnQtc2l6ZTogMTJweDsgY29sb3I6IHZhcigtLXRleHQzKTsgbGluZS1oZWlnaHQ6IDEuNzsgfVxuXG4vKiBMZWFkZXJib2FyZCAqL1xuLnRyLWxiLWhlYWRlciB7IGRpc3BsYXk6IGdyaWQ7IGdyaWQtdGVtcGxhdGUtY29sdW1uczogMzJweCAxZnIgODBweCA4MHB4OyBnYXA6IDEycHg7IHBhZGRpbmc6IDZweCAxNHB4OyBtYXJnaW4tYm90dG9tOiA2cHg7IH1cbi50ci1sYi1oZWFkZXItY2VsbCB7IGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LW1vbm8pOyBmb250LXNpemU6IDhweDsgbGV0dGVyLXNwYWNpbmc6IDJweDsgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgY29sb3I6IHZhcigtLXRleHQzKTsgfVxuLnRyLWxiLWhlYWRlci1jZWxsLXIgeyB0ZXh0LWFsaWduOiByaWdodDsgfVxuLnRyLWxiLXJhbmsgeyBmb250LWZhbWlseTogdmFyKC0tZm9udC1kaXNwbGF5KTsgZm9udC1zaXplOiAxNnB4OyBjb2xvcjogdmFyKC0tdGV4dDMpOyB9XG4udHItbGItcmFuay1nb2xkIHsgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtZGlzcGxheSk7IGZvbnQtc2l6ZTogMTZweDsgY29sb3I6IHZhcigtLWdvbGQpOyB9XG4udHItbGItdHJhZGVyIHsgZGlzcGxheTogZmxleDsgYWxpZ24taXRlbXM6IGNlbnRlcjsgZ2FwOiA4cHg7IH1cbi50ci1sYi1hdmF0YXIgeyB3aWR0aDogMjhweDsgaGVpZ2h0OiAyOHB4OyBib3JkZXItcmFkaXVzOiA1MCU7IGJhY2tncm91bmQ6IHZhcigtLWdyYWQpOyBkaXNwbGF5OiBmbGV4OyBhbGlnbi1pdGVtczogY2VudGVyOyBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtZGlzcGxheSk7IGZvbnQtc2l6ZTogMTNweDsgY29sb3I6ICMwMDA7IGZsZXgtc2hyaW5rOiAwOyB9XG4udHItbGItYXZhdGFyLWJsdWUgIHsgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywjMUE1NkRCLCM0RjhFRjcpOyBjb2xvcjogI2ZmZjsgfVxuLnRyLWxiLWF2YXRhci1waW5rICB7IGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsI0Q5MUFBRCwjRTgzREMwKTsgY29sb3I6ICNmZmY7IH1cbi50ci1sYi1hdmF0YXItZ3JlZW4geyBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCMyMmM1NWUsIzE2YTM0YSk7IGNvbG9yOiAjZmZmOyB9XG4udHItbGItYXZhdGFyLWdvbGQgIHsgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywjRjVDNTE4LCNkOTc3MDYpOyBjb2xvcjogIzAwMDsgfVxuLnRyLWxiLW5hbWUgIHsgZm9udC1zaXplOiAxM3B4OyBjb2xvcjogdmFyKC0tdGV4dCk7IH1cbi50ci1sYi1sZXZlbCB7IGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LW1vbm8pOyBmb250LXNpemU6IDhweDsgY29sb3I6IHZhcigtLXRleHQzKTsgfVxuLnRyLWxiLXZhbHVlIHsgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtZGlzcGxheSk7IGZvbnQtc2l6ZTogMTZweDsgY29sb3I6IHZhcigtLXRleHQpOyB0ZXh0LWFsaWduOiByaWdodDsgfVxuLnRyLWxiLXdpbnJhdGUgeyBmb250LWZhbWlseTogdmFyKC0tZm9udC1tb25vKTsgZm9udC1zaXplOiAxMXB4OyBjb2xvcjogdmFyKC0tZ3JlZW4pOyB0ZXh0LWFsaWduOiByaWdodDsgfVxuLnRyLWxiLWxpbmsgeyBmb250LWZhbWlseTogdmFyKC0tZm9udC1tb25vKTsgZm9udC1zaXplOiAxMHB4OyBsZXR0ZXItc3BhY2luZzogMnB4OyB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyBjb2xvcjogdmFyKC0tYWNjZW50KTsgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG5cbi8qIFBheW91dCBib3ggKi9cbi50ci1wYXlvdXQtYm94IHsgYmFja2dyb3VuZDogdmFyKC0tY2FyZC1iZyk7IGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJvcmRlci1oKTsgYm9yZGVyLXJhZGl1czogMThweDsgcGFkZGluZzogMjhweDsgcG9zaXRpb246IHJlbGF0aXZlOyBvdmVyZmxvdzogaGlkZGVuOyBtYXJnaW4tYm90dG9tOiAyMHB4OyB9XG4udHItcGF5b3V0LWJhciB7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgdG9wOiAwOyBsZWZ0OiAwOyByaWdodDogMDsgaGVpZ2h0OiAzcHg7IGJhY2tncm91bmQ6IHZhcigtLWdyYWQpOyB9XG4udHItcGF5b3V0LW1ldGEgeyBkaXNwbGF5OiBmbGV4OyBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IGFsaWduLWl0ZW1zOiBjZW50ZXI7IG1hcmdpbi1ib3R0b206IDIwcHg7IH1cbi50ci1wYXlvdXQtbGFiZWwgeyBmb250LWZhbWlseTogdmFyKC0tZm9udC1tb25vKTsgZm9udC1zaXplOiA5cHg7IGxldHRlci1zcGFjaW5nOiAycHg7IHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IGNvbG9yOiB2YXIoLS10ZXh0Myk7IH1cbi50ci1wYXlvdXQtYW1vdW50IHsgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtZGlzcGxheSk7IGZvbnQtc2l6ZTogNTJweDsgYmFja2dyb3VuZDogdmFyKC0tZ3JhZCk7IC13ZWJraXQtYmFja2dyb3VuZC1jbGlwOiB0ZXh0OyAtd2Via2l0LXRleHQtZmlsbC1jb2xvcjogdHJhbnNwYXJlbnQ7IGJhY2tncm91bmQtY2xpcDogdGV4dDsgbGluZS1oZWlnaHQ6IDE7IG1hcmdpbi1ib3R0b206IDZweDsgfVxuLnRyLXBheW91dC1yZWNpcGllbnQgeyBmb250LWZhbWlseTogdmFyKC0tZm9udC1tb25vKTsgZm9udC1zaXplOiA5cHg7IGxldHRlci1zcGFjaW5nOiAycHg7IHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IGNvbG9yOiB2YXIoLS10ZXh0Myk7IG1hcmdpbi1ib3R0b206IDIwcHg7IH1cbi50ci1wYXlvdXQtYWRkcmVzcyB7IGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LW1vbm8pOyBmb250LXNpemU6IDEwcHg7IGxldHRlci1zcGFjaW5nOiAwLjVweDsgY29sb3I6IHZhcigtLXRleHQzKTsgYmFja2dyb3VuZDogdmFyKC0tdzA1KTsgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tYm9yZGVyKTsgYm9yZGVyLXJhZGl1czogOHB4OyBwYWRkaW5nOiAxMHB4IDEycHg7IHdvcmQtYnJlYWs6IGJyZWFrLWFsbDsgfVxuLnRyLXBheW91dC1jb25maXJtZWQgeyBkaXNwbGF5OiBmbGV4OyBhbGlnbi1pdGVtczogY2VudGVyOyBnYXA6IDhweDsgbWFyZ2luLXRvcDogMTRweDsgfVxuLnRyLXBheW91dC1jb25maXJtZWQtdGV4dCB7IGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LW1vbm8pOyBmb250LXNpemU6IDlweDsgbGV0dGVyLXNwYWNpbmc6IDJweDsgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgY29sb3I6IHZhcigtLWdyZWVuKTsgfVxuXG4vKiBBY3Rpdml0eSBib3ggKi9cbi50ci1hY3Rpdml0eS1ib3ggeyBiYWNrZ3JvdW5kOiB2YXIoLS1jYXJkLWJnKTsgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tYm9yZGVyKTsgYm9yZGVyLXJhZGl1czogMThweDsgcGFkZGluZzogMjRweDsgfVxuLnRyLWFjdGl2aXR5LWhlYWRlciB7IGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LW1vbm8pOyBmb250LXNpemU6IDlweDsgbGV0dGVyLXNwYWNpbmc6IDJweDsgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgY29sb3I6IHZhcigtLXRleHQzKTsgbWFyZ2luLWJvdHRvbTogMTZweDsgfVxuLnRyLWFjdGl2aXR5LWl0ZW1zIHsgZGlzcGxheTogZmxleDsgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgZ2FwOiAxMnB4OyB9XG4udHItYWN0aXZpdHktaXRlbSB7IGRpc3BsYXk6IGZsZXg7IGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuLnRyLWFjdGl2aXR5LWRlc2MgeyBmb250LXNpemU6IDEycHg7IGNvbG9yOiB2YXIoLS10ZXh0Mik7IH1cbi50ci1hY3Rpdml0eS12YWx1ZSB7IGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWRpc3BsYXkpOyBmb250LXNpemU6IDIwcHg7IGJhY2tncm91bmQ6IHZhcigtLWdyYWQpOyAtd2Via2l0LWJhY2tncm91bmQtY2xpcDogdGV4dDsgLXdlYmtpdC10ZXh0LWZpbGwtY29sb3I6IHRyYW5zcGFyZW50OyBiYWNrZ3JvdW5kLWNsaXA6IHRleHQ7IH1cblxuLyogTWlzYyAqL1xuLnRyLWRpdmlkZXIgeyBoZWlnaHQ6IDFweDsgYmFja2dyb3VuZDogdmFyKC0tYm9yZGVyKTsgfVxuXG4vKiBOYXYgYnV0dG9uIGV4dHJhcyAqL1xuLnRyLW5hdi1sb2dpbi1idG4geyBmb250LWZhbWlseTogdmFyKC0tZm9udC1tb25vKTsgZm9udC1zaXplOiAxMHB4OyBsZXR0ZXItc3BhY2luZzogMS41cHg7IHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IGNvbG9yOiB2YXIoLS10ZXh0Mik7IGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJvcmRlcik7IHBhZGRpbmc6IDZweCAxNHB4OyBib3JkZXItcmFkaXVzOiA2cHg7IHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuLnRyLW5hdi1zaWdudXAtYnRuIHsgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtZGlzcGxheSk7IGZvbnQtc2l6ZTogMTRweDsgbGV0dGVyLXNwYWNpbmc6IDJweDsgY29sb3I6ICMwMDA7IGJhY2tncm91bmQ6IHZhcigtLWdyYWQpOyBib3JkZXI6IG5vbmU7IHBhZGRpbmc6IDZweCAxNnB4OyBib3JkZXItcmFkaXVzOiA2cHg7IGZvbnQtd2VpZ2h0OiA0MDA7IHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuLnRyLW5hdi1kZXYtdG9nZ2xlIHsgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtbW9ubyk7IGZvbnQtc2l6ZTogOXB4OyBsZXR0ZXItc3BhY2luZzogMS41cHg7IHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IGNvbG9yOiByZ2JhKDI1NSwyNTUsMjU1LDAuMTgpOyB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cbi50ci1uYXYtZGV2LW1lbnUgeyBiYWNrZ3JvdW5kOiB2YXIoLS1iZzMpICFpbXBvcnRhbnQ7IGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJvcmRlcikgIWltcG9ydGFudDsgbWluLXdpZHRoOiAxMzBweDsgfVxuLnRyLW5hdi1kZXYtaXRlbSB7IGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LW1vbm8pICFpbXBvcnRhbnQ7IGZvbnQtc2l6ZTogMTBweCAhaW1wb3J0YW50OyBsZXR0ZXItc3BhY2luZzogMXB4ICFpbXBvcnRhbnQ7IGNvbG9yOiB2YXIoLS10ZXh0MykgIWltcG9ydGFudDsgfVxuLnRyLWZvb3Rlci1zZWN0aW9uLWxhYmVsIHsgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtbW9ubyk7IGZvbnQtc2l6ZTogOXB4OyBsZXR0ZXItc3BhY2luZzogM3B4OyB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyBjb2xvcjogdmFyKC0tdGV4dDMpOyBtYXJnaW4tYm90dG9tOiAxNHB4OyB9XG5cbi8qIEJ1dHRvbiBzaXplIHZhcmlhbnRzICovXG4udHItYnRuLXhsIHsgd2lkdGg6IGF1dG87IHBhZGRpbmc6IDE4cHggNjBweDsgYm9yZGVyLXJhZGl1czogNTBweDsgdGV4dC1kZWNvcmF0aW9uOiBub25lOyBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IGZvbnQtc2l6ZTogMjBweDsgbGV0dGVyLXNwYWNpbmc6IDRweDsgZm9udC13ZWlnaHQ6IDQwMDsgfVxuLnRyLWJ0bi1pbmxpbmUgeyB3aWR0aDogYXV0bzsgcGFkZGluZzogMTRweCA0MHB4OyB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cblxuXG4vKiA9PSBBdXRoIHBhZ2UgbGF5b3V0IGFuZCBmb3JtIHN0eWxlcyA9PSAqL1xuXG5cbiAgLm1vZGFsLWNvbnRlbnR7YmFja2dyb3VuZDp2YXIoLS1iZzIpO2JvcmRlcjoxcHggc29saWQgdmFyKC0tYm9yZGVyLWgpO2JvcmRlci1yYWRpdXM6MTZweH1cbiAgLm1vZGFsLWhlYWRlcntib3JkZXItYm90dG9tOjFweCBzb2xpZCB2YXIoLS1ib3JkZXIpfVxuICAubW9kYWwtZm9vdGVye2JvcmRlci10b3A6MXB4IHNvbGlkIHZhcigtLWJvcmRlcil9XG4gIC50YWJsZXtjb2xvcjp2YXIoLS10ZXh0Mil9LnRhYmxlPjpub3QoY2FwdGlvbik+Kj4qe2JhY2tncm91bmQ6dHJhbnNwYXJlbnQ7Ym9yZGVyLWNvbG9yOnZhcigtLWJvcmRlcil9XG4gIC5kcm9wZG93bi1tZW51e2JhY2tncm91bmQ6dmFyKC0tYmczKTtib3JkZXI6MXB4IHNvbGlkIHZhcigtLWJvcmRlcil9XG4gIC5kcm9wZG93bi1pdGVte2NvbG9yOnZhcigtLXRleHQyKX0uZHJvcGRvd24taXRlbTpob3ZlcntiYWNrZ3JvdW5kOnJnYmEoMjU1LDI1NSwyNTUsMC4wNSk7Y29sb3I6dmFyKC0tdGV4dCl9XG4gIC5iZ2d7cG9zaXRpb246Zml4ZWQ7aW5zZXQ6MDt6LWluZGV4OjA7cG9pbnRlci1ldmVudHM6bm9uZTtiYWNrZ3JvdW5kOnJhZGlhbC1ncmFkaWVudChlbGxpcHNlIDgwJSA2NSUgYXQgNTAlIC01JSx2YXIoLS1nbG93MSkgMCUsdHJhbnNwYXJlbnQgNjAlKSxyYWRpYWwtZ3JhZGllbnQoZWxsaXBzZSA1MCUgNDUlIGF0IDglIDkwJSx2YXIoLS1nbG93MikgMCUsdHJhbnNwYXJlbnQgNTUlKX1cbiAgLmJnZ3JpZHtwb3NpdGlvbjpmaXhlZDtpbnNldDowO3otaW5kZXg6MDtwb2ludGVyLWV2ZW50czpub25lO2JhY2tncm91bmQtaW1hZ2U6bGluZWFyLWdyYWRpZW50KHZhcigtLWdyaWQtYykgMXB4LHRyYW5zcGFyZW50IDFweCksbGluZWFyLWdyYWRpZW50KDkwZGVnLHZhcigtLWdyaWQtYykgMXB4LHRyYW5zcGFyZW50IDFweCk7YmFja2dyb3VuZC1zaXplOjYwcHggNjBweDttYXNrLWltYWdlOnJhZGlhbC1ncmFkaWVudChlbGxpcHNlIDEwMCUgMTAwJSBhdCA1MCUgNTAlLGJsYWNrIDIwJSx0cmFuc3BhcmVudCA3OCUpOy13ZWJraXQtbWFzay1pbWFnZTpyYWRpYWwtZ3JhZGllbnQoZWxsaXBzZSAxMDAlIDEwMCUgYXQgNTAlIDUwJSxibGFjayAyMCUsdHJhbnNwYXJlbnQgNzglKX1cbiAgLmJnZ3JpZDo6YmVmb3Jle2NvbnRlbnQ6Jyc7cG9zaXRpb246Zml4ZWQ7aW5zZXQ6MDt6LWluZGV4OjA7cG9pbnRlci1ldmVudHM6bm9uZTtiYWNrZ3JvdW5kLWltYWdlOnJhZGlhbC1ncmFkaWVudChjaXJjbGUgM3B4IGF0IDAgMCx2YXIoLS1hY2NlbnQpIDAlLHRyYW5zcGFyZW50IDYwJSk7YmFja2dyb3VuZC1zaXplOjYwcHggNjBweDttYXNrLWltYWdlOnJhZGlhbC1ncmFkaWVudChlbGxpcHNlIDEwMCUgMTAwJSBhdCA1MCUgNTAlLGJsYWNrIDIwJSx0cmFuc3BhcmVudCA3OCUpOy13ZWJraXQtbWFzay1pbWFnZTpyYWRpYWwtZ3JhZGllbnQoZWxsaXBzZSAxMDAlIDEwMCUgYXQgNTAlIDUwJSxibGFjayAyMCUsdHJhbnNwYXJlbnQgNzglKTthbmltYXRpb246Z3JpZC10cmF2ZWwtaCAycyBsaW5lYXIgaW5maW5pdGU7b3BhY2l0eTowLjd9XG4gIC5iZ2dyaWQ6OmFmdGVye2NvbnRlbnQ6Jyc7cG9zaXRpb246Zml4ZWQ7aW5zZXQ6MDt6LWluZGV4OjA7cG9pbnRlci1ldmVudHM6bm9uZTtiYWNrZ3JvdW5kLWltYWdlOnJhZGlhbC1ncmFkaWVudChjaXJjbGUgM3B4IGF0IDAgMCx2YXIoLS1hY2NlbnQpIDAlLHRyYW5zcGFyZW50IDYwJSk7YmFja2dyb3VuZC1zaXplOjYwcHggNjBweDttYXNrLWltYWdlOnJhZGlhbC1ncmFkaWVudChlbGxpcHNlIDEwMCUgMTAwJSBhdCA1MCUgNTAlLGJsYWNrIDIwJSx0cmFuc3BhcmVudCA3OCUpOy13ZWJraXQtbWFzay1pbWFnZTpyYWRpYWwtZ3JhZGllbnQoZWxsaXBzZSAxMDAlIDEwMCUgYXQgNTAlIDUwJSxibGFjayAyMCUsdHJhbnNwYXJlbnQgNzglKTthbmltYXRpb246Z3JpZC10cmF2ZWwtdiAycyBsaW5lYXIgaW5maW5pdGU7b3BhY2l0eTowLjd9XG4gIC50ci1uYXZ7cG9zaXRpb246Zml4ZWQ7dG9wOjA7bGVmdDowO3JpZ2h0OjA7ei1pbmRleDoxMDMwO2hlaWdodDo2NHB4O2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW47cGFkZGluZzowIDJyZW07YmFja2dyb3VuZDp2YXIoLS1uYXYtYmcpO2JhY2tkcm9wLWZpbHRlcjpibHVyKDI0cHgpO2JvcmRlci1ib3R0b206MXB4IHNvbGlkIHZhcigtLWJvcmRlcil9XG4gIC50ci1uYXYtbG9nb3tkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDoxMHB4O3RleHQtZGVjb3JhdGlvbjpub25lfVxuICAudHItbmF2LWxvZ28taW1ne3dpZHRoOjMycHg7aGVpZ2h0OjMycHg7Ym9yZGVyLXJhZGl1czo1MCU7b3ZlcmZsb3c6aGlkZGVuO2JvcmRlcjoxLjVweCBzb2xpZCB2YXIoLS1hY2NlbnQpfVxuICAudHItbmF2LWxvZ28taW1nIGltZ3t3aWR0aDoxMDAlO2hlaWdodDoxMDAlO29iamVjdC1maXQ6Y292ZXJ9XG4gIC50ci1uYXYtd29yZG1hcmt7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1kaXNwbGF5KTtmb250LXNpemU6MjBweDtsZXR0ZXItc3BhY2luZzo0cHg7Y29sb3I6dmFyKC0tdGV4dCl9XG4gIC50ci1uYXYtcmlnaHR7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6OHB4O2ZsZXgtd3JhcDp3cmFwfVxuICAudHItbmF2LWxpbmt7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1tb25vKTtmb250LXNpemU6MTBweDtsZXR0ZXItc3BhY2luZzoxLjVweDt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7Y29sb3I6dmFyKC0tdGV4dDMpO3RleHQtZGVjb3JhdGlvbjpub25lO3BhZGRpbmc6NnB4IDEycHg7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1ib3JkZXIpO2JvcmRlci1yYWRpdXM6NnB4O3RyYW5zaXRpb246YWxsIC4yczt3aGl0ZS1zcGFjZTpub3dyYXB9XG4gIC50ci1uYXYtbGluazpob3Zlcntib3JkZXItY29sb3I6dmFyKC0tYm9yZGVyLWgpO2NvbG9yOnZhcigtLWFjY2VudCl9XG4gIC50ci1wYWdle2ZsZXg6MTtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7cGFkZGluZzo4OHB4IDI0cHggNDhweDtwb3NpdGlvbjpyZWxhdGl2ZTt6LWluZGV4OjF9XG4gIC50ci1zcGxpdHtkaXNwbGF5OmdyaWQ7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOjFmciAxZnI7bWF4LXdpZHRoOjk2MHB4O3dpZHRoOjEwMCU7Ym9yZGVyLXJhZGl1czoyMHB4O292ZXJmbG93OmhpZGRlbjtib3JkZXI6MXB4IHNvbGlkIHZhcigtLWJvcmRlcik7Ym94LXNoYWRvdzowIDQwcHggMTAwcHggcmdiYSgwLDAsMCwwLjUpfVxuICAudHItbGVmdHtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgxNDVkZWcsdmFyKC0tYmcyKSx2YXIoLS1iZzMpKTtwYWRkaW5nOjUycHggNDRweDtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVuO2JvcmRlci1yaWdodDoxcHggc29saWQgdmFyKC0tYm9yZGVyKX1cbiAgLnRyLXJpZ2h0e2JhY2tncm91bmQ6dmFyKC0tY2FyZC1iZyk7YmFja2Ryb3AtZmlsdGVyOmJsdXIoMjBweCk7cGFkZGluZzo1MnB4IDQ0cHh9XG4gIC5sZWZ0LXRhZ3tmb250LWZhbWlseTp2YXIoLS1mb250LW1vbm8pO2ZvbnQtc2l6ZToxMHB4O2xldHRlci1zcGFjaW5nOjNweDt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7Y29sb3I6dmFyKC0tYWNjZW50KTttYXJnaW4tYm90dG9tOjE4cHg7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6OHB4fVxuICAubGVmdC10YWc6OmJlZm9yZXtjb250ZW50OicnO3dpZHRoOjE2cHg7aGVpZ2h0OjFweDtiYWNrZ3JvdW5kOnZhcigtLWFjY2VudCl9XG4gIC5sZWZ0LWh7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1kaXNwbGF5KTtmb250LXNpemU6Y2xhbXAoMzZweCw0dncsNTZweCk7bGV0dGVyLXNwYWNpbmc6MnB4O2xpbmUtaGVpZ2h0Oi45NTtjb2xvcjp2YXIoLS10ZXh0KTttYXJnaW4tYm90dG9tOjE0cHh9XG4gIC5sZWZ0LWggZW17Zm9udC1zdHlsZTpub3JtYWw7YmFja2dyb3VuZDp2YXIoLS1ncmFkKTstd2Via2l0LWJhY2tncm91bmQtY2xpcDp0ZXh0Oy13ZWJraXQtdGV4dC1maWxsLWNvbG9yOnRyYW5zcGFyZW50O2JhY2tncm91bmQtY2xpcDp0ZXh0fVxuICAubGVmdC1zdWJ7Zm9udC1zaXplOjEzcHg7Y29sb3I6dmFyKC0tdGV4dDIpO2xpbmUtaGVpZ2h0OjEuNzttYXJnaW4tYm90dG9tOjI2cHh9XG4gIC5sZWZ0LXBlcmtze2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47Z2FwOjEwcHh9XG4gIC5wZXJre2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpmbGV4LXN0YXJ0O2dhcDoxMHB4fVxuICAucGVyay1pY29ue3dpZHRoOjMycHg7aGVpZ2h0OjMycHg7Ym9yZGVyLXJhZGl1czo4cHg7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLHZhcigtLWFjY2VudDIpLHZhcigtLWFjY2VudCkpO2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtmb250LXNpemU6MTRweDtmbGV4LXNocmluazowfVxuICAucGVyay10aXRsZXtmb250LWZhbWlseTp2YXIoLS1mb250LWRpc3BsYXkpO2ZvbnQtc2l6ZToxNXB4O2xldHRlci1zcGFjaW5nOjFweDtjb2xvcjp2YXIoLS10ZXh0KTttYXJnaW4tYm90dG9tOjJweH1cbiAgLnBlcmstZGVzY3tmb250LXNpemU6MTFweDtjb2xvcjp2YXIoLS10ZXh0Myk7bGluZS1oZWlnaHQ6MS41fVxuICAubGVmdC1ib3R0b217Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1tb25vKTtmb250LXNpemU6OXB4O2xldHRlci1zcGFjaW5nOjJweDtjb2xvcjp2YXIoLS10ZXh0Myk7dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO21hcmdpbi10b3A6MjRweH1cbiAgLmZvcm0tbG9nb3tkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVuO2dhcDoxMHB4O21hcmdpbi1ib3R0b206MjJweH1cbiAgLmZvcm0tbG9nbyBpbWd7d2lkdGg6MzRweDtoZWlnaHQ6MzRweDtib3JkZXItcmFkaXVzOjUwJTtib3JkZXI6MS41cHggc29saWQgdmFyKC0tYWNjZW50KX1cbiAgLmZvcm0tbG9nby10ZXh0e2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtZGlzcGxheSk7Zm9udC1zaXplOjE3cHg7bGV0dGVyLXNwYWNpbmc6M3B4O2NvbG9yOnZhcigtLXRleHQpfVxuICAuZm9ybS10b3AtYmFye2hlaWdodDozcHg7YmFja2dyb3VuZDp2YXIoLS1ncmFkKTtib3JkZXItcmFkaXVzOjJweDttYXJnaW4tYm90dG9tOjIycHh9XG4gIC5mb3JtLXRpdGxle2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtZGlzcGxheSk7Zm9udC1zaXplOjI4cHg7bGV0dGVyLXNwYWNpbmc6MnB4O2NvbG9yOnZhcigtLXRleHQpO21hcmdpbi1ib3R0b206NHB4O2xpbmUtaGVpZ2h0OjF9XG4gIC5mb3JtLXN1Yntmb250LXNpemU6MTJweDtjb2xvcjp2YXIoLS10ZXh0Myk7bGluZS1oZWlnaHQ6MS42O21hcmdpbi1ib3R0b206MThweH1cbiAgLmZvcm0tc3ViIHN0cm9uZ3tjb2xvcjp2YXIoLS1hY2NlbnQpO2ZvbnQtd2VpZ2h0OjYwMH1cbiAgLmZne2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47Z2FwOjRweDttYXJnaW4tYm90dG9tOjExcHh9XG4gIC5mZyBsYWJlbHtmb250LWZhbWlseTp2YXIoLS1mb250LW1vbm8pO2ZvbnQtc2l6ZTo5cHg7Zm9udC13ZWlnaHQ6NjAwO2xldHRlci1zcGFjaW5nOjJweDt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7Y29sb3I6dmFyKC0tdGV4dDMpfVxuICAuZml7YmFja2dyb3VuZDp2YXIoLS13MDUpIWltcG9ydGFudDtib3JkZXI6MXB4IHNvbGlkIHZhcigtLXcxMikhaW1wb3J0YW50O2JvcmRlci1yYWRpdXM6MTBweDtwYWRkaW5nOjExcHggMTNweDtmb250LWZhbWlseTp2YXIoLS1mb250LWJvZHkpIWltcG9ydGFudDtmb250LXNpemU6MTNweDtjb2xvcjp2YXIoLS10ZXh0KSFpbXBvcnRhbnQ7b3V0bGluZTpub25lO3RyYW5zaXRpb246YWxsIC4yNXM7d2lkdGg6MTAwJX1cbiAgLmZpOjpwbGFjZWhvbGRlcntjb2xvcjp2YXIoLS13MjApIWltcG9ydGFudH1cbiAgLmZpOmZvY3Vze2JvcmRlci1jb2xvcjp2YXIoLS1ib3JkZXItaCkhaW1wb3J0YW50O2JhY2tncm91bmQ6cmdiYSgxMzksOTIsMjQ2LDAuMDQpIWltcG9ydGFudDtib3gtc2hhZG93OjAgMCAwIDNweCByZ2JhKDEzOSw5MiwyNDYsMC4xKSFpbXBvcnRhbnR9XG4gIC5maTotd2Via2l0LWF1dG9maWxsLFxuICAuZmk6LXdlYmtpdC1hdXRvZmlsbDpob3ZlcixcbiAgLmZpOi13ZWJraXQtYXV0b2ZpbGw6Zm9jdXMsXG4gIC5maTphdXRvZmlsbCxcbiAgLmZpOmF1dG9maWxsOmhvdmVyLFxuICAuZmk6YXV0b2ZpbGw6Zm9jdXN7LXdlYmtpdC1ib3gtc2hhZG93OjAgMCAwIDEwMDBweCB2YXIoLS1iZzQpIGluc2V0IWltcG9ydGFudDtib3gtc2hhZG93OjAgMCAwIDEwMDBweCB2YXIoLS1iZzQpIGluc2V0IWltcG9ydGFudDstd2Via2l0LXRleHQtZmlsbC1jb2xvcjp2YXIoLS10ZXh0KSFpbXBvcnRhbnQ7Y2FyZXQtY29sb3I6dmFyKC0tdGV4dCkhaW1wb3J0YW50O2JvcmRlcjoxcHggc29saWQgdmFyKC0tdzEyKSFpbXBvcnRhbnQ7b3V0bGluZTpub25lIWltcG9ydGFudDtvdXRsaW5lLXdpZHRoOjAhaW1wb3J0YW50O291dGxpbmUtb2Zmc2V0OjAhaW1wb3J0YW50O3RyYW5zaXRpb246YmFja2dyb3VuZC1jb2xvciA1MDAwcyBlYXNlLWluLW91dCAwcyxib3JkZXItY29sb3IgMHMhaW1wb3J0YW50fVxuICAuZmktd3JhcHtwb3NpdGlvbjpyZWxhdGl2ZX1cbiAgLmZpLXRvZ2dsZXtwb3NpdGlvbjphYnNvbHV0ZTtyaWdodDoxMnB4O3RvcDo1MCU7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTUwJSk7YmFja2dyb3VuZDpub25lO2JvcmRlcjpub25lO2NvbG9yOnZhcigtLXRleHQzKTtjdXJzb3I6cG9pbnRlcjtmb250LXNpemU6MTRweDtwYWRkaW5nOjA7dHJhbnNpdGlvbjpjb2xvciAuMnN9XG4gIC5maS10b2dnbGU6aG92ZXJ7Y29sb3I6dmFyKC0tdGV4dCl9XG4gIC5mcm93e2Rpc3BsYXk6Z3JpZDtncmlkLXRlbXBsYXRlLWNvbHVtbnM6MWZyIDFmcjtnYXA6MTBweH1cbiAgLmZze2JhY2tncm91bmQ6dmFyKC0tdzA1KSFpbXBvcnRhbnQ7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS13MTIpIWltcG9ydGFudDtib3JkZXItcmFkaXVzOjEwcHg7cGFkZGluZzoxMXB4IDEzcHg7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1ib2R5KSFpbXBvcnRhbnQ7Zm9udC1zaXplOjEzcHg7Y29sb3I6dmFyKC0tdGV4dCkhaW1wb3J0YW50O291dGxpbmU6bm9uZTt0cmFuc2l0aW9uOmFsbCAuMjVzO3dpZHRoOjEwMCU7Y3Vyc29yOnBvaW50ZXI7YXBwZWFyYW5jZTpub25lO2JhY2tncm91bmQtaW1hZ2U6dXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPScxMicgaGVpZ2h0PSc4JyB2aWV3Qm94PScwIDAgMTIgOCclM0UlM0NwYXRoIGQ9J00xIDFsNSA1IDUtNScgc3Ryb2tlPSdyZ2JhKDI1NSwyNTUsMjU1LDAuMyknIHN0cm9rZS13aWR0aD0nMS41JyBmaWxsPSdub25lJyBzdHJva2UtbGluZWNhcD0ncm91bmQnLyUzRSUzQy9zdmclM0VcIikhaW1wb3J0YW50O2JhY2tncm91bmQtcmVwZWF0Om5vLXJlcGVhdCFpbXBvcnRhbnQ7YmFja2dyb3VuZC1wb3NpdGlvbjpyaWdodCAxMnB4IGNlbnRlciFpbXBvcnRhbnR9XG4gIC5mczpmb2N1c3tib3JkZXItY29sb3I6dmFyKC0tYm9yZGVyLWgpIWltcG9ydGFudDtib3gtc2hhZG93OjAgMCAwIDNweCByZ2JhKDEzOSw5MiwyNDYsMC4xKSFpbXBvcnRhbnR9XG4gIC5mcyBvcHRpb257YmFja2dyb3VuZDojMTExO2NvbG9yOiNmZmZ9XG4gIC5idG4tc3VibWl0e3dpZHRoOjEwMCU7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1kaXNwbGF5KTtmb250LXNpemU6MThweDtsZXR0ZXItc3BhY2luZzozcHg7Y29sb3I6IzAwMDtib3JkZXI6bm9uZTtjdXJzb3I6cG9pbnRlcjtwYWRkaW5nOjEzcHggMjBweDtib3JkZXItcmFkaXVzOjEycHg7YmFja2dyb3VuZDp2YXIoLS1ncmFkKTt0cmFuc2l0aW9uOmFsbCAuMjVzO2JveC1zaGFkb3c6MCA2cHggMjJweCByZ2JhKDEzOSw5MiwyNDYsMC4zNSk7bWFyZ2luLXRvcDo0cHg7ZGlzcGxheTpibG9ja31cbiAgLmJ0bi1zdWJtaXQ6aG92ZXJ7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTJweCk7Ym94LXNoYWRvdzowIDEycHggMzJweCByZ2JhKDEzOSw5MiwyNDYsMC41NSl9XG4gIC5idG4tc3VibWl0OmFjdGl2ZXt0cmFuc2Zvcm06dHJhbnNsYXRlWSgwKX1cbiAgLmJ0bi1vdXR7d2lkdGg6MTAwJTtmb250LWZhbWlseTp2YXIoLS1mb250LWRpc3BsYXkpO2ZvbnQtc2l6ZToxN3B4O2xldHRlci1zcGFjaW5nOjJweDtjb2xvcjp2YXIoLS1hY2NlbnQzKTtib3JkZXI6MXB4IHNvbGlkIHJnYmEoMTM5LDkyLDI0NiwwLjMpO2N1cnNvcjpwb2ludGVyO3BhZGRpbmc6MTFweCAyMHB4O2JvcmRlci1yYWRpdXM6MTJweDtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O3RyYW5zaXRpb246YWxsIC4yNXM7bWFyZ2luLXRvcDo4cHg7ZGlzcGxheTpibG9ja31cbiAgLmJ0bi1vdXQ6aG92ZXJ7YmFja2dyb3VuZDpyZ2JhKDEzOSw5MiwyNDYsMC4wNyk7Ym9yZGVyLWNvbG9yOnJnYmEoMTM5LDkyLDI0NiwwLjU1KTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtMXB4KX1cbiAgLmZvcm0tc2Vwe2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjEwcHg7bWFyZ2luOjEycHggMH1cbiAgLmZvcm0tc2VwOjpiZWZvcmUsLmZvcm0tc2VwOjphZnRlcntjb250ZW50OicnO2ZsZXg6MTtoZWlnaHQ6MXB4O2JhY2tncm91bmQ6dmFyKC0tdzA4KX1cbiAgLmZvcm0tc2VwIHNwYW57Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1tb25vKTtmb250LXNpemU6OXB4O2xldHRlci1zcGFjaW5nOjJweDtjb2xvcjp2YXIoLS13MjApO3RleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTt3aGl0ZS1zcGFjZTpub3dyYXB9XG4gIC5mb3JtLWxpbmt7dGV4dC1hbGlnbjpyaWdodDttYXJnaW4tYm90dG9tOjExcHh9XG4gIC5mb3JtLWxpbmsgYXtmb250LWZhbWlseTp2YXIoLS1mb250LW1vbm8pO2ZvbnQtc2l6ZToxMHB4O2xldHRlci1zcGFjaW5nOjFweDtjb2xvcjp2YXIoLS1hY2NlbnQpO3RleHQtZGVjb3JhdGlvbjpub25lfVxuICAuZm9ybS1saW5rIGE6aG92ZXJ7dGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZX1cbiAgLmZvcm0tbm90ZXt0ZXh0LWFsaWduOmNlbnRlcjtmb250LXNpemU6MTJweDtjb2xvcjp2YXIoLS10ZXh0Myk7bWFyZ2luLXRvcDoxMnB4fVxuICAuZm9ybS1ub3RlIGF7Y29sb3I6dmFyKC0tYWNjZW50KTt0ZXh0LWRlY29yYXRpb246bm9uZTtmb250LXdlaWdodDo2MDB9XG4gIC50ci1hbGVydHtib3JkZXItcmFkaXVzOjEwcHg7cGFkZGluZzoxMXB4IDE0cHg7Zm9udC1zaXplOjEzcHg7bWFyZ2luLWJvdHRvbToxNHB4O2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtYm9keSk7bWluLWhlaWdodDo0MnB4fVxuICAudHItYWxlcnQtZGFuZ2Vye2JhY2tncm91bmQ6cmdiYSgyNDgsMTEzLDExMywwLjEpO2JvcmRlcjoxcHggc29saWQgcmdiYSgyNDgsMTEzLDExMywwLjMpO2NvbG9yOiNmODcxNzF9XG4gIC50ci1hbGVydC1zdWNjZXNze2JhY2tncm91bmQ6cmdiYSg1MiwyMTEsMTUzLDAuMSk7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDUyLDIxMSwxNTMsMC4zKTtjb2xvcjojMzRkMzk5fVxuICAucmVnLXN0ZXBze2Rpc3BsYXk6ZmxleDtnYXA6NnB4O2FsaWduLWl0ZW1zOmNlbnRlcn1cbiAgLnJlZy1zdGVwe3dpZHRoOjhweDtoZWlnaHQ6OHB4O2JvcmRlci1yYWRpdXM6NTAlO2JhY2tncm91bmQ6dmFyKC0tdzEyKTt0cmFuc2l0aW9uOmFsbCAuM3N9XG4gIC5yZWctc3RlcC5hY3RpdmV7YmFja2dyb3VuZDp2YXIoLS1hY2NlbnQpO3dpZHRoOjIwcHg7Ym9yZGVyLXJhZGl1czo0cHh9XG4gIC5yZWctaW5saW5lLWVycm9ye2ZvbnQtc2l6ZToxMnB4O2NvbG9yOiNmODcxNzE7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1tb25vKTtsZXR0ZXItc3BhY2luZzowLjVweDttaW4taGVpZ2h0OjE4cHg7bWFyZ2luLWJvdHRvbToxMHB4fVxuICAucmVnLWF2YXRhci1yb3d7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6MTZweDttYXJnaW4tYm90dG9tOjIwcHg7cGFkZGluZzoxNHB4O2JhY2tncm91bmQ6dmFyKC0tdzA1KTtib3JkZXI6MXB4IHNvbGlkIHZhcigtLWJvcmRlcik7Ym9yZGVyLXJhZGl1czoxMnB4fVxuICAucmVnLWF2YXRhci1wcmV2aWV3e3dpZHRoOjY0cHg7aGVpZ2h0OjY0cHg7ZmxleC1zaHJpbms6MDtib3JkZXItcmFkaXVzOjE0cHg7b3ZlcmZsb3c6aGlkZGVufVxuICAucmVnLWF2YXRhci1wcmV2aWV3IHN2Z3tkaXNwbGF5OmJsb2NrfVxuICAucmVnLWF2YXRhci1sYWJlbHtmb250LWZhbWlseTp2YXIoLS1mb250LW1vbm8pO2ZvbnQtc2l6ZToxMHB4O2xldHRlci1zcGFjaW5nOjJweDt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7Y29sb3I6dmFyKC0tdGV4dDMpO21hcmdpbi1ib3R0b206NHB4fVxuICAucmVnLWF2YXRhci1zdWJ7Zm9udC1zaXplOjEycHg7Y29sb3I6dmFyKC0tdGV4dDIpfVxuICAucmVnLXRvc3ttYXJnaW46MTZweCAwIDIwcHh9XG4gIC5yZWctdG9zLWxhYmVse2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpmbGV4LXN0YXJ0O2dhcDoxMHB4O2N1cnNvcjpwb2ludGVyfVxuICAucmVnLXRvcy1jaGVja3tkaXNwbGF5Om5vbmV9XG4gIC5yZWctdG9zLWJveHt3aWR0aDoxOHB4O2hlaWdodDoxOHB4O2ZsZXgtc2hyaW5rOjA7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS13MTIpO2JvcmRlci1yYWRpdXM6NXB4O2JhY2tncm91bmQ6dmFyKC0tdzA1KTtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7dHJhbnNpdGlvbjphbGwgLjJzO21hcmdpbi10b3A6MXB4fVxuICAucmVnLXRvcy1jaGVjazpjaGVja2VkICsgLnJlZy10b3MtYm94e2JhY2tncm91bmQ6dmFyKC0tYWNjZW50KTtib3JkZXItY29sb3I6dmFyKC0tYWNjZW50KX1cbiAgLnJlZy10b3MtY2hlY2s6Y2hlY2tlZCArIC5yZWctdG9zLWJveDo6YWZ0ZXJ7Y29udGVudDon4pyTJztmb250LXNpemU6MTFweDtjb2xvcjojZmZmO2ZvbnQtd2VpZ2h0OjcwMH1cbiAgLnJlZy10b3MtdGV4dHtmb250LXNpemU6MTJweDtjb2xvcjp2YXIoLS10ZXh0Mik7bGluZS1oZWlnaHQ6MS42fVxuICAucmVnLXRvcy10ZXh0IGF7Y29sb3I6dmFyKC0tYWNjZW50KTt0ZXh0LWRlY29yYXRpb246bm9uZX1cbiAgLm90cC13cmFwe2Rpc3BsYXk6ZmxleDtnYXA6OHB4O21hcmdpbi1ib3R0b206MjBweH1cbiAgLm90cC1pbnB1dHt3aWR0aDoxMDAlO3RleHQtYWxpZ246Y2VudGVyO2ZvbnQtc2l6ZToxOHB4O2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtbW9ubyk7cGFkZGluZzoxMnB4IDRweCFpbXBvcnRhbnQ7dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlfVxuICAub3RwLWlucHV0OmRpc2FibGVke29wYWNpdHk6MC4zNTtjdXJzb3I6bm90LWFsbG93ZWR9XG4gIC5vdHAtcHJvZ3Jlc3MtdHJhY2t7d2lkdGg6MTAwJTtoZWlnaHQ6M3B4O2JhY2tncm91bmQ6dmFyKC0tdzA4KTtib3JkZXItcmFkaXVzOjJweDttYXJnaW4tYm90dG9tOjI0cHg7b3ZlcmZsb3c6aGlkZGVufVxuICAub3RwLXByb2dyZXNzLWZpbGx7aGVpZ2h0OjEwMCU7d2lkdGg6MTAwJTtiYWNrZ3JvdW5kOnZhcigtLWdyYWQpO2JvcmRlci1yYWRpdXM6MnB4O3RyYW5zaXRpb246d2lkdGggMTIwcyBsaW5lYXJ9XG4gIC5vdHAtcHJvZ3Jlc3MtZmlsbC5vdHAtZXhwaXJlZHtiYWNrZ3JvdW5kOnJnYmEoMjQ4LDExMywxMTMsMC42KX1cbiAgLm90cC1jb3VudGRvd257Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1tb25vKTtmb250LXNpemU6MTNweDtmb250LXdlaWdodDo1MDA7Y29sb3I6dmFyKC0tYWNjZW50KTtsZXR0ZXItc3BhY2luZzoycHg7cGFkZGluZzo0cHggMTBweDtib3JkZXI6MXB4IHNvbGlkIHZhcigtLWJvcmRlcik7Ym9yZGVyLXJhZGl1czo4cHg7bWluLXdpZHRoOjUycHg7dGV4dC1hbGlnbjpjZW50ZXJ9XG4gIC5vdHAtY291bnRkb3duLm90cC1leHBpcmVke2NvbG9yOiNmODcxNzE7Ym9yZGVyLWNvbG9yOnJnYmEoMjQ4LDExMywxMTMsMC40KX1cbiAgLmZvcm0tdGVybXN7Zm9udC1zaXplOjExcHg7Y29sb3I6dmFyKC0tdGV4dDMpO2xpbmUtaGVpZ2h0OjEuNjttYXJnaW4tYm90dG9tOjE0cHh9XG4gIC5mb3JtLXRlcm1zIGF7Y29sb3I6dmFyKC0tYWNjZW50KTt0ZXh0LWRlY29yYXRpb246bm9uZX1cbiAgLmJhY2stbGlua3tmb250LWZhbWlseTp2YXIoLS1mb250LW1vbm8pO2ZvbnQtc2l6ZToxMHB4O2xldHRlci1zcGFjaW5nOjEuNXB4O3RleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTtjb2xvcjp2YXIoLS10ZXh0Myk7dGV4dC1kZWNvcmF0aW9uOm5vbmU7ZGlzcGxheTpibG9jazt0ZXh0LWFsaWduOmNlbnRlcjttYXJnaW4tdG9wOjE0cHg7dHJhbnNpdGlvbjpjb2xvciAuMnN9XG4gIC5iYWNrLWxpbms6aG92ZXJ7Y29sb3I6dmFyKC0tYWNjZW50KX1cbiAgLnN0ZXBzLWJhcntkaXNwbGF5OmZsZXg7Z2FwOjhweDttYXJnaW4tYm90dG9tOjIwcHg7YWxpZ24taXRlbXM6Y2VudGVyfVxuICAuc3RlcC1pdGVte2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjZweDtmb250LWZhbWlseTp2YXIoLS1mb250LW1vbm8pO2ZvbnQtc2l6ZTo5cHg7bGV0dGVyLXNwYWNpbmc6MS41cHg7dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlfVxuICAuc3RlcC1udW17d2lkdGg6MjJweDtoZWlnaHQ6MjJweDtib3JkZXItcmFkaXVzOjUwJTtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1kaXNwbGF5KTtmb250LXNpemU6MTNweDtmbGV4LXNocmluazowfVxuICAuc3RlcC1udW0uYWN0aXZle2JhY2tncm91bmQ6dmFyKC0tZ3JhZCk7Y29sb3I6IzAwMH1cbiAgLnN0ZXAtbnVtLmRvbmV7YmFja2dyb3VuZDpyZ2JhKDM0LDE5Nyw5NCwwLjE1KTtib3JkZXI6MXB4IHNvbGlkIHJnYmEoMzQsMTk3LDk0LDAuMzUpO2NvbG9yOiMyMmM1NWV9XG4gIC5zdGVwLW51bS5pZGxle2JhY2tncm91bmQ6dmFyKC0tdzA1KTtib3JkZXI6MXB4IHNvbGlkIHZhcigtLXcxMik7Y29sb3I6dmFyKC0tdGV4dDMpfVxuICAuc3RlcC1sYWJlbC5hY3RpdmV7Y29sb3I6dmFyKC0tdGV4dCl9LnN0ZXAtbGFiZWwuaWRsZXtjb2xvcjp2YXIoLS10ZXh0Myl9XG4gIC5zdGVwLWFycm93e2NvbG9yOnZhcigtLXRleHQzKTtmb250LXNpemU6MTJweDttYXJnaW46MCAycHh9XG4gIC5vdHAtd3JhcHtkaXNwbGF5OmZsZXg7Z2FwOjhweDtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO21hcmdpbjoxNHB4IDB9XG4gIC5vdHAtaW5wdXR7d2lkdGg6NDhweDtoZWlnaHQ6NTRweDt0ZXh0LWFsaWduOmNlbnRlcjtmb250LWZhbWlseTp2YXIoLS1mb250LW1vbm8pO2ZvbnQtc2l6ZToyMnB4O2ZvbnQtd2VpZ2h0OjYwMDtjb2xvcjp2YXIoLS10ZXh0KTtiYWNrZ3JvdW5kOnZhcigtLXcwNSk7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS13MTIpO2JvcmRlci1yYWRpdXM6MTBweDtvdXRsaW5lOm5vbmU7dHJhbnNpdGlvbjphbGwgLjI1cztjYXJldC1jb2xvcjp2YXIoLS1hY2NlbnQpfVxuICAub3RwLWlucHV0OmZvY3Vze2JvcmRlci1jb2xvcjp2YXIoLS1hY2NlbnQpO2JveC1zaGFkb3c6MCAwIDAgM3B4IHJnYmEoMTM5LDkyLDI0NiwwLjEyKX1cbiAgLm1ldGhvZC1ib3h7cGFkZGluZzoxNHB4IDE2cHg7YmFja2dyb3VuZDp2YXIoLS13MDUpO2JvcmRlcjoxcHggc29saWQgdmFyKC0tdzA4KTtib3JkZXItcmFkaXVzOjEycHg7bWFyZ2luLWJvdHRvbToxMHB4O2N1cnNvcjpwb2ludGVyO3RyYW5zaXRpb246YWxsIC4ycztkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDoxMnB4fVxuICAubWV0aG9kLWJveC5zZWxlY3RlZCwubWV0aG9kLWJveDpob3ZlcntiYWNrZ3JvdW5kOnJnYmEoMTM5LDkyLDI0NiwwLjA4KTtib3JkZXItY29sb3I6dmFyKC0tYm9yZGVyLWgpfVxuICAubWV0aG9kLWljb257d2lkdGg6MzZweDtoZWlnaHQ6MzZweDtib3JkZXItcmFkaXVzOjEwcHg7YmFja2dyb3VuZDp2YXIoLS13MDgpO2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtmb250LXNpemU6MTZweDtmbGV4LXNocmluazowO3RyYW5zaXRpb246YmFja2dyb3VuZCAuMnN9XG4gIC5tZXRob2QtYm94LnNlbGVjdGVkIC5tZXRob2QtaWNvbntiYWNrZ3JvdW5kOnZhcigtLWdyYWQpfVxuICAubWV0aG9kLXRpdGxle2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtZGlzcGxheSk7Zm9udC1zaXplOjE2cHg7bGV0dGVyLXNwYWNpbmc6MXB4O2NvbG9yOnZhcigtLXRleHQpO21hcmdpbi1ib3R0b206MnB4fVxuICAubWV0aG9kLWRlc2N7Zm9udC1zaXplOjExcHg7Y29sb3I6dmFyKC0tdGV4dDMpO2xpbmUtaGVpZ2h0OjEuNH1cbiAgLyogU2tpcCB2ZXJpZmljYXRpb24g4oCUIG11dGVkIGRhc2hlZCBidXR0b24gKi9cbiAgLmJ0bi1za2lwe2Rpc3BsYXk6YmxvY2s7d2lkdGg6MTAwJTtmb250LWZhbWlseTp2YXIoLS1mb250LW1vbm8pO2ZvbnQtc2l6ZToxMHB4O2xldHRlci1zcGFjaW5nOjJweDt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7Y29sb3I6dmFyKC0tdGV4dDMpO2JvcmRlcjoxcHggZGFzaGVkIHZhcigtLXcxMik7Ym9yZGVyLXJhZGl1czoxMnB4O3BhZGRpbmc6MTFweCAxNnB4O3RleHQtYWxpZ246Y2VudGVyO3RleHQtZGVjb3JhdGlvbjpub25lO3RyYW5zaXRpb246YWxsIC4yNXM7Y3Vyc29yOnBvaW50ZXI7bWFyZ2luLXRvcDowfVxuICAuYnRuLXNraXA6aG92ZXJ7Ym9yZGVyLWNvbG9yOnZhcigtLXcyMCk7Y29sb3I6dmFyKC0tdGV4dDIpO2JhY2tncm91bmQ6dmFyKC0tdzA1KX1cblxuICAvKiBSZWdpc3RyYXRpb24gc3RlcCBwYW5lbHMg4oCUIG5vLWxheW91dC1zaGlmdCB0cmFuc2l0aW9ucyAqL1xuICAucmVnLXBhbmVsLXdyYXB7cG9zaXRpb246cmVsYXRpdmV9XG4gIC5yZWctc3RlcC1wYW5lbHtkaXNwbGF5Om5vbmV9XG4gIC5yZWctc3RlcC1wYW5lbC5hY3RpdmV7ZGlzcGxheTpibG9ja31cblxuICAvKiBQYXNzd29yZCBydWxlcyAqL1xuICAucHctcnVsZXN7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtnYXA6NHB4O21hcmdpbi10b3A6OHB4O3BhZGRpbmc6MTBweCAxMnB4O2JhY2tncm91bmQ6dmFyKC0tdzA1KTtib3JkZXItcmFkaXVzOjhweDtib3JkZXI6MXB4IHNvbGlkIHZhcigtLXcwOCl9XG4gIC5wdy1ydWxle2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjdweDtmb250LWZhbWlseTp2YXIoLS1mb250LW1vbm8pO2ZvbnQtc2l6ZToxMHB4O2xldHRlci1zcGFjaW5nOi41cHg7Y29sb3I6dmFyKC0tdGV4dDMpO3RyYW5zaXRpb246Y29sb3IgLjJzfVxuICAucHctcnVsZS52YWxpZHtjb2xvcjojMjJjNTVlfVxuICAucHctcnVsZS1kb3R7d2lkdGg6NnB4O2hlaWdodDo2cHg7Ym9yZGVyLXJhZGl1czo1MCU7YmFja2dyb3VuZDp2YXIoLS13MjApO2ZsZXgtc2hyaW5rOjA7dHJhbnNpdGlvbjpiYWNrZ3JvdW5kIC4yc31cbiAgLnB3LXJ1bGUudmFsaWQgLnB3LXJ1bGUtZG90e2JhY2tncm91bmQ6IzIyYzU1ZX1cblxuICAvKiBGaWVsZCBzdGF0dXMgaW5kaWNhdG9yIChlbWFpbCAvIHVzZXJuYW1lKSAqL1xuICAuZmktc3RhdHVze3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjEycHg7dG9wOjUwJTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtNTAlKTtmb250LXNpemU6MTNweDtmb250LWZhbWlseTp2YXIoLS1mb250LW1vbm8pO3BvaW50ZXItZXZlbnRzOm5vbmU7dHJhbnNpdGlvbjpjb2xvciAuMnN9XG4gIC5maS1va3tjb2xvcjojMjJjNTVlfVxuICAuZmktZXJye2NvbG9yOiNmODcxNzF9XG4gIC5maS1jaGVja2luZ3tjb2xvcjp2YXIoLS10ZXh0Myk7YW5pbWF0aW9uOnRyLXB1bHNlIDFzIGluZmluaXRlfVxuXG4gIC8qIEF2YXRhciByZWZyZXNoICovXG4gIC5yZWctYXZhdGFyLWluZm97ZmxleDoxfVxuICAucmVnLWF2YXRhci1yZWZyZXNoe3dpZHRoOjMycHg7aGVpZ2h0OjMycHg7Ym9yZGVyLXJhZGl1czo4cHg7YmFja2dyb3VuZDp2YXIoLS13MDUpO2JvcmRlcjoxcHggc29saWQgdmFyKC0tdzEyKTtjb2xvcjp2YXIoLS10ZXh0Myk7Y3Vyc29yOnBvaW50ZXI7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO3RyYW5zaXRpb246YWxsIC4ycztmbGV4LXNocmluazowO2ZvbnQtd2VpZ2h0OjQwMDtwYWRkaW5nOjB9XG4gIC5yZWctYXZhdGFyLXJlZnJlc2g6aG92ZXJ7YmFja2dyb3VuZDpyZ2JhKDEzOSw5MiwyNDYsMC4wOCk7Ym9yZGVyLWNvbG9yOnZhcigtLWJvcmRlci1oKTtjb2xvcjp2YXIoLS1hY2NlbnQpfVxuICAucmVnLWF2YXRhci1yZWZyZXNoLnNwaW5uaW5nIHN2Z3thbmltYXRpb246c3BpbjM2MCAuNHMgbGluZWFyfVxuICBAa2V5ZnJhbWVzIHNwaW4zNjB7ZnJvbXt0cmFuc2Zvcm06cm90YXRlKDBkZWcpfXRve3RyYW5zZm9ybTpyb3RhdGUoMzYwZGVnKX19XG5cbiAgQG1lZGlhKG1heC13aWR0aDo3NjhweCl7XG4gICAgLnRyLXNwbGl0e2dyaWQtdGVtcGxhdGUtY29sdW1uczoxZnI7Ym9yZGVyLXJhZGl1czoxNnB4O21heC13aWR0aDo0ODBweH1cbiAgICAudHItbGVmdHtkaXNwbGF5Om5vbmV9XG4gICAgLnRyLXJpZ2h0e3BhZGRpbmc6MzZweCAyOHB4fVxuICAgIC50ci1uYXZ7cGFkZGluZzowIDFyZW19XG4gICAgLnRyLXBhZ2V7cGFkZGluZzo4MHB4IDE2cHggMzJweH1cbiAgfVxuICBAbWVkaWEobWF4LXdpZHRoOjQ4MHB4KXtcbiAgICAudHItcmlnaHR7cGFkZGluZzoyOHB4IDIwcHh9XG4gICAgLmZyb3d7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOjFmcn1cbiAgICAub3RwLWlucHV0e3dpZHRoOjQwcHg7aGVpZ2h0OjQ4cHg7Zm9udC1zaXplOjE4cHh9XG4gICAgLm90cC13cmFwe2dhcDo1cHh9XG4gIH1cbiAgQG1lZGlhKG1heC13aWR0aDozNjBweCl7XG4gICAgLm90cC1pbnB1dHt3aWR0aDozNHB4O2hlaWdodDo0NHB4O2ZvbnQtc2l6ZToxNnB4fVxuICAgIC5vdHAtd3JhcHtnYXA6NHB4fVxuICB9XG5cbi8qIOKUgOKUgCBQQUdFIENPTVBPTkVOVFMg4oCUIG1hcmtldGluZy9sYW5kaW5nIHdpZGdldHMg4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSA4pSAICovXG5cbkBrZXlmcmFtZXMgZlV7ZnJvbXtvcGFjaXR5OjA7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoMjJweCl9dG97b3BhY2l0eToxO3RyYW5zZm9ybTp0cmFuc2xhdGVZKDApfX1cbkBrZXlmcmFtZXMgdGlja3tmcm9te3RyYW5zZm9ybTp0cmFuc2xhdGVYKDApfXRve3RyYW5zZm9ybTp0cmFuc2xhdGVYKC01MCUpfX1cbkBrZXlmcmFtZXMgc3Bpbntmcm9te3RyYW5zZm9ybTpyb3RhdGUoMCl9dG97dHJhbnNmb3JtOnJvdGF0ZSgzNjBkZWcpfX1cbkBrZXlmcmFtZXMgc3QtcHVsc2V7MCUsMTAwJXtvcGFjaXR5OjE7dHJhbnNmb3JtOnNjYWxlKDEpfTUwJXtvcGFjaXR5Oi41O3RyYW5zZm9ybTpzY2FsZSguOCl9fVxuXG4vKiBIRVJPICovXG4uaGVyb3ttaW4taGVpZ2h0OjEwMHZoO2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7dGV4dC1hbGlnbjpjZW50ZXI7cGFkZGluZzoxMTBweCAyNHB4IDgwcHg7cG9zaXRpb246cmVsYXRpdmU7b3ZlcmZsb3c6aGlkZGVuO2JhY2tncm91bmQ6dmFyKC0tYmcpfVxuLmhlcm8tYmd7cG9zaXRpb246YWJzb2x1dGU7aW5zZXQ6MDtwb2ludGVyLWV2ZW50czpub25lO2JhY2tncm91bmQ6cmFkaWFsLWdyYWRpZW50KGVsbGlwc2UgMTAwJSA2NSUgYXQgNTAlIC01JSxyZ2JhKHZhcigtLWFjY2VudC1yZ2IpLC4yOCkgMCUsdHJhbnNwYXJlbnQgNjAlKSxyYWRpYWwtZ3JhZGllbnQoZWxsaXBzZSA1NSUgNDUlIGF0IDglIDkwJSxyZ2JhKHZhcigtLWFjY2VudC1yZ2IpLC4yKSAwJSx0cmFuc3BhcmVudCA1NSUpLHJhZGlhbC1ncmFkaWVudChlbGxpcHNlIDQ1JSA0MCUgYXQgOTIlIDg1JSxyZ2JhKHZhcigtLWFjY2VudC1yZ2IpLC4wOCkgMCUsdHJhbnNwYXJlbnQgNTUlKX1cbi5oZXJvLWdyaWR7cG9zaXRpb246YWJzb2x1dGU7aW5zZXQ6MDtwb2ludGVyLWV2ZW50czpub25lO2JhY2tncm91bmQtaW1hZ2U6bGluZWFyLWdyYWRpZW50KHJnYmEodmFyKC0tYWNjZW50LXJnYiksLjA2KSAxcHgsdHJhbnNwYXJlbnQgMXB4KSxsaW5lYXItZ3JhZGllbnQoOTBkZWcscmdiYSh2YXIoLS1hY2NlbnQtcmdiKSwuMDYpIDFweCx0cmFuc3BhcmVudCAxcHgpO2JhY2tncm91bmQtc2l6ZTo1OHB4IDU4cHg7bWFzay1pbWFnZTpyYWRpYWwtZ3JhZGllbnQoZWxsaXBzZSA4NSUgODUlIGF0IDUwJSA1MCUsYmxhY2sgMjUlLHRyYW5zcGFyZW50IDEwMCUpOy13ZWJraXQtbWFzay1pbWFnZTpyYWRpYWwtZ3JhZGllbnQoZWxsaXBzZSA4NSUgODUlIGF0IDUwJSA1MCUsYmxhY2sgMjUlLHRyYW5zcGFyZW50IDEwMCUpfVxuLmhlcm8tcGlsbHtkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6OHB4O2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtbW9ubyk7Zm9udC1zaXplOjEwcHg7Zm9udC13ZWlnaHQ6NjAwO2xldHRlci1zcGFjaW5nOjNweDt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7cGFkZGluZzo3cHggMThweDtib3JkZXItcmFkaXVzOjEwMHB4O2JhY2tncm91bmQ6cmdiYSh2YXIoLS1hY2NlbnQtcmdiKSwuMSk7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKHZhcigtLWFjY2VudC1yZ2IpLC4zKTtjb2xvcjp2YXIoLS1hY2NlbnQpO21hcmdpbi1ib3R0b206MjZweDthbmltYXRpb246ZlUgLjhzIGVhc2UgYm90aDtwb3NpdGlvbjpyZWxhdGl2ZTt6LWluZGV4OjF9XG4uaGVyby1kb3R7d2lkdGg6NnB4O2hlaWdodDo2cHg7Ym9yZGVyLXJhZGl1czo1MCU7YmFja2dyb3VuZDp2YXIoLS1hY2NlbnQpO2FuaW1hdGlvbjpzdC1wdWxzZSAxLjVzIGVhc2UtaW4tb3V0IGluZmluaXRlO2JveC1zaGFkb3c6MCAwIDhweCB2YXIoLS1hY2NlbnQpfVxuLmhlcm8taDF7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1kaXNwbGF5KTtmb250LXNpemU6Y2xhbXAoODJweCwxM3Z3LDE1MnB4KTtsaW5lLWhlaWdodDouODg7bGV0dGVyLXNwYWNpbmc6M3B4O21hcmdpbi1ib3R0b206NHB4O3Bvc2l0aW9uOnJlbGF0aXZlO3otaW5kZXg6MTthbmltYXRpb246ZlUgLjhzIC4xcyBlYXNlIGJvdGh9XG4uaDEtbDF7ZGlzcGxheTpibG9jaztjb2xvcjojZmZmO3RleHQtc2hhZG93OjAgMCA4MHB4IHJnYmEodmFyKC0tYWNjZW50LXJnYiksLjE1KX1cbi5oMS1sMntkaXNwbGF5OmJsb2NrO2JhY2tncm91bmQ6dmFyKC0tZ3JhZCk7LXdlYmtpdC1iYWNrZ3JvdW5kLWNsaXA6dGV4dDstd2Via2l0LXRleHQtZmlsbC1jb2xvcjp0cmFuc3BhcmVudDtiYWNrZ3JvdW5kLWNsaXA6dGV4dDtmaWx0ZXI6ZHJvcC1zaGFkb3coMCAwIDI4cHggcmdiYSh2YXIoLS1hY2NlbnQtcmdiKSwuMzUpKX1cbi5oMS1sM3tkaXNwbGF5OmJsb2NrO2NvbG9yOnJnYmEoMjU1LDI1NSwyNTUsLjEyKTtmb250LXNpemU6Y2xhbXAoNTZweCw5dncsMTAwcHgpO2xldHRlci1zcGFjaW5nOjEwcHh9XG4uaGVyby1zdWJ7Zm9udC1zaXplOjE2cHg7Zm9udC13ZWlnaHQ6MzAwO2NvbG9yOnJnYmEoMjU1LDI1NSwyNTUsLjYpO2xpbmUtaGVpZ2h0OjEuNzU7bWF4LXdpZHRoOjU2MHB4O21hcmdpbjoyMnB4IGF1dG8gMTJweDtwb3NpdGlvbjpyZWxhdGl2ZTt6LWluZGV4OjE7YW5pbWF0aW9uOmZVIC44cyAuMnMgZWFzZSBib3RofVxuLmhlcm8tc3ViIHN0cm9uZ3tjb2xvcjojZmZmO2ZvbnQtd2VpZ2h0OjYwMH1cbi5oZXJvLXN1YjJ7Zm9udC1zaXplOjE0cHg7Zm9udC13ZWlnaHQ6MzAwO2NvbG9yOnJnYmEoMjU1LDI1NSwyNTUsLjQpO2xpbmUtaGVpZ2h0OjEuNzttYXgtd2lkdGg6NDgwcHg7bWFyZ2luOjAgYXV0byAzNnB4O3Bvc2l0aW9uOnJlbGF0aXZlO3otaW5kZXg6MTthbmltYXRpb246ZlUgLjhzIC4yNXMgZWFzZSBib3RofVxuLmhlcm8tY3Rhc3tkaXNwbGF5OmZsZXg7Z2FwOjE0cHg7anVzdGlmeS1jb250ZW50OmNlbnRlcjtmbGV4LXdyYXA6d3JhcDttYXJnaW4tYm90dG9tOjYwcHg7cG9zaXRpb246cmVsYXRpdmU7ei1pbmRleDoxO2FuaW1hdGlvbjpmVSAuOHMgLjNzIGVhc2UgYm90aH1cbi5idG4tbWFpbntmb250LWZhbWlseTp2YXIoLS1mb250LWRpc3BsYXkpO2ZvbnQtc2l6ZToxOXB4O2xldHRlci1zcGFjaW5nOjNweDtjb2xvcjojMDAwO3RleHQtZGVjb3JhdGlvbjpub25lO3BhZGRpbmc6MTVweCA0MnB4O2JhY2tncm91bmQ6dmFyKC0tZ3JhZCk7Ym9yZGVyLXJhZGl1czo4cHg7dHJhbnNpdGlvbjphbGwgLjI1cztkaXNwbGF5OmlubGluZS1ibG9jaztib3gtc2hhZG93OjAgOHB4IDMwcHggcmdiYSh2YXIoLS1hY2NlbnQtcmdiKSwuMzUpO2JvcmRlcjpub25lO2N1cnNvcjpwb2ludGVyO2ZvbnQtd2VpZ2h0OjQwMH1cbi5idG4tbWFpbjpob3Zlcnt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtM3B4KTtib3gtc2hhZG93OjAgMTZweCA0OHB4IHJnYmEodmFyKC0tYWNjZW50LXJnYiksLjUpO2NvbG9yOiMwMDB9XG4uYnRuLW91dHtmb250LWZhbWlseTp2YXIoLS1mb250LWRpc3BsYXkpO2ZvbnQtc2l6ZToxOXB4O2xldHRlci1zcGFjaW5nOjNweDtjb2xvcjojZmZmO3RleHQtZGVjb3JhdGlvbjpub25lO3BhZGRpbmc6MTVweCA0MnB4O2JvcmRlcjoxLjVweCBzb2xpZCByZ2JhKDI1NSwyNTUsMjU1LC4yKTtib3JkZXItcmFkaXVzOjhweDtiYWNrZ3JvdW5kOnJnYmEoMjU1LDI1NSwyNTUsLjA0KTt0cmFuc2l0aW9uOmFsbCAuMjVzO2Rpc3BsYXk6aW5saW5lLWJsb2NrO2ZvbnQtd2VpZ2h0OjQwMH1cbi5idG4tb3V0OmhvdmVye2JvcmRlci1jb2xvcjp2YXIoLS1hY2NlbnQpO2JhY2tncm91bmQ6cmdiYSh2YXIoLS1hY2NlbnQtcmdiKSwuMDgpO3RyYW5zZm9ybTp0cmFuc2xhdGVZKC0zcHgpO2NvbG9yOiNmZmZ9XG4uaGVyby1zdGF0c3tkaXNwbGF5OmZsZXg7Z2FwOjA7anVzdGlmeS1jb250ZW50OmNlbnRlcjtib3JkZXI6MXB4IHNvbGlkIHJnYmEoMjU1LDI1NSwyNTUsLjA4KTtib3JkZXItcmFkaXVzOjE0cHg7b3ZlcmZsb3c6aGlkZGVuO21heC13aWR0aDo3MjBweDt3aWR0aDoxMDAlO3Bvc2l0aW9uOnJlbGF0aXZlO3otaW5kZXg6MTtiYWNrZ3JvdW5kOnJnYmEoMjU1LDI1NSwyNTUsLjAyKTtiYWNrZHJvcC1maWx0ZXI6Ymx1cigxMHB4KTthbmltYXRpb246ZlUgLjhzIC40cyBlYXNlIGJvdGh9XG4uaHN0YXR7ZmxleDoxO3BhZGRpbmc6MjJweCAxNnB4O3RleHQtYWxpZ246Y2VudGVyO2JvcmRlci1yaWdodDoxcHggc29saWQgcmdiYSgyNTUsMjU1LDI1NSwuMDgpfVxuLmhzdGF0Omxhc3QtY2hpbGR7Ym9yZGVyLXJpZ2h0Om5vbmV9XG4uaHN0YXQtbntmb250LWZhbWlseTp2YXIoLS1mb250LWRpc3BsYXkpO2ZvbnQtc2l6ZTozNnB4O2xldHRlci1zcGFjaW5nOjFweDtsaW5lLWhlaWdodDoxO2JhY2tncm91bmQ6dmFyKC0tZ3JhZCk7LXdlYmtpdC1iYWNrZ3JvdW5kLWNsaXA6dGV4dDstd2Via2l0LXRleHQtZmlsbC1jb2xvcjp0cmFuc3BhcmVudDtiYWNrZ3JvdW5kLWNsaXA6dGV4dH1cbi5oc3RhdC1se2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtbW9ubyk7Zm9udC1zaXplOjlweDtsZXR0ZXItc3BhY2luZzoycHg7Y29sb3I6cmdiYSgyNTUsMjU1LDI1NSwuNCk7dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO21hcmdpbi10b3A6NHB4fVxuXG4vKiBUSUNLRVIgKi9cbi50aWNrZXJ7b3ZlcmZsb3c6aGlkZGVuO3BhZGRpbmc6MTNweCAwO3Bvc2l0aW9uOnJlbGF0aXZlO2JvcmRlci10b3A6MXB4IHNvbGlkIHJnYmEoMjU1LDI1NSwyNTUsLjA4KTtib3JkZXItYm90dG9tOjFweCBzb2xpZCByZ2JhKDI1NSwyNTUsMjU1LC4wOCl9XG4udGlja2VyOjpiZWZvcmUsLnRpY2tlcjo6YWZ0ZXJ7Y29udGVudDonJztwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtib3R0b206MDt3aWR0aDoxMDBweDt6LWluZGV4OjJ9XG4udGlja2VyOjpiZWZvcmV7bGVmdDowO2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDkwZGVnLHZhcigtLWJnKSx0cmFuc3BhcmVudCl9XG4udGlja2VyOjphZnRlcntyaWdodDowO2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KC05MGRlZyx2YXIoLS1iZyksdHJhbnNwYXJlbnQpfVxuLnRpY2tlci1pbm5lcntkaXNwbGF5OmZsZXg7YW5pbWF0aW9uOnRpY2sgMjhzIGxpbmVhciBpbmZpbml0ZTt3aGl0ZS1zcGFjZTpub3dyYXB9XG4udGl7ZGlzcGxheTppbmxpbmUtZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjEycHg7cGFkZGluZzowIDMwcHg7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1tb25vKTtmb250LXNpemU6MTFweDtmb250LXdlaWdodDo1MDA7bGV0dGVyLXNwYWNpbmc6MnB4O3RleHQtdHJhbnNmb3JtOnVwcGVyY2FzZX1cbi50aS5jMXtjb2xvcjp2YXIoLS1hY2NlbnQpfS50aS5jMntjb2xvcjp2YXIoLS1hY2NlbnQzKX0udGkuYzN7Y29sb3I6dmFyKC0tYWNjZW50Myl9LnRpLmM0e2NvbG9yOnZhcigtLWFjY2VudDMpfVxuLnRpLWRvdHt3aWR0aDo0cHg7aGVpZ2h0OjRweDtib3JkZXItcmFkaXVzOjUwJTtiYWNrZ3JvdW5kOmN1cnJlbnRDb2xvcjtvcGFjaXR5Oi41O2ZsZXgtc2hyaW5rOjB9XG5cbi8qIEdSQURJRU5UIFJVTEUgKi9cbi5nbGluZXtoZWlnaHQ6MXB4O2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDkwZGVnLHRyYW5zcGFyZW50LHZhcigtLWFjY2VudCksdmFyKC0tYWNjZW50MyksdmFyKC0tYWNjZW50MyksdHJhbnNwYXJlbnQpfVxuXG4vKiBTRUNUSU9OIFBSSU1JVElWRVMgKi9cbi5zZWN7cGFkZGluZzoxMTBweCAyNHB4O3Bvc2l0aW9uOnJlbGF0aXZlfVxuLmNvbnttYXgtd2lkdGg6MTA4MHB4O21hcmdpbjowIGF1dG99XG4uc3RhZ3tmb250LWZhbWlseTp2YXIoLS1mb250LW1vbm8pO2ZvbnQtc2l6ZToxMHB4O2ZvbnQtd2VpZ2h0OjYwMDtsZXR0ZXItc3BhY2luZzo0cHg7dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO2NvbG9yOnZhcigtLWFjY2VudCk7bWFyZ2luLWJvdHRvbToxNHB4O2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjEwcHh9XG4uc3RhZzo6YmVmb3Jle2NvbnRlbnQ6Jyc7d2lkdGg6MThweDtoZWlnaHQ6MXB4O2JhY2tncm91bmQ6dmFyKC0tYWNjZW50KTtmbGV4LXNocmluazowfVxuLnNoMntmb250LWZhbWlseTp2YXIoLS1mb250LWRpc3BsYXkpO2ZvbnQtc2l6ZTpjbGFtcCg1MHB4LDd2dyw4NHB4KTtsZXR0ZXItc3BhY2luZzoycHg7bGluZS1oZWlnaHQ6LjkyO2NvbG9yOiNmZmY7bWFyZ2luLWJvdHRvbToxNHB4fVxuLnNoMiBlbXtmb250LXN0eWxlOm5vcm1hbDtiYWNrZ3JvdW5kOnZhcigtLWdyYWQpOy13ZWJraXQtYmFja2dyb3VuZC1jbGlwOnRleHQ7LXdlYmtpdC10ZXh0LWZpbGwtY29sb3I6dHJhbnNwYXJlbnQ7YmFja2dyb3VuZC1jbGlwOnRleHR9XG4uc3N1Yntmb250LXNpemU6MTRweDtjb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LC42KTtsaW5lLWhlaWdodDoxLjc1O21heC13aWR0aDo1MjBweH1cbi5zc3ViMntmb250LXNpemU6MTNweDtjb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LC40KTtsaW5lLWhlaWdodDoxLjc7bWF4LXdpZHRoOjUyMHB4O21hcmdpbi10b3A6MTBweH1cblxuLyogSU5UUk8gKi9cbi5pbnRyby1iZ3tiYWNrZ3JvdW5kOnZhcigtLWJnMil9XG4uaW50cm8tZ3JpZHtkaXNwbGF5OmdyaWQ7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOjFmciAxZnI7Z2FwOjgwcHg7YWxpZ24taXRlbXM6Y2VudGVyfVxuLmludHJvLXJpZ2h0e2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47Z2FwOjI4cHh9XG4uaW50cm8tYmxvY2t7cGFkZGluZzoyNHB4IDI2cHg7YmFja2dyb3VuZDpyZ2JhKDI1NSwyNTUsMjU1LC4wNSk7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDI1NSwyNTUsMjU1LC4wOCk7Ym9yZGVyLXJhZGl1czoxNHB4O2JvcmRlci1sZWZ0OjNweCBzb2xpZCB2YXIoLS1hY2NlbnQpO3RyYW5zaXRpb246YWxsIC4yNXN9XG4uaW50cm8tYmxvY2s6aG92ZXJ7YmFja2dyb3VuZDpyZ2JhKHZhcigtLWFjY2VudC1yZ2IpLC4wNik7Ym9yZGVyLWxlZnQtY29sb3I6dmFyKC0tYWNjZW50Myl9XG4uaW50cm8tYmxvY2stbGFiZWx7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1tb25vKTtmb250LXNpemU6OXB4O2xldHRlci1zcGFjaW5nOjJweDt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7Y29sb3I6dmFyKC0tYWNjZW50KTttYXJnaW4tYm90dG9tOjhweH1cbi5pbnRyby1ibG9jay10aXRsZXtmb250LWZhbWlseTp2YXIoLS1mb250LWRpc3BsYXkpO2ZvbnQtc2l6ZToyMnB4O2xldHRlci1zcGFjaW5nOjFweDtjb2xvcjojZmZmO21hcmdpbi1ib3R0b206NnB4fVxuLmludHJvLWJsb2NrLXRleHR7Zm9udC1zaXplOjEzcHg7Y29sb3I6cmdiYSgyNTUsMjU1LDI1NSwuNik7bGluZS1oZWlnaHQ6MS42NX1cbi5pbnRyby1xdW90ZXttYXJnaW4tdG9wOjI4cHg7cGFkZGluZzoyMnB4IDI0cHg7YmFja2dyb3VuZDpyZ2JhKHZhcigtLWFjY2VudC1yZ2IpLC4wNik7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKHZhcigtLWFjY2VudC1yZ2IpLC4yKTtib3JkZXItcmFkaXVzOjE0cHg7cG9zaXRpb246cmVsYXRpdmV9XG4uaW50cm8tcXVvdGU6OmJlZm9yZXtjb250ZW50OidcIic7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1kaXNwbGF5KTtmb250LXNpemU6ODBweDtjb2xvcjpyZ2JhKHZhcigtLWFjY2VudC1yZ2IpLC4xNSk7cG9zaXRpb246YWJzb2x1dGU7dG9wOi0xMHB4O2xlZnQ6MTZweDtsaW5lLWhlaWdodDoxfVxuLmludHJvLXF1b3RlIHB7Zm9udC1zaXplOjE0cHg7Zm9udC1zdHlsZTppdGFsaWM7Y29sb3I6cmdiYSgyNTUsMjU1LDI1NSwuNik7bGluZS1oZWlnaHQ6MS43O3Bvc2l0aW9uOnJlbGF0aXZlO3otaW5kZXg6MX1cbi5pbnRyby1xdW90ZSBzcGFue2Rpc3BsYXk6YmxvY2s7bWFyZ2luLXRvcDoxMHB4O2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtbW9ubyk7Zm9udC1zaXplOjEwcHg7bGV0dGVyLXNwYWNpbmc6MnB4O2NvbG9yOnZhcigtLWFjY2VudCk7dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlfVxuXG4vKiBGRUFUVVJFUyAqL1xuLmZlYXQtYmd7YmFja2dyb3VuZDp2YXIoLS1iZyl9XG4uZmVhdC1ncmlke2Rpc3BsYXk6Z3JpZDtncmlkLXRlbXBsYXRlLWNvbHVtbnM6cmVwZWF0KDMsMWZyKTtnYXA6MXB4O21hcmdpbi10b3A6NjBweDtiYWNrZ3JvdW5kOnJnYmEoMjU1LDI1NSwyNTUsLjA4KTtib3JkZXItcmFkaXVzOjE4cHg7b3ZlcmZsb3c6aGlkZGVuO2JvcmRlcjoxcHggc29saWQgcmdiYSgyNTUsMjU1LDI1NSwuMDgpfVxuLmZje2JhY2tncm91bmQ6dmFyKC0tYmczKTtwYWRkaW5nOjM2cHggMzBweDtwb3NpdGlvbjpyZWxhdGl2ZTtvdmVyZmxvdzpoaWRkZW47dHJhbnNpdGlvbjpiYWNrZ3JvdW5kIC4zcztjdXJzb3I6ZGVmYXVsdH1cbi5mYzo6YmVmb3Jle2NvbnRlbnQ6Jyc7cG9zaXRpb246YWJzb2x1dGU7aW5zZXQ6MDtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgxMzVkZWcscmdiYSh2YXIoLS1hY2NlbnQtcmdiKSwuMDcpIDAlLHRyYW5zcGFyZW50IDYwJSk7b3BhY2l0eTowO3RyYW5zaXRpb246b3BhY2l0eSAuM3N9XG4uZmM6aG92ZXI6OmJlZm9yZXtvcGFjaXR5OjF9XG4uZmMtYmFye3Bvc2l0aW9uOmFic29sdXRlO2JvdHRvbTowO2xlZnQ6MDtyaWdodDowO2hlaWdodDoycHg7YmFja2dyb3VuZDp2YXIoLS1ncmFkKTt0cmFuc2Zvcm06c2NhbGVYKDApO3RyYW5zZm9ybS1vcmlnaW46bGVmdDt0cmFuc2l0aW9uOnRyYW5zZm9ybSAuMzVzIGVhc2V9XG4uZmM6aG92ZXIgLmZjLWJhcnt0cmFuc2Zvcm06c2NhbGVYKDEpfVxuLmZjLWljb257d2lkdGg6NDZweDtoZWlnaHQ6NDZweDtib3JkZXItcmFkaXVzOjEycHg7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2ZvbnQtc2l6ZToyMHB4O21hcmdpbi1ib3R0b206MThweDtiYWNrZ3JvdW5kOnJnYmEoMjU1LDI1NSwyNTUsLjA1KTtib3JkZXI6MXB4IHNvbGlkIHJnYmEoMjU1LDI1NSwyNTUsLjA4KTt0cmFuc2l0aW9uOmFsbCAuM3N9XG4uZmM6aG92ZXIgLmZjLWljb257YmFja2dyb3VuZDpyZ2JhKHZhcigtLWFjY2VudC1yZ2IpLC4xNSk7Ym9yZGVyLWNvbG9yOnJnYmEodmFyKC0tYWNjZW50LXJnYiksLjMpfVxuLmZjLW51bXtmb250LWZhbWlseTp2YXIoLS1mb250LW1vbm8pO2ZvbnQtc2l6ZTo5cHg7bGV0dGVyLXNwYWNpbmc6MnB4O2NvbG9yOnJnYmEoMjU1LDI1NSwyNTUsLjQpO3RleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTttYXJnaW4tYm90dG9tOjhweH1cbi5mYy10aXRsZXtmb250LWZhbWlseTp2YXIoLS1mb250LWRpc3BsYXkpO2ZvbnQtc2l6ZToyNnB4O2xldHRlci1zcGFjaW5nOjFweDtjb2xvcjojZmZmO21hcmdpbi1ib3R0b206OHB4fVxuLmZjLWRlc2N7Zm9udC1zaXplOjEzcHg7Y29sb3I6cmdiYSgyNTUsMjU1LDI1NSwuNCk7bGluZS1oZWlnaHQ6MS42O21hcmdpbi1ib3R0b206OHB4fVxuLmZjLWRldGFpbHtmb250LXNpemU6MTJweDtjb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LC4yKTtsaW5lLWhlaWdodDoxLjU1fVxuXG4vKiBIT1cgSVQgV09SS1MgKi9cbi5ob3ctYmd7YmFja2dyb3VuZDp2YXIoLS1iZzIpfVxuLmhvdy1pbnRyb3tkaXNwbGF5OmdyaWQ7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOjFmciAxZnI7Z2FwOjgwcHg7YWxpZ24taXRlbXM6c3RhcnQ7bWFyZ2luLWJvdHRvbTo2NHB4fVxuLnN0ZXBze2Rpc3BsYXk6Z3JpZDtncmlkLXRlbXBsYXRlLWNvbHVtbnM6cmVwZWF0KDQsMWZyKTtnYXA6MDtwb3NpdGlvbjpyZWxhdGl2ZX1cbi5zdGVwczo6YmVmb3Jle2NvbnRlbnQ6Jyc7cG9zaXRpb246YWJzb2x1dGU7dG9wOjI3cHg7bGVmdDpjYWxjKDEyLjUlICsgMTRweCk7cmlnaHQ6Y2FsYygxMi41JSArIDE0cHgpO2hlaWdodDoxcHg7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoOTBkZWcsdmFyKC0tYWNjZW50KSx2YXIoLS1hY2NlbnQyKSx2YXIoLS1hY2NlbnQzKSx2YXIoLS1hY2NlbnQzKSk7ei1pbmRleDowfVxuLnN0ZXB7dGV4dC1hbGlnbjpjZW50ZXI7cGFkZGluZzowIDE0cHg7cG9zaXRpb246cmVsYXRpdmU7ei1pbmRleDoxfVxuLnN0ZXAtbnt3aWR0aDo1NHB4O2hlaWdodDo1NHB4O2JvcmRlci1yYWRpdXM6NTAlO2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtmb250LWZhbWlseTp2YXIoLS1mb250LWRpc3BsYXkpO2ZvbnQtc2l6ZToyMnB4O2xldHRlci1zcGFjaW5nOjFweDttYXJnaW46MCBhdXRvIDE4cHg7cG9zaXRpb246cmVsYXRpdmU7dHJhbnNpdGlvbjphbGwgLjNzfVxuLnN0ZXA6bnRoLWNoaWxkKDEpIC5zdGVwLW57YmFja2dyb3VuZDpyZ2JhKHZhcigtLWFjY2VudC1yZ2IpLC4xNSk7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1hY2NlbnQpO2NvbG9yOnZhcigtLWFjY2VudCk7Ym94LXNoYWRvdzowIDAgMThweCByZ2JhKHZhcigtLWFjY2VudC1yZ2IpLC4yNSl9XG4uc3RlcDpudGgtY2hpbGQoMikgLnN0ZXAtbntiYWNrZ3JvdW5kOnJnYmEodmFyKC0tYWNjZW50LXJnYiksLjE1KTtib3JkZXI6MXB4IHNvbGlkIHZhcigtLWFjY2VudDIpO2NvbG9yOnZhcigtLWFjY2VudDIpO2JveC1zaGFkb3c6MCAwIDE4cHggcmdiYSh2YXIoLS1hY2NlbnQtcmdiKSwuMil9XG4uc3RlcDpudGgtY2hpbGQoMykgLnN0ZXAtbntiYWNrZ3JvdW5kOnJnYmEodmFyKC0tYWNjZW50LXJnYiksLjE1KTtib3JkZXI6MXB4IHNvbGlkIHZhcigtLWFjY2VudDMpO2NvbG9yOnZhcigtLWFjY2VudDMpO2JveC1zaGFkb3c6MCAwIDE4cHggcmdiYSh2YXIoLS1hY2NlbnQtcmdiKSwuMil9XG4uc3RlcDpudGgtY2hpbGQoNCkgLnN0ZXAtbntiYWNrZ3JvdW5kOnJnYmEodmFyKC0tYWNjZW50LXJnYiksLjEyKTtib3JkZXI6MXB4IHNvbGlkIHZhcigtLWFjY2VudDMpO2NvbG9yOnZhcigtLWFjY2VudDMpO2JveC1zaGFkb3c6MCAwIDE4cHggcmdiYSh2YXIoLS1hY2NlbnQtcmdiKSwuMil9XG4uc3RlcC10aXRsZXtmb250LWZhbWlseTp2YXIoLS1mb250LWRpc3BsYXkpO2ZvbnQtc2l6ZToyMHB4O2xldHRlci1zcGFjaW5nOjFweDtjb2xvcjojZmZmO21hcmdpbi1ib3R0b206OHB4fVxuLnN0ZXAtZGVzY3tmb250LXNpemU6MTJweDtjb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LC40KTtsaW5lLWhlaWdodDoxLjZ9XG5cbi8qIENIQUxMRU5HRVMgKi9cbi5jaGFsLWJne2JhY2tncm91bmQ6dmFyKC0tYmcpO3Bvc2l0aW9uOnJlbGF0aXZlO292ZXJmbG93OmhpZGRlbn1cbi5jaGFsLWJnOjpiZWZvcmV7Y29udGVudDonJztwb3NpdGlvbjphYnNvbHV0ZTt0b3A6LTIwMHB4O2xlZnQ6LTIwMHB4O3dpZHRoOjYwMHB4O2hlaWdodDo2MDBweDtiYWNrZ3JvdW5kOnJhZGlhbC1ncmFkaWVudChjaXJjbGUscmdiYSh2YXIoLS1hY2NlbnQtcmdiKSwuMDcpIDAlLHRyYW5zcGFyZW50IDcwJSk7cG9pbnRlci1ldmVudHM6bm9uZX1cbi5jaGFsLWJnOjphZnRlcntjb250ZW50OicnO3Bvc2l0aW9uOmFic29sdXRlO2JvdHRvbTotMjAwcHg7cmlnaHQ6LTIwMHB4O3dpZHRoOjYwMHB4O2hlaWdodDo2MDBweDtiYWNrZ3JvdW5kOnJhZGlhbC1ncmFkaWVudChjaXJjbGUscmdiYSh2YXIoLS1hY2NlbnQtcmdiKSwuMDcpIDAlLHRyYW5zcGFyZW50IDcwJSk7cG9pbnRlci1ldmVudHM6bm9uZX1cbi5jaGFsLWludHJve2Rpc3BsYXk6Z3JpZDtncmlkLXRlbXBsYXRlLWNvbHVtbnM6MWZyIDFmcjtnYXA6ODBweDthbGlnbi1pdGVtczplbmQ7bWFyZ2luLWJvdHRvbTo2MHB4fVxuLmNoYWwtZ3JpZHtkaXNwbGF5OmdyaWQ7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOjFmciAxZnI7Z2FwOjIwcHh9XG4uY2N7Ym9yZGVyLXJhZGl1czoyMHB4O3BhZGRpbmc6NDJweCAzOHB4O2JvcmRlcjoxcHggc29saWQgcmdiYSgyNTUsMjU1LDI1NSwuMDgpO3Bvc2l0aW9uOnJlbGF0aXZlO292ZXJmbG93OmhpZGRlbn1cbi5jYy1kZW1ve2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDE0NWRlZywjMGMwYzE4IDAlLCMxMzEwMjAgMTAwJSl9XG4uY2MtZnVuZHtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgxNDVkZWcsIzBjMDgxMCAwJSwjMTgwNDIwIDUwJSwjMGMwODEwIDEwMCUpO2JvcmRlci1jb2xvcjpyZ2JhKHZhcigtLWFjY2VudC1yZ2IpLC4yNSl9XG4uY2MtZnVuZDo6YmVmb3Jle2NvbnRlbnQ6Jyc7cG9zaXRpb246YWJzb2x1dGU7aW5zZXQ6MDtiYWNrZ3JvdW5kOnJhZGlhbC1ncmFkaWVudChlbGxpcHNlIDEwMCUgNTAlIGF0IDUwJSAwJSxyZ2JhKHZhcigtLWFjY2VudC1yZ2IpLC4xKSAwJSx0cmFuc3BhcmVudCA2NSUpO3BvaW50ZXItZXZlbnRzOm5vbmV9XG4uY2MtYmFkZ2V7ZGlzcGxheTppbmxpbmUtYmxvY2s7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1tb25vKTtmb250LXNpemU6OXB4O2ZvbnQtd2VpZ2h0OjYwMDtsZXR0ZXItc3BhY2luZzoycHg7dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO3BhZGRpbmc6NXB4IDEycHg7Ym9yZGVyLXJhZGl1czo0cHg7bWFyZ2luLWJvdHRvbToyMnB4fVxuLmJke2JhY2tncm91bmQ6cmdiYSgyNTUsMjU1LDI1NSwuMDUpO2JvcmRlcjoxcHggc29saWQgcmdiYSgyNTUsMjU1LDI1NSwuMTIpO2NvbG9yOnJnYmEoMjU1LDI1NSwyNTUsLjYpfVxuLmJme2JhY2tncm91bmQ6dmFyKC0tZ3JhZCk7Y29sb3I6IzAwMH1cbi5jYy10aXRsZXtmb250LWZhbWlseTp2YXIoLS1mb250LWRpc3BsYXkpO2ZvbnQtc2l6ZTo0OHB4O2xldHRlci1zcGFjaW5nOjFweDtjb2xvcjojZmZmO2xpbmUtaGVpZ2h0Oi45NTttYXJnaW4tYm90dG9tOjE0cHh9XG4uY2MtZnVuZCAuY2MtdGl0bGV7YmFja2dyb3VuZDp2YXIoLS1ncmFkKTstd2Via2l0LWJhY2tncm91bmQtY2xpcDp0ZXh0Oy13ZWJraXQtdGV4dC1maWxsLWNvbG9yOnRyYW5zcGFyZW50O2JhY2tncm91bmQtY2xpcDp0ZXh0fVxuLmNjLWRlc2N7Zm9udC1zaXplOjE0cHg7Y29sb3I6cmdiYSgyNTUsMjU1LDI1NSwuNik7bGluZS1oZWlnaHQ6MS42NTttYXJnaW4tYm90dG9tOjEwcHh9XG4uY2MtZGVzYzJ7Zm9udC1zaXplOjEzcHg7Y29sb3I6cmdiYSgyNTUsMjU1LDI1NSwuNCk7bGluZS1oZWlnaHQ6MS42O21hcmdpbi1ib3R0b206MjhweH1cbi5jYy1saXN0e2xpc3Qtc3R5bGU6bm9uZTttYXJnaW4tYm90dG9tOjMycHg7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtnYXA6MTBweH1cbi5jYy1saXN0IGxpe2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpmbGV4LXN0YXJ0O2dhcDoxMHB4O2ZvbnQtc2l6ZToxM3B4O2NvbG9yOnJnYmEoMjU1LDI1NSwyNTUsLjYpO2xpbmUtaGVpZ2h0OjEuNH1cbi5jaGt7d2lkdGg6MThweDtoZWlnaHQ6MThweDtib3JkZXItcmFkaXVzOjUwJTtmbGV4LXNocmluazowO21hcmdpbi10b3A6MXB4O2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcn1cbi5jZ3tiYWNrZ3JvdW5kOnJnYmEoMzQsMTk3LDk0LC4xNSl9LmNte2JhY2tncm91bmQ6cmdiYSh2YXIoLS1hY2NlbnQtcmdiKSwuMTgpfVxuLmNjLWJ0bntkaXNwbGF5OmlubGluZS1ibG9jaztmb250LWZhbWlseTp2YXIoLS1mb250LWRpc3BsYXkpO2ZvbnQtc2l6ZToxN3B4O2xldHRlci1zcGFjaW5nOjJweDt0ZXh0LWRlY29yYXRpb246bm9uZTtwYWRkaW5nOjEzcHggMjhweDtib3JkZXItcmFkaXVzOjEwcHg7dHJhbnNpdGlvbjphbGwgLjI1cztjdXJzb3I6cG9pbnRlcjtib3JkZXI6bm9uZTtmb250LXdlaWdodDo0MDB9XG4uY2MtYnRuLWR7Y29sb3I6I2ZmZjtib3JkZXI6MS41cHggc29saWQgcmdiYSgyNTUsMjU1LDI1NSwuMTIpO2JhY2tncm91bmQ6cmdiYSgyNTUsMjU1LDI1NSwuMDUpfVxuLmNjLWJ0bi1kOmhvdmVye2JvcmRlci1jb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LC40KTtiYWNrZ3JvdW5kOnJnYmEoMjU1LDI1NSwyNTUsLjA4KTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtMnB4KTtjb2xvcjojZmZmfVxuLmNjLWJ0bi1me2NvbG9yOiMwMDA7YmFja2dyb3VuZDp2YXIoLS1ncmFkKTtib3gtc2hhZG93OjAgNnB4IDI0cHggcmdiYSh2YXIoLS1hY2NlbnQtcmdiKSwuMyl9XG4uY2MtYnRuLWY6aG92ZXJ7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTNweCk7Ym94LXNoYWRvdzowIDEycHggMzZweCByZ2JhKHZhcigtLWFjY2VudC1yZ2IpLC40NSk7Y29sb3I6IzAwMH1cblxuLyogVE9LRU4gLyBPUkIgKi9cbi50b2stYmd7YmFja2dyb3VuZDp2YXIoLS1iZzIpO3Bvc2l0aW9uOnJlbGF0aXZlO292ZXJmbG93OmhpZGRlbn1cbi50b2stYmc6OmJlZm9yZXtjb250ZW50OicnO3Bvc2l0aW9uOmFic29sdXRlO2luc2V0OjA7YmFja2dyb3VuZDpyYWRpYWwtZ3JhZGllbnQoZWxsaXBzZSA2MCUgODAlIGF0IDAlIDUwJSxyZ2JhKHZhcigtLWFjY2VudC1yZ2IpLC4xMykgMCUsdHJhbnNwYXJlbnQgNTUlKSxyYWRpYWwtZ3JhZGllbnQoZWxsaXBzZSA1MCUgNjAlIGF0IDEwMCUgNTAlLHJnYmEodmFyKC0tYWNjZW50LXJnYiksLjA5KSAwJSx0cmFuc3BhcmVudCA1NSUpO3BvaW50ZXItZXZlbnRzOm5vbmV9XG4udG9rLWxheW91dHtkaXNwbGF5OmdyaWQ7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOjFmciAxZnI7Z2FwOjgwcHg7YWxpZ24taXRlbXM6Y2VudGVyO3Bvc2l0aW9uOnJlbGF0aXZlO3otaW5kZXg6MX1cbi50b2stYm9keSBwe2ZvbnQtc2l6ZToxNHB4O2NvbG9yOnJnYmEoMjU1LDI1NSwyNTUsLjYpO2xpbmUtaGVpZ2h0OjEuNzU7bWFyZ2luLXRvcDoxNHB4fVxuLnRvay1ib2R5IHArcHttYXJnaW4tdG9wOjEwcHg7Zm9udC1zaXplOjEzcHg7Y29sb3I6cmdiYSgyNTUsMjU1LDI1NSwuNCk7bGluZS1oZWlnaHQ6MS43fVxuLnRvay1ncmlke2Rpc3BsYXk6Z3JpZDtncmlkLXRlbXBsYXRlLWNvbHVtbnM6MWZyIDFmcjtnYXA6MTRweDttYXJnaW4tdG9wOjMycHh9XG4udHN0YXR7cGFkZGluZzoyMHB4IDE4cHg7Ym9yZGVyLXJhZGl1czoxNHB4O2JhY2tncm91bmQ6cmdiYSgyNTUsMjU1LDI1NSwuMDMpO2JvcmRlcjoxcHggc29saWQgcmdiYSgyNTUsMjU1LDI1NSwuMDgpO3Bvc2l0aW9uOnJlbGF0aXZlO292ZXJmbG93OmhpZGRlbn1cbi50c3RhdDo6YWZ0ZXJ7Y29udGVudDonJztwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtsZWZ0OjA7cmlnaHQ6MDtoZWlnaHQ6MnB4O2JhY2tncm91bmQ6dmFyKC0tZ3JhZCl9XG4udHN0YXQtdntmb250LWZhbWlseTp2YXIoLS1mb250LWRpc3BsYXkpO2ZvbnQtc2l6ZToyOHB4O2xldHRlci1zcGFjaW5nOjFweDtsaW5lLWhlaWdodDoxO2JhY2tncm91bmQ6dmFyKC0tZ3JhZCk7LXdlYmtpdC1iYWNrZ3JvdW5kLWNsaXA6dGV4dDstd2Via2l0LXRleHQtZmlsbC1jb2xvcjp0cmFuc3BhcmVudDtiYWNrZ3JvdW5kLWNsaXA6dGV4dDttYXJnaW4tYm90dG9tOjRweH1cbi50c3RhdC1re2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtbW9ubyk7Zm9udC1zaXplOjlweDtsZXR0ZXItc3BhY2luZzoycHg7Y29sb3I6cmdiYSgyNTUsMjU1LDI1NSwuNCk7dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlfVxuLm9yYi13cmFwe3Bvc2l0aW9uOnJlbGF0aXZlO3dpZHRoOjMwMHB4O2hlaWdodDozMDBweDttYXJnaW46MCBhdXRvfVxuLm9yYjEsLm9yYjJ7cG9zaXRpb246YWJzb2x1dGU7Ym9yZGVyLXJhZGl1czo1MCU7Ym9yZGVyOjFweCBzb2xpZH1cbi5vcmIxe2luc2V0OjA7Ym9yZGVyLWNvbG9yOnJnYmEodmFyKC0tYWNjZW50LXJnYiksLjIpO2FuaW1hdGlvbjpzcGluIDIycyBsaW5lYXIgaW5maW5pdGV9XG4ub3JiMntpbnNldDozMnB4O2JvcmRlci1jb2xvcjpyZ2JhKHZhcigtLWFjY2VudC1yZ2IpLC4xNSk7YW5pbWF0aW9uOnNwaW4gMTRzIGxpbmVhciBpbmZpbml0ZSByZXZlcnNlfVxuLm9yYi1kb3R7cG9zaXRpb246YWJzb2x1dGU7d2lkdGg6MTBweDtoZWlnaHQ6MTBweDtib3JkZXItcmFkaXVzOjUwJTt0b3A6LTVweDtsZWZ0OjUwJTt0cmFuc2Zvcm06dHJhbnNsYXRlWCgtNTAlKX1cbi5vZC1te2JhY2tncm91bmQ6dmFyKC0tYWNjZW50KTtib3gtc2hhZG93OjAgMCAxNHB4IHZhcigtLWFjY2VudCl9XG4ub2QtZ3tiYWNrZ3JvdW5kOnZhcigtLWFjY2VudDMpO2JveC1zaGFkb3c6MCAwIDEycHggdmFyKC0tYWNjZW50Myl9XG4ub3JiLWN7cG9zaXRpb246YWJzb2x1dGU7aW5zZXQ6NzJweDtib3JkZXItcmFkaXVzOjUwJTtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgxNDVkZWcsdmFyKC0tYmczKSx2YXIoLS1iZzQpKTtib3JkZXI6MnB4IHNvbGlkIHJnYmEodmFyKC0tYWNjZW50LXJnYiksLjM1KTtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2JveC1zaGFkb3c6MCAwIDQwcHggcmdiYSh2YXIoLS1hY2NlbnQtcmdiKSwuMTUpLGluc2V0IDAgMCAzMHB4IHJnYmEodmFyKC0tYWNjZW50LXJnYiksLjA1KX1cbi5vcmItYyBpbWd7d2lkdGg6NThweDtoZWlnaHQ6NThweDtib3JkZXItcmFkaXVzOjUwJTtvYmplY3QtZml0OmNvdmVyfVxuLm9yYi1jLWxibHtmb250LWZhbWlseTp2YXIoLS1mb250LWRpc3BsYXkpO2ZvbnQtc2l6ZToxN3B4O2xldHRlci1zcGFjaW5nOjNweDtiYWNrZ3JvdW5kOnZhcigtLWdyYWQpOy13ZWJraXQtYmFja2dyb3VuZC1jbGlwOnRleHQ7LXdlYmtpdC10ZXh0LWZpbGwtY29sb3I6dHJhbnNwYXJlbnQ7YmFja2dyb3VuZC1jbGlwOnRleHQ7bWFyZ2luLXRvcDo1cHh9XG5cbi8qIEdBTUlGSUNBVElPTiAqL1xuLmdhbS1iZ3tiYWNrZ3JvdW5kOnZhcigtLWJnKX1cbi5nYW0taW50cm97ZGlzcGxheTpncmlkO2dyaWQtdGVtcGxhdGUtY29sdW1uczoxZnIgMWZyO2dhcDo4MHB4O2FsaWduLWl0ZW1zOnN0YXJ0O21hcmdpbi1ib3R0b206NjBweH1cbi5nYW0tcmlnaHQgcHtmb250LXNpemU6MTRweDtjb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LC42KTtsaW5lLWhlaWdodDoxLjc1fVxuLmdhbS1yaWdodCBwK3B7bWFyZ2luLXRvcDoxMnB4O2ZvbnQtc2l6ZToxM3B4O2NvbG9yOnJnYmEoMjU1LDI1NSwyNTUsLjQpO2xpbmUtaGVpZ2h0OjEuN31cbi5nYW0tZ3JpZHtkaXNwbGF5OmdyaWQ7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOnJlcGVhdCg0LDFmcik7Z2FwOjE0cHh9XG4uZ2N7cGFkZGluZzoyOHB4IDIycHg7Ym9yZGVyLXJhZGl1czoxNnB4O2JhY2tncm91bmQ6dmFyKC0tYmczKTtib3JkZXI6MXB4IHNvbGlkIHJnYmEoMjU1LDI1NSwyNTUsLjA4KTt0ZXh0LWFsaWduOmNlbnRlcjt0cmFuc2l0aW9uOmFsbCAuM3M7Y3Vyc29yOmRlZmF1bHQ7cG9zaXRpb246cmVsYXRpdmU7b3ZlcmZsb3c6aGlkZGVufVxuLmdjOjpiZWZvcmV7Y29udGVudDonJztwb3NpdGlvbjphYnNvbHV0ZTtpbnNldDowO2JhY2tncm91bmQ6dmFyKC0tZ3JhZCk7b3BhY2l0eTowO3RyYW5zaXRpb246b3BhY2l0eSAuM3N9XG4uZ2M6aG92ZXJ7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTVweCk7Ym9yZGVyLWNvbG9yOnRyYW5zcGFyZW50fVxuLmdjOmhvdmVyOjpiZWZvcmV7b3BhY2l0eTouMDh9XG4uZ2M6aG92ZXIgLmdjLWljb257dHJhbnNmb3JtOnNjYWxlKDEuMTUpfVxuLmdjLWljb257Zm9udC1zaXplOjI4cHg7bWFyZ2luLWJvdHRvbToxNHB4O2Rpc3BsYXk6YmxvY2s7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjNzfVxuLmdjLXRpdGxle2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtZGlzcGxheSk7Zm9udC1zaXplOjIycHg7bGV0dGVyLXNwYWNpbmc6MXB4O2NvbG9yOiNmZmY7bWFyZ2luLWJvdHRvbTo4cHh9XG4uZ2MtZGVzY3tmb250LXNpemU6MTJweDtjb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LC40KTtsaW5lLWhlaWdodDoxLjU1fVxuXG4vKiBTT0NJQUwgUFJPT0YgLyBMRUFERVJCT0FSRCAqL1xuLnNwLWJne2JhY2tncm91bmQ6dmFyKC0tYmcyKTtwb3NpdGlvbjpyZWxhdGl2ZTtvdmVyZmxvdzpoaWRkZW59XG4uc3AtYmc6OmJlZm9yZXtjb250ZW50OicnO3Bvc2l0aW9uOmFic29sdXRlO2luc2V0OjA7YmFja2dyb3VuZDpyYWRpYWwtZ3JhZGllbnQoZWxsaXBzZSA4MCUgNjAlIGF0IDUwJSAxMDAlLHJnYmEodmFyKC0tYWNjZW50LXJnYiksLjEpIDAlLHRyYW5zcGFyZW50IDYwJSk7cG9pbnRlci1ldmVudHM6bm9uZX1cbi5zcC1sYXlvdXR7ZGlzcGxheTpncmlkO2dyaWQtdGVtcGxhdGUtY29sdW1uczoxZnIgMWZyO2dhcDo2MHB4O2FsaWduLWl0ZW1zOnN0YXJ0fVxuLmxiLXdyYXB7YmFja2dyb3VuZDpyZ2JhKDI1NSwyNTUsMjU1LC4wMik7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDI1NSwyNTUsMjU1LC4wOCk7Ym9yZGVyLXJhZGl1czoxOHB4O292ZXJmbG93OmhpZGRlbjtiYWNrZHJvcC1maWx0ZXI6Ymx1cigxMHB4KX1cbi5sYi1oZWFke3BhZGRpbmc6MTZweCAyMnB4O2Rpc3BsYXk6ZmxleDtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2VlbjthbGlnbi1pdGVtczpjZW50ZXI7Ym9yZGVyLWJvdHRvbToxcHggc29saWQgcmdiYSgyNTUsMjU1LDI1NSwuMDgpO2JhY2tncm91bmQ6cmdiYSgyNTUsMjU1LDI1NSwuMDIpfVxuLmxiLWh0aXRsZXtmb250LWZhbWlseTp2YXIoLS1mb250LW1vbm8pO2ZvbnQtc2l6ZToxMHB4O2xldHRlci1zcGFjaW5nOjJweDtjb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LC40KTt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2V9XG4ubGItbGl2ZXtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDo2cHg7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1tb25vKTtmb250LXNpemU6MTBweDtjb2xvcjojMjJjNTVlO2xldHRlci1zcGFjaW5nOjFweH1cbi5sYi1sZG90e3dpZHRoOjZweDtoZWlnaHQ6NnB4O2JvcmRlci1yYWRpdXM6NTAlO2JhY2tncm91bmQ6IzIyYzU1ZTthbmltYXRpb246c3QtcHVsc2UgMS41cyBlYXNlLWluLW91dCBpbmZpbml0ZX1cbi5sYi1yb3d7ZGlzcGxheTpncmlkO2dyaWQtdGVtcGxhdGUtY29sdW1uczozMnB4IDM0cHggMWZyIGF1dG8gYXV0bzthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjEycHg7cGFkZGluZzoxMnB4IDIycHg7Ym9yZGVyLWJvdHRvbToxcHggc29saWQgcmdiYSgyNTUsMjU1LDI1NSwuMDUpO3RyYW5zaXRpb246YmFja2dyb3VuZCAuMTVzfVxuLmxiLXJvdzpob3ZlcntiYWNrZ3JvdW5kOnJnYmEoMjU1LDI1NSwyNTUsLjA1KX1cbi5sYi1yb3c6bGFzdC1jaGlsZHtib3JkZXItYm90dG9tOm5vbmV9XG4ubGItcm57Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1kaXNwbGF5KTtmb250LXNpemU6MjBweDtjb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LC40KTt0ZXh0LWFsaWduOmNlbnRlcn1cbi5sYi1ybi5ne2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDEzNWRlZyx2YXIoLS1hY2NlbnQzKSwjZThiODAwKTstd2Via2l0LWJhY2tncm91bmQtY2xpcDp0ZXh0Oy13ZWJraXQtdGV4dC1maWxsLWNvbG9yOnRyYW5zcGFyZW50O2JhY2tncm91bmQtY2xpcDp0ZXh0fVxuLmxiLXJuLnN7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCNDMEMwQzAsIzg4OCk7LXdlYmtpdC1iYWNrZ3JvdW5kLWNsaXA6dGV4dDstd2Via2l0LXRleHQtZmlsbC1jb2xvcjp0cmFuc3BhcmVudDtiYWNrZ3JvdW5kLWNsaXA6dGV4dH1cbi5sYi1ybi5ie2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDEzNWRlZywjQ0Q3RjMyLCNhMDVhMWEpOy13ZWJraXQtYmFja2dyb3VuZC1jbGlwOnRleHQ7LXdlYmtpdC10ZXh0LWZpbGwtY29sb3I6dHJhbnNwYXJlbnQ7YmFja2dyb3VuZC1jbGlwOnRleHR9XG4ubGItYXZ7d2lkdGg6MzRweDtoZWlnaHQ6MzRweDtib3JkZXItcmFkaXVzOjUwJTtiYWNrZ3JvdW5kOnZhcigtLWdyYWQpO2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtmb250LWZhbWlseTp2YXIoLS1mb250LWRpc3BsYXkpO2ZvbnQtc2l6ZToxNHB4O2NvbG9yOiNmZmY7ZmxleC1zaHJpbms6MH1cbi5sYi1uYW1le2ZvbnQtc2l6ZToxNHB4O2ZvbnQtd2VpZ2h0OjYwMDtjb2xvcjojZmZmfVxuLmxiLXRyYWRlc3tmb250LWZhbWlseTp2YXIoLS1mb250LW1vbm8pO2ZvbnQtc2l6ZToxMHB4O2NvbG9yOnJnYmEoMjU1LDI1NSwyNTUsLjQpfVxuLmxiLXByb2ZpdHtmb250LWZhbWlseTp2YXIoLS1mb250LW1vbm8pO2ZvbnQtc2l6ZToxMXB4O2ZvbnQtd2VpZ2h0OjYwMDtjb2xvcjojMjJjNTVlfVxuLmxiLWxpbmt7ZGlzcGxheTpibG9jazt0ZXh0LWFsaWduOmNlbnRlcjtmb250LWZhbWlseTp2YXIoLS1mb250LW1vbm8pO2ZvbnQtc2l6ZToxMHB4O2xldHRlci1zcGFjaW5nOjJweDt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7Y29sb3I6dmFyKC0tYWNjZW50KTt0ZXh0LWRlY29yYXRpb246bm9uZTtwYWRkaW5nOjE0cHg7Ym9yZGVyLXRvcDoxcHggc29saWQgcmdiYSgyNTUsMjU1LDI1NSwuMDgpO3RyYW5zaXRpb246YmFja2dyb3VuZCAuMnN9XG4ubGItbGluazpob3ZlcntiYWNrZ3JvdW5kOnJnYmEodmFyKC0tYWNjZW50LXJnYiksLjA1KTtjb2xvcjp2YXIoLS1hY2NlbnQpfVxuXG4vKiBQQVlPVVQgQ0VSVCAqL1xuLnBheW91dC13cmFwe2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47Z2FwOjE2cHh9XG4ucGF5b3V0LXRpdGxle2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtZGlzcGxheSk7Zm9udC1zaXplOjI4cHg7bGV0dGVyLXNwYWNpbmc6MXB4O2NvbG9yOiNmZmY7bWFyZ2luLWJvdHRvbTo0cHh9XG4ucGF5b3V0LXN1Yntmb250LXNpemU6MTNweDtjb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LC40KTtsaW5lLWhlaWdodDoxLjY1O21hcmdpbi1ib3R0b206MjBweH1cbi5wYXlvdXQtY2VydHtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgxNDVkZWcsdmFyKC0tYmczKSx2YXIoLS1iZzQpKTtib3JkZXI6MXB4IHNvbGlkIHJnYmEodmFyKC0tYWNjZW50LXJnYiksLjI1KTtib3JkZXItcmFkaXVzOjE2cHg7cGFkZGluZzoyNHB4O3Bvc2l0aW9uOnJlbGF0aXZlO292ZXJmbG93OmhpZGRlbn1cbi5wYXlvdXQtY2VydDo6YmVmb3Jle2NvbnRlbnQ6Jyc7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7bGVmdDowO3JpZ2h0OjA7aGVpZ2h0OjNweDtiYWNrZ3JvdW5kOnZhcigtLWdyYWQpfVxuLnBjLWxhYmVse2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtbW9ubyk7Zm9udC1zaXplOjlweDtsZXR0ZXItc3BhY2luZzozcHg7dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO2NvbG9yOnZhcigtLWFjY2VudCk7bWFyZ2luLWJvdHRvbToxNHB4fVxuLnBjLWRhdGV7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1tb25vKTtmb250LXNpemU6MTBweDtjb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LC40KTttYXJnaW4tYm90dG9tOjEwcHh9XG4ucGMtbmFtZXtmb250LWZhbWlseTp2YXIoLS1mb250LWRpc3BsYXkpO2ZvbnQtc2l6ZToyNnB4O2xldHRlci1zcGFjaW5nOjJweDtjb2xvcjojZmZmO21hcmdpbi1ib3R0b206MTRweH1cbi5wYy1hbW91bnR7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1kaXNwbGF5KTtmb250LXNpemU6NDRweDtsZXR0ZXItc3BhY2luZzoxcHg7YmFja2dyb3VuZDp2YXIoLS1ncmFkKTstd2Via2l0LWJhY2tncm91bmQtY2xpcDp0ZXh0Oy13ZWJraXQtdGV4dC1maWxsLWNvbG9yOnRyYW5zcGFyZW50O2JhY2tncm91bmQtY2xpcDp0ZXh0O2xpbmUtaGVpZ2h0OjE7bWFyZ2luLWJvdHRvbTo0cHh9XG4ucGMtbWV0YXtmb250LWZhbWlseTp2YXIoLS1mb250LW1vbm8pO2ZvbnQtc2l6ZToxMHB4O2NvbG9yOnJnYmEoMjU1LDI1NSwyNTUsLjQpO2Rpc3BsYXk6ZmxleDtnYXA6MjBweDtmbGV4LXdyYXA6d3JhcH1cbi5wYy1iYWRnZXtkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6NnB4O3BhZGRpbmc6NXB4IDEycHg7YmFja2dyb3VuZDpyZ2JhKDM0LDE5Nyw5NCwuMSk7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDM0LDE5Nyw5NCwuMik7Ym9yZGVyLXJhZGl1czo2cHg7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1tb25vKTtmb250LXNpemU6MTBweDtjb2xvcjojMjJjNTVlO2xldHRlci1zcGFjaW5nOjFweDttYXJnaW4tdG9wOjEycHh9XG4ucGMtYmFkZ2UtZG90e3dpZHRoOjZweDtoZWlnaHQ6NnB4O2JvcmRlci1yYWRpdXM6NTAlO2JhY2tncm91bmQ6IzIyYzU1ZX1cbi5wYXlvdXQtc3RhdHN7ZGlzcGxheTpncmlkO2dyaWQtdGVtcGxhdGUtY29sdW1uczoxZnIgMWZyIDFmcjtnYXA6MTJweDttYXJnaW4tdG9wOjE2cHh9XG4ucHN7cGFkZGluZzoxNHB4IDEycHg7YmFja2dyb3VuZDpyZ2JhKDI1NSwyNTUsMjU1LC4wNSk7Ym9yZGVyOjFweCBzb2xpZCByZ2JhKDI1NSwyNTUsMjU1LC4wOCk7Ym9yZGVyLXJhZGl1czoxMHB4O3RleHQtYWxpZ246Y2VudGVyfVxuLnBzLW57Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1kaXNwbGF5KTtmb250LXNpemU6MjJweDtsZXR0ZXItc3BhY2luZzoxcHg7YmFja2dyb3VuZDp2YXIoLS1ncmFkKTstd2Via2l0LWJhY2tncm91bmQtY2xpcDp0ZXh0Oy13ZWJraXQtdGV4dC1maWxsLWNvbG9yOnRyYW5zcGFyZW50O2JhY2tncm91bmQtY2xpcDp0ZXh0O2xpbmUtaGVpZ2h0OjF9XG4ucHMtbHtmb250LWZhbWlseTp2YXIoLS1mb250LW1vbm8pO2ZvbnQtc2l6ZTo4cHg7bGV0dGVyLXNwYWNpbmc6MS41cHg7Y29sb3I6cmdiYSgyNTUsMjU1LDI1NSwuNCk7dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO21hcmdpbi10b3A6M3B4fVxuXG4vKiBJTlZFU1RPUiAqL1xuLmludi1iZ3tiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgxMzVkZWcsdmFyKC0tYmc0KSAwJSx2YXIoLS1hY2NlbnQyKSAzMCUsdmFyKC0tYWNjZW50KSA3MCUsdmFyKC0tYmcpIDEwMCUpO3BhZGRpbmc6ODBweCAyNHB4O3RleHQtYWxpZ246Y2VudGVyO3Bvc2l0aW9uOnJlbGF0aXZlO292ZXJmbG93OmhpZGRlbn1cbi5pbnYtYmc6OmJlZm9yZXtjb250ZW50OicnO3Bvc2l0aW9uOmFic29sdXRlO2luc2V0OjA7YmFja2dyb3VuZC1pbWFnZTpsaW5lYXItZ3JhZGllbnQocmdiYSgyNTUsMjU1LDI1NSwuMDI1KSAxcHgsdHJhbnNwYXJlbnQgMXB4KSxsaW5lYXItZ3JhZGllbnQoOTBkZWcscmdiYSgyNTUsMjU1LDI1NSwuMDI1KSAxcHgsdHJhbnNwYXJlbnQgMXB4KTtiYWNrZ3JvdW5kLXNpemU6NDRweCA0NHB4fVxuLmludi10YWd7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1tb25vKTtmb250LXNpemU6MTBweDtsZXR0ZXItc3BhY2luZzozcHg7dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO2NvbG9yOnJnYmEoMjU1LDI1NSwyNTUsLjQ1KTttYXJnaW4tYm90dG9tOjE2cHg7cG9zaXRpb246cmVsYXRpdmU7ei1pbmRleDoxfVxuLmludi1oe2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtZGlzcGxheSk7Zm9udC1zaXplOmNsYW1wKDQ0cHgsNnZ3LDcwcHgpO2xldHRlci1zcGFjaW5nOjJweDtjb2xvcjojZmZmO21hcmdpbi1ib3R0b206MTJweDtsaW5lLWhlaWdodDouOTU7cG9zaXRpb246cmVsYXRpdmU7ei1pbmRleDoxfVxuLmludi1zdWJ7Zm9udC1zaXplOjE0cHg7Y29sb3I6cmdiYSgyNTUsMjU1LDI1NSwuNik7bGluZS1oZWlnaHQ6MS43O21heC13aWR0aDo0ODBweDttYXJnaW46MCBhdXRvIDEwcHg7cG9zaXRpb246cmVsYXRpdmU7ei1pbmRleDoxfVxuLmludi1zdWIye2ZvbnQtc2l6ZToxM3B4O2NvbG9yOnJnYmEoMjU1LDI1NSwyNTUsLjQpO2xpbmUtaGVpZ2h0OjEuNjU7bWF4LXdpZHRoOjQ2MHB4O21hcmdpbjowIGF1dG8gMzBweDtwb3NpdGlvbjpyZWxhdGl2ZTt6LWluZGV4OjF9XG4uaW52LXBpbGxze2Rpc3BsYXk6ZmxleDtnYXA6MTJweDtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2ZsZXgtd3JhcDp3cmFwO21hcmdpbi1ib3R0b206MzJweDtwb3NpdGlvbjpyZWxhdGl2ZTt6LWluZGV4OjF9XG4uaW52LXBpbGx7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1tb25vKTtmb250LXNpemU6MTBweDtsZXR0ZXItc3BhY2luZzoxLjVweDt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7cGFkZGluZzo3cHggMTRweDtib3JkZXItcmFkaXVzOjZweDtiYWNrZ3JvdW5kOnJnYmEoMjU1LDI1NSwyNTUsLjEpO2JvcmRlcjoxcHggc29saWQgcmdiYSgyNTUsMjU1LDI1NSwuMTgpO2NvbG9yOnJnYmEoMjU1LDI1NSwyNTUsLjc1KX1cbi5pbnYtYnRue2Rpc3BsYXk6aW5saW5lLWJsb2NrO2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtZGlzcGxheSk7Zm9udC1zaXplOjE4cHg7bGV0dGVyLXNwYWNpbmc6M3B4O2NvbG9yOiMwMDA7dGV4dC1kZWNvcmF0aW9uOm5vbmU7cGFkZGluZzoxNHB4IDQwcHg7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLHZhcigtLWFjY2VudDMpLCNlOGI4MDApO2JvcmRlci1yYWRpdXM6OHB4O3RyYW5zaXRpb246YWxsIC4yNXM7Ym94LXNoYWRvdzowIDhweCAyOHB4IHJnYmEodmFyKC0tYWNjZW50LXJnYiksLjMpO2ZvbnQtd2VpZ2h0OjQwMDtwb3NpdGlvbjpyZWxhdGl2ZTt6LWluZGV4OjF9XG4uaW52LWJ0bjpob3Zlcnt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtMnB4KTtib3gtc2hhZG93OjAgMTRweCA0MHB4IHJnYmEodmFyKC0tYWNjZW50LXJnYiksLjQ1KTtjb2xvcjojMDAwfVxuLmludi1zdGF0c3tkaXNwbGF5OmZsZXg7Z2FwOjQ4cHg7anVzdGlmeS1jb250ZW50OmNlbnRlcjttYXJnaW4tdG9wOjM2cHg7ZmxleC13cmFwOndyYXA7cG9zaXRpb246cmVsYXRpdmU7ei1pbmRleDoxfVxuLmlzLW57Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1kaXNwbGF5KTtmb250LXNpemU6MzhweDtsZXR0ZXItc3BhY2luZzoxcHg7Y29sb3I6I2ZmZjtsaW5lLWhlaWdodDoxfVxuLmlzLWx7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1tb25vKTtmb250LXNpemU6OXB4O2xldHRlci1zcGFjaW5nOjJweDtjb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LC40KTt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7bWFyZ2luLXRvcDo0cHh9XG5cbi8qIEZJTkFMIENUQSAqL1xuLmZjdGF7YmFja2dyb3VuZDp2YXIoLS1iZyk7dGV4dC1hbGlnbjpjZW50ZXI7cGFkZGluZzoxMzBweCAyNHB4O3Bvc2l0aW9uOnJlbGF0aXZlO292ZXJmbG93OmhpZGRlbn1cbi5mY3RhOjpiZWZvcmV7Y29udGVudDonJztwb3NpdGlvbjphYnNvbHV0ZTt0b3A6LTEwMHB4O2xlZnQ6NTAlO3RyYW5zZm9ybTp0cmFuc2xhdGVYKC01MCUpO3dpZHRoOjkwMHB4O2hlaWdodDo5MDBweDtiYWNrZ3JvdW5kOnJhZGlhbC1ncmFkaWVudChjaXJjbGUscmdiYSh2YXIoLS1hY2NlbnQtcmdiKSwuMTEpIDAlLHJnYmEodmFyKC0tYWNjZW50LXJnYiksLjA2KSA0MCUsdHJhbnNwYXJlbnQgNjUlKTtwb2ludGVyLWV2ZW50czpub25lfVxuLmZjdGEtd217cG9zaXRpb246YWJzb2x1dGU7Ym90dG9tOi04MHB4O2xlZnQ6NTAlO3RyYW5zZm9ybTp0cmFuc2xhdGVYKC01MCUpO2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtZGlzcGxheSk7Zm9udC1zaXplOjI4MHB4O2xldHRlci1zcGFjaW5nOjEycHg7Y29sb3I6cmdiYSgyNTUsMjU1LDI1NSwuMDE4KTtwb2ludGVyLWV2ZW50czpub25lO3doaXRlLXNwYWNlOm5vd3JhcDtsaW5lLWhlaWdodDoxfVxuLmZjdGEtaXtwb3NpdGlvbjpyZWxhdGl2ZTt6LWluZGV4OjE7bWF4LXdpZHRoOjY2MHB4O21hcmdpbjowIGF1dG99XG4uZmN0YS1oe2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtZGlzcGxheSk7Zm9udC1zaXplOmNsYW1wKDY0cHgsMTB2dywxMThweCk7bGV0dGVyLXNwYWNpbmc6M3B4O2xpbmUtaGVpZ2h0Oi44ODttYXJnaW4tYm90dG9tOjIwcHh9XG4uZmN0YS1oIHNwYW46Zmlyc3QtY2hpbGR7Y29sb3I6I2ZmZjtkaXNwbGF5OmJsb2NrfVxuLmZjdGEtaCBzcGFuOmxhc3QtY2hpbGR7ZGlzcGxheTpibG9jaztiYWNrZ3JvdW5kOnZhcigtLWdyYWQpOy13ZWJraXQtYmFja2dyb3VuZC1jbGlwOnRleHQ7LXdlYmtpdC10ZXh0LWZpbGwtY29sb3I6dHJhbnNwYXJlbnQ7YmFja2dyb3VuZC1jbGlwOnRleHQ7ZmlsdGVyOmRyb3Atc2hhZG93KDAgMCA0MHB4IHJnYmEodmFyKC0tYWNjZW50LXJnYiksLjI1KSl9XG4uZmN0YS1zdWJ7Zm9udC1zaXplOjE1cHg7Y29sb3I6cmdiYSgyNTUsMjU1LDI1NSwuNik7bGluZS1oZWlnaHQ6MS43NTttYXJnaW4tYm90dG9tOjEwcHh9XG4uZmN0YS1zdWIye2ZvbnQtc2l6ZToxM3B4O2NvbG9yOnJnYmEoMjU1LDI1NSwyNTUsLjQpO2xpbmUtaGVpZ2h0OjEuNzttYXJnaW4tYm90dG9tOjQwcHh9XG4uZmN0YS1idG57ZGlzcGxheTppbmxpbmUtYmxvY2s7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1kaXNwbGF5KTtmb250LXNpemU6MjBweDtsZXR0ZXItc3BhY2luZzozcHg7Y29sb3I6IzAwMDt0ZXh0LWRlY29yYXRpb246bm9uZTtwYWRkaW5nOjE2cHggNTJweDtiYWNrZ3JvdW5kOnZhcigtLWdyYWQpO2JvcmRlci1yYWRpdXM6NTBweDt0cmFuc2l0aW9uOmFsbCAuM3M7Ym94LXNoYWRvdzowIDEwcHggNDBweCByZ2JhKHZhcigtLWFjY2VudC1yZ2IpLC4zNSk7Y3Vyc29yOnBvaW50ZXI7Ym9yZGVyOm5vbmU7Zm9udC13ZWlnaHQ6NDAwfVxuLmZjdGEtYnRuOmhvdmVye3RyYW5zZm9ybTp0cmFuc2xhdGVZKC00cHgpO2JveC1zaGFkb3c6MCAyMHB4IDYwcHggcmdiYSh2YXIoLS1hY2NlbnQtcmdiKSwuNSk7Y29sb3I6IzAwMH1cbi5mY3RhLXRhZ3ttYXJnaW4tdG9wOjIwcHg7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1tb25vKTtmb250LXNpemU6MTBweDtsZXR0ZXItc3BhY2luZzozcHg7Y29sb3I6cmdiYSgyNTUsMjU1LDI1NSwuNCk7dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlfVxuXG4vKiBFWFRFTkRFRCBGT09URVIgKi9cbi5mdHtkaXNwbGF5OmdyaWQ7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOjJmciAxZnIgMWZyIDFmcjtnYXA6NDhweDttYXJnaW4tYm90dG9tOjQ4cHh9XG4uZmItbG9nb3tkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDoxMHB4O21hcmdpbi1ib3R0b206MTRweH1cbi5mYi1sb2dvIGltZ3t3aWR0aDozMHB4O2hlaWdodDozMHB4O2JvcmRlci1yYWRpdXM6NTAlO2JvcmRlcjoxcHggc29saWQgcmdiYSh2YXIoLS1hY2NlbnQtcmdiKSwuNCl9XG4uZmItbG9nbyBzcGFue2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtZGlzcGxheSk7Zm9udC1zaXplOjE4cHg7bGV0dGVyLXNwYWNpbmc6M3B4O2NvbG9yOiNmZmZ9XG4uZmItdGFne2ZvbnQtc2l6ZToxMnB4O2NvbG9yOnJnYmEoMjU1LDI1NSwyNTUsLjQpO2xpbmUtaGVpZ2h0OjEuNzttYXJnaW4tYm90dG9tOjE4cHg7bWF4LXdpZHRoOjI0MHB4fVxuLmZiLXNvY3tkaXNwbGF5OmZsZXg7Z2FwOjEwcHh9XG4uZnNvY3t3aWR0aDozMnB4O2hlaWdodDozMnB4O2JvcmRlci1yYWRpdXM6OHB4O2JhY2tncm91bmQ6cmdiYSgyNTUsMjU1LDI1NSwuMDUpO2JvcmRlcjoxcHggc29saWQgcmdiYSgyNTUsMjU1LDI1NSwuMDgpO2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtmb250LXNpemU6MTNweDt0cmFuc2l0aW9uOmFsbCAuMnM7dGV4dC1kZWNvcmF0aW9uOm5vbmU7Y29sb3I6cmdiYSgyNTUsMjU1LDI1NSwuNil9XG4uZnNvYzpob3ZlcntiYWNrZ3JvdW5kOnJnYmEodmFyKC0tYWNjZW50LXJnYiksLjE1KTtib3JkZXItY29sb3I6cmdiYSh2YXIoLS1hY2NlbnQtcmdiKSwuMyk7Y29sb3I6dmFyKC0tYWNjZW50KX1cbi5mYzIgaDR7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1tb25vKTtmb250LXNpemU6MTBweDtsZXR0ZXItc3BhY2luZzoycHg7dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO2NvbG9yOnJnYmEoMjU1LDI1NSwyNTUsLjQpO21hcmdpbi1ib3R0b206MTZweH1cbi5mYzIgdWx7bGlzdC1zdHlsZTpub25lO3BhZGRpbmc6MDtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2dhcDoxMHB4fVxuLmZjMiBhe2ZvbnQtc2l6ZToxM3B4O2NvbG9yOnJnYmEoMjU1LDI1NSwyNTUsLjYpO3RleHQtZGVjb3JhdGlvbjpub25lO3RyYW5zaXRpb246Y29sb3IgLjJzfVxuLmZjMiBhOmhvdmVye2NvbG9yOnZhcigtLWFjY2VudCl9XG4uZmJvdHtib3JkZXItdG9wOjFweCBzb2xpZCByZ2JhKDI1NSwyNTUsMjU1LC4wNSk7cGFkZGluZy10b3A6MjRweDtkaXNwbGF5OmZsZXg7anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW47YWxpZ24taXRlbXM6Y2VudGVyO2ZsZXgtd3JhcDp3cmFwO2dhcDoxMnB4fVxuLmZjb3B5e2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtbW9ubyk7Zm9udC1zaXplOjEwcHg7Y29sb3I6cmdiYSgyNTUsMjU1LDI1NSwuNCk7bGV0dGVyLXNwYWNpbmc6LjVweH1cbi5maGFzaHtmb250LWZhbWlseTp2YXIoLS1mb250LWRpc3BsYXkpO2ZvbnQtc2l6ZToxNHB4O2xldHRlci1zcGFjaW5nOjNweDtiYWNrZ3JvdW5kOnZhcigtLWdyYWQpOy13ZWJraXQtYmFja2dyb3VuZC1jbGlwOnRleHQ7LXdlYmtpdC10ZXh0LWZpbGwtY29sb3I6dHJhbnNwYXJlbnQ7YmFja2dyb3VuZC1jbGlwOnRleHR9XG5cbi8qIE1PREFMIOKAlCB0ci1tb2RhbC0qIHByZWZpeCBhdm9pZHMgQm9vdHN0cmFwIGNvbGxpc2lvbiAqL1xuLnRyLW1vZGFsLW92ZXJsYXl7cG9zaXRpb246Zml4ZWQ7aW5zZXQ6MDt6LWluZGV4OjUwMDtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7cGFkZGluZzoyMHB4O2JhY2tncm91bmQ6cmdiYSg0LDQsMTAsLjg1KTtiYWNrZHJvcC1maWx0ZXI6Ymx1cigxMnB4KTstd2Via2l0LWJhY2tkcm9wLWZpbHRlcjpibHVyKDEycHgpO29wYWNpdHk6MDtwb2ludGVyLWV2ZW50czpub25lO3RyYW5zaXRpb246b3BhY2l0eSAuM3N9XG4udHItbW9kYWwtb3ZlcmxheS5vcGVue29wYWNpdHk6MTtwb2ludGVyLWV2ZW50czphbGx9XG4udHItbW9kYWx7d2lkdGg6MTAwJTttYXgtd2lkdGg6NDgwcHg7YmFja2dyb3VuZDp2YXIoLS1iZzMpO2JvcmRlcjoxcHggc29saWQgcmdiYSh2YXIoLS1hY2NlbnQtcmdiKSwuMik7Ym9yZGVyLXJhZGl1czoyNHB4O292ZXJmbG93OmhpZGRlbjtwb3NpdGlvbjpyZWxhdGl2ZTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgyMHB4KSBzY2FsZSguOTcpO3RyYW5zaXRpb246dHJhbnNmb3JtIC4zcztib3gtc2hhZG93OjAgNDBweCAxMDBweCByZ2JhKDAsMCwwLC42KSwwIDAgODBweCByZ2JhKHZhcigtLWFjY2VudC1yZ2IpLC4wOCl9XG4udHItbW9kYWwtb3ZlcmxheS5vcGVuIC50ci1tb2RhbHt0cmFuc2Zvcm06dHJhbnNsYXRlWSgwKSBzY2FsZSgxKX1cbi50ci1tb2RhbC10b3B7aGVpZ2h0OjRweDtiYWNrZ3JvdW5kOnZhcigtLWdyYWQpfVxuLnRyLW1vZGFsLWhlYWR7cGFkZGluZzozMnB4IDM2cHggMjRweDtib3JkZXItYm90dG9tOjFweCBzb2xpZCByZ2JhKDI1NSwyNTUsMjU1LC4wOCk7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2Vlbn1cbi50ci1tb2RhbC1sb2dve2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjEwcHh9XG4udHItbW9kYWwtbG9nbyBpbWd7d2lkdGg6MzZweDtoZWlnaHQ6MzZweDtib3JkZXItcmFkaXVzOjUwJTtib3JkZXI6MS41cHggc29saWQgcmdiYSh2YXIoLS1hY2NlbnQtcmdiKSwuNSk7Ym94LXNoYWRvdzowIDAgMTJweCByZ2JhKHZhcigtLWFjY2VudC1yZ2IpLC4yKX1cbi50ci1tb2RhbC1sb2dvLXRleHR7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1kaXNwbGF5KTtmb250LXNpemU6MThweDtsZXR0ZXItc3BhY2luZzozcHg7Y29sb3I6I2ZmZn1cbi50ci1tb2RhbC1jbG9zZXt3aWR0aDozMnB4O2hlaWdodDozMnB4O2JvcmRlci1yYWRpdXM6OHB4O2JhY2tncm91bmQ6cmdiYSgyNTUsMjU1LDI1NSwuMDUpO2JvcmRlcjoxcHggc29saWQgcmdiYSgyNTUsMjU1LDI1NSwuMDgpO2NvbG9yOnJnYmEoMjU1LDI1NSwyNTUsLjQpO2ZvbnQtc2l6ZToxOHB4O2N1cnNvcjpwb2ludGVyO2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjt0cmFuc2l0aW9uOmFsbCAuMnM7bGluZS1oZWlnaHQ6MX1cbi50ci1tb2RhbC1jbG9zZTpob3ZlcntiYWNrZ3JvdW5kOnJnYmEodmFyKC0tYWNjZW50LXJnYiksLjEpO2JvcmRlci1jb2xvcjpyZ2JhKHZhcigtLWFjY2VudC1yZ2IpLC4zKTtjb2xvcjojZmZmfVxuLnRyLW1vZGFsLWJvZHl7cGFkZGluZzoyOHB4IDM2cHggMzZweH1cbi50ci1tb2RhbC10aXRsZXtmb250LWZhbWlseTp2YXIoLS1mb250LWRpc3BsYXkpO2ZvbnQtc2l6ZTozNHB4O2xldHRlci1zcGFjaW5nOjJweDtjb2xvcjojZmZmO21hcmdpbi1ib3R0b206NnB4O2xpbmUtaGVpZ2h0OjF9XG4udHItbW9kYWwtc3Vie2ZvbnQtc2l6ZToxM3B4O2NvbG9yOnJnYmEoMjU1LDI1NSwyNTUsLjQpO2xpbmUtaGVpZ2h0OjEuNjttYXJnaW4tYm90dG9tOjI4cHh9XG4udHItbW9kYWwtc3ViIHN0cm9uZ3tjb2xvcjp2YXIoLS1hY2NlbnQpO2ZvbnQtd2VpZ2h0OjYwMH1cbi50ci1mb3JtLXJvd3tkaXNwbGF5OmdyaWQ7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOjFmciAxZnI7Z2FwOjE0cHg7bWFyZ2luLWJvdHRvbToxNHB4fVxuLnRyLWZvcm0tZ3JvdXB7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtnYXA6NnB4O21hcmdpbi1ib3R0b206MTRweH1cbi50ci1mb3JtLWdyb3VwIGxhYmVse2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtbW9ubyk7Zm9udC1zaXplOjlweDtmb250LXdlaWdodDo2MDA7bGV0dGVyLXNwYWNpbmc6MnB4O3RleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTtjb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LC40KX1cbi50ci1mb3JtLWlucHV0e2JhY2tncm91bmQ6cmdiYSgyNTUsMjU1LDI1NSwuMDUpO2JvcmRlcjoxcHggc29saWQgcmdiYSgyNTUsMjU1LDI1NSwuMTIpO2JvcmRlci1yYWRpdXM6MTBweDtwYWRkaW5nOjEycHggMTZweDtmb250LWZhbWlseTp2YXIoLS1mb250LWJvZHkpLHNhbnMtc2VyaWY7Zm9udC1zaXplOjE0cHg7Y29sb3I6I2ZmZjtvdXRsaW5lOm5vbmU7dHJhbnNpdGlvbjphbGwgLjI1czt3aWR0aDoxMDAlfVxuLnRyLWZvcm0taW5wdXQ6OnBsYWNlaG9sZGVye2NvbG9yOnJnYmEoMjU1LDI1NSwyNTUsLjIpfVxuLnRyLWZvcm0taW5wdXQ6Zm9jdXN7Ym9yZGVyLWNvbG9yOnJnYmEodmFyKC0tYWNjZW50LXJnYiksLjUpO2JhY2tncm91bmQ6cmdiYSh2YXIoLS1hY2NlbnQtcmdiKSwuMDQpO2JveC1zaGFkb3c6MCAwIDAgM3B4IHJnYmEodmFyKC0tYWNjZW50LXJnYiksLjEpfVxuLnRyLWZvcm0tc2VsZWN0e2JhY2tncm91bmQ6cmdiYSgyNTUsMjU1LDI1NSwuMDUpO2JvcmRlcjoxcHggc29saWQgcmdiYSgyNTUsMjU1LDI1NSwuMTIpO2JvcmRlci1yYWRpdXM6MTBweDtwYWRkaW5nOjEycHggMTZweDtmb250LWZhbWlseTp2YXIoLS1mb250LWJvZHkpLHNhbnMtc2VyaWY7Zm9udC1zaXplOjE0cHg7Y29sb3I6I2ZmZjtvdXRsaW5lOm5vbmU7dHJhbnNpdGlvbjphbGwgLjI1czt3aWR0aDoxMDAlO2N1cnNvcjpwb2ludGVyOy13ZWJraXQtYXBwZWFyYW5jZTpub25lO2FwcGVhcmFuY2U6bm9uZTtiYWNrZ3JvdW5kLWltYWdlOnVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nMTInIGhlaWdodD0nOCcgdmlld0JveD0nMCAwIDEyIDgnJTNFJTNDcGF0aCBkPSdNMSAxbDUgNSA1LTUnIHN0cm9rZT0ncmdiYSgyNTUsMjU1LDI1NSwwLjMpJyBzdHJva2Utd2lkdGg9JzEuNScgZmlsbD0nbm9uZScgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJy8lM0UlM0Mvc3ZnJTNFXCIpO2JhY2tncm91bmQtcmVwZWF0Om5vLXJlcGVhdDtiYWNrZ3JvdW5kLXBvc2l0aW9uOnJpZ2h0IDE0cHggY2VudGVyfVxuLnRyLWZvcm0tc2VsZWN0OmZvY3Vze2JvcmRlci1jb2xvcjpyZ2JhKHZhcigtLWFjY2VudC1yZ2IpLC41KTtib3gtc2hhZG93OjAgMCAwIDNweCByZ2JhKHZhcigtLWFjY2VudC1yZ2IpLC4xKX1cbi50ci1mb3JtLXNlbGVjdCBvcHRpb257YmFja2dyb3VuZDojMTExO2NvbG9yOiNmZmZ9XG4udHItcGFzcy13cmFwe3Bvc2l0aW9uOnJlbGF0aXZlfVxuLnRyLXBhc3MtdG9nZ2xle3Bvc2l0aW9uOmFic29sdXRlO3JpZ2h0OjE0cHg7dG9wOjUwJTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtNTAlKTtiYWNrZ3JvdW5kOm5vbmU7Ym9yZGVyOm5vbmU7Y29sb3I6cmdiYSgyNTUsMjU1LDI1NSwuNCk7Y3Vyc29yOnBvaW50ZXI7Zm9udC1zaXplOjE0cHg7cGFkZGluZzowO3RyYW5zaXRpb246Y29sb3IgLjJzfVxuLnRyLXBhc3MtdG9nZ2xlOmhvdmVye2NvbG9yOiNmZmZ9XG4udHItZm9ybS1kaXZpZGVye2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjEycHg7bWFyZ2luOjE4cHggMH1cbi50ci1mb3JtLWRpdmlkZXI6OmJlZm9yZSwudHItZm9ybS1kaXZpZGVyOjphZnRlcntjb250ZW50OicnO2ZsZXg6MTtoZWlnaHQ6MXB4O2JhY2tncm91bmQ6cmdiYSgyNTUsMjU1LDI1NSwuMDgpfVxuLnRyLWZvcm0tZGl2aWRlciBzcGFue2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtbW9ubyk7Zm9udC1zaXplOjEwcHg7bGV0dGVyLXNwYWNpbmc6MnB4O2NvbG9yOnJnYmEoMjU1LDI1NSwyNTUsLjIpO3RleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTt3aGl0ZS1zcGFjZTpub3dyYXB9XG4udHItZm9ybS10ZXJtc3tmb250LXNpemU6MTJweDtjb2xvcjpyZ2JhKDI1NSwyNTUsMjU1LC40KTtsaW5lLWhlaWdodDoxLjY7bWFyZ2luLWJvdHRvbToyMHB4fVxuLnRyLWZvcm0tdGVybXMgYXtjb2xvcjp2YXIoLS1hY2NlbnQpO3RleHQtZGVjb3JhdGlvbjpub25lfVxuLnRyLWZvcm0tdGVybXMgYTpob3Zlcnt0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lfVxuLnRyLW1vZGFsLXN1Ym1pdHt3aWR0aDoxMDAlO2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtZGlzcGxheSk7Zm9udC1zaXplOjE5cHg7bGV0dGVyLXNwYWNpbmc6M3B4O2NvbG9yOiMwMDA7Ym9yZGVyOm5vbmU7Y3Vyc29yOnBvaW50ZXI7cGFkZGluZzoxNXB4IDIwcHg7Ym9yZGVyLXJhZGl1czoxMnB4O2JhY2tncm91bmQ6dmFyKC0tZ3JhZCk7dHJhbnNpdGlvbjphbGwgLjI1cztib3gtc2hhZG93OjAgNnB4IDI0cHggcmdiYSh2YXIoLS1hY2NlbnQtcmdiKSwuMyk7Zm9udC13ZWlnaHQ6NDAwfVxuLnRyLW1vZGFsLXN1Ym1pdDpob3Zlcnt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtMnB4KTtib3gtc2hhZG93OjAgMTJweCAzNnB4IHJnYmEodmFyKC0tYWNjZW50LXJnYiksLjQ1KX1cbi50ci1tb2RhbC1sb2dpbnt0ZXh0LWFsaWduOmNlbnRlcjttYXJnaW4tdG9wOjE4cHg7Zm9udC1zaXplOjEzcHg7Y29sb3I6cmdiYSgyNTUsMjU1LDI1NSwuNCl9XG4udHItbW9kYWwtbG9naW4gYXtjb2xvcjp2YXIoLS1hY2NlbnQpO3RleHQtZGVjb3JhdGlvbjpub25lO2ZvbnQtd2VpZ2h0OjYwMH1cbi50ci1tb2RhbC1sb2dpbiBhOmhvdmVye3RleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmV9XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgSE9NRSAoSU5ERVgpIFBBR0VcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLnRyLXRpY2tlcnt3aWR0aDoxMDAlO292ZXJmbG93OmhpZGRlbjtiYWNrZ3JvdW5kOnZhcigtLWJnMik7Ym9yZGVyLXRvcDoxcHggc29saWQgdmFyKC0tYm9yZGVyKTtib3JkZXItYm90dG9tOjFweCBzb2xpZCB2YXIoLS1ib3JkZXIpO3BhZGRpbmc6MTBweCAwO3Bvc2l0aW9uOnJlbGF0aXZlO3otaW5kZXg6MX1cbi50ci10aWNrZXItaW5uZXJ7ZGlzcGxheTpmbGV4O2dhcDo0MHB4O3dpZHRoOm1heC1jb250ZW50O2FuaW1hdGlvbjp0ci10aWNrZXItc2Nyb2xsIDQwcyBsaW5lYXIgaW5maW5pdGV9XG4udHItdGlja2VyLWl0ZW17ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6OHB4O3doaXRlLXNwYWNlOm5vd3JhcDtmb250LWZhbWlseTp2YXIoLS1mb250LW1vbm8pO2ZvbnQtc2l6ZToxMHB4O2xldHRlci1zcGFjaW5nOjFweH1cbi50ci10aWNrZXItc3lte2NvbG9yOnZhcigtLXRleHQyKX1cbi50ci10aWNrZXItdXB7Y29sb3I6dmFyKC0tZ3JlZW4pfVxuLnRyLXRpY2tlci1kbntjb2xvcjp2YXIoLS1yZWQpfVxuLnRyLXRpY2tlci1zZXB7Y29sb3I6dmFyKC0tYm9yZGVyLWgpfVxuQGtleWZyYW1lcyB0ci10aWNrZXItc2Nyb2xse2Zyb217dHJhbnNmb3JtOnRyYW5zbGF0ZVgoMCl9dG97dHJhbnNmb3JtOnRyYW5zbGF0ZVgoLTUwJSl9fVxuLmhwLWhvdy1zdGVwc3tkaXNwbGF5OmdyaWQ7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOnJlcGVhdCg0LDFmcik7Z2FwOjA7cG9zaXRpb246cmVsYXRpdmV9XG4uaHAtaG93LXN0ZXB7dGV4dC1hbGlnbjpjZW50ZXI7cGFkZGluZzowIDE2cHg7cG9zaXRpb246cmVsYXRpdmV9XG4uaHAtaG93LXN0ZXAtbGluZXtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MjdweDtsZWZ0OmNhbGMoNTAlICsgMzhweCk7cmlnaHQ6LTE2cHg7aGVpZ2h0OjFweDtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCg5MGRlZyx2YXIoLS1hY2NlbnQpLHRyYW5zcGFyZW50KX1cbi5ocC1zdGVwLW51bXt3aWR0aDo1NnB4O2hlaWdodDo1NnB4O2JvcmRlci1yYWRpdXM6NTAlO2JhY2tncm91bmQ6dmFyKC0tZ3JhZCk7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtZGlzcGxheSk7Zm9udC1zaXplOjI0cHg7Y29sb3I6IzAwMDttYXJnaW46MCBhdXRvIDE2cHg7cG9zaXRpb246cmVsYXRpdmU7ei1pbmRleDoxO2JveC1zaGFkb3c6MCAwIDIwcHggcmdiYSgxMzksOTIsMjQ2LDAuNCl9XG4uaHAtY2hhbGxlbmdlLWNhcmR7YmFja2dyb3VuZDp2YXIoLS1jYXJkLWJnKTtib3JkZXI6MXB4IHNvbGlkIHZhcigtLWJvcmRlcik7Ym9yZGVyLXJhZGl1czoxOHB4O3BhZGRpbmc6MzJweDtwb3NpdGlvbjpyZWxhdGl2ZTtvdmVyZmxvdzpoaWRkZW47dHJhbnNpdGlvbjpib3JkZXItY29sb3IgLjJzLHRyYW5zZm9ybSAuMnM7aGVpZ2h0OjEwMCV9XG4uaHAtY2hhbGxlbmdlLWNhcmQ6aG92ZXJ7Ym9yZGVyLWNvbG9yOnZhcigtLWJvcmRlci1oKTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtNHB4KX1cbi5ocC1jaGFsbGVuZ2UtY2FyZC5mZWF0dXJlZHtib3JkZXItY29sb3I6dmFyKC0tYm9yZGVyLWgpfVxuLmhwLWNoYWxsZW5nZS1jYXJkLmZlYXR1cmVkOjpiZWZvcmV7Y29udGVudDonJztwb3NpdGlvbjphYnNvbHV0ZTtpbnNldDowO2JhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDE0NWRlZyx2YXIoLS1hY2NlbnQyKSx0cmFuc3BhcmVudCA1MCUpO29wYWNpdHk6LjA2O3BvaW50ZXItZXZlbnRzOm5vbmV9XG4uaHAtb3JiaXQtY29udGFpbmVye3Bvc2l0aW9uOnJlbGF0aXZlO3dpZHRoOjI2MHB4O2hlaWdodDoyNjBweDttYXJnaW46MCBhdXRvfVxuLmhwLW9yYml0LWNlbnRlcntwb3NpdGlvbjphYnNvbHV0ZTt0b3A6NTAlO2xlZnQ6NTAlO3RyYW5zZm9ybTp0cmFuc2xhdGUoLTUwJSwtNTAlKTt3aWR0aDo4NnB4O2hlaWdodDo4NnB4O2JvcmRlci1yYWRpdXM6NTAlO2JhY2tncm91bmQ6dmFyKC0tZ3JhZCk7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtZGlzcGxheSk7Zm9udC1zaXplOjIwcHg7Y29sb3I6IzAwMDtib3gtc2hhZG93OjAgMCA0MHB4IHJnYmEoMTM5LDkyLDI0NiwwLjUpO3otaW5kZXg6Mn1cbi5ocC1vcmJpdC1yaW5ne3Bvc2l0aW9uOmFic29sdXRlO3RvcDo1MCU7bGVmdDo1MCU7Ym9yZGVyOjFweCBkYXNoZWQgdmFyKC0tYm9yZGVyLWgpO2JvcmRlci1yYWRpdXM6NTAlO3RyYW5zZm9ybTp0cmFuc2xhdGUoLTUwJSwtNTAlKX1cbi5ocC1vcmJpdC1yaW5nLTF7d2lkdGg6MTU0cHg7aGVpZ2h0OjE1NHB4O2FuaW1hdGlvbjpocC1vcmJpdC1zcGluIDhzIGxpbmVhciBpbmZpbml0ZX1cbi5ocC1vcmJpdC1yaW5nLTJ7d2lkdGg6MjQwcHg7aGVpZ2h0OjI0MHB4O2FuaW1hdGlvbjpocC1vcmJpdC1zcGluIDE0cyBsaW5lYXIgaW5maW5pdGUgcmV2ZXJzZX1cbi5ocC1vcmJpdC1kb3R7cG9zaXRpb246YWJzb2x1dGU7d2lkdGg6MTBweDtoZWlnaHQ6MTBweDtib3JkZXItcmFkaXVzOjUwJTtiYWNrZ3JvdW5kOnZhcigtLWFjY2VudCk7dG9wOi01cHg7bGVmdDo1MCU7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoLTUwJSk7Ym94LXNoYWRvdzowIDAgOHB4IHZhcigtLWFjY2VudCl9XG5Aa2V5ZnJhbWVzIGhwLW9yYml0LXNwaW57ZnJvbXt0cmFuc2Zvcm06dHJhbnNsYXRlKC01MCUsLTUwJSkgcm90YXRlKDBkZWcpfXRve3RyYW5zZm9ybTp0cmFuc2xhdGUoLTUwJSwtNTAlKSByb3RhdGUoMzYwZGVnKX19XG4uaHAtbGItcm93e2Rpc3BsYXk6Z3JpZDtncmlkLXRlbXBsYXRlLWNvbHVtbnM6MzJweCAxZnIgODBweCA4MHB4O2dhcDoxMnB4O2FsaWduLWl0ZW1zOmNlbnRlcjtwYWRkaW5nOjEwcHggMTRweDtib3JkZXItcmFkaXVzOjEwcHg7YmFja2dyb3VuZDp2YXIoLS13MDUpO2JvcmRlcjoxcHggc29saWQgdmFyKC0tYm9yZGVyKTttYXJnaW4tYm90dG9tOjZweDt0cmFuc2l0aW9uOmJvcmRlci1jb2xvciAuMnN9XG4uaHAtbGItcm93OmhvdmVye2JvcmRlci1jb2xvcjp2YXIoLS1ib3JkZXItaCl9XG4uaHAtbGItcm93LnRvcHtib3JkZXItY29sb3I6dmFyKC0tYm9yZGVyLWgpO2JhY2tncm91bmQ6cmdiYSgxMzksOTIsMjQ2LDAuMDcpfVxuQG1lZGlhKG1heC13aWR0aDo3NjdweCl7XG4gIC5ocC1ob3ctc3RlcHN7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOjFmciAxZnJ9XG4gIC5ocC1ob3ctc3RlcC1saW5le2Rpc3BsYXk6bm9uZX1cbiAgLmhwLW9yYml0LWNvbnRhaW5lcnt3aWR0aDoyMDBweDtoZWlnaHQ6MjAwcHh9XG4gIC5ocC1vcmJpdC1yaW5nLTJ7d2lkdGg6MTg0cHg7aGVpZ2h0OjE4NHB4fVxuICAuaHAtb3JiaXQtY2VudGVye3dpZHRoOjY4cHg7aGVpZ2h0OjY4cHg7Zm9udC1zaXplOjE2cHh9XG59XG5AbWVkaWEobWF4LXdpZHRoOjQ3OXB4KXsuaHAtaG93LXN0ZXBze2dyaWQtdGVtcGxhdGUtY29sdW1uczoxZnJ9fVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIFBMQVRGT1JNIFBBR0VcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLnBsLWhlcm97cGFkZGluZzoxMzBweCAwIDYwcHg7dGV4dC1hbGlnbjpjZW50ZXJ9XG4ucGwtaGVyby10aXRsZXtmb250LWZhbWlseTp2YXIoLS1mb250LWRpc3BsYXkpO2ZvbnQtc2l6ZTpjbGFtcCg2MHB4LDEwdncsMTEwcHgpO2xpbmUtaGVpZ2h0Oi44ODtsZXR0ZXItc3BhY2luZzozcHg7Y29sb3I6dmFyKC0tdGV4dCk7bWFyZ2luLWJvdHRvbToxNnB4fVxuLnBsLWhlcm8tdGl0bGUgZW17Zm9udC1zdHlsZTpub3JtYWw7YmFja2dyb3VuZDp2YXIoLS1ncmFkKTstd2Via2l0LWJhY2tncm91bmQtY2xpcDp0ZXh0Oy13ZWJraXQtdGV4dC1maWxsLWNvbG9yOnRyYW5zcGFyZW50O2JhY2tncm91bmQtY2xpcDp0ZXh0fVxuLnBsLWludHJvLWdyaWR7ZGlzcGxheTpncmlkO2dyaWQtdGVtcGxhdGUtY29sdW1uczoxZnIgMWZyO2dhcDo2NHB4O2FsaWduLWl0ZW1zOnN0YXJ0fVxuLnBsLWludHJvLXF1b3Rle2JhY2tncm91bmQ6dmFyKC0tY2FyZC1iZyk7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1ib3JkZXItaCk7Ym9yZGVyLXJhZGl1czoxNnB4O3BhZGRpbmc6MjhweDtwb3NpdGlvbjpyZWxhdGl2ZTtvdmVyZmxvdzpoaWRkZW47bWFyZ2luLXRvcDoyOHB4fVxuLnBsLWludHJvLXF1b3RlOjpiZWZvcmV7Y29udGVudDonJztwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtsZWZ0OjA7cmlnaHQ6MDtoZWlnaHQ6M3B4O2JhY2tncm91bmQ6dmFyKC0tZ3JhZCl9XG4ucGwtaW50cm8tYmxvY2t7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmZsZXgtc3RhcnQ7Z2FwOjE2cHg7cGFkZGluZzoyMHB4O2JvcmRlci1yYWRpdXM6MTRweDtiYWNrZ3JvdW5kOnZhcigtLXcwNSk7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1ib3JkZXIpO21hcmdpbi1ib3R0b206MTZweDt0cmFuc2l0aW9uOmJvcmRlci1jb2xvciAuMnMsdHJhbnNmb3JtIC4yc31cbi5wbC1pbnRyby1ibG9jazpob3Zlcntib3JkZXItY29sb3I6dmFyKC0tYm9yZGVyLWgpO3RyYW5zZm9ybTp0cmFuc2xhdGVYKDRweCl9XG4ucGwtaW50cm8tYmxvY2staWNvbnt3aWR0aDo0NnB4O2hlaWdodDo0NnB4O2JvcmRlci1yYWRpdXM6MTJweDtiYWNrZ3JvdW5kOnZhcigtLWdyYWQpO2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtmb250LXNpemU6MjBweDtmbGV4LXNocmluazowfVxuLnBsLWludHJvLWJsb2NrLXRpdGxle2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtZGlzcGxheSk7Zm9udC1zaXplOjE5cHg7bGV0dGVyLXNwYWNpbmc6MXB4O2NvbG9yOnZhcigtLXRleHQpO21hcmdpbi1ib3R0b206NnB4fVxuLnBsLWludHJvLWJsb2NrLWRlc2N7Zm9udC1zaXplOjEzcHg7Y29sb3I6dmFyKC0tdGV4dDMpO2xpbmUtaGVpZ2h0OjEuN31cbi5wbC1mZWF0LWdyaWR7ZGlzcGxheTpncmlkO2dyaWQtdGVtcGxhdGUtY29sdW1uczpyZXBlYXQoMywxZnIpO2dhcDoyMHB4fVxuLnBsLWZje2JhY2tncm91bmQ6dmFyKC0tY2FyZC1iZyk7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1ib3JkZXIpO2JvcmRlci1yYWRpdXM6MTZweDtwYWRkaW5nOjI4cHggMjRweDtwb3NpdGlvbjpyZWxhdGl2ZTtvdmVyZmxvdzpoaWRkZW47dHJhbnNpdGlvbjpib3JkZXItY29sb3IgLjJzLHRyYW5zZm9ybSAuMnM7Y3Vyc29yOmRlZmF1bHR9XG4ucGwtZmM6aG92ZXJ7Ym9yZGVyLWNvbG9yOnZhcigtLWJvcmRlci1oKTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtM3B4KX1cbi5wbC1mYy1iYXJ7cG9zaXRpb246YWJzb2x1dGU7Ym90dG9tOjA7bGVmdDowO3JpZ2h0OjA7aGVpZ2h0OjNweDtiYWNrZ3JvdW5kOnZhcigtLWdyYWQpO3RyYW5zZm9ybTpzY2FsZVgoMCk7dHJhbnNmb3JtLW9yaWdpbjpsZWZ0O3RyYW5zaXRpb246dHJhbnNmb3JtIC4zNXMgZWFzZX1cbi5wbC1mYzpob3ZlciAucGwtZmMtYmFye3RyYW5zZm9ybTpzY2FsZVgoMSl9XG4ucGwtZmMtaWNvbnt3aWR0aDo0NHB4O2hlaWdodDo0NHB4O2JvcmRlci1yYWRpdXM6MTJweDtiYWNrZ3JvdW5kOnZhcigtLXcwNSk7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1ib3JkZXIpO2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtmb250LXNpemU6MjBweDttYXJnaW4tYm90dG9tOjE4cHh9XG4ucGwtZmMtbnVte2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtbW9ubyk7Zm9udC1zaXplOjlweDtsZXR0ZXItc3BhY2luZzoycHg7Y29sb3I6dmFyKC0tdGV4dDMpO3RleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTttYXJnaW4tYm90dG9tOjZweH1cbi5wbC1mYy10aXRsZXtmb250LWZhbWlseTp2YXIoLS1mb250LWRpc3BsYXkpO2ZvbnQtc2l6ZToyMHB4O2xldHRlci1zcGFjaW5nOjFweDtjb2xvcjp2YXIoLS10ZXh0KTttYXJnaW4tYm90dG9tOjhweH1cbi5wbC1mYy1kZXNje2ZvbnQtc2l6ZToxMnB4O2NvbG9yOnZhcigtLXRleHQyKTtsaW5lLWhlaWdodDoxLjY7bWFyZ2luLWJvdHRvbToxMHB4fVxuLnBsLWZjLWRldGFpbHtmb250LXNpemU6MTFweDtjb2xvcjp2YXIoLS10ZXh0Myk7bGluZS1oZWlnaHQ6MS42fVxuLnBsLXN0ZXBze2Rpc3BsYXk6Z3JpZDtncmlkLXRlbXBsYXRlLWNvbHVtbnM6cmVwZWF0KDQsMWZyKTtnYXA6MH1cbi5wbC1zdGVwe3RleHQtYWxpZ246Y2VudGVyO3BhZGRpbmc6MCAxOHB4O3Bvc2l0aW9uOnJlbGF0aXZlfVxuLnBsLXN0ZXA6bm90KDpsYXN0LWNoaWxkKTo6YWZ0ZXJ7Y29udGVudDonJztwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MjdweDtsZWZ0OmNhbGMoNTAlICsgMzJweCk7cmlnaHQ6LTE4cHg7aGVpZ2h0OjJweDtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCg5MGRlZyx2YXIoLS1hY2NlbnQpLHRyYW5zcGFyZW50KX1cbi5wbC1zdGVwLW57d2lkdGg6NTZweDtoZWlnaHQ6NTZweDtib3JkZXItcmFkaXVzOjUwJTtkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1kaXNwbGF5KTtmb250LXNpemU6MjJweDtjb2xvcjojZmZmO21hcmdpbjowIGF1dG8gMjBweDtib3JkZXI6MnB4IHNvbGlkO3Bvc2l0aW9uOnJlbGF0aXZlO3otaW5kZXg6MX1cbi5wbC1zdGVwLXRpdGxle2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtZGlzcGxheSk7Zm9udC1zaXplOjE5cHg7bGV0dGVyLXNwYWNpbmc6MXB4O2NvbG9yOnZhcigtLXRleHQpO21hcmdpbi1ib3R0b206MTBweH1cbi5wbC1zdGVwLWRlc2N7Zm9udC1zaXplOjEycHg7Y29sb3I6dmFyKC0tdGV4dDMpO2xpbmUtaGVpZ2h0OjEuOH1cbkBtZWRpYShtYXgtd2lkdGg6OTkxcHgpey5wbC1pbnRyby1ncmlke2dyaWQtdGVtcGxhdGUtY29sdW1uczoxZnI7Z2FwOjQwcHh9fVxuQG1lZGlhKG1heC13aWR0aDo3NjdweCl7XG4gIC5wbC1mZWF0LWdyaWR7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOjFmciAxZnJ9XG4gIC5wbC1zdGVwc3tncmlkLXRlbXBsYXRlLWNvbHVtbnM6MWZyIDFmcn1cbiAgLnBsLXN0ZXA6bm90KDpsYXN0LWNoaWxkKTo6YWZ0ZXJ7ZGlzcGxheTpub25lfVxufVxuQG1lZGlhKG1heC13aWR0aDo0NzlweCl7XG4gIC5wbC1mZWF0LWdyaWR7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOjFmcn1cbiAgLnBsLXN0ZXBze2dyaWQtdGVtcGxhdGUtY29sdW1uczoxZnJ9XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgR0FNSUZJRUQgVFJBRElORyBQQUdFXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi5jaC1oZXJve3BhZGRpbmc6MTMwcHggMCA2MHB4O3RleHQtYWxpZ246Y2VudGVyfVxuLmNoLWhlcm8tdGl0bGV7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1kaXNwbGF5KTtmb250LXNpemU6Y2xhbXAoNTZweCwxMHZ3LDExMHB4KTtsaW5lLWhlaWdodDouODg7bGV0dGVyLXNwYWNpbmc6M3B4O2NvbG9yOnZhcigtLXRleHQpO21hcmdpbi1ib3R0b206MTZweH1cbi5jaC1oZXJvLXRpdGxlIGVte2ZvbnQtc3R5bGU6bm9ybWFsO2JhY2tncm91bmQ6dmFyKC0tZ3JhZCk7LXdlYmtpdC1iYWNrZ3JvdW5kLWNsaXA6dGV4dDstd2Via2l0LXRleHQtZmlsbC1jb2xvcjp0cmFuc3BhcmVudDtiYWNrZ3JvdW5kLWNsaXA6dGV4dH1cbi5jaC1jaGFsLWdyaWR7ZGlzcGxheTpncmlkO2dyaWQtdGVtcGxhdGUtY29sdW1uczoxZnIgMWZyO2dhcDoyNHB4fVxuLmNoLWNhcmR7YmFja2dyb3VuZDp2YXIoLS1jYXJkLWJnKTtib3JkZXI6MXB4IHNvbGlkIHZhcigtLWJvcmRlcik7Ym9yZGVyLXJhZGl1czoyMHB4O3BhZGRpbmc6MzZweDtwb3NpdGlvbjpyZWxhdGl2ZTtvdmVyZmxvdzpoaWRkZW47aGVpZ2h0OjEwMCV9XG4uY2gtY2FyZC5mZWF0dXJlZHtib3JkZXItY29sb3I6dmFyKC0tYm9yZGVyLWgpfVxuLmNoLWNhcmQuZmVhdHVyZWQ6OmJlZm9yZXtjb250ZW50OicnO3Bvc2l0aW9uOmFic29sdXRlO2luc2V0OjA7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMTQ1ZGVnLHZhcigtLWFjY2VudDIpLHRyYW5zcGFyZW50IDUwJSk7b3BhY2l0eTouMDY7cG9pbnRlci1ldmVudHM6bm9uZX1cbi5jaC1jYXJkLXRvcHtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6MDtsZWZ0OjA7cmlnaHQ6MDtoZWlnaHQ6M3B4O2JhY2tncm91bmQ6dmFyKC0tZ3JhZCl9XG4uY2gtY2hlY2t7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6MTBweDtmb250LXNpemU6MTNweDtjb2xvcjp2YXIoLS10ZXh0Mik7bWFyZ2luLWJvdHRvbToxMHB4fVxuLmNoLWNoZWNrIHN2Z3tmbGV4LXNocmluazowfVxuLmNoLWNoZWNrLmRpbXtjb2xvcjp2YXIoLS10ZXh0Myl9XG4uY2gtb3JiLXdyYXB7cG9zaXRpb246cmVsYXRpdmU7d2lkdGg6MjgwcHg7aGVpZ2h0OjI4MHB4O21hcmdpbjowIGF1dG99XG4uY2gtb3JiMXtwb3NpdGlvbjphYnNvbHV0ZTt0b3A6NTAlO2xlZnQ6NTAlO3dpZHRoOjE2MHB4O2hlaWdodDoxNjBweDtib3JkZXI6MXB4IGRhc2hlZCB2YXIoLS1ib3JkZXItaCk7Ym9yZGVyLXJhZGl1czo1MCU7dHJhbnNmb3JtOnRyYW5zbGF0ZSgtNTAlLC01MCUpO2FuaW1hdGlvbjpjaC1zcGluIDhzIGxpbmVhciBpbmZpbml0ZX1cbi5jaC1vcmIye3Bvc2l0aW9uOmFic29sdXRlO3RvcDo1MCU7bGVmdDo1MCU7d2lkdGg6MjYwcHg7aGVpZ2h0OjI2MHB4O2JvcmRlcjoxcHggZGFzaGVkIHZhcigtLWJvcmRlci1oKTtib3JkZXItcmFkaXVzOjUwJTt0cmFuc2Zvcm06dHJhbnNsYXRlKC01MCUsLTUwJSk7YW5pbWF0aW9uOmNoLXNwaW4gMTRzIGxpbmVhciBpbmZpbml0ZSByZXZlcnNlfVxuLmNoLW9yYi1kb3R7cG9zaXRpb246YWJzb2x1dGU7d2lkdGg6MTBweDtoZWlnaHQ6MTBweDtib3JkZXItcmFkaXVzOjUwJTtiYWNrZ3JvdW5kOnZhcigtLWFjY2VudCk7dG9wOi01cHg7bGVmdDo1MCU7dHJhbnNmb3JtOnRyYW5zbGF0ZVgoLTUwJSk7Ym94LXNoYWRvdzowIDAgMTBweCB2YXIoLS1hY2NlbnQpfVxuLmNoLW9yYi1kb3QtZ29sZHtiYWNrZ3JvdW5kOnZhcigtLWdvbGQpO2JveC1zaGFkb3c6MCAwIDEwcHggdmFyKC0tZ29sZCl9XG4uY2gtb3JiLWN7cG9zaXRpb246YWJzb2x1dGU7dG9wOjUwJTtsZWZ0OjUwJTt0cmFuc2Zvcm06dHJhbnNsYXRlKC01MCUsLTUwJSk7d2lkdGg6OTBweDtoZWlnaHQ6OTBweDtib3JkZXItcmFkaXVzOjUwJTtiYWNrZ3JvdW5kOnZhcigtLWdyYWQpO2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47YWxpZ24taXRlbXM6Y2VudGVyO2p1c3RpZnktY29udGVudDpjZW50ZXI7ei1pbmRleDoyO2JveC1zaGFkb3c6MCAwIDQwcHggcmdiYSgxMzksOTIsMjQ2LDAuNSl9XG4uY2gtb3JiLWMtbGFiZWx7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1kaXNwbGF5KTtmb250LXNpemU6MjBweDtjb2xvcjojMDAwO2xldHRlci1zcGFjaW5nOjFweDtsaW5lLWhlaWdodDoxfVxuLmNoLW9yYi1jLXN1Yntmb250LWZhbWlseTp2YXIoLS1mb250LW1vbm8pO2ZvbnQtc2l6ZTo4cHg7bGV0dGVyLXNwYWNpbmc6MnB4O2NvbG9yOnJnYmEoMCwwLDAsMC42KTt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7bWFyZ2luLXRvcDo0cHh9XG4uY2gtdG9rLWdyaWR7ZGlzcGxheTpncmlkO2dyaWQtdGVtcGxhdGUtY29sdW1uczoxZnIgMWZyO2dhcDoxNHB4fVxuLmNoLXRzdGF0e2JhY2tncm91bmQ6dmFyKC0tdzA1KTtib3JkZXI6MXB4IHNvbGlkIHZhcigtLWJvcmRlcik7Ym9yZGVyLXJhZGl1czoxNHB4O3BhZGRpbmc6MjBweDt0ZXh0LWFsaWduOmNlbnRlcjtwb3NpdGlvbjpyZWxhdGl2ZTtvdmVyZmxvdzpoaWRkZW59XG4uY2gtdHN0YXQ6OmJlZm9yZXtjb250ZW50OicnO3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO2xlZnQ6MDtyaWdodDowO2hlaWdodDoycHg7YmFja2dyb3VuZDp2YXIoLS1ncmFkKX1cbi5jaC10c3RhdC12YWx1ZXtmb250LWZhbWlseTp2YXIoLS1mb250LWRpc3BsYXkpO2ZvbnQtc2l6ZToyOHB4O2JhY2tncm91bmQ6dmFyKC0tZ3JhZCk7LXdlYmtpdC1iYWNrZ3JvdW5kLWNsaXA6dGV4dDstd2Via2l0LXRleHQtZmlsbC1jb2xvcjp0cmFuc3BhcmVudDtiYWNrZ3JvdW5kLWNsaXA6dGV4dDttYXJnaW4tYm90dG9tOjRweH1cbi5jaC10c3RhdC1sYWJlbHtmb250LWZhbWlseTp2YXIoLS1mb250LW1vbm8pO2ZvbnQtc2l6ZTo4cHg7bGV0dGVyLXNwYWNpbmc6MnB4O2NvbG9yOnZhcigtLXRleHQzKTt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2V9XG5Aa2V5ZnJhbWVzIGNoLXNwaW57ZnJvbXt0cmFuc2Zvcm06dHJhbnNsYXRlKC01MCUsLTUwJSkgcm90YXRlKDBkZWcpfXRve3RyYW5zZm9ybTp0cmFuc2xhdGUoLTUwJSwtNTAlKSByb3RhdGUoMzYwZGVnKX19XG4uY2gtZ2FtLWdyaWR7ZGlzcGxheTpncmlkO2dyaWQtdGVtcGxhdGUtY29sdW1uczpyZXBlYXQoNCwxZnIpO2dhcDoyMHB4fVxuLmNoLWdje2JhY2tncm91bmQ6dmFyKC0tY2FyZC1iZyk7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1ib3JkZXIpO2JvcmRlci1yYWRpdXM6MTZweDtwYWRkaW5nOjI4cHggMjBweDt0ZXh0LWFsaWduOmNlbnRlcjtwb3NpdGlvbjpyZWxhdGl2ZTtvdmVyZmxvdzpoaWRkZW47dHJhbnNpdGlvbjpib3JkZXItY29sb3IgLjJzLHRyYW5zZm9ybSAuMnM7Y3Vyc29yOmRlZmF1bHR9XG4uY2gtZ2M6aG92ZXJ7Ym9yZGVyLWNvbG9yOnZhcigtLWJvcmRlci1oKTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtNHB4KX1cbi5jaC1nYy1vdmVybGF5e3Bvc2l0aW9uOmFic29sdXRlO2luc2V0OjA7YmFja2dyb3VuZDpsaW5lYXItZ3JhZGllbnQoMTQ1ZGVnLHZhcigtLWFjY2VudDIpLHRyYW5zcGFyZW50KTtvcGFjaXR5OjA7dHJhbnNpdGlvbjpvcGFjaXR5IC4zcztwb2ludGVyLWV2ZW50czpub25lfVxuLmNoLWdjOmhvdmVyIC5jaC1nYy1vdmVybGF5e29wYWNpdHk6LjF9XG4uY2gtbGItcm93e2Rpc3BsYXk6Z3JpZDtncmlkLXRlbXBsYXRlLWNvbHVtbnM6MzJweCAxZnIgNjBweCA4MHB4IDgwcHg7Z2FwOjEwcHg7YWxpZ24taXRlbXM6Y2VudGVyO3BhZGRpbmc6MTBweCAxNHB4O2JvcmRlci1yYWRpdXM6MTBweDtiYWNrZ3JvdW5kOnZhcigtLXcwNSk7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1ib3JkZXIpO21hcmdpbi1ib3R0b206NnB4O3RyYW5zaXRpb246Ym9yZGVyLWNvbG9yIC4yc31cbi5jaC1sYi1yb3c6aG92ZXJ7Ym9yZGVyLWNvbG9yOnZhcigtLWJvcmRlci1oKX1cbi5jaC1sYi1yb3cuZ29sZHtib3JkZXItY29sb3I6cmdiYSgyNDUsMTk3LDI0LDAuNCk7YmFja2dyb3VuZDpyZ2JhKDI0NSwxOTcsMjQsMC4wNil9XG4uY2gtbGItcm93LnNpbHZlcntib3JkZXItY29sb3I6cmdiYSgyMDAsMjAwLDIwMCwwLjMpO2JhY2tncm91bmQ6cmdiYSgyMDAsMjAwLDIwMCwwLjA0KX1cbi5jaC1sYi1yb3cuYnJvbnple2JvcmRlci1jb2xvcjpyZ2JhKDIwNSwxMjcsNTAsMC4zKTtiYWNrZ3JvdW5kOnJnYmEoMjA1LDEyNyw1MCwwLjA0KX1cbi5jaC1sYi1oZWFkZXJ7ZGlzcGxheTpncmlkO2dyaWQtdGVtcGxhdGUtY29sdW1uczozMnB4IDFmciA2MHB4IDgwcHggODBweDtnYXA6MTBweDtwYWRkaW5nOjZweCAxNHB4O21hcmdpbi1ib3R0b206NnB4fVxuLmNoLWxiLXRyYWRlc3tmb250LWZhbWlseTp2YXIoLS1mb250LW1vbm8pO2ZvbnQtc2l6ZToxMXB4O2NvbG9yOnZhcigtLXRleHQyKX1cbi5jaC1sYi1zaWx2ZXJ7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1kaXNwbGF5KTtmb250LXNpemU6MTZweDtjb2xvcjojQzBDMEMwfVxuLmNoLWxiLWJyb256ZXtmb250LWZhbWlseTp2YXIoLS1mb250LWRpc3BsYXkpO2ZvbnQtc2l6ZToxNnB4O2NvbG9yOiNDRDdGMzJ9XG4uY2gtY2VydHtiYWNrZ3JvdW5kOnZhcigtLWNhcmQtYmcpO2JvcmRlcjoxcHggc29saWQgdmFyKC0tYm9yZGVyLWgpO2JvcmRlci1yYWRpdXM6MjBweDtwYWRkaW5nOjMwcHg7cG9zaXRpb246cmVsYXRpdmU7b3ZlcmZsb3c6aGlkZGVufVxuLmNoLWNlcnQ6OmJlZm9yZXtjb250ZW50OicnO3Bvc2l0aW9uOmFic29sdXRlO3RvcDowO2xlZnQ6MDtyaWdodDowO2hlaWdodDozcHg7YmFja2dyb3VuZDp2YXIoLS1ncmFkKX1cbi5jaC1jZXJ0LWJhZGdle2Rpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDo2cHg7cGFkZGluZzo1cHggMTJweDtib3JkZXItcmFkaXVzOjIwcHg7YmFja2dyb3VuZDpyZ2JhKDM0LDE5Nyw5NCwwLjEyKTtib3JkZXI6MXB4IHNvbGlkIHJnYmEoMzQsMTk3LDk0LDAuMyk7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1tb25vKTtmb250LXNpemU6OXB4O2xldHRlci1zcGFjaW5nOjJweDt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7Y29sb3I6dmFyKC0tZ3JlZW4pfVxuLmNoLWNlcnQtbGFiZWx7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1tb25vKTtmb250LXNpemU6OXB4O2xldHRlci1zcGFjaW5nOjNweDt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7Y29sb3I6dmFyKC0tdGV4dDMpO21hcmdpbi1ib3R0b206MjBweH1cbi5jaC1jZXJ0LWRhdGV7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1tb25vKTtmb250LXNpemU6MTBweDtsZXR0ZXItc3BhY2luZzoycHg7Y29sb3I6dmFyKC0tdGV4dDMpO3RleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTttYXJnaW4tYm90dG9tOjEwcHh9XG4uY2gtY2VydC10cmFkZXJ7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1kaXNwbGF5KTtmb250LXNpemU6MjhweDtsZXR0ZXItc3BhY2luZzoycHg7Y29sb3I6dmFyKC0tdGV4dCk7bWFyZ2luLWJvdHRvbTo2cHh9XG4uY2gtY2VydC1hbW91bnR7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1kaXNwbGF5KTtmb250LXNpemU6NTZweDtsZXR0ZXItc3BhY2luZzoxcHg7YmFja2dyb3VuZDp2YXIoLS1ncmFkKTstd2Via2l0LWJhY2tncm91bmQtY2xpcDp0ZXh0Oy13ZWJraXQtdGV4dC1maWxsLWNvbG9yOnRyYW5zcGFyZW50O2JhY2tncm91bmQtY2xpcDp0ZXh0O2xpbmUtaGVpZ2h0OjE7bWFyZ2luLWJvdHRvbToxNnB4fVxuLmNoLWNlcnQtbWV0YXtkaXNwbGF5OmdyaWQ7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOjFmciAxZnIgMWZyO2dhcDoxMHB4O3BhZGRpbmctdG9wOjE4cHg7Ym9yZGVyLXRvcDoxcHggc29saWQgdmFyKC0tYm9yZGVyKTttYXJnaW4tYm90dG9tOjIwcHh9XG4uY2gtY2VydC1tZXRhLWl0ZW17dGV4dC1hbGlnbjpjZW50ZXJ9XG4uY2gtY2VydC1tZXRhLWxhYmVse2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtbW9ubyk7Zm9udC1zaXplOjhweDtsZXR0ZXItc3BhY2luZzoxLjVweDtjb2xvcjp2YXIoLS10ZXh0Myk7dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO21hcmdpbi1ib3R0b206NHB4fVxuLmNoLWNlcnQtbWV0YS12YWx1ZXtmb250LWZhbWlseTp2YXIoLS1mb250LWRpc3BsYXkpO2ZvbnQtc2l6ZToxNHB4O2xldHRlci1zcGFjaW5nOjFweDtjb2xvcjp2YXIoLS10ZXh0KX1cbi5jaC1jZXJ0LW1ldGEtdmFsdWUuZ3JlZW57Y29sb3I6dmFyKC0tZ3JlZW4pfVxuLmNoLWNlcnQtc3RhdHN7ZGlzcGxheTpncmlkO2dyaWQtdGVtcGxhdGUtY29sdW1uczoxZnIgMWZyIDFmcjtnYXA6MTBweDtwYWRkaW5nLXRvcDoxNnB4O2JvcmRlci10b3A6MXB4IHNvbGlkIHZhcigtLWJvcmRlcik7bWFyZ2luLWJvdHRvbToyMnB4O3RleHQtYWxpZ246Y2VudGVyfVxuLmNoLWNlcnQtc3RhdC12YWx1ZXtmb250LWZhbWlseTp2YXIoLS1mb250LWRpc3BsYXkpO2ZvbnQtc2l6ZToyMnB4O2JhY2tncm91bmQ6dmFyKC0tZ3JhZCk7LXdlYmtpdC1iYWNrZ3JvdW5kLWNsaXA6dGV4dDstd2Via2l0LXRleHQtZmlsbC1jb2xvcjp0cmFuc3BhcmVudDtiYWNrZ3JvdW5kLWNsaXA6dGV4dH1cbi5jaC1jZXJ0LXN0YXQtbGFiZWx7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1tb25vKTtmb250LXNpemU6OHB4O2xldHRlci1zcGFjaW5nOjEuNXB4O2NvbG9yOnZhcigtLXRleHQzKTt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7bWFyZ2luLXRvcDoycHh9XG5AbWVkaWEobWF4LXdpZHRoOjk5MXB4KXtcbiAgLmNoLWNoYWwtZ3JpZHtncmlkLXRlbXBsYXRlLWNvbHVtbnM6MWZyfVxuICAuY2gtZ2FtLWdyaWR7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOjFmciAxZnJ9XG4gIC5jaC1sYi1yb3csLmNoLWxiLWhlYWRlcntncmlkLXRlbXBsYXRlLWNvbHVtbnM6MjhweCAxZnIgNjBweCA3MHB4O2ZvbnQtc2l6ZToxMXB4fVxuICAuY2gtbGItcm93IC5jb2wtdHJhZGVze2Rpc3BsYXk6bm9uZX1cbn1cbkBtZWRpYShtYXgtd2lkdGg6NzY3cHgpe1xuICAuY2gtZ2FtLWdyaWR7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOjFmciAxZnJ9XG4gIC5jaC1vcmItd3JhcHt3aWR0aDoyMjBweDtoZWlnaHQ6MjIwcHh9XG4gIC5jaC1vcmIye3dpZHRoOjIxMHB4O2hlaWdodDoyMTBweH1cbn1cbkBtZWRpYShtYXgtd2lkdGg6NDc5cHgpey5jaC1nYW0tZ3JpZHtncmlkLXRlbXBsYXRlLWNvbHVtbnM6MWZyfX1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBQQVJUTkVSU0hJUFMgUEFHRVxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4uYWYtaGVyb3twYWRkaW5nOjEzMHB4IDAgODBweDt0ZXh0LWFsaWduOmNlbnRlcn1cbi5hZi1oZXJvLXRpdGxle2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtZGlzcGxheSk7Zm9udC1zaXplOmNsYW1wKDU4cHgsMTB2dywxMTBweCk7bGluZS1oZWlnaHQ6Ljg4O2xldHRlci1zcGFjaW5nOjNweDtjb2xvcjp2YXIoLS10ZXh0KTttYXJnaW4tYm90dG9tOjE2cHh9XG4uYWYtaGVyby10aXRsZSBlbXtmb250LXN0eWxlOm5vcm1hbDtiYWNrZ3JvdW5kOnZhcigtLWdyYWQpOy13ZWJraXQtYmFja2dyb3VuZC1jbGlwOnRleHQ7LXdlYmtpdC10ZXh0LWZpbGwtY29sb3I6dHJhbnNwYXJlbnQ7YmFja2dyb3VuZC1jbGlwOnRleHR9XG4uYWYtc3RlcC10aXRsZXtmb250LWZhbWlseTp2YXIoLS1mb250LWRpc3BsYXkpO2ZvbnQtc2l6ZToyMHB4O2xldHRlci1zcGFjaW5nOjFweDtjb2xvcjp2YXIoLS10ZXh0KTttYXJnaW4tYm90dG9tOjEwcHh9XG4uYWYtc3RlcC1kZXNje2ZvbnQtc2l6ZToxM3B4O2NvbG9yOnZhcigtLXRleHQzKTtsaW5lLWhlaWdodDoxLjh9XG4uYWYtdGllci1oZWFkZXJ7ZGlzcGxheTpmbGV4O2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVuO2FsaWduLWl0ZW1zOmZsZXgtc3RhcnQ7bWFyZ2luLWJvdHRvbToyMHB4fVxuLmFmLXRpZXItbGFiZWx7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1tb25vKTtmb250LXNpemU6OXB4O2xldHRlci1zcGFjaW5nOjJweDt0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7Y29sb3I6dmFyKC0tdGV4dDMpO21hcmdpbi1ib3R0b206OHB4fVxuLmFmLXRpZXItbGFiZWwtYWNjZW50e2NvbG9yOnZhcigtLWFjY2VudCl9XG4uYWYtdGllci1yYXRle2ZvbnQtZmFtaWx5OnZhcigtLWZvbnQtZGlzcGxheSk7Zm9udC1zaXplOjUwcHg7bGV0dGVyLXNwYWNpbmc6MXB4O2JhY2tncm91bmQ6dmFyKC0tZ3JhZCk7LXdlYmtpdC1iYWNrZ3JvdW5kLWNsaXA6dGV4dDstd2Via2l0LXRleHQtZmlsbC1jb2xvcjp0cmFuc3BhcmVudDtiYWNrZ3JvdW5kLWNsaXA6dGV4dDtsaW5lLWhlaWdodDoxfVxuLmFmLXRpZXItcmF0ZS1zdWJ7Zm9udC1mYW1pbHk6dmFyKC0tZm9udC1tb25vKTtmb250LXNpemU6OXB4O2xldHRlci1zcGFjaW5nOjFweDtjb2xvcjp2YXIoLS10ZXh0Myk7bWFyZ2luLXRvcDo2cHh9XG4uYWYtdGllci1kZXNje2ZvbnQtc2l6ZToxM3B4O2NvbG9yOnZhcigtLXRleHQyKTtsaW5lLWhlaWdodDoxLjc7bWFyZ2luLWJvdHRvbToyNHB4fVxuLmFmLXRpZXItY2hlY2tze21hcmdpbi1ib3R0b206MjhweH1cbi5hZi10aWVyLWJ0bnt3aWR0aDoxMDAlO2Rpc3BsYXk6YmxvY2s7dGV4dC1hbGlnbjpjZW50ZXI7cGFkZGluZzoxMnB4IDIwcHg7dGV4dC1kZWNvcmF0aW9uOm5vbmV9XG4uYWYtY3RhLXNlY3Rpb257cGFkZGluZzoxMDBweCAwO2JhY2tncm91bmQ6dmFyKC0tYmcyKTt0ZXh0LWFsaWduOmNlbnRlcjtwb3NpdGlvbjpyZWxhdGl2ZTtvdmVyZmxvdzpoaWRkZW59XG4uYWYtdGllci1ncmlke2Rpc3BsYXk6Z3JpZDtncmlkLXRlbXBsYXRlLWNvbHVtbnM6cmVwZWF0KDMsMWZyKTtnYXA6MjBweH1cbi5hZi10aWVye2JhY2tncm91bmQ6dmFyKC0tY2FyZC1iZyk7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1ib3JkZXIpO2JvcmRlci1yYWRpdXM6MjBweDtwYWRkaW5nOjMycHg7cG9zaXRpb246cmVsYXRpdmU7b3ZlcmZsb3c6aGlkZGVuO2hlaWdodDoxMDAlO3RyYW5zaXRpb246Ym9yZGVyLWNvbG9yIC4ycyx0cmFuc2Zvcm0gLjJzfVxuLmFmLXRpZXI6aG92ZXJ7Ym9yZGVyLWNvbG9yOnZhcigtLWJvcmRlci1oKTt0cmFuc2Zvcm06dHJhbnNsYXRlWSgtNHB4KX1cbi5hZi10aWVyLmZlYXR1cmVke2JvcmRlci1jb2xvcjp2YXIoLS1ib3JkZXItaCl9XG4uYWYtdGllci10b3B7cG9zaXRpb246YWJzb2x1dGU7dG9wOjA7bGVmdDowO3JpZ2h0OjA7aGVpZ2h0OjNweDtiYWNrZ3JvdW5kOnZhcigtLWdyYWQpfVxuLmFmLWNoZWNre2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7Z2FwOjEwcHg7Zm9udC1zaXplOjEzcHg7Y29sb3I6dmFyKC0tdGV4dDIpO21hcmdpbi1ib3R0b206MTBweH1cbi5hZi1jaGVjayBzdmd7ZmxleC1zaHJpbms6MH1cbi5hZi1zdGVwc3tkaXNwbGF5OmdyaWQ7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOnJlcGVhdCgzLDFmcik7Z2FwOjIwcHh9XG4uYWYtc3RlcHt0ZXh0LWFsaWduOmNlbnRlcjtwYWRkaW5nOjMycHggMjBweDtiYWNrZ3JvdW5kOnZhcigtLXcwNSk7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1ib3JkZXIpO2JvcmRlci1yYWRpdXM6MTZweDtwb3NpdGlvbjpyZWxhdGl2ZX1cbi5hZi1zdGVwLW57d2lkdGg6NTJweDtoZWlnaHQ6NTJweDtib3JkZXItcmFkaXVzOjUwJTtiYWNrZ3JvdW5kOnZhcigtLWdyYWQpO2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OmNlbnRlcjtmb250LWZhbWlseTp2YXIoLS1mb250LWRpc3BsYXkpO2ZvbnQtc2l6ZToyMnB4O2NvbG9yOiMwMDA7bWFyZ2luOjAgYXV0byAxOHB4fVxuLmFmLXN0YXR7dGV4dC1hbGlnbjpjZW50ZXI7cGFkZGluZzoyMHB4O2JvcmRlci1yaWdodDoxcHggc29saWQgdmFyKC0tYm9yZGVyKX1cbi5hZi1zdGF0Omxhc3QtY2hpbGR7Ym9yZGVyLXJpZ2h0Om5vbmV9XG5AbWVkaWEobWF4LXdpZHRoOjk5MXB4KXsuYWYtdGllci1ncmlke2dyaWQtdGVtcGxhdGUtY29sdW1uczoxZnJ9fVxuQG1lZGlhKG1heC13aWR0aDo3NjdweCl7LmFmLXN0ZXBze2dyaWQtdGVtcGxhdGUtY29sdW1uczoxZnJ9fVxuXG4vKiBSRVNQT05TSVZFIOKAlCBtYXJrZXRpbmcgd2lkZ2V0cyAqL1xuQG1lZGlhKG1heC13aWR0aDo5MDBweCl7XG4gIC5pbnRyby1ncmlkLC5ob3ctaW50cm8sLmNoYWwtaW50cm8sLnRvay1sYXlvdXQsLmdhbS1pbnRybywuc3AtbGF5b3V0LC5mdHtncmlkLXRlbXBsYXRlLWNvbHVtbnM6MWZyO2dhcDo0MHB4fVxuICAuZmVhdC1ncmlkLC5nYW0tZ3JpZHtncmlkLXRlbXBsYXRlLWNvbHVtbnM6MWZyIDFmcn1cbiAgLnN0ZXBze2dyaWQtdGVtcGxhdGUtY29sdW1uczoxZnIgMWZyO2dhcDozMnB4fVxuICAuc3RlcHM6OmJlZm9yZXtkaXNwbGF5Om5vbmV9XG4gIC5jaGFsLWdyaWR7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOjFmcn1cbiAgLnRyLWZvcm0tcm93e2dyaWQtdGVtcGxhdGUtY29sdW1uczoxZnJ9XG4gIC5wYXlvdXQtc3RhdHN7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOjFmciAxZnJ9XG59XG5AbWVkaWEobWF4LXdpZHRoOjYwMHB4KXtcbiAgLmhlcm8taDF7Zm9udC1zaXplOmNsYW1wKDYwcHgsMTV2dywxMDBweCl9XG4gIC5zaDJ7Zm9udC1zaXplOmNsYW1wKDQwcHgsMTB2dyw2MHB4KX1cbiAgLnNlY3twYWRkaW5nOjcwcHggMjBweH1cbiAgLmNje3BhZGRpbmc6MjhweCAyMnB4fVxuICAuaGVyby1zdGF0c3tmbGV4LWRpcmVjdGlvbjpjb2x1bW47Ym9yZGVyLXJhZGl1czowfVxuICAuaHN0YXR7Ym9yZGVyLXJpZ2h0Om5vbmU7Ym9yZGVyLWJvdHRvbToxcHggc29saWQgcmdiYSgyNTUsMjU1LDI1NSwuMDgpfVxuICAuaHN0YXQ6bGFzdC1jaGlsZHtib3JkZXItYm90dG9tOm5vbmV9XG4gIC5mZWF0LWdyaWQsLmdhbS1ncmlke2dyaWQtdGVtcGxhdGUtY29sdW1uczoxZnJ9XG4gIC5mdHtncmlkLXRlbXBsYXRlLWNvbHVtbnM6MWZyIDFmcn1cbn1cblxuIiwiLy8g4pSA4pSAIF9jb21tb24uc2NzcyDigJQgVHJhZGFudGUgc2hhcmVkIHRoZW1lIHN5c3RlbSDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcbi8vICAgIEltcG9ydGVkIGJ5IGFwcC5zY3NzIGFuZCBwdWJsaWMuc2Nzcy5cbi8vICAgIERlZmluZXMgZm9udCB2YXJzICsgMyBmdWxsIHRoZW1lcyAodmlvbGV0IC8gYmxhY2sgLyBibHVlKS5cbi8vICAgIEVhY2ggdGhlbWUgc2V0cyBib3RoIC0tYWNjZW50IChwdWJsaWMpIGFuZCAtLWFwcC1hY2NlbnQgKGFwcCkgZmFtaWxpZXMuXG4vLyDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcblxuLy8gRm9udCB2YXJzIOKAlCBpZGVudGljYWwgaW4gYm90aCBzeXN0ZW1zXG46cm9vdCB7XG4gIC0tZm9udC1kaXNwbGF5OiAnQmViYXMgTmV1ZScsIHNhbnMtc2VyaWY7XG4gIC0tZm9udC1tb25vOiAgICAnSUJNIFBsZXggTW9ubycsIG1vbm9zcGFjZTtcbiAgLS1mb250LWJvZHk6ICAgICdTcGFjZSBHcm90ZXNrJywgc2Fucy1zZXJpZjtcbn1cblxuLy8g4pSA4pSAIFZJT0xFVCDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcbmh0bWxbZGF0YS10aGVtZT1cInZpb2xldFwiXSB7XG4gIC8vIFB1YmxpYyBuYW1pbmdcbiAgLS1iZzogICAgICAgICAjMEEwNDE0O1xuICAtLWJnMjogICAgICAgICMwRTA4MjA7XG4gIC0tYmczOiAgICAgICAgIzEzMEMyODtcbiAgLS1iZzQ6ICAgICAgICAjMUExMDM1O1xuICAtLWFjY2VudDogICAgICM4QjVDRjY7XG4gIC0tYWNjZW50MjogICAgIzZEMjhEOTtcbiAgLS1hY2NlbnQzOiAgICAjQTc4QkZBO1xuICAtLWdyYWQ6ICAgICAgIGxpbmVhci1ncmFkaWVudCgxMzVkZWcsICM0QzFEOTUgMCUsICM3QzNBRUQgNDUlLCAjQTc4QkZBIDEwMCUpO1xuICAtLWJvcmRlcjogICAgIHJnYmEoMjU1LDI1NSwyNTUsMC4wNyk7XG4gIC0tYm9yZGVyLWg6ICAgcmdiYSgxMzksOTIsMjQ2LDAuNCk7XG4gIC0tdGV4dDogICAgICAgI0YwRjBGNDtcbiAgLS10ZXh0MjogICAgICByZ2JhKDI0MCwyNDAsMjQ0LDAuNik7XG4gIC0tdGV4dDM6ICAgICAgcmdiYSgyNDAsMjQwLDI0NCwwLjMpO1xuICAtLWJhZGdlOiAgICAgIHJnYmEoMTM5LDkyLDI0NiwwLjEpO1xuICAtLWdsb3cxOiAgICAgIHJnYmEoMTM5LDkyLDI0NiwwLjI4KTtcbiAgLS1nbG93MjogICAgICByZ2JhKDEwOSw0MCwyMTcsMC4xOCk7XG4gIC8vIEFwcCBuYW1pbmdcbiAgLS1hY2NlbnQtcmdiOiAgIDEzOSwgOTIsIDI0NjtcbiAgLS1hcHAtYmc6ICAgICAgICMwOTA5MTE7XG4gIC0tYXBwLXN1cmZhY2U6ICAjMGYwZjFhO1xuICAtLWFwcC1zdXJmYWNlMjogIzE0MTQyMTtcbiAgLS1hcHAtc3VyZmFjZTM6ICMxYTFhMmU7XG4gIC0tYXBwLWFjY2VudDogICAjOEI1Q0Y2O1xuICAtLWFwcC1hY2NlbnQyOiAgIzdDM0FFRDtcbiAgLS1hcHAtYWNjZW50MzogICNBNzhCRkE7XG4gIC0tYXBwLWdyYWQ6ICAgICBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCAjOEI1Q0Y2LCAjQTc4QkZBKTtcbiAgLS1hcHAtYm9yZGVyOiAgIHJnYmEoMjU1LDI1NSwyNTUsMC4wNyk7XG4gIC0tYXBwLWJvcmRlci1oOiByZ2JhKDEzOSw5MiwyNDYsMC4zNSk7XG4gIC0tYXBwLXRleHQ6ICAgICByZ2JhKDI1NSwyNTUsMjU1LDAuOTIpO1xuICAtLWFwcC10ZXh0MjogICAgcmdiYSgyNTUsMjU1LDI1NSwwLjU1KTtcbiAgLS1hcHAtdGV4dDM6ICAgIHJnYmEoMjU1LDI1NSwyNTUsMC4yOCk7XG59XG5cbi8vIOKUgOKUgCBCTEFDSyAobWFnZW50YSBhY2NlbnQpIOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgOKUgFxuaHRtbFtkYXRhLXRoZW1lPVwiYmxhY2tcIl0ge1xuICAvLyBQdWJsaWMgbmFtaW5nXG4gIC0tYmc6ICAgICAgICAgIzA0MDQwQTtcbiAgLS1iZzI6ICAgICAgICAjMDgwNjBFO1xuICAtLWJnMzogICAgICAgICMwRDBBMTg7XG4gIC0tYmc0OiAgICAgICAgIzEyMEUyMjtcbiAgLS1hY2NlbnQ6ICAgICAjRDkxQUFEO1xuICAtLWFjY2VudDI6ICAgICM4QzBGNzA7XG4gIC0tYWNjZW50MzogICAgI0U4M0RDMDtcbiAgLS1ncmFkOiAgICAgICBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCAjNUMwQTQ4IDAlLCAjOUIwRjdBIDQwJSwgI0Q5MUFBRCA3NSUsICNFODNEQzAgMTAwJSk7XG4gIC0tYm9yZGVyOiAgICAgcmdiYSgyNTUsMjU1LDI1NSwwLjA3KTtcbiAgLS1ib3JkZXItaDogICByZ2JhKDIxNywyNiwxNzMsMC40NSk7XG4gIC0tdGV4dDogICAgICAgI0YwRjBGNDtcbiAgLS10ZXh0MjogICAgICByZ2JhKDI0MCwyNDAsMjQ0LDAuNik7XG4gIC0tdGV4dDM6ICAgICAgcmdiYSgyNDAsMjQwLDI0NCwwLjMpO1xuICAtLWJhZGdlOiAgICAgIHJnYmEoMjE3LDI2LDE3MywwLjEpO1xuICAtLWdsb3cxOiAgICAgIHJnYmEoMjE3LDI2LDE3MywwLjIyKTtcbiAgLS1nbG93MjogICAgICByZ2JhKDE0MCwxNSwxMTIsMC4xOCk7XG4gIC0tYWNjZW50LXJnYjogICAyMTcsIDI2LCAxNzM7XG4gIC8vIEFwcCBuYW1pbmdcbiAgLS1hcHAtYmc6ICAgICAgICMwNDA0MEE7XG4gIC0tYXBwLXN1cmZhY2U6ICAjMDgwNjBFO1xuICAtLWFwcC1zdXJmYWNlMjogIzBEMEExODtcbiAgLS1hcHAtc3VyZmFjZTM6ICMxMjBFMjI7XG4gIC0tYXBwLWFjY2VudDogICAjRDkxQUFEO1xuICAtLWFwcC1hY2NlbnQyOiAgIzhDMEY3MDtcbiAgLS1hcHAtYWNjZW50MzogICNFODNEQzA7XG4gIC0tYXBwLWdyYWQ6ICAgICBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCAjRDkxQUFELCAjRTgzREMwKTtcbiAgLS1hcHAtYm9yZGVyOiAgIHJnYmEoMjU1LDI1NSwyNTUsMC4wNyk7XG4gIC0tYXBwLWJvcmRlci1oOiByZ2JhKDIxNywyNiwxNzMsMC4zNSk7XG4gIC0tYXBwLXRleHQ6ICAgICByZ2JhKDI1NSwyNTUsMjU1LDAuOTIpO1xuICAtLWFwcC10ZXh0MjogICAgcmdiYSgyNTUsMjU1LDI1NSwwLjU1KTtcbiAgLS1hcHAtdGV4dDM6ICAgIHJnYmEoMjU1LDI1NSwyNTUsMC4yOCk7XG59XG5cbi8vIOKUgOKUgCBCTFVFIChuYXZ54oCTc2t5KSDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIDilIBcbmh0bWxbZGF0YS10aGVtZT1cImJsdWVcIl0ge1xuICAvLyBQdWJsaWMgbmFtaW5nXG4gIC0tYmc6ICAgICAgICAgIzBEMTAyMDtcbiAgLS1iZzI6ICAgICAgICAjMTIxNTI1O1xuICAtLWJnMzogICAgICAgICMxNzE5MkU7XG4gIC0tYmc0OiAgICAgICAgIzFDMUYzODtcbiAgLS1hY2NlbnQ6ICAgICAjNEY4RUY3O1xuICAtLWFjY2VudDI6ICAgICMxQTU2REI7XG4gIC0tYWNjZW50MzogICAgIzkzQkJGRDtcbiAgLS1ncmFkOiAgICAgICBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCAjMUEzQThGIDAlLCAjMUE1NkRCIDQwJSwgIzRGOEVGNyA3NSUsICM5M0JCRkQgMTAwJSk7XG4gIC0tYm9yZGVyOiAgICAgcmdiYSgyNTUsMjU1LDI1NSwwLjA3KTtcbiAgLS1ib3JkZXItaDogICByZ2JhKDc5LDE0MiwyNDcsMC40NSk7XG4gIC0tdGV4dDogICAgICAgI0YwRjBGNDtcbiAgLS10ZXh0MjogICAgICByZ2JhKDI0MCwyNDAsMjQ0LDAuNik7XG4gIC0tdGV4dDM6ICAgICAgcmdiYSgyNDAsMjQwLDI0NCwwLjMpO1xuICAtLWJhZGdlOiAgICAgIHJnYmEoNzksMTQyLDI0NywwLjEpO1xuICAtLWdsb3cxOiAgICAgIHJnYmEoNzksMTQyLDI0NywwLjIpO1xuICAtLWdsb3cyOiAgICAgIHJnYmEoMjYsODYsMjE5LDAuMTQpO1xuICAtLWFjY2VudC1yZ2I6ICAgNzksIDE0MiwgMjQ3O1xuICAvLyBBcHAgbmFtaW5nXG4gIC0tYXBwLWJnOiAgICAgICAjMEQxMDIwO1xuICAtLWFwcC1zdXJmYWNlOiAgIzEyMTUyNTtcbiAgLS1hcHAtc3VyZmFjZTI6ICMxNzE5MkU7XG4gIC0tYXBwLXN1cmZhY2UzOiAjMUMxRjM4O1xuICAtLWFwcC1hY2NlbnQ6ICAgIzRGOEVGNztcbiAgLS1hcHAtYWNjZW50MjogICMxQTU2REI7XG4gIC0tYXBwLWFjY2VudDM6ICAjOTNCQkZEO1xuICAtLWFwcC1ncmFkOiAgICAgbGluZWFyLWdyYWRpZW50KDEzNWRlZywgIzRGOEVGNywgIzkzQkJGRCk7XG4gIC0tYXBwLWJvcmRlcjogICByZ2JhKDI1NSwyNTUsMjU1LDAuMDcpO1xuICAtLWFwcC1ib3JkZXItaDogcmdiYSg3OSwxNDIsMjQ3LDAuMzUpO1xuICAtLWFwcC10ZXh0OiAgICAgcmdiYSgyNTUsMjU1LDI1NSwwLjkyKTtcbiAgLS1hcHAtdGV4dDI6ICAgIHJnYmEoMjU1LDI1NSwyNTUsMC41NSk7XG4gIC0tYXBwLXRleHQzOiAgICByZ2JhKDI1NSwyNTUsMjU1LDAuMjgpO1xufVxuIl19 */
