/* src/theme.css */
:root {
  --chalk-bg: #000000;
  --chalk-bg-elev: #001a00;
  --chalk-bg-elev-2: #002a00;
  --chalk-fg: #00ff41;
  --chalk-fg-dim: #4ca96a;
  --chalk-fg-bright: #5cffb1;
  --chalk-fg-muted: #338050;
  --chalk-border: #003a00;
  --chalk-accent: #5cffb1;
  --chalk-warn: #ffcc00;
  --chalk-error: #ff4d4d;
  --chalk-font:
    "Hack",
    ui-monospace,
    "Cascadia Code",
    "JetBrains Mono",
    "SF Mono",
    Consolas,
    "Roboto Mono",
    monospace;
  --chalk-size-base: 14px;
  --chalk-size-small: 12px;
  --chalk-size-title: 18px;
  --chalk-s1: 4px;
  --chalk-s2: 8px;
  --chalk-s3: 12px;
  --chalk-s4: 16px;
  --chalk-s5: 24px;
  --chalk-s6: 32px;
  --chalk-radius: 2px;
  color-scheme: dark;
}
* {
  box-sizing: border-box;
}
html,
body {
  margin: 0;
  padding: 0;
  background: var(--chalk-bg);
  color: var(--chalk-fg);
  font-family: var(--chalk-font);
  font-size: var(--chalk-size-base);
  line-height: 1.4;
  min-height: 100dvh;
  touch-action: manipulation;
}
::selection {
  background: var(--chalk-fg);
  color: var(--chalk-bg);
}
.chalk-app {
  display: grid;
  grid-template-rows: auto 1fr auto;
  height: 100dvh;
  min-height: 0;
  max-width: 900px;
  margin: 0 auto;
  padding: 0 var(--chalk-s4);
}
.chalk-app--phase08b {
  display: grid;
  grid-template-columns: 220px 1fr;
  grid-template-rows: auto 1fr auto;
  grid-template-areas: "header header" "sidebar main" "footer footer";
  height: 100dvh;
  min-height: 0;
  max-width: 1100px;
  column-gap: var(--chalk-s3);
}
.chalk-app--phase08b .chalk-header {
  grid-area: header;
}
.chalk-app--phase08b .chalk-sidebar {
  grid-area: sidebar;
}
.chalk-app--phase08b .chalk-main {
  grid-area: main;
}
.chalk-app--phase08b .chalk-footer {
  grid-area: footer;
}
.chalk-header {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  padding: var(--chalk-s4) 0 var(--chalk-s3) 0;
  border-bottom: 1px solid var(--chalk-border);
}
.chalk-header h1 {
  margin: 0;
  font-size: var(--chalk-size-title);
  font-weight: 400;
  letter-spacing: 0.08em;
  text-transform: lowercase;
  color: var(--chalk-fg-bright);
}
.chalk-main {
  overflow-y: auto;
  min-height: 0;
  padding: var(--chalk-s4) 0;
}
.chalk-footer {
  border-top: 1px solid var(--chalk-border);
  padding: var(--chalk-s3) 0 var(--chalk-s4) 0;
}
.chalk-status {
  display: inline-flex;
  align-items: center;
  gap: var(--chalk-s2);
  font-size: var(--chalk-size-small);
  color: var(--chalk-fg-dim);
}
.chalk-status-dot {
  display: inline-block;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--chalk-fg-muted);
}
.chalk-status-dot--open {
  background: var(--chalk-fg);
  box-shadow: 0 0 6px var(--chalk-fg);
}
.chalk-status-dot--connecting {
  background: var(--chalk-warn);
  animation: chalk-pulse 1s infinite;
}
.chalk-status-dot--closed {
  background: var(--chalk-fg-muted);
}
.chalk-status-dot--error {
  background: var(--chalk-error);
}
@keyframes chalk-pulse {
  0%, 100% {
    opacity: 1;
  }
  50% {
    opacity: 0.4;
  }
}
.chalk-status-detail {
  color: var(--chalk-fg-muted);
}
.chalk-status-user {
  color: var(--chalk-fg-bright);
  margin-left: var(--chalk-s2);
}
.chalk-messages {
  display: flex;
  flex-direction: column;
  gap: var(--chalk-s2);
}
.chalk-messages--empty {
  display: grid;
  place-items: center;
  min-height: 200px;
  color: var(--chalk-fg-muted);
  font-style: italic;
}
.chalk-empty-hint {
  margin: 0;
}
.chalk-message {
  display: grid;
  grid-template-columns: 7ch 9ch 1fr;
  gap: var(--chalk-s2);
  padding: var(--chalk-s1) var(--chalk-s2);
  border-radius: var(--chalk-radius);
  background: transparent;
}
.chalk-message:hover {
  background: var(--chalk-bg-elev);
}
.chalk-message--own {
  color: var(--chalk-fg-bright);
}
.chalk-message-time {
  color: var(--chalk-fg-muted);
  font-size: var(--chalk-size-small);
  align-self: center;
}
.chalk-message-sender {
  color: var(--chalk-fg-dim);
  font-size: var(--chalk-size-small);
  align-self: center;
  overflow: hidden;
  text-overflow: ellipsis;
}
.chalk-message-body {
  word-break: break-word;
  white-space: pre-wrap;
}
.chalk-composer {
  display: flex;
  flex-direction: column;
  gap: var(--chalk-s2);
}
.chalk-composer-row {
  display: flex;
  gap: var(--chalk-s2);
  align-items: stretch;
}
.chalk-composer-input {
  flex: 1 1 auto;
  background: var(--chalk-bg-elev);
  color: var(--chalk-fg);
  border: 1px solid var(--chalk-border);
  border-radius: var(--chalk-radius);
  padding: var(--chalk-s2) var(--chalk-s3);
  font-family: inherit;
  font-size: var(--chalk-size-base);
  resize: vertical;
  min-height: 2.4em;
  max-height: 30dvh;
}
.chalk-composer-input:focus {
  outline: 1px solid var(--chalk-fg);
  outline-offset: -1px;
  background: var(--chalk-bg-elev-2);
}
.chalk-composer-input::placeholder {
  color: var(--chalk-fg-muted);
}
.chalk-composer-input:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}
.chalk-composer-send {
  align-self: stretch;
  padding: 0 var(--chalk-s4);
  background: transparent;
  color: var(--chalk-fg);
  border: 1px solid var(--chalk-fg);
  border-radius: var(--chalk-radius);
  font-family: inherit;
  font-size: var(--chalk-size-base);
  text-transform: lowercase;
  letter-spacing: 0.05em;
  cursor: pointer;
}
.chalk-composer-send:hover:not(:disabled) {
  background: var(--chalk-fg);
  color: var(--chalk-bg);
}
.chalk-composer-send:disabled {
  opacity: 0.4;
  cursor: not-allowed;
  border-color: var(--chalk-fg-muted);
  color: var(--chalk-fg-muted);
}
.chalk-composer-attach {
  flex: 0 0 auto;
  align-self: stretch;
  padding: 0 var(--chalk-s3);
  background: transparent;
  color: var(--chalk-fg-muted);
  border: 1px solid var(--chalk-border);
  border-radius: var(--chalk-radius);
  font-family: inherit;
  font-size: var(--chalk-size-base);
  cursor: pointer;
}
.chalk-composer-attach:hover:not(:disabled) {
  color: var(--chalk-fg);
  border-color: var(--chalk-fg);
}
.chalk-composer-attach:disabled {
  opacity: 0.4;
  cursor: not-allowed;
}
.chalk-composer-tray {
  display: flex;
  flex-wrap: wrap;
  gap: var(--chalk-s2);
}
.chalk-composer-chip {
  display: inline-flex;
  align-items: center;
  gap: var(--chalk-s2);
  max-width: 100%;
  padding: var(--chalk-s1) var(--chalk-s2);
  background: var(--chalk-bg-elev);
  border: 1px solid var(--chalk-border);
  border-radius: var(--chalk-radius);
  font-size: var(--chalk-size-small);
}
.chalk-composer-chip-thumb {
  width: 1.8em;
  height: 1.8em;
  object-fit: cover;
  border-radius: var(--chalk-radius);
  border: 1px solid var(--chalk-border);
}
.chalk-composer-chip-icon {
  color: var(--chalk-fg-muted);
}
.chalk-composer-chip-name {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  max-width: 16em;
}
.chalk-composer-chip-size {
  color: var(--chalk-fg-muted);
}
.chalk-composer-chip-remove {
  background: transparent;
  border: none;
  color: var(--chalk-fg-muted);
  cursor: pointer;
  font-family: inherit;
  font-size: var(--chalk-size-small);
  padding: 0 0.2em;
  line-height: 1;
}
.chalk-composer-chip-remove:hover {
  color: var(--chalk-fg-bright);
}
.chalk-composer--drag-active {
  outline: 1px dashed var(--chalk-fg);
  outline-offset: 2px;
  background: var(--chalk-bg-elev);
}
.chalk-composer-drop-hint {
  padding: var(--chalk-s1) var(--chalk-s2);
  color: var(--chalk-fg-bright);
  font-size: var(--chalk-size-small);
  text-align: center;
  border: 1px dashed var(--chalk-fg);
  border-radius: var(--chalk-radius);
}
.chalk-composer-chip-progress {
  display: inline-block;
  width: 6em;
  height: 6px;
  background: var(--chalk-bg);
  border: 1px solid var(--chalk-border);
  border-radius: var(--chalk-radius);
  overflow: hidden;
}
.chalk-composer-chip-progress-fill {
  display: block;
  height: 100%;
  background: var(--chalk-fg);
  transition: width 0.15s linear;
}
.chalk-message-attachments {
  grid-column: 1 / -1;
  display: flex;
  flex-direction: column;
  gap: var(--chalk-s2);
  margin-top: var(--chalk-s1);
}
.chalk-message-giphy {
  grid-column: 1 / -1;
}
.chalk-attachment {
  font-size: var(--chalk-size-small);
}
.chalk-attachment--loading,
.chalk-attachment--locked {
  display: inline-flex;
  align-items: center;
  gap: var(--chalk-s2);
  padding: var(--chalk-s1) var(--chalk-s2);
  color: var(--chalk-fg-muted);
  border: 1px dashed var(--chalk-border);
  border-radius: var(--chalk-radius);
  font-style: italic;
}
.chalk-attachment-img {
  display: block;
  width: auto;
  max-width: min(720px, 100%);
  height: auto;
  max-height: 70dvh;
  object-fit: contain;
  border: 1px solid var(--chalk-border);
  border-radius: var(--chalk-radius);
  cursor: zoom-in;
}
.chalk-attachment-img--preview {
  filter: blur(1px);
}
.chalk-attachment-img--full {
  filter: none;
}
.chalk-attachment-img--expanded {
  max-width: 100%;
  max-height: 80dvh;
  cursor: zoom-out;
}
.chalk-attachment-lightbox {
  position: fixed;
  inset: 0;
  z-index: 1000;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: var(--chalk-s4);
  background: rgba(0, 0, 0, 0.92);
  cursor: zoom-out;
}
.chalk-attachment-lightbox-img {
  max-width: 95vw;
  max-height: 95vh;
  object-fit: contain;
  border: 1px solid var(--chalk-border);
  border-radius: var(--chalk-radius);
}
.chalk-attachment-lightbox-caption {
  position: fixed;
  left: 0;
  right: 0;
  bottom: var(--chalk-s3);
  text-align: center;
  color: var(--chalk-fg-muted);
  font-size: var(--chalk-size-small);
  pointer-events: none;
}
.chalk-attachment-img-placeholder {
  width: 200px;
  height: 120px;
  background: var(--chalk-bg-elev);
  border: 1px solid var(--chalk-border);
  border-radius: var(--chalk-radius);
}
.chalk-attachment--file {
  display: inline-flex;
  align-items: center;
  gap: var(--chalk-s2);
  padding: var(--chalk-s2) var(--chalk-s3);
  background: var(--chalk-bg-elev);
  border: 1px solid var(--chalk-border);
  border-radius: var(--chalk-radius);
}
.chalk-attachment-file-icon {
  color: var(--chalk-fg-muted);
}
.chalk-attachment-file-name {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  max-width: 18em;
}
.chalk-attachment-file-size {
  color: var(--chalk-fg-muted);
}
.chalk-attachment-download {
  background: transparent;
  color: var(--chalk-fg);
  border: 1px solid var(--chalk-fg);
  border-radius: var(--chalk-radius);
  font-family: inherit;
  font-size: var(--chalk-size-small);
  text-transform: lowercase;
  padding: 0 var(--chalk-s2);
  cursor: pointer;
}
.chalk-attachment-download:hover:not(:disabled) {
  background: var(--chalk-fg);
  color: var(--chalk-bg);
}
.chalk-attachment-download:disabled {
  opacity: 0.4;
  cursor: not-allowed;
}
.chalk-errors {
  margin-top: var(--chalk-s2);
  padding: var(--chalk-s2) var(--chalk-s3);
  border-left: 2px solid var(--chalk-error);
  background: var(--chalk-bg-elev);
  font-size: var(--chalk-size-small);
}
.chalk-error-code {
  color: var(--chalk-error);
  font-weight: 700;
  margin-right: var(--chalk-s2);
}
.chalk-sidebar {
  border-right: 1px solid var(--chalk-border);
  padding: var(--chalk-s3) 0;
  min-height: 0;
  display: flex;
  flex-direction: column;
}
.chalk-sidebar-inner {
  display: flex;
  flex-direction: column;
  flex: 1 1 auto;
  min-height: 0;
}
.chalk-sidebar-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 var(--chalk-s2) var(--chalk-s2) var(--chalk-s2);
}
.chalk-sidebar-title {
  font-size: var(--chalk-size-small);
  color: var(--chalk-fg-dim);
  text-transform: lowercase;
  letter-spacing: 0.08em;
}
.chalk-sidebar-new {
  background: transparent;
  border: 1px solid var(--chalk-border);
  color: var(--chalk-fg-bright);
  width: 24px;
  height: 24px;
  font-family: inherit;
  font-size: 16px;
  line-height: 1;
  cursor: pointer;
  padding: 0;
}
.chalk-sidebar-new:hover {
  border-color: var(--chalk-fg-bright);
  background: var(--chalk-bg-elev);
}
.chalk-sidebar-new:focus-visible {
  outline: 1px solid var(--chalk-fg-bright);
  outline-offset: 1px;
}
.chalk-sidebar-list {
  list-style: none;
  margin: 0;
  padding: 0;
  overflow-y: auto;
  flex: 1;
  min-height: 0;
}
.chalk-sidebar-empty {
  padding: var(--chalk-s2);
  color: var(--chalk-fg-dim);
  font-style: italic;
  font-size: var(--chalk-size-small);
}
.chalk-sidebar-item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: var(--chalk-s2);
  cursor: pointer;
  border-left: 2px solid transparent;
  color: var(--chalk-fg);
}
.chalk-sidebar-item:hover {
  background: var(--chalk-bg-elev);
}
.chalk-sidebar-item:focus-visible {
  outline: 1px solid var(--chalk-fg-bright);
  outline-offset: -1px;
}
.chalk-sidebar-item--active {
  border-left-color: var(--chalk-fg-bright);
  background: var(--chalk-bg-elev);
  color: var(--chalk-fg-bright);
}
.chalk-sidebar-item-name {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.chalk-sidebar-item-tag,
.chalk-channel-header-tag {
  font-size: 10px;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  color: var(--chalk-fg-dim);
  border: 1px solid var(--chalk-border);
  padding: 1px 4px;
  margin-left: var(--chalk-s2);
}
.chalk-mode-badge {
  display: inline-flex;
  align-items: center;
  align-self: center;
  margin-left: var(--chalk-s2);
  color: var(--chalk-fg-dim);
}
.chalk-mode-badge.chalk-mode-democratic {
  color: var(--chalk-accent);
}
.chalk-channel-header {
  display: flex;
  align-items: baseline;
  padding: 0 0 var(--chalk-s3) 0;
  border-bottom: 1px solid var(--chalk-border);
  margin-bottom: var(--chalk-s3);
}
.chalk-channel-header-name {
  font-size: var(--chalk-size-body);
  color: var(--chalk-fg-bright);
  font-weight: 400;
}
.chalk-enc-indicator {
  position: relative;
  display: inline-flex;
  align-items: center;
  margin-left: var(--chalk-s2);
  align-self: center;
  line-height: 0;
  cursor: default;
  outline: none;
}
.chalk-enc-indicator.chalk-enc-ready {
  color: var(--chalk-accent);
}
.chalk-enc-indicator.chalk-enc-pending {
  color: var(--chalk-fg-muted);
  animation: chalk-enc-pulse 1.6s ease-in-out infinite;
}
@keyframes chalk-enc-pulse {
  0%, 100% {
    opacity: 0.45;
  }
  50% {
    opacity: 0.9;
  }
}
.chalk-enc-popover {
  position: absolute;
  top: calc(100% + 6px);
  left: 0;
  z-index: 40;
  display: none;
  flex-direction: column;
  gap: 2px;
  min-width: 220px;
  padding: var(--chalk-s2) var(--chalk-s3);
  background: var(--chalk-bg, #0a0f0a);
  border: 1px solid var(--chalk-accent);
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.5);
  color: var(--chalk-fg);
  font-size: 11px;
  line-height: 1.5;
  text-align: left;
  white-space: nowrap;
  cursor: text;
}
.chalk-enc-indicator:hover .chalk-enc-popover,
.chalk-enc-indicator:focus .chalk-enc-popover,
.chalk-enc-indicator:focus-within .chalk-enc-popover {
  display: flex;
}
.chalk-enc-indicator.chalk-enc-pending .chalk-enc-popover {
  border-color: var(--chalk-fg-muted);
}
.chalk-enc-pop-head {
  color: var(--chalk-fg-bright);
  font-weight: 400;
  margin-bottom: 2px;
  letter-spacing: 0.02em;
}
.chalk-enc-pop-row {
  display: flex;
  justify-content: space-between;
  gap: var(--chalk-s3);
}
.chalk-enc-pop-k {
  color: var(--chalk-fg-dim);
}
.chalk-enc-pop-v {
  color: var(--chalk-accent);
}
.chalk-enc-indicator.chalk-enc-pending .chalk-enc-pop-v {
  color: var(--chalk-fg);
}
.chalk-enc-pop-note {
  margin-top: 4px;
  padding-top: 4px;
  border-top: 1px solid var(--chalk-border);
  color: var(--chalk-fg-muted);
  white-space: normal;
}
.chalk-main-empty {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100%;
  color: var(--chalk-fg-dim);
  font-style: italic;
}
.chalk-modal-backdrop {
  position: fixed;
  inset: 0;
  background: rgba(0, 0, 0, 0.7);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 100;
}
.chalk-modal {
  background: var(--chalk-bg);
  border: 1px solid var(--chalk-fg-bright);
  min-width: 360px;
  max-width: 500px;
  width: 90%;
  max-height: 90vh;
  display: flex;
  flex-direction: column;
}
.chalk-modal-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: var(--chalk-s3) var(--chalk-s4);
  border-bottom: 1px solid var(--chalk-border);
}
.chalk-modal-header h2 {
  margin: 0;
  font-size: var(--chalk-size-body);
  font-weight: 400;
  color: var(--chalk-fg-bright);
  text-transform: lowercase;
  letter-spacing: 0.08em;
}
.chalk-modal-close {
  background: transparent;
  border: none;
  color: var(--chalk-fg-dim);
  font-size: 24px;
  line-height: 1;
  cursor: pointer;
  padding: 0;
  width: 24px;
  height: 24px;
}
.chalk-modal-close:hover {
  color: var(--chalk-fg-bright);
}
.chalk-modal-header-actions {
  display: flex;
  align-items: center;
  gap: var(--chalk-s2);
}
.chalk-modal-refresh {
  background: transparent;
  border: none;
  color: var(--chalk-fg-dim);
  font-size: 18px;
  line-height: 1;
  cursor: pointer;
  padding: 0;
  width: 24px;
  height: 24px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.chalk-modal-refresh:hover:not(:disabled) {
  color: var(--chalk-fg-bright);
}
.chalk-modal-refresh:disabled {
  opacity: 0.5;
  cursor: progress;
}
.chalk-modal-refresh--spinning {
  animation: chalk-spin 0.8s linear infinite;
}
@keyframes chalk-spin {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}
.chalk-modal-body {
  padding: var(--chalk-s4);
  display: flex;
  flex-direction: column;
  gap: var(--chalk-s3);
  overflow-y: auto;
  min-height: 0;
}
.chalk-modal-footer {
  display: flex;
  justify-content: flex-end;
  gap: var(--chalk-s2);
  padding: var(--chalk-s3) var(--chalk-s4);
  border-top: 1px solid var(--chalk-border);
}
.chalk-modal-error {
  color: #ff5555;
  font-size: var(--chalk-size-small);
}
.chalk-field {
  display: flex;
  flex-direction: column;
  gap: var(--chalk-s1);
}
.chalk-field--checkbox {
  flex-direction: row;
  align-items: center;
  gap: var(--chalk-s2);
}
.chalk-field-label {
  font-size: var(--chalk-size-small);
  color: var(--chalk-fg-dim);
  text-transform: lowercase;
  letter-spacing: 0.08em;
}
.chalk-field-input {
  background: var(--chalk-bg-elev);
  border: 1px solid var(--chalk-border);
  color: var(--chalk-fg);
  font-family: inherit;
  font-size: var(--chalk-size-body);
  padding: var(--chalk-s2);
}
.chalk-field-input:focus {
  outline: none;
  border-color: var(--chalk-fg-bright);
}
.chalk-field-hint {
  color: var(--chalk-fg-dim);
  font-style: italic;
  font-size: var(--chalk-size-small);
  padding: var(--chalk-s2) 0;
}
.chalk-friend-picker {
  list-style: none;
  margin: 0;
  padding: 0;
  max-height: 200px;
  overflow-y: auto;
  border: 1px solid var(--chalk-border);
}
.chalk-friend-picker-item {
  display: flex;
  align-items: center;
  gap: var(--chalk-s2);
  padding: var(--chalk-s2);
  cursor: pointer;
}
.chalk-friend-picker-item:hover {
  background: var(--chalk-bg-elev);
}
.chalk-friend-picker-item--selected {
  background: var(--chalk-bg-elev);
  color: var(--chalk-fg-bright);
}
.chalk-friend-picker-id {
  font-family: inherit;
}
.chalk-button {
  background: transparent;
  border: 1px solid var(--chalk-border);
  color: var(--chalk-fg);
  font-family: inherit;
  font-size: var(--chalk-size-body);
  padding: var(--chalk-s2) var(--chalk-s3);
  cursor: pointer;
  text-transform: lowercase;
  letter-spacing: 0.04em;
}
.chalk-button:hover {
  border-color: var(--chalk-fg-bright);
  color: var(--chalk-fg-bright);
}
.chalk-button:focus-visible {
  outline: 1px solid var(--chalk-fg-bright);
  outline-offset: 1px;
}
.chalk-button:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}
.chalk-button--primary {
  border-color: var(--chalk-fg-bright);
  color: var(--chalk-fg-bright);
}
.chalk-button--secondary {
}
.chalk-auth {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 100dvh;
  padding: var(--chalk-s4);
}
.chalk-auth-card {
  background: var(--chalk-bg-elev);
  border: 1px solid var(--chalk-fg-bright);
  padding: var(--chalk-s5);
  width: 100%;
  max-width: 480px;
  display: flex;
  flex-direction: column;
  gap: var(--chalk-s4);
}
.chalk-auth-card--wide {
  max-width: 640px;
}
.chalk-auth-header h2 {
  margin: 0 0 var(--chalk-s2) 0;
  font-size: var(--chalk-size-title);
  color: var(--chalk-fg-bright);
}
.chalk-auth-subtitle {
  margin: 0;
  color: var(--chalk-fg-dim);
  font-size: var(--chalk-size-small);
}
.chalk-auth-subtitle strong {
  color: var(--chalk-fg-bright);
}
.chalk-auth-form {
  display: flex;
  flex-direction: column;
  gap: var(--chalk-s3);
}
.chalk-auth-error {
  border: 1px solid var(--chalk-error);
  background: rgba(255, 77, 77, 0.08);
  color: var(--chalk-error);
  padding: var(--chalk-s3);
  font-size: var(--chalk-size-small);
}
.chalk-auth-warning {
  border: 1px solid var(--chalk-warn);
  background: rgba(255, 204, 0, 0.08);
  color: var(--chalk-warn);
  padding: var(--chalk-s3);
  font-size: var(--chalk-size-small);
  line-height: 1.5;
}
.chalk-auth-warning strong {
  color: var(--chalk-fg-bright);
}
.chalk-field-error {
  color: var(--chalk-error);
  font-size: var(--chalk-size-small);
}
.chalk-field-optional,
.chalk-field-required {
  font-size: var(--chalk-size-small);
  color: var(--chalk-fg-muted);
  font-weight: normal;
}
.chalk-field-required {
  color: var(--chalk-warn);
}
.chalk-auth-link {
  background: transparent;
  border: none;
  color: var(--chalk-accent);
  text-decoration: underline;
  cursor: pointer;
  font-family: inherit;
  font-size: var(--chalk-size-small);
  padding: 0;
  align-self: flex-start;
}
.chalk-auth-link:hover {
  color: var(--chalk-fg-bright);
}
.chalk-auth-actions-row {
  display: flex;
  gap: var(--chalk-s2);
  flex-wrap: wrap;
}
.chalk-auth-gate {
  border-top: 1px dashed var(--chalk-border);
  padding-top: var(--chalk-s3);
}
.chalk-auth-meta {
  display: flex;
  gap: var(--chalk-s2);
  font-size: var(--chalk-size-small);
  color: var(--chalk-fg-muted);
  border-top: 1px dashed var(--chalk-border);
  padding-top: var(--chalk-s3);
}
.chalk-auth-meta-dev,
.chalk-auth-meta-warn {
  color: var(--chalk-warn);
  border: 1px solid var(--chalk-warn);
  padding: 0 var(--chalk-s1);
  font-size: 10px;
  letter-spacing: 0.05em;
}
.chalk-button--primary {
  background: var(--chalk-fg);
  color: var(--chalk-bg);
  border-color: var(--chalk-fg);
}
.chalk-button--primary:hover:not(:disabled) {
  background: var(--chalk-fg-bright);
  border-color: var(--chalk-fg-bright);
  color: var(--chalk-bg);
  color: var(--chalk-bg);
}
.chalk-button--primary:disabled {
  opacity: 1;
  background: var(--chalk-bg-elev);
  color: var(--chalk-fg-muted);
  border-color: var(--chalk-border);
  cursor: not-allowed;
}
.chalk-recovery-words {
  list-style: none;
  margin: 0;
  padding: var(--chalk-s3);
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: var(--chalk-s2);
  background: var(--chalk-bg);
  border: 1px solid var(--chalk-fg-bright);
  font-family: var(--chalk-font);
}
@media (max-width: 600px) {
  .chalk-recovery-words {
    grid-template-columns: repeat(2, 1fr);
  }
}
.chalk-recovery-word {
  display: flex;
  gap: var(--chalk-s1);
  align-items: baseline;
}
.chalk-recovery-word-index {
  color: var(--chalk-fg-muted);
  font-size: var(--chalk-size-small);
  min-width: 1.8em;
  text-align: right;
}
.chalk-recovery-word-text {
  color: var(--chalk-fg-bright);
  font-size: var(--chalk-size-base);
  user-select: all;
}
.chalk-identity-challenge {
  display: flex;
  flex-direction: column;
  gap: var(--chalk-s3);
  margin-top: var(--chalk-s4);
}
.chalk-auth-alt {
  margin-top: var(--chalk-s4);
  text-align: center;
  font-size: var(--chalk-size-small);
  color: var(--chalk-fg-muted);
}
.chalk-auth-alt .chalk-auth-link {
  margin-left: var(--chalk-s1);
}
.chalk-status-menu {
  position: relative;
  display: inline-block;
}
.chalk-status-menu-trigger {
  background: transparent;
  border: 1px solid transparent;
  color: var(--chalk-fg);
  font: inherit;
  font-size: var(--chalk-size-small);
  padding: var(--chalk-s1) var(--chalk-s2);
  cursor: pointer;
  border-radius: 2px;
}
.chalk-status-menu-trigger:hover,
.chalk-status-menu-trigger[aria-expanded=true] {
  background: var(--chalk-bg-elev);
  border-color: var(--chalk-fg-muted);
}
.chalk-status-menu-popover {
  position: absolute;
  top: calc(100% + var(--chalk-s1));
  right: 0;
  min-width: 8rem;
  background: var(--chalk-bg-elev);
  border: 1px solid var(--chalk-fg-muted);
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.4);
  z-index: 10;
  display: flex;
  flex-direction: column;
}
.chalk-status-menu-item {
  background: transparent;
  border: 0;
  color: var(--chalk-fg);
  font: inherit;
  font-size: var(--chalk-size-small);
  padding: var(--chalk-s2) var(--chalk-s3);
  text-align: left;
  cursor: pointer;
}
.chalk-status-menu-item:hover,
.chalk-status-menu-item:focus {
  background: var(--chalk-bg);
  outline: none;
}
.chalk-field-input--textarea {
  resize: vertical;
  min-height: 6em;
  font-family: var(--chalk-mono, ui-monospace, monospace);
}
.chalk-field-hint--warn {
  color: var(--chalk-warn);
}
.chalk-modal--wide {
  max-width: 720px;
}
.chalk-modal-body h3 {
  margin: 0 0 var(--chalk-s2);
  font-size: var(--chalk-size-body);
  font-weight: 400;
  color: var(--chalk-fg-bright);
  text-transform: lowercase;
  letter-spacing: 0.08em;
}
.chalk-modal-body > section + section {
  margin-top: var(--chalk-s5);
  padding-top: var(--chalk-s5);
  border-top: 1px solid var(--chalk-border);
}
.chalk-invites-create {
  display: flex;
  flex-direction: column;
  gap: var(--chalk-s2);
}
.chalk-invites-list-section {
  display: flex;
  flex-direction: column;
  gap: var(--chalk-s2);
}
.chalk-invites-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: var(--chalk-s3);
}
.chalk-invite-row {
  display: flex;
  flex-direction: column;
  gap: var(--chalk-s1);
  padding: var(--chalk-s3);
  background: var(--chalk-bg-elev);
  border: 1px solid var(--chalk-border);
}
.chalk-invite-row-main {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--chalk-s2);
}
.chalk-invite-email {
  font-weight: 500;
  color: var(--chalk-fg-bright);
}
.chalk-invite-status {
  font-size: var(--chalk-size-small);
  text-transform: uppercase;
  letter-spacing: 0.1em;
  padding: 2px var(--chalk-s2);
  border: 1px solid var(--chalk-border);
  border-radius: var(--chalk-radius);
}
.chalk-invite-status--active {
  color: var(--chalk-fg);
  border-color: var(--chalk-fg);
}
.chalk-invite-status--used {
  color: var(--chalk-fg-muted);
  border-color: var(--chalk-fg-muted);
}
.chalk-invite-status--revoked {
  color: var(--chalk-fg-dim);
  border-color: var(--chalk-fg-dim);
}
.chalk-invite-status--expired {
  color: var(--chalk-warn);
  border-color: var(--chalk-warn);
}
.chalk-invite-note {
  font-size: var(--chalk-size-small);
  color: var(--chalk-fg-dim);
  font-style: italic;
}
.chalk-invite-meta {
  font-size: var(--chalk-size-small);
  color: var(--chalk-fg-muted);
}
.chalk-invite-url-row {
  display: flex;
  align-items: center;
  gap: var(--chalk-s2);
  margin-top: var(--chalk-s1);
}
.chalk-invite-url {
  flex: 1;
  font-family: var(--chalk-font);
  font-size: var(--chalk-size-small);
  color: var(--chalk-fg);
  background: var(--chalk-bg);
  padding: var(--chalk-s1) var(--chalk-s2);
  border: 1px solid var(--chalk-border);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  min-width: 0;
}
.chalk-invite-actions {
  display: flex;
  justify-content: flex-end;
  gap: var(--chalk-s2);
  margin-top: var(--chalk-s1);
}
.chalk-profile-identity {
  display: flex;
  flex-direction: column;
  gap: var(--chalk-s2);
}
.chalk-profile-fields {
  display: grid;
  grid-template-columns: max-content 1fr;
  gap: var(--chalk-s2) var(--chalk-s4);
  margin: 0;
}
.chalk-profile-fields dt {
  color: var(--chalk-fg-muted);
  font-size: var(--chalk-size-small);
  text-transform: lowercase;
  letter-spacing: 0.05em;
}
.chalk-profile-fields dd {
  margin: 0;
  color: var(--chalk-fg-bright);
  word-break: break-word;
}
.chalk-profile-fields dd em {
  color: var(--chalk-fg-muted);
  font-style: italic;
}
.chalk-profile-email-change {
  display: flex;
  flex-direction: column;
  gap: var(--chalk-s2);
}
.chalk-profile-pending {
  display: flex;
  flex-direction: column;
  gap: var(--chalk-s2);
  padding: var(--chalk-s3);
  background: var(--chalk-bg-elev);
  border: 1px solid var(--chalk-border);
}
.chalk-profile-pending p {
  margin: 0;
}
.chalk-profile-rotate {
  display: flex;
  flex-direction: column;
  gap: var(--chalk-s2);
}
.chalk-auth-error .chalk-auth-link {
  margin-left: var(--chalk-s2);
}
.chalk-admin {
  display: flex;
  flex-direction: column;
  width: 100%;
  height: 100dvh;
  background: var(--chalk-bg);
  color: var(--chalk-fg);
}
.chalk-admin--full {
  position: fixed;
  inset: 0;
  z-index: 50;
  overflow: hidden;
}
.chalk-admin-header {
  display: flex;
  align-items: center;
  gap: var(--chalk-s4);
  padding: var(--chalk-s3) var(--chalk-s4);
  border-bottom: 1px solid var(--chalk-border);
  background: var(--chalk-bg-elev);
  flex-shrink: 0;
}
.chalk-admin-back {
  flex-shrink: 0;
}
.chalk-admin-title {
  margin: 0;
  font-size: var(--chalk-size-title);
  font-weight: bold;
  flex-shrink: 0;
}
.chalk-admin-tabs {
  display: flex;
  gap: var(--chalk-s2);
  margin-left: auto;
}
.chalk-admin-tab-btn {
  background: transparent;
  color: var(--chalk-fg-dim);
  border: 1px solid var(--chalk-border);
  border-radius: var(--chalk-radius);
  padding: var(--chalk-s2) var(--chalk-s3);
  font-family: var(--chalk-font);
  font-size: var(--chalk-size-base);
  cursor: pointer;
  transition:
    background 0.1s,
    color 0.1s,
    border-color 0.1s;
}
.chalk-admin-tab-btn:hover {
  color: var(--chalk-fg);
  border-color: var(--chalk-fg-dim);
}
.chalk-admin-tab-btn--active {
  color: var(--chalk-bg);
  background: var(--chalk-fg);
  border-color: var(--chalk-fg);
}
.chalk-admin-tab-btn--active:hover {
  color: var(--chalk-bg);
  background: var(--chalk-fg-bright);
  border-color: var(--chalk-fg-bright);
}
.chalk-admin-body {
  flex: 1;
  overflow-y: auto;
  padding: var(--chalk-s4);
}
.chalk-admin-tab {
  display: flex;
  flex-direction: column;
  gap: var(--chalk-s3);
  max-width: 1200px;
  margin: 0 auto;
}
.chalk-admin-toolbar {
  display: flex;
  align-items: center;
  gap: var(--chalk-s3);
}
.chalk-admin-toolbar-title {
  font-weight: bold;
  color: var(--chalk-fg-bright);
  margin-right: auto;
}
.chalk-admin-search {
  flex: 1;
}
.chalk-admin-search .chalk-field-input {
  width: 100%;
}
.chalk-admin-refresh {
  flex-shrink: 0;
}
.chalk-admin-action-error {
  display: flex;
  align-items: center;
  gap: var(--chalk-s2);
  padding: var(--chalk-s2) var(--chalk-s3);
  border: 1px solid var(--chalk-error);
  border-radius: var(--chalk-radius);
  background: rgba(255, 77, 77, 0.08);
  color: var(--chalk-error);
}
.chalk-admin-action-error-dismiss {
  background: transparent;
  color: var(--chalk-error);
  border: none;
  cursor: pointer;
  font-size: 1.2em;
  padding: 0 var(--chalk-s1);
  line-height: 1;
  margin-left: auto;
}
.chalk-admin-action-error-dismiss:hover {
  color: var(--chalk-fg-bright);
}
.chalk-admin-empty {
  padding: var(--chalk-s6);
  text-align: center;
  color: var(--chalk-fg-dim);
  font-style: italic;
}
.chalk-admin-table-wrap {
  overflow-x: auto;
  border: 1px solid var(--chalk-border);
  border-radius: var(--chalk-radius);
}
.chalk-admin-table {
  width: 100%;
  border-collapse: collapse;
  font-size: var(--chalk-size-base);
}
.chalk-admin-table thead {
  background: var(--chalk-bg-elev);
}
.chalk-admin-table th {
  text-align: left;
  padding: var(--chalk-s2) var(--chalk-s3);
  font-weight: bold;
  color: var(--chalk-fg-dim);
  border-bottom: 1px solid var(--chalk-border);
}
.chalk-admin-table td {
  padding: var(--chalk-s2) var(--chalk-s3);
  border-bottom: 1px solid var(--chalk-border);
  vertical-align: middle;
}
.chalk-admin-table tr:last-child td {
  border-bottom: none;
}
.chalk-admin-row {
  position: relative;
  transition: background 0.1s;
}
.chalk-admin-row:hover {
  background: var(--chalk-bg-elev);
}
.chalk-admin-row--blocked {
  color: var(--chalk-warn);
}
.chalk-admin-row--deleted {
  color: var(--chalk-fg-muted);
  text-decoration: line-through;
  text-decoration-color: var(--chalk-fg-muted);
}
.chalk-admin-cell-username {
  font-weight: bold;
  white-space: nowrap;
}
.chalk-admin-cell-email {
  font-family: var(--chalk-font);
  color: var(--chalk-fg-dim);
}
.chalk-admin-cell-status {
  white-space: nowrap;
}
.chalk-admin-cell-created,
.chalk-admin-cell-former {
  white-space: nowrap;
  color: var(--chalk-fg-dim);
  font-variant-numeric: tabular-nums;
}
.chalk-admin-cell-actions {
  text-align: right;
  white-space: nowrap;
  min-width: 220px;
}
.chalk-admin-table-actions-col {
  width: 220px;
}
.chalk-admin-status-pill {
  display: inline-block;
  padding: 2px var(--chalk-s2);
  border-radius: var(--chalk-radius);
  font-size: var(--chalk-size-small);
  font-weight: bold;
  text-transform: lowercase;
  border: 1px solid;
}
.chalk-admin-status-pill--active {
  color: var(--chalk-fg);
  border-color: var(--chalk-fg);
}
.chalk-admin-status-pill--admin {
  color: var(--chalk-accent);
  border-color: var(--chalk-accent);
}
.chalk-admin-status-pill--blocked {
  color: var(--chalk-warn);
  border-color: var(--chalk-warn);
}
.chalk-admin-status-pill--deleted {
  color: var(--chalk-fg-muted);
  border-color: var(--chalk-fg-muted);
}
.chalk-admin-row-actions {
  display: flex;
  gap: var(--chalk-s1);
  justify-content: flex-end;
  opacity: 0;
  transition: opacity 0.1s;
}
.chalk-admin-row:hover .chalk-admin-row-actions,
.chalk-admin-row-actions:focus-within {
  opacity: 1;
}
@media (hover: none), (max-width: 640px) {
  .chalk-admin-row-actions {
    opacity: 1;
  }
}
.chalk-admin-row-action {
  background: transparent;
  color: var(--chalk-fg);
  border: 1px solid var(--chalk-border);
  border-radius: var(--chalk-radius);
  padding: 2px var(--chalk-s2);
  font-family: var(--chalk-font);
  font-size: var(--chalk-size-small);
  cursor: pointer;
  transition:
    background 0.1s,
    color 0.1s,
    border-color 0.1s;
}
.chalk-admin-row-action:hover {
  background: var(--chalk-fg);
  color: var(--chalk-bg);
  border-color: var(--chalk-fg);
}
.chalk-admin-row-action--warn {
  color: var(--chalk-warn);
  border-color: var(--chalk-warn);
}
.chalk-admin-row-action--warn:hover {
  background: var(--chalk-warn);
  color: var(--chalk-bg);
  border-color: var(--chalk-warn);
}
.chalk-admin-row-action--danger {
  color: var(--chalk-error);
  border-color: var(--chalk-error);
}
.chalk-admin-row-action--danger:hover {
  background: var(--chalk-error);
  color: var(--chalk-bg);
  border-color: var(--chalk-error);
}
.chalk-admin-row-pending {
  color: var(--chalk-fg-dim);
  font-size: 1.2em;
  display: inline-block;
  padding: 0 var(--chalk-s2);
}
.chalk-admin-pagination {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: var(--chalk-s3);
  padding: var(--chalk-s3) 0;
}
.chalk-admin-pagination-label {
  color: var(--chalk-fg-dim);
  font-variant-numeric: tabular-nums;
}
.chalk-admin-blacklist-add {
  display: flex;
  gap: var(--chalk-s3);
  align-items: flex-end;
  padding: var(--chalk-s3);
  border: 1px solid var(--chalk-border);
  border-radius: var(--chalk-radius);
  background: var(--chalk-bg-elev);
}
.chalk-admin-blacklist-add .chalk-field {
  flex: 1;
}
.chalk-button--danger {
  background: var(--chalk-error);
  color: var(--chalk-bg);
  border-color: var(--chalk-error);
}
.chalk-button--danger:hover:not(:disabled) {
  background: #ff6666;
  border-color: #ff6666;
}
.chalk-button--danger:disabled {
  background: var(--chalk-fg-muted);
  border-color: var(--chalk-fg-muted);
}
.chalk-modal--confirm {
  max-width: 500px;
}
.chalk-admin-confirm-warning {
  font-size: 2em;
  color: var(--chalk-warn);
  text-align: center;
  margin-bottom: var(--chalk-s2);
}
.chalk-admin-confirm-body p {
  margin: 0 0 var(--chalk-s2) 0;
}
.chalk-admin-confirm-body p:last-child {
  margin-bottom: 0;
}
.chalk-fg-dim {
  color: var(--chalk-fg-dim);
}
.chalk-friends-panel {
  width: min(560px, 92vw);
  max-height: 80vh;
  display: flex;
  flex-direction: column;
}
.chalk-friends-header {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  padding: 0.75rem 1rem 0.5rem;
  border-bottom: 1px solid var(--chalk-border, #1f2a1f);
}
.chalk-friends-title {
  font-size: 1.1rem;
  font-weight: 600;
  letter-spacing: 0.02em;
}
.chalk-friends-tabs {
  display: flex;
  gap: 0.25rem;
  padding: 0.5rem 1rem 0;
  border-bottom: 1px solid var(--chalk-border, #1f2a1f);
}
.chalk-friends-tab {
  background: transparent;
  color: var(--chalk-fg-dim, #5a8a5a);
  border: none;
  padding: 0.4rem 0.75rem;
  cursor: pointer;
  font-family: inherit;
  font-size: 0.9rem;
  border-bottom: 2px solid transparent;
  margin-bottom: -1px;
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
}
.chalk-friends-tab:hover {
  color: var(--chalk-fg, #c8ffc8);
}
.chalk-friends-tab--active {
  color: var(--chalk-fg, #c8ffc8);
  border-bottom-color: var(--chalk-accent, #6effa1);
}
.chalk-friends-badge {
  background: var(--chalk-accent, #6effa1);
  color: var(--chalk-bg, #0a120a);
  border-radius: 9999px;
  padding: 0 0.45em;
  font-size: 0.75rem;
  line-height: 1.4;
  font-weight: 600;
}
.chalk-friends-refresh {
  margin-left: auto;
  background: transparent;
  color: var(--chalk-fg-dim, #5a8a5a);
  border: none;
  font-family: inherit;
  font-size: 1.1rem;
  cursor: pointer;
  padding: 0.2rem 0.5rem;
}
.chalk-friends-refresh:hover {
  color: var(--chalk-fg, #c8ffc8);
}
.chalk-friends-body {
  padding: 1rem;
  overflow-y: auto;
}
.chalk-friends-help {
  color: var(--chalk-fg-dim, #5a8a5a);
  font-size: 0.85rem;
  margin: 0 0 0.75rem;
  line-height: 1.4;
}
.chalk-friends-add-row {
  display: flex;
  gap: 0.5rem;
}
.chalk-friends-add-input {
  flex: 1;
  background: var(--chalk-bg-elev, #14201a);
  border: 1px solid var(--chalk-border, #1f2a1f);
  color: var(--chalk-fg, #c8ffc8);
  padding: 0.45rem 0.6rem;
  font-family: inherit;
  font-size: 0.95rem;
  border-radius: 3px;
}
.chalk-friends-add-input:focus {
  outline: none;
  border-color: var(--chalk-accent, #6effa1);
}
.chalk-friends-add-submit {
  background: var(--chalk-accent, #6effa1);
  color: var(--chalk-bg, #0a120a);
  border: none;
  padding: 0.45rem 1rem;
  font-family: inherit;
  font-size: 0.95rem;
  font-weight: 600;
  cursor: pointer;
  border-radius: 3px;
}
.chalk-friends-add-submit:disabled {
  background: var(--chalk-fg-dim, #5a8a5a);
  cursor: not-allowed;
}
.chalk-friends-error {
  color: var(--chalk-error, #ff7070);
  font-size: 0.85rem;
  margin-top: 0.5rem;
  padding: 0.4rem 0.6rem;
  background: rgba(255, 112, 112, 0.08);
  border-left: 2px solid var(--chalk-error, #ff7070);
}
.chalk-friends-empty {
  color: var(--chalk-fg-dim, #5a8a5a);
  font-style: italic;
  text-align: center;
  padding: 1.5rem 1rem;
}
.chalk-friends-section-title {
  font-size: 0.8rem;
  color: var(--chalk-fg-dim, #5a8a5a);
  text-transform: uppercase;
  letter-spacing: 0.1em;
  margin: 0 0 0.5rem;
}
.chalk-friends-pending section + section {
  margin-top: 1rem;
}
.chalk-friends-list {
  list-style: none;
  margin: 0;
  padding: 0;
}
.chalk-friends-row {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 0.5rem 0.6rem;
  border-radius: 3px;
}
.chalk-friends-row:hover {
  background: var(--chalk-bg-elev, #14201a);
}
.chalk-friends-handle {
  font-family: inherit;
  color: var(--chalk-fg, #c8ffc8);
}
.chalk-friends-row-actions {
  display: flex;
  gap: 0.4rem;
}
.chalk-friends-action {
  background: transparent;
  border: 1px solid var(--chalk-border, #1f2a1f);
  color: var(--chalk-fg-dim, #5a8a5a);
  font-family: inherit;
  font-size: 0.85rem;
  padding: 0.25rem 0.6rem;
  border-radius: 3px;
  cursor: pointer;
}
.chalk-friends-action:hover {
  color: var(--chalk-fg, #c8ffc8);
  border-color: var(--chalk-fg-dim, #5a8a5a);
}
.chalk-friends-action:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}
.chalk-friends-action--accept {
  color: var(--chalk-accent, #6effa1);
  border-color: var(--chalk-accent, #6effa1);
}
.chalk-friends-action--accept:hover {
  background: var(--chalk-accent, #6effa1);
  color: var(--chalk-bg, #0a120a);
}
.chalk-friends-action--decline {
  color: var(--chalk-warn, #ffd060);
  border-color: var(--chalk-warn, #ffd060);
}
.chalk-friends-action--decline:hover {
  background: var(--chalk-warn, #ffd060);
  color: var(--chalk-bg, #0a120a);
}
.chalk-sidebar-header--channels {
  margin-top: 1rem;
  padding-top: 0.5rem;
  border-top: 1px solid var(--chalk-border, #1f2a1f);
}
.chalk-sidebar-count {
  color: var(--chalk-fg-dim, #5a8a5a);
  font-size: 0.85em;
  font-weight: normal;
  margin-left: 0.25em;
}
.chalk-sidebar-list--friends {
}
.chalk-sidebar-item--friend .chalk-sidebar-item-name {
}
.chalk-sidebar-section {
  display: flex;
  flex-direction: column;
  min-height: 0;
}
.chalk-sidebar-section--friends {
  flex-shrink: 0;
  max-height: 40vh;
}
.chalk-sidebar-section--channels {
  flex: 1;
  min-height: 0;
}
.chalk-sidebar-list--friends {
  flex: 0 1 auto;
  overflow-y: auto;
}
.chalk-sidebar-filter {
  padding: 0 var(--chalk-s2) var(--chalk-s2) var(--chalk-s2);
  flex-shrink: 0;
}
.chalk-sidebar-filter-input {
  width: 100%;
  background: var(--chalk-bg-elev, #14201a);
  border: 1px solid var(--chalk-border);
  color: var(--chalk-fg);
  padding: 0.3rem 0.5rem;
  font-family: inherit;
  font-size: var(--chalk-size-small);
  box-sizing: border-box;
}
.chalk-sidebar-filter-input:focus {
  outline: none;
  border-color: var(--chalk-fg-bright);
}
.chalk-sidebar-filter-input::placeholder {
  color: var(--chalk-fg-dim);
  font-style: italic;
}
.chalk-sidebar-item--friend {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}
.chalk-presence-dot {
  display: inline-block;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  flex-shrink: 0;
  margin-top: 1px;
}
.chalk-presence-dot--online {
  background: var(--chalk-fg-bright, #6effa1);
  box-shadow: 0 0 4px rgba(110, 255, 161, 0.4);
}
.chalk-presence-dot--away {
  background: var(--chalk-warn, #ffd060);
}
.chalk-presence-dot--offline {
  background: transparent;
  border: 1px solid var(--chalk-fg-dim, #5a8a5a);
  width: 6px;
  height: 6px;
}
.chalk-sidebar-item--friend {
  justify-content: flex-start;
}
.chalk-sidebar-item--friend .chalk-sidebar-item-name {
  flex: 0 1 auto;
}
.chalk-lazy-loading {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0.4rem;
  padding: 2rem;
  min-height: 6rem;
}
.chalk-lazy-loading-dot {
  display: inline-block;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--chalk-fg-dim);
  animation: chalk-lazy-pulse 1.2s ease-in-out infinite;
}
.chalk-lazy-loading-dot:nth-child(2) {
  animation-delay: 0.15s;
}
.chalk-lazy-loading-dot:nth-child(3) {
  animation-delay: 0.3s;
}
@keyframes chalk-lazy-pulse {
  0%, 80%, 100% {
    opacity: 0.3;
    transform: scale(0.8);
  }
  40% {
    opacity: 1;
    transform: scale(1.0);
  }
}
.chalk-lazy-error {
  padding: 1.5rem;
  color: var(--chalk-error, #ff7070);
  background: rgba(255, 112, 112, 0.08);
  border-left: 2px solid var(--chalk-error, #ff7070);
  margin: 1rem;
  font-size: var(--chalk-size-small);
}
.chalk-presence-picker {
  position: relative;
  display: inline-flex;
  align-items: center;
}
.chalk-presence-trigger {
  background: transparent;
  border: 1px solid transparent;
  color: inherit;
  font: inherit;
  padding: 0 0.5rem;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  border-radius: 3px;
}
.chalk-presence-trigger:hover {
  border-color: var(--chalk-border, #1f2a1f);
  background: var(--chalk-bg-elev, #14201a);
}
.chalk-presence-trigger:focus-visible {
  outline: 1px solid var(--chalk-fg-bright);
  outline-offset: -1px;
}
.chalk-presence-trigger--online .chalk-status-label {
  color: var(--chalk-fg-bright, #6effa1);
}
.chalk-presence-trigger--away .chalk-status-label {
  color: var(--chalk-warn, #ffd060);
}
.chalk-presence-trigger--offline .chalk-status-label {
  color: var(--chalk-fg-dim, #5a8a5a);
}
.chalk-presence-mode-badge {
  font-size: 10px;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: var(--chalk-fg-dim, #5a8a5a);
  padding: 0 0.25rem;
}
.chalk-presence-menu {
  position: absolute;
  top: 100%;
  left: 0;
  margin-top: 4px;
  min-width: 12rem;
  background: var(--chalk-bg-elev, #14201a);
  border: 1px solid var(--chalk-border, #1f2a1f);
  padding: 0.3rem 0;
  z-index: 20;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.5);
}
.chalk-presence-menu-item {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  width: 100%;
  background: transparent;
  border: none;
  color: var(--chalk-fg, #c8ffc8);
  font: inherit;
  text-align: left;
  padding: 0.4rem 0.75rem;
  cursor: pointer;
}
.chalk-presence-menu-item:hover {
  background: rgba(110, 255, 161, 0.08);
}
.chalk-presence-menu-item--active {
  color: var(--chalk-fg-bright, #6effa1);
  background: rgba(110, 255, 161, 0.05);
}
.chalk-presence-menu-item--active::before {
  content: "\2713  ";
}
.chalk-presence-menu-hint {
  font-size: 0.75rem;
  color: var(--chalk-fg-dim, #5a8a5a);
  font-style: italic;
}
[data-theme=light] {
  --chalk-bg: #f7f5ee;
  --chalk-bg-elev: #ebe7da;
  --chalk-bg-elev-2: #ddd7c4;
  --chalk-fg: #1f1d17;
  --chalk-fg-dim: #6a6657;
  --chalk-fg-bright: #1a4d2a;
  --chalk-fg-muted: #8e8a7a;
  --chalk-border: #c9c2ab;
  --chalk-accent: #2d6e3f;
  --chalk-warn: #a85f00;
  --chalk-error: #9b2a26;
  color-scheme: light;
}
[data-theme=light] .chalk-presence-dot--online {
  box-shadow: 0 0 4px rgba(45, 110, 63, 0.35);
}
[data-theme=light] .chalk-modal,
[data-theme=light] .chalk-presence-menu,
[data-theme=light] .chalk-status-menu {
  box-shadow: 0 1px 3px rgba(31, 29, 23, 0.08);
}
[data-theme=light] .chalk-sidebar-item--active {
  background: rgba(45, 110, 63, 0.10);
}
.chalk-profile-theme-picker {
  display: flex;
  flex-direction: column;
  gap: var(--chalk-s2);
  margin-top: var(--chalk-s1);
}
.chalk-profile-theme-option {
  display: flex;
  align-items: center;
  gap: var(--chalk-s2);
  padding: var(--chalk-s2);
  border: 1px solid var(--chalk-border);
  border-radius: var(--chalk-radius);
  cursor: pointer;
  transition: border-color 100ms ease;
}
.chalk-profile-theme-option:hover {
  border-color: var(--chalk-accent);
}
.chalk-profile-theme-option--active {
  border-color: var(--chalk-accent);
  background: var(--chalk-bg-elev);
}
.chalk-profile-theme-option input[type=radio] {
  appearance: none;
  -webkit-appearance: none;
  width: 0;
  height: 0;
  margin: 0;
  padding: 0;
  opacity: 0;
  position: absolute;
}
.chalk-profile-theme-option input[type=radio]:focus-visible + .chalk-profile-theme-swatch {
  outline: 1px solid var(--chalk-fg-bright);
  outline-offset: 2px;
}
.chalk-profile-theme-swatch {
  display: grid;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  gap: var(--chalk-s2);
  width: 100%;
}
.chalk-profile-theme-swatch-preview {
  display: inline-block;
  width: 24px;
  height: 24px;
  border-radius: var(--chalk-radius);
  border: 1px solid var(--chalk-border);
}
.chalk-profile-theme-swatch-preview--green {
  background:
    linear-gradient(
      135deg,
      #000000 0%,
      #000000 50%,
      #00ff41 50%,
      #00ff41 100%);
}
.chalk-profile-theme-swatch-preview--light {
  background:
    linear-gradient(
      135deg,
      #f7f5ee 0%,
      #f7f5ee 50%,
      #2d6e3f 50%,
      #2d6e3f 100%);
}
.chalk-profile-theme-name {
  font-weight: 500;
}
.chalk-profile-theme-desc {
  color: var(--chalk-fg-dim);
  font-size: var(--chalk-size-small);
}
.chalk-profile-hint {
  margin-top: var(--chalk-s1);
  color: var(--chalk-fg-dim);
  font-size: var(--chalk-size-small);
  font-style: italic;
}
[data-theme=cyberpunk] {
  --chalk-bg: #0a0420;
  --chalk-bg-elev: #140a32;
  --chalk-bg-elev-2: #1f0f4d;
  --chalk-fg: #f0e8ff;
  --chalk-fg-dim: #8a7ab8;
  --chalk-fg-bright: #ff2eaa;
  --chalk-fg-muted: #5a4a8a;
  --chalk-border: #4a2a8a;
  --chalk-accent: #00f0ff;
  --chalk-warn: #ffcc00;
  --chalk-error: #ff3060;
  color-scheme: dark;
}
[data-theme=cyberpunk] .chalk-presence-dot--online {
  background: var(--chalk-accent);
  box-shadow: 0 0 6px rgba(0, 240, 255, 0.6);
}
[data-theme=cyberpunk] .chalk-sidebar-item--active {
  background: rgba(255, 46, 170, 0.12);
}
[data-theme=solarized-dark] {
  --chalk-bg: #002b36;
  --chalk-bg-elev: #073642;
  --chalk-bg-elev-2: #0e4a5c;
  --chalk-fg: #839496;
  --chalk-fg-dim: #586e75;
  --chalk-fg-bright: #93a1a1;
  --chalk-fg-muted: #45626b;
  --chalk-border: #073642;
  --chalk-accent: #268bd2;
  --chalk-warn: #b58900;
  --chalk-error: #dc322f;
  color-scheme: dark;
}
[data-theme=solarized-dark] .chalk-presence-dot--online {
  background: var(--chalk-accent);
  box-shadow: 0 0 4px rgba(38, 139, 210, 0.45);
}
[data-theme=solarized-dark] .chalk-sidebar-item--active {
  background: rgba(38, 139, 210, 0.12);
}
.chalk-profile-theme-swatch-preview--cyberpunk {
  background:
    linear-gradient(
      135deg,
      #0a0420 0%,
      #0a0420 50%,
      #ff2eaa 50%,
      #ff2eaa 100%);
}
.chalk-profile-theme-swatch-preview--solarized-dark {
  background:
    linear-gradient(
      135deg,
      #002b36 0%,
      #002b36 50%,
      #268bd2 50%,
      #268bd2 100%);
}
.chalk-messages--compact {
  gap: 1px;
}
.chalk-messages--compact .chalk-message {
  padding: 1px var(--chalk-s2);
}
.chalk-message--no-time {
  grid-template-columns: 9ch 1fr;
}
.chalk-profile-checkbox-label {
  display: inline-flex;
  align-items: center;
  gap: var(--chalk-s2);
  cursor: pointer;
  user-select: none;
}
.chalk-profile-checkbox-label input[type=checkbox] {
  width: 14px;
  height: 14px;
  cursor: pointer;
  accent-color: var(--chalk-accent);
}
.chalk-profile-select {
  background: var(--chalk-bg);
  color: var(--chalk-fg);
  border: 1px solid var(--chalk-border);
  border-radius: var(--chalk-radius);
  padding: var(--chalk-s1) var(--chalk-s2);
  font: inherit;
  cursor: pointer;
}
.chalk-profile-select:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}
.chalk-profile-select:focus-visible {
  outline: 1px solid var(--chalk-fg-bright);
  outline-offset: -1px;
}
.chalk-user-colors {
  display: flex;
  flex-direction: column;
  gap: var(--chalk-s2);
  margin-top: var(--chalk-s2);
}
.chalk-user-colors-empty {
  font-size: var(--chalk-size-small);
  color: var(--chalk-fg-dim);
  font-style: italic;
  padding: var(--chalk-s2) 0;
}
.chalk-user-colors-row {
  display: grid;
  grid-template-columns: 1fr 36px minmax(110px, auto) 28px;
  gap: var(--chalk-s2);
  align-items: center;
}
.chalk-user-colors-handle {
  background: var(--chalk-bg);
  color: var(--chalk-fg);
  border: 1px solid var(--chalk-border);
  border-radius: var(--chalk-radius);
  padding: var(--chalk-s1) var(--chalk-s2);
  font: inherit;
  min-width: 0;
}
.chalk-user-colors-handle:focus-visible {
  outline: 1px solid var(--chalk-fg-bright);
  outline-offset: -1px;
}
.chalk-user-colors-color {
  width: 36px;
  height: 28px;
  padding: 0;
  border: 1px solid var(--chalk-border);
  border-radius: var(--chalk-radius);
  background: transparent;
  cursor: pointer;
}
.chalk-user-colors-scope {
  height: 28px;
  padding: 0 var(--chalk-s2);
}
.chalk-user-colors-delete {
  background: transparent;
  color: var(--chalk-fg-dim);
  border: 1px solid transparent;
  border-radius: var(--chalk-radius);
  width: 28px;
  height: 28px;
  cursor: pointer;
  font-size: var(--chalk-size-small);
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.chalk-user-colors-delete:hover {
  color: var(--chalk-error);
  border-color: var(--chalk-error);
}
.chalk-user-colors-add {
  align-self: flex-start;
  margin-top: var(--chalk-s2);
  background: transparent;
  color: var(--chalk-fg-bright);
  border: 1px solid var(--chalk-border);
  border-radius: var(--chalk-radius);
  padding: var(--chalk-s1) var(--chalk-s3);
  font: inherit;
  cursor: pointer;
}
.chalk-user-colors-add:hover {
  border-color: var(--chalk-accent);
}
.chalk-message-group {
  display: contents;
}
.chalk-message {
  position: relative;
}
.chalk-message-reply {
  position: absolute;
  right: var(--chalk-s2);
  top: var(--chalk-s1);
  background: var(--chalk-bg-elev);
  border: 1px solid var(--chalk-border);
  border-radius: var(--chalk-radius);
  color: var(--chalk-fg-dim);
  font: inherit;
  font-size: var(--chalk-size-small);
  padding: 2px 8px;
  cursor: pointer;
  opacity: 0;
  pointer-events: none;
  transition: opacity 80ms ease;
}
.chalk-message:hover .chalk-message-reply,
.chalk-message-reply:focus-visible {
  opacity: 1;
  pointer-events: auto;
}
.chalk-message-reply:hover {
  color: var(--chalk-fg-bright);
  border-color: var(--chalk-accent);
}
.chalk-message-reply:focus-visible {
  outline: 1px solid var(--chalk-fg-bright);
  outline-offset: -1px;
}
.chalk-message-delete {
  position: absolute;
  right: calc(var(--chalk-s2) + 5rem);
  top: var(--chalk-s1);
  background: var(--chalk-bg-elev);
  border: 1px solid var(--chalk-border);
  border-radius: var(--chalk-radius);
  color: var(--chalk-fg-dim);
  font: inherit;
  font-size: var(--chalk-size-small);
  padding: 2px 8px;
  cursor: pointer;
  opacity: 0;
  pointer-events: none;
  transition: opacity 80ms ease;
}
.chalk-message:hover .chalk-message-delete,
.chalk-message-delete:focus-visible {
  opacity: 1;
  pointer-events: auto;
}
.chalk-message-delete:hover {
  color: var(--chalk-danger, #e5484d);
  border-color: var(--chalk-danger, #e5484d);
}
.chalk-message-delete:focus-visible {
  outline: 1px solid var(--chalk-fg-bright);
  outline-offset: -1px;
}
.chalk-message-deleted {
  font-style: italic;
  color: var(--chalk-fg-dim);
  opacity: 0.8;
}
.chalk-message-thread-indicator {
  align-self: flex-start;
  margin-left: var(--chalk-s2);
  margin-top: 0;
  margin-bottom: var(--chalk-s1);
  background: transparent;
  border: none;
  color: var(--chalk-accent);
  font: inherit;
  font-size: var(--chalk-size-small);
  cursor: pointer;
  padding: 0;
  text-align: left;
}
.chalk-message-thread-indicator:hover {
  color: var(--chalk-fg-bright);
  text-decoration: underline;
}
.chalk-message-thread-indicator:focus-visible {
  outline: 1px solid var(--chalk-fg-bright);
  outline-offset: 2px;
  border-radius: 2px;
}
.chalk-messages--compact .chalk-message-thread-indicator {
  margin-bottom: 0;
}
.chalk-app--phase08b.chalk-app--thread-open {
  grid-template-columns: 220px 1fr 340px;
  grid-template-areas: "header  header header" "sidebar main   thread" "footer  footer thread";
}
.chalk-app--phase08b.chalk-app--thread-open .chalk-thread-panel {
  grid-area: thread;
}
.chalk-thread-panel {
  display: flex;
  flex-direction: column;
  min-height: 0;
  border-left: 1px solid var(--chalk-border);
  background: var(--chalk-bg);
}
.chalk-thread-panel-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: var(--chalk-s2) var(--chalk-s3);
  border-bottom: 1px solid var(--chalk-border);
}
.chalk-thread-panel-title {
  color: var(--chalk-fg-bright);
  font-size: var(--chalk-size-body);
  letter-spacing: 0.08em;
  text-transform: lowercase;
}
.chalk-thread-panel-close {
  background: transparent;
  border: none;
  color: var(--chalk-fg-dim);
  font-size: 18px;
  line-height: 1;
  cursor: pointer;
  padding: 2px 8px;
  border-radius: var(--chalk-radius);
}
.chalk-thread-panel-close:hover {
  color: var(--chalk-fg-bright);
  background: var(--chalk-bg-elev);
}
.chalk-thread-panel-close:focus-visible {
  outline: 1px solid var(--chalk-fg-bright);
  outline-offset: -1px;
}
.chalk-thread-panel-body {
  flex: 1 1 auto;
  min-height: 0;
  overflow-y: auto;
  padding: var(--chalk-s2) var(--chalk-s2);
}
.chalk-thread-panel-parent {
  padding-bottom: var(--chalk-s2);
}
.chalk-thread-panel-divider {
  height: 1px;
  background: var(--chalk-border);
  margin: var(--chalk-s2) 0;
}
.chalk-thread-panel-loading,
.chalk-thread-panel-empty {
  color: var(--chalk-fg-muted);
  font-style: italic;
  padding: var(--chalk-s2) var(--chalk-s2);
  font-size: var(--chalk-size-small);
}
.chalk-thread-panel-footer {
  border-top: 1px solid var(--chalk-border);
  padding: var(--chalk-s2);
}
@media (max-width: 767px) {
  .chalk-app--phase08b.chalk-app--thread-open {
    grid-template-columns: 220px 1fr;
    grid-template-areas: "header  header" "sidebar thread" "sidebar thread";
  }
  .chalk-app--phase08b.chalk-app--thread-open .chalk-main,
  .chalk-app--phase08b.chalk-app--thread-open .chalk-footer {
    display: none;
  }
}
.chalk-message-thread-indicator--unread {
  color: var(--chalk-fg-bright);
}
.chalk-message-thread-indicator-new {
  color: var(--chalk-fg-bright);
  font-weight: 500;
  letter-spacing: 0.02em;
}
.chalk-message-thread-preview {
  align-self: flex-start;
  margin-left: calc(var(--chalk-s2) + 28px);
  margin-top: -2px;
  margin-bottom: var(--chalk-s1);
  background: transparent;
  border: none;
  color: var(--chalk-fg-dim);
  font: inherit;
  font-size: 11px;
  font-style: italic;
  cursor: pointer;
  padding: 0;
  text-align: left;
  max-width: min(60ch, 80%);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  display: block;
}
.chalk-message-thread-preview:hover {
  color: var(--chalk-fg);
}
.chalk-message-thread-preview:focus-visible {
  outline: 1px solid var(--chalk-fg-bright);
  outline-offset: 2px;
  border-radius: 2px;
}
.chalk-message-thread-preview-sender {
  color: var(--chalk-fg-bright);
}
.chalk-message-thread-preview-body {
}
.chalk-messages--compact .chalk-message-thread-preview {
  margin-bottom: 0;
}
.chalk-channel-members-panel {
  min-width: min(480px, 90vw);
  max-width: min(640px, 95vw);
}
.chalk-channel-members-list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: var(--chalk-s1);
}
.chalk-channel-members-item {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: var(--chalk-s2);
  border: 1px solid var(--chalk-border);
  background: var(--chalk-bg-elev);
  gap: var(--chalk-s2);
}
.chalk-channel-members-handle {
  color: var(--chalk-fg);
  font-family: inherit;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.chalk-channel-members-self-tag,
.chalk-channel-members-creator-tag {
  color: var(--chalk-fg-muted);
  font-size: var(--chalk-size-small);
}
.chalk-channel-members-remove {
  background: transparent;
  border: 1px solid var(--chalk-border);
  color: var(--chalk-fg-dim);
  font-family: inherit;
  font-size: var(--chalk-size-body);
  padding: 0 var(--chalk-s2);
  cursor: pointer;
  text-transform: lowercase;
  flex-shrink: 0;
}
.chalk-channel-members-remove:hover {
  border-color: var(--chalk-warn);
  color: var(--chalk-warn);
}
.chalk-channel-members-remove:disabled {
  opacity: 0.4;
  cursor: not-allowed;
}
.chalk-channel-members-confirm-row {
  display: flex;
  align-items: center;
  gap: var(--chalk-s1);
  flex-shrink: 0;
}
.chalk-channel-members-confirm-text {
  color: var(--chalk-warn);
  font-size: var(--chalk-size-small);
  margin-right: var(--chalk-s1);
}
.chalk-channel-members-error {
  margin-top: var(--chalk-s2);
  padding: var(--chalk-s2);
  border: 1px solid var(--chalk-warn);
  color: var(--chalk-warn);
  font-size: var(--chalk-size-small);
}
.chalk-channel-members-empty,
.chalk-channel-members-hint {
  color: var(--chalk-fg-muted);
  font-size: var(--chalk-size-small);
  margin: 0 0 var(--chalk-s2) 0;
}
.chalk-button--small {
  padding: 0 var(--chalk-s2);
  font-size: var(--chalk-size-small);
}
.chalk-channel-header-action {
  background: transparent;
  border: 1px solid var(--chalk-border);
  color: var(--chalk-fg-dim);
  font-family: inherit;
  font-size: var(--chalk-size-small);
  padding: 0 var(--chalk-s2);
  cursor: pointer;
  text-transform: lowercase;
  margin-left: auto;
}
.chalk-channel-header-action:hover {
  border-color: var(--chalk-fg-bright);
  color: var(--chalk-fg-bright);
}
.chalk-members-panel {
  width: 360px;
  max-width: 92vw;
}
.chalk-members-header {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  padding: 0.75rem 1rem 0.5rem;
  border-bottom: 1px solid var(--chalk-border, #1f2a1f);
}
.chalk-members-title {
  color: var(--chalk-fg-bright, #c8ffc8);
}
.chalk-members-chan {
  color: var(--chalk-fg-dim, #5a8a5a);
  margin-left: 0.35rem;
}
.chalk-members-header-actions {
  display: flex;
  align-items: center;
  gap: 0.25rem;
}
.chalk-members-refresh {
  background: transparent;
  color: var(--chalk-fg-dim, #5a8a5a);
  border: none;
  font-family: inherit;
  font-size: 0.8rem;
  cursor: pointer;
  padding: 0.2rem 0.5rem;
}
.chalk-members-refresh:hover {
  color: var(--chalk-fg, #c8ffc8);
}
.chalk-members-refresh:disabled {
  opacity: 0.5;
  cursor: default;
}
.chalk-members-body {
  padding: 0.5rem 0;
  max-height: 50vh;
  overflow-y: auto;
}
.chalk-members-empty {
  padding: 1rem;
  color: var(--chalk-fg-dim, #5a8a5a);
  text-align: center;
}
.chalk-members-list {
  list-style: none;
  margin: 0;
  padding: 0;
}
.chalk-members-row {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 0.4rem 1rem;
}
.chalk-members-row:hover {
  background: var(--chalk-bg-hover, #121912);
}
.chalk-members-handle {
  color: var(--chalk-fg, #c8ffc8);
}
.chalk-members-you {
  color: var(--chalk-fg-dim, #5a8a5a);
}
.chalk-members-status {
  font-size: 0.75rem;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  padding: 1px 6px;
  border: 1px solid currentColor;
}
.chalk-members-status--has {
  color: var(--chalk-accent, #5cffb1);
}
.chalk-members-status--waiting {
  color: var(--chalk-fg-muted, #6a7a6a);
}
.chalk-members-footer {
  padding: 0.6rem 1rem 0.8rem;
  border-top: 1px solid var(--chalk-border, #1f2a1f);
}
.chalk-members-reshare {
  width: 100%;
  background: transparent;
  color: var(--chalk-accent, #5cffb1);
  border: 1px solid var(--chalk-accent, #5cffb1);
  font-family: inherit;
  font-size: 0.85rem;
  cursor: pointer;
  padding: 0.4rem 0.6rem;
}
.chalk-members-reshare:hover {
  background: rgba(92, 255, 177, 0.08);
}
.chalk-members-reshare:disabled {
  opacity: 0.5;
  cursor: default;
}
.chalk-members-allset,
.chalk-members-nokey {
  display: block;
  text-align: center;
  font-size: 0.8rem;
  color: var(--chalk-fg-dim, #5a8a5a);
}
.chalk-members-badges {
  display: flex;
  align-items: center;
  gap: 0.4rem;
}
.chalk-verify-badge {
  font-family: inherit;
  font-size: 0.7rem;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  padding: 1px 6px;
  background: transparent;
  border: 1px solid currentColor;
  cursor: pointer;
}
.chalk-verify-badge:disabled {
  cursor: default;
  opacity: 0.7;
}
.chalk-verify-badge--verified {
  color: var(--chalk-accent, #5cffb1);
}
.chalk-verify-badge--unverified {
  color: var(--chalk-fg-dim, #5a8a5a);
}
.chalk-verify-badge--changed {
  color: var(--chalk-warn, #ffcc66);
}
.chalk-verify-badge--none {
  color: var(--chalk-fg-muted, #6a7a6a);
}
.chalk-members-back {
  background: transparent;
  border: none;
  color: var(--chalk-fg-dim, #5a8a5a);
  font-family: inherit;
  font-size: inherit;
  cursor: pointer;
  padding: 0;
}
.chalk-members-back:hover {
  color: var(--chalk-fg, #c8ffc8);
}
.chalk-verify-view {
  padding: 0.75rem 1rem 1rem;
}
.chalk-verify-intro {
  color: var(--chalk-fg-dim, #5a8a5a);
  font-size: 0.85rem;
  line-height: 1.5;
  margin-bottom: 0.75rem;
}
.chalk-verify-warn {
  color: var(--chalk-warn, #ffcc66);
  border: 1px solid var(--chalk-warn, #ffcc66);
  padding: 0.5rem 0.6rem;
  font-size: 0.85rem;
  line-height: 1.4;
  margin-bottom: 0.75rem;
}
.chalk-verify-code {
  background: var(--chalk-bg-alt, #0c130c);
  border: 1px solid var(--chalk-border, #1f2a1f);
  padding: 0.75rem;
  margin-bottom: 0.5rem;
}
.chalk-verify-words {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 0.4rem 0.6rem;
}
.chalk-verify-word {
  color: var(--chalk-accent, #5cffb1);
  font-size: 0.95rem;
  text-align: center;
}
.chalk-verify-numeric {
  color: var(--chalk-accent, #5cffb1);
  font-size: 0.95rem;
  line-height: 1.6;
  letter-spacing: 0.05em;
  word-spacing: 0.2em;
  text-align: center;
}
.chalk-verify-toggle {
  background: transparent;
  border: none;
  color: var(--chalk-fg-dim, #5a8a5a);
  font-family: inherit;
  font-size: 0.8rem;
  cursor: pointer;
  padding: 0.2rem 0;
  margin-bottom: 0.75rem;
}
.chalk-verify-toggle:hover {
  color: var(--chalk-fg, #c8ffc8);
}
.chalk-verify-actions {
  margin-top: 0.5rem;
}
.chalk-verify-state--verified {
  color: var(--chalk-accent, #5cffb1);
  text-align: center;
  font-size: 0.9rem;
}
.chalk-verify-mark {
  width: 100%;
  background: transparent;
  color: var(--chalk-accent, #5cffb1);
  border: 1px solid var(--chalk-accent, #5cffb1);
  font-family: inherit;
  font-size: 0.85rem;
  cursor: pointer;
  padding: 0.4rem 0.6rem;
}
.chalk-verify-mark:hover {
  background: rgba(92, 255, 177, 0.08);
}
.chalk-verify-confirm-text {
  color: var(--chalk-fg, #c8ffc8);
  font-size: 0.85rem;
  line-height: 1.4;
  margin-bottom: 0.5rem;
}
.chalk-verify-confirm-buttons {
  display: flex;
  gap: 0.5rem;
}
.chalk-verify-confirm-yes {
  flex: 1;
  background: transparent;
  color: var(--chalk-accent, #5cffb1);
  border: 1px solid var(--chalk-accent, #5cffb1);
  font-family: inherit;
  font-size: 0.85rem;
  cursor: pointer;
  padding: 0.4rem 0.6rem;
}
.chalk-verify-confirm-yes:hover {
  background: rgba(92, 255, 177, 0.08);
}
.chalk-verify-confirm-no {
  flex: 1;
  background: transparent;
  color: var(--chalk-fg-dim, #5a8a5a);
  border: 1px solid var(--chalk-border, #1f2a1f);
  font-family: inherit;
  font-size: 0.85rem;
  cursor: pointer;
  padding: 0.4rem 0.6rem;
}
.chalk-verify-confirm-no:hover {
  color: var(--chalk-fg, #c8ffc8);
}
.chalk-verify-empty {
  color: var(--chalk-fg-dim, #5a8a5a);
  font-size: 0.85rem;
  line-height: 1.5;
  text-align: center;
  padding: 1rem 0;
}
.chalk-members-rotate-row {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  margin-top: 0.5rem;
  padding-top: 0.5rem;
  border-top: 1px solid var(--chalk-border, #1f2a1f);
}
.chalk-members-rotate {
  flex: 1;
  background: transparent;
  color: var(--chalk-fg-dim, #5a8a5a);
  border: 1px solid var(--chalk-border, #1f2a1f);
  font-family: inherit;
  font-size: 0.85rem;
  cursor: pointer;
  padding: 0.4rem 0.6rem;
}
.chalk-members-rotate:hover:not(:disabled) {
  color: var(--chalk-fg, #c8ffc8);
  border-color: var(--chalk-fg-dim, #5a8a5a);
}
.chalk-members-rotate:disabled {
  opacity: 0.5;
  cursor: default;
}
.chalk-members-keyver {
  font-size: 0.75rem;
  color: var(--chalk-fg-muted, #6a7a6a);
  white-space: nowrap;
}
.chalk-members-remove {
  background: transparent;
  border: none;
  color: var(--chalk-fg-muted, #6a7a6a);
  font-family: inherit;
  font-size: 0.85rem;
  line-height: 1;
  cursor: pointer;
  padding: 0 0.25rem;
  margin-left: 0.25rem;
}
.chalk-members-remove:hover {
  color: var(--chalk-danger, #e66);
}
.chalk-members-leave {
  margin-top: 0.5rem;
  width: 100%;
  background: transparent;
  color: var(--chalk-fg-muted, #6a7a6a);
  border: 1px solid var(--chalk-border, #1f2a1f);
  font-family: inherit;
  font-size: 0.8rem;
  cursor: pointer;
  padding: 0.35rem 0.6rem;
}
.chalk-members-leave:hover:not(:disabled) {
  color: var(--chalk-danger, #e66);
  border-color: var(--chalk-danger, #e66);
}
.chalk-members-leave:disabled {
  opacity: 0.4;
  cursor: default;
}
.chalk-members-pending {
  margin-top: 0.5rem;
  font-size: 0.78rem;
  color: var(--chalk-warn, #ffcc66);
  border-left: 2px solid var(--chalk-warn, #ffcc66);
  padding-left: 0.5rem;
}
.chalk-members-add {
  margin-top: 0.5rem;
}
.chalk-members-add-toggle {
  width: 100%;
  background: transparent;
  color: var(--chalk-fg-dim, #5a8a5a);
  border: 1px dashed var(--chalk-border, #1f2a1f);
  font-family: inherit;
  font-size: 0.82rem;
  cursor: pointer;
  padding: 0.35rem 0.6rem;
}
.chalk-members-add-toggle:hover {
  color: var(--chalk-fg, #c8ffc8);
  border-color: var(--chalk-fg-dim, #5a8a5a);
}
.chalk-members-add-list {
  list-style: none;
  margin: 0.4rem 0 0;
  padding: 0;
  max-height: 9rem;
  overflow-y: auto;
}
.chalk-members-add-list li {
  margin: 0;
}
.chalk-members-add-friend {
  width: 100%;
  text-align: left;
  background: transparent;
  color: var(--chalk-fg, #c8ffc8);
  border: none;
  font-family: inherit;
  font-size: 0.85rem;
  cursor: pointer;
  padding: 0.3rem 0.5rem;
}
.chalk-members-add-friend:hover {
  background: var(--chalk-row-hover, #14201410);
  color: var(--chalk-accent, #8effa0);
}
.chalk-members-add-empty {
  font-size: 0.78rem;
  color: var(--chalk-fg-muted, #6a7a6a);
  padding: 0.3rem 0.5rem;
}
.chalk-gov-panel {
  max-width: 460px;
  width: 100%;
}
.chalk-btn {
  background: var(--chalk-bg-elev);
  color: var(--chalk-fg);
  border: 1px solid var(--chalk-border);
  border-radius: var(--chalk-radius);
  font-family: inherit;
  font-size: var(--chalk-size-small);
  padding: 0.3rem 0.7rem;
  cursor: pointer;
}
.chalk-btn:hover:not(:disabled) {
  background: var(--chalk-bg-hover);
  border-color: var(--chalk-accent);
}
.chalk-btn:disabled {
  opacity: 0.5;
  cursor: default;
}
.chalk-btn-sm {
  padding: 0.15rem 0.5rem;
}
.chalk-btn-on {
  background: var(--chalk-accent);
  color: var(--chalk-bg);
  border-color: var(--chalk-accent);
}
.chalk-btn-danger:hover:not(:disabled) {
  border-color: var(--chalk-danger);
  color: var(--chalk-danger);
}
.chalk-select {
  background: var(--chalk-bg-elev);
  color: var(--chalk-fg);
  border: 1px solid var(--chalk-border);
  border-radius: var(--chalk-radius);
  font-family: inherit;
  font-size: var(--chalk-size-small);
  padding: 0.25rem 0.4rem;
}
.chalk-gov-mode {
  display: flex;
  align-items: center;
  gap: var(--chalk-s3);
  flex-wrap: wrap;
  margin-bottom: var(--chalk-s3);
}
.chalk-gov-mode-label {
  color: var(--chalk-fg-dim);
}
.chalk-gov-hint {
  color: var(--chalk-fg-muted);
  font-size: var(--chalk-size-small);
  margin: 0 0 var(--chalk-s3) 0;
}
.chalk-gov-propose {
  border-top: 1px solid var(--chalk-border);
  padding-top: var(--chalk-s3);
  margin-bottom: var(--chalk-s3);
}
.chalk-gov-propose-row {
  display: flex;
  gap: var(--chalk-s2);
  align-items: center;
  flex-wrap: wrap;
}
.chalk-gov-error {
  color: var(--chalk-error);
  font-size: var(--chalk-size-small);
  margin-bottom: var(--chalk-s2);
}
.chalk-gov-resolved-head {
  color: var(--chalk-fg-muted);
  font-size: var(--chalk-size-small);
  text-transform: uppercase;
  letter-spacing: 0.08em;
  margin: var(--chalk-s3) 0 var(--chalk-s2) 0;
}
.chalk-gov-prop {
  border: 1px solid var(--chalk-border);
  border-radius: var(--chalk-radius);
  padding: var(--chalk-s2) var(--chalk-s3);
  margin-bottom: var(--chalk-s2);
}
.chalk-gov-prop-resolved {
  opacity: 0.7;
}
.chalk-gov-prop-head {
  display: flex;
  align-items: baseline;
  gap: var(--chalk-s2);
}
.chalk-gov-prop-type {
  color: var(--chalk-fg-bright);
}
.chalk-gov-prop-target {
  color: var(--chalk-accent);
}
.chalk-gov-prop-status {
  margin-left: auto;
  color: var(--chalk-fg-dim);
  font-size: var(--chalk-size-small);
}
.chalk-gov-tally {
  display: flex;
  align-items: center;
  gap: var(--chalk-s2);
  margin: var(--chalk-s2) 0;
}
.chalk-gov-tally-bar {
  flex: 1;
  height: 4px;
  background: var(--chalk-bg-elev-2);
  border-radius: 2px;
  overflow: hidden;
}
.chalk-gov-tally-fill {
  display: block;
  height: 100%;
  background: var(--chalk-accent);
}
.chalk-gov-tally-counts {
  color: var(--chalk-fg-dim);
  font-size: var(--chalk-size-small);
  white-space: nowrap;
}
.chalk-gov-prop-actions {
  display: flex;
  gap: var(--chalk-s2);
}
.chalk-composer-giphy {
  flex: 0 0 auto;
  align-self: stretch;
  padding: 0 var(--chalk-s2);
  background: transparent;
  color: var(--chalk-fg-muted);
  border: 1px solid var(--chalk-border);
  border-radius: var(--chalk-radius);
  font-family: inherit;
  font-size: var(--chalk-size-small);
  font-weight: 700;
  letter-spacing: 0.05em;
  cursor: pointer;
}
.chalk-composer-giphy:hover:not(:disabled) {
  color: var(--chalk-fg);
  border-color: var(--chalk-fg);
}
.chalk-composer-giphy:disabled {
  opacity: 0.4;
  cursor: not-allowed;
}
.chalk-giphy {
  display: inline-flex;
  flex-direction: column;
  gap: 2px;
  margin-top: var(--chalk-s1);
}
.chalk-giphy-img {
  display: block;
  max-width: min(320px, 100%);
  height: auto;
  border: 1px solid var(--chalk-border);
  border-radius: var(--chalk-radius);
  background: var(--chalk-bg-elev);
}
.chalk-giphy-tag {
  font-size: var(--chalk-size-small);
  color: var(--chalk-fg-muted);
}
.chalk-giphy-blocked {
  display: inline-flex;
  align-items: center;
  gap: var(--chalk-s2);
  margin-top: var(--chalk-s1);
  padding: 2px var(--chalk-s2);
  border: 1px dashed var(--chalk-border);
  border-radius: var(--chalk-radius);
  color: var(--chalk-fg-muted);
  font-size: var(--chalk-size-small);
  max-width: 100%;
}
.chalk-giphy-blocked-icon {
  color: var(--chalk-fg-dim);
}
.chalk-giphy-blocked-text {
  overflow-wrap: anywhere;
}
.chalk-giphy-enable {
  flex: 0 0 auto;
  background: transparent;
  color: var(--chalk-fg-bright);
  border: 1px solid var(--chalk-border);
  border-radius: var(--chalk-radius);
  font-family: inherit;
  font-size: var(--chalk-size-small);
  padding: 0 var(--chalk-s2);
  cursor: pointer;
}
.chalk-giphy-enable:hover {
  border-color: var(--chalk-fg);
  color: var(--chalk-fg);
}
.chalk-giphy-picker-backdrop {
  position: fixed;
  inset: 0;
  background: rgba(0, 0, 0, 0.6);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 60;
}
.chalk-giphy-picker {
  display: flex;
  flex-direction: column;
  width: min(560px, 92vw);
  max-height: 80vh;
  background: var(--chalk-bg);
  border: 1px solid var(--chalk-border);
  border-radius: var(--chalk-radius);
  overflow: hidden;
}
.chalk-giphy-picker-search {
  display: flex;
  gap: var(--chalk-s2);
  padding: var(--chalk-s2);
  border-bottom: 1px solid var(--chalk-border);
}
.chalk-giphy-picker-input {
  flex: 1 1 auto;
  background: var(--chalk-bg-elev);
  color: var(--chalk-fg);
  border: 1px solid var(--chalk-border);
  border-radius: var(--chalk-radius);
  font-family: inherit;
  font-size: var(--chalk-size-base);
  padding: var(--chalk-s1) var(--chalk-s2);
}
.chalk-giphy-picker-close {
  flex: 0 0 auto;
  background: transparent;
  color: var(--chalk-fg-muted);
  border: 1px solid var(--chalk-border);
  border-radius: var(--chalk-radius);
  font-family: inherit;
  cursor: pointer;
  padding: 0 var(--chalk-s2);
}
.chalk-giphy-picker-close:hover {
  color: var(--chalk-fg);
  border-color: var(--chalk-fg);
}
.chalk-giphy-picker-body {
  flex: 1 1 auto;
  overflow-y: auto;
  padding: var(--chalk-s2);
}
.chalk-giphy-picker-hint {
  color: var(--chalk-fg-muted);
  font-size: var(--chalk-size-small);
  margin: var(--chalk-s2) 0;
}
.chalk-giphy-picker-error {
  color: var(--chalk-fg-bright);
}
.chalk-giphy-picker-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(120px, 1fr));
  gap: var(--chalk-s2);
}
.chalk-giphy-picker-tile {
  display: block;
  padding: 0;
  border: 1px solid var(--chalk-border);
  border-radius: var(--chalk-radius);
  background: var(--chalk-bg-elev);
  cursor: pointer;
  overflow: hidden;
}
.chalk-giphy-picker-tile:hover {
  border-color: var(--chalk-fg);
}
.chalk-giphy-picker-tile img {
  display: block;
  width: 100%;
  height: auto;
}
.chalk-giphy-picker-attribution {
  margin: 0;
  padding: var(--chalk-s1) var(--chalk-s2);
  border-top: 1px solid var(--chalk-border);
  color: var(--chalk-fg-muted);
  font-size: var(--chalk-size-small);
  text-align: right;
  letter-spacing: 0.08em;
}
.chalk-chglyph {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 1.2em;
  flex: 0 0 auto;
  color: var(--chalk-fg-muted);
  user-select: none;
}
.chalk-chglyph-svg {
  display: block;
}
.chalk-chglyph--voice {
  color: var(--chalk-fg-dim);
}
.chalk-chglyph--header {
  margin-right: var(--chalk-s1);
  color: var(--chalk-fg-dim);
}
.chalk-sidebar-item--active .chalk-chglyph {
  color: var(--chalk-fg-bright);
}
.chalk-sidebar-item-row {
  display: flex;
  align-items: center;
  gap: 2px;
  min-width: 0;
}
.chalk-sidebar-item--voicech {
  flex-direction: column;
  align-items: stretch;
}
.chalk-sidebar-voicecount {
  margin-left: auto;
  font-size: 10px;
  color: var(--chalk-fg-dim);
  border: 1px solid var(--chalk-border);
  padding: 0 4px;
  border-radius: var(--chalk-radius);
}
.chalk-sidebar-occupants {
  list-style: none;
  margin: 2px 0 2px 1.2em;
  padding: 0;
}
.chalk-sidebar-occupant {
  display: flex;
  align-items: center;
  gap: 4px;
  font-size: 12px;
  color: var(--chalk-fg-dim);
  line-height: 1.6;
  min-width: 0;
}
.chalk-sidebar-occupant-name {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.chalk-voice-badge {
  flex: 0 0 auto;
  opacity: 0.85;
}
.chalk-voice-badge--muted {
  color: var(--chalk-error);
}
.chalk-voice-panel {
  border: 1px solid var(--chalk-border);
  padding: var(--chalk-s3);
  margin-bottom: var(--chalk-s3);
  background: var(--chalk-bg-elev);
}
.chalk-voice-lobby {
  display: flex;
  align-items: center;
  gap: var(--chalk-s2);
  flex-wrap: wrap;
}
.chalk-voice-note {
  font-size: 12px;
  color: var(--chalk-fg-dim);
}
.chalk-voice-error {
  margin-top: var(--chalk-s2);
  font-size: 12px;
  color: var(--chalk-error);
}
.chalk-voice-disabled {
  font-size: 12px;
  color: var(--chalk-fg-dim);
}
.chalk-voice-dock {
  margin: var(--chalk-s2) var(--chalk-s2) 0 var(--chalk-s2);
  border: 1px solid var(--chalk-border);
  background: var(--chalk-bg-elev);
  padding: var(--chalk-s2);
  display: flex;
  flex-direction: column;
  gap: var(--chalk-s1);
  flex: 0 0 auto;
}
.chalk-voice-dock-row {
  display: flex;
  align-items: center;
  gap: var(--chalk-s2);
  min-width: 0;
}
.chalk-voice-dock-status {
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: var(--chalk-fg-bright);
}
.chalk-voice-dock-status[data-connected=false] {
  color: var(--chalk-warn);
}
.chalk-voice-dock-duration {
  margin-left: auto;
  font-size: 11px;
  color: var(--chalk-fg-dim);
  font-variant-numeric: tabular-nums;
}
.chalk-voice-dock-channel {
  background: none;
  border: none;
  padding: 0;
  font: inherit;
  font-size: 12px;
  color: var(--chalk-fg);
  cursor: pointer;
  text-align: left;
  min-width: 0;
  display: inline-flex;
  align-items: center;
  gap: 4px;
}
.chalk-voice-dock-channame {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  min-width: 0;
}
.chalk-chglyph--inline {
  width: auto;
}
.chalk-voice-dock-channel:hover {
  color: var(--chalk-fg-bright);
  text-decoration: underline;
}
.chalk-voice-dock-spacer {
  flex: 1 1 auto;
}
.chalk-voice-audionudge {
  font-size: 11px;
  color: var(--chalk-warn);
  cursor: default;
}
.chalk-voice-pip {
  position: relative;
  display: block;
  width: 100%;
  aspect-ratio: 16 / 9;
  max-height: 96px;
  padding: 0;
  margin-bottom: var(--chalk-s1);
  border: 1px solid var(--chalk-border);
  background: #000;
  cursor: pointer;
  overflow: hidden;
}
.chalk-voice-pip:hover {
  border-color: var(--chalk-fg-dim);
}
.chalk-voice-pip-video {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  background: #000;
}
.chalk-voice-pip-mono {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 28px;
  color: var(--chalk-fg-muted);
  background: var(--chalk-bg-elev-2);
  user-select: none;
}
.chalk-voice-pip-hint {
  position: absolute;
  right: 3px;
  bottom: 3px;
  font-size: 10px;
  color: var(--chalk-fg-bright);
  background: rgba(0, 0, 0, 0.7);
  padding: 0 4px;
  opacity: 0;
  transition: opacity 0.1s;
}
.chalk-voice-pip:hover .chalk-voice-pip-hint {
  opacity: 1;
}
.chalk-voice-stage {
  display: flex;
  flex-direction: column;
  gap: var(--chalk-s2);
}
.chalk-voice-big {
  display: flex;
  justify-content: center;
}
.chalk-voice-strip {
  display: flex;
  gap: var(--chalk-s2);
  overflow-x: auto;
  padding-bottom: 2px;
}
.chalk-voice-peer {
  position: relative;
  background: #000;
  border: 1px solid var(--chalk-border);
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
}
.chalk-voice-peer--big {
  width: 100%;
  max-width: 960px;
  aspect-ratio: 16 / 9;
  max-height: 52vh;
}
.chalk-voice-peer--strip {
  flex: 0 0 auto;
  width: 148px;
  aspect-ratio: 16 / 9;
  cursor: pointer;
}
.chalk-voice-peer--strip:hover {
  border-color: var(--chalk-fg-dim);
}
.chalk-voice-video {
  width: 100%;
  height: 100%;
  object-fit: contain;
  background: #000;
}
.chalk-voice-video-mirrored {
  transform: scaleX(-1);
}
.chalk-voice-avatar {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 28px;
  color: var(--chalk-fg-muted);
  background: var(--chalk-bg-elev-2);
  user-select: none;
}
.chalk-voice-avatar--overlay {
  position: absolute;
  inset: 0;
}
.chalk-voice-peer--big .chalk-voice-avatar {
  font-size: 64px;
}
.chalk-voice-peer-label {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  display: flex;
  align-items: center;
  gap: 4px;
  padding: 2px 6px;
  font-size: 11px;
  background: rgba(0, 0, 0, 0.65);
  color: var(--chalk-fg);
}
.chalk-voice-peer--strip .chalk-voice-peer-label {
  font-size: 10px;
  padding: 1px 4px;
}
.chalk-voice-peer-name {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.chalk-voice-peer-flag {
  flex: 0 0 auto;
  border: 1px solid var(--chalk-border);
  padding: 0 3px;
  font-size: 9px;
  text-transform: uppercase;
  color: var(--chalk-fg-dim);
}
.chalk-voice-peer-conn {
  margin-left: auto;
  font-size: 10px;
  color: var(--chalk-warn);
}
.chalk-voice-peer-flag--local {
  color: var(--chalk-error);
  border-color: var(--chalk-error);
}
.chalk-voice-peer-audio {
  margin-left: auto;
  display: inline-flex;
  align-items: center;
  gap: 6px;
}
.chalk-voice-peer-conn + .chalk-voice-peer-audio,
.chalk-voice-peer-audio + .chalk-voice-peer-conn {
  margin-left: 6px;
}
.chalk-voice-localmute {
  background: transparent;
  border: 1px dotted var(--chalk-border);
  color: var(--chalk-fg-dim);
  font: inherit;
  font-size: 9px;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  padding: 0 4px;
  cursor: pointer;
}
.chalk-voice-localmute:hover {
  color: var(--chalk-fg);
  border-color: var(--chalk-fg-dim);
}
.chalk-voice-localmute--on {
  color: var(--chalk-error);
  border-color: var(--chalk-error);
}
.chalk-voice-volume {
  -webkit-appearance: none;
  appearance: none;
  width: 90px;
  height: 2px;
  background: var(--chalk-border);
  outline: none;
  cursor: pointer;
}
.chalk-voice-volume::-webkit-slider-thumb {
  -webkit-appearance: none;
  appearance: none;
  width: 8px;
  height: 12px;
  background: var(--chalk-fg);
  border: none;
}
.chalk-voice-volume::-moz-range-thumb {
  width: 8px;
  height: 12px;
  background: var(--chalk-fg);
  border: none;
  border-radius: 0;
}
.chalk-voice-bar {
  display: flex;
  align-items: center;
  gap: var(--chalk-s2);
  margin-top: var(--chalk-s2);
  flex-wrap: wrap;
}
.chalk-voice-bar-spacer {
  flex: 1 1 auto;
}
.chalk-voice-duration {
  font-size: 12px;
  color: var(--chalk-fg-bright);
  font-variant-numeric: tabular-nums;
}
.chalk-voice-relay {
  font-size: 10px;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  color: var(--chalk-fg-dim);
  border: 1px dashed var(--chalk-border);
  padding: 1px 4px;
}
.chalk-voice-ctl {
  font-size: 12px;
}
.chalk-voice-ctl--off {
  color: var(--chalk-warn);
  border-color: var(--chalk-warn);
}
.chalk-voice-ctl--on {
  color: var(--chalk-fg-bright);
  border-color: var(--chalk-fg-bright);
}
.chalk-voice-ctl--leave {
  color: var(--chalk-error);
  border-color: var(--chalk-error);
}
.chalk-voice-drawer {
  margin-top: var(--chalk-s2);
  border: 1px dashed var(--chalk-border);
  padding: var(--chalk-s2);
  font-size: 11px;
}
.chalk-voice-drawer-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--chalk-s2);
  margin-bottom: var(--chalk-s1);
}
.chalk-voice-drawer-title {
  text-transform: uppercase;
  letter-spacing: 0.1em;
  color: var(--chalk-fg-dim);
}
.chalk-voice-drawer-stats {
  margin-bottom: var(--chalk-s1);
}
.chalk-voice-drawer-pair {
  color: var(--chalk-fg);
  line-height: 1.6;
}
.chalk-voice-drawer-peer {
  color: var(--chalk-fg-bright);
}
.chalk-voice-drawer-events {
  max-height: 140px;
  overflow-y: auto;
  border-top: 1px solid var(--chalk-border);
  padding-top: var(--chalk-s1);
}
.chalk-voice-drawer-event {
  color: var(--chalk-fg-dim);
  line-height: 1.5;
  white-space: pre-wrap;
  word-break: break-word;
}
.chalk-voice-drawer-time {
  color: var(--chalk-fg-muted);
}
.chalk-voice-drawer-hint {
  margin-top: var(--chalk-s1);
  color: var(--chalk-fg-muted);
}
.chalk-voice-drawer-hint code {
  color: var(--chalk-fg-dim);
  user-select: all;
}
/*# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vc3JjL3RoZW1lLmNzcyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiLypcbiAqIGNoYWxrIC0tIHRoZW1lLmNzcyAobWF0cml4LWdyZWVuLW9uLWJsYWNrLCBIYWNrIGZvbnQpXG4gKlxuICogRGVzaWduIHRva2VucyBsaXZlIGFzIENTUyBjdXN0b20gcHJvcGVydGllcyBvbiA6cm9vdCBzbyBmdXR1cmVcbiAqIHRoZW1lcyAoYSBcImRpbVwiIG9yIFwiaGlnaC1jb250cmFzdFwiIHZhcmlhbnQpIGNhbiBvdmVycmlkZSBieSBzZXR0aW5nXG4gKiBkYXRhLXRoZW1lPVwiZGltXCIgb24gPGh0bWw+LiBQaGFzZSAwNyBzaGlwcyBvbmx5IHRoZSBkZWZhdWx0IHRoZW1lLlxuICpcbiAqIEhhY2sgZm9udCBpcyBidW5kbGVkIGxvY2FsbHkgc28gdGhlIHBhZ2UgcmVuZGVycyB0aGUgcmlnaHQgZ2x5cGhzXG4gKiBldmVuIHdpdGggbm8gbmV0d29yayAtLSBmb250cy8gY29udGFpbnMgdGhlIHdvZmYyIChwaGFzZSAwNyBzaGlwc1xuICogYSBwbGFjZWhvbGRlcjsgZHJvcCBpbiB0aGUgcmVhbCBIYWNrIGZvbnQgZmlsZSB0aGVyZSkuXG4gKlxuICogTm8gQ1NTIGZyYW1ld29yayAtLSB0aGUgd2hvbGUgc2hlZXQgaXMgfjYgS0IgYWZ0ZXIgbWluaWZ5LlxuICovXG5cbi8qIFBoYXNlIDA3IHNoaXBzIHdpdGhvdXQgYSBidW5kbGVkIGZvbnQgZmlsZS4gVGhlIGZvbnQgY2hhaW5cbiAqIGJlbG93IG5hbWVzIFwiSGFja1wiIGZpcnN0OyBPUyBtb25vc3BhY2UgZmFsbGJhY2sgY292ZXJzIHRoZVxuICogZ2FwLiBUbyBlbmFibGUgYSByZWFsIGZvbnQgbGF0ZXIsIGFkZCBhbiBAZm9udC1mYWNlIGJsb2NrXG4gKiBoZXJlIHdpdGggYSBSRUxBVElWRSB1cmwgc28gZXNidWlsZCBjYW4gcmVzb2x2ZSBpdC4gKi9cblxuOnJvb3Qge1xuICAvKiBQYWxldHRlIC0tIG1hdHJpeCBncmVlbiB0dW5lZCBqdXN0IGEgaGFpciBvZmYgcHVyZSAjMDBGRjQxIHNvIGl0XG4gICAgIGlzbid0IHJldGluYS12aWJyYXRpbmcgb24gT0xFRC4gKi9cbiAgLS1jaGFsay1iZzogICAgICAgICAgICMwMDAwMDA7XG4gIC0tY2hhbGstYmctZWxldjogICAgICAjMDAxYTAwO1xuICAtLWNoYWxrLWJnLWVsZXYtMjogICAgIzAwMmEwMDtcbiAgLS1jaGFsay1mZzogICAgICAgICAgICMwMGZmNDE7XG4gIC0tY2hhbGstZmctZGltOiAgICAgICAjNGNhOTZhO1xuICAtLWNoYWxrLWZnLWJyaWdodDogICAgIzVjZmZiMTtcbiAgLS1jaGFsay1mZy1tdXRlZDogICAgICMzMzgwNTA7XG4gIC0tY2hhbGstYm9yZGVyOiAgICAgICAjMDAzYTAwO1xuICAtLWNoYWxrLWFjY2VudDogICAgICAgIzVjZmZiMTtcbiAgLS1jaGFsay13YXJuOiAgICAgICAgICNmZmNjMDA7XG4gIC0tY2hhbGstZXJyb3I6ICAgICAgICAjZmY0ZDRkO1xuXG4gIC8qIFR5cGUgKi9cbiAgLS1jaGFsay1mb250OiBcIkhhY2tcIiwgdWktbW9ub3NwYWNlLCBcIkNhc2NhZGlhIENvZGVcIiwgXCJKZXRCcmFpbnMgTW9ub1wiLFxuICAgICAgICAgICAgICAgIFwiU0YgTW9ub1wiLCBDb25zb2xhcywgXCJSb2JvdG8gTW9ub1wiLCBtb25vc3BhY2U7XG4gIC0tY2hhbGstc2l6ZS1iYXNlOiAxNHB4O1xuICAtLWNoYWxrLXNpemUtc21hbGw6IDEycHg7XG4gIC0tY2hhbGstc2l6ZS10aXRsZTogMThweDtcblxuICAvKiBTcGFjaW5nIHJoeXRobSAtLSA0cHggZ3JpZCAqL1xuICAtLWNoYWxrLXMxOiA0cHg7XG4gIC0tY2hhbGstczI6IDhweDtcbiAgLS1jaGFsay1zMzogMTJweDtcbiAgLS1jaGFsay1zNDogMTZweDtcbiAgLS1jaGFsay1zNTogMjRweDtcbiAgLS1jaGFsay1zNjogMzJweDtcblxuICAvKiBSYWRpaS4gS2VlcCB0aW55IC0tIHRoZSBtYXRyaXgtZ3JlZW4gYWVzdGhldGljIGlzIHNoYXJwLiAqL1xuICAtLWNoYWxrLXJhZGl1czogMnB4O1xuXG4gIGNvbG9yLXNjaGVtZTogZGFyaztcbn1cblxuKiB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbmh0bWwsIGJvZHkge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGJhY2tncm91bmQ6IHZhcigtLWNoYWxrLWJnKTtcbiAgY29sb3I6IHZhcigtLWNoYWxrLWZnKTtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWNoYWxrLWZvbnQpO1xuICBmb250LXNpemU6IHZhcigtLWNoYWxrLXNpemUtYmFzZSk7XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gIG1pbi1oZWlnaHQ6IDEwMGR2aDtcbiAgLyogUHJldmVudCBpT1MgZG91YmxlLXRhcCB6b29tIG9uIHRoZSBjb21wb3NlciBidXR0b24gd2l0aG91dFxuICAgICBkaXNhYmxpbmcgcGluY2gtem9vbSBvbiB0ZXh0LiAqL1xuICB0b3VjaC1hY3Rpb246IG1hbmlwdWxhdGlvbjtcbn1cblxuOjpzZWxlY3Rpb24ge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1jaGFsay1mZyk7XG4gIGNvbG9yOiB2YXIoLS1jaGFsay1iZyk7XG59XG5cbi8qIC0tIEFwcCBzaGVsbCAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi5jaGFsay1hcHAge1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLXJvd3M6IGF1dG8gMWZyIGF1dG87XG4gIC8qIDMwLTVqOiBwaW4gdGhlIHNoZWxsIHRvIHRoZSB2aWV3cG9ydCAoaGVpZ2h0LCBub3QgbWluLWhlaWdodCkgc28gYSBzaG9ydFxuICAgICB3aW5kb3cgLS0gZS5nLiB3aXRoIGRldnRvb2xzIG9wZW4gLS0gbWFrZXMgdGhlIG1pZGRsZSByb3cgc2Nyb2xsIElOU0lERVxuICAgICBpbnN0ZWFkIG9mIHRoZSB3aG9sZSBwYWdlIG92ZXJmbG93aW5nIGJlbG93IHRoZSBmb2xkIChjb21wb3NlciBwdXNoZWRcbiAgICAgb2ZmLXNjcmVlbiwgc2lkZWJhciBkb2NrIGRyaWZ0aW5nKS4gbWluLWhlaWdodDowIGxldHMgdGhlIDFmciByb3cgc2hyaW5rXG4gICAgIGJlbG93IGl0cyBjb250ZW50IHNvIG1haW4vc2lkZWJhciBiZWNvbWUgdGhlIHNjcm9sbCBzdXJmYWNlcy4gKi9cbiAgaGVpZ2h0OiAxMDBkdmg7XG4gIG1pbi1oZWlnaHQ6IDA7XG4gIG1heC13aWR0aDogOTAwcHg7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBwYWRkaW5nOiAwIHZhcigtLWNoYWxrLXM0KTtcbn1cblxuLyogUGhhc2UgMDhiOiB0d28tY29sdW1uIGxheW91dCB3aXRoIGEgZml4ZWQtd2lkdGggc2lkZWJhci5cbiAgIFRoZSBoZWFkZXIgYW5kIGZvb3RlciBzcGFuIGJvdGggY29sdW1ucy4gKi9cbi5jaGFsay1hcHAtLXBoYXNlMDhiIHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAyMjBweCAxZnI7XG4gIGdyaWQtdGVtcGxhdGUtcm93czogYXV0byAxZnIgYXV0bztcbiAgZ3JpZC10ZW1wbGF0ZS1hcmVhczpcbiAgICBcImhlYWRlciBoZWFkZXJcIlxuICAgIFwic2lkZWJhciBtYWluXCJcbiAgICBcImZvb3RlciBmb290ZXJcIjtcbiAgLyogMzAtNWo6IGluaGVyaXQgdGhlIHZpZXdwb3J0LXBpbm5lZCBoZWlnaHQgZnJvbSAuY2hhbGstYXBwOyB0aGUgMWZyXG4gICAgIG1pZGRsZSByb3cgc2hyaW5rcyAobWluLWhlaWdodDowKSBzbyBzaWRlYmFyICsgbWFpbiBzY3JvbGwgaW50ZXJuYWxseVxuICAgICBhbmQgdGhlIGZvb3RlciBjb21wb3NlciBzdGF5cyBhbmNob3JlZCBhdCB0aGUgYm90dG9tLiAqL1xuICBoZWlnaHQ6IDEwMGR2aDtcbiAgbWluLWhlaWdodDogMDtcbiAgbWF4LXdpZHRoOiAxMTAwcHg7XG4gIGNvbHVtbi1nYXA6IHZhcigtLWNoYWxrLXMzKTtcbn1cbi5jaGFsay1hcHAtLXBoYXNlMDhiIC5jaGFsay1oZWFkZXIgIHsgZ3JpZC1hcmVhOiBoZWFkZXI7IH1cbi5jaGFsay1hcHAtLXBoYXNlMDhiIC5jaGFsay1zaWRlYmFyIHsgZ3JpZC1hcmVhOiBzaWRlYmFyOyB9XG4uY2hhbGstYXBwLS1waGFzZTA4YiAuY2hhbGstbWFpbiAgICB7IGdyaWQtYXJlYTogbWFpbjsgfVxuLmNoYWxrLWFwcC0tcGhhc2UwOGIgLmNoYWxrLWZvb3RlciAgeyBncmlkLWFyZWE6IGZvb3RlcjsgfVxuXG4uY2hhbGstaGVhZGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGJhc2VsaW5lO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIHBhZGRpbmc6IHZhcigtLWNoYWxrLXM0KSAwIHZhcigtLWNoYWxrLXMzKSAwO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tY2hhbGstYm9yZGVyKTtcbn1cblxuLmNoYWxrLWhlYWRlciBoMSB7XG4gIG1hcmdpbjogMDtcbiAgZm9udC1zaXplOiB2YXIoLS1jaGFsay1zaXplLXRpdGxlKTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDhlbTtcbiAgdGV4dC10cmFuc2Zvcm06IGxvd2VyY2FzZTtcbiAgY29sb3I6IHZhcigtLWNoYWxrLWZnLWJyaWdodCk7XG59XG5cbi5jaGFsay1tYWluIHtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgLyogMzAtNWo6IGFsbG93IHRoZSBncmlkIGl0ZW0gdG8gc2hyaW5rIGJlbG93IGl0cyBjb250ZW50IGhlaWdodCBzbyB0aGVcbiAgICAgbWVzc2FnZSBsaXN0IHNjcm9sbHMgYW5kIHRoZSBmb290ZXIgY29tcG9zZXIgc3RheXMgb24tc2NyZWVuLiAqL1xuICBtaW4taGVpZ2h0OiAwO1xuICBwYWRkaW5nOiB2YXIoLS1jaGFsay1zNCkgMDtcbn1cblxuLmNoYWxrLWZvb3RlciB7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1jaGFsay1ib3JkZXIpO1xuICBwYWRkaW5nOiB2YXIoLS1jaGFsay1zMykgMCB2YXIoLS1jaGFsay1zNCkgMDtcbn1cblxuLyogLS0gU3RhdHVzQmFyIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLmNoYWxrLXN0YXR1cyB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBnYXA6IHZhcigtLWNoYWxrLXMyKTtcbiAgZm9udC1zaXplOiB2YXIoLS1jaGFsay1zaXplLXNtYWxsKTtcbiAgY29sb3I6IHZhcigtLWNoYWxrLWZnLWRpbSk7XG59XG5cbi5jaGFsay1zdGF0dXMtZG90IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogOHB4O1xuICBoZWlnaHQ6IDhweDtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1jaGFsay1mZy1tdXRlZCk7XG59XG5cbi5jaGFsay1zdGF0dXMtZG90LS1vcGVuICAgICAgIHsgYmFja2dyb3VuZDogdmFyKC0tY2hhbGstZmcpOyBib3gtc2hhZG93OiAwIDAgNnB4IHZhcigtLWNoYWxrLWZnKTsgfVxuLmNoYWxrLXN0YXR1cy1kb3QtLWNvbm5lY3RpbmcgeyBiYWNrZ3JvdW5kOiB2YXIoLS1jaGFsay13YXJuKTsgYW5pbWF0aW9uOiBjaGFsay1wdWxzZSAxcyBpbmZpbml0ZTsgfVxuLmNoYWxrLXN0YXR1cy1kb3QtLWNsb3NlZCAgICAgeyBiYWNrZ3JvdW5kOiB2YXIoLS1jaGFsay1mZy1tdXRlZCk7IH1cbi5jaGFsay1zdGF0dXMtZG90LS1lcnJvciAgICAgIHsgYmFja2dyb3VuZDogdmFyKC0tY2hhbGstZXJyb3IpOyB9XG5cbkBrZXlmcmFtZXMgY2hhbGstcHVsc2Uge1xuICAwJSwgMTAwJSB7IG9wYWNpdHk6IDE7IH1cbiAgNTAlICAgICAgeyBvcGFjaXR5OiAwLjQ7IH1cbn1cblxuLmNoYWxrLXN0YXR1cy1kZXRhaWwge1xuICBjb2xvcjogdmFyKC0tY2hhbGstZmctbXV0ZWQpO1xufVxuXG4uY2hhbGstc3RhdHVzLXVzZXIge1xuICBjb2xvcjogdmFyKC0tY2hhbGstZmctYnJpZ2h0KTtcbiAgbWFyZ2luLWxlZnQ6IHZhcigtLWNoYWxrLXMyKTtcbn1cblxuLyogLS0gTWVzc2FnZXMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLmNoYWxrLW1lc3NhZ2VzIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZ2FwOiB2YXIoLS1jaGFsay1zMik7XG59XG5cbi5jaGFsay1tZXNzYWdlcy0tZW1wdHkge1xuICBkaXNwbGF5OiBncmlkO1xuICBwbGFjZS1pdGVtczogY2VudGVyO1xuICBtaW4taGVpZ2h0OiAyMDBweDtcbiAgY29sb3I6IHZhcigtLWNoYWxrLWZnLW11dGVkKTtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuXG4uY2hhbGstZW1wdHktaGludCB7XG4gIG1hcmdpbjogMDtcbn1cblxuLmNoYWxrLW1lc3NhZ2Uge1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDdjaCA5Y2ggMWZyO1xuICBnYXA6IHZhcigtLWNoYWxrLXMyKTtcbiAgcGFkZGluZzogdmFyKC0tY2hhbGstczEpIHZhcigtLWNoYWxrLXMyKTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tY2hhbGstcmFkaXVzKTtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG59XG5cbi5jaGFsay1tZXNzYWdlOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tY2hhbGstYmctZWxldik7XG59XG5cbi5jaGFsay1tZXNzYWdlLS1vd24ge1xuICBjb2xvcjogdmFyKC0tY2hhbGstZmctYnJpZ2h0KTtcbn1cblxuLmNoYWxrLW1lc3NhZ2UtdGltZSB7XG4gIGNvbG9yOiB2YXIoLS1jaGFsay1mZy1tdXRlZCk7XG4gIGZvbnQtc2l6ZTogdmFyKC0tY2hhbGstc2l6ZS1zbWFsbCk7XG4gIGFsaWduLXNlbGY6IGNlbnRlcjtcbn1cblxuLmNoYWxrLW1lc3NhZ2Utc2VuZGVyIHtcbiAgY29sb3I6IHZhcigtLWNoYWxrLWZnLWRpbSk7XG4gIGZvbnQtc2l6ZTogdmFyKC0tY2hhbGstc2l6ZS1zbWFsbCk7XG4gIGFsaWduLXNlbGY6IGNlbnRlcjtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG59XG5cbi5jaGFsay1tZXNzYWdlLWJvZHkge1xuICB3b3JkLWJyZWFrOiBicmVhay13b3JkO1xuICB3aGl0ZS1zcGFjZTogcHJlLXdyYXA7XG59XG5cbi8qIC0tIENvbXBvc2VyIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi5jaGFsay1jb21wb3NlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGdhcDogdmFyKC0tY2hhbGstczIpO1xufVxuXG4vKiBhdHQtMjogdGhlIGlucHV0IHJvdyAocGFwZXJjbGlwIHwgdGV4dGFyZWEgfCBzZW5kKS4gRmxleCBzbyBpdCB3b3JrcyB3aXRoXG4gICBvciB3aXRob3V0IHRoZSBwYXBlcmNsaXAgKHRocmVhZCBjb21wb3NlciBoYXMgbm8gYXR0YWNoIGJ1dHRvbikuICovXG4uY2hhbGstY29tcG9zZXItcm93IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZ2FwOiB2YXIoLS1jaGFsay1zMik7XG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xufVxuXG4uY2hhbGstY29tcG9zZXItaW5wdXQge1xuICBmbGV4OiAxIDEgYXV0bztcbiAgYmFja2dyb3VuZDogdmFyKC0tY2hhbGstYmctZWxldik7XG4gIGNvbG9yOiB2YXIoLS1jaGFsay1mZyk7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNoYWxrLWJvcmRlcik7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWNoYWxrLXJhZGl1cyk7XG4gIHBhZGRpbmc6IHZhcigtLWNoYWxrLXMyKSB2YXIoLS1jaGFsay1zMyk7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBmb250LXNpemU6IHZhcigtLWNoYWxrLXNpemUtYmFzZSk7XG4gIHJlc2l6ZTogdmVydGljYWw7XG4gIG1pbi1oZWlnaHQ6IDIuNGVtO1xuICBtYXgtaGVpZ2h0OiAzMGR2aDtcbn1cblxuLmNoYWxrLWNvbXBvc2VyLWlucHV0OmZvY3VzIHtcbiAgb3V0bGluZTogMXB4IHNvbGlkIHZhcigtLWNoYWxrLWZnKTtcbiAgb3V0bGluZS1vZmZzZXQ6IC0xcHg7XG4gIGJhY2tncm91bmQ6IHZhcigtLWNoYWxrLWJnLWVsZXYtMik7XG59XG5cbi5jaGFsay1jb21wb3Nlci1pbnB1dDo6cGxhY2Vob2xkZXIge1xuICBjb2xvcjogdmFyKC0tY2hhbGstZmctbXV0ZWQpO1xufVxuXG4uY2hhbGstY29tcG9zZXItaW5wdXQ6ZGlzYWJsZWQge1xuICBvcGFjaXR5OiAwLjU7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7XG59XG5cbi5jaGFsay1jb21wb3Nlci1zZW5kIHtcbiAgYWxpZ24tc2VsZjogc3RyZXRjaDtcbiAgcGFkZGluZzogMCB2YXIoLS1jaGFsay1zNCk7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBjb2xvcjogdmFyKC0tY2hhbGstZmcpO1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1jaGFsay1mZyk7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWNoYWxrLXJhZGl1cyk7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBmb250LXNpemU6IHZhcigtLWNoYWxrLXNpemUtYmFzZSk7XG4gIHRleHQtdHJhbnNmb3JtOiBsb3dlcmNhc2U7XG4gIGxldHRlci1zcGFjaW5nOiAwLjA1ZW07XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLmNoYWxrLWNvbXBvc2VyLXNlbmQ6aG92ZXI6bm90KDpkaXNhYmxlZCkge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1jaGFsay1mZyk7XG4gIGNvbG9yOiB2YXIoLS1jaGFsay1iZyk7XG59XG5cbi5jaGFsay1jb21wb3Nlci1zZW5kOmRpc2FibGVkIHtcbiAgb3BhY2l0eTogMC40O1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICBib3JkZXItY29sb3I6IHZhcigtLWNoYWxrLWZnLW11dGVkKTtcbiAgY29sb3I6IHZhcigtLWNoYWxrLWZnLW11dGVkKTtcbn1cblxuLyogLS0gYXR0LTI6IGNvbXBvc2VyIGF0dGFjaCBidXR0b24gKyBwZW5kaW5nIHRyYXkgLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5jaGFsay1jb21wb3Nlci1hdHRhY2gge1xuICBmbGV4OiAwIDAgYXV0bztcbiAgYWxpZ24tc2VsZjogc3RyZXRjaDtcbiAgcGFkZGluZzogMCB2YXIoLS1jaGFsay1zMyk7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBjb2xvcjogdmFyKC0tY2hhbGstZmctbXV0ZWQpO1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1jaGFsay1ib3JkZXIpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1jaGFsay1yYWRpdXMpO1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgZm9udC1zaXplOiB2YXIoLS1jaGFsay1zaXplLWJhc2UpO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG4uY2hhbGstY29tcG9zZXItYXR0YWNoOmhvdmVyOm5vdCg6ZGlzYWJsZWQpIHtcbiAgY29sb3I6IHZhcigtLWNoYWxrLWZnKTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jaGFsay1mZyk7XG59XG4uY2hhbGstY29tcG9zZXItYXR0YWNoOmRpc2FibGVkIHtcbiAgb3BhY2l0eTogMC40O1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xufVxuXG4uY2hhbGstY29tcG9zZXItdHJheSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgZ2FwOiB2YXIoLS1jaGFsay1zMik7XG59XG4uY2hhbGstY29tcG9zZXItY2hpcCB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBnYXA6IHZhcigtLWNoYWxrLXMyKTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiB2YXIoLS1jaGFsay1zMSkgdmFyKC0tY2hhbGstczIpO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1jaGFsay1iZy1lbGV2KTtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tY2hhbGstYm9yZGVyKTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tY2hhbGstcmFkaXVzKTtcbiAgZm9udC1zaXplOiB2YXIoLS1jaGFsay1zaXplLXNtYWxsKTtcbn1cbi5jaGFsay1jb21wb3Nlci1jaGlwLXRodW1iIHtcbiAgd2lkdGg6IDEuOGVtO1xuICBoZWlnaHQ6IDEuOGVtO1xuICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tY2hhbGstcmFkaXVzKTtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tY2hhbGstYm9yZGVyKTtcbn1cbi5jaGFsay1jb21wb3Nlci1jaGlwLWljb24ge1xuICBjb2xvcjogdmFyKC0tY2hhbGstZmctbXV0ZWQpO1xufVxuLmNoYWxrLWNvbXBvc2VyLWNoaXAtbmFtZSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBtYXgtd2lkdGg6IDE2ZW07XG59XG4uY2hhbGstY29tcG9zZXItY2hpcC1zaXplIHtcbiAgY29sb3I6IHZhcigtLWNoYWxrLWZnLW11dGVkKTtcbn1cbi5jaGFsay1jb21wb3Nlci1jaGlwLXJlbW92ZSB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IG5vbmU7XG4gIGNvbG9yOiB2YXIoLS1jaGFsay1mZy1tdXRlZCk7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIGZvbnQtc2l6ZTogdmFyKC0tY2hhbGstc2l6ZS1zbWFsbCk7XG4gIHBhZGRpbmc6IDAgMC4yZW07XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuLmNoYWxrLWNvbXBvc2VyLWNoaXAtcmVtb3ZlOmhvdmVyIHtcbiAgY29sb3I6IHZhcigtLWNoYWxrLWZnLWJyaWdodCk7XG59XG5cbi8qIC0tIGF0dC0zOiBkcmFnLWRyb3AgYWZmb3JkYW5jZSArIHBlci1pdGVtIHVwbG9hZCBwcm9ncmVzcyAtLS0tLS0tLSAqL1xuLmNoYWxrLWNvbXBvc2VyLS1kcmFnLWFjdGl2ZSB7XG4gIG91dGxpbmU6IDFweCBkYXNoZWQgdmFyKC0tY2hhbGstZmcpO1xuICBvdXRsaW5lLW9mZnNldDogMnB4O1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1jaGFsay1iZy1lbGV2KTtcbn1cbi5jaGFsay1jb21wb3Nlci1kcm9wLWhpbnQge1xuICBwYWRkaW5nOiB2YXIoLS1jaGFsay1zMSkgdmFyKC0tY2hhbGstczIpO1xuICBjb2xvcjogdmFyKC0tY2hhbGstZmctYnJpZ2h0KTtcbiAgZm9udC1zaXplOiB2YXIoLS1jaGFsay1zaXplLXNtYWxsKTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBib3JkZXI6IDFweCBkYXNoZWQgdmFyKC0tY2hhbGstZmcpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1jaGFsay1yYWRpdXMpO1xufVxuLmNoYWxrLWNvbXBvc2VyLWNoaXAtcHJvZ3Jlc3Mge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiA2ZW07XG4gIGhlaWdodDogNnB4O1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1jaGFsay1iZyk7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNoYWxrLWJvcmRlcik7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWNoYWxrLXJhZGl1cyk7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG4uY2hhbGstY29tcG9zZXItY2hpcC1wcm9ncmVzcy1maWxsIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogMTAwJTtcbiAgYmFja2dyb3VuZDogdmFyKC0tY2hhbGstZmcpO1xuICB0cmFuc2l0aW9uOiB3aWR0aCAwLjE1cyBsaW5lYXI7XG59XG5cbi8qIC0tIGF0dC0yOiBhdHRhY2htZW50cyBpbiB0aGUgbWVzc2FnZSBmZWVkIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG4uY2hhbGstbWVzc2FnZS1hdHRhY2htZW50cyB7XG4gIC8qIE9wdGlvbiBCOiB0aGUgaW1hZ2UgYmxvY2sgYnJlYWtzIG91dCB0byB0aGUgcm93J3MgbGVmdCBlZGdlICh1bmRlciB0aGVcbiAgICAgdGltZXN0YW1wKSBhbmQgc3BhbnMgdGhlIGZ1bGwgd2lkdGgsIHNvIG1lZGlhIHJlYWRzIGFzIGEgZGlzdGluY3QgYmxvY2sgYW5kXG4gICAgIHRoZSByZXBseSBpbmRpY2F0b3JzIGxpbmUgdXAgZGlyZWN0bHkgYmVuZWF0aCBpdC4gKi9cbiAgZ3JpZC1jb2x1bW46IDEgLyAtMTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZ2FwOiB2YXIoLS1jaGFsay1zMik7XG4gIG1hcmdpbi10b3A6IHZhcigtLWNoYWxrLXMxKTtcbn1cbi8qIGdpcGh5LWxheW91dDogYSBnaXBoeSBtZXNzYWdlIGJyZWFrcyBvdXQgdG8gdGhlIHJvdydzIGxlZnQgZWRnZSwgc2FtZSBhcyBhblxuICAgYXR0YWNobWVudCBpbWFnZSBibG9jaywgaW5zdGVhZCBvZiBzaXR0aW5nIGluIHRoZSBuYXJyb3cgYm9keSBjb2x1bW4uICovXG4uY2hhbGstbWVzc2FnZS1naXBoeSB7XG4gIGdyaWQtY29sdW1uOiAxIC8gLTE7XG59XG4uY2hhbGstYXR0YWNobWVudCB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tY2hhbGstc2l6ZS1zbWFsbCk7XG59XG4uY2hhbGstYXR0YWNobWVudC0tbG9hZGluZyxcbi5jaGFsay1hdHRhY2htZW50LS1sb2NrZWQge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiB2YXIoLS1jaGFsay1zMik7XG4gIHBhZGRpbmc6IHZhcigtLWNoYWxrLXMxKSB2YXIoLS1jaGFsay1zMik7XG4gIGNvbG9yOiB2YXIoLS1jaGFsay1mZy1tdXRlZCk7XG4gIGJvcmRlcjogMXB4IGRhc2hlZCB2YXIoLS1jaGFsay1ib3JkZXIpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1jaGFsay1yYWRpdXMpO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG4uY2hhbGstYXR0YWNobWVudC1pbWcge1xuICBkaXNwbGF5OiBibG9jaztcbiAgLyogTmF0dXJhbCBzaXplLCBuZXZlciB1cHNjYWxlZDogd2lkdGg6YXV0byBtZWFucyBhIHNtYWxsIG9yaWdpbmFsIHJlbmRlcnMgYXRcbiAgICAgaXRzIG93biBzaXplLiBtYXgtd2lkdGggY2FwcyBsYXJnZSBvcmlnaW5hbHMgYXQgNzIwcHggT1IgdGhlIGF2YWlsYWJsZVxuICAgICBjb2x1bW4gd2lkdGgsIHdoaWNoZXZlciBpcyBzbWFsbGVyIC0tIHNvIGl0IGRvd25zY2FsZXMgdG8gZml0IGFuZCB0cmFja3NcbiAgICAgd2luZG93IHJlc2l6ZXMgKHRoZSAxMDAlIGlzIHRoZSBjb2x1bW4pLiBoZWlnaHQ6YXV0byBrZWVwcyB0aGUgYXNwZWN0LiAqL1xuICB3aWR0aDogYXV0bztcbiAgbWF4LXdpZHRoOiBtaW4oNzIwcHgsIDEwMCUpO1xuICBoZWlnaHQ6IGF1dG87XG4gIG1heC1oZWlnaHQ6IDcwZHZoO1xuICBvYmplY3QtZml0OiBjb250YWluO1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1jaGFsay1ib3JkZXIpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1jaGFsay1yYWRpdXMpO1xuICBjdXJzb3I6IHpvb20taW47XG59XG4uY2hhbGstYXR0YWNobWVudC1pbWctLXByZXZpZXcge1xuICBmaWx0ZXI6IGJsdXIoMXB4KTtcbn1cbi5jaGFsay1hdHRhY2htZW50LWltZy0tZnVsbCB7XG4gIGZpbHRlcjogbm9uZTtcbn1cbi5jaGFsay1hdHRhY2htZW50LWltZy0tZXhwYW5kZWQge1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG1heC1oZWlnaHQ6IDgwZHZoO1xuICBjdXJzb3I6IHpvb20tb3V0O1xufVxuXG4vKiBMaWdodGJveDogY2xpY2sgYW4gaW1hZ2UgdG8gdmlldyBpdCBhdCBvcmlnaW5hbCBzaXplIG9uIGEgZGFyayBiYWNrZHJvcC4gKi9cbi5jaGFsay1hdHRhY2htZW50LWxpZ2h0Ym94IHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICBpbnNldDogMDtcbiAgei1pbmRleDogMTAwMDtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHBhZGRpbmc6IHZhcigtLWNoYWxrLXM0KTtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjkyKTtcbiAgY3Vyc29yOiB6b29tLW91dDtcbn1cbi5jaGFsay1hdHRhY2htZW50LWxpZ2h0Ym94LWltZyB7XG4gIG1heC13aWR0aDogOTV2dztcbiAgbWF4LWhlaWdodDogOTV2aDtcbiAgb2JqZWN0LWZpdDogY29udGFpbjtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tY2hhbGstYm9yZGVyKTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tY2hhbGstcmFkaXVzKTtcbn1cbi5jaGFsay1hdHRhY2htZW50LWxpZ2h0Ym94LWNhcHRpb24ge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IHZhcigtLWNoYWxrLXMzKTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjb2xvcjogdmFyKC0tY2hhbGstZmctbXV0ZWQpO1xuICBmb250LXNpemU6IHZhcigtLWNoYWxrLXNpemUtc21hbGwpO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cbi5jaGFsay1hdHRhY2htZW50LWltZy1wbGFjZWhvbGRlciB7XG4gIHdpZHRoOiAyMDBweDtcbiAgaGVpZ2h0OiAxMjBweDtcbiAgYmFja2dyb3VuZDogdmFyKC0tY2hhbGstYmctZWxldik7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNoYWxrLWJvcmRlcik7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWNoYWxrLXJhZGl1cyk7XG59XG4uY2hhbGstYXR0YWNobWVudC0tZmlsZSB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBnYXA6IHZhcigtLWNoYWxrLXMyKTtcbiAgcGFkZGluZzogdmFyKC0tY2hhbGstczIpIHZhcigtLWNoYWxrLXMzKTtcbiAgYmFja2dyb3VuZDogdmFyKC0tY2hhbGstYmctZWxldik7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNoYWxrLWJvcmRlcik7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWNoYWxrLXJhZGl1cyk7XG59XG4uY2hhbGstYXR0YWNobWVudC1maWxlLWljb24ge1xuICBjb2xvcjogdmFyKC0tY2hhbGstZmctbXV0ZWQpO1xufVxuLmNoYWxrLWF0dGFjaG1lbnQtZmlsZS1uYW1lIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIG1heC13aWR0aDogMThlbTtcbn1cbi5jaGFsay1hdHRhY2htZW50LWZpbGUtc2l6ZSB7XG4gIGNvbG9yOiB2YXIoLS1jaGFsay1mZy1tdXRlZCk7XG59XG4uY2hhbGstYXR0YWNobWVudC1kb3dubG9hZCB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBjb2xvcjogdmFyKC0tY2hhbGstZmcpO1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1jaGFsay1mZyk7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWNoYWxrLXJhZGl1cyk7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBmb250LXNpemU6IHZhcigtLWNoYWxrLXNpemUtc21hbGwpO1xuICB0ZXh0LXRyYW5zZm9ybTogbG93ZXJjYXNlO1xuICBwYWRkaW5nOiAwIHZhcigtLWNoYWxrLXMyKTtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuLmNoYWxrLWF0dGFjaG1lbnQtZG93bmxvYWQ6aG92ZXI6bm90KDpkaXNhYmxlZCkge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1jaGFsay1mZyk7XG4gIGNvbG9yOiB2YXIoLS1jaGFsay1iZyk7XG59XG4uY2hhbGstYXR0YWNobWVudC1kb3dubG9hZDpkaXNhYmxlZCB7XG4gIG9wYWNpdHk6IDAuNDtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbn1cblxuLyogLS0gRXJyb3JzIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLmNoYWxrLWVycm9ycyB7XG4gIG1hcmdpbi10b3A6IHZhcigtLWNoYWxrLXMyKTtcbiAgcGFkZGluZzogdmFyKC0tY2hhbGstczIpIHZhcigtLWNoYWxrLXMzKTtcbiAgYm9yZGVyLWxlZnQ6IDJweCBzb2xpZCB2YXIoLS1jaGFsay1lcnJvcik7XG4gIGJhY2tncm91bmQ6IHZhcigtLWNoYWxrLWJnLWVsZXYpO1xuICBmb250LXNpemU6IHZhcigtLWNoYWxrLXNpemUtc21hbGwpO1xufVxuXG4uY2hhbGstZXJyb3ItY29kZSB7XG4gIGNvbG9yOiB2YXIoLS1jaGFsay1lcnJvcik7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIG1hcmdpbi1yaWdodDogdmFyKC0tY2hhbGstczIpO1xufVxuXG4vKiAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuLyogUGhhc2UgMDhiOiBzaWRlYmFyLCBjaGFubmVsIGhlYWRlciwgbW9kYWwsIGZyaWVuZCBwaWNrZXIsIGJ1dHRvbnMgKi9cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi8qIC0tIFNpZGViYXIgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4uY2hhbGstc2lkZWJhciB7XG4gIGJvcmRlci1yaWdodDogMXB4IHNvbGlkIHZhcigtLWNoYWxrLWJvcmRlcik7XG4gIHBhZGRpbmc6IHZhcigtLWNoYWxrLXMzKSAwO1xuICBtaW4taGVpZ2h0OiAwOyAvKiBhbGxvdyBpbm5lciBvdmVyZmxvdyB0byBzY3JvbGwgKi9cbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbn1cblxuLmNoYWxrLXNpZGViYXItaW5uZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAvKiAzMC01Zzogc2hyaW5rYWJsZSBzbyB0aGUgcGlubmVkIHZvaWNlIGRvY2sgKHNpYmxpbmcsIGZsZXg6MCAwIGF1dG8pXG4gICAgIGFsd2F5cyBrZWVwcyBpdHMgc3BhY2Ugb24gYSBzaG9ydCB3aW5kb3cuIFRoZSBmcmllbmRzIGFuZCBjaGFubmVsc1xuICAgICBsaXN0cyBpbnNpZGUgYWxyZWFkeSBzY3JvbGwgb24gdGhlaXIgb3duIChiYXNlIC5jaGFsay1zaWRlYmFyLWxpc3QpLFxuICAgICBzbyBubyBzZWNvbmQgc2Nyb2xsIGNvbnRhaW5lciBpcyBpbnRyb2R1Y2VkIC0tIHRoZSBjaGFubmVsIHJvd3Mgc2Nyb2xsXG4gICAgIHdpdGhpbiB0aGVpciBsaXN0IGFuZCB0aGUgZG9jayBzdGF5cyBhIHZpc2libGUgZm9vdGVyLiAqL1xuICBmbGV4OiAxIDEgYXV0bztcbiAgbWluLWhlaWdodDogMDtcbn1cblxuLmNoYWxrLXNpZGViYXItaGVhZGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBwYWRkaW5nOiAwIHZhcigtLWNoYWxrLXMyKSB2YXIoLS1jaGFsay1zMikgdmFyKC0tY2hhbGstczIpO1xufVxuXG4uY2hhbGstc2lkZWJhci10aXRsZSB7XG4gIGZvbnQtc2l6ZTogdmFyKC0tY2hhbGstc2l6ZS1zbWFsbCk7XG4gIGNvbG9yOiB2YXIoLS1jaGFsay1mZy1kaW0pO1xuICB0ZXh0LXRyYW5zZm9ybTogbG93ZXJjYXNlO1xuICBsZXR0ZXItc3BhY2luZzogMC4wOGVtO1xufVxuXG4uY2hhbGstc2lkZWJhci1uZXcge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tY2hhbGstYm9yZGVyKTtcbiAgY29sb3I6IHZhcigtLWNoYWxrLWZnLWJyaWdodCk7XG4gIHdpZHRoOiAyNHB4O1xuICBoZWlnaHQ6IDI0cHg7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBmb250LXNpemU6IDE2cHg7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHBhZGRpbmc6IDA7XG59XG4uY2hhbGstc2lkZWJhci1uZXc6aG92ZXIge1xuICBib3JkZXItY29sb3I6IHZhcigtLWNoYWxrLWZnLWJyaWdodCk7XG4gIGJhY2tncm91bmQ6IHZhcigtLWNoYWxrLWJnLWVsZXYpO1xufVxuLmNoYWxrLXNpZGViYXItbmV3OmZvY3VzLXZpc2libGUge1xuICBvdXRsaW5lOiAxcHggc29saWQgdmFyKC0tY2hhbGstZmctYnJpZ2h0KTtcbiAgb3V0bGluZS1vZmZzZXQ6IDFweDtcbn1cblxuLmNoYWxrLXNpZGViYXItbGlzdCB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgZmxleDogMTtcbiAgbWluLWhlaWdodDogMDtcbn1cblxuLmNoYWxrLXNpZGViYXItZW1wdHkge1xuICBwYWRkaW5nOiB2YXIoLS1jaGFsay1zMik7XG4gIGNvbG9yOiB2YXIoLS1jaGFsay1mZy1kaW0pO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGZvbnQtc2l6ZTogdmFyKC0tY2hhbGstc2l6ZS1zbWFsbCk7XG59XG5cbi5jaGFsay1zaWRlYmFyLWl0ZW0ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIHBhZGRpbmc6IHZhcigtLWNoYWxrLXMyKTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBib3JkZXItbGVmdDogMnB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBjb2xvcjogdmFyKC0tY2hhbGstZmcpO1xufVxuLmNoYWxrLXNpZGViYXItaXRlbTpob3ZlciB7XG4gIGJhY2tncm91bmQ6IHZhcigtLWNoYWxrLWJnLWVsZXYpO1xufVxuLmNoYWxrLXNpZGViYXItaXRlbTpmb2N1cy12aXNpYmxlIHtcbiAgb3V0bGluZTogMXB4IHNvbGlkIHZhcigtLWNoYWxrLWZnLWJyaWdodCk7XG4gIG91dGxpbmUtb2Zmc2V0OiAtMXB4O1xufVxuLmNoYWxrLXNpZGViYXItaXRlbS0tYWN0aXZlIHtcbiAgYm9yZGVyLWxlZnQtY29sb3I6IHZhcigtLWNoYWxrLWZnLWJyaWdodCk7XG4gIGJhY2tncm91bmQ6IHZhcigtLWNoYWxrLWJnLWVsZXYpO1xuICBjb2xvcjogdmFyKC0tY2hhbGstZmctYnJpZ2h0KTtcbn1cblxuLmNoYWxrLXNpZGViYXItaXRlbS1uYW1lIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cbi5jaGFsay1zaWRlYmFyLWl0ZW0tdGFnLFxuLmNoYWxrLWNoYW5uZWwtaGVhZGVyLXRhZyB7XG4gIGZvbnQtc2l6ZTogMTBweDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMWVtO1xuICBjb2xvcjogdmFyKC0tY2hhbGstZmctZGltKTtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tY2hhbGstYm9yZGVyKTtcbiAgcGFkZGluZzogMXB4IDRweDtcbiAgbWFyZ2luLWxlZnQ6IHZhcigtLWNoYWxrLXMyKTtcbn1cblxuLyogZ292LTI6IGdvdmVybmFuY2UgbW9kZSBiYWRnZSAoY3Jvd24gPSBkaWN0YXRvciwgYmFsbG90IGJveCA9IGRlbW9jcmF0aWMpLiAqL1xuLmNoYWxrLW1vZGUtYmFkZ2Uge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgYWxpZ24tc2VsZjogY2VudGVyO1xuICBtYXJnaW4tbGVmdDogdmFyKC0tY2hhbGstczIpO1xuICBjb2xvcjogdmFyKC0tY2hhbGstZmctZGltKTtcbn1cblxuLmNoYWxrLW1vZGUtYmFkZ2UuY2hhbGstbW9kZS1kZW1vY3JhdGljIHtcbiAgY29sb3I6IHZhcigtLWNoYWxrLWFjY2VudCk7XG59XG5cbi8qIC0tIENoYW5uZWwgaGVhZGVyIChhYm92ZSBtZXNzYWdlcykgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4uY2hhbGstY2hhbm5lbC1oZWFkZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogYmFzZWxpbmU7XG4gIHBhZGRpbmc6IDAgMCB2YXIoLS1jaGFsay1zMykgMDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWNoYWxrLWJvcmRlcik7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLWNoYWxrLXMzKTtcbn1cblxuLmNoYWxrLWNoYW5uZWwtaGVhZGVyLW5hbWUge1xuICBmb250LXNpemU6IHZhcigtLWNoYWxrLXNpemUtYm9keSk7XG4gIGNvbG9yOiB2YXIoLS1jaGFsay1mZy1icmlnaHQpO1xuICBmb250LXdlaWdodDogNDAwO1xufVxuXG4vKiAtLSBFbmNyeXB0aW9uIGluZGljYXRvciArIGhvdmVyIHBvcG92ZXIgKHBoYXNlIDIzZy8yM2gpIC0tLS0tLS0tLS0gKi9cblxuLmNoYWxrLWVuYy1pbmRpY2F0b3Ige1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBtYXJnaW4tbGVmdDogdmFyKC0tY2hhbGstczIpO1xuICBhbGlnbi1zZWxmOiBjZW50ZXI7XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICBjdXJzb3I6IGRlZmF1bHQ7XG4gIG91dGxpbmU6IG5vbmU7XG59XG5cbi8qIHJlYWR5OiBrZXkgcHJlc2VudCAtPiBhY2NlbnQgKHNlY3VyZSkgKi9cbi5jaGFsay1lbmMtaW5kaWNhdG9yLmNoYWxrLWVuYy1yZWFkeSB7XG4gIGNvbG9yOiB2YXIoLS1jaGFsay1hY2NlbnQpO1xufVxuXG4vKiB3YWl0aW5nL2luaXRpYWxpemluZzogZW5jcnlwdGVkIGJ1dCBrZXkgbm90IGhlcmUgeWV0IC0+IG11dGVkICsgc29mdCBwdWxzZSAqL1xuLmNoYWxrLWVuYy1pbmRpY2F0b3IuY2hhbGstZW5jLXBlbmRpbmcge1xuICBjb2xvcjogdmFyKC0tY2hhbGstZmctbXV0ZWQpO1xuICBhbmltYXRpb246IGNoYWxrLWVuYy1wdWxzZSAxLjZzIGVhc2UtaW4tb3V0IGluZmluaXRlO1xufVxuXG5Aa2V5ZnJhbWVzIGNoYWxrLWVuYy1wdWxzZSB7XG4gIDAlLCAxMDAlIHsgb3BhY2l0eTogMC40NTsgfVxuICA1MCUgeyBvcGFjaXR5OiAwLjk7IH1cbn1cblxuLyogdGhlIHBvcG92ZXI6IGhpZGRlbiB1bnRpbCBob3Zlci9mb2N1cyBvZiB0aGUgaW5kaWNhdG9yICovXG4uY2hhbGstZW5jLXBvcG92ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogY2FsYygxMDAlICsgNnB4KTtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogNDA7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGdhcDogMnB4O1xuICBtaW4td2lkdGg6IDIyMHB4O1xuICBwYWRkaW5nOiB2YXIoLS1jaGFsay1zMikgdmFyKC0tY2hhbGstczMpO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1jaGFsay1iZywgIzBhMGYwYSk7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNoYWxrLWFjY2VudCk7XG4gIGJveC1zaGFkb3c6IDAgNHB4IDE2cHggcmdiYSgwLCAwLCAwLCAwLjUpO1xuICBjb2xvcjogdmFyKC0tY2hhbGstZmcpO1xuICBmb250LXNpemU6IDExcHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGN1cnNvcjogdGV4dDtcbn1cblxuLmNoYWxrLWVuYy1pbmRpY2F0b3I6aG92ZXIgLmNoYWxrLWVuYy1wb3BvdmVyLFxuLmNoYWxrLWVuYy1pbmRpY2F0b3I6Zm9jdXMgLmNoYWxrLWVuYy1wb3BvdmVyLFxuLmNoYWxrLWVuYy1pbmRpY2F0b3I6Zm9jdXMtd2l0aGluIC5jaGFsay1lbmMtcG9wb3ZlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG5cbi8qIHBlbmRpbmcgcG9wb3ZlciB1c2VzIGEgbXV0ZWQgYm9yZGVyIHNvIGl0IG1hdGNoZXMgdGhlIGljb24gc3RhdGUgKi9cbi5jaGFsay1lbmMtaW5kaWNhdG9yLmNoYWxrLWVuYy1wZW5kaW5nIC5jaGFsay1lbmMtcG9wb3ZlciB7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tY2hhbGstZmctbXV0ZWQpO1xufVxuXG4uY2hhbGstZW5jLXBvcC1oZWFkIHtcbiAgY29sb3I6IHZhcigtLWNoYWxrLWZnLWJyaWdodCk7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIG1hcmdpbi1ib3R0b206IDJweDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDJlbTtcbn1cblxuLmNoYWxrLWVuYy1wb3Atcm93IHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBnYXA6IHZhcigtLWNoYWxrLXMzKTtcbn1cblxuLmNoYWxrLWVuYy1wb3AtayB7XG4gIGNvbG9yOiB2YXIoLS1jaGFsay1mZy1kaW0pO1xufVxuXG4uY2hhbGstZW5jLXBvcC12IHtcbiAgY29sb3I6IHZhcigtLWNoYWxrLWFjY2VudCk7XG59XG5cbi8qIHBlbmRpbmc6IHZhbHVlcyBhcmUgbXV0ZWQsIG5vdCBhY2NlbnQsIHNvIGl0IGRvZXNuJ3QgcmVhZCBhcyBcInNlY3VyZWQgeWV0XCIgKi9cbi5jaGFsay1lbmMtaW5kaWNhdG9yLmNoYWxrLWVuYy1wZW5kaW5nIC5jaGFsay1lbmMtcG9wLXYge1xuICBjb2xvcjogdmFyKC0tY2hhbGstZmcpO1xufVxuXG4uY2hhbGstZW5jLXBvcC1ub3RlIHtcbiAgbWFyZ2luLXRvcDogNHB4O1xuICBwYWRkaW5nLXRvcDogNHB4O1xuICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tY2hhbGstYm9yZGVyKTtcbiAgY29sb3I6IHZhcigtLWNoYWxrLWZnLW11dGVkKTtcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbn1cblxuLyogLS0gTWFpbi1wYW5lIGVtcHR5IHN0YXRlIHdoZW4gbm8gY2hhbm5lbCBzZWxlY3RlZCAtLS0tLS0tLS0tLS0tLS0tICovXG5cbi5jaGFsay1tYWluLWVtcHR5IHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGhlaWdodDogMTAwJTtcbiAgY29sb3I6IHZhcigtLWNoYWxrLWZnLWRpbSk7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cblxuLyogLS0gTW9kYWwgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi5jaGFsay1tb2RhbC1iYWNrZHJvcCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgaW5zZXQ6IDA7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC43KTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHotaW5kZXg6IDEwMDtcbn1cblxuLmNoYWxrLW1vZGFsIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tY2hhbGstYmcpO1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1jaGFsay1mZy1icmlnaHQpO1xuICBtaW4td2lkdGg6IDM2MHB4O1xuICBtYXgtd2lkdGg6IDUwMHB4O1xuICB3aWR0aDogOTAlO1xuICAvKiBQaGFzZSA5LjdlOiBjYXAgdGhlIG1vZGFsIHRvIHRoZSB2aWV3cG9ydCBzbyBncm93aW5nIGNvbnRlbnRcbiAgICAgKFByb2ZpbGVQYW5lbCBhY2N1bXVsYXRlZCBtYW55IHNlY3Rpb25zKSBkb2Vzbid0IHNwaWxsIHBhc3RcbiAgICAgdGhlIGJvdHRvbS4gVGhlIGJvZHkgYmVjb21lcyB0aGUgc2Nyb2xsIHN1cmZhY2UuICovXG4gIG1heC1oZWlnaHQ6IDkwdmg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG59XG5cbi5jaGFsay1tb2RhbC1oZWFkZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIHBhZGRpbmc6IHZhcigtLWNoYWxrLXMzKSB2YXIoLS1jaGFsay1zNCk7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1jaGFsay1ib3JkZXIpO1xufVxuXG4uY2hhbGstbW9kYWwtaGVhZGVyIGgyIHtcbiAgbWFyZ2luOiAwO1xuICBmb250LXNpemU6IHZhcigtLWNoYWxrLXNpemUtYm9keSk7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGNvbG9yOiB2YXIoLS1jaGFsay1mZy1icmlnaHQpO1xuICB0ZXh0LXRyYW5zZm9ybTogbG93ZXJjYXNlO1xuICBsZXR0ZXItc3BhY2luZzogMC4wOGVtO1xufVxuXG4uY2hhbGstbW9kYWwtY2xvc2Uge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiBub25lO1xuICBjb2xvcjogdmFyKC0tY2hhbGstZmctZGltKTtcbiAgZm9udC1zaXplOiAyNHB4O1xuICBsaW5lLWhlaWdodDogMTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBwYWRkaW5nOiAwO1xuICB3aWR0aDogMjRweDtcbiAgaGVpZ2h0OiAyNHB4O1xufVxuLmNoYWxrLW1vZGFsLWNsb3NlOmhvdmVyIHtcbiAgY29sb3I6IHZhcigtLWNoYWxrLWZnLWJyaWdodCk7XG59XG5cbi8qIEdyb3VwIG9mIHRyYWlsaW5nIGJ1dHRvbnMgaW4gYSBtb2RhbCBoZWFkZXIgKHJlZnJlc2ggKyBjbG9zZSwgb3JcbiAgIGZ1dHVyZSBhY3Rpb25zKS4gUmlnaHQtYWxpZ25zIHVuZGVyIGZsZXgvc3BhY2UtYmV0d2VlbiBoZWFkZXIuICovXG4uY2hhbGstbW9kYWwtaGVhZGVyLWFjdGlvbnMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBnYXA6IHZhcigtLWNoYWxrLXMyKTtcbn1cblxuLyogUmVmcmVzaCBidXR0b246IHNhbWUgdmlzdWFsIHdlaWdodCBhcyB0aGUgY2xvc2UgXHUwMEQ3OyB1c2VzIFx1MjFCQiBnbHlwaC5cbiAgIFNwaW5zIHdoaWxlIHJlZnJlc2hpbmcgaXMgaW4gZmxpZ2h0LiAqL1xuLmNoYWxrLW1vZGFsLXJlZnJlc2gge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiBub25lO1xuICBjb2xvcjogdmFyKC0tY2hhbGstZmctZGltKTtcbiAgZm9udC1zaXplOiAxOHB4O1xuICBsaW5lLWhlaWdodDogMTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBwYWRkaW5nOiAwO1xuICB3aWR0aDogMjRweDtcbiAgaGVpZ2h0OiAyNHB4O1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG4uY2hhbGstbW9kYWwtcmVmcmVzaDpob3Zlcjpub3QoOmRpc2FibGVkKSB7XG4gIGNvbG9yOiB2YXIoLS1jaGFsay1mZy1icmlnaHQpO1xufVxuLmNoYWxrLW1vZGFsLXJlZnJlc2g6ZGlzYWJsZWQge1xuICBvcGFjaXR5OiAwLjU7XG4gIGN1cnNvcjogcHJvZ3Jlc3M7XG59XG4uY2hhbGstbW9kYWwtcmVmcmVzaC0tc3Bpbm5pbmcge1xuICBhbmltYXRpb246IGNoYWxrLXNwaW4gMC44cyBsaW5lYXIgaW5maW5pdGU7XG59XG5Aa2V5ZnJhbWVzIGNoYWxrLXNwaW4ge1xuICBmcm9tIHsgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7IH1cbiAgdG8gICB7IHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7IH1cbn1cblxuLmNoYWxrLW1vZGFsLWJvZHkge1xuICBwYWRkaW5nOiB2YXIoLS1jaGFsay1zNCk7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGdhcDogdmFyKC0tY2hhbGstczMpO1xuICAvKiBQaGFzZSA5LjdlOiBzY3JvbGwgaWYgdGhlIHNlY3Rpb24gc3RhY2sgaXMgdGFsbGVyIHRoYW4gdGhlXG4gICAgIHJlbWFpbmluZyBtb2RhbCBzcGFjZS4gVGhlIGhlYWRlciBzdGF5cyBwaW5uZWQgYmVjYXVzZSBpdCBsaXZlc1xuICAgICBvdXRzaWRlIHRoaXMgZWxlbWVudC4gKi9cbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgLyogQWxsb3cgZmxleCB0byBzaHJpbmsgdGhlIGJvZHkgYmVsb3cgaXRzIGNvbnRlbnQgaGVpZ2h0IHNvIHRoZVxuICAgICBzY3JvbGwgdGFrZXMgZWZmZWN0LiAoRGVmYXVsdCBtaW4taGVpZ2h0OiBhdXRvIHdvdWxkIHB1c2ggdGhlXG4gICAgIGJvZHkgdG8gaXRzIGNvbnRlbnQgaGVpZ2h0IGFuZCBidXN0IHRoZSBwYXJlbnQgbWF4LWhlaWdodC4pICovXG4gIG1pbi1oZWlnaHQ6IDA7XG59XG5cbi5jaGFsay1tb2RhbC1mb290ZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICBnYXA6IHZhcigtLWNoYWxrLXMyKTtcbiAgcGFkZGluZzogdmFyKC0tY2hhbGstczMpIHZhcigtLWNoYWxrLXM0KTtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWNoYWxrLWJvcmRlcik7XG59XG5cbi5jaGFsay1tb2RhbC1lcnJvciB7XG4gIGNvbG9yOiAjZmY1NTU1O1xuICBmb250LXNpemU6IHZhcigtLWNoYWxrLXNpemUtc21hbGwpO1xufVxuXG4vKiAtLSBGb3JtIGZpZWxkcyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLmNoYWxrLWZpZWxkIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZ2FwOiB2YXIoLS1jaGFsay1zMSk7XG59XG5cbi5jaGFsay1maWVsZC0tY2hlY2tib3gge1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBnYXA6IHZhcigtLWNoYWxrLXMyKTtcbn1cblxuLmNoYWxrLWZpZWxkLWxhYmVsIHtcbiAgZm9udC1zaXplOiB2YXIoLS1jaGFsay1zaXplLXNtYWxsKTtcbiAgY29sb3I6IHZhcigtLWNoYWxrLWZnLWRpbSk7XG4gIHRleHQtdHJhbnNmb3JtOiBsb3dlcmNhc2U7XG4gIGxldHRlci1zcGFjaW5nOiAwLjA4ZW07XG59XG5cbi5jaGFsay1maWVsZC1pbnB1dCB7XG4gIGJhY2tncm91bmQ6IHZhcigtLWNoYWxrLWJnLWVsZXYpO1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1jaGFsay1ib3JkZXIpO1xuICBjb2xvcjogdmFyKC0tY2hhbGstZmcpO1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgZm9udC1zaXplOiB2YXIoLS1jaGFsay1zaXplLWJvZHkpO1xuICBwYWRkaW5nOiB2YXIoLS1jaGFsay1zMik7XG59XG4uY2hhbGstZmllbGQtaW5wdXQ6Zm9jdXMge1xuICBvdXRsaW5lOiBub25lO1xuICBib3JkZXItY29sb3I6IHZhcigtLWNoYWxrLWZnLWJyaWdodCk7XG59XG5cbi5jaGFsay1maWVsZC1oaW50IHtcbiAgY29sb3I6IHZhcigtLWNoYWxrLWZnLWRpbSk7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgZm9udC1zaXplOiB2YXIoLS1jaGFsay1zaXplLXNtYWxsKTtcbiAgcGFkZGluZzogdmFyKC0tY2hhbGstczIpIDA7XG59XG5cbi8qIC0tIEZyaWVuZCBwaWNrZXIgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4uY2hhbGstZnJpZW5kLXBpY2tlciB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgbWF4LWhlaWdodDogMjAwcHg7XG4gIG92ZXJmbG93LXk6IGF1dG87XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNoYWxrLWJvcmRlcik7XG59XG5cbi5jaGFsay1mcmllbmQtcGlja2VyLWl0ZW0ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBnYXA6IHZhcigtLWNoYWxrLXMyKTtcbiAgcGFkZGluZzogdmFyKC0tY2hhbGstczIpO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG4uY2hhbGstZnJpZW5kLXBpY2tlci1pdGVtOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tY2hhbGstYmctZWxldik7XG59XG4uY2hhbGstZnJpZW5kLXBpY2tlci1pdGVtLS1zZWxlY3RlZCB7XG4gIGJhY2tncm91bmQ6IHZhcigtLWNoYWxrLWJnLWVsZXYpO1xuICBjb2xvcjogdmFyKC0tY2hhbGstZmctYnJpZ2h0KTtcbn1cblxuLmNoYWxrLWZyaWVuZC1waWNrZXItaWQge1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbn1cblxuLyogLS0gQnV0dG9ucyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi5jaGFsay1idXR0b24ge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tY2hhbGstYm9yZGVyKTtcbiAgY29sb3I6IHZhcigtLWNoYWxrLWZnKTtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIGZvbnQtc2l6ZTogdmFyKC0tY2hhbGstc2l6ZS1ib2R5KTtcbiAgcGFkZGluZzogdmFyKC0tY2hhbGstczIpIHZhcigtLWNoYWxrLXMzKTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB0ZXh0LXRyYW5zZm9ybTogbG93ZXJjYXNlO1xuICBsZXR0ZXItc3BhY2luZzogMC4wNGVtO1xufVxuLmNoYWxrLWJ1dHRvbjpob3ZlciB7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tY2hhbGstZmctYnJpZ2h0KTtcbiAgY29sb3I6IHZhcigtLWNoYWxrLWZnLWJyaWdodCk7XG59XG4uY2hhbGstYnV0dG9uOmZvY3VzLXZpc2libGUge1xuICBvdXRsaW5lOiAxcHggc29saWQgdmFyKC0tY2hhbGstZmctYnJpZ2h0KTtcbiAgb3V0bGluZS1vZmZzZXQ6IDFweDtcbn1cbi5jaGFsay1idXR0b246ZGlzYWJsZWQge1xuICBvcGFjaXR5OiAwLjU7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7XG59XG5cbi5jaGFsay1idXR0b24tLXByaW1hcnkge1xuICBib3JkZXItY29sb3I6IHZhcigtLWNoYWxrLWZnLWJyaWdodCk7XG4gIGNvbG9yOiB2YXIoLS1jaGFsay1mZy1icmlnaHQpO1xufVxuXG4uY2hhbGstYnV0dG9uLS1zZWNvbmRhcnkge1xuICAvKiBkZWZhdWx0IGFwcGVhcmFuY2U7IGV4cGxpY2l0IGNsYXNzIGZvciByZWFkYWJpbGl0eSAqL1xufVxuXG4vKiAtLSBQaGFzZSAwOWIgc3ViLXN0ZXAgNDogYXV0aCBmbG93IHNjcmVlbnMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi5jaGFsay1hdXRoIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIG1pbi1oZWlnaHQ6IDEwMGR2aDtcbiAgcGFkZGluZzogdmFyKC0tY2hhbGstczQpO1xufVxuXG4uY2hhbGstYXV0aC1jYXJkIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tY2hhbGstYmctZWxldik7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNoYWxrLWZnLWJyaWdodCk7XG4gIHBhZGRpbmc6IHZhcigtLWNoYWxrLXM1KTtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogNDgwcHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGdhcDogdmFyKC0tY2hhbGstczQpO1xufVxuXG4uY2hhbGstYXV0aC1jYXJkLS13aWRlIHtcbiAgbWF4LXdpZHRoOiA2NDBweDtcbn1cblxuLmNoYWxrLWF1dGgtaGVhZGVyIGgyIHtcbiAgbWFyZ2luOiAwIDAgdmFyKC0tY2hhbGstczIpIDA7XG4gIGZvbnQtc2l6ZTogdmFyKC0tY2hhbGstc2l6ZS10aXRsZSk7XG4gIGNvbG9yOiB2YXIoLS1jaGFsay1mZy1icmlnaHQpO1xufVxuXG4uY2hhbGstYXV0aC1zdWJ0aXRsZSB7XG4gIG1hcmdpbjogMDtcbiAgY29sb3I6IHZhcigtLWNoYWxrLWZnLWRpbSk7XG4gIGZvbnQtc2l6ZTogdmFyKC0tY2hhbGstc2l6ZS1zbWFsbCk7XG59XG5cbi5jaGFsay1hdXRoLXN1YnRpdGxlIHN0cm9uZyB7XG4gIGNvbG9yOiB2YXIoLS1jaGFsay1mZy1icmlnaHQpO1xufVxuXG4uY2hhbGstYXV0aC1mb3JtIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZ2FwOiB2YXIoLS1jaGFsay1zMyk7XG59XG5cbi5jaGFsay1hdXRoLWVycm9yIHtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tY2hhbGstZXJyb3IpO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgNzcsIDc3LCAwLjA4KTtcbiAgY29sb3I6IHZhcigtLWNoYWxrLWVycm9yKTtcbiAgcGFkZGluZzogdmFyKC0tY2hhbGstczMpO1xuICBmb250LXNpemU6IHZhcigtLWNoYWxrLXNpemUtc21hbGwpO1xufVxuXG4uY2hhbGstYXV0aC13YXJuaW5nIHtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tY2hhbGstd2Fybik7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyMDQsIDAsIDAuMDgpO1xuICBjb2xvcjogdmFyKC0tY2hhbGstd2Fybik7XG4gIHBhZGRpbmc6IHZhcigtLWNoYWxrLXMzKTtcbiAgZm9udC1zaXplOiB2YXIoLS1jaGFsay1zaXplLXNtYWxsKTtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbn1cblxuLmNoYWxrLWF1dGgtd2FybmluZyBzdHJvbmcge1xuICBjb2xvcjogdmFyKC0tY2hhbGstZmctYnJpZ2h0KTtcbn1cblxuLmNoYWxrLWZpZWxkLWVycm9yIHtcbiAgY29sb3I6IHZhcigtLWNoYWxrLWVycm9yKTtcbiAgZm9udC1zaXplOiB2YXIoLS1jaGFsay1zaXplLXNtYWxsKTtcbn1cblxuLmNoYWxrLWZpZWxkLW9wdGlvbmFsLFxuLmNoYWxrLWZpZWxkLXJlcXVpcmVkIHtcbiAgZm9udC1zaXplOiB2YXIoLS1jaGFsay1zaXplLXNtYWxsKTtcbiAgY29sb3I6IHZhcigtLWNoYWxrLWZnLW11dGVkKTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbn1cblxuLmNoYWxrLWZpZWxkLXJlcXVpcmVkIHtcbiAgY29sb3I6IHZhcigtLWNoYWxrLXdhcm4pO1xufVxuXG4uY2hhbGstYXV0aC1saW5rIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogbm9uZTtcbiAgY29sb3I6IHZhcigtLWNoYWxrLWFjY2VudCk7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBmb250LXNpemU6IHZhcigtLWNoYWxrLXNpemUtc21hbGwpO1xuICBwYWRkaW5nOiAwO1xuICBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0O1xufVxuXG4uY2hhbGstYXV0aC1saW5rOmhvdmVyIHtcbiAgY29sb3I6IHZhcigtLWNoYWxrLWZnLWJyaWdodCk7XG59XG5cbi5jaGFsay1hdXRoLWFjdGlvbnMtcm93IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZ2FwOiB2YXIoLS1jaGFsay1zMik7XG4gIGZsZXgtd3JhcDogd3JhcDtcbn1cblxuLmNoYWxrLWF1dGgtZ2F0ZSB7XG4gIGJvcmRlci10b3A6IDFweCBkYXNoZWQgdmFyKC0tY2hhbGstYm9yZGVyKTtcbiAgcGFkZGluZy10b3A6IHZhcigtLWNoYWxrLXMzKTtcbn1cblxuLmNoYWxrLWF1dGgtbWV0YSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGdhcDogdmFyKC0tY2hhbGstczIpO1xuICBmb250LXNpemU6IHZhcigtLWNoYWxrLXNpemUtc21hbGwpO1xuICBjb2xvcjogdmFyKC0tY2hhbGstZmctbXV0ZWQpO1xuICBib3JkZXItdG9wOiAxcHggZGFzaGVkIHZhcigtLWNoYWxrLWJvcmRlcik7XG4gIHBhZGRpbmctdG9wOiB2YXIoLS1jaGFsay1zMyk7XG59XG5cbi5jaGFsay1hdXRoLW1ldGEtZGV2LFxuLmNoYWxrLWF1dGgtbWV0YS13YXJuIHtcbiAgY29sb3I6IHZhcigtLWNoYWxrLXdhcm4pO1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1jaGFsay13YXJuKTtcbiAgcGFkZGluZzogMCB2YXIoLS1jaGFsay1zMSk7XG4gIGZvbnQtc2l6ZTogMTBweDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDVlbTtcbn1cblxuLmNoYWxrLWJ1dHRvbi0tcHJpbWFyeSB7XG4gIGJhY2tncm91bmQ6IHZhcigtLWNoYWxrLWZnKTtcbiAgY29sb3I6IHZhcigtLWNoYWxrLWJnKTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jaGFsay1mZyk7XG59XG5cbi5jaGFsay1idXR0b24tLXByaW1hcnk6aG92ZXI6bm90KDpkaXNhYmxlZCkge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1jaGFsay1mZy1icmlnaHQpO1xuICBib3JkZXItY29sb3I6IHZhcigtLWNoYWxrLWZnLWJyaWdodCk7XG4gIGNvbG9yOiB2YXIoLS1jaGFsay1iZyk7XG4gIC8qIFRoZSBiYXNlIC5jaGFsay1idXR0b246aG92ZXIgcnVsZSBzZXRzIGNvbG9yIHRvIGZnLWJyaWdodCwgd2hpY2hcbiAgICAgY29sbGlkZXMgd2l0aCB0aGUgYnJpZ2h0ZXIgYmFja2dyb3VuZCBvbiBwcmltYXJ5IGFuZCBtYWtlcyB0aGVcbiAgICAgbGFiZWwgaW52aXNpYmxlLiBSZS1zdGF0ZSB0aGUgZGFyayB0ZXh0IGNvbG9yIGhlcmUgc28gaXQgd2luc1xuICAgICBieSBsYXRlci1ydWxlIHByZWNlZGVuY2UuICovXG4gIGNvbG9yOiB2YXIoLS1jaGFsay1iZyk7XG59XG5cbi5jaGFsay1idXR0b24tLXByaW1hcnk6ZGlzYWJsZWQge1xuICBvcGFjaXR5OiAxO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1jaGFsay1iZy1lbGV2KTtcbiAgY29sb3I6IHZhcigtLWNoYWxrLWZnLW11dGVkKTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jaGFsay1ib3JkZXIpO1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xufVxuXG4uY2hhbGstcmVjb3Zlcnktd29yZHMge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IHZhcigtLWNoYWxrLXMzKTtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMywgMWZyKTtcbiAgZ2FwOiB2YXIoLS1jaGFsay1zMik7XG4gIGJhY2tncm91bmQ6IHZhcigtLWNoYWxrLWJnKTtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tY2hhbGstZmctYnJpZ2h0KTtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWNoYWxrLWZvbnQpO1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNjAwcHgpIHtcbiAgLmNoYWxrLXJlY292ZXJ5LXdvcmRzIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCAxZnIpO1xuICB9XG59XG5cbi5jaGFsay1yZWNvdmVyeS13b3JkIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZ2FwOiB2YXIoLS1jaGFsay1zMSk7XG4gIGFsaWduLWl0ZW1zOiBiYXNlbGluZTtcbn1cblxuLmNoYWxrLXJlY292ZXJ5LXdvcmQtaW5kZXgge1xuICBjb2xvcjogdmFyKC0tY2hhbGstZmctbXV0ZWQpO1xuICBmb250LXNpemU6IHZhcigtLWNoYWxrLXNpemUtc21hbGwpO1xuICBtaW4td2lkdGg6IDEuOGVtO1xuICB0ZXh0LWFsaWduOiByaWdodDtcbn1cblxuLmNoYWxrLXJlY292ZXJ5LXdvcmQtdGV4dCB7XG4gIGNvbG9yOiB2YXIoLS1jaGFsay1mZy1icmlnaHQpO1xuICBmb250LXNpemU6IHZhcigtLWNoYWxrLXNpemUtYmFzZSk7XG4gIHVzZXItc2VsZWN0OiBhbGw7XG59XG5cbi8qIHBoYXNlIDIyYy0zYzogdGhlIFwicmUtZW50ZXIgMyB3b3Jkc1wiIGNoYWxsZW5nZSB1bmRlciB0aGUgZGVjcnlwdGlvblxuICAgcGhyYXNlLiBFYWNoIGZpZWxkIGlzIGEgbm9ybWFsIC5jaGFsay1maWVsZCAobGFiZWwgb3ZlciBpbnB1dCk7IHRoaXNcbiAgIGp1c3Qgc3BhY2VzIHRoZSBncm91cC4gKi9cbi5jaGFsay1pZGVudGl0eS1jaGFsbGVuZ2Uge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBnYXA6IHZhcigtLWNoYWxrLXMzKTtcbiAgbWFyZ2luLXRvcDogdmFyKC0tY2hhbGstczQpO1xufVxuXG4vKiBwaGFzZSAwOWIgc3ViLXN0ZXAgNWI6IGNyb3NzLWxpbmsgYmV0d2VlbiBMb2dpblNjcmVlbiBhbmRcbiAgIFJlZ2lzdGVyU2NyZWVuIChcIm5vIGFjY291bnQ/IHJlZ2lzdGVyXCIgLyBcImhhdmUgYW4gYWNjb3VudD8gbG9nIGluXCIpLiAqL1xuLmNoYWxrLWF1dGgtYWx0IHtcbiAgbWFyZ2luLXRvcDogdmFyKC0tY2hhbGstczQpO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGZvbnQtc2l6ZTogdmFyKC0tY2hhbGstc2l6ZS1zbWFsbCk7XG4gIGNvbG9yOiB2YXIoLS1jaGFsay1mZy1tdXRlZCk7XG59XG5cbi5jaGFsay1hdXRoLWFsdCAuY2hhbGstYXV0aC1saW5rIHtcbiAgbWFyZ2luLWxlZnQ6IHZhcigtLWNoYWxrLXMxKTtcbn1cblxuLyogcGhhc2UgMDliIHN1Yi1zdGVwIDViOiBTdGF0dXNCYXIgZHJvcGRvd24gbWVudSAobG9nb3V0KS4gKi9cbi5jaGFsay1zdGF0dXMtbWVudSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4uY2hhbGstc3RhdHVzLW1lbnUtdHJpZ2dlciB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgY29sb3I6IHZhcigtLWNoYWxrLWZnKTtcbiAgZm9udDogaW5oZXJpdDtcbiAgZm9udC1zaXplOiB2YXIoLS1jaGFsay1zaXplLXNtYWxsKTtcbiAgcGFkZGluZzogdmFyKC0tY2hhbGstczEpIHZhcigtLWNoYWxrLXMyKTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBib3JkZXItcmFkaXVzOiAycHg7XG59XG5cbi5jaGFsay1zdGF0dXMtbWVudS10cmlnZ2VyOmhvdmVyLFxuLmNoYWxrLXN0YXR1cy1tZW51LXRyaWdnZXJbYXJpYS1leHBhbmRlZD1cInRydWVcIl0ge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1jaGFsay1iZy1lbGV2KTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jaGFsay1mZy1tdXRlZCk7XG59XG5cbi5jaGFsay1zdGF0dXMtbWVudS1wb3BvdmVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IGNhbGMoMTAwJSArIHZhcigtLWNoYWxrLXMxKSk7XG4gIHJpZ2h0OiAwO1xuICBtaW4td2lkdGg6IDhyZW07XG4gIGJhY2tncm91bmQ6IHZhcigtLWNoYWxrLWJnLWVsZXYpO1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1jaGFsay1mZy1tdXRlZCk7XG4gIGJveC1zaGFkb3c6IDAgMnB4IDhweCByZ2JhKDAsIDAsIDAsIDAuNCk7XG4gIHotaW5kZXg6IDEwO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xufVxuXG4uY2hhbGstc3RhdHVzLW1lbnUtaXRlbSB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IDA7XG4gIGNvbG9yOiB2YXIoLS1jaGFsay1mZyk7XG4gIGZvbnQ6IGluaGVyaXQ7XG4gIGZvbnQtc2l6ZTogdmFyKC0tY2hhbGstc2l6ZS1zbWFsbCk7XG4gIHBhZGRpbmc6IHZhcigtLWNoYWxrLXMyKSB2YXIoLS1jaGFsay1zMyk7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLmNoYWxrLXN0YXR1cy1tZW51LWl0ZW06aG92ZXIsXG4uY2hhbGstc3RhdHVzLW1lbnUtaXRlbTpmb2N1cyB7XG4gIGJhY2tncm91bmQ6IHZhcigtLWNoYWxrLWJnKTtcbiAgb3V0bGluZTogbm9uZTtcbn1cblxuLyogcGhhc2UgMDliIHN1Yi1zdGVwIDY6IHJlY292ZXJ5LWxvZ2luIHRleHRhcmVhICsgd2Fybi1zdGF0ZSBoaW50LiAqL1xuLmNoYWxrLWZpZWxkLWlucHV0LS10ZXh0YXJlYSB7XG4gIHJlc2l6ZTogdmVydGljYWw7XG4gIG1pbi1oZWlnaHQ6IDZlbTtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWNoYWxrLW1vbm8sIHVpLW1vbm9zcGFjZSwgbW9ub3NwYWNlKTtcbn1cblxuLmNoYWxrLWZpZWxkLWhpbnQtLXdhcm4ge1xuICBjb2xvcjogdmFyKC0tY2hhbGstd2Fybik7XG59XG5cbi8qID09PT09IFBoYXNlIDA5Yy0yOiBpbnZpdGVzICsgcHJvZmlsZSBwYW5lbHMgPT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKiBXaWRlciBtb2RhbCB2YXJpYW50IGZvciBQcm9maWxlUGFuZWwncyByb3RhdGUtcmVjb3Zlcnkgdmlldywgd2hpY2hcbiAgIHJldXNlcyBSZWNvdmVyeVNjcmVlbiAoZGVzaWduZWQgZm9yIHRoZSBhdXRoIGZsb3cncyB3aWRlIGNhcmQpLiAqL1xuLmNoYWxrLW1vZGFsLS13aWRlIHtcbiAgbWF4LXdpZHRoOiA3MjBweDtcbn1cblxuLyogQ29tbW9uIHR5cG9ncmFwaHkgaW5zaWRlIG1vZGFsIGJvZGllcyBmb3IgdGhlc2UgdHdvIHBhbmVsczogYSBzbWFsbFxuICAgdXBwZXJjYXNlLWlzaCBzZWN0aW9uIGhlYWRpbmcgdGhhdCBtYXRjaGVzIHRoZSBtb2RhbC1oZWFkZXIgc3R5bGUuICovXG4uY2hhbGstbW9kYWwtYm9keSBoMyB7XG4gIG1hcmdpbjogMCAwIHZhcigtLWNoYWxrLXMyKTtcbiAgZm9udC1zaXplOiB2YXIoLS1jaGFsay1zaXplLWJvZHkpO1xuICBmb250LXdlaWdodDogNDAwO1xuICBjb2xvcjogdmFyKC0tY2hhbGstZmctYnJpZ2h0KTtcbiAgdGV4dC10cmFuc2Zvcm06IGxvd2VyY2FzZTtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDhlbTtcbn1cblxuLmNoYWxrLW1vZGFsLWJvZHkgPiBzZWN0aW9uICsgc2VjdGlvbiB7XG4gIG1hcmdpbi10b3A6IHZhcigtLWNoYWxrLXM1KTtcbiAgcGFkZGluZy10b3A6IHZhcigtLWNoYWxrLXM1KTtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWNoYWxrLWJvcmRlcik7XG59XG5cbi8qIC0tLS0gSW52aXRlc1BhbmVsIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLmNoYWxrLWludml0ZXMtY3JlYXRlIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZ2FwOiB2YXIoLS1jaGFsay1zMik7XG59XG5cbi5jaGFsay1pbnZpdGVzLWxpc3Qtc2VjdGlvbiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGdhcDogdmFyKC0tY2hhbGstczIpO1xufVxuXG4uY2hhbGstaW52aXRlcy1saXN0IHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBnYXA6IHZhcigtLWNoYWxrLXMzKTtcbn1cblxuLmNoYWxrLWludml0ZS1yb3cge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBnYXA6IHZhcigtLWNoYWxrLXMxKTtcbiAgcGFkZGluZzogdmFyKC0tY2hhbGstczMpO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1jaGFsay1iZy1lbGV2KTtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tY2hhbGstYm9yZGVyKTtcbn1cblxuLmNoYWxrLWludml0ZS1yb3ctbWFpbiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgZ2FwOiB2YXIoLS1jaGFsay1zMik7XG59XG5cbi5jaGFsay1pbnZpdGUtZW1haWwge1xuICBmb250LXdlaWdodDogNTAwO1xuICBjb2xvcjogdmFyKC0tY2hhbGstZmctYnJpZ2h0KTtcbn1cblxuLmNoYWxrLWludml0ZS1zdGF0dXMge1xuICBmb250LXNpemU6IHZhcigtLWNoYWxrLXNpemUtc21hbGwpO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBsZXR0ZXItc3BhY2luZzogMC4xZW07XG4gIHBhZGRpbmc6IDJweCB2YXIoLS1jaGFsay1zMik7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNoYWxrLWJvcmRlcik7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWNoYWxrLXJhZGl1cyk7XG59XG5cbi5jaGFsay1pbnZpdGUtc3RhdHVzLS1hY3RpdmUge1xuICBjb2xvcjogdmFyKC0tY2hhbGstZmcpO1xuICBib3JkZXItY29sb3I6IHZhcigtLWNoYWxrLWZnKTtcbn1cblxuLmNoYWxrLWludml0ZS1zdGF0dXMtLXVzZWQge1xuICBjb2xvcjogdmFyKC0tY2hhbGstZmctbXV0ZWQpO1xuICBib3JkZXItY29sb3I6IHZhcigtLWNoYWxrLWZnLW11dGVkKTtcbn1cblxuLmNoYWxrLWludml0ZS1zdGF0dXMtLXJldm9rZWQge1xuICBjb2xvcjogdmFyKC0tY2hhbGstZmctZGltKTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jaGFsay1mZy1kaW0pO1xufVxuXG4uY2hhbGstaW52aXRlLXN0YXR1cy0tZXhwaXJlZCB7XG4gIGNvbG9yOiB2YXIoLS1jaGFsay13YXJuKTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jaGFsay13YXJuKTtcbn1cblxuLmNoYWxrLWludml0ZS1ub3RlIHtcbiAgZm9udC1zaXplOiB2YXIoLS1jaGFsay1zaXplLXNtYWxsKTtcbiAgY29sb3I6IHZhcigtLWNoYWxrLWZnLWRpbSk7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cblxuLmNoYWxrLWludml0ZS1tZXRhIHtcbiAgZm9udC1zaXplOiB2YXIoLS1jaGFsay1zaXplLXNtYWxsKTtcbiAgY29sb3I6IHZhcigtLWNoYWxrLWZnLW11dGVkKTtcbn1cblxuLmNoYWxrLWludml0ZS11cmwtcm93IHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiB2YXIoLS1jaGFsay1zMik7XG4gIG1hcmdpbi10b3A6IHZhcigtLWNoYWxrLXMxKTtcbn1cblxuLmNoYWxrLWludml0ZS11cmwge1xuICBmbGV4OiAxO1xuICBmb250LWZhbWlseTogdmFyKC0tY2hhbGstZm9udCk7XG4gIGZvbnQtc2l6ZTogdmFyKC0tY2hhbGstc2l6ZS1zbWFsbCk7XG4gIGNvbG9yOiB2YXIoLS1jaGFsay1mZyk7XG4gIGJhY2tncm91bmQ6IHZhcigtLWNoYWxrLWJnKTtcbiAgcGFkZGluZzogdmFyKC0tY2hhbGstczEpIHZhcigtLWNoYWxrLXMyKTtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tY2hhbGstYm9yZGVyKTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIG1pbi13aWR0aDogMDtcbn1cblxuLmNoYWxrLWludml0ZS1hY3Rpb25zIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgZ2FwOiB2YXIoLS1jaGFsay1zMik7XG4gIG1hcmdpbi10b3A6IHZhcigtLWNoYWxrLXMxKTtcbn1cblxuLyogLS0tLSBQcm9maWxlUGFuZWwgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4uY2hhbGstcHJvZmlsZS1pZGVudGl0eSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGdhcDogdmFyKC0tY2hhbGstczIpO1xufVxuXG4uY2hhbGstcHJvZmlsZS1maWVsZHMge1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IG1heC1jb250ZW50IDFmcjtcbiAgZ2FwOiB2YXIoLS1jaGFsay1zMikgdmFyKC0tY2hhbGstczQpO1xuICBtYXJnaW46IDA7XG59XG5cbi5jaGFsay1wcm9maWxlLWZpZWxkcyBkdCB7XG4gIGNvbG9yOiB2YXIoLS1jaGFsay1mZy1tdXRlZCk7XG4gIGZvbnQtc2l6ZTogdmFyKC0tY2hhbGstc2l6ZS1zbWFsbCk7XG4gIHRleHQtdHJhbnNmb3JtOiBsb3dlcmNhc2U7XG4gIGxldHRlci1zcGFjaW5nOiAwLjA1ZW07XG59XG5cbi5jaGFsay1wcm9maWxlLWZpZWxkcyBkZCB7XG4gIG1hcmdpbjogMDtcbiAgY29sb3I6IHZhcigtLWNoYWxrLWZnLWJyaWdodCk7XG4gIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7XG59XG5cbi5jaGFsay1wcm9maWxlLWZpZWxkcyBkZCBlbSB7XG4gIGNvbG9yOiB2YXIoLS1jaGFsay1mZy1tdXRlZCk7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cblxuLmNoYWxrLXByb2ZpbGUtZW1haWwtY2hhbmdlIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZ2FwOiB2YXIoLS1jaGFsay1zMik7XG59XG5cbi5jaGFsay1wcm9maWxlLXBlbmRpbmcge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBnYXA6IHZhcigtLWNoYWxrLXMyKTtcbiAgcGFkZGluZzogdmFyKC0tY2hhbGstczMpO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1jaGFsay1iZy1lbGV2KTtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tY2hhbGstYm9yZGVyKTtcbn1cblxuLmNoYWxrLXByb2ZpbGUtcGVuZGluZyBwIHtcbiAgbWFyZ2luOiAwO1xufVxuXG4uY2hhbGstcHJvZmlsZS1yb3RhdGUge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBnYXA6IHZhcigtLWNoYWxrLXMyKTtcbn1cblxuLyogSW5saW5lIGRpc21pc3MtbGluayBpbnNpZGUgYW4gZXJyb3IgYmFubmVyICh1c2VkIGJ5IEludml0ZXNQYW5lbFxuICAgcm93LWxldmVsIHJldm9rZSBlcnJvcikuICovXG4uY2hhbGstYXV0aC1lcnJvciAuY2hhbGstYXV0aC1saW5rIHtcbiAgbWFyZ2luLWxlZnQ6IHZhcigtLWNoYWxrLXMyKTtcbn1cblxuLyogLS0tLSBQaGFzZSAwOWQtMmI6IGFkbWluIG1vZGVyYXRpb24gcGFuZWwgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi5jaGFsay1hZG1pbiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMGR2aDtcbiAgYmFja2dyb3VuZDogdmFyKC0tY2hhbGstYmcpO1xuICBjb2xvcjogdmFyKC0tY2hhbGstZmcpO1xufVxuXG4uY2hhbGstYWRtaW4tLWZ1bGwge1xuICAvKiBXaGVuIHRoZSBhZG1pbiBwYW5lbCBpcyB0aGUgdG9wLWxldmVsIHZpZXcgKHJvdXRlID09PSBcImFkbWluXCIpLFxuICAgICBpdCBvd25zIHRoZSB3aG9sZSB2aWV3cG9ydC4gKi9cbiAgcG9zaXRpb246IGZpeGVkO1xuICBpbnNldDogMDtcbiAgei1pbmRleDogNTA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5jaGFsay1hZG1pbi1oZWFkZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBnYXA6IHZhcigtLWNoYWxrLXM0KTtcbiAgcGFkZGluZzogdmFyKC0tY2hhbGstczMpIHZhcigtLWNoYWxrLXM0KTtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWNoYWxrLWJvcmRlcik7XG4gIGJhY2tncm91bmQ6IHZhcigtLWNoYWxrLWJnLWVsZXYpO1xuICBmbGV4LXNocmluazogMDtcbn1cblxuLmNoYWxrLWFkbWluLWJhY2sge1xuICBmbGV4LXNocmluazogMDtcbn1cblxuLmNoYWxrLWFkbWluLXRpdGxlIHtcbiAgbWFyZ2luOiAwO1xuICBmb250LXNpemU6IHZhcigtLWNoYWxrLXNpemUtdGl0bGUpO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgZmxleC1zaHJpbms6IDA7XG59XG5cbi5jaGFsay1hZG1pbi10YWJzIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZ2FwOiB2YXIoLS1jaGFsay1zMik7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xufVxuXG4uY2hhbGstYWRtaW4tdGFiLWJ0biB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBjb2xvcjogdmFyKC0tY2hhbGstZmctZGltKTtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tY2hhbGstYm9yZGVyKTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tY2hhbGstcmFkaXVzKTtcbiAgcGFkZGluZzogdmFyKC0tY2hhbGstczIpIHZhcigtLWNoYWxrLXMzKTtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWNoYWxrLWZvbnQpO1xuICBmb250LXNpemU6IHZhcigtLWNoYWxrLXNpemUtYmFzZSk7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjFzLCBjb2xvciAwLjFzLCBib3JkZXItY29sb3IgMC4xcztcbn1cblxuLmNoYWxrLWFkbWluLXRhYi1idG46aG92ZXIge1xuICBjb2xvcjogdmFyKC0tY2hhbGstZmcpO1xuICBib3JkZXItY29sb3I6IHZhcigtLWNoYWxrLWZnLWRpbSk7XG59XG5cbi5jaGFsay1hZG1pbi10YWItYnRuLS1hY3RpdmUge1xuICBjb2xvcjogdmFyKC0tY2hhbGstYmcpO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1jaGFsay1mZyk7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tY2hhbGstZmcpO1xufVxuXG4uY2hhbGstYWRtaW4tdGFiLWJ0bi0tYWN0aXZlOmhvdmVyIHtcbiAgY29sb3I6IHZhcigtLWNoYWxrLWJnKTtcbiAgYmFja2dyb3VuZDogdmFyKC0tY2hhbGstZmctYnJpZ2h0KTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jaGFsay1mZy1icmlnaHQpO1xufVxuXG4uY2hhbGstYWRtaW4tYm9keSB7XG4gIGZsZXg6IDE7XG4gIG92ZXJmbG93LXk6IGF1dG87XG4gIHBhZGRpbmc6IHZhcigtLWNoYWxrLXM0KTtcbn1cblxuLmNoYWxrLWFkbWluLXRhYiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGdhcDogdmFyKC0tY2hhbGstczMpO1xuICBtYXgtd2lkdGg6IDEyMDBweDtcbiAgbWFyZ2luOiAwIGF1dG87XG59XG5cbi5jaGFsay1hZG1pbi10b29sYmFyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiB2YXIoLS1jaGFsay1zMyk7XG59XG5cbi5jaGFsay1hZG1pbi10b29sYmFyLXRpdGxlIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGNvbG9yOiB2YXIoLS1jaGFsay1mZy1icmlnaHQpO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG59XG5cbi5jaGFsay1hZG1pbi1zZWFyY2gge1xuICBmbGV4OiAxO1xufVxuXG4uY2hhbGstYWRtaW4tc2VhcmNoIC5jaGFsay1maWVsZC1pbnB1dCB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uY2hhbGstYWRtaW4tcmVmcmVzaCB7XG4gIGZsZXgtc2hyaW5rOiAwO1xufVxuXG4uY2hhbGstYWRtaW4tYWN0aW9uLWVycm9yIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiB2YXIoLS1jaGFsay1zMik7XG4gIHBhZGRpbmc6IHZhcigtLWNoYWxrLXMyKSB2YXIoLS1jaGFsay1zMyk7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNoYWxrLWVycm9yKTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tY2hhbGstcmFkaXVzKTtcbiAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDc3LCA3NywgMC4wOCk7XG4gIGNvbG9yOiB2YXIoLS1jaGFsay1lcnJvcik7XG59XG5cbi5jaGFsay1hZG1pbi1hY3Rpb24tZXJyb3ItZGlzbWlzcyB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBjb2xvcjogdmFyKC0tY2hhbGstZXJyb3IpO1xuICBib3JkZXI6IG5vbmU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZm9udC1zaXplOiAxLjJlbTtcbiAgcGFkZGluZzogMCB2YXIoLS1jaGFsay1zMSk7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbn1cblxuLmNoYWxrLWFkbWluLWFjdGlvbi1lcnJvci1kaXNtaXNzOmhvdmVyIHtcbiAgY29sb3I6IHZhcigtLWNoYWxrLWZnLWJyaWdodCk7XG59XG5cbi5jaGFsay1hZG1pbi1lbXB0eSB7XG4gIHBhZGRpbmc6IHZhcigtLWNoYWxrLXM2KTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjb2xvcjogdmFyKC0tY2hhbGstZmctZGltKTtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuXG4uY2hhbGstYWRtaW4tdGFibGUtd3JhcCB7XG4gIG92ZXJmbG93LXg6IGF1dG87XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNoYWxrLWJvcmRlcik7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWNoYWxrLXJhZGl1cyk7XG59XG5cbi5jaGFsay1hZG1pbi10YWJsZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuICBmb250LXNpemU6IHZhcigtLWNoYWxrLXNpemUtYmFzZSk7XG59XG5cbi5jaGFsay1hZG1pbi10YWJsZSB0aGVhZCB7XG4gIGJhY2tncm91bmQ6IHZhcigtLWNoYWxrLWJnLWVsZXYpO1xufVxuXG4uY2hhbGstYWRtaW4tdGFibGUgdGgge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBwYWRkaW5nOiB2YXIoLS1jaGFsay1zMikgdmFyKC0tY2hhbGstczMpO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgY29sb3I6IHZhcigtLWNoYWxrLWZnLWRpbSk7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1jaGFsay1ib3JkZXIpO1xufVxuXG4uY2hhbGstYWRtaW4tdGFibGUgdGQge1xuICBwYWRkaW5nOiB2YXIoLS1jaGFsay1zMikgdmFyKC0tY2hhbGstczMpO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tY2hhbGstYm9yZGVyKTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuLmNoYWxrLWFkbWluLXRhYmxlIHRyOmxhc3QtY2hpbGQgdGQge1xuICBib3JkZXItYm90dG9tOiBub25lO1xufVxuXG4uY2hhbGstYWRtaW4tcm93IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuMXM7XG59XG5cbi5jaGFsay1hZG1pbi1yb3c6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1jaGFsay1iZy1lbGV2KTtcbn1cblxuLmNoYWxrLWFkbWluLXJvdy0tYmxvY2tlZCB7XG4gIGNvbG9yOiB2YXIoLS1jaGFsay13YXJuKTtcbn1cblxuLmNoYWxrLWFkbWluLXJvdy0tZGVsZXRlZCB7XG4gIGNvbG9yOiB2YXIoLS1jaGFsay1mZy1tdXRlZCk7XG4gIHRleHQtZGVjb3JhdGlvbjogbGluZS10aHJvdWdoO1xuICB0ZXh0LWRlY29yYXRpb24tY29sb3I6IHZhcigtLWNoYWxrLWZnLW11dGVkKTtcbn1cblxuLmNoYWxrLWFkbWluLWNlbGwtdXNlcm5hbWUge1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxuLmNoYWxrLWFkbWluLWNlbGwtZW1haWwge1xuICBmb250LWZhbWlseTogdmFyKC0tY2hhbGstZm9udCk7XG4gIGNvbG9yOiB2YXIoLS1jaGFsay1mZy1kaW0pO1xufVxuXG4uY2hhbGstYWRtaW4tY2VsbC1zdGF0dXMge1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG4uY2hhbGstYWRtaW4tY2VsbC1jcmVhdGVkLFxuLmNoYWxrLWFkbWluLWNlbGwtZm9ybWVyIHtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgY29sb3I6IHZhcigtLWNoYWxrLWZnLWRpbSk7XG4gIGZvbnQtdmFyaWFudC1udW1lcmljOiB0YWJ1bGFyLW51bXM7XG59XG5cbi5jaGFsay1hZG1pbi1jZWxsLWFjdGlvbnMge1xuICB0ZXh0LWFsaWduOiByaWdodDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgbWluLXdpZHRoOiAyMjBweDtcbn1cblxuLmNoYWxrLWFkbWluLXRhYmxlLWFjdGlvbnMtY29sIHtcbiAgd2lkdGg6IDIyMHB4O1xufVxuXG4uY2hhbGstYWRtaW4tc3RhdHVzLXBpbGwge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmc6IDJweCB2YXIoLS1jaGFsay1zMik7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWNoYWxrLXJhZGl1cyk7XG4gIGZvbnQtc2l6ZTogdmFyKC0tY2hhbGstc2l6ZS1zbWFsbCk7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB0ZXh0LXRyYW5zZm9ybTogbG93ZXJjYXNlO1xuICBib3JkZXI6IDFweCBzb2xpZDtcbn1cblxuLmNoYWxrLWFkbWluLXN0YXR1cy1waWxsLS1hY3RpdmUge1xuICBjb2xvcjogdmFyKC0tY2hhbGstZmcpO1xuICBib3JkZXItY29sb3I6IHZhcigtLWNoYWxrLWZnKTtcbn1cblxuLmNoYWxrLWFkbWluLXN0YXR1cy1waWxsLS1hZG1pbiB7XG4gIGNvbG9yOiB2YXIoLS1jaGFsay1hY2NlbnQpO1xuICBib3JkZXItY29sb3I6IHZhcigtLWNoYWxrLWFjY2VudCk7XG59XG5cbi5jaGFsay1hZG1pbi1zdGF0dXMtcGlsbC0tYmxvY2tlZCB7XG4gIGNvbG9yOiB2YXIoLS1jaGFsay13YXJuKTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jaGFsay13YXJuKTtcbn1cblxuLmNoYWxrLWFkbWluLXN0YXR1cy1waWxsLS1kZWxldGVkIHtcbiAgY29sb3I6IHZhcigtLWNoYWxrLWZnLW11dGVkKTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jaGFsay1mZy1tdXRlZCk7XG59XG5cbi5jaGFsay1hZG1pbi1yb3ctYWN0aW9ucyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGdhcDogdmFyKC0tY2hhbGstczEpO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAvKiBIb3Zlci1yZXZlYWw6IGhpZGRlbiBieSBkZWZhdWx0LCB2aXNpYmxlIHdoZW4gdGhlIHJvdyBpcyBob3ZlcmVkXG4gICAgIG9yIGFueSBidXR0b24gaW5zaWRlIGlzIGZvY3VzZWQgKGtleWJvYXJkIGExMXkpLiAqL1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMXM7XG59XG5cbi5jaGFsay1hZG1pbi1yb3c6aG92ZXIgLmNoYWxrLWFkbWluLXJvdy1hY3Rpb25zLFxuLmNoYWxrLWFkbWluLXJvdy1hY3Rpb25zOmZvY3VzLXdpdGhpbiB7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi8qIFBoYXNlIDkuNSAoQjgvQzQpOiBvbiB0b3VjaCBkZXZpY2VzIGFuZCBuYXJyb3cgdmlld3BvcnRzLCB0aGVcbiAgIGhvdmVyLXJldmVhbCBoaWRlcyBhY3Rpb25zIHBlcm1hbmVudGx5IGJlY2F1c2Ugbm8gaG92ZXIgZXZlbnRcbiAgIGV2ZXIgZmlyZXMuIFNob3cgdGhlbSBieSBkZWZhdWx0IGluIHRob3NlIGVudmlyb25tZW50cy4gKi9cbkBtZWRpYSAoaG92ZXI6IG5vbmUpLCAobWF4LXdpZHRoOiA2NDBweCkge1xuICAuY2hhbGstYWRtaW4tcm93LWFjdGlvbnMge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cblxuLmNoYWxrLWFkbWluLXJvdy1hY3Rpb24ge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgY29sb3I6IHZhcigtLWNoYWxrLWZnKTtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tY2hhbGstYm9yZGVyKTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tY2hhbGstcmFkaXVzKTtcbiAgcGFkZGluZzogMnB4IHZhcigtLWNoYWxrLXMyKTtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWNoYWxrLWZvbnQpO1xuICBmb250LXNpemU6IHZhcigtLWNoYWxrLXNpemUtc21hbGwpO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQgMC4xcywgY29sb3IgMC4xcywgYm9yZGVyLWNvbG9yIDAuMXM7XG59XG5cbi5jaGFsay1hZG1pbi1yb3ctYWN0aW9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tY2hhbGstZmcpO1xuICBjb2xvcjogdmFyKC0tY2hhbGstYmcpO1xuICBib3JkZXItY29sb3I6IHZhcigtLWNoYWxrLWZnKTtcbn1cblxuLmNoYWxrLWFkbWluLXJvdy1hY3Rpb24tLXdhcm4ge1xuICBjb2xvcjogdmFyKC0tY2hhbGstd2Fybik7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tY2hhbGstd2Fybik7XG59XG5cbi5jaGFsay1hZG1pbi1yb3ctYWN0aW9uLS13YXJuOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tY2hhbGstd2Fybik7XG4gIGNvbG9yOiB2YXIoLS1jaGFsay1iZyk7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tY2hhbGstd2Fybik7XG59XG5cbi5jaGFsay1hZG1pbi1yb3ctYWN0aW9uLS1kYW5nZXIge1xuICBjb2xvcjogdmFyKC0tY2hhbGstZXJyb3IpO1xuICBib3JkZXItY29sb3I6IHZhcigtLWNoYWxrLWVycm9yKTtcbn1cblxuLmNoYWxrLWFkbWluLXJvdy1hY3Rpb24tLWRhbmdlcjpob3ZlciB7XG4gIGJhY2tncm91bmQ6IHZhcigtLWNoYWxrLWVycm9yKTtcbiAgY29sb3I6IHZhcigtLWNoYWxrLWJnKTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jaGFsay1lcnJvcik7XG59XG5cbi5jaGFsay1hZG1pbi1yb3ctcGVuZGluZyB7XG4gIGNvbG9yOiB2YXIoLS1jaGFsay1mZy1kaW0pO1xuICBmb250LXNpemU6IDEuMmVtO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmc6IDAgdmFyKC0tY2hhbGstczIpO1xufVxuXG4uY2hhbGstYWRtaW4tcGFnaW5hdGlvbiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBnYXA6IHZhcigtLWNoYWxrLXMzKTtcbiAgcGFkZGluZzogdmFyKC0tY2hhbGstczMpIDA7XG59XG5cbi5jaGFsay1hZG1pbi1wYWdpbmF0aW9uLWxhYmVsIHtcbiAgY29sb3I6IHZhcigtLWNoYWxrLWZnLWRpbSk7XG4gIGZvbnQtdmFyaWFudC1udW1lcmljOiB0YWJ1bGFyLW51bXM7XG59XG5cbi5jaGFsay1hZG1pbi1ibGFja2xpc3QtYWRkIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZ2FwOiB2YXIoLS1jaGFsay1zMyk7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcbiAgcGFkZGluZzogdmFyKC0tY2hhbGstczMpO1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1jaGFsay1ib3JkZXIpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1jaGFsay1yYWRpdXMpO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1jaGFsay1iZy1lbGV2KTtcbn1cblxuLmNoYWxrLWFkbWluLWJsYWNrbGlzdC1hZGQgLmNoYWxrLWZpZWxkIHtcbiAgZmxleDogMTtcbn1cblxuLyogRGFuZ2VyIHZhcmlhbnQgZm9yIHRoZSBjb25maXJtIG1vZGFsJ3MgY29uZmlybSBidXR0b24uICovXG4uY2hhbGstYnV0dG9uLS1kYW5nZXIge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1jaGFsay1lcnJvcik7XG4gIGNvbG9yOiB2YXIoLS1jaGFsay1iZyk7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tY2hhbGstZXJyb3IpO1xufVxuXG4uY2hhbGstYnV0dG9uLS1kYW5nZXI6aG92ZXI6bm90KDpkaXNhYmxlZCkge1xuICBiYWNrZ3JvdW5kOiAjZmY2NjY2O1xuICBib3JkZXItY29sb3I6ICNmZjY2NjY7XG59XG5cbi5jaGFsay1idXR0b24tLWRhbmdlcjpkaXNhYmxlZCB7XG4gIGJhY2tncm91bmQ6IHZhcigtLWNoYWxrLWZnLW11dGVkKTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jaGFsay1mZy1tdXRlZCk7XG59XG5cbi8qIENvbmZpcm0gbW9kYWwgbGF5b3V0ICovXG4uY2hhbGstbW9kYWwtLWNvbmZpcm0ge1xuICBtYXgtd2lkdGg6IDUwMHB4O1xufVxuXG4uY2hhbGstYWRtaW4tY29uZmlybS13YXJuaW5nIHtcbiAgZm9udC1zaXplOiAyZW07XG4gIGNvbG9yOiB2YXIoLS1jaGFsay13YXJuKTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1jaGFsay1zMik7XG59XG5cbi5jaGFsay1hZG1pbi1jb25maXJtLWJvZHkgcCB7XG4gIG1hcmdpbjogMCAwIHZhcigtLWNoYWxrLXMyKSAwO1xufVxuXG4uY2hhbGstYWRtaW4tY29uZmlybS1ib2R5IHA6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi8qIFV0aWxpdHkgY2xhc3MgZm9yIGlubGluZSBkaW0gdGV4dCAodXNlZCBpbiB0YWJsZSBjZWxscyBmb3IgXCJcdTIwMTRcIikgKi9cbi5jaGFsay1mZy1kaW0ge1xuICBjb2xvcjogdmFyKC0tY2hhbGstZmctZGltKTtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBQaGFzZSA5LjZhOiBGcmllbmRzUGFuZWwgc3R5bGVzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLmNoYWxrLWZyaWVuZHMtcGFuZWwge1xuICB3aWR0aDogbWluKDU2MHB4LCA5MnZ3KTtcbiAgbWF4LWhlaWdodDogODB2aDtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbn1cblxuLmNoYWxrLWZyaWVuZHMtaGVhZGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBhbGlnbi1pdGVtczogYmFzZWxpbmU7XG4gIHBhZGRpbmc6IDAuNzVyZW0gMXJlbSAwLjVyZW07XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1jaGFsay1ib3JkZXIsICMxZjJhMWYpO1xufVxuXG4uY2hhbGstZnJpZW5kcy10aXRsZSB7XG4gIGZvbnQtc2l6ZTogMS4xcmVtO1xuICBmb250LXdlaWdodDogNjAwO1xuICBsZXR0ZXItc3BhY2luZzogMC4wMmVtO1xufVxuXG4uY2hhbGstZnJpZW5kcy10YWJzIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZ2FwOiAwLjI1cmVtO1xuICBwYWRkaW5nOiAwLjVyZW0gMXJlbSAwO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tY2hhbGstYm9yZGVyLCAjMWYyYTFmKTtcbn1cblxuLmNoYWxrLWZyaWVuZHMtdGFiIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGNvbG9yOiB2YXIoLS1jaGFsay1mZy1kaW0sICM1YThhNWEpO1xuICBib3JkZXI6IG5vbmU7XG4gIHBhZGRpbmc6IDAuNHJlbSAwLjc1cmVtO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBmb250LXNpemU6IDAuOXJlbTtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBtYXJnaW4tYm90dG9tOiAtMXB4O1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiAwLjRyZW07XG59XG4uY2hhbGstZnJpZW5kcy10YWI6aG92ZXIgeyBjb2xvcjogdmFyKC0tY2hhbGstZmcsICNjOGZmYzgpOyB9XG4uY2hhbGstZnJpZW5kcy10YWItLWFjdGl2ZSB7XG4gIGNvbG9yOiB2YXIoLS1jaGFsay1mZywgI2M4ZmZjOCk7XG4gIGJvcmRlci1ib3R0b20tY29sb3I6IHZhcigtLWNoYWxrLWFjY2VudCwgIzZlZmZhMSk7XG59XG5cbi5jaGFsay1mcmllbmRzLWJhZGdlIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tY2hhbGstYWNjZW50LCAjNmVmZmExKTtcbiAgY29sb3I6IHZhcigtLWNoYWxrLWJnLCAjMGExMjBhKTtcbiAgYm9yZGVyLXJhZGl1czogOTk5OXB4O1xuICBwYWRkaW5nOiAwIDAuNDVlbTtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xuICBsaW5lLWhlaWdodDogMS40O1xuICBmb250LXdlaWdodDogNjAwO1xufVxuXG4uY2hhbGstZnJpZW5kcy1yZWZyZXNoIHtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBjb2xvcjogdmFyKC0tY2hhbGstZmctZGltLCAjNWE4YTVhKTtcbiAgYm9yZGVyOiBub25lO1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgZm9udC1zaXplOiAxLjFyZW07XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgcGFkZGluZzogMC4ycmVtIDAuNXJlbTtcbn1cbi5jaGFsay1mcmllbmRzLXJlZnJlc2g6aG92ZXIgeyBjb2xvcjogdmFyKC0tY2hhbGstZmcsICNjOGZmYzgpOyB9XG5cbi5jaGFsay1mcmllbmRzLWJvZHkge1xuICBwYWRkaW5nOiAxcmVtO1xuICBvdmVyZmxvdy15OiBhdXRvO1xufVxuXG4uY2hhbGstZnJpZW5kcy1oZWxwIHtcbiAgY29sb3I6IHZhcigtLWNoYWxrLWZnLWRpbSwgIzVhOGE1YSk7XG4gIGZvbnQtc2l6ZTogMC44NXJlbTtcbiAgbWFyZ2luOiAwIDAgMC43NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbn1cblxuLmNoYWxrLWZyaWVuZHMtYWRkLXJvdyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGdhcDogMC41cmVtO1xufVxuXG4uY2hhbGstZnJpZW5kcy1hZGQtaW5wdXQge1xuICBmbGV4OiAxO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1jaGFsay1iZy1lbGV2LCAjMTQyMDFhKTtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tY2hhbGstYm9yZGVyLCAjMWYyYTFmKTtcbiAgY29sb3I6IHZhcigtLWNoYWxrLWZnLCAjYzhmZmM4KTtcbiAgcGFkZGluZzogMC40NXJlbSAwLjZyZW07XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBmb250LXNpemU6IDAuOTVyZW07XG4gIGJvcmRlci1yYWRpdXM6IDNweDtcbn1cbi5jaGFsay1mcmllbmRzLWFkZC1pbnB1dDpmb2N1cyB7XG4gIG91dGxpbmU6IG5vbmU7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tY2hhbGstYWNjZW50LCAjNmVmZmExKTtcbn1cblxuLmNoYWxrLWZyaWVuZHMtYWRkLXN1Ym1pdCB7XG4gIGJhY2tncm91bmQ6IHZhcigtLWNoYWxrLWFjY2VudCwgIzZlZmZhMSk7XG4gIGNvbG9yOiB2YXIoLS1jaGFsay1iZywgIzBhMTIwYSk7XG4gIGJvcmRlcjogbm9uZTtcbiAgcGFkZGluZzogMC40NXJlbSAxcmVtO1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgZm9udC1zaXplOiAwLjk1cmVtO1xuICBmb250LXdlaWdodDogNjAwO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGJvcmRlci1yYWRpdXM6IDNweDtcbn1cbi5jaGFsay1mcmllbmRzLWFkZC1zdWJtaXQ6ZGlzYWJsZWQge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1jaGFsay1mZy1kaW0sICM1YThhNWEpO1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xufVxuXG4uY2hhbGstZnJpZW5kcy1lcnJvciB7XG4gIGNvbG9yOiB2YXIoLS1jaGFsay1lcnJvciwgI2ZmNzA3MCk7XG4gIGZvbnQtc2l6ZTogMC44NXJlbTtcbiAgbWFyZ2luLXRvcDogMC41cmVtO1xuICBwYWRkaW5nOiAwLjRyZW0gMC42cmVtO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMTEyLCAxMTIsIDAuMDgpO1xuICBib3JkZXItbGVmdDogMnB4IHNvbGlkIHZhcigtLWNoYWxrLWVycm9yLCAjZmY3MDcwKTtcbn1cblxuLmNoYWxrLWZyaWVuZHMtZW1wdHkge1xuICBjb2xvcjogdmFyKC0tY2hhbGstZmctZGltLCAjNWE4YTVhKTtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDEuNXJlbSAxcmVtO1xufVxuXG4uY2hhbGstZnJpZW5kcy1zZWN0aW9uLXRpdGxlIHtcbiAgZm9udC1zaXplOiAwLjhyZW07XG4gIGNvbG9yOiB2YXIoLS1jaGFsay1mZy1kaW0sICM1YThhNWEpO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBsZXR0ZXItc3BhY2luZzogMC4xZW07XG4gIG1hcmdpbjogMCAwIDAuNXJlbTtcbn1cblxuLmNoYWxrLWZyaWVuZHMtcGVuZGluZyBzZWN0aW9uICsgc2VjdGlvbiB7XG4gIG1hcmdpbi10b3A6IDFyZW07XG59XG5cbi5jaGFsay1mcmllbmRzLWxpc3Qge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi5jaGFsay1mcmllbmRzLXJvdyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcGFkZGluZzogMC41cmVtIDAuNnJlbTtcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xufVxuLmNoYWxrLWZyaWVuZHMtcm93OmhvdmVyIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tY2hhbGstYmctZWxldiwgIzE0MjAxYSk7XG59XG5cbi5jaGFsay1mcmllbmRzLWhhbmRsZSB7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBjb2xvcjogdmFyKC0tY2hhbGstZmcsICNjOGZmYzgpO1xufVxuXG4uY2hhbGstZnJpZW5kcy1yb3ctYWN0aW9ucyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGdhcDogMC40cmVtO1xufVxuXG4uY2hhbGstZnJpZW5kcy1hY3Rpb24ge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tY2hhbGstYm9yZGVyLCAjMWYyYTFmKTtcbiAgY29sb3I6IHZhcigtLWNoYWxrLWZnLWRpbSwgIzVhOGE1YSk7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBmb250LXNpemU6IDAuODVyZW07XG4gIHBhZGRpbmc6IDAuMjVyZW0gMC42cmVtO1xuICBib3JkZXItcmFkaXVzOiAzcHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbi5jaGFsay1mcmllbmRzLWFjdGlvbjpob3ZlciB7XG4gIGNvbG9yOiB2YXIoLS1jaGFsay1mZywgI2M4ZmZjOCk7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tY2hhbGstZmctZGltLCAjNWE4YTVhKTtcbn1cbi5jaGFsay1mcmllbmRzLWFjdGlvbjpkaXNhYmxlZCB7XG4gIG9wYWNpdHk6IDAuNTtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbn1cbi5jaGFsay1mcmllbmRzLWFjdGlvbi0tYWNjZXB0IHtcbiAgY29sb3I6IHZhcigtLWNoYWxrLWFjY2VudCwgIzZlZmZhMSk7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tY2hhbGstYWNjZW50LCAjNmVmZmExKTtcbn1cbi5jaGFsay1mcmllbmRzLWFjdGlvbi0tYWNjZXB0OmhvdmVyIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tY2hhbGstYWNjZW50LCAjNmVmZmExKTtcbiAgY29sb3I6IHZhcigtLWNoYWxrLWJnLCAjMGExMjBhKTtcbn1cbi5jaGFsay1mcmllbmRzLWFjdGlvbi0tZGVjbGluZSB7XG4gIGNvbG9yOiB2YXIoLS1jaGFsay13YXJuLCAjZmZkMDYwKTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jaGFsay13YXJuLCAjZmZkMDYwKTtcbn1cbi5jaGFsay1mcmllbmRzLWFjdGlvbi0tZGVjbGluZTpob3ZlciB7XG4gIGJhY2tncm91bmQ6IHZhcigtLWNoYWxrLXdhcm4sICNmZmQwNjApO1xuICBjb2xvcjogdmFyKC0tY2hhbGstYmcsICMwYTEyMGEpO1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIFBoYXNlIDkuNmI6IHNpZGViYXIgcm9zdGVyIHNlY3Rpb25cbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKiBUaGUgc2lkZWJhciBub3cgaGFzIHR3byBoZWFkZXIgcm93cyArIHR3byBsaXN0cy4gR2l2ZSB0aGVcbiAgIHNlY29uZCBoZWFkZXIgYSB0b3AgbWFyZ2luIHNvIHRoZSB0d28gc2VjdGlvbnMgZmVlbCBkaXN0aW5jdC4gKi9cbi5jaGFsay1zaWRlYmFyLWhlYWRlci0tY2hhbm5lbHMge1xuICBtYXJnaW4tdG9wOiAxcmVtO1xuICBwYWRkaW5nLXRvcDogMC41cmVtO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tY2hhbGstYm9yZGVyLCAjMWYyYTFmKTtcbn1cblxuLyogSW5saW5lIGNvdW50IG5leHQgdG8gc2VjdGlvbiB0aXRsZS4gRGltbWVkIGJ5IGRlZmF1bHQsIHRha2VzIHRoZVxuICAgYWNjZW50IGNvbG9yIHdoZW4gdGhlcmUncyBzb21ldGhpbmcgdG8gaGlnaGxpZ2h0LiAqL1xuLmNoYWxrLXNpZGViYXItY291bnQge1xuICBjb2xvcjogdmFyKC0tY2hhbGstZmctZGltLCAjNWE4YTVhKTtcbiAgZm9udC1zaXplOiAwLjg1ZW07XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIG1hcmdpbi1sZWZ0OiAwLjI1ZW07XG59XG5cbi8qIEZyaWVuZHMgc2VjdGlvbjogdGlnaHRlciBzcGFjaW5nIHRoYW4gY2hhbm5lbHMsIHNsaWdodCB2aXN1YWxcbiAgIGRpc3RpbmN0aW9uIHNvIHVzZXJzIGZlZWwgdGhlIGhpZXJhcmNoeS4gKi9cbi5jaGFsay1zaWRlYmFyLWxpc3QtLWZyaWVuZHMge1xuICAvKiBub3RoaW5nIG92ZXJyaWRlLXNwZWNpZmljOyBpbmhlcml0cyBjaGFsay1zaWRlYmFyLWxpc3QgKi9cbn1cblxuLmNoYWxrLXNpZGViYXItaXRlbS0tZnJpZW5kIC5jaGFsay1zaWRlYmFyLWl0ZW0tbmFtZSB7XG4gIC8qIHRoZSBAIHByZWZpeCBpcyBwYXJ0IG9mIHRoZSByZW5kZXJlZCB0ZXh0OyBrZWVwIHR5cG9ncmFwaHlcbiAgICAgY29uc2lzdGVudCB3aXRoIGNoYW5uZWwgbmFtZXMgKi9cbn1cblxuLyogRW1wdHkgc3RhdGVzIGZvciBib3RoIHNlY3Rpb25zIHVzZSB0aGUgZXhpc3RpbmcgY2hhbGstc2lkZWJhci1lbXB0eVxuICAgcnVsZS4gTm8gYWRkaXRpb25hbCBDU1MgbmVlZGVkIHRoZXJlLiAqL1xuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIFBoYXNlIDkuNmIgdHdlYWs6IHNpZGViYXIgaGVpZ2h0ICsgZmlsdGVyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyogU2VjdGlvbiB3cmFwcGVycyBcdTIwMTQgZnJpZW5kcyBzaHJpbmtzIHRvIGZpdCAod2l0aCBhIDQwdmggY2FwIGFuZFxuICAgaW50ZXJuYWwgc2Nyb2xsKTsgY2hhbm5lbHMgdGFrZXMgdGhlIHJlc3QuICovXG4uY2hhbGstc2lkZWJhci1zZWN0aW9uIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgbWluLWhlaWdodDogMDtcbn1cblxuLmNoYWxrLXNpZGViYXItc2VjdGlvbi0tZnJpZW5kcyB7XG4gIC8qIERvbid0IGdyb3cgYmV5b25kIGNvbnRlbnQgKyBjYXAuIFRoZSBjYXAgcHJldmVudHMgb25lIGdpYW50XG4gICAgIHJvc3RlciBmcm9tIHB1c2hpbmcgY2hhbm5lbHMgb2ZmLXNjcmVlbi4gKi9cbiAgZmxleC1zaHJpbms6IDA7XG4gIG1heC1oZWlnaHQ6IDQwdmg7XG59XG5cbi5jaGFsay1zaWRlYmFyLXNlY3Rpb24tLWNoYW5uZWxzIHtcbiAgLyogRmlsbCB0aGUgcmVtYWluaW5nIHZlcnRpY2FsIHNwYWNlLiAqL1xuICBmbGV4OiAxO1xuICBtaW4taGVpZ2h0OiAwO1xufVxuXG4vKiBUaGUgZnJpZW5kcyBsaXN0IHdpdGhpbiB0aGUgZnJpZW5kcyBzZWN0aW9uOiBzY3JvbGwgSU5TSURFIHRoZVxuICAgc2VjdGlvbiB3aGVuIGNvbnRlbnQgb3ZlcmZsb3dzIHRoZSA0MHZoIGNhcC4gT3ZlcnJpZGUgdGhlIGJhc2VcbiAgIC5jaGFsay1zaWRlYmFyLWxpc3QgYGZsZXg6IDFgICh3aGljaCB3b3VsZCBjYXVzZSBib3RoIHNlY3Rpb25zIHRvXG4gICBmaWdodCBmb3Igc3BhY2UpIHdpdGggYGZsZXg6IDAgMSBhdXRvYCBzbyB0aGUgbGlzdCBzaXplcyB0b1xuICAgY29udGVudC4gKi9cbi5jaGFsay1zaWRlYmFyLWxpc3QtLWZyaWVuZHMge1xuICBmbGV4OiAwIDEgYXV0bztcbiAgb3ZlcmZsb3cteTogYXV0bztcbn1cblxuLyogVGhlIGNoYW5uZWxzIGxpc3Qga2VlcHMgdGhlIG9yaWdpbmFsIGZsZXg6IDEgYmVoYXZpb3IgKGluaGVyaXRzXG4gICBmcm9tIC5jaGFsay1zaWRlYmFyLWxpc3QpOyBubyBvdmVycmlkZSBuZWVkZWQuICovXG5cbi8qIEZpbHRlciBpbnB1dCBcdTIwMTQgb25seSBhcHBlYXJzIHdoZW4gXHUyMjY1NyBmcmllbmRzLiBTaXRzIGJldHdlZW4gdGhlXG4gICBcImZyaWVuZHMgKE4pXCIgaGVhZGVyIGFuZCB0aGUgbGlzdC4gSW5oZXJpdHMgdGhlIGRhcmsgdGhlbWU7XG4gICBtYXRjaGVzIHRoZSAuY2hhbGstZnJpZW5kcy1hZGQtaW5wdXQgc3R5bGluZyBmb3IgY29uc2lzdGVuY3kuICovXG4uY2hhbGstc2lkZWJhci1maWx0ZXIge1xuICBwYWRkaW5nOiAwIHZhcigtLWNoYWxrLXMyKSB2YXIoLS1jaGFsay1zMikgdmFyKC0tY2hhbGstczIpO1xuICBmbGV4LXNocmluazogMDtcbn1cblxuLmNoYWxrLXNpZGViYXItZmlsdGVyLWlucHV0IHtcbiAgd2lkdGg6IDEwMCU7XG4gIGJhY2tncm91bmQ6IHZhcigtLWNoYWxrLWJnLWVsZXYsICMxNDIwMWEpO1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1jaGFsay1ib3JkZXIpO1xuICBjb2xvcjogdmFyKC0tY2hhbGstZmcpO1xuICBwYWRkaW5nOiAwLjNyZW0gMC41cmVtO1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgZm9udC1zaXplOiB2YXIoLS1jaGFsay1zaXplLXNtYWxsKTtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cbi5jaGFsay1zaWRlYmFyLWZpbHRlci1pbnB1dDpmb2N1cyB7XG4gIG91dGxpbmU6IG5vbmU7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tY2hhbGstZmctYnJpZ2h0KTtcbn1cbi5jaGFsay1zaWRlYmFyLWZpbHRlci1pbnB1dDo6cGxhY2Vob2xkZXIge1xuICBjb2xvcjogdmFyKC0tY2hhbGstZmctZGltKTtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIFBoYXNlIDkuNmM6IHByZXNlbmNlIGRvdHNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKiBUaGUgZnJpZW5kIHJvdyBpcyBhIGZsZXggbGF5b3V0OiBkb3QgY29sdW1uLCB0aGVuIG5hbWUuIFRoZSBkb3RcbiAgIGNvbHVtbiBpcyBmaXhlZCB3aWR0aCBzbyBhbGwgbmFtZXMgbGluZSB1cCByZWdhcmRsZXNzIG9mIHN0YXRlLiAqL1xuLmNoYWxrLXNpZGViYXItaXRlbS0tZnJpZW5kIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiAwLjVyZW07XG59XG5cbi8qIFRoZSBkb3Q6IDhweCBjaXJjbGUsIGFsd2F5cyByZW5kZXJlZCAodHJhbnNwYXJlbnQgYm9yZGVyIGZvclxuICAgb2ZmbGluZSBzbyBsYXlvdXQgZG9lc24ndCBzaGlmdCkuICovXG4uY2hhbGstcHJlc2VuY2UtZG90IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogOHB4O1xuICBoZWlnaHQ6IDhweDtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBmbGV4LXNocmluazogMDtcbiAgLyogVGlueSB2ZXJ0aWNhbCBudWRnZSBzbyB0aGUgZG90IG9wdGljYWxseSBjZW50ZXJzIGFnYWluc3RcbiAgICAgbW9ub3NwYWNlIHRleHQgYmFzZWxpbmUuICovXG4gIG1hcmdpbi10b3A6IDFweDtcbn1cblxuLyogT25saW5lOiBzb2xpZCBicmlnaHQgZ3JlZW4uIFVzZXMgdGhlIHNhbWUgYWNjZW50IGFzIHRoZSBhY3RpdmVcbiAgIGNoYW5uZWwgaGlnaGxpZ2h0IHNvIGl0IHJlYWRzIGFzIFwiYWN0aXZlLlwiICovXG4uY2hhbGstcHJlc2VuY2UtZG90LS1vbmxpbmUge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1jaGFsay1mZy1icmlnaHQsICM2ZWZmYTEpO1xuICBib3gtc2hhZG93OiAwIDAgNHB4IHJnYmEoMTEwLCAyNTUsIDE2MSwgMC40KTtcbn1cblxuLyogQXdheTogc29saWQgeWVsbG93LCBubyBnbG93LiAqL1xuLmNoYWxrLXByZXNlbmNlLWRvdC0tYXdheSB7XG4gIGJhY2tncm91bmQ6IHZhcigtLWNoYWxrLXdhcm4sICNmZmQwNjApO1xufVxuXG4vKiBPZmZsaW5lIC8gdW5rbm93bjogaG9sbG93IGdyZXkgY2lyY2xlLiAxcHggYm9yZGVyLCBubyBmaWxsLiAqL1xuLmNoYWxrLXByZXNlbmNlLWRvdC0tb2ZmbGluZSB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1jaGFsay1mZy1kaW0sICM1YThhNWEpO1xuICAvKiBDb21wZW5zYXRlIGZvciB0aGUgYm9yZGVyIHNvIHRoZSB2aXN1YWwgZGlhbWV0ZXIgc3RpbGwgYWxpZ25zXG4gICAgIHdpdGggdGhlIGZpbGxlZCBkb3RzIGFib3ZlLiAqL1xuICB3aWR0aDogNnB4O1xuICBoZWlnaHQ6IDZweDtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBQaGFzZSA5LjZkOiBhbGlnbm1lbnQgZml4ICsgbGF6eS1sb2FkaW5nIGluZGljYXRvclxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qIE92ZXJyaWRlIC5jaGFsay1zaWRlYmFyLWl0ZW0ncyBganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuYFxuICAgZm9yIHRoZSBmcmllbmQgdmFyaWFudCBzbyB0aGUgZG90IGFuZCBuYW1lIHNpdCB0b2dldGhlciBhdCB0aGVcbiAgIHN0YXJ0IG9mIHRoZSByb3cuIChUaGUgZGVmYXVsdCBpcyBhcHByb3ByaWF0ZSBmb3IgY2hhbm5lbHMsXG4gICB3aGVyZSBcIiNuYW1lXCIgKyBkbS10YWcgZmxvYXQgdG8gb3Bwb3NpdGUgZWRnZXMuKSAqL1xuLmNoYWxrLXNpZGViYXItaXRlbS0tZnJpZW5kIHtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xufVxuXG4vKiBUaGUgbmFtZSBpbnNpZGUgYSBmcmllbmQgcm93IHNob3VsZG4ndCB0cnkgdG8gZmlsbCByZW1haW5pbmdcbiAgIHNwYWNlOyBpdCdzIGEgbGFiZWwsIG5vdCBhIGZsZXggZ3Jvd2VyLiAqL1xuLmNoYWxrLXNpZGViYXItaXRlbS0tZnJpZW5kIC5jaGFsay1zaWRlYmFyLWl0ZW0tbmFtZSB7XG4gIGZsZXg6IDAgMSBhdXRvO1xufVxuXG4vKiBMYXp5LWxvYWRpbmcgcGxhY2Vob2xkZXI6IHRocmVlIHNtYWxsIGRvdHMgdGhhdCBwdWxzZSB3aGlsZSBhXG4gICBjaHVuayBpcyBiZWluZyBmZXRjaGVkLiBUaGUgY29tcG9uZW50IHNpdHMgaW4gcGxhY2Ugb2YgdGhlXG4gICByZWFsIHBhbmVsLCBzbyB1c2VycyBzZWUgXCJzb21ldGhpbmcgaXMgaGFwcGVuaW5nXCIgcmF0aGVyIHRoYW5cbiAgIGEgZmxhc2ggb2Ygbm90aGluZy4gKi9cbi5jaGFsay1sYXp5LWxvYWRpbmcge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiAwLjRyZW07XG4gIHBhZGRpbmc6IDJyZW07XG4gIG1pbi1oZWlnaHQ6IDZyZW07XG59XG5cbi5jaGFsay1sYXp5LWxvYWRpbmctZG90IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogNnB4O1xuICBoZWlnaHQ6IDZweDtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1jaGFsay1mZy1kaW0pO1xuICBhbmltYXRpb246IGNoYWxrLWxhenktcHVsc2UgMS4ycyBlYXNlLWluLW91dCBpbmZpbml0ZTtcbn1cbi5jaGFsay1sYXp5LWxvYWRpbmctZG90Om50aC1jaGlsZCgyKSB7IGFuaW1hdGlvbi1kZWxheTogMC4xNXM7IH1cbi5jaGFsay1sYXp5LWxvYWRpbmctZG90Om50aC1jaGlsZCgzKSB7IGFuaW1hdGlvbi1kZWxheTogMC4zczsgfVxuXG5Aa2V5ZnJhbWVzIGNoYWxrLWxhenktcHVsc2Uge1xuICAwJSwgODAlLCAxMDAlIHsgb3BhY2l0eTogMC4zOyB0cmFuc2Zvcm06IHNjYWxlKDAuOCk7IH1cbiAgNDAlICAgICAgICAgICB7IG9wYWNpdHk6IDE7ICAgdHJhbnNmb3JtOiBzY2FsZSgxLjApOyB9XG59XG5cbi5jaGFsay1sYXp5LWVycm9yIHtcbiAgcGFkZGluZzogMS41cmVtO1xuICBjb2xvcjogdmFyKC0tY2hhbGstZXJyb3IsICNmZjcwNzApO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMTEyLCAxMTIsIDAuMDgpO1xuICBib3JkZXItbGVmdDogMnB4IHNvbGlkIHZhcigtLWNoYWxrLWVycm9yLCAjZmY3MDcwKTtcbiAgbWFyZ2luOiAxcmVtO1xuICBmb250LXNpemU6IHZhcigtLWNoYWxrLXNpemUtc21hbGwpO1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIFBoYXNlIDkuNmo6IHByZXNlbmNlIHBpY2tlclxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi5jaGFsay1wcmVzZW5jZS1waWNrZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuXG4uY2hhbGstcHJlc2VuY2UtdHJpZ2dlciB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIGZvbnQ6IGluaGVyaXQ7XG4gIHBhZGRpbmc6IDAgMC41cmVtO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBnYXA6IDAuNHJlbTtcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xufVxuLmNoYWxrLXByZXNlbmNlLXRyaWdnZXI6aG92ZXIge1xuICBib3JkZXItY29sb3I6IHZhcigtLWNoYWxrLWJvcmRlciwgIzFmMmExZik7XG4gIGJhY2tncm91bmQ6IHZhcigtLWNoYWxrLWJnLWVsZXYsICMxNDIwMWEpO1xufVxuLmNoYWxrLXByZXNlbmNlLXRyaWdnZXI6Zm9jdXMtdmlzaWJsZSB7XG4gIG91dGxpbmU6IDFweCBzb2xpZCB2YXIoLS1jaGFsay1mZy1icmlnaHQpO1xuICBvdXRsaW5lLW9mZnNldDogLTFweDtcbn1cblxuLyogRWZmZWN0aXZlLXN0YXRlLWRyaXZlbiBjb2xvcmluZyBvZiB0aGUgdHJpZ2dlciBsYWJlbC4gKi9cbi5jaGFsay1wcmVzZW5jZS10cmlnZ2VyLS1vbmxpbmUgLmNoYWxrLXN0YXR1cy1sYWJlbCB7XG4gIGNvbG9yOiB2YXIoLS1jaGFsay1mZy1icmlnaHQsICM2ZWZmYTEpO1xufVxuLmNoYWxrLXByZXNlbmNlLXRyaWdnZXItLWF3YXkgLmNoYWxrLXN0YXR1cy1sYWJlbCB7XG4gIGNvbG9yOiB2YXIoLS1jaGFsay13YXJuLCAjZmZkMDYwKTtcbn1cbi5jaGFsay1wcmVzZW5jZS10cmlnZ2VyLS1vZmZsaW5lIC5jaGFsay1zdGF0dXMtbGFiZWwge1xuICBjb2xvcjogdmFyKC0tY2hhbGstZmctZGltLCAjNWE4YTVhKTtcbn1cblxuLmNoYWxrLXByZXNlbmNlLW1vZGUtYmFkZ2Uge1xuICBmb250LXNpemU6IDEwcHg7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGxldHRlci1zcGFjaW5nOiAwLjA1ZW07XG4gIGNvbG9yOiB2YXIoLS1jaGFsay1mZy1kaW0sICM1YThhNWEpO1xuICBwYWRkaW5nOiAwIDAuMjVyZW07XG59XG5cbi5jaGFsay1wcmVzZW5jZS1tZW51IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDEwMCU7XG4gIGxlZnQ6IDA7XG4gIG1hcmdpbi10b3A6IDRweDtcbiAgbWluLXdpZHRoOiAxMnJlbTtcbiAgYmFja2dyb3VuZDogdmFyKC0tY2hhbGstYmctZWxldiwgIzE0MjAxYSk7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNoYWxrLWJvcmRlciwgIzFmMmExZik7XG4gIHBhZGRpbmc6IDAuM3JlbSAwO1xuICB6LWluZGV4OiAyMDtcbiAgYm94LXNoYWRvdzogMCAycHggOHB4IHJnYmEoMCwgMCwgMCwgMC41KTtcbn1cblxuLmNoYWxrLXByZXNlbmNlLW1lbnUtaXRlbSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICB3aWR0aDogMTAwJTtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogbm9uZTtcbiAgY29sb3I6IHZhcigtLWNoYWxrLWZnLCAjYzhmZmM4KTtcbiAgZm9udDogaW5oZXJpdDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgcGFkZGluZzogMC40cmVtIDAuNzVyZW07XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbi5jaGFsay1wcmVzZW5jZS1tZW51LWl0ZW06aG92ZXIge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDExMCwgMjU1LCAxNjEsIDAuMDgpO1xufVxuLmNoYWxrLXByZXNlbmNlLW1lbnUtaXRlbS0tYWN0aXZlIHtcbiAgY29sb3I6IHZhcigtLWNoYWxrLWZnLWJyaWdodCwgIzZlZmZhMSk7XG4gIGJhY2tncm91bmQ6IHJnYmEoMTEwLCAyNTUsIDE2MSwgMC4wNSk7XG59XG4uY2hhbGstcHJlc2VuY2UtbWVudS1pdGVtLS1hY3RpdmU6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXHUyNzEzIFwiO1xufVxuXG4uY2hhbGstcHJlc2VuY2UtbWVudS1oaW50IHtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xuICBjb2xvcjogdmFyKC0tY2hhbGstZmctZGltLCAjNWE4YTVhKTtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIFBoYXNlIDkuN2I6IGxpZ2h0IHRoZW1lXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIEFjdGl2YXRlZCBieSBzZXR0aW5nIGRhdGEtdGhlbWU9XCJsaWdodFwiIG9uIHRoZSBkb2N1bWVudCByb290LlxuICAgUmVkZWZpbmVzIGV2ZXJ5IC0tY2hhbGstKiB2YXJpYWJsZSBzbyBjb21wb25lbnQgQ1NTIGFkYXB0c1xuICAgYXV0b21hdGljYWxseS4gQWxzbyBvdmVycmlkZXMgYSBoYW5kZnVsIG9mIGhhcmQtY29kZWQgcmdiYSgpXG4gICB2YWx1ZXMgKHByZXNlbmNlLWRvdCBnbG93KSB0aGF0IGRvbid0IGdvIHRocm91Z2ggdmFyaWFibGVzLlxuXG4gICBQYWxldHRlIG5vdGVzOlxuICAgLSBiZyBpcyBhIHdhcm0gY3JlYW0sIG5vdCBwdXJlIHdoaXRlLCB0byByZWR1Y2UgZXllIHN0cmFpbi5cbiAgIC0gZmcgaXMgd2FybSBuZWFyLWJsYWNrIGZvciBzaW1pbGFyIHJlYXNvbnMuXG4gICAtIEFjY2VudCBzdGF5cyBhIGZvcmVzdCBncmVlbiBzbyB0aGUgYnJhbmQgaWRlbnRpdHkgc3Vydml2ZXMgdGhlXG4gICAgIG1vZGUgc3dpdGNoLiAoY2hhbGsgaXMgXCJ0aGUgZ3JlZW4gdGVybWluYWwgY2hhdFwiOyBtYWtpbmcgdGhlXG4gICAgIGFjY2VudCBibHVlIHdvdWxkIGZlZWwgbGlrZSBhIGRpZmZlcmVudCBwcm9kdWN0LilcbiAgIC0gV2Fybi9lcnJvciBudWRnZSB0b3dhcmQgbXV0ZWQgYW1iZXIvYnJpY2sgc28gdGhleSBkb24ndFxuICAgICBzY3JlYW0gYWdhaW5zdCB0aGUgc29mdCBiYWNrZ3JvdW5kLlxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbltkYXRhLXRoZW1lPVwibGlnaHRcIl0ge1xuICAtLWNoYWxrLWJnOiAgICAgICAgICAgI2Y3ZjVlZTtcbiAgLS1jaGFsay1iZy1lbGV2OiAgICAgICNlYmU3ZGE7XG4gIC0tY2hhbGstYmctZWxldi0yOiAgICAjZGRkN2M0O1xuICAtLWNoYWxrLWZnOiAgICAgICAgICAgIzFmMWQxNztcbiAgLS1jaGFsay1mZy1kaW06ICAgICAgICM2YTY2NTc7XG4gIC0tY2hhbGstZmctYnJpZ2h0OiAgICAjMWE0ZDJhO1xuICAtLWNoYWxrLWZnLW11dGVkOiAgICAgIzhlOGE3YTtcbiAgLS1jaGFsay1ib3JkZXI6ICAgICAgICNjOWMyYWI7XG4gIC0tY2hhbGstYWNjZW50OiAgICAgICAjMmQ2ZTNmO1xuICAtLWNoYWxrLXdhcm46ICAgICAgICAgI2E4NWYwMDtcbiAgLS1jaGFsay1lcnJvcjogICAgICAgICM5YjJhMjY7XG5cbiAgY29sb3Itc2NoZW1lOiBsaWdodDtcbn1cblxuLyogUHJlc2VuY2UtZG90IGdsb3cgdXNlcyBhIGhhcmQtY29kZWQgcmdiYSgpIGluIHRoZSBncmVlbiB0aGVtZTtcbiAgIG92ZXJyaWRlIGhlcmUgc28gdGhlIGdsb3cgY29sb3IgbWF0Y2hlcyB0aGUgbGlnaHQtdGhlbWUgYWNjZW50XG4gICBpbnN0ZWFkIG9mIGxvb2tpbmcgbGlrZSBhIHN0cmF5IGJyaWdodC1ncmVlbiBoYWxvIG9uIGNyZWFtLiAqL1xuW2RhdGEtdGhlbWU9XCJsaWdodFwiXSAuY2hhbGstcHJlc2VuY2UtZG90LS1vbmxpbmUge1xuICBib3gtc2hhZG93OiAwIDAgNHB4IHJnYmEoNDUsIDExMCwgNjMsIDAuMzUpO1xufVxuXG4vKiBUaGUgZGVmYXVsdCBncmVlbiB0aGVtZSB1c2VzIGEgdmVyeSBkaW0gZmF1eC1zaGFkb3cgb24gbW9zdFxuICAgcGFuZWxzIChsaWdodCB0ZXh0IG9uIGJsYWNrKS4gSW4gbGlnaHQgbW9kZSB3ZSB3YW50IGEgdG91Y2ggb2ZcbiAgIHdhcm10aCBvbiBlbGV2YXRlZCBzdXJmYWNlcyAtLSBhIDFweCBpbm5lciBib3JkZXIgcmVhZHMgYmV0dGVyXG4gICB0aGFuIGEgZHJvcCBzaGFkb3cgb24gZmxhdCBjcmVhbS4gVGhlIHNlbGVjdG9ycyBiZWxvdyBhZGQgaXRcbiAgIG9ubHkgdG8gc3VyZmFjZXMgdGhhdCB2aXNpYmx5IGVsZXZhdGUgKG1vZGFscywgZHJvcGRvd25zLFxuICAgbWVudXMpLiBTaWRlYmFyIGFuZCBoZWFkZXJzIGFscmVhZHkgdXNlIGJhY2tncm91bmQgY29udHJhc3QuICovXG5bZGF0YS10aGVtZT1cImxpZ2h0XCJdIC5jaGFsay1tb2RhbCxcbltkYXRhLXRoZW1lPVwibGlnaHRcIl0gLmNoYWxrLXByZXNlbmNlLW1lbnUsXG5bZGF0YS10aGVtZT1cImxpZ2h0XCJdIC5jaGFsay1zdGF0dXMtbWVudSB7XG4gIGJveC1zaGFkb3c6IDAgMXB4IDNweCByZ2JhKDMxLCAyOSwgMjMsIDAuMDgpO1xufVxuXG4vKiBJbiBsaWdodCBtb2RlLCB0aGUgYWN0aXZlLWNoYW5uZWwgaGlnaGxpZ2h0IGluIHRoZSBzaWRlYmFyIGlzIGFcbiAgIHN1YnRsZSB3YXJtIHRpbnQgcmF0aGVyIHRoYW4gdGhlIGdyZWVuLW9uLWJsYWNrIHdlIGhhdmUgaW4gdGhlXG4gICBkYXJrIHRoZW1lLiBEb25lIHZpYSBvcGFjaXR5IG9mIHRoZSBhY2NlbnQuICovXG5bZGF0YS10aGVtZT1cImxpZ2h0XCJdIC5jaGFsay1zaWRlYmFyLWl0ZW0tLWFjdGl2ZSB7XG4gIGJhY2tncm91bmQ6IHJnYmEoNDUsIDExMCwgNjMsIDAuMTApO1xufVxuXG4vKiBUaGUgcHJlc2VuY2UgdHJpZ2dlcidzIGhvdmVyIHN0YXRlIGluIDkuNmogdXNlcyBhIGJnLWVsZXZcbiAgIHJlZmVyZW5jZSB0aGF0IHdvcmtzIGZpbmUgaGVyZSAtLSBubyBvdmVycmlkZSBuZWVkZWQuICovXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgUGhhc2UgOS43YjogdGhlbWUgcGlja2VyIHN0eWxpbmdcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4uY2hhbGstcHJvZmlsZS10aGVtZS1waWNrZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBnYXA6IHZhcigtLWNoYWxrLXMyKTtcbiAgbWFyZ2luLXRvcDogdmFyKC0tY2hhbGstczEpO1xufVxuXG4uY2hhbGstcHJvZmlsZS10aGVtZS1vcHRpb24ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBnYXA6IHZhcigtLWNoYWxrLXMyKTtcbiAgcGFkZGluZzogdmFyKC0tY2hhbGstczIpO1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1jaGFsay1ib3JkZXIpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1jaGFsay1yYWRpdXMpO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHRyYW5zaXRpb246IGJvcmRlci1jb2xvciAxMDBtcyBlYXNlO1xufVxuLmNoYWxrLXByb2ZpbGUtdGhlbWUtb3B0aW9uOmhvdmVyIHtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jaGFsay1hY2NlbnQpO1xufVxuLmNoYWxrLXByb2ZpbGUtdGhlbWUtb3B0aW9uLS1hY3RpdmUge1xuICBib3JkZXItY29sb3I6IHZhcigtLWNoYWxrLWFjY2VudCk7XG4gIGJhY2tncm91bmQ6IHZhcigtLWNoYWxrLWJnLWVsZXYpO1xufVxuXG4uY2hhbGstcHJvZmlsZS10aGVtZS1vcHRpb24gaW5wdXRbdHlwZT1cInJhZGlvXCJdIHtcbiAgLyogTmF0aXZlIHJhZGlvcyBsb29rIG91dCBvZiBwbGFjZTsgd2UgaGF2ZSBhIGN1c3RvbSB2aXN1YWwgdmlhXG4gICAgIHRoZSBhY3RpdmUgYm9yZGVyICsgc3dhdGNoLiBIaWRlIHRoZSBuYXRpdmUgY29udHJvbCBidXQga2VlcFxuICAgICBpdCBmb2N1c2FibGUgZm9yIGtleWJvYXJkIG5hdi4gKi9cbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIG9wYWNpdHk6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbn1cbi5jaGFsay1wcm9maWxlLXRoZW1lLW9wdGlvbiBpbnB1dFt0eXBlPVwicmFkaW9cIl06Zm9jdXMtdmlzaWJsZVxuICArIC5jaGFsay1wcm9maWxlLXRoZW1lLXN3YXRjaCB7XG4gIG91dGxpbmU6IDFweCBzb2xpZCB2YXIoLS1jaGFsay1mZy1icmlnaHQpO1xuICBvdXRsaW5lLW9mZnNldDogMnB4O1xufVxuXG4uY2hhbGstcHJvZmlsZS10aGVtZS1zd2F0Y2gge1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IGF1dG8gMWZyIGF1dG87XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGdhcDogdmFyKC0tY2hhbGstczIpO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLmNoYWxrLXByb2ZpbGUtdGhlbWUtc3dhdGNoLXByZXZpZXcge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAyNHB4O1xuICBoZWlnaHQ6IDI0cHg7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWNoYWxrLXJhZGl1cyk7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNoYWxrLWJvcmRlcik7XG59XG4vKiBTdGF0aWMgcHJldmlldyBzd2F0Y2hlczogZG8gTk9UIHVzZSB2YXJpYWJsZXMgc28gdGhleSBzaG93IHRoZVxuICAgdGhlbWUncyBhY3R1YWwgY29sb3JzIHJlZ2FyZGxlc3Mgb2Ygd2hpY2ggb25lIGlzIGN1cnJlbnRseSBhY3RpdmUuICovXG4uY2hhbGstcHJvZmlsZS10aGVtZS1zd2F0Y2gtcHJldmlldy0tZ3JlZW4ge1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCAjMDAwMDAwIDAlLCAjMDAwMDAwIDUwJSwgIzAwZmY0MSA1MCUsICMwMGZmNDEgMTAwJSk7XG59XG4uY2hhbGstcHJvZmlsZS10aGVtZS1zd2F0Y2gtcHJldmlldy0tbGlnaHQge1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCAjZjdmNWVlIDAlLCAjZjdmNWVlIDUwJSwgIzJkNmUzZiA1MCUsICMyZDZlM2YgMTAwJSk7XG59XG5cbi5jaGFsay1wcm9maWxlLXRoZW1lLW5hbWUge1xuICBmb250LXdlaWdodDogNTAwO1xufVxuLmNoYWxrLXByb2ZpbGUtdGhlbWUtZGVzYyB7XG4gIGNvbG9yOiB2YXIoLS1jaGFsay1mZy1kaW0pO1xuICBmb250LXNpemU6IHZhcigtLWNoYWxrLXNpemUtc21hbGwpO1xufVxuXG4uY2hhbGstcHJvZmlsZS1oaW50IHtcbiAgbWFyZ2luLXRvcDogdmFyKC0tY2hhbGstczEpO1xuICBjb2xvcjogdmFyKC0tY2hhbGstZmctZGltKTtcbiAgZm9udC1zaXplOiB2YXIoLS1jaGFsay1zaXplLXNtYWxsKTtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIFBoYXNlIDkuN2M6IGN5YmVycHVuayB0aGVtZVxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBEZWVwIHZpb2xldC1ibGFjayBiYWNrZ3JvdW5kIHdpdGggaG90IG1hZ2VudGEgKyBlbGVjdHJpYyBjeWFuXG4gICBhY2NlbnRzLiBCb2R5IHRleHQgc3RheXMgYSBoaWdoLWNvbnRyYXN0IHBhbGUgbGF2ZW5kZXIgZm9yXG4gICByZWFkYWJpbGl0eSAodGhlIFwibmVvbiBvbiBwaXRjaC1ibGFja1wiIG1vdmllIGFlc3RoZXRpYyBsb29rc1xuICAgZ3JlYXQgaW4gc3RpbGxzIGJ1dCBpcyBicnV0YWwgdG8gYWN0dWFsbHkgcmVhZCkuXG5cbiAgIERlc2lnbiBjaG9pY2VzOlxuICAgLSBCYWNrZ3JvdW5kIGlzIHZpb2xldC1ibGFjayAoIzBhMDQyMCksIG5vdCBwdXJlIGJsYWNrIC0tIHRoZVxuICAgICB2aW9sZXQgdW5kZXJ0b25lIGlzIHdoYXQgZGlmZmVyZW50aWF0ZXMgdGhpcyBmcm9tIHRoZSBncmVlblxuICAgICB0ZXJtaW5hbCB0aGVtZS5cbiAgIC0gZmctYnJpZ2h0IGlzIGhvdCBtYWdlbnRhICgjZmYyZWFhKSAtLSBlbXBoYXNpcywgXCJ5b3VcIiBsYWJlbHMsXG4gICAgIGFjdGl2ZSBzdGF0ZXMuXG4gICAtIEFjY2VudCBpcyBlbGVjdHJpYyBjeWFuICgjMDBmMGZmKSAtLSBib3JkZXJzLCBzZWNvbmRhcnlcbiAgICAgc3VyZmFjZXMsIGxpbmtzLlxuICAgLSBXYXJuIGtlZXBzIGFuIGFtYmVyL3llbGxvdyBiZWNhdXNlIHVyZ2VuY3kgcmVhZHMgYmVzdCBpblxuICAgICB5ZWxsb3cgcmVnYXJkbGVzcyBvZiBjb250ZXh0OyBwdXJlIG5lb24gd291bGQgbWVsdCBpbnRvIHRoZVxuICAgICByZXN0IG9mIHRoZSBwYWxldHRlLlxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbltkYXRhLXRoZW1lPVwiY3liZXJwdW5rXCJdIHtcbiAgLS1jaGFsay1iZzogICAgICAgICAgICMwYTA0MjA7XG4gIC0tY2hhbGstYmctZWxldjogICAgICAjMTQwYTMyO1xuICAtLWNoYWxrLWJnLWVsZXYtMjogICAgIzFmMGY0ZDtcbiAgLS1jaGFsay1mZzogICAgICAgICAgICNmMGU4ZmY7XG4gIC0tY2hhbGstZmctZGltOiAgICAgICAjOGE3YWI4O1xuICAtLWNoYWxrLWZnLWJyaWdodDogICAgI2ZmMmVhYTtcbiAgLS1jaGFsay1mZy1tdXRlZDogICAgICM1YTRhOGE7XG4gIC0tY2hhbGstYm9yZGVyOiAgICAgICAjNGEyYThhO1xuICAtLWNoYWxrLWFjY2VudDogICAgICAgIzAwZjBmZjtcbiAgLS1jaGFsay13YXJuOiAgICAgICAgICNmZmNjMDA7XG4gIC0tY2hhbGstZXJyb3I6ICAgICAgICAjZmYzMDYwO1xuXG4gIGNvbG9yLXNjaGVtZTogZGFyaztcbn1cblxuLyogQ3liZXJwdW5rIHByZXNlbmNlLWRvdCBnbG93OiBjeWFuIGhhbG8gZm9yIG9ubGluZSAobWF0Y2hlcyB0aGVcbiAgIGFjY2VudCksIHNvZnRlciB0aGFuIHRoZSBkZWZhdWx0IGdyZWVuIGhhbG8gc28gaXQgZG9lc24ndFxuICAgc3Ryb2JlIGFnYWluc3QgdGhlIHZpb2xldCBiYWNrZHJvcC4gKi9cbltkYXRhLXRoZW1lPVwiY3liZXJwdW5rXCJdIC5jaGFsay1wcmVzZW5jZS1kb3QtLW9ubGluZSB7XG4gIGJhY2tncm91bmQ6IHZhcigtLWNoYWxrLWFjY2VudCk7XG4gIGJveC1zaGFkb3c6IDAgMCA2cHggcmdiYSgwLCAyNDAsIDI1NSwgMC42KTtcbn1cblxuLyogQWN0aXZlIHNpZGViYXIgaXRlbTogZmFpbnQgbWFnZW50YSB3YXNoIGluc3RlYWQgb2YgdGhlIGRlZmF1bHRcbiAgIGdyZWVuIHRpbnQuICovXG5bZGF0YS10aGVtZT1cImN5YmVycHVua1wiXSAuY2hhbGstc2lkZWJhci1pdGVtLS1hY3RpdmUge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgNDYsIDE3MCwgMC4xMik7XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgUGhhc2UgOS43Yzogc29sYXJpemVkLWRhcmsgdGhlbWVcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgRXRoYW4gU2Nob29ub3ZlcidzIHdlbGwta25vd24gcGFsZXR0ZS4gVXNlcyB0aGUgcHVibGlzaGVkIGhleFxuICAgdmFsdWVzIGRpcmVjdGx5IHNvIGl0IG1hdGNoZXMgd2hhdCBwZW9wbGUgZXhwZWN0IGZyb21cbiAgIFwic29sYXJpemVkXCIgaW4gb3RoZXIgZWRpdG9ycy5cblxuICAgTWFwcGluZyBub3RlczpcbiAgIC0gY2hhbGstYmcgICAgICAgICAgPSBiYXNlMDMgICgjMDAyYjM2KVxuICAgLSBjaGFsay1iZy1lbGV2ICAgICA9IGJhc2UwMiAgKCMwNzM2NDIpXG4gICAtIGNoYWxrLWZnICAgICAgICAgID0gYmFzZTAgICAoIzgzOTQ5NikgIC0tIGJvZHkgdGV4dCBvbiBkYXJrXG4gICAtIGNoYWxrLWZnLWJyaWdodCAgID0gYmFzZTEgICAoIzkzYTFhMSkgIC0tIGVtcGhhc2l6ZWRcbiAgIC0gY2hhbGstZmctZGltICAgICAgPSBiYXNlMDEgICgjNTg2ZTc1KSAgLS0gY29tbWVudHMvc2Vjb25kYXJ5XG4gICAtIGNoYWxrLWFjY2VudCAgICAgID0gYmx1ZSAgICAoIzI2OGJkMikgIC0tIHRoZSBzb2xhcml6ZWQgc2lnbmF0dXJlXG4gICAtIGNoYWxrLXdhcm4gICAgICAgID0geWVsbG93ICAoI2I1ODkwMClcbiAgIC0gY2hhbGstZXJyb3IgICAgICAgPSByZWQgICAgICgjZGMzMjJmKVxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbltkYXRhLXRoZW1lPVwic29sYXJpemVkLWRhcmtcIl0ge1xuICAtLWNoYWxrLWJnOiAgICAgICAgICAgIzAwMmIzNjtcbiAgLS1jaGFsay1iZy1lbGV2OiAgICAgICMwNzM2NDI7XG4gIC0tY2hhbGstYmctZWxldi0yOiAgICAjMGU0YTVjO1xuICAtLWNoYWxrLWZnOiAgICAgICAgICAgIzgzOTQ5NjtcbiAgLS1jaGFsay1mZy1kaW06ICAgICAgICM1ODZlNzU7XG4gIC0tY2hhbGstZmctYnJpZ2h0OiAgICAjOTNhMWExO1xuICAtLWNoYWxrLWZnLW11dGVkOiAgICAgIzQ1NjI2YjtcbiAgLS1jaGFsay1ib3JkZXI6ICAgICAgICMwNzM2NDI7XG4gIC0tY2hhbGstYWNjZW50OiAgICAgICAjMjY4YmQyO1xuICAtLWNoYWxrLXdhcm46ICAgICAgICAgI2I1ODkwMDtcbiAgLS1jaGFsay1lcnJvcjogICAgICAgICNkYzMyMmY7XG5cbiAgY29sb3Itc2NoZW1lOiBkYXJrO1xufVxuXG4vKiBTb2xhcml6ZWQgcHJlc2VuY2UtZG90IGdsb3c6IGEgc29mdCBibHVlIGhhbG8gbWF0Y2hpbmcgdGhlXG4gICBhY2NlbnQuIFN1YnRsZXIgdGhhbiB0aGUgZ3JlZW4gdGhlbWUncyBnbG93IGJlY2F1c2Ugc29sYXJpemVkXG4gICBpcyBhIGxvdy1zYXR1cmF0aW9uIHBhbGV0dGUgb3ZlcmFsbC4gKi9cbltkYXRhLXRoZW1lPVwic29sYXJpemVkLWRhcmtcIl0gLmNoYWxrLXByZXNlbmNlLWRvdC0tb25saW5lIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tY2hhbGstYWNjZW50KTtcbiAgYm94LXNoYWRvdzogMCAwIDRweCByZ2JhKDM4LCAxMzksIDIxMCwgMC40NSk7XG59XG5cbi8qIEFjdGl2ZSBzaWRlYmFyIGl0ZW06IGEgbG93LW9wYWNpdHkgd2FzaCBvZiBzb2xhcml6ZWQgYmx1ZS4gKi9cbltkYXRhLXRoZW1lPVwic29sYXJpemVkLWRhcmtcIl0gLmNoYWxrLXNpZGViYXItaXRlbS0tYWN0aXZlIHtcbiAgYmFja2dyb3VuZDogcmdiYSgzOCwgMTM5LCAyMTAsIDAuMTIpO1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIFBoYXNlIDkuN2M6IHBpY2tlciBzd2F0Y2hlcyBmb3IgbmV3IHRoZW1lc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBTdGF0aWMgcHJldmlldyBzd2F0Y2hlcyB1c2UgaGFyZC1jb2RlZCBoZXggKG5vdCB2YXJpYWJsZXMpIHNvXG4gICB0aGV5IGFsd2F5cyBzaG93IHRoZSBUSEVNRSdTIE9XTiBjb2xvcnMgcmVnYXJkbGVzcyBvZiB3aGljaFxuICAgdGhlbWUgaXMgY3VycmVudGx5IGFjdGl2ZS4gU2FtZSBkaWFnb25hbC1zcGxpdCBwYXR0ZXJuIGFzIHRoZVxuICAgZ3JlZW4gKyBsaWdodCBzd2F0Y2hlcyBmcm9tIDkuN2IuXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLmNoYWxrLXByb2ZpbGUtdGhlbWUtc3dhdGNoLXByZXZpZXctLWN5YmVycHVuayB7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsXG4gICAgIzBhMDQyMCAwJSwgIzBhMDQyMCA1MCUsXG4gICAgI2ZmMmVhYSA1MCUsICNmZjJlYWEgMTAwJSk7XG59XG5cbi5jaGFsay1wcm9maWxlLXRoZW1lLXN3YXRjaC1wcmV2aWV3LS1zb2xhcml6ZWQtZGFyayB7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsXG4gICAgIzAwMmIzNiAwJSwgIzAwMmIzNiA1MCUsXG4gICAgIzI2OGJkMiA1MCUsICMyNjhiZDIgMTAwJSk7XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgUGhhc2UgOS43ZDogY29tcGFjdCBtb2RlICsgbm8tdGltZXN0YW1wIGdyaWRcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKiBDb21wYWN0OiB0aWdodGVyIGdhcCBiZXR3ZWVuIG1lc3NhZ2VzLCBzbWFsbGVyIHBlci1yb3cgcGFkZGluZy4gKi9cbi5jaGFsay1tZXNzYWdlcy0tY29tcGFjdCB7XG4gIGdhcDogMXB4O1xufVxuLmNoYWxrLW1lc3NhZ2VzLS1jb21wYWN0IC5jaGFsay1tZXNzYWdlIHtcbiAgcGFkZGluZzogMXB4IHZhcigtLWNoYWxrLXMyKTtcbn1cblxuLyogTm8tdGltZXN0YW1wIHZhcmlhbnQ6IGRyb3AgdGhlIGxlYWRpbmcgdGltZSBjb2x1bW4uIFRoZSBncmlkXG4gICByZWZsb3dzIHRvIHNlbmRlciArIGJvZHkgb25seS4gKi9cbi5jaGFsay1tZXNzYWdlLS1uby10aW1lIHtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiA5Y2ggMWZyO1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIFBoYXNlIDkuN2Q6IFByb2ZpbGVQYW5lbCBjaGF0IHNlY3Rpb25cbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgUmV1c2VzIHRoZSBleGlzdGluZyAuY2hhbGstcHJvZmlsZS1maWVsZCBhbmQgLmNoYWxrLXByb2ZpbGUtbGFiZWxcbiAgIHV0aWxpdGllcyBmcm9tIGVhcmxpZXIgcGhhc2VzLiBBZGRzIGEgY2hlY2tib3gtcm93IHZhcmlhbnQgYW5kIGFcbiAgIHNlbGVjdC1pbnB1dCB2YXJpYW50IHNpbmNlIHRoZSBhcHBlYXJhbmNlIHNlY3Rpb24gb25seSBoYWRcbiAgIHJhZGlvcy5cbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4uY2hhbGstcHJvZmlsZS1jaGVja2JveC1sYWJlbCB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBnYXA6IHZhcigtLWNoYWxrLXMyKTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbn1cbi5jaGFsay1wcm9maWxlLWNoZWNrYm94LWxhYmVsIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gIC8qIFRoZSBkZWZhdWx0IGNoZWNrYm94IGxvb2tzIGZpbmUgYWNyb3NzIHRoZW1lczsganVzdCBhbGlnbiBpdC4gKi9cbiAgd2lkdGg6IDE0cHg7XG4gIGhlaWdodDogMTRweDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBhY2NlbnQtY29sb3I6IHZhcigtLWNoYWxrLWFjY2VudCk7XG59XG5cbi5jaGFsay1wcm9maWxlLXNlbGVjdCB7XG4gIGJhY2tncm91bmQ6IHZhcigtLWNoYWxrLWJnKTtcbiAgY29sb3I6IHZhcigtLWNoYWxrLWZnKTtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tY2hhbGstYm9yZGVyKTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tY2hhbGstcmFkaXVzKTtcbiAgcGFkZGluZzogdmFyKC0tY2hhbGstczEpIHZhcigtLWNoYWxrLXMyKTtcbiAgZm9udDogaW5oZXJpdDtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuLmNoYWxrLXByb2ZpbGUtc2VsZWN0OmRpc2FibGVkIHtcbiAgb3BhY2l0eTogMC41O1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xufVxuLmNoYWxrLXByb2ZpbGUtc2VsZWN0OmZvY3VzLXZpc2libGUge1xuICBvdXRsaW5lOiAxcHggc29saWQgdmFyKC0tY2hhbGstZmctYnJpZ2h0KTtcbiAgb3V0bGluZS1vZmZzZXQ6IC0xcHg7XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgUGhhc2UgOS43ZTogdXNlciBjb2xvciBlZGl0b3JcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4uY2hhbGstdXNlci1jb2xvcnMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBnYXA6IHZhcigtLWNoYWxrLXMyKTtcbiAgbWFyZ2luLXRvcDogdmFyKC0tY2hhbGstczIpO1xufVxuXG4uY2hhbGstdXNlci1jb2xvcnMtZW1wdHkge1xuICBmb250LXNpemU6IHZhcigtLWNoYWxrLXNpemUtc21hbGwpO1xuICBjb2xvcjogdmFyKC0tY2hhbGstZmctZGltKTtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBwYWRkaW5nOiB2YXIoLS1jaGFsay1zMikgMDtcbn1cblxuLmNoYWxrLXVzZXItY29sb3JzLXJvdyB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDM2cHggbWlubWF4KDExMHB4LCBhdXRvKSAyOHB4O1xuICBnYXA6IHZhcigtLWNoYWxrLXMyKTtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cblxuLmNoYWxrLXVzZXItY29sb3JzLWhhbmRsZSB7XG4gIGJhY2tncm91bmQ6IHZhcigtLWNoYWxrLWJnKTtcbiAgY29sb3I6IHZhcigtLWNoYWxrLWZnKTtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tY2hhbGstYm9yZGVyKTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tY2hhbGstcmFkaXVzKTtcbiAgcGFkZGluZzogdmFyKC0tY2hhbGstczEpIHZhcigtLWNoYWxrLXMyKTtcbiAgZm9udDogaW5oZXJpdDtcbiAgbWluLXdpZHRoOiAwOyAvKiBsZXQgaXQgc2hyaW5rIGluc2lkZSBncmlkICovXG59XG4uY2hhbGstdXNlci1jb2xvcnMtaGFuZGxlOmZvY3VzLXZpc2libGUge1xuICBvdXRsaW5lOiAxcHggc29saWQgdmFyKC0tY2hhbGstZmctYnJpZ2h0KTtcbiAgb3V0bGluZS1vZmZzZXQ6IC0xcHg7XG59XG5cbi8qIE5hdGl2ZSBjb2xvciBpbnB1dCAtLSBtaW5pbWFsIHN0eWxpbmcsIGp1c3QgYWxpZ24gdG8gdGhlIHJvdy4gKi9cbi5jaGFsay11c2VyLWNvbG9ycy1jb2xvciB7XG4gIHdpZHRoOiAzNnB4O1xuICBoZWlnaHQ6IDI4cHg7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNoYWxrLWJvcmRlcik7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWNoYWxrLXJhZGl1cyk7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi5jaGFsay11c2VyLWNvbG9ycy1zY29wZSB7XG4gIC8qIFJldXNlIC5jaGFsay1wcm9maWxlLXNlbGVjdCBidXQgdGhlIGdyaWQgbmVlZHMgYSByb3ctYWxpZ25lZFxuICAgICBoZWlnaHQuIFRoZSBuYXRpdmUgc2VsZWN0IHBpY2tzIHVwIG91ciBwYWRkaW5nL2ZvbnQuICovXG4gIGhlaWdodDogMjhweDtcbiAgcGFkZGluZzogMCB2YXIoLS1jaGFsay1zMik7XG59XG5cbi5jaGFsay11c2VyLWNvbG9ycy1kZWxldGUge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgY29sb3I6IHZhcigtLWNoYWxrLWZnLWRpbSk7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1jaGFsay1yYWRpdXMpO1xuICB3aWR0aDogMjhweDtcbiAgaGVpZ2h0OiAyOHB4O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGZvbnQtc2l6ZTogdmFyKC0tY2hhbGstc2l6ZS1zbWFsbCk7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cbi5jaGFsay11c2VyLWNvbG9ycy1kZWxldGU6aG92ZXIge1xuICBjb2xvcjogdmFyKC0tY2hhbGstZXJyb3IpO1xuICBib3JkZXItY29sb3I6IHZhcigtLWNoYWxrLWVycm9yKTtcbn1cblxuLmNoYWxrLXVzZXItY29sb3JzLWFkZCB7XG4gIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQ7XG4gIG1hcmdpbi10b3A6IHZhcigtLWNoYWxrLXMyKTtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGNvbG9yOiB2YXIoLS1jaGFsay1mZy1icmlnaHQpO1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1jaGFsay1ib3JkZXIpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1jaGFsay1yYWRpdXMpO1xuICBwYWRkaW5nOiB2YXIoLS1jaGFsay1zMSkgdmFyKC0tY2hhbGstczMpO1xuICBmb250OiBpbmhlcml0O1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG4uY2hhbGstdXNlci1jb2xvcnMtYWRkOmhvdmVyIHtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jaGFsay1hY2NlbnQpO1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIFBoYXNlIDEwYjogdGhyZWFkIGluZGljYXRvciArIGhvdmVyIHJlcGx5IGJ1dHRvblxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qIFRoZSBncm91cCBkaXYgaXMgZGlzcGxheTpjb250ZW50cyBzbyBpdCBkb2VzblxcJ3QgYWx0ZXIgdGhlXG4gICBleGlzdGluZyBmbGV4IGxheW91dCBvZiAuY2hhbGstbWVzc2FnZXMuIFRoZSBicm93c2VyIGlnbm9yZXMgaXRcbiAgIGZvciBsYXlvdXQgYnV0IGl0IHN0aWxsIHNlcnZlcyBhcyB0aGUgUmVhY3Qga2V5IGJvdW5kYXJ5LiAqL1xuLmNoYWxrLW1lc3NhZ2UtZ3JvdXAge1xuICBkaXNwbGF5OiBjb250ZW50cztcbn1cblxuLyogVGhlIHJlcGx5IGJ1dHRvbiBpcyBwb3NpdGlvbmVkIGF0IHRoZSBlbmQgb2YgdGhlIG1lc3NhZ2UgZ3JpZFxuICAgcm93LCBoaWRkZW4gYnkgZGVmYXVsdCwgcmV2ZWFsZWQgb24gcm93IGhvdmVyLiAqL1xuLmNoYWxrLW1lc3NhZ2Uge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4uY2hhbGstbWVzc2FnZS1yZXBseSB7XG4gIC8qIEluIHRoZSBncmlkLCB0aGlzIGxhbmRzIGluIHRoZSBib2R5IGNvbHVtbiBieSBkZWZhdWx0OyB3ZVxuICAgICBwdWxsIGl0IHZpc3VhbGx5IHRvIHRoZSByb3dcXCdzIHJpZ2h0IGVkZ2Ugd2l0aCBtYXJnaW4tbGVmdDphdXRvXG4gICAgIGluc2lkZSBhIGZsZXguLi4gYnV0IHRoZSByb3cgaXMgYSBncmlkLiBFYXNpZXN0OiBhYnNvbHV0ZVxuICAgICBwb3NpdGlvbiByZWxhdGl2ZSB0byAuY2hhbGstbWVzc2FnZSwgaGlkZSBieSBkZWZhdWx0LCBzaG93XG4gICAgIG9uIGhvdmVyLiAqL1xuICAvKiBob3ZlciBhY3Rpb25zIGFyZSB0b3AtYW5jaG9yZWQgc28gdGhleSBjbGVhciB0YWxsIGltYWdlIHJvd3MgKi9cbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogdmFyKC0tY2hhbGstczIpO1xuICB0b3A6IHZhcigtLWNoYWxrLXMxKTtcbiAgYmFja2dyb3VuZDogdmFyKC0tY2hhbGstYmctZWxldik7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNoYWxrLWJvcmRlcik7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWNoYWxrLXJhZGl1cyk7XG4gIGNvbG9yOiB2YXIoLS1jaGFsay1mZy1kaW0pO1xuICBmb250OiBpbmhlcml0O1xuICBmb250LXNpemU6IHZhcigtLWNoYWxrLXNpemUtc21hbGwpO1xuICBwYWRkaW5nOiAycHggOHB4O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIG9wYWNpdHk6IDA7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDgwbXMgZWFzZTtcbn1cbi5jaGFsay1tZXNzYWdlOmhvdmVyIC5jaGFsay1tZXNzYWdlLXJlcGx5LFxuLmNoYWxrLW1lc3NhZ2UtcmVwbHk6Zm9jdXMtdmlzaWJsZSB7XG4gIG9wYWNpdHk6IDE7XG4gIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xufVxuLmNoYWxrLW1lc3NhZ2UtcmVwbHk6aG92ZXIge1xuICBjb2xvcjogdmFyKC0tY2hhbGstZmctYnJpZ2h0KTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jaGFsay1hY2NlbnQpO1xufVxuLmNoYWxrLW1lc3NhZ2UtcmVwbHk6Zm9jdXMtdmlzaWJsZSB7XG4gIG91dGxpbmU6IDFweCBzb2xpZCB2YXIoLS1jaGFsay1mZy1icmlnaHQpO1xuICBvdXRsaW5lLW9mZnNldDogLTFweDtcbn1cblxuLyogUGhhc2UgMjYgKGdvdmVybmFuY2UgcHJlcmVxKTogb3duZXItb25seSBkZWxldGUgY29udHJvbC4gTWlycm9ycyB0aGVcbiAgIGhvdmVyLXJldmVhbCByZXBseSBidXR0b24gYnV0IHNpdHMganVzdCB0byBpdHMgbGVmdCBzbyB0aGUgdHdvIGRvbid0XG4gICBjb2xsaWRlLiBOb24tb3duZXJzIG5ldmVyIHJlbmRlciB0aGlzLCBzbyB0aGUgcmVwbHkgYnV0dG9uJ3Mgb3duXG4gICByaWdodC1lZGdlIHBvc2l0aW9uIGlzIGxlZnQgdW50b3VjaGVkLiAqL1xuLmNoYWxrLW1lc3NhZ2UtZGVsZXRlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogY2FsYyh2YXIoLS1jaGFsay1zMikgKyA1cmVtKTtcbiAgdG9wOiB2YXIoLS1jaGFsay1zMSk7XG4gIGJhY2tncm91bmQ6IHZhcigtLWNoYWxrLWJnLWVsZXYpO1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1jaGFsay1ib3JkZXIpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1jaGFsay1yYWRpdXMpO1xuICBjb2xvcjogdmFyKC0tY2hhbGstZmctZGltKTtcbiAgZm9udDogaW5oZXJpdDtcbiAgZm9udC1zaXplOiB2YXIoLS1jaGFsay1zaXplLXNtYWxsKTtcbiAgcGFkZGluZzogMnB4IDhweDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBvcGFjaXR5OiAwO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSA4MG1zIGVhc2U7XG59XG4uY2hhbGstbWVzc2FnZTpob3ZlciAuY2hhbGstbWVzc2FnZS1kZWxldGUsXG4uY2hhbGstbWVzc2FnZS1kZWxldGU6Zm9jdXMtdmlzaWJsZSB7XG4gIG9wYWNpdHk6IDE7XG4gIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xufVxuLmNoYWxrLW1lc3NhZ2UtZGVsZXRlOmhvdmVyIHtcbiAgY29sb3I6IHZhcigtLWNoYWxrLWRhbmdlciwgI2U1NDg0ZCk7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tY2hhbGstZGFuZ2VyLCAjZTU0ODRkKTtcbn1cbi5jaGFsay1tZXNzYWdlLWRlbGV0ZTpmb2N1cy12aXNpYmxlIHtcbiAgb3V0bGluZTogMXB4IHNvbGlkIHZhcigtLWNoYWxrLWZnLWJyaWdodCk7XG4gIG91dGxpbmUtb2Zmc2V0OiAtMXB4O1xufVxuXG4vKiBQaGFzZSAyNjogdG9tYnN0b25lIHJlbmRlcmluZyBmb3IgYSBkZWxldGVkIG1lc3NhZ2UgYm9keS4gKi9cbi5jaGFsay1tZXNzYWdlLWRlbGV0ZWQge1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGNvbG9yOiB2YXIoLS1jaGFsay1mZy1kaW0pO1xuICBvcGFjaXR5OiAwLjg7XG59XG5cbi8qIFBoYXNlIDEwYi1maXg6IHRocmVhZCBpbmRpY2F0b3IuXG4gICAtIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQgc28gdGhlIGJ1dHRvbiBzaHJpbmtzIHRvIGl0cyBjb250ZW50XG4gICAgIGluc3RlYWQgb2Ygc3RyZXRjaGluZyB0byB0aGUgcm93IHdpZHRoIChpdCdzIGluc2lkZSBhIGZsZXhcbiAgICAgY29sdW1uKS5cbiAgIC0gc3VidGxlIGFjY2VudC1jb2xvcmVkIHRleHQgYWZmb3JkYW5jZSwgbm8gYm9yZGVyIG9yIGJhY2tncm91bmRcbiAgICAgYm94ICh3aGljaCBtYWRlIGl0IGxvb2sgbGlrZSBhIGJhbm5lciBpbiAxMGIpLlxuICAgLSBtb2Rlc3QgZml4ZWQgaW5kZW50IHRoYXQgZG9lc24ndCBkZXBlbmQgb24gYGNoYCBhcml0aG1ldGljLlxuICAgICBEb2Vzbid0IHBpeGVsLWFsaWduIHdpdGggdGhlIGJvZHkgY29sdW1uIGJ1dCByZWFkcyBhc1xuICAgICBpbnRlbnRpb25hbCByZWdhcmRsZXNzIG9mIHRpbWVzdGFtcCAvIGNvbXBhY3QgLyBuby10aW1lIG1vZGUuICovXG4uY2hhbGstbWVzc2FnZS10aHJlYWQtaW5kaWNhdG9yIHtcbiAgYWxpZ24tc2VsZjogZmxleC1zdGFydDtcbiAgbWFyZ2luLWxlZnQ6IHZhcigtLWNoYWxrLXMyKTtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tY2hhbGstczEpO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiBub25lO1xuICBjb2xvcjogdmFyKC0tY2hhbGstYWNjZW50KTtcbiAgZm9udDogaW5oZXJpdDtcbiAgZm9udC1zaXplOiB2YXIoLS1jaGFsay1zaXplLXNtYWxsKTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBwYWRkaW5nOiAwO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuLmNoYWxrLW1lc3NhZ2UtdGhyZWFkLWluZGljYXRvcjpob3ZlciB7XG4gIGNvbG9yOiB2YXIoLS1jaGFsay1mZy1icmlnaHQpO1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbn1cbi5jaGFsay1tZXNzYWdlLXRocmVhZC1pbmRpY2F0b3I6Zm9jdXMtdmlzaWJsZSB7XG4gIG91dGxpbmU6IDFweCBzb2xpZCB2YXIoLS1jaGFsay1mZy1icmlnaHQpO1xuICBvdXRsaW5lLW9mZnNldDogMnB4O1xuICBib3JkZXItcmFkaXVzOiAycHg7XG59XG5cbi8qIENvbXBhY3QgbW9kZTogemVybyBvdXQgdmVydGljYWwgbWFyZ2luIHNvIHRoZSBmZWVkIHN0YXlzIHRpZ2h0LiAqL1xuLmNoYWxrLW1lc3NhZ2VzLS1jb21wYWN0IC5jaGFsay1tZXNzYWdlLXRocmVhZC1pbmRpY2F0b3Ige1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIFBoYXNlIDEwYzogdGhyZWFkIHBhbmVsXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIFdoZW4gc3RhdGUub3BlblRocmVhZCBpcyBzZXQsIHRoZSBTUEEgYWRkcyB0aGVcbiAgIGNoYWxrLWFwcC0tdGhyZWFkLW9wZW4gbW9kaWZpZXIgb24gdGhlIHJvb3QgZ3JpZCBjb250YWluZXIuXG4gICBUaGlzIHJlLWRlZmluZXMgdGhlIGdyaWQgdG8gYWRkIGEgdGhpcmQgY29sdW1uIGZvciB0aGUgcGFuZWwuXG5cbiAgIERlc2t0b3AgKD49IDc2OHB4KTogdGhyZWUgY29sdW1ucyAtLSBzaWRlYmFyIC8gbWFpbiAvIHRocmVhZC5cbiAgIE1vYmlsZSAoPCA3NjhweCk6IHRoZSBwYW5lbCBjb3ZlcnMgbWFpbiArIHRoZSBjaGFubmVsIGZvb3Rlci5cbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4uY2hhbGstYXBwLS1waGFzZTA4Yi5jaGFsay1hcHAtLXRocmVhZC1vcGVuIHtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAyMjBweCAxZnIgMzQwcHg7XG4gIGdyaWQtdGVtcGxhdGUtYXJlYXM6XG4gICAgXCJoZWFkZXIgIGhlYWRlciBoZWFkZXJcIlxuICAgIFwic2lkZWJhciBtYWluICAgdGhyZWFkXCJcbiAgICBcImZvb3RlciAgZm9vdGVyIHRocmVhZFwiO1xufVxuLmNoYWxrLWFwcC0tcGhhc2UwOGIuY2hhbGstYXBwLS10aHJlYWQtb3BlbiAuY2hhbGstdGhyZWFkLXBhbmVsIHtcbiAgZ3JpZC1hcmVhOiB0aHJlYWQ7XG59XG5cbi8qIFBhbmVsOiB2ZXJ0aWNhbCBmbGV4IHdpdGggaGVhZGVyIC8gc2Nyb2xsYWJsZSBib2R5IC8gZm9vdGVyLlxuICAgVG9wICsgYm90dG9tIGJvcmRlcnMgbWF0Y2ggdGhlIGV4aXN0aW5nIGNoYWxrLWNoYW5uZWwtaGVhZGVyIC9cbiAgIGNoYWxrLWZvb3RlciBhZXN0aGV0aWNzLiAqL1xuLmNoYWxrLXRocmVhZC1wYW5lbCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIG1pbi1oZWlnaHQ6IDA7IC8qIGxldCBpbnRlcm5hbCBzY3JvbGwgd29yayBpbiBncmlkICovXG4gIGJvcmRlci1sZWZ0OiAxcHggc29saWQgdmFyKC0tY2hhbGstYm9yZGVyKTtcbiAgYmFja2dyb3VuZDogdmFyKC0tY2hhbGstYmcpO1xufVxuXG4uY2hhbGstdGhyZWFkLXBhbmVsLWhlYWRlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgcGFkZGluZzogdmFyKC0tY2hhbGstczIpIHZhcigtLWNoYWxrLXMzKTtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWNoYWxrLWJvcmRlcik7XG59XG5cbi5jaGFsay10aHJlYWQtcGFuZWwtdGl0bGUge1xuICBjb2xvcjogdmFyKC0tY2hhbGstZmctYnJpZ2h0KTtcbiAgZm9udC1zaXplOiB2YXIoLS1jaGFsay1zaXplLWJvZHkpO1xuICBsZXR0ZXItc3BhY2luZzogMC4wOGVtO1xuICB0ZXh0LXRyYW5zZm9ybTogbG93ZXJjYXNlO1xufVxuXG4uY2hhbGstdGhyZWFkLXBhbmVsLWNsb3NlIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogbm9uZTtcbiAgY29sb3I6IHZhcigtLWNoYWxrLWZnLWRpbSk7XG4gIGZvbnQtc2l6ZTogMThweDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgcGFkZGluZzogMnB4IDhweDtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tY2hhbGstcmFkaXVzKTtcbn1cbi5jaGFsay10aHJlYWQtcGFuZWwtY2xvc2U6aG92ZXIge1xuICBjb2xvcjogdmFyKC0tY2hhbGstZmctYnJpZ2h0KTtcbiAgYmFja2dyb3VuZDogdmFyKC0tY2hhbGstYmctZWxldik7XG59XG4uY2hhbGstdGhyZWFkLXBhbmVsLWNsb3NlOmZvY3VzLXZpc2libGUge1xuICBvdXRsaW5lOiAxcHggc29saWQgdmFyKC0tY2hhbGstZmctYnJpZ2h0KTtcbiAgb3V0bGluZS1vZmZzZXQ6IC0xcHg7XG59XG5cbi8qIEJvZHkgc2Nyb2xsczsgbWluLWhlaWdodDowIGxldHMgaXQgc2hyaW5rIHdpdGhpbiB0aGUgZmxleCBsYXlvdXQuICovXG4uY2hhbGstdGhyZWFkLXBhbmVsLWJvZHkge1xuICBmbGV4OiAxIDEgYXV0bztcbiAgbWluLWhlaWdodDogMDtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgcGFkZGluZzogdmFyKC0tY2hhbGstczIpIHZhcigtLWNoYWxrLXMyKTtcbn1cblxuLmNoYWxrLXRocmVhZC1wYW5lbC1wYXJlbnQge1xuICAvKiBUaGUgaGVhZCBtZXNzYWdlIGluaGVyaXRzIGNoYWxrLW1lc3NhZ2VzIHN0eWxpbmcgYmVjYXVzZSBpdFxcJ3NcbiAgICAgd3JhcHBlZCBpbiBhIE1lc3NhZ2VMaXN0LiBKdXN0IGdpdmUgaXQgYSBzb2Z0IHNlcGFyYXRvciBiZWxvdy4gKi9cbiAgcGFkZGluZy1ib3R0b206IHZhcigtLWNoYWxrLXMyKTtcbn1cblxuLmNoYWxrLXRocmVhZC1wYW5lbC1kaXZpZGVyIHtcbiAgaGVpZ2h0OiAxcHg7XG4gIGJhY2tncm91bmQ6IHZhcigtLWNoYWxrLWJvcmRlcik7XG4gIG1hcmdpbjogdmFyKC0tY2hhbGstczIpIDA7XG59XG5cbi5jaGFsay10aHJlYWQtcGFuZWwtbG9hZGluZyxcbi5jaGFsay10aHJlYWQtcGFuZWwtZW1wdHkge1xuICBjb2xvcjogdmFyKC0tY2hhbGstZmctbXV0ZWQpO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIHBhZGRpbmc6IHZhcigtLWNoYWxrLXMyKSB2YXIoLS1jaGFsay1zMik7XG4gIGZvbnQtc2l6ZTogdmFyKC0tY2hhbGstc2l6ZS1zbWFsbCk7XG59XG5cbi5jaGFsay10aHJlYWQtcGFuZWwtZm9vdGVyIHtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWNoYWxrLWJvcmRlcik7XG4gIHBhZGRpbmc6IHZhcigtLWNoYWxrLXMyKTtcbn1cblxuLyogTW9iaWxlOiA8IDc2OHB4LiBUaGUgcGFuZWwgdGFrZXMgb3ZlciB0aGUgZnVsbCBtYWluICsgY2hhbm5lbFxuICAgY29tcG9zZXIgYXJlYS4gV2UgaGlkZSBtYWluIGFuZCB0aGUgY2hhbm5lbCBmb290ZXIgKHdoaWNoIGhhcyB0aGVcbiAgIGNoYW5uZWwgY29tcG9zZXIpIHdoaWxlIGEgdGhyZWFkIGlzIG9wZW4sIGFuZCBsZXQgdGhlIHBhbmVsIHNwYW5cbiAgIGZyb20gc2lkZWJhci1lZGdlIHRvIHJpZ2h0LWVkZ2Ugb2YgdGhlIHZpZXdwb3J0LiAqL1xuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC5jaGFsay1hcHAtLXBoYXNlMDhiLmNoYWxrLWFwcC0tdGhyZWFkLW9wZW4ge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMjIwcHggMWZyO1xuICAgIGdyaWQtdGVtcGxhdGUtYXJlYXM6XG4gICAgICBcImhlYWRlciAgaGVhZGVyXCJcbiAgICAgIFwic2lkZWJhciB0aHJlYWRcIlxuICAgICAgXCJzaWRlYmFyIHRocmVhZFwiO1xuICB9XG4gIC5jaGFsay1hcHAtLXBoYXNlMDhiLmNoYWxrLWFwcC0tdGhyZWFkLW9wZW4gLmNoYWxrLW1haW4sXG4gIC5jaGFsay1hcHAtLXBoYXNlMDhiLmNoYWxrLWFwcC0tdGhyZWFkLW9wZW4gLmNoYWxrLWZvb3RlciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIFBoYXNlIDEwZDogdW5yZWFkIGluZGljYXRvciBzdWZmaXhcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgV2hlbiBhIHRocmVhZCBoYXMgcmVwbGllcyB0aGUgdXNlciBoYXNuXFwndCBzZWVuIHlldCwgdGhlIGluZGljYXRvclxuICAgKFwiXHUyMUIzIDMgcmVwbGllc1wiKSBnZXRzIGEgXCIgXHUwMEI3IG5ld1wiIHN1ZmZpeCBpbiBmZy1icmlnaHQuIFRoZVxuICAgLS11bnJlYWQgbW9kaWZpZXIgb24gdGhlIGJ1dHRvbiBjYW4gYWxzbyBiZSB1c2VkIGZvciBib2xkZXJcbiAgIHN0eWxpbmcgaWYgZGVzaXJlZDsgZm9yIG5vdyBqdXN0IHRoZSBzdWZmaXguXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLmNoYWxrLW1lc3NhZ2UtdGhyZWFkLWluZGljYXRvci0tdW5yZWFkIHtcbiAgLyogQnVtcCB0aGUgYmFzZSBjb2xvciBzbyB0aGUgd2hvbGUgaW5kaWNhdG9yIHJlYWRzIGEgdG91Y2hcbiAgICAgbW9yZSBlbXBoYXRpY2FsbHkuIFN1YnRsZSAtLSB0aGUgc3VmZml4IGNhcnJpZXMgbW9zdCBvZiB0aGVcbiAgICAgc2lnbmFsLiAqL1xuICBjb2xvcjogdmFyKC0tY2hhbGstZmctYnJpZ2h0KTtcbn1cblxuLmNoYWxrLW1lc3NhZ2UtdGhyZWFkLWluZGljYXRvci1uZXcge1xuICBjb2xvcjogdmFyKC0tY2hhbGstZmctYnJpZ2h0KTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDJlbTtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBQaGFzZSAxMGU6IHRocmVhZCBwcmV2aWV3IHJvd1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBTaXRzIGRpcmVjdGx5IGJlbmVhdGggdGhlIGluZGljYXRvciB3aXRoIHRoZSBzYW1lIGxlZnQgaW5kZW50LlxuICAgT25lIGxpbmUsIGVsbGlwc2lzLXRydW5jYXRlZC4gU3VidGxlIGJ5IGRlZmF1bHQgKGZnLWRpbSk7XG4gICBjbGlja2luZyBpdCBvcGVucyB0aGUgdGhyZWFkLlxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi5jaGFsay1tZXNzYWdlLXRocmVhZC1wcmV2aWV3IHtcbiAgYWxpZ24tc2VsZjogZmxleC1zdGFydDtcbiAgLyogUGhhc2UgMTBlLXR3ZWFrOiBpbmRlbnQgcGFzdCB0aGUgaW5kaWNhdG9yJ3MgXCJcdTIxQjMgTiBcIiBwcmVmaXggc29cbiAgICAgdGhlIHByZXZpZXcgYm9keSBhbGlnbnMgcm91Z2hseSB1bmRlciB0aGUgV09SRCBcInJlcGxpZXNcIi5cbiAgICAgRml4ZWQtcHggb2Zmc2V0IHRvIGF2b2lkIGNvdXBsaW5nIHdpdGggdGhlIGluZGljYXRvcidzIGNoIHVuaXRcbiAgICAgKHdoaWNoIHdvdWxkIHNoaWZ0IHdoZW4gZm9udCBzaXplcyBkaXZlcmdlKS4gKi9cbiAgbWFyZ2luLWxlZnQ6IGNhbGModmFyKC0tY2hhbGstczIpICsgMjhweCk7XG4gIG1hcmdpbi10b3A6IC0ycHg7ICAgICAgIC8qIHR1Y2sgdXAgYWdhaW5zdCB0aGUgaW5kaWNhdG9yICovXG4gIG1hcmdpbi1ib3R0b206IHZhcigtLWNoYWxrLXMxKTtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogbm9uZTtcbiAgY29sb3I6IHZhcigtLWNoYWxrLWZnLWRpbSk7XG4gIGZvbnQ6IGluaGVyaXQ7XG4gIC8qIFBoYXNlIDEwZS10d2Vhazogc21hbGxlciArIGl0YWxpYy4gVGhlIGl0YWxpYyBtYXJrcyB0aGUgbGluZSBhc1xuICAgICBtZXRhLWNvbnRleHQgKHByZXZpZXcgb2YgYW5vdGhlciBtZXNzYWdlKSBzbyBpdCBkb2Vzbid0IHJlYWRcbiAgICAgYXMgYSBwcmltYXJ5IG1lc3NhZ2Ugcm93LiAqL1xuICBmb250LXNpemU6IDExcHg7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBwYWRkaW5nOiAwO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAvKiBzaW5nbGUgbGluZSB3aXRoIGVsbGlwc2lzLiBtYXgtd2lkdGgga2VlcHMgaXQgZnJvbSBvdmVyZmxvd2luZ1xuICAgICBwYXN0IHRoZSBtZXNzYWdlIGNvbHVtbiBvbiB2ZXJ5IHdpZGUgdGhyZWFkcy4gKi9cbiAgbWF4LXdpZHRoOiBtaW4oNjBjaCwgODAlKTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuLmNoYWxrLW1lc3NhZ2UtdGhyZWFkLXByZXZpZXc6aG92ZXIge1xuICBjb2xvcjogdmFyKC0tY2hhbGstZmcpO1xufVxuLmNoYWxrLW1lc3NhZ2UtdGhyZWFkLXByZXZpZXc6Zm9jdXMtdmlzaWJsZSB7XG4gIG91dGxpbmU6IDFweCBzb2xpZCB2YXIoLS1jaGFsay1mZy1icmlnaHQpO1xuICBvdXRsaW5lLW9mZnNldDogMnB4O1xuICBib3JkZXItcmFkaXVzOiAycHg7XG59XG5cbi5jaGFsay1tZXNzYWdlLXRocmVhZC1wcmV2aWV3LXNlbmRlciB7XG4gIGNvbG9yOiB2YXIoLS1jaGFsay1mZy1icmlnaHQpO1xufVxuXG4uY2hhbGstbWVzc2FnZS10aHJlYWQtcHJldmlldy1ib2R5IHtcbiAgLyogaW5oZXJpdHMgY29sb3IgZnJvbSB0aGUgcGFyZW50IGJ1dHRvbiAqL1xufVxuXG4vKiBDb21wYWN0IG1vZGU6IHNhbWUgc2hyaW5rIGFzIHRoZSBpbmRpY2F0b3IuICovXG4uY2hhbGstbWVzc2FnZXMtLWNvbXBhY3QgLmNoYWxrLW1lc3NhZ2UtdGhyZWFkLXByZXZpZXcge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBQaGFzZSAxMWMtMiBQUiA0OiBDaGFubmVsTWVtYmVyc1BhbmVsIHN0eWxlcy5cbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyogTW9kYWwgc2l6aW5nIHR3ZWFrOiB0aGUgbWVtYmVycyBwYW5lbCBzaG91bGQgYmUgd2lkZXIgdGhhbiB0aGVcbiAgIGRlZmF1bHQgQ29uZmlybSBtb2RhbCBzbyB0aGUgZnJpZW5kIHBpY2tlciBkb2Vzbid0IGZlZWwgY3JhbXBlZC4gKi9cbi5jaGFsay1jaGFubmVsLW1lbWJlcnMtcGFuZWwge1xuICBtaW4td2lkdGg6IG1pbig0ODBweCwgOTB2dyk7XG4gIG1heC13aWR0aDogbWluKDY0MHB4LCA5NXZ3KTtcbn1cblxuLmNoYWxrLWNoYW5uZWwtbWVtYmVycy1saXN0IHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAwO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBnYXA6IHZhcigtLWNoYWxrLXMxKTtcbn1cblxuLmNoYWxrLWNoYW5uZWwtbWVtYmVycy1pdGVtIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwYWRkaW5nOiB2YXIoLS1jaGFsay1zMik7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNoYWxrLWJvcmRlcik7XG4gIGJhY2tncm91bmQ6IHZhcigtLWNoYWxrLWJnLWVsZXYpO1xuICBnYXA6IHZhcigtLWNoYWxrLXMyKTtcbn1cblxuLmNoYWxrLWNoYW5uZWwtbWVtYmVycy1oYW5kbGUge1xuICBjb2xvcjogdmFyKC0tY2hhbGstZmcpO1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cbi5jaGFsay1jaGFubmVsLW1lbWJlcnMtc2VsZi10YWcsXG4uY2hhbGstY2hhbm5lbC1tZW1iZXJzLWNyZWF0b3ItdGFnIHtcbiAgY29sb3I6IHZhcigtLWNoYWxrLWZnLW11dGVkKTtcbiAgZm9udC1zaXplOiB2YXIoLS1jaGFsay1zaXplLXNtYWxsKTtcbn1cblxuLmNoYWxrLWNoYW5uZWwtbWVtYmVycy1yZW1vdmUge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tY2hhbGstYm9yZGVyKTtcbiAgY29sb3I6IHZhcigtLWNoYWxrLWZnLWRpbSk7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBmb250LXNpemU6IHZhcigtLWNoYWxrLXNpemUtYm9keSk7XG4gIHBhZGRpbmc6IDAgdmFyKC0tY2hhbGstczIpO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHRleHQtdHJhbnNmb3JtOiBsb3dlcmNhc2U7XG4gIGZsZXgtc2hyaW5rOiAwO1xufVxuLmNoYWxrLWNoYW5uZWwtbWVtYmVycy1yZW1vdmU6aG92ZXIge1xuICBib3JkZXItY29sb3I6IHZhcigtLWNoYWxrLXdhcm4pO1xuICBjb2xvcjogdmFyKC0tY2hhbGstd2Fybik7XG59XG4uY2hhbGstY2hhbm5lbC1tZW1iZXJzLXJlbW92ZTpkaXNhYmxlZCB7XG4gIG9wYWNpdHk6IDAuNDtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbn1cblxuLmNoYWxrLWNoYW5uZWwtbWVtYmVycy1jb25maXJtLXJvdyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGdhcDogdmFyKC0tY2hhbGstczEpO1xuICBmbGV4LXNocmluazogMDtcbn1cblxuLmNoYWxrLWNoYW5uZWwtbWVtYmVycy1jb25maXJtLXRleHQge1xuICBjb2xvcjogdmFyKC0tY2hhbGstd2Fybik7XG4gIGZvbnQtc2l6ZTogdmFyKC0tY2hhbGstc2l6ZS1zbWFsbCk7XG4gIG1hcmdpbi1yaWdodDogdmFyKC0tY2hhbGstczEpO1xufVxuXG4uY2hhbGstY2hhbm5lbC1tZW1iZXJzLWVycm9yIHtcbiAgbWFyZ2luLXRvcDogdmFyKC0tY2hhbGstczIpO1xuICBwYWRkaW5nOiB2YXIoLS1jaGFsay1zMik7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNoYWxrLXdhcm4pO1xuICBjb2xvcjogdmFyKC0tY2hhbGstd2Fybik7XG4gIGZvbnQtc2l6ZTogdmFyKC0tY2hhbGstc2l6ZS1zbWFsbCk7XG59XG5cbi5jaGFsay1jaGFubmVsLW1lbWJlcnMtZW1wdHksXG4uY2hhbGstY2hhbm5lbC1tZW1iZXJzLWhpbnQge1xuICBjb2xvcjogdmFyKC0tY2hhbGstZmctbXV0ZWQpO1xuICBmb250LXNpemU6IHZhcigtLWNoYWxrLXNpemUtc21hbGwpO1xuICBtYXJnaW46IDAgMCB2YXIoLS1jaGFsay1zMikgMDtcbn1cblxuLyogQ29tcGFjdCBidXR0b24gdmFyaWFudCBmb3IgaW5saW5lIGNvbmZpcm0gcm93cy4gKi9cbi5jaGFsay1idXR0b24tLXNtYWxsIHtcbiAgcGFkZGluZzogMCB2YXIoLS1jaGFsay1zMik7XG4gIGZvbnQtc2l6ZTogdmFyKC0tY2hhbGstc2l6ZS1zbWFsbCk7XG59XG5cbi8qIFwibWVtYmVyc1wiIGJ1dHRvbiBpbiB0aGUgY2hhbm5lbCBoZWFkZXIuICovXG4uY2hhbGstY2hhbm5lbC1oZWFkZXItYWN0aW9uIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNoYWxrLWJvcmRlcik7XG4gIGNvbG9yOiB2YXIoLS1jaGFsay1mZy1kaW0pO1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgZm9udC1zaXplOiB2YXIoLS1jaGFsay1zaXplLXNtYWxsKTtcbiAgcGFkZGluZzogMCB2YXIoLS1jaGFsay1zMik7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgdGV4dC10cmFuc2Zvcm06IGxvd2VyY2FzZTtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG59XG4uY2hhbGstY2hhbm5lbC1oZWFkZXItYWN0aW9uOmhvdmVyIHtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jaGFsay1mZy1icmlnaHQpO1xuICBjb2xvcjogdmFyKC0tY2hhbGstZmctYnJpZ2h0KTtcbn1cblxuXG4vKiAtLSBNZW1iZXJzIHBhbmVsICsga2V5IHN0YXR1cyAocGhhc2UgMjNlKSAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLmNoYWxrLW1lbWJlcnMtcGFuZWwge1xuICB3aWR0aDogMzYwcHg7XG4gIG1heC13aWR0aDogOTJ2dztcbn1cbi5jaGFsay1tZW1iZXJzLWhlYWRlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgYWxpZ24taXRlbXM6IGJhc2VsaW5lO1xuICBwYWRkaW5nOiAwLjc1cmVtIDFyZW0gMC41cmVtO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tY2hhbGstYm9yZGVyLCAjMWYyYTFmKTtcbn1cbi5jaGFsay1tZW1iZXJzLXRpdGxlIHtcbiAgY29sb3I6IHZhcigtLWNoYWxrLWZnLWJyaWdodCwgI2M4ZmZjOCk7XG59XG4uY2hhbGstbWVtYmVycy1jaGFuIHtcbiAgY29sb3I6IHZhcigtLWNoYWxrLWZnLWRpbSwgIzVhOGE1YSk7XG4gIG1hcmdpbi1sZWZ0OiAwLjM1cmVtO1xufVxuLmNoYWxrLW1lbWJlcnMtaGVhZGVyLWFjdGlvbnMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBnYXA6IDAuMjVyZW07XG59XG4uY2hhbGstbWVtYmVycy1yZWZyZXNoIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGNvbG9yOiB2YXIoLS1jaGFsay1mZy1kaW0sICM1YThhNWEpO1xuICBib3JkZXI6IG5vbmU7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBmb250LXNpemU6IDAuOHJlbTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBwYWRkaW5nOiAwLjJyZW0gMC41cmVtO1xufVxuLmNoYWxrLW1lbWJlcnMtcmVmcmVzaDpob3ZlciB7IGNvbG9yOiB2YXIoLS1jaGFsay1mZywgI2M4ZmZjOCk7IH1cbi5jaGFsay1tZW1iZXJzLXJlZnJlc2g6ZGlzYWJsZWQgeyBvcGFjaXR5OiAwLjU7IGN1cnNvcjogZGVmYXVsdDsgfVxuXG4uY2hhbGstbWVtYmVycy1ib2R5IHtcbiAgcGFkZGluZzogMC41cmVtIDA7XG4gIG1heC1oZWlnaHQ6IDUwdmg7XG4gIG92ZXJmbG93LXk6IGF1dG87XG59XG4uY2hhbGstbWVtYmVycy1lbXB0eSB7XG4gIHBhZGRpbmc6IDFyZW07XG4gIGNvbG9yOiB2YXIoLS1jaGFsay1mZy1kaW0sICM1YThhNWEpO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4uY2hhbGstbWVtYmVycy1saXN0IHsgbGlzdC1zdHlsZTogbm9uZTsgbWFyZ2luOiAwOyBwYWRkaW5nOiAwOyB9XG4uY2hhbGstbWVtYmVycy1yb3cge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDAuNHJlbSAxcmVtO1xufVxuLmNoYWxrLW1lbWJlcnMtcm93OmhvdmVyIHsgYmFja2dyb3VuZDogdmFyKC0tY2hhbGstYmctaG92ZXIsICMxMjE5MTIpOyB9XG4uY2hhbGstbWVtYmVycy1oYW5kbGUgeyBjb2xvcjogdmFyKC0tY2hhbGstZmcsICNjOGZmYzgpOyB9XG4uY2hhbGstbWVtYmVycy15b3UgeyBjb2xvcjogdmFyKC0tY2hhbGstZmctZGltLCAjNWE4YTVhKTsgfVxuXG4uY2hhbGstbWVtYmVycy1zdGF0dXMge1xuICBmb250LXNpemU6IDAuNzVyZW07XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGxldHRlci1zcGFjaW5nOiAwLjA4ZW07XG4gIHBhZGRpbmc6IDFweCA2cHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkIGN1cnJlbnRDb2xvcjtcbn1cbi5jaGFsay1tZW1iZXJzLXN0YXR1cy0taGFzIHsgY29sb3I6IHZhcigtLWNoYWxrLWFjY2VudCwgIzVjZmZiMSk7IH1cbi5jaGFsay1tZW1iZXJzLXN0YXR1cy0td2FpdGluZyB7IGNvbG9yOiB2YXIoLS1jaGFsay1mZy1tdXRlZCwgIzZhN2E2YSk7IH1cblxuLmNoYWxrLW1lbWJlcnMtZm9vdGVyIHtcbiAgcGFkZGluZzogMC42cmVtIDFyZW0gMC44cmVtO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tY2hhbGstYm9yZGVyLCAjMWYyYTFmKTtcbn1cbi5jaGFsay1tZW1iZXJzLXJlc2hhcmUge1xuICB3aWR0aDogMTAwJTtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGNvbG9yOiB2YXIoLS1jaGFsay1hY2NlbnQsICM1Y2ZmYjEpO1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1jaGFsay1hY2NlbnQsICM1Y2ZmYjEpO1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgZm9udC1zaXplOiAwLjg1cmVtO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHBhZGRpbmc6IDAuNHJlbSAwLjZyZW07XG59XG4uY2hhbGstbWVtYmVycy1yZXNoYXJlOmhvdmVyIHsgYmFja2dyb3VuZDogcmdiYSg5MiwgMjU1LCAxNzcsIDAuMDgpOyB9XG4uY2hhbGstbWVtYmVycy1yZXNoYXJlOmRpc2FibGVkIHsgb3BhY2l0eTogMC41OyBjdXJzb3I6IGRlZmF1bHQ7IH1cbi5jaGFsay1tZW1iZXJzLWFsbHNldCxcbi5jaGFsay1tZW1iZXJzLW5va2V5IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZm9udC1zaXplOiAwLjhyZW07XG4gIGNvbG9yOiB2YXIoLS1jaGFsay1mZy1kaW0sICM1YThhNWEpO1xufVxuXG4vKiAtLSBWZXJpZmljYXRpb246IGJhZGdlcyArIHZlcmlmeSB2aWV3IChwaGFzZSAyNGIpIC0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLmNoYWxrLW1lbWJlcnMtYmFkZ2VzIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiAwLjRyZW07XG59XG5cbi5jaGFsay12ZXJpZnktYmFkZ2Uge1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgZm9udC1zaXplOiAwLjdyZW07XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGxldHRlci1zcGFjaW5nOiAwLjA2ZW07XG4gIHBhZGRpbmc6IDFweCA2cHg7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IDFweCBzb2xpZCBjdXJyZW50Q29sb3I7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbi5jaGFsay12ZXJpZnktYmFkZ2U6ZGlzYWJsZWQgeyBjdXJzb3I6IGRlZmF1bHQ7IG9wYWNpdHk6IDAuNzsgfVxuLmNoYWxrLXZlcmlmeS1iYWRnZS0tdmVyaWZpZWQgeyBjb2xvcjogdmFyKC0tY2hhbGstYWNjZW50LCAjNWNmZmIxKTsgfVxuLmNoYWxrLXZlcmlmeS1iYWRnZS0tdW52ZXJpZmllZCB7IGNvbG9yOiB2YXIoLS1jaGFsay1mZy1kaW0sICM1YThhNWEpOyB9XG4uY2hhbGstdmVyaWZ5LWJhZGdlLS1jaGFuZ2VkIHsgY29sb3I6IHZhcigtLWNoYWxrLXdhcm4sICNmZmNjNjYpOyB9XG4uY2hhbGstdmVyaWZ5LWJhZGdlLS1ub25lIHsgY29sb3I6IHZhcigtLWNoYWxrLWZnLW11dGVkLCAjNmE3YTZhKTsgfVxuXG4uY2hhbGstbWVtYmVycy1iYWNrIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogbm9uZTtcbiAgY29sb3I6IHZhcigtLWNoYWxrLWZnLWRpbSwgIzVhOGE1YSk7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBmb250LXNpemU6IGluaGVyaXQ7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgcGFkZGluZzogMDtcbn1cbi5jaGFsay1tZW1iZXJzLWJhY2s6aG92ZXIgeyBjb2xvcjogdmFyKC0tY2hhbGstZmcsICNjOGZmYzgpOyB9XG5cbi5jaGFsay12ZXJpZnktdmlldyB7XG4gIHBhZGRpbmc6IDAuNzVyZW0gMXJlbSAxcmVtO1xufVxuLmNoYWxrLXZlcmlmeS1pbnRybyB7XG4gIGNvbG9yOiB2YXIoLS1jaGFsay1mZy1kaW0sICM1YThhNWEpO1xuICBmb250LXNpemU6IDAuODVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIG1hcmdpbi1ib3R0b206IDAuNzVyZW07XG59XG4uY2hhbGstdmVyaWZ5LXdhcm4ge1xuICBjb2xvcjogdmFyKC0tY2hhbGstd2FybiwgI2ZmY2M2Nik7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNoYWxrLXdhcm4sICNmZmNjNjYpO1xuICBwYWRkaW5nOiAwLjVyZW0gMC42cmVtO1xuICBmb250LXNpemU6IDAuODVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gIG1hcmdpbi1ib3R0b206IDAuNzVyZW07XG59XG4uY2hhbGstdmVyaWZ5LWNvZGUge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1jaGFsay1iZy1hbHQsICMwYzEzMGMpO1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1jaGFsay1ib3JkZXIsICMxZjJhMWYpO1xuICBwYWRkaW5nOiAwLjc1cmVtO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG59XG4uY2hhbGstdmVyaWZ5LXdvcmRzIHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNCwgMWZyKTtcbiAgZ2FwOiAwLjRyZW0gMC42cmVtO1xufVxuLmNoYWxrLXZlcmlmeS13b3JkIHtcbiAgY29sb3I6IHZhcigtLWNoYWxrLWFjY2VudCwgIzVjZmZiMSk7XG4gIGZvbnQtc2l6ZTogMC45NXJlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuLmNoYWxrLXZlcmlmeS1udW1lcmljIHtcbiAgY29sb3I6IHZhcigtLWNoYWxrLWFjY2VudCwgIzVjZmZiMSk7XG4gIGZvbnQtc2l6ZTogMC45NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDVlbTtcbiAgd29yZC1zcGFjaW5nOiAwLjJlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuLmNoYWxrLXZlcmlmeS10b2dnbGUge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiBub25lO1xuICBjb2xvcjogdmFyKC0tY2hhbGstZmctZGltLCAjNWE4YTVhKTtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIGZvbnQtc2l6ZTogMC44cmVtO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHBhZGRpbmc6IDAuMnJlbSAwO1xuICBtYXJnaW4tYm90dG9tOiAwLjc1cmVtO1xufVxuLmNoYWxrLXZlcmlmeS10b2dnbGU6aG92ZXIgeyBjb2xvcjogdmFyKC0tY2hhbGstZmcsICNjOGZmYzgpOyB9XG5cbi5jaGFsay12ZXJpZnktYWN0aW9ucyB7IG1hcmdpbi10b3A6IDAuNXJlbTsgfVxuLmNoYWxrLXZlcmlmeS1zdGF0ZS0tdmVyaWZpZWQge1xuICBjb2xvcjogdmFyKC0tY2hhbGstYWNjZW50LCAjNWNmZmIxKTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBmb250LXNpemU6IDAuOXJlbTtcbn1cbi5jaGFsay12ZXJpZnktbWFyayB7XG4gIHdpZHRoOiAxMDAlO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgY29sb3I6IHZhcigtLWNoYWxrLWFjY2VudCwgIzVjZmZiMSk7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNoYWxrLWFjY2VudCwgIzVjZmZiMSk7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBmb250LXNpemU6IDAuODVyZW07XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgcGFkZGluZzogMC40cmVtIDAuNnJlbTtcbn1cbi5jaGFsay12ZXJpZnktbWFyazpob3ZlciB7IGJhY2tncm91bmQ6IHJnYmEoOTIsIDI1NSwgMTc3LCAwLjA4KTsgfVxuLmNoYWxrLXZlcmlmeS1jb25maXJtLXRleHQge1xuICBjb2xvcjogdmFyKC0tY2hhbGstZmcsICNjOGZmYzgpO1xuICBmb250LXNpemU6IDAuODVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbn1cbi5jaGFsay12ZXJpZnktY29uZmlybS1idXR0b25zIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZ2FwOiAwLjVyZW07XG59XG4uY2hhbGstdmVyaWZ5LWNvbmZpcm0teWVzIHtcbiAgZmxleDogMTtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGNvbG9yOiB2YXIoLS1jaGFsay1hY2NlbnQsICM1Y2ZmYjEpO1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1jaGFsay1hY2NlbnQsICM1Y2ZmYjEpO1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgZm9udC1zaXplOiAwLjg1cmVtO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHBhZGRpbmc6IDAuNHJlbSAwLjZyZW07XG59XG4uY2hhbGstdmVyaWZ5LWNvbmZpcm0teWVzOmhvdmVyIHsgYmFja2dyb3VuZDogcmdiYSg5MiwgMjU1LCAxNzcsIDAuMDgpOyB9XG4uY2hhbGstdmVyaWZ5LWNvbmZpcm0tbm8ge1xuICBmbGV4OiAxO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgY29sb3I6IHZhcigtLWNoYWxrLWZnLWRpbSwgIzVhOGE1YSk7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNoYWxrLWJvcmRlciwgIzFmMmExZik7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBmb250LXNpemU6IDAuODVyZW07XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgcGFkZGluZzogMC40cmVtIDAuNnJlbTtcbn1cbi5jaGFsay12ZXJpZnktY29uZmlybS1ubzpob3ZlciB7IGNvbG9yOiB2YXIoLS1jaGFsay1mZywgI2M4ZmZjOCk7IH1cbi5jaGFsay12ZXJpZnktZW1wdHkge1xuICBjb2xvcjogdmFyKC0tY2hhbGstZmctZGltLCAjNWE4YTVhKTtcbiAgZm9udC1zaXplOiAwLjg1cmVtO1xuICBsaW5lLWhlaWdodDogMS41O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDFyZW0gMDtcbn1cblxuLyogLS0gUm90YXRlIGNoYW5uZWwga2V5IChwaGFzZSAyNS0yKSAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi5jaGFsay1tZW1iZXJzLXJvdGF0ZS1yb3cge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBnYXA6IDAuNXJlbTtcbiAgbWFyZ2luLXRvcDogMC41cmVtO1xuICBwYWRkaW5nLXRvcDogMC41cmVtO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tY2hhbGstYm9yZGVyLCAjMWYyYTFmKTtcbn1cbi5jaGFsay1tZW1iZXJzLXJvdGF0ZSB7XG4gIGZsZXg6IDE7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBjb2xvcjogdmFyKC0tY2hhbGstZmctZGltLCAjNWE4YTVhKTtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tY2hhbGstYm9yZGVyLCAjMWYyYTFmKTtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIGZvbnQtc2l6ZTogMC44NXJlbTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBwYWRkaW5nOiAwLjRyZW0gMC42cmVtO1xufVxuLmNoYWxrLW1lbWJlcnMtcm90YXRlOmhvdmVyOm5vdCg6ZGlzYWJsZWQpIHtcbiAgY29sb3I6IHZhcigtLWNoYWxrLWZnLCAjYzhmZmM4KTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jaGFsay1mZy1kaW0sICM1YThhNWEpO1xufVxuLmNoYWxrLW1lbWJlcnMtcm90YXRlOmRpc2FibGVkIHsgb3BhY2l0eTogMC41OyBjdXJzb3I6IGRlZmF1bHQ7IH1cbi5jaGFsay1tZW1iZXJzLWtleXZlciB7XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgY29sb3I6IHZhcigtLWNoYWxrLWZnLW11dGVkLCAjNmE3YTZhKTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxuLyogLS0gTWVtYmVyIHJlbW92YWwgKHJlbW92ZSAneCcgKyBsZWF2ZSArIHJvdGF0aW9uIHBlbmRpbmcpIC0tLS0tLS0tICovXG5cbi5jaGFsay1tZW1iZXJzLXJlbW92ZSB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IG5vbmU7XG4gIGNvbG9yOiB2YXIoLS1jaGFsay1mZy1tdXRlZCwgIzZhN2E2YSk7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBmb250LXNpemU6IDAuODVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHBhZGRpbmc6IDAgMC4yNXJlbTtcbiAgbWFyZ2luLWxlZnQ6IDAuMjVyZW07XG59XG4uY2hhbGstbWVtYmVycy1yZW1vdmU6aG92ZXIge1xuICBjb2xvcjogdmFyKC0tY2hhbGstZGFuZ2VyLCAjZTY2KTtcbn1cbi5jaGFsay1tZW1iZXJzLWxlYXZlIHtcbiAgbWFyZ2luLXRvcDogMC41cmVtO1xuICB3aWR0aDogMTAwJTtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGNvbG9yOiB2YXIoLS1jaGFsay1mZy1tdXRlZCwgIzZhN2E2YSk7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNoYWxrLWJvcmRlciwgIzFmMmExZik7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBmb250LXNpemU6IDAuOHJlbTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBwYWRkaW5nOiAwLjM1cmVtIDAuNnJlbTtcbn1cbi5jaGFsay1tZW1iZXJzLWxlYXZlOmhvdmVyOm5vdCg6ZGlzYWJsZWQpIHtcbiAgY29sb3I6IHZhcigtLWNoYWxrLWRhbmdlciwgI2U2Nik7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tY2hhbGstZGFuZ2VyLCAjZTY2KTtcbn1cbi5jaGFsay1tZW1iZXJzLWxlYXZlOmRpc2FibGVkIHsgb3BhY2l0eTogMC40OyBjdXJzb3I6IGRlZmF1bHQ7IH1cbi5jaGFsay1tZW1iZXJzLXBlbmRpbmcge1xuICBtYXJnaW4tdG9wOiAwLjVyZW07XG4gIGZvbnQtc2l6ZTogMC43OHJlbTtcbiAgY29sb3I6IHZhcigtLWNoYWxrLXdhcm4sICNmZmNjNjYpO1xuICBib3JkZXItbGVmdDogMnB4IHNvbGlkIHZhcigtLWNoYWxrLXdhcm4sICNmZmNjNjYpO1xuICBwYWRkaW5nLWxlZnQ6IDAuNXJlbTtcbn1cblxuLyogLS0gQWRkIG1lbWJlciAoZnJpZW5kLXBpY2tlcikgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cblxuLmNoYWxrLW1lbWJlcnMtYWRkIHtcbiAgbWFyZ2luLXRvcDogMC41cmVtO1xufVxuLmNoYWxrLW1lbWJlcnMtYWRkLXRvZ2dsZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgY29sb3I6IHZhcigtLWNoYWxrLWZnLWRpbSwgIzVhOGE1YSk7XG4gIGJvcmRlcjogMXB4IGRhc2hlZCB2YXIoLS1jaGFsay1ib3JkZXIsICMxZjJhMWYpO1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgZm9udC1zaXplOiAwLjgycmVtO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHBhZGRpbmc6IDAuMzVyZW0gMC42cmVtO1xufVxuLmNoYWxrLW1lbWJlcnMtYWRkLXRvZ2dsZTpob3ZlciB7XG4gIGNvbG9yOiB2YXIoLS1jaGFsay1mZywgI2M4ZmZjOCk7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tY2hhbGstZmctZGltLCAjNWE4YTVhKTtcbn1cbi5jaGFsay1tZW1iZXJzLWFkZC1saXN0IHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbWFyZ2luOiAwLjRyZW0gMCAwO1xuICBwYWRkaW5nOiAwO1xuICBtYXgtaGVpZ2h0OiA5cmVtO1xuICBvdmVyZmxvdy15OiBhdXRvO1xufVxuLmNoYWxrLW1lbWJlcnMtYWRkLWxpc3QgbGkge1xuICBtYXJnaW46IDA7XG59XG4uY2hhbGstbWVtYmVycy1hZGQtZnJpZW5kIHtcbiAgd2lkdGg6IDEwMCU7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBjb2xvcjogdmFyKC0tY2hhbGstZmcsICNjOGZmYzgpO1xuICBib3JkZXI6IG5vbmU7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBmb250LXNpemU6IDAuODVyZW07XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgcGFkZGluZzogMC4zcmVtIDAuNXJlbTtcbn1cbi5jaGFsay1tZW1iZXJzLWFkZC1mcmllbmQ6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1jaGFsay1yb3ctaG92ZXIsICMxNDIwMTQxMCk7XG4gIGNvbG9yOiB2YXIoLS1jaGFsay1hY2NlbnQsICM4ZWZmYTApO1xufVxuLmNoYWxrLW1lbWJlcnMtYWRkLWVtcHR5IHtcbiAgZm9udC1zaXplOiAwLjc4cmVtO1xuICBjb2xvcjogdmFyKC0tY2hhbGstZmctbXV0ZWQsICM2YTdhNmEpO1xuICBwYWRkaW5nOiAwLjNyZW0gMC41cmVtO1xufVxuXG4vKiA9PT09PSBnb3YtMjogZ292ZXJuYW5jZSBwYW5lbCA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi5jaGFsay1nb3YtcGFuZWwge1xuICBtYXgtd2lkdGg6IDQ2MHB4O1xuICB3aWR0aDogMTAwJTtcbn1cbi5jaGFsay1idG4ge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1jaGFsay1iZy1lbGV2KTtcbiAgY29sb3I6IHZhcigtLWNoYWxrLWZnKTtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tY2hhbGstYm9yZGVyKTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tY2hhbGstcmFkaXVzKTtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIGZvbnQtc2l6ZTogdmFyKC0tY2hhbGstc2l6ZS1zbWFsbCk7XG4gIHBhZGRpbmc6IDAuM3JlbSAwLjdyZW07XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbi5jaGFsay1idG46aG92ZXI6bm90KDpkaXNhYmxlZCkge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1jaGFsay1iZy1ob3Zlcik7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tY2hhbGstYWNjZW50KTtcbn1cbi5jaGFsay1idG46ZGlzYWJsZWQge1xuICBvcGFjaXR5OiAwLjU7XG4gIGN1cnNvcjogZGVmYXVsdDtcbn1cbi5jaGFsay1idG4tc20ge1xuICBwYWRkaW5nOiAwLjE1cmVtIDAuNXJlbTtcbn1cbi5jaGFsay1idG4tb24ge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1jaGFsay1hY2NlbnQpO1xuICBjb2xvcjogdmFyKC0tY2hhbGstYmcpO1xuICBib3JkZXItY29sb3I6IHZhcigtLWNoYWxrLWFjY2VudCk7XG59XG4uY2hhbGstYnRuLWRhbmdlcjpob3Zlcjpub3QoOmRpc2FibGVkKSB7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tY2hhbGstZGFuZ2VyKTtcbiAgY29sb3I6IHZhcigtLWNoYWxrLWRhbmdlcik7XG59XG4uY2hhbGstc2VsZWN0IHtcbiAgYmFja2dyb3VuZDogdmFyKC0tY2hhbGstYmctZWxldik7XG4gIGNvbG9yOiB2YXIoLS1jaGFsay1mZyk7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNoYWxrLWJvcmRlcik7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWNoYWxrLXJhZGl1cyk7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBmb250LXNpemU6IHZhcigtLWNoYWxrLXNpemUtc21hbGwpO1xuICBwYWRkaW5nOiAwLjI1cmVtIDAuNHJlbTtcbn1cbi5jaGFsay1nb3YtbW9kZSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGdhcDogdmFyKC0tY2hhbGstczMpO1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLWNoYWxrLXMzKTtcbn1cbi5jaGFsay1nb3YtbW9kZS1sYWJlbCB7XG4gIGNvbG9yOiB2YXIoLS1jaGFsay1mZy1kaW0pO1xufVxuLmNoYWxrLWdvdi1oaW50IHtcbiAgY29sb3I6IHZhcigtLWNoYWxrLWZnLW11dGVkKTtcbiAgZm9udC1zaXplOiB2YXIoLS1jaGFsay1zaXplLXNtYWxsKTtcbiAgbWFyZ2luOiAwIDAgdmFyKC0tY2hhbGstczMpIDA7XG59XG4uY2hhbGstZ292LXByb3Bvc2Uge1xuICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tY2hhbGstYm9yZGVyKTtcbiAgcGFkZGluZy10b3A6IHZhcigtLWNoYWxrLXMzKTtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tY2hhbGstczMpO1xufVxuLmNoYWxrLWdvdi1wcm9wb3NlLXJvdyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGdhcDogdmFyKC0tY2hhbGstczIpO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBmbGV4LXdyYXA6IHdyYXA7XG59XG4uY2hhbGstZ292LWVycm9yIHtcbiAgY29sb3I6IHZhcigtLWNoYWxrLWVycm9yKTtcbiAgZm9udC1zaXplOiB2YXIoLS1jaGFsay1zaXplLXNtYWxsKTtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tY2hhbGstczIpO1xufVxuLmNoYWxrLWdvdi1yZXNvbHZlZC1oZWFkIHtcbiAgY29sb3I6IHZhcigtLWNoYWxrLWZnLW11dGVkKTtcbiAgZm9udC1zaXplOiB2YXIoLS1jaGFsay1zaXplLXNtYWxsKTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDhlbTtcbiAgbWFyZ2luOiB2YXIoLS1jaGFsay1zMykgMCB2YXIoLS1jaGFsay1zMikgMDtcbn1cbi5jaGFsay1nb3YtcHJvcCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNoYWxrLWJvcmRlcik7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWNoYWxrLXJhZGl1cyk7XG4gIHBhZGRpbmc6IHZhcigtLWNoYWxrLXMyKSB2YXIoLS1jaGFsay1zMyk7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLWNoYWxrLXMyKTtcbn1cbi5jaGFsay1nb3YtcHJvcC1yZXNvbHZlZCB7XG4gIG9wYWNpdHk6IDAuNztcbn1cbi5jaGFsay1nb3YtcHJvcC1oZWFkIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGJhc2VsaW5lO1xuICBnYXA6IHZhcigtLWNoYWxrLXMyKTtcbn1cbi5jaGFsay1nb3YtcHJvcC10eXBlIHtcbiAgY29sb3I6IHZhcigtLWNoYWxrLWZnLWJyaWdodCk7XG59XG4uY2hhbGstZ292LXByb3AtdGFyZ2V0IHtcbiAgY29sb3I6IHZhcigtLWNoYWxrLWFjY2VudCk7XG59XG4uY2hhbGstZ292LXByb3Atc3RhdHVzIHtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIGNvbG9yOiB2YXIoLS1jaGFsay1mZy1kaW0pO1xuICBmb250LXNpemU6IHZhcigtLWNoYWxrLXNpemUtc21hbGwpO1xufVxuLmNoYWxrLWdvdi10YWxseSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGdhcDogdmFyKC0tY2hhbGstczIpO1xuICBtYXJnaW46IHZhcigtLWNoYWxrLXMyKSAwO1xufVxuLmNoYWxrLWdvdi10YWxseS1iYXIge1xuICBmbGV4OiAxO1xuICBoZWlnaHQ6IDRweDtcbiAgYmFja2dyb3VuZDogdmFyKC0tY2hhbGstYmctZWxldi0yKTtcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuLmNoYWxrLWdvdi10YWxseS1maWxsIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogMTAwJTtcbiAgYmFja2dyb3VuZDogdmFyKC0tY2hhbGstYWNjZW50KTtcbn1cbi5jaGFsay1nb3YtdGFsbHktY291bnRzIHtcbiAgY29sb3I6IHZhcigtLWNoYWxrLWZnLWRpbSk7XG4gIGZvbnQtc2l6ZTogdmFyKC0tY2hhbGstc2l6ZS1zbWFsbCk7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG4uY2hhbGstZ292LXByb3AtYWN0aW9ucyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGdhcDogdmFyKC0tY2hhbGstczIpO1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBhdHQtNGM6IEdpcGh5IC0tIGNvbXBvc2VyIGJ1dHRvbiwgZ2F0ZWQgcmVuZGVyLCBzZWFyY2ggcGlja2VyLlxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKiBDb21wb3NlciBcIkdJRlwiIGJ1dHRvbiAtLSBtaXJyb3JzIHRoZSBwYXBlcmNsaXAgYWZmb3JkYW5jZS4gKi9cbi5jaGFsay1jb21wb3Nlci1naXBoeSB7XG4gIGZsZXg6IDAgMCBhdXRvO1xuICBhbGlnbi1zZWxmOiBzdHJldGNoO1xuICBwYWRkaW5nOiAwIHZhcigtLWNoYWxrLXMyKTtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGNvbG9yOiB2YXIoLS1jaGFsay1mZy1tdXRlZCk7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNoYWxrLWJvcmRlcik7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWNoYWxrLXJhZGl1cyk7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBmb250LXNpemU6IHZhcigtLWNoYWxrLXNpemUtc21hbGwpO1xuICBmb250LXdlaWdodDogNzAwO1xuICBsZXR0ZXItc3BhY2luZzogMC4wNWVtO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG4uY2hhbGstY29tcG9zZXItZ2lwaHk6aG92ZXI6bm90KDpkaXNhYmxlZCkge1xuICBjb2xvcjogdmFyKC0tY2hhbGstZmcpO1xuICBib3JkZXItY29sb3I6IHZhcigtLWNoYWxrLWZnKTtcbn1cbi5jaGFsay1jb21wb3Nlci1naXBoeTpkaXNhYmxlZCB7XG4gIG9wYWNpdHk6IDAuNDtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbn1cblxuLyogUmVuZGVyZWQgR0lGIGluIHRoZSBmZWVkIChlbmFibGVkICsgYWxsb3dsaXN0ZWQpLiBDYXBwZWQgbGlrZSBhbiBpbmxpbmVcbiAgIGF0dGFjaG1lbnQgaW1hZ2U7IHRoZSBHSUYga2VlcHMgaXRzIGFzcGVjdCByYXRpby4gKi9cbi5jaGFsay1naXBoeSB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBnYXA6IDJweDtcbiAgbWFyZ2luLXRvcDogdmFyKC0tY2hhbGstczEpO1xufVxuLmNoYWxrLWdpcGh5LWltZyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXgtd2lkdGg6IG1pbigzMjBweCwgMTAwJSk7XG4gIGhlaWdodDogYXV0bztcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tY2hhbGstYm9yZGVyKTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tY2hhbGstcmFkaXVzKTtcbiAgYmFja2dyb3VuZDogdmFyKC0tY2hhbGstYmctZWxldik7XG59XG4uY2hhbGstZ2lwaHktdGFnIHtcbiAgZm9udC1zaXplOiB2YXIoLS1jaGFsay1zaXplLXNtYWxsKTtcbiAgY29sb3I6IHZhcigtLWNoYWxrLWZnLW11dGVkKTtcbn1cblxuLyogSW5lcnQgcGxhY2Vob2xkZXIgd2hlbiBhIEdJRiBpcyBOT1QgcmVuZGVyZWQgKHVuc2V0IC8gZGlzYWJsZWQgLyBiYWQgaG9zdFxuICAgLyBsb2FkIGZhaWx1cmUpLiBOZXZlciB0cmlnZ2VycyBhIGZldGNoLiAqL1xuLmNoYWxrLWdpcGh5LWJsb2NrZWQge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiB2YXIoLS1jaGFsay1zMik7XG4gIG1hcmdpbi10b3A6IHZhcigtLWNoYWxrLXMxKTtcbiAgcGFkZGluZzogMnB4IHZhcigtLWNoYWxrLXMyKTtcbiAgYm9yZGVyOiAxcHggZGFzaGVkIHZhcigtLWNoYWxrLWJvcmRlcik7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWNoYWxrLXJhZGl1cyk7XG4gIGNvbG9yOiB2YXIoLS1jaGFsay1mZy1tdXRlZCk7XG4gIGZvbnQtc2l6ZTogdmFyKC0tY2hhbGstc2l6ZS1zbWFsbCk7XG4gIG1heC13aWR0aDogMTAwJTtcbn1cbi5jaGFsay1naXBoeS1ibG9ja2VkLWljb24ge1xuICBjb2xvcjogdmFyKC0tY2hhbGstZmctZGltKTtcbn1cbi5jaGFsay1naXBoeS1ibG9ja2VkLXRleHQge1xuICBvdmVyZmxvdy13cmFwOiBhbnl3aGVyZTtcbn1cbi5jaGFsay1naXBoeS1lbmFibGUge1xuICBmbGV4OiAwIDAgYXV0bztcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGNvbG9yOiB2YXIoLS1jaGFsay1mZy1icmlnaHQpO1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1jaGFsay1ib3JkZXIpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1jaGFsay1yYWRpdXMpO1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgZm9udC1zaXplOiB2YXIoLS1jaGFsay1zaXplLXNtYWxsKTtcbiAgcGFkZGluZzogMCB2YXIoLS1jaGFsay1zMik7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbi5jaGFsay1naXBoeS1lbmFibGU6aG92ZXIge1xuICBib3JkZXItY29sb3I6IHZhcigtLWNoYWxrLWZnKTtcbiAgY29sb3I6IHZhcigtLWNoYWxrLWZnKTtcbn1cblxuLyogU2VhcmNoIHBpY2tlciBvdmVybGF5LiAqL1xuLmNoYWxrLWdpcGh5LXBpY2tlci1iYWNrZHJvcCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgaW5zZXQ6IDA7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC42KTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHotaW5kZXg6IDYwO1xufVxuLmNoYWxrLWdpcGh5LXBpY2tlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIHdpZHRoOiBtaW4oNTYwcHgsIDkydncpO1xuICBtYXgtaGVpZ2h0OiA4MHZoO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1jaGFsay1iZyk7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNoYWxrLWJvcmRlcik7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWNoYWxrLXJhZGl1cyk7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG4uY2hhbGstZ2lwaHktcGlja2VyLXNlYXJjaCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGdhcDogdmFyKC0tY2hhbGstczIpO1xuICBwYWRkaW5nOiB2YXIoLS1jaGFsay1zMik7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1jaGFsay1ib3JkZXIpO1xufVxuLmNoYWxrLWdpcGh5LXBpY2tlci1pbnB1dCB7XG4gIGZsZXg6IDEgMSBhdXRvO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1jaGFsay1iZy1lbGV2KTtcbiAgY29sb3I6IHZhcigtLWNoYWxrLWZnKTtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tY2hhbGstYm9yZGVyKTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tY2hhbGstcmFkaXVzKTtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIGZvbnQtc2l6ZTogdmFyKC0tY2hhbGstc2l6ZS1iYXNlKTtcbiAgcGFkZGluZzogdmFyKC0tY2hhbGstczEpIHZhcigtLWNoYWxrLXMyKTtcbn1cbi5jaGFsay1naXBoeS1waWNrZXItY2xvc2Uge1xuICBmbGV4OiAwIDAgYXV0bztcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGNvbG9yOiB2YXIoLS1jaGFsay1mZy1tdXRlZCk7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNoYWxrLWJvcmRlcik7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWNoYWxrLXJhZGl1cyk7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHBhZGRpbmc6IDAgdmFyKC0tY2hhbGstczIpO1xufVxuLmNoYWxrLWdpcGh5LXBpY2tlci1jbG9zZTpob3ZlciB7XG4gIGNvbG9yOiB2YXIoLS1jaGFsay1mZyk7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tY2hhbGstZmcpO1xufVxuLmNoYWxrLWdpcGh5LXBpY2tlci1ib2R5IHtcbiAgZmxleDogMSAxIGF1dG87XG4gIG92ZXJmbG93LXk6IGF1dG87XG4gIHBhZGRpbmc6IHZhcigtLWNoYWxrLXMyKTtcbn1cbi5jaGFsay1naXBoeS1waWNrZXItaGludCB7XG4gIGNvbG9yOiB2YXIoLS1jaGFsay1mZy1tdXRlZCk7XG4gIGZvbnQtc2l6ZTogdmFyKC0tY2hhbGstc2l6ZS1zbWFsbCk7XG4gIG1hcmdpbjogdmFyKC0tY2hhbGstczIpIDA7XG59XG4uY2hhbGstZ2lwaHktcGlja2VyLWVycm9yIHtcbiAgY29sb3I6IHZhcigtLWNoYWxrLWZnLWJyaWdodCk7XG59XG4uY2hhbGstZ2lwaHktcGlja2VyLWdyaWQge1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdChhdXRvLWZpbGwsIG1pbm1heCgxMjBweCwgMWZyKSk7XG4gIGdhcDogdmFyKC0tY2hhbGstczIpO1xufVxuLmNoYWxrLWdpcGh5LXBpY2tlci10aWxlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNoYWxrLWJvcmRlcik7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWNoYWxrLXJhZGl1cyk7XG4gIGJhY2tncm91bmQ6IHZhcigtLWNoYWxrLWJnLWVsZXYpO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG4uY2hhbGstZ2lwaHktcGlja2VyLXRpbGU6aG92ZXIge1xuICBib3JkZXItY29sb3I6IHZhcigtLWNoYWxrLWZnKTtcbn1cbi5jaGFsay1naXBoeS1waWNrZXItdGlsZSBpbWcge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbn1cbi5jaGFsay1naXBoeS1waWNrZXItYXR0cmlidXRpb24ge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IHZhcigtLWNoYWxrLXMxKSB2YXIoLS1jaGFsay1zMik7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1jaGFsay1ib3JkZXIpO1xuICBjb2xvcjogdmFyKC0tY2hhbGstZmctbXV0ZWQpO1xuICBmb250LXNpemU6IHZhcigtLWNoYWxrLXNpemUtc21hbGwpO1xuICB0ZXh0LWFsaWduOiByaWdodDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDhlbTtcbn1cblxuLyogLS0tLSBQaGFzZSAzMCAoMzAtNSk6IGNoYW5uZWwgZ2x5cGhzICsgc2lkZWJhciB2b2ljZSBvY2N1cGFuY3kgLS0tLS0tLS0tICovXG5cbi8qIENoYW5uZWwta2luZCBpbmRpY2F0b3IgKDMwLTVkKTogYSBmaXhlZC13aWR0aCBzbG90IGhvbGRpbmcgdGhlIGlubGluZVxuICAgU1ZHICh0ZXJtaW5hbCBwcm9tcHQgZm9yIHRleHQsIHNwZWFrZXIgZm9yIHZvaWNlKSBzbyBjaGFubmVsIG5hbWVzIGFsaWduLlxuICAgY3VycmVudENvbG9yIGxldHMgdGhlIGljb25zIGluaGVyaXQgaG92ZXIvYWN0aXZlIHN0YXRlcyBmb3IgZnJlZS4gKi9cbi5jaGFsay1jaGdseXBoIHtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB3aWR0aDogMS4yZW07XG4gIGZsZXg6IDAgMCBhdXRvO1xuICBjb2xvcjogdmFyKC0tY2hhbGstZmctbXV0ZWQpO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbn1cblxuLmNoYWxrLWNoZ2x5cGgtc3ZnIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5jaGFsay1jaGdseXBoLS12b2ljZSB7XG4gIGNvbG9yOiB2YXIoLS1jaGFsay1mZy1kaW0pO1xufVxuXG4uY2hhbGstY2hnbHlwaC0taGVhZGVyIHtcbiAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1jaGFsay1zMSk7XG4gIGNvbG9yOiB2YXIoLS1jaGFsay1mZy1kaW0pO1xufVxuXG4vKiBUaGUgYWN0aXZlL3NlbGVjdGVkIGNoYW5uZWwgcm93IGJyaWdodGVucyBpdHMgaWNvbiB3aXRoIHRoZSB0ZXh0LiAqL1xuLmNoYWxrLXNpZGViYXItaXRlbS0tYWN0aXZlIC5jaGFsay1jaGdseXBoIHtcbiAgY29sb3I6IHZhcigtLWNoYWxrLWZnLWJyaWdodCk7XG59XG5cbi5jaGFsay1zaWRlYmFyLWl0ZW0tcm93IHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiAycHg7XG4gIG1pbi13aWR0aDogMDtcbn1cblxuLmNoYWxrLXNpZGViYXItaXRlbS0tdm9pY2VjaCB7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xufVxuXG4uY2hhbGstc2lkZWJhci12b2ljZWNvdW50IHtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIGZvbnQtc2l6ZTogMTBweDtcbiAgY29sb3I6IHZhcigtLWNoYWxrLWZnLWRpbSk7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNoYWxrLWJvcmRlcik7XG4gIHBhZGRpbmc6IDAgNHB4O1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1jaGFsay1yYWRpdXMpO1xufVxuXG4vKiBMaXZlIG9jY3VwYW50IHN1Ymxpc3QgdW5kZXIgYSB2b2ljZSBjaGFubmVsLiBJbmRlbnRlZCBwYXN0IHRoZSBnbHlwaFxuICAgY29sdW1uIHNvIG5hbWVzIGFsaWduIHdpdGggdGhlIGNoYW5uZWwgbmFtZSBhYm92ZS4gKi9cbi5jaGFsay1zaWRlYmFyLW9jY3VwYW50cyB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG1hcmdpbjogMnB4IDAgMnB4IDEuMmVtO1xuICBwYWRkaW5nOiAwO1xufVxuXG4uY2hhbGstc2lkZWJhci1vY2N1cGFudCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGdhcDogNHB4O1xuICBmb250LXNpemU6IDEycHg7XG4gIGNvbG9yOiB2YXIoLS1jaGFsay1mZy1kaW0pO1xuICBsaW5lLWhlaWdodDogMS42O1xuICBtaW4td2lkdGg6IDA7XG59XG5cbi5jaGFsay1zaWRlYmFyLW9jY3VwYW50LW5hbWUge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxuLmNoYWxrLXZvaWNlLWJhZGdlIHtcbiAgZmxleDogMCAwIGF1dG87XG4gIG9wYWNpdHk6IDAuODU7XG59XG5cbi5jaGFsay12b2ljZS1iYWRnZS0tbXV0ZWQge1xuICBjb2xvcjogdmFyKC0tY2hhbGstZXJyb3IpO1xufVxuXG4vKiAtLS0tIFBoYXNlIDMwICgzMC01KTogRGlzY29yZC1zdHlsZSBjYWxsIHBhbmVsIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbi5jaGFsay12b2ljZS1wYW5lbCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNoYWxrLWJvcmRlcik7XG4gIHBhZGRpbmc6IHZhcigtLWNoYWxrLXMzKTtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tY2hhbGstczMpO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1jaGFsay1iZy1lbGV2KTtcbn1cblxuLmNoYWxrLXZvaWNlLWxvYmJ5IHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiB2YXIoLS1jaGFsay1zMik7XG4gIGZsZXgtd3JhcDogd3JhcDtcbn1cblxuLmNoYWxrLXZvaWNlLW5vdGUge1xuICBmb250LXNpemU6IDEycHg7XG4gIGNvbG9yOiB2YXIoLS1jaGFsay1mZy1kaW0pO1xufVxuXG4uY2hhbGstdm9pY2UtZXJyb3Ige1xuICBtYXJnaW4tdG9wOiB2YXIoLS1jaGFsay1zMik7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgY29sb3I6IHZhcigtLWNoYWxrLWVycm9yKTtcbn1cblxuLyogMzAtNjogZmVhdHVyZS1mbGFnLW9mZiBub3RlIHNob3duIGluIHBsYWNlIG9mIHRoZSBjYWxsIHBhbmVsLiAqL1xuLmNoYWxrLXZvaWNlLWRpc2FibGVkIHtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBjb2xvcjogdmFyKC0tY2hhbGstZmctZGltKTtcbn1cblxuLyogLS0tLSAzMC01YzogcGVyc2lzdGVudC1jYWxsIGRvY2sgKERpc2NvcmQncyBib3R0b20tbGVmdCBwYW5lbCkgLS0tLS0tLS0tLSAqL1xuXG4uY2hhbGstdm9pY2UtZG9jayB7XG4gIG1hcmdpbjogdmFyKC0tY2hhbGstczIpIHZhcigtLWNoYWxrLXMyKSAwIHZhcigtLWNoYWxrLXMyKTtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tY2hhbGstYm9yZGVyKTtcbiAgYmFja2dyb3VuZDogdmFyKC0tY2hhbGstYmctZWxldik7XG4gIHBhZGRpbmc6IHZhcigtLWNoYWxrLXMyKTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZ2FwOiB2YXIoLS1jaGFsay1zMSk7XG4gIGZsZXg6IDAgMCBhdXRvO1xufVxuXG4uY2hhbGstdm9pY2UtZG9jay1yb3cge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBnYXA6IHZhcigtLWNoYWxrLXMyKTtcbiAgbWluLXdpZHRoOiAwO1xufVxuXG4uY2hhbGstdm9pY2UtZG9jay1zdGF0dXMge1xuICBmb250LXNpemU6IDExcHg7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGxldHRlci1zcGFjaW5nOiAwLjA4ZW07XG4gIGNvbG9yOiB2YXIoLS1jaGFsay1mZy1icmlnaHQpO1xufVxuXG4uY2hhbGstdm9pY2UtZG9jay1zdGF0dXNbZGF0YS1jb25uZWN0ZWQ9XCJmYWxzZVwiXSB7XG4gIGNvbG9yOiB2YXIoLS1jaGFsay13YXJuKTtcbn1cblxuLmNoYWxrLXZvaWNlLWRvY2stZHVyYXRpb24ge1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgZm9udC1zaXplOiAxMXB4O1xuICBjb2xvcjogdmFyKC0tY2hhbGstZmctZGltKTtcbiAgZm9udC12YXJpYW50LW51bWVyaWM6IHRhYnVsYXItbnVtcztcbn1cblxuLmNoYWxrLXZvaWNlLWRvY2stY2hhbm5lbCB7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogbm9uZTtcbiAgcGFkZGluZzogMDtcbiAgZm9udDogaW5oZXJpdDtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBjb2xvcjogdmFyKC0tY2hhbGstZmcpO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIG1pbi13aWR0aDogMDtcbiAgLyogMzAtNWY6IGZsZXggcm93IHNvIHRoZSBzcGVha2VyIGdseXBoIGNlbnRlcnMgYWdhaW5zdCB0aGUgbmFtZSBpbnN0ZWFkXG4gICAgIG9mIHNpdHRpbmcgb24gdGhlIHRleHQgYmFzZWxpbmUgKHRoZSBsb3ctc3BlYWtlciBidWcgaW4gdGhlIGRvY2spLiAqL1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiA0cHg7XG59XG5cbi5jaGFsay12b2ljZS1kb2NrLWNoYW5uYW1lIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIG1pbi13aWR0aDogMDtcbn1cblxuLyogSW5saW5lIGdseXBoIHZhcmlhbnQ6IG5vIGZpeGVkIDEuMmVtIGJveCwgc2hyaW5rIHRvIHRoZSBpY29uIHNvIHRoZSBmbGV4XG4gICBnYXAgY29udHJvbHMgc3BhY2luZy4gVXNlZCBpbiB0aGUgZG9jayArIHBhbmVsIHByb3NlLiAqL1xuLmNoYWxrLWNoZ2x5cGgtLWlubGluZSB7XG4gIHdpZHRoOiBhdXRvO1xufVxuXG4uY2hhbGstdm9pY2UtZG9jay1jaGFubmVsOmhvdmVyIHtcbiAgY29sb3I6IHZhcigtLWNoYWxrLWZnLWJyaWdodCk7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xufVxuXG4uY2hhbGstdm9pY2UtZG9jay1zcGFjZXIge1xuICBmbGV4OiAxIDEgYXV0bztcbn1cblxuLyogMzAtNWk6IGF1dG9wbGF5LWJsb2NrZWQgYXVkaW8gbnVkZ2UgaW5zaWRlIHRoZSBjb25uZWN0ZWQgZG9jay4gQW1iZXIgdG9cbiAgIHJlYWQgYXMgYW4gYWN0aW9uYWJsZSBub3RpY2UsIG5vdCBhbiBlcnJvci4gKi9cbi5jaGFsay12b2ljZS1hdWRpb251ZGdlIHtcbiAgZm9udC1zaXplOiAxMXB4O1xuICBjb2xvcjogdmFyKC0tY2hhbGstd2Fybik7XG4gIGN1cnNvcjogZGVmYXVsdDtcbn1cblxuLyogLS0tLSAzMC01ZjogbWljcm8gUGlQIHByZXZpZXcgaW4gdGhlIGRvY2sgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuXG4uY2hhbGstdm9pY2UtcGlwIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIGFzcGVjdC1yYXRpbzogMTYgLyA5O1xuICBtYXgtaGVpZ2h0OiA5NnB4O1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1jaGFsay1zMSk7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNoYWxrLWJvcmRlcik7XG4gIGJhY2tncm91bmQ6ICMwMDA7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLmNoYWxrLXZvaWNlLXBpcDpob3ZlciB7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tY2hhbGstZmctZGltKTtcbn1cblxuLmNoYWxrLXZvaWNlLXBpcC12aWRlbyB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG9iamVjdC1maXQ6IGNvdmVyO1xuICBkaXNwbGF5OiBibG9jaztcbiAgYmFja2dyb3VuZDogIzAwMDtcbn1cblxuLmNoYWxrLXZvaWNlLXBpcC1tb25vIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGZvbnQtc2l6ZTogMjhweDtcbiAgY29sb3I6IHZhcigtLWNoYWxrLWZnLW11dGVkKTtcbiAgYmFja2dyb3VuZDogdmFyKC0tY2hhbGstYmctZWxldi0yKTtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG59XG5cbi8qIFwiXHUyNUI4IGJhY2tcIiBvdmVybGF5OiBhcHBlYXJzIG9uIGhvdmVyLCBib3R0b20tcmlnaHQsIHNvIHRoZSBwcmV2aWV3IHN0YXlzXG4gICBjbGVhbiBhdCByZXN0LiAqL1xuLmNoYWxrLXZvaWNlLXBpcC1oaW50IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogM3B4O1xuICBib3R0b206IDNweDtcbiAgZm9udC1zaXplOiAxMHB4O1xuICBjb2xvcjogdmFyKC0tY2hhbGstZmctYnJpZ2h0KTtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjcpO1xuICBwYWRkaW5nOiAwIDRweDtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjFzO1xufVxuXG4uY2hhbGstdm9pY2UtcGlwOmhvdmVyIC5jaGFsay12b2ljZS1waXAtaGludCB7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi8qIC0tLS0gc3RhZ2U6IGJpZyB0aWxlICsgZmlsbXN0cmlwIC0tLS0gKi9cblxuLmNoYWxrLXZvaWNlLXN0YWdlIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZ2FwOiB2YXIoLS1jaGFsay1zMik7XG59XG5cbi5jaGFsay12b2ljZS1iaWcge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cblxuLmNoYWxrLXZvaWNlLXN0cmlwIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZ2FwOiB2YXIoLS1jaGFsay1zMik7XG4gIG92ZXJmbG93LXg6IGF1dG87XG4gIHBhZGRpbmctYm90dG9tOiAycHg7XG59XG5cbi5jaGFsay12b2ljZS1wZWVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBiYWNrZ3JvdW5kOiAjMDAwO1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1jaGFsay1ib3JkZXIpO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cblxuLmNoYWxrLXZvaWNlLXBlZXItLWJpZyB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDk2MHB4O1xuICBhc3BlY3QtcmF0aW86IDE2IC8gOTtcbiAgbWF4LWhlaWdodDogNTJ2aDtcbn1cblxuLmNoYWxrLXZvaWNlLXBlZXItLXN0cmlwIHtcbiAgZmxleDogMCAwIGF1dG87XG4gIHdpZHRoOiAxNDhweDtcbiAgYXNwZWN0LXJhdGlvOiAxNiAvIDk7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLmNoYWxrLXZvaWNlLXBlZXItLXN0cmlwOmhvdmVyIHtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jaGFsay1mZy1kaW0pO1xufVxuXG4uY2hhbGstdm9pY2UtdmlkZW8ge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBvYmplY3QtZml0OiBjb250YWluO1xuICBiYWNrZ3JvdW5kOiAjMDAwO1xufVxuXG4uY2hhbGstdm9pY2UtdmlkZW8tbWlycm9yZWQge1xuICB0cmFuc2Zvcm06IHNjYWxlWCgtMSk7XG59XG5cbi8qIEF1ZGlvLW9ubHkgcGFydGljaXBhbnQ6IGEgYmlnIG1vbm9ncmFtIG9uIHRoZSBkYXJrIHRpbGUuICovXG4uY2hhbGstdm9pY2UtYXZhdGFyIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGZvbnQtc2l6ZTogMjhweDtcbiAgY29sb3I6IHZhcigtLWNoYWxrLWZnLW11dGVkKTtcbiAgYmFja2dyb3VuZDogdmFyKC0tY2hhbGstYmctZWxldi0yKTtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG59XG5cbi8qIE92ZXJsYXkgdmFyaWFudDogY292ZXJzIGEgbW91bnRlZCA8dmlkZW8+IHdoZW4gdGhlIHRyYWNrIGhhcyBubyBsaXZlIHZpZGVvXG4gICAoY2FtZXJhIG9mZiAvIG5vdCB5ZXQgbGl2ZSksIFdJVEhPVVQgdW5tb3VudGluZyB0aGUgdmlkZW8gZWxlbWVudC4gTW91bnRpbmdcbiAgIHRoZSB2aWRlbyBvbmNlIGFuZCB0b2dnbGluZyB0aGlzIG92ZXJsYXkgYXZvaWRzIHRoZSByZW1vdW50IGZsaWNrZXIgdGhhdCBhXG4gICBjb25kaXRpb25hbCA8dmlkZW8+IGNhdXNlZCBvbiBldmVyeSBsaXZlbmVzcyByZS1jaGVjay4gKi9cbi5jaGFsay12b2ljZS1hdmF0YXItLW92ZXJsYXkge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGluc2V0OiAwO1xufVxuXG4uY2hhbGstdm9pY2UtcGVlci0tYmlnIC5jaGFsay12b2ljZS1hdmF0YXIge1xuICBmb250LXNpemU6IDY0cHg7XG59XG5cbi5jaGFsay12b2ljZS1wZWVyLWxhYmVsIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBnYXA6IDRweDtcbiAgcGFkZGluZzogMnB4IDZweDtcbiAgZm9udC1zaXplOiAxMXB4O1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuNjUpO1xuICBjb2xvcjogdmFyKC0tY2hhbGstZmcpO1xufVxuXG4uY2hhbGstdm9pY2UtcGVlci0tc3RyaXAgLmNoYWxrLXZvaWNlLXBlZXItbGFiZWwge1xuICBmb250LXNpemU6IDEwcHg7XG4gIHBhZGRpbmc6IDFweCA0cHg7XG59XG5cbi5jaGFsay12b2ljZS1wZWVyLW5hbWUge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxuLyogU2luZ2xlLWxldHRlciBzdGF0ZSBmbGFncyAobS9jL3MpIC0tIHRlcm1pbmFsLXRlcnNlOyB0aXRsZSBleHBhbmRzLiAqL1xuLmNoYWxrLXZvaWNlLXBlZXItZmxhZyB7XG4gIGZsZXg6IDAgMCBhdXRvO1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1jaGFsay1ib3JkZXIpO1xuICBwYWRkaW5nOiAwIDNweDtcbiAgZm9udC1zaXplOiA5cHg7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGNvbG9yOiB2YXIoLS1jaGFsay1mZy1kaW0pO1xufVxuXG4uY2hhbGstdm9pY2UtcGVlci1jb25uIHtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIGZvbnQtc2l6ZTogMTBweDtcbiAgY29sb3I6IHZhcigtLWNoYWxrLXdhcm4pO1xufVxuXG4vKiAtLS0tIDMwLTVlOiBwZXItcGVlciBsb2NhbCBhdWRpbyBjb250cm9scyAoQTEgKyBBNCBzdWJzZXQpIC0tLS0tLS0tLS0tLS0tICovXG5cbi8qIExvY2FsLW11dGUgYmFkZ2U6IHVwcGVyY2FzZSBNIGluIGVycm9yIGNvbG9yIC0tIFlPVVIgc3RhdGUgYWJvdXQgdGhlbSxcbiAgIGRpc3RpbmN0IGZyb20gdGhlIGxvd2VyY2FzZSBtL2MvcyBmbGFncyB0aGF0IG1pcnJvciBUSEVJUiBicm9hZGNhc3Qgc3RhdGUuICovXG4uY2hhbGstdm9pY2UtcGVlci1mbGFnLS1sb2NhbCB7XG4gIGNvbG9yOiB2YXIoLS1jaGFsay1lcnJvcik7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tY2hhbGstZXJyb3IpO1xufVxuXG4uY2hhbGstdm9pY2UtcGVlci1hdWRpbyB7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiA2cHg7XG59XG5cbi5jaGFsay12b2ljZS1wZWVyLWNvbm4gKyAuY2hhbGstdm9pY2UtcGVlci1hdWRpbyxcbi5jaGFsay12b2ljZS1wZWVyLWF1ZGlvICsgLmNoYWxrLXZvaWNlLXBlZXItY29ubiB7XG4gIG1hcmdpbi1sZWZ0OiA2cHg7XG59XG5cbi5jaGFsay12b2ljZS1sb2NhbG11dGUge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAxcHggZG90dGVkIHZhcigtLWNoYWxrLWJvcmRlcik7XG4gIGNvbG9yOiB2YXIoLS1jaGFsay1mZy1kaW0pO1xuICBmb250OiBpbmhlcml0O1xuICBmb250LXNpemU6IDlweDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDZlbTtcbiAgcGFkZGluZzogMCA0cHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLmNoYWxrLXZvaWNlLWxvY2FsbXV0ZTpob3ZlciB7XG4gIGNvbG9yOiB2YXIoLS1jaGFsay1mZyk7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tY2hhbGstZmctZGltKTtcbn1cblxuLmNoYWxrLXZvaWNlLWxvY2FsbXV0ZS0tb24ge1xuICBjb2xvcjogdmFyKC0tY2hhbGstZXJyb3IpO1xuICBib3JkZXItY29sb3I6IHZhcigtLWNoYWxrLWVycm9yKTtcbn1cblxuLyogTWluaW1hbCByYW5nZSBzdHlsaW5nIG9uIHRoZSB0aGVtZTogYSB0aGluIHRyYWNrLCBzcXVhcmUgdGh1bWIuICovXG4uY2hhbGstdm9pY2Utdm9sdW1lIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICBhcHBlYXJhbmNlOiBub25lO1xuICB3aWR0aDogOTBweDtcbiAgaGVpZ2h0OiAycHg7XG4gIGJhY2tncm91bmQ6IHZhcigtLWNoYWxrLWJvcmRlcik7XG4gIG91dGxpbmU6IG5vbmU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLmNoYWxrLXZvaWNlLXZvbHVtZTo6LXdlYmtpdC1zbGlkZXItdGh1bWIge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIHdpZHRoOiA4cHg7XG4gIGhlaWdodDogMTJweDtcbiAgYmFja2dyb3VuZDogdmFyKC0tY2hhbGstZmcpO1xuICBib3JkZXI6IG5vbmU7XG59XG5cbi5jaGFsay12b2ljZS12b2x1bWU6Oi1tb3otcmFuZ2UtdGh1bWIge1xuICB3aWR0aDogOHB4O1xuICBoZWlnaHQ6IDEycHg7XG4gIGJhY2tncm91bmQ6IHZhcigtLWNoYWxrLWZnKTtcbiAgYm9yZGVyOiBub25lO1xuICBib3JkZXItcmFkaXVzOiAwO1xufVxuXG4vKiAtLS0tIGNvbnRyb2wgYmFyIC0tLS0gKi9cblxuLmNoYWxrLXZvaWNlLWJhciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGdhcDogdmFyKC0tY2hhbGstczIpO1xuICBtYXJnaW4tdG9wOiB2YXIoLS1jaGFsay1zMik7XG4gIGZsZXgtd3JhcDogd3JhcDtcbn1cblxuLmNoYWxrLXZvaWNlLWJhci1zcGFjZXIge1xuICBmbGV4OiAxIDEgYXV0bztcbn1cblxuLmNoYWxrLXZvaWNlLWR1cmF0aW9uIHtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBjb2xvcjogdmFyKC0tY2hhbGstZmctYnJpZ2h0KTtcbiAgZm9udC12YXJpYW50LW51bWVyaWM6IHRhYnVsYXItbnVtcztcbn1cblxuLmNoYWxrLXZvaWNlLXJlbGF5IHtcbiAgZm9udC1zaXplOiAxMHB4O1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBsZXR0ZXItc3BhY2luZzogMC4xZW07XG4gIGNvbG9yOiB2YXIoLS1jaGFsay1mZy1kaW0pO1xuICBib3JkZXI6IDFweCBkYXNoZWQgdmFyKC0tY2hhbGstYm9yZGVyKTtcbiAgcGFkZGluZzogMXB4IDRweDtcbn1cblxuLmNoYWxrLXZvaWNlLWN0bCB7XG4gIGZvbnQtc2l6ZTogMTJweDtcbn1cblxuLmNoYWxrLXZvaWNlLWN0bC0tb2ZmIHtcbiAgY29sb3I6IHZhcigtLWNoYWxrLXdhcm4pO1xuICBib3JkZXItY29sb3I6IHZhcigtLWNoYWxrLXdhcm4pO1xufVxuXG4uY2hhbGstdm9pY2UtY3RsLS1vbiB7XG4gIGNvbG9yOiB2YXIoLS1jaGFsay1mZy1icmlnaHQpO1xuICBib3JkZXItY29sb3I6IHZhcigtLWNoYWxrLWZnLWJyaWdodCk7XG59XG5cbi5jaGFsay12b2ljZS1jdGwtLWxlYXZlIHtcbiAgY29sb3I6IHZhcigtLWNoYWxrLWVycm9yKTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1jaGFsay1lcnJvcik7XG59XG5cbi8qIC0tLS0gZGVidWcgZHJhd2VyICgzMC00YyBkaWFnbm9zdGljcywgcmVidWlsdCBmb3IgdGhlIDMwLTUgbGF5b3V0KSAtLS0tICovXG5cbi5jaGFsay12b2ljZS1kcmF3ZXIge1xuICBtYXJnaW4tdG9wOiB2YXIoLS1jaGFsay1zMik7XG4gIGJvcmRlcjogMXB4IGRhc2hlZCB2YXIoLS1jaGFsay1ib3JkZXIpO1xuICBwYWRkaW5nOiB2YXIoLS1jaGFsay1zMik7XG4gIGZvbnQtc2l6ZTogMTFweDtcbn1cblxuLmNoYWxrLXZvaWNlLWRyYXdlci1oZWFkIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBnYXA6IHZhcigtLWNoYWxrLXMyKTtcbiAgbWFyZ2luLWJvdHRvbTogdmFyKC0tY2hhbGstczEpO1xufVxuXG4uY2hhbGstdm9pY2UtZHJhd2VyLXRpdGxlIHtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMWVtO1xuICBjb2xvcjogdmFyKC0tY2hhbGstZmctZGltKTtcbn1cblxuLmNoYWxrLXZvaWNlLWRyYXdlci1zdGF0cyB7XG4gIG1hcmdpbi1ib3R0b206IHZhcigtLWNoYWxrLXMxKTtcbn1cblxuLmNoYWxrLXZvaWNlLWRyYXdlci1wYWlyIHtcbiAgY29sb3I6IHZhcigtLWNoYWxrLWZnKTtcbiAgbGluZS1oZWlnaHQ6IDEuNjtcbn1cblxuLmNoYWxrLXZvaWNlLWRyYXdlci1wZWVyIHtcbiAgY29sb3I6IHZhcigtLWNoYWxrLWZnLWJyaWdodCk7XG59XG5cbi5jaGFsay12b2ljZS1kcmF3ZXItZXZlbnRzIHtcbiAgbWF4LWhlaWdodDogMTQwcHg7XG4gIG92ZXJmbG93LXk6IGF1dG87XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1jaGFsay1ib3JkZXIpO1xuICBwYWRkaW5nLXRvcDogdmFyKC0tY2hhbGstczEpO1xufVxuXG4uY2hhbGstdm9pY2UtZHJhd2VyLWV2ZW50IHtcbiAgY29sb3I6IHZhcigtLWNoYWxrLWZnLWRpbSk7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIHdoaXRlLXNwYWNlOiBwcmUtd3JhcDtcbiAgd29yZC1icmVhazogYnJlYWstd29yZDtcbn1cblxuLmNoYWxrLXZvaWNlLWRyYXdlci10aW1lIHtcbiAgY29sb3I6IHZhcigtLWNoYWxrLWZnLW11dGVkKTtcbn1cblxuLmNoYWxrLXZvaWNlLWRyYXdlci1oaW50IHtcbiAgbWFyZ2luLXRvcDogdmFyKC0tY2hhbGstczEpO1xuICBjb2xvcjogdmFyKC0tY2hhbGstZmctbXV0ZWQpO1xufVxuXG4uY2hhbGstdm9pY2UtZHJhd2VyLWhpbnQgY29kZSB7XG4gIGNvbG9yOiB2YXIoLS1jaGFsay1mZy1kaW0pO1xuICB1c2VyLXNlbGVjdDogYWxsO1xufVxuIl0sCiAgIm1hcHBpbmdzIjogIjtBQW1CQTtBQUdFLGNBQXNCO0FBQ3RCLG1CQUFzQjtBQUN0QixxQkFBc0I7QUFDdEIsY0FBc0I7QUFDdEIsa0JBQXNCO0FBQ3RCLHFCQUFzQjtBQUN0QixvQkFBc0I7QUFDdEIsa0JBQXNCO0FBQ3RCLGtCQUFzQjtBQUN0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WSxJQUFJO0FBQ2hCLFVBQVE7QUFDUixpQkFBZTtBQUNqQjtBQUlBLENBQUM7QUFDQyxXQUFTO0FBQ1QsZUFBYTtBQUNiLE9BQUssSUFBSTtBQUNULGNBQVksSUFBSTtBQUNoQixhQUFXO0FBQ2I7QUFFQSxDQUFDO0FBQ0MsUUFBTSxFQUFFLEVBQUU7QUFDWjtBQUVBLENBQUM7QUFDQyxhQUFXO0FBQ1gsU0FBTyxJQUFJO0FBQ1gsd0JBQXNCO0FBQ3hCO0FBRUEsQ0FBQztBQUNDLGFBQVc7QUFDWCxrQkFBZ0I7QUFDaEIsa0JBQWdCO0FBQ2hCLFNBQU8sSUFBSTtBQUNYLFVBQVEsSUFBSSxPQUFPLElBQUk7QUFDdkIsV0FBUyxJQUFJO0FBQ2Y7QUFFQSxDQUFDO0FBQ0MsYUFBVztBQUNiO0FBRUEsQ0FBQztBQUNDLFNBQU8sSUFBSTtBQUNYLGdCQUFjLElBQUk7QUFDcEI7QUFFQSxDQUFDO0FBQ0MsU0FBTyxJQUFJO0FBQ1gsZ0JBQWMsSUFBSTtBQUNwQjtBQUVBLENBQUM7QUFDQyxTQUFPLElBQUk7QUFDWCxnQkFBYyxJQUFJO0FBQ3BCO0FBSUEsQ0FBQztBQUNDLGNBQVksSUFBSTtBQUNoQixVQUFRLElBQUksT0FBTyxJQUFJO0FBQ3ZCLFdBQVMsSUFBSTtBQUNiLGFBQVc7QUFDYjtBQUVBLENBQUM7QUFDQyxXQUFTO0FBQ1QsZUFBYTtBQUNiLG1CQUFpQjtBQUNqQixPQUFLLElBQUk7QUFDVCxpQkFBZSxJQUFJO0FBQ3JCO0FBRUEsQ0FBQztBQUNDLGtCQUFnQjtBQUNoQixrQkFBZ0I7QUFDaEIsU0FBTyxJQUFJO0FBQ2I7QUFFQSxDQUFDO0FBQ0MsaUJBQWUsSUFBSTtBQUNyQjtBQUVBLENBQUM7QUFDQyxTQUFPLElBQUk7QUFDWCxlQUFhO0FBQ2Y7QUFFQSxDQUFDO0FBQ0MsU0FBTyxJQUFJO0FBQ2I7QUFFQSxDQUFDO0FBQ0MsY0FBWTtBQUNaLGNBQVk7QUFDWixjQUFZLElBQUksTUFBTSxJQUFJO0FBQzFCLGVBQWEsSUFBSTtBQUNuQjtBQUVBLENBQUM7QUFDQyxTQUFPLElBQUk7QUFDWCxlQUFhO0FBQ2IsZUFBYTtBQUNiLGNBQVk7QUFDZDtBQUVBLENBQUM7QUFDQyxTQUFPLElBQUk7QUFDYjtBQUVBLENBQUM7QUFDQyxjQUFZLElBQUk7QUFDaEIsU0FBTyxJQUFJO0FBQ2I7QUFFQSxDQUxDLHdCQUt3QjtBQUN2QixTQUFPLElBQUk7QUFDWCxlQUFhO0FBQ2Y7IiwKICAibmFtZXMiOiBbXQp9Cg== */
