@import url(https://fonts.googleapis.com/css2?family=Outfit:wght@300..800&family=Plus+Jakarta+Sans:ital,wght@0,200..800;1,200..800&family=Space+Mono:wght@400;700&display=swap);
/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */
:root {
  --ocean-50: #E6F1FC;
  --ocean-100: #CAE0FF;
  --ocean-200: #A2CBED;
  --ocean-300: #91BFED;
  --ocean-400: #3D84F6;
  --ocean-500: #2972E0;
  --ocean-600: #1A5BBA;
  --ocean-700: #1B4C93;
  --ocean-800: #21529D;
  --ocean-900: #1E4784;
  --ocean-950: #143A66;
  --ink-900: #21284C;
  --ink-800: #2C3259;
  --ink-700: #343C6B;
  --ink-600: #3C4276;
  --slate-0: #FFFFFF;
  --slate-25: #FBFCFE;
  --slate-50: #F5F8FC;
  --slate-100: #EDF2F9;
  --slate-200: #E1E8F2;
  --slate-300: #CBD5E5;
  --slate-400: #98A5BD;
  --slate-500: #6E7C96;
  --slate-600: #54617A;
  --slate-700: #3E4A61;
  --lagoon-50: #E9FAFF;
  --lagoon-200: #6ECEEF;
  --lagoon-300: #56BFDB;
  --lagoon-500: #2A9BAD;
  --lagoon-700: #1C7080;
  --coral-100: #F9C8B7;
  --coral-200: #EAAFA2;
  --coral-300: #DB958D;
  --coral-500: #EC595C;
  --coral-700: #BF2239;
  --amber-100: #EFDE95;
  --amber-300: #D3B742;
  --amber-500: #C98B33;
  --amber-700: #8F5E17;
  --ember-500: #F96701;
  --ember-700: #C14E00;
  --crest-red: #F5401A;
  --crest-green: #009A5B;
  --crest-gold: #D89A3E;
  --text-strong: var(--ink-900);
  --text-body: var(--slate-700);
  --text-muted: var(--slate-500);
  --text-subtle: var(--slate-400);
  --text-link: var(--ocean-600);
  --text-link-hover: var(--ocean-800);
  --text-on-primary: #FFFFFF;
  --text-inverse: #FFFFFF;
  --surface-page: #FFFFFF;
  --surface-sunken: var(--slate-50);
  --surface-card: #FFFFFF;
  --surface-raised: #FFFFFF;
  --surface-tint: var(--ocean-50);
  --surface-inverse: var(--ink-900);
  --surface-hover: var(--slate-50);
  --surface-active: var(--slate-100);
  --border-hairline: var(--slate-200);
  --border-default: var(--slate-300);
  --border-strong: var(--slate-400);
  --border-tint: var(--ocean-100);
  --border-focus: var(--ocean-400);
  --action-primary: var(--ocean-600);
  --action-primary-hover: var(--ocean-700);
  --action-primary-active: var(--ocean-900);
  --action-secondary: var(--ocean-50);
  --action-secondary-hover: var(--ocean-100);
  --action-accent: var(--coral-500);
  --action-accent-hover: #D8474A;
  --status-success: #0E8A57;
  --status-success-bg: #E4F6EE;
  --status-success-border: #A9E0C8;
  --status-warning: var(--ember-500);
  --status-warning-bg: #FFF0E4;
  --status-warning-border: #FFCFA6;
  --status-danger: var(--coral-700);
  --status-danger-bg: #FDECEF;
  --status-danger-border: #F6BFC8;
  --status-info: var(--ocean-500);
  --status-info-bg: var(--ocean-50);
  --status-info-border: var(--ocean-100);
  --status-accredited: var(--amber-500);
  --status-accredited-bg: #FBF3E2;
  --status-accredited-border: #EAD6A6;
  --focus-ring: 0 0 0 3px rgba(61,132,246,.32);
  --font-display: "Outfit","Plus Jakarta Sans",system-ui,-apple-system,"Segoe UI",sans-serif;
  --ds-font-sans: "Plus Jakarta Sans","Outfit",system-ui,-apple-system,"Segoe UI",sans-serif;
  --ds-font-mono: "Space Mono",ui-monospace,"SFMono-Regular",Menlo,monospace;
  --fw-light: 300;
  --fw-regular: 400;
  --fw-medium: 500;
  --fw-semibold: 600;
  --fw-bold: 700;
  --fw-extrabold: 800;
  --fs-3xs: 11px;
  --fs-2xs: 12px;
  --fs-xs: 13px;
  --fs-sm: 14px;
  --fs-md: 15px;
  --fs-base: 16px;
  --fs-lg: 18px;
  --fs-xl: 20px;
  --fs-2xl: 24px;
  --fs-3xl: 30px;
  --fs-4xl: 38px;
  --fs-5xl: 48px;
  --fs-6xl: 60px;
  --lh-tight: 1.1;
  --lh-snug: 1.25;
  --lh-normal: 1.5;
  --lh-relaxed: 1.65;
  --ls-tighter: -0.03em;
  --ls-tight: -0.018em;
  --ls-normal: 0;
  --ls-wide: 0.02em;
  --ls-caps: 0.08em;
  --type-display: var(--fw-semibold) var(--fs-6xl)/var(--lh-tight) var(--font-display);
  --type-h1: var(--fw-semibold) var(--fs-5xl)/var(--lh-tight) var(--font-display);
  --type-h2: var(--fw-semibold) var(--fs-4xl)/var(--lh-snug) var(--font-display);
  --type-h3: var(--fw-semibold) var(--fs-3xl)/var(--lh-snug) var(--font-display);
  --type-h4: var(--fw-semibold) var(--fs-2xl)/var(--lh-snug) var(--font-display);
  --type-h5: var(--fw-semibold) var(--fs-xl)/var(--lh-snug) var(--font-display);
  --type-lead: var(--fw-regular) var(--fs-lg)/var(--lh-relaxed) var(--ds-font-sans);
  --type-body: var(--fw-regular) var(--fs-base)/var(--lh-relaxed) var(--ds-font-sans);
  --type-body-sm: var(--fw-regular) var(--fs-sm)/var(--lh-normal) var(--ds-font-sans);
  --type-label: var(--fw-semibold) var(--fs-sm)/1.3 var(--ds-font-sans);
  --type-button: var(--fw-semibold) var(--fs-md)/1 var(--ds-font-sans);
  --type-caption: var(--fw-medium) var(--fs-2xs)/1.4 var(--ds-font-sans);
  --type-eyebrow: var(--fw-bold) var(--fs-2xs)/1.2 var(--ds-font-sans);
  --type-mono: var(--fw-regular) var(--fs-2xs)/1.4 var(--ds-font-mono);
  --space-0: 0px;
  --space-05: 2px;
  --space-1: 4px;
  --space-15: 6px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-5: 20px;
  --space-6: 24px;
  --space-7: 28px;
  --space-8: 32px;
  --space-10: 40px;
  --space-12: 48px;
  --space-14: 56px;
  --space-16: 64px;
  --space-20: 80px;
  --space-24: 96px;
  --space-32: 128px;
  --gutter-page: 24px;
  --ds-container-sm: 640px;
  --ds-container-md: 768px;
  --ds-container-lg: 1024px;
  --ds-container-xl: 1152px;
  --ds-container-2xl: 1280px;
  --section-y: 96px;
  --section-y-tight: 64px;
  --card-pad: 24px;
  --card-pad-sm: 16px;
  --card-gap: 20px;
  --control-h-sm: 32px;
  --control-h-md: 40px;
  --control-h-lg: 48px;
  --ds-radius-xs: 4px;
  --ds-radius-sm: 6px;
  --ds-radius-md: 10px;
  --ds-radius-lg: 14px;
  --ds-radius-xl: 20px;
  --ds-radius-2xl: 28px;
  --radius-pill: 999px;
  --radius-circle: 50%;
  --radius-control: 10px;
  --radius-card: 16px;
  --radius-surface: 20px;
  --radius-chip: 999px;
  --shadow-xs: 0 1px 2px rgba(33,40,76,.05);
  --shadow-sm: 0 1px 2px rgba(33,40,76,.05), 0 2px 6px rgba(26,91,186,.06);
  --shadow-md: 0 2px 4px rgba(33,40,76,.04), 0 8px 20px rgba(26,91,186,.09);
  --shadow-lg: 0 4px 8px rgba(33,40,76,.04), 0 18px 40px rgba(26,91,186,.12);
  --shadow-xl: 0 8px 16px rgba(33,40,76,.05), 0 32px 64px rgba(26,91,186,.16);
  --shadow-inset: inset 0 1px 0 rgba(255,255,255,.6);
  --shadow-primary: 0 6px 16px rgba(26,91,186,.24);
  --shadow-accent: 0 6px 16px rgba(236,89,92,.24);
  --dur-instant: 80ms;
  --dur-fast: 140ms;
  --dur-base: 220ms;
  --dur-slow: 340ms;
  --dur-slower: 520ms;
  --ease-standard: cubic-bezier(.32,.72,.32,1);
  --ds-ease-out: cubic-bezier(.16,1,.3,1);
  --ds-ease-in: cubic-bezier(.5,0,.9,.2);
  --ease-soft-spring: cubic-bezier(.34,1.32,.5,1);
  --transition-control: background-color var(--dur-fast) var(--ease-standard),border-color var(--dur-fast) var(--ease-standard),color var(--dur-fast) var(--ease-standard),box-shadow var(--dur-fast) var(--ease-standard),transform var(--dur-fast) var(--ease-standard);
  --transition-surface: transform var(--dur-base) var(--ds-ease-out),box-shadow var(--dur-base) var(--ds-ease-out);
  --lift-hover: translateY(-2px);
  --lift-card: translateY(-4px);
  --press-scale: scale(.97);
}
@media (prefers-reduced-motion:reduce) {
  :root {
    --dur-instant: 0ms;
    --dur-fast: 0ms;
    --dur-base: 0ms;
    --dur-slow: 0ms;
    --dur-slower: 0ms;
    --lift-hover: none;
    --lift-card: none;
    --press-scale: none;
  }
}
.ds,.ds *,.ds *::before,.ds *::after {
  box-sizing: border-box;
}
.ds {
  font: var(--type-body);
  color: var(--text-body);
  background: var(--surface-page);
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}
:where(.ds) h1,:where(.ds) h2,:where(.ds) h3,:where(.ds) h4,:where(.ds) h5 {
  margin: 0;
  color: var(--text-strong);
  letter-spacing: var(--ls-tight);
  text-wrap: balance;
}
:where(.ds) h1 {
  font: var(--type-h1);
}
:where(.ds) h2 {
  font: var(--type-h2);
}
:where(.ds) h3 {
  font: var(--type-h3);
}
:where(.ds) h4 {
  font: var(--type-h4);
}
:where(.ds) h5 {
  font: var(--type-h5);
}
:where(.ds) p {
  margin: 0;
  text-wrap: pretty;
}
:where(.ds) a {
  color: var(--text-link);
  text-decoration: none;
  transition: color var(--dur-fast) var(--ease-standard);
}
:where(.ds) a:hover {
  color: var(--text-link-hover);
  text-decoration: underline;
  text-underline-offset: 3px;
}
:where(.ds) a:focus-visible,:where(.ds) button:focus-visible,:where(.ds) input:focus-visible,:where(.ds) select:focus-visible,:where(.ds) textarea:focus-visible,:where(.ds) [tabindex]:focus-visible {
  outline: 2px solid var(--border-focus);
  outline-offset: 2px;
  border-radius: var(--ds-radius-xs);
}
:where(.ds) ::-moz-selection {
  background: var(--ocean-100);
  color: var(--ink-900);
}
:where(.ds) ::selection {
  background: var(--ocean-100);
  color: var(--ink-900);
}
.ds-container {
  max-width: var(--ds-container-2xl);
  margin: 0 auto;
  padding-inline: var(--space-8);
}
.ds-section {
  max-width: var(--ds-container-2xl);
  margin: 0 auto;
  padding: var(--section-y-tight) var(--space-8);
}
.ds-section--flush {
  padding-top: 0;
}
.ds-section__head {
  display: flex;
  flex-direction: column;
  gap: var(--space-3);
  max-width: 640px;
  margin-bottom: var(--space-10);
}
.ds-eyebrow {
  font: var(--type-eyebrow);
  text-transform: uppercase;
  letter-spacing: var(--ls-caps);
  color: var(--ocean-600);
}
.ds-section__title {
  font: var(--type-h2);
  color: var(--text-strong);
  letter-spacing: var(--ls-tight);
}
.ds-section__lead {
  font: var(--type-lead);
  color: var(--text-muted);
}
@media (max-width:640px) {
  .ds-container {
    padding-inline: var(--space-5);
  }
  .ds-section {
    padding: var(--space-12) var(--space-5);
  }
  .ds-section__head {
    margin-bottom: var(--space-8);
  }
  .ds-section__title {
    font: var(--type-h3);
  }
}
.ds-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  height: var(--control-h-md);
  padding: 0 var(--space-5);
  font: var(--type-button);
  letter-spacing: var(--ls-tight);
  border-radius: var(--radius-control);
  border: 1px solid transparent;
  cursor: pointer;
  text-decoration: none;
  white-space: nowrap;
  transition: var(--transition-control);
}
.ds-btn:hover {
  text-decoration: none;
}
.ds-btn:active {
  transform: var(--press-scale);
}
.ds-btn--sm {
  height: var(--control-h-sm);
  padding: 0 var(--space-3);
  font: var(--fw-semibold) var(--fs-sm)/1 var(--ds-font-sans);
  gap: 6px;
}
.ds-btn--lg {
  height: var(--control-h-lg);
  padding: 0 var(--space-7);
  font: var(--fw-semibold) var(--fs-base)/1 var(--ds-font-sans);
  gap: 10px;
}
.ds-btn--primary {
  background: var(--action-primary);
  color: var(--text-on-primary);
  box-shadow: var(--shadow-primary);
}
.ds-btn--primary:hover {
  background: var(--action-primary-hover);
  color: var(--text-on-primary);
}
.ds-btn--primary:active {
  background: var(--action-primary-active);
}
.ds-btn--secondary {
  background: var(--action-secondary);
  color: var(--ocean-700);
  border-color: var(--border-tint);
  box-shadow: none;
}
.ds-btn--secondary:hover {
  background: var(--action-secondary-hover);
  color: var(--ocean-700);
}
.ds-btn--outline {
  background: var(--surface-card);
  color: var(--text-strong);
  border-color: var(--border-default);
  box-shadow: var(--shadow-xs);
}
.ds-btn--outline:hover {
  background: var(--surface-hover);
  border-color: var(--border-strong);
  color: var(--text-strong);
}
.ds-btn--ghost {
  background: transparent;
  color: var(--ocean-700);
  box-shadow: none;
}
.ds-btn--ghost:hover {
  background: var(--ocean-50);
  color: var(--ocean-700);
}
.ds-btn--accent {
  background: var(--action-accent);
  color: #fff;
  box-shadow: var(--shadow-accent);
}
.ds-btn--accent:hover {
  background: var(--action-accent-hover);
  color: #fff;
}
.ds-btn--danger {
  background: var(--status-danger);
  color: #fff;
  box-shadow: none;
}
.ds-btn--danger:hover {
  background: #A31B30;
  color: #fff;
}
.ds-btn--block {
  display: flex;
  width: 100%;
}
.ds-btn[disabled],.ds-btn[aria-disabled="true"] {
  opacity: .5;
  cursor: not-allowed;
  box-shadow: none;
  transform: none;
}
.ds-card {
  background: var(--surface-card);
  border: 1px solid var(--border-hairline);
  border-radius: var(--radius-card);
  padding: var(--card-pad);
  box-shadow: var(--shadow-sm);
  transition: var(--transition-surface),border-color var(--dur-base) var(--ds-ease-out);
}
.ds-card--flush {
  padding: 0;
  overflow: hidden;
}
.ds-card--tint {
  background: var(--surface-tint);
  border-color: var(--border-tint);
}
.ds-card--sunken {
  background: var(--surface-sunken);
}
.ds-card--flat {
  box-shadow: none;
}
.ds-card--md {
  box-shadow: var(--shadow-md);
}
.ds-card--lg {
  box-shadow: var(--shadow-lg);
}
.ds-card--interactive {
  cursor: pointer;
}
.ds-card--interactive:hover {
  box-shadow: var(--shadow-lg);
  transform: var(--lift-card);
  border-color: var(--border-tint);
}
.ds-card--interactive:focus-within {
  border-color: var(--border-tint);
}
.ds-badge {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  height: 24px;
  padding: 0 10px;
  border-radius: var(--radius-chip);
  font-family: var(--ds-font-sans);
  font-size: var(--fs-2xs);
  font-weight: var(--fw-semibold);
  letter-spacing: var(--ls-wide);
  white-space: nowrap;
  background: var(--slate-100);
  color: var(--slate-600);
  border: 1px solid var(--border-hairline);
}
.ds-badge--sm {
  height: 20px;
  padding: 0 8px;
  font-size: var(--fs-3xs);
  gap: 4px;
}
.ds-badge--ocean {
  background: var(--ocean-50);
  color: var(--ocean-700);
  border-color: var(--border-tint);
}
.ds-badge--lagoon {
  background: var(--lagoon-50);
  color: var(--lagoon-700);
  border-color: #BEE9F4;
}
.ds-badge--success {
  background: var(--status-success-bg);
  color: var(--status-success);
  border-color: var(--status-success-border);
}
.ds-badge--warning {
  background: var(--status-warning-bg);
  color: var(--ember-700);
  border-color: var(--status-warning-border);
}
.ds-badge--danger {
  background: var(--status-danger-bg);
  color: var(--status-danger);
  border-color: var(--status-danger-border);
}
.ds-badge--accredited {
  background: var(--status-accredited-bg);
  color: var(--amber-700);
  border-color: var(--status-accredited-border);
}
.ds-badge--solid {
  background: var(--action-primary);
  color: #fff;
  border-color: transparent;
}
.ds-badge__dot {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: currentColor;
  flex: 0 0 auto;
}
.ds-tag {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  height: 32px;
  padding: 0 14px;
  border-radius: var(--radius-chip);
  font-family: var(--ds-font-sans);
  font-size: var(--fs-sm);
  font-weight: var(--fw-medium);
  background: var(--surface-card);
  color: var(--text-body);
  border: 1px solid var(--border-hairline);
  box-shadow: var(--shadow-xs);
  text-decoration: none;
  cursor: pointer;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  transition: var(--transition-control);
}
.ds-tag:hover {
  background: var(--ocean-50);
  border-color: var(--border-tint);
  color: var(--text-body);
  text-decoration: none;
}
.ds-tag--selected {
  background: var(--action-primary);
  color: #fff;
  border-color: transparent;
  box-shadow: var(--shadow-primary);
}
.ds-tag--selected:hover {
  background: var(--action-primary-hover);
  color: #fff;
}
.ds-alert {
  display: flex;
  align-items: flex-start;
  gap: var(--space-3);
  padding: var(--space-4) var(--space-5);
  border-radius: var(--radius-card);
  background: var(--status-info-bg);
  border: 1px solid var(--status-info-border);
  text-decoration: none;
}
.ds-alert:hover {
  text-decoration: none;
}
.ds-alert__icon {
  display: flex;
  margin-top: 1px;
  flex: 0 0 auto;
}
.ds-alert__body {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 4px;
  min-width: 0;
}
.ds-alert__title {
  font: var(--type-label);
}
.ds-alert__text {
  font: var(--type-body-sm);
  color: var(--text-body);
}
.ds-alert__action {
  flex: 0 0 auto;
  align-self: center;
}
.ds-alert--info .ds-alert__icon,.ds-alert--info .ds-alert__title {
  color: var(--ocean-800);
}
.ds-alert--success {
  background: var(--status-success-bg);
  border-color: var(--status-success-border);
}
.ds-alert--success .ds-alert__icon,.ds-alert--success .ds-alert__title {
  color: #0A6B43;
}
.ds-alert--warning {
  background: var(--status-warning-bg);
  border-color: var(--status-warning-border);
}
.ds-alert--warning .ds-alert__icon,.ds-alert--warning .ds-alert__title {
  color: var(--ember-700);
}
.ds-alert--danger {
  background: var(--status-danger-bg);
  border-color: var(--status-danger-border);
}
.ds-alert--danger .ds-alert__icon,.ds-alert--danger .ds-alert__title {
  color: var(--status-danger);
}
@media (max-width:640px) {
  .ds-alert {
    flex-wrap: wrap;
  }
  .ds-alert__body {
    min-width: calc(100% - 30px);
  }
  .ds-alert__action {
    align-self: flex-start;
    margin-left: 30px;
  }
}
.ds-event {
  display: flex;
  flex-direction: row;
  overflow: hidden;
  padding: 0;
  text-decoration: none;
  color: inherit;
}
.ds-event:hover {
  text-decoration: none;
  color: inherit;
}
.ds-event--stacked {
  flex-direction: column;
}
.ds-event__date {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  width: 104px;
  padding: 24px 16px;
  background: var(--surface-tint);
  border-right: 1px solid var(--border-tint);
}
.ds-event--stacked .ds-event__date {
  flex-direction: row;
  gap: 8px;
  width: 100%;
  padding: 10px 20px;
  border-right: 0;
  border-bottom: 1px solid var(--border-tint);
}
.ds-event__day {
  font: var(--fw-bold) var(--fs-3xl)/1 var(--font-display);
  color: var(--ocean-700);
  letter-spacing: var(--ls-tighter);
}
.ds-event__month {
  font: var(--type-eyebrow);
  text-transform: uppercase;
  letter-spacing: var(--ls-caps);
  color: var(--ocean-600);
  margin-top: 4px;
}
.ds-event--stacked .ds-event__month {
  margin-top: 0;
}
.ds-event__year {
  font: var(--type-mono);
  color: var(--ocean-500);
  margin-top: 2px;
}
.ds-event--stacked .ds-event__year {
  margin-top: 0;
}
.ds-event__body {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: var(--space-3);
  padding: var(--space-5);
}
.ds-event__badges {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}
.ds-event__title {
  margin: 0;
  font: var(--fw-semibold) var(--fs-lg)/1.35 var(--font-display);
  color: var(--text-strong);
  letter-spacing: var(--ls-tight);
}
.ds-event__summary {
  margin: 0;
  font: var(--type-body-sm);
  color: var(--text-muted);
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.ds-event__summary p {
  margin: 0;
  display: inline;
}
.ds-event__meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--space-4);
  margin-top: auto;
  padding-top: var(--space-2);
}
.ds-meta {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font: var(--type-caption);
  font-size: var(--fs-xs);
  color: var(--text-muted);
  min-width: 0;
}
.ds-meta i {
  color: var(--text-subtle);
  font-size: 14px;
  flex: 0 0 auto;
}
.ds-event__cta {
  margin-left: auto;
  flex: 0 0 auto;
}
@media (max-width:520px) {
  .ds-event {
    flex-direction: column;
  }
  .ds-event__date {
    flex-direction: row;
    gap: 8px;
    width: 100%;
    padding: 10px 20px;
    border-right: 0;
    border-bottom: 1px solid var(--border-tint);
  }
  .ds-event__month,.ds-event__year {
    margin-top: 0;
  }
  .ds-event__cta {
    margin-left: 0;
  }
}
.ds-speaker {
  display: flex;
  flex-direction: row;
  align-items: center;
  text-align: left;
  gap: var(--space-4);
}
.ds-speaker--stacked {
  flex-direction: column;
  text-align: center;
  gap: var(--space-3);
}
.ds-speaker__avatar {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  width: 52px;
  height: 52px;
  border-radius: 50%;
  overflow: hidden;
  background: var(--ocean-50);
  color: var(--ocean-700);
  border: 1px solid var(--border-tint);
  font: var(--fw-semibold) 16px/1 var(--font-display);
  letter-spacing: var(--ls-tight);
}
.ds-speaker--stacked .ds-speaker__avatar {
  width: 72px;
  height: 72px;
  font-size: 22px;
}
.ds-speaker__avatar img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.ds-speaker__text {
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 0;
}
.ds-speaker__name {
  font: var(--fw-semibold) var(--fs-md)/1.3 var(--font-display);
  color: var(--text-strong);
}
.ds-speaker__role {
  font: var(--type-caption);
  font-size: var(--fs-xs);
  color: var(--text-muted);
}
.ds-speaker__org {
  font: var(--type-caption);
  color: var(--text-subtle);
}
.ds-hero-wash {
  background: linear-gradient(180deg,var(--ocean-50) 0%,rgba(230,241,252,0) 100%);
}
.ds-hero {
  max-width: var(--ds-container-2xl);
  margin: 0 auto;
  padding: var(--space-16) var(--space-8) var(--space-10);
  display: grid;
  grid-template-columns: minmax(0,1fr) minmax(0,1.05fr);
  gap: var(--space-10);
  align-items: center;
}
.ds-hero__copy {
  display: flex;
  flex-direction: column;
  gap: var(--space-5);
}
.ds-hero__title {
  font: var(--type-h1);
  color: var(--text-strong);
  letter-spacing: var(--ls-tighter);
}
.ds-hero__lead {
  font: var(--type-lead);
  color: var(--text-muted);
  max-width: 520px;
}
.ds-hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-3);
  margin-top: var(--space-2);
}
.ds-hero__art {
  width: 100%;
  height: auto;
}
@media (max-width:1024px) {
  .ds-hero {
    grid-template-columns: 1fr;
    padding: var(--space-12) var(--space-8) var(--space-8);
  }
  .ds-hero__art {
    max-width: 560px;
    justify-self: center;
  }
}
@media (max-width:640px) {
  .ds-hero {
    padding: var(--space-10) var(--space-5) var(--space-8);
    gap: var(--space-8);
  }
  .ds-hero__title {
    font: var(--type-h2);
  }
  .ds-hero__lead {
    font: var(--type-body);
  }
  .ds-hero__actions .ds-btn {
    flex: 1 1 auto;
  }
}
.ds-professions-wrap {
  max-width: var(--ds-container-2xl);
  margin: 0 auto;
  padding: var(--space-8) var(--space-8) var(--space-12);
}
.ds-professions {
  display: flex;
  align-items: center;
  width: 100%;
  overflow-x: auto;
  padding: var(--space-3) var(--space-5);
  background: var(--surface-card);
  border: 1px solid var(--border-hairline);
  border-radius: var(--radius-card);
  box-shadow: var(--shadow-sm);
  scrollbar-width: thin;
}
.ds-professions__item {
  flex: 1 1 0;
  min-width: -moz-fit-content;
  min-width: fit-content;
  white-space: nowrap;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: var(--space-2);
  padding: 4px 16px;
  color: var(--text-muted);
  font: var(--fw-semibold) var(--fs-sm)/1.2 var(--ds-font-sans);
  letter-spacing: var(--ls-tight);
  text-decoration: none;
  transition: var(--transition-control);
}
.ds-professions__item:hover {
  color: var(--ocean-700);
  text-decoration: none;
}
.ds-professions__item i {
  color: var(--text-subtle);
  font-size: 16px;
}
.ds-professions__item:hover i {
  color: var(--ocean-600);
}
.ds-professions__rule {
  width: 1px;
  height: 16px;
  background: var(--border-hairline);
  flex: 0 0 auto;
}
@media (max-width:640px) {
  .ds-professions-wrap {
    padding: var(--space-6) var(--space-5) var(--space-10);
  }
  .ds-professions {
    padding: var(--space-3);
  }
}
.ds-grid {
  display: grid;
  gap: var(--card-gap);
}
.ds-grid--4 {
  grid-template-columns: repeat(4,minmax(0,1fr));
}
.ds-grid--3 {
  grid-template-columns: repeat(3,minmax(0,1fr));
}
.ds-grid--2 {
  grid-template-columns: repeat(2,minmax(0,1fr));
}
@media (max-width:1024px) {
  .ds-grid--4 {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }
  .ds-grid--3 {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }
}
@media (max-width:640px) {
  .ds-grid--4,.ds-grid--3,.ds-grid--2 {
    grid-template-columns: minmax(0,1fr);
  }
}
.ds-tile {
  display: flex;
  flex-direction: column;
  gap: var(--space-3);
}
.ds-tile__icon {
  width: 44px;
  height: 44px;
  border-radius: var(--ds-radius-md);
  background: var(--ocean-50);
  border: 1px solid var(--border-tint);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
}
.ds-tile__icon i {
  color: var(--ocean-600);
  font-size: 21px;
}
.ds-tile__title {
  font: var(--type-h5);
  color: var(--text-strong);
}
.ds-tile__text {
  font: var(--type-body-sm);
  color: var(--text-muted);
}
.ds-section__foot {
  display: flex;
  justify-content: center;
  margin-top: var(--space-10);
}
.ds-header {
  position: sticky;
  top: 0;
  z-index: 40;
  background: rgba(255,255,255,.86);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  border-bottom: 1px solid var(--border-hairline);
}
.ds-header__inner {
  max-width: var(--ds-container-2xl);
  margin: 0 auto;
  padding: 0 var(--space-8);
  height: 72px;
  display: flex;
  align-items: center;
  gap: var(--space-8);
}
.ds-header__brand {
  display: flex;
  align-items: center;
  gap: 10px;
  text-decoration: none;
  flex: 0 0 auto;
}
.ds-header__brand:hover {
  text-decoration: none;
}
.ds-header__brand img {
  height: 44px;
  width: auto;
  -o-object-fit: contain;
     object-fit: contain;
}
.ds-header__brand-text {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  line-height: 1.1;
}
.ds-header__brand-name {
  font: var(--fw-semibold) var(--fs-md)/1.1 var(--font-display);
  color: var(--text-strong);
  letter-spacing: var(--ls-tight);
}
.ds-header__brand-sub {
  font: var(--type-caption);
  font-size: var(--fs-3xs);
  color: var(--text-muted);
}
.ds-header__nav {
  display: flex;
  align-items: center;
  gap: var(--space-6);
}
.ds-header__link {
  padding: 8px 2px;
  font: var(--type-label);
  color: var(--text-body);
  text-decoration: none;
  background: transparent;
  border: 0;
  cursor: pointer;
  transition: var(--transition-control);
}
.ds-header__link:hover {
  color: var(--ocean-700);
  text-decoration: none;
}
.ds-header__link--active {
  color: var(--ocean-700);
  box-shadow: inset 0 -2px 0 var(--action-primary);
}
.ds-header__tail {
  margin-left: auto;
  display: flex;
  align-items: center;
  gap: var(--space-3);
}
.ds-iconbtn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: var(--control-h-md);
  height: var(--control-h-md);
  border-radius: var(--radius-control);
  border: 1px solid transparent;
  background: transparent;
  color: var(--text-body);
  cursor: pointer;
  text-decoration: none;
  transition: var(--transition-control);
}
.ds-iconbtn:hover {
  background: var(--ocean-50);
  color: var(--ocean-700);
  text-decoration: none;
}
.ds-iconbtn:active {
  transform: var(--press-scale);
}
.ds-iconbtn--sm {
  width: var(--control-h-sm);
  height: var(--control-h-sm);
}
.ds-header__cart .cart-widget-link {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: var(--control-h-md);
  height: var(--control-h-md);
  border-radius: var(--radius-control);
  color: var(--text-body);
  text-decoration: none;
  transition: var(--transition-control);
}
.ds-header__cart .cart-widget-link:hover {
  background: var(--ocean-50);
  color: var(--ocean-700);
  text-decoration: none;
}
.ds-header__cart .cart-widget-icon {
  font-size: var(--fs-lg);
  line-height: 1;
}
.ds-header__cart .cart-widget-quantity {
  position: absolute;
  top: 0;
  right: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 16px;
  height: 16px;
  padding: 0 4px;
  border-radius: var(--radius-pill);
  background: var(--action-primary);
  color: #fff;
  font-size: var(--fs-3xs);
  font-weight: var(--fw-bold);
  line-height: 1;
}
.ds-userpill {
  display: flex;
  align-items: center;
  gap: 8px;
  border: 1px solid var(--border-hairline);
  background: var(--surface-card);
  border-radius: var(--radius-pill);
  padding: 4px 12px 4px 4px;
  cursor: pointer;
  box-shadow: var(--shadow-xs);
  color: var(--text-body);
  text-decoration: none;
  transition: var(--transition-control);
}
.ds-userpill:hover {
  background: var(--surface-hover);
  text-decoration: none;
  color: var(--text-body);
}
.ds-userpill__avatar {
  width: 30px;
  height: 30px;
  border-radius: 50%;
  background: var(--ocean-50);
  color: var(--ocean-700);
  border: 1px solid var(--border-tint);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font: var(--fw-semibold) 12px/1 var(--font-display);
  flex: 0 0 auto;
}
.ds-userpill__name {
  font: var(--type-caption);
  color: var(--text-body);
  max-width: 150px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.ds-menu {
  position: absolute;
  right: 0;
  top: calc(100% + 8px);
  min-width: 216px;
  background: var(--surface-raised);
  border: 1px solid var(--border-hairline);
  border-radius: var(--radius-card);
  box-shadow: var(--shadow-lg);
  padding: var(--space-2);
  z-index: 50;
}
.ds-menu__item {
  display: flex;
  align-items: center;
  gap: var(--space-3);
  padding: 8px 12px;
  border-radius: var(--ds-radius-md);
  font: var(--type-body-sm);
  color: var(--text-body);
  text-decoration: none;
  transition: var(--transition-control);
}
.ds-menu__item:hover {
  background: var(--surface-hover);
  color: var(--ocean-700);
  text-decoration: none;
}
.ds-menu__item i {
  width: 16px;
  color: var(--text-subtle);
  font-size: 14px;
}
.ds-menu__item:hover i {
  color: var(--ocean-600);
}
.ds-menu__rule {
  height: 1px;
  background: var(--border-hairline);
  margin: var(--space-2) 0;
}
.ds-menu__label {
  display: block;
  padding: 6px 12px 2px;
  font: var(--type-eyebrow);
  text-transform: uppercase;
  letter-spacing: var(--ls-caps);
  color: var(--text-subtle);
}
.ds-relative {
  position: relative;
}
.ds-header__burger {
  display: none;
}
@media (max-width:900px) {
  .ds-header__inner {
    gap: var(--space-4);
    padding: 0 var(--space-5);
  }
  .ds-header__nav {
    display: none;
  }
  .ds-header__burger {
    display: inline-flex;
  }
  .ds-header__brand-text {
    display: none;
  }
  .ds-userpill__name {
    display: none;
  }
  .ds-userpill {
    padding: 4px;
  }
}
.ds-footer {
  background: var(--surface-inverse);
  color: var(--text-inverse);
  margin-top: var(--section-y);
}
.ds-footer__inner {
  max-width: var(--ds-container-2xl);
  margin: 0 auto;
  padding: var(--space-16) var(--space-8) var(--space-8);
  display: grid;
  grid-template-columns: 1.4fr repeat(3,1fr) 1.4fr;
  gap: var(--space-10);
}
.ds-footer__inner--lean {
  grid-template-columns: 1.4fr 1fr 1fr;
}
.ds-footer__brand {
  display: flex;
  flex-direction: column;
  gap: var(--space-4);
}
.ds-footer__brand img {
  height: 56px;
  width: auto;
  align-self: flex-start;
}
.ds-footer__blurb {
  font: var(--type-body-sm);
  color: var(--slate-400);
  max-width: 280px;
}
.ds-footer__col {
  display: flex;
  flex-direction: column;
  gap: var(--space-3);
}
.ds-footer__title {
  font: var(--type-eyebrow);
  text-transform: uppercase;
  letter-spacing: var(--ls-caps);
  color: var(--slate-400);
}
.ds-footer__link {
  font: var(--type-body-sm);
  color: var(--slate-300);
  text-decoration: none;
  transition: var(--transition-control);
}
.ds-footer__link:hover {
  color: #fff;
  text-decoration: underline;
  text-underline-offset: 3px;
}
.ds-footer__note {
  font: var(--type-caption);
  color: var(--slate-400);
}
.ds-footer__bar {
  border-top: 1px solid rgba(255,255,255,.10);
}
.ds-footer__bar-inner {
  max-width: var(--ds-container-2xl);
  margin: 0 auto;
  padding: var(--space-5) var(--space-8);
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: var(--space-4);
  font: var(--type-caption);
  color: var(--slate-400);
}
.ds-footer__social {
  margin-left: auto;
  display: flex;
  gap: var(--space-4);
}
.ds-footer__social a {
  color: var(--slate-400);
  font-size: 17px;
  transition: var(--transition-control);
}
.ds-footer__social a:hover {
  color: #fff;
}
.ds-footer__form {
  display: flex;
  gap: 8px;
}
.ds-input {
  flex: 1;
  min-width: 0;
  height: var(--control-h-md);
  padding: 0 var(--space-3);
  border-radius: var(--radius-control);
  border: 1px solid var(--border-default);
  background: var(--surface-card);
  color: var(--text-body);
  font: var(--type-body-sm);
  transition: var(--transition-control);
}
.ds-input::-moz-placeholder {
  color: var(--text-subtle);
}
.ds-input::placeholder {
  color: var(--text-subtle);
}
.ds-input:focus {
  outline: none;
  border-color: var(--border-focus);
  box-shadow: var(--focus-ring);
}
.ds-input--inverse {
  background: rgba(255,255,255,.06);
  border-color: rgba(255,255,255,.16);
  color: #fff;
  box-shadow: none;
}
.ds-input--inverse::-moz-placeholder {
  color: var(--slate-400);
}
.ds-input--inverse::placeholder {
  color: var(--slate-400);
}
@media (max-width:1024px) {
  .ds-footer__inner {
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: var(--space-8);
  }
}
@media (max-width:640px) {
  .ds-footer__inner {
    grid-template-columns: minmax(0,1fr);
    padding: var(--space-12) var(--space-5) var(--space-6);
  }
  .ds-footer__bar-inner {
    padding: var(--space-5);
  }
  .ds-footer__social {
    margin-left: 0;
  }
}
.ds-stack {
  display: flex;
  flex-direction: column;
  gap: var(--space-4);
}
.ds-mono {
  font: var(--type-mono);
  color: var(--text-muted);
}
.ds-visually-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0,0,0,0);
  white-space: nowrap;
  border: 0;
}
.ds-pagehead {
  background: linear-gradient(180deg,var(--ocean-50) 0%,rgba(230,241,252,0) 100%);
  border-bottom: 1px solid var(--border-hairline);
}
.ds-pagehead__inner {
  max-width: var(--ds-container-2xl);
  margin: 0 auto;
  padding: var(--space-8) var(--space-8) var(--space-10);
  display: flex;
  flex-direction: column;
  gap: var(--space-4);
}
.ds-pagehead__title {
  font: var(--type-h2);
  color: var(--text-strong);
  letter-spacing: var(--ls-tight);
}
.ds-pagehead__subtitle {
  font: var(--type-lead);
  color: var(--text-muted);
  max-width: 720px;
}
.ds-breadcrumb {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--space-2);
  font: var(--type-caption);
  color: var(--text-muted);
}
.ds-breadcrumb a {
  color: var(--text-muted);
  text-decoration: none;
}
.ds-breadcrumb a:hover {
  color: var(--ocean-700);
  text-decoration: underline;
  text-underline-offset: 3px;
}
.ds-breadcrumb__sep {
  color: var(--text-subtle);
}
.ds-breadcrumb__current {
  color: var(--text-body);
  font-weight: var(--fw-semibold);
}
.ds-metarow {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--space-5);
}
@media (max-width:640px) {
  .ds-pagehead__inner {
    padding: var(--space-6) var(--space-5) var(--space-8);
  }
  .ds-pagehead__title {
    font: var(--type-h3);
  }
  .ds-metarow {
    gap: var(--space-3);
  }
}
.ds-tabs {
  display: flex;
  gap: var(--space-6);
  border-bottom: 1px solid var(--border-hairline);
  overflow-x: auto;
}
.ds-tab {
  display: inline-flex;
  align-items: center;
  gap: var(--space-2);
  padding: var(--space-3) var(--space-1);
  font: var(--type-label);
  color: var(--text-muted);
  text-decoration: none;
  white-space: nowrap;
  border: 0;
  background: transparent;
  cursor: pointer;
  transition: var(--transition-control);
}
.ds-tab:hover {
  color: var(--ocean-700);
  text-decoration: none;
}
.ds-tab--active {
  color: var(--ocean-700);
  box-shadow: inset 0 -2px 0 var(--action-primary);
}
.ds-tab i {
  font-size: 14px;
}
.ds-detail {
  max-width: var(--ds-container-2xl);
  margin: 0 auto;
  padding: var(--section-y-tight) var(--space-8);
  display: grid;
  grid-template-columns: minmax(0,1fr) 372px;
  gap: var(--space-10);
  align-items: start;
}
.ds-detail__main {
  grid-column: 1;
  grid-row: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: var(--space-10);
}
.ds-detail__side {
  grid-column: 2;
  grid-row: 1;
  position: sticky;
  top: 96px;
  display: flex;
  flex-direction: column;
  gap: var(--card-gap);
}
@media (max-width:1024px) {
  .ds-detail {
    grid-template-columns: minmax(0,1fr);
    gap: var(--space-8);
  }
  .ds-detail__main,.ds-detail__side {
    grid-column: auto;
    grid-row: auto;
  }
  .ds-detail__side {
    position: static;
  }
}
@media (max-width:640px) {
  .ds-detail {
    padding: var(--space-10) var(--space-5);
  }
}
.ds-panel {
  background: var(--surface-card);
  border: 1px solid var(--border-hairline);
  border-radius: var(--radius-card);
  box-shadow: var(--shadow-md);
  padding: var(--card-pad);
  display: flex;
  flex-direction: column;
  gap: var(--space-4);
}
.ds-panel__title {
  font: var(--type-h5);
  color: var(--text-strong);
}
.ds-panel__note {
  font: var(--type-body-sm);
  color: var(--text-muted);
}
.ds-panel__price {
  display: flex;
  align-items: baseline;
  gap: var(--space-2);
  font: var(--fw-bold) var(--fs-2xl)/1.2 var(--font-display);
  color: var(--text-strong);
  letter-spacing: var(--ls-tight);
}
.ds-panel__price small {
  font: var(--type-body-sm);
  color: var(--text-muted);
  font-weight: var(--fw-regular);
}
.ds-panel__rule {
  height: 1px;
  background: var(--border-hairline);
}
.ds-state {
  display: flex;
  align-items: flex-start;
  gap: var(--space-3);
  padding: var(--space-4);
  border-radius: var(--ds-radius-md);
  background: var(--surface-sunken);
  border: 1px solid var(--border-hairline);
}
.ds-state__icon {
  flex: 0 0 auto;
  margin-top: 1px;
  color: var(--text-subtle);
}
.ds-state__body {
  display: flex;
  flex-direction: column;
  gap: var(--space-1);
  min-width: 0;
}
.ds-state__title {
  font: var(--type-label);
  color: var(--text-strong);
}
.ds-state__text {
  font: var(--type-body-sm);
  color: var(--text-muted);
}
.ds-state--success {
  background: var(--status-success-bg);
  border-color: var(--status-success-border);
}
.ds-state--success .ds-state__icon,.ds-state--success .ds-state__title {
  color: var(--status-success);
}
.ds-state--info {
  background: var(--status-info-bg);
  border-color: var(--status-info-border);
}
.ds-state--info .ds-state__icon,.ds-state--info .ds-state__title {
  color: var(--ocean-800);
}
.ds-state--warning {
  background: var(--status-warning-bg);
  border-color: var(--status-warning-border);
}
.ds-state--warning .ds-state__icon,.ds-state--warning .ds-state__title {
  color: var(--ember-700);
}
.ds-state--danger {
  background: var(--status-danger-bg);
  border-color: var(--status-danger-border);
}
.ds-state--danger .ds-state__icon,.ds-state--danger .ds-state__title {
  color: var(--status-danger);
}
.ds-dl {
  display: flex;
  flex-direction: column;
  gap: var(--space-4);
}
.ds-dl__row {
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.ds-dl__key {
  font: var(--type-caption);
  text-transform: uppercase;
  letter-spacing: var(--ls-caps);
  color: var(--text-subtle);
}
.ds-dl__val {
  font: var(--type-body-sm);
  color: var(--text-strong);
}
.ds-dl__val--mono {
  font: var(--type-mono);
  font-size: var(--fs-xs);
}
.ds-block {
  display: flex;
  flex-direction: column;
  gap: var(--space-4);
}
.ds-block__title {
  font: var(--type-h4);
  color: var(--text-strong);
  padding-bottom: var(--space-3);
  border-bottom: 1px solid var(--border-hairline);
}
.ds-prose {
  font: var(--type-body);
  color: var(--text-body);
  max-width: 72ch;
}
.ds-prose > * + * {
  margin-top: var(--space-4);
}
.ds-prose h1,.ds-prose h2,.ds-prose h3,.ds-prose h4 {
  color: var(--text-strong);
  margin-top: var(--space-6);
}
.ds-prose h2 {
  font: var(--type-h4);
}
.ds-prose h3,.ds-prose h4 {
  font: var(--type-h5);
}
.ds-prose a {
  color: var(--text-link);
  text-decoration: underline;
  text-underline-offset: 3px;
}
.ds-prose ul,.ds-prose ol {
  padding-left: var(--space-6);
  display: flex;
  flex-direction: column;
  gap: var(--space-2);
}
.ds-prose ul {
  list-style: disc;
}
.ds-prose ol {
  list-style: decimal;
}
.ds-prose strong {
  font-weight: var(--fw-semibold);
  color: var(--text-strong);
}
.ds-prose img {
  max-width: 100%;
  height: auto;
  border-radius: var(--ds-radius-md);
}
.ds-prose table {
  width: 100%;
  border-collapse: collapse;
  font: var(--type-body-sm);
}
.ds-prose th,.ds-prose td {
  border: 1px solid var(--border-hairline);
  padding: var(--space-2) var(--space-3);
  text-align: left;
}
.ds-prose th {
  background: var(--surface-sunken);
  font-weight: var(--fw-semibold);
  color: var(--text-strong);
}
.ds-filelist {
  display: flex;
  flex-direction: column;
  gap: var(--space-2);
}
.ds-filelist a,.ds-filelist span {
  display: flex;
  align-items: center;
  gap: var(--space-3);
  padding: var(--space-3) var(--space-4);
  border: 1px solid var(--border-hairline);
  border-radius: var(--ds-radius-md);
  background: var(--surface-card);
  font: var(--type-body-sm);
  color: var(--text-body);
  text-decoration: none;
  transition: var(--transition-control);
}
.ds-filelist a:hover {
  border-color: var(--border-tint);
  background: var(--ocean-50);
  color: var(--ocean-700);
  text-decoration: none;
}
.ds-filelist i {
  color: var(--text-subtle);
  flex: 0 0 auto;
}
.ds-filelist a:hover i {
  color: var(--ocean-600);
}
.ds-empty {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: var(--space-3);
  padding: var(--space-16) var(--space-8);
  border: 1px dashed var(--border-default);
  border-radius: var(--radius-card);
  background: var(--surface-sunken);
}
.ds-empty__icon {
  width: 52px;
  height: 52px;
  border-radius: var(--radius-circle);
  background: var(--ocean-50);
  border: 1px solid var(--border-tint);
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.ds-empty__icon i {
  color: var(--ocean-600);
  font-size: 20px;
}
.ds-empty__title {
  font: var(--type-h5);
  color: var(--text-strong);
}
.ds-empty__text {
  font: var(--type-body-sm);
  color: var(--text-muted);
  max-width: 46ch;
}
.ds-form {
  display: flex;
  flex-direction: column;
  gap: var(--space-5);
}
.ds-form label {
  display: block;
  font: var(--type-label);
  color: var(--text-strong);
  margin-bottom: var(--space-2);
}
.ds-form input[type="text"], .ds-form input[type="email"], .ds-form input[type="tel"], .ds-form input[type="number"], .ds-form input[type="password"], .ds-form input[type="date"], .ds-form select, .ds-form textarea {
  display: block;
  width: 100%;
  min-height: var(--control-h-md);
  padding: var(--space-2) var(--space-3);
  border-radius: var(--radius-control);
  border: 1px solid var(--border-default);
  background: var(--surface-card);
  color: var(--text-body);
  font: var(--type-body-sm);
  box-shadow: var(--shadow-xs);
  transition: var(--transition-control);
}
.ds-form textarea {
  min-height: 120px;
  resize: vertical;
}
.ds-form input:focus,.ds-form select:focus,.ds-form textarea:focus {
  outline: none;
  border-color: var(--border-focus);
  box-shadow: var(--focus-ring);
}
.ds-form input::-moz-placeholder, .ds-form textarea::-moz-placeholder {
  color: var(--text-subtle);
}
.ds-form input::placeholder,.ds-form textarea::placeholder {
  color: var(--text-subtle);
}
.ds-form input[type="radio"],.ds-form input[type="checkbox"] {
  -moz-appearance: auto;
       appearance: auto;
  -webkit-appearance: auto;
  width: 16px;
  height: 16px;
  min-height: 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: none;
  box-shadow: none;
  accent-color: var(--action-primary);
  flex: 0 0 auto;
}
.ds-form input[type="radio"] + label, .ds-form input[type="checkbox"] + label {
  display: inline;
  font: var(--type-body-sm);
  color: var(--text-body);
  margin-bottom: 0;
}
.ds-form .input-group {
  display: flex;
  flex-direction: column;
  gap: var(--space-2);
}
.ds-form button[type="submit"],.ds-form input[type="submit"] {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  height: var(--control-h-lg);
  padding: 0 var(--space-7);
  font: var(--fw-semibold) var(--fs-base)/1 var(--ds-font-sans);
  letter-spacing: var(--ls-tight);
  border-radius: var(--radius-control);
  border: 1px solid transparent;
  background: var(--action-primary);
  color: var(--text-on-primary);
  box-shadow: var(--shadow-primary);
  cursor: pointer;
  align-self: flex-start;
  transition: var(--transition-control);
}
.ds-form button[type="submit"]:hover,.ds-form input[type="submit"]:hover {
  background: var(--action-primary-hover);
}
.ds-form button[type="submit"]:active,.ds-form input[type="submit"]:active {
  transform: var(--press-scale);
}
.ds-form .help-block,.ds-form small {
  font: var(--type-caption);
  color: var(--text-muted);
}
.ds-form ul li {
  font: var(--type-caption);
  color: var(--status-danger);
}
.ds-pagination {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: var(--space-2);
  margin-top: var(--space-10);
}
.ds-page {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 36px;
  height: 36px;
  padding: 0 10px;
  border-radius: var(--radius-control);
  font: var(--type-label);
  background: var(--surface-card);
  color: var(--text-body);
  border: 1px solid var(--border-hairline);
  box-shadow: var(--shadow-xs);
  text-decoration: none;
  transition: var(--transition-control);
}
.ds-page:hover {
  background: var(--surface-hover);
  color: var(--text-body);
  text-decoration: none;
}
.ds-page--active {
  background: var(--action-primary);
  color: #fff;
  border-color: transparent;
  box-shadow: var(--shadow-primary);
}
.ds-page--disabled {
  opacity: .4;
  cursor: not-allowed;
  box-shadow: none;
}
.ds-page__gap {
  color: var(--text-subtle);
  padding: 0 2px;
}
.ds-pagination__summary {
  margin-top: var(--space-4);
  text-align: center;
  font: var(--type-caption);
  color: var(--text-muted);
}
.ds-profile {
  max-width: var(--ds-container-2xl);
  margin: 0 auto;
  padding: var(--section-y-tight) var(--space-8);
  display: grid;
  grid-template-columns: 268px minmax(0,1fr);
  gap: var(--space-10);
  align-items: start;
}
.ds-profile__rail {
  position: sticky;
  top: 96px;
  display: flex;
  flex-direction: column;
  gap: var(--card-gap);
}
.ds-profile__main {
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: var(--space-8);
}
@media (max-width:1024px) {
  .ds-profile {
    grid-template-columns: minmax(0,1fr);
    gap: var(--space-8);
  }
  .ds-profile__rail {
    position: static;
  }
}
@media (max-width:640px) {
  .ds-profile {
    padding: var(--space-10) var(--space-5);
  }
}
.ds-nav {
  display: flex;
  flex-direction: column;
  gap: var(--space-6);
}
.ds-nav__group {
  display: flex;
  flex-direction: column;
  gap: var(--space-1);
}
.ds-nav__label {
  padding: 0 var(--space-3) var(--space-2);
  font: var(--type-eyebrow);
  text-transform: uppercase;
  letter-spacing: var(--ls-caps);
  color: var(--text-subtle);
}
.ds-nav__item {
  display: flex;
  align-items: center;
  gap: var(--space-3);
  padding: var(--space-2) var(--space-3);
  border-radius: var(--ds-radius-md);
  font: var(--type-label);
  color: var(--text-body);
  text-decoration: none;
  transition: var(--transition-control);
}
.ds-nav__item:hover {
  background: var(--surface-hover);
  color: var(--ocean-700);
  text-decoration: none;
}
.ds-nav__item i {
  width: 18px;
  text-align: center;
  color: var(--text-subtle);
  font-size: 14px;
  flex: 0 0 auto;
}
.ds-nav__item:hover i {
  color: var(--ocean-600);
}
.ds-nav__item--active {
  background: var(--ocean-50);
  color: var(--ocean-700);
  border: 1px solid var(--border-tint);
}
.ds-nav__item--active i {
  color: var(--ocean-600);
}
.ds-list {
  display: flex;
  flex-direction: column;
  background: var(--surface-card);
  border: 1px solid var(--border-hairline);
  border-radius: var(--radius-card);
  box-shadow: var(--shadow-sm);
  overflow: hidden;
}
.ds-list__row {
  display: flex;
  align-items: center;
  gap: var(--space-4);
  padding: var(--space-4) var(--space-5);
  text-decoration: none;
  color: var(--text-body);
  transition: var(--transition-control);
}
.ds-list__row + .ds-list__row {
  border-top: 1px solid var(--border-hairline);
}
a.ds-list__row:hover {
  background: var(--surface-hover);
  text-decoration: none;
  color: var(--text-body);
}
.ds-list__body {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.ds-list__title {
  font: var(--type-label);
  color: var(--text-strong);
}
.ds-list__meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--space-3);
  font: var(--type-caption);
  color: var(--text-muted);
}
.ds-list__meta i {
  color: var(--text-subtle);
}
.ds-list__tail {
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  gap: var(--space-3);
}
.ds-list__chevron {
  color: var(--text-subtle);
  flex: 0 0 auto;
}
a.ds-list__row:hover .ds-list__chevron {
  color: var(--ocean-600);
}
.ds-reg {
  display: flex;
  flex-direction: column;
  gap: var(--space-4);
  padding: var(--card-pad);
  background: var(--surface-card);
  border: 1px solid var(--border-hairline);
  border-left: 3px solid var(--border-default);
  border-radius: var(--radius-card);
  box-shadow: var(--shadow-sm);
}
.ds-reg--pending {
  border-left-color: var(--status-warning);
}
.ds-reg--registered {
  border-left-color: var(--action-primary);
}
.ds-reg--attended {
  border-left-color: var(--status-success);
}
.ds-reg__head {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  gap: var(--space-4);
}
.ds-reg__title {
  flex: 1;
  min-width: 0;
  font: var(--type-h5);
  color: var(--text-strong);
}
.ds-reg__rule {
  height: 1px;
  background: var(--border-hairline);
}
.ds-scores {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-6);
}
.ds-score {
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.ds-score__value {
  font: var(--fw-bold) var(--fs-xl)/1.2 var(--font-display);
  color: var(--text-strong);
}
.ds-score__label {
  font: var(--type-caption);
  color: var(--text-muted);
}
.ds-auth {
  min-height: 100vh;
  display: grid;
  grid-template-columns: minmax(0,1fr) minmax(0,1fr);
}
.ds-auth__form {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: var(--space-16) var(--space-8);
}
.ds-auth__inner {
  width: 100%;
  max-width: 400px;
  display: flex;
  flex-direction: column;
  gap: var(--space-6);
}
.ds-auth__logo {
  height: 64px;
  width: auto;
  align-self: flex-start;
}
.ds-auth__head {
  display: flex;
  flex-direction: column;
  gap: var(--space-2);
}
.ds-auth__title {
  font: var(--type-h3);
  color: var(--text-strong);
  letter-spacing: var(--ls-tight);
}
.ds-auth__lead {
  font: var(--type-body-sm);
  color: var(--text-muted);
}
.ds-auth__body {
  display: flex;
  flex-direction: column;
  gap: var(--space-4);
}
.ds-auth__foot {
  font: var(--type-caption);
  color: var(--text-muted);
  text-align: center;
}
.ds-auth__aside {
  background: var(--ocean-50);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: var(--space-6);
  padding: var(--space-16) var(--space-10);
}
.ds-auth__art {
  width: 100%;
  max-width: 480px;
  height: auto;
}
.ds-auth__pitch {
  max-width: 420px;
  text-align: center;
  display: flex;
  flex-direction: column;
  gap: var(--space-3);
}
.ds-auth__pitch h2 {
  font: var(--type-h4);
  color: var(--ocean-900);
  letter-spacing: var(--ls-tight);
}
.ds-auth__pitch p {
  font: var(--type-body-sm);
  color: var(--ocean-800);
}
.ds-divider {
  display: flex;
  align-items: center;
  gap: var(--space-3);
}
.ds-divider::before,.ds-divider::after {
  content: "";
  flex: 1;
  height: 1px;
  background: var(--border-hairline);
}
.ds-divider span {
  font: var(--type-caption);
  color: var(--text-subtle);
}
.ds-auth__aux {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-3);
}
@media (max-width:900px) {
  .ds-auth {
    grid-template-columns: minmax(0,1fr);
    min-height: 0;
  }
  .ds-auth__form {
    padding: var(--space-12) var(--space-5);
  }
  .ds-auth__aside {
    padding: var(--space-12) var(--space-5);
  }
  .ds-auth__art {
    max-width: 320px;
  }
}
.ds-form form {
  display: flex;
  flex-direction: column;
  gap: var(--space-5);
}
.ds-form .ds-field {
  display: flex;
  flex-direction: column;
  gap: var(--space-2);
}
.ds-form .ds-field + .ds-field {
  margin-top: var(--space-4);
}
.ds-field__label {
  display: block;
  font: var(--type-label);
  color: var(--text-strong);
  margin-bottom: 0;
}
.ds-field__label--required::after {
  content: " *";
  color: var(--status-danger);
}
.ds-field__help {
  font: var(--type-caption);
  color: var(--text-muted);
}
.ds-field__errors {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.ds-field__errors li {
  font: var(--type-caption);
  color: var(--status-danger);
}
.ds-form .ds-field > div {
  max-width: none;
  width: 100%;
}
.ds-onboarding {
  max-width: var(--ds-container-md);
  margin: 0 auto;
  padding: var(--space-12) var(--space-8) var(--space-16);
  display: flex;
  flex-direction: column;
  gap: var(--space-8);
}
.ds-onboarding__head {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--space-4);
  text-align: center;
}
.ds-onboarding__logo {
  height: 56px;
  width: auto;
}
.ds-steps {
  display: flex;
  align-items: flex-start;
  justify-content: center;
  gap: var(--space-2);
  width: 100%;
  list-style: none;
  padding: 0;
  margin: 0;
}
.ds-step {
  flex: 1 1 0;
  min-width: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--space-2);
  text-align: center;
}
.ds-step__dot {
  width: 28px;
  height: 28px;
  border-radius: var(--radius-circle);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font: var(--fw-semibold) var(--fs-2xs)/1 var(--font-display);
  background: var(--surface-card);
  color: var(--text-subtle);
  border: 1px solid var(--border-default);
  flex: 0 0 auto;
  transition: var(--transition-control);
}
.ds-step__label {
  font: var(--type-caption);
  color: var(--text-muted);
}
.ds-step__rule {
  flex: 0 0 auto;
  width: 100%;
  height: 2px;
  background: var(--border-hairline);
  border-radius: var(--radius-pill);
}
.ds-step--done .ds-step__dot {
  background: var(--status-success);
  color: #fff;
  border-color: transparent;
}
.ds-step--done .ds-step__rule {
  background: var(--status-success);
}
.ds-step--done .ds-step__label {
  color: var(--text-body);
}
.ds-step--current .ds-step__dot {
  background: var(--action-primary);
  color: #fff;
  border-color: transparent;
  box-shadow: var(--shadow-primary);
}
.ds-step--current .ds-step__rule {
  background: var(--action-primary);
}
.ds-step--current .ds-step__label {
  color: var(--ocean-700);
  font-weight: var(--fw-semibold);
}
@media (max-width:640px) {
  .ds-onboarding {
    padding: var(--space-8) var(--space-5) var(--space-12);
  }
  .ds-step__label {
    display: none;
  }
}
.ds-onboarding__focus {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: var(--space-4);
}
.ds-onboarding__icon {
  width: 72px;
  height: 72px;
  border-radius: var(--radius-circle);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: var(--ocean-50);
  border: 1px solid var(--border-tint);
}
.ds-onboarding__icon i {
  font-size: 30px;
  color: var(--ocean-600);
}
.ds-onboarding__icon--success {
  background: var(--status-success-bg);
  border-color: var(--status-success-border);
}
.ds-onboarding__icon--success i {
  color: var(--status-success);
}
.ds-namerow {
  display: grid;
  grid-template-columns: minmax(0,2fr) minmax(0,5fr) minmax(0,5fr);
  gap: var(--space-4);
}
.ds-namerow .ds-field + .ds-field {
  margin-top: 0;
}
@media (max-width:640px) {
  .ds-namerow {
    grid-template-columns: minmax(0,1fr);
  }
  .ds-namerow .ds-field + .ds-field {
    margin-top: var(--space-4);
  }
}
.ds-support {
  background: var(--surface-page);
  border-top: 1px solid var(--border-hairline);
}
.ds-support__inner {
  max-width: var(--ds-container-2xl);
  margin: 0 auto;
  padding: var(--space-12) var(--space-8);
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--space-4);
  text-align: center;
}
.ds-support__logos {
  width: 100%;
  max-width: 480px;
  height: auto;
}
.ds-support__note {
  font: var(--type-body-sm);
  color: var(--text-muted);
  max-width: 60ch;
}
.ds-support + .ds-footer {
  margin-top: 0;
}
@media (max-width:640px) {
  .ds-support__inner {
    padding: var(--space-10) var(--space-5);
  }
}
.ds-field > div > div:has(> input[type="radio"]), .ds-field > div > div:has(> input[type="checkbox"]) {
  display: flex;
  align-items: center;
  gap: var(--space-2);
  padding: var(--space-2) 0;
}
.ds-field input[type="radio"] + label, .ds-field input[type="checkbox"] + label {
  font: var(--type-body-sm);
  color: var(--text-body);
  margin-bottom: 0;
  cursor: pointer;
}
.ds-tiers {
  display: flex;
  flex-direction: column;
  gap: var(--space-2);
}
.ds-tier {
  display: flex;
  flex-direction: column;
  gap: 2px;
  padding: var(--space-3);
  border: 1px solid var(--border-hairline);
  border-radius: var(--ds-radius-md);
  background: var(--surface-card);
}
.ds-tier--soldout {
  opacity: .55;
}
.ds-tier__head {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: var(--space-3);
}
.ds-tier__name {
  font: var(--type-label);
  color: var(--text-strong);
}
.ds-tier__seats {
  font: var(--type-caption);
  color: var(--text-muted);
  white-space: nowrap;
}
.ds-tier__desc {
  font: var(--type-body-sm);
  color: var(--text-muted);
}
.ds-choice-cards {
  display: flex;
  flex-direction: column;
  gap: var(--space-2);
}
.ds-choice-card {
  position: relative;
  display: flex;
  align-items: flex-start;
  gap: var(--space-3);
  padding: var(--space-3);
  border: 1px solid var(--border-hairline);
  border-radius: var(--ds-radius-md);
  background: var(--surface-card);
  cursor: pointer;
  margin-bottom: 0;
  transition: var(--transition-control);
}
.ds-choice-card:hover:not(:has(input:disabled)) {
  border-color: var(--border-strong);
}
.ds-choice-card:has(input:checked) {
  border-color: var(--action-primary);
  box-shadow: inset 0 0 0 1px var(--action-primary);
}
.ds-choice-card:has(input:focus-visible) {
  border-color: var(--border-focus);
  box-shadow: var(--focus-ring);
}
.ds-choice-card:has(input:disabled) {
  opacity: .55;
  cursor: not-allowed;
}
.ds-choice-card .ds-choice-card__input {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: 0;
  padding: 0;
  border: 0;
  overflow: hidden;
  clip: rect(0 0 0 0);
  -webkit-clip-path: inset(50%);
          clip-path: inset(50%);
  white-space: nowrap;
}
.ds-choice-card__body {
  display: flex;
  flex-direction: column;
  gap: 2px;
  flex: 1 1 auto;
  min-width: 0;
}
.ds-choice-card__head {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: var(--space-3);
}
.ds-choice-card__name {
  font: var(--type-label);
  color: var(--text-strong);
}
.ds-choice-card__seats {
  font: var(--type-caption);
  color: var(--text-muted);
  white-space: nowrap;
}
.ds-choice-card__desc {
  font: var(--type-body-sm);
  color: var(--text-muted);
}
.ds-choice-card__check {
  flex: 0 0 auto;
  width: 16px;
  height: 16px;
  margin-top: 2px;
  border: 2px solid var(--border-strong);
  border-radius: 50%;
  background: var(--surface-page);
}
.ds-choice-card:has(input:checked) .ds-choice-card__check {
  border-color: var(--action-primary);
  background: var(--action-primary);
  box-shadow: inset 0 0 0 3px var(--surface-page);
}
.ds-vgy {
  --vgy-navy: #1E3A47;
  --vgy-navy-2: #27505F;
  --vgy-mint: #9BE3D0;
  --vgy-coral: #F26B4E;
  position: relative;
  display: grid;
  grid-template-columns: minmax(0,1fr) minmax(0,420px);
  align-items: center;
  gap: var(--space-8);
  overflow: hidden;
  isolation: isolate;
  padding: var(--space-12) var(--space-12);
  border-radius: var(--radius-surface);
  background: var(--vgy-navy);
  color: #fff;
  text-decoration: none;
  transition: transform var(--ds-motion-base,180ms) ease,box-shadow var(--ds-motion-base,180ms) ease;
}
.ds-vgy:hover {
  transform: translateY(-2px);
  box-shadow: 0 24px 60px rgba(30,58,71,.28);
}
.ds-vgy:focus-visible {
  outline: 2px solid var(--vgy-mint);
  outline-offset: 3px;
}
.ds-vgy__copy {
  position: relative;
  z-index: 2;
  display: flex;
  flex-direction: column;
  gap: var(--space-3);
  max-width: 560px;
}
.ds-vgy__eyebrow {
  display: inline-flex;
  align-items: center;
  gap: var(--space-3);
  font: var(--type-eyebrow);
  text-transform: uppercase;
  letter-spacing: var(--ls-caps);
  color: var(--vgy-coral);
}
.ds-vgy__eyebrow::before {
  content: "";
  width: 28px;
  height: 3px;
  border-radius: 2px;
  background: var(--vgy-coral);
}
.ds-vgy__title {
  font: var(--type-h2);
  color: #fff;
  letter-spacing: var(--ls-tighter);
}
.ds-vgy__lead {
  font: var(--type-body);
  color: rgba(255,255,255,.78);
  max-width: 46ch;
}
.ds-vgy__cta {
  display: inline-flex;
  align-items: center;
  gap: var(--space-3);
  align-self: flex-start;
  margin-top: var(--space-3);
  padding: 14px 24px;
  border-radius: var(--radius-pill);
  background: var(--vgy-coral);
  color: #fff;
  font: var(--type-button,var(--type-body));
  font-weight: 600;
  line-height: 1;
  box-shadow: 0 10px 24px rgba(242,107,78,.28);
  transition: background 180ms ease,transform 180ms ease;
}
.ds-vgy:hover .ds-vgy__cta {
  background: #D8553A;
  transform: translateX(2px);
}
.ds-vgy__glyph {
  position: absolute;
  right: var(--space-24);
  top: 50%;
  font-size: 300px;
  line-height: .78;
  font-weight: 700;
  transform: translateY(-50%);
  pointer-events: none;
}
.ds-vgy__glyph--duo {
  z-index: 1;
  background: var(--vgy-glyph) center 40% / cover no-repeat;
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}
.ds-vgy__glyph--coral {
  z-index: 0;
  right: calc(var(--space-24) - 34px);
  transform: translateY(calc(-50% + 26px));
  color: var(--vgy-coral);
}
.ds-vgy__dots {
  position: absolute;
  left: var(--space-2);
  top: var(--space-14);
  z-index: 0;
  width: 36px;
  height: 168px;
  pointer-events: none;
  background-image: radial-gradient(rgba(255,255,255,.3) 1.6px,transparent 1.6px);
  background-size: 12px 12px;
}
@media (max-width:1024px) {
  .ds-vgy {
    grid-template-columns: 1fr;
    padding: var(--space-10);
  }
  .ds-vgy__glyph {
    font-size: 260px;
    right: calc(var(--space-8) * -1);
    opacity: .55;
  }
  .ds-vgy__dots {
    display: none;
  }
}
@media (max-width:640px) {
  .ds-vgy {
    padding: var(--space-8) var(--space-6);
    border-radius: var(--radius-card);
  }
  .ds-vgy__title {
    font: var(--type-h3);
  }
  .ds-vgy__glyph {
    display: none;
  }
  .ds-vgy__cta {
    align-self: stretch;
    justify-content: center;
  }
}


/*# sourceMappingURL=data:application/json;charset=utf-8;base64,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cyI6WyJ3ZWJwYWNrOi8vLzxubyBzb3VyY2U+Iiwid2VicGFjazovLy8uL2Fzc2V0cy9jc3MvZGVzaWduLXN5c3RlbS90b2tlbnMvY29sb3JzLmNzcyIsIndlYnBhY2s6Ly8vLi9hc3NldHMvY3NzL2Rlc2lnbi1zeXN0ZW0vdG9rZW5zL3R5cG9ncmFwaHkuY3NzIiwid2VicGFjazovLy8uL2Fzc2V0cy9jc3MvZGVzaWduLXN5c3RlbS90b2tlbnMvc3BhY2luZy5jc3MiLCJ3ZWJwYWNrOi8vLy4vYXNzZXRzL2Nzcy9kZXNpZ24tc3lzdGVtL3Rva2Vucy9yYWRpaS5jc3MiLCJ3ZWJwYWNrOi8vLy4vYXNzZXRzL2Nzcy9kZXNpZ24tc3lzdGVtL3Rva2Vucy9zaGFkb3dzLmNzcyIsIndlYnBhY2s6Ly8vLi9hc3NldHMvY3NzL2Rlc2lnbi1zeXN0ZW0vdG9rZW5zL21vdGlvbi5jc3MiLCJ3ZWJwYWNrOi8vLy4vYXNzZXRzL2Nzcy9kZXNpZ24tc3lzdGVtL3Rva2Vucy9iYXNlLmNzcyIsIndlYnBhY2s6Ly8vLi9hc3NldHMvY3NzL2Rlc2lnbi1zeXN0ZW0vY29tcG9uZW50cy5jc3MiXSwic291cmNlc0NvbnRlbnQiOltudWxsLCIvKiBDb2xvdXIgc3lzdGVtIOKAlCBzYW1wbGVkIGRpcmVjdGx5IGZyb20gdGhlIE1KRSBjcmVzdCBhbmQgdGhlIHR3byBicmFuZCBpbGx1c3RyYXRpb25zLiAqL1xuOnJvb3R7XG4gIC8qIC0tLS0gT2NlYW4gKHByaW1hcnkpIC0tLS0gKi9cbiAgLS1vY2Vhbi01MDojRTZGMUZDOyAtLW9jZWFuLTEwMDojQ0FFMEZGOyAtLW9jZWFuLTIwMDojQTJDQkVEOyAtLW9jZWFuLTMwMDojOTFCRkVEO1xuICAtLW9jZWFuLTQwMDojM0Q4NEY2OyAtLW9jZWFuLTUwMDojMjk3MkUwOyAtLW9jZWFuLTYwMDojMUE1QkJBOyAtLW9jZWFuLTcwMDojMUI0QzkzO1xuICAtLW9jZWFuLTgwMDojMjE1MjlEOyAtLW9jZWFuLTkwMDojMUU0Nzg0OyAtLW9jZWFuLTk1MDojMTQzQTY2O1xuXG4gIC8qIC0tLS0gSW5rIChkZWVwIG5hdnkgbmV1dHJhbHMgZnJvbSB0aGUgaWxsdXN0cmF0aW9ucykgLS0tLSAqL1xuICAtLWluay05MDA6IzIxMjg0QzsgLS1pbmstODAwOiMyQzMyNTk7IC0taW5rLTcwMDojMzQzQzZCOyAtLWluay02MDA6IzNDNDI3NjtcblxuICAvKiAtLS0tIFNsYXRlIChVSSBuZXV0cmFscykgLS0tLSAqL1xuICAtLXNsYXRlLTA6I0ZGRkZGRjsgLS1zbGF0ZS0yNTojRkJGQ0ZFOyAtLXNsYXRlLTUwOiNGNUY4RkM7IC0tc2xhdGUtMTAwOiNFREYyRjk7XG4gIC0tc2xhdGUtMjAwOiNFMUU4RjI7IC0tc2xhdGUtMzAwOiNDQkQ1RTU7IC0tc2xhdGUtNDAwOiM5OEE1QkQ7IC0tc2xhdGUtNTAwOiM2RTdDOTY7XG4gIC0tc2xhdGUtNjAwOiM1NDYxN0E7IC0tc2xhdGUtNzAwOiMzRTRBNjE7XG5cbiAgLyogLS0tLSBMYWdvb24gKGN5YW4gYWNjZW50KSAtLS0tICovXG4gIC0tbGFnb29uLTUwOiNFOUZBRkY7IC0tbGFnb29uLTIwMDojNkVDRUVGOyAtLWxhZ29vbi0zMDA6IzU2QkZEQjsgLS1sYWdvb24tNTAwOiMyQTlCQUQ7IC0tbGFnb29uLTcwMDojMUM3MDgwO1xuXG4gIC8qIC0tLS0gQ29yYWwgKHdhcm0gYWNjZW50KSAtLS0tICovXG4gIC0tY29yYWwtMTAwOiNGOUM4Qjc7IC0tY29yYWwtMjAwOiNFQUFGQTI7IC0tY29yYWwtMzAwOiNEQjk1OEQ7IC0tY29yYWwtNTAwOiNFQzU5NUM7IC0tY29yYWwtNzAwOiNCRjIyMzk7XG5cbiAgLyogLS0tLSBBbWJlciAoY3Jlc3QgZ29sZCAvIGFjY3JlZGl0YXRpb24pIC0tLS0gKi9cbiAgLS1hbWJlci0xMDA6I0VGREU5NTsgLS1hbWJlci0zMDA6I0QzQjc0MjsgLS1hbWJlci01MDA6I0M5OEIzMzsgLS1hbWJlci03MDA6IzhGNUUxNztcblxuICAvKiAtLS0tIEVtYmVyIChvcmFuZ2UgYWNjZW50IGZyb20gaWxsdXN0cmF0aW9ucykgLS0tLSAqL1xuICAtLWVtYmVyLTUwMDojRjk2NzAxOyAtLWVtYmVyLTcwMDojQzE0RTAwO1xuXG4gIC8qIC0tLS0gQ3Jlc3QgKG5hdGlvbmFsIHRyaWNvbG91ciDigJQgbG9nbyBsb2NrdXBzIG9ubHkpIC0tLS0gKi9cbiAgLS1jcmVzdC1yZWQ6I0Y1NDAxQTsgLS1jcmVzdC1ncmVlbjojMDA5QTVCOyAtLWNyZXN0LWdvbGQ6I0Q4OUEzRTtcblxuICAvKiAtLS0tIFNlbWFudGljOiB0ZXh0IC0tLS0gKi9cbiAgLS10ZXh0LXN0cm9uZzp2YXIoLS1pbmstOTAwKTtcbiAgLS10ZXh0LWJvZHk6dmFyKC0tc2xhdGUtNzAwKTtcbiAgLS10ZXh0LW11dGVkOnZhcigtLXNsYXRlLTUwMCk7XG4gIC0tdGV4dC1zdWJ0bGU6dmFyKC0tc2xhdGUtNDAwKTtcbiAgLS10ZXh0LWxpbms6dmFyKC0tb2NlYW4tNjAwKTtcbiAgLS10ZXh0LWxpbmstaG92ZXI6dmFyKC0tb2NlYW4tODAwKTtcbiAgLS10ZXh0LW9uLXByaW1hcnk6I0ZGRkZGRjtcbiAgLS10ZXh0LWludmVyc2U6I0ZGRkZGRjtcblxuICAvKiAtLS0tIFNlbWFudGljOiBzdXJmYWNlIC0tLS0gKi9cbiAgLS1zdXJmYWNlLXBhZ2U6I0ZGRkZGRjtcbiAgLS1zdXJmYWNlLXN1bmtlbjp2YXIoLS1zbGF0ZS01MCk7XG4gIC0tc3VyZmFjZS1jYXJkOiNGRkZGRkY7XG4gIC0tc3VyZmFjZS1yYWlzZWQ6I0ZGRkZGRjtcbiAgLS1zdXJmYWNlLXRpbnQ6dmFyKC0tb2NlYW4tNTApO1xuICAtLXN1cmZhY2UtaW52ZXJzZTp2YXIoLS1pbmstOTAwKTtcbiAgLS1zdXJmYWNlLWhvdmVyOnZhcigtLXNsYXRlLTUwKTtcbiAgLS1zdXJmYWNlLWFjdGl2ZTp2YXIoLS1zbGF0ZS0xMDApO1xuXG4gIC8qIC0tLS0gU2VtYW50aWM6IGJvcmRlciAtLS0tICovXG4gIC0tYm9yZGVyLWhhaXJsaW5lOnZhcigtLXNsYXRlLTIwMCk7XG4gIC0tYm9yZGVyLWRlZmF1bHQ6dmFyKC0tc2xhdGUtMzAwKTtcbiAgLS1ib3JkZXItc3Ryb25nOnZhcigtLXNsYXRlLTQwMCk7XG4gIC0tYm9yZGVyLXRpbnQ6dmFyKC0tb2NlYW4tMTAwKTtcbiAgLS1ib3JkZXItZm9jdXM6dmFyKC0tb2NlYW4tNDAwKTtcblxuICAvKiAtLS0tIFNlbWFudGljOiBhY3Rpb24gLS0tLSAqL1xuICAtLWFjdGlvbi1wcmltYXJ5OnZhcigtLW9jZWFuLTYwMCk7XG4gIC0tYWN0aW9uLXByaW1hcnktaG92ZXI6dmFyKC0tb2NlYW4tNzAwKTtcbiAgLS1hY3Rpb24tcHJpbWFyeS1hY3RpdmU6dmFyKC0tb2NlYW4tOTAwKTtcbiAgLS1hY3Rpb24tc2Vjb25kYXJ5OnZhcigtLW9jZWFuLTUwKTtcbiAgLS1hY3Rpb24tc2Vjb25kYXJ5LWhvdmVyOnZhcigtLW9jZWFuLTEwMCk7XG4gIC0tYWN0aW9uLWFjY2VudDp2YXIoLS1jb3JhbC01MDApO1xuICAtLWFjdGlvbi1hY2NlbnQtaG92ZXI6I0Q4NDc0QTtcblxuICAvKiAtLS0tIFNlbWFudGljOiBzdGF0dXMgLS0tLSAqL1xuICAtLXN0YXR1cy1zdWNjZXNzOiMwRThBNTc7IC0tc3RhdHVzLXN1Y2Nlc3MtYmc6I0U0RjZFRTsgLS1zdGF0dXMtc3VjY2Vzcy1ib3JkZXI6I0E5RTBDODtcbiAgLS1zdGF0dXMtd2FybmluZzp2YXIoLS1lbWJlci01MDApOyAtLXN0YXR1cy13YXJuaW5nLWJnOiNGRkYwRTQ7IC0tc3RhdHVzLXdhcm5pbmctYm9yZGVyOiNGRkNGQTY7XG4gIC0tc3RhdHVzLWRhbmdlcjp2YXIoLS1jb3JhbC03MDApOyAtLXN0YXR1cy1kYW5nZXItYmc6I0ZERUNFRjsgLS1zdGF0dXMtZGFuZ2VyLWJvcmRlcjojRjZCRkM4O1xuICAtLXN0YXR1cy1pbmZvOnZhcigtLW9jZWFuLTUwMCk7IC0tc3RhdHVzLWluZm8tYmc6dmFyKC0tb2NlYW4tNTApOyAtLXN0YXR1cy1pbmZvLWJvcmRlcjp2YXIoLS1vY2Vhbi0xMDApO1xuICAtLXN0YXR1cy1hY2NyZWRpdGVkOnZhcigtLWFtYmVyLTUwMCk7IC0tc3RhdHVzLWFjY3JlZGl0ZWQtYmc6I0ZCRjNFMjsgLS1zdGF0dXMtYWNjcmVkaXRlZC1ib3JkZXI6I0VBRDZBNjtcblxuICAvKiAtLS0tIEZvY3VzIHJpbmcgLS0tLSAqL1xuICAtLWZvY3VzLXJpbmc6MCAwIDAgM3B4IHJnYmEoNjEsMTMyLDI0NiwuMzIpO1xufVxuIiwiOnJvb3R7XG4gIC0tZm9udC1kaXNwbGF5OlwiT3V0Zml0XCIsXCJQbHVzIEpha2FydGEgU2Fuc1wiLHN5c3RlbS11aSwtYXBwbGUtc3lzdGVtLFwiU2Vnb2UgVUlcIixzYW5zLXNlcmlmO1xuICAtLWRzLWZvbnQtc2FuczpcIlBsdXMgSmFrYXJ0YSBTYW5zXCIsXCJPdXRmaXRcIixzeXN0ZW0tdWksLWFwcGxlLXN5c3RlbSxcIlNlZ29lIFVJXCIsc2Fucy1zZXJpZjtcbiAgLS1kcy1mb250LW1vbm86XCJTcGFjZSBNb25vXCIsdWktbW9ub3NwYWNlLFwiU0ZNb25vLVJlZ3VsYXJcIixNZW5sbyxtb25vc3BhY2U7XG5cbiAgLS1mdy1saWdodDozMDA7IC0tZnctcmVndWxhcjo0MDA7IC0tZnctbWVkaXVtOjUwMDsgLS1mdy1zZW1pYm9sZDo2MDA7IC0tZnctYm9sZDo3MDA7IC0tZnctZXh0cmFib2xkOjgwMDtcblxuICAvKiBzaXplIHJhbXAgKi9cbiAgLS1mcy0zeHM6MTFweDsgLS1mcy0yeHM6MTJweDsgLS1mcy14czoxM3B4OyAtLWZzLXNtOjE0cHg7IC0tZnMtbWQ6MTVweDsgLS1mcy1iYXNlOjE2cHg7XG4gIC0tZnMtbGc6MThweDsgLS1mcy14bDoyMHB4OyAtLWZzLTJ4bDoyNHB4OyAtLWZzLTN4bDozMHB4OyAtLWZzLTR4bDozOHB4OyAtLWZzLTV4bDo0OHB4OyAtLWZzLTZ4bDo2MHB4O1xuXG4gIC0tbGgtdGlnaHQ6MS4xOyAtLWxoLXNudWc6MS4yNTsgLS1saC1ub3JtYWw6MS41OyAtLWxoLXJlbGF4ZWQ6MS42NTtcbiAgLS1scy10aWdodGVyOi0wLjAzZW07IC0tbHMtdGlnaHQ6LTAuMDE4ZW07IC0tbHMtbm9ybWFsOjA7IC0tbHMtd2lkZTowLjAyZW07IC0tbHMtY2FwczowLjA4ZW07XG5cbiAgLyogY29tcG9zZWQgcm9sZXMgKi9cbiAgLS10eXBlLWRpc3BsYXk6dmFyKC0tZnctc2VtaWJvbGQpIHZhcigtLWZzLTZ4bCkvdmFyKC0tbGgtdGlnaHQpIHZhcigtLWZvbnQtZGlzcGxheSk7XG4gIC0tdHlwZS1oMTp2YXIoLS1mdy1zZW1pYm9sZCkgdmFyKC0tZnMtNXhsKS92YXIoLS1saC10aWdodCkgdmFyKC0tZm9udC1kaXNwbGF5KTtcbiAgLS10eXBlLWgyOnZhcigtLWZ3LXNlbWlib2xkKSB2YXIoLS1mcy00eGwpL3ZhcigtLWxoLXNudWcpIHZhcigtLWZvbnQtZGlzcGxheSk7XG4gIC0tdHlwZS1oMzp2YXIoLS1mdy1zZW1pYm9sZCkgdmFyKC0tZnMtM3hsKS92YXIoLS1saC1zbnVnKSB2YXIoLS1mb250LWRpc3BsYXkpO1xuICAtLXR5cGUtaDQ6dmFyKC0tZnctc2VtaWJvbGQpIHZhcigtLWZzLTJ4bCkvdmFyKC0tbGgtc251ZykgdmFyKC0tZm9udC1kaXNwbGF5KTtcbiAgLS10eXBlLWg1OnZhcigtLWZ3LXNlbWlib2xkKSB2YXIoLS1mcy14bCkvdmFyKC0tbGgtc251ZykgdmFyKC0tZm9udC1kaXNwbGF5KTtcbiAgLS10eXBlLWxlYWQ6dmFyKC0tZnctcmVndWxhcikgdmFyKC0tZnMtbGcpL3ZhcigtLWxoLXJlbGF4ZWQpIHZhcigtLWRzLWZvbnQtc2Fucyk7XG4gIC0tdHlwZS1ib2R5OnZhcigtLWZ3LXJlZ3VsYXIpIHZhcigtLWZzLWJhc2UpL3ZhcigtLWxoLXJlbGF4ZWQpIHZhcigtLWRzLWZvbnQtc2Fucyk7XG4gIC0tdHlwZS1ib2R5LXNtOnZhcigtLWZ3LXJlZ3VsYXIpIHZhcigtLWZzLXNtKS92YXIoLS1saC1ub3JtYWwpIHZhcigtLWRzLWZvbnQtc2Fucyk7XG4gIC0tdHlwZS1sYWJlbDp2YXIoLS1mdy1zZW1pYm9sZCkgdmFyKC0tZnMtc20pLzEuMyB2YXIoLS1kcy1mb250LXNhbnMpO1xuICAtLXR5cGUtYnV0dG9uOnZhcigtLWZ3LXNlbWlib2xkKSB2YXIoLS1mcy1tZCkvMSB2YXIoLS1kcy1mb250LXNhbnMpO1xuICAtLXR5cGUtY2FwdGlvbjp2YXIoLS1mdy1tZWRpdW0pIHZhcigtLWZzLTJ4cykvMS40IHZhcigtLWRzLWZvbnQtc2Fucyk7XG4gIC0tdHlwZS1leWVicm93OnZhcigtLWZ3LWJvbGQpIHZhcigtLWZzLTJ4cykvMS4yIHZhcigtLWRzLWZvbnQtc2Fucyk7XG4gIC0tdHlwZS1tb25vOnZhcigtLWZ3LXJlZ3VsYXIpIHZhcigtLWZzLTJ4cykvMS40IHZhcigtLWRzLWZvbnQtbW9ubyk7XG59XG4iLCI6cm9vdHtcbiAgLyogNHB4IGJhc2UgZ3JpZDsgMnB4IGFuZCA2cHggZXhpc3QgZm9yIGNvbnRyb2wgaW50ZXJpb3JzICovXG4gIC0tc3BhY2UtMDowcHg7IC0tc3BhY2UtMDU6MnB4OyAtLXNwYWNlLTE6NHB4OyAtLXNwYWNlLTE1OjZweDsgLS1zcGFjZS0yOjhweDsgLS1zcGFjZS0zOjEycHg7XG4gIC0tc3BhY2UtNDoxNnB4OyAtLXNwYWNlLTU6MjBweDsgLS1zcGFjZS02OjI0cHg7IC0tc3BhY2UtNzoyOHB4OyAtLXNwYWNlLTg6MzJweDsgLS1zcGFjZS0xMDo0MHB4O1xuICAtLXNwYWNlLTEyOjQ4cHg7IC0tc3BhY2UtMTQ6NTZweDsgLS1zcGFjZS0xNjo2NHB4OyAtLXNwYWNlLTIwOjgwcHg7IC0tc3BhY2UtMjQ6OTZweDsgLS1zcGFjZS0zMjoxMjhweDtcblxuICAtLWd1dHRlci1wYWdlOjI0cHg7XG4gIC0tZHMtY29udGFpbmVyLXNtOjY0MHB4OyAtLWRzLWNvbnRhaW5lci1tZDo3NjhweDsgLS1kcy1jb250YWluZXItbGc6MTAyNHB4O1xuICAtLWRzLWNvbnRhaW5lci14bDoxMTUycHg7IC0tZHMtY29udGFpbmVyLTJ4bDoxMjgwcHg7XG5cbiAgLS1zZWN0aW9uLXk6OTZweDsgLS1zZWN0aW9uLXktdGlnaHQ6NjRweDtcbiAgLS1jYXJkLXBhZDoyNHB4OyAtLWNhcmQtcGFkLXNtOjE2cHg7IC0tY2FyZC1nYXA6MjBweDtcbiAgLS1jb250cm9sLWgtc206MzJweDsgLS1jb250cm9sLWgtbWQ6NDBweDsgLS1jb250cm9sLWgtbGc6NDhweDtcbn1cbiIsIjpyb290e1xuICAtLWRzLXJhZGl1cy14czo0cHg7IC0tZHMtcmFkaXVzLXNtOjZweDsgLS1kcy1yYWRpdXMtbWQ6MTBweDsgLS1kcy1yYWRpdXMtbGc6MTRweDtcbiAgLS1kcy1yYWRpdXMteGw6MjBweDsgLS1kcy1yYWRpdXMtMnhsOjI4cHg7IC0tcmFkaXVzLXBpbGw6OTk5cHg7IC0tcmFkaXVzLWNpcmNsZTo1MCU7XG5cbiAgLS1yYWRpdXMtY29udHJvbDoxMHB4OyAgIC8qIGJ1dHRvbnMsIGlucHV0cywgc2VsZWN0cyAqL1xuICAtLXJhZGl1cy1jYXJkOjE2cHg7ICAgICAgLyogY29udGVudCBjYXJkcywgcGFuZWxzICovXG4gIC0tcmFkaXVzLXN1cmZhY2U6MjBweDsgICAvKiBtb2RhbHMsIGxhcmdlIG1lZGlhLCBoZXJvIHBhbmVscyAqL1xuICAtLXJhZGl1cy1jaGlwOjk5OXB4OyAgICAgLyogYmFkZ2VzLCB0YWdzLCBmaWx0ZXIgcGlsbHMgKi9cbn1cbiIsIjpyb290e1xuICAvKiBMaWdodCwgY29vbC10aW50ZWQgc2hhZG93cyDigJQgdGhlIG9jZWFuIGh1ZSBibGVlZHMgaW50byB0aGUgdW1icmEsIG5ldmVyIG5ldXRyYWwgYmxhY2suICovXG4gIC0tc2hhZG93LXhzOjAgMXB4IDJweCByZ2JhKDMzLDQwLDc2LC4wNSk7XG4gIC0tc2hhZG93LXNtOjAgMXB4IDJweCByZ2JhKDMzLDQwLDc2LC4wNSksIDAgMnB4IDZweCByZ2JhKDI2LDkxLDE4NiwuMDYpO1xuICAtLXNoYWRvdy1tZDowIDJweCA0cHggcmdiYSgzMyw0MCw3NiwuMDQpLCAwIDhweCAyMHB4IHJnYmEoMjYsOTEsMTg2LC4wOSk7XG4gIC0tc2hhZG93LWxnOjAgNHB4IDhweCByZ2JhKDMzLDQwLDc2LC4wNCksIDAgMThweCA0MHB4IHJnYmEoMjYsOTEsMTg2LC4xMik7XG4gIC0tc2hhZG93LXhsOjAgOHB4IDE2cHggcmdiYSgzMyw0MCw3NiwuMDUpLCAwIDMycHggNjRweCByZ2JhKDI2LDkxLDE4NiwuMTYpO1xuICAtLXNoYWRvdy1pbnNldDppbnNldCAwIDFweCAwIHJnYmEoMjU1LDI1NSwyNTUsLjYpO1xuICAtLXNoYWRvdy1wcmltYXJ5OjAgNnB4IDE2cHggcmdiYSgyNiw5MSwxODYsLjI0KTtcbiAgLS1zaGFkb3ctYWNjZW50OjAgNnB4IDE2cHggcmdiYSgyMzYsODksOTIsLjI0KTtcbn1cbiIsIjpyb290e1xuICAtLWR1ci1pbnN0YW50OjgwbXM7IC0tZHVyLWZhc3Q6MTQwbXM7IC0tZHVyLWJhc2U6MjIwbXM7IC0tZHVyLXNsb3c6MzQwbXM7IC0tZHVyLXNsb3dlcjo1MjBtcztcbiAgLS1lYXNlLXN0YW5kYXJkOmN1YmljLWJlemllciguMzIsLjcyLC4zMiwxKTtcbiAgLS1kcy1lYXNlLW91dDpjdWJpYy1iZXppZXIoLjE2LDEsLjMsMSk7XG4gIC0tZHMtZWFzZS1pbjpjdWJpYy1iZXppZXIoLjUsMCwuOSwuMik7XG4gIC0tZWFzZS1zb2Z0LXNwcmluZzpjdWJpYy1iZXppZXIoLjM0LDEuMzIsLjUsMSk7XG5cbiAgLS10cmFuc2l0aW9uLWNvbnRyb2w6YmFja2dyb3VuZC1jb2xvciB2YXIoLS1kdXItZmFzdCkgdmFyKC0tZWFzZS1zdGFuZGFyZCksYm9yZGVyLWNvbG9yIHZhcigtLWR1ci1mYXN0KSB2YXIoLS1lYXNlLXN0YW5kYXJkKSxjb2xvciB2YXIoLS1kdXItZmFzdCkgdmFyKC0tZWFzZS1zdGFuZGFyZCksYm94LXNoYWRvdyB2YXIoLS1kdXItZmFzdCkgdmFyKC0tZWFzZS1zdGFuZGFyZCksdHJhbnNmb3JtIHZhcigtLWR1ci1mYXN0KSB2YXIoLS1lYXNlLXN0YW5kYXJkKTtcbiAgLS10cmFuc2l0aW9uLXN1cmZhY2U6dHJhbnNmb3JtIHZhcigtLWR1ci1iYXNlKSB2YXIoLS1kcy1lYXNlLW91dCksYm94LXNoYWRvdyB2YXIoLS1kdXItYmFzZSkgdmFyKC0tZHMtZWFzZS1vdXQpO1xuXG4gIC0tbGlmdC1ob3Zlcjp0cmFuc2xhdGVZKC0ycHgpO1xuICAtLWxpZnQtY2FyZDp0cmFuc2xhdGVZKC00cHgpO1xuICAtLXByZXNzLXNjYWxlOnNjYWxlKC45Nyk7XG59XG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246cmVkdWNlKXtcbiAgOnJvb3R7LS1kdXItaW5zdGFudDowbXM7LS1kdXItZmFzdDowbXM7LS1kdXItYmFzZTowbXM7LS1kdXItc2xvdzowbXM7LS1kdXItc2xvd2VyOjBtczstLWxpZnQtaG92ZXI6bm9uZTstLWxpZnQtY2FyZDpub25lOy0tcHJlc3Mtc2NhbGU6bm9uZX1cbn1cbiIsIi8qIE1pbmltYWwgZWxlbWVudCBkZWZhdWx0cy4gQ29tcG9uZW50cyBjYXJyeSB0aGVpciBvd24gc3R5bGluZzsgdGhpcyBvbmx5IG1ha2VzXG4gICByYXcgSFRNTCBpbiBjYXJkcywga2l0cyBhbmQgcHJvdG90eXBlcyBsb29rIGxpa2UgdGhlIGJyYW5kLlxuXG4gICBFTFTDiVLDiVMgQSBGT1JSw4FTVMOTTCAoYXogZWd5ZXRsZW4gYSB0b2tlbmvDqXN6bGV0YmVuKS4gQSBkZXNpZ24gcHJvamVrdGJlbiBlemVrIGFcbiAgIHN6YWLDoWx5b2sgY3N1cGFzeiBlbGVtc3plbGVrdG9yb2tvbiDDvGxuZWsgKGBib2R5YCwgYGgxYOKApmBoNWAsIGBwYCwgYGFgKSwgbWVydCBvdHRcbiAgIG1pbmRlbiBvbGRhbCBhIGRlc2lnbiBzeXN0ZW3DqS4gSXR0IHZpc3pvbnQgYSBzdMOtbHVzbGFwIE1JTkRFTiBwdWJsaWt1cyBvbGRhbHJhXG4gICBiZXTDtmx0xZFkaWsg4oCUIGEgY2hyb21lIChmZWpsw6ljL2zDoWJsw6ljKSBtaWF0dCDigJQsIMOpcyBhIGB0ZW1wbGF0ZXMvYCBhbGF0dCBtw6lnIH4zMFxuICAgVGFpbHdpbmRlcyBzYWJsb24gw6lsIChjaGVja291dCwgdsOhbmRvcmd5xbFsw6lzLCDDvGd5aW50w6l6w6lzLCBxcl9yZWFkZXIpLiBDc3VwYXN6XG4gICBlbGVtc3plbGVrdG9yb2trYWwgYXpvayB0aXBvZ3LDoWZpw6Fqw6F0IGlzIMOhdMOtcm7DoW5rLlxuXG4gICBFesOpcnQgYSByZXNldCBgLmRzYCBhbMOhIHZhbiBzesWxa8OtdHZlIOKAlCBkZSBgOndoZXJlKClgLXJlbCwgYW1pIE5FTSBhZCBzcGVjaWZpY2l0w6FzdC5cbiAgIEVuw6lsa8O8bCBgLmRzIGFgICgwLDEsMSkgZXLFkXNlYmIgbGVubmUsIG1pbnQgYC5kcy1idG4tLXByaW1hcnlgICgwLDEsMCksIMOpcyBtaW5kZW5cbiAgIGxpbmtixZFsIMOpcMOtdGV0dCBrb21wb25lbnMgdmlzc3pha2FwbsOhIGEgbGluay1rw6lrZXQ6IGEga8OpayBnb21iIGvDqWsgZmVsaXJhdG90IGthcG5hXG4gICAob2x2YXNoYXRhdGxhbiksIGEgbMOhYmzDqWMgdmlsw6Fnb3MgbGlua2plaSBzemludMOpbiBlbGvDqWvDvGxuw6luZWsuIEEgYDp3aGVyZSguZHMpIGFgXG4gICBwb250b3NhbiAwLDAsMSDigJQgdWd5YW5heiwgbWludCBhIGZvcnLDoXNiZWxpIGNzdXBhc3ogYGFgIOKAlCwgw61neSBhIGtvbXBvbmVuc29zenTDoWx5b2tcbiAgIHVneWFuw7pneSBueWVybmVrLCBtaW50IGEgZGVzaWduIHByb2pla3RiZW4uIEEgYC5kc2AgZ3nDtmvDqXIgbWFnYSBtYXJhZCBzaW1hIG9zenTDoWx5OlxuICAgYXogY3NhayBheiDDtnLDtmvDtmx0IGFsYXDDqXJ0w6lrZWtldCDDoWxsw610amEsIMO8dGvDtnrDqXMgbsOpbGvDvGwuICovXG5cbi5kcywuZHMgKiwuZHMgKjo6YmVmb3JlLC5kcyAqOjphZnRlcntib3gtc2l6aW5nOmJvcmRlci1ib3h9XG4uZHN7Zm9udDp2YXIoLS10eXBlLWJvZHkpO2NvbG9yOnZhcigtLXRleHQtYm9keSk7YmFja2dyb3VuZDp2YXIoLS1zdXJmYWNlLXBhZ2UpOy13ZWJraXQtZm9udC1zbW9vdGhpbmc6YW50aWFsaWFzZWQ7dGV4dC1yZW5kZXJpbmc6b3B0aW1pemVMZWdpYmlsaXR5fVxuOndoZXJlKC5kcykgaDEsOndoZXJlKC5kcykgaDIsOndoZXJlKC5kcykgaDMsOndoZXJlKC5kcykgaDQsOndoZXJlKC5kcykgaDV7bWFyZ2luOjA7Y29sb3I6dmFyKC0tdGV4dC1zdHJvbmcpO2xldHRlci1zcGFjaW5nOnZhcigtLWxzLXRpZ2h0KTt0ZXh0LXdyYXA6YmFsYW5jZX1cbjp3aGVyZSguZHMpIGgxe2ZvbnQ6dmFyKC0tdHlwZS1oMSl9XG46d2hlcmUoLmRzKSBoMntmb250OnZhcigtLXR5cGUtaDIpfVxuOndoZXJlKC5kcykgaDN7Zm9udDp2YXIoLS10eXBlLWgzKX1cbjp3aGVyZSguZHMpIGg0e2ZvbnQ6dmFyKC0tdHlwZS1oNCl9XG46d2hlcmUoLmRzKSBoNXtmb250OnZhcigtLXR5cGUtaDUpfVxuOndoZXJlKC5kcykgcHttYXJnaW46MDt0ZXh0LXdyYXA6cHJldHR5fVxuOndoZXJlKC5kcykgYXtjb2xvcjp2YXIoLS10ZXh0LWxpbmspO3RleHQtZGVjb3JhdGlvbjpub25lO3RyYW5zaXRpb246Y29sb3IgdmFyKC0tZHVyLWZhc3QpIHZhcigtLWVhc2Utc3RhbmRhcmQpfVxuOndoZXJlKC5kcykgYTpob3Zlcntjb2xvcjp2YXIoLS10ZXh0LWxpbmstaG92ZXIpO3RleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmU7dGV4dC11bmRlcmxpbmUtb2Zmc2V0OjNweH1cbjp3aGVyZSguZHMpIGE6Zm9jdXMtdmlzaWJsZSw6d2hlcmUoLmRzKSBidXR0b246Zm9jdXMtdmlzaWJsZSw6d2hlcmUoLmRzKSBpbnB1dDpmb2N1cy12aXNpYmxlLDp3aGVyZSguZHMpIHNlbGVjdDpmb2N1cy12aXNpYmxlLDp3aGVyZSguZHMpIHRleHRhcmVhOmZvY3VzLXZpc2libGUsOndoZXJlKC5kcykgW3RhYmluZGV4XTpmb2N1cy12aXNpYmxle291dGxpbmU6MnB4IHNvbGlkIHZhcigtLWJvcmRlci1mb2N1cyk7b3V0bGluZS1vZmZzZXQ6MnB4O2JvcmRlci1yYWRpdXM6dmFyKC0tZHMtcmFkaXVzLXhzKX1cbjp3aGVyZSguZHMpIDo6c2VsZWN0aW9ue2JhY2tncm91bmQ6dmFyKC0tb2NlYW4tMTAwKTtjb2xvcjp2YXIoLS1pbmstOTAwKX1cbiIsIi8qXG4gICAgSm9nw6FzemVneWxldCBLw6lwesOpcyDigJQgZGVzaWduIHN5c3RlbSBrb21wb25lbnNyw6l0ZWcuXG5cbiAgICBBIGRlc2lnbiBwcm9qZWt0IChjbGF1ZGUuYWkvZGVzaWduKSBhIGtvbXBvbmVuc2VrZXQgUmVhY3QgSlNYLWJlbiwgaW5saW5lXG4gICAgc3TDrWx1c29ra2FsIHN6w6FsbMOtdGphLiBFeiBheiBhcHAgVHdpZyBzYWJsb25va2thbCBkb2xnb3ppaywgZXrDqXJ0IGEga29tcG9uZW5zZWtcbiAgICBpdHQgb3N6dMOhbHlva3JhIHZhbm5hayBmb3Jkw610dmEg4oCUIDE6MS1iZW4gdWd5YW5hem9rYsOzbCBhIHRva2VuZWtixZFsLCB1Z3lhbmF6b2trYWxcbiAgICBheiDDoWxsYXBvdG9ra2FsIChob3Zlci9wcmVzcy9mb2N1cy9kaXNhYmxlZCksIG1pbnQgYSBKU1ggZm9ycsOhcy5cblxuICAgIEZvcnLDoXNtZWdmZWxlbHRldMOpczpcbiAgICAgIC5kcy1idG4gICAgICAgICDihpAgY29tcG9uZW50cy9jb3JlL0J1dHRvbi5qc3hcbiAgICAgIC5kcy1jYXJkICAgICAgICDihpAgY29tcG9uZW50cy9jb3JlL0NhcmQuanN4XG4gICAgICAuZHMtYmFkZ2UgICAgICAg4oaQIGNvbXBvbmVudHMvY29yZS9CYWRnZS5qc3hcbiAgICAgIC5kcy10YWcgICAgICAgICDihpAgY29tcG9uZW50cy9jb3JlL1RhZy5qc3hcbiAgICAgIC5kcy1hbGVydCAgICAgICDihpAgY29tcG9uZW50cy9mZWVkYmFjay9BbGVydC5qc3hcbiAgICAgIC5kcy1ldmVudCAgICAgICDihpAgY29tcG9uZW50cy9sZWFybmluZy9FdmVudENhcmQuanN4XG4gICAgICAuZHMtc3BlYWtlciAgICAg4oaQIGNvbXBvbmVudHMvbGVhcm5pbmcvU3BlYWtlckNhcmQuanN4XG4gICAgICAuZHMtc2VjdGlvbiAgICAg4oaQIHVpX2tpdHMva2VwemVzL0Nocm9tZS5qc3ggKFNlY3Rpb24pXG4gICAgICAuZHMtaGVhZGVyICAgICAg4oaQIHVpX2tpdHMva2VwemVzL0Nocm9tZS5qc3ggKEhlYWRlcilcbiAgICAgIC5kcy1mb290ZXIgICAgICDihpAgdWlfa2l0cy9rZXB6ZXMvQ2hyb21lLmpzeCAoRm9vdGVyKVxuICAgICAgLmRzLWhlcm8sXG4gICAgICAuZHMtcHJvZmVzc2lvbnMsXG4gICAgICAuZHMtdGlsZXMgICAgICAg4oaQIHVpX2tpdHMva2VwemVzL0hvbWVTY3JlZW4uanN4XG5cbiAgICBLSUVHw4lTWsONVMOJUyBBIEZPUlLDgVNIT1ogS8OJUEVTVDogYSBVSSBraXQgZml4IGFzenRhbGkgcsOhY3Nva2thbCBkb2xnb3ppa1xuICAgIChgcmVwZWF0KDQsMWZyKWApLCB0w7Zyw6lzcG9udG9rIG7DqWxrw7xsIOKAlCBwcm90b3TDrXB1c25hayBlbMOpZywgw6lsZXMgb2xkYWxuYWsgbmVtLlxuICAgIEEgdMO2csOpc3BvbnRvayBpdHQgbGV0dGVrIGhvenrDoWFkdmE7IGEgZGVzaWduIHN5c3RlbSBlZ3nDqWIgc3phYsOhbHnDoXQgbmVtIMOtcmrDoWsgZmVsw7xsLlxuKi9cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIEVscmVuZGV6w6lzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4uZHMtY29udGFpbmVye1xuICAgIG1heC13aWR0aDp2YXIoLS1kcy1jb250YWluZXItMnhsKTtcbiAgICBtYXJnaW46MCBhdXRvO1xuICAgIHBhZGRpbmctaW5saW5lOnZhcigtLXNwYWNlLTgpO1xufVxuXG4uZHMtc2VjdGlvbntcbiAgICBtYXgtd2lkdGg6dmFyKC0tZHMtY29udGFpbmVyLTJ4bCk7XG4gICAgbWFyZ2luOjAgYXV0bztcbiAgICBwYWRkaW5nOnZhcigtLXNlY3Rpb24teS10aWdodCkgdmFyKC0tc3BhY2UtOCk7XG59XG4uZHMtc2VjdGlvbi0tZmx1c2h7cGFkZGluZy10b3A6MH1cblxuLmRzLXNlY3Rpb25fX2hlYWR7XG4gICAgZGlzcGxheTpmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOmNvbHVtbjtcbiAgICBnYXA6dmFyKC0tc3BhY2UtMyk7XG4gICAgbWF4LXdpZHRoOjY0MHB4O1xuICAgIG1hcmdpbi1ib3R0b206dmFyKC0tc3BhY2UtMTApO1xufVxuLmRzLWV5ZWJyb3d7XG4gICAgZm9udDp2YXIoLS10eXBlLWV5ZWJyb3cpO1xuICAgIHRleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTtcbiAgICBsZXR0ZXItc3BhY2luZzp2YXIoLS1scy1jYXBzKTtcbiAgICBjb2xvcjp2YXIoLS1vY2Vhbi02MDApO1xufVxuLmRzLXNlY3Rpb25fX3RpdGxle2ZvbnQ6dmFyKC0tdHlwZS1oMik7Y29sb3I6dmFyKC0tdGV4dC1zdHJvbmcpO2xldHRlci1zcGFjaW5nOnZhcigtLWxzLXRpZ2h0KX1cbi5kcy1zZWN0aW9uX19sZWFke2ZvbnQ6dmFyKC0tdHlwZS1sZWFkKTtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKX1cblxuQG1lZGlhIChtYXgtd2lkdGg6NjQwcHgpe1xuICAgIC5kcy1jb250YWluZXJ7cGFkZGluZy1pbmxpbmU6dmFyKC0tc3BhY2UtNSl9XG4gICAgLmRzLXNlY3Rpb257cGFkZGluZzp2YXIoLS1zcGFjZS0xMikgdmFyKC0tc3BhY2UtNSl9XG4gICAgLmRzLXNlY3Rpb25fX2hlYWR7bWFyZ2luLWJvdHRvbTp2YXIoLS1zcGFjZS04KX1cbiAgICAuZHMtc2VjdGlvbl9fdGl0bGV7Zm9udDp2YXIoLS10eXBlLWgzKX1cbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIEJ1dHRvbiDigJQgY29tcG9uZW50cy9jb3JlL0J1dHRvbi5qc3hcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi5kcy1idG57XG4gICAgZGlzcGxheTppbmxpbmUtZmxleDtcbiAgICBhbGlnbi1pdGVtczpjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OmNlbnRlcjtcbiAgICBnYXA6OHB4O1xuICAgIGhlaWdodDp2YXIoLS1jb250cm9sLWgtbWQpO1xuICAgIHBhZGRpbmc6MCB2YXIoLS1zcGFjZS01KTtcbiAgICBmb250OnZhcigtLXR5cGUtYnV0dG9uKTtcbiAgICBsZXR0ZXItc3BhY2luZzp2YXIoLS1scy10aWdodCk7XG4gICAgYm9yZGVyLXJhZGl1czp2YXIoLS1yYWRpdXMtY29udHJvbCk7XG4gICAgYm9yZGVyOjFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBjdXJzb3I6cG9pbnRlcjtcbiAgICB0ZXh0LWRlY29yYXRpb246bm9uZTtcbiAgICB3aGl0ZS1zcGFjZTpub3dyYXA7XG4gICAgdHJhbnNpdGlvbjp2YXIoLS10cmFuc2l0aW9uLWNvbnRyb2wpO1xufVxuLmRzLWJ0bjpob3Zlcnt0ZXh0LWRlY29yYXRpb246bm9uZX1cbi5kcy1idG46YWN0aXZle3RyYW5zZm9ybTp2YXIoLS1wcmVzcy1zY2FsZSl9XG5cbi8qIG3DqXJldGVrICovXG4uZHMtYnRuLS1zbXtoZWlnaHQ6dmFyKC0tY29udHJvbC1oLXNtKTtwYWRkaW5nOjAgdmFyKC0tc3BhY2UtMyk7Zm9udDp2YXIoLS1mdy1zZW1pYm9sZCkgdmFyKC0tZnMtc20pLzEgdmFyKC0tZHMtZm9udC1zYW5zKTtnYXA6NnB4fVxuLmRzLWJ0bi0tbGd7aGVpZ2h0OnZhcigtLWNvbnRyb2wtaC1sZyk7cGFkZGluZzowIHZhcigtLXNwYWNlLTcpO2ZvbnQ6dmFyKC0tZnctc2VtaWJvbGQpIHZhcigtLWZzLWJhc2UpLzEgdmFyKC0tZHMtZm9udC1zYW5zKTtnYXA6MTBweH1cblxuLyogdsOhbHRvemF0b2sgKi9cbi5kcy1idG4tLXByaW1hcnl7YmFja2dyb3VuZDp2YXIoLS1hY3Rpb24tcHJpbWFyeSk7Y29sb3I6dmFyKC0tdGV4dC1vbi1wcmltYXJ5KTtib3gtc2hhZG93OnZhcigtLXNoYWRvdy1wcmltYXJ5KX1cbi5kcy1idG4tLXByaW1hcnk6aG92ZXJ7YmFja2dyb3VuZDp2YXIoLS1hY3Rpb24tcHJpbWFyeS1ob3Zlcik7Y29sb3I6dmFyKC0tdGV4dC1vbi1wcmltYXJ5KX1cbi5kcy1idG4tLXByaW1hcnk6YWN0aXZle2JhY2tncm91bmQ6dmFyKC0tYWN0aW9uLXByaW1hcnktYWN0aXZlKX1cblxuLmRzLWJ0bi0tc2Vjb25kYXJ5e2JhY2tncm91bmQ6dmFyKC0tYWN0aW9uLXNlY29uZGFyeSk7Y29sb3I6dmFyKC0tb2NlYW4tNzAwKTtib3JkZXItY29sb3I6dmFyKC0tYm9yZGVyLXRpbnQpO2JveC1zaGFkb3c6bm9uZX1cbi5kcy1idG4tLXNlY29uZGFyeTpob3ZlcntiYWNrZ3JvdW5kOnZhcigtLWFjdGlvbi1zZWNvbmRhcnktaG92ZXIpO2NvbG9yOnZhcigtLW9jZWFuLTcwMCl9XG5cbi5kcy1idG4tLW91dGxpbmV7YmFja2dyb3VuZDp2YXIoLS1zdXJmYWNlLWNhcmQpO2NvbG9yOnZhcigtLXRleHQtc3Ryb25nKTtib3JkZXItY29sb3I6dmFyKC0tYm9yZGVyLWRlZmF1bHQpO2JveC1zaGFkb3c6dmFyKC0tc2hhZG93LXhzKX1cbi5kcy1idG4tLW91dGxpbmU6aG92ZXJ7YmFja2dyb3VuZDp2YXIoLS1zdXJmYWNlLWhvdmVyKTtib3JkZXItY29sb3I6dmFyKC0tYm9yZGVyLXN0cm9uZyk7Y29sb3I6dmFyKC0tdGV4dC1zdHJvbmcpfVxuXG4uZHMtYnRuLS1naG9zdHtiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O2NvbG9yOnZhcigtLW9jZWFuLTcwMCk7Ym94LXNoYWRvdzpub25lfVxuLmRzLWJ0bi0tZ2hvc3Q6aG92ZXJ7YmFja2dyb3VuZDp2YXIoLS1vY2Vhbi01MCk7Y29sb3I6dmFyKC0tb2NlYW4tNzAwKX1cblxuLmRzLWJ0bi0tYWNjZW50e2JhY2tncm91bmQ6dmFyKC0tYWN0aW9uLWFjY2VudCk7Y29sb3I6I2ZmZjtib3gtc2hhZG93OnZhcigtLXNoYWRvdy1hY2NlbnQpfVxuLmRzLWJ0bi0tYWNjZW50OmhvdmVye2JhY2tncm91bmQ6dmFyKC0tYWN0aW9uLWFjY2VudC1ob3Zlcik7Y29sb3I6I2ZmZn1cblxuLmRzLWJ0bi0tZGFuZ2Vye2JhY2tncm91bmQ6dmFyKC0tc3RhdHVzLWRhbmdlcik7Y29sb3I6I2ZmZjtib3gtc2hhZG93Om5vbmV9XG4uZHMtYnRuLS1kYW5nZXI6aG92ZXJ7YmFja2dyb3VuZDojQTMxQjMwO2NvbG9yOiNmZmZ9XG5cbi5kcy1idG4tLWJsb2Nre2Rpc3BsYXk6ZmxleDt3aWR0aDoxMDAlfVxuLmRzLWJ0bltkaXNhYmxlZF0sLmRzLWJ0blthcmlhLWRpc2FibGVkPVwidHJ1ZVwiXXtvcGFjaXR5Oi41O2N1cnNvcjpub3QtYWxsb3dlZDtib3gtc2hhZG93Om5vbmU7dHJhbnNmb3JtOm5vbmV9XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBDYXJkIOKAlCBjb21wb25lbnRzL2NvcmUvQ2FyZC5qc3hcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi5kcy1jYXJke1xuICAgIGJhY2tncm91bmQ6dmFyKC0tc3VyZmFjZS1jYXJkKTtcbiAgICBib3JkZXI6MXB4IHNvbGlkIHZhcigtLWJvcmRlci1oYWlybGluZSk7XG4gICAgYm9yZGVyLXJhZGl1czp2YXIoLS1yYWRpdXMtY2FyZCk7XG4gICAgcGFkZGluZzp2YXIoLS1jYXJkLXBhZCk7XG4gICAgYm94LXNoYWRvdzp2YXIoLS1zaGFkb3ctc20pO1xuICAgIHRyYW5zaXRpb246dmFyKC0tdHJhbnNpdGlvbi1zdXJmYWNlKSxib3JkZXItY29sb3IgdmFyKC0tZHVyLWJhc2UpIHZhcigtLWRzLWVhc2Utb3V0KTtcbn1cbi5kcy1jYXJkLS1mbHVzaHtwYWRkaW5nOjA7b3ZlcmZsb3c6aGlkZGVufVxuLmRzLWNhcmQtLXRpbnR7YmFja2dyb3VuZDp2YXIoLS1zdXJmYWNlLXRpbnQpO2JvcmRlci1jb2xvcjp2YXIoLS1ib3JkZXItdGludCl9XG4uZHMtY2FyZC0tc3Vua2Vue2JhY2tncm91bmQ6dmFyKC0tc3VyZmFjZS1zdW5rZW4pfVxuLmRzLWNhcmQtLWZsYXR7Ym94LXNoYWRvdzpub25lfVxuLmRzLWNhcmQtLW1ke2JveC1zaGFkb3c6dmFyKC0tc2hhZG93LW1kKX1cbi5kcy1jYXJkLS1sZ3tib3gtc2hhZG93OnZhcigtLXNoYWRvdy1sZyl9XG5cbi5kcy1jYXJkLS1pbnRlcmFjdGl2ZXtjdXJzb3I6cG9pbnRlcn1cbi5kcy1jYXJkLS1pbnRlcmFjdGl2ZTpob3ZlcntcbiAgICBib3gtc2hhZG93OnZhcigtLXNoYWRvdy1sZyk7XG4gICAgdHJhbnNmb3JtOnZhcigtLWxpZnQtY2FyZCk7XG4gICAgYm9yZGVyLWNvbG9yOnZhcigtLWJvcmRlci10aW50KTtcbn1cbi8qIEEga8OhcnR5YSBlZ8Opc3plIGthdHRpbnRoYXTDszogYSBsaW5rZXQga2l0ZXLDrXRqw7xrLCBkZSBhIGJlbHPFkSBnb21ib2sgZsO2bMOpIG5lbSBtZWd5LiAqL1xuLmRzLWNhcmQtLWludGVyYWN0aXZlOmZvY3VzLXdpdGhpbntib3JkZXItY29sb3I6dmFyKC0tYm9yZGVyLXRpbnQpfVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQmFkZ2Ug4oCUIGNvbXBvbmVudHMvY29yZS9CYWRnZS5qc3hcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi5kcy1iYWRnZXtcbiAgICBkaXNwbGF5OmlubGluZS1mbGV4O1xuICAgIGFsaWduLWl0ZW1zOmNlbnRlcjtcbiAgICBnYXA6NnB4O1xuICAgIGhlaWdodDoyNHB4O1xuICAgIHBhZGRpbmc6MCAxMHB4O1xuICAgIGJvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLWNoaXApO1xuICAgIGZvbnQtZmFtaWx5OnZhcigtLWRzLWZvbnQtc2Fucyk7XG4gICAgZm9udC1zaXplOnZhcigtLWZzLTJ4cyk7XG4gICAgZm9udC13ZWlnaHQ6dmFyKC0tZnctc2VtaWJvbGQpO1xuICAgIGxldHRlci1zcGFjaW5nOnZhcigtLWxzLXdpZGUpO1xuICAgIHdoaXRlLXNwYWNlOm5vd3JhcDtcbiAgICBiYWNrZ3JvdW5kOnZhcigtLXNsYXRlLTEwMCk7XG4gICAgY29sb3I6dmFyKC0tc2xhdGUtNjAwKTtcbiAgICBib3JkZXI6MXB4IHNvbGlkIHZhcigtLWJvcmRlci1oYWlybGluZSk7XG59XG4uZHMtYmFkZ2UtLXNte2hlaWdodDoyMHB4O3BhZGRpbmc6MCA4cHg7Zm9udC1zaXplOnZhcigtLWZzLTN4cyk7Z2FwOjRweH1cblxuLmRzLWJhZGdlLS1vY2VhbntiYWNrZ3JvdW5kOnZhcigtLW9jZWFuLTUwKTtjb2xvcjp2YXIoLS1vY2Vhbi03MDApO2JvcmRlci1jb2xvcjp2YXIoLS1ib3JkZXItdGludCl9XG4uZHMtYmFkZ2UtLWxhZ29vbntiYWNrZ3JvdW5kOnZhcigtLWxhZ29vbi01MCk7Y29sb3I6dmFyKC0tbGFnb29uLTcwMCk7Ym9yZGVyLWNvbG9yOiNCRUU5RjR9XG4uZHMtYmFkZ2UtLXN1Y2Nlc3N7YmFja2dyb3VuZDp2YXIoLS1zdGF0dXMtc3VjY2Vzcy1iZyk7Y29sb3I6dmFyKC0tc3RhdHVzLXN1Y2Nlc3MpO2JvcmRlci1jb2xvcjp2YXIoLS1zdGF0dXMtc3VjY2Vzcy1ib3JkZXIpfVxuLmRzLWJhZGdlLS13YXJuaW5ne2JhY2tncm91bmQ6dmFyKC0tc3RhdHVzLXdhcm5pbmctYmcpO2NvbG9yOnZhcigtLWVtYmVyLTcwMCk7Ym9yZGVyLWNvbG9yOnZhcigtLXN0YXR1cy13YXJuaW5nLWJvcmRlcil9XG4uZHMtYmFkZ2UtLWRhbmdlcntiYWNrZ3JvdW5kOnZhcigtLXN0YXR1cy1kYW5nZXItYmcpO2NvbG9yOnZhcigtLXN0YXR1cy1kYW5nZXIpO2JvcmRlci1jb2xvcjp2YXIoLS1zdGF0dXMtZGFuZ2VyLWJvcmRlcil9XG4uZHMtYmFkZ2UtLWFjY3JlZGl0ZWR7YmFja2dyb3VuZDp2YXIoLS1zdGF0dXMtYWNjcmVkaXRlZC1iZyk7Y29sb3I6dmFyKC0tYW1iZXItNzAwKTtib3JkZXItY29sb3I6dmFyKC0tc3RhdHVzLWFjY3JlZGl0ZWQtYm9yZGVyKX1cbi5kcy1iYWRnZS0tc29saWR7YmFja2dyb3VuZDp2YXIoLS1hY3Rpb24tcHJpbWFyeSk7Y29sb3I6I2ZmZjtib3JkZXItY29sb3I6dHJhbnNwYXJlbnR9XG5cbi8qIEEgc3rDrW4gc29oYSBuZW0gYXogZWd5ZXRsZW4gamVsesOpcyDigJQgYSBww7Z0dHkgYSBzesOzIG1lbGxldHQgw6FsbCwgbmVtIGhlbHlldHRlLiAqL1xuLmRzLWJhZGdlX19kb3R7d2lkdGg6NnB4O2hlaWdodDo2cHg7Ym9yZGVyLXJhZGl1czo1MCU7YmFja2dyb3VuZDpjdXJyZW50Q29sb3I7ZmxleDowIDAgYXV0b31cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIFRhZyDigJQgY29tcG9uZW50cy9jb3JlL1RhZy5qc3hcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi5kcy10YWd7XG4gICAgZGlzcGxheTppbmxpbmUtZmxleDtcbiAgICBhbGlnbi1pdGVtczpjZW50ZXI7XG4gICAgZ2FwOjZweDtcbiAgICBoZWlnaHQ6MzJweDtcbiAgICBwYWRkaW5nOjAgMTRweDtcbiAgICBib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy1jaGlwKTtcbiAgICBmb250LWZhbWlseTp2YXIoLS1kcy1mb250LXNhbnMpO1xuICAgIGZvbnQtc2l6ZTp2YXIoLS1mcy1zbSk7XG4gICAgZm9udC13ZWlnaHQ6dmFyKC0tZnctbWVkaXVtKTtcbiAgICBiYWNrZ3JvdW5kOnZhcigtLXN1cmZhY2UtY2FyZCk7XG4gICAgY29sb3I6dmFyKC0tdGV4dC1ib2R5KTtcbiAgICBib3JkZXI6MXB4IHNvbGlkIHZhcigtLWJvcmRlci1oYWlybGluZSk7XG4gICAgYm94LXNoYWRvdzp2YXIoLS1zaGFkb3cteHMpO1xuICAgIHRleHQtZGVjb3JhdGlvbjpub25lO1xuICAgIGN1cnNvcjpwb2ludGVyO1xuICAgIHVzZXItc2VsZWN0Om5vbmU7XG4gICAgdHJhbnNpdGlvbjp2YXIoLS10cmFuc2l0aW9uLWNvbnRyb2wpO1xufVxuLmRzLXRhZzpob3ZlcntiYWNrZ3JvdW5kOnZhcigtLW9jZWFuLTUwKTtib3JkZXItY29sb3I6dmFyKC0tYm9yZGVyLXRpbnQpO2NvbG9yOnZhcigtLXRleHQtYm9keSk7dGV4dC1kZWNvcmF0aW9uOm5vbmV9XG4uZHMtdGFnLS1zZWxlY3RlZHtiYWNrZ3JvdW5kOnZhcigtLWFjdGlvbi1wcmltYXJ5KTtjb2xvcjojZmZmO2JvcmRlci1jb2xvcjp0cmFuc3BhcmVudDtib3gtc2hhZG93OnZhcigtLXNoYWRvdy1wcmltYXJ5KX1cbi5kcy10YWctLXNlbGVjdGVkOmhvdmVye2JhY2tncm91bmQ6dmFyKC0tYWN0aW9uLXByaW1hcnktaG92ZXIpO2NvbG9yOiNmZmZ9XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBBbGVydCDigJQgY29tcG9uZW50cy9mZWVkYmFjay9BbGVydC5qc3hcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi5kcy1hbGVydHtcbiAgICBkaXNwbGF5OmZsZXg7XG4gICAgYWxpZ24taXRlbXM6ZmxleC1zdGFydDtcbiAgICBnYXA6dmFyKC0tc3BhY2UtMyk7XG4gICAgcGFkZGluZzp2YXIoLS1zcGFjZS00KSB2YXIoLS1zcGFjZS01KTtcbiAgICBib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy1jYXJkKTtcbiAgICBiYWNrZ3JvdW5kOnZhcigtLXN0YXR1cy1pbmZvLWJnKTtcbiAgICBib3JkZXI6MXB4IHNvbGlkIHZhcigtLXN0YXR1cy1pbmZvLWJvcmRlcik7XG4gICAgdGV4dC1kZWNvcmF0aW9uOm5vbmU7XG59XG4uZHMtYWxlcnQ6aG92ZXJ7dGV4dC1kZWNvcmF0aW9uOm5vbmV9XG4uZHMtYWxlcnRfX2ljb257ZGlzcGxheTpmbGV4O21hcmdpbi10b3A6MXB4O2ZsZXg6MCAwIGF1dG99XG4uZHMtYWxlcnRfX2JvZHl7ZmxleDoxO2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47Z2FwOjRweDttaW4td2lkdGg6MH1cbi5kcy1hbGVydF9fdGl0bGV7Zm9udDp2YXIoLS10eXBlLWxhYmVsKX1cbi5kcy1hbGVydF9fdGV4dHtmb250OnZhcigtLXR5cGUtYm9keS1zbSk7Y29sb3I6dmFyKC0tdGV4dC1ib2R5KX1cbi5kcy1hbGVydF9fYWN0aW9ue2ZsZXg6MCAwIGF1dG87YWxpZ24tc2VsZjpjZW50ZXJ9XG5cbi5kcy1hbGVydC0taW5mbyAuZHMtYWxlcnRfX2ljb24sLmRzLWFsZXJ0LS1pbmZvIC5kcy1hbGVydF9fdGl0bGV7Y29sb3I6dmFyKC0tb2NlYW4tODAwKX1cbi5kcy1hbGVydC0tc3VjY2Vzc3tiYWNrZ3JvdW5kOnZhcigtLXN0YXR1cy1zdWNjZXNzLWJnKTtib3JkZXItY29sb3I6dmFyKC0tc3RhdHVzLXN1Y2Nlc3MtYm9yZGVyKX1cbi5kcy1hbGVydC0tc3VjY2VzcyAuZHMtYWxlcnRfX2ljb24sLmRzLWFsZXJ0LS1zdWNjZXNzIC5kcy1hbGVydF9fdGl0bGV7Y29sb3I6IzBBNkI0M31cbi5kcy1hbGVydC0td2FybmluZ3tiYWNrZ3JvdW5kOnZhcigtLXN0YXR1cy13YXJuaW5nLWJnKTtib3JkZXItY29sb3I6dmFyKC0tc3RhdHVzLXdhcm5pbmctYm9yZGVyKX1cbi5kcy1hbGVydC0td2FybmluZyAuZHMtYWxlcnRfX2ljb24sLmRzLWFsZXJ0LS13YXJuaW5nIC5kcy1hbGVydF9fdGl0bGV7Y29sb3I6dmFyKC0tZW1iZXItNzAwKX1cbi5kcy1hbGVydC0tZGFuZ2Vye2JhY2tncm91bmQ6dmFyKC0tc3RhdHVzLWRhbmdlci1iZyk7Ym9yZGVyLWNvbG9yOnZhcigtLXN0YXR1cy1kYW5nZXItYm9yZGVyKX1cbi5kcy1hbGVydC0tZGFuZ2VyIC5kcy1hbGVydF9faWNvbiwuZHMtYWxlcnQtLWRhbmdlciAuZHMtYWxlcnRfX3RpdGxle2NvbG9yOnZhcigtLXN0YXR1cy1kYW5nZXIpfVxuXG5AbWVkaWEgKG1heC13aWR0aDo2NDBweCl7XG4gICAgLyogQSBtxbF2ZWxldCBlc3NlbiBrw7xsw7ZuIHNvcmJhLiBDc2FrIGEgYGZsZXgtd3JhcGAgbmVtIGVsw6lnOiBhIHTDtnJ6cyBgZmxleDoxYFxuICAgICAgIG1pYXR0IMO2c3N6ZW55b23Ds2RuYSBhIGdvbWIgbWVsbGV0dCAocMOhciBzesOzIGbDqXIgZWwgc29yb25rw6ludCkuIEEgdMO2cnpzXG4gICAgICAgbWluaW3DoWxpcyBzesOpbGVzc8OpZ2UgZXrDqXJ0IGEgc29yIG1hcmFkw6lrYSDigJQgaWtvbiAoMThweCkgKyBnYXAgKDEycHgpLiAqL1xuICAgIC5kcy1hbGVydHtmbGV4LXdyYXA6d3JhcH1cbiAgICAuZHMtYWxlcnRfX2JvZHl7bWluLXdpZHRoOmNhbGMoMTAwJSAtIDMwcHgpfVxuICAgIC5kcy1hbGVydF9fYWN0aW9ue2FsaWduLXNlbGY6ZmxleC1zdGFydDttYXJnaW4tbGVmdDozMHB4fVxufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgRXZlbnRDYXJkIOKAlCBjb21wb25lbnRzL2xlYXJuaW5nL0V2ZW50Q2FyZC5qc3hcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi5kcy1ldmVudHtcbiAgICBkaXNwbGF5OmZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246cm93O1xuICAgIG92ZXJmbG93OmhpZGRlbjtcbiAgICBwYWRkaW5nOjA7XG4gICAgdGV4dC1kZWNvcmF0aW9uOm5vbmU7XG4gICAgY29sb3I6aW5oZXJpdDtcbn1cbi5kcy1ldmVudDpob3Zlcnt0ZXh0LWRlY29yYXRpb246bm9uZTtjb2xvcjppbmhlcml0fVxuLmRzLWV2ZW50LS1zdGFja2Vke2ZsZXgtZGlyZWN0aW9uOmNvbHVtbn1cblxuLyogZMOhdHVtYmxva2sgKi9cbi5kcy1ldmVudF9fZGF0ZXtcbiAgICBkaXNwbGF5OmZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246Y29sdW1uO1xuICAgIGFsaWduLWl0ZW1zOmNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO1xuICAgIGZsZXg6MCAwIGF1dG87XG4gICAgd2lkdGg6MTA0cHg7XG4gICAgcGFkZGluZzoyNHB4IDE2cHg7XG4gICAgYmFja2dyb3VuZDp2YXIoLS1zdXJmYWNlLXRpbnQpO1xuICAgIGJvcmRlci1yaWdodDoxcHggc29saWQgdmFyKC0tYm9yZGVyLXRpbnQpO1xufVxuLmRzLWV2ZW50LS1zdGFja2VkIC5kcy1ldmVudF9fZGF0ZXtcbiAgICBmbGV4LWRpcmVjdGlvbjpyb3c7XG4gICAgZ2FwOjhweDtcbiAgICB3aWR0aDoxMDAlO1xuICAgIHBhZGRpbmc6MTBweCAyMHB4O1xuICAgIGJvcmRlci1yaWdodDowO1xuICAgIGJvcmRlci1ib3R0b206MXB4IHNvbGlkIHZhcigtLWJvcmRlci10aW50KTtcbn1cbi5kcy1ldmVudF9fZGF5e1xuICAgIGZvbnQ6dmFyKC0tZnctYm9sZCkgdmFyKC0tZnMtM3hsKS8xIHZhcigtLWZvbnQtZGlzcGxheSk7XG4gICAgY29sb3I6dmFyKC0tb2NlYW4tNzAwKTtcbiAgICBsZXR0ZXItc3BhY2luZzp2YXIoLS1scy10aWdodGVyKTtcbn1cbi5kcy1ldmVudF9fbW9udGh7XG4gICAgZm9udDp2YXIoLS10eXBlLWV5ZWJyb3cpO1xuICAgIHRleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTtcbiAgICBsZXR0ZXItc3BhY2luZzp2YXIoLS1scy1jYXBzKTtcbiAgICBjb2xvcjp2YXIoLS1vY2Vhbi02MDApO1xuICAgIG1hcmdpbi10b3A6NHB4O1xufVxuLmRzLWV2ZW50LS1zdGFja2VkIC5kcy1ldmVudF9fbW9udGh7bWFyZ2luLXRvcDowfVxuLmRzLWV2ZW50X195ZWFye2ZvbnQ6dmFyKC0tdHlwZS1tb25vKTtjb2xvcjp2YXIoLS1vY2Vhbi01MDApO21hcmdpbi10b3A6MnB4fVxuLmRzLWV2ZW50LS1zdGFja2VkIC5kcy1ldmVudF9feWVhcnttYXJnaW4tdG9wOjB9XG5cbi8qIHTDtnJ6cyAqL1xuLmRzLWV2ZW50X19ib2R5e1xuICAgIGZsZXg6MTtcbiAgICBtaW4td2lkdGg6MDtcbiAgICBkaXNwbGF5OmZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246Y29sdW1uO1xuICAgIGdhcDp2YXIoLS1zcGFjZS0zKTtcbiAgICBwYWRkaW5nOnZhcigtLXNwYWNlLTUpO1xufVxuLmRzLWV2ZW50X19iYWRnZXN7ZGlzcGxheTpmbGV4O2ZsZXgtd3JhcDp3cmFwO2dhcDo2cHh9XG4uZHMtZXZlbnRfX3RpdGxle1xuICAgIG1hcmdpbjowO1xuICAgIGZvbnQ6dmFyKC0tZnctc2VtaWJvbGQpIHZhcigtLWZzLWxnKS8xLjM1IHZhcigtLWZvbnQtZGlzcGxheSk7XG4gICAgY29sb3I6dmFyKC0tdGV4dC1zdHJvbmcpO1xuICAgIGxldHRlci1zcGFjaW5nOnZhcigtLWxzLXRpZ2h0KTtcbn1cbi5kcy1ldmVudF9fc3VtbWFyeXtcbiAgICBtYXJnaW46MDtcbiAgICBmb250OnZhcigtLXR5cGUtYm9keS1zbSk7XG4gICAgY29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7XG4gICAgZGlzcGxheTotd2Via2l0LWJveDtcbiAgICAtd2Via2l0LWxpbmUtY2xhbXA6MjtcbiAgICAtd2Via2l0LWJveC1vcmllbnQ6dmVydGljYWw7XG4gICAgb3ZlcmZsb3c6aGlkZGVuO1xufVxuLyogQSBraXZvbmF0IHJpY2ggdGV4dGV0IGlzIGthcGhhdCBhIGxlZ2FjeSBwYXlsb2FkYsOzbCDigJQgYSBiZcOhZ3lhem90dCA8cD4gbmUgdMO2cmplIGEga2xhbXBvdC4gKi9cbi5kcy1ldmVudF9fc3VtbWFyeSBwe21hcmdpbjowO2Rpc3BsYXk6aW5saW5lfVxuLmRzLWV2ZW50X19tZXRhe1xuICAgIGRpc3BsYXk6ZmxleDtcbiAgICBmbGV4LXdyYXA6d3JhcDtcbiAgICBhbGlnbi1pdGVtczpjZW50ZXI7XG4gICAgZ2FwOnZhcigtLXNwYWNlLTQpO1xuICAgIG1hcmdpbi10b3A6YXV0bztcbiAgICBwYWRkaW5nLXRvcDp2YXIoLS1zcGFjZS0yKTtcbn1cbi5kcy1tZXRhe1xuICAgIGRpc3BsYXk6aW5saW5lLWZsZXg7XG4gICAgYWxpZ24taXRlbXM6Y2VudGVyO1xuICAgIGdhcDo2cHg7XG4gICAgZm9udDp2YXIoLS10eXBlLWNhcHRpb24pO1xuICAgIGZvbnQtc2l6ZTp2YXIoLS1mcy14cyk7XG4gICAgY29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7XG4gICAgbWluLXdpZHRoOjA7XG59XG4uZHMtbWV0YSBpe2NvbG9yOnZhcigtLXRleHQtc3VidGxlKTtmb250LXNpemU6MTRweDtmbGV4OjAgMCBhdXRvfVxuLmRzLWV2ZW50X19jdGF7bWFyZ2luLWxlZnQ6YXV0bztmbGV4OjAgMCBhdXRvfVxuXG5AbWVkaWEgKG1heC13aWR0aDo1MjBweCl7XG4gICAgLmRzLWV2ZW50e2ZsZXgtZGlyZWN0aW9uOmNvbHVtbn1cbiAgICAuZHMtZXZlbnRfX2RhdGV7ZmxleC1kaXJlY3Rpb246cm93O2dhcDo4cHg7d2lkdGg6MTAwJTtwYWRkaW5nOjEwcHggMjBweDtib3JkZXItcmlnaHQ6MDtib3JkZXItYm90dG9tOjFweCBzb2xpZCB2YXIoLS1ib3JkZXItdGludCl9XG4gICAgLmRzLWV2ZW50X19tb250aCwuZHMtZXZlbnRfX3llYXJ7bWFyZ2luLXRvcDowfVxuICAgIC5kcy1ldmVudF9fY3Rhe21hcmdpbi1sZWZ0OjB9XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBTcGVha2VyQ2FyZCDigJQgY29tcG9uZW50cy9sZWFybmluZy9TcGVha2VyQ2FyZC5qc3hcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi5kcy1zcGVha2Vye1xuICAgIGRpc3BsYXk6ZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjpyb3c7XG4gICAgYWxpZ24taXRlbXM6Y2VudGVyO1xuICAgIHRleHQtYWxpZ246bGVmdDtcbiAgICBnYXA6dmFyKC0tc3BhY2UtNCk7XG59XG4uZHMtc3BlYWtlci0tc3RhY2tlZHtmbGV4LWRpcmVjdGlvbjpjb2x1bW47dGV4dC1hbGlnbjpjZW50ZXI7Z2FwOnZhcigtLXNwYWNlLTMpfVxuXG4uZHMtc3BlYWtlcl9fYXZhdGFye1xuICAgIGRpc3BsYXk6aW5saW5lLWZsZXg7XG4gICAgYWxpZ24taXRlbXM6Y2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDpjZW50ZXI7XG4gICAgZmxleDowIDAgYXV0bztcbiAgICB3aWR0aDo1MnB4O1xuICAgIGhlaWdodDo1MnB4O1xuICAgIGJvcmRlci1yYWRpdXM6NTAlO1xuICAgIG92ZXJmbG93OmhpZGRlbjtcbiAgICBiYWNrZ3JvdW5kOnZhcigtLW9jZWFuLTUwKTtcbiAgICBjb2xvcjp2YXIoLS1vY2Vhbi03MDApO1xuICAgIGJvcmRlcjoxcHggc29saWQgdmFyKC0tYm9yZGVyLXRpbnQpO1xuICAgIGZvbnQ6dmFyKC0tZnctc2VtaWJvbGQpIDE2cHgvMSB2YXIoLS1mb250LWRpc3BsYXkpO1xuICAgIGxldHRlci1zcGFjaW5nOnZhcigtLWxzLXRpZ2h0KTtcbn1cbi5kcy1zcGVha2VyLS1zdGFja2VkIC5kcy1zcGVha2VyX19hdmF0YXJ7d2lkdGg6NzJweDtoZWlnaHQ6NzJweDtmb250LXNpemU6MjJweH1cbi5kcy1zcGVha2VyX19hdmF0YXIgaW1ne3dpZHRoOjEwMCU7aGVpZ2h0OjEwMCU7b2JqZWN0LWZpdDpjb3Zlcn1cblxuLmRzLXNwZWFrZXJfX3RleHR7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtnYXA6MnB4O21pbi13aWR0aDowfVxuLmRzLXNwZWFrZXJfX25hbWV7Zm9udDp2YXIoLS1mdy1zZW1pYm9sZCkgdmFyKC0tZnMtbWQpLzEuMyB2YXIoLS1mb250LWRpc3BsYXkpO2NvbG9yOnZhcigtLXRleHQtc3Ryb25nKX1cbi5kcy1zcGVha2VyX19yb2xle2ZvbnQ6dmFyKC0tdHlwZS1jYXB0aW9uKTtmb250LXNpemU6dmFyKC0tZnMteHMpO2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpfVxuLmRzLXNwZWFrZXJfX29yZ3tmb250OnZhcigtLXR5cGUtY2FwdGlvbik7Y29sb3I6dmFyKC0tdGV4dC1zdWJ0bGUpfVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgSGVybyDigJQgdWlfa2l0cy9rZXB6ZXMvSG9tZVNjcmVlbi5qc3hcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qIEbDvGdnxZFsZWdlcyB3YXNoIG9jZWFuLTUwLWLFkWwgw6F0bMOhdHN6w7NiYS4gRWxoYWx2w6FueXVsw6FzLCBuZW0ga8OpdHN6w61uxbEgw6F0bWVuZXQsXG4gICDDqXMgc29oYSBuZW0gw6F0bMOzcyDigJQgbMOhc2QgcmVhZG1lLm1kIOKAnkJhY2tncm91bmRz4oCdLiAqL1xuLmRzLWhlcm8td2FzaHtiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgxODBkZWcsdmFyKC0tb2NlYW4tNTApIDAlLHJnYmEoMjMwLDI0MSwyNTIsMCkgMTAwJSl9XG5cbi5kcy1oZXJve1xuICAgIG1heC13aWR0aDp2YXIoLS1kcy1jb250YWluZXItMnhsKTtcbiAgICBtYXJnaW46MCBhdXRvO1xuICAgIHBhZGRpbmc6dmFyKC0tc3BhY2UtMTYpIHZhcigtLXNwYWNlLTgpIHZhcigtLXNwYWNlLTEwKTtcbiAgICBkaXNwbGF5OmdyaWQ7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOm1pbm1heCgwLDFmcikgbWlubWF4KDAsMS4wNWZyKTtcbiAgICBnYXA6dmFyKC0tc3BhY2UtMTApO1xuICAgIGFsaWduLWl0ZW1zOmNlbnRlcjtcbn1cbi5kcy1oZXJvX19jb3B5e2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47Z2FwOnZhcigtLXNwYWNlLTUpfVxuLmRzLWhlcm9fX3RpdGxle2ZvbnQ6dmFyKC0tdHlwZS1oMSk7Y29sb3I6dmFyKC0tdGV4dC1zdHJvbmcpO2xldHRlci1zcGFjaW5nOnZhcigtLWxzLXRpZ2h0ZXIpfVxuLmRzLWhlcm9fX2xlYWR7Zm9udDp2YXIoLS10eXBlLWxlYWQpO2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO21heC13aWR0aDo1MjBweH1cbi5kcy1oZXJvX19hY3Rpb25ze2Rpc3BsYXk6ZmxleDtmbGV4LXdyYXA6d3JhcDtnYXA6dmFyKC0tc3BhY2UtMyk7bWFyZ2luLXRvcDp2YXIoLS1zcGFjZS0yKX1cbi5kcy1oZXJvX19hcnR7d2lkdGg6MTAwJTtoZWlnaHQ6YXV0b31cblxuQG1lZGlhIChtYXgtd2lkdGg6MTAyNHB4KXtcbiAgICAuZHMtaGVyb3tncmlkLXRlbXBsYXRlLWNvbHVtbnM6MWZyO3BhZGRpbmc6dmFyKC0tc3BhY2UtMTIpIHZhcigtLXNwYWNlLTgpIHZhcigtLXNwYWNlLTgpfVxuICAgIC5kcy1oZXJvX19hcnR7bWF4LXdpZHRoOjU2MHB4O2p1c3RpZnktc2VsZjpjZW50ZXJ9XG59XG5AbWVkaWEgKG1heC13aWR0aDo2NDBweCl7XG4gICAgLmRzLWhlcm97cGFkZGluZzp2YXIoLS1zcGFjZS0xMCkgdmFyKC0tc3BhY2UtNSkgdmFyKC0tc3BhY2UtOCk7Z2FwOnZhcigtLXNwYWNlLTgpfVxuICAgIC5kcy1oZXJvX190aXRsZXtmb250OnZhcigtLXR5cGUtaDIpfVxuICAgIC5kcy1oZXJvX19sZWFke2ZvbnQ6dmFyKC0tdHlwZS1ib2R5KX1cbiAgICAuZHMtaGVyb19fYWN0aW9ucyAuZHMtYnRue2ZsZXg6MSAxIGF1dG99XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBIaXZhdMOhc3JlbmRlayBzw6F2amEg4oCUIEhvbWVTY3JlZW4uanN4IChQcm9mZXNzaW9uU3RyaXAsIOKAnnPDoXZvc+KAnSB2w6FsdG96YXQpXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4uZHMtcHJvZmVzc2lvbnMtd3JhcHtcbiAgICBtYXgtd2lkdGg6dmFyKC0tZHMtY29udGFpbmVyLTJ4bCk7XG4gICAgbWFyZ2luOjAgYXV0bztcbiAgICBwYWRkaW5nOnZhcigtLXNwYWNlLTgpIHZhcigtLXNwYWNlLTgpIHZhcigtLXNwYWNlLTEyKTtcbn1cbi5kcy1wcm9mZXNzaW9uc3tcbiAgICBkaXNwbGF5OmZsZXg7XG4gICAgYWxpZ24taXRlbXM6Y2VudGVyO1xuICAgIHdpZHRoOjEwMCU7XG4gICAgb3ZlcmZsb3cteDphdXRvO1xuICAgIHBhZGRpbmc6dmFyKC0tc3BhY2UtMykgdmFyKC0tc3BhY2UtNSk7XG4gICAgYmFja2dyb3VuZDp2YXIoLS1zdXJmYWNlLWNhcmQpO1xuICAgIGJvcmRlcjoxcHggc29saWQgdmFyKC0tYm9yZGVyLWhhaXJsaW5lKTtcbiAgICBib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy1jYXJkKTtcbiAgICBib3gtc2hhZG93OnZhcigtLXNoYWRvdy1zbSk7XG4gICAgc2Nyb2xsYmFyLXdpZHRoOnRoaW47XG59XG4uZHMtcHJvZmVzc2lvbnNfX2l0ZW17XG4gICAgZmxleDoxIDEgMDtcbiAgICBtaW4td2lkdGg6Zml0LWNvbnRlbnQ7XG4gICAgd2hpdGUtc3BhY2U6bm93cmFwO1xuICAgIGRpc3BsYXk6aW5saW5lLWZsZXg7XG4gICAgYWxpZ24taXRlbXM6Y2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDpjZW50ZXI7XG4gICAgZ2FwOnZhcigtLXNwYWNlLTIpO1xuICAgIHBhZGRpbmc6NHB4IDE2cHg7XG4gICAgY29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7XG4gICAgZm9udDp2YXIoLS1mdy1zZW1pYm9sZCkgdmFyKC0tZnMtc20pLzEuMiB2YXIoLS1kcy1mb250LXNhbnMpO1xuICAgIGxldHRlci1zcGFjaW5nOnZhcigtLWxzLXRpZ2h0KTtcbiAgICB0ZXh0LWRlY29yYXRpb246bm9uZTtcbiAgICB0cmFuc2l0aW9uOnZhcigtLXRyYW5zaXRpb24tY29udHJvbCk7XG59XG4uZHMtcHJvZmVzc2lvbnNfX2l0ZW06aG92ZXJ7Y29sb3I6dmFyKC0tb2NlYW4tNzAwKTt0ZXh0LWRlY29yYXRpb246bm9uZX1cbi5kcy1wcm9mZXNzaW9uc19faXRlbSBpe2NvbG9yOnZhcigtLXRleHQtc3VidGxlKTtmb250LXNpemU6MTZweH1cbi5kcy1wcm9mZXNzaW9uc19faXRlbTpob3ZlciBpe2NvbG9yOnZhcigtLW9jZWFuLTYwMCl9XG4uZHMtcHJvZmVzc2lvbnNfX3J1bGV7d2lkdGg6MXB4O2hlaWdodDoxNnB4O2JhY2tncm91bmQ6dmFyKC0tYm9yZGVyLWhhaXJsaW5lKTtmbGV4OjAgMCBhdXRvfVxuXG5AbWVkaWEgKG1heC13aWR0aDo2NDBweCl7XG4gICAgLmRzLXByb2Zlc3Npb25zLXdyYXB7cGFkZGluZzp2YXIoLS1zcGFjZS02KSB2YXIoLS1zcGFjZS01KSB2YXIoLS1zcGFjZS0xMCl9XG4gICAgLmRzLXByb2Zlc3Npb25ze3BhZGRpbmc6dmFyKC0tc3BhY2UtMyl9XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBSw6Fjc29rIOKAlCDDqXJ0w6lrdMOhYmzDoWssIGVzZW3DqW55ZWssIGVsxZFhZMOza1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLmRzLWdyaWR7ZGlzcGxheTpncmlkO2dhcDp2YXIoLS1jYXJkLWdhcCl9XG4uZHMtZ3JpZC0tNHtncmlkLXRlbXBsYXRlLWNvbHVtbnM6cmVwZWF0KDQsbWlubWF4KDAsMWZyKSl9XG4uZHMtZ3JpZC0tM3tncmlkLXRlbXBsYXRlLWNvbHVtbnM6cmVwZWF0KDMsbWlubWF4KDAsMWZyKSl9XG4uZHMtZ3JpZC0tMntncmlkLXRlbXBsYXRlLWNvbHVtbnM6cmVwZWF0KDIsbWlubWF4KDAsMWZyKSl9XG5cbkBtZWRpYSAobWF4LXdpZHRoOjEwMjRweCl7XG4gICAgLmRzLWdyaWQtLTR7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOnJlcGVhdCgyLG1pbm1heCgwLDFmcikpfVxuICAgIC5kcy1ncmlkLS0ze2dyaWQtdGVtcGxhdGUtY29sdW1uczpyZXBlYXQoMixtaW5tYXgoMCwxZnIpKX1cbn1cbkBtZWRpYSAobWF4LXdpZHRoOjY0MHB4KXtcbiAgICAuZHMtZ3JpZC0tNCwuZHMtZ3JpZC0tMywuZHMtZ3JpZC0tMntncmlkLXRlbXBsYXRlLWNvbHVtbnM6bWlubWF4KDAsMWZyKX1cbn1cblxuLyogw6lydMOpa3TDoWJsYSAqL1xuLmRzLXRpbGV7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtnYXA6dmFyKC0tc3BhY2UtMyl9XG4uZHMtdGlsZV9faWNvbntcbiAgICB3aWR0aDo0NHB4O1xuICAgIGhlaWdodDo0NHB4O1xuICAgIGJvcmRlci1yYWRpdXM6dmFyKC0tZHMtcmFkaXVzLW1kKTtcbiAgICBiYWNrZ3JvdW5kOnZhcigtLW9jZWFuLTUwKTtcbiAgICBib3JkZXI6MXB4IHNvbGlkIHZhcigtLWJvcmRlci10aW50KTtcbiAgICBkaXNwbGF5OmlubGluZS1mbGV4O1xuICAgIGFsaWduLWl0ZW1zOmNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO1xuICAgIGZsZXg6MCAwIGF1dG87XG59XG4uZHMtdGlsZV9faWNvbiBpe2NvbG9yOnZhcigtLW9jZWFuLTYwMCk7Zm9udC1zaXplOjIxcHh9XG4uZHMtdGlsZV9fdGl0bGV7Zm9udDp2YXIoLS10eXBlLWg1KTtjb2xvcjp2YXIoLS10ZXh0LXN0cm9uZyl9XG4uZHMtdGlsZV9fdGV4dHtmb250OnZhcigtLXR5cGUtYm9keS1zbSk7Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCl9XG5cbi5kcy1zZWN0aW9uX19mb290e2Rpc3BsYXk6ZmxleDtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO21hcmdpbi10b3A6dmFyKC0tc3BhY2UtMTApfVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgSGVhZGVyIOKAlCB1aV9raXRzL2tlcHplcy9DaHJvbWUuanN4IChIZWFkZXIpXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4uZHMtaGVhZGVye1xuICAgIHBvc2l0aW9uOnN0aWNreTtcbiAgICB0b3A6MDtcbiAgICB6LWluZGV4OjQwO1xuICAgIGJhY2tncm91bmQ6cmdiYSgyNTUsMjU1LDI1NSwuODYpO1xuICAgIGJhY2tkcm9wLWZpbHRlcjpibHVyKDEycHgpO1xuICAgIC13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOmJsdXIoMTJweCk7XG4gICAgYm9yZGVyLWJvdHRvbToxcHggc29saWQgdmFyKC0tYm9yZGVyLWhhaXJsaW5lKTtcbn1cbi5kcy1oZWFkZXJfX2lubmVye1xuICAgIG1heC13aWR0aDp2YXIoLS1kcy1jb250YWluZXItMnhsKTtcbiAgICBtYXJnaW46MCBhdXRvO1xuICAgIHBhZGRpbmc6MCB2YXIoLS1zcGFjZS04KTtcbiAgICBoZWlnaHQ6NzJweDtcbiAgICBkaXNwbGF5OmZsZXg7XG4gICAgYWxpZ24taXRlbXM6Y2VudGVyO1xuICAgIGdhcDp2YXIoLS1zcGFjZS04KTtcbn1cbi5kcy1oZWFkZXJfX2JyYW5ke1xuICAgIGRpc3BsYXk6ZmxleDtcbiAgICBhbGlnbi1pdGVtczpjZW50ZXI7XG4gICAgZ2FwOjEwcHg7XG4gICAgdGV4dC1kZWNvcmF0aW9uOm5vbmU7XG4gICAgZmxleDowIDAgYXV0bztcbn1cbi5kcy1oZWFkZXJfX2JyYW5kOmhvdmVye3RleHQtZGVjb3JhdGlvbjpub25lfVxuLmRzLWhlYWRlcl9fYnJhbmQgaW1ne2hlaWdodDo0NHB4O3dpZHRoOmF1dG87b2JqZWN0LWZpdDpjb250YWlufVxuLmRzLWhlYWRlcl9fYnJhbmQtdGV4dHtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2FsaWduLWl0ZW1zOmZsZXgtc3RhcnQ7bGluZS1oZWlnaHQ6MS4xfVxuLmRzLWhlYWRlcl9fYnJhbmQtbmFtZXtcbiAgICBmb250OnZhcigtLWZ3LXNlbWlib2xkKSB2YXIoLS1mcy1tZCkvMS4xIHZhcigtLWZvbnQtZGlzcGxheSk7XG4gICAgY29sb3I6dmFyKC0tdGV4dC1zdHJvbmcpO1xuICAgIGxldHRlci1zcGFjaW5nOnZhcigtLWxzLXRpZ2h0KTtcbn1cbi5kcy1oZWFkZXJfX2JyYW5kLXN1Yntmb250OnZhcigtLXR5cGUtY2FwdGlvbik7Zm9udC1zaXplOnZhcigtLWZzLTN4cyk7Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCl9XG5cbi5kcy1oZWFkZXJfX25hdntkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDp2YXIoLS1zcGFjZS02KX1cbi5kcy1oZWFkZXJfX2xpbmt7XG4gICAgcGFkZGluZzo4cHggMnB4O1xuICAgIGZvbnQ6dmFyKC0tdHlwZS1sYWJlbCk7XG4gICAgY29sb3I6dmFyKC0tdGV4dC1ib2R5KTtcbiAgICB0ZXh0LWRlY29yYXRpb246bm9uZTtcbiAgICBiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O1xuICAgIGJvcmRlcjowO1xuICAgIGN1cnNvcjpwb2ludGVyO1xuICAgIHRyYW5zaXRpb246dmFyKC0tdHJhbnNpdGlvbi1jb250cm9sKTtcbn1cbi5kcy1oZWFkZXJfX2xpbms6aG92ZXJ7Y29sb3I6dmFyKC0tb2NlYW4tNzAwKTt0ZXh0LWRlY29yYXRpb246bm9uZX1cbi5kcy1oZWFkZXJfX2xpbmstLWFjdGl2ZXtjb2xvcjp2YXIoLS1vY2Vhbi03MDApO2JveC1zaGFkb3c6aW5zZXQgMCAtMnB4IDAgdmFyKC0tYWN0aW9uLXByaW1hcnkpfVxuXG4uZHMtaGVhZGVyX190YWlse21hcmdpbi1sZWZ0OmF1dG87ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6dmFyKC0tc3BhY2UtMyl9XG5cbi5kcy1pY29uYnRue1xuICAgIGRpc3BsYXk6aW5saW5lLWZsZXg7XG4gICAgYWxpZ24taXRlbXM6Y2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDpjZW50ZXI7XG4gICAgd2lkdGg6dmFyKC0tY29udHJvbC1oLW1kKTtcbiAgICBoZWlnaHQ6dmFyKC0tY29udHJvbC1oLW1kKTtcbiAgICBib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy1jb250cm9sKTtcbiAgICBib3JkZXI6MXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGJhY2tncm91bmQ6dHJhbnNwYXJlbnQ7XG4gICAgY29sb3I6dmFyKC0tdGV4dC1ib2R5KTtcbiAgICBjdXJzb3I6cG9pbnRlcjtcbiAgICB0ZXh0LWRlY29yYXRpb246bm9uZTtcbiAgICB0cmFuc2l0aW9uOnZhcigtLXRyYW5zaXRpb24tY29udHJvbCk7XG59XG4uZHMtaWNvbmJ0bjpob3ZlcntiYWNrZ3JvdW5kOnZhcigtLW9jZWFuLTUwKTtjb2xvcjp2YXIoLS1vY2Vhbi03MDApO3RleHQtZGVjb3JhdGlvbjpub25lfVxuLmRzLWljb25idG46YWN0aXZle3RyYW5zZm9ybTp2YXIoLS1wcmVzcy1zY2FsZSl9XG4uZHMtaWNvbmJ0bi0tc217d2lkdGg6dmFyKC0tY29udHJvbC1oLXNtKTtoZWlnaHQ6dmFyKC0tY29udHJvbC1oLXNtKX1cblxuLyogZmVqbMOpYyBrb3PDoXJpa29uIOKAlCBhIHNxdWlkc2VsbDpjYXJ0X3dpZGdldCBrb21wb25lbnMgZHMta8O2bnTDtnNlICovXG4uZHMtaGVhZGVyX19jYXJ0IC5jYXJ0LXdpZGdldC1saW5re1xuICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuICAgIGRpc3BsYXk6aW5saW5lLWZsZXg7XG4gICAgYWxpZ24taXRlbXM6Y2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDpjZW50ZXI7XG4gICAgd2lkdGg6dmFyKC0tY29udHJvbC1oLW1kKTtcbiAgICBoZWlnaHQ6dmFyKC0tY29udHJvbC1oLW1kKTtcbiAgICBib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy1jb250cm9sKTtcbiAgICBjb2xvcjp2YXIoLS10ZXh0LWJvZHkpO1xuICAgIHRleHQtZGVjb3JhdGlvbjpub25lO1xuICAgIHRyYW5zaXRpb246dmFyKC0tdHJhbnNpdGlvbi1jb250cm9sKTtcbn1cbi5kcy1oZWFkZXJfX2NhcnQgLmNhcnQtd2lkZ2V0LWxpbms6aG92ZXJ7YmFja2dyb3VuZDp2YXIoLS1vY2Vhbi01MCk7Y29sb3I6dmFyKC0tb2NlYW4tNzAwKTt0ZXh0LWRlY29yYXRpb246bm9uZX1cbi5kcy1oZWFkZXJfX2NhcnQgLmNhcnQtd2lkZ2V0LWljb257Zm9udC1zaXplOnZhcigtLWZzLWxnKTtsaW5lLWhlaWdodDoxfVxuLmRzLWhlYWRlcl9fY2FydCAuY2FydC13aWRnZXQtcXVhbnRpdHl7XG4gICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgdG9wOjA7XG4gICAgcmlnaHQ6MDtcbiAgICBkaXNwbGF5OmlubGluZS1mbGV4O1xuICAgIGFsaWduLWl0ZW1zOmNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO1xuICAgIG1pbi13aWR0aDoxNnB4O1xuICAgIGhlaWdodDoxNnB4O1xuICAgIHBhZGRpbmc6MCA0cHg7XG4gICAgYm9yZGVyLXJhZGl1czp2YXIoLS1yYWRpdXMtcGlsbCk7XG4gICAgYmFja2dyb3VuZDp2YXIoLS1hY3Rpb24tcHJpbWFyeSk7XG4gICAgY29sb3I6I2ZmZjtcbiAgICBmb250LXNpemU6dmFyKC0tZnMtM3hzKTtcbiAgICBmb250LXdlaWdodDp2YXIoLS1mdy1ib2xkKTtcbiAgICBsaW5lLWhlaWdodDoxO1xufVxuXG4vKiBmZWxoYXN6bsOhbMOzaSBwaXJ1bGEgKi9cbi5kcy11c2VycGlsbHtcbiAgICBkaXNwbGF5OmZsZXg7XG4gICAgYWxpZ24taXRlbXM6Y2VudGVyO1xuICAgIGdhcDo4cHg7XG4gICAgYm9yZGVyOjFweCBzb2xpZCB2YXIoLS1ib3JkZXItaGFpcmxpbmUpO1xuICAgIGJhY2tncm91bmQ6dmFyKC0tc3VyZmFjZS1jYXJkKTtcbiAgICBib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy1waWxsKTtcbiAgICBwYWRkaW5nOjRweCAxMnB4IDRweCA0cHg7XG4gICAgY3Vyc29yOnBvaW50ZXI7XG4gICAgYm94LXNoYWRvdzp2YXIoLS1zaGFkb3cteHMpO1xuICAgIGNvbG9yOnZhcigtLXRleHQtYm9keSk7XG4gICAgdGV4dC1kZWNvcmF0aW9uOm5vbmU7XG4gICAgdHJhbnNpdGlvbjp2YXIoLS10cmFuc2l0aW9uLWNvbnRyb2wpO1xufVxuLmRzLXVzZXJwaWxsOmhvdmVye2JhY2tncm91bmQ6dmFyKC0tc3VyZmFjZS1ob3Zlcik7dGV4dC1kZWNvcmF0aW9uOm5vbmU7Y29sb3I6dmFyKC0tdGV4dC1ib2R5KX1cbi5kcy11c2VycGlsbF9fYXZhdGFye1xuICAgIHdpZHRoOjMwcHg7XG4gICAgaGVpZ2h0OjMwcHg7XG4gICAgYm9yZGVyLXJhZGl1czo1MCU7XG4gICAgYmFja2dyb3VuZDp2YXIoLS1vY2Vhbi01MCk7XG4gICAgY29sb3I6dmFyKC0tb2NlYW4tNzAwKTtcbiAgICBib3JkZXI6MXB4IHNvbGlkIHZhcigtLWJvcmRlci10aW50KTtcbiAgICBkaXNwbGF5OmlubGluZS1mbGV4O1xuICAgIGFsaWduLWl0ZW1zOmNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO1xuICAgIGZvbnQ6dmFyKC0tZnctc2VtaWJvbGQpIDEycHgvMSB2YXIoLS1mb250LWRpc3BsYXkpO1xuICAgIGZsZXg6MCAwIGF1dG87XG59XG4uZHMtdXNlcnBpbGxfX25hbWV7XG4gICAgZm9udDp2YXIoLS10eXBlLWNhcHRpb24pO1xuICAgIGNvbG9yOnZhcigtLXRleHQtYm9keSk7XG4gICAgbWF4LXdpZHRoOjE1MHB4O1xuICAgIG92ZXJmbG93OmhpZGRlbjtcbiAgICB0ZXh0LW92ZXJmbG93OmVsbGlwc2lzO1xuICAgIHdoaXRlLXNwYWNlOm5vd3JhcDtcbn1cblxuLyogbGVuecOtbMOzIG1lbsO8ICovXG4uZHMtbWVudXtcbiAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICByaWdodDowO1xuICAgIHRvcDpjYWxjKDEwMCUgKyA4cHgpO1xuICAgIG1pbi13aWR0aDoyMTZweDtcbiAgICBiYWNrZ3JvdW5kOnZhcigtLXN1cmZhY2UtcmFpc2VkKTtcbiAgICBib3JkZXI6MXB4IHNvbGlkIHZhcigtLWJvcmRlci1oYWlybGluZSk7XG4gICAgYm9yZGVyLXJhZGl1czp2YXIoLS1yYWRpdXMtY2FyZCk7XG4gICAgYm94LXNoYWRvdzp2YXIoLS1zaGFkb3ctbGcpO1xuICAgIHBhZGRpbmc6dmFyKC0tc3BhY2UtMik7XG4gICAgei1pbmRleDo1MDtcbn1cbi5kcy1tZW51X19pdGVte1xuICAgIGRpc3BsYXk6ZmxleDtcbiAgICBhbGlnbi1pdGVtczpjZW50ZXI7XG4gICAgZ2FwOnZhcigtLXNwYWNlLTMpO1xuICAgIHBhZGRpbmc6OHB4IDEycHg7XG4gICAgYm9yZGVyLXJhZGl1czp2YXIoLS1kcy1yYWRpdXMtbWQpO1xuICAgIGZvbnQ6dmFyKC0tdHlwZS1ib2R5LXNtKTtcbiAgICBjb2xvcjp2YXIoLS10ZXh0LWJvZHkpO1xuICAgIHRleHQtZGVjb3JhdGlvbjpub25lO1xuICAgIHRyYW5zaXRpb246dmFyKC0tdHJhbnNpdGlvbi1jb250cm9sKTtcbn1cbi5kcy1tZW51X19pdGVtOmhvdmVye2JhY2tncm91bmQ6dmFyKC0tc3VyZmFjZS1ob3Zlcik7Y29sb3I6dmFyKC0tb2NlYW4tNzAwKTt0ZXh0LWRlY29yYXRpb246bm9uZX1cbi5kcy1tZW51X19pdGVtIGl7d2lkdGg6MTZweDtjb2xvcjp2YXIoLS10ZXh0LXN1YnRsZSk7Zm9udC1zaXplOjE0cHh9XG4uZHMtbWVudV9faXRlbTpob3ZlciBpe2NvbG9yOnZhcigtLW9jZWFuLTYwMCl9XG4uZHMtbWVudV9fcnVsZXtoZWlnaHQ6MXB4O2JhY2tncm91bmQ6dmFyKC0tYm9yZGVyLWhhaXJsaW5lKTttYXJnaW46dmFyKC0tc3BhY2UtMikgMH1cbi5kcy1tZW51X19sYWJlbHtcbiAgICBkaXNwbGF5OmJsb2NrO1xuICAgIHBhZGRpbmc6NnB4IDEycHggMnB4O1xuICAgIGZvbnQ6dmFyKC0tdHlwZS1leWVicm93KTtcbiAgICB0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7XG4gICAgbGV0dGVyLXNwYWNpbmc6dmFyKC0tbHMtY2Fwcyk7XG4gICAgY29sb3I6dmFyKC0tdGV4dC1zdWJ0bGUpO1xufVxuXG4uZHMtcmVsYXRpdmV7cG9zaXRpb246cmVsYXRpdmV9XG4uZHMtaGVhZGVyX19idXJnZXJ7ZGlzcGxheTpub25lfVxuXG5AbWVkaWEgKG1heC13aWR0aDo5MDBweCl7XG4gICAgLmRzLWhlYWRlcl9faW5uZXJ7Z2FwOnZhcigtLXNwYWNlLTQpO3BhZGRpbmc6MCB2YXIoLS1zcGFjZS01KX1cbiAgICAuZHMtaGVhZGVyX19uYXZ7ZGlzcGxheTpub25lfVxuICAgIC5kcy1oZWFkZXJfX2J1cmdlcntkaXNwbGF5OmlubGluZS1mbGV4fVxuICAgIC5kcy1oZWFkZXJfX2JyYW5kLXRleHR7ZGlzcGxheTpub25lfVxuICAgIC5kcy11c2VycGlsbF9fbmFtZXtkaXNwbGF5Om5vbmV9XG4gICAgLmRzLXVzZXJwaWxse3BhZGRpbmc6NHB4fVxufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgRm9vdGVyIOKAlCB1aV9raXRzL2tlcHplcy9DaHJvbWUuanN4IChGb290ZXIpXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4uZHMtZm9vdGVye1xuICAgIGJhY2tncm91bmQ6dmFyKC0tc3VyZmFjZS1pbnZlcnNlKTtcbiAgICBjb2xvcjp2YXIoLS10ZXh0LWludmVyc2UpO1xuICAgIG1hcmdpbi10b3A6dmFyKC0tc2VjdGlvbi15KTtcbn1cbi5kcy1mb290ZXJfX2lubmVye1xuICAgIG1heC13aWR0aDp2YXIoLS1kcy1jb250YWluZXItMnhsKTtcbiAgICBtYXJnaW46MCBhdXRvO1xuICAgIHBhZGRpbmc6dmFyKC0tc3BhY2UtMTYpIHZhcigtLXNwYWNlLTgpIHZhcigtLXNwYWNlLTgpO1xuICAgIGRpc3BsYXk6Z3JpZDtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6MS40ZnIgcmVwZWF0KDMsMWZyKSAxLjRmcjtcbiAgICBnYXA6dmFyKC0tc3BhY2UtMTApO1xufVxuLyogQSBVSSBraXQgw7Z0b3N6bG9wb3MgbMOhYmzDqWNlIGjDrXJsZXbDqWwtZmVsaXJhdGtvesOhc3Qgw6lzIGjDoXJvbSBsaW5rb3N6bG9wb3QgZmVsdMOpdGVsZXouXG4gICBFYmJlbiBheiBhcHBiYW4gbmluY3MgaMOtcmxldsOpbC12w6lncG9udCwgw6lzIGEg4oCeSm9naeKAnSBvc3psb3AgY8OpbGphaSBzZW0gbMOpdGV6bmVrXG4gICDDunR2b25hbGvDqW50IOKAlCBlesOpcnQgYSB2YWzDs3MgdGFydGFsb21ob3ogc3phYm90dCwgaMOhcm9tb3N6bG9wb3MgdsOhbHRvemF0LiAqL1xuLmRzLWZvb3Rlcl9faW5uZXItLWxlYW57Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOjEuNGZyIDFmciAxZnJ9XG4uZHMtZm9vdGVyX19icmFuZHtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2dhcDp2YXIoLS1zcGFjZS00KX1cbi5kcy1mb290ZXJfX2JyYW5kIGltZ3toZWlnaHQ6NTZweDt3aWR0aDphdXRvO2FsaWduLXNlbGY6ZmxleC1zdGFydH1cbi5kcy1mb290ZXJfX2JsdXJie2ZvbnQ6dmFyKC0tdHlwZS1ib2R5LXNtKTtjb2xvcjp2YXIoLS1zbGF0ZS00MDApO21heC13aWR0aDoyODBweH1cblxuLmRzLWZvb3Rlcl9fY29se2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47Z2FwOnZhcigtLXNwYWNlLTMpfVxuLmRzLWZvb3Rlcl9fdGl0bGV7XG4gICAgZm9udDp2YXIoLS10eXBlLWV5ZWJyb3cpO1xuICAgIHRleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTtcbiAgICBsZXR0ZXItc3BhY2luZzp2YXIoLS1scy1jYXBzKTtcbiAgICBjb2xvcjp2YXIoLS1zbGF0ZS00MDApO1xufVxuLmRzLWZvb3Rlcl9fbGlua3tmb250OnZhcigtLXR5cGUtYm9keS1zbSk7Y29sb3I6dmFyKC0tc2xhdGUtMzAwKTt0ZXh0LWRlY29yYXRpb246bm9uZTt0cmFuc2l0aW9uOnZhcigtLXRyYW5zaXRpb24tY29udHJvbCl9XG4uZHMtZm9vdGVyX19saW5rOmhvdmVye2NvbG9yOiNmZmY7dGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZTt0ZXh0LXVuZGVybGluZS1vZmZzZXQ6M3B4fVxuLmRzLWZvb3Rlcl9fbm90ZXtmb250OnZhcigtLXR5cGUtY2FwdGlvbik7Y29sb3I6dmFyKC0tc2xhdGUtNDAwKX1cblxuLmRzLWZvb3Rlcl9fYmFye2JvcmRlci10b3A6MXB4IHNvbGlkIHJnYmEoMjU1LDI1NSwyNTUsLjEwKX1cbi5kcy1mb290ZXJfX2Jhci1pbm5lcntcbiAgICBtYXgtd2lkdGg6dmFyKC0tZHMtY29udGFpbmVyLTJ4bCk7XG4gICAgbWFyZ2luOjAgYXV0bztcbiAgICBwYWRkaW5nOnZhcigtLXNwYWNlLTUpIHZhcigtLXNwYWNlLTgpO1xuICAgIGRpc3BsYXk6ZmxleDtcbiAgICBhbGlnbi1pdGVtczpjZW50ZXI7XG4gICAgZmxleC13cmFwOndyYXA7XG4gICAgZ2FwOnZhcigtLXNwYWNlLTQpO1xuICAgIGZvbnQ6dmFyKC0tdHlwZS1jYXB0aW9uKTtcbiAgICBjb2xvcjp2YXIoLS1zbGF0ZS00MDApO1xufVxuLmRzLWZvb3Rlcl9fc29jaWFse21hcmdpbi1sZWZ0OmF1dG87ZGlzcGxheTpmbGV4O2dhcDp2YXIoLS1zcGFjZS00KX1cbi5kcy1mb290ZXJfX3NvY2lhbCBhe2NvbG9yOnZhcigtLXNsYXRlLTQwMCk7Zm9udC1zaXplOjE3cHg7dHJhbnNpdGlvbjp2YXIoLS10cmFuc2l0aW9uLWNvbnRyb2wpfVxuLmRzLWZvb3Rlcl9fc29jaWFsIGE6aG92ZXJ7Y29sb3I6I2ZmZn1cblxuLyogaMOtcmxldsOpbCAqL1xuLmRzLWZvb3Rlcl9fZm9ybXtkaXNwbGF5OmZsZXg7Z2FwOjhweH1cbi5kcy1pbnB1dHtcbiAgICBmbGV4OjE7XG4gICAgbWluLXdpZHRoOjA7XG4gICAgaGVpZ2h0OnZhcigtLWNvbnRyb2wtaC1tZCk7XG4gICAgcGFkZGluZzowIHZhcigtLXNwYWNlLTMpO1xuICAgIGJvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLWNvbnRyb2wpO1xuICAgIGJvcmRlcjoxcHggc29saWQgdmFyKC0tYm9yZGVyLWRlZmF1bHQpO1xuICAgIGJhY2tncm91bmQ6dmFyKC0tc3VyZmFjZS1jYXJkKTtcbiAgICBjb2xvcjp2YXIoLS10ZXh0LWJvZHkpO1xuICAgIGZvbnQ6dmFyKC0tdHlwZS1ib2R5LXNtKTtcbiAgICB0cmFuc2l0aW9uOnZhcigtLXRyYW5zaXRpb24tY29udHJvbCk7XG59XG4uZHMtaW5wdXQ6OnBsYWNlaG9sZGVye2NvbG9yOnZhcigtLXRleHQtc3VidGxlKX1cbi5kcy1pbnB1dDpmb2N1c3tvdXRsaW5lOm5vbmU7Ym9yZGVyLWNvbG9yOnZhcigtLWJvcmRlci1mb2N1cyk7Ym94LXNoYWRvdzp2YXIoLS1mb2N1cy1yaW5nKX1cbi5kcy1pbnB1dC0taW52ZXJzZXtcbiAgICBiYWNrZ3JvdW5kOnJnYmEoMjU1LDI1NSwyNTUsLjA2KTtcbiAgICBib3JkZXItY29sb3I6cmdiYSgyNTUsMjU1LDI1NSwuMTYpO1xuICAgIGNvbG9yOiNmZmY7XG4gICAgYm94LXNoYWRvdzpub25lO1xufVxuLmRzLWlucHV0LS1pbnZlcnNlOjpwbGFjZWhvbGRlcntjb2xvcjp2YXIoLS1zbGF0ZS00MDApfVxuXG5AbWVkaWEgKG1heC13aWR0aDoxMDI0cHgpe1xuICAgIC5kcy1mb290ZXJfX2lubmVye2dyaWQtdGVtcGxhdGUtY29sdW1uczpyZXBlYXQoMixtaW5tYXgoMCwxZnIpKTtnYXA6dmFyKC0tc3BhY2UtOCl9XG59XG5AbWVkaWEgKG1heC13aWR0aDo2NDBweCl7XG4gICAgLmRzLWZvb3Rlcl9faW5uZXJ7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOm1pbm1heCgwLDFmcik7cGFkZGluZzp2YXIoLS1zcGFjZS0xMikgdmFyKC0tc3BhY2UtNSkgdmFyKC0tc3BhY2UtNil9XG4gICAgLmRzLWZvb3Rlcl9fYmFyLWlubmVye3BhZGRpbmc6dmFyKC0tc3BhY2UtNSl9XG4gICAgLmRzLWZvb3Rlcl9fc29jaWFse21hcmdpbi1sZWZ0OjB9XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBTZWfDqWRvc3p0w6FseW9rXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4uZHMtc3RhY2t7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtnYXA6dmFyKC0tc3BhY2UtNCl9XG4uZHMtbW9ub3tmb250OnZhcigtLXR5cGUtbW9ubyk7Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCl9XG4uZHMtdmlzdWFsbHktaGlkZGVue1xuICAgIHBvc2l0aW9uOmFic29sdXRlO1xuICAgIHdpZHRoOjFweDtoZWlnaHQ6MXB4O1xuICAgIHBhZGRpbmc6MDttYXJnaW46LTFweDtcbiAgICBvdmVyZmxvdzpoaWRkZW47XG4gICAgY2xpcDpyZWN0KDAsMCwwLDApO1xuICAgIHdoaXRlLXNwYWNlOm5vd3JhcDtcbiAgICBib3JkZXI6MDtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIE9sZGFsZmVqbMOpYyDigJQgY8OtbSwgbW9yenNhLCBtZXRhc29yIChlc2Vtw6lueS1vbGRhbGFrKVxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLmRzLXBhZ2VoZWFke1xuICAgIGJhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDE4MGRlZyx2YXIoLS1vY2Vhbi01MCkgMCUscmdiYSgyMzAsMjQxLDI1MiwwKSAxMDAlKTtcbiAgICBib3JkZXItYm90dG9tOjFweCBzb2xpZCB2YXIoLS1ib3JkZXItaGFpcmxpbmUpO1xufVxuLmRzLXBhZ2VoZWFkX19pbm5lcntcbiAgICBtYXgtd2lkdGg6dmFyKC0tZHMtY29udGFpbmVyLTJ4bCk7XG4gICAgbWFyZ2luOjAgYXV0bztcbiAgICBwYWRkaW5nOnZhcigtLXNwYWNlLTgpIHZhcigtLXNwYWNlLTgpIHZhcigtLXNwYWNlLTEwKTtcbiAgICBkaXNwbGF5OmZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246Y29sdW1uO1xuICAgIGdhcDp2YXIoLS1zcGFjZS00KTtcbn1cbi5kcy1wYWdlaGVhZF9fdGl0bGV7Zm9udDp2YXIoLS10eXBlLWgyKTtjb2xvcjp2YXIoLS10ZXh0LXN0cm9uZyk7bGV0dGVyLXNwYWNpbmc6dmFyKC0tbHMtdGlnaHQpfVxuLmRzLXBhZ2VoZWFkX19zdWJ0aXRsZXtmb250OnZhcigtLXR5cGUtbGVhZCk7Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7bWF4LXdpZHRoOjcyMHB4fVxuXG4uZHMtYnJlYWRjcnVtYntcbiAgICBkaXNwbGF5OmZsZXg7XG4gICAgZmxleC13cmFwOndyYXA7XG4gICAgYWxpZ24taXRlbXM6Y2VudGVyO1xuICAgIGdhcDp2YXIoLS1zcGFjZS0yKTtcbiAgICBmb250OnZhcigtLXR5cGUtY2FwdGlvbik7XG4gICAgY29sb3I6dmFyKC0tdGV4dC1tdXRlZCk7XG59XG4uZHMtYnJlYWRjcnVtYiBhe2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO3RleHQtZGVjb3JhdGlvbjpub25lfVxuLmRzLWJyZWFkY3J1bWIgYTpob3Zlcntjb2xvcjp2YXIoLS1vY2Vhbi03MDApO3RleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmU7dGV4dC11bmRlcmxpbmUtb2Zmc2V0OjNweH1cbi5kcy1icmVhZGNydW1iX19zZXB7Y29sb3I6dmFyKC0tdGV4dC1zdWJ0bGUpfVxuLmRzLWJyZWFkY3J1bWJfX2N1cnJlbnR7Y29sb3I6dmFyKC0tdGV4dC1ib2R5KTtmb250LXdlaWdodDp2YXIoLS1mdy1zZW1pYm9sZCl9XG5cbi8qIG1ldGFzb3IgKGTDoXR1bSDCtyBoZWx5c3rDrW4gwrcga3JlZGl0KSAqL1xuLmRzLW1ldGFyb3d7ZGlzcGxheTpmbGV4O2ZsZXgtd3JhcDp3cmFwO2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6dmFyKC0tc3BhY2UtNSl9XG5cbkBtZWRpYSAobWF4LXdpZHRoOjY0MHB4KXtcbiAgICAuZHMtcGFnZWhlYWRfX2lubmVye3BhZGRpbmc6dmFyKC0tc3BhY2UtNikgdmFyKC0tc3BhY2UtNSkgdmFyKC0tc3BhY2UtOCl9XG4gICAgLmRzLXBhZ2VoZWFkX190aXRsZXtmb250OnZhcigtLXR5cGUtaDMpfVxuICAgIC5kcy1tZXRhcm93e2dhcDp2YXIoLS1zcGFjZS0zKX1cbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIFRhYnMg4oCUIG5hdmlnYXRpb24vVGFicy5qc3ggKGtpdsOhbGFzenRvdHQ6IDJweCBiZWxzxZEgb2NlYW4gdm9uYWwpXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4uZHMtdGFic3tcbiAgICBkaXNwbGF5OmZsZXg7XG4gICAgZ2FwOnZhcigtLXNwYWNlLTYpO1xuICAgIGJvcmRlci1ib3R0b206MXB4IHNvbGlkIHZhcigtLWJvcmRlci1oYWlybGluZSk7XG4gICAgb3ZlcmZsb3cteDphdXRvO1xufVxuLmRzLXRhYntcbiAgICBkaXNwbGF5OmlubGluZS1mbGV4O1xuICAgIGFsaWduLWl0ZW1zOmNlbnRlcjtcbiAgICBnYXA6dmFyKC0tc3BhY2UtMik7XG4gICAgcGFkZGluZzp2YXIoLS1zcGFjZS0zKSB2YXIoLS1zcGFjZS0xKTtcbiAgICBmb250OnZhcigtLXR5cGUtbGFiZWwpO1xuICAgIGNvbG9yOnZhcigtLXRleHQtbXV0ZWQpO1xuICAgIHRleHQtZGVjb3JhdGlvbjpub25lO1xuICAgIHdoaXRlLXNwYWNlOm5vd3JhcDtcbiAgICBib3JkZXI6MDtcbiAgICBiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O1xuICAgIGN1cnNvcjpwb2ludGVyO1xuICAgIHRyYW5zaXRpb246dmFyKC0tdHJhbnNpdGlvbi1jb250cm9sKTtcbn1cbi5kcy10YWI6aG92ZXJ7Y29sb3I6dmFyKC0tb2NlYW4tNzAwKTt0ZXh0LWRlY29yYXRpb246bm9uZX1cbi5kcy10YWItLWFjdGl2ZXtjb2xvcjp2YXIoLS1vY2Vhbi03MDApO2JveC1zaGFkb3c6aW5zZXQgMCAtMnB4IDAgdmFyKC0tYWN0aW9uLXByaW1hcnkpfVxuLmRzLXRhYiBpe2ZvbnQtc2l6ZToxNHB4fVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgUsOpc3psZXRlesWRIGVscmVuZGV6w6lzIOKAlCB0YXJ0YWxvbSArIDM3MnB4IHJhZ2Fkw7NzIGplbGVudGtlesOpc2kgcGFuZWxcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi5kcy1kZXRhaWx7XG4gICAgbWF4LXdpZHRoOnZhcigtLWRzLWNvbnRhaW5lci0yeGwpO1xuICAgIG1hcmdpbjowIGF1dG87XG4gICAgcGFkZGluZzp2YXIoLS1zZWN0aW9uLXktdGlnaHQpIHZhcigtLXNwYWNlLTgpO1xuICAgIGRpc3BsYXk6Z3JpZDtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6bWlubWF4KDAsMWZyKSAzNzJweDtcbiAgICBnYXA6dmFyKC0tc3BhY2UtMTApO1xuICAgIGFsaWduLWl0ZW1zOnN0YXJ0O1xufVxuLypcbiAgICBBIHBhbmVsIGEgZm9ycsOhc2JhbiBFTMWQQkIgw6FsbCwgbWludCBhIHRhcnRhbG9tIOKAlCBtb2JpbG9uIMOtZ3kgbWFnw6F0w7NsIGVsw7ZsIHZhbixcbiAgICDDqXMgYSBrw6lwZXJuecWRb2x2YXPDsyBpcyBhIGxhcCBmxZEgbcWxdmVsZXTDqXQga2FwamEgZWzFkXN6w7ZyLiBBc3p0YWxpIG7DqXpldGJlbiB2aXN6b250XG4gICAgYSBkZXNpZ24gc3lzdGVtIGpvYmIgb2xkYWxyYSB0ZXN6aSAocmVhZG1lLm1kOiDigJ5kZXRhaWwgcGFnZXMgYSAzNzJweCBzdGlja3kgYm9va2luZ1xuICAgIHBhbmVsIG9uIHRoZSByaWdodOKAnSksIGV6w6lydCBhIHPDoXZva2F0IGV4cGxpY2l0ZW4gb3N6dGp1ayBraS4gRW7DqWxrw7xsIGF6IGF1dG9tYXRpa3VzXG4gICAgZWxoZWx5ZXrDqXMgYSBwYW5lbHQgdGVubsOpIGF6IDFmci1lcyBzw6F2YmEgw6lzIGEgdGFydGFsbWF0IGEgMzcycHgtZXNiZSDigJQgZm9yZMOtdHZhLlxuKi9cbi8qXG4gICAgQSBgZ3JpZC1yb3c6MWAgbmVtIGVsaGFneWhhdMOzLiBBIHBhbmVsIGEgZm9ycsOhc2JhbiBlbMWRYmIgw6FsbCwgZGUgYSAyLiBzw6F2YmFcbiAgICB2YW4ga2lvc3p0dmE7IGEgcsOhY3Mgcml0a2EgKHNwYXJzZSkgZWxoZWx5ZXrDqXNlIGV6dXTDoW4gbmVtIGzDqXAgdmlzc3phLCBlesOpcnRcbiAgICBhIHRhcnRhbG9tIGEgMi4gU09SQkEga2Vyw7xsdCB2b2xuYSDigJQgYSBiYWwgb2xkYWxvbiBlZ3kgcGFuZWxueWkgw7xyZXMgaGVsbHllbC5cbiAgICBNaW5ka2V0dMWRdCBheiAxLiBzb3JiYSBzemVnZXp2ZSBhIGvDqXQgb3N6bG9wIGVneW3DoXMgbWVsbGV0dCBrZXpkxZFkaWsuXG4qL1xuLmRzLWRldGFpbF9fbWFpbntncmlkLWNvbHVtbjoxO2dyaWQtcm93OjE7bWluLXdpZHRoOjA7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtnYXA6dmFyKC0tc3BhY2UtMTApfVxuLyogOTZweC1yZSB0YXBhZCwgYW1pIGVsaGFneWphIGEgNzJweC1lcyBmZWpsw6ljZXQg4oCUIHJlYWRtZS5tZCDigJ5TcGFjZSBhbmQgbGF5b3V04oCdLiAqL1xuLmRzLWRldGFpbF9fc2lkZXtncmlkLWNvbHVtbjoyO2dyaWQtcm93OjE7cG9zaXRpb246c3RpY2t5O3RvcDo5NnB4O2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47Z2FwOnZhcigtLWNhcmQtZ2FwKX1cblxuQG1lZGlhIChtYXgtd2lkdGg6MTAyNHB4KXtcbiAgICAuZHMtZGV0YWlse2dyaWQtdGVtcGxhdGUtY29sdW1uczptaW5tYXgoMCwxZnIpO2dhcDp2YXIoLS1zcGFjZS04KX1cbiAgICAvKiBFZ3kgc8OhdnJhIGVzdmUgYSBmb3Jyw6Fzc29ycmVuZCBkw7ZudDogYSBwYW5lbCBlbMO2bCBtYXJhZC4gKi9cbiAgICAuZHMtZGV0YWlsX19tYWluLC5kcy1kZXRhaWxfX3NpZGV7Z3JpZC1jb2x1bW46YXV0bztncmlkLXJvdzphdXRvfVxuICAgIC5kcy1kZXRhaWxfX3NpZGV7cG9zaXRpb246c3RhdGljfVxufVxuQG1lZGlhIChtYXgtd2lkdGg6NjQwcHgpe1xuICAgIC5kcy1kZXRhaWx7cGFkZGluZzp2YXIoLS1zcGFjZS0xMCkgdmFyKC0tc3BhY2UtNSl9XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBKZWxlbnRrZXrDqXNpIHBhbmVsXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4uZHMtcGFuZWx7XG4gICAgYmFja2dyb3VuZDp2YXIoLS1zdXJmYWNlLWNhcmQpO1xuICAgIGJvcmRlcjoxcHggc29saWQgdmFyKC0tYm9yZGVyLWhhaXJsaW5lKTtcbiAgICBib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy1jYXJkKTtcbiAgICBib3gtc2hhZG93OnZhcigtLXNoYWRvdy1tZCk7XG4gICAgcGFkZGluZzp2YXIoLS1jYXJkLXBhZCk7XG4gICAgZGlzcGxheTpmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOmNvbHVtbjtcbiAgICBnYXA6dmFyKC0tc3BhY2UtNCk7XG59XG4uZHMtcGFuZWxfX3RpdGxle2ZvbnQ6dmFyKC0tdHlwZS1oNSk7Y29sb3I6dmFyKC0tdGV4dC1zdHJvbmcpfVxuLmRzLXBhbmVsX19ub3Rle2ZvbnQ6dmFyKC0tdHlwZS1ib2R5LXNtKTtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKX1cbi5kcy1wYW5lbF9fcHJpY2V7XG4gICAgZGlzcGxheTpmbGV4O1xuICAgIGFsaWduLWl0ZW1zOmJhc2VsaW5lO1xuICAgIGdhcDp2YXIoLS1zcGFjZS0yKTtcbiAgICBmb250OnZhcigtLWZ3LWJvbGQpIHZhcigtLWZzLTJ4bCkvMS4yIHZhcigtLWZvbnQtZGlzcGxheSk7XG4gICAgY29sb3I6dmFyKC0tdGV4dC1zdHJvbmcpO1xuICAgIGxldHRlci1zcGFjaW5nOnZhcigtLWxzLXRpZ2h0KTtcbn1cbi5kcy1wYW5lbF9fcHJpY2Ugc21hbGx7Zm9udDp2YXIoLS10eXBlLWJvZHktc20pO2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO2ZvbnQtd2VpZ2h0OnZhcigtLWZ3LXJlZ3VsYXIpfVxuLmRzLXBhbmVsX19ydWxle2hlaWdodDoxcHg7YmFja2dyb3VuZDp2YXIoLS1ib3JkZXItaGFpcmxpbmUpfVxuXG4vKiDDoWxsYXBvdGRvYm96IGEgcGFuZWxlbiBiZWzDvGwgKHNhasOhdCBqZWxlbnRrZXrDqXMsIHrDoXJ2YSwgYmV0ZWx0LCDigKYpICovXG4uZHMtc3RhdGV7XG4gICAgZGlzcGxheTpmbGV4O1xuICAgIGFsaWduLWl0ZW1zOmZsZXgtc3RhcnQ7XG4gICAgZ2FwOnZhcigtLXNwYWNlLTMpO1xuICAgIHBhZGRpbmc6dmFyKC0tc3BhY2UtNCk7XG4gICAgYm9yZGVyLXJhZGl1czp2YXIoLS1kcy1yYWRpdXMtbWQpO1xuICAgIGJhY2tncm91bmQ6dmFyKC0tc3VyZmFjZS1zdW5rZW4pO1xuICAgIGJvcmRlcjoxcHggc29saWQgdmFyKC0tYm9yZGVyLWhhaXJsaW5lKTtcbn1cbi5kcy1zdGF0ZV9faWNvbntmbGV4OjAgMCBhdXRvO21hcmdpbi10b3A6MXB4O2NvbG9yOnZhcigtLXRleHQtc3VidGxlKX1cbi5kcy1zdGF0ZV9fYm9keXtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2dhcDp2YXIoLS1zcGFjZS0xKTttaW4td2lkdGg6MH1cbi5kcy1zdGF0ZV9fdGl0bGV7Zm9udDp2YXIoLS10eXBlLWxhYmVsKTtjb2xvcjp2YXIoLS10ZXh0LXN0cm9uZyl9XG4uZHMtc3RhdGVfX3RleHR7Zm9udDp2YXIoLS10eXBlLWJvZHktc20pO2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpfVxuXG4uZHMtc3RhdGUtLXN1Y2Nlc3N7YmFja2dyb3VuZDp2YXIoLS1zdGF0dXMtc3VjY2Vzcy1iZyk7Ym9yZGVyLWNvbG9yOnZhcigtLXN0YXR1cy1zdWNjZXNzLWJvcmRlcil9XG4uZHMtc3RhdGUtLXN1Y2Nlc3MgLmRzLXN0YXRlX19pY29uLC5kcy1zdGF0ZS0tc3VjY2VzcyAuZHMtc3RhdGVfX3RpdGxle2NvbG9yOnZhcigtLXN0YXR1cy1zdWNjZXNzKX1cbi5kcy1zdGF0ZS0taW5mb3tiYWNrZ3JvdW5kOnZhcigtLXN0YXR1cy1pbmZvLWJnKTtib3JkZXItY29sb3I6dmFyKC0tc3RhdHVzLWluZm8tYm9yZGVyKX1cbi5kcy1zdGF0ZS0taW5mbyAuZHMtc3RhdGVfX2ljb24sLmRzLXN0YXRlLS1pbmZvIC5kcy1zdGF0ZV9fdGl0bGV7Y29sb3I6dmFyKC0tb2NlYW4tODAwKX1cbi5kcy1zdGF0ZS0td2FybmluZ3tiYWNrZ3JvdW5kOnZhcigtLXN0YXR1cy13YXJuaW5nLWJnKTtib3JkZXItY29sb3I6dmFyKC0tc3RhdHVzLXdhcm5pbmctYm9yZGVyKX1cbi5kcy1zdGF0ZS0td2FybmluZyAuZHMtc3RhdGVfX2ljb24sLmRzLXN0YXRlLS13YXJuaW5nIC5kcy1zdGF0ZV9fdGl0bGV7Y29sb3I6dmFyKC0tZW1iZXItNzAwKX1cbi5kcy1zdGF0ZS0tZGFuZ2Vye2JhY2tncm91bmQ6dmFyKC0tc3RhdHVzLWRhbmdlci1iZyk7Ym9yZGVyLWNvbG9yOnZhcigtLXN0YXR1cy1kYW5nZXItYm9yZGVyKX1cbi5kcy1zdGF0ZS0tZGFuZ2VyIC5kcy1zdGF0ZV9faWNvbiwuZHMtc3RhdGUtLWRhbmdlciAuZHMtc3RhdGVfX3RpdGxle2NvbG9yOnZhcigtLXN0YXR1cy1kYW5nZXIpfVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQWRhdGxpc3RhIChlc2Vtw6lueSBhZGF0YWkpXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4uZHMtZGx7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtnYXA6dmFyKC0tc3BhY2UtNCl9XG4uZHMtZGxfX3Jvd3tkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2dhcDoycHh9XG4uZHMtZGxfX2tleXtmb250OnZhcigtLXR5cGUtY2FwdGlvbik7dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO2xldHRlci1zcGFjaW5nOnZhcigtLWxzLWNhcHMpO2NvbG9yOnZhcigtLXRleHQtc3VidGxlKX1cbi5kcy1kbF9fdmFse2ZvbnQ6dmFyKC0tdHlwZS1ib2R5LXNtKTtjb2xvcjp2YXIoLS10ZXh0LXN0cm9uZyl9XG4uZHMtZGxfX3ZhbC0tbW9ub3tmb250OnZhcigtLXR5cGUtbW9ubyk7Zm9udC1zaXplOnZhcigtLWZzLXhzKX1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIFRhcnRhbG1pIHN6ZWtjacOzayDDqXMgcmljaCB0ZXh0XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4uZHMtYmxvY2t7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtnYXA6dmFyKC0tc3BhY2UtNCl9XG4uZHMtYmxvY2tfX3RpdGxle1xuICAgIGZvbnQ6dmFyKC0tdHlwZS1oNCk7XG4gICAgY29sb3I6dmFyKC0tdGV4dC1zdHJvbmcpO1xuICAgIHBhZGRpbmctYm90dG9tOnZhcigtLXNwYWNlLTMpO1xuICAgIGJvcmRlci1ib3R0b206MXB4IHNvbGlkIHZhcigtLWJvcmRlci1oYWlybGluZSk7XG59XG5cbi5kcy1wcm9zZXtmb250OnZhcigtLXR5cGUtYm9keSk7Y29sb3I6dmFyKC0tdGV4dC1ib2R5KTttYXgtd2lkdGg6NzJjaH1cbi5kcy1wcm9zZSA+ICogKyAqe21hcmdpbi10b3A6dmFyKC0tc3BhY2UtNCl9XG4uZHMtcHJvc2UgaDEsLmRzLXByb3NlIGgyLC5kcy1wcm9zZSBoMywuZHMtcHJvc2UgaDR7Y29sb3I6dmFyKC0tdGV4dC1zdHJvbmcpO21hcmdpbi10b3A6dmFyKC0tc3BhY2UtNil9XG4uZHMtcHJvc2UgaDJ7Zm9udDp2YXIoLS10eXBlLWg0KX1cbi5kcy1wcm9zZSBoMywuZHMtcHJvc2UgaDR7Zm9udDp2YXIoLS10eXBlLWg1KX1cbi5kcy1wcm9zZSBhe2NvbG9yOnZhcigtLXRleHQtbGluayk7dGV4dC1kZWNvcmF0aW9uOnVuZGVybGluZTt0ZXh0LXVuZGVybGluZS1vZmZzZXQ6M3B4fVxuLmRzLXByb3NlIHVsLC5kcy1wcm9zZSBvbHtwYWRkaW5nLWxlZnQ6dmFyKC0tc3BhY2UtNik7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtnYXA6dmFyKC0tc3BhY2UtMil9XG4uZHMtcHJvc2UgdWx7bGlzdC1zdHlsZTpkaXNjfVxuLmRzLXByb3NlIG9se2xpc3Qtc3R5bGU6ZGVjaW1hbH1cbi5kcy1wcm9zZSBzdHJvbmd7Zm9udC13ZWlnaHQ6dmFyKC0tZnctc2VtaWJvbGQpO2NvbG9yOnZhcigtLXRleHQtc3Ryb25nKX1cbi5kcy1wcm9zZSBpbWd7bWF4LXdpZHRoOjEwMCU7aGVpZ2h0OmF1dG87Ym9yZGVyLXJhZGl1czp2YXIoLS1kcy1yYWRpdXMtbWQpfVxuLmRzLXByb3NlIHRhYmxle3dpZHRoOjEwMCU7Ym9yZGVyLWNvbGxhcHNlOmNvbGxhcHNlO2ZvbnQ6dmFyKC0tdHlwZS1ib2R5LXNtKX1cbi5kcy1wcm9zZSB0aCwuZHMtcHJvc2UgdGR7Ym9yZGVyOjFweCBzb2xpZCB2YXIoLS1ib3JkZXItaGFpcmxpbmUpO3BhZGRpbmc6dmFyKC0tc3BhY2UtMikgdmFyKC0tc3BhY2UtMyk7dGV4dC1hbGlnbjpsZWZ0fVxuLmRzLXByb3NlIHRoe2JhY2tncm91bmQ6dmFyKC0tc3VyZmFjZS1zdW5rZW4pO2ZvbnQtd2VpZ2h0OnZhcigtLWZ3LXNlbWlib2xkKTtjb2xvcjp2YXIoLS10ZXh0LXN0cm9uZyl9XG5cbi8qIGxldMO2bHRoZXTFkSBhbnlhZ29rICovXG4uZHMtZmlsZWxpc3R7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtnYXA6dmFyKC0tc3BhY2UtMil9XG4uZHMtZmlsZWxpc3QgYSwuZHMtZmlsZWxpc3Qgc3BhbntcbiAgICBkaXNwbGF5OmZsZXg7XG4gICAgYWxpZ24taXRlbXM6Y2VudGVyO1xuICAgIGdhcDp2YXIoLS1zcGFjZS0zKTtcbiAgICBwYWRkaW5nOnZhcigtLXNwYWNlLTMpIHZhcigtLXNwYWNlLTQpO1xuICAgIGJvcmRlcjoxcHggc29saWQgdmFyKC0tYm9yZGVyLWhhaXJsaW5lKTtcbiAgICBib3JkZXItcmFkaXVzOnZhcigtLWRzLXJhZGl1cy1tZCk7XG4gICAgYmFja2dyb3VuZDp2YXIoLS1zdXJmYWNlLWNhcmQpO1xuICAgIGZvbnQ6dmFyKC0tdHlwZS1ib2R5LXNtKTtcbiAgICBjb2xvcjp2YXIoLS10ZXh0LWJvZHkpO1xuICAgIHRleHQtZGVjb3JhdGlvbjpub25lO1xuICAgIHRyYW5zaXRpb246dmFyKC0tdHJhbnNpdGlvbi1jb250cm9sKTtcbn1cbi5kcy1maWxlbGlzdCBhOmhvdmVye2JvcmRlci1jb2xvcjp2YXIoLS1ib3JkZXItdGludCk7YmFja2dyb3VuZDp2YXIoLS1vY2Vhbi01MCk7Y29sb3I6dmFyKC0tb2NlYW4tNzAwKTt0ZXh0LWRlY29yYXRpb246bm9uZX1cbi5kcy1maWxlbGlzdCBpe2NvbG9yOnZhcigtLXRleHQtc3VidGxlKTtmbGV4OjAgMCBhdXRvfVxuLmRzLWZpbGVsaXN0IGE6aG92ZXIgaXtjb2xvcjp2YXIoLS1vY2Vhbi02MDApfVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgw5xyZXMgw6FsbGFwb3RcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi5kcy1lbXB0eXtcbiAgICBkaXNwbGF5OmZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246Y29sdW1uO1xuICAgIGFsaWduLWl0ZW1zOmNlbnRlcjtcbiAgICB0ZXh0LWFsaWduOmNlbnRlcjtcbiAgICBnYXA6dmFyKC0tc3BhY2UtMyk7XG4gICAgcGFkZGluZzp2YXIoLS1zcGFjZS0xNikgdmFyKC0tc3BhY2UtOCk7XG4gICAgYm9yZGVyOjFweCBkYXNoZWQgdmFyKC0tYm9yZGVyLWRlZmF1bHQpO1xuICAgIGJvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLWNhcmQpO1xuICAgIGJhY2tncm91bmQ6dmFyKC0tc3VyZmFjZS1zdW5rZW4pO1xufVxuLmRzLWVtcHR5X19pY29ue1xuICAgIHdpZHRoOjUycHg7aGVpZ2h0OjUycHg7XG4gICAgYm9yZGVyLXJhZGl1czp2YXIoLS1yYWRpdXMtY2lyY2xlKTtcbiAgICBiYWNrZ3JvdW5kOnZhcigtLW9jZWFuLTUwKTtcbiAgICBib3JkZXI6MXB4IHNvbGlkIHZhcigtLWJvcmRlci10aW50KTtcbiAgICBkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO1xufVxuLmRzLWVtcHR5X19pY29uIGl7Y29sb3I6dmFyKC0tb2NlYW4tNjAwKTtmb250LXNpemU6MjBweH1cbi5kcy1lbXB0eV9fdGl0bGV7Zm9udDp2YXIoLS10eXBlLWg1KTtjb2xvcjp2YXIoLS10ZXh0LXN0cm9uZyl9XG4uZHMtZW1wdHlfX3RleHR7Zm9udDp2YXIoLS10eXBlLWJvZHktc20pO2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO21heC13aWR0aDo0NmNofVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgxbBybGFwXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQSBTeW1mb255IMWxcmxhcG9rYXQgYXogQEFwcGFyYXR1c0FwcGxpY2F0aW9uL2Zvcm1fdGFpbHdpbmQuaHRtbC50d2lnIHTDqW1hXG4gICByYWp6b2xqYSwgVGFpbHdpbmQgdXRpbGl0eS1ra2VsLiBBIFRhaWx3aW5kIHY0IE1JTkRFTiBzemFiw6FseWEgYEBsYXllcmAtYmVuXG4gICB2YW4sIGEgcsOpdGVnemV0dCBzdMOtbHVzb2sgcGVkaWcgbWluZGlnIHZlc3rDrXRlbmVrIGEgcsOpdGVndGVsZW5la2tlbCBzemVtYmVuXG4gICDigJQgZsO8Z2dldGxlbsO8bCBhIHNwZWNpZmljaXTDoXN0w7NsLiBFesOpcnQgZWzDqWcgZWxlbXN6ZWxla3RvcnJhbCByw6HDvGxuaTpcbiAgIG5lbSBrZWxsIGvDvGzDtm4gxbFybGFwdMOpbcOhdCDDrXJuaSBhaGhveiwgaG9neSBhIGRlc2lnbiBzeXN0ZW0gbnllcmplbi4gKi9cblxuLmRzLWZvcm17ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtnYXA6dmFyKC0tc3BhY2UtNSl9XG5cbi5kcy1mb3JtIGxhYmVse1xuICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgZm9udDp2YXIoLS10eXBlLWxhYmVsKTtcbiAgICBjb2xvcjp2YXIoLS10ZXh0LXN0cm9uZyk7XG4gICAgbWFyZ2luLWJvdHRvbTp2YXIoLS1zcGFjZS0yKTtcbn1cbi5kcy1mb3JtIGlucHV0W3R5cGU9XCJ0ZXh0XCJdLFxuLmRzLWZvcm0gaW5wdXRbdHlwZT1cImVtYWlsXCJdLFxuLmRzLWZvcm0gaW5wdXRbdHlwZT1cInRlbFwiXSxcbi5kcy1mb3JtIGlucHV0W3R5cGU9XCJudW1iZXJcIl0sXG4uZHMtZm9ybSBpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl0sXG4uZHMtZm9ybSBpbnB1dFt0eXBlPVwiZGF0ZVwiXSxcbi5kcy1mb3JtIHNlbGVjdCxcbi5kcy1mb3JtIHRleHRhcmVhe1xuICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgd2lkdGg6MTAwJTtcbiAgICBtaW4taGVpZ2h0OnZhcigtLWNvbnRyb2wtaC1tZCk7XG4gICAgcGFkZGluZzp2YXIoLS1zcGFjZS0yKSB2YXIoLS1zcGFjZS0zKTtcbiAgICBib3JkZXItcmFkaXVzOnZhcigtLXJhZGl1cy1jb250cm9sKTtcbiAgICBib3JkZXI6MXB4IHNvbGlkIHZhcigtLWJvcmRlci1kZWZhdWx0KTtcbiAgICBiYWNrZ3JvdW5kOnZhcigtLXN1cmZhY2UtY2FyZCk7XG4gICAgY29sb3I6dmFyKC0tdGV4dC1ib2R5KTtcbiAgICBmb250OnZhcigtLXR5cGUtYm9keS1zbSk7XG4gICAgYm94LXNoYWRvdzp2YXIoLS1zaGFkb3cteHMpO1xuICAgIHRyYW5zaXRpb246dmFyKC0tdHJhbnNpdGlvbi1jb250cm9sKTtcbn1cbi5kcy1mb3JtIHRleHRhcmVhe21pbi1oZWlnaHQ6MTIwcHg7cmVzaXplOnZlcnRpY2FsfVxuLmRzLWZvcm0gaW5wdXQ6Zm9jdXMsLmRzLWZvcm0gc2VsZWN0OmZvY3VzLC5kcy1mb3JtIHRleHRhcmVhOmZvY3Vze1xuICAgIG91dGxpbmU6bm9uZTtcbiAgICBib3JkZXItY29sb3I6dmFyKC0tYm9yZGVyLWZvY3VzKTtcbiAgICBib3gtc2hhZG93OnZhcigtLWZvY3VzLXJpbmcpO1xufVxuLmRzLWZvcm0gaW5wdXQ6OnBsYWNlaG9sZGVyLC5kcy1mb3JtIHRleHRhcmVhOjpwbGFjZWhvbGRlcntjb2xvcjp2YXIoLS10ZXh0LXN1YnRsZSl9XG5cbi8qIHLDoWRpw7MgLyBqZWzDtmzFkW7DqWd5emV0IOKAlCBhIGhlbHlzesOtbi0gw6lzIHN6aW50dsOhbGFzenTDoXMgaWx5ZW4gKGV4cGFuZGVkIENob2ljZVR5cGUpLlxuICAgQXogxbFybGFwdMOpbWEgYGZvcm0taW5wdXRgLW90IGlzIHLDoXJhaywgYW1pIHN6w7Z2ZWdtZXrFkXbDqSBzdMOtbHVzb3p6YTogYVxuICAgQHRhaWx3aW5kY3NzL2Zvcm1zIGBhcHBlYXJhbmNlOm5vbmVgLXQgYWQgw6lzIGjDoXR0w6lya8OpcHBlbCByYWp6b2wsIGEgYHJvdW5kZWRgXG4gICBwZWRpZyBsZWtlcmVrw610ZXR0IE7DiUdZWkVURVQgY3NpbsOhbCBhIHLDoWRpw7Niw7NsIGlzLiBWaXNzemFhZGp1ayBhIG5hdMOtdiBhbGFrb3Qg4oCUXG4gICBhIGvDtnIvbsOpZ3l6ZXQgbWVna8O8bMO2bmLDtnp0ZXTDqXMgw61neSBtYWfDoXTDs2wgaGVseWVzIG1hcmFkLiAqL1xuLmRzLWZvcm0gaW5wdXRbdHlwZT1cInJhZGlvXCJdLC5kcy1mb3JtIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXXtcbiAgICBhcHBlYXJhbmNlOmF1dG87XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOmF1dG87XG4gICAgd2lkdGg6MTZweDtoZWlnaHQ6MTZweDtcbiAgICBtaW4taGVpZ2h0OjA7XG4gICAgcGFkZGluZzowO1xuICAgIGJvcmRlcjowO1xuICAgIGJvcmRlci1yYWRpdXM6MDtcbiAgICBiYWNrZ3JvdW5kOm5vbmU7XG4gICAgYm94LXNoYWRvdzpub25lO1xuICAgIGFjY2VudC1jb2xvcjp2YXIoLS1hY3Rpb24tcHJpbWFyeSk7XG4gICAgZmxleDowIDAgYXV0bztcbn1cbi5kcy1mb3JtIGlucHV0W3R5cGU9XCJyYWRpb1wiXSArIGxhYmVsLFxuLmRzLWZvcm0gaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdICsgbGFiZWx7XG4gICAgZGlzcGxheTppbmxpbmU7XG4gICAgZm9udDp2YXIoLS10eXBlLWJvZHktc20pO1xuICAgIGNvbG9yOnZhcigtLXRleHQtYm9keSk7XG4gICAgbWFyZ2luLWJvdHRvbTowO1xufVxuXG4vKiBhIGZvcm1fdGFpbHdpbmQgdMOpbWEgY3NvcG9ydGphaSAqL1xuLmRzLWZvcm0gLmlucHV0LWdyb3Vwe2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47Z2FwOnZhcigtLXNwYWNlLTIpfVxuXG4vKiBiZWvDvGxkxZFnb21iIOKAlCBhIHTDqW1hIHNpbWEgPGJ1dHRvbj4tdCBhZCwgaXR0IGthcCBEUy1hbGFrb3QgKi9cbi5kcy1mb3JtIGJ1dHRvblt0eXBlPVwic3VibWl0XCJdLC5kcy1mb3JtIGlucHV0W3R5cGU9XCJzdWJtaXRcIl17XG4gICAgZGlzcGxheTppbmxpbmUtZmxleDtcbiAgICBhbGlnbi1pdGVtczpjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OmNlbnRlcjtcbiAgICBnYXA6OHB4O1xuICAgIGhlaWdodDp2YXIoLS1jb250cm9sLWgtbGcpO1xuICAgIHBhZGRpbmc6MCB2YXIoLS1zcGFjZS03KTtcbiAgICBmb250OnZhcigtLWZ3LXNlbWlib2xkKSB2YXIoLS1mcy1iYXNlKS8xIHZhcigtLWRzLWZvbnQtc2Fucyk7XG4gICAgbGV0dGVyLXNwYWNpbmc6dmFyKC0tbHMtdGlnaHQpO1xuICAgIGJvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLWNvbnRyb2wpO1xuICAgIGJvcmRlcjoxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYmFja2dyb3VuZDp2YXIoLS1hY3Rpb24tcHJpbWFyeSk7XG4gICAgY29sb3I6dmFyKC0tdGV4dC1vbi1wcmltYXJ5KTtcbiAgICBib3gtc2hhZG93OnZhcigtLXNoYWRvdy1wcmltYXJ5KTtcbiAgICBjdXJzb3I6cG9pbnRlcjtcbiAgICBhbGlnbi1zZWxmOmZsZXgtc3RhcnQ7XG4gICAgdHJhbnNpdGlvbjp2YXIoLS10cmFuc2l0aW9uLWNvbnRyb2wpO1xufVxuLmRzLWZvcm0gYnV0dG9uW3R5cGU9XCJzdWJtaXRcIl06aG92ZXIsLmRzLWZvcm0gaW5wdXRbdHlwZT1cInN1Ym1pdFwiXTpob3ZlcntiYWNrZ3JvdW5kOnZhcigtLWFjdGlvbi1wcmltYXJ5LWhvdmVyKX1cbi5kcy1mb3JtIGJ1dHRvblt0eXBlPVwic3VibWl0XCJdOmFjdGl2ZSwuZHMtZm9ybSBpbnB1dFt0eXBlPVwic3VibWl0XCJdOmFjdGl2ZXt0cmFuc2Zvcm06dmFyKC0tcHJlc3Mtc2NhbGUpfVxuXG4vKiBoaWLDoWsgw6lzIHPDumfDsyAqL1xuLmRzLWZvcm0gLmhlbHAtYmxvY2ssLmRzLWZvcm0gc21hbGx7Zm9udDp2YXIoLS10eXBlLWNhcHRpb24pO2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpfVxuLmRzLWZvcm0gdWwgbGl7Zm9udDp2YXIoLS10eXBlLWNhcHRpb24pO2NvbG9yOnZhcigtLXN0YXR1cy1kYW5nZXIpfVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgTGFwb3rDsyDigJQgbmF2aWdhdGlvbi9QYWdpbmF0aW9uLmpzeFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLmRzLXBhZ2luYXRpb257XG4gICAgZGlzcGxheTpmbGV4O1xuICAgIGFsaWduLWl0ZW1zOmNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO1xuICAgIGZsZXgtd3JhcDp3cmFwO1xuICAgIGdhcDp2YXIoLS1zcGFjZS0yKTtcbiAgICBtYXJnaW4tdG9wOnZhcigtLXNwYWNlLTEwKTtcbn1cbi5kcy1wYWdle1xuICAgIGRpc3BsYXk6aW5saW5lLWZsZXg7XG4gICAgYWxpZ24taXRlbXM6Y2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDpjZW50ZXI7XG4gICAgbWluLXdpZHRoOjM2cHg7XG4gICAgaGVpZ2h0OjM2cHg7XG4gICAgcGFkZGluZzowIDEwcHg7XG4gICAgYm9yZGVyLXJhZGl1czp2YXIoLS1yYWRpdXMtY29udHJvbCk7XG4gICAgZm9udDp2YXIoLS10eXBlLWxhYmVsKTtcbiAgICBiYWNrZ3JvdW5kOnZhcigtLXN1cmZhY2UtY2FyZCk7XG4gICAgY29sb3I6dmFyKC0tdGV4dC1ib2R5KTtcbiAgICBib3JkZXI6MXB4IHNvbGlkIHZhcigtLWJvcmRlci1oYWlybGluZSk7XG4gICAgYm94LXNoYWRvdzp2YXIoLS1zaGFkb3cteHMpO1xuICAgIHRleHQtZGVjb3JhdGlvbjpub25lO1xuICAgIHRyYW5zaXRpb246dmFyKC0tdHJhbnNpdGlvbi1jb250cm9sKTtcbn1cbi5kcy1wYWdlOmhvdmVye2JhY2tncm91bmQ6dmFyKC0tc3VyZmFjZS1ob3Zlcik7Y29sb3I6dmFyKC0tdGV4dC1ib2R5KTt0ZXh0LWRlY29yYXRpb246bm9uZX1cbi5kcy1wYWdlLS1hY3RpdmV7XG4gICAgYmFja2dyb3VuZDp2YXIoLS1hY3Rpb24tcHJpbWFyeSk7XG4gICAgY29sb3I6I2ZmZjtcbiAgICBib3JkZXItY29sb3I6dHJhbnNwYXJlbnQ7XG4gICAgYm94LXNoYWRvdzp2YXIoLS1zaGFkb3ctcHJpbWFyeSk7XG59XG4uZHMtcGFnZS0tZGlzYWJsZWR7b3BhY2l0eTouNDtjdXJzb3I6bm90LWFsbG93ZWQ7Ym94LXNoYWRvdzpub25lfVxuLmRzLXBhZ2VfX2dhcHtjb2xvcjp2YXIoLS10ZXh0LXN1YnRsZSk7cGFkZGluZzowIDJweH1cbi5kcy1wYWdpbmF0aW9uX19zdW1tYXJ5e1xuICAgIG1hcmdpbi10b3A6dmFyKC0tc3BhY2UtNCk7XG4gICAgdGV4dC1hbGlnbjpjZW50ZXI7XG4gICAgZm9udDp2YXIoLS10eXBlLWNhcHRpb24pO1xuICAgIGNvbG9yOnZhcigtLXRleHQtbXV0ZWQpO1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgUHJvZmlsIGVscmVuZGV6w6lzIOKAlCAyNjhweCByYWdhZMOzcyBvbGRhbHPDoXYgKyB0YXJ0YWxvbVxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIEEgcmVhZG1lLm1kIGEgbGlzdGFvbGRhbGFrcmEg4oCeZml4ZWQgMjY4cHggc3RpY2t5IGZpbHRlciByYWlsIG9uIHRoZSBsZWZ04oCdLWV0XG4gICDDrXIgZWzFkTsgYSBwcm9maWxmZWzDvGxldCB1Z3lhbmV6dCBhIHPDoXZvdCBoYXN6bsOhbGphIG1lbsO8cmUuIDk2cHgtcmUgdGFwYWQsXG4gICBlbGhhZ3l2YSBhIDcycHgtZXMgZmVqbMOpY2V0LiAqL1xuXG4uZHMtcHJvZmlsZXtcbiAgICBtYXgtd2lkdGg6dmFyKC0tZHMtY29udGFpbmVyLTJ4bCk7XG4gICAgbWFyZ2luOjAgYXV0bztcbiAgICBwYWRkaW5nOnZhcigtLXNlY3Rpb24teS10aWdodCkgdmFyKC0tc3BhY2UtOCk7XG4gICAgZGlzcGxheTpncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczoyNjhweCBtaW5tYXgoMCwxZnIpO1xuICAgIGdhcDp2YXIoLS1zcGFjZS0xMCk7XG4gICAgYWxpZ24taXRlbXM6c3RhcnQ7XG59XG4uZHMtcHJvZmlsZV9fcmFpbHtwb3NpdGlvbjpzdGlja3k7dG9wOjk2cHg7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtnYXA6dmFyKC0tY2FyZC1nYXApfVxuLmRzLXByb2ZpbGVfX21haW57bWluLXdpZHRoOjA7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtnYXA6dmFyKC0tc3BhY2UtOCl9XG5cbkBtZWRpYSAobWF4LXdpZHRoOjEwMjRweCl7XG4gICAgLmRzLXByb2ZpbGV7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOm1pbm1heCgwLDFmcik7Z2FwOnZhcigtLXNwYWNlLTgpfVxuICAgIC5kcy1wcm9maWxlX19yYWlse3Bvc2l0aW9uOnN0YXRpY31cbn1cbkBtZWRpYSAobWF4LXdpZHRoOjY0MHB4KXtcbiAgICAuZHMtcHJvZmlsZXtwYWRkaW5nOnZhcigtLXNwYWNlLTEwKSB2YXIoLS1zcGFjZS01KX1cbn1cblxuLyogZsO8Z2fFkWxlZ2VzIG5hdmlnw6FjacOzICovXG4uZHMtbmF2e2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47Z2FwOnZhcigtLXNwYWNlLTYpfVxuLmRzLW5hdl9fZ3JvdXB7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtnYXA6dmFyKC0tc3BhY2UtMSl9XG4uZHMtbmF2X19sYWJlbHtcbiAgICBwYWRkaW5nOjAgdmFyKC0tc3BhY2UtMykgdmFyKC0tc3BhY2UtMik7XG4gICAgZm9udDp2YXIoLS10eXBlLWV5ZWJyb3cpO1xuICAgIHRleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTtcbiAgICBsZXR0ZXItc3BhY2luZzp2YXIoLS1scy1jYXBzKTtcbiAgICBjb2xvcjp2YXIoLS10ZXh0LXN1YnRsZSk7XG59XG4uZHMtbmF2X19pdGVte1xuICAgIGRpc3BsYXk6ZmxleDtcbiAgICBhbGlnbi1pdGVtczpjZW50ZXI7XG4gICAgZ2FwOnZhcigtLXNwYWNlLTMpO1xuICAgIHBhZGRpbmc6dmFyKC0tc3BhY2UtMikgdmFyKC0tc3BhY2UtMyk7XG4gICAgYm9yZGVyLXJhZGl1czp2YXIoLS1kcy1yYWRpdXMtbWQpO1xuICAgIGZvbnQ6dmFyKC0tdHlwZS1sYWJlbCk7XG4gICAgY29sb3I6dmFyKC0tdGV4dC1ib2R5KTtcbiAgICB0ZXh0LWRlY29yYXRpb246bm9uZTtcbiAgICB0cmFuc2l0aW9uOnZhcigtLXRyYW5zaXRpb24tY29udHJvbCk7XG59XG4uZHMtbmF2X19pdGVtOmhvdmVye2JhY2tncm91bmQ6dmFyKC0tc3VyZmFjZS1ob3Zlcik7Y29sb3I6dmFyKC0tb2NlYW4tNzAwKTt0ZXh0LWRlY29yYXRpb246bm9uZX1cbi5kcy1uYXZfX2l0ZW0gaXt3aWR0aDoxOHB4O3RleHQtYWxpZ246Y2VudGVyO2NvbG9yOnZhcigtLXRleHQtc3VidGxlKTtmb250LXNpemU6MTRweDtmbGV4OjAgMCBhdXRvfVxuLmRzLW5hdl9faXRlbTpob3ZlciBpe2NvbG9yOnZhcigtLW9jZWFuLTYwMCl9XG4uZHMtbmF2X19pdGVtLS1hY3RpdmV7YmFja2dyb3VuZDp2YXIoLS1vY2Vhbi01MCk7Y29sb3I6dmFyKC0tb2NlYW4tNzAwKTtib3JkZXI6MXB4IHNvbGlkIHZhcigtLWJvcmRlci10aW50KX1cbi5kcy1uYXZfX2l0ZW0tLWFjdGl2ZSBpe2NvbG9yOnZhcigtLW9jZWFuLTYwMCl9XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBMaXN0YXNvcm9rIChzemF2YXrDoXNvaywgw7xsw6lzZWssIGlnYXpvbMOhc29rLCB0ZXN6dGVrKVxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLmRzLWxpc3R7XG4gICAgZGlzcGxheTpmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOmNvbHVtbjtcbiAgICBiYWNrZ3JvdW5kOnZhcigtLXN1cmZhY2UtY2FyZCk7XG4gICAgYm9yZGVyOjFweCBzb2xpZCB2YXIoLS1ib3JkZXItaGFpcmxpbmUpO1xuICAgIGJvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLWNhcmQpO1xuICAgIGJveC1zaGFkb3c6dmFyKC0tc2hhZG93LXNtKTtcbiAgICBvdmVyZmxvdzpoaWRkZW47XG59XG4uZHMtbGlzdF9fcm93e1xuICAgIGRpc3BsYXk6ZmxleDtcbiAgICBhbGlnbi1pdGVtczpjZW50ZXI7XG4gICAgZ2FwOnZhcigtLXNwYWNlLTQpO1xuICAgIHBhZGRpbmc6dmFyKC0tc3BhY2UtNCkgdmFyKC0tc3BhY2UtNSk7XG4gICAgdGV4dC1kZWNvcmF0aW9uOm5vbmU7XG4gICAgY29sb3I6dmFyKC0tdGV4dC1ib2R5KTtcbiAgICB0cmFuc2l0aW9uOnZhcigtLXRyYW5zaXRpb24tY29udHJvbCk7XG59XG4uZHMtbGlzdF9fcm93ICsgLmRzLWxpc3RfX3Jvd3tib3JkZXItdG9wOjFweCBzb2xpZCB2YXIoLS1ib3JkZXItaGFpcmxpbmUpfVxuYS5kcy1saXN0X19yb3c6aG92ZXJ7YmFja2dyb3VuZDp2YXIoLS1zdXJmYWNlLWhvdmVyKTt0ZXh0LWRlY29yYXRpb246bm9uZTtjb2xvcjp2YXIoLS10ZXh0LWJvZHkpfVxuLmRzLWxpc3RfX2JvZHl7ZmxleDoxO21pbi13aWR0aDowO2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47Z2FwOjJweH1cbi5kcy1saXN0X190aXRsZXtmb250OnZhcigtLXR5cGUtbGFiZWwpO2NvbG9yOnZhcigtLXRleHQtc3Ryb25nKX1cbi5kcy1saXN0X19tZXRhe1xuICAgIGRpc3BsYXk6ZmxleDtcbiAgICBmbGV4LXdyYXA6d3JhcDtcbiAgICBhbGlnbi1pdGVtczpjZW50ZXI7XG4gICAgZ2FwOnZhcigtLXNwYWNlLTMpO1xuICAgIGZvbnQ6dmFyKC0tdHlwZS1jYXB0aW9uKTtcbiAgICBjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTtcbn1cbi5kcy1saXN0X19tZXRhIGl7Y29sb3I6dmFyKC0tdGV4dC1zdWJ0bGUpfVxuLmRzLWxpc3RfX3RhaWx7ZmxleDowIDAgYXV0bztkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDp2YXIoLS1zcGFjZS0zKX1cbi5kcy1saXN0X19jaGV2cm9ue2NvbG9yOnZhcigtLXRleHQtc3VidGxlKTtmbGV4OjAgMCBhdXRvfVxuYS5kcy1saXN0X19yb3c6aG92ZXIgLmRzLWxpc3RfX2NoZXZyb257Y29sb3I6dmFyKC0tb2NlYW4tNjAwKX1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIEplbGVudGtlesOpcy1rw6FydHlhIGEgcHJvZmlsb24gKEVzZW3DqW55ZWltKVxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLmRzLXJlZ3tcbiAgICBkaXNwbGF5OmZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246Y29sdW1uO1xuICAgIGdhcDp2YXIoLS1zcGFjZS00KTtcbiAgICBwYWRkaW5nOnZhcigtLWNhcmQtcGFkKTtcbiAgICBiYWNrZ3JvdW5kOnZhcigtLXN1cmZhY2UtY2FyZCk7XG4gICAgYm9yZGVyOjFweCBzb2xpZCB2YXIoLS1ib3JkZXItaGFpcmxpbmUpO1xuICAgIGJvcmRlci1sZWZ0OjNweCBzb2xpZCB2YXIoLS1ib3JkZXItZGVmYXVsdCk7XG4gICAgYm9yZGVyLXJhZGl1czp2YXIoLS1yYWRpdXMtY2FyZCk7XG4gICAgYm94LXNoYWRvdzp2YXIoLS1zaGFkb3ctc20pO1xufVxuLmRzLXJlZy0tcGVuZGluZ3tib3JkZXItbGVmdC1jb2xvcjp2YXIoLS1zdGF0dXMtd2FybmluZyl9XG4uZHMtcmVnLS1yZWdpc3RlcmVke2JvcmRlci1sZWZ0LWNvbG9yOnZhcigtLWFjdGlvbi1wcmltYXJ5KX1cbi5kcy1yZWctLWF0dGVuZGVke2JvcmRlci1sZWZ0LWNvbG9yOnZhcigtLXN0YXR1cy1zdWNjZXNzKX1cblxuLmRzLXJlZ19faGVhZHtkaXNwbGF5OmZsZXg7ZmxleC13cmFwOndyYXA7YWxpZ24taXRlbXM6ZmxleC1zdGFydDtnYXA6dmFyKC0tc3BhY2UtNCl9XG4uZHMtcmVnX190aXRsZXtmbGV4OjE7bWluLXdpZHRoOjA7Zm9udDp2YXIoLS10eXBlLWg1KTtjb2xvcjp2YXIoLS10ZXh0LXN0cm9uZyl9XG4uZHMtcmVnX19ydWxle2hlaWdodDoxcHg7YmFja2dyb3VuZDp2YXIoLS1ib3JkZXItaGFpcmxpbmUpfVxuXG4vKiBwb250c3rDoW0tc8OhdiBhIHRlc3p0ZWtuw6lsICovXG4uZHMtc2NvcmVze2Rpc3BsYXk6ZmxleDtmbGV4LXdyYXA6d3JhcDtnYXA6dmFyKC0tc3BhY2UtNil9XG4uZHMtc2NvcmV7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtnYXA6MnB4fVxuLmRzLXNjb3JlX192YWx1ZXtmb250OnZhcigtLWZ3LWJvbGQpIHZhcigtLWZzLXhsKS8xLjIgdmFyKC0tZm9udC1kaXNwbGF5KTtjb2xvcjp2YXIoLS10ZXh0LXN0cm9uZyl9XG4uZHMtc2NvcmVfX2xhYmVse2ZvbnQ6dmFyKC0tdHlwZS1jYXB0aW9uKTtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKX1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIEJlbMOpcMOpcyAvIHJlZ2lzenRyw6FjacOzIOKAlCB1aV9raXRzL2tlcHplcy9Mb2dpblNjcmVlbi5qc3hcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBPc3p0b3R0IGvDqXBlcm55xZE6IMWxcmxhcCBiYWxyYSwgaWxsdXN6dHLDoWNpw7Mgam9iYnJhIG9jZWFuLTUwLWVuLiBBIGtvcsOhYmJpXG4gICBhcHAtc2FibG9uIGZvcmTDrXR2YSDDoWxsdCAoa8OpcCBiYWxyYSwgxbFybGFwIHNreS0xMDAtb24gam9iYnJhKSDigJQgYSBkZXNpZ25cbiAgIHN5c3RlbSBzb3JyZW5kamUgYXogaXLDoW55YWTDsy4gRXpla2VuIGF6IG9sZGFsYWtvbiBuaW5jcyBmZWpsw6ljLCBlesOpcnQgYVxuICAgbWFnYXNzw6FnIGEgdGVsamVzIG7DqXpldGFibGFrLiAqL1xuXG4uZHMtYXV0aHtcbiAgICBtaW4taGVpZ2h0OjEwMHZoO1xuICAgIGRpc3BsYXk6Z3JpZDtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6bWlubWF4KDAsMWZyKSBtaW5tYXgoMCwxZnIpO1xufVxuLmRzLWF1dGhfX2Zvcm17XG4gICAgZGlzcGxheTpmbGV4O1xuICAgIGFsaWduLWl0ZW1zOmNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO1xuICAgIHBhZGRpbmc6dmFyKC0tc3BhY2UtMTYpIHZhcigtLXNwYWNlLTgpO1xufVxuLmRzLWF1dGhfX2lubmVye1xuICAgIHdpZHRoOjEwMCU7XG4gICAgbWF4LXdpZHRoOjQwMHB4O1xuICAgIGRpc3BsYXk6ZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjpjb2x1bW47XG4gICAgZ2FwOnZhcigtLXNwYWNlLTYpO1xufVxuLmRzLWF1dGhfX2xvZ297aGVpZ2h0OjY0cHg7d2lkdGg6YXV0bzthbGlnbi1zZWxmOmZsZXgtc3RhcnR9XG4uZHMtYXV0aF9faGVhZHtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2dhcDp2YXIoLS1zcGFjZS0yKX1cbi5kcy1hdXRoX190aXRsZXtmb250OnZhcigtLXR5cGUtaDMpO2NvbG9yOnZhcigtLXRleHQtc3Ryb25nKTtsZXR0ZXItc3BhY2luZzp2YXIoLS1scy10aWdodCl9XG4uZHMtYXV0aF9fbGVhZHtmb250OnZhcigtLXR5cGUtYm9keS1zbSk7Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCl9XG4uZHMtYXV0aF9fYm9keXtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2dhcDp2YXIoLS1zcGFjZS00KX1cbi5kcy1hdXRoX19mb290e2ZvbnQ6dmFyKC0tdHlwZS1jYXB0aW9uKTtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTt0ZXh0LWFsaWduOmNlbnRlcn1cblxuLyogam9iYiBvbGRhbGkgcGFuZWwgKi9cbi5kcy1hdXRoX19hc2lkZXtcbiAgICBiYWNrZ3JvdW5kOnZhcigtLW9jZWFuLTUwKTtcbiAgICBkaXNwbGF5OmZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246Y29sdW1uO1xuICAgIGFsaWduLWl0ZW1zOmNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO1xuICAgIGdhcDp2YXIoLS1zcGFjZS02KTtcbiAgICBwYWRkaW5nOnZhcigtLXNwYWNlLTE2KSB2YXIoLS1zcGFjZS0xMCk7XG59XG4uZHMtYXV0aF9fYXJ0e3dpZHRoOjEwMCU7bWF4LXdpZHRoOjQ4MHB4O2hlaWdodDphdXRvfVxuLmRzLWF1dGhfX3BpdGNoe21heC13aWR0aDo0MjBweDt0ZXh0LWFsaWduOmNlbnRlcjtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2dhcDp2YXIoLS1zcGFjZS0zKX1cbi5kcy1hdXRoX19waXRjaCBoMntmb250OnZhcigtLXR5cGUtaDQpO2NvbG9yOnZhcigtLW9jZWFuLTkwMCk7bGV0dGVyLXNwYWNpbmc6dmFyKC0tbHMtdGlnaHQpfVxuLmRzLWF1dGhfX3BpdGNoIHB7Zm9udDp2YXIoLS10eXBlLWJvZHktc20pO2NvbG9yOnZhcigtLW9jZWFuLTgwMCl9XG5cbi8qIGVsdsOhbGFzenTDsyAoXCJ2YWd5XCIpICovXG4uZHMtZGl2aWRlcntkaXNwbGF5OmZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDp2YXIoLS1zcGFjZS0zKX1cbi5kcy1kaXZpZGVyOjpiZWZvcmUsLmRzLWRpdmlkZXI6OmFmdGVye2NvbnRlbnQ6XCJcIjtmbGV4OjE7aGVpZ2h0OjFweDtiYWNrZ3JvdW5kOnZhcigtLWJvcmRlci1oYWlybGluZSl9XG4uZHMtZGl2aWRlciBzcGFue2ZvbnQ6dmFyKC0tdHlwZS1jYXB0aW9uKTtjb2xvcjp2YXIoLS10ZXh0LXN1YnRsZSl9XG5cbi8qIGplbHN6w7Mtc29yOiBsaW5rIGEgbWV6xZEgYWxhdHQgam9iYnJhICovXG4uZHMtYXV0aF9fYXV4e2Rpc3BsYXk6ZmxleDthbGlnbi1pdGVtczpjZW50ZXI7anVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW47Z2FwOnZhcigtLXNwYWNlLTMpfVxuXG5AbWVkaWEgKG1heC13aWR0aDo5MDBweCl7XG4gICAgLyogRWd5IGhhc8OhYnJhIGVzdmUgYXogaWxsdXN6dHLDoWNpw7MgYSBsw6lueWVnIGFsw6Ega2Vyw7xsLCBuZW0gZWzDqS4gKi9cbiAgICAuZHMtYXV0aHtncmlkLXRlbXBsYXRlLWNvbHVtbnM6bWlubWF4KDAsMWZyKTttaW4taGVpZ2h0OjB9XG4gICAgLmRzLWF1dGhfX2Zvcm17cGFkZGluZzp2YXIoLS1zcGFjZS0xMikgdmFyKC0tc3BhY2UtNSl9XG4gICAgLmRzLWF1dGhfX2FzaWRle3BhZGRpbmc6dmFyKC0tc3BhY2UtMTIpIHZhcigtLXNwYWNlLTUpfVxuICAgIC5kcy1hdXRoX19hcnR7bWF4LXdpZHRoOjMyMHB4fVxufVxuXG4vKiDFsHJsYXBzb3JvayBhIGBmb3JtL2RzX2Zvcm1fdGhlbWUuaHRtbC50d2lnYCB0w6ltw6Fob3ouICovXG4vKiBBIGAuZHMtZm9ybWAgZ3lha3JhbiBCVVJLT0zDkyBhIDxmb3JtPiBrw7Zyw7xsIChmb3JtX3N0YXJ0L2Zvcm1fZW5kIG1pYXR0KSwgaWx5ZW5rb3IgYVxuICAgYnVya29sw7MgdMOpcmvDtnplIG5lbSBqdXQgZWwgYSA8Zm9ybT4gZ3llcmVrZWloZXog4oCUIGEgbWV6xZFibG9rayDDqXMgYSBiZWvDvGxkxZFnb21iXG4gICDDtnNzemXDqXJuZS4gRXrDqXJ0IGEgYmXDoWd5YXpvdHQgPGZvcm0+IG1hZ2EgaXMgb3N6bG9wb3MgZmxleC4gKi9cbi5kcy1mb3JtIGZvcm17ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtnYXA6dmFyKC0tc3BhY2UtNSl9XG4uZHMtZm9ybSAuZHMtZmllbGR7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtnYXA6dmFyKC0tc3BhY2UtMil9XG4uZHMtZm9ybSAuZHMtZmllbGQgKyAuZHMtZmllbGR7bWFyZ2luLXRvcDp2YXIoLS1zcGFjZS00KX1cbi5kcy1maWVsZF9fbGFiZWx7XG4gICAgZGlzcGxheTpibG9jaztcbiAgICBmb250OnZhcigtLXR5cGUtbGFiZWwpO1xuICAgIGNvbG9yOnZhcigtLXRleHQtc3Ryb25nKTtcbiAgICBtYXJnaW4tYm90dG9tOjA7XG59XG4uZHMtZmllbGRfX2xhYmVsLS1yZXF1aXJlZDo6YWZ0ZXJ7Y29udGVudDpcIiAqXCI7Y29sb3I6dmFyKC0tc3RhdHVzLWRhbmdlcil9XG4uZHMtZmllbGRfX2hlbHB7Zm9udDp2YXIoLS10eXBlLWNhcHRpb24pO2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpfVxuLmRzLWZpZWxkX19lcnJvcnN7bGlzdC1zdHlsZTpub25lO3BhZGRpbmc6MDttYXJnaW46MDtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2dhcDoycHh9XG4uZHMtZmllbGRfX2Vycm9ycyBsaXtmb250OnZhcigtLXR5cGUtY2FwdGlvbik7Y29sb3I6dmFyKC0tc3RhdHVzLWRhbmdlcil9XG4vKiBBIHTDqW1hIHdpZGdldGplaSBtZWfFkXJ6aWsgYSBUYWlsd2luZCBidXJrb2zDs2lrYXQ7IGF6b2sgc3rDqWxlc3PDqWfDqXQgaXR0IG9sZGp1ayBmZWwuICovXG4uZHMtZm9ybSAuZHMtZmllbGQgPiBkaXZ7bWF4LXdpZHRoOm5vbmU7d2lkdGg6MTAwJX1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIE9uYm9hcmRpbmcg4oCUIGzDqXDDqXNzb3Igw6lzIGtlcmV0XG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQSB2YXLDoXpzbMOzIMO6dGphIEZFTFTDiVRFTEVTOiBhIOKAnkhpdmF0w6FzcmVuZGkgYWRhdG9r4oCdIGzDqXDDqXMga2ltYXJhZCwgaGEgYVxuICAgZmVsaGFzem7DoWzDs25hayBuaW5jcyBqb2dpIGRpcGxvbcOhamEsIGEg4oCeU3pha21haSBhZGF0b2vigJ0gcGVkaWcgY3NhayDDvGd5dsOpZGlcbiAgIGhpdmF0w6FzcmVuZG7DqWwgasO2bi4gRXrDqXJ0IGEgbMOpcMOpc3NvciBORU0gw61yIGtpIOKAnjMuIGzDqXDDqXMgYSA0LWLFkWzigJ0gc3rDoW1sw6Fsw7N0IOKAlFxuICAgYXogYSBmZWxoYXN6bsOhbMOzayBlZ3kgcsOpc3rDqW5layBoYXp1ZG5hLiBDc2FrIGEga8Opc3ogLyBha3R1w6FsaXMgLyBow6F0cmFsw6l2xZFcbiAgIMOhbGxhcG90b3QgamVsw7ZsaS4gKi9cblxuLmRzLW9uYm9hcmRpbmd7XG4gICAgbWF4LXdpZHRoOnZhcigtLWRzLWNvbnRhaW5lci1tZCk7XG4gICAgbWFyZ2luOjAgYXV0bztcbiAgICBwYWRkaW5nOnZhcigtLXNwYWNlLTEyKSB2YXIoLS1zcGFjZS04KSB2YXIoLS1zcGFjZS0xNik7XG4gICAgZGlzcGxheTpmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOmNvbHVtbjtcbiAgICBnYXA6dmFyKC0tc3BhY2UtOCk7XG59XG4uZHMtb25ib2FyZGluZ19faGVhZHtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246Y29sdW1uO2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6dmFyKC0tc3BhY2UtNCk7dGV4dC1hbGlnbjpjZW50ZXJ9XG4uZHMtb25ib2FyZGluZ19fbG9nb3toZWlnaHQ6NTZweDt3aWR0aDphdXRvfVxuXG4uZHMtc3RlcHN7XG4gICAgZGlzcGxheTpmbGV4O1xuICAgIGFsaWduLWl0ZW1zOmZsZXgtc3RhcnQ7XG4gICAganVzdGlmeS1jb250ZW50OmNlbnRlcjtcbiAgICBnYXA6dmFyKC0tc3BhY2UtMik7XG4gICAgd2lkdGg6MTAwJTtcbiAgICBsaXN0LXN0eWxlOm5vbmU7XG4gICAgcGFkZGluZzowO1xuICAgIG1hcmdpbjowO1xufVxuLmRzLXN0ZXB7XG4gICAgZmxleDoxIDEgMDtcbiAgICBtaW4td2lkdGg6MDtcbiAgICBkaXNwbGF5OmZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246Y29sdW1uO1xuICAgIGFsaWduLWl0ZW1zOmNlbnRlcjtcbiAgICBnYXA6dmFyKC0tc3BhY2UtMik7XG4gICAgdGV4dC1hbGlnbjpjZW50ZXI7XG59XG4uZHMtc3RlcF9fZG90e1xuICAgIHdpZHRoOjI4cHg7aGVpZ2h0OjI4cHg7XG4gICAgYm9yZGVyLXJhZGl1czp2YXIoLS1yYWRpdXMtY2lyY2xlKTtcbiAgICBkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO1xuICAgIGZvbnQ6dmFyKC0tZnctc2VtaWJvbGQpIHZhcigtLWZzLTJ4cykvMSB2YXIoLS1mb250LWRpc3BsYXkpO1xuICAgIGJhY2tncm91bmQ6dmFyKC0tc3VyZmFjZS1jYXJkKTtcbiAgICBjb2xvcjp2YXIoLS10ZXh0LXN1YnRsZSk7XG4gICAgYm9yZGVyOjFweCBzb2xpZCB2YXIoLS1ib3JkZXItZGVmYXVsdCk7XG4gICAgZmxleDowIDAgYXV0bztcbiAgICB0cmFuc2l0aW9uOnZhcigtLXRyYW5zaXRpb24tY29udHJvbCk7XG59XG4uZHMtc3RlcF9fbGFiZWx7Zm9udDp2YXIoLS10eXBlLWNhcHRpb24pO2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpfVxuLmRzLXN0ZXBfX3J1bGV7XG4gICAgZmxleDowIDAgYXV0bztcbiAgICB3aWR0aDoxMDAlO1xuICAgIGhlaWdodDoycHg7XG4gICAgYmFja2dyb3VuZDp2YXIoLS1ib3JkZXItaGFpcmxpbmUpO1xuICAgIGJvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLXBpbGwpO1xufVxuXG4uZHMtc3RlcC0tZG9uZSAuZHMtc3RlcF9fZG90e2JhY2tncm91bmQ6dmFyKC0tc3RhdHVzLXN1Y2Nlc3MpO2NvbG9yOiNmZmY7Ym9yZGVyLWNvbG9yOnRyYW5zcGFyZW50fVxuLmRzLXN0ZXAtLWRvbmUgLmRzLXN0ZXBfX3J1bGV7YmFja2dyb3VuZDp2YXIoLS1zdGF0dXMtc3VjY2Vzcyl9XG4uZHMtc3RlcC0tZG9uZSAuZHMtc3RlcF9fbGFiZWx7Y29sb3I6dmFyKC0tdGV4dC1ib2R5KX1cblxuLmRzLXN0ZXAtLWN1cnJlbnQgLmRzLXN0ZXBfX2RvdHtcbiAgICBiYWNrZ3JvdW5kOnZhcigtLWFjdGlvbi1wcmltYXJ5KTtcbiAgICBjb2xvcjojZmZmO1xuICAgIGJvcmRlci1jb2xvcjp0cmFuc3BhcmVudDtcbiAgICBib3gtc2hhZG93OnZhcigtLXNoYWRvdy1wcmltYXJ5KTtcbn1cbi5kcy1zdGVwLS1jdXJyZW50IC5kcy1zdGVwX19ydWxle2JhY2tncm91bmQ6dmFyKC0tYWN0aW9uLXByaW1hcnkpfVxuLmRzLXN0ZXAtLWN1cnJlbnQgLmRzLXN0ZXBfX2xhYmVse2NvbG9yOnZhcigtLW9jZWFuLTcwMCk7Zm9udC13ZWlnaHQ6dmFyKC0tZnctc2VtaWJvbGQpfVxuXG5AbWVkaWEgKG1heC13aWR0aDo2NDBweCl7XG4gICAgLmRzLW9uYm9hcmRpbmd7cGFkZGluZzp2YXIoLS1zcGFjZS04KSB2YXIoLS1zcGFjZS01KSB2YXIoLS1zcGFjZS0xMil9XG4gICAgLyogU3rFsWsga2lqZWx6xZFuIGEgZmVsaXJhdG9rIGVsZm9neW5haywgYSBww7Z0dHnDtmsgw6lzIGEgdm9uYWxhayBtYXJhZG5hay4gKi9cbiAgICAuZHMtc3RlcF9fbGFiZWx7ZGlzcGxheTpub25lfVxufVxuXG4vKiBrw7Z6w6lwcmUgaWdhesOtdG90dCDDoWxsYXBvdG9sZGFsIChzdGFydCAvIGNvbXBsZXRlKSAqL1xuLmRzLW9uYm9hcmRpbmdfX2ZvY3Vze1xuICAgIGRpc3BsYXk6ZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjpjb2x1bW47XG4gICAgYWxpZ24taXRlbXM6Y2VudGVyO1xuICAgIHRleHQtYWxpZ246Y2VudGVyO1xuICAgIGdhcDp2YXIoLS1zcGFjZS00KTtcbn1cbi5kcy1vbmJvYXJkaW5nX19pY29ue1xuICAgIHdpZHRoOjcycHg7aGVpZ2h0OjcycHg7XG4gICAgYm9yZGVyLXJhZGl1czp2YXIoLS1yYWRpdXMtY2lyY2xlKTtcbiAgICBkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO1xuICAgIGJhY2tncm91bmQ6dmFyKC0tb2NlYW4tNTApO1xuICAgIGJvcmRlcjoxcHggc29saWQgdmFyKC0tYm9yZGVyLXRpbnQpO1xufVxuLmRzLW9uYm9hcmRpbmdfX2ljb24gaXtmb250LXNpemU6MzBweDtjb2xvcjp2YXIoLS1vY2Vhbi02MDApfVxuLmRzLW9uYm9hcmRpbmdfX2ljb24tLXN1Y2Nlc3N7YmFja2dyb3VuZDp2YXIoLS1zdGF0dXMtc3VjY2Vzcy1iZyk7Ym9yZGVyLWNvbG9yOnZhcigtLXN0YXR1cy1zdWNjZXNzLWJvcmRlcil9XG4uZHMtb25ib2FyZGluZ19faWNvbi0tc3VjY2VzcyBpe2NvbG9yOnZhcigtLXN0YXR1cy1zdWNjZXNzKX1cblxuLyogQXogb25ib2FyZGluZyBuw6l2c29yYTogZWzFkXRhZyAvIHZlemV0w6lrbsOpdiAvIGtlcmVzenRuw6l2IGVneSBzb3JiYW4uICovXG4uZHMtbmFtZXJvd3tkaXNwbGF5OmdyaWQ7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOm1pbm1heCgwLDJmcikgbWlubWF4KDAsNWZyKSBtaW5tYXgoMCw1ZnIpO2dhcDp2YXIoLS1zcGFjZS00KX1cbi5kcy1uYW1lcm93IC5kcy1maWVsZCArIC5kcy1maWVsZHttYXJnaW4tdG9wOjB9XG5AbWVkaWEgKG1heC13aWR0aDo2NDBweCl7XG4gICAgLmRzLW5hbWVyb3d7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOm1pbm1heCgwLDFmcil9XG4gICAgLmRzLW5hbWVyb3cgLmRzLWZpZWxkICsgLmRzLWZpZWxke21hcmdpbi10b3A6dmFyKC0tc3BhY2UtNCl9XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBUw6Ftb2dhdMOzaSBsb2fDs3PDoXYgKHDDoWx5w6F6YXRpIGvDtnRlbGV6xZEgZmVsdMO8bnRldMOpcylcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBOZW0gZMOtc3rDrXTDqXM6IGEgTWluaXN6dGVyZWxuw7Zrc8OpZyDDqXMgYSBCZXRobGVuIEfDoWJvciBBbGFwa2V6ZWzFkSBsb2fDs2rDoXQgYVxuICAgcMOhbHnDoXphdGkgdMOhbW9nYXTDoXMgZmVsaGFzem7DoWzDoXNhIG1pYXR0IGvDtnRlbGV6xZEga2lubiB0YXJ0YW5pLiBBIG3DqXJldMOpdFxuICAgZXrDqXJ0IGF6IGVyZWRldGkgbWVnamVsZW7DqXNoZXogaWdhesOtdGp1ayAoaC00OCDiiYggMTkycHggbWFnYXMpLCBuZW1cbiAgIGtpY3NpbnnDrXRqw7xrIOKAnnN6ZWJicmXigJ07IGEgbG9nw7NibG9rayBmZWjDqXIgYWxhcG9uIMOhbGwsIGFob2d5IGF6IGFydHdvcmtcbiAgIG1lZ2vDrXbDoW5qYSwga8O2enZldGxlbsO8bCBhIHPDtnTDqXQgbMOhYmzDqWMgZWzFkXR0LiAqL1xuXG4uZHMtc3VwcG9ydHtcbiAgICBiYWNrZ3JvdW5kOnZhcigtLXN1cmZhY2UtcGFnZSk7XG4gICAgYm9yZGVyLXRvcDoxcHggc29saWQgdmFyKC0tYm9yZGVyLWhhaXJsaW5lKTtcbn1cbi5kcy1zdXBwb3J0X19pbm5lcntcbiAgICBtYXgtd2lkdGg6dmFyKC0tZHMtY29udGFpbmVyLTJ4bCk7XG4gICAgbWFyZ2luOjAgYXV0bztcbiAgICBwYWRkaW5nOnZhcigtLXNwYWNlLTEyKSB2YXIoLS1zcGFjZS04KTtcbiAgICBkaXNwbGF5OmZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246Y29sdW1uO1xuICAgIGFsaWduLWl0ZW1zOmNlbnRlcjtcbiAgICBnYXA6dmFyKC0tc3BhY2UtNCk7XG4gICAgdGV4dC1hbGlnbjpjZW50ZXI7XG59XG4uZHMtc3VwcG9ydF9fbG9nb3N7XG4gICAgd2lkdGg6MTAwJTtcbiAgICBtYXgtd2lkdGg6NDgwcHg7ICAgLyogMjk2OMOXMTIwMCBhcsOhbnkgbWVsbGV0dCB+MTk0cHggbWFnYXMg4oCUIGF6IGVyZWRldGl2ZWwgZWd5ZXrFkSAqL1xuICAgIGhlaWdodDphdXRvO1xufVxuLmRzLXN1cHBvcnRfX25vdGV7Zm9udDp2YXIoLS10eXBlLWJvZHktc20pO2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO21heC13aWR0aDo2MGNofVxuXG4vKiBBIGzDoWJsw6ljIDk2cHggZmVsc8WRIG1hcmfDs2phIGEgc8OhdiBwYWRkaW5nasOpcmUgcsOhasWRdmUgdMO6bCBuYWd5IGZlaMOpciBmb2x0b3RcbiAgIGhhZ3luYSDigJQga8O2enZldGxlbsO8bCBhIGxvZ8Ozc8OhdiB1dMOhbiBlbGhhZ3lqdWsuICovXG4uZHMtc3VwcG9ydCArIC5kcy1mb290ZXJ7bWFyZ2luLXRvcDowfVxuXG5AbWVkaWEgKG1heC13aWR0aDo2NDBweCl7XG4gICAgLmRzLXN1cHBvcnRfX2lubmVye3BhZGRpbmc6dmFyKC0tc3BhY2UtMTApIHZhcigtLXNwYWNlLTUpfVxufVxuXG4vKiBLaXRlcmplc3p0ZXR0IChleHBhbmRlZCkgdsOhbGFzenTDs21lesWROiBhIHLDoWRpw7Nnb21ib2sgc2Fqw6F0IHNvcmJhbiwgYSBzesO2dmVnXG4gICBtZWxsZXR0w7xrLiBBIENob2ljZVR5cGUgYGV4cGFuZGVkYCBhbGFramEgY8OtbWtlK2lucHV0IHDDoXJva2F0IGFkLCBhbWlrZXQgYVxuICAgYC5kcy1maWVsZGAgYWxhcGLDs2wgZWd5bcOhcyBhbMOhIHRlbm5lIOKAlCBpdHQgc29yb25rw6ludCBmb2dqdWsgw7Zzc3plIMWRa2V0LiAqL1xuLmRzLWZpZWxkID4gZGl2ID4gZGl2Omhhcyg+IGlucHV0W3R5cGU9XCJyYWRpb1wiXSksXG4uZHMtZmllbGQgPiBkaXYgPiBkaXY6aGFzKD4gaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdKXtcbiAgICBkaXNwbGF5OmZsZXg7XG4gICAgYWxpZ24taXRlbXM6Y2VudGVyO1xuICAgIGdhcDp2YXIoLS1zcGFjZS0yKTtcbiAgICBwYWRkaW5nOnZhcigtLXNwYWNlLTIpIDA7XG59XG4uZHMtZmllbGQgaW5wdXRbdHlwZT1cInJhZGlvXCJdICsgbGFiZWwsXG4uZHMtZmllbGQgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdICsgbGFiZWx7XG4gICAgZm9udDp2YXIoLS10eXBlLWJvZHktc20pO1xuICAgIGNvbG9yOnZhcigtLXRleHQtYm9keSk7XG4gICAgbWFyZ2luLWJvdHRvbTowO1xuICAgIGN1cnNvcjpwb2ludGVyO1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgSG96esOhZsOpcsOpc2kgc3ppbnRlayBsaXN0w6FqYSBhIGplbGVudGtlesOpc2kgcGFuZWxlblxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIENzYWsgYXogYWRtaW5iYW4gc3plcmtlc3p0aGV0xZEgQWNjZXNzVGllci1tZXrFkWtldCBtdXRhdGphIChuw6l2LCBsZcOtcsOhcyksIMOpcyBhXG4gICBrYXBhY2l0w6FzLW9sdmFzw7Ntb2RlbGwgc3phYmFkaGVseS1zesOhbcOhdC4gU3rDoW5kw6lrb3NhbiBOSU5DUyBzYWrDoXQgw6FyLW1lesWROlxuICAgaGEgYSByw6lzenbDqXRlbCBmaXpldMWRcywgYXogw6FyIGEgc3ppbnQgbmV2w6liZS9sZcOtcsOhc8OhYmEga2Vyw7xsIGF6IGFkbWluXG4gICBmZWzDvGxldGVuIChUaGlua2JpZ0NhbGVuZGFyIEFjY2Vzc1RpZXJUeXBlOiBuYW1lICsgZGVzY3JpcHRpb24pLiAqL1xuXG4uZHMtdGllcnN7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtnYXA6dmFyKC0tc3BhY2UtMil9XG4uZHMtdGllcntcbiAgICBkaXNwbGF5OmZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246Y29sdW1uO1xuICAgIGdhcDoycHg7XG4gICAgcGFkZGluZzp2YXIoLS1zcGFjZS0zKTtcbiAgICBib3JkZXI6MXB4IHNvbGlkIHZhcigtLWJvcmRlci1oYWlybGluZSk7XG4gICAgYm9yZGVyLXJhZGl1czp2YXIoLS1kcy1yYWRpdXMtbWQpO1xuICAgIGJhY2tncm91bmQ6dmFyKC0tc3VyZmFjZS1jYXJkKTtcbn1cbi5kcy10aWVyLS1zb2xkb3V0e29wYWNpdHk6LjU1fVxuLmRzLXRpZXJfX2hlYWR7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmJhc2VsaW5lO2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVuO2dhcDp2YXIoLS1zcGFjZS0zKX1cbi5kcy10aWVyX19uYW1le2ZvbnQ6dmFyKC0tdHlwZS1sYWJlbCk7Y29sb3I6dmFyKC0tdGV4dC1zdHJvbmcpfVxuLmRzLXRpZXJfX3NlYXRze2ZvbnQ6dmFyKC0tdHlwZS1jYXB0aW9uKTtjb2xvcjp2YXIoLS10ZXh0LW11dGVkKTt3aGl0ZS1zcGFjZTpub3dyYXB9XG4uZHMtdGllcl9fZGVzY3tmb250OnZhcigtLXR5cGUtYm9keS1zbSk7Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCl9XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBSw6FkacOzZ29tYm9zIGvDoXJ0ecOhayAoYGRzX2Nob2ljZV9jYXJkc2AgxbFybGFwYmxva2spXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQSBqZWxlbnRrZXrFkWxhcCBzemludHbDoWxhc3p0w7NqYS4gU3rDoW5kw6lrb3NhbiBhIGZlbnRpIGAuZHMtdGllcmAga8OhcnR5w6FrXG4gICBrw6lww6lyZSBrw6lzesO8bHQg4oCUIHVneWFuYXogYSBzemludCB1Z3lhbsO6Z3kgbsOpeiBraSBheiBhZGF0bGFwb24gKG9sdmFzaGF0w7NcbiAgIGxpc3RhKSDDqXMgYXogxbFybGFwb24gKHbDoWxhc3p0aGF0w7Mga8OhcnR5YSkuXG5cbiAgIEEgcsOhZGnDsyBheiBgPGlucHV0PmAtYmFuIG1hcmFkLCBjc2FrIHZpenXDoWxpc2FuIHJlanRqw7xrOiDDrWd5IGEgbmF0w612XG4gICBiaWxsZW50ecWxa2V6ZWzDqXMgw6lzIGEga8OpcGVybnnFkW9sdmFzw7MtdmlzZWxrZWTDqXMgaXMgbWVndmFuLCBKUyBuw6lsa8O8bC4gQVxuICAga2l2w6FsYXN6dG90dCDDqXMgYSBsZXRpbHRvdHQgw6FsbGFwb3RvdCBgOmhhcygpYCByYWp6b2xqYSDigJQgZXogYSBmw6FqbGJhbiBtw6FyXG4gICBiZXZldHQgdGVjaG5pa2EgKGzDoXNkIGEga2l0ZXJqZXN6dGV0dCB2w6FsYXN6dMOzbWV6xZEgc3phYsOhbHlhaXQgZmVudGViYikuICovXG5cbi5kcy1jaG9pY2UtY2FyZHN7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtnYXA6dmFyKC0tc3BhY2UtMil9XG5cbi5kcy1jaG9pY2UtY2FyZHtcbiAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgICBkaXNwbGF5OmZsZXg7XG4gICAgYWxpZ24taXRlbXM6ZmxleC1zdGFydDtcbiAgICBnYXA6dmFyKC0tc3BhY2UtMyk7XG4gICAgcGFkZGluZzp2YXIoLS1zcGFjZS0zKTtcbiAgICBib3JkZXI6MXB4IHNvbGlkIHZhcigtLWJvcmRlci1oYWlybGluZSk7XG4gICAgYm9yZGVyLXJhZGl1czp2YXIoLS1kcy1yYWRpdXMtbWQpO1xuICAgIGJhY2tncm91bmQ6dmFyKC0tc3VyZmFjZS1jYXJkKTtcbiAgICBjdXJzb3I6cG9pbnRlcjtcbiAgICBtYXJnaW4tYm90dG9tOjA7XG4gICAgdHJhbnNpdGlvbjp2YXIoLS10cmFuc2l0aW9uLWNvbnRyb2wpO1xufVxuLmRzLWNob2ljZS1jYXJkOmhvdmVyOm5vdCg6aGFzKGlucHV0OmRpc2FibGVkKSl7Ym9yZGVyLWNvbG9yOnZhcigtLWJvcmRlci1zdHJvbmcpfVxuLmRzLWNob2ljZS1jYXJkOmhhcyhpbnB1dDpjaGVja2VkKXtcbiAgICBib3JkZXItY29sb3I6dmFyKC0tYWN0aW9uLXByaW1hcnkpO1xuICAgIGJveC1zaGFkb3c6aW5zZXQgMCAwIDAgMXB4IHZhcigtLWFjdGlvbi1wcmltYXJ5KTtcbn1cbi8qIEEgYmlsbGVudHnFsXpldGVzIGbDs2t1c3ogYSByZWp0ZXR0IGlucHV0b24gw7xsIOKAlCBhIGvDoXJ0ecOhcmEgaG96enVrIGtpLiAqL1xuLmRzLWNob2ljZS1jYXJkOmhhcyhpbnB1dDpmb2N1cy12aXNpYmxlKXtcbiAgICBib3JkZXItY29sb3I6dmFyKC0tYm9yZGVyLWZvY3VzKTtcbiAgICBib3gtc2hhZG93OnZhcigtLWZvY3VzLXJpbmcpO1xufVxuLmRzLWNob2ljZS1jYXJkOmhhcyhpbnB1dDpkaXNhYmxlZCl7b3BhY2l0eTouNTU7Y3Vyc29yOm5vdC1hbGxvd2VkfVxuXG4vKiBWaXp1w6FsaXNhbiByZWp0ZXR0LCBkZSBmw7NrdXN6w6FsaGF0w7Mgw6lzIGZlbG9sdmFzaGF0w7MuIEEga8OpdG9zenTDoWx5b3NcbiAgIHN6ZWxla3RvciBzesOhbmTDqWtvczogYSBgLmRzLWZvcm0gaW5wdXRbdHlwZT1cInJhZGlvXCJdYCBzemFiw6FseSBlcsWRc2ViYiBsZW5uZVxuICAgZWd5IGVneXN6ZXLFsSBvc3p0w6FseW7DoWwsIMOpcyB2aXNzemFhZG7DoSBhIDE2cHgtZXMgbmF0w612IHLDoWRpw7N0LiAqL1xuLmRzLWNob2ljZS1jYXJkIC5kcy1jaG9pY2UtY2FyZF9faW5wdXR7XG4gICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgd2lkdGg6MXB4O2hlaWdodDoxcHg7XG4gICAgbWFyZ2luOjA7cGFkZGluZzowO1xuICAgIGJvcmRlcjowO1xuICAgIG92ZXJmbG93OmhpZGRlbjtcbiAgICBjbGlwOnJlY3QoMCAwIDAgMCk7XG4gICAgY2xpcC1wYXRoOmluc2V0KDUwJSk7XG4gICAgd2hpdGUtc3BhY2U6bm93cmFwO1xufVxuXG4uZHMtY2hvaWNlLWNhcmRfX2JvZHl7ZGlzcGxheTpmbGV4O2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtnYXA6MnB4O2ZsZXg6MSAxIGF1dG87bWluLXdpZHRoOjB9XG4uZHMtY2hvaWNlLWNhcmRfX2hlYWR7ZGlzcGxheTpmbGV4O2FsaWduLWl0ZW1zOmJhc2VsaW5lO2p1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVuO2dhcDp2YXIoLS1zcGFjZS0zKX1cbi5kcy1jaG9pY2UtY2FyZF9fbmFtZXtmb250OnZhcigtLXR5cGUtbGFiZWwpO2NvbG9yOnZhcigtLXRleHQtc3Ryb25nKX1cbi5kcy1jaG9pY2UtY2FyZF9fc2VhdHN7Zm9udDp2YXIoLS10eXBlLWNhcHRpb24pO2NvbG9yOnZhcigtLXRleHQtbXV0ZWQpO3doaXRlLXNwYWNlOm5vd3JhcH1cbi5kcy1jaG9pY2UtY2FyZF9fZGVzY3tmb250OnZhcigtLXR5cGUtYm9keS1zbSk7Y29sb3I6dmFyKC0tdGV4dC1tdXRlZCl9XG5cbi5kcy1jaG9pY2UtY2FyZF9fY2hlY2t7XG4gICAgZmxleDowIDAgYXV0bztcbiAgICB3aWR0aDoxNnB4O2hlaWdodDoxNnB4O1xuICAgIG1hcmdpbi10b3A6MnB4O1xuICAgIGJvcmRlcjoycHggc29saWQgdmFyKC0tYm9yZGVyLXN0cm9uZyk7XG4gICAgYm9yZGVyLXJhZGl1czo1MCU7XG4gICAgYmFja2dyb3VuZDp2YXIoLS1zdXJmYWNlLXBhZ2UpO1xufVxuLmRzLWNob2ljZS1jYXJkOmhhcyhpbnB1dDpjaGVja2VkKSAuZHMtY2hvaWNlLWNhcmRfX2NoZWNre1xuICAgIGJvcmRlci1jb2xvcjp2YXIoLS1hY3Rpb24tcHJpbWFyeSk7XG4gICAgYmFja2dyb3VuZDp2YXIoLS1hY3Rpb24tcHJpbWFyeSk7XG4gICAgYm94LXNoYWRvdzppbnNldCAwIDAgMCAzcHggdmFyKC0tc3VyZmFjZS1wYWdlKTtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIFbDoW5kb3JnecWxbMOpcy1iYW5uZXIgYSBrZXpkxZFsYXBvbiAoZGVmYXVsdC9fdmd5NDdfYmFubmVyLmh0bWwudHdpZylcblxuICAgQSAvdmFuZG9yZ3l1bGVzLzQ3IGR1b3RvbmUgbGFuZGluZyBmb3JtYXZpbMOhZ8OhbmFrIGtpdm9uYXRhOiBuYXZ5IHBhbmVsLFxuICAgbWVudGEtZHVvdG9uZSBmb3TDs2JhIG1hc3prb2x0IMKnIGdsaWZhLCBrb3JhbGwga8O2ciwgcMO2dHR5csOhY3MuIEEgc3rDrW5la1xuICAgc3rDoW5kw6lrb3NhbiBMT0vDgUxJUyB2w6FsdG96w7NrOiBhIGxhbmRpbmcgw7Zuw6FsbMOzIHBhbGV0dMOhamEgbmVtIHRhcnRvemlrIGFcbiAgIGRlc2lnbiBzeXN0ZW0gdG9rZW5qZWkga8O2esOpLCDDqXMgbmVtIGlzIHN6aXbDoXJvZ2hhdCBraSBlcnJlIGEgZsOhcmEuXG4gICBBIHRpcG9ncsOhZmlhIHZpc3pvbnQgYSBkZXNpZ24gc3lzdGVtw6kg4oCUIGEga2V6ZMWRbGFwIGVneXPDqWdlcyBtYXJhZC5cbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4uZHMtdmd5e1xuICAtLXZneS1uYXZ5OiMxRTNBNDc7IC0tdmd5LW5hdnktMjojMjc1MDVGOyAtLXZneS1taW50OiM5QkUzRDA7IC0tdmd5LWNvcmFsOiNGMjZCNEU7XG4gIHBvc2l0aW9uOnJlbGF0aXZlO2Rpc3BsYXk6Z3JpZDtncmlkLXRlbXBsYXRlLWNvbHVtbnM6bWlubWF4KDAsMWZyKSBtaW5tYXgoMCw0MjBweCk7XG4gIGFsaWduLWl0ZW1zOmNlbnRlcjtnYXA6dmFyKC0tc3BhY2UtOCk7b3ZlcmZsb3c6aGlkZGVuO2lzb2xhdGlvbjppc29sYXRlO1xuICBwYWRkaW5nOnZhcigtLXNwYWNlLTEyKSB2YXIoLS1zcGFjZS0xMik7Ym9yZGVyLXJhZGl1czp2YXIoLS1yYWRpdXMtc3VyZmFjZSk7XG4gIGJhY2tncm91bmQ6dmFyKC0tdmd5LW5hdnkpO2NvbG9yOiNmZmY7dGV4dC1kZWNvcmF0aW9uOm5vbmU7XG4gIHRyYW5zaXRpb246dHJhbnNmb3JtIHZhcigtLWRzLW1vdGlvbi1iYXNlLDE4MG1zKSBlYXNlLGJveC1zaGFkb3cgdmFyKC0tZHMtbW90aW9uLWJhc2UsMTgwbXMpIGVhc2U7XG59XG4uZHMtdmd5OmhvdmVye3RyYW5zZm9ybTp0cmFuc2xhdGVZKC0ycHgpO2JveC1zaGFkb3c6MCAyNHB4IDYwcHggcmdiYSgzMCw1OCw3MSwuMjgpfVxuLmRzLXZneTpmb2N1cy12aXNpYmxle291dGxpbmU6MnB4IHNvbGlkIHZhcigtLXZneS1taW50KTtvdXRsaW5lLW9mZnNldDozcHh9XG5cbi5kcy12Z3lfX2NvcHl7cG9zaXRpb246cmVsYXRpdmU7ei1pbmRleDoyO2Rpc3BsYXk6ZmxleDtmbGV4LWRpcmVjdGlvbjpjb2x1bW47Z2FwOnZhcigtLXNwYWNlLTMpO21heC13aWR0aDo1NjBweH1cbi5kcy12Z3lfX2V5ZWJyb3d7XG4gIGRpc3BsYXk6aW5saW5lLWZsZXg7YWxpZ24taXRlbXM6Y2VudGVyO2dhcDp2YXIoLS1zcGFjZS0zKTtcbiAgZm9udDp2YXIoLS10eXBlLWV5ZWJyb3cpO3RleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTtsZXR0ZXItc3BhY2luZzp2YXIoLS1scy1jYXBzKTtjb2xvcjp2YXIoLS12Z3ktY29yYWwpO1xufVxuLmRzLXZneV9fZXllYnJvdzo6YmVmb3Jle2NvbnRlbnQ6XCJcIjt3aWR0aDoyOHB4O2hlaWdodDozcHg7Ym9yZGVyLXJhZGl1czoycHg7YmFja2dyb3VuZDp2YXIoLS12Z3ktY29yYWwpfVxuLmRzLXZneV9fdGl0bGV7Zm9udDp2YXIoLS10eXBlLWgyKTtjb2xvcjojZmZmO2xldHRlci1zcGFjaW5nOnZhcigtLWxzLXRpZ2h0ZXIpfVxuLmRzLXZneV9fbGVhZHtmb250OnZhcigtLXR5cGUtYm9keSk7Y29sb3I6cmdiYSgyNTUsMjU1LDI1NSwuNzgpO21heC13aWR0aDo0NmNofVxuLmRzLXZneV9fY3Rhe1xuICBkaXNwbGF5OmlubGluZS1mbGV4O2FsaWduLWl0ZW1zOmNlbnRlcjtnYXA6dmFyKC0tc3BhY2UtMyk7YWxpZ24tc2VsZjpmbGV4LXN0YXJ0O21hcmdpbi10b3A6dmFyKC0tc3BhY2UtMyk7XG4gIHBhZGRpbmc6MTRweCAyNHB4O2JvcmRlci1yYWRpdXM6dmFyKC0tcmFkaXVzLXBpbGwpO2JhY2tncm91bmQ6dmFyKC0tdmd5LWNvcmFsKTtjb2xvcjojZmZmO1xuICBmb250OnZhcigtLXR5cGUtYnV0dG9uLHZhcigtLXR5cGUtYm9keSkpO2ZvbnQtd2VpZ2h0OjYwMDtsaW5lLWhlaWdodDoxO1xuICBib3gtc2hhZG93OjAgMTBweCAyNHB4IHJnYmEoMjQyLDEwNyw3OCwuMjgpO3RyYW5zaXRpb246YmFja2dyb3VuZCAxODBtcyBlYXNlLHRyYW5zZm9ybSAxODBtcyBlYXNlO1xufVxuLmRzLXZneTpob3ZlciAuZHMtdmd5X19jdGF7YmFja2dyb3VuZDojRDg1NTNBO3RyYW5zZm9ybTp0cmFuc2xhdGVYKDJweCl9XG5cbi8qIEEgbGFuZGluZyBoZXJvIGplbGvDqXBlOiBhIMKnIGdsaWZhIGEgbWVudGEtZHVvdG9uZSBiYWxhdG9uYWxtw6FkaSBmb3TDs3JhIHZhblxuICAgbWFzemtvbHZhIChiYWNrZ3JvdW5kLWNsaXA6dGV4dCksIG3DtmfDtnR0ZSBlbHRvbHZhIGEga29yYWxsIGlrZXJ0ZXN0dsOpcmUuICovXG4uZHMtdmd5X19nbHlwaHtcbiAgcG9zaXRpb246YWJzb2x1dGU7cmlnaHQ6dmFyKC0tc3BhY2UtMjQpO3RvcDo1MCU7XG4gIGZvbnQtc2l6ZTozMDBweDtsaW5lLWhlaWdodDouNzg7Zm9udC13ZWlnaHQ6NzAwO3RyYW5zZm9ybTp0cmFuc2xhdGVZKC01MCUpO3BvaW50ZXItZXZlbnRzOm5vbmU7XG59XG4uZHMtdmd5X19nbHlwaC0tZHVve1xuICAvKiBBIGvDqXBldCBhIHNhYmxvbiBhZGphIChgLS12Z3ktZ2x5cGhgKSwgbWVydCBhIGRlc2lnbiBzeXN0ZW0gQ1NTLWUgbmVtIGhpdmF0a296aGF0XG4gICAgIGEgcHVibGljL2Fzc2V0cyBhbGF0dGkgZsOhamxva3JhOiBhIHdlYnBhY2sgYnVpbGQtaWTFkWJlbiBwcsOzYsOhbG7DoSBmZWxvbGRhbmkuICovXG4gIHotaW5kZXg6MTtiYWNrZ3JvdW5kOnZhcigtLXZneS1nbHlwaCkgY2VudGVyIDQwJSAvIGNvdmVyIG5vLXJlcGVhdDtcbiAgLXdlYmtpdC1iYWNrZ3JvdW5kLWNsaXA6dGV4dDtiYWNrZ3JvdW5kLWNsaXA6dGV4dDtjb2xvcjp0cmFuc3BhcmVudDtcbn1cbi8qIEEga29yYWxsIGlrZXJ0ZXN0dsOpciBhIGR1b3RvbmUgbcO2Z8O8bCBrYW5kaWvDoWwga2ksIGpvYmJyYS1sZSB0b2x2YSDigJQgdWd5YW5heiBhXG4gICBnZXN6dHVzLCBtaW50IGEgbGFuZGluZyBoZXLDs2rDoWJhbi4gKi9cbi5kcy12Z3lfX2dseXBoLS1jb3JhbHt6LWluZGV4OjA7cmlnaHQ6Y2FsYyh2YXIoLS1zcGFjZS0yNCkgLSAzNHB4KTt0cmFuc2Zvcm06dHJhbnNsYXRlWShjYWxjKC01MCUgKyAyNnB4KSk7Y29sb3I6dmFyKC0tdmd5LWNvcmFsKX1cbi8qIFDDtnR0eXLDoWNzIGEgYmFsIG1hcmfDs2JhbjogYSBzesO2dmVnIDQ4cHgtbsOpbCBrZXpkxZFkaWssIGEgc3RyaXAgZWzFkXR0ZSBtYXJhZC4gKi9cbi5kcy12Z3lfX2RvdHN7XG4gIHBvc2l0aW9uOmFic29sdXRlO2xlZnQ6dmFyKC0tc3BhY2UtMik7dG9wOnZhcigtLXNwYWNlLTE0KTt6LWluZGV4OjA7d2lkdGg6MzZweDtoZWlnaHQ6MTY4cHg7cG9pbnRlci1ldmVudHM6bm9uZTtcbiAgYmFja2dyb3VuZC1pbWFnZTpyYWRpYWwtZ3JhZGllbnQocmdiYSgyNTUsMjU1LDI1NSwuMykgMS42cHgsdHJhbnNwYXJlbnQgMS42cHgpO2JhY2tncm91bmQtc2l6ZToxMnB4IDEycHg7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOjEwMjRweCl7XG4gIC5kcy12Z3l7Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOjFmcjtwYWRkaW5nOnZhcigtLXNwYWNlLTEwKX1cbiAgLmRzLXZneV9fZ2x5cGh7Zm9udC1zaXplOjI2MHB4O3JpZ2h0OmNhbGModmFyKC0tc3BhY2UtOCkgKiAtMSk7b3BhY2l0eTouNTV9XG4gIC5kcy12Z3lfX2RvdHN7ZGlzcGxheTpub25lfVxufVxuQG1lZGlhIChtYXgtd2lkdGg6NjQwcHgpe1xuICAuZHMtdmd5e3BhZGRpbmc6dmFyKC0tc3BhY2UtOCkgdmFyKC0tc3BhY2UtNik7Ym9yZGVyLXJhZGl1czp2YXIoLS1yYWRpdXMtY2FyZCl9XG4gIC5kcy12Z3lfX3RpdGxle2ZvbnQ6dmFyKC0tdHlwZS1oMyl9XG4gIC8qIFRlbGVmb25vbiBhIGdsaWZhIGNzYWsgemF2YXLDsyBmb2x0IGxlbm5lIGEga2Vza2VueSBrw6FydHnDoW4g4oCUIGEgZHVvdG9uZVxuICAgICBrYXJha3RlcnQgb3R0IGEgbmF2eSBsYXAgw6lzIGEga29yYWxsIGdvbWIgaG9yZG96emEuICovXG4gIC5kcy12Z3lfX2dseXBoe2Rpc3BsYXk6bm9uZX1cbiAgLmRzLXZneV9fY3Rhe2FsaWduLXNlbGY6c3RyZXRjaDtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyfVxufVxuIl0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9*/