taskgenius_taskgenius-plugin/styles.css
Quorafind c3165c57a9 feat(settings): add modal settings interface with vertical tabs
Introduce a new SettingsModal component that provides a full-featured
settings interface using Obsidian's vertical tabs layout pattern.
The modal includes categorized navigation, deep search functionality,
and mobile-responsive design with back navigation.

Key changes:
- Add SettingsModal with searchable settings, category grouping, and
  smooth transitions between tabs
- Refactor ProjectSettingsTab with comprehensive documentation and
  clearer section organization
- Support boolean metadata values for project detection (uses filename
  as project name when `project: true`)
- Integrate settings modal into FluentTopNavigation
- Add corresponding SCSS styles for the modal layout
2025-12-14 21:57:55 +08:00

21650 lines
1.6 MiB

/* @settings
name: Task Genius
id: task-genius
settings:
-
id: task-colors-heading
title: Checkbox Status Colors
type: heading
level: 1
-
id: task-completed-color
title: Completed Task Color
type: variable-themed-color
opacity: false
format: hex
default-light: '#4caf50'
default-dark: '#4caf50'
-
id: task-doing-color
title: Doing Task Color
type: variable-themed-color
opacity: false
format: hex
default-light: '#80dee5'
default-dark: '#379fa7'
-
id: task-in-progress-color
title: In Progress Task Color
type: variable-themed-color
opacity: false
format: hex
default-light: '#f9d923'
default-dark: '#ffc107'
-
id: task-abandoned-color
title: Abandoned Task Color
type: variable-themed-color
opacity: false
format: hex
default-light: '#eb5353'
default-dark: '#f44336'
-
id: task-planned-color
title: Planned Task Color
type: variable-themed-color
opacity: false
format: hex
default-light: '#9c27b0'
default-dark: '#ce93d8'
-
id: task-question-color
title: Question Task Color
type: variable-themed-color
opacity: false
format: hex
default-light: '#2196f3'
default-dark: '#42a5f5'
-
id: task-important-color
title: Important Task Color
type: variable-themed-color
opacity: false
format: hex
default-light: '#f44336'
default-dark: '#ef5350'
-
id: task-star-color
title: Star Task Color
type: variable-themed-color
opacity: false
format: hex
default-light: '#ffc107'
default-dark: '#ffd54f'
-
id: task-quote-color
title: Quote Task Color
type: variable-themed-color
opacity: false
format: hex
default-light: '#607d8b'
default-dark: '#90a4ae'
-
id: task-location-color
title: Location Task Color
type: variable-themed-color
opacity: false
format: hex
default-light: '#795548'
default-dark: '#8d6e63'
-
id: task-bookmark-color
title: Bookmark Task Color
type: variable-themed-color
opacity: false
format: hex
default-light: '#ff9800'
default-dark: '#ffb74d'
-
id: task-information-color
title: Information Task Color
type: variable-themed-color
opacity: false
format: hex
default-light: '#00bcd4'
default-dark: '#26c6da'
-
id: task-idea-color
title: Idea Task Color
type: variable-themed-color
opacity: false
format: hex
default-light: '#9c27b0'
default-dark: '#ce93d8'
-
id: task-pros-color
title: Pros Task Color
type: variable-themed-color
opacity: false
format: hex
default-light: '#4caf50'
default-dark: '#66bb6a'
-
id: task-cons-color
title: Cons Task Color
type: variable-themed-color
opacity: false
format: hex
default-light: '#f44336'
default-dark: '#ef5350'
-
id: task-fire-color
title: Fire Task Color
type: variable-themed-color
opacity: false
format: hex
default-light: '#ff5722'
default-dark: '#ff7043'
-
id: task-key-color
title: Key Task Color
type: variable-themed-color
opacity: false
format: hex
default-light: '#ffd700'
default-dark: '#ffd700'
-
id: task-win-color
title: Win Task Color
type: variable-themed-color
opacity: false
format: hex
default-light: '#66bb6a'
default-dark: '#81c784'
-
id: task-up-color
title: Up Task Color
type: variable-themed-color
opacity: false
format: hex
default-light: '#4caf50'
default-dark: '#66bb6a'
-
id: task-down-color
title: Down Task Color
type: variable-themed-color
opacity: false
format: hex
default-light: '#f44336'
default-dark: '#ef5350'
-
id: task-note-color
title: Note Task Color
type: variable-themed-color
opacity: false
format: hex
default-light: '#9e9e9e'
default-dark: '#bdbdbd'
-
id: task-amount-color
title: Amount/Savings Task Color
type: variable-themed-color
opacity: false
format: hex
default-light: '#8bc34a'
default-dark: '#aed581'
-
id: task-speech-color
title: Speech Bubble Task Color
type: variable-themed-color
opacity: false
format: hex
default-light: '#03a9f4'
default-dark: '#29b6f6'
-
id: progress-bar-colors
title: Progress Bar Colors
type: heading
level: 1
-
id: progress-0-color
title: 0% Progress Color
type: variable-themed-color
opacity: false
format: hex
default-light: '#ae431e'
default-dark: '#ae431e'
-
id: progress-25-color
title: 25% Progress Color
type: variable-themed-color
opacity: false
format: hex
default-light: '#e5890a'
default-dark: '#e5890a'
-
id: progress-50-color
title: 50% Progress Color
type: variable-themed-color
opacity: false
format: hex
default-light: '#b4c6a6'
default-dark: '#b4c6a6'
-
id: progress-75-color
title: 75% Progress Color
type: variable-themed-color
opacity: false
format: hex
default-light: '#6bcb77'
default-dark: '#6bcb77'
-
id: progress-100-color
title: 100% Progress Color
type: variable-themed-color
opacity: false
format: hex
default-light: '#4d96ff'
default-dark: '#4d96ff'
-
id: progress-background-color
title: Progress Bar Background Color
type: variable-themed-color
opacity: false
format: hex
default-light: '#f1f1f1'
default-dark: '#f1f1f1'
*/
@charset "UTF-8";
/* src/styles/progressbar.scss */
.cm-task-progress-bar {
display: inline-block;
position: relative;
margin-left: 5px;
margin-bottom: 1px;
}
.no-progress-bar .cm-task-progress-bar {
display: none !important;
}
.HyperMD-header .cm-task-progress-bar {
display: inline-block;
position: relative;
margin-left: 5px;
margin-bottom: 5px;
}
.progress-bar-inline {
height: 8px;
position: relative;
}
.progress-bar-inline-empty {
background-color: var(--progress-background-color);
}
.progress-bar-inline-0 {
background-color: var(--progress-0-color);
}
.progress-bar-inline-1 {
background-color: var(--progress-25-color);
}
.progress-bar-inline-2 {
background-color: var(--progress-50-color);
}
.progress-bar-inline-3 {
background-color: var(--progress-75-color);
}
.progress-bar-inline-complete {
background-color: var(--progress-100-color);
}
.progress-completed {
background-color: var(--task-completed-color);
z-index: 3;
}
.progress-in-progress {
background-color: var(--task-in-progress-color);
z-index: 2;
position: absolute;
top: 0;
height: 100%;
}
.progress-abandoned {
background-color: var(--task-abandoned-color);
z-index: 1;
position: absolute;
top: 0;
height: 100%;
}
.progress-planned {
background-color: var(--task-planned-color);
z-index: 1;
position: absolute;
top: 0;
height: 100%;
}
.progress-bar-inline-background {
color: #000 !important;
background-color: var(--progress-background-color);
border-radius: 10px;
flex-direction: row;
justify-content: flex-start;
align-items: center;
width: 85px;
position: relative;
overflow: hidden;
}
.progress-bar-inline-background.hidden {
display: none;
}
.cm-task-progress-bar .task-status-indicator {
display: inline-block;
margin-right: 2px;
}
.cm-task-progress-bar .completed-indicator {
color: var(--task-completed-color);
}
.cm-task-progress-bar .in-progress-indicator {
color: var(--task-in-progress-color);
}
.cm-task-progress-bar .abandoned-indicator {
color: var(--task-abandoned-color);
}
.cm-task-progress-bar .planned-indicator {
color: var(--task-planned-color);
}
.cm-task-progress-bar.with-number {
display: inline-flex;
align-items: center;
}
.HyperMD-header .cm-task-progress-bar.with-number .progress-bar-inline-background,
.HyperMD-header .cm-task-progress-bar.with-number .progress-status {
margin-bottom: 5px;
}
.cm-task-progress-bar.with-number .progress-bar-inline-background {
margin-bottom: -2px;
width: 42px;
}
.cm-task-progress-bar.with-number .progress-status {
font-size: 13px;
margin-left: 3px;
}
.theme-dark .progress-completed {
background-color: var(--task-completed-color);
}
.theme-dark .progress-in-progress {
background-color: var(--task-in-progress-color);
}
.theme-dark .progress-abandoned {
background-color: var(--task-abandoned-color);
}
.theme-dark .progress-planned {
background-color: var(--task-planned-color);
}
.task-progress-bar-popover {
width: 400px;
}
/* src/styles/modal.scss */
.confirm-modal-buttons {
display: flex;
gap: var(--size-4-3);
justify-content: flex-end;
margin-top: var(--size-4-3);
}
.list-config-modal {
min-width: 400px;
max-width: 600px;
}
.list-config-description {
margin-bottom: var(--size-4-3);
color: var(--text-muted);
font-size: var(--font-smaller);
}
.list-config-container {
margin: var(--size-4-3) 0;
max-height: 300px;
overflow-y: auto;
border: 1px solid var(--background-modifier-border);
border-radius: var(--radius-s);
padding: var(--size-2-3);
}
.list-config-empty {
text-align: center;
padding: var(--size-4-6);
}
.list-config-empty-text {
color: var(--text-muted);
font-style: italic;
margin: 0;
}
.list-config-item {
display: flex;
align-items: center;
gap: var(--size-2-2);
margin-bottom: var(--size-2-2);
}
.list-config-item:last-child {
margin-bottom: 0;
}
.list-config-input {
flex: 1;
padding: var(--size-2-1) var(--size-2-3);
border: 1px solid var(--background-modifier-border);
border-radius: var(--radius-s);
background: var(--background-primary);
color: var(--text-normal);
font-size: var(--font-ui-small);
}
.list-config-input:focus {
outline: none;
border-color: var(--interactive-accent);
}
button.list-config-delete-btn {
display: flex;
align-items: center;
justify-content: center;
width: 24px;
height: 24px;
border: none;
background: var(--background-modifier-error);
color: var(--text-on-accent);
border-radius: var(--radius-s);
cursor: pointer;
transition: background-color 0.2s ease;
box-shadow: none;
}
.list-config-delete-btn:hover {
background: var(--background-modifier-error-hover);
}
.list-config-delete-icon {
font-size: 14px;
font-weight: bold;
line-height: 1;
}
.bulk-date-picker-modal .modal-content {
min-width: 320px;
}
.bulk-date-offset-modal .modal-content {
min-width: 400px;
max-width: 500px;
}
.bulk-offset-button-container {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));
gap: var(--size-2-3);
}
.bulk-offset-button-container button {
width: 100%;
}
.bulk-offset-custom-section {
margin-top: var(--size-4-6);
padding-top: var(--size-4-3);
border-top: 1px solid var(--background-modifier-border);
}
.bulk-offset-custom-section label {
display: block;
margin-bottom: var(--size-2-3);
font-weight: 500;
color: var(--text-normal);
}
.modal-description {
margin-bottom: var(--size-4-3);
color: var(--text-muted);
font-size: var(--font-ui-small);
}
.mcp-log-modal {
min-width: 700px;
max-width: 900px;
}
.mcp-log-header {
display: flex;
align-items: center;
gap: var(--size-4-3);
margin-bottom: var(--size-4-3);
padding-bottom: var(--size-4-3);
border-bottom: 1px solid var(--background-modifier-border);
}
.mcp-log-search-container {
flex: 1;
}
.mcp-log-search-input {
width: 100%;
padding: var(--size-2-2) var(--size-4-2);
border: 1px solid var(--background-modifier-border);
border-radius: var(--radius-s);
background: var(--background-primary);
color: var(--text-normal);
font-size: var(--font-ui-small);
}
.mcp-log-search-input:focus {
outline: none;
border-color: var(--interactive-accent);
}
.mcp-log-stats {
margin-bottom: var(--size-4-3);
padding: var(--size-2-3);
background: var(--background-secondary);
border-radius: var(--radius-s);
}
.mcp-log-stats-text {
font-size: var(--font-ui-small);
color: var(--text-muted);
text-align: center;
}
.mcp-log-container {
max-height: 500px;
overflow-y: auto;
padding: var(--size-2-2);
border: 1px solid var(--background-modifier-border);
border-radius: var(--radius-s);
background: var(--background-primary);
}
.mcp-log-empty {
text-align: center;
padding: var(--size-4-8);
color: var(--text-muted);
font-style: italic;
}
.mcp-log-entry {
margin-bottom: var(--size-2-3);
padding: var(--size-2-3);
border: 1px solid var(--background-modifier-border);
border-radius: var(--radius-s);
background: var(--background-secondary);
}
.mcp-log-entry:last-child {
margin-bottom: 0;
}
.mcp-log-error {
background: var(--background-modifier-error);
}
.mcp-log-entry-header {
display: flex;
align-items: center;
gap: var(--size-4-2);
font-size: var(--font-ui-small);
}
.mcp-log-timestamp {
color: var(--text-muted);
font-family: var(--font-monospace);
font-size: var(--font-smallest);
min-width: 80px;
}
.mcp-log-tool-name {
font-weight: 500;
color: var(--text-normal);
flex: 1;
}
.mcp-log-duration {
color: var(--text-muted);
font-family: var(--font-monospace);
font-size: var(--font-smallest);
}
.mcp-log-session-id {
color: var(--text-faint);
font-family: var(--font-monospace);
font-size: var(--font-smallest);
cursor: help;
}
.mcp-log-toggle-btn {
padding: 2px 6px;
border: none;
background: var(--interactive-normal);
color: var(--text-muted);
border-radius: var(--radius-s);
cursor: pointer;
font-size: var(--font-smallest);
transition: background-color 0.2s ease;
}
.mcp-log-toggle-btn:hover {
background: var(--interactive-hover);
}
.mcp-log-details {
margin-top: var(--size-2-3);
padding-top: var(--size-2-3);
border-top: 1px solid var(--background-modifier-border);
}
.mcp-log-section {
margin-bottom: var(--size-2-3);
}
.mcp-log-section:last-child {
margin-bottom: 0;
}
.mcp-log-section-title {
font-size: var(--font-ui-smaller);
font-weight: 600;
color: var(--text-normal);
margin-bottom: var(--size-2-1);
}
.mcp-log-error-title {
color: var(--text-error);
}
.mcp-log-section-content {
font-family: var(--font-monospace);
font-size: var(--font-smallest);
background: var(--background-primary);
border: 1px solid var(--background-modifier-border);
border-radius: var(--radius-s);
padding: var(--size-2-2);
margin: 0;
overflow-x: auto;
white-space: pre-wrap;
word-break: break-word;
max-height: 300px;
overflow-y: auto;
}
.mcp-log-error-content {
color: var(--text-error);
background: var(--background-modifier-error);
}
.mcp-log-truncated-badge {
font-size: var(--font-smallest);
color: var(--text-muted);
font-weight: normal;
font-style: italic;
}
/* src/styles/date-picker.scss */
.date-picker-root-container {
display: flex;
flex-direction: column;
width: 100%;
min-width: 500px;
max-width: 600px;
}
.date-picker-root-container .date-picker-main-panel {
display: flex;
gap: var(--size-2-3);
padding: var(--size-2-3);
}
.date-picker-root-container .date-picker-left-panel {
flex: 1;
min-width: 200px;
border-right: 1px solid var(--background-modifier-border);
}
.date-picker-root-container .date-picker-right-panel {
flex: 1;
min-width: 250px;
}
.date-picker-root-container .date-picker-section-title {
font-size: var(--font-ui-medium);
font-weight: var(--font-bold);
margin-bottom: var(--size-4-2);
color: var(--text-normal);
}
.date-picker-root-container .quick-options-container {
display: flex;
flex-direction: column;
gap: var(--size-2-1);
max-height: 195px;
overflow: auto;
overflow-x: hidden;
}
.date-picker-root-container .quick-option-item {
display: flex;
justify-content: space-between;
align-items: center;
padding: var(--size-2-2) var(--size-4-2);
cursor: pointer;
transition: background-color 0.2s ease;
}
.date-picker-root-container .quick-option-item:hover {
background-color: var(--background-modifier-hover);
}
.date-picker-root-container .quick-option-item.selected {
background-color: var(--interactive-accent);
color: var(--text-on-accent);
}
.date-picker-root-container .quick-option-item.clear-option {
border-top: 1px solid var(--background-modifier-border);
margin-top: var(--size-2-2);
padding-top: var(--size-2-3);
color: var(--text-error);
}
.date-picker-root-container .quick-option-item.clear-option:hover {
color: var(--text-on-accent);
background-color: var(--background-modifier-error-hover);
}
.date-picker-root-container .quick-option-label {
font-size: var(--font-ui-small);
font-weight: var(--font-medium);
}
.date-picker-root-container .quick-option-date {
font-size: var(--font-ui-smaller);
color: var(--text-muted);
font-family: var(--font-monospace);
}
.date-picker-root-container .quick-option-item.selected .quick-option-date {
color: var(--text-on-accent);
}
.date-picker-root-container .calendar-container {
display: flex;
flex-direction: column;
}
.date-picker-root-container .calendar-header {
display: flex;
justify-content: space-between;
align-items: center;
margin-bottom: var(--size-4-2);
padding: 0 var(--size-2-2);
}
.date-picker-root-container .calendar-nav-btn {
display: flex;
align-items: center;
justify-content: center;
width: 32px;
height: 32px;
border-radius: var(--radius-s);
cursor: pointer;
transition: background-color 0.2s ease;
}
.date-picker-root-container .calendar-nav-btn:hover {
background-color: var(--background-modifier-hover);
}
.date-picker-root-container .calendar-month-year {
font-size: var(--font-ui-medium);
font-weight: var(--font-bold);
color: var(--text-normal);
}
.date-picker-root-container .calendar-grid {
display: grid;
grid-template-columns: repeat(7, 1fr);
gap: 1px;
background-color: var(--background-modifier-border);
border-radius: var(--radius-s);
overflow: hidden;
}
.date-picker-root-container .calendar-day-header {
background-color: var(--background-secondary);
padding: var(--size-2-2);
text-align: center;
font-size: var(--font-ui-smaller);
font-weight: var(--font-bold);
color: var(--text-muted);
}
.date-picker-root-container .calendar-day {
background-color: var(--background-primary);
padding: var(--size-2-2);
text-align: center;
font-size: var(--font-ui-small);
cursor: pointer;
transition: background-color 0.2s ease;
min-height: 32px;
display: flex;
align-items: center;
justify-content: center;
}
.date-picker-root-container .calendar-day:hover {
background-color: var(--background-modifier-hover);
}
.date-picker-root-container .calendar-day.other-month {
color: var(--text-faint);
background-color: var(--background-secondary);
}
.date-picker-root-container .calendar-day.today {
background-color: var(--interactive-accent-hover);
color: var(--text-on-accent);
font-weight: var(--font-bold);
}
.date-picker-root-container .calendar-day.selected {
background-color: var(--interactive-accent);
color: var(--text-on-accent);
font-weight: var(--font-bold);
}
.date-picker-root-container .calendar-day.today.selected {
background-color: var(--interactive-accent);
box-shadow: inset 0 0 0 2px var(--text-on-accent);
}
.date-picker-popover.tg-menu {
z-index: 20;
position: fixed;
background-color: var(--background-primary);
border: 1px solid var(--background-modifier-border);
border-radius: var(--radius-s);
box-shadow: var(--shadow-l);
max-height: 80vh;
overflow: auto;
}
.date-picker-popover.tg-menu .date-picker-popover-content {
padding: 0;
}
@media (max-width: 768px) {
.date-picker-root-container .date-picker-main-panel {
flex-direction: column;
gap: var(--size-4-2);
}
.date-picker-root-container .date-picker-left-panel {
border-right: none;
border-bottom: 1px solid var(--background-modifier-border);
padding-right: 0;
padding-bottom: var(--size-4-2);
}
.date-picker-root-container {
min-width: 300px;
max-width: 400px;
}
.date-picker-root-container .calendar-day {
min-height: 40px;
font-size: var(--font-ui-medium);
}
}
.date-picker-root-container .date-picker-widget-error {
color: var(--text-error);
background-color: var(--background-modifier-error);
padding: var(--size-2-1) var(--size-2-2);
border-radius: var(--radius-s);
font-size: var(--font-ui-smaller);
}
/* src/styles/task-details.scss */
.task-details-container .panel-toggle-container {
left: 10px;
}
.task-details-container {
width: 300px;
flex-shrink: 0;
border-left: 1px solid var(--background-modifier-border);
height: 100%;
overflow-y: auto;
display: flex;
flex-direction: column;
transition: all 0.3s ease-in-out;
position: relative;
min-width: 250px;
max-width: 400px;
background-color: var(--background-secondary);
order: 1;
}
.task-genius-container.details-hidden .task-details-container {
width: 0;
opacity: 0;
margin-right: -300px;
overflow: hidden;
}
.task-genius-container.details-visible .task-details-container {
width: 350px;
opacity: 1;
margin-right: 0;
}
.is-phone .task-details-container,
.is-mobile .task-details-container {
position: absolute;
right: 0;
top: 0;
height: 100%;
width: 100%;
max-width: 100%;
z-index: 10;
transform: translateX(100%);
}
.is-phone .task-genius-container.details-hidden .task-details-container,
.is-mobile .task-genius-container.details-hidden .task-details-container,
.is-mobile .tg-fluent-container.details-hidden .task-details-container {
width: 100%;
margin-right: 0;
transform: translateX(100%);
}
.is-phone .task-genius-container.details-visible .task-details-container,
.is-mobile .task-genius-container.details-visible .task-details-container,
.is-mobile .tg-fluent-container.details-visible .task-details-container {
width: calc(100% - var(--size-4-12));
transform: translateX(0);
}
.is-phone .task-genius-container.details-visible::before,
.is-mobile .task-genius-container.details-visible::before,
.is-mobile .tg-fluent-container.details-visible::before {
content: "";
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background-color: var(--background-modifier-cover);
opacity: 0.5;
z-index: 5;
transition: opacity 0.3s ease-in-out;
}
.is-phone .details-close-btn,
.is-mobile .details-close-btn {
width: 24px;
height: 24px;
display: flex;
align-items: center;
justify-content: center;
}
.is-phone .details-header,
.is-mobile .details-header {
padding: var(--size-4-4);
}
.details-empty {
display: flex;
height: 100%;
align-items: center;
justify-content: center;
text-align: center;
color: var(--text-muted);
padding: 20px;
}
.details-header {
padding: var(--size-4-4);
padding-bottom: var(--size-4-3);
padding-top: var(--size-4-3);
font-weight: 600;
border-bottom: 1px solid var(--background-modifier-border);
display: flex;
justify-content: space-between;
align-items: center;
font-size: 1.1em;
}
.details-content {
padding: var(--size-4-4);
display: flex;
flex-direction: column;
gap: var(--size-4-2);
overflow-y: auto;
padding-bottom: max(var(--safe-area-inset-bottom), var(--size-4-8));
}
.details-name {
margin: 0 0 8px 0;
padding: 0;
font-size: 1.3em;
line-height: 1.3;
}
.details-status-container {
display: flex;
justify-content: space-between;
align-items: center;
}
.details-status-label {
text-transform: uppercase;
font-size: var(--font-ui-small);
}
.details-status {
display: inline-block;
padding: 4px 8px;
border-radius: 4px;
background-color: var(--color-accent);
color: var(--text-on-accent);
font-size: var(--font-ui-small);
}
.details-status-selector {
display: flex;
justify-content: space-evenly;
align-items: center;
}
.menu-item-title:has(.status-option) {
display: flex;
align-items: center;
gap: 4px;
}
.menu-item:has(.status-option-checkbox) .menu-item-icon {
display: none;
}
.menu-item:has(.status-option-icon) .menu-item-icon {
display: none;
}
.status-option-icon {
display: flex;
align-items: center;
justify-content: center;
margin-right: var(--size-2-2);
}
.status-option-checkbox {
display: flex;
align-items: center;
justify-content: center;
}
.status-option {
display: flex;
justify-content: center;
text-transform: uppercase;
}
.status-option.current {
outline-offset: 2px;
outline: 1px solid hsl(var(--accent-h), var(--accent-s), var(--accent-l), 0.3);
outline-style: dashed;
}
.status-option:not(.current) {
opacity: 0.8;
}
.status-option:not(.current):hover {
opacity: 1;
}
.status-option input.task-list-item-checkbox {
margin-inline-end: 0;
}
.details-metadata {
display: flex;
flex-direction: column;
gap: var(--size-4-2);
margin-top: var(--size-4-2);
margin-bottom: var(--size-4-2);
}
.metadata-field {
display: flex;
flex-direction: column;
gap: 2px;
}
.metadata-label {
font-size: 0.8em;
color: var(--text-muted);
}
.metadata-value {
word-break: break-word;
font-size: 0.95em;
}
.details-actions {
display: flex;
align-items: center;
justify-content: flex-start;
gap: 8px;
margin-bottom: var(--size-4-4);
}
.details-edit-btn,
.details-toggle-btn {
background-color: var(--interactive-normal);
border-radius: 4px;
padding: 6px 12px;
color: var(--text-normal);
cursor: pointer;
font-size: var(--font-ui-small);
}
.details-edit-btn:hover,
.details-toggle-btn:hover {
background-color: var(--interactive-hover);
}
.details-toggle-btn {
background-color: var(--interactive-accent);
color: var(--text-on-accent);
}
.details-edit-form {
display: flex;
flex-direction: column;
gap: 12px;
}
.details-form-field {
display: flex;
flex-direction: column;
gap: 4px;
}
.details-form-label {
font-size: 0.8em;
color: var(--text-muted);
font-weight: 500;
}
.details-form-input {
width: 100%;
}
.details-edit-content {
font-weight: 500;
}
.details-form-input input,
.details-form-input select {
width: 100%;
padding: 6px 8px;
border-radius: 4px;
}
.date-input {
width: 100%;
padding: 6px 8px;
border-radius: 4px;
border: 1px solid var(--background-modifier-border);
background-color: var(--background-primary);
color: var(--text-normal);
}
.field-description {
font-size: 0.7em;
color: var(--text-muted);
margin-top: 2px;
}
.tags-editor {
display: flex;
flex-wrap: wrap;
gap: 6px;
align-items: center;
}
.tags-editor__list {
display: flex;
flex-wrap: wrap;
gap: 6px;
flex: 1;
}
.tags-editor__tag {
display: inline-flex;
align-items: center;
gap: 4px;
padding: 2px 8px;
border-radius: 999px;
background-color: var(--background-modifier-border);
color: var(--text-muted);
font-size: 0.8em;
line-height: 1.4;
}
.tags-editor__tag-label {
color: var(--text-normal);
}
.tags-editor__remove {
background: none;
border: none;
color: var(--text-muted);
cursor: pointer;
font-size: 0.8em;
line-height: 1;
padding: 0 2px;
}
.tags-editor__remove:hover {
color: var(--text-error);
}
.tags-editor__add {
background: var(--interactive-accent);
color: var(--text-on-accent);
border: none;
border-radius: 50%;
width: 24px;
height: 24px;
display: flex;
align-items: center;
justify-content: center;
cursor: pointer;
font-size: 1em;
}
.tags-editor__add:hover {
background: var(--interactive-accent-hover);
}
.tags-editor__input {
min-width: 140px;
}
.tags-editor__input input {
width: 100%;
padding: 4px 6px;
}
.tags-editor__input--hidden {
display: none;
}
.tags-editor__empty {
font-size: 0.8em;
color: var(--text-muted);
}
.tags-editor__tag div.clickable-icon {
padding: 0;
--icon-size: 12px;
}
.details-form-buttons {
display: flex;
justify-content: space-between;
margin-top: 16px;
gap: 8px;
}
.details-form-buttons button {
flex: 1;
justify-content: center;
}
.details-form-error {
color: var(--text-error);
font-size: 0.8em;
margin-top: 8px;
padding: 8px;
background-color: var(--background-modifier-error);
border-radius: 4px;
}
.details-edit-file-btn {
border-radius: 4px;
padding: 6px 12px;
color: var(--text-normal);
cursor: pointer;
font-size: var(--font-ui-small);
}
.details-edit-file-btn:hover {
background-color: var(--interactive-hover);
}
.is-mobile .tg-fluent-container .task-details-container {
position: fixed;
right: 0;
top: 0;
bottom: 0;
height: 100vh;
width: 85vw;
max-width: 400px;
z-index: 1001;
background-color: var(--background-secondary);
box-shadow: -4px 0 20px rgba(0, 0, 0, 0.2);
}
.is-mobile .task-details-container .details-close-btn:hover {
background-color: var(--background-modifier-active-hover);
}
.is-mobile .details-content {
padding-bottom: var(--size-4-12);
}
@media screen and (max-width: 768px) {
.task-omnifocus-container {
flex-direction: column;
}
.task-sidebar {
width: 100%;
max-width: 100%;
height: auto;
border-right: none;
border-bottom: 1px solid var(--background-modifier-border);
}
.task-content {
width: 100%;
flex: 1;
}
.task-details-container {
width: 100%;
max-width: 100%;
border-left: none;
}
}
.project-source-indicator {
display: flex;
align-items: center;
gap: 4px;
margin-top: 4px;
padding: 4px 8px;
border-radius: 4px;
font-size: 0.85em;
line-height: 1.2;
}
.project-source-indicator .indicator-icon {
font-size: 0.9em;
}
.project-source-indicator .indicator-text {
color: var(--text-muted);
}
.project-source-indicator.readonly-indicator {
border: 1px solid var(--background-modifier-error);
}
.project-source-indicator.readonly-indicator .indicator-text {
color: var(--text-error);
font-weight: 500;
}
.project-source-indicator.override-indicator {
border: 1px solid var(--background-modifier-accent);
}
.project-source-indicator.override-indicator .indicator-text {
color: var(--text-accent);
}
.field-description.readonly-description {
color: var(--text-error);
font-size: 0.8em;
margin-top: 4px;
font-style: italic;
}
.field-description.override-description {
color: var(--text-accent);
font-size: 0.8em;
margin-top: 4px;
font-style: italic;
}
.project-source-indicator.inline-indicator {
position: absolute;
top: 100%;
left: 0;
right: 0;
z-index: 10;
margin-top: 2px;
padding: 2px 6px;
font-size: 0.75em;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
.project-source-indicator.table-indicator {
position: absolute;
top: 2px;
right: 2px;
padding: 1px 3px;
font-size: 0.7em;
border-radius: 2px;
z-index: 5;
}
.project-source-indicator.table-indicator .indicator-icon {
font-size: 0.8em;
}
.task-table-cell.readonly-cell {
background-color: var(--background-modifier-error-hover);
opacity: 0.8;
}
.project-container.project-readonly {
position: relative;
}
.project-container.project-readonly .project-source-indicator {
margin-top: 8px;
}
/* src/styles/onCompletion.scss */
.oncompletion-configurator {
display: flex;
flex-direction: column;
gap: 12px;
padding: 12px;
border: 1px solid var(--background-modifier-border);
border-radius: 6px;
background-color: var(--background-secondary);
}
.oncompletion-action-type {
display: flex;
flex-direction: column;
gap: 6px;
}
.oncompletion-label {
font-weight: 600;
color: var(--text-normal);
font-size: 0.9em;
}
.oncompletion-config {
display: flex;
flex-direction: column;
gap: 10px;
margin-top: 8px;
padding-top: 8px;
border-top: 1px solid var(--background-modifier-border-hover);
}
.oncompletion-field {
display: flex;
flex-direction: column;
gap: 4px;
}
.oncompletion-description {
font-size: 0.8em;
color: var(--text-muted);
font-style: italic;
margin-top: 2px;
}
.oncompletion-action-type .dropdown {
width: 100%;
}
.oncompletion-field .text-input {
width: 100%;
padding: 6px 8px;
border: 1px solid var(--background-modifier-border);
border-radius: 4px;
background-color: var(--background-primary);
color: var(--text-normal);
}
.oncompletion-field .text-input:focus {
border-color: var(--interactive-accent);
outline: none;
box-shadow: 0 0 0 2px var(--interactive-accent-hover);
}
.oncompletion-field .checkbox-container {
display: flex;
align-items: center;
gap: 8px;
}
.task-id-suggestion {
font-weight: 600;
color: var(--text-accent);
}
.task-content-preview {
font-size: 0.85em;
color: var(--text-muted);
margin-top: 2px;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
max-width: 300px;
}
.file-name {
font-weight: 500;
color: var(--text-normal);
}
.file-path {
font-size: 0.8em;
color: var(--text-muted);
margin-top: 2px;
}
.action-type-suggestion {
font-weight: 600;
color: var(--text-accent);
}
.action-description {
font-size: 0.8em;
color: var(--text-muted);
margin-top: 2px;
}
.oncompletion-configurator.invalid {
border-color: var(--text-error);
background-color: var(--background-modifier-error);
}
.oncompletion-configurator.valid {
border-color: var(--text-success);
}
.oncompletion-validation-message {
font-size: 0.8em;
margin-top: 4px;
padding: 4px 6px;
border-radius: 3px;
}
.oncompletion-validation-message.error {
color: var(--text-error);
background-color: var(--background-modifier-error);
}
.oncompletion-validation-message.success {
color: var(--text-success);
}
.task-details .oncompletion-configurator {
margin-top: 8px;
border: none;
background-color: transparent;
padding: 0;
}
.task-details .oncompletion-field {
margin-bottom: 8px;
}
@media (max-width: 768px) {
.oncompletion-configurator {
padding: 8px;
gap: 8px;
}
.oncompletion-config {
gap: 8px;
}
.task-content-preview {
max-width: 200px;
}
}
.theme-dark .oncompletion-configurator {
background-color: var(--background-primary-alt);
}
.theme-dark .oncompletion-field .text-input {
background-color: var(--background-secondary);
border-color: var(--background-modifier-border-hover);
}
@media (prefers-contrast: high) {
.oncompletion-configurator {
border-width: 2px;
}
.oncompletion-field .text-input {
border-width: 2px;
}
.oncompletion-field .text-input:focus {
box-shadow: 0 0 0 3px var(--interactive-accent-hover);
}
}
.oncompletion-config {
transition: all 0.2s ease-in-out;
}
.oncompletion-field {
opacity: 1;
transform: translateY(0);
transition: opacity 0.2s ease-in-out, transform 0.2s ease-in-out;
}
.oncompletion-field.entering {
opacity: 0;
transform: translateY(-10px);
}
.oncompletion-field.exiting {
opacity: 0;
transform: translateY(10px);
}
.oncompletion-modal {
--dialog-width: 600px;
--dialog-max-width: 90vw;
--dialog-max-height: 80vh;
}
.oncompletion-modal .modal-content {
padding: 0;
max-height: var(--dialog-max-height);
overflow-y: auto;
}
.oncompletion-modal-content {
padding: 20px;
max-height: 60vh;
overflow-y: auto;
}
.oncompletion-modal-buttons {
display: flex;
justify-content: flex-end;
gap: 8px;
padding: 16px 20px;
border-top: 1px solid var(--background-modifier-border);
background-color: var(--background-secondary);
}
.oncompletion-modal-buttons button {
min-width: 80px;
}
.inline-oncompletion-button-container {
display: inline-flex;
align-items: center;
}
.inline-oncompletion-config-button {
padding: 4px 8px;
border: 1px solid var(--background-modifier-border);
border-radius: 4px;
background-color: var(--background-primary);
color: var(--text-normal);
font-family: inherit;
font-size: var(--font-ui-small);
cursor: pointer;
transition: all 0.15s ease;
min-width: 100px;
text-align: left;
}
.inline-oncompletion-config-button:hover {
background-color: var(--background-modifier-hover);
border-color: var(--interactive-accent);
}
.inline-oncompletion-config-button:focus {
outline: none;
border-color: var(--interactive-accent);
box-shadow: 0 0 0 2px var(--interactive-accent-hover);
}
.inline-oncompletion-config-button:active {
background-color: var(--background-modifier-active);
transform: scale(0.98);
}
@media (max-width: 768px) {
.oncompletion-modal {
--dialog-width: 95vw;
--dialog-max-height: 85vh;
}
.oncompletion-modal-content {
padding: 16px;
max-height: 65vh;
}
.oncompletion-modal-buttons {
padding: 12px 16px;
flex-direction: column-reverse;
}
.oncompletion-modal-buttons button {
width: 100%;
min-width: unset;
}
}
/* src/styles/universal-suggest.scss */
.universal-suggest-item {
display: flex;
align-items: center;
cursor: pointer;
border-radius: 4px;
transition: background-color 0.1s ease;
}
.universal-suggest-item:hover {
background-color: var(--background-modifier-hover);
}
.universal-suggest-item.is-selected {
background-color: var(--background-modifier-active-hover);
}
.universal-suggest-container {
display: flex;
flex-direction: row;
align-items: center;
justify-content: flex-start;
overflow: hidden;
}
.universal-suggest-icon {
display: flex;
align-items: center;
justify-content: center;
width: 20px;
height: 20px;
margin-right: 12px;
color: var(--text-muted);
flex-shrink: 0;
}
.universal-suggest-content {
flex: 1;
min-width: 0;
}
.universal-suggest-label {
font-weight: 500;
color: var(--text-normal);
margin-bottom: 2px;
}
.universal-suggest-description {
font-size: 0.85em;
color: var(--text-muted);
line-height: 1.3;
}
.cm-editor .cm-line .universal-suggest-trigger {
background-color: var(--background-modifier-accent);
color: var(--text-accent);
border-radius: 2px;
padding: 1px 2px;
}
.suggestion-container .universal-suggest-item {
border-bottom: 1px solid var(--background-modifier-border);
}
.suggestion-container .universal-suggest-item:last-child {
border-bottom: none;
}
.theme-dark .universal-suggest-item:hover {
background-color: var(--background-modifier-hover);
}
.theme-dark .universal-suggest-item.is-selected {
background-color: var(--background-modifier-active-hover);
}
@media (prefers-contrast: high) {
.universal-suggest-item {
border: 1px solid var(--background-modifier-border);
margin-bottom: 2px;
}
.universal-suggest-item:hover,
.universal-suggest-item.is-selected {
border-color: var(--text-accent);
}
}
/* src/styles/kanban/kanban.scss */
.tg-kanban-view {
display: flex;
flex-direction: column;
height: 100%;
width: 100%;
overflow: hidden;
}
.tg-kanban-filters {
border-bottom: 1px solid var(--background-modifier-border);
flex-shrink: 0;
display: flex;
flex-direction: row-reverse;
gap: 8px;
padding: 8px;
padding-bottom: 0;
padding-top: 0;
}
.tg-kanban-controls-container {
display: flex;
align-items: center;
gap: 12px;
flex-wrap: wrap;
}
.tg-kanban-sort-container {
display: flex;
align-items: center;
gap: 4px;
}
.tg-kanban-sort-button {
padding: 4px 8px;
border: 1px solid var(--background-modifier-border);
border-radius: var(--radius-s);
background-color: var(--background-primary);
color: var(--text-normal);
cursor: pointer;
display: flex;
align-items: center;
gap: 4px;
font-size: var(--font-ui-small);
}
.tg-kanban-sort-button:hover {
background-color: var(--background-modifier-hover);
border-color: var(--background-modifier-border-hover);
}
.tg-kanban-cycle-container {
display: flex;
align-items: center;
gap: 4px;
}
.tg-kanban-cycle-button {
padding: 4px 8px;
border: 1px solid var(--background-modifier-border);
border-radius: var(--radius-s);
background-color: var(--background-primary);
color: var(--text-normal);
cursor: pointer;
display: flex;
align-items: center;
gap: 4px;
font-size: var(--font-ui-small);
transition: background-color 0.2s ease, border-color 0.2s ease;
}
.tg-kanban-cycle-button:hover {
background-color: var(--background-modifier-hover);
border-color: var(--background-modifier-border-hover);
}
.tg-kanban-cycle-button:active {
background-color: var(--background-modifier-active-hover);
}
.tg-kanban-toggle-container {
display: flex;
align-items: center;
gap: 4px;
}
.tg-kanban-toggle-label {
display: flex;
align-items: center;
gap: 6px;
font-size: var(--font-ui-small);
color: var(--text-normal);
cursor: pointer;
}
.tg-kanban-toggle-checkbox {
margin: 0;
}
.tg-kanban-filter-input {
flex-grow: 1;
padding: 6px 10px;
font-size: var(--font-ui-small);
border: 1px solid var(--background-modifier-border);
border-radius: var(--radius-s);
background-color: var(--background-primary);
margin-right: 10px;
}
.tg-kanban-filter-input:focus {
outline: none;
border-color: var(--interactive-accent);
box-shadow: 0 0 0 1px var(--interactive-accent);
}
.tg-kanban-column-container {
display: flex;
flex-grow: 1;
overflow-x: auto;
overflow-y: hidden;
padding: 10px;
gap: 10px;
height: 100%;
-webkit-overflow-scrolling: touch;
overscroll-behavior-x: auto;
scroll-snap-type: x proximity;
scroll-behavior: smooth;
}
@media (hover: hover) and (pointer: fine) {
.tg-kanban-column-container {
overscroll-behavior-x: none;
scroll-snap-type: none;
}
}
.tg-kanban-column {
flex: 0 0 280px;
display: flex;
flex-direction: column;
background-color: var(--background-secondary);
border-radius: var(--radius-m);
height: 100%;
max-height: calc(100vh - 170px);
overflow: hidden;
border: 1px solid var(--background-modifier-border);
scroll-snap-align: start;
}
@media (hover: hover) and (pointer: fine) {
.tg-kanban-column {
scroll-snap-align: none;
}
}
.tg-kanban-column-header {
padding: 8px 12px;
font-size: var(--font-ui-mediumn);
font-weight: 600;
border-bottom: 1px solid var(--background-modifier-border);
flex-shrink: 0;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
text-transform: uppercase;
display: flex;
align-items: center;
}
.tg-kanban-column-content {
flex-grow: 1;
overflow-y: auto;
padding: 8px;
display: flex;
flex-direction: column;
gap: 8px;
background-color: var(--background-primary);
-webkit-overflow-scrolling: touch;
overscroll-behavior: contain;
scroll-behavior: smooth;
}
@media (hover: hover) and (pointer: fine) {
.tg-kanban-column-content {
overscroll-behavior: none;
}
}
.tg-kanban-card {
background-color: var(--background-secondary);
border-radius: var(--radius-s);
padding: 10px 12px;
border: 1px solid var(--background-modifier-border);
font-size: var(--font-ui-small);
cursor: grab;
transition: box-shadow 0.2s ease-in-out, background-color 0.2s ease-in-out;
max-width: 100%;
box-sizing: border-box;
white-space: nowrap;
text-overflow: ellipsis;
touch-action: manipulation;
user-select: none;
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
}
.tg-kanban-card .tg-kanban-card-content {
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
max-width: 100%;
}
.tg-kanban-card:hover {
border-color: var(--background-modifier-border-hover);
box-shadow: var(--shadow-m);
}
.tg-kanban-card.task-completed {
background-color: var(--background-secondary);
opacity: 0.7;
}
.tg-kanban-card.task-completed .tg-kanban-card-content {
text-decoration: line-through;
color: var(--text-muted);
}
.tg-kanban-card-container {
display: flex;
align-items: flex-start;
margin-bottom: 6px;
}
.tg-kanban-card-content p:last-child {
margin-bottom: 0;
margin-block-end: 0;
margin-block-start: 0;
}
.tg-kanban-card-metadata {
display: flex;
flex-wrap: wrap;
gap: 4px 8px;
font-size: var(--font-ui-small);
color: var(--text-muted);
}
.tg-kanban-card-metadata .task-date,
.tg-kanban-card-metadata .task-tags-container,
.tg-kanban-card-metadata .task-priority {
display: flex;
align-items: center;
gap: 4px;
padding: 2px 5px;
background-color: var(--background-secondary);
border-radius: var(--radius-s);
margin-inline-start: 0;
margin-inline-end: 0;
margin-left: 0;
margin-right: 0;
}
.tg-kanban-card-metadata .task-tag {
background-color: var(--background-modifier-accent-hover);
color: var(--text-accent);
padding: 1px 4px;
border-radius: var(--radius-s);
font-size: calc(var(--font-ui-small) * 0.9);
}
.tg-kanban-card-metadata .task-due-date.task-overdue {
color: var(--text-error);
background-color: var(--background-error);
}
.tg-kanban-card-metadata .task-due-date.task-due-today {
color: var(--text-warning);
background-color: var(--background-warning);
}
.tg-kanban-card-metadata .task-priority.priority-1 {
color: var(--text-accent);
}
.tg-kanban-card-metadata .task-priority.priority-2 {
color: var(--text-warning);
}
.tg-kanban-card-metadata .task-priority.priority-3 {
color: var(--text-error);
font-weight: bold;
}
.tg-kanban-card-dragging {
box-shadow: var(--shadow-l);
}
.tg-kanban-card-ghost {
background-color: var(--background-secondary-alt);
border: 1px dashed var(--background-modifier-border);
box-shadow: none;
}
.tg-kanban-column-content.tg-kanban-drop-target-active {
outline: 2px dashed var(--background-modifier-accent-hover);
outline-offset: -2px;
}
.tg-kanban-column-content.tg-kanban-drop-target-hover {
background-color: var(--background-modifier-accent-hover);
}
.tg-kanban-card--drop-indicator-before {
margin-top: 10px;
border-top: 2px dashed var(--interactive-accent);
transition: margin-top 0.1s ease-out, border-top 0.1s ease-out;
}
.tg-kanban-card--drop-indicator-after {
margin-bottom: 10px;
border-bottom: 2px dashed var(--interactive-accent);
transition: margin-bottom 0.1s ease-out, border-bottom 0.1s ease-out;
}
.tg-kanban-column-content--drop-indicator-empty {
border: 2px dashed var(--interactive-accent);
min-height: 50px;
box-sizing: border-box;
margin-top: 5px;
margin-bottom: 5px;
}
.tg-kanban-card {
transition:
margin 0.1s ease-out,
padding 0.1s ease-out,
border 0.1s ease-out,
transform 0.2s ease-out,
box-shadow 0.2s ease-in-out,
background-color 0.2s ease-in-out;
}
.drop-target-active {
background-color: rgba(0, 128, 0, 0.2);
outline: 2px dashed green;
}
.tg-kanban-add-card-container {
padding: 8px;
border-top: 1px solid var(--background-modifier-border);
flex-shrink: 0;
}
.task-genius-add-card-container {
padding: 8px;
margin-top: auto;
text-align: center;
}
.tg-kanban-add-card-button {
--icon-size: 16px;
width: 100%;
padding: 6px 12px;
border: none;
background-color: transparent;
color: var(--text-muted);
border-radius: var(--radius-s);
cursor: pointer;
font-size: var(--font-ui-small);
text-align: left;
transition: background-color 0.2s ease-in-out, color 0.2s ease-in-out;
}
.tg-kanban-add-card-button:hover {
background-color: var(--background-modifier-hover);
color: var(--text-normal);
}
.tg-kanban-column-dragging {
transform: rotate(5deg);
opacity: 0.8;
box-shadow: var(--shadow-xl);
z-index: 1000;
}
.tg-kanban-column-ghost {
background-color: var(--background-modifier-border);
border: 2px dashed var(--background-modifier-accent);
opacity: 0.5;
}
.tg-kanban-column-header {
cursor: grab;
}
.tg-kanban-column-header:active {
cursor: grabbing;
}
/* src/components/features/task/filter/in-view/filter.scss */
.filter-component {
display: flex;
flex-wrap: wrap;
align-items: center;
gap: var(--size-4-2);
padding: var(--size-4-2) var(--size-4-3);
background-color: var(--background-primary);
min-height: 48px;
flex: 1;
}
.filter-pills-container {
display: flex;
flex-wrap: wrap;
gap: var(--size-4-2);
flex: 1;
}
.filter-controls {
display: flex;
align-items: center;
gap: var(--size-4-2);
margin-left: auto;
}
.filter-pill {
display: flex;
align-items: center;
gap: var(--size-4-1);
padding: 5px 8px;
border: 1px solid var(--background-modifier-border);
border-radius: var(--radius-m);
font-size: var(--font-ui-small);
animation: filter-pill-appear 200ms ease-out;
transition: background-color var(--duration-fast), transform var(--duration-fast);
}
.filter-pill-remove .clickable-icon:hover {
background-color: unset;
}
.filter-pill:hover {
background-color: var(--background-tertiary);
}
.filter-pill-category {
font-weight: 500;
color: var(--text-muted);
}
.filter-pill-value {
color: var(--text-normal);
}
.filter-pill-remove {
display: flex;
align-items: center;
justify-content: center;
width: 16px;
height: 16px;
border-radius: 50%;
background: transparent;
border: none;
padding: 0;
margin-left: var(--size-4-1);
cursor: pointer;
color: var(--text-faint);
font-size: 14px;
line-height: 1;
transition: background-color var(--duration-fast), color var(--duration-fast);
}
.filter-pill-remove:hover {
background-color: var(--background-modifier-hover);
color: var(--text-normal);
}
.filter-pill-remove-icon {
font-size: 16px;
display: flex;
align-items: center;
justify-content: center;
}
.filter-add-button,
.filter-clear-all-button {
display: flex;
align-items: center;
padding: 6px 10px;
font-size: var(--font-ui-small);
cursor: pointer;
}
.filter-add-button {
gap: var(--size-4-1);
color: var(--text-muted);
}
.filter-add-icon {
font-weight: var(--font-bold);
display: flex;
align-items: center;
justify-content: center;
}
.filter-dropdown {
position: fixed;
width: 220px;
background-color: var(--background-primary);
border-radius: var(--radius-m);
box-shadow: var(--shadow-l);
border: 1px solid var(--background-modifier-border);
z-index: var(--layer-popover);
max-height: 400px;
display: flex;
flex-direction: column;
opacity: 0;
transform: translateY(-8px);
transition: opacity var(--duration-normal), transform var(--duration-normal);
overflow: hidden;
}
.filter-dropdown-visible {
opacity: 1;
transform: translateY(0);
}
.filter-dropdown-header {
padding: var(--size-4-2);
border-bottom: 1px solid var(--background-modifier-border);
}
.filter-dropdown-search {
width: 100%;
padding: var(--size-4-2);
border: 1px solid var(--background-modifier-border);
border-radius: var(--radius-m);
background-color: var(--background-secondary);
font-size: var(--font-ui-small);
outline: none;
}
.filter-dropdown-search:focus {
border-color: var(--interactive-accent);
box-shadow: 0 0 0 2px var(--focus-ring-color);
}
.filter-dropdown-list {
overflow-y: auto;
max-height: 350px;
}
.filter-dropdown-item {
display: flex;
align-items: center;
padding: var(--size-4-2) var(--size-4-3);
cursor: pointer;
font-size: var(--font-ui-small);
color: var(--text-normal);
transition: background-color var(--duration-fast);
}
.filter-dropdown-item:hover {
background-color: var(--background-secondary);
}
.filter-dropdown-item-label {
flex: 1;
}
.filter-dropdown-item-arrow {
color: var(--text-faint);
font-size: 18px;
}
.filter-dropdown-item-arrow.back {
margin-right: var(--size-4-2);
display: flex;
align-items: center;
justify-content: center;
}
.filter-dropdown-back {
color: var(--text-muted);
}
.filter-dropdown-separator {
height: 1px;
background-color: var(--divider-color);
margin: var(--size-4-1) 0;
}
.filter-dropdown-empty {
padding: var(--size-4-4);
text-align: center;
color: var(--text-faint);
font-size: var(--font-ui-small);
}
.filter-dropdown-value-item {
padding-left: var(--size-4-4);
}
.filter-dropdown-category {
padding: var(--size-4-2) 0;
color: var(--text-muted);
font-weight: 500;
}
.filter-dropdown-value-preview {
padding: var(--size-4-1) var(--size-4-4);
cursor: pointer;
transition: background-color var(--duration-fast);
font-size: var(--font-ui-small);
color: var(--text-normal);
}
.filter-dropdown-value-preview:hover {
background-color: var(--background-secondary);
}
@keyframes filter-pill-appear {
from {
opacity: 0;
transform: scale(0.9);
}
to {
opacity: 1;
transform: scale(1);
}
}
.filter-pill-removing {
opacity: 0;
transform: scale(0.9);
transition: opacity 150ms ease-out, transform 150ms ease-out;
}
/* packages/calendar/dist/styles.css */
.tg-calendar {
--tg-primary-color: #3b82f6;
--tg-primary-rgb:
59,
130,
246;
--tg-cell-height: 60px;
--tg-font-header: 14px;
--tg-font-event: 12px;
font-family:
-apple-system,
BlinkMacSystemFont,
"Segoe UI",
Roboto,
sans-serif;
-webkit-font-smoothing: antialiased;
user-select: none;
overflow-x: hidden;
width: 100%;
height: 100%;
background: white;
border-radius: 12px;
box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);
border: 1px solid #e5e7eb;
display: flex;
flex-direction: column;
overflow: hidden;
}
.tg-calendar.tg-selecting {
user-select: none;
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
}
.tg-view-container {
min-height: 0;
background: white;
flex: 1;
overflow: hidden;
position: relative;
display: flex;
flex-direction: column;
}
.tg-header {
display: flex;
justify-content: space-between;
align-items: center;
padding: 16px;
border-bottom: 1px solid #e5e7eb;
background: white;
}
.tg-title {
font-size: 1.25rem;
font-weight: bold;
color: #1f2937;
}
.tg-view-switch {
display: flex;
padding: 4px;
border-radius: 8px;
}
.tg-view-btn {
padding: 4px 12px;
font-size: 14px;
border-radius: 6px;
border: none;
background: transparent;
cursor: pointer;
transition: all 0.2s;
color: #6b7280;
}
.tg-view-btn:hover {
color: #374151;
}
.tg-view-btn.tg-active {
background: white;
box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
color: var(--tg-primary-color);
font-weight: 500;
}
.tg-nav {
display: flex;
gap: 8px;
}
.tg-nav-btn {
padding: 4px 12px;
font-size: 14px;
border-radius: 4px;
border: 1px solid #e5e7eb;
background: #f9fafb;
cursor: pointer;
transition: all 0.2s;
}
.tg-nav-btn:hover {
background: #f3f4f6;
}
.tg-nav-btn.tg-today {
background: rgba(var(--tg-primary-rgb), 0.1);
color: var(--tg-primary-color);
border-color: rgba(var(--tg-primary-rgb), 0.2);
}
.tg-nav-btn.tg-today:hover {
background: rgba(var(--tg-primary-rgb), 0.2);
}
.tg-grid-7 {
display: grid;
grid-template-columns: repeat(7, 1fr);
}
.tg-disabled {
opacity: 0.5;
pointer-events: none;
cursor: not-allowed;
}
.tg-month-body {
overflow-y: auto;
flex: 1;
min-height: 0;
display: grid;
grid-auto-rows: 1fr;
}
.tg-month-header {
display: grid;
border-bottom: 1px solid #e5e7eb;
background: #f9fafb;
}
.tg-month-header-cell {
padding: 8px;
text-align: center;
font-size: 12px;
font-weight: bold;
color: #9ca3af;
}
.tg-month-row {
display: grid;
position: relative;
min-height: var(--tg-row-min-height, 80px);
border-bottom: 1px solid #e5e7eb;
}
.tg-month-cell {
height: 100%;
padding: 4px;
border-right: 1px solid #e5e7eb;
position: relative;
z-index: 1;
}
.tg-month-cell:last-child {
border-right: none;
}
.tg-date-number {
text-align: right;
font-size: 12px;
padding: 4px;
}
.tg-date-number.tg-current-month {
color: #374151;
}
.tg-date-number.tg-other-month {
color: #d1d5db;
}
.tg-date-number.tg-today {
color: var(--tg-primary-color);
font-weight: bold;
}
.tg-event-count-badge {
position: absolute;
bottom: 2px;
right: 2px;
background: var(--tg-primary-color);
color: white;
border-radius: 10px;
padding: 2px 6px;
font-size: 10px;
font-weight: bold;
min-width: 18px;
text-align: center;
}
.tg-month-cell.tg-disabled {
opacity: 0.5;
pointer-events: none;
background-color: #f9fafb;
}
.tg-month-cell.tg-disabled .tg-date-number {
color: #9ca3af;
text-decoration: line-through;
}
.tg-month-cell.tg-range-preview {
background-color: rgba(var(--tg-primary-rgb), 0.15);
position: relative;
}
.tg-month-cell.tg-range-preview::before {
content: "";
position: absolute;
inset: 0;
border: 2px solid rgba(var(--tg-primary-rgb), 0.4);
pointer-events: none;
box-sizing: border-box;
}
.tg-more-indicator {
position: absolute;
font-size: 11px;
color: var(--tg-primary-color, #3b82f6);
padding: 2px 6px;
cursor: pointer;
border-radius: 4px;
transition: background-color 0.15s;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
z-index: 5;
}
.tg-more-indicator:hover {
background-color: rgba(var(--tg-primary-rgb, 59, 130, 246), 0.1);
}
.tg-more-popover {
position: fixed;
z-index: 1000;
background: white;
border-radius: 8px;
box-shadow: 0 4px 16px rgba(0, 0, 0, 0.15), 0 2px 8px rgba(0, 0, 0, 0.1);
border: 1px solid #e5e7eb;
min-width: 200px;
max-width: 280px;
max-height: 300px;
overflow: hidden;
display: flex;
flex-direction: column;
}
.tg-more-popover-header {
padding: 10px 12px;
font-weight: 600;
font-size: 13px;
color: #374151;
border-bottom: 1px solid #e5e7eb;
background: #f9fafb;
}
.tg-more-popover-list {
overflow-y: auto;
padding: 4px 0;
flex: 1;
}
.tg-more-popover-item {
display: flex;
align-items: center;
gap: 8px;
padding: 8px 12px;
font-size: 12px;
color: #374151;
transition: background-color 0.15s;
}
.tg-more-popover-item:hover {
background-color: #f3f4f6;
}
.tg-more-popover-dot {
width: 8px;
height: 8px;
border-radius: 50%;
flex-shrink: 0;
}
.tg-more-popover-title {
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
.tg-time-grid-container {
flex: 1 1 0;
min-height: 0;
overflow-y: auto;
overflow-x: hidden;
position: relative;
}
.tg-time-header {
display: flex;
padding-left: 60px;
border-bottom: 1px solid #e5e7eb;
position: sticky;
top: 0;
background: white;
z-index: 30;
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.02);
}
.tg-time-header-cell {
flex: 1;
text-align: center;
padding: 8px;
border-right: 1px solid #f3f4f6;
font-size: var(--tg-font-header);
}
.tg-time-header-cell .tg-header-date {
font-weight: bold;
font-size: 18px;
}
.tg-time-header-cell.tg-today {
background-color: rgba(var(--tg-primary-rgb), 0.1);
color: var(--tg-primary-color);
}
.tg-time-header-cell.tg-disabled {
opacity: 0.5;
pointer-events: none;
background-color: #f9fafb;
}
.tg-time-body {
display: flex;
position: relative;
min-height: calc(var(--tg-cell-height) * 24);
}
.tg-time-axis {
width: 60px;
flex-shrink: 0;
background: #fafafa;
border-right: 1px solid #e5e7eb;
position: sticky;
left: 0;
z-index: 20;
height: 100%;
}
.tg-time-axis-label {
position: absolute;
width: 100%;
height: var(--tg-cell-height);
text-align: right;
padding-right: 8px;
color: #9ca3af;
font-size: 11px;
pointer-events: none;
will-change: transform;
}
.tg-time-axis-label.custom {
font-weight: bold;
}
.tg-day-column {
flex: 1;
position: relative;
border-right: 1px solid #e5e7eb;
background:
repeating-linear-gradient(
to bottom,
transparent 0,
transparent calc(var(--tg-cell-height) - 1px),
#f3f4f6 var(--tg-cell-height));
}
.tg-time-range-preview {
position: absolute;
background-color: rgba(var(--tg-primary-rgb), 0.15);
border: 2px dashed rgba(var(--tg-primary-rgb), 0.8);
pointer-events: none;
z-index: 15;
border-radius: 4px;
box-sizing: border-box;
}
.tg-day-column.tg-range-preview {
background-color: rgba(var(--tg-primary-rgb), 0.08);
position: relative;
}
.tg-day-column.tg-range-preview::before {
content: "";
position: absolute;
inset: 0;
border-left: 3px solid rgba(var(--tg-primary-rgb), 0.5);
border-right: 3px solid rgba(var(--tg-primary-rgb), 0.5);
pointer-events: none;
box-sizing: border-box;
}
.tg-event-base {
position: absolute;
border-radius: 4px;
padding: 2px 6px;
font-size: var(--tg-font-event);
color: white;
cursor: grab;
z-index: 10;
overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1);
transition:
opacity 0.2s,
box-shadow 0.1s,
filter 0.1s;
will-change: transform;
top: 0;
left: 0;
}
.tg-event-base:hover {
box-shadow: 0 4px 8px rgba(0, 0, 0, 0.15);
filter: brightness(1.05);
}
.tg-event-base:active {
cursor: grabbing;
}
.tg-event-base.tg-is-dragging-source {
opacity: 0.3;
filter: grayscale(0.3);
}
.tg-event-bar {
height: 26px;
line-height: 26px;
}
.tg-event-block {
display: flex;
flex-direction: column;
justify-content: flex-start;
line-height: 1.3;
padding-top: 4px;
border: 1px solid rgba(255, 255, 255, 0.3);
white-space: normal;
}
.tg-event-block .tg-time-text {
font-size: 10px;
opacity: 0.9;
margin-bottom: 0;
}
.tg-event-title {
font-weight: bold;
overflow: hidden;
text-overflow: ellipsis;
}
.tg-resize-handle {
position: absolute;
z-index: 20;
opacity: 0;
transition: opacity 0.2s;
}
.tg-event-base:hover .tg-resize-handle {
opacity: 1;
}
.tg-resize-handle:hover {
background-color: rgba(255, 255, 255, 0.4);
}
.tg-resize-h {
top: 0;
bottom: 0;
width: 12px;
cursor: col-resize;
}
.tg-resize-h.tg-left {
left: 0;
}
.tg-resize-h.tg-right {
right: 0;
}
.tg-resize-v {
left: 0;
right: 0;
height: 8px;
cursor: row-resize;
}
.tg-resize-v.tg-top {
top: 0;
bottom: auto;
}
.tg-resize-v.tg-bottom {
bottom: 0;
top: auto;
}
.tg-ghost-event {
position: absolute;
background-color: rgba(var(--tg-primary-rgb), 0.15);
border: 2px dashed rgba(var(--tg-primary-rgb), 0.8);
border-radius: 4px;
z-index: 5;
pointer-events: none;
box-sizing: border-box;
}
#tg-drag-proxy {
position: fixed;
pointer-events: none;
z-index: 9999;
box-shadow: 0 12px 24px rgba(0, 0, 0, 0.2);
border-radius: 4px;
visibility: hidden;
opacity: 0.9;
transform-origin: top left;
}
.tg-allday-section {
display: flex;
flex-direction: row;
border-bottom: 1px solid var(--tg-border-color, #e5e7eb);
background-color: var(--tg-bg-color, #fff);
min-height: 28px;
}
.tg-allday-spacer {
flex-shrink: 0;
width: 60px;
border-right: 1px solid var(--tg-border-color, #e5e7eb);
}
.tg-allday-events-container {
flex: 1;
position: relative;
min-height: 28px;
}
.tg-allday-event {
position: absolute;
height: 22px;
line-height: 22px;
border-radius: 3px;
padding: 0 6px;
font-size: 12px;
overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
cursor: grab;
box-sizing: border-box;
}
.tg-allday-event:hover {
filter: brightness(1.05);
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.15);
}
.tg-allday-event:active {
cursor: grabbing;
}
.tg-event-block.tg-event-segmented {
}
.tg-event-block.tg-event-segment-first {
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
border-bottom: 2px dashed rgba(255, 255, 255, 0.5);
}
.tg-event-block.tg-event-segment-last {
border-top-left-radius: 0;
border-top-right-radius: 0;
border-top: 2px dashed rgba(255, 255, 255, 0.5);
}
.tg-event-block.tg-event-segment-middle {
border-radius: 0;
border-top: 2px dashed rgba(255, 255, 255, 0.5);
border-bottom: 2px dashed rgba(255, 255, 255, 0.5);
}
.tg-event-block.tg-event-continuation {
border-top-left-radius: 0;
border-top-right-radius: 0;
}
.tg-event-block.tg-event-continued {
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
}
.tg-event-block.tg-event-continuation.tg-event-continued {
border-radius: 0;
}
.tg-event-block.tg-event-continuation::before,
.tg-event-block.tg-event-continued::after {
content: "";
position: absolute;
left: 50%;
transform: translateX(-50%);
width: 0;
height: 0;
opacity: 0.7;
}
.tg-event-block.tg-event-continuation::before {
top: 0;
border-left: 6px solid transparent;
border-right: 6px solid transparent;
border-top: 6px solid rgba(255, 255, 255, 0.6);
}
.tg-event-block.tg-event-continued::after {
bottom: 0;
border-left: 6px solid transparent;
border-right: 6px solid transparent;
border-bottom: 6px solid rgba(255, 255, 255, 0.6);
}
/* src/styles/taskgenius-calendar.scss */
.tg-calendar {
--tg-primary-color: var(--interactive-accent);
--tg-primary-rgb: var(--interactive-accent-rgb, 59, 130, 246);
--tg-cell-height: 60px;
--tg-font-header: var(--font-ui-small);
--tg-font-event: var(--font-ui-smaller);
font-family: var(--font-interface);
-webkit-font-smoothing: antialiased;
user-select: none;
overflow-x: hidden;
width: 100%;
border-radius: 0;
box-shadow: none;
border-color: var(--background-modifier-border);
}
.tg-view-container {
min-height: 600px;
background: var(--background-primary);
color: var(--text-normal);
}
.theme-light .full-calendar-container .tg-event-base {
background-color: var(--background-secondary) !important;
border: 1px solid var(--background-modifier-border);
}
.theme-light .full-calendar-container .tg-view-container {
background: var(--background-primary);
}
.theme-light .full-calendar-container .tg-month-cell {
background: var(--background-primary);
}
.theme-light .full-calendar-container .tg-event-base {
box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1);
}
.full-calendar-container .tg-event-base {
position: absolute;
border-radius: 4px;
padding: 2px 6px;
font-size: var(--tg-font-event);
color: var(--text-on-accnet);
background-color: var(--background-secondary-alt) !important;
cursor: grab;
z-index: 10;
overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
box-shadow: var(--shadow-s);
transition: opacity 0.2s, transform 0.1s;
}
.full-calendar-container .tg-event-base:active {
cursor: grabbing;
}
.full-calendar-container .tg-event-base:hover {
opacity: 0.9;
transform: translateY(-1px);
box-shadow: var(--shadow-l);
color: var(--text-on-accent);
background-color: var(--interactive-accent) !important;
}
.full-calendar-container .tg-event-base.tg-is-dragging-source {
opacity: 0.3;
filter: grayscale(0.3);
}
.full-calendar-container {
}
.full-calendar-container .tg-event-bar {
height: 26px;
line-height: 26px;
}
.full-calendar-container {
}
.full-calendar-container .tg-event-block {
display: flex;
flex-direction: column;
justify-content: flex-start;
line-height: 1.3;
padding-top: 4px;
border: 1px solid rgba(255, 255, 255, 0.3);
}
.full-calendar-container .tg-event-block .tg-time-text {
font-size: 10px;
opacity: 0.9;
margin-bottom: 0;
}
.full-calendar-container .tg-event-title {
font-weight: bold;
overflow: hidden;
text-overflow: ellipsis;
}
.full-calendar-container {
}
.full-calendar-container .tg-event-count-badge {
display: none;
}
.full-calendar-container .tg-event-count-badge.has-priority {
background: var(--color-red);
}
.full-calendar-container {
}
.full-calendar-container .tg-resize-handle {
position: absolute;
z-index: 20;
opacity: 0;
transition: opacity 0.2s;
}
.full-calendar-container .tg-event-base:hover .tg-resize-handle {
opacity: 1;
}
.full-calendar-container .tg-resize-handle:hover {
background-color: rgba(255, 255, 255, 0.4);
}
.full-calendar-container {
}
.full-calendar-container .tg-resize-h {
top: 0;
bottom: 0;
width: 12px;
cursor: col-resize;
}
.full-calendar-container .tg-resize-h.tg-left {
left: 0;
}
.full-calendar-container .tg-resize-h.tg-right {
right: 0;
}
.full-calendar-container {
}
.full-calendar-container .tg-resize-v {
left: 0;
right: 0;
height: 8px;
cursor: row-resize;
}
.full-calendar-container .tg-resize-v.tg-top {
top: 0;
bottom: auto;
}
.full-calendar-container .tg-resize-v.tg-bottom {
bottom: 0;
top: auto;
}
.full-calendar-container {
}
.full-calendar-container .tg-ghost-event {
position: absolute;
background-color: rgba(var(--tg-primary-rgb), 0.15);
border: 2px dashed rgba(var(--tg-primary-rgb), 0.8);
border-radius: 4px;
z-index: 5;
pointer-events: none;
box-sizing: border-box;
}
.full-calendar-container {
}
.full-calendar-container #tg-drag-proxy {
position: fixed;
pointer-events: none;
z-index: 9999;
box-shadow: 0 12px 24px rgba(0, 0, 0, 0.2);
border-radius: 4px;
visibility: hidden;
opacity: 0.9;
transform-origin: top left;
}
.full-calendar-container {
}
.full-calendar-container .tg-grid-7 {
display: grid;
grid-template-columns: repeat(7, 1fr);
gap: 1px;
}
.full-calendar-container .tg-time-grid-container::-webkit-scrollbar {
width: 8px;
}
.full-calendar-container .tg-time-grid-container::-webkit-scrollbar-track {
background: var(--background-secondary);
}
.full-calendar-container .tg-time-grid-container::-webkit-scrollbar-thumb {
background: var(--background-modifier-border);
border-radius: 4px;
}
.full-calendar-container .tg-time-grid-container::-webkit-scrollbar-thumb:hover {
background: var(--background-modifier-border-hover);
}
.full-calendar-container {
}
.full-calendar-container .tg-event-base:focus {
outline: 2px solid var(--interactive-accent);
outline-offset: 2px;
}
.full-calendar-container .tg-nav-btn:focus,
.full-calendar-container .tg-view-btn:focus {
outline: 2px solid var(--interactive-accent);
outline-offset: 1px;
}
.full-calendar-container {
}
.full-calendar-container .tg-month-cell,
.full-calendar-container .tg-event-base,
.full-calendar-container .tg-nav-btn,
.full-calendar-container .tg-view-btn {
transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
}
.full-calendar-container {
}
.full-calendar-container .tg-event .task-checkbox-overlay {
position: absolute;
left: 2px;
top: 50%;
transform: translateY(-50%);
z-index: 15;
background: rgba(var(--background-primary-rgb, 255, 255, 255), 0.9);
border-radius: 3px;
padding: 0 2px;
display: flex;
align-items: center;
opacity: 0;
transition: opacity 0.2s;
}
.full-calendar-container {
}
.full-calendar-container .tg-event:hover .task-checkbox-overlay {
opacity: 1;
}
.full-calendar-container {
}
.full-calendar-container .task-checkbox-overlay .task-list-item-checkbox {
width: 16px;
height: 16px;
margin: 0;
cursor: pointer;
z-index: 20;
}
.full-calendar-container {
}
.full-calendar-container .tg-event:has(.task-checkbox-overlay) .tg-event-title {
padding-left: 22px;
}
.full-calendar-container {
}
.full-calendar-container .tg-month-view .tg-event .task-checkbox-overlay {
opacity: 1;
}
.full-calendar-container .tg-allday-events-container {
margin-right: var(--size-4-3);
}
.full-calendar-container .tg-allday-section {
display: flex;
flex-direction: row;
border-bottom: 1px solid var(--background-modifier-border);
background-color: var(--background-secondary);
min-height: 28px;
}
.full-calendar-container .tg-allday-spacer {
border-color: var(--background-modifier-border);
}
.full-calendar-container {
}
.full-calendar-container .tg-day-column {
flex: 1;
position: relative !important;
border-right: 1px solid var(--background-modifier-border);
background:
repeating-linear-gradient(
to bottom,
transparent 0,
transparent calc(var(--tg-cell-height) - 1px),
var(--background-modifier-border) var(--tg-cell-height));
}
.full-calendar-container {
}
.full-calendar-container .tg-time-range-preview {
position: absolute !important;
background-color: rgba(var(--interactive-accent-rgb, 59, 130, 246), 0.15);
border: 2px dashed rgba(var(--interactive-accent-rgb, 59, 130, 246), 0.8);
pointer-events: none;
z-index: 15;
border-radius: 4px;
box-sizing: border-box;
}
.full-calendar-container {
}
.full-calendar-container .tg-day-column.tg-range-preview {
background-color: rgba(var(--interactive-accent-rgb, 59, 130, 246), 0.08);
}
.full-calendar-container .tg-day-column.tg-range-preview::before {
content: "";
position: absolute;
inset: 0;
border-left: 3px solid rgba(var(--interactive-accent-rgb, 59, 130, 246), 0.5);
border-right: 3px solid rgba(var(--interactive-accent-rgb, 59, 130, 246), 0.5);
pointer-events: none;
box-sizing: border-box;
}
.full-calendar-container {
}
.full-calendar-container .tg-month-cell.tg-range-preview {
background-color: rgba(var(--interactive-accent-rgb, 59, 130, 246), 0.15) !important;
}
.full-calendar-container .tg-month-cell.tg-range-preview::before {
content: "";
position: absolute;
inset: 0;
border: 2px solid rgba(var(--interactive-accent-rgb, 59, 130, 246), 0.5);
pointer-events: none;
box-sizing: border-box;
}
.full-calendar-container {
}
.full-calendar-container .tg-calendar.tg-selecting {
user-select: none;
-webkit-user-select: none;
}
.full-calendar-container .tg-calendar.tg-selecting * {
cursor: crosshair !important;
}
.full-calendar-container {
}
.full-calendar-container .tg-header {
display: none !important;
}
.full-calendar-container .tg-title {
font-size: 1.25rem;
font-weight: bold;
color: var(--text-normal);
}
.full-calendar-container {
}
.full-calendar-container .tg-nav {
display: flex;
gap: 8px;
}
.full-calendar-container .tg-nav-btn {
padding: 4px 12px;
font-size: 14px;
border-radius: 4px;
border: 1px solid var(--background-modifier-border);
background: var(--background-secondary);
color: var(--text-normal);
cursor: pointer;
transition: all 0.2s;
}
.full-calendar-container .tg-nav-btn:hover {
background: var(--background-modifier-hover);
border-color: var(--background-modifier-border-hover);
}
.full-calendar-container .tg-nav-btn.tg-today {
background: var(--interactive-accent);
color: var(--text-on-accent);
border-color: var(--interactive-accent);
}
.full-calendar-container .tg-nav-btn.tg-today:hover {
opacity: 0.9;
}
.full-calendar-container {
}
.full-calendar-container .tg-view-switch {
display: flex;
background: var(--background-secondary);
padding: 4px;
border-radius: 8px;
gap: 4px;
}
.full-calendar-container .tg-view-btn {
padding: 4px 12px;
font-size: 14px;
border-radius: 6px;
border: none;
background: transparent;
cursor: pointer;
transition: all 0.2s;
color: var(--text-muted);
}
.full-calendar-container .tg-view-btn:hover {
color: var(--text-normal);
background: var(--background-modifier-hover);
}
.full-calendar-container .tg-view-btn.tg-active {
background: var(--background-primary);
box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
color: var(--interactive-accent);
font-weight: 500;
}
.full-calendar-container {
}
.full-calendar-container .tg-month-row {
position: relative;
border-bottom: 1px solid var(--background-modifier-border);
}
.full-calendar-container .tg-month-cell {
height: 100%;
border-right: 1px solid var(--background-modifier-border);
position: relative;
z-index: 1;
background: var(--background-primary);
}
.full-calendar-container .tg-month-cell:hover {
background: var(--background-primary-alt);
}
.full-calendar-container .tg-month-cell:last-child {
border-right: none;
}
.full-calendar-container {
}
.full-calendar-container .tg-month-header {
border-bottom: 1px solid var(--background-modifier-border);
background: var(--background-secondary);
}
.full-calendar-container .tg-month-header-cell {
padding: 8px;
text-align: center;
font-size: 12px;
font-weight: bold;
color: var(--text-muted);
}
.full-calendar-container {
}
.full-calendar-container .tg-date-number {
text-align: right;
font-size: 12px;
padding: 4px;
color: var(--text-normal);
}
.full-calendar-container .tg-date-number.tg-current-month {
color: var(--text-normal);
}
.full-calendar-container .tg-date-number.tg-other-month {
color: var(--text-faint);
}
.full-calendar-container .tg-date-number.tg-today {
color: var(--interactive-accent);
font-weight: bold;
background: var(--background-modifier-hover);
border-radius: 50%;
width: 24px;
height: 24px;
display: inline-flex;
align-items: center;
justify-content: center;
}
.full-calendar-container .tg-date-number.past-due {
color: var(--text-error);
}
.full-calendar-container {
}
.full-calendar-container .tg-time-grid-container {
display: flex;
flex-direction: column;
height: 600px;
overflow-y: auto;
position: relative;
scroll-behavior: auto;
}
.full-calendar-container .tg-time-header {
display: flex;
border-bottom: 1px solid var(--background-modifier-border);
position: sticky;
top: 0;
background: var(--background-primary);
z-index: 30;
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.02);
padding-right: var(--size-4-3);
}
.full-calendar-container .tg-time-header-cell {
flex: 1;
text-align: center;
padding: 8px;
border-right: 1px solid var(--background-modifier-border);
font-size: var(--tg-font-header);
color: var(--text-normal);
}
.full-calendar-container .tg-time-body {
display: flex;
position: relative;
min-height: calc(var(--tg-cell-height) * 24);
}
.full-calendar-container {
}
.full-calendar-container .tg-time-axis {
width: 60px;
flex-shrink: 0;
background: var(--background-secondary);
border-right: 1px solid var(--background-modifier-border);
position: sticky;
left: 0;
z-index: 20;
}
.full-calendar-container .tg-time-axis-label {
height: var(--tg-cell-height);
position: absolute;
width: 100%;
text-align: right;
padding-right: 8px;
color: var(--text-muted);
font-size: 11px;
top: -6px;
pointer-events: none;
}
.theme-dark .full-calendar-container .tg-view-container {
background: var(--background-primary);
}
.theme-dark .full-calendar-container .tg-month-cell {
background: var(--background-primary);
}
.theme-dark .full-calendar-container .tg-month-cell:hover {
background: var(--background-primary-alt);
}
.theme-dark .full-calendar-container .tg-time-header {
background: var(--background-primary);
}
.theme-dark .full-calendar-container .tg-event-base {
box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);
}
.theme-dark .full-calendar-container .tg-ghost-event {
background-color: rgba(var(--tg-primary-rgb), 0.2);
border-color: rgba(var(--tg-primary-rgb), 0.6);
}
@media (max-width: 768px) {
.theme-dark .full-calendar-container .tg-calendar {
--tg-cell-height: 50px;
--tg-font-header: 12px;
--tg-font-event: 11px;
}
.theme-dark .full-calendar-container .tg-time-axis {
width: 50px;
}
.theme-dark .full-calendar-container .tg-view-switch {
flex-wrap: wrap;
}
}
@keyframes tg-event-enter {
from {
opacity: 0;
transform: scale(0.95);
}
to {
opacity: 1;
transform: scale(1);
}
}
/* src/styles/calendar/view.scss */
.full-calendar-container {
container-type: inline-size;
display: flex;
flex-direction: column;
height: 100%;
overflow: hidden;
flex-grow: 1;
}
.full-calendar-container .calendar-header {
display: flex;
justify-content: space-between;
align-items: center;
padding: var(--size-2-3) var(--size-4-4);
flex-shrink: 0;
margin-bottom: 0;
}
.full-calendar-container .calendar-nav,
.full-calendar-container .calendar-view-switcher {
display: flex;
gap: var(--size-2-2);
}
.full-calendar-container .calendar-nav {
background-color: var(--background-secondary);
border-radius: var(--radius-m);
padding: 3px;
gap: 2px;
}
.full-calendar-container .calendar-nav > div {
display: flex;
}
.full-calendar-container .calendar-nav button {
display: flex;
align-items: center;
justify-content: center;
padding: 6px 10px;
min-width: 28px;
height: 28px;
border: none;
background: transparent;
border-radius: calc(var(--radius-m) - 2px);
cursor: pointer;
transition: color 0.15s ease, background-color 0.15s ease;
color: var(--text-muted);
font-size: var(--font-ui-smaller);
font-weight: var(--font-medium);
box-shadow: none;
}
.full-calendar-container .calendar-nav button:hover {
color: var(--text-normal);
background-color: var(--background-modifier-hover);
}
.full-calendar-container .calendar-nav button:active {
background-color: var(--interactive-accent);
color: var(--text-on-accent);
}
.full-calendar-container .calendar-nav .today-button {
padding: 6px 12px;
font-weight: var(--font-semibold);
}
.full-calendar-container .calendar-segmented-control {
display: flex;
align-items: center;
position: relative;
background-color: var(--background-secondary);
border-radius: var(--radius-m);
padding: 3px;
gap: 2px;
}
.full-calendar-container .calendar-segmented-indicator {
position: absolute;
top: 3px;
bottom: 3px;
left: 3px;
background-color: var(--interactive-accent);
border-radius: calc(var(--radius-m) - 2px);
transition: transform 0.2s ease, width 0.2s ease;
z-index: 0;
pointer-events: none;
}
.full-calendar-container button.calendar-segment-btn {
position: relative;
z-index: 1;
display: flex;
align-items: center;
justify-content: center;
gap: 4px;
padding: 6px 10px;
min-width: 32px;
height: 28px;
border: none;
background: transparent;
border-radius: calc(var(--radius-m) - 2px);
cursor: pointer;
transition: color 0.15s ease, background-color 0.15s ease;
color: var(--text-muted);
font-size: var(--font-ui-small);
font-weight: var(--font-medium);
white-space: nowrap;
box-shadow: none;
}
.full-calendar-container button.calendar-segment-btn:hover {
color: var(--text-normal);
background-color: var(--background-modifier-hover);
}
.full-calendar-container button.calendar-segment-btn.is-active {
color: var(--text-on-accent);
background-color: var(--color-accent);
}
.full-calendar-container button.calendar-segment-btn.is-active:hover {
background-color: var(--color-accent-1);
}
.full-calendar-container .calendar-segment-short {
font-weight: var(--font-semibold);
font-size: var(--font-ui-small);
line-height: 1;
}
.full-calendar-container .calendar-segment-full {
display: none;
font-size: var(--font-ui-smaller);
line-height: 1;
}
.full-calendar-container .calendar-segment-icon {
display: flex;
align-items: center;
justify-content: center;
width: 14px;
height: 14px;
}
.full-calendar-container .calendar-segment-icon svg {
width: 14px;
height: 14px;
}
.full-calendar-container .calendar-segment-separator {
width: 1px;
height: 16px;
background-color: var(--background-modifier-border);
margin: 0 4px;
}
.full-calendar-container .calendar-segment-btn.calendar-segment-custom {
gap: 2px;
}
.full-calendar-container .calendar-segment-btn.calendar-segment-custom .calendar-segment-icon {
display: flex;
}
.full-calendar-container .calendar-current-date {
font-weight: var(--font-semibold);
font-size: var(--font-ui-large);
text-align: center;
flex-grow: 1;
max-width: max(120px, 40%);
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
@container (min-width: 700px) {
.full-calendar-container .calendar-segment-full {
display: inline;
}
.full-calendar-container .calendar-segment-btn {
padding: 6px 12px;
}
.full-calendar-container .calendar-segment-btn.calendar-segment-custom .calendar-segment-short {
display: inline;
}
}
.full-calendar-container .calendar-view-container {
flex-grow: 1;
overflow-y: auto;
padding: var(--size-4-2);
position: relative;
display: flex;
flex-direction: column;
}
.full-calendar-container .calendar-weekday-header {
display: grid;
grid-template-columns: repeat(7, 1fr);
text-align: center;
font-size: var(--font-ui-small);
color: var(--text-muted);
padding: var(--size-4-1) 0;
border-bottom: 1px solid var(--background-modifier-border);
margin-bottom: -1px;
background-color: var(--background-secondary);
}
.full-calendar-container .calendar-weekday {
padding: var(--size-4-1);
}
.full-calendar-container .calendar-view-container.view-month {
padding: 0;
}
.full-calendar-container .calendar-month-grid {
display: grid;
grid-template-columns: repeat(7, 1fr);
grid-auto-rows: minmax(100px, auto);
gap: 1px;
background-color: var(--background-modifier-border);
height: 100%;
}
.full-calendar-container .calendar-day-cell {
background-color: var(--background-primary);
padding: var(--size-4-1);
position: relative;
display: flex;
flex-direction: column;
min-width: 0;
}
.full-calendar-container .calendar-day-cell:hover {
background-color: hsl(var(--color-accent-h), var(--color-accent-s), var(--color-accent-l), 0.8) !important;
}
.full-calendar-container .calendar-day-cell.is-today {
background-color: var(--background-secondary-alt) !important;
border: 1px solid hsl(var(--accent-h), var(--accent-s), var(--accent-l), 0.5);
}
.full-calendar-container .calendar-day-cell.is-today .calendar-day-number {
color: hsl(var(--accent-h), var(--accent-s), var(--accent-l), 1);
}
.full-calendar-container .calendar-day-header {
width: 100%;
display: flex;
flex-direction: row-reverse;
justify-content: space-between;
align-items: center;
gap: var(--size-4-1);
}
.full-calendar-container .calendar-day-cell:not(.is-today) {
opacity: 0.7;
}
.full-calendar-container .calendar-day-cell.is-other-month {
background-color: var(--background-secondary);
opacity: 0.7;
}
.full-calendar-container .calendar-day-cell.is-weekend {
background-color: var(--background-secondary);
}
.full-calendar-container .calendar-day-number {
font-size: var(--font-ui-small);
text-align: center;
margin-bottom: var(--size-4-1);
flex-shrink: 0;
align-self: flex-end;
}
.full-calendar-container .calendar-events-container {
flex-grow: 1;
overflow: hidden;
position: relative;
}
.full-calendar-container .calendar-event {
background-color: var(--interactive-accent);
--bold-color: var(--text-on-accent);
color: var(--text-on-accent);
border-radius: var(--radius-s);
padding: 2px 4px;
font-size: var(--font-ui-smaller);
margin-bottom: 2px;
margin-bottom: 3px;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
cursor: pointer;
display: block;
}
.full-calendar-container .calendar-event:has(.task-list-item-checkbox) {
display: flex;
flex-direction: row;
align-items: center;
}
.full-calendar-container .calendar-event:has(.task-list-item-checkbox).calendar-event-week-allday {
display: flex;
}
.full-calendar-container .calendar-event:has(.task-list-item-checkbox).calendar-event-month {
display: flex;
}
.full-calendar-container .full-calendar-container .calendar-event:hover {
opacity: 0.8;
}
.full-calendar-container .calendar-event.is-completed {
background-color: var(--background-modifier-success-hover);
text-decoration: line-through;
opacity: 0.7;
}
.full-calendar-container .calendar-event.is-multi-day {
}
.full-calendar-container .calendar-event.is-multi-day.is-start {
}
.full-calendar-container .calendar-event.is-multi-day.is-end {
}
.full-calendar-container .calendar-event.calendar-event-month {
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
display: block;
width: 100%;
box-sizing: border-box;
}
.full-calendar-container .calendar-view-container.view-day {
display: flex;
flex-direction: column;
padding: 0;
}
.full-calendar-container .calendar-timeline-section {
flex-grow: 1;
border-top: 1px solid var(--background-modifier-border);
overflow-y: auto;
padding: var(--size-4-4);
}
.full-calendar-container .calendar-timeline-events-container {
display: flex;
flex-direction: column;
gap: var(--size-4-2);
}
.full-calendar-container .calendar-timeline-events-container.is-empty {
color: var(--text-faint);
font-style: italic;
text-align: center;
padding: var(--size-4-8);
}
.full-calendar-container .calendar-event-timed {
border: 1px solid var(--background-modifier-border);
overflow: hidden;
display: flex;
flex-direction: column;
width: 100%;
border-radius: var(--radius-s);
transition: transform 0.15s ease, box-shadow 0.15s ease;
}
.full-calendar-container .calendar-event-timed:hover {
transform: translateY(-1px);
box-shadow: var(--shadow-s);
}
.full-calendar-container .calendar-event-day-timed {
position: relative;
width: 100%;
min-height: 2.5em;
padding: var(--size-4-2);
background-color: var(--interactive-accent);
color: var(--text-on-accent);
border-radius: var(--radius-s);
border: 1px solid var(--background-modifier-border);
}
.full-calendar-container .calendar-event-day-timed:hover {
background-color: var(--interactive-accent-hover);
transform: translateY(-1px);
box-shadow: var(--shadow-s);
}
.full-calendar-container .calendar-event-day-timed.is-completed {
background-color: var(--background-modifier-success-hover);
opacity: 0.7;
text-decoration: line-through;
}
.full-calendar-container .calendar-event-time {
font-size: var(--font-ui-smaller);
font-weight: bold;
padding: 1px 3px;
background-color: rgba(0, 0, 0, 0.1);
border-radius: var(--radius-s);
margin-bottom: var(--size-4-1);
display: inline-block;
width: fit-content;
}
.full-calendar-container .calendar-event-title {
font-size: var(--font-ui-small);
padding: 2px 3px;
flex-grow: 1;
white-space: normal;
word-wrap: break-word;
display: flex;
align-items: center;
}
.full-calendar-container .calendar-view-container.view-week {
display: flex;
flex-direction: column;
padding: 0;
}
.full-calendar-container .calendar-week-header {
display: grid;
grid-template-columns: repeat(7, 1fr);
border-bottom: 1px solid var(--background-modifier-border);
flex-shrink: 0;
text-align: center;
background-color: var(--background-secondary);
font-size: var(--font-ui-medium);
}
.full-calendar-container .calendar-header-cell {
padding: var(--size-4-1) 0;
border-left: 1px solid var(--background-modifier-border-hover);
}
.full-calendar-container .calendar-header-cell:first-child {
border-left: none;
}
.full-calendar-container .calendar-header-cell.is-today .calendar-day-number {
background-color: var(--interactive-accent);
color: var(--text-on-accent);
border-radius: 50%;
display: inline-block;
width: 1.5em;
height: 1.5em;
line-height: 1.5em;
margin: auto;
margin: auto;
display: flex;
align-items: center;
justify-content: center;
}
.full-calendar-container .calendar-weekday {
font-size: var(--font-ui-small);
color: var(--text-muted);
}
.full-calendar-container .calendar-day-number {
font-size: var(--font-ui-medium);
}
.full-calendar-container .calendar-week-grid-section {
flex-grow: 1;
display: flex;
flex-direction: column;
overflow-y: auto;
border-bottom: 1px solid var(--background-modifier-border);
}
.full-calendar-container .calendar-week-grid {
flex-grow: 1;
display: grid;
grid-template-columns: repeat(7, 1fr);
grid-template-rows: 1fr;
gap: 1px;
background-color: var(--background-modifier-border);
border-top: 1px solid var(--background-modifier-border);
}
.full-calendar-container .calendar-day-column {
background-color: var(--background-primary);
padding: var(--size-4-1);
border-left: none;
display: flex;
flex-direction: column;
gap: var(--size-4-1);
overflow: hidden;
min-width: 0;
}
.full-calendar-container .calendar-day-column:first-child {
}
.full-calendar-container .calendar-day-column.is-weekend {
background-color: var(--background-secondary);
}
.full-calendar-container .calendar-view-container.hide-weekends .calendar-weekday-header {
grid-template-columns: repeat(5, 1fr) !important;
}
.full-calendar-container .calendar-view-container.hide-weekends .calendar-month-grid {
grid-template-columns: repeat(5, 1fr) !important;
}
.full-calendar-container .calendar-view-container.hide-weekends .calendar-week-header {
grid-template-columns: repeat(5, 1fr) !important;
}
.full-calendar-container .calendar-view-container.hide-weekends .calendar-week-grid {
grid-template-columns: repeat(5, 1fr) !important;
}
.full-calendar-container .calendar-view-container.hide-weekends .mini-month-grid {
grid-template-columns: repeat(5, 1fr) !important;
}
.full-calendar-container .calendar-day-events-container {
flex-grow: 1;
display: flex;
flex-direction: column;
gap: 3px;
}
.full-calendar-container .calendar-event.calendar-event-week-allday {
display: block;
width: 100%;
position: relative;
left: auto;
top: auto;
height: auto;
margin-bottom: 3px;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
.full-calendar-container .calendar-view-container.view-year {
padding: var(--size-4-4);
}
.full-calendar-container .calendar-year-grid {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
gap: var(--size-4-4);
}
.full-calendar-container .calendar-mini-month {
border: 1px solid var(--background-modifier-border);
border-radius: var(--radius-m);
background-color: var(--background-secondary);
overflow: hidden;
}
.full-calendar-container .mini-month-header {
text-align: center;
font-weight: var(--font-semibold);
padding: var(--size-4-2);
background-color: var(--background-secondary-alt);
border-bottom: 1px solid var(--background-modifier-border);
}
.full-calendar-container .mini-month-body {
padding: var(--size-4-2);
}
.full-calendar-container .mini-month-grid {
display: grid;
grid-template-columns: repeat(7, 1fr);
gap: 2px;
text-align: center;
}
.full-calendar-container .mini-weekday-header {
display: contents;
font-size: var(--font-ui-smaller);
color: var(--text-faint);
font-weight: bold;
}
.full-calendar-container .mini-weekday {
padding-bottom: var(--size-4-1);
}
.full-calendar-container .mini-day-cell {
font-size: var(--font-ui-small);
padding: 1px;
border-radius: var(--radius-s);
line-height: 1.5em;
}
.full-calendar-container .mini-day-cell.is-other-month {
color: var(--text-faint);
opacity: 0.6;
}
.full-calendar-container .mini-day-cell.is-today {
font-weight: bold;
background-color: var(--interactive-accent-hover);
color: var(--text-on-accent);
}
.full-calendar-container .mini-day-cell.has-events {
font-weight: bold;
}
.agenda-day-section {
display: flex;
width: 100%;
border: 1px solid var(--background-modifier-border);
padding-top: var(--size-4-2);
padding-bottom: var(--size-4-2);
padding-left: var(--size-4-2);
padding-right: var(--size-4-2);
}
.agenda-day-date-column {
width: 20%;
display: flex;
flex-direction: column;
justify-content: flex-start;
align-items: center;
}
.agenda-day-events-column {
flex: 1;
}
.full-calendar-container input.task-list-item-checkbox {
vertical-align: middle;
}
.full-calendar-container .calendar-view-switcher-selector {
display: none;
}
.calendar-event-ghost {
background-color: var(--background-secondary-alt) !important;
border: 2px dashed var(--background-modifier-border) !important;
opacity: 0.5 !important;
box-shadow: none !important;
}
.calendar-event-dragging {
opacity: 0.9 !important;
box-shadow: var(--shadow-l) !important;
transform: rotate(2deg) !important;
z-index: 1000 !important;
}
.calendar-events-container .calendar-event {
cursor: grab;
transition: transform 0.2s ease, box-shadow 0.2s ease;
}
.calendar-events-container .calendar-event:hover {
transform: translateY(-1px);
box-shadow: var(--shadow-s);
}
.calendar-events-container .calendar-event:active {
cursor: grabbing;
}
.calendar-events-container,
.calendar-day-events-container {
min-height: 20px;
border-radius: var(--radius-s);
transition: background-color 0.2s ease;
}
@container (max-width: 600px) {
.full-calendar-container .calendar-segmented-control {
display: none;
}
.calendar-nav .prev-button {
display: none;
}
.calendar-nav .next-button {
display: none;
}
.full-calendar-container .calendar-view-switcher-selector {
display: block;
}
}
@container (min-width: 601px) and (max-width: 699px) {
.full-calendar-container .calendar-segment-full {
display: none;
}
.full-calendar-container .calendar-segment-short {
display: inline;
}
.full-calendar-container .calendar-segment-btn {
padding: 6px 8px;
min-width: 28px;
}
}
/* src/styles/calendar/event.scss */
.full-calendar-container .calendar-event-title-container p {
padding-inline-start: 0;
padding-inline-end: 0;
margin-block-start: 0;
margin-block-end: 0;
}
.full-calendar-container .calendar-event-title-container {
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
max-width: 100%;
}
.full-calendar-container .calendar-event-title p {
margin-block-start: 0;
margin-block-end: 0;
}
/* src/styles/calendar/badge.scss */
.calendar-badges-container {
display: flex;
flex-direction: row;
gap: 4px;
pointer-events: none;
z-index: 10;
}
.calendar-badge {
color: var(--text-muted);
display: flex;
font-size: 10px;
padding: var(--size-2-1);
border-radius: var(--radius-s);
max-width: 80px;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
.calendar-day-cell {
position: relative;
}
/* src/styles/gantt/gantt.scss */
.gantt-chart-container {
width: 100%;
height: 100%;
overflow: auto;
position: relative;
background-color: var(--background-secondary);
--gantt-header-height: 50px;
--gantt-row-height: 40px;
--gantt-bar-height: 20px;
--gantt-bar-radius: 3px;
--gantt-bg-color: var(--background-secondary);
--gantt-grid-color: var(--background-modifier-border);
--gantt-row-color: var(--background-secondary);
--gantt-bar-color: var(--color-blue);
--gantt-milestone-color: var(--color-purple);
--gantt-progress-color: var(--color-blue);
--gantt-today-color: var(--color-accent);
}
.gantt-svg {
display: block;
font-family: var(--font-interface);
font-size: var(--font-ui-small);
user-select: none;
}
.gantt-header-bg {
fill: var(--background-primary);
stroke: var(--background-modifier-border);
stroke-width: 1px;
}
.gantt-header-text {
fill: var(--text-muted);
font-weight: 500;
}
.gantt-grid-bg {
fill: transparent;
stroke: var(--background-modifier-border);
stroke-width: 0;
}
.gantt-grid-line-vertical {
stroke: var(--background-modifier-border);
stroke-width: 1px;
stroke-dasharray: 2, 2;
}
.gantt-task-item {
cursor: pointer;
}
.gantt-task-bar {
fill: var(--interactive-accent);
stroke: var(--interactive-accent-hover);
stroke-width: 1px;
transition: fill 0.1s ease-in-out;
}
.gantt-task-item:hover .gantt-task-bar {
fill: var(--interactive-accent-hover);
}
.gantt-task-milestone {
fill: var(--color-orange);
stroke: var(--color-orange-border);
stroke-width: 1px;
}
.gantt-task-label {
fill: var(--text-on-accent);
font-size: calc(var(--font-ui-small) * 0.9);
pointer-events: none;
white-space: pre;
}
.gantt-task-bar.status-completed {
fill: var(--color-green);
stroke: var(--color-green-border);
}
.gantt-header {
position: sticky;
top: 0;
left: 0;
right: 0;
z-index: 10;
height: var(--gantt-header-height);
border-bottom: 1px solid var(--gantt-grid-color);
user-select: none;
background-color: var(--gantt-bg-color);
pointer-events: none;
width: 100%;
overflow: hidden;
}
.gantt-header-row {
position: relative;
height: 50%;
width: 100%;
}
.gantt-header-row.primary {
border-bottom: 1px solid var(--gantt-grid-color);
font-weight: 600;
}
.gantt-header-cell {
position: absolute;
height: 100%;
display: flex;
align-items: center;
justify-content: center;
text-align: center;
font-size: 12px;
color: var(--text-normal);
border-right: 1px solid var(--gantt-grid-color);
box-sizing: border-box;
background-color: var(--gantt-bg-color);
pointer-events: auto;
}
.gantt-body {
position: relative;
overflow: auto;
height: 100%;
padding-top: var(--gantt-header-height);
margin-top: calc(var(--gantt-header-height) * -1);
}
.gantt-grid {
position: absolute;
top: var(--gantt-header-height);
left: 0;
height: calc(100% - var(--gantt-header-height));
min-width: 100%;
}
.gantt-grid-column {
position: absolute;
top: 0;
height: 100%;
border-right: 1px solid var(--gantt-grid-color);
box-sizing: border-box;
}
.gantt-grid-column.today {
background-color: var(--gantt-today-color);
}
.gantt-grid-row {
position: absolute;
left: 0;
border-bottom: 1px solid var(--gantt-grid-color);
box-sizing: border-box;
background-color: var(--gantt-row-color);
}
.gantt-grid-row:nth-child(odd) {
background-color: var(--gantt-bg-color);
}
.gantt-bars {
position: absolute;
top: var(--gantt-header-height);
left: 0;
height: calc(100% - var(--gantt-header-height));
min-width: 100%;
pointer-events: none;
}
.gantt-task-container {
position: absolute;
box-sizing: border-box;
pointer-events: auto;
cursor: pointer;
transition: transform 0.1s ease;
}
.gantt-task-container:hover {
z-index: 10;
transform: translateY(-2px);
}
.gantt-task-bar.milestone {
background-color: var(--gantt-milestone-color);
width: 15px !important;
height: 15px !important;
border-radius: 50%;
transform: rotate(45deg);
top: 50%;
margin-top: -7.5px;
left: 50%;
margin-left: -7.5px;
}
.gantt-task-progress {
position: absolute;
top: 0;
left: 0;
height: 100%;
background-color: var(--gantt-progress-color);
opacity: 0.7;
}
.gantt-task-label {
position: absolute;
left: calc(100% + 8px);
top: 0;
white-space: nowrap;
font-size: 12px;
color: var(--text-normal);
line-height: var(--gantt-bar-height);
}
.gantt-task-container.right-aligned .gantt-task-label {
left: auto;
right: calc(100% + 8px);
text-align: right;
}
@media (max-width: 680px) {
.gantt-header-cell {
font-size: 10px;
}
.gantt-task-label {
font-size: 10px;
}
}
.gantt-chart-container {
display: flex;
flex-direction: column;
height: 100%;
overflow: hidden;
position: relative;
}
.gantt-header-container {
height: 40px;
flex-shrink: 0;
overflow: hidden;
position: relative;
border-bottom: 1px solid var(--background-modifier-border);
background-color: var(--background-secondary);
}
.gantt-header-svg {
display: block;
}
.gantt-header-tick-major,
.gantt-header-tick-minor,
.gantt-header-tick-day,
.gantt-header-today-marker {
stroke: var(--background-modifier-border);
stroke-width: 1;
}
.gantt-header-tick-major {
stroke-width: 1.5;
}
.gantt-header-today-marker {
stroke: var(--color-orange);
stroke-width: 1.5;
stroke-dasharray: 4, 2;
}
.gantt-header-label-major,
.gantt-header-label-minor,
.gantt-header-label-day {
font-size: var(--font-ui-small);
fill: var(--text-muted);
user-select: none;
pointer-events: none;
}
.gantt-header-label-major {
font-weight: 500;
fill: var(--text-normal);
}
.gantt-scroll-container {
flex-grow: 1;
overflow: auto;
position: relative;
}
.gantt-content-wrapper {
position: relative;
background: var(--background-primary);
}
.gantt-grid-line-major,
.gantt-grid-line-minor {
stroke: var(--background-modifier-border-hover);
stroke-width: 0.5;
}
.gantt-grid-line-major {
stroke-width: 1;
}
.gantt-grid-line-horizontal {
stroke: var(--background-modifier-border);
stroke-width: 1;
}
.gantt-grid-today-marker {
stroke: var(--color-orange);
stroke-width: 1;
stroke-dasharray: 4, 2;
}
.gantt-task-item {
cursor: pointer;
}
.gantt-task-bar {
fill: var(--color-blue);
stroke: var(--color-blue-hover);
stroke-width: 0.5;
transition: fill 0.1s ease;
}
.gantt-task-item:hover .gantt-task-bar {
fill: var(--color-accent);
}
.gantt-task-milestone {
fill: var(--color-purple);
stroke: var(--color-purple);
stroke-width: 1;
transition: fill 0.1s ease;
}
.gantt-task-item:hover .gantt-task-milestone {
fill: var(--color-accent);
}
.gantt-task-item.status-done .gantt-task-bar,
.gantt-task-item.status-done .gantt-task-milestone {
fill: var(--color-green);
stroke: var(--color-green);
opacity: 0.7;
}
.gantt-task-item.status-cancelled .gantt-task-bar,
.gantt-task-item.status-cancelled .gantt-task-milestone {
fill: var(--color-red);
stroke: var(--color-red);
opacity: 0.6;
text-decoration: line-through;
}
.gantt-task-label-fo {
pointer-events: none;
overflow: hidden;
user-select: none;
}
.gantt-task-label-markdown {
color: var(--text-on-accent);
font-size: var(--font-ui-smaller);
line-height: 1.3;
padding: 0 2px;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
display: flex;
align-items: center;
height: 100%;
}
.gantt-task-label-markdown p {
margin: 0 !important;
}
.gantt-milestone-label-container p {
margin-block-start: 0;
margin-block-end: 0;
margin-inline-start: 0;
margin-inline-end: 0;
color: var(--text-normal);
font-size: var(--font-ui-smaller);
line-height: 1.3;
padding: 0 2px;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
display: flex;
align-items: center;
height: 100%;
}
.gantt-task-item.status-done .gantt-task-label-markdown {
color: var(--text-on-accent);
}
.gantt-task-item.status-cancelled .gantt-task-label-markdown {
color: var(--text-on-accent);
text-decoration: line-through;
}
.gantt-milestone-label {
fill: var(--text-normal);
}
.gantt-filter-area {
display: flex;
align-items: center;
justify-content: flex-end;
width: 100%;
padding-left: var(--size-2-2);
padding-right: var(--size-4-2);
background-color: var(--background-primary);
}
.gantt-filter-area .filter-component {
flex: 1;
}
.gantt-offscreen-indicator {
position: absolute;
top: calc(50% + 20px);
transform: translateY(-50%);
width: 8px;
height: 8px;
background-color: rgba(128, 128, 128, 0.6);
border-radius: 50%;
z-index: 10;
pointer-events: none;
display: none;
transition: opacity 0.2s ease-in-out;
opacity: 1;
}
.gantt-offscreen-indicator[style*="display: none"] {
opacity: 0;
}
.gantt-offscreen-indicator-left {
left: 5px;
}
.gantt-offscreen-indicator-right {
right: 5px;
}
.gantt-indicator-container {
position: absolute;
top: 0;
bottom: 0;
width: var(--size-4-3);
z-index: 10;
pointer-events: none;
overflow: hidden;
}
.gantt-indicator-container-left {
left: 0;
}
.gantt-indicator-container-right {
right: 0;
}
.gantt-single-indicator {
position: absolute;
left: var(--size-2-1);
width: var(--size-4-2);
height: var(--size-4-2);
border-radius: 50%;
background-color: var(--text-faint);
pointer-events: auto;
cursor: default;
}
.gantt-single-indicator:hover {
background-color: var(--text-accent);
}
.gantt-chart-container .gantt-indicator-container {
top: calc(var(--header-height, 40px) + var(--filter-height, 0px));
bottom: 15px;
}
.gantt-chart-container .gantt-indicator-container-right {
right: 15px;
}
.gantt-task-label p {
margin: 0;
line-height: var(--gantt-bar-height);
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
/* src/styles/task-status-indicator.scss */
.task-status-indicator-wrapper {
display: flex;
}
.task-status-indicator {
display: inline-flex;
align-items: center;
justify-content: center;
padding: 0 var(--size-2-2);
min-height: 20px;
border-radius: var(--radius-s);
font-size: var(--font-ui-small);
color: var(--text-muted);
background-color: var(--background-modifier-hover);
cursor: pointer;
user-select: none;
transition:
background-color 0.15s ease,
color 0.15s ease,
opacity 0.15s ease;
}
.task-status-indicator__text {
padding: 0 var(--size-2-1);
white-space: nowrap;
}
.task-status-indicator:hover {
background-color: var(--background-modifier-active-hover);
color: var(--text-normal);
}
.task-status-indicator.is-disabled {
opacity: 0.5;
cursor: default;
}
.task-status-indicator.is-processing {
opacity: 0.7;
cursor: progress;
}
.task-status-indicator.is-completed {
color: var(--text-on-accent);
background-color: var(--background-modifier-success);
}
/* src/styles/inline-editor.scss */
.inline-editor {
position: relative;
display: inline-block;
width: 100%;
}
.inline-content-editor {
width: 100%;
min-height: 18px;
border: none;
border-bottom: 1px solid var(--interactive-accent);
border-radius: 0;
padding: 2px 4px;
background-color: transparent;
color: var(--text-normal);
font-family: inherit;
font-size: inherit;
line-height: inherit;
resize: none;
outline: none;
transition: border-color 0.15s ease, background-color 0.15s ease;
}
.inline-content-editor:focus {
border-bottom-color: var(--interactive-accent-hover);
background-color: var(--background-primary-alt);
box-shadow: 0 1px 0 0 var(--interactive-accent-hover);
}
.inline-embedded-editor-container {
width: 100%;
min-height: 18px;
border: none;
border-radius: 0;
background-color: transparent;
}
.inline-embedded-editor {
width: 100%;
min-height: 18px;
background-color: transparent;
}
.inline-embedded-editor .cm-editor {
border: none !important;
outline: none !important;
background-color: transparent !important;
border-bottom: 1px solid var(--interactive-accent) !important;
}
.inline-embedded-editor .cm-focused {
outline: none !important;
border-bottom-color: var(--interactive-accent-hover) !important;
background-color: var(--background-primary-alt) !important;
}
.inline-embedded-editor .cm-content {
padding: 2px 4px;
min-height: 18px;
font-family: inherit;
font-size: inherit;
line-height: inherit;
}
.inline-embedded-editor .cm-line {
padding: 0;
}
.inline-metadata-editor {
display: inline-flex;
align-items: center;
gap: 4px;
padding: 2px 6px;
background-color: var(--background-primary-alt);
border: 1px solid var(--interactive-accent);
border-radius: var(--radius-s);
box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
min-width: 120px;
max-width: 300px;
position: relative;
z-index: 100;
}
.inline-metadata-editor input {
border: unset;
outline: unset;
padding: 0;
height: var(--line-height);
background-color: transparent;
background: transparent;
border-radius: var(--radius-s);
}
.inline-metadata-editor input:focus {
outline: unset;
padding: 0;
background-color: transparent;
}
.inline-metadata-editor:has(input) {
outline: unset;
border: 0;
padding: 0;
background-color: transparent;
border-radius: unset;
}
.inline-project-input,
.inline-tags-input,
.inline-context-input,
.inline-date-input,
.inline-recurrence-input {
flex: 1;
padding: 2px 4px;
border: none;
border-radius: 2px;
background-color: transparent;
color: var(--text-normal);
font-family: inherit;
font-size: var(--font-ui-small);
outline: none;
min-width: 80px;
transition: background-color 0.15s ease;
}
.inline-project-input:focus,
.inline-tags-input:focus,
.inline-context-input:focus,
.inline-date-input:focus,
.inline-recurrence-input:focus {
background-color: var(--background-primary);
box-shadow: inset 0 0 0 1px var(--interactive-accent);
}
.inline-priority-select {
padding: 2px 4px;
border: none;
border-radius: 2px;
background-color: transparent;
color: var(--text-normal);
font-family: inherit;
font-size: var(--font-ui-small);
outline: none;
cursor: pointer;
min-width: 80px;
}
.inline-priority-select:focus {
background-color: var(--background-primary);
box-shadow: inset 0 0 0 1px var(--interactive-accent);
}
.add-metadata-container {
display: inline-flex;
align-items: center;
margin-left: 4px;
}
.task-list .task-item:not(.tree-task-item):hover .add-metadata-btn {
opacity: 1;
}
.tree-task-item .task-item-container:hover .add-metadata-btn {
opacity: 1;
}
.add-metadata-btn {
display: inline-flex;
align-items: center;
justify-content: center;
width: 22px;
height: 22px;
border: none;
border-radius: 2px;
background-color: var(--background-secondary);
color: var(--text-muted);
cursor: pointer;
transition: all 0.15s ease;
--icon-size: 10px;
opacity: 0;
padding: 0;
margin: 0;
}
.add-metadata-btn:hover {
background-color: var(--background-modifier-hover);
color: var(--text-normal);
opacity: 1;
}
.add-metadata-btn:active {
background-color: var(--background-modifier-active);
transform: scale(0.95);
}
.add-metadata-btn svg {
width: 10px;
height: 10px;
}
.inline-editor * {
transition:
border-color 0.15s ease,
background-color 0.15s ease,
box-shadow 0.15s ease;
}
.inline-editor input:focus,
.inline-editor textarea:focus,
.inline-editor select:focus {
outline: none;
}
.task-item-metadata .task-date,
.task-item-metadata .task-project,
.task-item-metadata .task-tag {
cursor: pointer;
transition: background-color 0.15s ease, transform 0.15s ease;
position: relative;
}
.task-item-metadata .task-date:hover,
.task-item-metadata .task-project:hover,
.task-item-metadata .task-tag:hover {
background-color: var(--background-modifier-hover);
transform: none;
}
.task-item-metadata .task-date:hover::after,
.task-item-metadata .task-project:hover::after,
.task-item-metadata .task-tag:hover::after {
display: none;
}
.task-item-content {
cursor: pointer;
transition: background-color 0.15s ease;
}
.inline-metadata-editor {
animation: fadeInScale 0.15s ease-out;
}
@keyframes fadeInScale {
from {
opacity: 0;
transform: scale(0.95);
}
to {
opacity: 1;
transform: scale(1);
}
}
.inline-editor-placeholder {
min-height: 1em;
display: inline-block;
}
@media (max-width: 768px) {
.inline-project-input,
.inline-tags-input,
.inline-context-input,
.inline-recurrence-input {
min-width: 100px;
font-size: var(--font-ui-smaller);
}
.inline-metadata-editor {
max-width: 250px;
}
}
@media (prefers-contrast: high) {
.inline-content-editor,
.inline-embedded-editor .cm-editor {
border-bottom-width: 2px;
}
.inline-metadata-editor {
border-width: 2px;
}
}
@media (prefers-reduced-motion: reduce) {
.inline-editor *,
.task-item-metadata .task-date,
.task-item-metadata .task-project,
.task-item-metadata .task-tag,
.task-item-content,
.add-metadata-btn {
transition: none;
}
.inline-metadata-editor {
animation: none;
}
}
.inline-dependson-input,
.inline-id-input {
width: 100%;
min-width: 200px;
padding: 4px 8px;
border: 1px solid var(--background-modifier-border);
border-radius: 4px;
background-color: var(--background-primary);
color: var(--text-normal);
font-family: inherit;
font-size: var(--font-ui-small);
outline: none;
transition: border-color 0.15s ease, box-shadow 0.15s ease;
}
.inline-dependson-input:focus,
.inline-id-input:focus {
border-color: var(--interactive-accent);
box-shadow: 0 0 0 2px var(--interactive-accent-hover);
}
.inline-dependson-input::placeholder,
.inline-id-input::placeholder {
color: var(--text-faint);
}
/* src/styles/view.scss */
.task-sidebar.collapsed {
width: 48px;
overflow: hidden;
}
.panel-toggle-btn {
display: flex;
align-items: center;
justify-content: center;
border-radius: 4px;
cursor: pointer;
opacity: 0.6;
transition: opacity 0.2s ease;
}
.panel-toggle-btn:hover {
opacity: 1;
}
.task-sidebar.collapsed .sidebar-nav {
align-items: center;
}
.sidebar-nav {
display: flex;
flex-direction: column;
padding: 20px 0 10px 0;
gap: 5px;
}
.sidebar-nav-spacer {
height: 1px;
background-color: var(--background-modifier-border);
margin: 8px 15px;
opacity: 0.7;
margin-top: auto;
}
.sidebar-nav-item {
display: flex;
align-items: center;
padding: 8px 15px;
cursor: pointer;
border-radius: 4px;
margin: 0 5px;
transition: background-color 0.2s ease;
}
.sidebar-nav-item:hover {
background-color: var(--background-modifier-active);
}
.sidebar-nav-item.is-active {
font-weight: 600;
--background-modifier-hover: var(--interactive-accent);
--icon-color: var(--text-on-accent);
background-color: var(--interactive-accent);
color: var(--text-on-accent);
}
.nav-item-icon {
--icon-size: var(--size-4-4);
display: flex;
align-items: center;
justify-content: center;
margin-right: var(--size-4-2);
}
.nav-item-label {
flex: 1;
font-size: var(--font-ui-medium);
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
.nav-item-label.hidden {
opacity: 0;
width: 0;
overflow: hidden;
margin: 0;
}
.task-sidebar.collapsed .sidebar-nav-item {
padding: 8px 10px;
justify-content: center;
width: var(--size-4-9);
flex-shrink: 0;
transition: width 0.3s ease-in-out, flex-shrink 0.3s ease-in-out;
}
.task-sidebar.collapsed .nav-item-icon {
margin-right: 0;
}
.task-content {
flex: 1;
display: flex;
flex-direction: column;
overflow: hidden;
min-width: 0;
transition: margin 0.3s ease;
}
.task-sidebar.collapsed .task-content {
margin-left: -200px;
transition: margin 0.3s ease;
}
.task-genius-view .project-tree {
padding: var(--size-2-2) 0;
transition: opacity 0.3s ease;
}
.task-genius-view .tree-root {
display: flex;
flex-direction: column;
}
.task-genius-view .task-genius-view .tree-item {
display: flex;
align-items: center;
padding: 6px 8px;
cursor: pointer;
transition: background-color 0.2s ease;
border-radius: 4px;
margin: 0 5px;
}
.task-genius-view .tree-item:hover {
background-color: var(--background-modifier-border-hover);
}
.task-genius-view .tree-item.selected {
background-color: var(--background-modifier-border-hover);
}
.task-genius-view .tree-item-icon {
display: flex;
align-items: center;
justify-content: center;
width: 20px;
height: 20px;
margin-right: 8px;
color: var(--text-muted);
}
.task-genius-view .tree-item-name {
flex: 1;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
.task-genius-view .tree-item-count {
font-size: 0.8em;
color: var(--text-muted);
margin-left: 5px;
background-color: var(--background-modifier-hover);
padding: 1px 6px;
border-radius: 10px;
}
.task-genius-view .tree-item-toggle,
.task-genius-view .tree-item-indent {
width: 20px;
display: flex;
align-items: center;
justify-content: center;
margin-right: 5px;
}
.task-genius-view .tree-item-toggle {
cursor: pointer;
}
.content-header {
padding: 15px;
border-bottom: 1px solid var(--background-modifier-border);
display: flex;
align-items: center;
flex-shrink: 0;
}
.task-count {
font-size: 0.8em;
color: var(--text-muted);
margin-right: 10px;
}
.focus-filter {
margin-left: 10px;
}
.workspace-leaf-content .task-genius-view {
padding: 0;
}
.bases-view .task-genius-view {
height: 100%;
}
.task-genius-container {
display: flex;
flex-direction: row;
height: 100%;
width: 100%;
background-color: var(--background-primary);
border-top: 1px solid var(--background-modifier-border);
color: var(--text-normal);
position: relative;
overflow: hidden;
}
.task-sidebar {
display: flex;
flex-direction: column;
border-right: 1px solid var(--background-modifier-border);
background-color: var(--background-secondary);
overflow-y: auto;
width: 240px;
transition: width 0.3s ease-in-out;
position: relative;
}
.task-content {
display: flex;
flex-direction: column;
flex: 1;
min-width: 300px;
height: 100%;
overflow: hidden;
}
.task-sidebar .sidebar-nav {
display: flex;
flex-direction: column;
padding: 8px 0;
height: 100%;
}
.project-tree {
display: flex;
flex-direction: column;
padding: 8px 0;
overflow-y: auto;
}
.tree-root {
display: flex;
flex-direction: column;
}
.task-genius-view .tree-item {
display: flex;
align-items: center;
padding: 4px 12px;
cursor: pointer;
border-radius: 4px;
margin: 2px 8px;
}
.task-genius-view .tree-item:hover {
background-color: var(--background-modifier-border-hover);
}
.task-genius-view .tree-item.selected {
background-color: var(--background-modifier-border-hover);
color: var(--text-accent);
}
.task-genius-view .tree-item-toggle {
width: 16px;
height: 16px;
display: flex;
align-items: center;
justify-content: center;
margin-right: 4px;
}
.task-genius-view .tree-item-indent {
width: 16px;
height: 16px;
margin-right: 4px;
}
.task-genius-view .tree-item-icon {
margin-right: 8px;
width: 16px;
height: 16px;
display: flex;
align-items: center;
justify-content: center;
color: var(--text-muted);
}
.task-genius-view .tree-item-name {
flex: 1;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
.task-genius-view .tree-item-count {
font-size: 0.8em;
color: var(--text-muted);
background-color: var(--background-modifier-hover);
border-radius: 10px;
padding: 2px 6px;
min-width: 16px;
text-align: center;
}
.task-genius-view .tree-item.expanded > .tree-item-children {
display: flex;
}
.task-genius-view .tree-item-children {
display: none;
flex-direction: column;
margin-left: 16px;
width: 100%;
}
.task-genius-view .content-header {
display: flex;
align-items: center;
padding: 10px 16px;
border-bottom: 1px solid var(--background-modifier-border);
min-height: 50px;
}
.task-genius-view .content-title {
font-size: 1.2em;
font-weight: 600;
margin-right: 12px;
flex: 1;
}
@media screen and (max-width: 768px) {
.task-genius-view .content-title {
display: none;
}
.task-genius-view .task-count {
flex: 1;
}
.task-genius-view .focus-filter {
flex: 1;
}
}
.task-genius-view .content-filter {
display: flex;
align-items: center;
margin-right: 12px;
}
.task-genius-view .filter-input {
border: 1px solid var(--background-modifier-border);
border-radius: 4px;
padding: 4px 8px;
width: 200px;
background-color: var(--background-primary);
}
.task-genius-view .focus-button {
background-color: var(--interactive-normal);
border: 1px solid var(--background-modifier-border);
border-radius: 4px;
padding: 4px 10px;
color: var(--text-normal);
cursor: pointer;
}
.task-genius-view .focus-button:hover {
background-color: var(--interactive-hover);
}
.task-genius-view .focus-button.focused {
background-color: var(--interactive-accent);
color: var(--text-on-accent);
}
.mod-root .task-genius-action-btn {
--icon-size: 16px;
}
.mod-left-split .task-genius-action-btn {
display: none;
}
.mod-left-split .workspace-tab-header-status-container:has(.task-genius-action-btn) {
display: none;
}
.mod-right-split .workspace-tab-header-status-container:has(.task-genius-action-btn) {
display: none;
}
.task-genius-view .task-empty-state,
.task-genius-fluent-view .task-empty-state {
width: 100%;
height: 100%;
flex: 1;
display: flex;
align-items: center;
justify-content: center;
}
.tg-fluent-error-state {
display: flex;
align-items: center;
flex-direction: column;
justify-content: center;
width: 100%;
height: 100%;
--icon-size: var(--size-4-12);
font-size: var(--font-ui-large);
gap: var(--size-2-2);
}
.mod-root .task-genius-tab-header {
container-type: inline-size !important;
}
@container (max-width: 120px) {
.mod-root .task-genius-action-btn {
display: none;
}
}
.task-sidebar.collapsed .sidebar-nav {
max-width: 45px;
}
.quick-workflow-modal {
max-width: 600px;
min-height: 400px;
}
.workflow-template-section {
margin-bottom: 20px;
padding: 15px;
border: 1px solid var(--background-modifier-border);
border-radius: 8px;
}
.template-description {
margin-top: 10px;
}
.template-desc-text {
font-style: italic;
color: var(--text-muted);
margin: 0;
}
.workflow-form-section {
margin-bottom: 20px;
}
.workflow-stages-preview {
margin-top: 15px;
}
.stages-preview-list {
margin-top: 10px;
}
.stage-preview-item {
display: flex;
align-items: center;
justify-content: space-between;
padding: 8px 12px;
margin: 4px 0;
background: var(--background-secondary);
border-radius: 6px;
border: 1px solid var(--background-modifier-border);
}
.stage-info {
display: flex;
align-items: center;
gap: 8px;
}
.stage-name {
font-weight: 500;
}
.stage-type {
color: var(--text-muted);
font-size: 0.9em;
}
.stage-actions {
display: flex;
gap: 4px;
}
.no-stages-message {
text-align: center;
color: var(--text-muted);
font-style: italic;
padding: 20px;
border: 2px dashed var(--background-modifier-border);
border-radius: 8px;
margin-top: 10px;
}
.workflow-modal-buttons {
display: flex;
justify-content: flex-end;
gap: 10px;
margin-top: 20px;
padding-top: 15px;
border-top: 1px solid var(--background-modifier-border);
}
.workflow-progress-indicator {
background: var(--background-secondary);
border: 1px solid var(--background-modifier-border);
border-radius: 8px;
padding: 15px;
margin: 10px 0;
}
.workflow-progress-header {
display: flex;
justify-content: space-between;
align-items: center;
margin-bottom: 15px;
}
.workflow-name {
font-weight: 600;
font-size: 1.1em;
}
.workflow-progress-text {
color: var(--text-muted);
font-size: 0.9em;
}
.workflow-progress-bar-container {
display: flex;
align-items: center;
gap: 10px;
margin-bottom: 15px;
}
.workflow-progress-bar {
flex: 1;
height: 8px;
background: var(--background-modifier-border);
border-radius: 4px;
overflow: hidden;
}
.workflow-progress-fill {
height: 100%;
background: var(--interactive-accent);
transition: width 0.3s ease;
}
.workflow-progress-percentage {
font-size: 0.9em;
font-weight: 500;
min-width: 35px;
text-align: right;
}
.workflow-stage-list {
display: flex;
flex-direction: column;
gap: 8px;
}
.workflow-stage-item {
display: flex;
align-items: flex-start;
gap: 12px;
padding: 10px;
border-radius: 6px;
transition: background-color 0.2s ease;
}
.workflow-stage-item.completed {
background: var(--background-modifier-success);
}
.workflow-stage-item.current {
background: var(--background-modifier-accent);
border: 1px solid var(--interactive-accent);
}
.workflow-stage-item.pending {
background: var(--background-primary);
opacity: 0.7;
}
.workflow-stage-icon {
width: 20px;
height: 20px;
display: flex;
align-items: center;
justify-content: center;
margin-top: 2px;
}
.workflow-stage-icon.completed-icon {
color: var(--text-success);
}
.workflow-stage-icon.current-icon {
color: var(--interactive-accent);
}
.workflow-stage-icon.pending-icon {
color: var(--text-muted);
}
.workflow-stage-content {
flex: 1;
}
.workflow-stage-name {
font-weight: 500;
margin-bottom: 2px;
}
.workflow-stage-type {
font-size: 0.8em;
color: var(--text-muted);
}
.workflow-stage-number {
width: 24px;
height: 24px;
border-radius: 50%;
background: var(--background-modifier-border);
display: flex;
align-items: center;
justify-content: center;
font-size: 0.8em;
font-weight: 600;
margin-top: 2px;
}
.workflow-stage-item.completed .workflow-stage-number {
background: var(--text-success);
color: var(--background-primary);
}
.workflow-stage-item.current .workflow-stage-number {
background: var(--interactive-accent);
color: var(--text-on-accent);
}
.workflow-substage-container {
margin-top: 8px;
padding-left: 16px;
border-left: 2px solid var(--background-modifier-border);
}
.workflow-substage-item {
display: flex;
align-items: center;
gap: 8px;
padding: 4px 0;
}
.workflow-substage-icon {
width: 12px;
height: 12px;
color: var(--text-muted);
}
.workflow-substage-name {
font-size: 0.9em;
color: var(--text-muted);
}
/* src/styles/property-view.scss */
.task-property-container {
display: flex;
flex-direction: column;
height: 100%;
width: 100%;
overflow: hidden;
}
.task-property-content {
display: flex;
flex-direction: row;
flex: 1;
overflow: hidden;
}
.task-property-left-column {
width: max(120px, 30%);
min-width: min(120px, 30%);
max-width: 300px;
display: flex;
flex-direction: column;
border-right: 1px solid var(--background-modifier-border);
overflow: hidden;
}
.is-phone .task-property-left-column {
max-width: 100%;
}
.task-property-right-column {
flex: 1;
display: flex;
flex-direction: column;
overflow: hidden;
}
.task-property-sidebar-header {
display: flex;
justify-content: space-between;
align-items: center;
padding: var(--size-4-2) var(--size-4-4);
border-bottom: 1px solid var(--background-modifier-border);
height: var(--size-4-10);
}
.task-property-sidebar-title {
font-weight: 600;
font-size: 14px;
}
.multi-select-mode .task-property-multi-select-btn {
color: var(--color-accent);
}
.task-property-multi-select-btn {
cursor: pointer;
color: var(--text-muted);
display: flex;
align-items: center;
justify-content: center;
}
.task-property-multi-select-btn:hover {
color: var(--text-normal);
}
.task-property-sidebar-list {
flex: 1;
overflow-y: auto;
padding: var(--size-4-2);
}
.task-property-list-item {
display: flex;
align-items: center;
padding: 4px 12px;
cursor: pointer;
border-radius: var(--radius-s);
}
.task-property-list-item:hover {
background-color: var(--background-modifier-hover);
}
.task-property-list-item.selected {
background-color: var(--background-modifier-active);
}
.task-property-icon {
margin-right: 8px;
color: var(--text-muted);
display: flex;
align-items: center;
justify-content: center;
}
.task-property-name {
flex: 1;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
.task-property-count {
margin-left: 8px;
font-size: 0.8em;
color: var(--text-muted);
background-color: var(--background-modifier-border);
border-radius: 10px;
padding: 1px 6px;
}
.task-property-task-header {
display: flex;
justify-content: space-between;
align-items: center;
padding: var(--size-4-2) var(--size-4-4);
border-bottom: 1px solid var(--background-modifier-border);
height: var(--size-4-10);
}
.task-property-task-title {
font-weight: 600;
font-size: 16px;
}
.task-property-task-count {
color: var(--text-muted);
}
.task-property-task-list {
flex: 1;
overflow-y: auto;
}
.task-property-empty-state {
display: flex;
align-items: center;
justify-content: center;
height: 100%;
color: var(--text-muted);
font-style: italic;
padding: 16px;
}
.is-phone .task-property-left-column {
position: absolute;
left: 0;
top: 0;
height: 100%;
z-index: 10;
background-color: var(--background-secondary);
width: 100%;
transform: translateX(-100%);
transition: transform 0.3s ease-in-out;
border-right: 1px solid var(--background-modifier-border);
}
.is-phone .task-property-left-column.is-visible {
transform: translateX(0);
}
.is-phone .task-property-sidebar-toggle {
display: flex;
align-items: center;
justify-content: center;
margin-right: 8px;
}
.is-phone .task-property-sidebar-close {
--icon-size: var(--size-4-4);
position: absolute;
top: var(--size-4-2);
right: 10px;
z-index: 15;
display: flex;
align-items: center;
justify-content: center;
}
.is-phone .task-property-container:has(.task-property-left-column.is-visible)::before {
content: "";
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background-color: var(--background-modifier-cover);
opacity: 0.5;
z-index: 5;
transition: opacity 0.3s ease-in-out;
}
.is-phone .task-property-container {
position: relative;
overflow: hidden;
}
.is-phone .task-property-sidebar-header:has(.task-property-sidebar-close) {
padding-right: var(--size-4-12);
}
/* src/styles/forecast.scss */
.forecast-container {
display: flex;
flex-direction: column;
height: 100%;
overflow: hidden;
flex: 1;
}
.forecast-header {
display: flex;
justify-content: space-between;
align-items: center;
padding: 15px;
border-bottom: 1px solid var(--background-modifier-border);
}
.forecast-title-container {
display: flex;
flex-direction: column;
}
.forecast-title {
font-weight: 600;
font-size: 1.2em;
}
.forecast-count {
font-size: 0.8em;
color: var(--text-muted);
margin-top: 4px;
}
.forecast-actions {
display: flex;
gap: var(--size-4-2);
align-items: center;
justify-content: center;
}
.forecast-settings {
cursor: pointer;
opacity: 0.7;
transition: opacity 0.2s ease;
display: flex;
align-items: center;
justify-content: center;
}
.forecast-settings:hover {
opacity: 1;
}
.forecast-focus-bar {
display: flex;
padding: 10px 15px;
border-bottom: 1px solid var(--background-modifier-border);
gap: 10px;
align-items: center;
}
.focus-input {
flex: 1;
padding: 6px 12px;
border-radius: 4px;
border: 1px solid var(--interactive-accent);
background-color: var(--background-primary);
color: var(--text-normal);
}
.unfocus-button {
padding: 6px 12px;
border-radius: 4px;
background-color: var(--interactive-accent);
color: var(--text-on-accent);
cursor: pointer;
border: none;
}
.unfocus-button:hover {
background-color: var(--interactive-accent-hover);
}
.forecast-content {
display: flex;
flex: 1;
overflow: hidden;
}
.forecast-left-column {
width: 360px;
min-width: 360px;
border-right: 1px solid var(--background-modifier-border);
display: flex;
flex-direction: column;
overflow-y: auto;
background-color: var(--background-secondary-alt);
}
.forecast-right-column {
flex: 1;
display: flex;
flex-direction: column;
background-color: var(--background-primary);
width: calc(100% - 360px);
}
.forecast-task-list {
overflow-y: auto;
}
.forecast-calendar-section {
padding: 10px 0;
margin-top: var(--size-4-4);
flex-shrink: 0;
border-top: 1px solid var(--background-modifier-border);
}
.forecast-stats {
display: flex;
}
.stat-item {
flex: 1;
display: flex;
flex-direction: column;
align-items: center;
padding: 10px;
cursor: pointer;
transition: background-color 0.2s ease;
position: relative;
}
.stat-item::after {
content: "";
position: absolute;
bottom: 0;
left: 10%;
width: 80%;
height: 3px;
background-color: transparent;
transition: background-color 0.2s ease;
}
.stat-item:hover {
background-color: var(--background-modifier-hover);
}
.stat-item.active::after {
background-color: var(--interactive-accent);
animation: color-pulse 1.5s infinite alternate;
}
@keyframes color-pulse {
0% {
background-color: var(--color-accent-1) !important;
opacity: 0.7;
}
100% {
background-color: var(--color-accent-2) !important;
opacity: 1;
}
}
.stat-item.tg-past-due::after {
background-color: var(--text-error);
opacity: 0.7;
}
.stat-item.tg-today::after {
background-color: var(--interactive-accent);
opacity: 0.7;
}
.stat-item.tg-future::after {
background-color: var(--text-accent);
opacity: 0.7;
}
.stat-count {
font-size: 1.5em;
font-weight: 600;
}
.stat-item.tg-past-due .stat-count {
color: var(--text-error);
}
.stat-label {
font-size: 0.8em;
color: var(--text-muted);
}
.forecast-due-soon-section {
display: flex;
flex-direction: column;
padding-bottom: var(--size-4-3);
}
.due-soon-header {
font-size: 0.8em;
font-weight: 600;
padding: 5px 15px;
color: var(--text-muted);
text-transform: uppercase;
letter-spacing: 0.05em;
}
.due-soon-item {
display: flex;
justify-content: space-between;
padding: 8px 15px;
cursor: pointer;
border-left: 3px solid transparent;
transition: background-color 0.2s ease;
}
.due-soon-item:hover {
background-color: var(--background-modifier-hover);
border-left-color: var(--interactive-accent);
}
.due-soon-date {
font-size: 0.9em;
}
.due-soon-count {
font-size: 0.8em;
background-color: var(--background-modifier-border);
padding: 2px 6px;
border-radius: 10px;
color: var(--text-muted);
}
.due-soon-empty {
text-align: center;
padding: 15px;
color: var(--text-muted);
font-style: italic;
font-size: 0.9em;
}
.date-section-header {
display: flex;
align-items: center;
padding: 8px 15px;
cursor: pointer;
border-bottom: 1px solid var(--background-modifier-border);
background-color: var(--background-secondary-alt);
}
.date-section-header .section-toggle {
margin-right: 8px;
display: flex;
align-items: center;
justify-content: center;
}
.date-section-header .section-title {
flex: 1;
font-weight: bolder;
}
.date-section-header .section-count {
font-size: 0.8em;
color: var(--text-muted);
background-color: var(--background-modifier-border);
border-radius: 10px;
height: var(--size-4-5);
width: var(--size-4-5);
display: inline-flex;
align-items: center;
justify-content: center;
}
.task-date-section.overdue .date-section-header {
border-left: 3px solid var(--text-error);
}
.task-date-section.overdue .section-title {
color: var(--text-error);
}
.task-date-section.overdue .section-count {
background-color: var(--text-error);
color: white;
}
.section-tasks {
display: flex;
flex-direction: column;
}
.forecast-empty-state {
display: flex;
height: 100px;
align-items: center;
justify-content: center;
color: var(--text-muted);
font-style: italic;
}
.forecast-sidebar-toggle {
position: absolute;
}
.is-phone .forecast-header:has(.forecast-sidebar-toggle) .forecast-title-container {
padding-left: var(--size-4-10);
}
.is-phone .forecast-container {
position: relative;
overflow: hidden;
}
.is-phone .forecast-left-column {
position: absolute;
left: 0;
top: 0;
height: 100%;
z-index: 10;
background-color: var(--background-secondary);
width: 100%;
transform: translateX(-100%);
transition: transform 0.3s ease-in-out;
border-right: 1px solid var(--background-modifier-border);
}
.is-phone .forecast-left-column.is-visible {
transform: translateX(0);
}
.is-phone .forecast-sidebar-toggle {
display: flex;
align-items: center;
justify-content: center;
margin-right: 8px;
}
.is-phone .forecast-sidebar-close {
position: absolute;
top: 10px;
right: 10px;
z-index: 15;
width: 28px;
height: 28px;
display: flex;
align-items: center;
justify-content: center;
border-radius: 50%;
background-color: var(--background-primary);
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}
.is-phone .task-genius-container:has(.forecast-left-column.is-visible)::before {
content: "";
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background-color: var(--background-modifier-cover);
opacity: 0.5;
z-index: 5;
transition: opacity 0.3s ease-in-out;
}
/* src/styles/calendar.scss */
.task-genius-view .mini-calendar-container {
display: flex;
flex-direction: column;
width: 100%;
border-bottom: 1px solid var(--background-modifier-border);
padding-bottom: 10px;
}
.task-genius-view .mini-calendar-container .calendar-header {
display: flex;
justify-content: space-between;
align-items: center;
padding: 8px 15px;
margin-bottom: 8px;
}
.task-genius-view .mini-calendar-container .calendar-title {
font-weight: 600;
display: flex;
gap: 5px;
}
.task-genius-view .mini-calendar-container .calendar-month {
margin-right: 5px;
}
.task-genius-view .mini-calendar-container .calendar-year {
color: var(--text-muted);
}
.task-genius-view .mini-calendar-container .calendar-nav {
display: flex;
align-items: center;
gap: 8px;
}
.task-genius-view .mini-calendar-container .calendar-nav-btn {
display: flex;
align-items: center;
justify-content: center;
width: 24px;
height: 24px;
border-radius: 4px;
background-color: var(--background-modifier-hover);
cursor: pointer;
opacity: 0.7;
transition: opacity 0.2s ease;
}
.task-genius-view .mini-calendar-container .calendar-nav-btn:hover {
opacity: 1;
background-color: var(--background-modifier-border-hover);
}
.task-genius-view .mini-calendar-container .calendar-today-btn {
padding: 2px 8px;
border-radius: 4px;
background-color: var(--background-modifier-hover);
cursor: pointer;
font-size: 0.8em;
transition: background-color 0.2s ease;
}
.task-genius-view .mini-calendar-container .calendar-today-btn:hover {
background-color: var(--background-modifier-border-hover);
}
.task-genius-view .mini-calendar-container .calendar-grid {
display: grid;
grid-template-columns: repeat(7, 1fr);
gap: 1px;
padding: 0 10px;
}
.task-genius-view .mini-calendar-container .calendar-day-header {
text-align: center;
font-size: 0.8em;
color: var(--text-muted);
padding: 3px 0;
border-bottom: 1px solid var(--background-modifier-border);
margin-bottom: 3px;
}
.task-genius-view .mini-calendar-container .calendar-day-header.calendar-weekend {
color: var(--text-accent);
}
.task-genius-view .mini-calendar-container.hide-weekends .calendar-grid {
grid-template-columns: repeat(5, 1fr);
}
.task-genius-view .mini-calendar-container .calendar-day {
border-radius: 4px;
padding: 1px;
cursor: pointer;
position: relative;
display: flex;
flex-direction: column;
transition: background-color 0.2s ease;
height: auto;
min-height: var(--size-4-12);
}
.task-genius-view .mini-calendar-container .calendar-day:hover {
background-color: var(--background-modifier-hover);
}
.task-genius-view .mini-calendar-container .calendar-day.selected {
background-color: var(--background-modifier-border-hover);
}
.task-genius-view .mini-calendar-container .calendar-day.today {
background-color: var(--interactive-accent-hover);
color: var(--text-on-accent);
}
.task-genius-view .mini-calendar-container .calendar-day.past-due {
color: var(--text-error);
}
.task-genius-view .mini-calendar-container .calendar-day.other-month {
opacity: 0.5;
}
.task-genius-view .mini-calendar-container .calendar-day-number {
text-align: center;
font-size: 0.9em;
font-weight: 500;
padding: 1px;
}
.task-genius-view .mini-calendar-container .calendar-day-count {
background-color: var(--background-modifier-border);
color: var(--text-normal);
border-radius: 8px;
font-size: 0.7em;
padding: 1px 4px;
margin: 1px auto 0;
text-align: center;
width: fit-content;
}
.task-genius-view .mini-calendar-container .calendar-day-count.has-priority {
background-color: var(--text-accent);
color: var(--text-on-accent);
}
@media (max-width: 1400px) {
.task-genius-container:has(.task-details.visible) .mini-calendar-container .forecast-left-column {
display: none;
}
}
/* src/styles/table.scss */
.table-view-adapter {
width: 100%;
display: flex;
flex-direction: column;
gap: 0;
height: 100%;
overflow: hidden;
}
.task-table-container {
display: flex;
flex-direction: column;
height: 100%;
overflow: hidden;
position: relative;
background-color: var(--background-primary);
}
.task-table {
width: 100%;
border-collapse: collapse;
table-layout: fixed;
font-size: var(--font-ui-small);
flex: 1;
min-height: 0;
min-width: max-content;
}
.task-table-wrapper {
flex: 1;
overflow: auto;
min-height: 0;
position: relative;
overflow-x: auto;
overflow-y: auto;
scroll-behavior: smooth;
}
.task-table-header {
position: sticky;
top: 0;
z-index: 10;
background-color: var(--background-secondary);
border-bottom: 2px solid var(--background-modifier-border);
min-width: max-content;
}
.task-table-header-row {
height: 40px;
}
.task-table-header-cell {
padding: 8px 12px;
text-align: left;
font-weight: 600;
color: var(--text-muted);
border-right: 1px solid var(--background-modifier-border);
position: relative;
user-select: none;
background-color: var(--background-secondary);
white-space: nowrap;
}
.task-table-header-cell:last-child {
border-right: none;
}
.task-table-header-cell.sortable {
cursor: pointer;
}
.task-table-header-cell.sortable:hover {
background-color: var(--background-modifier-hover);
}
.task-table-header-content {
display: flex;
align-items: center;
justify-content: space-between;
gap: 4px;
}
.task-table-header-title {
flex: 1;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
.task-table-sort-icon {
font-size: 12px;
opacity: 0.5;
transition: opacity 0.2s;
display: flex;
align-items: center;
width: 16px;
height: 16px;
}
.task-table-sort-icon.asc,
.task-table-sort-icon.desc {
opacity: 1;
color: var(--text-accent);
}
.task-table-resize-handle {
position: absolute;
top: 0;
right: 0;
width: 4px;
height: 100%;
cursor: col-resize;
background-color: transparent;
transition: background-color 0.2s;
}
.task-table-resize-handle:hover {
background-color: var(--text-accent);
}
.task-table-body {
background-color: var(--background-primary);
}
.task-table-row {
height: 40px;
border-bottom: 1px solid var(--background-modifier-border);
transition: background-color 0.2s;
}
.task-table-row:hover {
background-color: var(--background-modifier-hover);
}
.task-table-row.selected {
background-color: var(--background-modifier-active-hover);
}
.task-table-row:nth-child(even) {
background-color: var(--background-secondary-alt);
}
.task-table-row:nth-child(even):hover {
background-color: var(--background-modifier-hover);
}
.task-table-row:nth-child(even).selected {
background-color: var(--background-modifier-active-hover);
}
.task-table-cell {
padding: 8px 12px;
vertical-align: middle;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
.task-table-cell:last-child {
border-right: none;
}
.task-table-cell.editing {
padding: 0;
}
.task-table-tree-indent {
display: inline-flex;
align-items: center;
gap: 4px;
}
.task-table-cell:has(.task-table-expand-btn) {
padding-left: 0;
}
.task-table-row.task-table-subtask {
background-color: var(--background-secondary);
}
.task-table-expand-btn {
cursor: pointer;
user-select: none;
width: 20px;
height: 20px;
padding: 0;
display: flex;
align-items: center;
justify-content: center;
border-radius: 2px;
font-size: 10px;
transition: background-color 0.2s;
}
.task-table-expand-btn:hover {
background-color: var(--background-modifier-hover);
}
.task-table-row-level-1 .task-table-cell:first-child {
padding-left: 32px;
}
.task-table-row-level-2 .task-table-cell:first-child {
padding-left: 52px;
}
.task-table-row-level-3 .task-table-cell:first-child {
padding-left: 72px;
}
.task-table-row-level-4 .task-table-cell:first-child {
padding-left: 92px;
}
.task-table-row-level-5 .task-table-cell:first-child {
padding-left: 112px;
}
.task-table-text {
color: var(--text-normal);
}
.task-table-number {
text-align: right;
color: var(--text-muted);
font-variant-numeric: tabular-nums;
}
.task-table-status {
display: flex;
align-items: center;
gap: 6px;
}
.task-table-status-icon {
font-size: 14px;
display: flex;
align-items: center;
width: 16px;
height: 16px;
}
.task-table-status-text {
flex: 1;
overflow: hidden;
text-overflow: ellipsis;
}
.task-table-status.completed .task-table-status-icon {
color: var(--text-success);
}
.task-table-status.in-progress .task-table-status-icon {
color: var(--text-warning);
}
.task-table-status.abandoned .task-table-status-icon {
color: var(--text-error);
}
.task-table-status.planned .task-table-status-icon {
color: var(--text-muted);
}
.task-table-status.not-started .task-table-status-icon {
color: var(--text-faint);
}
.task-table-priority {
display: flex;
align-items: center;
gap: 6px;
}
.task-table-priority.clickable-priority {
cursor: pointer;
padding: 4px;
border-radius: 4px;
transition: background-color 0.2s;
}
.task-table-priority.clickable-priority:hover {
background-color: var(--background-modifier-hover);
}
.task-table-priority-icon {
font-size: 14px;
display: flex;
align-items: center;
width: 16px;
height: 16px;
}
.task-table-priority-icon.high {
color: var(--text-error);
}
.task-table-priority-icon.medium {
color: var(--text-warning);
}
.task-table-priority-icon.low {
color: var(--text-muted);
}
.task-table-priority-text {
flex: 1;
overflow: hidden;
text-overflow: ellipsis;
}
.task-table-priority-empty {
color: var(--text-faint);
font-style: italic;
}
.task-table-date {
display: flex;
flex-direction: column;
gap: 2px;
cursor: pointer;
transition: background-color 0.2s;
padding: 4px;
border-radius: 4px;
}
.task-table-date:hover {
background-color: var(--background-modifier-hover);
}
.task-table-date-text {
font-size: var(--font-ui-small);
color: var(--text-normal);
}
.task-table-date-relative {
font-size: var(--font-ui-smaller);
font-weight: 500;
}
.task-table-date-relative.today {
color: var(--text-success);
}
.task-table-date-relative.tomorrow {
color: var(--text-accent);
}
.task-table-date-relative.yesterday {
color: var(--text-muted);
}
.task-table-date-relative.overdue {
color: var(--text-error);
}
.task-table-date-relative.upcoming {
color: var(--text-warning);
}
.task-table-date-empty {
color: var(--text-faint);
font-style: italic;
}
.task-table-tags {
display: flex;
flex-wrap: wrap;
gap: 4px;
align-items: center;
}
.task-table-tag-chip {
background-color: var(--background-modifier-accent);
color: var(--text-accent);
padding: 2px 6px;
border-radius: 8px;
font-size: var(--font-ui-smaller);
font-weight: 500;
white-space: nowrap;
}
.task-table-tags-empty {
color: var(--text-faint);
font-style: italic;
}
.task-table-text-input,
.task-table-tags-input {
border: none !important;
background: transparent !important;
outline: none !important;
width: 100% !important;
padding: 0 !important;
font: inherit !important;
color: var(--text-normal) !important;
}
.task-table-text-input:focus,
.task-table-tags-input:focus {
background-color: var(--background-modifier-form-field) !important;
border-radius: 3px !important;
padding: 2px 4px !important;
}
.task-count-icon {
font-size: 16px;
display: flex;
align-items: center;
width: 16px;
height: 16px;
}
.task-table-empty-row {
height: 80px;
}
.task-table-empty-cell {
text-align: center;
color: var(--text-muted);
font-style: italic;
vertical-align: middle;
}
.task-table-loading {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
padding: 20px;
background-color: var(--background-primary);
border: 1px solid var(--background-modifier-border);
border-radius: 8px;
color: var(--text-muted);
font-size: var(--font-ui-small);
z-index: 100;
}
.task-table.resizing {
user-select: none;
}
.task-table.resizing * {
cursor: col-resize !important;
}
.virtual-scroll-spacer {
pointer-events: none;
visibility: hidden;
}
@media (max-width: 768px) {
.task-table-container {
font-size: var(--font-ui-smaller);
}
.task-table-wrapper {
overflow-x: auto;
}
.task-table {
min-width: 800px;
}
.task-table-header-cell,
.task-table-cell {
padding: 6px 8px;
}
.task-table-row {
height: 36px;
}
.task-table-header-row {
height: 36px;
}
}
.theme-dark .task-table-container {
border-color: var(--background-modifier-border);
}
.theme-dark .task-table-row:nth-child(even) {
background-color: var(--background-primary-alt);
}
@media (prefers-contrast: high) {
.task-table-container {
border-width: 2px;
}
.task-table-header-cell,
.task-table-cell {
border-width: 1px;
}
.task-table-row {
border-bottom-width: 1px;
}
}
@media print {
.task-table-container {
border: none;
overflow: visible;
height: auto;
}
.task-table-header {
position: static;
}
.task-table-resize-handle {
display: none;
}
.task-table-expand-btn {
display: none;
}
}
.virtual-scroll-spacer-top {
pointer-events: none;
}
.virtual-scroll-spacer-top td {
padding: 0 !important;
border: none !important;
background: transparent !important;
}
.task-table-context-menu {
background: var(--background-primary);
border: 1px solid var(--background-modifier-border);
border-radius: 4px;
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
z-index: 1000;
min-width: 120px;
}
.task-table-context-menu-item {
padding: 6px 12px;
cursor: pointer;
transition: background-color 0.1s ease;
}
.task-table-context-menu-item:hover {
background-color: var(--background-modifier-hover);
}
.task-table-date-input {
cursor: pointer;
background: var(--background-primary);
border: 1px solid var(--background-modifier-border);
border-radius: 3px;
padding: 4px 8px;
width: 100%;
}
.task-table-date-input:hover {
border-color: var(--background-modifier-border-hover);
}
.task-table-date-input:focus {
border-color: var(--interactive-accent);
outline: none;
}
.task-table-project-input,
.task-table-context-input,
.task-table-tags-input {
background: var(--background-primary);
border: 1px solid var(--background-modifier-border);
border-radius: 3px;
padding: 4px 8px;
width: 100%;
}
.task-table-project-input:focus,
.task-table-context-input:focus,
.task-table-tags-input:focus {
border-color: var(--interactive-accent);
outline: none;
}
.task-table-row.selected {
background-color: var(--background-modifier-hover);
}
.task-table-row:hover {
background-color: var(--background-modifier-hover-weak);
}
@media (max-width: 768px) {
.task-table {
font-size: 0.9em;
}
th[data-column-id=rowNumber] {
max-width: 40px !important;
min-width: 40px !important;
width: 40px !important;
}
.task-table-tree-container {
gap: 0 !important;
}
.task-table-expand-btn {
margin-right: 0 !important;
}
td[data-column-id=rowNumber] {
max-width: 40px !important;
min-width: 40px !important;
width: 40px !important;
}
.task-table-header-cell,
.task-table-cell {
padding: 6px 4px;
}
}
.task-table-header-bar {
display: flex;
justify-content: space-between;
align-items: center;
padding: 6px 8px;
background-color: var(--background-secondary);
border-bottom: 1px solid var(--background-modifier-border);
border-radius: 6px 6px 0 0;
margin-bottom: 0;
flex-shrink: 0;
min-height: 40px;
}
.table-header-left {
display: flex;
align-items: center;
gap: 12px;
}
.table-header-right {
display: flex;
align-items: center;
gap: 8px;
}
.task-count-container {
display: flex;
align-items: center;
gap: 8px;
padding: 6px 12px;
background-color: var(--background-primary);
border-radius: 4px;
border: 1px solid var(--background-modifier-border);
}
.task-count-text {
font-size: var(--font-ui-small);
font-weight: 500;
color: var(--text-normal);
}
.table-controls-container {
display: flex;
align-items: center;
gap: 8px;
}
.table-control-btn {
display: flex;
align-items: center;
gap: 6px;
padding: 8px 12px;
background-color: var(--background-primary);
border: 1px solid var(--background-modifier-border);
border-radius: 4px;
cursor: pointer;
font-size: var(--font-ui-small);
color: var(--text-normal);
transition: all 0.2s ease;
box-shadow: unset !important;
}
.table-control-btn:hover {
background-color: var(--background-modifier-hover);
}
.table-control-btn:active {
background-color: var(--background-modifier-active);
}
.tree-mode-btn.active {
background-color: var(--text-accent);
color: var(--text-on-accent);
border-color: var(--text-accent);
}
.tree-mode-icon,
.refresh-icon,
.column-icon {
font-size: 14px;
display: flex;
align-items: center;
justify-content: center;
}
.tree-mode-text,
.refresh-text,
.column-text {
font-weight: 500;
}
.dropdown-arrow {
font-size: 10px;
transition: transform 0.2s ease;
}
.column-dropdown {
position: relative;
}
.column-dropdown-menu {
position: absolute;
top: 100%;
right: 0;
margin-top: 4px;
background-color: var(--background-primary);
border: 1px solid var(--background-modifier-border);
border-radius: 4px;
box-shadow: var(--shadow-l);
z-index: 1000;
min-width: 200px;
max-height: 300px;
overflow-y: auto;
}
.column-toggle-item {
display: flex;
align-items: center;
gap: 8px;
padding: 8px 12px;
cursor: pointer;
transition: background-color 0.2s ease;
}
.column-toggle-item:hover {
background-color: var(--background-modifier-hover);
}
.column-toggle-checkbox {
margin: 0;
cursor: pointer;
}
.column-toggle-label {
flex: 1;
font-size: var(--font-ui-small);
color: var(--text-normal);
cursor: pointer;
margin: 0;
}
@media (max-width: 768px) {
.task-table-header-bar {
flex-direction: column;
gap: 12px;
align-items: stretch;
}
.table-header-left {
display: none;
}
.table-header-left,
.table-header-right {
justify-content: center;
}
.table-controls-container {
justify-content: center;
flex-wrap: wrap;
}
.table-control-btn {
flex: 1;
min-width: 100px;
justify-content: center;
}
.column-dropdown-menu {
right: auto;
left: 0;
width: 100%;
}
}
.theme-dark .task-table-header-bar {
background-color: var(--background-secondary-alt);
}
.theme-dark .column-dropdown-menu {
background-color: var(--background-primary-alt);
border-color: var(--background-modifier-border-hover);
}
.custom-suggest-dropdown {
background-color: var(--background-primary);
border: 1px solid var(--background-modifier-border);
border-radius: 4px;
box-shadow: var(--shadow-l);
z-index: 1000;
position: absolute;
max-height: 200px;
overflow-y: auto;
min-width: 150px;
}
.custom-suggest-dropdown .suggestion-item {
padding: 8px 12px;
cursor: pointer;
border-bottom: 1px solid var(--background-modifier-border);
transition: background-color 0.2s;
font-size: var(--font-ui-small);
color: var(--text-normal);
}
.custom-suggest-dropdown .suggestion-item:last-child {
border-bottom: none;
}
.custom-suggest-dropdown .suggestion-item:hover,
.custom-suggest-dropdown .suggestion-item.selected {
background-color: var(--background-modifier-hover);
}
.custom-suggest-dropdown .suggestion-item.selected {
color: var(--text-accent);
}
.task-table-subtask {
border-left: 2px solid var(--background-modifier-border-hover);
}
.task-table-parent .task-table-cell:first-child {
font-weight: 500;
}
.task-table-subtask-cell {
border-left: 1px solid var(--background-modifier-border-focus);
}
.task-table-tree-container {
display: flex;
align-items: center;
gap: 6px;
width: 100%;
}
.task-table-tree-structure {
display: flex;
align-items: center;
gap: 2px;
flex-shrink: 0;
}
.task-table-tree-line {
font-family: monospace;
font-size: 12px;
color: var(--text-faint);
line-height: 1;
width: 16px;
text-align: center;
}
.task-table-tree-connector {
color: var(--text-muted);
}
.task-table-tree-vertical {
color: var(--text-faint);
}
.task-table-subtask-indicator {
font-size: 10px;
color: var(--text-accent);
margin-right: 6px;
margin-left: 4px;
flex-shrink: 0;
font-weight: bold;
}
.task-table-top-level-expand {
margin-right: 6px;
}
.task-table-content-wrapper {
flex: 1;
min-width: 0;
}
.task-table-child-indicator {
font-size: 10px;
color: var(--text-muted);
margin-left: 6px;
flex-shrink: 0;
}
.task-table-status.clickable-status {
cursor: pointer;
padding: 4px;
border-radius: 4px;
transition: background-color 0.2s;
}
.task-table-status.clickable-status:hover {
background-color: var(--background-modifier-hover);
}
.task-table-priority-icon.highest {
color: var(--text-error);
filter: brightness(1.2);
}
.task-table-priority-icon.lowest {
color: var(--text-faint);
}
.task-table-expand-btn.clickable-icon {
opacity: 0.7;
transition: opacity 0.2s, background-color 0.2s;
}
.task-table-expand-btn.clickable-icon:hover {
opacity: 1;
}
.task-table-row-level-1 .task-table-cell:first-child,
.task-table-row-level-2 .task-table-cell:first-child,
.task-table-row-level-3 .task-table-cell:first-child,
.task-table-row-level-4 .task-table-cell:first-child,
.task-table-row-level-5 .task-table-cell:first-child {
padding-left: 12px;
}
/* src/styles/quadrant/quadrant.scss */
.tg-quadrant-component-container {
height: 100%;
display: flex;
flex-direction: column;
overflow: hidden;
background: var(--background-primary);
width: 100%;
}
.tg-quadrant-header {
display: flex;
align-items: center;
justify-content: space-between;
padding: var(--size-4-3) var(--size-4-4);
background: var(--background-primary);
flex-shrink: 0;
}
.tg-quadrant-title {
font-size: var(--font-ui-medium);
font-weight: var(--font-semibold);
color: var(--text-normal);
margin: 0;
}
.tg-quadrant-controls {
display: flex;
align-items: center;
gap: var(--size-2-3);
}
.tg-quadrant-sort-select {
padding: var(--size-2-2) var(--size-2-3);
border: 1px solid var(--background-modifier-border);
border-radius: var(--radius-s);
background: var(--background-primary);
color: var(--text-normal);
font-size: var(--font-ui-small);
cursor: pointer;
transition: border-color 0.2s ease;
}
.tg-quadrant-sort-select:hover {
border-color: var(--background-modifier-border-hover);
}
.tg-quadrant-sort-select:focus {
border-color: var(--color-accent);
outline: none;
}
.tg-quadrant-toggle-empty {
padding: var(--size-2-2);
border: 1px solid var(--background-modifier-border);
border-radius: var(--radius-s);
background: var(--background-primary);
color: var(--text-muted);
cursor: pointer;
transition: all 0.2s ease;
width: 28px;
height: 28px;
display: flex;
align-items: center;
justify-content: center;
}
.tg-quadrant-toggle-empty:hover {
background: var(--background-modifier-hover);
color: var(--text-normal);
border-color: var(--background-modifier-border-hover);
}
.tg-quadrant-filter-container {
flex-shrink: 0;
border-bottom: 1px solid var(--background-modifier-border);
}
.tg-quadrant-grid {
display: grid;
grid-template-columns: 1fr 1fr;
grid-template-rows: 1fr 1fr;
gap: 1px;
flex: 1;
background: var(--background-modifier-border);
overflow: hidden;
}
.tg-quadrant-column {
display: flex;
flex-direction: column;
background: var(--background-primary);
min-height: 0;
overflow: hidden;
position: relative;
}
.tg-quadrant-column--hidden {
display: none;
}
.tg-quadrant-column .tg-quadrant-header {
padding: var(--size-4-2) var(--size-4-3);
background: var(--background-secondary);
border-bottom: 1px solid var(--background-modifier-border);
flex-shrink: 0;
position: relative;
min-height: var(--size-4-12);
}
.tg-quadrant-title-container {
display: flex;
align-items: center;
gap: var(--size-2-2);
margin-bottom: var(--size-2-1);
}
.tg-quadrant-priority {
font-size: var(--font-ui-medium);
line-height: 1;
opacity: 0.8;
}
.tg-quadrant-column .tg-quadrant-title {
font-size: var(--font-ui-small);
font-weight: var(--font-semibold);
color: var(--text-normal);
margin: 0;
}
.tg-quadrant-description {
font-size: var(--font-ui-smaller);
color: var(--text-muted);
margin-bottom: var(--size-2-2);
line-height: 1.3;
}
.tg-quadrant-count {
font-size: var(--font-ui-smaller);
color: var(--text-faint);
background: var(--background-modifier-border);
padding: var(--size-2-1) var(--size-2-2);
border-radius: var(--radius-s);
font-weight: var(--font-medium);
}
.tg-quadrant-column-content {
flex: 1;
overflow-y: auto;
padding: var(--size-2-3);
min-height: 100px;
}
.tg-quadrant-column-content::-webkit-scrollbar {
width: 8px;
}
.tg-quadrant-column-content::-webkit-scrollbar-track {
background: transparent;
}
.tg-quadrant-column-content::-webkit-scrollbar-thumb {
background: var(--background-modifier-border);
border-radius: var(--radius-s);
}
.tg-quadrant-column-content::-webkit-scrollbar-thumb:hover {
background: var(--background-modifier-border-hover);
}
.tg-quadrant-column-content--drop-active {
background: var(--background-modifier-hover);
border: 2px dashed var(--color-accent);
border-radius: var(--radius-m);
}
.quadrant-urgent-important .tg-quadrant-header::before {
content: "";
position: absolute;
top: 0;
left: 0;
right: 0;
height: 3px;
background: var(--text-error);
opacity: 0.6;
}
.quadrant-not-urgent-important .tg-quadrant-header::before {
content: "";
position: absolute;
top: 0;
left: 0;
right: 0;
height: 3px;
background: var(--color-accent);
opacity: 0.6;
}
.quadrant-urgent-not-important .tg-quadrant-header::before {
content: "";
position: absolute;
top: 0;
left: 0;
right: 0;
height: 3px;
background: var(--text-warning);
opacity: 0.6;
}
.quadrant-not-urgent-not-important .tg-quadrant-header::before {
content: "";
position: absolute;
top: 0;
left: 0;
right: 0;
height: 3px;
background: var(--text-muted);
opacity: 0.4;
}
.tg-quadrant-card {
background: var(--background-primary);
border: 1px solid var(--background-modifier-border);
border-radius: var(--radius-s);
margin-bottom: var(--size-2-3);
padding: var(--size-4-2);
cursor: pointer;
transition: all 0.15s ease;
position: relative;
}
.tg-quadrant-card:hover {
background: var(--background-modifier-hover);
border-color: var(--background-modifier-border-hover);
transform: translateY(-1px);
box-shadow: var(--shadow-s);
}
.tg-quadrant-card:active {
transform: translateY(0);
}
.tg-quadrant-card:last-child {
margin-bottom: 0;
}
.tg-quadrant-card-header {
display: flex;
align-items: flex-start;
justify-content: space-between;
margin-bottom: var(--size-2-2);
gap: var(--size-2-2);
}
.tg-quadrant-card-checkbox {
flex-shrink: 0;
margin-top: 2px;
}
.tg-quadrant-card-actions {
flex-shrink: 0;
opacity: 0;
transition: opacity 0.2s ease;
}
.tg-quadrant-card:hover .tg-quadrant-card-actions {
opacity: 1;
}
.tg-quadrant-card-more-btn {
background: none;
border: none;
padding: var(--size-2-1);
border-radius: var(--radius-s);
color: var(--text-muted);
cursor: pointer;
transition: all 0.2s ease;
width: 24px;
height: 24px;
display: flex;
align-items: center;
justify-content: center;
}
.tg-quadrant-card-more-btn:hover {
background: var(--background-modifier-hover);
color: var(--text-normal);
}
.tg-quadrant-card-content {
margin-bottom: var(--size-2-2);
}
.tg-quadrant-card-title {
font-size: var(--font-ui-small);
line-height: 1.4;
color: var(--text-normal);
margin-bottom: var(--size-2-1);
word-wrap: break-word;
font-weight: var(--font-normal);
}
.tg-quadrant-card-priority {
font-size: var(--font-ui-small);
margin-left: var(--size-2-1);
opacity: 0.8;
}
.tg-quadrant-card-tags {
display: flex;
flex-wrap: wrap;
gap: var(--size-2-1);
margin-top: var(--size-2-2);
}
.tg-quadrant-card-tag {
background: var(--background-modifier-border);
color: var(--text-muted);
padding: var(--size-2-1) var(--size-2-2);
border-radius: var(--radius-s);
font-size: var(--font-ui-smaller);
font-weight: var(--font-medium);
border: 1px solid transparent;
transition: all 0.2s ease;
}
.tg-quadrant-card-tag:hover {
background: var(--background-modifier-hover);
color: var(--text-normal);
}
.tg-quadrant-tag--urgent {
background: var(--background-modifier-error);
color: var(--text-error);
border-color: var(--text-error);
}
.tg-quadrant-tag--important {
background: var(--background-modifier-accent);
color: var(--text-accent);
border-color: var(--color-accent);
}
.tg-quadrant-card-metadata {
display: flex;
align-items: center;
justify-content: space-between;
font-size: var(--font-ui-smaller);
color: var(--text-faint);
gap: var(--size-2-2);
}
.tg-quadrant-card-due-date {
display: flex;
align-items: center;
gap: var(--size-2-1);
background: var(--background-modifier-border);
padding: var(--size-2-1) var(--size-2-2);
border-radius: var(--radius-s);
font-weight: var(--font-medium);
}
.tg-quadrant-card-due-date-icon {
width: 12px;
height: 12px;
opacity: 0.7;
}
.tg-quadrant-card-due-date--urgent {
color: var(--text-warning);
}
.tg-quadrant-card-due-date--overdue {
color: var(--text-error);
}
.tg-quadrant-card-file-info {
display: flex;
align-items: center;
justify-content: space-between;
gap: var(--size-4-2);
opacity: 0.7;
transition: opacity 0.2s ease;
}
.tg-quadrant-card:hover .tg-quadrant-card-file-info {
opacity: 1;
}
.tg-quadrant-card-file-icon {
width: 12px;
height: 12px;
}
.tg-quadrant-card-file-name {
font-size: var(--font-ui-smaller);
max-width: 120px;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
.tg-quadrant-card-line {
color: var(--text-faint);
font-size: var(--font-ui-smaller);
opacity: 0.6;
font-weight: var(--font-medium);
}
.tg-quadrant-card--priority-highest {
border-left: 3px solid var(--text-error);
}
.tg-quadrant-card--priority-high {
border-left: 3px solid var(--text-warning);
}
.tg-quadrant-card--priority-medium {
border-left: 3px solid var(--color-accent);
}
.tg-quadrant-card--priority-low {
border-left: 3px solid var(--text-success);
}
.tg-quadrant-card--priority-lowest {
border-left: 3px solid var(--text-muted);
}
.tg-quadrant-card--ghost {
opacity: 0.4;
background: var(--background-modifier-border);
border: 2px dashed var(--color-accent);
}
.tg-quadrant-card--dragging {
box-shadow: var(--shadow-l);
}
.tg-quadrant-card--chosen {
background: var(--background-modifier-hover);
border-color: var(--color-accent);
box-shadow: var(--shadow-s);
}
.tg-quadrant-card--drag {
box-shadow: var(--shadow-l);
z-index: 1000;
border-color: var(--color-accent);
}
.tg-quadrant-empty-state {
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
height: 120px;
color: var(--text-faint);
text-align: center;
padding: var(--size-4-4);
opacity: 0.8;
}
.tg-quadrant-empty-icon {
width: 32px;
height: 32px;
margin-bottom: var(--size-2-3);
opacity: 0.5;
color: var(--text-faint);
}
.tg-quadrant-empty-message {
font-size: var(--font-ui-small);
line-height: 1.4;
font-weight: var(--font-medium);
}
@media (max-width: 768px) {
.tg-quadrant-grid {
grid-template-columns: 1fr;
grid-template-rows: repeat(4, 1fr);
}
.tg-quadrant-header {
padding: var(--size-2-3) var(--size-4-2);
}
.tg-quadrant-column .tg-quadrant-header {
padding: var(--size-2-3) var(--size-4-2);
}
.tg-quadrant-card {
padding: var(--size-2-3);
}
.tg-quadrant-card-title {
font-size: var(--font-ui-smaller);
}
.tg-quadrant-controls {
gap: var(--size-2-2);
}
}
.tg-quadrant-card:focus {
outline: 2px solid var(--color-accent);
outline-offset: 2px;
}
.tg-quadrant-card-more-btn:focus {
outline: 2px solid var(--color-accent);
outline-offset: 2px;
}
@keyframes cardComplete {
0% {
transform: scale(1);
}
50% {
transform: scale(1.05);
}
100% {
transform: scale(1);
}
}
.tg-quadrant-card--completed {
animation: cardComplete 0.3s ease-in-out;
}
.tg-quadrant-card:hover .tg-quadrant-card-title {
color: var(--text-normal);
}
.tg-quadrant-card:hover .tg-quadrant-card-priority {
opacity: 1;
}
.tg-quadrant-card-content {
position: relative;
}
.tg-quadrant-loading {
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
padding: 2rem;
color: var(--text-muted);
min-height: 100px;
}
.tg-quadrant-loading-spinner {
margin-bottom: 1rem;
}
.tg-quadrant-spinner {
width: 24px;
height: 24px;
color: var(--color-accent);
}
.tg-quadrant-loading-message {
font-size: 0.9rem;
opacity: 0.7;
}
.tg-quadrant-dragging {
cursor: grabbing !important;
}
.tg-quadrant-dragging * {
pointer-events: none;
}
.tg-quadrant-card--ghost {
opacity: 0.4;
background: var(--background-modifier-border);
border: 2px dashed var(--color-accent);
}
.tg-quadrant-card--chosen {
box-shadow: 0 8px 25px rgba(0, 0, 0, 0.15);
transform: scale(1.02);
z-index: 1000;
background: var(--background-primary);
border: 2px solid var(--color-accent);
}
.tg-quadrant-card--drag {
opacity: 0.8;
box-shadow: 0 12px 30px rgba(0, 0, 0, 0.2);
}
.tg-quadrant-card--fallback {
opacity: 0.9;
background: var(--background-primary);
border: 2px solid var(--color-accent);
border-radius: var(--radius-m);
box-shadow: 0 8px 25px rgba(0, 0, 0, 0.15);
}
.tg-quadrant-column--drag-target {
background: var(--background-modifier-hover);
border: 2px dashed var(--color-accent);
border-radius: var(--radius-m);
}
.tg-quadrant-column-content--drop-active {
background: var(--background-modifier-active-hover);
border: 2px dashed var(--color-accent);
border-radius: var(--radius-s);
min-height: 60px;
position: relative;
}
.tg-quadrant-column-content--drop-active::before {
content: "Drop task here";
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
color: var(--color-accent);
font-size: 0.9rem;
font-weight: 500;
opacity: 0.7;
pointer-events: none;
z-index: 1;
}
.tg-quadrant-update-feedback {
position: fixed;
top: 20px;
right: 20px;
z-index: 10000;
opacity: 0;
transform: translateX(100%);
transition: all 0.3s ease;
pointer-events: none;
}
.tg-quadrant-feedback--show {
opacity: 1;
transform: translateX(0);
}
.tg-quadrant-feedback--hide {
opacity: 0;
transform: translateX(100%);
}
.tg-quadrant-feedback-content {
display: flex;
align-items: center;
gap: 0.5rem;
padding: 0.75rem 1rem;
background: var(--background-primary);
border: 1px solid var(--background-modifier-border);
border-radius: var(--radius-m);
box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
min-width: 200px;
}
.tg-quadrant-feedback--error .tg-quadrant-feedback-content {
background: var(--background-modifier-error);
border-color: var(--text-error);
color: var(--text-error);
}
.tg-quadrant-feedback-icon {
font-size: 1.2rem;
flex-shrink: 0;
}
.tg-quadrant-feedback-text {
font-size: 0.9rem;
font-weight: 500;
}
.tg-quadrant-card {
transition: all 0.2s ease;
cursor: grab;
}
.tg-quadrant-card:hover {
transform: translateY(-2px);
box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
}
.tg-quadrant-card:active {
cursor: grabbing;
}
.tg-quadrant-empty-state {
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
padding: 2rem 1rem;
text-align: center;
color: var(--text-muted);
min-height: 120px;
border: 2px dashed var(--background-modifier-border);
border-radius: var(--radius-m);
margin: 0.5rem 0;
}
.tg-quadrant-empty-icon {
margin-bottom: 0.75rem;
opacity: 0.5;
}
.tg-quadrant-empty-message {
font-size: 0.9rem;
line-height: 1.4;
max-width: 200px;
}
@keyframes spin {
0% {
transform: rotate(0deg);
}
100% {
transform: rotate(360deg);
}
}
.tg-quadrant-spinner circle {
animation: spin 2s linear infinite;
transform-origin: center;
}
@media (max-width: 768px) {
.tg-quadrant-update-feedback {
top: 10px;
right: 10px;
left: 10px;
transform: translateY(-100%);
}
.tg-quadrant-feedback--show {
transform: translateY(0);
}
.tg-quadrant-feedback--hide {
transform: translateY(-100%);
}
.tg-quadrant-feedback-content {
min-width: auto;
width: 100%;
}
}
.theme-dark .tg-quadrant-card--chosen {
background: var(--background-primary-alt);
box-shadow: 0 8px 25px rgba(0, 0, 0, 0.3);
}
.theme-dark .tg-quadrant-card--fallback {
background: var(--background-primary-alt);
box-shadow: 0 8px 25px rgba(0, 0, 0, 0.3);
}
.theme-dark .tg-quadrant-feedback-content {
box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);
}
@media (prefers-reduced-motion: reduce) {
.tg-quadrant-card,
.tg-quadrant-update-feedback,
.tg-quadrant-card--chosen,
.tg-quadrant-card--drag {
transition: none;
animation: none;
}
.tg-quadrant-spinner circle {
animation: none;
}
}
.tg-quadrant-scroll-container {
flex: 1;
overflow-y: auto;
overflow-x: hidden;
max-height: 70vh;
scrollbar-width: thin;
scrollbar-color: var(--background-modifier-border) transparent;
}
.tg-quadrant-scroll-container::-webkit-scrollbar {
width: 6px;
}
.tg-quadrant-scroll-container::-webkit-scrollbar-track {
background: transparent;
}
.tg-quadrant-scroll-container::-webkit-scrollbar-thumb {
background: var(--background-modifier-border);
border-radius: 3px;
}
.tg-quadrant-scroll-container::-webkit-scrollbar-thumb:hover {
background: var(--background-modifier-border-hover);
}
.tg-quadrant-load-more {
display: none;
flex-direction: column;
align-items: center;
justify-content: center;
padding: 1rem;
color: var(--text-muted);
border-top: 1px solid var(--background-modifier-border);
margin-top: 0.5rem;
}
.tg-quadrant-load-more--visible {
display: flex;
}
.tg-quadrant-load-more-spinner {
margin-bottom: 0.5rem;
width: 24px;
height: 24px;
color: var(--interactive-accent);
}
.tg-quadrant-load-more-spinner svg {
animation: spin 1s linear infinite;
}
.tg-quadrant-load-more-message {
font-size: 0.8rem;
opacity: 0.7;
}
.tg-quadrant-column {
display: flex;
flex-direction: column;
height: 100%;
min-height: 400px;
max-height: 80vh;
}
.tg-quadrant-column-content {
flex: 1;
display: flex;
flex-direction: column;
gap: 0.5rem;
padding: 0.5rem;
}
.tg-quadrant-scroll-container {
scroll-behavior: smooth;
}
.tg-quadrant-column.loading-more .tg-quadrant-load-more {
opacity: 1;
pointer-events: none;
}
.tg-quadrant-load-more {
min-height: 40px;
transition: opacity 0.2s ease;
}
.tg-quadrant-column-content:empty::before {
content: "";
display: block;
min-height: 100px;
}
.tg-quadrant-grid {
display: grid;
grid-template-columns: repeat(2, 1fr);
height: calc(100vh - 200px);
min-height: 400px;
}
@media (max-width: 1200px) {
.tg-quadrant-scroll-container {
max-height: 60vh;
}
.tg-quadrant-column {
max-height: 70vh;
}
}
@media (max-width: 768px) {
.tg-quadrant-scroll-container {
max-height: 50vh;
}
.tg-quadrant-column {
max-height: 60vh;
min-height: 300px;
}
.tg-quadrant-grid {
grid-template-columns: 1fr;
height: auto;
}
}
.tg-quadrant-column-content {
contain: layout style;
will-change: contents;
}
.tg-quadrant-card {
contain: layout style paint;
}
.tg-quadrant-scroll-container.has-scroll::before {
content: "";
position: sticky;
top: 0;
height: 1px;
background:
linear-gradient(
to bottom,
var(--background-primary),
transparent);
z-index: 1;
}
.tg-quadrant-scroll-container.has-scroll::after {
content: "";
position: sticky;
bottom: 0;
height: 1px;
background:
linear-gradient(
to top,
var(--background-primary),
transparent);
z-index: 1;
}
/* src/styles/task-timer.scss */
.task-timer-widget {
display: block;
margin: 4px 0;
padding: 2px 0;
font-size: 0.9em;
color: var(--text-muted);
line-height: 1.4;
}
.task-timer-start,
.task-timer-action {
cursor: pointer;
text-decoration: underline;
color: var(--text-accent);
}
.task-timer-start:hover,
.task-timer-action:hover {
color: var(--text-accent-hover);
}
/* src/styles/setting.scss */
.experimental-settings-section {
margin: 20px 0;
}
.experimental-section-heading {
margin: 20px 0 10px 0;
color: var(--text-normal);
}
.experimental-subsection-heading {
margin: 15px 0 8px 0;
color: var(--text-muted);
font-size: 0.9em;
}
.experimental-warning {
background: var(--background-modifier-error);
color: var(--text-on-accent);
padding: 12px;
border-radius: 6px;
margin: 10px 0 20px 0;
border-left: 4px solid var(--color-red);
}
.experimental-dataflow-section {
margin: 15px 0;
padding: 15px;
border: 1px solid var(--background-modifier-border);
border-radius: 8px;
}
.experimental-info {
color: var(--text-muted);
font-size: 0.85em;
margin-top: 8px;
line-height: 1.4;
}
.experimental-restart-notice {
background: var(--background-modifier-form-field);
color: var(--text-muted);
padding: 8px;
border-radius: 4px;
margin-top: 10px;
font-size: 0.85em;
}
.task-states-container {
margin: 10px 0;
border: 1px solid var(--background-modifier-border);
border-radius: 5px;
padding: 10px;
}
.task-state-row {
margin-bottom: 8px;
}
.task-state-row .setting-item {
border: none;
padding: 6px;
border-radius: 4px;
}
.task-state-row .setting-item-info {
margin-right: 10px;
}
.task-state-row .setting-item-control {
display: flex;
align-items: center;
justify-content: flex-end;
flex-wrap: nowrap;
}
.task-state-row .setting-item-control input[type=text] {
margin-right: 8px;
}
.task-state-row .extra-setting-button {
padding: 4px;
width: 24px;
height: 24px;
border-radius: 4px;
margin-left: 4px;
display: flex;
align-items: center;
justify-content: center;
}
.task-state-row .setting-item-control button {
white-space: nowrap;
}
.task-state-container {
margin-inline-start: calc(var(--checkbox-size) * -1);
}
.task-state-container .task-state {
padding-inline-start: var(--size-2-1);
padding-inline-end: var(--size-2-2);
text-decoration: none !important;
cursor: pointer;
}
.experimental-settings-section {
margin: 20px 0;
}
.experimental-section-heading {
margin: 20px 0 10px 0;
color: var(--text-normal);
}
.experimental-subsection-heading {
margin: 15px 0 8px 0;
color: var(--text-muted);
font-size: 0.9em;
}
.experimental-warning {
background: var(--background-modifier-error);
color: var(--text-on-accent);
padding: 12px;
border-radius: 6px;
margin: 10px 0 20px 0;
border-left: 4px solid var(--color-red);
}
.experimental-dataflow-section {
margin: 15px 0;
padding: 15px;
border: 1px solid var(--background-modifier-border);
border-radius: 8px;
}
.experimental-info {
color: var(--text-muted);
font-size: 0.85em;
margin-top: 8px;
line-height: 1.4;
}
.experimental-restart-notice {
background: var(--background-modifier-form-field);
color: var(--text-muted);
padding: 8px;
border-radius: 4px;
margin-top: 10px;
font-size: 0.85em;
}
.task-states-container {
margin: 10px 0;
border: 1px solid var(--background-modifier-border);
border-radius: 5px;
padding: 10px;
}
.task-state-row {
margin-bottom: 8px;
}
.task-state-row .setting-item {
border: none;
padding: 6px;
border-radius: 4px;
}
.task-state-row .setting-item-info {
margin-right: 10px;
}
.task-state-row .setting-item-control {
display: flex;
align-items: center;
justify-content: flex-end;
flex-wrap: nowrap;
}
.task-state-row .setting-item-control input[type=text] {
margin-right: 8px;
}
.task-state-row .extra-setting-button {
padding: 4px;
width: 24px;
height: 24px;
border-radius: 4px;
margin-left: 4px;
display: flex;
align-items: center;
justify-content: center;
}
.task-state-row .setting-item-control button {
white-space: nowrap;
}
.task-state-container {
margin-inline-start: calc(var(--checkbox-size) * -1);
}
.task-state-container .task-state {
padding-inline-start: var(--size-2-1);
padding-inline-end: var(--size-2-2);
text-decoration: none !important;
cursor: pointer;
}
.task-genius-settings .settings-tabs-categorized-container {
margin-top: var(--size-4-4);
margin-bottom: var(--size-4-4);
display: flex;
flex-direction: column;
gap: var(--size-4-6);
}
.task-genius-settings .settings-category-section {
display: flex;
flex-direction: column;
gap: var(--size-4-2);
}
.task-genius-settings .settings-category-header {
font-size: var(--font-ui-small);
font-weight: var(--font-weight-semibold);
color: var(--text-muted);
text-transform: uppercase;
letter-spacing: 0.05em;
padding: 0 var(--size-4-2);
border-bottom: 1px solid var(--background-modifier-border);
padding-bottom: var(--size-4-1);
}
.task-genius-settings .settings-category-tabs {
display: grid;
grid-template-columns: repeat(3, minmax(200px, 1fr));
gap: var(--size-4-2);
}
@media (max-width: 1200px) {
.task-genius-settings .settings-category-tabs {
grid-template-columns: repeat(2, minmax(200px, 1fr));
}
}
@media (max-width: 768px) {
.task-genius-settings .settings-category-tabs {
grid-template-columns: 1fr;
}
}
.task-genius-settings .settings-tabs-container {
display: grid;
grid-template-columns: repeat(2, 1fr);
grid-auto-rows: var(--size-4-18);
margin-top: var(--size-4-4);
margin-bottom: var(--size-4-4);
height: fit-content;
gap: var(--size-4-4);
}
@media (max-width: 768px) {
.task-genius-settings .settings-tabs-container {
grid-template-columns: repeat(1, 1fr);
}
}
.task-genius-settings .settings-tab {
padding: var(--size-4-3) var(--size-4-4);
border-radius: var(--radius-m);
cursor: pointer;
display: flex;
align-items: center;
gap: var(--size-4-2);
min-height: var(--size-4-12);
border: 1px solid var(--background-modifier-border);
background: var(--background-primary);
position: relative;
overflow: hidden;
transition: all 0.2s ease;
}
.task-genius-settings .settings-tab::after {
content: "";
position: absolute;
top: 10px;
right: -80px;
width: 200px;
height: 200px;
background-color: var(--background-secondary-alt);
transform: rotateZ(-15deg);
z-index: 0;
opacity: 0.7;
transition: all 0.3s ease;
border-radius: var(--radius-m);
}
.task-genius-settings .settings-tab:hover::after {
transform: rotateZ(-10deg);
opacity: 0.9;
}
.task-genius-settings .settings-tab-active::after {
background-color: var(--interactive-accent);
opacity: 0.3;
}
.task-genius-settings .settings-tab-icon,
.task-genius-settings .settings-tab span,
.task-genius-settings .settings-tab-label {
position: relative;
z-index: 1;
}
.task-genius-settings .settings-category-tabs .settings-tab-icon {
display: flex;
align-items: center;
justify-content: center;
width: var(--size-4-4);
height: var(--size-4-4);
flex-shrink: 0;
}
.task-genius-settings .settings-category-tabs .settings-tab-icon svg {
width: var(--icon-s);
height: var(--icon-s);
}
.task-genius-settings .settings-category-tabs .settings-tab-label {
font-size: var(--font-ui-small);
font-weight: var(--font-weight-medium);
flex: 1;
text-align: left;
}
.task-genius-settings .settings-category-tabs .settings-tab:hover {
background: var(--background-modifier-hover);
border-color: var(--background-modifier-border-hover);
transform: translateY(-1px);
box-shadow: var(--shadow-m);
}
.task-genius-settings .settings-category-tabs .settings-tab-active {
background: var(--interactive-accent);
color: var(--text-on-accent);
border-color: var(--interactive-accent);
box-shadow: var(--shadow-m);
font-weight: var(--font-weight-semibold);
}
.task-genius-settings .settings-category-tabs .settings-tab-active:hover {
background: var(--interactive-accent-hover);
border-color: var(--interactive-accent-hover);
transform: translateY(-1px);
}
.task-genius-settings .settings-tab:hover {
background-color: var(--background-modifier-hover);
}
.task-genius-settings .settings-tab-active {
background-color: var(--background-modifier-border-hover);
font-weight: bold;
}
.task-genius-settings .settings-tab-sections {
overflow: hidden;
}
.task-genius-settings .settings-tab-section {
display: none;
}
.task-genius-settings .settings-tab-section-active {
display: block;
}
.task-genius-settings .settings-tab-section-header {
display: flex;
flex-direction: row-reverse;
align-items: center;
justify-content: space-between;
margin-top: var(--size-4-2);
margin-bottom: var(--size-4-4);
}
.task-genius-settings .settings-tab-section-header .header-button {
display: flex;
align-items: center;
justify-content: center;
gap: 4px;
font-size: var(--font-ui-small);
}
.task-genius-settings .settings-tab-section-header .header-button-icon {
--icon-size: 16px;
display: flex;
align-items: center;
justify-content: center;
}
.task-genius-settings .settings-tab[data-tab-id=general] {
display: none;
}
.task-genius-settings .settings-tabs-categorized-container {
display: flex;
}
.task-genius-settings:has(.settings-tab-section-active:not([data-tab-id=general])) .settings-tabs-categorized-container {
display: none;
}
.task-genius-settings .settings-tabs-container {
display: none;
}
.task-genius-settings:has(.settings-tab-active[data-tab-id=general]) .settings-tabs-container {
display: grid;
}
.task-genius-settings-header {
display: block;
}
.task-genius-settings:has(.settings-tab-section-active:not([data-tab-id=general])) .task-genius-settings-header {
display: none;
}
.expression-examples {
margin-top: 8px;
border-radius: 5px;
}
.expression-example-item {
margin-bottom: var(--size-4-3);
padding: var(--size-4-2);
padding-left: var(--size-4-3);
padding-right: var(--size-4-3);
border-radius: var(--radius-s);
display: flex;
flex-direction: column;
gap: 6px;
border: 1px solid var(--background-modifier-border);
}
.expression-example-name {
font-weight: bold;
}
.expression-example-code {
padding: 4px 8px;
background-color: var(--background-secondary);
border-radius: 4px;
font-family: var(--font-monospace);
font-size: 0.9em;
overflow-wrap: break-word;
user-select: text;
}
.expression-example-use {
align-self: flex-end;
margin-top: 4px;
}
.custom-format-textarea {
height: 200px;
width: 100%;
font-family: var(--font-monospace);
resize: vertical;
}
.custom-format-preview-container {
margin-bottom: var(--size-4-3);
padding: var(--size-4-3);
border-radius: var(--radius-s);
background-color: var(--background-secondary);
display: flex;
flex-direction: column;
}
.custom-format-preview-label {
font-weight: bold;
margin-bottom: var(--size-4-2);
color: var(--text-muted);
}
.custom-format-preview-content {
padding: var(--size-4-2);
background-color: var(--background-primary);
border-radius: var(--radius-s);
font-family: var(--font-interface);
}
.custom-format-placeholder-info {
margin-top: var(--size-4-2);
margin-bottom: var(--size-4-2);
user-select: text;
}
.custom-format-preview-error,
.expression-preview-error {
color: var(--text-error);
}
.expression-example-preview {
margin-top: var(--size-4-2);
padding: var(--size-4-2);
background-color: var(--background-primary-alt);
border-radius: var(--radius-s);
font-size: 0.9em;
}
.preset-filters-container {
margin-top: 10px;
padding: 8px;
border-radius: 5px;
border: 1px solid var(--background-modifier-border);
}
.preset-filter-row {
margin-bottom: 5px;
border-radius: 4px;
padding-top: var(--size-4-2);
padding-left: var(--size-4-2);
padding-right: var(--size-4-2);
transition: background-color 0.2s ease;
}
.preset-filter-row:hover {
background-color: var(--background-secondary-alt);
}
.no-presets-message {
font-style: italic;
color: var(--text-muted);
text-align: center;
padding: 15px;
}
.preset-saved-message {
color: var(--text-accent);
font-weight: bold;
text-align: center;
padding: 5px;
margin-top: 5px;
animation: fadeIn 0.3s ease-in-out;
}
.task-filter-save-preset {
margin-top: 15px;
padding: 10px;
border-radius: 5px;
background-color: var(--background-secondary-alt);
}
.tg-modal-button-container {
display: flex;
justify-content: flex-end;
gap: 10px;
margin-top: 20px;
}
.tg-modal-button-container button {
padding: 6px 12px;
border-radius: 4px;
font-size: 14px;
font-weight: 500;
cursor: pointer;
}
.tg-modal-button-container button.mod-warning {
background-color: var(--background-modifier-error);
color: white;
}
@keyframes fadeIn {
from {
opacity: 0;
}
to {
opacity: 1;
}
}
.modal-workflow-definition {
max-width: 800px;
width: 90vw;
}
.modal-stage-definition {
max-width: 800px;
width: 90vw;
}
.workflow-container {
border: 1px solid var(--background-modifier-border);
border-radius: 5px;
padding: 15px;
max-height: 500px;
overflow-y: auto;
background-color: var(--background-primary);
box-shadow: 0 1px 4px rgba(0, 0, 0, 0.05);
}
.workflow-row {
margin-bottom: 15px;
padding: 12px;
border-radius: 6px;
background-color: var(--background-secondary-alt);
box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
border-left: 3px solid var(--interactive-accent);
}
.workflow-row .setting-item {
border: none;
padding: 0;
}
.workflow-row .setting-item-info {
padding: 0 !important;
}
.workflow-row .setting-item-name {
font-size: 16px;
font-weight: 600;
color: var(--text-normal);
}
.workflow-row .setting-item-description {
font-size: 13px;
color: var(--text-muted);
margin-top: 4px;
}
.workflow-stages-info {
margin-top: 12px;
padding: 8px 0 0 0;
border-top: 1px solid var(--background-modifier-border);
}
.workflow-stages-list {
list-style-type: none;
display: flex;
flex-wrap: wrap;
gap: var(--size-2-2);
padding: 0;
margin: 0;
}
.workflow-stage-item {
padding: 4px 8px;
border-radius: 4px;
font-size: 12px;
display: inline-flex;
align-items: center;
background-color: var(--background-modifier-border);
}
.workflow-stage-cycle {
background-color: var(--task-in-progress-color);
color: var(--text-on-accent);
}
.workflow-stage-terminal {
background-color: var(--task-completed-color);
color: var(--text-on-accent);
}
.no-workflows-message {
font-style: italic;
color: var(--text-muted);
text-align: center;
padding: 15px;
}
.workflow-form {
margin-bottom: 20px;
}
.workflow-stages-section {
margin-top: 20px;
border-top: 1px solid var(--background-modifier-border);
padding-top: 15px;
}
.workflow-stages-section h2 {
margin-top: 0;
margin-bottom: 15px;
font-size: 1.3em;
color: var(--text-normal);
}
.workflow-stages-container {
margin-top: 15px;
}
.workflow-stages-container .workflow-stages-list {
display: block;
flex-wrap: unset;
gap: unset;
}
.workflow-stages-container .workflow-stage-item {
display: block;
margin-bottom: 10px;
padding: 0;
background-color: transparent;
}
.workflow-buttons {
display: flex;
justify-content: flex-end;
gap: 10px;
margin-top: 20px;
padding-top: 10px;
border-top: 1px solid var(--background-modifier-border);
}
.workflow-save-button,
.workflow-cancel-button,
.workflow-add-stage-button {
padding: 6px 12px;
border-radius: 4px;
cursor: pointer;
}
.workflow-save-button.mod-cta {
background-color: var(--interactive-accent);
color: var(--text-on-accent);
}
.workflow-cancel-button {
background-color: var(--background-modifier-border);
color: var(--text-normal);
}
.workflow-add-stage-button {
background-color: var(--interactive-accent);
color: var(--text-on-accent);
margin-top: 10px;
}
.no-stages-message {
font-style: italic;
color: var(--text-muted);
text-align: center;
padding: 15px;
}
.workflow-stage-header {
display: flex;
align-items: center;
justify-content: space-between;
padding: 8px 12px;
background-color: var(--background-secondary);
border-radius: 4px;
margin-bottom: 8px;
box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
}
.workflow-stage-name {
font-weight: 600;
flex: 1;
margin-right: 10px;
}
.workflow-stage-actions {
display: flex;
gap: 5px;
}
.workflow-stage-edit,
.workflow-stage-move-up,
.workflow-stage-move-down,
.workflow-stage-delete {
padding: 3px 8px;
border-radius: 3px;
background-color: var(--background-modifier-border);
cursor: pointer;
font-size: 12px;
border: none;
}
.workflow-stage-edit:hover,
.workflow-stage-move-up:hover,
.workflow-stage-move-down:hover {
background-color: var(--interactive-accent);
color: var(--text-on-accent);
}
.workflow-stage-delete:hover {
background-color: var(--background-modifier-error);
color: var(--text-on-accent);
}
.workflow-stage-type-badge {
display: inline-block;
padding: 2px 6px;
margin-left: 8px;
border-radius: 3px;
font-size: 10px;
text-transform: uppercase;
font-weight: 600;
}
.workflow-stage-type-linear {
background-color: var(--background-modifier-border);
}
.workflow-stage-type-cycle {
background-color: var(--task-in-progress-color);
color: var(--text-on-accent);
}
.workflow-stage-type-terminal {
background-color: var(--task-completed-color);
color: var(--text-on-accent);
}
.workflow-substages-list {
padding: 0 0 0 var(--size-4-6);
margin-top: var(--size-4-2);
margin-bottom: var(--size-4-2);
border-left: 2px solid var(--background-modifier-border);
}
.substage-settings-container {
width: 100%;
}
.stage-type-settings {
margin-top: 20px;
border: 1px solid var(--background-modifier-border);
border-radius: 4px;
padding: 15px;
background-color: var(--background-primary);
}
.substages-section,
.can-proceed-to-section {
margin-top: 20px;
padding-top: 15px;
border-top: 1px solid var(--background-modifier-border);
}
.substages-container,
.can-proceed-to-container {
margin-top: 15px;
padding: 10px;
border-radius: 4px;
}
.substages-list,
.can-proceed-list {
list-style-type: none;
padding: 0;
margin: 0;
}
.substage-name-container {
display: flex;
gap: 10px;
align-items: center;
flex: 1;
}
.substage-name-container input {
padding: 4px 8px;
border-radius: 3px;
border: 1px solid var(--background-modifier-border);
background-color: var(--background-primary);
}
.substage-next-container {
display: flex;
align-items: center;
gap: 5px;
margin-left: 10px;
}
.substage-remove-button,
.can-proceed-remove-button {
color: var(--text-normal);
border-radius: 3px;
padding: 2px 5px;
cursor: pointer;
border: none;
}
.substage-remove-button:hover,
.can-proceed-remove-button:hover {
background-color: var(--background-modifier-error);
color: var(--text-on-accent);
}
.add-substage-button,
.add-can-proceed-button {
background-color: var(--interactive-accent);
color: var(--text-on-accent);
padding: 4px 10px;
border-radius: 4px;
margin-top: 10px;
cursor: pointer;
border: none;
}
.add-can-proceed-container {
display: flex;
gap: 10px;
align-items: flex-end;
}
.add-can-proceed-select {
flex: 1;
padding: 4px 8px;
border-radius: 3px;
border: 1px solid var(--background-modifier-border);
}
.stage-buttons {
display: flex;
justify-content: flex-end;
gap: 10px;
margin-top: 20px;
padding-top: 10px;
border-top: 1px solid var(--background-modifier-border);
}
.stage-save-button,
.stage-cancel-button {
padding: 6px 12px;
border-radius: 4px;
cursor: pointer;
border: none;
}
.stage-save-button.mod-cta {
background-color: var(--interactive-accent);
color: var(--text-on-accent);
}
.stage-cancel-button {
background-color: var(--background-modifier-border);
color: var(--text-normal);
}
.stage-error-message {
color: var(--background-modifier-error);
font-weight: bold;
text-align: center;
margin-top: 10px;
padding: 8px;
border-radius: 4px;
}
.task-workflow-tag {
display: inline-block;
padding: 2px 5px;
border-radius: 3px;
margin-left: 5px;
font-size: 12px;
background-color: var(--background-secondary-alt);
}
.task-workflow-stage {
margin-left: 5px;
color: var(--text-accent);
}
.task-workflow-substage {
font-size: 11px;
color: var(--text-muted);
}
.task-workflow-history {
margin-left: 20px;
font-size: 12px;
color: var(--text-muted);
}
.task-workflow-timestamp {
color: var(--text-faint);
}
.setting-item-control span[class^=workflow-stage-name-] {
display: inline-block;
padding: 2px 6px;
border-radius: 3px;
font-size: 12px;
font-weight: 500;
margin-right: 5px;
}
.setting-item-control .workflow-stage-name-cycle {
background-color: var(--task-in-progress-color);
color: var(--text-on-accent);
}
.setting-item-control .workflow-stage-name-terminal {
background-color: var(--task-completed-color);
color: var(--text-on-accent);
}
.workflow-stage-item {
margin-right: 4px;
}
.workflow-stages-container .workflow-stage-header {
padding: 8px 12px;
background-color: var(--background-secondary);
border-radius: 4px;
box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
margin-bottom: 8px;
}
.workflow-stages-container .workflow-stage-type-badge {
display: inline-block;
padding: 2px 6px;
margin-left: 8px;
border-radius: 3px;
font-size: 10px;
text-transform: uppercase;
font-weight: 600;
}
.workflow-substages-list {
list-style-type: none;
padding: 0 0 0 20px;
margin: 5px 0 10px 0;
border-left: 2px solid var(--background-modifier-border);
}
.workflow-add-stage-button,
.stage-save-button.mod-cta,
.workflow-save-button.mod-cta {
background-color: var(--interactive-accent);
color: var(--text-on-accent);
padding: 6px 15px;
border-radius: 4px;
font-weight: 500;
border: none;
cursor: pointer;
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
transition: all 0.2s ease;
text-align: center;
}
.workflow-add-stage-button:hover,
.stage-save-button.mod-cta:hover,
.workflow-save-button.mod-cta:hover {
background-color: var(--interactive-accent-hover);
box-shadow: 0 3px 6px rgba(0, 0, 0, 0.15);
transform: translateY(-1px);
}
.workflow-stage-move-up,
.workflow-stage-move-down,
.workflow-stage-edit,
.workflow-stage-delete {
border: none;
background-color: var(--background-modifier-border);
padding: 3px 8px;
border-radius: 3px;
font-size: 12px;
cursor: pointer;
transition: all 0.2s ease;
}
.workflow-stage-move-up:hover,
.workflow-stage-move-down:hover,
.workflow-stage-edit:hover {
background-color: var(--interactive-accent);
color: var(--text-on-accent);
}
.workflow-stage-delete:hover {
background-color: var(--background-modifier-error);
color: var(--text-on-accent);
}
.substage-item {
display: flex;
justify-content: flex-end;
align-items: center;
padding: 6px 0;
margin-bottom: 5px;
border-radius: 4px;
}
.substage-name-container input {
background-color: var(--background-primary);
border: 1px solid var(--background-modifier-border);
padding: 4px 8px;
border-radius: 3px;
font-size: 13px;
}
.substage-name-container input:focus {
border-color: var(--interactive-accent);
outline: none;
}
.no-stages-message,
.no-workflows-message,
.no-substages-message,
.no-can-proceed-message {
font-style: italic;
color: var(--text-muted);
padding: 15px;
text-align: center;
background-color: var(--background-secondary-alt);
border-radius: 5px;
margin: 10px 0;
}
.rewards-levels-container,
.rewards-items-container {
margin-top: 10px;
padding: 15px;
border-radius: 5px;
border: 1px solid var(--background-modifier-border);
background-color: var(--background-secondary);
}
.rewards-level-row .setting-item-info,
.rewards-item-row .setting-item-info {
display: none;
}
.rewards-item-row.setting-item {
border-top: 0;
}
.rewards-level-row .setting-item-control,
.rewards-item-row .setting-item-control {
display: flex;
flex-wrap: wrap;
gap: 10px;
align-items: center;
}
.rewards-level-row .setting-item-control input[type=text] {
flex: 1;
min-width: 100px;
}
.rewards-item-row .setting-item-control .input-container {
flex: 1;
min-width: 150px;
}
.rewards-item-row .setting-item-control textarea {
width: 100%;
min-height: 40px;
resize: vertical;
}
.rewards-item-row .setting-item-control .dropdown {
min-width: 120px;
}
.rewards-level-row .setting-item-control button,
.rewards-item-row .setting-item-control button {
margin-left: auto;
}
.rewards-item-divider {
border: none;
height: 1px;
background-color: var(--background-modifier-border);
margin-top: 15px;
margin-bottom: 15px;
}
.setting-item.sort-criterion-row .setting-item-info {
display: none;
}
.setting-item.sort-criterion-row select.dropdown {
flex: 1;
}
.view-edit-button,
.view-copy-button,
.view-order-button,
.view-delete-button {
padding: 4px;
width: 24px;
height: 24px;
border-radius: 4px;
margin-left: 4px;
display: flex;
align-items: center;
justify-content: center;
}
.view-copy-button {
color: var(--interactive-accent);
}
.view-copy-button:hover {
background-color: var(--interactive-accent);
color: var(--text-on-accent);
}
.view-delete-button {
color: var(--text-error);
}
.view-delete-button:hover {
background-color: var(--background-modifier-error);
color: var(--text-on-accent);
}
.view-icon {
margin-right: 8px;
--icon-size: 16px;
}
.copy-mode-info {
margin: 10px 0;
padding: 12px;
background-color: var(--background-secondary-alt);
border-radius: 5px;
border-left: 3px solid var(--interactive-accent);
}
.copy-mode-info p {
margin: 4px 0;
}
.tasks-compatibility-warning {
display: flex;
align-items: flex-start;
gap: var(--size-4-3);
padding: var(--size-4-4);
margin-bottom: var(--size-4-4);
background-color: hsl(var(--accent-h), var(--accent-s), var(--accent-l), 0.5);
border: 1px solid hsl(var(--accent-h), var(--accent-s), var(--accent-l), 0.5);
border-radius: var(--radius-m);
color: var(--text-on-accent);
}
.tasks-warning-icon {
font-size: 20px;
line-height: 1;
flex-shrink: 0;
}
.tasks-warning-content {
flex: 1;
display: flex;
flex-direction: column;
gap: var(--size-2-2);
}
.tasks-warning-title {
font-weight: 600;
font-size: var(--font-ui-medium);
}
.tasks-warning-text {
color: var(--text-on-accent);
font-size: var(--font-ui-small);
line-height: 1.4;
}
.tasks-warning-text a {
color: var(--text-on-accent);
text-decoration: underline;
}
.tasks-warning-text a:hover {
color: var(--text-on-accent);
}
.task-genius-format-examples {
display: flex;
flex-direction: column;
gap: var(--size-2-3);
padding: var(--size-4-3);
margin: var(--size-4-3) 0;
border-radius: var(--radius-m);
background-color: var(--background-secondary-alt);
border: 1px solid var(--background-modifier-border);
}
.task-genius-format-examples strong {
font-size: var(--font-ui-medium);
font-weight: 600;
color: var(--text-normal);
margin-bottom: var(--size-2-1);
}
.task-genius-format-examples span {
font-family: var(--font-monospace);
font-size: var(--font-ui-smaller);
line-height: 1.5;
color: var(--text-muted);
padding: var(--size-2-1) var(--size-2-3);
background-color: var(--background-primary);
border-radius: var(--radius-s);
border: 1px solid var(--background-modifier-border);
margin: var(--size-2-1) 0;
}
.task-genius-format-examples span:first-of-type {
margin-top: 0;
}
.task-genius-format-examples span:last-of-type {
margin-bottom: 0;
}
.project-path-mappings-container,
.project-metadata-mappings-container {
margin-top: 10px;
}
.project-path-mapping-row,
.project-metadata-mapping-row {
border: 1px solid var(--background-modifier-border);
border-radius: 6px;
margin-bottom: 10px;
padding: 10px;
}
.no-mappings-message {
color: var(--text-muted);
font-style: italic;
text-align: center;
padding: 20px;
}
.task-project-tg {
opacity: 0.8;
font-style: italic;
border-left: 2px solid var(--color-accent);
padding-left: 4px;
}
.task-project-tg::before {
content: "\1f517";
margin-right: 2px;
font-size: 0.8em;
}
.project-readonly {
opacity: 0.8;
}
.project-readonly input {
background-color: var(--background-modifier-border);
cursor: not-allowed;
}
.project-source-indicator {
font-size: var(--font-ui-smaller);
color: var(--text-muted);
font-style: italic;
margin-top: 4px;
}
.task-genius-date-formats-container {
margin-top: 15px;
padding: 15px;
background-color: var(--background-secondary);
border-radius: 8px;
border: 1px solid var(--background-modifier-border);
}
.task-genius-formats-header {
margin-top: 0;
margin-bottom: 10px;
font-size: 1.1em;
font-weight: 600;
color: var(--text-normal);
}
.task-genius-format-list {
display: flex;
flex-direction: column;
gap: 10px;
margin-top: 15px;
}
.task-genius-format-item {
display: flex;
align-items: center;
gap: 10px;
padding: 8px;
background-color: var(--background-primary);
border-radius: 6px;
border: 1px solid var(--background-modifier-border);
transition: all 0.2s ease;
}
.task-genius-format-item:hover {
border-color: var(--interactive-accent);
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}
.task-genius-format-input {
flex: 1;
padding: 6px 10px;
background-color: var(--background-primary);
border: 1px solid var(--background-modifier-border);
border-radius: 4px;
color: var(--text-normal);
font-family: var(--font-monospace);
font-size: 0.95em;
transition: border-color 0.2s ease;
}
.task-genius-format-input:focus {
outline: none;
border-color: var(--interactive-accent);
box-shadow: 0 0 0 2px var(--interactive-accent-hover);
}
.task-genius-format-input::placeholder {
color: var(--text-faint);
font-style: italic;
}
.task-genius-format-delete-btn {
width: 28px;
height: 28px;
padding: 0;
display: flex;
align-items: center;
justify-content: center;
background-color: var(--background-modifier-error);
color: var(--text-on-accent);
border: none;
border-radius: 4px;
font-size: 20px;
font-weight: bold;
cursor: pointer;
transition: all 0.2s ease;
}
.task-genius-format-delete-btn:hover {
background-color: var(--background-modifier-error-hover);
transform: scale(1.1);
}
.task-genius-add-format-btn {
padding: 10px 16px;
background-color: var(--interactive-accent);
color: var(--text-on-accent);
border: none;
border-radius: 6px;
font-weight: 500;
cursor: pointer;
transition: all 0.2s ease;
align-self: flex-start;
margin-top: 5px;
}
.task-genius-add-format-btn:hover {
box-shadow: 0 2px 6px rgba(0, 0, 0, 0.15);
transform: translateY(-1px);
}
.task-genius-add-format-btn:active {
transform: translateY(0);
}
.task-genius-date-examples {
margin-top: 20px;
padding: 15px;
background-color: var(--background-secondary);
border-radius: 8px;
border: 1px solid var(--background-modifier-border);
}
.task-genius-examples-header {
margin-top: 0;
margin-bottom: 12px;
font-size: 1em;
font-weight: 600;
color: var(--text-normal);
}
.task-genius-date-examples-table {
width: 100%;
border-collapse: collapse;
font-size: 0.9em;
}
.task-genius-date-examples-table th,
.task-genius-date-examples-table td {
padding: 8px 12px;
text-align: left;
border: 1px solid var(--background-modifier-border);
}
.task-genius-date-examples-table th {
background-color: var(--background-secondary-alt);
font-weight: 600;
color: var(--text-normal);
}
.task-genius-date-examples-table td {
background-color: var(--background-primary);
font-family: var(--font-monospace);
}
.task-genius-date-examples-table tr:nth-child(even) td {
background-color: var(--background-primary-alt);
}
.task-genius-date-examples-table tr:hover td {
background-color: var(--background-modifier-hover);
}
.tg-index-task-source-wrapper {
margin-top: 18px;
}
.tg-index-task-source-panels {
display: flex;
flex-direction: column;
gap: 12px;
}
.tg-source-settings-body {
display: flex;
flex-direction: column;
gap: 12px;
}
.tg-source-settings-body.tg-source-disabled {
opacity: 0.55;
pointer-events: none;
}
.status-cycles-container {
display: flex;
flex-direction: column;
gap: var(--size-4-3);
margin-top: var(--size-4-2);
}
.status-cycle-card {
background-color: var(--background-primary-alt);
border: 1px solid var(--background-modifier-border);
border-radius: var(--radius-m);
padding: var(--size-4-2);
transition: all 0.2s ease;
}
.status-cycle-card:hover {
border-color: var(--interactive-accent);
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}
.status-cycle-header {
display: flex;
align-items: center;
gap: var(--size-2-3);
margin-bottom: var(--size-4-2);
border-bottom: 1px solid var(--background-modifier-border);
padding-bottom: var(--size-2-3);
}
.status-cycle-card.collapsed .status-cycle-header {
margin-bottom: 0;
border-bottom: unset;
}
.status-cycle-collapse-button {
width: 20px;
height: 20px;
display: flex;
align-items: center;
justify-content: center;
cursor: pointer;
color: var(--text-muted);
user-select: none;
flex-shrink: 0;
transition: color 0.15s ease;
}
.status-cycle-collapse-button svg {
width: 16px;
height: 16px;
}
.status-cycle-collapse-button:hover {
color: var(--interactive-accent);
}
.status-cycle-updown-buttons {
display: flex;
flex-direction: column;
gap: 2px;
flex-shrink: 0;
}
.status-cycle-button {
width: 18px;
height: 18px;
display: flex;
align-items: center;
justify-content: center;
cursor: pointer;
color: var(--text-muted);
user-select: none;
transition: color 0.15s ease;
}
.status-cycle-button svg {
width: 14px;
height: 14px;
}
.status-cycle-button:hover {
color: var(--interactive-accent);
}
.status-cycle-button.disabled {
opacity: 0.3;
cursor: not-allowed;
pointer-events: none;
}
.status-cycle-title {
flex: 1;
font-weight: var(--font-weight-semibold);
font-size: var(--font-ui-medium);
padding: var(--size-2-1) var(--size-2-2);
border-radius: var(--radius-s);
outline: none;
transition: background-color 0.15s ease;
min-width: 0;
}
.status-cycle-title:hover {
background-color: var(--background-modifier-hover);
}
.status-cycle-title:focus {
background-color: var(--background-modifier-form-field);
box-shadow: 0 0 0 2px var(--interactive-accent);
}
.status-cycle-title:empty::before {
content: "Unnamed Cycle";
color: var(--text-muted);
}
.status-cycle-controls {
display: flex;
align-items: center;
gap: var(--size-2-2);
flex-shrink: 0;
}
.status-cycle-controls .setting-item {
border-bottom: none;
padding: 0;
margin: 0;
}
.status-cycle-body {
display: flex;
flex-direction: column;
gap: var(--size-2-3);
transition: max-height 0.2s ease, opacity 0.2s ease;
}
.status-cycle-body .setting-item {
padding: var(--size-2-2) 0;
}
.status-cycle-card.collapsed .status-cycle-body {
display: none;
}
.status-list-container {
display: flex;
flex-direction: column;
gap: var(--size-2-2);
padding: var(--size-2-3);
background-color: var(--background-secondary);
border-radius: var(--radius-s);
margin-top: var(--size-2-2);
}
.status-row {
display: flex;
align-items: center;
gap: var(--size-2-2);
padding: var(--size-2-1);
background-color: var(--background-primary);
border-radius: var(--radius-s);
border: 1px solid var(--background-modifier-border);
transition: border-color 0.15s ease;
}
.status-row:hover {
border-color: var(--interactive-hover);
}
.status-row .setting-item {
padding: 0;
border: none;
margin: 0;
flex: 1;
}
.status-row .setting-item-name {
min-width: 40px;
font-weight: var(--font-weight-medium);
font-size: var(--font-ui-smaller);
color: var(--text-muted);
}
.status-row .setting-item-control {
display: flex;
align-items: center;
gap: var(--size-2-2);
flex: 1;
}
.status-drag-handle {
display: flex;
align-items: center;
justify-content: center;
width: 20px;
min-height: 30px;
color: var(--text-muted);
cursor: grab;
user-select: none;
opacity: 0.4;
transition: all 0.15s ease;
flex-shrink: 0;
margin-right: var(--size-2-1);
}
.status-drag-handle svg {
width: 16px;
height: 16px;
}
.status-row:hover .status-drag-handle {
opacity: 0.7;
}
.status-drag-handle:hover {
opacity: 1 !important;
color: var(--interactive-accent);
transform: scale(1.1);
}
.status-drag-handle:active {
cursor: grabbing;
color: var(--interactive-accent);
}
.status-row-ghost {
opacity: 0.3;
}
.status-row-chosen {
opacity: 0.7;
}
.status-row-drag {
background-color: var(--background-primary);
border: 1px dashed var(--interactive-accent) !important;
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
}
.status-cycle-header .setting-item-name::before {
content: "";
display: inline-block;
width: 8px;
height: 8px;
border-radius: 50%;
background-color: var(--interactive-accent);
margin-right: var(--size-2-1);
}
.status-cycle-card:has(.setting-item-control .checkbox-container:not(.is-enabled)) {
opacity: 0.6;
}
.status-cycle-card:has(.setting-item-control .checkbox-container:not(.is-enabled)) .status-cycle-body {
pointer-events: none;
}
.status-cycles-container + .setting-item {
margin-top: var(--size-4-4);
}
@media (max-width: 768px) {
.status-row .setting-item-control {
flex-direction: column;
align-items: stretch;
}
.status-row input[type=text] {
width: 100% !important;
}
}
.status-list-container .setting-item button,
.status-cycles-container > .setting-item button {
background-color: var(--interactive-accent);
color: var(--text-on-accent);
border: none;
border-radius: var(--radius-s);
padding: var(--size-2-2) var(--size-4-2);
font-weight: var(--font-weight-medium);
cursor: pointer;
transition: all 0.2s ease;
}
.status-list-container .setting-item button:hover,
.status-cycles-container > .setting-item button:hover {
background-color: var(--interactive-accent-hover);
transform: translateY(-1px);
box-shadow: 0 2px 6px rgba(0, 0, 0, 0.15);
}
.setting-item-control button[data-tooltip*=TODO] {
background-color: var(--color-green);
}
.setting-item-control button[data-tooltip*=PLAN] {
background-color: var(--color-blue);
}
.setting-item-control button[data-tooltip*="1"] {
background-color: var(--color-purple);
}
.status-cycle-header .setting-item-control .clickable-icon {
color: var(--text-muted);
transition: color 0.15s ease;
}
.status-cycle-header .setting-item-control .clickable-icon:hover {
color: var(--interactive-accent);
}
.status-cycle-header .setting-item-control .clickable-icon[aria-label*=Delete]:hover,
.status-row .clickable-icon[aria-label*=Remove]:hover {
color: var(--color-red);
}
/* src/styles/setting-v2.scss */
.tg-status-icon {
display: inline-flex;
align-items: center;
vertical-align: middle;
margin-right: var(--size-2-3);
margin-top: calc(-1 * var(--size-2-1));
}
.tg-icons-container {
display: flex;
gap: var(--size-2-2);
flex-wrap: wrap;
align-items: center;
justify-content: center;
}
.tg-icons-container .tg-status-icon {
margin-right: 0;
margin-top: 0;
}
.global-filter-container {
margin-bottom: 20px;
padding: 10px;
border: 1px solid var(--background-modifier-border);
border-radius: 6px;
background-color: var(--background-secondary);
}
.task-genius-metadata-fields-container,
.task-genius-tags-container,
.task-genius-paths-container,
.task-genius-date-formats-container {
margin: 1rem 0;
padding: 1rem;
background: var(--background-secondary);
border-radius: 8px;
}
.task-genius-fields-header,
.task-genius-tags-header,
.task-genius-paths-header,
.task-genius-formats-header,
.task-genius-examples-header {
font-size: 0.95em;
font-weight: 600;
margin-bottom: 0.5rem;
color: var(--text-normal);
}
.task-genius-field-list,
.task-genius-tag-list,
.task-genius-path-list,
.task-genius-format-list {
display: flex;
flex-direction: column;
gap: 0.5rem;
margin-bottom: 1rem;
}
.task-genius-field-item,
.task-genius-tag-item,
.task-genius-path-item,
.task-genius-format-item {
display: flex;
align-items: center;
gap: 0.5rem;
background: var(--background-primary);
padding: 0.5rem;
border-radius: 4px;
border: 1px solid var(--background-modifier-border);
transition: border-color 0.2s;
}
.task-genius-field-item:hover,
.task-genius-tag-item:hover,
.task-genius-path-item:hover,
.task-genius-format-item:hover {
border-color: var(--interactive-accent);
}
.task-genius-field-input,
.task-genius-tag-input,
.task-genius-path-input,
.task-genius-format-input {
flex: 1;
padding: 0.4rem;
border: 1px solid var(--background-modifier-border);
border-radius: 4px;
background: var(--background-primary);
color: var(--text-normal);
font-family: var(--font-interface);
font-size: 0.9em;
}
.task-genius-field-input:focus,
.task-genius-tag-input:focus,
.task-genius-path-input:focus,
.task-genius-format-input:focus {
outline: none;
border-color: var(--interactive-accent);
box-shadow: 0 0 0 2px var(--interactive-accent-hover);
}
.task-genius-field-delete-btn,
.task-genius-tag-delete-btn,
.task-genius-path-delete-btn,
.task-genius-format-delete-btn {
width: 28px;
height: 28px;
padding: 0;
border: none;
background: var(--background-modifier-error);
color: var(--text-on-accent);
border-radius: 4px;
cursor: pointer;
font-size: 1.2em;
font-weight: bold;
display: flex;
align-items: center;
justify-content: center;
transition: background-color 0.2s;
}
.task-genius-field-delete-btn:hover,
.task-genius-tag-delete-btn:hover,
.task-genius-path-delete-btn:hover,
.task-genius-format-delete-btn:hover {
background: var(--background-modifier-error-hover);
}
.task-genius-add-field-btn,
.task-genius-add-tag-btn,
.task-genius-add-path-btn,
.task-genius-add-format-btn {
padding: 0.5rem 1rem;
background: var(--background-primary);
color: var(--text-muted);
border-radius: 4px;
cursor: pointer;
font-size: 0.9em;
transition: all 0.2s;
}
.task-genius-add-field-btn:hover,
.task-genius-add-tag-btn:hover,
.task-genius-add-path-btn:hover,
.task-genius-add-format-btn:hover {
border-color: var(--interactive-accent);
color: var(--interactive-accent);
}
.task-genius-date-examples {
margin-top: 1rem;
padding: 1rem;
background: var(--background-secondary);
border-radius: 8px;
}
.task-genius-date-examples-table {
width: 100%;
border-collapse: collapse;
font-size: 0.9em;
}
.task-genius-date-examples-table th {
text-align: left;
padding: 0.5rem;
border-bottom: 1px solid var(--background-modifier-border);
color: var(--text-muted);
font-weight: 500;
}
.task-genius-date-examples-table td {
padding: 0.4rem 0.5rem;
border-bottom: 1px solid var(--background-modifier-border-hover);
color: var(--text-normal);
}
.task-genius-date-examples-table tr:last-child td {
border-bottom: none;
}
.task-genius-date-examples-table tr:hover td {
background: var(--background-primary-alt);
}
.task-genius-iframe-modal {
width: 90%;
max-width: 1400px;
max-height: 90vh;
overflow-y: auto;
}
.task-genius-iframe-modal .modal-title {
display: flex;
flex-direction: row;
}
.time-parsing-example {
padding: var(--size-2-2);
background-color: var(--background-secondary);
border-radius: var(--radius-s);
margin-top: var(--size-2-2);
margin-bottom: var(--size-2-2);
padding-left: var(--size-4-2);
padding-right: var(--size-4-2);
font-size: var(--font-ui-small);
}
.task-genius-settings .setting-item-control input[type=time] {
border: 1px solid var(--background-modifier-border);
padding: var(--size-2-2);
border-radius: var(--radius-s);
}
.task-genius-settings .file-source-strategy-container {
border-top: 1px solid var(--background-modifier-border);
padding-top: var(--size-4-4);
}
.fluent-view-tabs.tg-index-task-source-switcher {
display: flex;
align-items: stretch;
justify-content: center;
gap: var(--size-2-2);
background-color: var(--background-secondary);
border-radius: var(--size-2-3);
padding: var(--size-2-1);
margin-bottom: var(--size-4-4);
width: fit-content;
margin-left: auto;
margin-right: auto;
}
.tg-index-task-source-switcher .fluent-view-tab {
display: flex;
align-items: center;
gap: 6px;
padding: 6px 12px;
background: none;
border: none;
border-radius: 4px;
font-size: 14px;
color: var(--text-muted);
cursor: pointer;
transition: all 0.15s ease;
}
.tg-index-task-source-switcher .fluent-view-tab:hover {
color: var(--text-normal);
}
.tg-index-task-source-switcher .fluent-view-tab.is-active {
background-color: var(--background-primary);
color: var(--text-normal);
box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
}
.tg-index-task-source-switcher .fluent-view-tab-icon {
width: 16px;
height: 16px;
display: flex;
align-items: center;
justify-content: center;
font-size: 14px;
}
.tg-index-task-source-switcher .fluent-view-tab-label {
display: inline-flex;
align-items: center;
}
.file-name-templates-container input {
flex: 1;
}
.file-name-templates-container .setting-item-info {
display: none;
}
.workspace-hidden-modules-container {
margin-top: var(--size-4-4);
margin-bottom: var(--size-4-4);
padding: var(--size-4-4);
background: var(--background-secondary);
border-radius: var(--radius-m);
border: 1px solid var(--background-modifier-border);
}
.workspace-hidden-modules-title {
font-size: var(--font-ui-medium);
font-weight: 600;
color: var(--text-normal);
margin-bottom: var(--size-4-2);
display: flex;
align-items: center;
gap: var(--size-2-2);
}
.workspace-hidden-modules-title svg {
width: 18px;
height: 18px;
color: var(--text-muted);
}
.workspace-hidden-modules-desc {
font-size: var(--font-ui-small);
color: var(--text-muted);
margin-bottom: var(--size-4-3);
line-height: 1.5;
}
.workspace-module-groups {
display: flex;
flex-direction: column;
gap: var(--size-4-3);
}
.workspace-module-group {
background: var(--background-primary);
border-radius: var(--radius-s);
padding: var(--size-4-2);
border: 1px solid var(--background-modifier-border);
}
.workspace-module-group-header {
display: flex;
align-items: center;
gap: var(--size-2-2);
margin-bottom: var(--size-4-2);
padding-bottom: var(--size-2-3);
border-bottom: 1px solid var(--background-modifier-border);
}
.workspace-module-group-icon {
width: 16px;
height: 16px;
display: flex;
align-items: center;
justify-content: center;
color: var(--interactive-accent);
}
.workspace-module-group-title {
font-size: var(--font-ui-small);
font-weight: 600;
color: var(--text-normal);
flex: 1;
}
.workspace-module-group-count {
font-size: var(--font-ui-smaller);
color: var(--text-muted);
background: var(--background-secondary);
padding: 2px 8px;
border-radius: var(--radius-s);
}
.workspace-module-list {
display: grid;
grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
gap: var(--size-2-3);
}
.workspace-module-item {
display: flex;
align-items: center;
gap: var(--size-2-2);
padding: var(--size-2-3);
background: var(--background-secondary);
border-radius: var(--radius-s);
border: 1px solid transparent;
cursor: pointer;
transition: all 0.15s ease;
user-select: none;
}
.workspace-module-item:hover {
border-color: var(--background-modifier-border-hover);
background: var(--background-secondary-alt);
}
.workspace-module-item.is-hidden {
opacity: 0.6;
}
.workspace-module-item.is-hidden:hover {
opacity: 0.8;
}
.workspace-module-checkbox {
display: flex;
align-items: center;
justify-content: center;
flex-shrink: 0;
}
.workspace-module-checkbox input[type=checkbox] {
margin: 0;
cursor: pointer;
}
.workspace-module-icon {
width: 16px;
height: 16px;
display: flex;
align-items: center;
justify-content: center;
color: var(--text-muted);
flex-shrink: 0;
}
.workspace-module-label {
font-size: var(--font-ui-small);
color: var(--text-normal);
flex: 1;
line-height: 1.3;
}
.workspace-module-item.is-hidden .workspace-module-label {
text-decoration: line-through;
color: var(--text-muted);
}
.workspace-name-with-icon {
display: flex;
align-items: center;
gap: var(--size-2-2);
}
.workspace-list-icon {
width: 16px;
height: 16px;
display: flex;
align-items: center;
justify-content: center;
color: var(--text-muted);
flex-shrink: 0;
}
/* src/styles/beta-warning.scss */
.beta-test-warning-banner {
display: flex;
align-items: flex-start;
gap: 12px;
padding: 16px;
margin-bottom: 20px;
border: 1px solid var(--color-orange);
border-radius: 8px;
}
.beta-warning-icon {
font-size: 20px;
line-height: 1;
flex-shrink: 0;
margin-top: 2px;
}
.beta-warning-content {
flex: 1;
min-width: 0;
}
.beta-warning-title {
font-weight: 600;
font-size: 14px;
color: var(--text-normal);
margin-bottom: 8px;
}
.beta-warning-text {
font-size: 13px;
line-height: 1.4;
color: var(--text-muted);
}
/* src/styles/settings-search.scss */
.tg-settings-search-input-container {
position: relative;
display: flex;
align-items: center;
background: var(--input-background);
border: var(--input-border-width) solid var(--background-modifier-border);
border-radius: var(--radius-s);
transition: all 0.15s ease-in-out;
min-height: var(--input-height);
}
.tg-settings-search-input-container:focus-within {
border-color: var(--interactive-accent);
box-shadow: 0 0 0 2px rgba(var(--interactive-accent-rgb), 0.2);
}
.tg-settings-search-icon {
display: flex;
align-items: center;
justify-content: center;
padding: 0 var(--size-4-2);
color: var(--text-muted);
flex-shrink: 0;
}
.tg-settings-search-icon svg {
width: var(--icon-s);
height: var(--icon-s);
}
.tg-settings-search-input {
flex: 1;
padding: var(--size-2-2) var(--size-2-1);
border: none !important;
background: transparent !important;
color: var(--text-normal);
font-size: var(--font-ui-medium);
outline: none;
}
input.tg-settings-search-input {
border: none !important;
box-shadow: none !important;
}
.tg-settings-search-input::placeholder {
color: var(--text-muted);
opacity: 0.7;
}
.tg-settings-search-clear {
display: flex;
align-items: center;
justify-content: center;
padding: var(--size-2-1);
margin-right: var(--size-2-1);
border: none !important;
background: transparent !important;
color: var(--text-muted);
cursor: pointer;
border-radius: var(--button-radius);
transition: all 0.15s ease-in-out;
box-shadow: none !important;
flex-shrink: 0;
width: var(--clickable-icon-size);
height: var(--clickable-icon-size);
}
.tg-settings-search-clear:hover {
background: var(--background-modifier-hover) !important;
color: var(--text-normal);
}
.tg-settings-search-clear:active {
background: var(--background-modifier-active) !important;
}
.tg-settings-search-clear svg {
width: var(--icon-xs);
height: var(--icon-xs);
}
.tg-settings-search-results {
position: absolute;
top: calc(100% + var(--size-2-1));
left: 0;
right: 0;
background: var(--background-primary);
border: var(--border-width) solid var(--background-modifier-border);
border-radius: var(--radius-m);
box-shadow: var(--shadow-l);
z-index: var(--layer-popover);
max-height: 320px;
overflow-y: auto;
overflow-x: hidden;
}
.tg-settings-search-result {
display: flex;
flex-direction: column;
padding: var(--size-4-2) var(--size-4-3);
cursor: pointer;
border-bottom: var(--border-width) solid var(--background-modifier-border-hover);
transition: background-color 0.1s ease-in-out;
position: relative;
}
.tg-settings-search-result:last-child {
border-bottom: none;
}
.tg-settings-search-result:hover,
.tg-settings-search-result-selected {
background: var(--background-modifier-hover);
}
.tg-settings-search-result:active {
background: var(--background-modifier-active);
}
.tg-settings-search-result-name {
font-weight: var(--font-weight-medium);
color: var(--text-normal);
margin-bottom: var(--size-2-1);
font-size: var(--font-ui-medium);
line-height: var(--line-height-tight);
}
.tg-settings-search-result-meta {
display: flex;
align-items: center;
gap: var(--size-2-2);
margin-bottom: var(--size-2-1);
}
.tg-settings-search-result-category {
font-size: var(--font-ui-smaller);
color: var(--text-muted);
background: var(--background-modifier-border);
padding: var(--size-2-1) var(--size-2-2);
border-radius: var(--radius-s);
font-weight: var(--font-weight-medium);
text-transform: uppercase;
letter-spacing: 0.02em;
}
.tg-settings-search-result-desc {
font-size: var(--font-ui-small);
color: var(--text-muted);
line-height: var(--line-height-normal);
margin-top: var(--size-2-1);
}
.tg-settings-search-no-result {
padding: var(--size-4-4) var(--size-4-3);
text-align: center;
color: var(--text-muted);
font-size: var(--font-ui-medium);
font-style: italic;
}
.tg-settings-search-highlight {
background: var(--background-secondary) !important;
border-radius: var(--radius-s);
transition: background-color 0.6s ease-out;
animation: tg-settings-search-pulse 0.6s ease-out;
}
@keyframes tg-settings-search-pulse {
0% {
background: var(--interactive-accent);
transform: scale(1);
}
50% {
background: var(--background-secondary);
transform: scale(1.01);
}
100% {
background: var(--background-secondary);
transform: scale(1);
}
}
.tg-settings-search-result-selected {
background: var(--background-modifier-hover) !important;
outline: var(--border-width) solid var(--interactive-accent);
outline-offset: -1px;
}
@media (max-width: 768px) {
.tg-settings-search-results {
max-height: 280px;
border-radius: var(--radius-s);
}
.tg-settings-search-result {
padding: var(--size-4-2) var(--size-4-2);
}
.tg-settings-search-result-name {
font-size: var(--font-ui-small);
}
.tg-settings-search-result-category {
font-size: var(--font-ui-smaller);
padding: var(--size-2-1) var(--size-2-1);
}
}
.tg-settings-search-results {
scrollbar-width: thin;
scrollbar-color: var(--scrollbar-thumb-bg) transparent;
}
.tg-settings-search-results::-webkit-scrollbar {
width: var(--scrollbar-thin-width);
}
.tg-settings-search-results::-webkit-scrollbar-track {
background: transparent;
}
.tg-settings-search-results::-webkit-scrollbar-thumb {
background: var(--scrollbar-thumb-bg);
border-radius: var(--scrollbar-thin-thumb-radius);
border: 2px solid transparent;
background-clip: content-box;
}
.tg-settings-search-results::-webkit-scrollbar-thumb:hover {
background: var(--scrollbar-thumb-bg-hover);
background-clip: content-box;
}
.task-genius-settings .settings-tabs-categorized-container {
margin-top: var(--size-4-3);
}
.tg-settings-search-results {
z-index: var(--layer-popover, 200);
}
.tg-settings-search-input:focus {
border: none !important;
outline: none !important;
box-shadow: none !important;
}
.tg-settings-search-icon {
transition: color 0.15s ease-in-out;
}
.tg-settings-search-input-container:focus-within .tg-settings-search-icon {
color: var(--interactive-accent);
}
.tg-settings-search-clear {
opacity: 0.8;
}
.tg-settings-search-clear:hover {
opacity: 1;
}
/* src/styles/settings-migration.scss */
.setting-item-info.mod-warning {
border: 1px solid var(--background-modifier-error);
border-radius: 6px;
padding: 16px;
margin: 12px 0;
}
.setting-item-info.mod-warning .setting-item-name {
font-weight: 600;
color: var(--text-error);
margin-bottom: 8px;
}
.setting-item-info.mod-warning .setting-item-description {
color: var(--text-muted);
margin-bottom: 12px;
}
.setting-item-info.mod-warning .setting-item-description p {
margin: 4px 0;
}
.setting-item-info.mod-warning .setting-item-control {
display: flex;
gap: 8px;
align-items: center;
}
.setting-item-info.mod-warning button.mod-cta {
background-color: var(--interactive-accent);
color: var(--text-on-accent);
border: none;
border-radius: 4px;
padding: 8px 16px;
cursor: pointer;
font-weight: 500;
}
.setting-item-info.mod-warning button.mod-cta:hover {
background-color: var(--interactive-accent-hover);
}
.setting-item-info.mod-warning button.mod-muted {
background-color: transparent;
color: var(--text-muted);
border: 1px solid var(--background-modifier-border);
border-radius: 4px;
padding: 8px 16px;
cursor: pointer;
}
.setting-item-info.mod-warning button.mod-muted:hover {
background-color: var(--background-modifier-hover);
color: var(--text-normal);
}
.setting-item-info.mod-success {
background-color: var(--color-green-bg);
border: 1px solid var(--color-green);
border-radius: 6px;
padding: 16px;
margin: 12px 0;
}
.setting-item-info.mod-success .setting-item-name {
font-weight: 600;
color: var(--color-green);
margin-bottom: 8px;
}
.file-source-notice {
background-color: var(--background-modifier-border);
border-radius: 6px;
padding: 12px;
margin: 8px 0;
}
.file-source-notice .notice-title {
font-weight: 600;
margin-bottom: 4px;
}
.file-source-notice .notice-description {
color: var(--text-muted);
font-size: 0.9em;
}
/* src/styles/workspace-settings-selector.scss */
.tg-settings-header-bar {
display: flex;
align-items: center;
gap: 12px;
margin-bottom: 20px;
width: 100%;
}
.tg-workspace-selector-container {
flex-shrink: 0;
}
.workspace-settings-selector {
display: inline-block;
}
.workspace-settings-selector-button {
display: flex;
align-items: center;
gap: 8px;
padding: 6px 12px;
background-color: var(--background-modifier-form-field);
border: 1px solid var(--background-modifier-border);
border-radius: 6px;
cursor: pointer;
transition: all 0.15s ease;
min-width: 150px;
height: 34px;
}
.workspace-settings-selector-button:hover {
background-color: var(--background-modifier-hover);
border-color: var(--background-modifier-border-hover);
}
.workspace-settings-selector-button:active {
background-color: var(--background-modifier-active-hover);
}
.workspace-settings-selector-button .workspace-icon {
display: flex;
align-items: center;
justify-content: center;
width: 20px;
height: 20px;
flex-shrink: 0;
}
.workspace-settings-selector-button .workspace-icon svg {
width: 16px;
height: 16px;
}
.workspace-settings-selector-button .workspace-name {
flex: 1;
font-size: 14px;
color: var(--text-normal);
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
.workspace-settings-selector-button .workspace-dropdown-icon {
display: flex;
align-items: center;
justify-content: center;
width: 16px;
height: 16px;
flex-shrink: 0;
margin-left: auto;
}
.workspace-settings-selector-button .workspace-dropdown-icon svg {
width: 12px;
height: 12px;
fill: var(--text-muted);
transition: transform 0.15s ease;
}
.workspace-settings-selector-button:hover .workspace-dropdown-icon svg {
fill: var(--text-normal);
}
.tg-settings-header-bar .tg-settings-search-container {
flex: 1;
max-width: none;
}
.tg-settings-header-bar .tg-settings-search-input-container {
width: 100%;
}
.tg-settings-main-container {
width: 100%;
position: relative;
}
.tg-settings-main-container .tg-settings-search-results {
margin-top: 8px;
}
@media (max-width: 768px) {
.tg-settings-header-bar {
flex-direction: column;
align-items: stretch;
gap: 8px;
}
.workspace-settings-selector-button {
width: 100%;
min-width: unset;
}
.tg-settings-header-bar .tg-settings-search-container {
width: 100%;
}
}
.task-genius-settings .tg-workspace-selector-container .workspace-icon {
width: unset;
height: unset;
color: inherit;
}
/* src/styles/settings-modal.scss */
.modal.mod-settings-modal {
width: 90vw;
height: 85vh;
max-width: 1100px;
max-height: 850px;
}
.modal.mod-settings-modal .modal-content {
padding: 0;
height: 100%;
overflow: hidden;
}
.modal.mod-settings-modal .modal-close-button {
z-index: 10;
}
.modal.mod-settings .vertical-tab-header-search {
padding: var(--size-4-3);
border-bottom: 1px solid var(--background-modifier-border);
flex-shrink: 0;
}
.modal.mod-settings .vertical-tab-header-search input {
width: 100%;
padding: var(--size-2-2) var(--size-2-3);
border: 1px solid var(--background-modifier-border);
border-radius: var(--radius-s);
background-color: var(--background-primary);
font-size: var(--font-ui-small);
}
.modal.mod-settings-modal .vertical-tab-header-group {
margin-bottom: var(--size-2-2);
}
.modal.mod-settings-modal .vertical-tab-header-group .vertical-tab-header-group-title {
padding: var(--size-2-2) var(--size-4-3);
font-size: var(--font-ui-smaller);
font-weight: var(--font-weight-semibold);
color: var(--text-muted);
text-transform: uppercase;
letter-spacing: 0.05em;
}
.modal.mod-settings-modal .vertical-tab-header-group .vertical-tab-header-group-items {
display: flex;
flex-direction: column;
}
.modal.mod-settings .vertical-tab-content-header {
display: flex;
flex-wrap: wrap;
align-items: flex-start;
justify-content: space-between;
gap: var(--size-2-2);
padding: var(--size-4-2) var(--size-4-2);
border-bottom: 1px solid var(--background-modifier-border);
flex-shrink: 0;
background-color: var(--background-primary);
margin-bottom: var(--size-4-4);
align-items: center;
}
.modal.mod-settings .vertical-tab-content-header .vertical-tab-content-header-title {
display: flex;
align-items: center;
gap: var(--size-2-3);
margin: 0;
font-size: var(--font-ui-large);
font-weight: var(--font-weight-semibold);
color: var(--text-normal);
padding: 0;
}
.modal.mod-settings .vertical-tab-content-header .vertical-tab-content-header-title .vertical-tab-content-header-icon {
display: flex;
align-items: center;
justify-content: center;
color: var(--interactive-accent);
}
.modal.mod-settings .vertical-tab-content-header .vertical-tab-content-header-actions {
display: flex;
align-items: center;
gap: var(--size-2-3);
flex-shrink: 0;
}
.modal.mod-settings .vertical-tab-content-header .vertical-tab-content-header-actions button {
display: flex;
align-items: center;
gap: var(--size-2-2);
font-size: var(--font-ui-small);
}
.modal.mod-settings .vertical-tab-content-header .vertical-tab-content-header-desc {
width: 100%;
margin: 0;
font-size: var(--font-ui-small);
color: var(--text-muted);
line-height: 1.5;
}
.modal.mod-settings-modal .vertical-tab-content-body {
flex: 1;
overflow-y: auto;
padding: var(--size-4-4) var(--size-4-6);
animation: settingsFadeIn 0.15s ease-out;
}
.modal.mod-settings-modal .vertical-tab-content-body .setting-item {
padding-top: var(--size-4-3);
padding-bottom: var(--size-4-3);
}
.modal.mod-settings-modal .vertical-tab-content-body .setting-item:first-child {
padding-top: 0;
border-top: none;
}
.modal.mod-settings-modal .vertical-tab-content-body {
}
.modal.mod-settings-modal .vertical-tab-content-body h3 {
margin-top: var(--size-4-4);
margin-bottom: var(--size-2-3);
font-size: var(--font-ui-medium);
font-weight: var(--font-weight-semibold);
color: var(--text-normal);
}
.modal.mod-settings-modal .vertical-tab-content-body h3:first-child {
margin-top: 0;
}
.modal.mod-settings-modal .vertical-tab-content-empty {
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
height: 100%;
padding: var(--size-4-8);
text-align: center;
color: var(--text-muted);
}
@keyframes settingsFadeIn {
from {
opacity: 0;
transform: translateY(4px);
}
to {
opacity: 1;
transform: translateY(0);
}
}
@media (max-width: 600px) {
.modal.mod-settings-modal .vertical-tabs-container {
flex-direction: column;
}
.modal.mod-settings-modal .vertical-tab-header {
width: 100%;
height: auto;
max-height: 200px;
border-right: none;
border-bottom: 1px solid var(--background-modifier-border);
overflow-y: auto;
}
.modal.mod-settings-modal .vertical-tab-header .vertical-tab-header-group {
display: flex;
flex-wrap: wrap;
gap: var(--size-2-1);
margin-bottom: 0;
padding: var(--size-2-2);
}
.modal.mod-settings-modal .vertical-tab-header .vertical-tab-header-group .vertical-tab-header-group-title {
display: none;
}
.modal.mod-settings-modal .vertical-tab-header .vertical-tab-header-group .vertical-tab-header-group-items {
display: flex;
flex-direction: row;
flex-wrap: wrap;
gap: var(--size-2-1);
}
.modal.mod-settings-modal .vertical-tab-header {
}
}
.is-mobile .modal.mod-settings .vertical-tab-header {
width: 100%;
height: 100%;
max-height: none;
border-right: none;
overflow-y: auto;
}
.is-mobile .modal.mod-settings .vertical-tab-header.is-mobile-hidden {
display: none;
}
.is-mobile .modal.mod-settings .vertical-tab-header .vertical-tab-header-group {
margin-bottom: var(--size-4-2);
}
.is-mobile .modal.mod-settings .vertical-tab-header .vertical-tab-header-group .vertical-tab-header-group-title {
display: block;
}
.is-mobile .modal.mod-settings .vertical-tab-header .vertical-tab-header-group .vertical-tab-header-group-items {
flex-direction: column;
}
.is-mobile .modal.mod-settings .vertical-tab-header {
}
.is-mobile .modal.mod-settings .vertical-tab-content-container {
width: 100%;
height: 100%;
}
.is-mobile .modal.mod-settings .vertical-tab-content-container.is-mobile-hidden {
display: none;
}
.is-mobile .modal.mod-settings .vertical-tab-content-header {
padding: var(--size-4-3) var(--size-4-4);
}
.is-mobile .modal.mod-settings .vertical-tab-content-body {
padding: var(--size-4-3) var(--size-4-4);
}
.task-genius-settings-entry {
max-width: 800px;
margin: 0 auto;
padding: var(--size-4-4);
}
.settings-entry-header {
text-align: center;
margin-bottom: var(--size-4-8);
padding-bottom: var(--size-4-6);
margin-block-start: var(--size-4-8);
border-bottom: 1px solid var(--background-modifier-border);
}
.settings-entry-title-container {
display: flex;
align-items: center;
justify-content: center;
gap: var(--size-4-3);
margin-bottom: var(--size-4-3);
}
.settings-entry-logo {
display: flex;
align-items: center;
justify-content: center;
width: 48px;
height: 48px;
color: var(--interactive-accent);
--icon-size: 48px;
}
.settings-entry-title-text {
display: flex;
flex-direction: column;
align-items: flex-start;
}
.settings-entry-title-text h2 {
margin: 0;
padding: 0;
font-size: var(--font-ui-large);
font-weight: var(--font-weight-bold);
color: var(--text-normal);
}
.settings-entry-title-text .settings-entry-version {
font-size: var(--font-ui-smaller);
color: var(--text-muted);
}
.settings-entry-desc {
max-width: 500px;
margin: 0 auto;
}
.settings-entry-desc p {
margin: 0;
font-size: var(--font-ui-small);
color: var(--text-muted);
line-height: 1.6;
}
.settings-entry-action {
margin-bottom: var(--size-4-6);
padding: var(--size-4-4);
background-color: var(--background-secondary);
border-radius: var(--radius-m);
border: 1px solid var(--background-modifier-border);
}
.settings-entry-action .setting-item {
border: none;
padding: 0;
}
.settings-entry-action .setting-item-info {
flex: 1;
}
.settings-entry-action .setting-item-control button.mod-cta {
padding: var(--size-4-2) var(--size-4-6);
font-size: var(--font-ui-medium);
}
.settings-entry-links {
margin-block-end: var(--size-4-6);
margin-block-start: var(--size-4-4);
}
.settings-entry-links h3 {
margin: 0 0 var(--size-4-3);
font-size: var(--font-ui-medium);
font-weight: var(--font-weight-semibold);
color: var(--text-normal);
}
.settings-entry-links-grid {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
gap: var(--size-4-2);
}
.settings-entry-link {
display: flex;
align-items: center;
gap: var(--size-2-3);
padding: var(--size-4-2) var(--size-4-3);
background-color: var(--background-secondary);
border: 1px solid var(--background-modifier-border);
border-radius: var(--radius-s);
color: var(--text-muted);
text-decoration: none;
font-size: var(--font-ui-small);
transition: all 0.15s ease;
}
.settings-entry-link:hover {
background-color: var(--background-modifier-hover);
color: var(--text-normal);
border-color: var(--interactive-accent);
}
.settings-entry-link .settings-entry-link-icon {
display: flex;
align-items: center;
justify-content: center;
width: 18px;
height: 18px;
color: var(--interactive-accent);
}
.settings-entry-features h3 {
margin: 0 0 var(--size-4-3);
font-size: var(--font-ui-medium);
font-weight: var(--font-weight-semibold);
color: var(--text-normal);
}
.settings-entry-features-grid {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
gap: var(--size-4-3);
}
.settings-entry-feature {
display: flex;
align-items: flex-start;
gap: var(--size-4-2);
padding: var(--size-4-3);
background-color: var(--background-secondary);
border: 1px solid var(--background-modifier-border);
border-radius: var(--radius-m);
transition: all 0.15s ease;
}
.settings-entry-feature:hover {
border-color: var(--background-modifier-border-hover);
transform: translateY(-1px);
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
}
.settings-entry-feature .settings-entry-feature-icon {
display: flex;
align-items: center;
justify-content: center;
width: 32px;
height: 32px;
background-color: var(--interactive-accent);
border-radius: var(--radius-s);
color: var(--text-on-accent);
flex-shrink: 0;
}
.settings-entry-feature .settings-entry-feature-icon svg {
width: 18px;
height: 18px;
}
.settings-entry-feature .settings-entry-feature-text {
display: flex;
flex-direction: column;
gap: var(--size-2-1);
}
.settings-entry-feature .settings-entry-feature-text strong {
font-size: var(--font-ui-small);
font-weight: var(--font-weight-medium);
color: var(--text-normal);
}
.settings-entry-feature .settings-entry-feature-text span {
font-size: var(--font-ui-smaller);
color: var(--text-muted);
line-height: 1.4;
}
/* src/styles/onboarding-components.scss */
.onboarding-view:has(.component-showcase) .onboarding-content {
overflow-y: hidden;
}
.onboarding-view:has(.component-showcase, .intro-line) .onboarding-header {
padding: calc(var(--onboarding-spacing) * 2) var(--onboarding-spacing) var(--size-4-2) var(--onboarding-spacing);
}
.onboarding-view .onboarding-header {
text-align: center;
}
.fluent-top-navigation.component-preview {
overflow-x: auto;
}
.fluent-sidebar.component-preview {
width: 100%;
}
.component-showcase:has(.tg-fluent-container.component-preview-sidebar + .tg-fluent-container.component-preview-topnav) .tg-fluent-container {
background: var(--background-primary);
}
.tg-fluent-container.component-preview-sidebar {
width: 200px;
min-width: 200px;
border-right: 1px solid var(--background-modifier-border);
}
.tg-fluent-container.component-preview-topnav {
background: var(--background-primary);
}
.component-showcase {
display: flex;
gap: var(--size-4-6);
margin: var(--size-4-4) 0;
min-height: 400px;
min-width: 90%;
}
.component-showcase-preview {
flex: 1;
background: var(--background-secondary);
border-radius: var(--radius-m);
padding: var(--size-4-4);
overflow: hidden;
position: relative;
border: 1px solid var(--background-modifier-border);
display: flex;
flex-direction: row;
overflow-x: auto;
}
.component-showcase-description {
flex: 1;
display: flex;
flex-direction: column;
gap: var(--size-4-3);
}
.component-showcase-description h3 {
margin: 0;
color: var(--text-normal);
}
.component-showcase-description p {
margin: 0;
color: var(--text-muted);
line-height: 1.6;
}
.component-feature-list {
list-style: none;
padding: 0;
margin: 0;
display: flex;
flex-direction: column;
gap: var(--size-4-2);
}
.component-feature-list li {
display: flex;
align-items: flex-start;
gap: var(--size-4-2);
color: var(--text-normal);
}
.component-feature-list li::before {
content: "\2713";
color: var(--interactive-accent);
font-weight: bold;
flex-shrink: 0;
}
.component-preview {
pointer-events: none;
user-select: none;
}
.component-preview-sidebar {
max-width: 300px;
}
.component-preview-popover {
max-width: 350px;
}
.component-preview input,
.component-preview button,
.component-preview .clickable-icon {
pointer-events: none;
cursor: default;
}
.component-tabs {
display: flex;
gap: var(--size-4-2);
margin-bottom: var(--size-4-4);
border-bottom: 1px solid var(--background-modifier-border);
padding-bottom: var(--size-4-2);
}
.component-tab {
padding: var(--size-4-2) var(--size-4-4);
border-radius: var(--radius-s);
cursor: pointer;
transition: all 0.2s ease;
color: var(--text-muted);
font-weight: 500;
}
.component-tab:hover {
background: var(--background-modifier-hover);
color: var(--text-normal);
}
.component-tab.is-active {
background: var(--interactive-accent);
color: var(--text-on-accent);
}
.components-grid {
display: grid;
grid-template-columns: 1fr;
gap: var(--size-4-8);
}
@media (max-width: 768px) {
.component-showcase {
flex-direction: column;
}
.component-showcase-preview {
min-height: 300px;
}
}
.file-filter-preview {
display: flex;
flex-direction: column;
gap: var(--size-4-4);
}
.file-filter-config {
background: var(--background-primary);
border-radius: var(--radius-m);
padding: var(--size-4-4);
border: 1px solid var(--background-modifier-border);
}
.file-filter-stats-preview {
display: flex;
gap: var(--size-4-4);
padding: var(--size-4-3);
background: var(--background-secondary);
border-radius: var(--radius-s);
}
.filter-stat-item {
flex: 1;
text-align: center;
}
.filter-stat-value {
font-size: var(--font-ui-larger);
font-weight: 600;
color: var(--text-accent);
display: block;
}
.filter-stat-label {
font-size: var(--font-ui-small);
color: var(--text-muted);
display: block;
margin-top: var(--size-4-1);
}
.recommended-configs {
display: flex;
flex-direction: column;
gap: var(--size-4-2);
margin-top: var(--size-4-4);
}
.recommended-config-item {
padding: var(--size-4-3);
background: var(--background-secondary);
border-radius: var(--radius-s);
border: 1px solid var(--background-modifier-border);
cursor: pointer;
transition: all 0.2s ease;
}
.recommended-config-item:hover {
background: var(--background-modifier-hover);
border-color: var(--interactive-accent);
}
.recommended-config-item h4 {
margin: 0 0 var(--size-4-2) 0;
color: var(--text-normal);
font-size: var(--font-ui-medium);
}
.recommended-config-item p {
margin: 0;
color: var(--text-muted);
font-size: var(--font-ui-small);
}
.component-showcase-preview.tg-fluent-container.component-preview-sidebar .fluent-sidebar {
width: 100%;
}
.component-showcase-preview .component-preview-sidebar .fluent-navigation-item,
.component-showcase-preview .component-preview-sidebar .fluent-project-item {
pointer-events: auto;
cursor: pointer;
outline: none;
}
.component-showcase-preview .component-preview-sidebar .fluent-navigation-item.is-active,
.component-showcase-preview .component-preview-sidebar .fluent-project-item.is-active {
background: var(--background-modifier-hover);
border-radius: var(--radius-s);
}
.component-showcase-preview .component-preview-sidebar .fluent-navigation-item:focus-visible,
.component-showcase-preview .component-preview-sidebar .fluent-project-item:focus-visible {
box-shadow: 0 0 0 2px var(--interactive-accent);
border-radius: var(--radius-s);
}
.component-showcase-preview.focus-mode .is-dimmed {
opacity: 0.5;
filter: grayscale(15%);
pointer-events: none;
}
.component-showcase-preview.focus-mode .is-focused {
position: relative;
outline: 1px solid var(--color-accent);
outline-offset: -1px;
border-radius: var(--radius-s);
z-index: 1;
}
.component-showcase:has(.fluent-top-navigation):not(:has(.component-preview-sidebar)) {
flex-direction: column;
}
.component-showcase-preview.focus-mode.tg-fluent-container.component-preview-topnav {
flex: unset;
height: max-content;
}
.fluent-top-navigation.component-preview.is-focused {
outline: unset;
}
.component-showcase-preview:has(.component-preview-sidebar + .component-preview-topnav) .component-preview-sidebar {
border-top: unset;
}
.component-showcase:has(.tg-fluent-container.component-preview-sidebar + .tg-fluent-container.component-preview-topnav) .tg-fluent-container.component-preview-topnav {
border-top: unset;
background: var(--background-primary);
}
.onboarding-content .resources-section {
width: 100%;
}
/* src/styles/layout-placement.scss */
.placement-preview {
display: grid;
grid-template-columns: 1fr 2fr 1fr;
gap: 2px;
padding: var(--size-4-2);
height: 180px;
width: 100%;
background: var(--background-primary);
border-radius: 4px;
}
.placement-sidebar {
border-radius: 2px;
padding: 4px;
display: flex;
flex-direction: column;
gap: 2px;
}
.placement-sidebar-active {
background: var(--interactive-accent);
opacity: 0.4;
}
.placement-sidebar-inactive {
background: var(--background-modifier-border);
opacity: 0.3;
}
.placement-sidebar-item {
height: 6px;
border-radius: 1px;
}
.placement-sidebar-item-active {
background: var(--text-normal);
opacity: 0.3;
}
.placement-sidebar-item-inactive {
background: var(--text-faint);
opacity: 0.2;
}
.placement-sidebar-item-small {
height: 5px;
}
.placement-center {
border-radius: 2px;
display: flex;
flex-direction: column;
}
.placement-center-active {
background: var(--interactive-accent);
opacity: 0.4;
}
.placement-tab-bar {
height: 16px;
border-bottom: 1px solid var(--background-modifier-border);
padding: 2px 4px;
display: flex;
gap: 2px;
align-items: center;
}
.placement-tab {
width: 24px;
height: 10px;
background: var(--background-modifier-border);
opacity: 0.3;
border-radius: 1px;
}
.placement-tab-active {
background: var(--text-normal);
opacity: 0.5;
}
.placement-content {
flex: 1;
padding: 6px;
display: flex;
flex-direction: column;
gap: 4px;
}
.placement-content-line {
height: 8px;
background: var(--text-normal);
opacity: 0.3;
border-radius: 1px;
}
/* src/styles/file-filter-settings.scss */
.file-filter-rules-container {
margin-top: 1rem;
border: 1px solid var(--background-modifier-border);
border-radius: 6px;
padding: 1rem;
background: var(--background-secondary);
}
.file-filter-rule {
display: flex;
align-items: center;
gap: 1rem;
padding: 0.75rem;
margin-bottom: 0.5rem;
border: 1px solid var(--background-modifier-border);
border-radius: 4px;
background: var(--background-primary);
overflow-x: auto;
}
.file-filter-rule:last-child {
margin-bottom: 0;
}
.file-filter-rule-type,
.file-filter-rule-path,
.file-filter-rule-scope,
.file-filter-rule-enabled {
display: flex;
flex-direction: column;
gap: 0.25rem;
}
.file-filter-rule-type {
min-width: 80px;
}
.file-filter-rule-path {
flex: 1;
}
.file-filter-rule-enabled {
min-width: 60px;
}
.file-filter-rule label {
font-size: 0.8rem;
font-weight: 500;
color: var(--text-muted);
}
.file-filter-rule input[type=text] {
padding: 0.25rem 0.5rem;
border: 1px solid var(--background-modifier-border);
border-radius: 3px;
background: var(--background-primary);
color: var(--text-normal);
font-size: 0.9rem;
}
.file-filter-rule input[type=checkbox] {
width: 16px;
height: 16px;
}
.file-filter-rule-delete {
padding: 0.25rem;
border: none;
border-radius: 3px;
background: var(--interactive-accent);
color: var(--text-on-accent);
cursor: pointer;
display: flex;
align-items: center;
justify-content: center;
min-width: 28px;
height: 28px;
}
.file-filter-add-rule {
margin-top: 1rem;
}
.file-filter-add-rule .setting-item {
border: none;
padding: 0;
}
.file-filter-add-rule .setting-item-control {
gap: 0.5rem;
}
.file-filter-add-rule + .setting-item {
border-top: none;
}
.file-filter-stats {
margin-top: 1.5rem;
padding: 1rem;
border: 1px solid var(--background-modifier-border);
border-radius: 6px;
background: var(--background-secondary);
}
.file-filter-stat {
display: flex;
justify-content: space-between;
align-items: center;
padding: 0.25rem 0;
}
.file-filter-stat:not(:last-child) {
border-bottom: 1px solid var(--background-modifier-border);
margin-bottom: 0.25rem;
padding-bottom: 0.5rem;
}
.stat-label {
font-weight: 500;
color: var(--text-normal);
}
.stat-value {
font-weight: 600;
color: var(--interactive-accent);
}
.file-filter-stat.error {
background-color: var(--background-modifier-error);
border-left: 3px solid var(--text-error);
}
.file-filter-stat.error .stat-label {
color: var(--text-error);
}
.setting-item .setting-item-control button[aria-label*=refresh] {
transition: transform 0.2s ease;
}
.setting-item .setting-item-control button[aria-label*=refresh]:hover {
transform: rotate(90deg);
}
@keyframes refresh-spin {
from {
transform: rotate(0deg);
}
to {
transform: rotate(360deg);
}
}
.setting-item .setting-item-control button[disabled] .lucide-refresh-cw {
animation: refresh-spin 1s linear infinite;
}
@media (max-width: 768px) {
.file-filter-rule {
flex-direction: column;
align-items: stretch;
gap: 0.5rem;
}
.file-filter-rule-type,
.file-filter-rule-path,
.file-filter-rule-enabled {
min-width: auto;
}
.file-filter-rule-delete {
align-self: flex-end;
margin-top: 0.5rem;
}
}
.theme-dark .file-filter-rule input[type=text] {
background: var(--background-primary-alt);
border-color: var(--background-modifier-border-hover);
}
.theme-dark .file-filter-rule input[type=text]:focus {
border-color: var(--interactive-accent);
box-shadow: 0 0 0 2px var(--interactive-accent-hover);
}
.file-filter-rules-container:empty::before {
content: "No filter rules configured. Add rules below to start filtering files and folders.";
display: block;
text-align: center;
color: var(--text-muted);
font-style: italic;
padding: 2rem;
}
.file-filter-preset-container {
margin-top: 1rem;
padding: 1rem;
border: 1px solid var(--background-modifier-border);
border-radius: 6px;
background: var(--background-secondary);
}
.file-filter-preset-container .setting-item {
border: none;
padding: 0.5rem 0;
}
.file-filter-preset-container .setting-item:not(:last-child) {
border-bottom: 1px solid var(--background-modifier-border);
}
.file-filter-preset-container button {
position: relative;
transition: all 0.2s ease;
}
.file-filter-preset-container button:disabled {
opacity: 0.6;
cursor: not-allowed;
background: var(--background-modifier-border);
color: var(--text-muted);
}
.file-filter-preset-container button:not(:disabled):hover {
transform: translateY(-1px);
box-shadow: var(--shadow-s);
}
.file-filter-preset-container button[disabled] {
background: var(--color-green);
color: var(--text-on-accent);
border-color: var(--color-green);
}
.theme-dark .file-filter-preset-container button[disabled] {
background: var(--color-green-rgb);
opacity: 0.8;
}
.file-filter-rule-editor-modal {
max-width: 800px;
width: 90vw;
}
/* src/styles/habit-edit-dialog.scss */
.habit-edit-dialog {
max-width: 600px;
width: 100%;
}
.habit-edit-dialog .modal-content {
padding: 20px;
}
.habit-edit-dialog .habit-type-selector {
margin-bottom: 20px;
}
.habit-edit-dialog .habit-type-description {
font-weight: 600;
margin-bottom: 10px;
}
.habit-edit-dialog .habit-type-grid {
display: grid;
grid-template-columns: repeat(2, 1fr);
gap: 10px;
}
@media (max-width: 500px) {
.habit-edit-dialog .habit-type-grid {
grid-template-columns: 1fr;
}
}
.habit-edit-dialog .habit-type-item {
display: flex;
padding: 12px;
border-radius: var(--radius-m);
border: 1px solid var(--background-modifier-border);
background-color: var(--background-secondary);
cursor: pointer;
transition: all 0.2s ease;
}
.habit-edit-dialog .habit-type-item:hover {
background-color: var(--background-modifier-hover);
}
.habit-edit-dialog .habit-type-item.selected {
border-color: var(--interactive-accent);
background-color: var(--interactive-accent-hover);
}
.habit-edit-dialog .habit-type-icon {
display: flex;
align-items: center;
justify-content: center;
width: 40px;
height: 40px;
border-radius: 50%;
background-color: var(--background-primary);
margin-right: 10px;
}
.habit-edit-dialog .habit-type-icon svg {
width: 20px;
height: 20px;
color: var(--text-normal);
}
.habit-edit-dialog .habit-type-text {
flex: 1;
display: flex;
flex-direction: column;
}
.habit-edit-dialog .habit-type-name {
font-weight: 600;
margin-bottom: 4px;
}
.habit-edit-dialog .habit-type-desc {
font-size: 0.85em;
color: var(--text-muted);
}
.habit-edit-dialog .habit-common-form,
.habit-edit-dialog .habit-type-form {
margin-bottom: 20px;
}
.habit-edit-dialog .habit-icon-preview {
display: flex;
align-items: center;
justify-content: center;
width: 30px;
height: 30px;
margin-left: 10px;
background-color: var(--background-primary);
border-radius: 50%;
}
.habit-edit-dialog .habit-icon-preview svg {
width: 18px;
height: 18px;
}
.habit-edit-dialog .habit-mapping-container {
border: 1px solid var(--background-modifier-border);
border-radius: var(--radius-s);
padding: 10px;
margin-bottom: 10px;
margin-top: 5px;
}
.habit-edit-dialog .habit-mapping-row {
display: flex;
align-items: center;
margin-bottom: 8px;
}
.habit-edit-dialog .habit-mapping-key {
width: 80px;
margin-right: 5px;
font-size: 0.9em;
}
.habit-edit-dialog .habit-mapping-arrow {
margin: 0 10px;
color: var(--text-muted);
}
.habit-edit-dialog .habit-mapping-value {
flex: 1;
font-size: 0.9em;
margin-right: var(--size-4-4);
}
.habit-edit-dialog .habit-mapping-delete {
background: none;
border: none;
color: var(--text-error);
cursor: pointer;
font-size: 1.2em;
padding: 0 8px;
}
.habit-edit-dialog .habit-add-mapping-button {
background-color: var(--interactive-accent);
color: var(--text-on-accent);
border: none;
border-radius: var(--radius-s);
padding: 6px 12px;
cursor: pointer;
font-size: 0.9em;
}
.habit-edit-dialog .habit-events-container {
border: 1px solid var(--background-modifier-border);
border-radius: var(--radius-s);
padding: 10px;
margin-bottom: 10px;
margin-top: 5px;
}
.habit-edit-dialog .habit-event-row {
display: flex;
margin-bottom: 8px;
gap: 5px;
}
.habit-edit-dialog .habit-event-name {
width: 120px;
font-size: 0.9em;
}
.habit-edit-dialog .habit-event-details {
flex: 1;
font-size: 0.9em;
}
.habit-edit-dialog .habit-event-property {
width: 120px;
font-size: 0.9em;
}
.habit-edit-dialog .habit-event-delete {
background: none;
border: none;
color: var(--text-error);
cursor: pointer;
font-size: 1.2em;
padding: 0 8px;
}
.habit-edit-dialog .habit-add-event-button {
background-color: var(--interactive-accent);
color: var(--text-on-accent);
border: none;
border-radius: var(--radius-s);
padding: 6px 12px;
cursor: pointer;
font-size: 0.9em;
}
.habit-edit-dialog .habit-edit-buttons {
display: flex;
justify-content: flex-end;
gap: 10px;
margin-top: 20px;
}
.habit-edit-dialog .habit-cancel-button {
background-color: var(--background-modifier-hover);
color: var(--text-normal);
border: 1px solid var(--background-modifier-border);
border-radius: var(--radius-s);
padding: 8px 16px;
cursor: pointer;
}
.habit-edit-dialog .habit-save-button {
background-color: var(--interactive-accent);
color: var(--text-on-accent);
border: none;
border-radius: var(--radius-s);
padding: 8px 16px;
cursor: pointer;
}
.habit-edit-dialog input[type=text],
.habit-edit-dialog input[type=number] {
background-color: var(--background-primary);
border: 1px solid var(--background-modifier-border);
border-radius: var(--radius-s);
padding: 6px;
color: var(--text-normal);
}
.habit-edit-dialog .habit-type-item.selected .habit-type-desc,
.habit-edit-dialog .habit-type-item.selected .habit-type-name {
color: var(--text-on-accent);
}
/* src/styles/habit-list.scss */
.habit-list-container {
padding: 12px;
width: 100%;
}
.habit-settings-container {
padding-top: 12px;
border-top: 1px solid var(--background-modifier-border);
}
.habit-add-button-container {
display: flex;
justify-content: flex-end;
margin-bottom: 16px;
}
.habit-add-button {
display: flex;
align-items: center;
gap: 6px;
padding: 6px 12px;
background-color: var(--interactive-accent);
color: var(--text-on-accent);
border-radius: var(--radius-s);
cursor: pointer;
font-size: 14px;
}
.habit-add-button svg {
width: 16px;
height: 16px;
}
.habit-empty-state {
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
min-height: 200px;
text-align: center;
padding: 20px;
border: 1px dashed var(--background-modifier-border);
border-radius: var(--radius-m);
background-color: var(--background-secondary);
}
.habit-empty-state h2 {
margin: 0 0 10px 0;
font-size: 1.2em;
color: var(--text-normal);
}
.habit-empty-state p {
margin: 0;
color: var(--text-muted);
}
.habit-items-container {
display: flex;
flex-direction: column;
gap: 10px;
}
.habit-item {
display: flex;
align-items: center;
padding: 12px;
border-radius: var(--radius-m);
background-color: var(--background-secondary);
border: 1px solid var(--background-modifier-border);
transition: background-color 0.2s ease;
cursor: pointer;
height: 7.5rem;
}
.habit-item:hover {
background-color: var(--background-modifier-hover);
}
.habit-item-icon {
--icon-size: 20px;
display: flex;
align-items: center;
justify-content: center;
width: 48px;
height: 48px;
border-radius: 50%;
background-color: var(--background-primary);
margin-right: 12px;
}
.habit-item-icon svg {
color: var(--text-normal);
}
.habit-item-info {
flex: 1;
min-width: 0;
}
.habit-item-name {
font-weight: 600;
margin-bottom: 4px;
font-size: 16px;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
.habit-item-description {
color: var(--text-muted);
font-size: 12px;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
margin-bottom: 4px;
}
.habit-item-type {
display: inline-block;
font-size: 11px;
padding: 2px 6px;
border-radius: var(--radius-s);
background-color: var(--background-modifier-border);
color: var(--text-muted);
}
.habit-item-actions {
display: flex;
gap: 8px;
margin-left: 12px;
}
.habit-edit-button,
.habit-delete-button {
display: flex;
align-items: center;
justify-content: center;
width: 32px;
height: 32px;
border-radius: 50%;
background-color: var(--background-primary);
cursor: pointer;
padding: 0;
border: 1px solid var(--background-modifier-border);
}
.habit-edit-button:hover,
.habit-delete-button:hover {
background-color: var(--background-modifier-hover);
}
.habit-edit-button svg,
.habit-delete-button svg {
width: 16px;
height: 16px;
color: var(--text-muted);
}
.habit-delete-button:hover svg {
color: var(--text-error);
}
.habit-delete-modal-buttons {
display: flex;
justify-content: flex-end;
gap: 10px;
margin-top: 20px;
}
.habit-delete-button-confirm {
background-color: var(--text-error);
color: #fff;
border: none;
border-radius: var(--radius-s);
padding: 8px 16px;
cursor: pointer;
}
/* src/styles/ics-settings.scss */
.ics-settings-container {
max-width: 800px;
margin: 0 auto;
}
.ics-header-container {
margin-bottom: 2rem;
border-bottom: 1px solid var(--background-modifier-border);
padding-bottom: 1rem;
}
.ics-back-button {
background: var(--interactive-accent);
color: var(--text-on-accent);
border: none;
padding: 0.5rem 1rem;
border-radius: 6px;
cursor: pointer;
margin-bottom: 1rem;
font-size: 0.9em;
transition: all 0.2s ease;
}
.ics-back-button:hover {
background: var(--interactive-accent-hover);
transform: translateY(-1px);
}
.ics-description {
color: var(--text-muted);
margin-top: 0.5rem;
line-height: 1.5;
}
.ics-global-settings {
margin-bottom: 2rem;
padding: 1.5rem;
border: 1px solid var(--background-modifier-border);
border-radius: 8px;
background: var(--background-secondary);
}
.ics-sources-list {
margin-top: 1.5rem;
}
.ics-sources-list h3 {
margin-bottom: 1rem;
color: var(--text-normal);
}
.ics-source-item {
margin-bottom: 1rem;
padding: 1.5rem;
border: 1px solid var(--background-modifier-border);
border-radius: 8px;
background: var(--background-primary);
transition: all 0.2s ease;
}
.ics-source-item:hover {
border-color: var(--interactive-accent);
box-shadow: var(--shadow-s);
}
.ics-source-header {
display: flex;
justify-content: space-between;
align-items: center;
margin-bottom: 1rem;
}
.ics-source-title strong {
font-size: 1.1em;
color: var(--text-normal);
}
.ics-source-status {
padding: 0.3rem 0.8rem;
border-radius: 12px;
font-size: 0.75em;
font-weight: 600;
text-transform: uppercase;
letter-spacing: 0.5px;
}
.status-enabled {
background: var(--color-green);
color: white;
}
.status-disabled {
background: var(--color-red);
color: white;
}
.ics-source-details {
margin-bottom: 1.5rem;
font-size: 0.9em;
color: var(--text-muted);
line-height: 1.4;
}
.ics-source-details div {
margin-bottom: 0.4rem;
}
.ics-source-actions {
display: flex;
justify-content: space-between;
align-items: center;
gap: 1rem;
}
.primary-actions,
.secondary-actions {
display: flex;
gap: 0.5rem;
}
.ics-source-actions button {
padding: 0.5rem 1rem;
border: 1px solid var(--background-modifier-border);
border-radius: 6px;
background: var(--background-secondary);
color: var(--text-normal);
font-size: 0.85em;
cursor: pointer;
transition: all 0.2s ease;
min-width: 80px;
white-space: nowrap;
}
.ics-source-actions button:hover {
background: var(--background-modifier-hover);
border-color: var(--interactive-accent);
transform: translateY(-1px);
}
.ics-source-actions button.mod-cta {
background: var(--interactive-accent);
color: var(--text-on-accent);
border-color: var(--interactive-accent);
}
.ics-source-actions button.mod-cta:hover {
background: var(--interactive-accent-hover);
}
.ics-source-actions button.mod-warning {
background: var(--color-red);
color: white;
border-color: var(--color-red);
}
.ics-source-actions button.mod-warning:hover {
background: var(--color-red);
opacity: 0.8;
}
.ics-source-actions button:disabled {
opacity: 0.5;
cursor: not-allowed;
transform: none;
}
.ics-source-actions button.syncing {
color: var(--interactive-accent);
}
.ics-source-actions button.success {
background: var(--color-green);
color: white;
border-color: var(--color-green);
}
.ics-source-actions button.error {
background: var(--color-red);
color: white;
border-color: var(--color-red);
}
.ics-add-source-container {
margin-top: 2rem;
text-align: center;
padding: 2rem;
border: 2px dashed var(--background-modifier-border);
border-radius: 8px;
background: var(--background-secondary);
transition: all 0.2s ease;
}
.ics-add-source-container:hover {
border-color: var(--interactive-accent);
background: var(--background-modifier-hover);
}
.ics-add-source-container button {
background: var(--interactive-accent);
color: var(--text-on-accent);
border: none;
padding: 0.8rem 1.5rem;
border-radius: 6px;
font-weight: 500;
cursor: pointer;
transition: all 0.2s ease;
font-size: 0.95em;
}
.ics-add-source-container button:hover {
background: var(--interactive-accent-hover);
transform: translateY(-2px);
}
.ics-test-container {
margin-top: 1rem;
text-align: center;
padding: 1rem;
border: 1px solid var(--background-modifier-border);
border-radius: 8px;
background: var(--background-modifier-form-field);
}
.ics-test-button {
background: var(--color-orange);
color: white;
border: none;
padding: 0.6rem 1.2rem;
border-radius: 6px;
font-weight: 500;
cursor: pointer;
transition: all 0.2s ease;
font-size: 0.9em;
}
.ics-test-button:hover {
background: var(--color-orange);
opacity: 0.8;
transform: translateY(-1px);
}
.ics-empty-state {
text-align: center;
padding: 3rem 2rem;
color: var(--text-muted);
font-style: italic;
background: var(--background-secondary);
border-radius: 8px;
border: 1px solid var(--background-modifier-border);
}
.ics-source-modal .modal-content {
max-width: 600px;
max-height: 80vh;
overflow-y: auto;
}
.auth-field {
margin-top: 0.5rem;
}
.modal-button-container {
display: flex;
gap: 0.5rem;
justify-content: flex-end;
margin-top: 1.5rem;
padding-top: 1rem;
border-top: 1px solid var(--background-modifier-border);
}
.modal-button-container button {
padding: 0.5rem 1rem;
border-radius: 6px;
font-size: 0.9em;
min-width: 80px;
}
@media (max-width: 768px) {
.ics-source-header {
flex-direction: column;
align-items: flex-start;
gap: 0.5rem;
}
.ics-source-actions {
flex-direction: column;
gap: 0.5rem;
}
.primary-actions,
.secondary-actions {
width: 100%;
justify-content: space-between;
}
.ics-source-actions button {
flex: 1;
min-width: auto;
}
}
@media (max-width: 480px) {
.ics-source-item {
padding: 1rem;
}
.primary-actions,
.secondary-actions {
flex-direction: column;
}
.ics-source-actions button {
width: 100%;
margin-bottom: 0.3rem;
}
.modal-button-container {
flex-direction: column;
}
.modal-button-container button {
width: 100%;
}
}
.text-replacements-list {
margin: 1rem 0;
}
.text-replacements-empty {
text-align: center;
padding: 2rem;
color: var(--text-muted);
font-style: italic;
background: var(--background-secondary);
border-radius: 6px;
border: 1px dashed var(--background-modifier-border);
}
.text-replacement-rule {
margin-bottom: 1rem;
padding: 1rem;
border: 1px solid var(--background-modifier-border);
border-radius: 6px;
background: var(--background-primary);
transition: all 0.2s ease;
}
.text-replacement-rule:hover {
border-color: var(--interactive-accent);
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}
.text-replacement-header {
display: flex;
justify-content: space-between;
align-items: center;
margin-bottom: 0.8rem;
}
.text-replacement-header strong {
color: var(--text-normal);
font-size: 1em;
}
.text-replacement-status {
padding: 0.2rem 0.6rem;
border-radius: 10px;
font-size: 0.7em;
font-weight: 600;
text-transform: uppercase;
letter-spacing: 0.5px;
}
.text-replacement-status.enabled {
background: var(--color-green);
color: white;
}
.text-replacement-status.disabled {
background: var(--color-red);
color: white;
}
.text-replacement-details {
margin-bottom: 1rem;
font-size: 0.85em;
color: var(--text-muted);
line-height: 1.4;
}
.text-replacement-details div {
margin-bottom: 0.3rem;
}
.text-replacement-pattern {
font-family: var(--font-monospace);
background: var(--background-modifier-form-field);
padding: 0.2rem 0.4rem;
border-radius: 3px;
display: inline-block;
margin-left: 0.5rem;
}
.text-replacement-replacement {
font-family: var(--font-monospace);
background: var(--background-modifier-form-field);
padding: 0.2rem 0.4rem;
border-radius: 3px;
display: inline-block;
margin-left: 0.5rem;
}
.text-replacement-actions {
display: flex;
gap: 0.5rem;
flex-wrap: wrap;
}
.text-replacement-actions button {
padding: 0.4rem 0.8rem;
border: 1px solid var(--background-modifier-border);
border-radius: 4px;
background: var(--background-secondary);
color: var(--text-normal);
font-size: 0.8em;
cursor: pointer;
transition: all 0.2s ease;
}
.text-replacement-actions button:hover {
background: var(--background-modifier-hover);
border-color: var(--interactive-accent);
}
.text-replacement-actions button.mod-cta {
background: var(--interactive-accent);
color: var(--text-on-accent);
border-color: var(--interactive-accent);
}
.text-replacement-actions button.mod-warning {
background: var(--color-red);
color: white;
border-color: var(--color-red);
}
.text-replacement-add {
margin-top: 1rem;
text-align: center;
}
.text-replacement-add button {
background: var(--interactive-accent);
color: var(--text-on-accent);
border: none;
padding: 0.6rem 1.2rem;
border-radius: 6px;
font-weight: 500;
cursor: pointer;
transition: all 0.2s ease;
}
.text-replacement-add button:hover {
background: var(--interactive-accent-hover);
transform: translateY(-1px);
}
.text-replacement-modal .modal-content {
max-width: 700px;
max-height: 85vh;
overflow-y: auto;
}
.test-output {
margin-top: 0.5rem;
padding: 0.8rem;
background: var(--background-modifier-form-field);
border-radius: 4px;
border: 1px solid var(--background-modifier-border);
font-family: var(--font-monospace);
font-size: 0.9em;
}
.test-result {
font-weight: 500;
}
.text-replacement-modal ul {
margin: 0.5rem 0;
padding-left: 1.5rem;
}
.text-replacement-modal li {
margin-bottom: 0.5rem;
line-height: 1.4;
}
.text-replacement-modal code {
background: var(--background-modifier-form-field);
padding: 0.1rem 0.3rem;
border-radius: 3px;
font-family: var(--font-monospace);
font-size: 0.85em;
}
@keyframes spin {
0% {
transform: rotate(0deg);
}
100% {
transform: rotate(360deg);
}
}
.ics-source-actions button.syncing::before {
content: "";
display: inline-block;
margin-right: 0.3rem;
animation: spin 1s linear infinite;
}
.ics-text-replacement-modal,
.ics-source-modal {
max-width: 1000px;
max-height: 90vh;
padding-right: 0;
}
.ics-text-replacement-modal .modal-content,
.ics-source-modal .modal-content {
padding-right: var(--size-4-2);
}
/* src/styles/task-filter.scss */
.task-filter-panel {
padding: var(--size-4-4) var(--size-4-4);
padding-bottom: var(--size-2-2);
padding-left: var(--size-4-8);
background-color: var(--background-primary);
border-top: 1px solid var(--background-modifier-border);
display: flex;
flex-direction: column;
max-height: 300px;
overflow-y: auto;
}
.task-filter-active {
color: var(--color-accent-2);
font-weight: bold;
}
.task-filter-panel > .setting-item {
border-top: unset;
}
.task-filter-header-container {
display: flex;
align-items: center;
justify-content: flex-end;
}
.task-filter-title {
font-size: var(--font-ui-small);
color: var(--text-normal);
}
.task-filter-options {
display: flex;
flex-direction: column;
gap: 10px;
}
.task-filter-section {
display: flex;
flex-direction: column;
}
.task-filter-section h3 {
font-size: 14px;
margin: 5px 0;
color: var(--text-muted);
}
.task-filter-section:last-child {
border-bottom: unset;
}
.task-filter-option {
display: flex;
align-items: center;
gap: 6px;
}
.task-filter-option input[type=checkbox] {
margin: 0;
}
.task-filter-option label {
font-size: 13px;
color: var(--text-normal);
}
.task-filter-buttons {
display: flex;
justify-content: flex-end;
gap: 8px;
margin-top: 8px;
padding-top: 8px;
border-top: 1px solid var(--background-modifier-border);
}
.task-filter-apply,
.task-filter-close {
padding: 6px 12px;
border-radius: 4px;
font-size: 12px;
cursor: pointer;
}
.task-filter-apply {
background-color: var(--interactive-accent);
color: var(--text-on-accent);
}
.task-filter-reset {
background-color: var(--background-modifier-border);
color: var(--text-normal);
}
.task-filter-close {
background-color: var(--background-secondary);
color: var(--text-normal);
}
.task-filter-query-input {
width: 100%;
min-width: 250px;
border-radius: 4px;
padding: 8px 12px;
font-family: var(--font-monospace);
font-size: 14px;
}
.task-filter-query-input:focus {
box-shadow: 0 0 0 2px var(--interactive-accent);
outline: none;
}
.task-filter-section .setting-item-description {
margin-top: 5px;
margin-bottom: 10px;
font-size: 12px;
color: var(--text-muted);
line-height: 1.4;
}
.task-filter-options {
max-height: 70vh;
overflow-y: auto;
padding-right: 5px;
}
.task-filter-options {
margin-bottom: 10px;
padding-top: var(--size-4-4);
}
/* src/styles/global-filter.scss */
.filter-group-separator {
display: flex;
align-items: center;
justify-content: center;
margin: var(--size-2-2) 0;
color: var(--text-muted);
font-size: var(--font-ui-smaller);
}
.filter-group-separator::before,
.filter-group-separator::after {
content: "";
flex-grow: 1;
height: 1px;
background-color: var(--background-modifier-border);
margin: 0 var(--size-2-1);
}
.drag-handle {
cursor: grab;
display: flex;
align-items: center;
justify-content: center;
}
.compact-btn {
padding: var(--size-2-1) var(--size-2-2);
box-shadow: unset !important;
border: unset !important;
--icon-size: var(--size-4-4);
display: flex;
align-items: center;
justify-content: center;
gap: var(--size-2-2);
-webkit-app-region: no-drag;
display: inline-flex;
overflow: hidden;
align-items: center;
color: var(--text-muted);
font-size: var(--font-ui-small);
border-radius: var(--button-radius);
padding: var(--size-2-2);
font-weight: var(--input-font-weight);
cursor: var(--cursor);
font-family: inherit;
gap: var(--size-2-2);
min-height: 30px;
}
.compact-btn:hover {
box-shadow: none;
opacity: var(--icon-opacity-hover);
background-color: var(--background-modifier-hover);
color: var(--text-normal);
}
.compact-input,
.compact-select {
font-size: var(--font-ui-smaller);
height: var(--input-height);
border: 1px solid var(--background-modifier-border);
box-shadow: none;
}
.compact-select:hover {
box-shadow: none;
}
.compact-text {
font-size: var(--font-ui-smaller);
}
.dragging-placeholder {
opacity: 0.5;
background-color: var(--background-modifier-hover);
}
.task-filter-root-container.task-popover-content {
padding: var(--size-2-2);
max-width: 100%;
max-height: 100%;
}
.task-filter-main-panel {
max-width: 100%;
padding: var(--size-2-2);
border-radius: var(--radius-m);
}
.filter-menu {
z-index: 50;
min-width: 600px;
background-color: var(--background-primary);
border-radius: var(--radius-m);
box-shadow: var(--shadow-s);
border: 1px solid var(--background-modifier-border);
}
.root-filter-setup-section {
display: flex;
flex-direction: column;
gap: 0.75rem;
}
.root-condition-section {
display: flex;
align-items: center;
gap: 0.5rem;
padding: 0.5rem;
background-color: var(--background-secondary-alt, var(--background-modifier-hover));
border-radius: var(--radius-m);
border: 1px solid var(--background-modifier-border);
}
.root-condition-label {
font-weight: 500;
color: var(--text-normal);
}
.root-condition-select {
width: auto;
border: 1px solid var(--input-border-color, var(--background-modifier-border));
}
.root-condition-select:focus {
border-color: var(--interactive-accent);
box-shadow: 0 0 0 1px var(--interactive-accent);
}
.root-condition-span {
color: var(--text-normal);
}
.filter-groups-container {
display: flex;
flex-direction: column;
gap: var(--size-2-3);
max-height: 50vh;
overflow: auto;
}
.filter-group {
padding: var(--size-2-3);
border: 1px solid var(--background-modifier-border);
border-radius: var(--radius-m);
background-color: var(--background-primary);
display: flex;
flex-direction: column;
gap: var(--size-4-2);
}
.filter-group-header {
display: flex;
align-items: center;
justify-content: space-between;
}
.filter-group-header-left {
display: flex;
align-items: center;
gap: 0.375rem;
}
.filter-group-header-left .drag-handle-container .svg-icon {
color: var(--text-faint);
}
.filter-group-header-left .drag-handle-container:hover .svg-icon {
color: var(--text-muted);
}
.filter-group-header-left .drag-handle-container {
padding-right: var(--size-2-1);
}
.filter-group-header-left > .compact-text,
.filter-group-header-left > span.compact-text {
font-weight: 500;
color: var(--text-normal);
}
.filter-group-header-left .group-condition-select.compact-select {
border: 1px solid var(--input-border-color, var(--background-modifier-border));
}
.filter-group-header-left .group-condition-select.compact-select:focus {
border-color: var(--interactive-accent);
box-shadow: 0 0 0 1px var(--interactive-accent);
}
.filter-group-header-right {
display: flex;
align-items: center;
gap: 0.25rem;
}
.filter-group-header-right .duplicate-group-btn.compact-icon-btn,
.filter-group-header-right .remove-group-btn.compact-icon-btn {
border-radius: var(--radius-s);
}
.filter-group-header-right .duplicate-group-btn.compact-icon-btn .svg-icon {
color: var(--text-muted);
}
.filter-group-header-right .duplicate-group-btn.compact-icon-btn:hover .svg-icon {
color: var(--interactive-accent);
}
.filter-group-header-right .duplicate-group-btn.compact-icon-btn:hover {
background-color: var(--background-modifier-hover);
}
.filter-group-header-right .remove-group-btn.compact-icon-btn .svg-icon {
color: var(--text-muted);
}
.filter-group-header-right .remove-group-btn.compact-icon-btn:hover .svg-icon {
color: var(--text-error);
}
.filter-group-header-right .remove-group-btn.compact-icon-btn:hover {
background-color: var(--background-error-hover, var(--background-modifier-error-hover));
}
.filters-list {
display: flex;
flex-direction: column;
gap: var(--size-2-2);
padding-left: 1rem;
border-left: 2px solid var(--background-modifier-border);
margin-left: var(--size-4-2);
}
.filters-list:empty {
display: none;
}
.group-footer {
padding-left: 0.375rem;
margin-top: 0.375rem;
}
.add-filter-btn-icon {
display: flex;
align-items: center;
justify-content: center;
}
.filter-item {
display: flex;
align-items: center;
gap: var(--size-2-2);
padding: var(--size-4-2);
padding-top: 0;
padding-bottom: 0;
}
.filter-item .filter-conjunction {
font-size: var(--font-ui-smaller);
font-weight: 600;
color: var(--text-faint);
align-self: center;
}
.filter-item .filter-property-select.compact-select {
flex-basis: 30%;
flex-grow: 0;
flex-shrink: 0;
border: 1px solid var(--input-border-color, var(--background-modifier-border));
box-shadow: none;
}
.filter-item .filter-property-select.compact-select:focus {
border-color: var(--interactive-accent);
box-shadow: 0 0 0 1px var(--interactive-accent);
}
.filter-item .filter-condition-select.compact-select {
width: auto;
border: 1px solid var(--input-border-color, var(--background-modifier-border));
box-shadow: none;
}
.filter-item .filter-condition-select.compact-select:focus {
border-color: var(--interactive-accent);
box-shadow: 0 0 0 1px var(--interactive-accent);
}
.filter-item .filter-value-input.compact-input {
flex-grow: 1;
border: 1px solid var(--input-border-color, var(--background-modifier-border));
width: 100%;
}
.filter-item .filter-value-input.compact-input:focus {
border-color: var(--interactive-accent);
box-shadow: 0 0 0 1px var(--interactive-accent);
}
.filter-item .remove-filter-btn.compact-icon-btn .svg-icon {
color: var(--text-muted);
}
.filter-item .remove-filter-btn.compact-icon-btn:hover .svg-icon {
color: var(--text-error);
}
.filter-item .remove-filter-btn.compact-icon-btn:hover {
background-color: var(--background-error-hover, var(--background-modifier-error-hover));
}
.add-group-section {
margin-top: var(--size-2-1);
margin-bottom: var(--size-2-1);
margin-left: var(--size-2-1);
display: flex;
justify-content: space-between;
}
.add-filter-group-btn-icon {
display: flex;
align-items: center;
justify-content: center;
}
.filter-config-section {
display: flex;
gap: var(--size-4-2);
}
.save-filter-config-btn,
.load-filter-config-btn {
flex: 1;
}
.save-filter-config-btn-icon,
.load-filter-config-btn-icon {
display: flex;
align-items: center;
justify-content: center;
}
.save-filter-config-btn:hover {
background-color: var(--interactive-accent-hover);
color: var(--text-on-accent);
}
.load-filter-config-btn:hover {
background-color: var(--background-modifier-hover);
}
.filter-config-details {
margin-top: var(--size-4-3);
padding: var(--size-4-3);
border: 1px solid var(--background-modifier-border);
border-radius: var(--radius-l);
background:
linear-gradient(
135deg,
var(--background-secondary) 0%,
var(--background-primary-alt) 100%);
box-shadow: var(--shadow-s);
transition: all 0.2s ease-in-out;
}
.filter-config-details:hover {
box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
transform: translateY(-1px);
}
.filter-config-details h3 {
margin: 0 0 var(--size-4-2) 0;
font-size: var(--font-ui-medium);
font-weight: 600;
color: var(--text-accent);
display: flex;
align-items: center;
gap: var(--size-2-2);
}
.filter-config-details p {
margin: var(--size-2-2) 0;
line-height: 1.5;
color: var(--text-normal);
}
.filter-config-meta {
font-size: var(--font-ui-smaller);
color: var(--text-muted);
margin: var(--size-2-1) 0;
padding: var(--size-2-1) var(--size-2-2);
background-color: var(--background-modifier-form-field);
border-radius: var(--radius-s);
border-left: 3px solid var(--interactive-accent);
}
.filter-config-summary {
margin-top: var(--size-4-3);
padding: var(--size-4-2) 0 0 0;
border-top: 2px solid var(--background-modifier-border);
}
.filter-config-summary h4 {
margin: 0 0 var(--size-2-3) 0;
font-size: var(--font-ui-small);
font-weight: 600;
color: var(--text-normal);
display: flex;
align-items: center;
gap: var(--size-2-1);
}
.filter-config-summary p {
margin: var(--size-2-1) 0;
font-size: var(--font-ui-smaller);
color: var(--text-muted);
padding: var(--size-2-1) var(--size-2-2);
background-color: var(--background-primary-alt);
border-radius: var(--radius-s);
}
.filter-config-buttons {
margin-top: var(--size-4-3);
padding-top: var(--size-4-2);
}
.filter-config-name-highlight {
background-color: var(--text-accent);
color: var(--text-on-accent);
padding: 0.125rem 0.25rem;
border-radius: var(--radius-s);
font-weight: 500;
}
.advanced-filter-container {
margin-top: var(--size-4-2);
padding: var(--size-4-3);
border: 1px solid var(--background-modifier-border);
border-radius: var(--radius-m);
background-color: var(--background-secondary);
}
.advanced-filter-container .task-filter-root-container {
background-color: transparent;
border: none;
padding: 0;
}
.advanced-filter-container .task-filter-main-panel {
background-color: transparent;
border: none;
padding: 0;
}
.task-genius-view-config-modal .advanced-filter-container .filter-group {
padding: var(--size-4-2);
margin-bottom: var(--size-4-2);
}
.task-genius-view-config-modal .advanced-filter-container .filter-item {
padding: var(--size-2-2);
gap: var(--size-2-2);
}
.task-genius-view-config-modal .advanced-filter-container .compact-btn {
padding: var(--size-2-1) var(--size-2-2);
min-height: 26px;
}
.task-genius-view-config-modal .advanced-filter-container .compact-select,
.task-genius-view-config-modal .advanced-filter-container .compact-input {
font-size: var(--font-ui-smaller);
height: 28px;
}
/* src/styles/view-setting-tab.scss */
.view-management-list {
display: flex;
flex-direction: column;
gap: 20px;
margin-bottom: var(--size-4-4);
}
.view-section-container {
min-height: 100px;
border: 1px solid var(--background-modifier-border);
border-radius: 6px;
padding: 10px;
}
.view-section-header {
margin-bottom: 10px;
}
.view-section-header h4 {
margin: 0;
font-size: 14px;
font-weight: 600;
color: var(--text-muted);
}
.view-section-items,
.sortable-views {
min-height: 60px;
border: 1px dashed var(--background-modifier-border);
border-radius: 4px;
padding: 8px;
background: var(--background-primary);
}
.sortable-views:empty::after {
content: attr(data-empty-text);
display: block;
text-align: center;
color: var(--text-muted);
padding: 20px;
font-style: italic;
}
.sortable-views[data-region=top]:empty::after {
content: "Drag views here for the top section";
}
.sortable-views[data-region=bottom]:empty::after {
content: "Drag views here for the bottom section";
}
.view-item,
.sortable-view-item {
display: flex;
align-items: center;
padding: 8px;
margin-bottom: 4px;
background-color: var(--background-secondary);
border-radius: 4px;
cursor: move;
transition: all 0.2s ease;
}
.view-item:hover {
background-color: var(--background-secondary-alt) !important;
}
.view-drag-handle {
cursor: grab;
margin-right: 8px;
opacity: 0.5;
}
.view-drag-handle:active {
cursor: grabbing !important;
}
.view-item-icon {
margin-right: 8px;
}
.view-item-info {
flex: 1;
margin-right: 8px;
}
.view-item-name {
font-weight: 500;
}
.view-item-type {
font-size: 12px;
color: var(--text-muted);
}
.view-item-actions {
display: flex;
gap: 4px;
}
.view-action-button {
background: transparent;
border: none;
cursor: pointer;
padding: 4px;
border-radius: 4px;
color: var(--text-muted);
display: flex;
align-items: center;
justify-content: center;
}
.view-action-button:hover {
background: var(--background-modifier-hover);
color: var(--text-normal);
}
.view-action-delete:hover {
background: var(--background-modifier-error);
color: var(--text-on-accent);
}
.sortable-ghost {
opacity: 0.4;
background: var(--background-modifier-hover) !important;
}
.sortable-drag {
opacity: 0;
}
.sortable-chosen {
background: var(--background-modifier-hover) !important;
}
/* src/styles/calendar-view-settings.scss */
.calendar-templates-container {
display: grid;
grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
gap: var(--size-4-3);
margin-bottom: var(--size-4-4);
}
.calendar-template-card {
display: flex;
align-items: flex-start;
gap: var(--size-4-3);
padding: var(--size-4-3);
background: var(--background-secondary);
border-radius: var(--radius-m);
border: 1px solid var(--background-modifier-border);
transition: border-color 0.15s ease, box-shadow 0.15s ease;
}
.calendar-template-card:hover {
border-color: var(--interactive-accent);
box-shadow: 0 2px 8px var(--background-modifier-box-shadow);
}
.calendar-template-icon {
flex-shrink: 0;
display: flex;
align-items: center;
justify-content: center;
width: 40px;
height: 40px;
background: var(--background-primary);
border-radius: var(--radius-s);
color: var(--text-accent);
}
.calendar-template-icon svg {
width: 20px;
height: 20px;
}
.calendar-template-info {
flex: 1;
min-width: 0;
}
.calendar-template-name {
font-weight: var(--font-semibold);
color: var(--text-normal);
margin-bottom: var(--size-2-1);
}
.calendar-template-description {
font-size: var(--font-ui-smaller);
color: var(--text-muted);
line-height: 1.4;
}
.calendar-template-actions {
flex-shrink: 0;
}
.calendar-template-actions button {
font-size: var(--font-ui-smaller);
}
.custom-calendar-views-container {
margin-bottom: var(--size-4-4);
}
.calendar-views-empty {
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
padding: var(--size-4-8) var(--size-4-4);
background: var(--background-secondary);
border-radius: var(--radius-m);
border: 2px dashed var(--background-modifier-border);
text-align: center;
}
.calendar-views-empty-icon {
color: var(--text-faint);
margin-bottom: var(--size-4-2);
}
.calendar-views-empty-icon svg {
width: 48px;
height: 48px;
}
.calendar-views-empty-text {
font-size: var(--font-ui-medium);
color: var(--text-muted);
font-weight: var(--font-medium);
margin-bottom: var(--size-2-2);
}
.calendar-views-empty-hint {
font-size: var(--font-ui-smaller);
color: var(--text-faint);
}
.calendar-views-list {
display: flex;
flex-direction: column;
gap: var(--size-2-2);
}
.calendar-view-item {
display: flex;
align-items: center;
gap: var(--size-4-2);
padding: var(--size-4-2) var(--size-4-3);
background: var(--background-secondary);
border-radius: var(--radius-m);
border: 1px solid var(--background-modifier-border);
transition: all 0.15s ease;
}
.calendar-view-item:hover {
border-color: var(--interactive-accent);
}
.calendar-view-item.is-disabled {
opacity: 0.6;
}
.calendar-view-item.is-disabled .calendar-view-name {
text-decoration: line-through;
}
.calendar-view-drag-handle {
cursor: grab;
color: var(--text-faint);
padding: var(--size-2-1);
}
.calendar-view-drag-handle:hover {
color: var(--text-muted);
}
.calendar-view-drag-handle:active {
cursor: grabbing;
}
.calendar-view-icon {
flex-shrink: 0;
display: flex;
align-items: center;
justify-content: center;
width: 32px;
height: 32px;
background: var(--background-primary);
border-radius: var(--radius-s);
color: var(--text-accent);
}
.calendar-view-icon svg {
width: 16px;
height: 16px;
}
.calendar-view-info {
flex: 1;
min-width: 0;
}
.calendar-view-name {
font-weight: var(--font-medium);
color: var(--text-normal);
}
.calendar-view-meta {
display: flex;
flex-wrap: wrap;
gap: var(--size-2-2);
margin-top: var(--size-2-1);
font-size: var(--font-ui-smaller);
color: var(--text-muted);
}
.calendar-view-base-type {
background: var(--background-primary);
padding: 1px 6px;
border-radius: var(--radius-s);
}
.calendar-view-config-summary {
color: var(--text-faint);
}
.calendar-view-actions {
display: flex;
gap: var(--size-2-1);
}
.calendar-view-action-btn {
padding: var(--size-2-2);
border-radius: var(--radius-s);
}
.calendar-view-action-delete:hover {
color: var(--text-error);
}
.calendar-add-view-container {
margin-top: var(--size-4-2);
}
.sortable-ghost {
opacity: 0.4;
background: var(--interactive-accent);
}
.sortable-chosen {
box-shadow: 0 4px 12px var(--background-modifier-box-shadow);
}
.sortable-drag {
opacity: 0.9;
}
.calendar-view-config-modal {
width: 560px;
max-width: 90vw;
}
.calendar-view-config-modal .modal-header {
margin-bottom: var(--size-4-3);
}
.calendar-view-config-modal .modal-header h2 {
margin: 0;
}
.calendar-config-tabs {
display: flex;
gap: var(--size-2-1);
margin-bottom: var(--size-4-4);
padding-bottom: var(--size-4-2);
border-bottom: 1px solid var(--background-modifier-border);
}
.calendar-config-tab {
display: flex;
align-items: center;
gap: var(--size-2-2);
padding: var(--size-2-2) var(--size-4-2);
border-radius: var(--radius-s);
cursor: pointer;
color: var(--text-muted);
font-size: var(--font-ui-small);
transition: all 0.15s ease;
}
.calendar-config-tab:hover {
background: var(--background-modifier-hover);
color: var(--text-normal);
}
.calendar-config-tab.is-active {
background: var(--interactive-accent);
color: var(--text-on-accent);
}
.calendar-config-tab.is-disabled {
opacity: 0.4;
cursor: not-allowed;
}
.calendar-config-tab.is-disabled:hover {
background: transparent;
color: var(--text-muted);
}
.calendar-config-tab-icon {
display: flex;
align-items: center;
}
.calendar-config-tab-icon svg {
width: 14px;
height: 14px;
}
.calendar-config-content {
min-height: 280px;
}
.calendar-config-content .setting-item {
border-top: none;
padding: var(--size-4-2) 0;
}
.calendar-config-content .setting-item:first-child {
padding-top: 0;
}
.calendar-config-content .setting-item-heading {
border-bottom: 1px solid var(--background-modifier-border);
padding-bottom: var(--size-4-2);
margin-bottom: var(--size-4-2);
}
.calendar-view-icon-selector {
display: inline-block;
}
.calendar-view-icon-selector button {
padding: var(--size-4-2);
}
.calendar-days-selector {
display: flex;
flex-wrap: wrap;
gap: var(--size-2-2);
}
.calendar-day-chip {
display: flex;
align-items: center;
justify-content: center;
min-width: 44px;
padding: var(--size-2-2) var(--size-4-2);
background: var(--background-primary);
border: 1px solid var(--background-modifier-border);
border-radius: var(--radius-s);
cursor: pointer;
font-size: var(--font-ui-smaller);
color: var(--text-normal);
transition: all 0.15s ease;
}
.calendar-day-chip:hover {
border-color: var(--interactive-accent);
}
.calendar-day-chip.is-hidden {
background: var(--text-error);
border-color: var(--text-error);
color: white;
}
.calendar-time-range-display {
text-align: center;
padding: var(--size-4-2);
background: var(--background-secondary);
border-radius: var(--radius-s);
font-size: var(--font-ui-medium);
font-weight: var(--font-semibold);
color: var(--text-accent);
margin-top: var(--size-4-2);
}
.calendar-config-notice {
padding: var(--size-4-3);
background: var(--background-secondary);
border-radius: var(--radius-s);
color: var(--text-muted);
font-size: var(--font-ui-small);
text-align: center;
}
/* src/styles/mcp-integration.scss */
.mcp-status-container {
padding: 16px;
background: var(--background-secondary);
border-radius: 8px;
margin-bottom: 24px;
border: 1px solid var(--background-modifier-border);
}
.mcp-status {
display: flex;
flex-direction: column;
gap: 10px;
}
.mcp-status-indicator {
display: flex;
align-items: center;
gap: 10px;
font-weight: 600;
font-size: 1.05em;
}
.mcp-status-indicator.running .status-dot {
color: var(--background-modifier-success);
font-size: 1.2em;
animation: pulse 2s infinite;
}
.mcp-status-indicator.stopped .status-dot {
color: var(--text-muted);
font-size: 1.2em;
}
.mcp-status-details {
display: flex;
gap: 24px;
font-size: 0.9em;
color: var(--text-muted);
padding-left: 30px;
}
.mcp-config-container {
margin-bottom: 30px;
}
.mcp-client-section {
margin-bottom: 16px;
background: var(--background-primary);
border: 1px solid var(--background-modifier-border);
border-radius: 8px;
overflow: hidden;
}
.mcp-client-header {
cursor: pointer;
padding: 12px 16px;
background: var(--background-secondary);
border-radius: 0;
margin-bottom: 0;
display: flex;
align-items: center;
gap: 10px;
user-select: none;
transition: background-color 0.2s;
}
.mcp-client-header:hover {
background: var(--background-modifier-hover);
}
.mcp-arrow {
transition: transform 0.2s;
display: inline-flex;
align-items: center;
justify-content: center;
width: 16px;
height: 16px;
}
.mcp-arrow svg {
width: 14px;
height: 14px;
stroke-width: 2;
}
.mcp-arrow.expanded {
transform: rotate(90deg);
}
.mcp-client-name {
font-weight: 500;
color: var(--text-normal);
}
.mcp-client-content {
padding: 16px !important;
background: var(--background-primary);
display: none;
}
.mcp-client-content.expanded {
display: block;
}
.mcp-config-block {
position: relative;
margin-bottom: 20px;
}
.mcp-config-code {
position: relative;
padding: 16px 60px 16px 16px !important;
background: var(--code-background);
border: 1px solid var(--background-modifier-border);
border-radius: 6px;
margin-bottom: 0;
font-size: 0.85em;
line-height: 1.5;
overflow: auto;
max-height: 300px;
font-family: var(--font-monospace);
scrollbar-width: thin;
scrollbar-color: var(--scrollbar-thumb-bg) var(--scrollbar-bg);
}
.mcp-config-code code {
color: var(--code-normal);
font-family: var(--font-monospace);
white-space: pre;
display: block;
}
.mcp-config-code::-webkit-scrollbar {
width: 8px;
height: 8px;
}
.mcp-config-code::-webkit-scrollbar-track {
background: var(--scrollbar-bg);
}
.mcp-config-code::-webkit-scrollbar-thumb {
background: var(--scrollbar-thumb-bg);
border-radius: 4px;
}
.mcp-config-code::-webkit-scrollbar-thumb:hover {
background: var(--scrollbar-active-thumb-bg);
}
.mcp-copy-btn {
position: absolute !important;
top: 12px;
right: 12px;
padding: 6px 12px;
font-size: 0.8em;
background: var(--interactive-accent);
color: var(--text-on-accent);
border: none;
border-radius: 4px;
cursor: pointer;
transition: all 0.2s;
font-weight: 500;
z-index: 10;
}
.mcp-copy-btn:hover {
background: var(--interactive-accent-hover);
transform: translateY(-1px);
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
}
.mcp-copy-btn.copied {
animation: copySuccess 0.3s ease;
background: var(--background-modifier-success) !important;
}
.mcp-auth-methods {
margin: 15px 0;
padding: 15px;
background: var(--background-secondary);
border-radius: 8px;
border: 1px solid var(--background-modifier-border);
}
.mcp-auth-list {
margin: 10px 0 0 20px;
line-height: 1.8;
}
.mcp-auth-list li {
margin: 8px 0;
color: var(--text-normal);
}
.mcp-auth-list code {
background: var(--code-background);
padding: 2px 6px;
border-radius: 3px;
font-size: 0.9em;
color: var(--code-normal);
}
.mcp-token-input {
font-family: monospace;
width: 300px;
margin-right: 10px;
}
.mcp-docs-container {
margin-top: 20px;
}
.mcp-docs-section {
margin-bottom: 30px;
}
.mcp-docs-subtitle {
font-size: 1em;
font-weight: 600;
margin-bottom: 12px;
color: var(--text-normal);
}
.mcp-endpoint-box {
display: flex;
align-items: center;
gap: 12px;
padding: 12px;
background: var(--background-secondary);
border: 1px solid var(--background-modifier-border);
border-radius: 8px;
margin-bottom: 20px;
}
.mcp-endpoint-content {
flex: 1;
display: flex;
align-items: center;
gap: 8px;
}
.mcp-endpoint-label {
font-weight: 500;
color: var(--text-muted);
}
.mcp-endpoint-url {
font-family: var(--font-monospace);
padding: 6px 10px;
background: var(--background-primary);
border: 1px solid var(--background-modifier-border);
border-radius: 4px;
color: var(--text-accent);
user-select: text;
}
button.mcp-copy-endpoint-btn {
padding: 6px 12px;
background: var(--interactive-normal);
color: var(--text-normal);
border: 1px solid var(--background-modifier-border);
border-radius: 4px;
cursor: pointer;
transition: background 0.2s;
box-shadow: none;
}
button.mcp-copy-endpoint-btn:hover {
background: var(--interactive-hover);
}
button.mcp-copy-endpoint-btn.copied {
animation: copySuccess 0.3s ease;
background: var(--background-modifier-success) !important;
}
.mcp-tools-grid {
display: grid;
grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
gap: 16px;
margin-bottom: 24px;
}
.mcp-tool-card {
position: relative;
padding: 16px;
background:
linear-gradient(
135deg,
var(--background-secondary) 0%,
var(--background-primary) 100%);
border: 1px solid var(--background-modifier-border);
border-radius: 10px;
transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
overflow: hidden;
}
.mcp-tool-card::before {
content: "";
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 3px;
background:
linear-gradient(
90deg,
var(--interactive-accent) 0%,
var(--text-accent) 100%);
transform: scaleX(0);
transform-origin: left;
transition: transform 0.3s ease;
}
.mcp-tool-card:hover {
transform: translateY(-4px);
box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12);
border-color: var(--interactive-accent);
}
.mcp-tool-card:hover::before {
transform: scaleX(1);
}
.mcp-tool-header {
display: flex;
align-items: center;
gap: 8px;
margin-bottom: 10px;
}
.mcp-tool-icon {
width: 20px;
height: 20px;
display: flex;
align-items: center;
justify-content: center;
color: var(--interactive-accent);
opacity: 0.9;
}
.mcp-tool-icon svg {
width: 16px;
height: 16px;
stroke-width: 2;
}
.mcp-tool-name {
font-family: var(--font-monospace);
font-size: 0.85em;
font-weight: 600;
color: var(--text-accent);
background: var(--background-modifier-box);
padding: 4px 8px;
border-radius: 4px;
display: inline-block;
letter-spacing: 0.5px;
}
.mcp-tool-desc {
font-size: 0.85em;
color: var(--text-muted);
line-height: 1.5;
padding-left: 28px;
}
.mcp-example-container {
background: var(--background-primary);
border: 1px solid var(--background-modifier-border);
border-radius: 12px;
overflow: hidden;
box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
margin-top: 16px;
}
.mcp-example-tabs {
display: flex;
gap: 0;
background:
linear-gradient(
180deg,
var(--background-secondary) 0%,
var(--background-modifier-box) 100%);
border-bottom: 1px solid var(--background-modifier-border);
padding: 0;
}
.mcp-example-tab {
flex: 1;
padding: 14px 20px;
background: transparent;
color: var(--text-muted);
border: none;
cursor: pointer;
transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
font-size: 0.9em;
font-weight: 500;
position: relative;
text-align: center;
box-shadow: none !important;
}
.mcp-example-tab::after {
content: "";
position: absolute;
bottom: 0;
left: 50%;
transform: translateX(-50%) scaleX(0);
width: 80%;
height: 3px;
background: var(--interactive-accent);
transition: transform 0.3s ease;
border-radius: 3px 3px 0 0;
}
.mcp-example-tab:hover {
background: rgba(var(--interactive-accent-rgb), 0.05);
color: var(--text-normal);
}
.mcp-example-tab.active {
background: rgba(var(--interactive-accent-rgb), 0.1);
color: var(--interactive-accent);
font-weight: 600;
}
.mcp-example-tab.active::after {
transform: translateX(-50%) scaleX(1);
}
.mcp-example-code-container {
position: relative;
background: var(--code-background);
border-top: 1px solid var(--background-modifier-border);
}
.mcp-example-block {
display: none;
position: relative;
animation: fadeIn 0.3s ease;
}
.mcp-example-block.active {
display: block;
}
@keyframes fadeIn {
from {
opacity: 0;
transform: translateY(-10px);
}
to {
opacity: 1;
transform: translateY(0);
}
}
.mcp-example-code {
margin: 0;
padding: 24px 80px 24px 24px;
background:
linear-gradient(
135deg,
var(--code-background) 0%,
rgba(var(--background-primary-rgb), 0.5) 100%);
font-size: 0.85em;
line-height: 1.7;
overflow-x: auto;
max-height: 500px;
font-family: var(--font-monospace);
border: none;
position: relative;
}
.mcp-example-code::before {
content: "";
position: absolute;
top: 0;
left: 0;
right: 0;
height: 1px;
background:
linear-gradient(
90deg,
transparent,
var(--background-modifier-border),
transparent);
}
.mcp-example-code code {
color: var(--code-normal);
font-family: var(--font-monospace);
white-space: pre;
display: block;
text-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
}
.mcp-example-copy-btn {
position: absolute;
top: 20px;
right: 20px;
padding: 8px 16px;
background: var(--interactive-accent);
color: var(--text-on-accent);
border: none;
border-radius: 6px;
cursor: pointer;
font-size: 0.85em;
font-weight: 600;
transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
z-index: 10;
box-shadow: 0 2px 8px rgba(var(--interactive-accent-rgb), 0.3);
}
.mcp-example-copy-btn:hover {
background: var(--interactive-accent-hover);
transform: translateY(-2px);
box-shadow: 0 4px 12px rgba(var(--interactive-accent-rgb), 0.4);
}
.mcp-example-copy-btn:active {
transform: translateY(0);
box-shadow: 0 1px 4px rgba(var(--interactive-accent-rgb), 0.3);
}
.mcp-example-copy-btn.copied {
animation: copySuccess 0.4s ease;
background: var(--background-modifier-success) !important;
box-shadow: 0 2px 8px rgba(var(--interactive-success-rgb), 0.3);
}
@keyframes copySuccess {
0% {
transform: scale(1);
}
50% {
transform: scale(1.1);
}
100% {
transform: scale(1);
}
}
@keyframes pulse {
0% {
opacity: 1;
}
50% {
opacity: 0.6;
}
100% {
opacity: 1;
}
}
.mcp-client-header,
.mcp-example-tab,
.mcp-tool-card,
button {
transition: all 0.2s ease;
}
.mcp-config-code .json-key {
color: var(--text-accent);
}
.mcp-config-code .json-string {
color: var(--text-success);
}
.mcp-config-code .json-number {
color: var(--text-warning);
}
.mcp-config-code .json-boolean {
color: var(--text-error);
}
@media (max-width: 768px) {
.mcp-tools-grid {
grid-template-columns: 1fr;
}
.mcp-status-details {
flex-direction: column;
gap: 8px;
}
}
.mcp-example-subtitle {
padding-left: var(--size-4-4);
}
.mcp-cursor-install-section {
margin-bottom: 20px;
}
.mcp-cursor-install-container {
margin-top: 12px;
}
.mcp-cursor-install-desc {
color: var(--text-muted);
margin-bottom: 12px;
font-size: 14px;
}
.mcp-cursor-install-link {
display: inline-block;
margin-bottom: 16px;
transition: transform 0.2s ease;
}
.mcp-cursor-install-link:hover {
transform: scale(1.05);
}
.mcp-cursor-additional-buttons {
margin-top: 12px;
display: flex;
gap: 10px;
}
.mcp-cursor-copy-deeplink-btn {
background: var(--interactive-normal);
color: var(--text-normal);
border: 1px solid var(--background-modifier-border);
padding: 8px 16px;
border-radius: 4px;
font-size: 14px;
cursor: pointer;
transition: all 0.2s ease;
}
.mcp-cursor-copy-deeplink-btn:hover {
background: var(--interactive-hover);
}
.mcp-cursor-copy-deeplink-btn.copied {
background: var(--interactive-success);
color: white;
}
.mcp-cursor-debug-container {
margin-top: 20px;
}
.mcp-cursor-debug-toggle {
background: transparent;
color: var(--text-muted);
border: 1px solid var(--background-modifier-border);
padding: 6px 12px;
border-radius: 4px;
font-size: 12px;
cursor: pointer;
transition: all 0.2s ease;
}
.mcp-cursor-debug-toggle:hover {
background: var(--background-modifier-hover);
color: var(--text-normal);
}
.mcp-cursor-debug-content {
margin-top: 12px;
padding: 12px;
background: var(--background-primary);
border: 1px solid var(--background-modifier-border);
border-radius: 4px;
}
.mcp-cursor-debug-label {
font-size: 12px;
color: var(--text-muted);
margin-bottom: 8px;
margin-top: 12px;
}
.mcp-cursor-debug-label:first-child {
margin-top: 0;
}
.mcp-cursor-debug-code {
background: var(--code-background);
padding: 8px;
border-radius: 4px;
font-size: 12px;
overflow-x: auto;
border: 1px solid var(--background-modifier-border);
}
.mcp-cursor-debug-code code {
color: var(--code-normal);
word-break: break-all;
}
.mcp-section-separator {
margin: 24px 0;
border: none;
border-top: 1px solid var(--background-modifier-border);
}
/* src/styles/workflow.scss */
.cm-workflow-stage-indicator {
display: inline-block;
margin-left: 4px;
font-size: 12px;
cursor: pointer;
opacity: 0.7;
transition: opacity 0.2s ease;
user-select: none;
align-items: center;
vertical-align: middle;
}
.cm-workflow-stage-indicator span {
display: inline-flex;
justify-content: center;
align-items: center;
}
.cm-workflow-stage-indicator:hover {
opacity: 1;
}
.cm-workflow-stage-indicator[data-stage-type=linear] {
color: var(--text-accent);
}
.cm-workflow-stage-indicator[data-stage-type=cycle] {
color: var(--task-in-progress-color);
}
.cm-workflow-stage-indicator[data-stage-type=terminal] {
color: var(--task-completed-color);
}
.theme-dark .cm-workflow-stage-indicator[data-stage-type=linear] {
color: var(--text-accent);
}
.theme-dark .cm-workflow-stage-indicator[data-stage-type=cycle] {
color: var(--task-in-progress-color);
}
.theme-dark .cm-workflow-stage-indicator[data-stage-type=terminal] {
color: var(--task-completed-color);
}
/* src/styles/quick-capture.scss */
:root {
--tg-tab-background: 0 0% 100%;
--tg-tab-foreground: 240 10% 3.9%;
--tg-tab-muted: 240 4.8% 95.9%;
--tg-tab-muted-foreground: 240 3.8% 46.1%;
--tg-tab-border: 240 5.9% 90%;
--tg-qc-header-bg: 0 0% 100%;
}
.theme-dark {
--tg-tab-background: 240 10% 3.9%;
--tg-tab-foreground: 0 0% 98%;
--tg-tab-muted: 240 3.7% 15.9%;
--tg-tab-muted-foreground: 240 5% 64.9%;
--tg-tab-border: 240 3.7% 15.9%;
--tg-qc-header-bg: 240 4% 10%;
}
.quick-capture-header {
display: flex;
justify-content: space-between;
align-items: center;
padding: 12px 16px;
border-bottom: 1px solid hsl(var(--tg-tab-border));
background: hsl(var(--tg-qc-header-bg));
}
.tg-minimal-capture-modal .quick-capture-header {
padding: 4px 8px;
}
.tg-minimal-capture-modal .model-header {
margin-bottom: 0;
}
.quick-capture-tabs {
display: inline-flex;
padding: 4px;
background: hsl(var(--tg-tab-muted));
border-radius: 6px;
gap: 2px;
}
.quick-capture-tab {
padding: 6px 12px;
background: transparent;
border: none;
border-radius: 4px;
cursor: pointer;
transition: all 0.15s cubic-bezier(0.4, 0, 0.2, 1);
color: hsl(var(--tg-tab-muted-foreground));
font-size: 14px;
font-weight: 500;
display: inline-flex;
align-items: center;
justify-content: center;
white-space: nowrap;
position: relative;
}
.tg-minimal-capture-modal .quick-capture-tab-text {
display: none;
}
.tg-minimal-capture-modal .quick-capture-tab-icon {
margin-right: 0;
}
.quick-capture-tab:hover:not(.active) {
color: hsl(var(--tg-tab-foreground));
}
.quick-capture-tab.active {
background: hsl(var(--tg-tab-background));
color: hsl(var(--tg-tab-foreground));
box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.1), 0 1px 2px -1px rgba(0, 0, 0, 0.1);
}
.quick-capture-tabs.is-hidden {
display: none;
}
.quick-capture-tab-icon {
margin-right: 6px;
display: inline-flex;
align-items: center;
width: 16px;
height: 16px;
}
.quick-capture-tab-icon svg {
width: 14px;
height: 14px;
}
.quick-capture-tab-text {
display: inline-flex;
align-items: center;
line-height: 1;
}
.quick-capture-clear {
padding: 6px 12px;
background: transparent;
border: 1px solid hsl(var(--tg-tab-border));
border-radius: 6px;
cursor: pointer;
transition: all 0.15s cubic-bezier(0.4, 0, 0.2, 1);
color: hsl(var(--tg-tab-muted-foreground));
font-size: 14px;
font-weight: 500;
}
.quick-capture-clear:hover {
}
.quick-capture-content {
flex: 1;
overflow-y: auto;
padding: var(--size-4-3);
}
.quick-capture-footer {
display: flex;
justify-content: space-between;
align-items: center;
padding: var(--size-4-2);
border-top: 1px solid var(--background-modifier-border);
}
.quick-capture-footer-left,
.quick-capture-footer-right {
display: flex;
gap: var(--size-2-2);
}
.quick-capture-continue {
padding: var(--size-2-2) var(--size-4-3);
background: transparent;
border-radius: var(--radius-s);
cursor: pointer;
transition: all 0.2s ease;
color: var(--text-muted);
}
.file-name-input-container {
display: flex;
flex-direction: column;
gap: var(--size-2-1);
margin-bottom: var(--size-4-3);
}
.file-name-label {
font-size: var(--font-ui-small);
color: var(--text-muted);
font-weight: 500;
}
.file-name-input {
width: 100%;
padding: var(--size-2-2);
border: 1px solid var(--background-modifier-border);
border-radius: var(--radius-s);
background-color: var(--background-primary);
color: var(--text-normal);
}
.file-name-input:focus {
outline: none;
border-color: var(--interactive-accent);
box-shadow: 0 0 0 2px var(--interactive-accent-hover);
}
.file-name-input-wrapper {
display: flex;
gap: var(--size-2-2);
}
.file-name-input-wrapper input.file-name-input {
flex: 1;
}
.file-name-template-container {
max-width: var(--size-4-18);
}
.file-name-templates {
margin-top: var(--size-4-2);
}
.templates-label {
font-size: var(--font-ui-small);
color: var(--text-muted);
margin-bottom: var(--size-2-1);
}
.template-buttons {
display: flex;
flex-wrap: wrap;
gap: var(--size-2-1);
}
.template-button {
padding: var(--size-2-1) var(--size-2-3);
background-color: var(--background-secondary);
border: 1px solid var(--background-modifier-border);
border-radius: var(--radius-s);
cursor: pointer;
transition: all 0.2s ease;
font-size: var(--font-ui-smaller);
color: var(--text-muted);
}
.template-button:hover {
background-color: var(--background-modifier-hover);
color: var(--text-normal);
border-color: var(--interactive-accent);
}
.quick-capture-modal.quick-capture-checkbox {
width: 800px;
max-width: 90vw;
max-height: 80vh;
min-height: fit-content;
}
.quick-capture-modal.quick-capture-file {
width: 800px;
max-width: 90vw;
height: 700px;
max-height: 80vh;
min-height: fit-content;
}
.quick-capture-modal.tg-minimal-capture-modal {
width: 600px;
max-width: 90vw;
height: 300px;
max-height: 80vh;
min-height: fit-content;
}
.quick-capture-panel {
padding: var(--size-4-2);
background-color: var(--background-primary);
border-top: 1px solid var(--background-modifier-border);
display: flex;
flex-direction: column;
gap: var(--size-4-2);
}
.quick-capture-actions {
display: flex;
gap: var(--size-2-1);
margin-left: auto;
align-items: center;
}
.quick-capture-actions .quick-action-button {
background: transparent;
border: none;
border-radius: var(--radius-s);
padding: var(--size-2-1);
cursor: pointer;
transition: all 0.2s ease;
color: var(--text-muted);
display: flex;
align-items: center;
justify-content: center;
}
.quick-capture-actions .quick-action-button:hover {
background-color: var(--background-modifier-hover);
color: var(--text-normal);
}
.quick-capture-actions .quick-action-button.active {
background-color: var(--interactive-accent);
color: var(--text-on-accent);
}
.quick-capture-modal.minimal {
max-width: 600px;
min-width: 500px;
max-height: 300px;
}
.quick-capture-minimal-target-container {
border-radius: 6px;
margin-bottom: 12px;
}
.quick-capture-minimal-target {
display: flex;
align-items: center;
gap: 8px;
font-size: 14px;
}
.quick-capture-target-label {
color: hsl(var(--tg-tab-muted-foreground));
font-weight: 500;
}
.quick-capture-target-value {
color: hsl(var(--tg-tab-foreground));
flex: 1;
}
.quick-capture-minimal-file-input {
flex: 1;
padding: 4px 8px;
background: hsl(var(--tg-tab-background));
border: 1px solid hsl(var(--tg-tab-border));
border-radius: 4px;
font-size: 14px;
color: hsl(var(--tg-tab-foreground));
}
.quick-capture-minimal-file-input:focus {
outline: none;
border-color: var(--interactive-accent);
box-shadow: 0 0 0 2px var(--interactive-accent-hover);
}
.quick-actions-left {
display: flex;
gap: var(--size-2-1);
}
.quick-actions-right {
display: flex;
gap: var(--size-2-1);
}
.quick-action-button.active {
background-color: var(--interactive-accent);
color: var(--text-on-accent);
border-color: var(--interactive-accent);
}
.quick-action-save {
padding: var(--size-2-1) var(--size-4-2);
min-width: 80px;
height: 32px;
border-radius: var(--radius-s);
}
.quick-capture-tag-input {
position: absolute;
bottom: 60px;
left: 50%;
transform: translateX(-50%);
width: 300px;
padding: var(--size-2-1);
border: 1px solid var(--background-modifier-border);
border-radius: var(--radius-s);
background-color: var(--background-primary);
color: var(--text-normal);
font-size: var(--font-text-size);
z-index: 1000;
}
.minimal-quick-capture-suggestion {
padding: var(--size-2-1) var(--size-4-2);
border-radius: var(--radius-s);
cursor: pointer;
transition: background-color 0.2s ease;
min-height: 40px;
display: flex;
align-items: center;
}
.minimal-quick-capture-suggestion:hover {
background-color: var(--background-modifier-hover);
}
.minimal-quick-capture-suggestion.is-selected {
background-color: var(--interactive-accent);
color: var(--text-on-accent);
}
.minimal-quick-capture-suggestion.is-selected .suggestion-label {
color: var(--text-on-accent);
}
.minimal-quick-capture-suggestion.is-selected .suggestion-description {
color: var(--text-on-accent);
opacity: 0.8;
}
.suggestion-icon {
font-size: 16px;
min-width: 20px;
text-align: center;
}
.suggestion-content {
flex: 1;
}
.suggestion-label {
font-size: var(--font-text-size);
font-weight: 500;
color: var(--text-normal);
}
.suggestion-description {
font-size: var(--font-ui-small);
color: var(--text-muted);
margin-top: 2px;
}
.quick-capture-header-container {
display: flex;
align-items: center;
margin-bottom: var(--size-4-2);
gap: var(--size-4-2);
font-size: var(--font-ui-medium);
font-weight: bold;
color: var(--text-normal);
padding: var(--size-2-1) var(--size-4-2);
flex-wrap: nowrap;
}
.quick-capture-title {
color: var(--text-normal);
white-space: nowrap;
}
.quick-capture-target {
flex: 1;
border-radius: var(--radius-s);
color: var(--text-accent);
font-size: var(--font-text-size);
font-weight: normal;
min-width: 100px;
max-width: 500px;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
padding: 2px 4px;
transition: background-color 0.2s ease;
}
.quick-capture-target:hover {
background-color: var(--background-modifier-hover);
}
.quick-capture-target:focus {
background-color: var(--background-modifier-hover);
outline: 2px solid var(--interactive-accent);
outline-offset: -1px;
overflow: visible;
text-overflow: initial;
}
.quick-capture-hint {
font-size: 12px;
color: var(--text-muted);
margin-bottom: 8px;
margin-top: -4px;
text-align: right;
}
.quick-capture-editor {
min-height: 200px;
background-color: var(--background-primary);
}
.quick-capture-file-suggest {
max-width: 500px;
}
.quick-capture-buttons {
display: flex;
justify-content: flex-end;
gap: 8px;
}
.quick-capture-submit,
.quick-capture-cancel {
padding: 6px 12px;
border-radius: 4px;
cursor: pointer;
}
.quick-capture-submit {
background-color: var(--interactive-accent);
color: var(--text-on-accent);
}
.quick-capture-cancel {
background-color: var(--background-modifier-border);
color: var(--text-normal);
}
.quick-capture-modal .modal-title:has(.is-hidden) {
display: none;
}
.quick-capture-modal .modal-title {
display: flex;
align-items: center;
flex-direction: row;
gap: 10px;
font-size: var(--font-ui-medium);
font-weight: bold;
}
.quick-capture-modal-editor {
min-height: 150px;
margin-bottom: 20px;
}
.quick-capture-modal-buttons {
display: flex;
justify-content: flex-end;
gap: 10px;
}
.quick-capture-modal.full {
width: 80vw;
max-width: 900px;
}
.quick-capture-layout {
display: flex;
height: 100%;
gap: 16px;
margin-bottom: 16px;
}
.quick-capture-config-panel {
flex: 1;
border-right: 1px solid var(--background-modifier-border);
padding-right: 16px;
overflow-y: auto;
max-width: 40%;
}
.quick-capture-editor-panel {
flex: 1.5;
display: flex;
flex-direction: column;
}
.quick-capture-section-title {
font-weight: bold;
margin-bottom: 8px;
font-size: var(--font-ui-medium);
color: var(--text-normal);
}
.quick-capture-target-container {
margin-bottom: 16px;
}
.quick-capture-modal.full .quick-capture-modal-editor {
min-height: 200px;
flex: 1;
overflow-y: auto;
border: 1px solid var(--background-modifier-border);
border-radius: var(--radius-s);
padding: 8px;
margin-top: 8px;
}
@media (max-width: 768px) {
.quick-capture-modal.full {
width: 95vw;
}
.quick-capture-layout {
flex-direction: column;
}
.quick-capture-config-panel {
max-width: 100%;
border-right: none;
border-bottom: 1px solid var(--background-modifier-border);
padding-right: 0;
padding-bottom: 16px;
margin-bottom: 16px;
max-height: 40%;
}
}
.quick-capture-config-panel .details-status-selector {
display: flex;
flex-direction: row;
justify-content: space-between;
margin-bottom: var(--size-4-2);
margin-top: var(--size-4-2);
}
.quick-capture-config-panel .quick-capture-status-selector {
display: flex;
flex-direction: row;
justify-content: space-between;
gap: var(--size-4-3);
}
.quick-capture-modal .setting-item-control input[type=datetime-local] {
width: 10rem;
}
/* src/styles/timer-statistics.scss */
.timer-statistics-panel {
--timer-card-bg: var(--background-secondary);
--timer-running-color: var(--color-green);
--timer-paused-color: var(--color-orange);
--timer-stopped-color: var(--color-red);
padding: var(--size-4-4);
overflow-y: auto;
height: 100%;
}
.timer-stats-header {
margin-bottom: var(--size-4-4);
}
.timer-stats-title {
font-size: var(--font-ui-large);
font-weight: var(--font-semibold);
color: var(--text-normal);
margin: 0;
}
.timer-stats-summary {
margin-bottom: var(--size-4-6);
}
.timer-stats-cards {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));
gap: var(--size-4-3);
}
.timer-stats-card {
background: var(--timer-card-bg);
border-radius: var(--radius-m);
padding: var(--size-4-4);
display: flex;
flex-direction: column;
align-items: center;
text-align: center;
transition: transform 0.15s ease, box-shadow 0.15s ease;
}
.timer-stats-card:hover {
transform: translateY(-2px);
box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
}
.timer-stats-card-icon {
color: var(--text-muted);
margin-bottom: var(--size-4-2);
}
.timer-stats-card.running .timer-stats-card-icon {
color: var(--timer-running-color);
}
.timer-stats-card.paused .timer-stats-card-icon {
color: var(--timer-paused-color);
}
.timer-stats-card-value {
font-size: var(--font-ui-large);
font-weight: var(--font-semibold);
color: var(--text-normal);
margin-bottom: var(--size-4-1);
}
.timer-stats-card-label {
font-size: var(--font-ui-smaller);
color: var(--text-muted);
}
.timer-stats-section {
margin-bottom: var(--size-4-6);
}
.timer-stats-section h3 {
font-size: var(--font-ui-medium);
font-weight: var(--font-semibold);
color: var(--text-normal);
margin: 0 0 var(--size-4-3) 0;
padding-bottom: var(--size-4-2);
border-bottom: 1px solid var(--background-modifier-border);
}
.timer-stats-empty {
color: var(--text-muted);
font-style: italic;
padding: var(--size-4-4);
text-align: center;
background: var(--background-secondary);
border-radius: var(--radius-m);
}
.timer-group {
margin-bottom: var(--size-4-4);
}
.timer-group-title {
font-size: var(--font-ui-small);
font-weight: var(--font-medium);
color: var(--text-muted);
text-transform: uppercase;
letter-spacing: 0.05em;
margin-bottom: var(--size-4-2);
}
.timer-group-running .timer-group-title {
color: var(--timer-running-color);
}
.timer-group-paused .timer-group-title {
color: var(--timer-paused-color);
}
.timer-group-list {
display: flex;
flex-direction: column;
gap: var(--size-4-2);
}
.timer-item {
display: flex;
align-items: center;
gap: var(--size-4-3);
padding: var(--size-4-3);
background: var(--background-secondary);
border-radius: var(--radius-m);
transition: background-color 0.15s ease;
}
.timer-item:hover {
background: var(--background-modifier-hover);
}
.timer-item-info {
flex: 1;
min-width: 0;
}
.timer-item-name {
font-weight: var(--font-medium);
color: var(--text-normal);
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
.timer-item-path {
font-size: var(--font-ui-smaller);
color: var(--text-muted);
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
.timer-item-duration {
font-family: var(--font-monospace);
font-size: var(--font-ui-medium);
font-weight: var(--font-semibold);
color: var(--text-normal);
min-width: 80px;
text-align: right;
}
.timer-item-status {
display: flex;
align-items: center;
justify-content: center;
width: 24px;
height: 24px;
}
.timer-status-running {
color: var(--timer-running-color);
}
.timer-status-paused {
color: var(--timer-paused-color);
}
.timer-item-actions {
display: flex;
gap: var(--size-4-1);
}
button.timer-action-btn {
display: flex;
align-items: center;
justify-content: center;
width: 28px;
height: 28px;
padding: 0;
background: transparent;
border: 1px solid var(--background-modifier-border);
border-radius: var(--radius-s);
cursor: pointer;
color: var(--text-muted);
transition: all 0.15s ease;
box-shadow: unset;
}
button.timer-action-btn:hover {
background: var(--background-modifier-hover);
color: var(--text-normal);
border-color: var(--text-muted);
}
.timer-action-stop:hover {
background: var(--background-modifier-error);
color: var(--text-on-accent);
border-color: transparent;
}
.timer-stats-task-list {
display: flex;
flex-direction: column;
gap: var(--size-4-2);
}
.timer-task-item {
display: flex;
align-items: center;
justify-content: space-between;
padding: var(--size-4-3);
background: var(--background-secondary);
border-radius: var(--radius-m);
}
.timer-task-content {
flex: 1;
min-width: 0;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
color: var(--text-normal);
}
.timer-task-timer {
display: flex;
align-items: center;
gap: var(--size-4-2);
margin-left: var(--size-4-3);
}
.timer-task-duration {
font-family: var(--font-monospace);
font-weight: var(--font-medium);
color: var(--text-normal);
}
.timer-task-status {
font-size: var(--font-ui-smaller);
}
.timer-task-status.timer-status-running {
color: var(--timer-running-color);
}
.timer-task-status.timer-status-paused {
color: var(--timer-paused-color);
}
.task-timer-stopped {
color: var(--text-muted);
font-style: italic;
}
.timer-completed-list {
display: flex;
flex-direction: column;
gap: var(--size-4-2);
}
.timer-completed-item {
display: flex;
align-items: center;
justify-content: space-between;
padding: var(--size-4-3);
background: var(--background-secondary);
border-radius: var(--radius-m);
gap: var(--size-4-3);
}
.timer-completed-info {
flex: 1;
min-width: 0;
}
.timer-completed-name {
font-weight: var(--font-medium);
color: var(--text-normal);
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
.timer-completed-path {
font-size: var(--font-ui-smaller);
color: var(--text-muted);
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
.timer-completed-meta {
display: flex;
flex-direction: column;
align-items: flex-end;
gap: var(--size-2-2);
min-width: 160px;
}
.timer-completed-duration {
font-family: var(--font-monospace);
font-weight: var(--font-semibold);
color: var(--text-normal);
}
.timer-completed-time {
font-size: var(--font-ui-smaller);
color: var(--text-muted);
text-align: right;
}
/* src/styles/task-list.scss */
.task-list {
flex: 1;
overflow-y: auto;
padding: 0;
}
.task-item {
display: flex;
align-items: flex-start;
padding: 8px 16px;
cursor: pointer;
gap: var(--size-2-3);
min-height: 40px;
}
.task-item:hover {
background-color: var(--background-secondary-alt);
}
.task-children-container .task-item:hover {
background-color: var(--background-secondary);
}
.task-item.selected {
background-color: var(--background-secondary-alt);
}
.task-item.task-completed .task-item-content {
text-decoration: line-through;
color: var(--text-muted);
}
.task-item .markdown-block.markdown-renderer > p:only-child {
padding: 0;
margin: 0;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
.task-checkbox {
width: 16px;
height: 16px;
display: flex;
align-items: center;
justify-content: center;
color: var(--text-normal);
cursor: pointer;
flex-shrink: 0;
}
.task-item.task-completed .task-checkbox {
color: var(--text-on-accent);
}
.task-item-content {
flex: 1;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
width: 100%;
}
.task-item-container {
flex: 1;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
.task-content-metadata-container {
display: flex;
flex-wrap: wrap;
align-items: flex-start;
gap: var(--size-2-2);
will-change: auto;
}
.task-content-metadata-container.single-line-content {
flex-direction: row;
align-items: center;
}
.task-content-metadata-container.single-line-content .task-item-content {
flex: 1;
min-width: 0;
}
.task-content-metadata-container.single-line-content .task-item-metadata {
flex-shrink: 0;
margin-top: 0;
}
.task-content-metadata-container.multi-line-content {
flex-direction: column;
align-items: flex-start;
}
.task-content-metadata-container.multi-line-content .task-item-content {
}
.task-content-metadata-container.multi-line-content .task-item-metadata {
margin-top: var(--size-2-2);
}
.task-item-metadata {
display: flex;
align-items: center;
gap: var(--size-4-2);
margin-top: var(--size-2-2);
}
.task-item-metadata:empty {
display: none;
}
.task-date {
font-size: var(--font-ui-small);
color: var(--text-faint);
white-space: nowrap;
background-color: var(--background-modifier-active-hover);
padding: var(--size-2-1) var(--size-2-3);
border-radius: var(--radius-s);
opacity: 0.8;
}
.task-item:hover .task-date {
opacity: 1;
}
.task-date::before {
display: inline-block;
margin-right: var(--size-2-2);
font-size: xx-small;
display: inline-flex;
transform: translateY(-1px);
}
.tg-kanban-view .task-date::before {
transform: translateY(0);
}
.task-date.task-due-date::before {
content: "\1f4c5";
}
.task-date.task-overdue {
color: var(--text-error);
font-weight: 600;
}
.task-date.task-due-today {
color: var(--task-doing-color);
font-weight: 600;
}
.task-date.task-due-soon {
color: var(--text-warning);
font-weight: 600;
}
.task-date.task-start-date::before {
content: "\1f6eb";
}
.task-date.task-created-date::before {
content: "\2795";
}
.task-date.task-scheduled-date::before {
content: "\23f3";
}
.task-date.task-done-date::before {
content: "\2705";
}
.task-date.task-cancelled-date::before {
content: "\274c";
}
.task-date.task-recurrence::before {
content: "\1f501";
}
.task-date.task-on-completion::before {
content: "\1f3c1";
}
.task-project {
font-size: var(--font-ui-small);
color: var(--text-on-accent);
background-color: var(--color-accent);
border-radius: var(--radius-s);
padding: var(--size-2-1) var(--size-2-3);
white-space: nowrap;
opacity: 0.5;
}
.task-project:has(input) {
background-color: var(--background-modifier-active-hover);
color: var(--text-normal);
}
.task-item:hover .task-project {
opacity: 1;
}
.task-project::before {
content: "\1f5c2\fe0f";
margin-right: var(--size-4-2);
display: inline-flex;
align-items: center;
justify-content: center;
font-size: var(--font-ui-small);
}
.task-project:hover {
background-color: var(--background-modifier-active-hover);
color: var(--text-accent-hover);
}
.task-priority {
margin-left: 8px;
font-size: 0.9em;
white-space: nowrap;
}
.task-priority.priority-5 {
color: var(--text-error);
font-weight: 600;
}
.task-priority.priority-4 {
color: var(--text-warning);
font-weight: 600;
}
.task-priority.priority-3 {
color: var(--text-warning);
font-weight: 600;
}
.task-priority.priority-2 {
color: var(--text-warning);
}
.task-priority.priority-1 {
color: var(--text-accent);
}
.task-priority-clickable {
cursor: pointer;
transition: opacity 0.2s ease;
}
.task-priority-clickable:hover {
opacity: 0.7;
}
.add-priority-btn {
display: inline-flex;
align-items: center;
justify-content: center;
width: 20px;
height: 20px;
margin-left: 4px;
padding: 0;
border-radius: 3px;
background: transparent;
color: var(--text-muted);
font-size: 12px;
cursor: pointer;
transition: all 0.2s ease;
}
.add-priority-btn:hover {
border-color: var(--text-normal);
color: var(--text-normal);
background: var(--background-modifier-hover);
}
.task-item.tree-task-item .task-priority-clickable,
.task-item.tree-task-item .add-priority-btn {
position: absolute;
right: var(--size-4-2);
top: var(--size-4-2);
}
.task-oncompletion {
display: inline-flex;
align-items: center;
padding: 2px 6px;
margin-left: 4px;
border-radius: 3px;
font-size: var(--font-ui-small);
color: var(--text-muted);
background-color: var(--background-secondary);
white-space: nowrap;
}
.task-oncompletion:hover {
color: var(--text-normal);
}
.task-dependson {
display: inline-flex;
align-items: center;
padding: 2px 6px;
margin-left: 4px;
background-color: var(--background-secondary);
border-radius: 3px;
font-size: var(--font-ui-small);
color: var(--text-normal);
white-space: nowrap;
}
.task-dependson:hover {
color: var(--text-error);
}
.task-id {
display: inline-flex;
align-items: center;
padding: 2px 6px;
margin-left: 4px;
background-color: var(--background-modifier-accent);
border-radius: 3px;
font-size: var(--font-ui-small);
color: var(--text-accent);
white-space: nowrap;
}
.task-id:hover {
background-color: var(--background-modifier-accent-hover);
color: var(--text-accent-hover);
}
.task-tags-container {
display: flex;
flex-wrap: wrap;
gap: var(--size-2-2);
}
.task-tags-container:empty {
display: none;
}
.task-tag {
font-size: var(--font-ui-small);
color: var(--text-normal);
background-color: var(--background-modifier-hover);
border-radius: var(--radius-s);
padding: var(--size-2-1) var(--size-2-3);
white-space: nowrap;
opacity: 0.75;
}
.task-item:hover .task-tag {
opacity: 1;
}
.task-item-content p:has(img) img {
display: block;
width: min(50%, 200px);
}
/* src/styles/tree-view.scss */
.tree-task-item {
position: relative;
display: flex;
flex-direction: column;
padding: 8px 16px;
transition: background-color 0.2s ease;
}
.task-children-container .task-item.tree-task-item {
border-bottom: unset;
padding-top: var(--size-2-2);
padding-bottom: var(--size-2-2);
gap: 0;
}
.task-item.tree-task-item {
gap: 0;
}
.tree-task-item:hover {
background-color: var(--background-secondary-alt);
}
.tree-task-item.selected {
background-color: var(--background-modifier-active);
}
.tree-task-item.completed {
opacity: 0.7;
}
.tree-task-item > div:first-of-type {
width: 100%;
display: flex;
align-items: flex-start;
gap: 6px;
}
.task-indent {
flex-shrink: 0;
}
.task-item.tree-task-item .task-expand-toggle {
padding-top: var(--size-2-2);
}
.task-item .task-checkbox {
padding-top: var(--size-2-2);
}
.task-expand-toggle {
cursor: pointer;
display: flex;
align-items: center;
justify-content: center;
width: 16px;
height: 16px;
flex-shrink: 0;
color: var(--text-muted);
}
.task-expand-toggle:hover {
color: var(--text-normal);
}
.task-item.tree-task-item .task-checkbox {
cursor: pointer;
flex-shrink: 0;
color: var(--text-muted);
width: 16px;
height: 16px;
display: flex;
align-items: center;
justify-content: center;
}
.task-item.tree-task-item .task-checkbox:hover {
color: var(--text-accent);
}
.task-item.tree-task-item .task-checkbox.checked {
color: var(--text-accent);
}
.task-content {
flex-grow: 1;
line-height: 1.4;
}
.tree-task-item.completed .task-content {
text-decoration: line-through;
color: var(--text-muted);
}
.tree-task-item .task-content-metadata-container {
display: flex;
flex-wrap: wrap;
align-items: flex-start;
gap: var(--size-2-2);
transition: all 0.2s ease;
}
.tree-task-item .task-content-metadata-container.single-line-content {
flex-direction: row;
align-items: center;
}
.tree-task-item .task-content-metadata-container.single-line-content .task-item-content {
flex: 1;
min-width: 0;
}
.tree-task-item .task-content-metadata-container.single-line-content .task-metadata {
flex-shrink: 0;
margin-top: 0;
}
.tree-task-item .task-content-metadata-container.multi-line-content {
flex-direction: column;
align-items: flex-start;
}
.tree-task-item .task-content-metadata-container.multi-line-content .task-item-content {
width: 100%;
}
.tree-task-item .task-content-metadata-container.multi-line-content .task-metadata {
margin-top: 4px;
}
.task-metadata {
display: flex;
gap: 8px;
margin-top: 4px;
font-size: 0.85em;
color: var(--text-muted);
}
.task-metadata:empty {
display: none;
}
.task-due-date.overdue {
color: var(--text-error);
font-weight: bold;
}
.task-item.tree-task-item .task-project {
display: inline-block;
padding: 1px 6px;
border-radius: 4px;
}
.task-priority.priority-3 {
color: var(--text-error);
}
.task-priority.priority-2 {
color: var(--text-warning);
}
.task-priority.priority-1 {
color: var(--text-accent);
}
.task-priority-clickable {
cursor: pointer;
transition: opacity 0.2s ease;
}
.task-priority-clickable:hover {
opacity: 0.7;
}
.tree-task-item .task-oncompletion {
display: inline-flex;
align-items: center;
padding: 2px 6px;
margin-left: 4px;
background-color: var(--background-modifier-border);
border-radius: 3px;
font-size: var(--font-ui-small);
color: var(--text-muted);
white-space: nowrap;
}
.tree-task-item .task-oncompletion:hover {
color: var(--text-normal);
}
.tree-task-item .task-dependson {
display: inline-flex;
align-items: center;
padding: 2px 6px;
margin-left: 4px;
background-color: var(--background-modifier-error);
border-radius: 3px;
font-size: var(--font-ui-small);
color: var(--text-error);
white-space: nowrap;
}
.tree-task-item .task-dependson:hover {
background-color: var(--background-modifier-error-hover);
color: var(--text-error);
}
.tree-task-item .task-id {
display: inline-flex;
align-items: center;
padding: 2px 6px;
margin-left: 4px;
background-color: var(--background-modifier-accent);
border-radius: 3px;
font-size: var(--font-ui-small);
color: var(--text-accent);
white-space: nowrap;
}
.tree-task-item .task-id:hover {
background-color: var(--background-modifier-accent-hover);
color: var(--text-accent-hover);
}
.task-children-container {
margin-top: 4px;
width: 100%;
}
.view-toggle-btn {
cursor: pointer;
display: flex;
align-items: center;
justify-content: center;
width: 24px;
height: 24px;
color: var(--text-muted);
border-radius: 4px;
}
.view-toggle-btn:hover {
background-color: var(--background-modifier-hover);
color: var(--text-normal);
}
.task-children-container:empty {
display: none !important;
}
/* src/styles/modern.scss */
.task-item {
border-bottom: 1px solid var(--color-base-20);
}
/* src/styles/group-by.scss */
.content-filter-controls {
display: flex;
align-items: center;
gap: 4px;
}
.task-group-section {
margin-bottom: 8px;
}
.group-section-header {
display: flex;
align-items: center;
padding: 8px 15px;
cursor: pointer;
border-radius: var(--radius-s);
color: var(--text-muted);
}
.group-section-header:hover {
background-color: var(--background-secondary-alt);
}
.group-section-header .section-toggle {
margin-right: 8px;
display: flex;
align-items: center;
justify-content: center;
}
.group-section-header .section-title {
flex: 1;
font-weight: 600;
font-size: 0.95em;
}
.group-section-header .section-count {
font-size: 0.8em;
color: var(--text-muted);
background-color: var(--background-modifier-border);
border-radius: 10px;
height: var(--size-4-5);
min-width: var(--size-4-5);
padding: 0 6px;
display: inline-flex;
align-items: center;
justify-content: center;
}
.task-group-section .section-tasks {
display: flex;
flex-direction: column;
padding-left: var(--size-4-8);
}
.task-group-section[data-group-key=priority-high] .group-section-header {
border-left: 3px solid var(--text-error);
}
.task-group-section[data-group-key=priority-high] .section-title {
color: var(--text-error);
}
.task-group-section[data-group-key=priority-medium] .group-section-header {
border-left: 3px solid var(--text-warning);
}
.task-group-section[data-group-key=priority-medium] .section-title {
color: var(--text-warning);
}
.task-group-section[data-group-key=due-past] .group-section-header {
border-left: 3px solid var(--text-error);
}
.task-group-section[data-group-key=due-past] .section-title {
color: var(--text-error);
}
.task-group-section[data-group-key=due-past] .section-count {
background-color: var(--text-error);
color: white;
}
.task-group-section[data-group-key=due-today] .group-section-header {
border-left: 3px solid var(--interactive-accent);
}
.task-group-section[data-group-key=due-today] .section-title {
color: var(--interactive-accent);
}
.task-group-section.level-0 {
margin-left: 0;
}
.task-group-section.level-1 {
margin-left: var(--size-4-4);
}
.task-group-section.level-2 {
margin-left: var(--size-4-8);
}
.task-group-section.level-3 {
margin-left: var(--size-4-12);
}
.group-section-header.folder-group {
position: relative;
font-weight: 600;
font-size: 1em;
padding: 10px 15px;
color: var(--text-muted);
}
.group-section-header.folder-group:hover {
background-color: var(--background-secondary-alt);
color: var(--text-accent);
}
.group-section-header.file-group {
font-weight: 500;
font-size: 0.9em;
background-color: var(--background-primary);
padding: 6px 12px;
}
.group-section-header.file-group:hover {
background-color: var(--background-secondary-alt);
color: var(--text-accent);
}
.group-section-header.file-group .section-title {
font-weight: 500;
}
.group-section-content {
overflow: hidden;
transition: opacity 0.15s ease-out;
padding-left: var(--size-4-4);
}
.group-section-content:not([style*="display: none"]) {
opacity: 1;
}
.task-group-section.level-1 .section-toggle,
.task-group-section.level-2 .section-toggle,
.task-group-section.level-3 .section-toggle {
opacity: 0.7;
}
.task-group-section.level-1 .section-count {
font-size: 0.75em;
height: 18px;
min-width: 18px;
padding: 0 5px;
}
.group-section-content[style*="display: none"] ~ .group-section-header {
opacity: 0.85;
}
@media (max-width: 768px) {
.task-group-section.level-1 {
margin-left: 12px;
}
.task-group-section.level-2 {
margin-left: 24px;
}
.task-group-section.level-3 {
margin-left: 36px;
}
}
/* src/styles/tag-view.scss */
.tags-container {
display: flex;
flex-direction: column;
height: 100%;
width: 100%;
overflow: hidden;
flex: 1;
}
.task-genius-view:has(.task-details.visible) .tags-left-column {
display: none;
}
.tags-content {
display: flex;
flex-direction: row;
flex: 1;
overflow: hidden;
}
.multi-select-mode .tags-multi-select-btn {
color: var(--color-accent);
}
.tags-left-column {
width: max(120px, 30%);
min-width: min(120px, 30%);
max-width: 400px;
display: flex;
flex-direction: column;
border-right: 1px solid var(--background-modifier-border);
overflow: hidden;
}
.tags-right-column {
flex: 1;
display: flex;
flex-direction: column;
overflow: hidden;
}
.tags-sidebar-header {
display: flex;
justify-content: space-between;
align-items: center;
padding: var(--size-4-2) var(--size-4-4);
border-bottom: 1px solid var(--background-modifier-border);
height: var(--size-4-10);
}
.tags-sidebar-title {
font-weight: 600;
font-size: 14px;
}
.tags-multi-select-btn {
cursor: pointer;
color: var(--text-muted);
display: flex;
align-items: center;
justify-content: center;
}
.tags-multi-select-btn:hover {
color: var(--text-normal);
}
.tags-sidebar-list {
flex: 1;
overflow-y: auto;
padding: var(--size-4-2);
display: flex;
flex-direction: column;
gap: var(--size-2-1);
}
.tag-list-item {
display: flex;
align-items: center;
padding: 4px 12px;
cursor: pointer;
position: relative;
border-radius: var(--radius-s);
}
.tag-list-item:hover {
background-color: var(--background-modifier-hover);
}
.tag-list-item.selected {
background-color: var(--background-modifier-active);
}
.tag-indent {
flex-shrink: 0;
}
.tag-icon {
margin-right: var(--size-2-2);
color: var(--text-muted);
display: flex;
--icon-size: var(--size-4-4);
}
.tag-name {
flex: 1;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
.tag-count {
margin-left: 8px;
font-size: 0.8em;
color: var(--text-muted);
background-color: var(--background-modifier-border);
border-radius: 10px;
padding: 1px 6px;
}
.tag-children {
width: 100%;
}
.tags-task-header {
display: flex;
justify-content: space-between;
align-items: center;
padding: var(--size-4-2) var(--size-4-4);
border-bottom: 1px solid var(--background-modifier-border);
height: var(--size-4-10);
}
.tags-task-title {
font-weight: 600;
font-size: 16px;
}
.tags-task-count {
color: var(--text-muted);
}
.tags-task-list {
flex: 1;
overflow-y: auto;
}
.tags-empty-state {
display: flex;
align-items: center;
justify-content: center;
height: 100%;
color: var(--text-muted);
font-style: italic;
padding: 16px;
}
.tag-section-header {
display: flex;
align-items: center;
padding: 8px 15px;
cursor: pointer;
border-bottom: 1px solid var(--background-modifier-border);
background-color: var(--background-secondary-alt);
}
.tag-section-header .section-toggle {
margin-right: 8px;
display: flex;
align-items: center;
justify-content: center;
}
.tag-section-header .section-title {
flex: 1;
font-weight: 500;
}
.tag-section-header .section-count {
font-size: 0.8em;
color: var(--text-muted);
background-color: var(--background-modifier-border);
padding: 2px 6px;
border-radius: 10px;
height: var(--size-4-5);
width: var(--size-4-5);
}
.is-phone .tags-container {
position: relative;
overflow: hidden;
}
.is-phone .tags-left-column {
position: absolute;
left: 0;
top: 0;
height: 100%;
z-index: 10;
background-color: var(--background-secondary);
width: 100%;
transform: translateX(-100%);
transition: transform 0.3s ease-in-out;
border-right: 1px solid var(--background-modifier-border);
}
.is-phone .tags-left-column.is-visible {
transform: translateX(0);
}
.is-phone .tags-sidebar-toggle {
display: flex;
align-items: center;
justify-content: center;
margin-right: 8px;
}
.is-phone .tags-sidebar-close {
--icon-size: var(--size-4-4);
position: absolute;
top: var(--size-4-2);
right: 10px;
z-index: 15;
display: flex;
align-items: center;
justify-content: center;
}
.is-phone .tags-container:has(.tags-left-column.is-visible)::before {
content: "";
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background-color: var(--background-modifier-cover);
opacity: 0.5;
z-index: 5;
transition: opacity 0.3s ease-in-out;
}
.is-phone .tags-sidebar-header:has(.tags-sidebar-close) {
padding-right: var(--size-4-12);
}
/* src/styles/project-view.scss */
.projects-container {
display: flex;
flex-direction: column;
height: 100%;
width: 100%;
overflow: hidden;
}
.projects-content {
display: flex;
flex-direction: row;
flex: 1;
overflow: hidden;
}
.projects-left-column {
width: max(120px, 30%);
min-width: min(120px, 30%);
max-width: 300px;
display: flex;
flex-direction: column;
overflow: hidden;
border-right: 1px solid var(--background-modifier-border);
}
.is-phone .projects-left-column {
max-width: 100%;
}
.projects-right-column {
flex: 1;
display: flex;
flex-direction: column;
overflow: hidden;
}
.projects-sidebar-header {
display: flex;
justify-content: space-between;
align-items: center;
padding: var(--size-4-2) var(--size-4-4);
border-bottom: 1px solid var(--background-modifier-border);
height: var(--size-4-10);
}
.projects-sidebar-title {
font-weight: 600;
font-size: 14px;
}
.projects-sidebar-header-btn-group {
display: flex;
flex-direction: row;
align-items: center;
justify-content: center;
gap: var(--size-4-2);
}
.multi-select-mode .projects-multi-select-btn {
color: var(--color-accent);
}
.projects-tree-toggle-btn {
display: flex;
align-items: center;
justify-content: center;
}
.projects-multi-select-btn {
cursor: pointer;
color: var(--text-muted);
display: flex;
align-items: center;
justify-content: center;
}
.projects-multi-select-btn:hover {
color: var(--text-normal);
}
.projects-sidebar-list {
flex: 1;
overflow-y: auto;
padding: var(--size-4-2) var(--size-4-2);
}
.project-list-item {
display: flex;
align-items: center;
cursor: pointer;
border-radius: var(--radius-s);
padding: var(--size-4-2);
}
.project-list-item:hover {
background-color: var(--background-modifier-hover);
}
.project-list-item.selected {
background-color: var(--background-secondary);
}
.project-icon {
margin-right: 8px;
color: var(--text-muted);
display: flex;
align-items: center;
justify-content: center;
}
.project-name {
flex: 1;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
.project-count {
margin-left: 8px;
font-size: 0.8em;
color: var(--text-muted);
background-color: var(--background-modifier-border);
border-radius: 10px;
padding: 1px 6px;
white-space: nowrap;
transition: background-color 0.2s ease, color 0.2s ease;
}
.project-count.partially-completed {
color: var(--text-success);
}
.project-count.all-completed {
color: var(--text-on-accent);
font-weight: 600;
}
.project-count.has-progress {
border-radius: var(--radius-s);
}
.project-list-item.selected .project-count {
color: var(--text-on-accent);
}
.project-list-item.selected .project-count.all-completed {
background-color: rgba(255, 255, 255, 0.3);
}
.projects-task-header {
display: flex;
justify-content: space-between;
align-items: center;
padding: var(--size-4-2) var(--size-4-4);
border-bottom: 1px solid var(--background-modifier-border);
min-height: var(--size-4-10);
}
.projects-header-main-content {
flex: 1;
display: flex;
flex-direction: column;
gap: var(--size-4-2);
}
.projects-header-top-row {
display: flex;
align-items: center;
justify-content: space-between;
width: 100%;
}
.projects-header-top-right {
display: flex;
align-items: center;
gap: var(--size-4-2);
}
.projects-header-progress {
display: flex;
flex-direction: column;
gap: 6px;
margin-top: 4px;
}
.projects-header-progress .cm-task-progress-bar {
display: inline-flex;
align-items: center;
gap: 8px;
width: 100%;
}
.projects-header-progress .progress-bar-inline-background {
flex: 1;
max-width: 100%;
}
.projects-header-progress .progress-status {
font-size: 0.9em;
color: var(--text-muted);
white-space: nowrap;
}
.projects-task-title {
font-weight: 600;
font-size: 16px;
}
.projects-task-count {
color: var(--text-muted);
}
.projects-task-list {
flex: 1;
overflow-y: auto;
}
.projects-empty-state {
display: flex;
align-items: center;
justify-content: center;
height: 100%;
color: var(--text-muted);
font-style: italic;
padding: 16px;
}
.is-phone .projects-left-column {
position: absolute;
left: 0;
top: 0;
height: 100%;
z-index: 10;
background-color: var(--background-secondary);
width: 100%;
transform: translateX(-100%);
transition: transform 0.3s ease-in-out;
border-right: 1px solid var(--background-modifier-border);
}
.is-phone .projects-left-column.is-visible {
transform: translateX(0);
}
.is-phone .projects-sidebar-toggle {
display: flex;
align-items: center;
justify-content: center;
margin-right: 8px;
}
.is-phone .projects-sidebar-close {
--icon-size: var(--size-4-4);
position: absolute;
top: var(--size-4-2);
right: 10px;
z-index: 15;
display: flex;
align-items: center;
justify-content: center;
}
.is-phone .projects-container:has(.projects-left-column.is-visible)::before {
content: "";
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background-color: var(--background-modifier-cover);
opacity: 0.5;
z-index: 5;
transition: opacity 0.3s ease-in-out;
}
.is-phone .projects-container {
position: relative;
overflow: hidden;
}
.is-phone .projects-sidebar-header:has(.projects-sidebar-close) {
padding-right: var(--size-4-12);
}
.tg-project-popover {
background: var(--background-secondary);
border: 1px solid var(--background-modifier-border);
border-radius: var(--radius-m);
box-shadow: var(--shadow-s);
padding: 10px 12px;
max-width: 520px;
max-height: 60vh;
overflow: auto;
}
.tg-project-props {
display: flex;
flex-direction: column;
gap: 6px;
}
.tg-project-props > div {
display: grid;
grid-template-columns: minmax(90px, 160px) 1fr;
align-items: start;
column-gap: 10px;
padding: 2px 0;
}
.tg-project-props > div > div:first-child {
color: var(--text-muted);
font-size: 12px;
line-height: 1.3;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
.tg-project-props > div > div:last-child {
color: var(--text-normal);
line-height: 1.4;
white-space: pre-wrap;
word-break: break-word;
}
.projects-props-btn {
display: inline-flex;
align-items: center;
justify-content: center;
width: var(--icon-size, 24px);
height: var(--icon-size, 24px);
color: var(--text-muted);
cursor: pointer;
border-radius: var(--radius-s);
}
.projects-props-btn:hover {
background: var(--background-modifier-hover);
color: var(--text-normal);
}
/* src/styles/project-tree.scss */
:root {
--tree-indent-size: 1.5rem;
--tree-guide-color: var(--background-modifier-border);
}
.project-tree-container {
height: 100%;
overflow: auto;
}
.project-tree {
padding: 0.5rem 0;
}
.project-tree-item {
position: relative;
user-select: none;
--tree-level: 0;
}
.project-tree-item-content {
display: flex;
align-items: center;
padding: 8px;
padding-left: calc((var(--tree-level) - 1) * var(--tree-indent-size));
cursor: pointer;
border-radius: var(--radius-s);
transition: background-color 0.15s ease;
position: relative;
}
.project-tree-item-content:hover {
background-color: var(--background-modifier-hover);
}
.project-tree-item.is-selected > .project-tree-item-content {
background-color: var(--background-modifier-active-hover);
}
.project-tree-item-toggle {
display: flex;
align-items: center;
justify-content: center;
width: 1.5rem;
height: 1.5rem;
flex-shrink: 0;
cursor: pointer;
color: var(--text-muted);
transition: transform 0.15s ease;
}
.project-tree-item-toggle:hover {
color: var(--text-normal);
}
.project-tree-item-toggle svg {
width: 0.875rem;
height: 0.875rem;
}
.project-tree-item-toggle-spacer {
width: 1.5rem;
flex-shrink: 0;
}
.project-tree-item-icon {
display: flex;
align-items: center;
justify-content: center;
width: 1.25rem;
height: 1.25rem;
margin-right: 0.5rem;
flex-shrink: 0;
color: var(--text-muted);
}
.project-tree-item-content-wrapper {
display: flex;
align-items: center;
justify-content: space-between;
flex: 1;
min-width: 0;
gap: 0.5rem;
}
.project-tree-item-name {
flex: 1;
min-width: 0;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
.project-tree-item-counts {
display: flex;
align-items: center;
gap: 0.25rem;
}
.project-tree-item-count-direct,
.project-tree-item-count-total {
display: inline-flex;
align-items: center;
justify-content: center;
min-width: 1.25rem;
height: 1.25rem;
padding: 0 0.25rem;
border-radius: var(--radius-s);
font-size: var(--font-ui-smaller);
font-weight: 500;
}
.project-tree-item-count-direct {
background-color: var(--background-modifier-active);
color: var(--text-normal);
white-space: nowrap;
transition: background-color 0.2s ease, color 0.2s ease;
}
.project-tree-item-count-total {
background-color: var(--background-modifier-border);
color: var(--text-muted);
white-space: nowrap;
transition: background-color 0.2s ease, color 0.2s ease;
}
.project-tree-item-count-direct.partially-completed,
.project-tree-item-count-total.partially-completed {
color: var(--text-success);
}
.project-tree-item-count-direct.all-completed,
.project-tree-item-count-total.all-completed {
background-color: var(--interactive-success);
color: var(--text-on-accent);
font-weight: 600;
}
.project-tree-item.is-selected .project-tree-item-count-direct.all-completed,
.project-tree-item.is-selected .project-tree-item-count-total.all-completed {
background-color: var(--interactive-success);
opacity: 0.9;
}
.project-tree-children {
position: relative;
}
.project-tree-item[data-level]:not([data-level="0"]) > .project-tree-item-content::before {
content: "";
position: absolute;
left: calc(0.5rem + (var(--tree-level) - 1) * var(--tree-indent-size) + 0.75rem);
top: 0;
bottom: 0;
width: 1px;
background: var(--tree-guide-color);
opacity: 0.3;
}
.project-tree-item-children {
overflow: hidden;
transition: max-height 0.2s ease;
}
.project-tree-item-children:not(.is-expanded) {
max-height: 0;
}
.project-tree-empty {
display: flex;
align-items: center;
justify-content: center;
padding: 2rem;
color: var(--text-muted);
font-size: var(--font-ui-small);
}
.projects-view-toggle-btn {
display: flex;
align-items: center;
justify-content: center;
width: 1.75rem;
height: 1.75rem;
border-radius: var(--radius-s);
cursor: pointer;
color: var(--text-muted);
transition: all 0.15s ease;
}
.projects-view-toggle-btn:hover {
background-color: var(--background-modifier-hover);
color: var(--text-normal);
}
.projects-view-toggle-btn svg {
width: 1rem;
height: 1rem;
}
.project-tree-container.multi-select-mode .project-tree-item-content {
position: relative;
}
.project-tree-container.multi-select-mode .project-tree-item-content::before {
content: "";
position: absolute;
left: 0.25rem;
top: 50%;
transform: translateY(-50%);
width: 0.875rem;
height: 0.875rem;
border: 1px solid var(--background-modifier-border-hover);
border-radius: var(--radius-s);
}
.project-tree-container.multi-select-mode .project-tree-item.is-selected .project-tree-item-content::before {
background-color: var(--interactive-accent);
border-color: var(--interactive-accent);
}
.project-tree-container.multi-select-mode .project-tree-item.is-selected .project-tree-item-content::after {
content: "\2713";
position: absolute;
left: 0.25rem;
top: 50%;
transform: translateY(-50%);
width: 0.875rem;
height: 0.875rem;
display: flex;
align-items: center;
justify-content: center;
color: var(--text-on-accent);
font-size: 0.625rem;
font-weight: bold;
}
.theme-dark .project-tree-item-count-direct {
background-color: var(--background-modifier-active-hover);
}
.theme-dark .project-tree-item-count-total {
background-color: var(--background-modifier-border-hover);
}
@media (max-width: 768px) {
.project-tree-item-content {
padding: 0.375rem 0.5rem;
}
}
@keyframes slideDown {
from {
opacity: 0;
transform: translateY(-0.5rem);
}
to {
opacity: 1;
transform: translateY(0);
}
}
.project-tree-item-children > .project-tree-item {
animation: slideDown 0.15s ease;
}
/* src/styles/review-view.scss */
.review-container {
display: flex;
flex-direction: column;
height: 100%;
width: 100%;
overflow: hidden;
}
.review-content {
display: flex;
flex-direction: row;
flex: 1;
overflow: hidden;
}
.review-left-column {
width: 250px;
min-width: 200px;
max-width: 300px;
display: flex;
flex-direction: column;
border-right: 1px solid var(--background-modifier-border);
overflow: hidden;
}
.is-phone .review-left-column {
max-width: 100%;
}
.review-right-column {
flex: 1;
display: flex;
flex-direction: column;
overflow: hidden;
}
.review-sidebar-header {
display: flex;
justify-content: space-between;
align-items: center;
padding: var(--size-4-2) var(--size-4-4);
border-bottom: 1px solid var(--background-modifier-border);
height: var(--size-4-10);
}
.review-sidebar-title {
font-weight: 600;
font-size: 14px;
}
.review-multi-select-btn {
cursor: pointer;
color: var(--text-muted);
display: flex;
align-items: center;
justify-content: center;
}
.review-multi-select-btn:hover {
color: var(--text-normal);
}
.review-sidebar-list {
flex: 1;
overflow-y: auto;
padding: var(--size-4-2);
}
.review-projects-group-header {
font-size: 10px;
font-weight: 600;
color: var(--text-faint);
text-transform: uppercase;
padding: 4px 8px 4px;
margin-top: 12px;
letter-spacing: 0.5px;
}
.review-projects-group-header:first-child {
margin-top: 4px;
}
.review-project-item {
--icon-size: var(--size-4-4);
display: flex;
align-items: center;
padding: 4px 8px;
cursor: pointer;
border-radius: var(--radius-s);
margin-bottom: 2px;
}
.review-project-item:hover {
background-color: var(--background-modifier-hover);
}
.review-project-item.selected {
background-color: var(--background-modifier-active);
}
.review-project-item.has-review-settings .review-project-icon {
color: var(--text-accent);
}
.review-project-item.has-review-settings .review-project-name {
font-weight: 500;
}
.review-project-item:not(.has-review-settings) .review-project-icon {
color: var(--text-muted);
}
.review-project-icon {
margin-right: 8px;
display: flex;
align-items: center;
justify-content: center;
}
.review-project-name {
flex: 1;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
.review-task-header {
display: flex;
flex-direction: column;
padding: var(--size-4-4);
border-bottom: 1px solid var(--background-modifier-border);
}
.is-phone .review-task-header {
flex-direction: row;
align-items: flex-start;
}
.review-header-content h3 {
margin: 0 0 8px 0;
padding: 0;
}
.review-info {
display: flex;
align-items: center;
color: var(--text-muted);
font-size: 0.9em;
}
.review-separator {
margin: 0 8px;
}
.review-frequency {
color: var(--text-accent);
}
.review-frequency:hover {
color: var(--text-normal);
text-decoration: underline;
}
.review-last-date {
color: var(--text-normal);
}
.review-no-settings {
font-style: italic;
}
.review-filter-info {
margin-top: 10px;
padding: 6px 10px;
background-color: var(--background-secondary);
border-radius: var(--radius-s);
font-size: 0.85em;
color: var(--text-muted);
border-left: 3px solid var(--text-accent);
}
.review-filter-toggle {
cursor: pointer;
text-decoration: underline;
color: var(--text-accent);
margin-left: 5px;
}
.review-filter-toggle:hover {
color: var(--text-accent-hover);
}
.review-task-list {
flex: 1;
overflow-y: auto;
padding: var(--size-4-2);
}
.review-empty-state {
display: flex;
align-items: center;
justify-content: center;
height: 100%;
color: var(--text-muted);
font-style: italic;
padding: 16px;
text-align: center;
}
.review-button-container {
margin-top: 12px;
display: flex;
justify-content: flex-start;
}
.review-complete-btn,
.review-configure-btn {
padding: 6px 12px;
border-radius: var(--radius-s);
cursor: pointer;
font-size: 0.9em;
border: 1px solid var(--background-modifier-border);
background-color: var(--background-secondary);
}
.review-complete-btn {
color: var(--text-accent);
}
.review-complete-btn:hover {
background-color: var(--background-modifier-hover);
color: var(--text-accent);
}
.review-configure-btn {
color: var(--text-muted);
}
.review-configure-btn:hover {
background-color: var(--background-modifier-hover);
color: var(--text-normal);
}
.review-edit-btn {
color: var(--text-accent-hover);
margin-left: 8px;
}
.review-edit-btn:hover {
background-color: var(--background-modifier-hover);
color: var(--text-accent-hover);
}
.review-modal-title {
margin-top: 0;
margin-bottom: 20px;
font-size: 1.5em;
color: var(--text-normal);
border-bottom: 1px solid var(--background-modifier-border);
padding-bottom: 10px;
}
.review-modal-form {
margin-bottom: 20px;
}
.review-modal-field {
margin-bottom: 16px;
}
.review-modal-label {
display: block;
font-weight: 600;
margin-bottom: 4px;
color: var(--text-normal);
}
.review-modal-description {
font-size: 0.9em;
color: var(--text-muted);
margin-bottom: 8px;
}
.review-modal-select {
width: 100%;
border-radius: var(--radius-s);
border: 1px solid var(--background-modifier-border);
background-color: var(--background-primary);
color: var(--text-normal);
font-size: 14px;
}
.review-modal-custom-frequency {
margin-top: 8px;
}
.review-modal-input {
width: 100%;
padding: 8px;
border-radius: var(--radius-s);
border: 1px solid var(--background-modifier-border);
background-color: var(--background-primary);
color: var(--text-normal);
font-size: 14px;
}
.review-modal-last-reviewed {
padding: 8px;
font-size: 14px;
color: var(--text-normal);
background-color: var(--background-secondary);
border-radius: var(--radius-s);
}
.review-modal-buttons {
display: flex;
justify-content: flex-end;
margin-top: 24px;
border-top: 1px solid var(--background-modifier-border);
padding-top: 16px;
}
.review-modal-button {
padding: 8px 16px;
border-radius: var(--radius-s);
font-size: 14px;
cursor: pointer;
border: 1px solid var(--background-modifier-border);
}
.review-modal-button-cancel {
background-color: var(--background-secondary);
color: var(--text-muted);
margin-right: 8px;
}
.review-modal-button-cancel:hover {
background-color: var(--background-modifier-hover);
color: var(--text-normal);
}
.review-modal-button-save {
background-color: var(--interactive-accent);
color: var(--text-on-accent);
}
.review-modal-button-save:hover {
background-color: var(--interactive-accent-hover);
}
.is-phone .review-container {
position: relative;
overflow: hidden;
}
.is-phone .review-left-column {
position: absolute;
left: 0;
top: 0;
height: 100%;
z-index: 10;
background-color: var(--background-secondary);
width: 100%;
transform: translateX(-100%);
transition: transform 0.3s ease-in-out;
border-right: 1px solid var(--background-modifier-border);
}
.is-phone .review-left-column.is-visible {
transform: translateX(0);
}
.is-phone .review-sidebar-toggle {
display: flex;
align-items: center;
justify-content: center;
margin-right: 8px;
}
.is-phone .review-sidebar-close {
position: absolute;
top: var(--size-2-2);
right: 10px;
z-index: 15;
display: flex;
align-items: center;
justify-content: center;
}
.is-phone .review-container:has(.review-left-column.is-visible)::before {
content: "";
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background-color: var(--background-modifier-cover);
opacity: 0.5;
z-index: 5;
transition: opacity 0.3s ease-in-out;
}
/* src/styles/habit.scss */
.tg-habit-component-container {
width: 100%;
display: flex;
flex-direction: column;
gap: 1rem;
padding: 1rem;
height: 100%;
overflow-y: auto;
}
.habit-list-container {
display: grid;
grid-template-columns: repeat(1, minmax(0, 1fr));
gap: 1rem;
width: 100%;
}
@media screen and (max-width: 480px) {
.habit-list-container {
padding: 0.5rem;
gap: 0.75rem;
}
}
@media screen and (min-width: 768px) {
.habit-list-container {
margin-left: auto;
margin-right: auto;
max-width: 400px;
display: flex;
flex-direction: column;
}
}
@media screen and (min-width: 1024px) {
.habit-list-container {
max-width: 500px;
}
}
.habit-card-wrapper {
width: 100%;
min-height: fit-content;
}
.habit-create-button-container {
display: flex;
justify-content: flex-start;
}
.habit-card {
border: 1px solid var(--background-modifier-border);
border-radius: var(--radius-m);
background-color: var(--background-secondary);
color: var(--text-normal);
overflow: hidden;
display: flex;
flex-direction: column;
width: 100%;
height: 100%;
min-height: fit-content;
}
.habit-card .card-header {
display: flex;
align-items: center;
justify-content: space-between;
padding: 0.5rem 1rem;
gap: 0.5rem;
}
.habit-card .card-title {
display: flex;
align-items: center;
gap: 0.5rem;
font-size: var(--font-ui-large);
font-weight: 600;
flex-grow: 1;
overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
}
.habit-name.habit-name:hover {
text-decoration: underline;
cursor: pointer;
}
.habit-card .card-content-wrapper {
padding: 0.75rem 1rem;
flex-grow: 1;
}
.daily-habit-card .card-header {
}
.daily-habit-card .habit-checkbox-container {
}
.daily-habit-card .habit-checkbox {
--checkbox-size: 1.25rem;
cursor: pointer;
accent-color: var(--interactive-accent);
}
.daily-habit-card .card-content-wrapper {
padding: 0rem 1rem 0.75rem;
}
.count-habit-card .card-content-wrapper {
display: flex;
flex-direction: column;
gap: 0.75rem;
align-items: center;
}
.count-habit-card .habit-icon-button {
--icon-size: 2rem;
height: 4rem;
width: 4rem;
aspect-ratio: 1;
padding: 0;
cursor: pointer;
border-radius: var(--radius-s);
display: flex;
justify-content: center;
align-items: center;
font-size: 1.5rem;
}
.count-habit-card .habit-icon-button {
color: var(--icon-color);
}
.count-habit-card .habit-icon-button:hover {
background-color: var(--background-secondary);
}
.count-habit-card .habit-card-name {
font-size: var(--font-ui-large);
font-weight: 600;
}
.count-habit-card .habit-active-day {
font-size: var(--font-ui-small);
color: var(--text-muted);
font-weight: 400;
}
.count-habit-card .habit-info {
display: flex;
flex-direction: column;
align-items: center;
text-align: center;
flex-grow: 1;
}
.count-habit-card .habit-info h3 {
font-size: var(--font-ui-large);
font-weight: 600;
}
.count-habit-card .habit-progress-area {
width: 100%;
display: flex;
flex-direction: column;
align-items: center;
gap: 0.5rem;
}
@media (min-width: 640px) {
.count-habit-card .card-content-wrapper {
flex-direction: row;
align-items: center;
gap: 1rem;
}
.count-habit-card .habit-progress-area {
width: auto;
min-width: 150px;
align-items: flex-end;
}
.count-habit-card .habit-heatmap-small {
width: 100%;
}
}
.scheduled-habit-card .card-header {
padding-bottom: 0.5rem;
}
.scheduled-habit-card .card-content-wrapper {
display: flex;
flex-direction: column;
gap: 0.75rem;
align-items: center;
}
.scheduled-habit-card .habit-heatmap-medium {
width: 100%;
}
.scheduled-habit-card .habit-controls {
width: 100%;
display: flex;
flex-direction: column;
gap: 0.5rem;
align-items: center;
}
.scheduled-habit-card .habit-event-dropdown {
width: auto;
margin-bottom: 0.5rem;
width: 100%;
}
@media (min-width: 640px) {
.scheduled-habit-card .card-content-wrapper {
flex-direction: row;
align-items: flex-start;
justify-content: space-between;
}
.scheduled-habit-card .habit-heatmap-medium {
width: auto;
flex-grow: 1;
margin-right: 1rem;
}
.scheduled-habit-card .habit-controls {
width: auto;
min-width: 150px;
align-items: flex-start;
}
}
.mapping-habit-card .card-header {
padding-bottom: 0.5rem;
}
.mapping-habit-card .card-content-wrapper {
display: flex;
flex-direction: column;
gap: 0.75rem;
align-items: center;
padding-top: 0;
padding-bottom: 1.2rem;
}
.mapping-habit-card .habit-heatmap-medium {
width: 100%;
}
.mapping-habit-card .habit-controls {
width: 100%;
display: flex;
flex-direction: column;
align-items: center;
gap: 0.5rem;
}
.mapping-habit-card .habit-mapping-button {
display: flex;
justify-content: center;
align-items: center;
font-size: 1.75rem;
padding: 0.5rem;
width: 100%;
max-width: 100px;
height: 3.5rem;
border: 1px solid var(--button-secondary-border-color);
background-color: var(--button-secondary-bg);
color: var(--text-normal);
cursor: pointer;
border-radius: var(--radius-s);
}
.mapping-habit-card .habit-mapping-button:hover {
background-color: var(--button-secondary-hover-bg);
}
.mapping-habit-card .habit-slider-setting {
width: 100%;
max-width: 200px;
}
.mapping-habit-card .habit-slider-setting .setting-item-info {
display: none;
}
.mapping-habit-card .habit-slider-setting .setting-item {
width: 100%;
padding: 0;
border: none;
}
.mapping-habit-card .habit-slider-setting .setting-item-control {
width: 100%;
}
.mapping-habit-card .heatmap-md .heatmap-container-simple {
gap: var(--size-2-2);
}
@media (min-width: 640px) {
.mapping-habit-card .card-content-wrapper {
flex-direction: row;
align-items: center;
justify-content: space-between;
}
.mapping-habit-card .habit-heatmap-medium {
width: auto;
flex-grow: 1;
margin-right: 1rem;
}
.mapping-habit-card .habit-controls {
width: auto;
min-width: 80px;
flex-direction: column;
align-items: center;
gap: 0.75rem;
}
.mapping-habit-card .habit-mapping-button {
width: 4rem;
height: 4rem;
}
.mapping-habit-card .habit-slider-setting {
width: 100%;
max-width: none;
}
}
.habit-progress-container {
width: 100%;
height: 0.75rem;
background-color: var(--background-modifier-border);
border-radius: var(--radius-l);
overflow: hidden;
position: relative;
}
.habit-progress-bar {
height: 100%;
background-color: var(--interactive-accent);
border-radius: var(--radius-l);
transition: width 0.3s ease-in-out;
}
.habit-progress-container.filled .habit-progress-text {
mix-blend-mode: unset;
}
.habit-progress-text {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
display: flex;
justify-content: center;
align-items: center;
font-size: 0.6rem;
line-height: 1;
color: var(--text-on-accent);
mix-blend-mode: difference;
font-weight: 500;
}
.tg-heatmap-root {
width: 100%;
}
.heatmap-sm .heatmap-container-simple {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: var(--size-2-2);
overflow-x: auto;
padding-bottom: 2px;
}
.heatmap-md .heatmap-container-simple {
display: grid;
grid-template-columns: repeat(6, 1fr);
gap: var(--size-2-2);
overflow-x: auto;
padding-bottom: 2px;
justify-items: center;
}
.heatmap-lg .heatmap-container-simple {
display: grid;
grid-template-columns: repeat(10, 1fr);
gap: var(--size-2-2);
overflow-x: auto;
padding-bottom: 2px;
justify-items: center;
}
.heatmap-cell {
border-radius: var(--radius-s);
display: flex;
justify-content: center;
align-items: center;
cursor: pointer;
flex-shrink: 0;
background-color: var(--background-modifier-border);
border: 1px solid transparent;
}
.heatmap-cell-square {
}
.heatmap-cell-dot {
border-radius: 50%;
}
.heatmap-sm .heatmap-cell {
width: 0.75rem;
height: 0.75rem;
}
.habit-heatmap-medium .heatmap-md .heatmap-cell {
width: 1.4rem;
height: 1.4rem;
font-size: 0.7rem;
}
.heatmap-md .heatmap-cell {
width: 1.1rem;
height: 1.1rem;
font-size: 0.7rem;
}
.heatmap-lg .heatmap-cell {
width: 1.25rem;
height: 1.25rem;
font-size: 0.75rem;
}
.heatmap-cell.default {
}
.heatmap-cell.filled {
background-color: var(--interactive-accent);
color: var(--text-on-accent);
}
.heatmap-cell.has-custom-content:has(.pie-dot-container) {
background: transparent;
border: unset;
}
.heatmap-cell.has-custom-content,
.heatmap-cell.has-text-content {
background-color: var(--background-secondary);
border-color: var(--background-modifier-border);
color: var(--text-normal);
}
.heatmap-cell.has-text-content {
line-height: 1;
}
.pie-dot-container {
width: 100%;
height: 100%;
display: flex;
justify-content: center;
align-items: center;
}
.pie-dot-container svg {
display: block;
}
.habit-empty-state {
text-align: center;
padding: 2rem 1rem;
color: var(--text-muted);
}
.habit-empty-state h2 {
font-size: var(--font-ui-large);
font-weight: 600;
margin-bottom: 0.5rem;
}
.habit-empty-state p {
font-size: var(--font-ui-normal);
color: var(--text-faint);
}
.habit-icon {
display: inline-block;
height: 1em;
line-height: 1;
text-align: center;
color: var(--text-muted);
font-style: italic;
margin-right: 0.25em;
--icon-size: 1.5rem;
}
.habit-chart-controls {
display: flex;
flex-direction: column;
gap: 0.5rem;
margin-bottom: 0.75rem;
}
.habit-chart-filters {
display: flex;
flex-wrap: wrap;
gap: 0.5rem;
}
.habit-chart-filters .filter-btn {
padding: 0.25rem 0.6rem;
border: 1px solid var(--background-modifier-border);
background: var(--background-secondary);
color: var(--text-normal);
border-radius: var(--radius-s);
cursor: pointer;
}
.habit-chart-filters .filter-btn:hover {
background: var(--background-secondary-alt);
}
.habit-chart-years {
display: flex;
align-items: center;
gap: 0.5rem;
}
.habit-chart-years .years-label {
color: var(--text-muted);
font-size: var(--font-ui-small);
}
.habit-chart-years .years-bar {
display: flex;
flex-wrap: nowrap;
gap: 0.4rem;
overflow-x: auto;
padding-bottom: 2px;
}
.habit-chart-years .year-btn {
padding: 0.2rem 0.5rem;
border: 1px solid var(--background-modifier-border);
background: var(--background-secondary);
color: var(--text-muted);
border-radius: var(--radius-s);
cursor: pointer;
white-space: nowrap;
}
.habit-chart-years .year-btn.selected,
.habit-chart-years .year-btn:hover {
background: var(--interactive-accent);
border-color: var(--interactive-accent);
color: var(--text-on-accent);
}
.habit-chart-heatmap {
max-height: 60vh;
overflow: auto;
}
/* src/styles/global.scss */
:root {
--task-completed-color: #4caf50;
--task-doing-color: #80dee5;
--task-in-progress-color: #f9d923;
--task-abandoned-color: #eb5353;
--task-planned-color: #9c27b0;
--task-question-color: #2196f3;
--task-important-color: #f44336;
--task-star-color: #ffc107;
--task-quote-color: #607d8b;
--task-location-color: #795548;
--task-bookmark-color: #ff9800;
--task-information-color: #00bcd4;
--task-idea-color: #9c27b0;
--task-pros-color: #4caf50;
--task-cons-color: #f44336;
--task-fire-color: #ff5722;
--task-key-color: #ffd700;
--task-win-color: #66bb6a;
--task-up-color: #4caf50;
--task-down-color: #f44336;
--task-note-color: #9e9e9e;
--task-amount-color: #8bc34a;
--task-speech-color: #03a9f4;
--progress-0-color: #ae431e;
--progress-25-color: #e5890a;
--progress-50-color: #b4c6a6;
--progress-75-color: #6bcb77;
--progress-100-color: #4d96ff;
--progress-background-color: #f1f1f1;
}
.theme-dark {
--task-completed-color: #4caf50;
--task-doing-color: #379fa7;
--task-in-progress-color: #ffc107;
--task-abandoned-color: #f44336;
--task-planned-color: #ce93d8;
--task-question-color: #42a5f5;
--task-important-color: #ef5350;
--task-star-color: #ffd54f;
--task-quote-color: #90a4ae;
--task-location-color: #8d6e63;
--task-bookmark-color: #ffb74d;
--task-information-color: #26c6da;
--task-idea-color: #ce93d8;
--task-pros-color: #66bb6a;
--task-cons-color: #ef5350;
--task-fire-color: #ff7043;
--task-key-color: #ffd700;
--task-win-color: #81c784;
--task-up-color: #66bb6a;
--task-down-color: #ef5350;
--task-note-color: #bdbdbd;
--task-amount-color: #aed581;
--task-speech-color: #29b6f6;
--progress-0-color: #ae431e;
--progress-25-color: #e5890a;
--progress-50-color: #b4c6a6;
--progress-75-color: #6bcb77;
--progress-100-color: #4d96ff;
--progress-background-color: #f1f1f1;
}
/* src/styles/native-layout.scss */
.task-genius-container,
.tg-fluent-container,
.task-genius-view,
.task-genius-fluent-view {
--tg-bg-primary: var(--background-primary);
--tg-bg-secondary: var(--tg-bg-primary);
--tg-border-color: var(--background-modifier-border);
--tg-hover-bg: var(--background-modifier-hover);
--tg-active-bg: var(--background-modifier-hover);
}
.theme-dark .task-genius-container,
.theme-dark .tg-fluent-container,
.theme-dark .task-genius-view,
.theme-dark .task-genius-fluent-view {
--tg-bg-primary: var(--background-primary);
--tg-bg-secondary: var(--background-secondary);
}
.theme-light .task-genius-container,
.theme-light .tg-fluent-container,
.theme-light .task-genius-view,
.theme-light .task-genius-fluent-view {
--tg-bg-primary: var(--background-primary);
--tg-bg-secondary: var(--tg-bg-primary);
}
.task-genius-container,
.tg-fluent-container {
display: flex;
flex-direction: row;
gap: 0;
padding: 0;
margin: 0;
height: 100%;
width: 100%;
border-top: 1px solid var(--tg-border-color);
}
.two-column-container {
gap: 0;
padding: 0;
}
.two-column-content {
gap: 0;
}
.task-sidebar {
background-color: var(--tg-bg-secondary);
border-right: 1px solid var(--tg-border-color);
margin: 0;
padding: 0;
box-shadow: none;
}
.sidebar-nav {
gap: 0;
padding: 8px 0;
}
.two-column-left-column {
background-color: var(--tg-bg-secondary);
border-right: 1px solid var(--tg-border-color);
margin: 0;
}
.task-content {
background-color: var(--tg-bg-primary);
flex: 1;
display: flex;
flex-direction: column;
margin: 0;
padding: 0;
gap: 0;
border: none;
box-shadow: none;
}
.tg-fluent-main-container {
background-color: var(--tg-bg-primary);
flex: 1;
display: flex;
flex-direction: column;
margin: 0;
padding: 0;
gap: 0;
border: none;
box-shadow: none;
}
.two-column-right-column {
background-color: var(--tg-bg-primary);
margin: 0;
}
.tg-fluent-content {
background-color: var(--tg-bg-primary);
}
.content-header {
background-color: var(--tg-bg-primary);
border-bottom: 1px solid var(--tg-border-color);
padding: 10px 16px;
margin: 0;
}
.tg-fluent-top-nav {
background-color: var(--tg-bg-primary);
border-bottom: 1px solid var(--tg-border-color);
}
.fluent-top-navigation {
background-color: var(--tg-bg-primary);
}
.two-column-sidebar-header,
.two-column-task-header {
background-color: transparent;
border-bottom: 1px solid var(--tg-border-color);
margin: 0;
}
.fluent-view-tab {
background-color: transparent;
border: none;
border-radius: var(--radius-s);
color: var(--text-muted);
transition: background-color 0.15s ease, color 0.15s ease;
}
.fluent-view-tab:hover {
background-color: var(--tg-hover-bg);
color: var(--text-normal);
}
.fluent-view-tab.is-active,
.fluent-view-tab.active {
background-color: var(--tg-active-bg);
color: var(--text-normal);
box-shadow: none;
}
.fluent-nav-icon-button {
background-color: transparent;
border-radius: var(--radius-s);
transition: background-color 0.15s ease, color 0.15s ease;
}
.fluent-nav-icon-button:hover {
background-color: var(--tg-hover-bg);
color: var(--text-normal);
}
.fluent-nav-icon-button.is-active {
background-color: var(--tg-active-bg);
}
.clickable-icon {
transition: background-color 0.15s ease;
}
.clickable-icon:hover {
background-color: var(--tg-hover-bg);
}
.fluent-nav-button {
background-color: transparent;
border: 1px solid var(--tg-border-color);
transition: background-color 0.15s ease;
}
.fluent-nav-button:hover {
background-color: var(--tg-hover-bg);
}
.sidebar-nav-item {
margin: 0 4px;
border-radius: var(--radius-s);
background-color: transparent;
transition: background-color 0.15s ease;
}
.sidebar-nav-item:hover {
background-color: var(--tg-hover-bg);
}
.sidebar-nav-item.is-active {
background-color: var(--tg-active-bg);
color: var(--text-normal);
--background-modifier-hover: var(--tg-hover-bg);
}
.two-column-list-item {
border-radius: var(--radius-s);
transition: background-color 0.15s ease;
}
.two-column-list-item:hover {
background-color: var(--tg-hover-bg);
}
.two-column-list-item.selected {
background-color: var(--tg-active-bg);
}
.task-item {
background-color: transparent;
border-bottom: 1px solid var(--tg-border-color);
margin: 0;
transition: background-color 0.15s ease;
}
.task-item:hover {
background-color: var(--tg-hover-bg);
}
.task-item.selected {
background-color: var(--tg-active-bg);
}
.task-list > .task-item:last-child {
border-bottom: none;
}
.tg-task-list-item {
background-color: transparent;
border: none;
border-bottom: 1px solid var(--tg-border-color);
border-radius: 0;
margin: 0;
transition: background-color 0.15s ease;
}
.tg-task-list-item:hover {
background-color: var(--tg-hover-bg);
box-shadow: none;
transform: none;
}
.tg-task-list-item:hover::before {
background: transparent;
}
.task-list {
padding: 0;
gap: 0;
}
.task-list-container {
padding: 0;
gap: 0;
}
.task-tree-container {
padding: 0;
gap: 0;
}
.two-column-task-list {
padding: 0;
}
.two-column-sidebar-list {
padding: 4px;
gap: 0;
}
.task-genius-view .tree-item {
border-radius: var(--radius-s);
transition: background-color 0.15s ease;
}
.task-genius-view .tree-item:hover {
background-color: var(--tg-hover-bg);
}
.task-genius-view .tree-item.selected {
background-color: var(--tg-active-bg);
}
.fluent-view-tabs {
background-color: transparent;
border-radius: var(--radius-s);
padding: 2px;
gap: 2px;
}
.internal-embed .task-genius-container {
border-top: 1px solid var(--tg-border-color);
}
.bases-view.task-genius-container {
border-top: none;
background-color: var(--tg-bg-primary);
}
/* src/styles/view-config.scss */
.task-genius-view-config-modal {
width: max(70%, 500px);
}
.task-genius-view-config-modal .setting-item {
margin-bottom: 15px;
}
.task-genius-view-config-modal .setting-item:not(.setting-item-heading) .setting-item-info {
width: 120px;
}
.task-genius-view-config-modal .setting-item-control input[type=text],
.task-genius-view-config-modal .setting-item-control input[type=number] {
width: 100%;
}
.task-genius-view-config-modal .setting-item-description {
font-size: var(--font-ui-smaller);
color: var(--text-muted);
margin-top: 2px;
}
.view-management-list .setting-item {
border-bottom: 1px solid var(--background-modifier-border);
padding: 10px 0;
display: flex;
align-items: center;
}
.view-management-list .setting-item-info {
flex-grow: 1;
margin-right: 10px;
}
.view-management-list .setting-item-control {
display: flex;
align-items: center;
gap: 8px;
}
.view-management-list .setting-item-control .button-component {
padding: 5px;
height: auto;
}
.view-management-list .view-order-button,
.view-management-list .view-delete-button {
margin-left: 5px;
}
.view-management-list .setting-item:last-child {
border-bottom: none;
}
.view-management-list .setting-item-control .checkbox-container {
margin: 0;
}
.tg-icon-menu {
position: absolute;
z-index: 100;
background-color: var(--background-secondary);
border: 1px solid var(--background-modifier-border);
border-radius: var(--radius-m);
box-shadow: var(--shadow-l);
padding: 8px;
max-height: 300px;
width: 250px;
display: flex;
flex-direction: column;
box-sizing: border-box;
}
.tg-icon-menu .tg-menu-search {
width: 100%;
padding: 6px 8px;
margin-bottom: 8px;
border: 1px solid var(--background-modifier-border);
border-radius: var(--radius-s);
background-color: var(--background-primary);
color: var(--text-normal);
box-sizing: border-box;
flex-shrink: 0;
}
.tg-icon-menu .tg-menu-icons {
flex-grow: 1;
overflow-y: auto;
min-height: 0;
display: grid;
grid-template-columns: repeat(auto-fill, minmax(32px, 1fr));
gap: 4px;
}
.tg-icon-menu .clickable-icon {
display: flex;
justify-content: center;
align-items: center;
padding: 6px;
border-radius: var(--radius-s);
cursor: pointer;
background-color: var(--background-primary);
border: 1px solid transparent;
transition: background-color 0.1s ease-in-out, border-color 0.1s ease-in-out;
}
.tg-icon-menu .clickable-icon:hover {
background-color: var(--background-modifier-hover);
border-color: var(--background-modifier-border-hover);
}
.tg-icon-menu .clickable-icon svg {
width: 20px;
height: 20px;
color: var(--text-muted);
}
/* src/styles/task-status.scss */
.task-status-widget {
display: inline-flex;
align-items: center;
cursor: pointer;
font-size: var(--font-ui-medium);
font-weight: var(--font-bold);
}
.task-state.live-preview-mode {
padding-inline-start: var(--size-4-2);
padding-inline-end: var(--size-2-1);
}
.task-status-widget .list-bullet::after {
background-color: var(--list-marker-color) !important;
}
.task-state[data-task-state=" "] {
color: var(--text-accent);
}
.task-state[data-task-state="/"] {
color: var(--task-doing-color);
}
.task-state[data-task-state=">"] {
color: var(--task-in-progress-color);
}
.task-state[data-task-state=x],
.task-state[data-task-state=X] {
color: var(--task-completed-color);
}
.task-state[data-task-state="-"] {
color: var(--task-abandoned-color);
}
.task-state[data-task-state="<"] {
color: var(--task-planned-color);
}
.task-state[data-task-state="?"] {
color: var(--task-question-color);
}
.task-state[data-task-state="!"] {
color: var(--task-important-color);
}
.task-state[data-task-state="*"] {
color: var(--task-star-color);
}
.task-state[data-task-state='"'] {
color: var(--task-quote-color);
}
.task-state[data-task-state=l] {
color: var(--task-location-color);
}
.task-state[data-task-state=b] {
color: var(--task-bookmark-color);
}
.task-state[data-task-state=i] {
color: var(--task-information-color);
}
.task-state[data-task-state=I] {
color: var(--task-idea-color);
}
.task-state[data-task-state=p] {
color: var(--task-pros-color);
}
.task-state[data-task-state=c] {
color: var(--task-cons-color);
}
.task-state[data-task-state=f] {
color: var(--task-fire-color);
}
.task-state[data-task-state=k] {
color: var(--task-key-color);
}
.task-state[data-task-state=w] {
color: var(--task-win-color);
}
.task-state[data-task-state=u] {
color: var(--task-up-color);
}
.task-state[data-task-state=d] {
color: var(--task-down-color);
}
.task-state[data-task-state=n] {
color: var(--task-note-color);
}
.task-state[data-task-state=S] {
color: var(--task-amount-color);
}
.task-state[data-task-state="0"],
.task-state[data-task-state="1"],
.task-state[data-task-state="2"],
.task-state[data-task-state="3"],
.task-state[data-task-state="4"],
.task-state[data-task-state="5"],
.task-state[data-task-state="6"],
.task-state[data-task-state="7"],
.task-state[data-task-state="8"],
.task-state[data-task-state="9"] {
color: var(--task-speech-color);
}
.task-fake-bullet {
display: inline-block;
width: 5px;
height: 5px;
border-radius: 50%;
background-color: var(--text-normal);
margin-right: 4px;
vertical-align: middle;
}
ol > .task-list-item .task-fake-bullet {
display: none;
}
ol > .task-list-item .task-state-container {
margin-inline-start: 0;
}
/* src/styles/task-selection.scss */
.task-view.selection-mode {
position: relative;
}
.task-view.selection-mode::before {
content: "";
position: fixed;
top: 0;
left: 0;
right: 0;
bottom: 0;
pointer-events: none;
background: rgba(var(--interactive-accent-rgb), 0.03);
z-index: 0;
}
.task-item.task-item-selected {
background-color: rgba(var(--interactive-accent-rgb), 0.15) !important;
border-left: 3px solid var(--interactive-accent);
padding-left: 13px;
position: relative;
}
.task-selection-badge {
position: fixed;
bottom: 20px;
right: 20px;
padding: 8px 16px;
background-color: var(--interactive-accent);
color: var(--text-on-accent);
border-radius: 16px;
font-weight: 600;
font-size: 14px;
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);
z-index: 1000;
display: flex;
align-items: center;
gap: 8px;
animation: slideInUp 0.2s ease-out;
}
@keyframes slideInUp {
from {
transform: translateY(20px);
opacity: 0;
}
to {
transform: translateY(0);
opacity: 1;
}
}
.task-selection-badge .selection-count {
font-weight: bold;
}
@media (pointer: coarse) {
.task-item.long-press-active {
background-color: rgba(var(--interactive-accent-rgb), 0.1);
transform: scale(0.98);
transition: all 0.2s ease;
}
}
.task-view.selection-mode .task-item:not(.task-item-selected):hover {
background-color: rgba(var(--interactive-accent-rgb), 0.08);
border-left: 2px solid rgba(var(--interactive-accent-rgb), 0.5);
padding-left: 14px;
}
.task-view.shift-key-active .task-item {
cursor: crosshair;
}
.task-bulk-operations-menu {
min-width: 200px;
}
.task-bulk-operations-menu .menu-item {
display: flex;
align-items: center;
gap: 8px;
}
.task-bulk-operations-menu .menu-item-icon {
opacity: 0.7;
}
.task-selection-exit-hint {
position: fixed;
top: 60px;
right: 20px;
padding: 6px 12px;
background-color: var(--background-secondary);
border: 1px solid var(--background-modifier-border);
border-radius: 8px;
font-size: 12px;
color: var(--text-muted);
z-index: 999;
display: flex;
align-items: center;
gap: 6px;
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}
.task-selection-exit-hint kbd {
background-color: var(--background-primary);
border: 1px solid var(--background-modifier-border);
border-radius: 4px;
padding: 2px 6px;
font-family: var(--font-monospace);
font-size: 11px;
}
.tree-item.task-item-selected {
background-color: rgba(var(--interactive-accent-rgb), 0.15) !important;
border-left: 3px solid var(--interactive-accent);
}
.tree-item.task-item-selected .tree-item-inner {
font-weight: 500;
}
.task-item.selection-disabled {
opacity: 0.5;
cursor: not-allowed;
}
.task-item.selection-disabled:hover {
background-color: transparent;
}
.task-item-selection-checkbox {
width: 18px;
height: 18px;
border: 2px solid var(--text-muted);
border-radius: 4px;
display: flex;
align-items: center;
justify-content: center;
margin-right: 8px;
flex-shrink: 0;
transition: all 0.2s ease;
}
.task-item-selected .task-item-selection-checkbox {
background-color: var(--interactive-accent);
border-color: var(--interactive-accent);
}
.task-item-selected .task-item-selection-checkbox::after {
content: "\2713";
color: var(--text-on-accent);
font-size: 12px;
font-weight: bold;
}
.task-selection-mode-enter {
animation: fadeIn 0.2s ease-out;
}
.task-selection-mode-exit {
animation: fadeOut 0.2s ease-out;
}
@keyframes fadeIn {
from {
opacity: 0;
}
to {
opacity: 1;
}
}
@keyframes fadeOut {
from {
opacity: 1;
}
to {
opacity: 0;
}
}
@media (max-width: 768px) {
.task-selection-badge {
bottom: 70px;
}
.task-item.task-item-selected {
border-left-width: 4px;
padding-left: 12px;
}
.task-selection-exit-hint {
display: none;
}
}
.theme-dark .task-item.task-item-selected {
background-color: rgba(var(--interactive-accent-rgb), 0.2) !important;
}
.theme-dark .task-selection-badge {
box-shadow: 0 2px 12px rgba(0, 0, 0, 0.4);
}
.theme-light .task-item.task-item-selected {
background-color: rgba(var(--interactive-accent-rgb), 0.12) !important;
}
.theme-light .task-selection-badge {
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
}
.task-view.compact-mode .task-item.task-item-selected {
padding-top: 4px;
padding-bottom: 4px;
}
@media (prefers-contrast: high) {
.task-item.task-item-selected {
border-left-width: 4px;
background-color: rgba(var(--interactive-accent-rgb), 0.25) !important;
}
}
@media (prefers-reduced-motion: reduce) {
.task-item.task-item-selected,
.task-selection-badge,
.task-selection-exit-hint {
animation: none;
transition: none;
}
}
/* src/styles/onboarding.scss */
.onboarding-view {
--dialog-width: 800px;
--dialog-max-width: 90vw;
--dialog-max-height: 90vh;
--onboarding-spacing: var(--size-4-4);
--onboarding-border-radius: 8px;
--onboarding-transition: all 200ms cubic-bezier(0.4, 0, 0.2, 1);
--shadow-sm: 0 1px 2px 0 rgb(0 0 0 / 0.05);
--shadow-md: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);
--shadow-lg: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);
--shadow-xl: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);
}
.onboarding-view .modal-content {
background-color: var(--modal-background);
border-radius: var(--modal-radius);
max-width: var(--dialog-max-width);
max-height: var(--dialog-max-height);
height: 90vh;
display: flex;
flex-direction: column;
overflow: auto;
position: relative;
min-height: 100px;
}
.onboarding-view {
height: 100%;
display: flex;
flex-direction: column;
background-color: var(--background-primary);
}
.onboarding-view .view-content {
height: 100%;
display: flex;
flex-direction: column;
}
.onboarding-view .onboarding-header:empty {
display: none;
}
.onboarding-view .onboarding-subtitle {
color: var(--text-muted);
font-size: 0.95em;
margin: 0;
}
.onboarding-view .onboarding-content {
flex: 1;
padding: var(--onboarding-spacing);
overflow-y: auto;
min-height: 0;
display: flex;
flex-direction: column;
align-items: center;
}
.onboarding-view .onboarding-footer {
padding: var(--size-4-4) var(--onboarding-spacing);
background: var(--background-primary);
border-top: none;
box-shadow: 0 -2px 12px rgba(0, 0, 0, 0.06);
flex-shrink: 0;
position: relative;
transition: all 0.3s ease;
}
.onboarding-view .onboarding-footer::before {
content: "";
position: absolute;
top: 0;
left: 0;
right: 0;
bottom: 0;
background:
linear-gradient(
to top,
var(--background-primary),
transparent);
opacity: 0.5;
pointer-events: none;
}
.onboarding-view .onboarding-buttons {
display: flex;
gap: var(--size-4-3);
justify-content: space-between;
align-items: center;
position: relative;
z-index: 1;
}
.onboarding-view .buttons-left {
display: flex;
gap: var(--size-4-3);
align-items: center;
}
.onboarding-view .buttons-right {
display: flex;
gap: var(--size-4-3);
align-items: center;
margin-left: auto;
}
.onboarding-view .onboarding-buttons button {
min-height: 36px;
padding: var(--size-4-2) var(--size-4-4);
border-radius: var(--radius-m);
font-weight: 500;
transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
position: relative;
overflow: hidden;
}
.onboarding-view .onboarding-buttons button:not(.mod-cta):hover {
transform: translateY(-1px);
}
.onboarding-view .onboarding-buttons button::after {
content: "";
position: absolute;
top: 50%;
left: 50%;
width: 0;
height: 0;
border-radius: 50%;
background: rgba(255, 255, 255, 0.3);
transform: translate(-50%, -50%);
transition: width 0.6s, height 0.6s;
}
.onboarding-view .onboarding-buttons button:active::after {
width: 200px;
height: 200px;
}
.onboarding-view .settings-check-content {
display: grid;
grid-template-columns: 1fr 1.2fr;
gap: var(--size-4-6);
margin-top: var(--size-4-4);
}
.onboarding-view .settings-check-current-card {
background: var(--background-secondary);
border: 1px solid var(--background-modifier-border);
border-radius: var(--onboarding-border-radius);
padding: var(--size-4-4);
box-shadow: var(--shadow-sm);
}
.onboarding-view .settings-check-card-header {
display: flex;
align-items: center;
gap: var(--size-4-3);
margin-bottom: var(--size-4-3);
padding-bottom: var(--size-4-3);
border-bottom: 1px solid var(--background-modifier-border);
}
.onboarding-view .check-header-icon {
color: var(--color-green);
font-size: 1.5em;
}
.onboarding-view .check-header-title {
display: flex;
align-items: center;
gap: var(--size-4-2);
flex: 1;
}
.onboarding-view .check-header-title h3 {
margin: 0;
font-size: 1.1em;
font-weight: 600;
}
.onboarding-view .settings-check-card-body {
color: var(--text-muted);
}
.onboarding-view .check-card-desc {
font-size: 0.9em;
margin-bottom: var(--size-4-3);
}
.onboarding-view .settings-check-changes-list {
list-style: none;
padding: 0;
margin: 0;
display: flex;
flex-direction: column;
gap: var(--size-4-2);
}
.onboarding-view .settings-check-changes-list li {
display: flex;
align-items: center;
gap: var(--size-4-2);
color: var(--text-normal);
font-size: 0.9em;
}
.onboarding-view .change-check-icon {
color: var(--color-green);
flex-shrink: 0;
}
.onboarding-view .settings-check-actions {
display: flex;
flex-direction: column;
gap: var(--size-4-3);
}
.onboarding-view .settings-check-action-card {
background: var(--background-primary);
border: 2px solid var(--background-modifier-border);
border-radius: var(--onboarding-border-radius);
padding: var(--size-4-4);
cursor: pointer;
transition: var(--onboarding-transition);
box-shadow: var(--shadow-sm);
position: relative;
overflow: hidden;
}
.onboarding-view .settings-check-action-card.is-selected {
border-color: var(--interactive-accent);
background:
linear-gradient(
135deg,
rgba(var(--interactive-accent-rgb), 0.05) 0%,
var(--background-primary) 100%);
box-shadow: var(--shadow-md), 0 0 0 3px rgba(var(--interactive-accent-rgb), 0.1);
}
.onboarding-view .settings-check-action-card:hover {
transform: translateY(-2px);
box-shadow: var(--shadow-lg);
border-color: var(--interactive-accent);
}
.onboarding-view .settings-check-action-card:hover::before {
transform: scaleX(1);
}
.onboarding-view .settings-check-action-wizard {
background:
linear-gradient(
135deg,
var(--background-primary) 0%,
var(--background-secondary) 100%);
}
.onboarding-view .settings-check-action-wizard::before {
transform: scaleX(1);
}
.onboarding-view .settings-check-action-keep {
opacity: 0.9;
}
.onboarding-view .settings-check-action-keep:hover {
opacity: 1;
}
.onboarding-view .action-card-header {
display: flex;
align-items: center;
margin-bottom: var(--size-4-3);
}
.onboarding-view .action-card-icon {
font-size: 2em;
color: var(--interactive-accent);
margin-right: var(--size-4-3);
}
.onboarding-view .action-card-content h3 {
margin: 0 0 var(--size-4-2) 0;
font-size: 1.2em;
font-weight: 600;
color: var(--text-normal);
}
.onboarding-view .action-card-content > p {
margin: 0 0 var(--size-4-3) 0;
color: var(--text-muted);
font-size: 0.9em;
line-height: 1.5;
}
.onboarding-view .action-card-features {
list-style: none;
padding: 0;
margin: var(--size-4-3) 0 0 0;
display: flex;
flex-direction: column;
gap: var(--size-2-3);
}
.onboarding-view .action-card-features li {
display: flex;
align-items: center;
gap: var(--size-2-2);
color: var(--text-muted);
font-size: 0.85em;
}
.onboarding-view .action-card-features .feature-icon {
color: var(--interactive-accent);
flex-shrink: 0;
}
.onboarding-view .action-card-note {
display: flex;
align-items: center;
gap: var(--size-2-2);
margin-top: var(--size-4-3);
padding: var(--size-2-3) var(--size-4-2);
background: var(--background-secondary);
border-radius: var(--radius-s);
font-size: 0.85em;
color: var(--text-muted);
}
.onboarding-view .action-card-note .note-icon {
color: var(--text-accent);
flex-shrink: 0;
}
@media (max-width: 768px) {
.onboarding-view .settings-check-content {
grid-template-columns: 1fr;
}
}
.onboarding-view .welcome-section {
display: flex;
flex-direction: column;
gap: var(--onboarding-spacing);
}
.onboarding-view .features-overview {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
gap: var(--size-4-3);
margin: var(--onboarding-spacing) 0;
}
.onboarding-view .feature-item {
display: flex;
gap: var(--size-4-2);
padding: var(--size-4-3);
background: var(--background-secondary);
border-radius: var(--onboarding-border-radius);
}
.onboarding-view .feature-icon {
font-size: 1.5em;
flex-shrink: 0;
line-height: 1;
}
.onboarding-view .setup-note {
text-align: center;
padding: var(--size-4-3);
background: var(--background-secondary);
border-radius: var(--onboarding-border-radius);
}
.onboarding-view .setup-description {
color: var(--text-muted);
font-size: 0.95em;
line-height: 1.5;
margin: 0;
}
.onboarding-view .user-level-cards {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
gap: var(--onboarding-spacing);
margin: var(--onboarding-spacing) 0;
}
.onboarding-view .user-level-card {
border: 1px solid var(--background-modifier-border);
border-radius: var(--onboarding-border-radius);
padding: var(--onboarding-spacing);
cursor: pointer;
transition: var(--onboarding-transition);
background: var(--background-primary);
position: relative;
overflow: hidden;
box-shadow: var(--shadow-sm);
}
.onboarding-view .user-level-card.card-hover {
border-color: var(--interactive-accent);
transform: translateY(-2px);
box-shadow: var(--shadow-lg);
}
.onboarding-view .user-level-card.selected {
border-color: var(--interactive-accent);
background: var(--background-modifier-hover);
box-shadow: 0 0 0 3px rgba(var(--interactive-accent-rgb), 0.1);
}
.user-level-card .card-header {
display: flex;
align-items: center;
gap: var(--size-4-2);
margin-bottom: var(--size-4-2);
}
.user-level-card .card-icon {
font-size: 1.8em;
line-height: 1;
flex-shrink: 0;
}
.user-level-card .card-title {
margin: 0;
color: var(--text-normal);
font-size: 1.2em;
font-weight: 600;
}
.user-level-card .card-description {
color: var(--text-muted);
font-size: 0.9em;
line-height: 1.4;
margin: 0 0 var(--size-4-2) 0;
}
.user-level-card .card-features {
margin-top: var(--size-4-2);
}
.user-level-card .card-features ul {
margin: 0;
padding-left: var(--size-4-3);
list-style: none;
}
.user-level-card .card-features li {
position: relative;
color: var(--text-muted);
font-size: 0.85em;
line-height: 1.4;
margin-bottom: var(--size-2-1);
}
.user-level-card .card-features li:before {
content: "\2022";
color: var(--interactive-accent);
position: absolute;
left: calc(-1 * var(--size-4-3));
font-weight: bold;
}
.user-level-card .recommendation-badge {
position: absolute;
top: var(--size-4-2);
right: var(--size-4-2);
background: var(--interactive-accent);
color: var(--text-on-accent);
padding: var(--size-2-1) var(--size-4-1);
border-radius: var(--radius-s);
font-size: 0.7em;
font-weight: 600;
text-transform: uppercase;
letter-spacing: 0.02em;
}
.onboarding-view .config-overview {
width: 100%;
max-width: 800px;
margin-bottom: var(--onboarding-spacing);
}
.onboarding-view .mode-icon {
--icon-size: var(--size-4-4);
flex-shrink: 0;
}
.onboarding-view .config-settings {
width: 100%;
max-width: 800px;
margin-bottom: var(--onboarding-spacing);
}
.onboarding-view .config-features {
width: 100%;
max-width: 800px;
margin-bottom: var(--onboarding-spacing);
}
.onboarding-view .config-views {
width: 100%;
max-width: 800px;
margin-bottom: var(--onboarding-spacing);
}
.onboarding-view .enabled-features-list {
list-style: none;
padding: 0;
margin: 0;
background: var(--background-secondary);
border-radius: var(--onboarding-border-radius);
padding: var(--size-4-2);
}
.onboarding-view .enabled-features-list li {
display: flex;
align-items: center;
gap: var(--size-4-2);
padding: var(--size-2-1) 0;
color: var(--text-normal);
font-size: 0.9em;
}
.onboarding-view .feature-check {
color: var(--color-green);
font-weight: bold;
}
.onboarding-view .views-grid {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));
gap: var(--size-4-2);
}
.onboarding-view .view-item {
display: flex;
flex-direction: column;
align-items: center;
padding: var(--size-4-2);
background: var(--background-secondary);
border-radius: var(--onboarding-border-radius);
}
.onboarding-view .view-icon {
font-size: 1.2em;
margin-bottom: var(--size-2-1);
}
.onboarding-view .view-name {
font-size: 0.8em;
color: var(--text-muted);
text-align: center;
}
.onboarding-view .settings-summary-list {
list-style: none;
padding: 0;
margin: 0;
background: var(--background-secondary);
border-radius: var(--onboarding-border-radius);
padding: var(--size-4-2);
}
.onboarding-view .settings-summary-list li {
display: flex;
justify-content: space-between;
padding: var(--size-2-1) 0;
font-size: 0.9em;
border-bottom: 1px solid var(--background-modifier-border);
}
.onboarding-view .settings-summary-list li:last-child {
border-bottom: none;
}
.onboarding-view .setting-label {
color: var(--text-normal);
font-weight: 500;
}
.onboarding-view .setting-value {
color: var(--text-muted);
}
.onboarding-view .config-options {
width: 100%;
max-width: 800px;
margin-top: var(--onboarding-spacing);
}
.onboarding-view .customization-note {
width: 100%;
max-width: 800px;
text-align: center;
padding: var(--size-4-3);
background: var(--background-secondary);
border-radius: var(--onboarding-border-radius);
}
.onboarding-view .note-text {
color: var(--text-muted);
font-size: 0.9em;
margin: 0;
font-style: italic;
}
.onboarding-view .config-changes-summary {
width: 100%;
max-width: 800px;
margin: var(--onboarding-spacing) 0;
padding: var(--size-4-3);
background: var(--background-secondary);
border-radius: var(--onboarding-border-radius);
}
.onboarding-view .settings-changes {
margin: var(--size-4-2) 0;
padding: var(--size-4-2);
background: var(--background-primary);
border-radius: var(--radius-s);
}
.onboarding-view .preserved-header {
display: flex;
align-items: center;
gap: var(--size-4-1);
margin-bottom: var(--size-4-1);
}
.onboarding-view .preserved-icon {
color: var(--color-green);
font-size: 1.1em;
}
.onboarding-view .change-text {
color: var(--text-normal);
font-size: 0.9em;
font-weight: 500;
}
.onboarding-view .updated-views,
.onboarding-modal .updated-views {
display: flex;
}
.onboarding-view .change-item {
display: flex;
flex-direction: row;
}
.onboarding-view .change-icon {
color: var(--interactive-accent);
font-size: 1.1em;
margin-right: var(--size-4-1);
display: flex;
}
.onboarding-view .settings-changes-list {
list-style: none;
padding: 0;
margin: var(--size-4-1) 0 0 var(--size-4-4);
}
.onboarding-view .settings-changes-list li {
display: flex;
align-items: center;
padding: var(--size-2-1) 0;
color: var(--text-muted);
font-size: 0.85em;
}
.onboarding-view .safety-note {
margin-top: var(--size-4-3);
padding: var(--size-4-2);
background: rgba(var(--color-blue-rgb), 0.1);
border-radius: var(--radius-s);
display: flex;
align-items: center;
gap: var(--size-4-1);
}
.onboarding-view .safety-icon {
color: var(--color-blue);
font-size: 1.1em;
display: flex;
justify-content: center;
align-items: center;
}
.onboarding-view .safety-text {
color: var(--color-blue);
font-size: var(--font-ui-smaller);
font-weight: 500;
}
.onboarding-view .task-guide-intro {
margin-bottom: var(--onboarding-spacing);
}
.onboarding-view .guide-description {
color: var(--text-muted);
font-size: 0.95em;
line-height: 1.5;
margin: 0;
}
.onboarding-view .shortcuts-section {
margin-bottom: var(--onboarding-spacing);
}
.onboarding-view .format-example {
margin-top: var(--size-4-4);
margin-bottom: var(--size-4-4);
}
.onboarding-view .format-example code {
background: var(--background-primary);
padding: var(--size-2-1) var(--size-4-1);
border-radius: var(--radius-s);
font-family: var(--font-monospace);
font-size: 0.85em;
color: var(--text-accent);
border: 1px solid var(--background-modifier-border);
display: block;
margin: var(--size-2-1) 0;
}
.onboarding-view .format-legend small {
color: var(--text-faint);
font-size: 0.8em;
margin-top: var(--size-2-1);
display: block;
}
.onboarding-view .metadata-symbols {
margin-top: var(--size-4-2);
}
.onboarding-view .status-list li,
.onboarding-view .symbols-list {
list-style: none;
margin: 0;
background: var(--background-primary);
border-radius: var(--onboarding-border-radius);
}
.onboarding-view .status-list li,
.onboarding-view .symbols-list li {
display: flex;
align-items: center;
padding: var(--size-2-1) 0;
font-size: 0.85em;
color: var(--text-normal);
}
.onboarding-view .status-list code {
background: var(--background-secondary);
padding: var(--size-2-1) var(--size-4-1);
border-radius: var(--radius-s);
font-family: var(--font-monospace);
margin-right: var(--size-4-2);
min-width: 40px;
text-align: center;
}
.onboarding-view .demo-content {
padding: var(--size-4-3);
background: var(--background-secondary);
border-radius: var(--onboarding-border-radius);
}
.onboarding-view .demo-button {
background: var(--interactive-accent);
color: var(--text-on-accent);
border: none;
padding: var(--size-4-2) var(--size-4-4);
border-radius: var(--button-radius);
cursor: pointer;
font-weight: 500;
transition: var(--onboarding-transition);
margin-top: var(--size-4-2);
}
.onboarding-view .demo-button:hover {
background: var(--interactive-accent-hover);
}
.onboarding-view .practice-feedback {
margin-top: var(--size-4-2);
}
.onboarding-view .validation-message {
padding: var(--size-4-2);
border-radius: var(--onboarding-border-radius);
font-size: 0.9em;
margin-bottom: var(--size-2-1);
}
.onboarding-view .validation-success {
background: rgba(var(--color-green-rgb), 0.1);
border: 1px solid var(--color-green);
color: var(--color-green);
}
.onboarding-view .validation-error {
background: rgba(var(--color-red-rgb), 0.1);
border: 1px solid var(--color-red);
color: var(--color-red);
}
.onboarding-view .validation-warning {
background: rgba(var(--color-orange-rgb), 0.1);
border: 1px solid var(--color-orange);
color: var(--color-orange);
}
.onboarding-view .validation-info {
background: rgba(var(--color-blue-rgb), 0.1);
border: 1px solid var(--color-blue);
color: var(--color-blue);
}
.onboarding-view .shortcuts-list {
list-style: none;
padding: 0;
margin: 0;
background: var(--background-secondary);
border-radius: var(--onboarding-border-radius);
padding: var(--size-4-2);
}
.onboarding-view .shortcuts-list li {
display: flex;
align-items: center;
padding: var(--size-2-1) 0;
font-size: 0.9em;
color: var(--text-normal);
}
.onboarding-view .shortcuts-list code {
background: var(--background-primary);
padding: var(--size-2-1) var(--size-4-2);
border-radius: var(--radius-s);
font-family: var(--font-monospace);
margin-right: var(--size-4-3);
min-width: 100px;
font-size: 0.8em;
}
.onboarding-view .completion-success {
text-align: center;
margin-bottom: var(--onboarding-spacing);
}
.onboarding-view .success-icon {
font-size: 3em;
margin-bottom: var(--size-4-2);
}
.onboarding-view .success-message {
color: var(--text-muted);
font-size: 0.95em;
margin: 0;
}
.onboarding-view .feedback-section {
margin-bottom: var(--onboarding-spacing);
}
.onboarding-view .config-summary-card {
padding: var(--size-4-3);
background: var(--background-secondary);
border-radius: var(--onboarding-border-radius);
}
.onboarding-view .config-header {
display: flex;
align-items: center;
gap: var(--size-4-2);
margin-bottom: var(--size-2-1);
}
.onboarding-view .config-icon {
font-size: 1.5em;
}
.onboarding-view .config-name {
font-size: 1.1em;
font-weight: 600;
color: var(--text-normal);
}
.onboarding-view .config-description {
color: var(--text-muted);
font-size: 0.9em;
margin: 0;
}
.onboarding-view .quick-start-steps {
display: flex;
flex-direction: column;
gap: var(--size-4-2);
}
.onboarding-view .quick-start-step {
display: flex;
align-items: flex-start;
gap: var(--size-4-3);
padding: var(--size-4-2);
background: var(--background-secondary);
border-radius: var(--onboarding-border-radius);
}
.onboarding-view .step-number {
background: var(--interactive-accent);
color: var(--text-on-accent);
width: 24px;
height: 24px;
border-radius: 50%;
display: flex;
align-items: center;
justify-content: center;
font-size: 0.8em;
font-weight: 600;
flex-shrink: 0;
}
.onboarding-view .step-content {
color: var(--text-normal);
font-size: 0.9em;
line-height: 1.4;
}
.onboarding-view .next-steps-list {
list-style: none;
padding: 0;
margin: 0;
}
.onboarding-view .next-steps-list li {
display: flex;
align-items: flex-start;
gap: var(--size-4-2);
padding: var(--size-4-2);
background: var(--background-secondary);
border-radius: var(--onboarding-border-radius);
margin-bottom: var(--size-2-1);
}
.onboarding-view .step-check {
color: var(--interactive-accent);
font-weight: bold;
flex-shrink: 0;
}
.onboarding-view .step-text {
color: var(--text-normal);
font-size: 0.9em;
line-height: 1.4;
}
.onboarding-view .resources-list {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
gap: var(--size-4-2);
}
.onboarding-view .resource-item {
display: flex;
gap: var(--size-4-2);
padding: var(--size-4-3);
background: var(--background-secondary);
border-radius: var(--onboarding-border-radius);
transition: var(--onboarding-transition);
}
.onboarding-view .resource-clickable {
cursor: pointer;
}
.onboarding-view .resource-clickable:hover {
background: var(--background-modifier-hover);
}
.onboarding-view .resource-icon {
font-size: 1.5em;
flex-shrink: 0;
}
.onboarding-view .feedback-description {
color: var(--text-muted);
font-size: 0.9em;
line-height: 1.5;
margin: 0 0 var(--size-4-2) 0;
}
.onboarding-view .feedback-buttons {
display: flex;
gap: var(--size-4-2);
justify-content: center;
}
.onboarding-view .feedback-button {
background: var(--background-secondary);
border: none;
color: var(--text-normal);
padding: var(--size-4-2) var(--size-4-4);
border-radius: var(--button-radius);
cursor: pointer;
font-size: 0.9em;
transition: var(--onboarding-transition);
}
.onboarding-view .feedback-positive:hover {
background: var(--color-green);
color: white;
}
.onboarding-view .feedback-negative:hover {
background: var(--color-red);
color: white;
}
.onboarding-view .feedback-thanks {
text-align: center;
padding: var(--size-4-3);
background: var(--background-secondary);
border-radius: var(--onboarding-border-radius);
}
.onboarding-view .feedback-thanks-message {
color: var(--text-normal);
font-size: 0.9em;
margin: 0 0 var(--size-4-2) 0;
}
.onboarding-view .feedback-thanks a {
color: var(--interactive-accent);
text-decoration: none;
}
.onboarding-view .feedback-thanks a:hover {
text-decoration: underline;
}
.onboarding-view .final-message {
text-align: center;
padding: var(--size-4-4);
}
.onboarding-view .final-message-text {
color: var(--text-muted);
font-size: 1em;
font-style: italic;
margin: 0;
}
@media (max-width: 768px) {
.onboarding-view {
--dialog-width: 95vw;
--dialog-max-width: 95vw;
--dialog-max-height: 95vh;
}
.onboarding-view .user-level-cards {
grid-template-columns: 1fr;
}
.onboarding-view .features-overview {
grid-template-columns: 1fr;
}
.onboarding-view .views-grid {
grid-template-columns: repeat(auto-fit, minmax(100px, 1fr));
}
.onboarding-view .resources-list {
grid-template-columns: 1fr;
}
.onboarding-view .feedback-buttons {
flex-direction: column;
}
.onboarding-view .onboarding-buttons {
flex-wrap: wrap;
justify-content: center;
}
.mode-options,
.placement-options {
grid-template-columns: 1fr;
}
.mode-card-preview {
height: 100px;
}
.placement-card-preview {
height: 80px;
}
.mode-card,
.placement-card {
padding: var(--size-4-3);
}
.intro-mode-selection-container {
max-width: 100%;
padding: 0 var(--size-4-1);
}
.intro-typing {
padding: var(--size-4-4) var(--size-4-2);
}
.onboarding-view .onboarding-footer {
padding: var(--size-4-3) var(--size-4-2);
}
.onboarding-view .onboarding-buttons {
gap: var(--size-4-2);
}
.onboarding-view .onboarding-buttons button {
padding: var(--size-4-2) var(--size-4-3);
font-size: 0.9em;
}
}
.theme-dark .theme-dark .onboarding-view .onboarding-footer {
box-shadow: 0 -2px 16px rgba(0, 0, 0, 0.3);
}
.theme-dark .theme-dark .onboarding-view .onboarding-footer::before {
background:
linear-gradient(
to top,
rgba(0, 0, 0, 0.2),
transparent);
}
.onboarding-view .onboarding-content {
animation: fadeInUp 0.3s ease-out;
}
@keyframes fadeInUp {
from {
opacity: 0;
transform: translateY(20px);
}
to {
opacity: 1;
transform: translateY(0);
}
}
.onboarding-view .user-level-card.selected {
animation: cardSelect 0.2s ease-out;
}
@keyframes cardSelect {
0% {
transform: scale(1);
}
50% {
transform: scale(1.02);
}
100% {
transform: scale(1);
}
}
.mode-selection {
margin-bottom: var(--onboarding-spacing);
}
.mode-options {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
gap: var(--onboarding-spacing);
margin: var(--onboarding-spacing) 0;
}
.onboarding-view .mode-card {
border: 1px solid var(--background-modifier-border);
border-radius: var(--onboarding-border-radius);
padding: var(--onboarding-spacing);
cursor: pointer;
transition: var(--onboarding-transition);
background: var(--background-primary);
position: relative;
overflow: hidden;
display: flex;
flex-direction: column;
}
.mode-card:hover {
border-color: var(--interactive-accent);
box-shadow: var(--shadow-s);
transform: translateY(-2px);
}
.mode-card.is-selected {
border-color: var(--interactive-accent);
background: var(--background-modifier-hover);
box-shadow: 0 0 0 2px rgba(var(--interactive-accent-rgb), 0.2);
}
.mode-card-header {
margin-bottom: var(--size-4-3);
}
.mode-card-title {
font-size: 1.1em;
font-weight: 600;
color: var(--text-normal);
margin-bottom: var(--size-4-2);
}
.mode-card-body {
margin-top: var(--size-4-2);
}
.mode-card-preview {
background: var(--background-secondary);
border-radius: var(--radius-s);
margin-bottom: var(--size-4-3);
display: flex;
align-items: center;
justify-content: center;
color: var(--text-muted);
font-size: 3em;
position: relative;
overflow: hidden;
}
.mode-fluent .mode-card-preview {
background:
linear-gradient(
135deg,
var(--background-secondary) 0%,
var(--background-modifier-hover) 100%);
}
.mode-legacy .mode-card-preview {
background: var(--background-secondary);
border: 1px solid var(--background-modifier-border);
}
.mode-card-desc {
color: var(--text-muted);
font-size: 0.9em;
line-height: 1.5;
min-height: 3em;
}
.onboarding-section-title {
font-size: 1.25em;
font-weight: 600;
color: var(--text-normal);
margin-bottom: var(--size-4-2);
text-align: center;
}
.section-desc {
color: var(--text-muted);
font-size: 0.95em;
margin-bottom: var(--size-4-4);
text-align: center;
line-height: 1.5;
}
.mode-tips,
.placement-tips {
margin-top: var(--onboarding-spacing);
text-align: left;
}
.mode-tips p,
.placement-tips p {
margin: 0;
font-size: 0.9em;
}
.placement-selection {
margin-bottom: var(--onboarding-spacing);
}
.placement-options {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
gap: var(--onboarding-spacing);
margin: var(--onboarding-spacing) 0;
}
.placement-card {
border: 1px solid var(--background-modifier-border);
border-radius: var(--onboarding-border-radius);
padding: var(--onboarding-spacing);
cursor: pointer;
transition: var(--onboarding-transition);
background: var(--background-primary);
position: relative;
overflow: hidden;
display: flex;
flex-direction: column;
}
.placement-card:hover {
border-color: var(--interactive-accent);
box-shadow: var(--shadow-s);
transform: translateY(-2px);
}
.placement-card.is-selected {
border-color: var(--interactive-accent);
background: var(--background-modifier-hover);
box-shadow: 0 0 0 2px rgba(var(--interactive-accent-rgb), 0.2);
}
.placement-card-header {
margin-bottom: var(--size-4-3);
}
.placement-card-title {
font-size: 1.1em;
font-weight: 600;
color: var(--text-normal);
margin-bottom: var(--size-4-2);
}
.placement-card-body {
margin-top: var(--size-4-2);
}
.placement-card-preview {
height: 100px;
background: var(--background-secondary);
border-radius: var(--radius-s);
margin-bottom: var(--size-4-3);
display: flex;
align-items: center;
justify-content: center;
color: var(--text-muted);
position: relative;
}
.placement-sideleaves .placement-card-preview {
display: grid;
grid-template-columns: 1fr 2fr 1fr;
gap: 4px;
padding: var(--size-4-2);
}
.placement-preview-col {
background: var(--background-modifier-border);
border-radius: 2px;
height: 100%;
}
.placement-preview-col.placement-preview-main {
background: var(--interactive-accent);
opacity: 0.3;
}
.placement-inline .placement-card-preview {
padding: var(--size-4-2);
}
.placement-preview-single {
width: 100%;
height: 100%;
background: var(--interactive-accent);
opacity: 0.3;
border-radius: 4px;
}
.placement-card-desc {
color: var(--text-muted);
font-size: 0.9em;
line-height: 1.5;
min-height: 3em;
}
.intro-typing-wrapper {
width: 100%;
padding-left: calc(var(--onboarding-spacing) * 3);
padding-right: calc(var(--onboarding-spacing) * 3);
}
.onboarding-view .onboarding-content.intro-typing-wrapper {
padding-left: calc(var(--onboarding-spacing) * 3);
padding-right: calc(var(--onboarding-spacing) * 3);
}
.intro-typing {
padding: var(--size-4-6) var(--size-4-4);
text-align: left;
width: 100%;
}
.intro-line {
margin-bottom: var(--size-4-4);
line-height: 1.6;
}
.intro-line-1 {
font-size: clamp(3rem, 6vw, 5rem);
font-weight: 700;
color: var(--text-normal);
margin-bottom: var(--size-4-2);
line-height: 1.2;
}
.intro-line-2 {
font-size: clamp(1.5rem, 3vw, 2.5rem);
font-weight: 600;
color: var(--text-normal);
margin-bottom: var(--size-4-6);
line-height: 1.4;
}
.intro-line-3,
.intro-line-4 {
font-size: clamp(1rem, 2vw, 1.4rem);
color: var(--text-muted);
margin-bottom: var(--size-4-5);
text-align: left;
}
.intro-line-4 {
padding-top: calc(var(--onboarding-spacing) * 4);
}
.onboarding-header > .intro-line-4 {
padding-top: 0;
}
.intro-char {
display: inline;
opacity: 0;
filter: blur(4px);
transform: translateY(-2px);
transition:
opacity 0.4s cubic-bezier(0.4, 0, 0.2, 1),
filter 0.4s cubic-bezier(0.4, 0, 0.2, 1),
transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
position: relative;
}
.intro-char-visible {
opacity: 1;
filter: blur(0px);
transform: translateY(0);
}
.intro-char-space {
width: 0.25em;
}
.intro-cursor {
display: inline-block;
margin-left: 1px;
opacity: 0.7;
animation: cursorBlink 1s infinite;
color: var(--interactive-accent);
font-weight: normal;
vertical-align: baseline;
}
@keyframes cursorBlink {
0%, 49% {
opacity: 0.7;
}
50%, 100% {
opacity: 0;
}
}
.stream-complete {
animation: streamComplete 0.3s ease-out;
}
@keyframes streamComplete {
0% {
opacity: 1;
}
50% {
opacity: 0.95;
}
100% {
opacity: 1;
}
}
.intro-line-fadeout {
opacity: 0;
transform: translateY(-10px);
transition: opacity 0.5s ease-out, transform 0.5s ease-out;
pointer-events: none;
}
.intro-mode-selection-container {
animation: fadeInFromBottom 0.6s ease-out;
animation-fill-mode: both;
width: 100%;
}
@keyframes fadeInFromBottom {
from {
opacity: 0;
transform: translateY(20px);
}
to {
opacity: 1;
transform: translateY(0);
}
}
.theme-dark .intro-line-1 {
color: var(--text-normal);
text-shadow: 0 0 20px rgba(var(--interactive-accent-rgb), 0.1);
}
.theme-dark .intro-char-visible {
text-shadow: 0 0 8px rgba(var(--interactive-accent-rgb), 0.05);
}
.intro-typing {
animation: fadeInTyping 0.5s ease-out;
}
@keyframes fadeInTyping {
from {
opacity: 0;
transform: translateY(10px);
}
to {
opacity: 1;
transform: translateY(0);
}
}
.intro-transition-container {
margin-top: var(--size-4-4);
min-height: 60px;
}
.intro-transition-message {
display: flex;
align-items: center;
gap: var(--size-4-3);
padding: var(--size-4-3) var(--size-4-4);
background:
linear-gradient(
135deg,
rgba(var(--interactive-accent-rgb), 0.08) 0%,
rgba(var(--interactive-accent-rgb), 0.03) 100%);
border: 1px solid rgba(var(--interactive-accent-rgb), 0.2);
border-radius: var(--onboarding-border-radius);
box-shadow: var(--shadow-sm);
transition: all 300ms cubic-bezier(0.4, 0, 0.2, 1);
}
.intro-transition-message .transition-icon {
font-size: 1.5em;
flex-shrink: 0;
animation: sparkle 1.5s ease-in-out infinite;
}
.intro-transition-message .transition-text {
color: var(--text-normal);
font-size: 0.95em;
line-height: 1.5;
}
@keyframes sparkle {
0%, 100% {
transform: scale(1);
opacity: 1;
}
50% {
transform: scale(1.1);
opacity: 0.8;
}
}
.config-check-typing {
min-height: 200px;
display: flex;
flex-direction: column;
justify-content: center;
}
.config-check-typing .check-line {
line-height: 1.6;
color: var(--text-normal);
margin-block-start: var(--size-4-2);
margin-block-end: var(--size-4-2);
}
.config-check-typing .check-line-1 {
font-size: clamp(1.2rem, 2.5vw, 1.8rem);
font-weight: 600;
color: var(--text-muted);
line-height: 1.4;
}
.config-check-typing .check-line-2,
.config-check-typing .check-line-3 {
font-size: clamp(1rem, 2vw, 1.3rem);
color: var(--text-muted);
line-height: 1.5;
}
.config-check-typing .check-line-result {
font-size: clamp(1.1rem, 2.2vw, 1.6rem);
font-weight: 600;
margin-top: var(--size-4-4);
padding: var(--size-4-4) var(--size-4-5);
border-radius: var(--radius-m);
background:
linear-gradient(
135deg,
rgba(var(--interactive-accent-rgb), 0.05) 0%,
rgba(var(--interactive-accent-rgb), 0.02) 100%);
border-left: 3px solid var(--interactive-accent);
line-height: 1.5;
}
.config-check-typing .check-line-success {
color: var(--color-green);
border-left-color: var(--color-green);
background:
linear-gradient(
135deg,
rgba(var(--color-green-rgb), 0.08) 0%,
rgba(var(--color-green-rgb), 0.02) 100%);
}
.config-check-typing .check-line-fresh {
color: var(--text-accent);
border-left-color: var(--text-accent);
}
.selectable-cards-container {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
gap: var(--size-4-4);
margin: var(--size-4-4) 0;
}
.selectable-cards-container.user-level-cards {
display: flex;
flex-direction: row;
gap: var(--size-4-4);
}
.selectable-card {
border: 1px solid var(--background-modifier-border);
border-radius: var(--onboarding-border-radius, var(--radius-m));
padding: var(--size-4-4);
cursor: pointer;
transition: var(--onboarding-transition);
background: var(--background-primary);
position: relative;
overflow: hidden;
box-shadow: var(--shadow-sm);
}
.selectable-card:hover {
border-color: var(--interactive-accent);
transform: translateY(-2px);
box-shadow: var(--shadow-lg);
}
.selectable-card.is-selected {
border-color: var(--interactive-accent);
background: var(--background-modifier-hover);
box-shadow: 0 0 0 3px rgba(var(--interactive-accent-rgb), 0.1);
}
.selectable-card-header {
display: flex;
align-items: center;
gap: var(--size-4-2);
margin-bottom: var(--size-4-3);
}
.selectable-card-icon {
flex-shrink: 0;
color: var(--text-accent);
opacity: 0.8;
}
.selectable-card-title-container {
flex: 1;
}
.selectable-card-title {
margin: 0;
font-size: 1.1em;
font-weight: 600;
color: var(--text-normal);
}
.selectable-card-subtitle {
display: block;
margin-top: var(--size-2-1);
font-size: 0.85em;
color: var(--text-muted);
font-weight: normal;
}
.selectable-card-badge {
position: absolute;
top: var(--size-4-2);
right: var(--size-4-2);
background: var(--interactive-accent);
color: var(--text-on-accent);
padding: var(--size-2-1) var(--size-4-2);
border-radius: var(--radius-s);
font-size: 0.7em;
font-weight: 600;
text-transform: uppercase;
letter-spacing: 0.02em;
}
.selectable-card-body {
margin-top: var(--size-4-2);
}
.selectable-card-preview {
background: var(--background-secondary);
border-radius: var(--radius-s);
margin-bottom: var(--size-4-3);
min-height: 100px;
display: flex;
align-items: center;
justify-content: center;
overflow: hidden;
}
.selectable-card-description {
color: var(--text-muted);
font-size: 0.9em;
line-height: 1.5;
margin: 0 0 var(--size-4-2) 0;
}
.selectable-card-features {
margin-top: var(--size-4-2);
}
.selectable-card-features ul {
margin: 0;
padding-left: var(--size-4-3);
list-style: none;
}
.selectable-card-features li {
position: relative;
color: var(--text-muted);
font-size: 0.85em;
line-height: 1.4;
margin-bottom: var(--size-2-1);
}
.selectable-card-features li:before {
content: "\2022";
color: var(--interactive-accent);
position: absolute;
left: calc(-1 * var(--size-4-3));
font-weight: bold;
}
.feature-list {
list-style: none;
padding: 0;
margin: 0;
background: var(--background-secondary);
border-radius: var(--onboarding-border-radius);
padding: var(--size-4-2);
}
.feature-item {
display: flex;
align-items: center;
gap: var(--size-4-2);
padding: var(--size-2-1) 0;
color: var(--text-normal);
font-size: 0.9em;
}
.feature-item-icon {
color: var(--color-green);
flex-shrink: 0;
display: flex;
}
.feature-item-text {
flex: 1;
}
.onboarding-badge {
display: inline-flex;
align-items: center;
padding: var(--size-2-1) var(--size-4-2);
border-radius: var(--radius-s);
font-size: 0.75em;
font-weight: 500;
letter-spacing: 0.01em;
transition: var(--onboarding-transition);
}
.onboarding-badge-default {
background: var(--background-secondary);
color: var(--text-normal);
border: 1px solid var(--background-modifier-border);
}
.onboarding-badge-success {
background: rgba(var(--color-green-rgb), 0.1);
color: var(--color-green);
border: 1px solid var(--color-green);
}
.onboarding-badge-warning {
background: rgba(var(--color-orange-rgb), 0.1);
color: var(--color-orange);
border: 1px solid var(--color-orange);
}
.onboarding-badge-info {
background: rgba(var(--color-blue-rgb), 0.1);
color: var(--color-blue);
border: 1px solid var(--color-blue);
}
.onboarding-badge-accent {
background: var(--interactive-accent);
color: var(--text-on-accent);
border: none;
}
.onboarding-alert {
display: flex;
gap: var(--size-4-2);
padding: var(--size-4-3);
border-radius: var(--onboarding-border-radius);
border: 1px solid transparent;
transition: var(--onboarding-transition);
}
.onboarding-alert-icon {
flex-shrink: 0;
display: flex;
align-items: center;
justify-content: center;
}
.onboarding-alert-content {
flex: 1;
}
.onboarding-alert-title {
font-weight: 600;
margin-bottom: var(--size-2-1);
font-size: 0.95em;
}
.onboarding-alert-message {
font-size: 0.9em;
line-height: 1.5;
}
.onboarding-alert-info {
background: rgba(var(--color-blue-rgb), 0.1);
border-color: var(--color-blue);
}
.onboarding-alert-info .onboarding-alert-icon {
color: var(--color-blue);
}
.onboarding-alert-info .onboarding-alert-title,
.onboarding-alert-info .onboarding-alert-message {
color: var(--color-blue);
}
.onboarding-alert-success {
background: rgba(var(--color-green-rgb), 0.1);
border-color: var(--color-green);
}
.onboarding-alert-success .onboarding-alert-icon {
color: var(--color-green);
}
.onboarding-alert-success .onboarding-alert-title,
.onboarding-alert-success .onboarding-alert-message {
color: var(--color-green);
}
.onboarding-alert-warning {
background: rgba(var(--color-orange-rgb), 0.1);
border-color: var(--color-orange);
}
.onboarding-alert-warning .onboarding-alert-icon {
color: var(--color-orange);
}
.onboarding-alert-warning .onboarding-alert-title,
.onboarding-alert-warning .onboarding-alert-message {
color: var(--color-orange);
}
.onboarding-alert-error {
background: rgba(var(--color-red-rgb), 0.1);
border-color: var(--color-red);
}
.onboarding-alert-error .onboarding-alert-icon {
color: var(--color-red);
}
.onboarding-alert-error .onboarding-alert-title,
.onboarding-alert-error .onboarding-alert-message {
color: var(--color-red);
}
.progress-dots {
display: flex;
gap: var(--size-4-2);
align-items: center;
justify-content: center;
margin: var(--size-4-3) 0;
}
.progress-dot-wrapper {
display: flex;
flex-direction: column;
align-items: center;
gap: var(--size-2-1);
}
.progress-dot {
width: 8px;
height: 8px;
border-radius: 50%;
background: var(--background-modifier-border);
transition: var(--onboarding-transition);
}
.progress-dot.is-active {
background: var(--interactive-accent);
transform: scale(1.5);
box-shadow: 0 0 0 4px rgba(var(--interactive-accent-rgb), 0.2);
}
.progress-dot.is-completed {
background: var(--interactive-accent);
opacity: 0.6;
}
.progress-dot-label {
font-size: 0.7em;
color: var(--text-muted);
font-weight: 500;
}
/* src/styles/noise.scss */
.tg-noise-layer {
position: fixed;
width: 100%;
height: 100%;
left: 0;
top: 0;
pointer-events: none;
}
.tg-noise-layer::before {
content: "";
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
pointer-events: none;
opacity: 0.25;
background-image: url('data:image/svg+xml;utf8,<svg width="1901" height="961" viewBox="0 0 1901 961" fill="none" xmlns="http://www.w3.org/2000/svg"><g opacity="0.25" filter="url(%23filter0_n_1_2)"><rect width="1901" height="961" fill="%23EFEFEF"/></g><defs><filter id="filter0_n_1_2" x="0" y="0" width="1901" height="961" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB"><feFlood flood-opacity="0" result="BackgroundImageFix"/><feBlend mode="normal" in="SourceGraphic" in2="BackgroundImageFix" result="shape"/><feTurbulence type="fractalNoise" baseFrequency="1.25 1.25" stitchTiles="stitch" numOctaves="3" result="noise" seed="5339" /><feColorMatrix in="noise" type="luminanceToAlpha" result="alphaNoise" /><feComponentTransfer in="alphaNoise" result="coloredNoise1"><feFuncA type="discrete" tableValues="1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 "/></feComponentTransfer><feComposite operator="in" in2="shape" in="coloredNoise1" result="noise1Clipped" /><feFlood flood-color="rgba(0, 0, 0, 0.25)" result="color1Flood" /><feComposite operator="in" in2="noise1Clipped" in="color1Flood" result="color1" /><feMerge result="effect1_noise_1_2"><feMergeNode in="shape" /><feMergeNode in="color1" /></feMerge></filter></defs></svg>');
background-size: cover;
background-position: center;
background-repeat: no-repeat;
z-index: 1;
}
.tg-noise-layer > * {
position: relative;
z-index: 2;
}
/* src/styles/changelog.scss */
.tg-changelog-view {
padding: var(--size-4-6);
display: flex;
flex-direction: column;
gap: var(--size-4-4);
}
.tg-changelog-header {
display: flex;
flex-direction: column;
gap: var(--size-2);
}
.tg-changelog-header h2 {
margin: 0;
font-size: var(--font-ui-large);
font-weight: 600;
}
.tg-changelog-meta {
display: flex;
align-items: center;
gap: var(--size-2);
color: var(--text-muted);
font-size: var(--font-ui-small);
}
.tg-changelog-meta a {
color: var(--interactive-accent);
text-decoration: none;
}
.tg-changelog-meta a:hover {
text-decoration: underline;
}
.tg-changelog-body {
flex: 1;
overflow-y: auto;
padding: var(--size-4-2);
border-radius: var(--radius-m);
border: 1px solid var(--background-modifier-border);
background-color: var(--background-secondary);
}
.tg-changelog-error {
color: var(--text-error);
font-weight: 500;
}
.tg-changelog-body h1,
.tg-changelog-body h2,
.tg-changelog-body h3 {
font-family: var(--font-interface, inherit);
font-weight: 600;
margin-top: var(--size-4-4);
margin-bottom: var(--size-4-2);
line-height: 1.3;
}
.tg-changelog-body h1 {
font-size: 1.65rem;
}
.tg-changelog-body h2 {
font-size: 1.35rem;
}
.tg-changelog-body h2:not(:first-child) {
margin-top: var(--size-4-8);
}
.tg-changelog-body h3 {
font-size: 1.15rem;
display: flex;
align-items: center;
gap: var(--size-2);
}
.tg-changelog-body h3::before {
content: "";
display: inline-block;
width: 1rem;
height: 1rem;
border-radius: 2px;
background-color: var(--background-modifier-border-hover);
flex: 0 0 auto;
margin-right: var(--size-4-2);
}
.tg-changelog-body h3[data-heading^="Bug Fixes"]::before {
background-color: var(--color-red, #e06c75);
}
.tg-changelog-body h3[data-heading^=Features]::before,
.tg-changelog-body h3[data-heading^=New]::before {
background-color: var(--color-cyan, #56b6c2);
}
.tg-changelog-body h3[data-heading^=Improvements]::before,
.tg-changelog-body h3[data-heading^=Enhancements]::before {
background-color: var(--color-yellow, #d19a66);
}
.tg-changelog-body h3[data-heading^=Performance]::before {
background-color: var(--color-green, #98c379);
}
.tg-changelog-body p + h1,
.tg-changelog-body p + h2,
.tg-changelog-body p + h3 {
margin-top: var(--size-4-6);
}
/* src/styles/timeline-sidebar.scss */
div[data-type^=tg-timeline-sidebar-view] .timeline-sidebar-container {
display: flex;
flex-direction: column;
height: 100%;
width: 100%;
background-color: var(--background-primary);
overflow: hidden;
font-family: var(--font-interface);
padding: 0 !important;
}
div[data-type^=tg-timeline-sidebar-view] .timeline-header {
display: flex;
justify-content: space-between;
align-items: center;
padding: var(--size-4-3) var(--size-4-4);
border-bottom: 1px solid var(--background-modifier-border);
background:
linear-gradient(
135deg,
var(--background-secondary) 0%,
var(--background-modifier-hover) 100%);
flex-shrink: 0;
backdrop-filter: blur(10px);
-webkit-backdrop-filter: blur(10px);
}
div[data-type^=tg-timeline-sidebar-view] .timeline-title {
font-weight: 600;
font-size: var(--font-ui-medium);
color: var(--text-normal);
display: flex;
align-items: center;
gap: var(--size-4-2);
}
div[data-type^=tg-timeline-sidebar-view] .timeline-controls {
display: flex;
gap: var(--size-4-2);
}
div[data-type^=tg-timeline-sidebar-view] .timeline-btn {
display: flex;
align-items: center;
justify-content: center;
width: var(--size-4-8);
height: var(--size-4-8);
border-radius: var(--radius-s);
cursor: pointer;
color: var(--text-muted);
background-color: transparent;
transition: all 0.2s ease;
}
div[data-type^=tg-timeline-sidebar-view] .timeline-btn:hover {
color: var(--text-normal);
background-color: var(--background-modifier-hover);
}
div[data-type^=tg-timeline-sidebar-view] .timeline-btn.is-active {
color: var(--text-on-accent);
background-color: var(--interactive-accent);
}
div[data-type^=tg-timeline-sidebar-view] .timeline-content {
flex: 1;
overflow-y: auto;
padding: var(--size-4-2) 0;
position: relative;
}
div[data-type^=tg-timeline-sidebar-view] .timeline-content.focus-mode .timeline-date-group:not(.is-today) {
opacity: 0.3;
pointer-events: none;
}
div[data-type^=tg-timeline-sidebar-view] .timeline-empty {
display: flex;
align-items: center;
justify-content: center;
height: 100%;
color: var(--text-muted);
font-style: italic;
text-align: center;
padding: var(--size-4-8);
}
div[data-type^=tg-timeline-sidebar-view] .timeline-date-group {
margin-bottom: var(--size-4-2);
position: relative;
border-radius: var(--radius-m);
transition: all 0.3s ease;
}
div[data-type^=tg-timeline-sidebar-view] .timeline-date-group.is-today {
background-color: var(--background-secondary);
border-radius: var(--radius-m);
margin: 0 var(--size-4-2) var(--size-4-2);
padding: var(--size-4-2);
box-shadow: var(--shadow-s);
border: 1px solid var(--interactive-accent);
}
div[data-type^=tg-timeline-sidebar-view] .timeline-date-header {
display: flex;
align-items: center;
justify-content: space-between;
padding: var(--size-4-2) var(--size-4-4);
font-weight: 600;
font-size: var(--font-ui-small);
color: var(--text-accent);
border-bottom: 1px solid var(--background-modifier-border);
margin-bottom: var(--size-4-2);
position: sticky;
top: 0;
background-color: var(--background-primary);
z-index: 1;
}
div[data-type^=tg-timeline-sidebar-view] .timeline-date-group.is-today .timeline-date-header {
border-radius: var(--radius-s);
margin: 0 0 var(--size-4-2) 0;
}
div[data-type^=tg-timeline-sidebar-view] .timeline-date-relative {
font-size: var(--font-ui-smaller);
color: var(--text-muted);
font-weight: normal;
}
div[data-type^=tg-timeline-sidebar-view] .timeline-events-list {
display: flex;
flex-direction: column;
gap: var(--size-2-1);
padding: 0 var(--size-2-3);
}
div[data-type^=tg-timeline-sidebar-view] .timeline-event {
display: flex;
align-items: flex-start;
gap: var(--size-4-3);
padding: var(--size-4-3);
border-radius: var(--radius-m);
cursor: pointer;
position: relative;
border: 1px solid transparent;
margin-bottom: var(--size-4-2);
}
div[data-type^=tg-timeline-sidebar-view] .timeline-event:hover {
background-color: var(--background-modifier-hover);
border-color: var(--interactive-accent);
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05);
transform: translateY(-1px);
}
div[data-type^=tg-timeline-sidebar-view] .timeline-event:hover:has(.timeline-event-checkbox:hover) {
transform: none;
}
div[data-type^=tg-timeline-sidebar-view] .timeline-event.is-completed {
opacity: 0.6;
}
div[data-type^=tg-timeline-sidebar-view] .timeline-event.is-completed .timeline-event-text {
text-decoration: line-through;
color: var(--text-muted);
}
div[data-type^=tg-timeline-sidebar-view] .timeline-event-time {
font-size: var(--font-ui-smaller);
color: var(--text-muted);
font-family: var(--font-monospace);
min-width: 45px;
text-align: center;
margin-top: 2px;
flex-shrink: 0;
background-color: var(--background-modifier-border);
border-radius: var(--radius-s);
padding: var(--size-4-1) var(--size-4-2);
font-weight: 500;
position: relative;
}
div[data-type^=tg-timeline-sidebar-view] .timeline-event-time.timeline-event-time-single {
background-color: var(--interactive-accent);
color: var(--text-on-accent);
font-weight: 600;
}
div[data-type^=tg-timeline-sidebar-view] .timeline-event-time.timeline-event-time-range {
background:
linear-gradient(
135deg,
var(--interactive-accent) 0%,
var(--interactive-accent-hover) 100%);
color: var(--text-on-accent);
font-weight: 600;
min-width: 80px;
position: relative;
animation: subtle-pulse 2s ease-in-out infinite;
}
div[data-type^=tg-timeline-sidebar-view] .timeline-event-time.timeline-event-time-range::after {
content: "\23f1";
position: absolute;
top: -6px;
right: -6px;
font-size: 10px;
background-color: var(--background-primary);
border-radius: 999px;
min-width: 18px;
height: 16px;
padding: 0 4px;
display: inline-flex;
align-items: center;
justify-content: center;
border: 2px solid var(--interactive-accent);
box-shadow: 0 1px 3px rgba(0, 0, 0, 0.2);
line-height: 1;
white-space: nowrap;
}
div[data-type^=tg-timeline-sidebar-view] .timeline-event-time.timeline-event-time-range[data-duration]::after {
content: attr(data-duration);
}
div[data-type^=tg-timeline-sidebar-view] .timeline-event-time.timeline-event-time-default {
background-color: var(--background-modifier-border);
color: var(--text-muted);
}
div[data-type^=tg-timeline-sidebar-view] .timeline-event-time.timeline-event-time-group {
background:
linear-gradient(
135deg,
var(--text-accent) 0%,
var(--interactive-accent) 100%);
color: var(--text-on-accent);
font-weight: 700;
min-width: 60px;
}
div[data-type^=tg-timeline-sidebar-view] .timeline-event-time.timeline-event-time-date-only {
background-color: var(--background-modifier-hover);
color: var(--text-muted);
font-style: italic;
min-width: 60px;
}
div[data-type^=tg-timeline-sidebar-view] .timeline-time-group {
margin-bottom: var(--size-4-3);
border: 1px solid var(--background-modifier-border);
border-radius: var(--radius-m);
background-color: var(--background-secondary);
overflow: hidden;
}
div[data-type^=tg-timeline-sidebar-view] .timeline-time-group-header {
display: flex;
align-items: center;
gap: var(--size-4-3);
padding: var(--size-4-2) var(--size-4-3);
background-color: var(--background-modifier-hover);
border-bottom: 1px solid var(--background-modifier-border);
}
div[data-type^=tg-timeline-sidebar-view] .timeline-time-group-count {
font-size: var(--font-ui-smaller);
color: var(--text-muted);
font-weight: 500;
}
div[data-type^=tg-timeline-sidebar-view] .timeline-time-group-events {
padding: var(--size-4-2);
}
div[data-type^=tg-timeline-sidebar-view] .timeline-event.timeline-event-grouped {
margin-bottom: var(--size-4-2);
padding: var(--size-4-2);
border: 1px solid var(--background-modifier-border);
border-radius: var(--radius-s);
background-color: var(--background-primary);
}
div[data-type^=tg-timeline-sidebar-view] .timeline-event.timeline-event-grouped:last-child {
margin-bottom: 0;
}
div[data-type^=tg-timeline-sidebar-view] .timeline-date-only-section {
margin-top: var(--size-4-4);
padding-top: var(--size-4-3);
border-top: 2px dashed var(--background-modifier-border);
}
div[data-type^=tg-timeline-sidebar-view] .timeline-date-only-section .timeline-event .timeline-event-time {
display: none !important;
}
div[data-type^=tg-timeline-sidebar-view] .timeline-date-only-header {
display: flex;
align-items: center;
gap: var(--size-4-3);
margin-bottom: var(--size-4-3);
padding: var(--size-4-2) var(--size-4-3);
background-color: var(--background-modifier-hover);
border-radius: var(--radius-s);
}
div[data-type^=tg-timeline-sidebar-view] .timeline-date-only-title {
font-size: var(--font-ui-small);
color: var(--text-muted);
font-weight: 500;
font-style: italic;
}
div[data-type^=tg-timeline-sidebar-view] .timeline-event-content {
flex: 1;
display: flex;
align-items: flex-start;
gap: var(--size-4-2);
min-width: 0;
}
div[data-type^=tg-timeline-sidebar-view] .timeline-event-checkbox {
display: flex;
align-items: center;
margin-top: 2px;
}
div[data-type^=tg-timeline-sidebar-view] .timeline-event-checkbox input[type=checkbox] {
margin: 0;
cursor: pointer;
}
div[data-type^=tg-timeline-sidebar-view] .timeline-event-text {
flex: 1;
font-size: var(--font-ui-small);
line-height: 1.4;
word-wrap: break-word;
color: var(--text-normal);
display: flex;
align-items: flex-start;
gap: var(--size-4-2);
}
div[data-type^=tg-timeline-sidebar-view] .timeline-event-icon {
font-size: var(--font-ui-medium);
flex-shrink: 0;
margin-top: 1px;
}
div[data-type^=tg-timeline-sidebar-view] .timeline-event-content-text {
flex: 1;
word-break: break-word;
}
div[data-type^=tg-timeline-sidebar-view] .timeline-event-actions {
display: flex;
gap: var(--size-4-1);
opacity: 0;
transition: opacity 0.2s ease;
}
div[data-type^=tg-timeline-sidebar-view] .timeline-event:hover .timeline-event-actions {
opacity: 1;
}
div[data-type^=tg-timeline-sidebar-view] .timeline-event-action {
display: flex;
align-items: center;
justify-content: center;
width: var(--size-4-6);
height: var(--size-4-6);
border-radius: var(--radius-s);
cursor: pointer;
color: var(--text-muted);
background-color: transparent;
transition: all 0.2s ease;
}
div[data-type^=tg-timeline-sidebar-view] .timeline-event-action:hover {
color: var(--text-normal);
background-color: var(--background-modifier-border);
}
div[data-type^=tg-timeline-sidebar-view] .timeline-quick-input {
flex-shrink: 0;
border-top: 1px solid var(--background-modifier-border);
background-color: var(--background-secondary);
padding: var(--size-4-4);
display: flex;
flex-direction: column;
gap: var(--size-4-3);
padding-bottom: var(--size-4-12);
position: relative;
transition: all 300ms cubic-bezier(0.4, 0, 0.2, 1);
overflow: hidden;
}
div[data-type^=tg-timeline-sidebar-view] .timeline-quick-input.is-collapsed {
padding: 0;
gap: 0;
height: auto;
}
div[data-type^=tg-timeline-sidebar-view] .timeline-quick-input.is-collapsed .quick-input-header,
div[data-type^=tg-timeline-sidebar-view] .timeline-quick-input.is-collapsed .quick-input-editor,
div[data-type^=tg-timeline-sidebar-view] .timeline-quick-input.is-collapsed .quick-input-actions {
display: none;
}
div[data-type^=tg-timeline-sidebar-view] .timeline-quick-input.is-collapsing {
overflow: hidden;
}
div[data-type^=tg-timeline-sidebar-view] .timeline-quick-input.is-expanding {
overflow: hidden;
}
div[data-type^=tg-timeline-sidebar-view] .quick-input-header-collapsed {
display: flex;
align-items: center;
justify-content: space-between;
padding: var(--size-4-3) var(--size-4-4);
background-color: var(--background-secondary);
border-bottom: 1px solid var(--background-modifier-border);
cursor: pointer;
transition: background-color 200ms ease;
}
div[data-type^=tg-timeline-sidebar-view] .quick-input-header-collapsed:hover {
background-color: var(--background-modifier-hover);
}
div[data-type^=tg-timeline-sidebar-view] .collapsed-expand-btn {
display: flex;
align-items: center;
justify-content: center;
width: var(--size-4-6);
height: var(--size-4-6);
border-radius: var(--radius-s);
color: var(--text-muted);
transition: all 200ms ease;
cursor: pointer;
}
div[data-type^=tg-timeline-sidebar-view] .collapsed-expand-btn:hover {
color: var(--text-normal);
background-color: var(--background-modifier-border);
}
div[data-type^=tg-timeline-sidebar-view] .collapsed-title {
flex: 1;
font-weight: 600;
font-size: var(--font-ui-small);
color: var(--text-normal);
margin-left: var(--size-4-2);
}
div[data-type^=tg-timeline-sidebar-view] .collapsed-quick-actions {
display: flex;
gap: var(--size-4-2);
}
div[data-type^=tg-timeline-sidebar-view] .collapsed-quick-capture,
div[data-type^=tg-timeline-sidebar-view] .collapsed-more-options {
display: flex;
align-items: center;
justify-content: center;
width: var(--size-4-7);
height: var(--size-4-7);
border-radius: var(--radius-s);
color: var(--text-muted);
cursor: pointer;
transition: all 200ms ease;
}
div[data-type^=tg-timeline-sidebar-view] .collapsed-quick-capture:hover,
div[data-type^=tg-timeline-sidebar-view] .collapsed-more-options:hover {
color: var(--text-normal);
background-color: var(--background-modifier-border);
}
div[data-type^=tg-timeline-sidebar-view] .collapsed-quick-capture:hover {
color: var(--interactive-accent);
}
div[data-type^=tg-timeline-sidebar-view] .quick-input-header {
display: flex;
justify-content: space-between;
align-items: flex-start;
gap: var(--size-4-2);
margin-bottom: var(--size-4-2);
}
div[data-type^=tg-timeline-sidebar-view] .quick-input-header-left {
display: flex;
align-items: center;
gap: var(--size-4-2);
}
div[data-type^=tg-timeline-sidebar-view] .quick-input-collapse-btn {
display: flex;
align-items: center;
justify-content: center;
width: var(--size-4-6);
height: var(--size-4-6);
border-radius: var(--radius-s);
color: var(--text-muted);
cursor: pointer;
transition: all 200ms ease;
}
div[data-type^=tg-timeline-sidebar-view] .quick-input-collapse-btn:hover {
color: var(--text-normal);
background-color: var(--background-modifier-border);
}
div[data-type^=tg-timeline-sidebar-view] .quick-input-collapse-btn svg {
transition: transform 200ms ease;
}
div[data-type^=tg-timeline-sidebar-view] .timeline-quick-input.is-collapsed .quick-input-collapse-btn svg {
transform: rotate(-90deg);
}
div[data-type^=tg-timeline-sidebar-view] .quick-input-title {
font-weight: 600;
font-size: var(--font-ui-small);
color: var(--text-normal);
}
div[data-type^=tg-timeline-sidebar-view] .quick-input-target-info {
font-size: var(--font-ui-smaller);
color: var(--text-muted);
font-style: italic;
padding: var(--size-4-1) var(--size-4-2);
background-color: var(--background-modifier-hover);
border-radius: var(--radius-s);
word-break: break-all;
}
div[data-type^=tg-timeline-sidebar-view] .quick-input-editor {
min-height: 80px;
border: 2px solid var(--background-modifier-border);
border-radius: var(--radius-m);
background-color: var(--background-primary);
padding: var(--size-4-3);
font-family: var(--font-text);
font-size: var(--font-ui-small);
resize: vertical;
transition: all 0.3s ease;
}
div[data-type^=tg-timeline-sidebar-view] .quick-input-editor:focus-within {
border-color: var(--interactive-accent);
box-shadow: 0 0 0 2px rgba(var(--interactive-accent-rgb), 0.2);
}
div[data-type^=tg-timeline-sidebar-view] .quick-input-editor .cm-editor {
background-color: transparent;
border: none;
outline: none;
}
div[data-type^=tg-timeline-sidebar-view] .quick-input-editor .cm-focused {
outline: none;
}
div[data-type^=tg-timeline-sidebar-view] .quick-input-editor .cm-editor.cm-focused {
outline: none;
}
div[data-type^=tg-timeline-sidebar-view] .quick-input-actions {
display: flex;
gap: var(--size-4-2);
justify-content: flex-end;
}
div[data-type^=tg-timeline-sidebar-view] .quick-capture-btn,
div[data-type^=tg-timeline-sidebar-view] .quick-modal-btn {
padding: var(--size-4-3) var(--size-4-6);
border-radius: var(--radius-m);
font-size: var(--font-ui-small);
font-weight: 500;
cursor: pointer;
border: none;
transition: all 0.3s ease;
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}
div[data-type^=tg-timeline-sidebar-view] .quick-capture-btn {
background-color: var(--interactive-accent);
color: var(--text-on-accent);
}
div[data-type^=tg-timeline-sidebar-view] .quick-capture-btn:hover {
background-color: var(--interactive-accent-hover);
transform: translateY(-1px);
box-shadow: 0 4px 8px rgba(0, 0, 0, 0.15);
}
div[data-type^=tg-timeline-sidebar-view] .quick-modal-btn {
background-color: var(--background-modifier-border);
color: var(--text-normal);
}
div[data-type^=tg-timeline-sidebar-view] .quick-modal-btn:hover {
background-color: var(--background-modifier-border-hover);
transform: translateY(-1px);
box-shadow: 0 4px 8px rgba(0, 0, 0, 0.15);
}
@media (max-width: 768px) {
div[data-type^=tg-timeline-sidebar-view] .timeline-header {
padding: var(--size-4-2) var(--size-4-3);
}
div[data-type^=tg-timeline-sidebar-view] .timeline-controls {
gap: var(--size-4-1);
}
div[data-type^=tg-timeline-sidebar-view] .timeline-btn {
width: var(--size-4-7);
height: var(--size-4-7);
}
div[data-type^=tg-timeline-sidebar-view] .timeline-events-list {
padding: 0 var(--size-2-3);
}
div[data-type^=tg-timeline-sidebar-view] .timeline-event {
padding: var(--size-4-2);
}
div[data-type^=tg-timeline-sidebar-view] .timeline-quick-input {
padding: var(--size-4-3);
}
div[data-type^=tg-timeline-sidebar-view] .timeline-quick-input.is-collapsed {
padding: 0;
}
div[data-type^=tg-timeline-sidebar-view] .quick-input-editor {
min-height: 60px;
}
div[data-type^=tg-timeline-sidebar-view] .quick-input-header-collapsed {
padding: var(--size-4-2) var(--size-4-3);
}
div[data-type^=tg-timeline-sidebar-view] .collapsed-quick-capture,
div[data-type^=tg-timeline-sidebar-view] .collapsed-more-options {
width: var(--size-4-6);
height: var(--size-4-6);
}
}
div[data-type^=tg-timeline-sidebar-view] .timeline-content::-webkit-scrollbar {
width: 6px;
}
div[data-type^=tg-timeline-sidebar-view] .timeline-content::-webkit-scrollbar-track {
background-color: var(--background-secondary);
}
div[data-type^=tg-timeline-sidebar-view] .timeline-content::-webkit-scrollbar-thumb {
background-color: var(--background-modifier-border);
border-radius: 3px;
}
div[data-type^=tg-timeline-sidebar-view] .timeline-content::-webkit-scrollbar-thumb:hover {
background-color: var(--background-modifier-border-hover);
}
@keyframes fadeIn {
from {
opacity: 0;
transform: translateY(10px);
}
to {
opacity: 1;
transform: translateY(0);
}
}
@keyframes subtle-pulse {
0%, 100% {
box-shadow: 0 0 0 0 rgba(var(--interactive-accent-rgb), 0.4);
}
50% {
box-shadow: 0 0 0 4px rgba(var(--interactive-accent-rgb), 0.1);
}
}
div[data-type^=tg-timeline-sidebar-view] .timeline-content.focus-mode {
position: relative;
}
div[data-type^=tg-timeline-sidebar-view] .timeline-content.focus-mode::before {
content: "";
position: absolute;
top: 0;
left: 0;
right: 0;
bottom: 0;
background:
linear-gradient(
to bottom,
rgba(var(--background-primary-rgb), 0.9) 0%,
rgba(var(--background-primary-rgb), 0.7) 50%,
rgba(var(--background-primary-rgb), 0.9) 100%);
pointer-events: none;
z-index: 0;
}
div[data-type^=tg-timeline-sidebar-view] .timeline-content.focus-mode .timeline-date-group.is-today {
position: relative;
z-index: 1;
}
div[data-type^=tg-timeline-sidebar-view] .timeline-event-content-text .markdown-block {
margin: 0;
padding: 0;
font-size: inherit;
line-height: inherit;
}
div[data-type^=tg-timeline-sidebar-view] .timeline-event-content-text .markdown-block p {
margin: 0;
padding: 0;
font-size: inherit;
line-height: inherit;
}
div[data-type^=tg-timeline-sidebar-view] .timeline-event-content-text .markdown-block strong,
div[data-type^=tg-timeline-sidebar-view] .timeline-event-content-text .markdown-block em,
div[data-type^=tg-timeline-sidebar-view] .timeline-event-content-text .markdown-block code {
font-size: inherit;
}
div[data-type^=tg-timeline-sidebar-view] .timeline-event-content-text .markdown-block a {
color: var(--link-color);
text-decoration: none;
}
div[data-type^=tg-timeline-sidebar-view] .timeline-event-content-text .markdown-block a:hover {
text-decoration: underline;
}
div[data-type^=tg-timeline-sidebar-view] .timeline-event-content-text .markdown-block ul,
div[data-type^=tg-timeline-sidebar-view] .timeline-event-content-text .markdown-block ol {
margin: 0;
padding-left: var(--size-4-4);
}
div[data-type^=tg-timeline-sidebar-view] .timeline-event-content-text .markdown-block li {
margin: 0;
padding: 0;
}
/* src/styles/reward.scss */
.reward-modal-content {
text-align: center;
}
.reward-modal .modal-title {
text-align: center;
}
.reward-name {
font-size: 1.2em;
font-weight: bold;
margin-bottom: 15px;
}
.reward-image-container {
margin-bottom: 20px;
display: flex;
justify-content: center;
align-items: center;
}
.reward-image {
max-width: 80%;
max-height: 300px;
border-radius: 8px;
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}
.reward-image-error {
font-style: italic;
color: var(--text-muted);
}
.reward-spacer {
height: 20px;
}
.task-genius-reward-modal .setting-item-control {
display: flex;
justify-content: center;
gap: 10px;
}
/* src/styles/task-gutter.scss */
.markdown-source-view.mod-cm6 .cm-gutters.task-gutter {
margin-inline-end: 0 !important;
margin-inline-start: var(--file-folding-offset);
}
.is-mobile .markdown-source-view.mod-cm6 .cm-gutters.task-gutter {
margin-inline-start: 0 !important;
}
.task-details-popover.tg-menu {
z-index: 20;
position: fixed;
background-color: var(--background-primary);
border: 1px solid var(--background-modifier-border);
border-radius: var(--radius-s);
padding: var(--size-4-3);
box-shadow: var(--shadow-l);
}
.task-gutter {
width: 26px;
}
.task-gutter-marker {
cursor: pointer;
font-size: var(--font-smaller);
opacity: 0.1;
transition: opacity 0.2s ease;
}
.task-gutter-marker:hover {
opacity: 1;
}
.task-popover-content {
padding: var(--size-4-3);
max-width: 300px;
max-height: 400px;
overflow: auto;
}
.task-metadata-editor {
display: flex;
flex-direction: column;
gap: var(--size-4-2);
padding: var(--size-2-2);
height: 100%;
}
.field-container {
display: flex;
flex-direction: column;
margin-bottom: var(--size-2-2);
}
.field-label {
font-size: var(--font-smallest);
font-weight: var(--font-bold);
margin-bottom: var(--size-2-1);
color: var(--text-muted);
}
.action-buttons {
display: flex;
justify-content: space-between;
margin-top: var(--size-4-2);
gap: var(--size-4-2);
}
.action-button {
padding: var(--size-2-2) var(--size-4-2);
font-size: var(--font-smallest);
border-radius: var(--radius-s);
cursor: pointer;
}
.task-gutter-marker.clickable-icon {
width: 24px;
padding: var(--size-2-1);
display: flex;
justify-content: center;
align-items: center;
}
.task-details-popover .tabs-main-container {
display: flex;
flex-direction: column;
width: 100%;
}
.task-details-popover .tabs-navigation {
display: flex;
margin-bottom: var(--size-4-2);
gap: var(--size-4-2);
}
.task-details-popover .tab-button {
padding: var(--size-2-2) var(--size-4-2);
cursor: pointer;
border: none;
background: none;
font-size: var(--font-ui-small);
color: var(--text-muted);
margin-bottom: -1px;
transition: color 0.2s ease, border-color 0.2s ease;
}
.task-details-popover .tab-button:hover {
color: var(--text-normal);
}
.task-details-popover .tab-button.active {
color: var(--text-on-accent);
font-weight: var(--font-bold);
background-color: var(--interactive-accent);
}
.task-details-popover .tab-pane {
display: none;
flex-direction: column;
gap: var(--size-4-2);
}
.task-details-popover .tab-pane.active {
display: flex;
}
.task-details-popover .details-status-selector,
.task-status-editor .details-status-selector {
display: flex;
flex-direction: row;
justify-content: space-between;
margin-bottom: var(--size-4-2);
margin-top: var(--size-4-2);
}
.task-details-popover .quick-capture-status-selector,
.task-status-editor .quick-capture-status-selector {
display: flex;
flex-direction: row;
justify-content: space-between;
gap: var(--size-4-3);
}
.task-details-popover .quick-capture-status-selector-label,
.task-status-editor .quick-capture-status-selector-label {
display: none;
}
.modal-content.task-metadata-editor {
display: flex;
flex-direction: column;
gap: var(--size-4-2);
}
.metadata-full-container {
display: flex;
flex-direction: column;
gap: var(--size-4-2);
}
.metadata-full-container .dates-container {
display: flex;
flex-direction: column;
gap: var(--size-4-2);
}
/* src/styles/fluent/fluent-main.scss */
.task-genius-fluent-view {
height: 100%;
overflow: hidden;
padding: 0;
}
.tg-fluent-container {
height: 100%;
display: flex;
flex-direction: row;
border-top: 1px solid var(--background-modifier-border);
}
.view-content.task-genius-fluent-view {
padding: 0;
}
.tg-fluent-layout {
display: flex;
height: 100%;
width: 100%;
overflow: hidden;
}
.tg-fluent-sidebar-container {
width: 260px;
min-width: 200px;
max-width: 400px;
border-right: 1px solid var(--background-modifier-border);
display: flex;
flex-direction: column;
overflow: hidden;
}
.fluent-sidebar {
height: 100%;
display: flex;
flex-direction: column;
}
.fluent-sidebar-header {
padding: 12px;
border-bottom: 1px solid var(--background-modifier-border);
}
.workspace-selector-button {
display: flex;
align-items: center;
justify-content: space-between;
width: 100%;
padding: 8px;
background: transparent;
border: none;
border-radius: 6px;
cursor: pointer;
transition: background-color 0.15s;
}
.workspace-selector-button:hover {
background-color: var(--background-modifier-hover);
}
.workspace-info {
display: flex;
align-items: center;
gap: 12px;
}
.workspace-icon {
width: 32px;
height: 32px;
border-radius: 8px;
display: flex;
align-items: center;
justify-content: center;
color: white;
}
.workspace-icon svg {
width: 16px;
height: 16px;
}
.workspace-details {
text-align: left;
}
.workspace-name {
font-weight: 500;
color: var(--text-normal);
}
.workspace-label {
font-size: 12px;
color: var(--text-muted);
}
.workspace-dropdown-icon {
color: var(--text-muted);
}
button.fluent-new-task-btn {
width: 100%;
margin-top: 12px;
box-shadow: unset;
padding: 10px;
background-color: var(--interactive-accent);
color: var(--text-on-accent);
border: none;
border-radius: 6px;
font-weight: 500;
display: flex;
align-items: center;
justify-content: center;
gap: 8px;
cursor: pointer;
transition: background-color 0.15s;
}
button.fluent-new-task-btn:hover {
background-color: var(--interactive-accent-hover);
}
.fluent-new-task-icon {
display: flex;
}
.fluent-sidebar-content {
flex: 1;
overflow-y: auto;
padding: 8px 0;
--icon-size: 16px;
}
.fluent-sidebar-section {
padding: 8px 0;
}
.fluent-sidebar-section + .fluent-sidebar-section {
border-top: 1px solid var(--background-modifier-border);
}
.fluent-section-header {
display: flex;
align-items: center;
justify-content: space-between;
padding: 4px 16px;
margin-bottom: 4px;
}
.fluent-section-header span {
font-size: 12px;
font-weight: 600;
text-transform: uppercase;
color: var(--text-muted);
}
.fluent-project-header-buttons {
display: flex;
align-items: center;
gap: 8px;
}
.fluent-add-project-btn,
.fluent-sort-project-btn,
.fluent-tree-toggle-btn {
cursor: pointer;
color: var(--text-muted);
transition: color 0.15s;
display: flex;
align-items: center;
justify-content: center;
width: 20px;
height: 20px;
}
.fluent-add-project-btn:hover,
.fluent-sort-project-btn:hover,
.fluent-tree-toggle-btn:hover {
color: var(--text-normal);
}
.fluent-navigation-list {
padding: 0 8px;
}
.fluent-navigation-item {
display: flex;
align-items: center;
gap: 12px;
padding: 6px 8px;
border-radius: 4px;
cursor: pointer;
transition: background-color 0.15s;
position: relative;
}
.fluent-navigation-item:hover {
background-color: var(--background-modifier-hover);
}
.fluent-navigation-item.is-active {
background-color: var(--background-modifier-active-hover);
}
.fluent-navigation-icon {
width: 20px;
height: 20px;
display: flex;
align-items: center;
justify-content: center;
color: var(--text-muted);
}
.fluent-navigation-item.is-active .fluent-navigation-icon {
color: var(--text-normal);
}
.fluent-navigation-label {
flex: 1;
font-size: 14px;
color: var(--text-normal);
}
.fluent-navigation-badge {
background-color: var(--interactive-accent);
color: var(--text-on-accent);
font-size: 11px;
font-weight: 600;
padding: 2px 6px;
border-radius: 10px;
min-width: 18px;
text-align: center;
}
.fluent-project-scroll {
max-height: 300px;
overflow-y: auto;
padding: 0 8px;
}
.fluent-project-item {
display: flex;
align-items: center;
gap: 10px;
padding: 6px 8px;
border-radius: 4px;
cursor: pointer;
transition: background-color 0.15s;
}
.fluent-project-item.fluent-add-project {
margin: 0 8px;
}
.fluent-project-item:hover {
background-color: var(--background-modifier-hover);
}
.fluent-project-item.is-active {
background-color: var(--background-modifier-active-hover);
}
.fluent-project-color {
width: 12px;
height: 12px;
border-radius: 3px;
flex-shrink: 0;
}
.fluent-project-color-dashed {
width: 12px;
height: 12px;
border: 1.5px dashed var(--text-muted);
border-radius: 3px;
}
.fluent-project-name {
flex: 1;
font-size: 14px;
color: var(--text-normal);
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
.fluent-add-project .fluent-project-name {
color: var(--text-muted);
}
.fluent-project-count {
font-size: 12px;
color: var(--text-muted);
}
.fluent-project-list.is-tree-view .fluent-project-item {
transition: all 0.15s ease;
}
.fluent-project-chevron {
display: flex;
align-items: center;
justify-content: center;
width: 16px;
height: 16px;
margin-right: 4px;
cursor: pointer;
color: var(--text-muted);
transition: transform 0.15s ease;
flex-shrink: 0;
}
.fluent-project-chevron:hover {
color: var(--text-normal);
}
.fluent-project-chevron svg {
width: 12px;
height: 12px;
}
.fluent-project-chevron-spacer {
width: 16px;
height: 16px;
margin-right: 4px;
flex-shrink: 0;
}
.fluent-project-list.is-tree-view .fluent-project-item[data-level="1"] {
padding-left: 28px;
}
.fluent-project-list.is-tree-view .fluent-project-item[data-level="2"] {
padding-left: 48px;
}
.fluent-project-list.is-tree-view .fluent-project-item[data-level="3"] {
padding-left: 68px;
}
.fluent-project-list.is-tree-view .fluent-project-item::before {
content: "";
position: absolute;
left: 8px;
top: 0;
bottom: 0;
width: 1px;
background: var(--background-modifier-border);
opacity: 0;
transition: opacity 0.15s;
}
.fluent-project-list.is-tree-view .fluent-project-item[data-level]:not([data-level="0"]):hover::before {
opacity: 0.3;
}
.fluent-project-item.is-virtual .fluent-project-name {
font-style: italic;
opacity: 0.85;
}
.fluent-project-item.is-virtual .fluent-project-color {
opacity: 0.6;
}
.fluent-project-item.is-virtual:hover {
background-color: var(--background-modifier-hover);
}
.tg-project-list-disabled {
pointer-events: none;
opacity: 0.5;
position: relative;
}
.tg-project-list-disabled::after {
content: "";
position: absolute;
top: 0;
left: 0;
right: 0;
bottom: 0;
background-color: var(--background-modifier-cover);
opacity: 0.3;
z-index: 1;
}
.tg-project-list-disabled .fluent-project-item {
cursor: not-allowed;
}
.tg-fluent-main-container {
flex: 1;
display: flex;
flex-direction: column;
overflow: hidden;
}
.tg-fluent-top-nav {
border-bottom: 1px solid var(--background-modifier-border);
background-color: var(--background-primary);
}
.fluent-top-navigation {
display: flex;
align-items: center;
justify-content: space-between;
height: 56px;
padding: 0 20px;
gap: 20px;
}
.fluent-nav-left {
flex: 0 1 400px;
}
.fluent-search-container {
position: relative;
display: flex;
align-items: center;
max-width: 400px;
flex: 1;
}
.fluent-nav-center {
display: flex;
align-items: center;
gap: 12px;
}
.fluent-view-tabs {
display: flex;
background-color: var(--background-secondary);
border-radius: 6px;
padding: 2px;
}
.fluent-view-tab {
display: flex;
align-items: center;
gap: 6px;
padding: 6px 12px;
background: none;
border: none;
border-radius: 4px;
font-size: 14px;
color: var(--text-muted);
cursor: pointer;
transition: all 0.15s;
}
.fluent-view-tab:hover {
color: var(--text-normal);
}
.fluent-view-tab.is-active {
background-color: var(--background-secondary-alt);
color: var(--text-normal);
box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
}
.fluent-view-tab-icon {
width: 16px;
height: 16px;
display: flex;
align-items: center;
}
.fluent-nav-separator {
width: 1px;
height: 24px;
background-color: var(--background-modifier-border);
}
.fluent-nav-button {
display: flex;
align-items: center;
gap: 6px;
padding: 6px 12px;
background: none;
border: 1px solid var(--background-modifier-border);
border-radius: 6px;
font-size: 14px;
color: var(--text-normal);
cursor: pointer;
transition: all 0.15s;
}
.fluent-nav-button:hover {
background-color: var(--background-modifier-hover);
}
.fluent-nav-button-icon {
width: 16px;
height: 16px;
display: flex;
}
.fluent-nav-right {
display: flex;
align-items: center;
gap: 12px;
}
.fluent-nav-custom-buttons {
display: flex;
align-items: center;
gap: 4px;
}
.fluent-nav-custom-button-wrapper {
display: flex;
align-items: center;
}
.fluent-nav-cycle-selector-wrapper {
display: flex;
align-items: center;
margin-right: 8px;
}
.fluent-nav-cycle-button {
display: flex;
align-items: center;
gap: 6px;
padding: 6px 12px;
border: 1px solid var(--background-modifier-border);
border-radius: var(--radius-s);
background-color: var(--background-primary);
color: var(--text-normal);
cursor: pointer;
font-size: var(--font-ui-small);
transition: background-color 0.2s ease, border-color 0.2s ease;
white-space: nowrap;
}
.fluent-nav-cycle-button:hover {
background-color: var(--background-modifier-hover);
border-color: var(--background-modifier-border-hover);
}
.fluent-nav-cycle-button:active {
background-color: var(--background-modifier-active-hover);
}
.fluent-nav-cycle-icon {
display: flex;
align-items: center;
justify-content: center;
width: 16px;
height: 16px;
}
.fluent-nav-cycle-label {
font-weight: 500;
max-width: 120px;
overflow: hidden;
text-overflow: ellipsis;
}
.fluent-nav-icon-button {
position: relative;
width: 36px;
height: 36px;
display: flex;
align-items: center;
justify-content: center;
border-radius: 6px;
color: var(--text-muted);
cursor: pointer;
transition: all 0.15s;
}
.fluent-nav-icon-button:hover {
background-color: var(--background-modifier-hover);
color: var(--text-normal);
}
.fluent-notification-badge {
position: absolute;
top: -2px;
right: -2px;
background-color: var(--text-error);
color: white;
font-size: 10px;
font-weight: 600;
padding: 2px 5px;
border-radius: 10px;
min-width: 16px;
text-align: center;
}
.tg-fluent-content {
flex: 1;
overflow: auto;
}
.bases-view .tg-kanban-filters,
.tg-fluent-content .content-header,
.tg-fluent-main-container:has(.fluent-top-navigation:not(.other-view)) .tg-fluent-content .tg-kanban-filters {
display: none;
}
.tg-fluent-list-view,
.tg-fluent-kanban-view,
.tg-fluent-tree-view,
.tg-fluent-calendar-view {
height: 100%;
}
@media (max-width: 768px) {
.tg-fluent-sidebar-container:not(.is-mobile-drawer) {
width: 200px;
}
.fluent-nav-center {
display: none;
}
.fluent-search-container {
flex: 1;
}
.fluent-nav-left .search-input-container {
width: 300px;
}
}
@media (max-width: 480px) {
.tg-fluent-sidebar-container.is-mobile-drawer {
width: 75vw !important;
max-width: 320px !important;
}
.fluent-hamburger-button {
width: 44px;
height: 44px;
}
.fluent-top-navigation {
padding: 0 12px;
}
.fluent-view-tabs {
display: none;
}
.fluent-search-container {
flex: 1;
max-width: calc(100vw - 180px);
}
}
.tg-fluent-sidebar-container {
transition:
width 0.2s ease,
min-width 0.2s ease,
max-width 0.2s ease;
}
.tg-fluent-sidebar-container.is-collapsed,
.fluent-sidebar-collapsed .tg-fluent-sidebar-container {
width: 44px;
min-width: 44px;
max-width: 44px;
}
.fluent-sidebar-rail {
height: 100%;
display: flex;
flex-direction: column;
align-items: center;
gap: 8px;
padding: 8px 4px;
}
.fluent-rail-btn {
width: 36px;
height: 36px;
display: flex;
align-items: center;
justify-content: center;
border-radius: var(--radius-s);
color: var(--text-muted);
cursor: pointer;
transition: background-color 0.15s ease, color 0.15s ease;
}
.fluent-rail-btn:hover {
background-color: var(--background-modifier-hover);
color: var(--text-normal);
}
.fluent-rail-btn svg {
width: 16px;
height: 16px;
}
.fluent-rail-btn.is-active {
background-color: var(--background-modifier-active-hover);
color: var(--text-normal);
}
.tg-beta {
position: relative;
}
.tg-beta::after {
content: "beta";
font-size: 0.44em;
background: var(--color-accent);
color: var(--text-on-accent-inverted);
padding-left: 2px;
padding-right: 2px;
font-weight: bold;
margin-left: 4px;
position: absolute;
top: -1px;
right: -2px;
border-radius: 2px;
text-transform: uppercase;
padding-top: 1px;
}
.drawer-overlay {
position: fixed;
top: 0;
left: 0;
right: 0;
bottom: 0;
background-color: rgba(0, 0, 0, 0.5);
z-index: 999;
opacity: 0;
transition: opacity 0.3s ease;
pointer-events: none;
}
.drawer-open .drawer-overlay {
opacity: 1;
pointer-events: auto;
}
.tg-fluent-sidebar-container.is-mobile-drawer {
position: fixed;
top: 0;
left: 0;
bottom: 0;
width: 280px !important;
max-width: 85vw !important;
min-width: 280px !important;
z-index: 1000;
transform: translateX(-100%);
transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
box-shadow: 4px 0 20px rgba(0, 0, 0, 0.15);
}
.drawer-open .tg-fluent-sidebar-container.is-mobile-drawer {
transform: translateX(0);
}
.tg-fluent-sidebar-container.is-mobile-drawer .fluent-sidebar.is-collapsed {
display: flex;
width: 100%;
}
.tg-fluent-sidebar-container.is-mobile-drawer .fluent-sidebar-rail {
display: none;
}
.is-mobile .fluent-sidebar {
width: 100%;
overflow-y: auto;
overflow-x: hidden;
max-width: 300px;
}
.is-mobile .fluent-sidebar-header {
padding: 16px;
border-bottom: 1px solid var(--background-modifier-border);
}
.is-mobile .fluent-sidebar-content {
overflow-y: auto;
max-height: calc(100vh - 150px);
}
.is-mobile .fluent-sidebar-section {
display: block !important;
visibility: visible !important;
}
.is-mobile .fluent-section-header {
display: flex !important;
visibility: visible !important;
}
.is-mobile .fluent-navigation-item,
.is-mobile .fluent-project-item {
padding: 10px 16px;
font-size: 15px;
}
.is-mobile .fluent-new-task-btn {
padding: 12px;
font-size: 15px;
}
.is-mobile .fluent-navigation-list {
display: flex;
justify-content: center;
}
.is-mobile span.fluent-navigation-label {
display: none;
}
.is-mobile .fluent-navigation-item,
.is-mobile .fluent-project-item,
.is-mobile .fluent-add-project {
min-height: 44px;
}
.drawer-open .tg-fluent-main-container {
pointer-events: none;
}
.fluent-hamburger-button {
display: flex;
align-items: center;
justify-content: center;
width: 40px;
height: 40px;
border-radius: 4px;
color: var(--text-muted);
cursor: pointer;
transition: background-color 0.15s ease, color 0.15s ease;
margin-right: 8px;
flex-shrink: 0;
}
.fluent-hamburger-button:hover {
background-color: var(--background-modifier-hover);
color: var(--text-normal);
}
.fluent-hamburger-button svg {
width: 20px;
height: 20px;
}
.fluent-nav-left {
display: flex;
align-items: center;
gap: 8px;
}
.tg-fluent-sidebar-container.is-mobile-drawer ~ .tg-fluent-main-container .sidebar-toggle {
display: none !important;
}
.tg-fluent-sidebar-container.is-mobile-drawer.drawer-right {
left: auto;
right: 0;
transform: translateX(100%);
box-shadow: -4px 0 20px rgba(0, 0, 0, 0.15);
}
.drawer-open .tg-fluent-sidebar-container.is-mobile-drawer.drawer-right {
transform: translateX(0);
}
.view-content:has(.tg-right-detail-view) {
padding-left: 0;
padding-right: 0;
padding-top: 0;
}
.tg-right-detail-view .task-details {
width: 100%;
}
@keyframes slideInFromLeft {
from {
transform: translateX(-100%);
opacity: 0.8;
}
to {
transform: translateX(0);
opacity: 1;
}
}
@keyframes slideInFromRight {
from {
transform: translateX(100%);
opacity: 0.8;
}
to {
transform: translateX(0);
opacity: 1;
}
}
.onboarding-shadow {
position: absolute;
background: hsl(var(--color-accent-hsl), 0);
border-radius: 24px;
rotate: 35deg;
width: 260px;
top: 200px;
height: 400px;
filter: blur(150px);
animation: shadow-slide infinite 4s linear alternate;
pointer-events: none;
}
@keyframes shadow-slide {
0% {
background: hsl(var(--color-accent-hsl), 0.2);
right: 360px;
}
to {
background: hsl(var(--color-accent-hsl), 0.8);
right: 160px;
}
}
.view-content.task-genius-fluent-view.task-genius-view {
container-type: inline-size;
}
@container (width < 800px) {
.tg-fluent-main-container button.fluent-view-tab.clickable-icon span {
display: none;
}
}
.fluent-navigation-item.sortable-ghost {
opacity: 0.4;
background-color: var(--background-modifier-hover);
border: 1px dashed var(--text-muted);
}
.fluent-navigation-item.sortable-chosen {
background-color: var(--background-modifier-active-hover);
}
.fluent-navigation-item.sortable-drag {
background-color: var(--background-secondary);
box-shadow: var(--shadow-l);
opacity: 0.9;
cursor: grabbing;
border-radius: 4px;
z-index: 1000;
}
/* src/styles/fluent/fluent-secondary.scss */
:root {
--tg-shadow-sm: 0 1px 2px 0 rgb(0 0 0 / 0.05);
--tg-shadow: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);
--tg-shadow-md: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);
--tg-shadow-lg: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);
--tg-shadow-xl: 0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1);
--tg-transition-fast: 150ms cubic-bezier(0.4, 0, 0.2, 1);
--tg-transition-base: 200ms cubic-bezier(0.4, 0, 0.2, 1);
--tg-transition-slow: 300ms cubic-bezier(0.4, 0, 0.2, 1);
--tg-radius-sm: 0.25rem;
--tg-radius: 0.375rem;
--tg-radius-md: 0.5rem;
--tg-radius-lg: 0.75rem;
--tg-radius-full: 9999px;
}
.task-list-container {
height: 100%;
overflow-y: auto;
padding: 1.5rem;
animation: fadeIn var(--tg-transition-base);
}
.task-list-wrapper {
max-width: 1200px;
margin: 0 auto;
}
.tg-task-list-item {
background: var(--background-primary);
border: 1px solid var(--background-modifier-border);
border-radius: var(--tg-radius-md);
margin-bottom: 0.75rem;
padding: 1rem 1.25rem;
transition: all var(--tg-transition-fast);
position: relative;
overflow: hidden;
}
.task-list-item::before {
content: "";
position: absolute;
left: 0;
top: 0;
bottom: 0;
width: 3px;
background: transparent;
transition: background var(--tg-transition-fast);
}
.tg-task-list-item:hover {
box-shadow: var(--tg-shadow);
transform: translateY(-1px);
border-color: var(--interactive-accent);
}
.tg-task-list-item:hover::before {
background: var(--interactive-accent);
}
.task-list-item.is-completed {
opacity: 0.6;
background: var(--background-secondary);
}
.task-list-item.is-overdue::before {
background: var(--text-error);
}
.task-list-empty {
text-align: center;
padding: 3rem 1.5rem;
color: var(--text-muted);
font-size: 0.9rem;
}
.task-tree-container {
height: 100%;
overflow-y: auto;
padding: 1.5rem;
animation: fadeIn var(--tg-transition-base);
}
.task-tree-wrapper {
max-width: 1200px;
margin: 0 auto;
}
.task-tree-project {
margin-bottom: 1.5rem;
background: var(--background-primary);
border: 1px solid var(--background-modifier-border);
border-radius: var(--tg-radius-lg);
overflow: hidden;
transition: all var(--tg-transition-base);
}
.task-tree-project:hover {
box-shadow: var(--tg-shadow-md);
}
.task-tree-project-header {
padding: 1rem 1.25rem;
background: var(--background-secondary);
border-bottom: 1px solid var(--background-modifier-border);
font-weight: 600;
font-size: 0.95rem;
color: var(--text-normal);
display: flex;
align-items: center;
justify-content: space-between;
cursor: pointer;
transition: background var(--tg-transition-fast);
}
.task-tree-project-header:hover {
background: var(--background-modifier-hover);
}
.task-tree-project-header::before {
content: "\25b6";
display: inline-block;
margin-right: 0.5rem;
transition: transform var(--tg-transition-fast);
font-size: 0.75rem;
}
.task-tree-project.is-expanded .task-tree-project-header::before {
transform: rotate(90deg);
}
.task-tree-tasks {
padding: 0.5rem;
}
.task-tree-item {
padding: 0.75rem 1rem;
margin: 0.25rem;
border-radius: var(--tg-radius);
transition: all var(--tg-transition-fast);
position: relative;
padding-left: 2rem;
}
.task-tree-item::before {
content: "";
position: absolute;
left: 1rem;
top: 50%;
transform: translateY(-50%);
width: 4px;
height: 4px;
background: var(--text-muted);
border-radius: var(--tg-radius-full);
}
.task-tree-item:hover {
background: var(--background-modifier-hover);
}
.task-tree-empty {
text-align: center;
padding: 3rem 1.5rem;
color: var(--text-muted);
font-size: 0.9rem;
}
.tg-fluent-filter-panel {
position: fixed;
right: -380px;
top: 0;
bottom: 0;
width: 380px;
background: var(--background-primary);
border-left: 1px solid var(--background-modifier-border);
box-shadow: var(--tg-shadow-xl);
transition: right var(--tg-transition-slow);
z-index: 1000;
overflow-y: auto;
display: flex;
flex-direction: column;
}
.tg-fluent-filter-panel.is-open {
right: 0;
}
.filter-panel-header {
padding: 1.25rem;
border-bottom: 1px solid var(--background-modifier-border);
display: flex;
align-items: center;
justify-content: space-between;
}
.filter-panel-title {
font-size: 1.1rem;
font-weight: 600;
color: var(--text-normal);
}
.filter-panel-close {
width: 32px;
height: 32px;
display: flex;
align-items: center;
justify-content: center;
border-radius: var(--tg-radius);
cursor: pointer;
transition: background var(--tg-transition-fast);
color: var(--text-muted);
}
.filter-panel-close:hover {
background: var(--background-modifier-hover);
color: var(--text-normal);
}
.filter-panel-content {
padding: 1.25rem;
}
.filter-group {
margin-bottom: 1.5rem;
}
.filter-group-label {
font-size: 0.875rem;
font-weight: 500;
color: var(--text-muted);
margin-bottom: 0.5rem;
text-transform: uppercase;
letter-spacing: 0.025em;
}
.filter-options {
display: flex;
flex-direction: column;
gap: 0.5rem;
}
.filter-option {
display: flex;
align-items: center;
padding: 0.5rem 0.75rem;
border-radius: var(--tg-radius);
cursor: pointer;
transition: background var(--tg-transition-fast);
}
.filter-option:hover {
background: var(--background-modifier-hover);
}
.filter-option.is-selected {
background: var(--interactive-accent);
color: var(--text-on-accent);
}
.filter-checkbox {
margin-right: 0.75rem;
}
.filter-select {
width: 100%;
padding: 0.5rem 0.75rem;
background: var(--background-modifier-form-field);
border: 1px solid var(--background-modifier-border);
border-radius: var(--tg-radius);
color: var(--text-normal);
font-size: 0.875rem;
transition: all var(--tg-transition-fast);
cursor: pointer;
}
.filter-select:hover {
border-color: var(--interactive-accent);
}
.filter-select:focus {
outline: none;
border-color: var(--interactive-accent);
box-shadow: 0 0 0 2px var(--interactive-accent-hover);
}
.filter-tags-container {
display: flex;
flex-wrap: wrap;
gap: 0.5rem;
padding: 0.5rem 0;
}
.filter-tag {
display: inline-flex;
align-items: center;
gap: 0.5rem;
padding: 0.375rem 0.75rem;
background: var(--background-secondary);
border: 1px solid var(--background-modifier-border);
border-radius: var(--tg-radius-full);
font-size: 0.875rem;
cursor: pointer;
transition: all var(--tg-transition-fast);
}
.filter-tag:hover {
background: var(--background-modifier-hover);
}
.filter-tag.is-selected {
background: var(--interactive-accent);
color: var(--text-on-accent);
border-color: var(--interactive-accent);
}
.filter-date-container {
display: flex;
flex-direction: column;
gap: 0.75rem;
}
.filter-date-field {
display: flex;
align-items: center;
gap: 0.5rem;
}
.filter-date-field span {
min-width: 50px;
font-size: 0.875rem;
color: var(--text-muted);
}
.filter-date-input {
flex: 1;
padding: 0.5rem 0.75rem;
background: var(--background-modifier-form-field);
border: 1px solid var(--background-modifier-border);
border-radius: var(--tg-radius);
color: var(--text-normal);
font-size: 0.875rem;
transition: all var(--tg-transition-fast);
}
.filter-date-input:hover {
border-color: var(--interactive-accent);
}
.filter-date-input:focus {
outline: none;
border-color: var(--interactive-accent);
}
.filter-action-buttons {
display: flex;
gap: 0.75rem;
margin-top: 1.5rem;
padding-top: 1.5rem;
border-top: 1px solid var(--background-modifier-border);
}
.filter-action-buttons button {
flex: 1;
}
.priority-color-dot {
width: 12px;
height: 12px;
border-radius: var(--tg-radius-full);
flex-shrink: 0;
}
.tg-fluent-loading {
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
height: 100%;
gap: 1rem;
}
.tg-fluent-spinner {
width: 32px;
height: 32px;
border: 3px solid var(--background-modifier-border);
border-top-color: var(--interactive-accent);
border-radius: var(--tg-radius-full);
animation: spin 1s linear infinite;
}
@keyframes spin {
to {
transform: rotate(360deg);
}
}
.tg-fluent-loading-text {
color: var(--text-muted);
font-size: 0.9rem;
}
.tg-fluent-empty-state {
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
height: 100%;
padding: 2rem;
text-align: center;
}
.tg-fluent-empty-icon {
width: 64px;
height: 64px;
margin-bottom: 1rem;
color: var(--text-muted);
opacity: 0.5;
--icon-size: 48px;
}
.tg-fluent-empty-title {
font-size: 1.25rem;
font-weight: 600;
color: var(--text-normal);
margin-bottom: 0.5rem;
}
.tg-fluent-empty-description {
color: var(--text-muted);
margin-bottom: 1.5rem;
max-width: 400px;
}
.tg-fluent-empty-action {
padding: 0.75rem 1.5rem;
background: var(--interactive-accent);
color: var(--text-on-accent);
border: none;
border-radius: var(--tg-radius-md);
font-weight: 500;
cursor: pointer;
transition: all var(--tg-transition-fast);
}
.tg-fluent-empty-action:hover {
background: var(--interactive-accent-hover);
transform: translateY(-1px);
box-shadow: var(--tg-shadow);
}
.tg-fluent-tooltip {
position: absolute;
background: var(--background-secondary);
color: var(--text-normal);
padding: 0.5rem 0.75rem;
border-radius: var(--tg-radius);
font-size: 0.875rem;
box-shadow: var(--tg-shadow-lg);
z-index: 9999;
pointer-events: none;
opacity: 0;
transform: translateY(4px);
transition: all var(--tg-transition-fast);
}
.tg-fluent-tooltip.is-visible {
opacity: 1;
transform: translateY(0);
}
.tg-fluent-card {
background: var(--background-primary);
border: 1px solid var(--background-modifier-border);
border-radius: var(--tg-radius-lg);
padding: 1.25rem;
margin-bottom: 1rem;
transition: all var(--tg-transition-base);
}
.tg-fluent-card:hover {
box-shadow: var(--tg-shadow-md);
border-color: var(--interactive-accent);
}
.tg-fluent-card-header {
display: flex;
align-items: center;
justify-content: space-between;
margin-bottom: 1rem;
padding-bottom: 0.75rem;
border-bottom: 1px solid var(--background-modifier-border);
}
.tg-fluent-card-title {
font-size: 1rem;
font-weight: 600;
color: var(--text-normal);
}
.tg-fluent-card-actions {
display: flex;
gap: 0.5rem;
}
.tg-fluent-card-action {
width: 28px;
height: 28px;
display: flex;
align-items: center;
justify-content: center;
border-radius: var(--tg-radius);
cursor: pointer;
transition: all var(--tg-transition-fast);
color: var(--text-muted);
}
.tg-fluent-card-action:hover {
background: var(--background-modifier-hover);
color: var(--text-normal);
}
.tg-fluent-button {
display: inline-flex;
align-items: center;
justify-content: center;
gap: 0.5rem;
padding: 0.625rem 1.25rem;
font-size: 0.875rem;
font-weight: 500;
border-radius: var(--tg-radius-md);
border: none;
cursor: pointer;
transition: all var(--tg-transition-fast);
position: relative;
overflow: hidden;
}
.tg-fluent-button::before {
content: "";
position: absolute;
top: 50%;
left: 50%;
width: 0;
height: 0;
border-radius: var(--tg-radius-full);
background: rgba(255, 255, 255, 0.2);
transform: translate(-50%, -50%);
transition: width var(--tg-transition-slow), height var(--tg-transition-slow);
}
.tg-fluent-button:active::before {
width: 300px;
height: 300px;
}
button.tg-fluent-button-primary {
background: var(--interactive-accent);
color: var(--text-on-accent);
}
button.tg-fluent-button-primary:hover {
background: var(--interactive-accent-hover);
transform: translateY(-1px);
box-shadow: var(--tg-shadow);
}
button.tg-fluent-button-secondary {
background: var(--background-secondary);
color: var(--text-normal);
border: 1px solid var(--background-modifier-border);
}
button.tg-fluent-button-secondary:hover {
background: var(--background-modifier-hover);
border-color: var(--interactive-accent);
}
button.tg-fluent-button-ghost {
background: transparent;
color: var(--text-normal);
}
button.tg-fluent-button-ghost:hover {
background: var(--background-modifier-hover);
}
button.tg-fluent-button-danger {
background: var(--text-error);
color: white;
}
button.tg-fluent-button-danger:hover {
background: #dc2626;
transform: translateY(-1px);
box-shadow: var(--tg-shadow);
}
@keyframes fadeIn {
from {
opacity: 0;
transform: translateY(4px);
}
to {
opacity: 1;
transform: translateY(0);
}
}
@keyframes slideIn {
from {
transform: translateX(100%);
}
to {
transform: translateX(0);
}
}
@keyframes slideUp {
from {
transform: translateY(100%);
}
to {
transform: translateY(0);
}
}
@keyframes pulse {
0%, 100% {
opacity: 1;
}
50% {
opacity: 0.5;
}
}
@media (max-width: 1024px) {
.task-list-container,
.task-tree-container {
padding: 1rem;
}
.tg-fluent-filter-panel {
width: 100%;
right: -100%;
}
}
@media (max-width: 640px) {
.tg-task-list-item {
padding: 0.75rem 1rem;
}
.task-tree-project-header {
padding: 0.75rem 1rem;
}
.tg-fluent-card {
padding: 1rem;
}
}
.theme-dark {
--tg-shadow-sm: 0 1px 2px 0 rgb(0 0 0 / 0.3);
--tg-shadow: 0 1px 3px 0 rgb(0 0 0 / 0.4), 0 1px 2px -1px rgb(0 0 0 / 0.3);
--tg-shadow-md: 0 4px 6px -1px rgb(0 0 0 / 0.4), 0 2px 4px -2px rgb(0 0 0 / 0.3);
--tg-shadow-lg: 0 10px 15px -3px rgb(0 0 0 / 0.4), 0 4px 6px -4px rgb(0 0 0 / 0.3);
--tg-shadow-xl: 0 20px 25px -5px rgb(0 0 0 / 0.4), 0 8px 10px -6px rgb(0 0 0 / 0.3);
}
.theme-dark .tg-fluent-card:hover,
.theme-dark .tg-task-list-item:hover,
.theme-dark .task-tree-project:hover {
box-shadow: 0 0 0 1px var(--interactive-accent), var(--tg-shadow-md);
}
.tg-fluent-progress {
width: 100%;
height: 6px;
background: var(--background-modifier-border);
border-radius: var(--tg-radius-full);
overflow: hidden;
margin: 0.5rem 0;
}
.tg-fluent-progress-bar {
height: 100%;
background: var(--interactive-accent);
border-radius: var(--tg-radius-full);
transition: width var(--tg-transition-slow);
position: relative;
overflow: hidden;
}
.tg-fluent-progress-bar::after {
content: "";
position: absolute;
top: 0;
left: 0;
right: 0;
bottom: 0;
background:
linear-gradient(
90deg,
transparent,
rgba(255, 255, 255, 0.3),
transparent);
animation: shimmer 2s infinite;
}
@keyframes shimmer {
0% {
transform: translateX(-100%);
}
100% {
transform: translateX(100%);
}
}
.tg-fluent-tag {
display: inline-flex;
align-items: center;
padding: 0.25rem 0.625rem;
font-size: 0.75rem;
font-weight: 500;
border-radius: var(--tg-radius-full);
background: var(--background-secondary);
color: var(--text-normal);
border: 1px solid var(--background-modifier-border);
margin-right: 0.25rem;
transition: all var(--tg-transition-fast);
}
.tg-fluent-tag:hover {
background: var(--background-modifier-hover);
border-color: var(--interactive-accent);
}
.tg-fluent-tag-primary {
background: var(--interactive-accent);
color: var(--text-on-accent);
border-color: var(--interactive-accent);
}
.tg-fluent-tag-success {
background: #10b981;
color: white;
border-color: #10b981;
}
.tg-fluent-tag-warning {
background: #f59e0b;
color: white;
border-color: #f59e0b;
}
.tg-fluent-tag-danger {
background: var(--text-error);
color: white;
border-color: var(--text-error);
}
.workspace-name-with-icon {
display: flex;
align-items: center;
justify-content: flex-start;
gap: var(--size-2-2);
}
/* src/styles/fluent/fluent-content-header.scss */
.tg-fluent-content-wrapper {
display: flex;
flex-direction: column;
height: 100%;
overflow: hidden;
}
.fluent-content-header {
display: flex;
align-items: center;
justify-content: space-between;
padding: 12px 20px;
background: var(--background-primary);
border-bottom: 1px solid var(--background-modifier-border);
min-height: 56px;
gap: 16px;
flex-shrink: 0;
}
.fluent-content-header .header-left-section {
display: flex;
align-items: center;
gap: 12px;
min-width: 200px;
}
.fluent-content-header .content-title {
font-size: 1.25rem;
font-weight: 600;
color: var(--text-normal);
white-space: nowrap;
}
.fluent-content-header .task-count {
font-size: 0.875rem;
color: var(--text-muted);
padding: 2px 8px;
background: var(--background-secondary);
border-radius: 4px;
white-space: nowrap;
}
.fluent-content-header .header-center-section {
flex: 1;
display: flex;
justify-content: center;
max-width: 500px;
margin: 0 auto;
}
.fluent-content-header .content-filter {
width: 100%;
}
.fluent-content-header .filter-input {
width: 100%;
padding: 6px 12px;
background: var(--background-primary-alt);
border: 1px solid var(--background-modifier-border);
border-radius: 6px;
font-size: 0.875rem;
color: var(--text-normal);
transition: all 0.2s ease;
}
.fluent-content-header .filter-input::placeholder {
color: var(--text-muted);
}
.fluent-content-header .filter-input:focus {
outline: none;
border-color: var(--interactive-accent);
box-shadow: 0 0 0 2px rgba(var(--interactive-accent-rgb), 0.2);
}
.fluent-content-header .header-right-section {
display: flex;
align-items: center;
gap: 8px;
}
.fluent-content-header .view-toggle-btn,
.fluent-content-header .sort-button,
.fluent-content-header .filter-button {
display: flex;
align-items: center;
justify-content: center;
width: 32px;
height: 32px;
border-radius: 6px;
background: transparent;
color: var(--text-muted);
cursor: pointer;
transition: all 0.2s ease;
}
.fluent-content-header .view-toggle-btn:hover,
.fluent-content-header .sort-button:hover,
.fluent-content-header .filter-button:hover {
background: var(--background-modifier-hover);
color: var(--text-normal);
}
.fluent-content-header .view-toggle-btn:active,
.fluent-content-header .sort-button:active,
.fluent-content-header .filter-button:active {
transform: scale(0.95);
}
.fluent-content-header .view-toggle-btn svg,
.fluent-content-header .sort-button svg,
.fluent-content-header .filter-button svg {
width: 16px;
height: 16px;
}
.tg-fluent-content {
flex: 1;
overflow-y: auto;
background: var(--background-primary);
}
@media (max-width: 768px) {
.fluent-content-header {
flex-wrap: wrap;
padding: 8px 12px;
}
.fluent-content-header .header-left-section {
min-width: auto;
}
.fluent-content-header .header-center-section {
order: 3;
width: 100%;
max-width: none;
margin-top: 8px;
}
.fluent-content-header .content-title {
font-size: 1.1rem;
}
}
/* src/styles/fluent/fluent-project-popover.scss */
.fluent-project-popover-container {
position: absolute;
z-index: 1000;
}
.fluent-project-popover {
background: var(--background-primary);
border: 1px solid var(--background-modifier-border);
border-radius: 8px;
box-shadow: 0 4px 20px rgba(0, 0, 0, 0.15);
min-width: 320px;
max-width: 400px;
animation: popover-fade-in 0.2s ease-out;
}
@keyframes popover-fade-in {
from {
opacity: 0;
transform: translateY(-8px);
}
to {
opacity: 1;
transform: translateY(0);
}
}
.fluent-popover-arrow,
.fluent-popover-arrow::before {
position: absolute;
width: 10px;
height: 10px;
background: inherit;
}
.fluent-popover-arrow {
visibility: hidden;
}
.fluent-popover-arrow::before {
visibility: visible;
content: "";
transform: rotate(45deg);
background: var(--background-primary);
border: 1px solid var(--background-modifier-border);
}
.fluent-project-popover[data-popper-placement^=top] .fluent-popover-arrow {
bottom: -5px;
}
.fluent-project-popover[data-popper-placement^=top] .fluent-popover-arrow::before {
border-top: none;
border-left: none;
}
.fluent-project-popover[data-popper-placement^=bottom] .fluent-popover-arrow {
top: -5px;
}
.fluent-project-popover[data-popper-placement^=bottom] .fluent-popover-arrow::before {
border-right: none;
border-bottom: none;
}
.fluent-project-popover[data-popper-placement^=left] .fluent-popover-arrow {
right: -5px;
}
.fluent-project-popover[data-popper-placement^=left] .fluent-popover-arrow::before {
border-bottom: none;
border-left: none;
}
.fluent-project-popover[data-popper-placement^=right] .fluent-popover-arrow {
left: -5px;
}
.fluent-project-popover[data-popper-placement^=right] .fluent-popover-arrow::before {
border-top: none;
border-right: none;
}
.fluent-popover-content {
padding: 16px;
}
.fluent-popover-header {
margin-bottom: 16px;
padding-bottom: 12px;
border-bottom: 1px solid var(--background-modifier-border);
}
.fluent-popover-header h3 {
margin: 0;
font-size: 16px;
font-weight: 600;
color: var(--text-normal);
}
.fluent-popover-section {
margin-bottom: 16px;
}
.fluent-popover-section label {
display: block;
margin-bottom: 8px;
font-size: 12px;
font-weight: 500;
color: var(--text-muted);
text-transform: uppercase;
letter-spacing: 0.5px;
}
.fluent-popover-input {
width: 100%;
padding: 8px 12px;
background: var(--background-primary);
border: 1px solid var(--background-modifier-border);
border-radius: 4px;
font-size: 14px;
color: var(--text-normal);
transition: all 0.2s;
}
.fluent-popover-input:focus {
outline: none;
border-color: var(--interactive-accent);
box-shadow: 0 0 0 2px var(--interactive-accent-hover);
}
.fluent-popover-input.is-error {
border-color: var(--text-error);
animation: shake 0.3s;
}
@keyframes shake {
0%, 100% {
transform: translateX(0);
}
25% {
transform: translateX(-4px);
}
75% {
transform: translateX(4px);
}
}
.fluent-color-grid {
display: grid;
grid-template-columns: repeat(5, 1fr);
gap: 8px;
}
.fluent-color-button {
width: 36px;
height: 36px;
border-radius: 8px;
cursor: pointer;
transition: all 0.2s;
border: 2px solid transparent;
position: relative;
}
.fluent-color-button:hover {
transform: scale(1.1);
}
.fluent-color-button.is-selected {
border-color: var(--interactive-accent);
box-shadow: 0 0 0 2px var(--interactive-accent-hover);
}
.fluent-color-button.is-selected::after {
content: "\2713";
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
color: white;
font-size: 16px;
font-weight: bold;
text-shadow: 0 1px 2px rgba(0, 0, 0, 0.3);
}
.fluent-popover-actions {
display: flex;
justify-content: flex-end;
gap: 8px;
margin-top: 20px;
padding-top: 16px;
border-top: 1px solid var(--background-modifier-border);
}
.fluent-button {
padding: 6px 16px;
border-radius: 4px;
font-size: 14px;
font-weight: 500;
cursor: pointer;
transition: all 0.2s;
border: none;
outline: none;
}
.fluent-button-primary {
background: var(--interactive-accent);
color: var(--text-on-accent);
}
.fluent-button-primary:hover {
background: var(--interactive-accent-hover);
}
.fluent-button-secondary {
background: transparent;
color: var(--text-muted);
border: 1px solid var(--background-modifier-border);
}
.fluent-button-secondary:hover {
background: var(--background-modifier-hover);
color: var(--text-normal);
}
.fluent-project-modal {
}
.fluent-project-modal .modal-content h2 {
margin-bottom: 20px;
font-size: 20px;
font-weight: 600;
color: var(--text-normal);
}
.fluent-modal-section {
margin-bottom: 24px;
}
.fluent-modal-section label {
display: block;
margin-bottom: 8px;
font-size: 14px;
font-weight: 500;
color: var(--text-muted);
}
.fluent-modal-input {
width: 100%;
padding: 10px 14px;
background: var(--background-primary);
border: 1px solid var(--background-modifier-border);
border-radius: 6px;
font-size: 16px;
color: var(--text-normal);
transition: all 0.2s;
}
.fluent-modal-input:focus {
outline: none;
border-color: var(--interactive-accent);
box-shadow: 0 0 0 3px var(--interactive-accent-hover);
}
.fluent-modal-input.is-error {
border-color: var(--text-error);
animation: shake 0.3s;
}
.fluent-modal-color-grid {
display: grid;
grid-template-columns: repeat(5, 1fr);
gap: 12px;
}
.fluent-modal-color-button {
width: 48px;
height: 48px;
border-radius: 8px;
cursor: pointer;
transition: all 0.2s;
border: 3px solid transparent;
position: relative;
}
.fluent-modal-color-button:hover {
transform: scale(1.1);
}
.fluent-modal-color-button.is-selected {
border-color: var(--interactive-accent);
box-shadow: 0 0 0 3px var(--interactive-accent-hover);
}
.fluent-modal-color-button.is-selected::after {
content: "\2713";
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
color: white;
font-size: 20px;
font-weight: bold;
text-shadow: 0 1px 3px rgba(0, 0, 0, 0.4);
}
.fluent-modal-preview {
padding: 12px;
background: var(--background-secondary);
border-radius: 8px;
}
.fluent-project-item-preview {
display: flex;
align-items: center;
gap: 12px;
padding: 8px;
background: var(--background-primary);
border-radius: 6px;
}
.fluent-project-item-preview .fluent-project-color {
width: 8px;
height: 32px;
border-radius: 2px;
flex-shrink: 0;
}
.fluent-project-item-preview .fluent-project-name {
font-size: 14px;
font-weight: 500;
color: var(--text-normal);
}
.fluent-modal-footer {
display: flex;
justify-content: flex-end;
gap: 12px;
padding: 20px;
border-top: 1px solid var(--background-modifier-border);
}
.fluent-modal-footer .fluent-button {
padding: 10px 24px;
font-size: 15px;
}
/* src/styles/fluent/fluent-modern.scss */
.fluent-modern {
--modern-background-secondary: var(--background-secondary);
--modern-background-primary: var(--background-primary);
}
.theme-dark .fluent-modern {
--modern-background-secondary: var(--background-secondary);
--modern-background-primary: var(--background-primary);
}
.fluent-modern .tg-fluent-sidebar-container {
}
.fluent-modern .fluent-sidebar-content {
flex: 1;
overflow-y: auto;
padding: 8px 0 0 0;
--icon-size: 16px;
}
.fluent-modern {
}
.fluent-modern .tg-fluent-layout {
display: flex;
height: 100%;
width: 100%;
overflow: hidden;
}
.fluent-modern .tg-fluent-main-container {
flex: 1;
display: flex;
flex-direction: column;
overflow: hidden;
}
.fluent-modern {
}
.fluent-modern .tg-fluent-content-wrapper {
display: flex;
flex-direction: column;
height: 100%;
overflow: hidden;
border-radius: var(--radius-m);
}
.fluent-modern .tg-fluent-content {
flex: 1;
overflow-y: auto;
}
.fluent-modern {
}
.fluent-modern .fluent-search-container input[type=search] {
width: 100%;
background-color: var(--background-primary-alt);
height: var(--size-4-8);
border: unset;
}
.fluent-modern .search-input-container {
width: 100%;
}
.fluent-modern {
}
.fluent-modern .task-list {
flex: 1;
overflow-y: auto;
padding: var(--size-4-2);
}
.fluent-modern .task-list > .task-item {
margin-bottom: var(--size-4-2);
}
.fluent-modern .task-item {
display: flex;
align-items: flex-start;
padding: 8px 16px;
border-bottom: unset;
cursor: pointer;
gap: var(--size-2-3);
min-height: 40px;
border-radius: var(--radius-s);
}
.fluent-modern .task-item,
.fluent-modern .task-item:hover {
gap: 0;
}
.fluent-modern .task-item:hover {
background-color: var(--background-secondary-alt);
}
.fluent-modern .tree-task-item {
position: relative;
display: flex;
flex-direction: column;
padding: 8px 16px;
transition: background-color 0.2s ease;
border-radius: var(--radius-m);
margin-bottom: var(--size-2-2);
}
.fluent-modern {
}
.fluent-modern .fluent-top-navigation {
display: flex;
align-items: center;
justify-content: space-between;
height: 56px;
padding: 0 20px;
gap: 20px;
background-color: var(--background-primary);
}
.fluent-modern .workspace-leaf-content[data-type^=fluent-task-genius-view] .view-header {
border-radius: var(--radius-m);
height: var(--header-height);
display: flex;
z-index: 1;
position: relative;
gap: var(--size-4-2);
padding: 0 var(--size-4-3);
}
.is-mobile .fluent-modern .workspace-leaf-content[data-type^=fluent-task-genius-view] {
}
.is-mobile .fluent-modern .workspace-leaf-content[data-type^=fluent-task-genius-view] .view-header {
height: var(--view-header-height);
}
.is-mobile .fluent-modern .tg-fluent-sidebar-container.fluent-sidebar:not(.is-collapsed) {
max-width: 300px;
}
:where(body:not(.is-mobile)) .fluent-modern .task-details-container {
width: 300px;
flex-shrink: 0;
order: 1;
}
:where(body:not(.is-mobile)) .fluent-modern .task-details {
height: 100%;
overflow-y: auto;
display: flex;
flex-direction: column;
transition: all 0.3s ease-in-out;
position: relative;
min-width: 250px;
max-width: 400px;
background-color: var(--background-primary);
border-radius: var(--radius-m);
}
/*# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsic3JjL3N0eWxlcy9wcm9ncmVzc2Jhci5zY3NzIiwgInNyYy9zdHlsZXMvbW9kYWwuc2NzcyIsICJzcmMvc3R5bGVzL2RhdGUtcGlja2VyLnNjc3MiLCAic3JjL3N0eWxlcy90YXNrLWRldGFpbHMuc2NzcyIsICJzcmMvc3R5bGVzL29uQ29tcGxldGlvbi5zY3NzIiwgInNyYy9zdHlsZXMvdW5pdmVyc2FsLXN1Z2dlc3Quc2NzcyIsICJzcmMvc3R5bGVzL2thbmJhbi9rYW5iYW4uc2NzcyIsICJzcmMvY29tcG9uZW50cy9mZWF0dXJlcy90YXNrL2ZpbHRlci9pbi12aWV3L2ZpbHRlci5zY3NzIiwgInBhY2thZ2VzL2NhbGVuZGFyL2Rpc3Qvc3R5bGVzLmNzcyIsICJzcmMvc3R5bGVzL3Rhc2tnZW5pdXMtY2FsZW5kYXIuc2NzcyIsICJzcmMvc3R5bGVzL2NhbGVuZGFyL3ZpZXcuc2NzcyIsICJzcmMvc3R5bGVzL2NhbGVuZGFyL2V2ZW50LnNjc3MiLCAic3JjL3N0eWxlcy9jYWxlbmRhci9iYWRnZS5zY3NzIiwgInNyYy9zdHlsZXMvZ2FudHQvZ2FudHQuc2NzcyIsICJzcmMvc3R5bGVzL3Rhc2stc3RhdHVzLWluZGljYXRvci5zY3NzIiwgInNyYy9zdHlsZXMvaW5saW5lLWVkaXRvci5zY3NzIiwgInNyYy9zdHlsZXMvdmlldy5zY3NzIiwgInNyYy9zdHlsZXMvcHJvcGVydHktdmlldy5zY3NzIiwgInNyYy9zdHlsZXMvZm9yZWNhc3Quc2NzcyIsICJzcmMvc3R5bGVzL2NhbGVuZGFyLnNjc3MiLCAic3JjL3N0eWxlcy90YWJsZS5zY3NzIiwgInNyYy9zdHlsZXMvcXVhZHJhbnQvcXVhZHJhbnQuc2NzcyIsICJzcmMvc3R5bGVzL3Rhc2stdGltZXIuc2NzcyIsICJzcmMvc3R5bGVzL3NldHRpbmcuc2NzcyIsICJzcmMvc3R5bGVzL3NldHRpbmctdjIuc2NzcyIsICJzcmMvc3R5bGVzL2JldGEtd2FybmluZy5zY3NzIiwgInNyYy9zdHlsZXMvc2V0dGluZ3Mtc2VhcmNoLnNjc3MiLCAic3JjL3N0eWxlcy9zZXR0aW5ncy1taWdyYXRpb24uc2NzcyIsICJzcmMvc3R5bGVzL3dvcmtzcGFjZS1zZXR0aW5ncy1zZWxlY3Rvci5zY3NzIiwgInNyYy9zdHlsZXMvc2V0dGluZ3MtbW9kYWwuc2NzcyIsICJzcmMvc3R5bGVzL29uYm9hcmRpbmctY29tcG9uZW50cy5zY3NzIiwgInNyYy9zdHlsZXMvbGF5b3V0LXBsYWNlbWVudC5zY3NzIiwgInNyYy9zdHlsZXMvZmlsZS1maWx0ZXItc2V0dGluZ3Muc2NzcyIsICJzcmMvc3R5bGVzL2hhYml0LWVkaXQtZGlhbG9nLnNjc3MiLCAic3JjL3N0eWxlcy9oYWJpdC1saXN0LnNjc3MiLCAic3JjL3N0eWxlcy9pY3Mtc2V0dGluZ3Muc2NzcyIsICJzcmMvc3R5bGVzL3Rhc2stZmlsdGVyLnNjc3MiLCAic3JjL3N0eWxlcy9nbG9iYWwtZmlsdGVyLnNjc3MiLCAic3JjL3N0eWxlcy92aWV3LXNldHRpbmctdGFiLnNjc3MiLCAic3JjL3N0eWxlcy9jYWxlbmRhci12aWV3LXNldHRpbmdzLnNjc3MiLCAic3JjL3N0eWxlcy9tY3AtaW50ZWdyYXRpb24uc2NzcyIsICJzcmMvc3R5bGVzL3dvcmtmbG93LnNjc3MiLCAic3JjL3N0eWxlcy9xdWljay1jYXB0dXJlLnNjc3MiLCAic3JjL3N0eWxlcy90aW1lci1zdGF0aXN0aWNzLnNjc3MiLCAic3JjL3N0eWxlcy90YXNrLWxpc3Quc2NzcyIsICJzcmMvc3R5bGVzL3RyZWUtdmlldy5zY3NzIiwgInNyYy9zdHlsZXMvbW9kZXJuLnNjc3MiLCAic3JjL3N0eWxlcy9ncm91cC1ieS5zY3NzIiwgInNyYy9zdHlsZXMvdGFnLXZpZXcuc2NzcyIsICJzcmMvc3R5bGVzL3Byb2plY3Qtdmlldy5zY3NzIiwgInNyYy9zdHlsZXMvcHJvamVjdC10cmVlLnNjc3MiLCAic3JjL3N0eWxlcy9yZXZpZXctdmlldy5zY3NzIiwgInNyYy9zdHlsZXMvaGFiaXQuc2NzcyIsICJzcmMvc3R5bGVzL2dsb2JhbC5zY3NzIiwgInNyYy9zdHlsZXMvbmF0aXZlLWxheW91dC5zY3NzIiwgInNyYy9zdHlsZXMvdmlldy1jb25maWcuc2NzcyIsICJzcmMvc3R5bGVzL3Rhc2stc3RhdHVzLnNjc3MiLCAic3JjL3N0eWxlcy90YXNrLXNlbGVjdGlvbi5zY3NzIiwgInNyYy9zdHlsZXMvb25ib2FyZGluZy5zY3NzIiwgInNyYy9zdHlsZXMvbm9pc2Uuc2NzcyIsICJzcmMvc3R5bGVzL2NoYW5nZWxvZy5zY3NzIiwgInNyYy9zdHlsZXMvdGltZWxpbmUtc2lkZWJhci5zY3NzIiwgInNyYy9zdHlsZXMvcmV3YXJkLnNjc3MiLCAic3JjL3N0eWxlcy90YXNrLWd1dHRlci5zY3NzIiwgInNyYy9zdHlsZXMvZmx1ZW50L2ZsdWVudC1tYWluLnNjc3MiLCAic3JjL3N0eWxlcy9mbHVlbnQvZmx1ZW50LXNlY29uZGFyeS5zY3NzIiwgInNyYy9zdHlsZXMvZmx1ZW50L2ZsdWVudC1jb250ZW50LWhlYWRlci5zY3NzIiwgInNyYy9zdHlsZXMvZmx1ZW50L2ZsdWVudC1wcm9qZWN0LXBvcG92ZXIuc2NzcyIsICJzcmMvc3R5bGVzL2ZsdWVudC9mbHVlbnQtbW9kZXJuLnNjc3MiXSwKICAic291cmNlc0NvbnRlbnQiOiBbIi8qIFNldCBEZWZhdWx0IFByb2dyZXNzIEJhciBGb3IgUGx1Z2luICovXG4uY20tdGFzay1wcm9ncmVzcy1iYXIge1xuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0bWFyZ2luLWxlZnQ6IDVweDtcblx0bWFyZ2luLWJvdHRvbTogMXB4O1xufVxuXG4ubm8tcHJvZ3Jlc3MtYmFyIC5jbS10YXNrLXByb2dyZXNzLWJhciB7XG5cdGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLkh5cGVyTUQtaGVhZGVyIC5jbS10YXNrLXByb2dyZXNzLWJhciB7XG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRtYXJnaW4tbGVmdDogNXB4O1xuXHRtYXJnaW4tYm90dG9tOiA1cHg7XG59XG5cbi5wcm9ncmVzcy1iYXItaW5saW5lIHtcblx0aGVpZ2h0OiA4cHg7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLyogUHJvZ3Jlc3MgYmFyIGNvbG9ycyBmb3IgZGlmZmVyZW50IHBlcmNlbnRhZ2VzIG9mIGNvbXBsZXRpb24gKi9cbi5wcm9ncmVzcy1iYXItaW5saW5lLWVtcHR5IHtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tcHJvZ3Jlc3MtYmFja2dyb3VuZC1jb2xvcik7XG59XG5cbi5wcm9ncmVzcy1iYXItaW5saW5lLTAge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1wcm9ncmVzcy0wLWNvbG9yKTtcbn1cblxuLnByb2dyZXNzLWJhci1pbmxpbmUtMSB7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLXByb2dyZXNzLTI1LWNvbG9yKTtcbn1cblxuLnByb2dyZXNzLWJhci1pbmxpbmUtMiB7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLXByb2dyZXNzLTUwLWNvbG9yKTtcbn1cblxuLnByb2dyZXNzLWJhci1pbmxpbmUtMyB7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLXByb2dyZXNzLTc1LWNvbG9yKTtcbn1cblxuLnByb2dyZXNzLWJhci1pbmxpbmUtY29tcGxldGUge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1wcm9ncmVzcy0xMDAtY29sb3IpO1xufVxuXG4vKiBDb2xvcnMgZm9yIGRpZmZlcmVudCB0YXNrIHN0YXR1c2VzICovXG4ucHJvZ3Jlc3MtY29tcGxldGVkIHtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGFzay1jb21wbGV0ZWQtY29sb3IpO1xuXHR6LWluZGV4OiAzO1xufVxuXG4ucHJvZ3Jlc3MtaW4tcHJvZ3Jlc3Mge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10YXNrLWluLXByb2dyZXNzLWNvbG9yKTtcblx0ei1pbmRleDogMjtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHR0b3A6IDA7XG5cdGhlaWdodDogMTAwJTtcbn1cblxuLnByb2dyZXNzLWFiYW5kb25lZCB7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRhc2stYWJhbmRvbmVkLWNvbG9yKTtcblx0ei1pbmRleDogMTtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHR0b3A6IDA7XG5cdGhlaWdodDogMTAwJTtcbn1cblxuLnByb2dyZXNzLXBsYW5uZWQge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10YXNrLXBsYW5uZWQtY29sb3IpO1xuXHR6LWluZGV4OiAxO1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdHRvcDogMDtcblx0aGVpZ2h0OiAxMDAlO1xufVxuXG4ucHJvZ3Jlc3MtYmFyLWlubGluZS1iYWNrZ3JvdW5kIHtcblx0Y29sb3I6ICMwMDAgIWltcG9ydGFudDtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tcHJvZ3Jlc3MtYmFja2dyb3VuZC1jb2xvcik7XG5cdGJvcmRlci1yYWRpdXM6IDEwcHg7XG5cdGZsZXgtZGlyZWN0aW9uOiByb3c7XG5cdGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0d2lkdGg6IDg1cHg7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0b3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLnByb2dyZXNzLWJhci1pbmxpbmUtYmFja2dyb3VuZC5oaWRkZW4ge1xuXHRkaXNwbGF5OiBub25lO1xufVxuXG4vKiBTdGF0dXMgaW5kaWNhdG9ycyBpbiB0aGUgdGFzayBudW1iZXIgZGlzcGxheSAqL1xuLmNtLXRhc2stcHJvZ3Jlc3MtYmFyIC50YXNrLXN0YXR1cy1pbmRpY2F0b3Ige1xuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdG1hcmdpbi1yaWdodDogMnB4O1xufVxuXG4uY20tdGFzay1wcm9ncmVzcy1iYXIgLmNvbXBsZXRlZC1pbmRpY2F0b3Ige1xuXHRjb2xvcjogdmFyKC0tdGFzay1jb21wbGV0ZWQtY29sb3IpO1xufVxuXG4uY20tdGFzay1wcm9ncmVzcy1iYXIgLmluLXByb2dyZXNzLWluZGljYXRvciB7XG5cdGNvbG9yOiB2YXIoLS10YXNrLWluLXByb2dyZXNzLWNvbG9yKTtcbn1cblxuLmNtLXRhc2stcHJvZ3Jlc3MtYmFyIC5hYmFuZG9uZWQtaW5kaWNhdG9yIHtcblx0Y29sb3I6IHZhcigtLXRhc2stYWJhbmRvbmVkLWNvbG9yKTtcbn1cblxuLmNtLXRhc2stcHJvZ3Jlc3MtYmFyIC5wbGFubmVkLWluZGljYXRvciB7XG5cdGNvbG9yOiB2YXIoLS10YXNrLXBsYW5uZWQtY29sb3IpO1xufVxuXG4vKiBTZXQgRGVmYXVsdCBQcm9ncmVzcyBCYXIgV2l0aCBOdW1iZXIgRm9yIFBsdWdpbiAqL1xuLmNtLXRhc2stcHJvZ3Jlc3MtYmFyLndpdGgtbnVtYmVyIHtcblx0ZGlzcGxheTogaW5saW5lLWZsZXg7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5cbi5IeXBlck1ELWhlYWRlclxuXHQuY20tdGFzay1wcm9ncmVzcy1iYXIud2l0aC1udW1iZXJcblx0LnByb2dyZXNzLWJhci1pbmxpbmUtYmFja2dyb3VuZCxcbi5IeXBlck1ELWhlYWRlciAuY20tdGFzay1wcm9ncmVzcy1iYXIud2l0aC1udW1iZXIgLnByb2dyZXNzLXN0YXR1cyB7XG5cdG1hcmdpbi1ib3R0b206IDVweDtcbn1cblxuLmNtLXRhc2stcHJvZ3Jlc3MtYmFyLndpdGgtbnVtYmVyIC5wcm9ncmVzcy1iYXItaW5saW5lLWJhY2tncm91bmQge1xuXHRtYXJnaW4tYm90dG9tOiAtMnB4O1xuXHR3aWR0aDogNDJweDtcbn1cblxuLmNtLXRhc2stcHJvZ3Jlc3MtYmFyLndpdGgtbnVtYmVyIC5wcm9ncmVzcy1zdGF0dXMge1xuXHRmb250LXNpemU6IDEzcHg7XG5cdG1hcmdpbi1sZWZ0OiAzcHg7XG59XG5cbi8qIEFkYXB0YXRpb25zIGZvciBkYXJrIHRoZW1lICovXG4udGhlbWUtZGFyayAucHJvZ3Jlc3MtY29tcGxldGVkIHtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGFzay1jb21wbGV0ZWQtY29sb3IpO1xufVxuXG4udGhlbWUtZGFyayAucHJvZ3Jlc3MtaW4tcHJvZ3Jlc3Mge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10YXNrLWluLXByb2dyZXNzLWNvbG9yKTtcbn1cblxuLnRoZW1lLWRhcmsgLnByb2dyZXNzLWFiYW5kb25lZCB7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRhc2stYWJhbmRvbmVkLWNvbG9yKTtcbn1cblxuLnRoZW1lLWRhcmsgLnByb2dyZXNzLXBsYW5uZWQge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10YXNrLXBsYW5uZWQtY29sb3IpO1xufVxuXG4udGFzay1wcm9ncmVzcy1iYXItcG9wb3ZlciB7XG5cdHdpZHRoOiA0MDBweDtcbn1cbiIsICIuY29uZmlybS1tb2RhbC1idXR0b25zIHtcblx0ZGlzcGxheTogZmxleDtcblx0Z2FwOiB2YXIoLS1zaXplLTQtMyk7XG5cdGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG5cdG1hcmdpbi10b3A6IHZhcigtLXNpemUtNC0zKTtcbn1cblxuLyogTGlzdCBDb25maWcgTW9kYWwgU3R5bGVzICovXG4ubGlzdC1jb25maWctbW9kYWwge1xuXHRtaW4td2lkdGg6IDQwMHB4O1xuXHRtYXgtd2lkdGg6IDYwMHB4O1xufVxuXG4ubGlzdC1jb25maWctZGVzY3JpcHRpb24ge1xuXHRtYXJnaW4tYm90dG9tOiB2YXIoLS1zaXplLTQtMyk7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXNtYWxsZXIpO1xufVxuXG4ubGlzdC1jb25maWctY29udGFpbmVyIHtcblx0bWFyZ2luOiB2YXIoLS1zaXplLTQtMykgMDtcblx0bWF4LWhlaWdodDogMzAwcHg7XG5cdG92ZXJmbG93LXk6IGF1dG87XG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpO1xuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTItMyk7XG59XG5cbi5saXN0LWNvbmZpZy1lbXB0eSB7XG5cdHRleHQtYWxpZ246IGNlbnRlcjtcblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTYpO1xufVxuXG4ubGlzdC1jb25maWctZW1wdHktdGV4dCB7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcblx0Zm9udC1zdHlsZTogaXRhbGljO1xuXHRtYXJnaW46IDA7XG59XG5cbi5saXN0LWNvbmZpZy1pdGVtIHtcblx0ZGlzcGxheTogZmxleDtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0Z2FwOiB2YXIoLS1zaXplLTItMik7XG5cdG1hcmdpbi1ib3R0b206IHZhcigtLXNpemUtMi0yKTtcbn1cblxuLmxpc3QtY29uZmlnLWl0ZW06bGFzdC1jaGlsZCB7XG5cdG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5saXN0LWNvbmZpZy1pbnB1dCB7XG5cdGZsZXg6IDE7XG5cdHBhZGRpbmc6IHZhcigtLXNpemUtMi0xKSB2YXIoLS1zaXplLTItMyk7XG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpO1xuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGwpO1xufVxuXG4ubGlzdC1jb25maWctaW5wdXQ6Zm9jdXMge1xuXHRvdXRsaW5lOiBub25lO1xuXHRib3JkZXItY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XG59XG5cbmJ1dHRvbi5saXN0LWNvbmZpZy1kZWxldGUtYnRuIHtcblx0ZGlzcGxheTogZmxleDtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdHdpZHRoOiAyNHB4O1xuXHRoZWlnaHQ6IDI0cHg7XG5cdGJvcmRlcjogbm9uZTtcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1lcnJvcik7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zKTtcblx0Y3Vyc29yOiBwb2ludGVyO1xuXHR0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMnMgZWFzZTtcblxuXHRib3gtc2hhZG93OiBub25lO1xufVxuXG4ubGlzdC1jb25maWctZGVsZXRlLWJ0bjpob3ZlciB7XG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItZXJyb3ItaG92ZXIpO1xufVxuXG4ubGlzdC1jb25maWctZGVsZXRlLWljb24ge1xuXHRmb250LXNpemU6IDE0cHg7XG5cdGZvbnQtd2VpZ2h0OiBib2xkO1xuXHRsaW5lLWhlaWdodDogMTtcbn1cblxuLyogQnVsayBEYXRlIFBpY2tlciBNb2RhbCBTdHlsZXMgKi9cbi5idWxrLWRhdGUtcGlja2VyLW1vZGFsIC5tb2RhbC1jb250ZW50IHtcblx0bWluLXdpZHRoOiAzMjBweDtcbn1cblxuLyogQnVsayBEYXRlIE9mZnNldCBNb2RhbCBTdHlsZXMgKi9cbi5idWxrLWRhdGUtb2Zmc2V0LW1vZGFsIC5tb2RhbC1jb250ZW50IHtcblx0bWluLXdpZHRoOiA0MDBweDtcblx0bWF4LXdpZHRoOiA1MDBweDtcbn1cblxuLmJ1bGstb2Zmc2V0LWJ1dHRvbi1jb250YWluZXIge1xuXHRkaXNwbGF5OiBncmlkO1xuXHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdChhdXRvLWZpdCwgbWlubWF4KDEyMHB4LCAxZnIpKTtcblx0Z2FwOiB2YXIoLS1zaXplLTItMyk7XG59XG5cbi5idWxrLW9mZnNldC1idXR0b24tY29udGFpbmVyIGJ1dHRvbiB7XG5cdHdpZHRoOiAxMDAlO1xufVxuXG4uYnVsay1vZmZzZXQtY3VzdG9tLXNlY3Rpb24ge1xuXHRtYXJnaW4tdG9wOiB2YXIoLS1zaXplLTQtNik7XG5cdHBhZGRpbmctdG9wOiB2YXIoLS1zaXplLTQtMyk7XG5cdGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XG59XG5cbi5idWxrLW9mZnNldC1jdXN0b20tc2VjdGlvbiBsYWJlbCB7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHRtYXJnaW4tYm90dG9tOiB2YXIoLS1zaXplLTItMyk7XG5cdGZvbnQtd2VpZ2h0OiA1MDA7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XG59XG5cbi5tb2RhbC1kZXNjcmlwdGlvbiB7XG5cdG1hcmdpbi1ib3R0b206IHZhcigtLXNpemUtNC0zKTtcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGwpO1xufVxuXG4vKiBNQ1AgTG9nIE1vZGFsIFN0eWxlcyAqL1xuLm1jcC1sb2ctbW9kYWwge1xuXHRtaW4td2lkdGg6IDcwMHB4O1xuXHRtYXgtd2lkdGg6IDkwMHB4O1xufVxuXG4ubWNwLWxvZy1oZWFkZXIge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRnYXA6IHZhcigtLXNpemUtNC0zKTtcblx0bWFyZ2luLWJvdHRvbTogdmFyKC0tc2l6ZS00LTMpO1xuXHRwYWRkaW5nLWJvdHRvbTogdmFyKC0tc2l6ZS00LTMpO1xuXHRib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xufVxuXG4ubWNwLWxvZy1zZWFyY2gtY29udGFpbmVyIHtcblx0ZmxleDogMTtcbn1cblxuLm1jcC1sb2ctc2VhcmNoLWlucHV0IHtcblx0d2lkdGg6IDEwMCU7XG5cdHBhZGRpbmc6IHZhcigtLXNpemUtMi0yKSB2YXIoLS1zaXplLTQtMik7XG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpO1xuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGwpO1xufVxuXG4ubWNwLWxvZy1zZWFyY2gtaW5wdXQ6Zm9jdXMge1xuXHRvdXRsaW5lOiBub25lO1xuXHRib3JkZXItY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XG59XG5cbi5tY3AtbG9nLXN0YXRzIHtcblx0bWFyZ2luLWJvdHRvbTogdmFyKC0tc2l6ZS00LTMpO1xuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTItMyk7XG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpO1xufVxuXG4ubWNwLWxvZy1zdGF0cy10ZXh0IHtcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsKTtcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5tY3AtbG9nLWNvbnRhaW5lciB7XG5cdG1heC1oZWlnaHQ6IDUwMHB4O1xuXHRvdmVyZmxvdy15OiBhdXRvO1xuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTItMik7XG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpO1xuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xufVxuXG4ubWNwLWxvZy1lbXB0eSB7XG5cdHRleHQtYWxpZ246IGNlbnRlcjtcblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTgpO1xuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XG5cdGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cblxuLm1jcC1sb2ctZW50cnkge1xuXHRtYXJnaW4tYm90dG9tOiB2YXIoLS1zaXplLTItMyk7XG5cdHBhZGRpbmc6IHZhcigtLXNpemUtMi0zKTtcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcbn1cblxuLm1jcC1sb2ctZW50cnk6bGFzdC1jaGlsZCB7XG5cdG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5tY3AtbG9nLWVycm9yIHtcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1lcnJvcik7XG59XG5cbi5tY3AtbG9nLWVudHJ5LWhlYWRlciB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdGdhcDogdmFyKC0tc2l6ZS00LTIpO1xuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGwpO1xufVxuXG4ubWNwLWxvZy10aW1lc3RhbXAge1xuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XG5cdGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LW1vbm9zcGFjZSk7XG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zbWFsbGVzdCk7XG5cdG1pbi13aWR0aDogODBweDtcbn1cblxuLm1jcC1sb2ctdG9vbC1uYW1lIHtcblx0Zm9udC13ZWlnaHQ6IDUwMDtcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcblx0ZmxleDogMTtcbn1cblxuLm1jcC1sb2ctZHVyYXRpb24ge1xuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XG5cdGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LW1vbm9zcGFjZSk7XG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zbWFsbGVzdCk7XG59XG5cbi5tY3AtbG9nLXNlc3Npb24taWQge1xuXHRjb2xvcjogdmFyKC0tdGV4dC1mYWludCk7XG5cdGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LW1vbm9zcGFjZSk7XG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zbWFsbGVzdCk7XG5cdGN1cnNvcjogaGVscDtcbn1cblxuLm1jcC1sb2ctdG9nZ2xlLWJ0biB7XG5cdHBhZGRpbmc6IDJweCA2cHg7XG5cdGJvcmRlcjogbm9uZTtcblx0YmFja2dyb3VuZDogdmFyKC0taW50ZXJhY3RpdmUtbm9ybWFsKTtcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XG5cdGN1cnNvcjogcG9pbnRlcjtcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXNtYWxsZXN0KTtcblx0dHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjJzIGVhc2U7XG59XG5cbi5tY3AtbG9nLXRvZ2dsZS1idG46aG92ZXIge1xuXHRiYWNrZ3JvdW5kOiB2YXIoLS1pbnRlcmFjdGl2ZS1ob3Zlcik7XG59XG5cbi5tY3AtbG9nLWRldGFpbHMge1xuXHRtYXJnaW4tdG9wOiB2YXIoLS1zaXplLTItMyk7XG5cdHBhZGRpbmctdG9wOiB2YXIoLS1zaXplLTItMyk7XG5cdGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XG59XG5cbi5tY3AtbG9nLXNlY3Rpb24ge1xuXHRtYXJnaW4tYm90dG9tOiB2YXIoLS1zaXplLTItMyk7XG59XG5cbi5tY3AtbG9nLXNlY3Rpb246bGFzdC1jaGlsZCB7XG5cdG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5tY3AtbG9nLXNlY3Rpb24tdGl0bGUge1xuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGxlcik7XG5cdGZvbnQtd2VpZ2h0OiA2MDA7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XG5cdG1hcmdpbi1ib3R0b206IHZhcigtLXNpemUtMi0xKTtcbn1cblxuLm1jcC1sb2ctZXJyb3ItdGl0bGUge1xuXHRjb2xvcjogdmFyKC0tdGV4dC1lcnJvcik7XG59XG5cbi5tY3AtbG9nLXNlY3Rpb24tY29udGVudCB7XG5cdGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LW1vbm9zcGFjZSk7XG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zbWFsbGVzdCk7XG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpO1xuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTItMik7XG5cdG1hcmdpbjogMDtcblx0b3ZlcmZsb3cteDogYXV0bztcblx0d2hpdGUtc3BhY2U6IHByZS13cmFwO1xuXHR3b3JkLWJyZWFrOiBicmVhay13b3JkO1xuXHRtYXgtaGVpZ2h0OiAzMDBweDtcblx0b3ZlcmZsb3cteTogYXV0bztcbn1cblxuLm1jcC1sb2ctZXJyb3ItY29udGVudCB7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LWVycm9yKTtcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1lcnJvcik7XG59XG5cbi5tY3AtbG9nLXRydW5jYXRlZC1iYWRnZSB7XG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zbWFsbGVzdCk7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcblx0Zm9udC13ZWlnaHQ6IG5vcm1hbDtcblx0Zm9udC1zdHlsZTogaXRhbGljO1xufVxuIiwgIi8qIERhdGUgUGlja2VyIENvbXBvbmVudCBTdHlsZXMgKi9cbi5kYXRlLXBpY2tlci1yb290LWNvbnRhaW5lciB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdHdpZHRoOiAxMDAlO1xuXHRtaW4td2lkdGg6IDUwMHB4O1xuXHRtYXgtd2lkdGg6IDYwMHB4O1xufVxuXG4uZGF0ZS1waWNrZXItcm9vdC1jb250YWluZXIgLmRhdGUtcGlja2VyLW1haW4tcGFuZWwge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRnYXA6IHZhcigtLXNpemUtMi0zKTtcblx0cGFkZGluZzogdmFyKC0tc2l6ZS0yLTMpO1xufVxuXG4uZGF0ZS1waWNrZXItcm9vdC1jb250YWluZXIgLmRhdGUtcGlja2VyLWxlZnQtcGFuZWwge1xuXHRmbGV4OiAxO1xuXHRtaW4td2lkdGg6IDIwMHB4O1xuXHRib3JkZXItcmlnaHQ6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XG59XG5cbi5kYXRlLXBpY2tlci1yb290LWNvbnRhaW5lciAuZGF0ZS1waWNrZXItcmlnaHQtcGFuZWwge1xuXHRmbGV4OiAxO1xuXHRtaW4td2lkdGg6IDI1MHB4O1xufVxuXG4uZGF0ZS1waWNrZXItcm9vdC1jb250YWluZXIgLmRhdGUtcGlja2VyLXNlY3Rpb24tdGl0bGUge1xuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktbWVkaXVtKTtcblx0Zm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtYm9sZCk7XG5cdG1hcmdpbi1ib3R0b206IHZhcigtLXNpemUtNC0yKTtcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcbn1cblxuLyogUXVpY2sgT3B0aW9ucyBTdHlsZXMgKi9cbi5kYXRlLXBpY2tlci1yb290LWNvbnRhaW5lciAucXVpY2stb3B0aW9ucy1jb250YWluZXIge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRnYXA6IHZhcigtLXNpemUtMi0xKTtcblx0bWF4LWhlaWdodDogMTk1cHg7XG5cdG92ZXJmbG93OiBhdXRvO1xuXHRvdmVyZmxvdy14OiBoaWRkZW47XG59XG5cbi5kYXRlLXBpY2tlci1yb290LWNvbnRhaW5lciAucXVpY2stb3B0aW9uLWl0ZW0ge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdHBhZGRpbmc6IHZhcigtLXNpemUtMi0yKSB2YXIoLS1zaXplLTQtMik7XG5cdGN1cnNvcjogcG9pbnRlcjtcblx0dHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjJzIGVhc2U7XG59XG5cbi5kYXRlLXBpY2tlci1yb290LWNvbnRhaW5lciAucXVpY2stb3B0aW9uLWl0ZW06aG92ZXIge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyKTtcbn1cblxuLmRhdGUtcGlja2VyLXJvb3QtY29udGFpbmVyIC5xdWljay1vcHRpb24taXRlbS5zZWxlY3RlZCB7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XG59XG5cbi5kYXRlLXBpY2tlci1yb290LWNvbnRhaW5lciAucXVpY2stb3B0aW9uLWl0ZW0uY2xlYXItb3B0aW9uIHtcblx0Ym9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcblx0bWFyZ2luLXRvcDogdmFyKC0tc2l6ZS0yLTIpO1xuXHRwYWRkaW5nLXRvcDogdmFyKC0tc2l6ZS0yLTMpO1xuXHRjb2xvcjogdmFyKC0tdGV4dC1lcnJvcik7XG59XG5cbi5kYXRlLXBpY2tlci1yb290LWNvbnRhaW5lciAucXVpY2stb3B0aW9uLWl0ZW0uY2xlYXItb3B0aW9uOmhvdmVyIHtcblx0Y29sb3I6IHZhcigtLXRleHQtb24tYWNjZW50KTtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1lcnJvci1ob3Zlcik7XG59XG5cbi5kYXRlLXBpY2tlci1yb290LWNvbnRhaW5lciAucXVpY2stb3B0aW9uLWxhYmVsIHtcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsKTtcblx0Zm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtbWVkaXVtKTtcbn1cblxuLmRhdGUtcGlja2VyLXJvb3QtY29udGFpbmVyIC5xdWljay1vcHRpb24tZGF0ZSB7XG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbGVyKTtcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xuXHRmb250LWZhbWlseTogdmFyKC0tZm9udC1tb25vc3BhY2UpO1xufVxuXG4uZGF0ZS1waWNrZXItcm9vdC1jb250YWluZXIgLnF1aWNrLW9wdGlvbi1pdGVtLnNlbGVjdGVkIC5xdWljay1vcHRpb24tZGF0ZSB7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XG59XG5cbi8qIENhbGVuZGFyIFN0eWxlcyAqL1xuLmRhdGUtcGlja2VyLXJvb3QtY29udGFpbmVyIC5jYWxlbmRhci1jb250YWluZXIge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xufVxuXG4uZGF0ZS1waWNrZXItcm9vdC1jb250YWluZXIgLmNhbGVuZGFyLWhlYWRlciB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0bWFyZ2luLWJvdHRvbTogdmFyKC0tc2l6ZS00LTIpO1xuXHRwYWRkaW5nOiAwIHZhcigtLXNpemUtMi0yKTtcbn1cblxuLmRhdGUtcGlja2VyLXJvb3QtY29udGFpbmVyIC5jYWxlbmRhci1uYXYtYnRuIHtcblx0ZGlzcGxheTogZmxleDtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdHdpZHRoOiAzMnB4O1xuXHRoZWlnaHQ6IDMycHg7XG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zKTtcblx0Y3Vyc29yOiBwb2ludGVyO1xuXHR0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMnMgZWFzZTtcbn1cblxuLmRhdGUtcGlja2VyLXJvb3QtY29udGFpbmVyIC5jYWxlbmRhci1uYXYtYnRuOmhvdmVyIHtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3Zlcik7XG59XG5cbi5kYXRlLXBpY2tlci1yb290LWNvbnRhaW5lciAuY2FsZW5kYXItbW9udGgteWVhciB7XG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1tZWRpdW0pO1xuXHRmb250LXdlaWdodDogdmFyKC0tZm9udC1ib2xkKTtcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcbn1cblxuLmRhdGUtcGlja2VyLXJvb3QtY29udGFpbmVyIC5jYWxlbmRhci1ncmlkIHtcblx0ZGlzcGxheTogZ3JpZDtcblx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNywgMWZyKTtcblx0Z2FwOiAxcHg7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpO1xuXHRvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4uZGF0ZS1waWNrZXItcm9vdC1jb250YWluZXIgLmNhbGVuZGFyLWRheS1oZWFkZXIge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XG5cdHBhZGRpbmc6IHZhcigtLXNpemUtMi0yKTtcblx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGxlcik7XG5cdGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LWJvbGQpO1xuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XG59XG5cbi5kYXRlLXBpY2tlci1yb290LWNvbnRhaW5lciAuY2FsZW5kYXItZGF5IHtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcblx0cGFkZGluZzogdmFyKC0tc2l6ZS0yLTIpO1xuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbCk7XG5cdGN1cnNvcjogcG9pbnRlcjtcblx0dHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjJzIGVhc2U7XG5cdG1pbi1oZWlnaHQ6IDMycHg7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuXG4uZGF0ZS1waWNrZXItcm9vdC1jb250YWluZXIgLmNhbGVuZGFyLWRheTpob3ZlciB7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpO1xufVxuXG4uZGF0ZS1waWNrZXItcm9vdC1jb250YWluZXIgLmNhbGVuZGFyLWRheS5vdGhlci1tb250aCB7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LWZhaW50KTtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xufVxuXG4uZGF0ZS1waWNrZXItcm9vdC1jb250YWluZXIgLmNhbGVuZGFyLWRheS50b2RheSB7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudC1ob3Zlcik7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XG5cdGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LWJvbGQpO1xufVxuXG4uZGF0ZS1waWNrZXItcm9vdC1jb250YWluZXIgLmNhbGVuZGFyLWRheS5zZWxlY3RlZCB7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XG5cdGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LWJvbGQpO1xufVxuXG4uZGF0ZS1waWNrZXItcm9vdC1jb250YWluZXIgLmNhbGVuZGFyLWRheS50b2RheS5zZWxlY3RlZCB7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XG5cdGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDJweCB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XG59XG5cbi8qIFBvcG92ZXIgU3R5bGVzICovXG4uZGF0ZS1waWNrZXItcG9wb3Zlci50Zy1tZW51IHtcblx0ei1pbmRleDogMjA7XG5cdHBvc2l0aW9uOiBmaXhlZDtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XG5cdGJveC1zaGFkb3c6IHZhcigtLXNoYWRvdy1sKTtcblx0bWF4LWhlaWdodDogODB2aDtcblx0b3ZlcmZsb3c6IGF1dG87XG59XG5cbi5kYXRlLXBpY2tlci1wb3BvdmVyLnRnLW1lbnUgLmRhdGUtcGlja2VyLXBvcG92ZXItY29udGVudCB7XG5cdHBhZGRpbmc6IDA7XG59XG5cbi8qIE1vYmlsZSBSZXNwb25zaXZlICovXG5AbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcblx0LmRhdGUtcGlja2VyLXJvb3QtY29udGFpbmVyIC5kYXRlLXBpY2tlci1tYWluLXBhbmVsIHtcblx0XHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRcdGdhcDogdmFyKC0tc2l6ZS00LTIpO1xuXHR9XG5cblx0LmRhdGUtcGlja2VyLXJvb3QtY29udGFpbmVyIC5kYXRlLXBpY2tlci1sZWZ0LXBhbmVsIHtcblx0XHRib3JkZXItcmlnaHQ6IG5vbmU7XG5cdFx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcblx0XHRwYWRkaW5nLXJpZ2h0OiAwO1xuXHRcdHBhZGRpbmctYm90dG9tOiB2YXIoLS1zaXplLTQtMik7XG5cdH1cblxuXHQuZGF0ZS1waWNrZXItcm9vdC1jb250YWluZXIge1xuXHRcdG1pbi13aWR0aDogMzAwcHg7XG5cdFx0bWF4LXdpZHRoOiA0MDBweDtcblx0fVxuXG5cdC5kYXRlLXBpY2tlci1yb290LWNvbnRhaW5lciAuY2FsZW5kYXItZGF5IHtcblx0XHRtaW4taGVpZ2h0OiA0MHB4O1xuXHRcdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1tZWRpdW0pO1xuXHR9XG59XG5cbi8qIFdpZGdldCBFcnJvciBTdHlsZXMgKi9cbi5kYXRlLXBpY2tlci1yb290LWNvbnRhaW5lciAuZGF0ZS1waWNrZXItd2lkZ2V0LWVycm9yIHtcblx0Y29sb3I6IHZhcigtLXRleHQtZXJyb3IpO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWVycm9yKTtcblx0cGFkZGluZzogdmFyKC0tc2l6ZS0yLTEpIHZhcigtLXNpemUtMi0yKTtcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpO1xuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGxlcik7XG59XG4iLCAiLnRhc2stZGV0YWlscy1jb250YWluZXIgLnBhbmVsLXRvZ2dsZS1jb250YWluZXIge1xuXHRsZWZ0OiAxMHB4O1xufVxuXG4vKiBEZXRhaWwgUGFuZWwgU3R5bGVzICovXG4udGFzay1kZXRhaWxzLWNvbnRhaW5lciB7XG5cdHdpZHRoOiAzMDBweDtcblx0ZmxleC1zaHJpbms6IDA7XG5cdGJvcmRlci1sZWZ0OiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xuXHRoZWlnaHQ6IDEwMCU7XG5cdG92ZXJmbG93LXk6IGF1dG87XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdG1pbi13aWR0aDogMjUwcHg7XG5cdG1heC13aWR0aDogNDAwcHg7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcblx0b3JkZXI6IDE7XG59XG5cbi8qIERldGFpbHMgcGFuZWwgdmlzaWJpbGl0eSAqL1xuLnRhc2stZ2VuaXVzLWNvbnRhaW5lci5kZXRhaWxzLWhpZGRlbiAudGFzay1kZXRhaWxzLWNvbnRhaW5lciB7XG5cdHdpZHRoOiAwO1xuXHRvcGFjaXR5OiAwO1xuXHRtYXJnaW4tcmlnaHQ6IC0zMDBweDtcblx0b3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLnRhc2stZ2VuaXVzLWNvbnRhaW5lci5kZXRhaWxzLXZpc2libGUgLnRhc2stZGV0YWlscy1jb250YWluZXIge1xuXHR3aWR0aDogMzUwcHg7XG5cdG9wYWNpdHk6IDE7XG5cdG1hcmdpbi1yaWdodDogMDtcbn1cblxuLyogTW9iaWxlIHZpZXcgLSBzbGlkZSBmcm9tIHJpZ2h0ICovXG4uaXMtcGhvbmUgLnRhc2stZGV0YWlscy1jb250YWluZXIsXG4uaXMtbW9iaWxlIC50YXNrLWRldGFpbHMtY29udGFpbmVyIHtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHRyaWdodDogMDtcblx0dG9wOiAwO1xuXHRoZWlnaHQ6IDEwMCU7XG5cdHdpZHRoOiAxMDAlO1xuXHRtYXgtd2lkdGg6IDEwMCU7XG5cdHotaW5kZXg6IDEwO1xuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSk7XG59XG5cbi5pcy1waG9uZSAudGFzay1nZW5pdXMtY29udGFpbmVyLmRldGFpbHMtaGlkZGVuIC50YXNrLWRldGFpbHMtY29udGFpbmVyLFxuLmlzLW1vYmlsZSAudGFzay1nZW5pdXMtY29udGFpbmVyLmRldGFpbHMtaGlkZGVuIC50YXNrLWRldGFpbHMtY29udGFpbmVyLFxuLmlzLW1vYmlsZSAudGctZmx1ZW50LWNvbnRhaW5lci5kZXRhaWxzLWhpZGRlbiAudGFzay1kZXRhaWxzLWNvbnRhaW5lciB7XG5cdHdpZHRoOiAxMDAlO1xuXHRtYXJnaW4tcmlnaHQ6IDA7XG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKTtcbn1cblxuLmlzLXBob25lIC50YXNrLWdlbml1cy1jb250YWluZXIuZGV0YWlscy12aXNpYmxlIC50YXNrLWRldGFpbHMtY29udGFpbmVyLFxuLmlzLW1vYmlsZSAudGFzay1nZW5pdXMtY29udGFpbmVyLmRldGFpbHMtdmlzaWJsZSAudGFzay1kZXRhaWxzLWNvbnRhaW5lcixcbi5pcy1tb2JpbGUgLnRnLWZsdWVudC1jb250YWluZXIuZGV0YWlscy12aXNpYmxlIC50YXNrLWRldGFpbHMtY29udGFpbmVyIHtcblx0d2lkdGg6IGNhbGMoMTAwJSAtIHZhcigtLXNpemUtNC0xMikpO1xuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG59XG5cbi8qIEFkZCBvdmVybGF5IHdoZW4gZGV0YWlscyBhcmUgdmlzaWJsZSBvbiBtb2JpbGUgKi9cbi5pcy1waG9uZSAudGFzay1nZW5pdXMtY29udGFpbmVyLmRldGFpbHMtdmlzaWJsZTo6YmVmb3JlLFxuLmlzLW1vYmlsZSAudGFzay1nZW5pdXMtY29udGFpbmVyLmRldGFpbHMtdmlzaWJsZTo6YmVmb3JlLFxuLmlzLW1vYmlsZSAudGctZmx1ZW50LWNvbnRhaW5lci5kZXRhaWxzLXZpc2libGU6OmJlZm9yZSB7XG5cdGNvbnRlbnQ6IFwiXCI7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0dG9wOiAwO1xuXHRsZWZ0OiAwO1xuXHR3aWR0aDogMTAwJTtcblx0aGVpZ2h0OiAxMDAlO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWNvdmVyKTtcblx0b3BhY2l0eTogMC41O1xuXHR6LWluZGV4OiA1O1xuXHR0cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3MgZWFzZS1pbi1vdXQ7XG59XG5cbi5pcy1waG9uZSAuZGV0YWlscy1jbG9zZS1idG4sXG4uaXMtbW9iaWxlIC5kZXRhaWxzLWNsb3NlLWJ0biB7XG5cdHdpZHRoOiAyNHB4O1xuXHRoZWlnaHQ6IDI0cHg7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuXG4uaXMtcGhvbmUgLmRldGFpbHMtaGVhZGVyLFxuLmlzLW1vYmlsZSAuZGV0YWlscy1oZWFkZXIge1xuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtNCk7XG59XG5cbi5kZXRhaWxzLWVtcHR5IHtcblx0ZGlzcGxheTogZmxleDtcblx0aGVpZ2h0OiAxMDAlO1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XG5cdHBhZGRpbmc6IDIwcHg7XG59XG5cbi8qIERldGFpbHMgY29udGVudCAqL1xuLmRldGFpbHMtaGVhZGVyIHtcblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTQpO1xuXHRwYWRkaW5nLWJvdHRvbTogdmFyKC0tc2l6ZS00LTMpO1xuXHRwYWRkaW5nLXRvcDogdmFyKC0tc2l6ZS00LTMpO1xuXHRmb250LXdlaWdodDogNjAwO1xuXHRib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdGZvbnQtc2l6ZTogMS4xZW07XG59XG5cbi5kZXRhaWxzLWNvbnRlbnQge1xuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtNCk7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdGdhcDogdmFyKC0tc2l6ZS00LTIpO1xuXHRvdmVyZmxvdy15OiBhdXRvO1xuXHRwYWRkaW5nLWJvdHRvbTogbWF4KHZhcigtLXNhZmUtYXJlYS1pbnNldC1ib3R0b20pLCB2YXIoLS1zaXplLTQtOCkpO1xufVxuXG4uZGV0YWlscy1uYW1lIHtcblx0bWFyZ2luOiAwIDAgOHB4IDA7XG5cdHBhZGRpbmc6IDA7XG5cdGZvbnQtc2l6ZTogMS4zZW07XG5cdGxpbmUtaGVpZ2h0OiAxLjM7XG59XG5cbi5kZXRhaWxzLXN0YXR1cy1jb250YWluZXIge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5cbi5kZXRhaWxzLXN0YXR1cy1sYWJlbCB7XG5cdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbCk7XG59XG5cbi5kZXRhaWxzLXN0YXR1cyB7XG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0cGFkZGluZzogNHB4IDhweDtcblx0Ym9yZGVyLXJhZGl1czogNHB4O1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1hY2NlbnQpO1xuXHRjb2xvcjogdmFyKC0tdGV4dC1vbi1hY2NlbnQpO1xuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGwpO1xufVxuXG4uZGV0YWlscy1zdGF0dXMtc2VsZWN0b3Ige1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWV2ZW5seTtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cblxuLm1lbnUtaXRlbS10aXRsZTpoYXMoLnN0YXR1cy1vcHRpb24pIHtcblx0ZGlzcGxheTogZmxleDtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblxuXHRnYXA6IDRweDtcbn1cblxuLm1lbnUtaXRlbTpoYXMoLnN0YXR1cy1vcHRpb24tY2hlY2tib3gpIC5tZW51LWl0ZW0taWNvbiB7XG5cdGRpc3BsYXk6IG5vbmU7XG59XG5cbi5tZW51LWl0ZW06aGFzKC5zdGF0dXMtb3B0aW9uLWljb24pIC5tZW51LWl0ZW0taWNvbiB7XG5cdGRpc3BsYXk6IG5vbmU7XG59XG5cbi5zdGF0dXMtb3B0aW9uLWljb24ge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuXHRtYXJnaW4tcmlnaHQ6IHZhcigtLXNpemUtMi0yKTtcbn1cblxuLnN0YXR1cy1vcHRpb24tY2hlY2tib3gge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cblxuLnN0YXR1cy1vcHRpb24ge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuXHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG4uc3RhdHVzLW9wdGlvbi5jdXJyZW50IHtcblx0b3V0bGluZS1vZmZzZXQ6IDJweDtcblx0b3V0bGluZTogMXB4IHNvbGlkXG5cdFx0aHNsKHZhcigtLWFjY2VudC1oKSwgdmFyKC0tYWNjZW50LXMpLCB2YXIoLS1hY2NlbnQtbCksIDAuMyk7XG5cdG91dGxpbmUtc3R5bGU6IGRhc2hlZDtcbn1cblxuLnN0YXR1cy1vcHRpb246bm90KC5jdXJyZW50KSB7XG5cdG9wYWNpdHk6IDAuODtcbn1cblxuLnN0YXR1cy1vcHRpb246bm90KC5jdXJyZW50KTpob3ZlciB7XG5cdG9wYWNpdHk6IDE7XG59XG5cbi5zdGF0dXMtb3B0aW9uIGlucHV0LnRhc2stbGlzdC1pdGVtLWNoZWNrYm94IHtcblx0bWFyZ2luLWlubGluZS1lbmQ6IDA7XG59XG5cbi5kZXRhaWxzLW1ldGFkYXRhIHtcblx0ZGlzcGxheTogZmxleDtcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0Z2FwOiB2YXIoLS1zaXplLTQtMik7XG5cdG1hcmdpbi10b3A6IHZhcigtLXNpemUtNC0yKTtcblx0bWFyZ2luLWJvdHRvbTogdmFyKC0tc2l6ZS00LTIpO1xufVxuXG4ubWV0YWRhdGEtZmllbGQge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRnYXA6IDJweDtcbn1cblxuLm1ldGFkYXRhLWxhYmVsIHtcblx0Zm9udC1zaXplOiAwLjhlbTtcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xufVxuXG4ubWV0YWRhdGEtdmFsdWUge1xuXHR3b3JkLWJyZWFrOiBicmVhay13b3JkO1xuXHRmb250LXNpemU6IDAuOTVlbTtcbn1cblxuLmRldGFpbHMtYWN0aW9ucyB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcblx0Z2FwOiA4cHg7XG5cdG1hcmdpbi1ib3R0b206IHZhcigtLXNpemUtNC00KTtcbn1cblxuLmRldGFpbHMtZWRpdC1idG4sXG4uZGV0YWlscy10b2dnbGUtYnRuIHtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtbm9ybWFsKTtcblx0LyogYm9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpOyAqL1xuXHRib3JkZXItcmFkaXVzOiA0cHg7XG5cdHBhZGRpbmc6IDZweCAxMnB4O1xuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xuXHRjdXJzb3I6IHBvaW50ZXI7XG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbCk7XG59XG5cbi5kZXRhaWxzLWVkaXQtYnRuOmhvdmVyLFxuLmRldGFpbHMtdG9nZ2xlLWJ0bjpob3ZlciB7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWhvdmVyKTtcbn1cblxuLmRldGFpbHMtdG9nZ2xlLWJ0biB7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XG59XG5cbi8qIFRhc2sgZWRpdGluZyBmb3JtIHN0eWxlcyAqL1xuLmRldGFpbHMtZWRpdC1mb3JtIHtcblx0ZGlzcGxheTogZmxleDtcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0Z2FwOiAxMnB4O1xufVxuXG4uZGV0YWlscy1mb3JtLWZpZWxkIHtcblx0ZGlzcGxheTogZmxleDtcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0Z2FwOiA0cHg7XG59XG5cbi5kZXRhaWxzLWZvcm0tbGFiZWwge1xuXHRmb250LXNpemU6IDAuOGVtO1xuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XG5cdGZvbnQtd2VpZ2h0OiA1MDA7XG59XG5cbi5kZXRhaWxzLWZvcm0taW5wdXQge1xuXHR3aWR0aDogMTAwJTtcbn1cblxuLmRldGFpbHMtZWRpdC1jb250ZW50IHtcblx0Zm9udC13ZWlnaHQ6IDUwMDtcbn1cblxuLmRldGFpbHMtZm9ybS1pbnB1dCBpbnB1dCxcbi5kZXRhaWxzLWZvcm0taW5wdXQgc2VsZWN0IHtcblx0d2lkdGg6IDEwMCU7XG5cdHBhZGRpbmc6IDZweCA4cHg7XG5cdGJvcmRlci1yYWRpdXM6IDRweDtcblx0LyogYm9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpOyAqL1xuXHQvKiBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpOyAqL1xufVxuXG4uZGF0ZS1pbnB1dCB7XG5cdHdpZHRoOiAxMDAlO1xuXHRwYWRkaW5nOiA2cHggOHB4O1xuXHRib3JkZXItcmFkaXVzOiA0cHg7XG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcbn1cblxuLmZpZWxkLWRlc2NyaXB0aW9uIHtcblx0Zm9udC1zaXplOiAwLjdlbTtcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xuXHRtYXJnaW4tdG9wOiAycHg7XG59XG5cbi50YWdzLWVkaXRvciB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGZsZXgtd3JhcDogd3JhcDtcblx0Z2FwOiA2cHg7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5cbi50YWdzLWVkaXRvcl9fbGlzdCB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGZsZXgtd3JhcDogd3JhcDtcblx0Z2FwOiA2cHg7XG5cdGZsZXg6IDE7XG59XG5cbi50YWdzLWVkaXRvcl9fdGFnIHtcblx0ZGlzcGxheTogaW5saW5lLWZsZXg7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdGdhcDogNHB4O1xuXHRwYWRkaW5nOiAycHggOHB4O1xuXHRib3JkZXItcmFkaXVzOiA5OTlweDtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XG5cdGZvbnQtc2l6ZTogMC44ZW07XG5cdGxpbmUtaGVpZ2h0OiAxLjQ7XG59XG5cbi50YWdzLWVkaXRvcl9fdGFnLWxhYmVsIHtcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcbn1cblxuLnRhZ3MtZWRpdG9yX19yZW1vdmUge1xuXHRiYWNrZ3JvdW5kOiBub25lO1xuXHRib3JkZXI6IG5vbmU7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcblx0Y3Vyc29yOiBwb2ludGVyO1xuXHRmb250LXNpemU6IDAuOGVtO1xuXHRsaW5lLWhlaWdodDogMTtcblx0cGFkZGluZzogMCAycHg7XG59XG5cbi50YWdzLWVkaXRvcl9fcmVtb3ZlOmhvdmVyIHtcblx0Y29sb3I6IHZhcigtLXRleHQtZXJyb3IpO1xufVxuXG4udGFncy1lZGl0b3JfX2FkZCB7XG5cdGJhY2tncm91bmQ6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XG5cdGJvcmRlcjogbm9uZTtcblx0Ym9yZGVyLXJhZGl1czogNTAlO1xuXHR3aWR0aDogMjRweDtcblx0aGVpZ2h0OiAyNHB4O1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0Y3Vyc29yOiBwb2ludGVyO1xuXHRmb250LXNpemU6IDFlbTtcbn1cblxuLnRhZ3MtZWRpdG9yX19hZGQ6aG92ZXIge1xuXHRiYWNrZ3JvdW5kOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQtaG92ZXIpO1xufVxuXG4udGFncy1lZGl0b3JfX2lucHV0IHtcblx0bWluLXdpZHRoOiAxNDBweDtcbn1cblxuLnRhZ3MtZWRpdG9yX19pbnB1dCBpbnB1dCB7XG5cdHdpZHRoOiAxMDAlO1xuXHRwYWRkaW5nOiA0cHggNnB4O1xufVxuXG4udGFncy1lZGl0b3JfX2lucHV0LS1oaWRkZW4ge1xuXHRkaXNwbGF5OiBub25lO1xufVxuXG4udGFncy1lZGl0b3JfX2VtcHR5IHtcblx0Zm9udC1zaXplOiAwLjhlbTtcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xufVxuXG4udGFncy1lZGl0b3JfX3RhZyBkaXYuY2xpY2thYmxlLWljb24ge1xuXHRwYWRkaW5nOiAwO1xuXHQtLWljb24tc2l6ZTogMTJweDtcbn1cblxuLmRldGFpbHMtZm9ybS1idXR0b25zIHtcblx0ZGlzcGxheTogZmxleDtcblx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXHRtYXJnaW4tdG9wOiAxNnB4O1xuXHRnYXA6IDhweDtcbn1cblxuLmRldGFpbHMtZm9ybS1idXR0b25zIGJ1dHRvbiB7XG5cdGZsZXg6IDE7XG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuXG4uZGV0YWlscy1mb3JtLWVycm9yIHtcblx0Y29sb3I6IHZhcigtLXRleHQtZXJyb3IpO1xuXHRmb250LXNpemU6IDAuOGVtO1xuXHRtYXJnaW4tdG9wOiA4cHg7XG5cdHBhZGRpbmc6IDhweDtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1lcnJvcik7XG5cdGJvcmRlci1yYWRpdXM6IDRweDtcbn1cblxuLmRldGFpbHMtZWRpdC1maWxlLWJ0biB7XG5cdC8qIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWludGVyYWN0aXZlLW5vcm1hbCk7ICovXG5cdC8qIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTsgKi9cblx0Ym9yZGVyLXJhZGl1czogNHB4O1xuXHRwYWRkaW5nOiA2cHggMTJweDtcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcblx0Y3Vyc29yOiBwb2ludGVyO1xuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGwpO1xufVxuXG4uZGV0YWlscy1lZGl0LWZpbGUtYnRuOmhvdmVyIHtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtaG92ZXIpO1xufVxuXG4vKiBmbHVlbnQgQ29udGFpbmVyIHNwZWNpZmljIHN0eWxlcyBmb3IgbW9iaWxlICovXG4uaXMtbW9iaWxlIC50Zy1mbHVlbnQtY29udGFpbmVyIC50YXNrLWRldGFpbHMtY29udGFpbmVyIHtcblx0cG9zaXRpb246IGZpeGVkO1xuXHRyaWdodDogMDtcblx0dG9wOiAwO1xuXHRib3R0b206IDA7XG5cdGhlaWdodDogMTAwdmg7XG5cdHdpZHRoOiA4NXZ3O1xuXHRtYXgtd2lkdGg6IDQwMHB4O1xuXHR6LWluZGV4OiAxMDAxOyAvKiBBYm92ZSBkcmF3ZXIgb3ZlcmxheSAqL1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XG5cdGJveC1zaGFkb3c6IC00cHggMCAyMHB4IHJnYmEoMCwgMCwgMCwgMC4yKTtcbn1cblxuLmlzLW1vYmlsZSAudGFzay1kZXRhaWxzLWNvbnRhaW5lciAuZGV0YWlscy1jbG9zZS1idG46aG92ZXIge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWFjdGl2ZS1ob3Zlcik7XG59XG5cbi5pcy1tb2JpbGUgLmRldGFpbHMtY29udGVudCB7XG5cdHBhZGRpbmctYm90dG9tOiB2YXIoLS1zaXplLTQtMTIpO1xufVxuXG4vKiBSZXNwb25zaXZlIGRlc2lnbiBmb3IgbW9iaWxlICovXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xuXHQudGFzay1vbW5pZm9jdXMtY29udGFpbmVyIHtcblx0XHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHR9XG5cblx0LnRhc2stc2lkZWJhciB7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdFx0bWF4LXdpZHRoOiAxMDAlO1xuXHRcdGhlaWdodDogYXV0bztcblx0XHRib3JkZXItcmlnaHQ6IG5vbmU7XG5cdFx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcblx0fVxuXG5cdC50YXNrLWNvbnRlbnQge1xuXHRcdHdpZHRoOiAxMDAlO1xuXHRcdGZsZXg6IDE7XG5cdH1cblxuXHQudGFzay1kZXRhaWxzLWNvbnRhaW5lciB7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdFx0bWF4LXdpZHRoOiAxMDAlO1xuXHRcdGJvcmRlci1sZWZ0OiBub25lO1xuXHR9XG59XG5cbi8qIFByb2plY3Qgc291cmNlIGluZGljYXRvciBzdHlsZXMgKi9cbi5wcm9qZWN0LXNvdXJjZS1pbmRpY2F0b3Ige1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRnYXA6IDRweDtcblx0bWFyZ2luLXRvcDogNHB4O1xuXHRwYWRkaW5nOiA0cHggOHB4O1xuXHRib3JkZXItcmFkaXVzOiA0cHg7XG5cdGZvbnQtc2l6ZTogMC44NWVtO1xuXHRsaW5lLWhlaWdodDogMS4yO1xufVxuXG4ucHJvamVjdC1zb3VyY2UtaW5kaWNhdG9yIC5pbmRpY2F0b3ItaWNvbiB7XG5cdGZvbnQtc2l6ZTogMC45ZW07XG59XG5cbi5wcm9qZWN0LXNvdXJjZS1pbmRpY2F0b3IgLmluZGljYXRvci10ZXh0IHtcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xufVxuXG4vKiBSZWFkb25seSBpbmRpY2F0b3IgKi9cbi5wcm9qZWN0LXNvdXJjZS1pbmRpY2F0b3IucmVhZG9ubHktaW5kaWNhdG9yIHtcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1lcnJvcik7XG59XG5cbi5wcm9qZWN0LXNvdXJjZS1pbmRpY2F0b3IucmVhZG9ubHktaW5kaWNhdG9yIC5pbmRpY2F0b3ItdGV4dCB7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LWVycm9yKTtcblx0Zm9udC13ZWlnaHQ6IDUwMDtcbn1cblxuLyogT3ZlcnJpZGUgaW5kaWNhdG9yICovXG4ucHJvamVjdC1zb3VyY2UtaW5kaWNhdG9yLm92ZXJyaWRlLWluZGljYXRvciB7XG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYWNjZW50KTtcbn1cblxuLnByb2plY3Qtc291cmNlLWluZGljYXRvci5vdmVycmlkZS1pbmRpY2F0b3IgLmluZGljYXRvci10ZXh0IHtcblx0Y29sb3I6IHZhcigtLXRleHQtYWNjZW50KTtcbn1cblxuLyogRmllbGQgZGVzY3JpcHRpb25zICovXG4uZmllbGQtZGVzY3JpcHRpb24ucmVhZG9ubHktZGVzY3JpcHRpb24ge1xuXHRjb2xvcjogdmFyKC0tdGV4dC1lcnJvcik7XG5cdGZvbnQtc2l6ZTogMC44ZW07XG5cdG1hcmdpbi10b3A6IDRweDtcblx0Zm9udC1zdHlsZTogaXRhbGljO1xufVxuXG4uZmllbGQtZGVzY3JpcHRpb24ub3ZlcnJpZGUtZGVzY3JpcHRpb24ge1xuXHRjb2xvcjogdmFyKC0tdGV4dC1hY2NlbnQpO1xuXHRmb250LXNpemU6IDAuOGVtO1xuXHRtYXJnaW4tdG9wOiA0cHg7XG5cdGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cblxuLyogSW5saW5lIGVkaXRvciBzcGVjaWZpYyBzdHlsZXMgKi9cbi5wcm9qZWN0LXNvdXJjZS1pbmRpY2F0b3IuaW5saW5lLWluZGljYXRvciB7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0dG9wOiAxMDAlO1xuXHRsZWZ0OiAwO1xuXHRyaWdodDogMDtcblx0ei1pbmRleDogMTA7XG5cdG1hcmdpbi10b3A6IDJweDtcblx0cGFkZGluZzogMnB4IDZweDtcblx0Zm9udC1zaXplOiAwLjc1ZW07XG5cdHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cdG92ZXJmbG93OiBoaWRkZW47XG5cdHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xufVxuXG4vKiBUYWJsZSBzcGVjaWZpYyBzdHlsZXMgKi9cbi5wcm9qZWN0LXNvdXJjZS1pbmRpY2F0b3IudGFibGUtaW5kaWNhdG9yIHtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHR0b3A6IDJweDtcblx0cmlnaHQ6IDJweDtcblx0cGFkZGluZzogMXB4IDNweDtcblx0Zm9udC1zaXplOiAwLjdlbTtcblx0Ym9yZGVyLXJhZGl1czogMnB4O1xuXHR6LWluZGV4OiA1O1xufVxuXG4ucHJvamVjdC1zb3VyY2UtaW5kaWNhdG9yLnRhYmxlLWluZGljYXRvciAuaW5kaWNhdG9yLWljb24ge1xuXHRmb250LXNpemU6IDAuOGVtO1xufVxuXG4udGFzay10YWJsZS1jZWxsLnJlYWRvbmx5LWNlbGwge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWVycm9yLWhvdmVyKTtcblx0b3BhY2l0eTogMC44O1xufVxuXG4vKiBQcm9qZWN0IGNvbnRhaW5lciBzcGVjaWZpYyBzdHlsZXMgKi9cbi5wcm9qZWN0LWNvbnRhaW5lci5wcm9qZWN0LXJlYWRvbmx5IHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4ucHJvamVjdC1jb250YWluZXIucHJvamVjdC1yZWFkb25seSAucHJvamVjdC1zb3VyY2UtaW5kaWNhdG9yIHtcblx0bWFyZ2luLXRvcDogOHB4O1xufVxuIiwgIi8qIE9uQ29tcGxldGlvbiBDb25maWd1cmF0b3IgU3R5bGVzICovXHJcbi5vbmNvbXBsZXRpb24tY29uZmlndXJhdG9yIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0Z2FwOiAxMnB4O1xyXG5cdHBhZGRpbmc6IDEycHg7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGJvcmRlci1yYWRpdXM6IDZweDtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcbn1cclxuXHJcbi5vbmNvbXBsZXRpb24tYWN0aW9uLXR5cGUge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRnYXA6IDZweDtcclxufVxyXG5cclxuLm9uY29tcGxldGlvbi1sYWJlbCB7XHJcblx0Zm9udC13ZWlnaHQ6IDYwMDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG5cdGZvbnQtc2l6ZTogMC45ZW07XHJcbn1cclxuXHJcbi5vbmNvbXBsZXRpb24tY29uZmlnIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0Z2FwOiAxMHB4O1xyXG5cdG1hcmdpbi10b3A6IDhweDtcclxuXHRwYWRkaW5nLXRvcDogOHB4O1xyXG5cdGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlci1ob3Zlcik7XHJcbn1cclxuXHJcbi5vbmNvbXBsZXRpb24tZmllbGQge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRnYXA6IDRweDtcclxufVxyXG5cclxuLm9uY29tcGxldGlvbi1kZXNjcmlwdGlvbiB7XHJcblx0Zm9udC1zaXplOiAwLjhlbTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0Zm9udC1zdHlsZTogaXRhbGljO1xyXG5cdG1hcmdpbi10b3A6IDJweDtcclxufVxyXG5cclxuLyogQWN0aW9uIFR5cGUgRHJvcGRvd24gKi9cclxuLm9uY29tcGxldGlvbi1hY3Rpb24tdHlwZSAuZHJvcGRvd24ge1xyXG5cdHdpZHRoOiAxMDAlO1xyXG59XHJcblxyXG4vKiBJbnB1dCBGaWVsZHMgKi9cclxuLm9uY29tcGxldGlvbi1maWVsZCAudGV4dC1pbnB1dCB7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0cGFkZGluZzogNnB4IDhweDtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Ym9yZGVyLXJhZGl1czogNHB4O1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxufVxyXG5cclxuLm9uY29tcGxldGlvbi1maWVsZCAudGV4dC1pbnB1dDpmb2N1cyB7XHJcblx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdG91dGxpbmU6IG5vbmU7XHJcblx0Ym94LXNoYWRvdzogMCAwIDAgMnB4IHZhcigtLWludGVyYWN0aXZlLWFjY2VudC1ob3Zlcik7XHJcbn1cclxuXHJcbi8qIFRvZ2dsZSBDb21wb25lbnQgKi9cclxuLm9uY29tcGxldGlvbi1maWVsZCAuY2hlY2tib3gtY29udGFpbmVyIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0Z2FwOiA4cHg7XHJcbn1cclxuXHJcbi8qIFN1Z2dlc3RlciBTdHlsZXMgKi9cclxuLnRhc2staWQtc3VnZ2VzdGlvbiB7XHJcblx0Zm9udC13ZWlnaHQ6IDYwMDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1hY2NlbnQpO1xyXG59XHJcblxyXG4udGFzay1jb250ZW50LXByZXZpZXcge1xyXG5cdGZvbnQtc2l6ZTogMC44NWVtO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRtYXJnaW4tdG9wOiAycHg7XHJcblx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG5cdHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xyXG5cdG1heC13aWR0aDogMzAwcHg7XHJcbn1cclxuXHJcbi5maWxlLW5hbWUge1xyXG5cdGZvbnQtd2VpZ2h0OiA1MDA7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxufVxyXG5cclxuLmZpbGUtcGF0aCB7XHJcblx0Zm9udC1zaXplOiAwLjhlbTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0bWFyZ2luLXRvcDogMnB4O1xyXG59XHJcblxyXG4uYWN0aW9uLXR5cGUtc3VnZ2VzdGlvbiB7XHJcblx0Zm9udC13ZWlnaHQ6IDYwMDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1hY2NlbnQpO1xyXG59XHJcblxyXG4uYWN0aW9uLWRlc2NyaXB0aW9uIHtcclxuXHRmb250LXNpemU6IDAuOGVtO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRtYXJnaW4tdG9wOiAycHg7XHJcbn1cclxuXHJcbi8qIFZhbGlkYXRpb24gU3RhdGVzICovXHJcbi5vbmNvbXBsZXRpb24tY29uZmlndXJhdG9yLmludmFsaWQge1xyXG5cdGJvcmRlci1jb2xvcjogdmFyKC0tdGV4dC1lcnJvcik7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1lcnJvcik7XHJcbn1cclxuXHJcbi5vbmNvbXBsZXRpb24tY29uZmlndXJhdG9yLnZhbGlkIHtcclxuXHRib3JkZXItY29sb3I6IHZhcigtLXRleHQtc3VjY2Vzcyk7XHJcbn1cclxuXHJcbi5vbmNvbXBsZXRpb24tdmFsaWRhdGlvbi1tZXNzYWdlIHtcclxuXHRmb250LXNpemU6IDAuOGVtO1xyXG5cdG1hcmdpbi10b3A6IDRweDtcclxuXHRwYWRkaW5nOiA0cHggNnB4O1xyXG5cdGJvcmRlci1yYWRpdXM6IDNweDtcclxufVxyXG5cclxuLm9uY29tcGxldGlvbi12YWxpZGF0aW9uLW1lc3NhZ2UuZXJyb3Ige1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LWVycm9yKTtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWVycm9yKTtcclxufVxyXG5cclxuLm9uY29tcGxldGlvbi12YWxpZGF0aW9uLW1lc3NhZ2Uuc3VjY2VzcyB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtc3VjY2Vzcyk7XHJcbn1cclxuXHJcbi8qIEludGVncmF0aW9uIHdpdGggVGFzayBEZXRhaWxzICovXHJcbi50YXNrLWRldGFpbHMgLm9uY29tcGxldGlvbi1jb25maWd1cmF0b3Ige1xyXG5cdG1hcmdpbi10b3A6IDhweDtcclxuXHRib3JkZXI6IG5vbmU7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcblx0cGFkZGluZzogMDtcclxufVxyXG5cclxuLnRhc2stZGV0YWlscyAub25jb21wbGV0aW9uLWZpZWxkIHtcclxuXHRtYXJnaW4tYm90dG9tOiA4cHg7XHJcbn1cclxuXHJcbi8qIFJlc3BvbnNpdmUgRGVzaWduICovXHJcbkBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xyXG5cdC5vbmNvbXBsZXRpb24tY29uZmlndXJhdG9yIHtcclxuXHRcdHBhZGRpbmc6IDhweDtcclxuXHRcdGdhcDogOHB4O1xyXG5cdH1cclxuXHJcblx0Lm9uY29tcGxldGlvbi1jb25maWcge1xyXG5cdFx0Z2FwOiA4cHg7XHJcblx0fVxyXG5cclxuXHQudGFzay1jb250ZW50LXByZXZpZXcge1xyXG5cdFx0bWF4LXdpZHRoOiAyMDBweDtcclxuXHR9XHJcbn1cclxuXHJcbi8qIERhcmsgVGhlbWUgQWRqdXN0bWVudHMgKi9cclxuLnRoZW1lLWRhcmsgLm9uY29tcGxldGlvbi1jb25maWd1cmF0b3Ige1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeS1hbHQpO1xyXG59XHJcblxyXG4udGhlbWUtZGFyayAub25jb21wbGV0aW9uLWZpZWxkIC50ZXh0LWlucHV0IHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcblx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlci1ob3Zlcik7XHJcbn1cclxuXHJcbi8qIEhpZ2ggQ29udHJhc3QgTW9kZSAqL1xyXG5AbWVkaWEgKHByZWZlcnMtY29udHJhc3Q6IGhpZ2gpIHtcclxuXHQub25jb21wbGV0aW9uLWNvbmZpZ3VyYXRvciB7XHJcblx0XHRib3JkZXItd2lkdGg6IDJweDtcclxuXHR9XHJcblxyXG5cdC5vbmNvbXBsZXRpb24tZmllbGQgLnRleHQtaW5wdXQge1xyXG5cdFx0Ym9yZGVyLXdpZHRoOiAycHg7XHJcblx0fVxyXG5cclxuXHQub25jb21wbGV0aW9uLWZpZWxkIC50ZXh0LWlucHV0OmZvY3VzIHtcclxuXHRcdGJveC1zaGFkb3c6IDAgMCAwIDNweCB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQtaG92ZXIpO1xyXG5cdH1cclxufVxyXG5cclxuLyogQW5pbWF0aW9uIGZvciBDb25maWd1cmF0aW9uIENoYW5nZXMgKi9cclxuLm9uY29tcGxldGlvbi1jb25maWcge1xyXG5cdHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0O1xyXG59XHJcblxyXG4ub25jb21wbGV0aW9uLWZpZWxkIHtcclxuXHRvcGFjaXR5OiAxO1xyXG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcclxuXHR0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMnMgZWFzZS1pbi1vdXQsIHRyYW5zZm9ybSAwLjJzIGVhc2UtaW4tb3V0O1xyXG59XHJcblxyXG4ub25jb21wbGV0aW9uLWZpZWxkLmVudGVyaW5nIHtcclxuXHRvcGFjaXR5OiAwO1xyXG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTBweCk7XHJcbn1cclxuXHJcbi5vbmNvbXBsZXRpb24tZmllbGQuZXhpdGluZyB7XHJcblx0b3BhY2l0eTogMDtcclxuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTBweCk7XHJcbn1cclxuXHJcbi8qIE9uQ29tcGxldGlvbiBNb2RhbCBTdHlsZXMgKi9cclxuLm9uY29tcGxldGlvbi1tb2RhbCB7XHJcblx0LS1kaWFsb2ctd2lkdGg6IDYwMHB4O1xyXG5cdC0tZGlhbG9nLW1heC13aWR0aDogOTB2dztcclxuXHQtLWRpYWxvZy1tYXgtaGVpZ2h0OiA4MHZoO1xyXG59XHJcblxyXG4ub25jb21wbGV0aW9uLW1vZGFsIC5tb2RhbC1jb250ZW50IHtcclxuXHRwYWRkaW5nOiAwO1xyXG5cdG1heC1oZWlnaHQ6IHZhcigtLWRpYWxvZy1tYXgtaGVpZ2h0KTtcclxuXHRvdmVyZmxvdy15OiBhdXRvO1xyXG59XHJcblxyXG4ub25jb21wbGV0aW9uLW1vZGFsLWNvbnRlbnQge1xyXG5cdHBhZGRpbmc6IDIwcHg7XHJcblx0bWF4LWhlaWdodDogNjB2aDtcclxuXHRvdmVyZmxvdy15OiBhdXRvO1xyXG59XHJcblxyXG4ub25jb21wbGV0aW9uLW1vZGFsLWJ1dHRvbnMge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0anVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcclxuXHRnYXA6IDhweDtcclxuXHRwYWRkaW5nOiAxNnB4IDIwcHg7XHJcblx0Ym9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcbn1cclxuXHJcbi5vbmNvbXBsZXRpb24tbW9kYWwtYnV0dG9ucyBidXR0b24ge1xyXG5cdG1pbi13aWR0aDogODBweDtcclxufVxyXG5cclxuLyogSW5saW5lIE9uQ29tcGxldGlvbiBCdXR0b24gU3R5bGVzICovXHJcbi5pbmxpbmUtb25jb21wbGV0aW9uLWJ1dHRvbi1jb250YWluZXIge1xyXG5cdGRpc3BsYXk6IGlubGluZS1mbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbn1cclxuXHJcbi5pbmxpbmUtb25jb21wbGV0aW9uLWNvbmZpZy1idXR0b24ge1xyXG5cdHBhZGRpbmc6IDRweCA4cHg7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGJvcmRlci1yYWRpdXM6IDRweDtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcblx0Zm9udC1mYW1pbHk6IGluaGVyaXQ7XHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsKTtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0dHJhbnNpdGlvbjogYWxsIDAuMTVzIGVhc2U7XHJcblx0bWluLXdpZHRoOiAxMDBweDtcclxuXHR0ZXh0LWFsaWduOiBsZWZ0O1xyXG59XHJcblxyXG4uaW5saW5lLW9uY29tcGxldGlvbi1jb25maWctYnV0dG9uOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyKTtcclxuXHRib3JkZXItY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcbn1cclxuXHJcbi5pbmxpbmUtb25jb21wbGV0aW9uLWNvbmZpZy1idXR0b246Zm9jdXMge1xyXG5cdG91dGxpbmU6IG5vbmU7XHJcblx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdGJveC1zaGFkb3c6IDAgMCAwIDJweCB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQtaG92ZXIpO1xyXG59XHJcblxyXG4uaW5saW5lLW9uY29tcGxldGlvbi1jb25maWctYnV0dG9uOmFjdGl2ZSB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1hY3RpdmUpO1xyXG5cdHRyYW5zZm9ybTogc2NhbGUoMC45OCk7XHJcbn1cclxuXHJcbi8qIFJlc3BvbnNpdmUgRGVzaWduIGZvciBNb2RhbCAqL1xyXG5AbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcclxuXHQub25jb21wbGV0aW9uLW1vZGFsIHtcclxuXHRcdC0tZGlhbG9nLXdpZHRoOiA5NXZ3O1xyXG5cdFx0LS1kaWFsb2ctbWF4LWhlaWdodDogODV2aDtcclxuXHR9XHJcblxyXG5cdC5vbmNvbXBsZXRpb24tbW9kYWwtY29udGVudCB7XHJcblx0XHRwYWRkaW5nOiAxNnB4O1xyXG5cdFx0bWF4LWhlaWdodDogNjV2aDtcclxuXHR9XHJcblxyXG5cdC5vbmNvbXBsZXRpb24tbW9kYWwtYnV0dG9ucyB7XHJcblx0XHRwYWRkaW5nOiAxMnB4IDE2cHg7XHJcblx0XHRmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2U7XHJcblx0fVxyXG5cclxuXHQub25jb21wbGV0aW9uLW1vZGFsLWJ1dHRvbnMgYnV0dG9uIHtcclxuXHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0bWluLXdpZHRoOiB1bnNldDtcclxuXHR9XHJcbn1cclxuIiwgIi8qIFVuaXZlcnNhbCBTdWdnZXN0IFN0eWxlcyAqL1xyXG5cclxuLnVuaXZlcnNhbC1zdWdnZXN0LWl0ZW0ge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0Ym9yZGVyLXJhZGl1czogNHB4O1xyXG5cdHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4xcyBlYXNlO1xyXG59XHJcblxyXG4udW5pdmVyc2FsLXN1Z2dlc3QtaXRlbTpob3ZlciB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3Zlcik7XHJcbn1cclxuXHJcbi51bml2ZXJzYWwtc3VnZ2VzdC1pdGVtLmlzLXNlbGVjdGVkIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWFjdGl2ZS1ob3Zlcik7XHJcbn1cclxuXHJcbi51bml2ZXJzYWwtc3VnZ2VzdC1jb250YWluZXIge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IHJvdztcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG59XHJcblxyXG4udW5pdmVyc2FsLXN1Z2dlc3QtaWNvbiB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdHdpZHRoOiAyMHB4O1xyXG5cdGhlaWdodDogMjBweDtcclxuXHRtYXJnaW4tcmlnaHQ6IDEycHg7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdGZsZXgtc2hyaW5rOiAwO1xyXG59XHJcblxyXG4udW5pdmVyc2FsLXN1Z2dlc3QtY29udGVudCB7XHJcblx0ZmxleDogMTtcclxuXHRtaW4td2lkdGg6IDA7XHJcbn1cclxuXHJcbi51bml2ZXJzYWwtc3VnZ2VzdC1sYWJlbCB7XHJcblx0Zm9udC13ZWlnaHQ6IDUwMDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG5cdG1hcmdpbi1ib3R0b206IDJweDtcclxufVxyXG5cclxuLnVuaXZlcnNhbC1zdWdnZXN0LWRlc2NyaXB0aW9uIHtcclxuXHRmb250LXNpemU6IDAuODVlbTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0bGluZS1oZWlnaHQ6IDEuMztcclxufVxyXG5cclxuLyogU3BlY2lhbCBjaGFyYWN0ZXIgdHJpZ2dlciBoaWdobGlnaHRpbmcgKi9cclxuLmNtLWVkaXRvciAuY20tbGluZSAudW5pdmVyc2FsLXN1Z2dlc3QtdHJpZ2dlciB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1hY2NlbnQpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LWFjY2VudCk7XHJcblx0Ym9yZGVyLXJhZGl1czogMnB4O1xyXG5cdHBhZGRpbmc6IDFweCAycHg7XHJcbn1cclxuXHJcbi8qIFN1Z2dlc3QgcG9wdXAgY29udGFpbmVyICovXHJcbi5zdWdnZXN0aW9uLWNvbnRhaW5lciAudW5pdmVyc2FsLXN1Z2dlc3QtaXRlbSB7XHJcblx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxufVxyXG5cclxuLnN1Z2dlc3Rpb24tY29udGFpbmVyIC51bml2ZXJzYWwtc3VnZ2VzdC1pdGVtOmxhc3QtY2hpbGQge1xyXG5cdGJvcmRlci1ib3R0b206IG5vbmU7XHJcbn1cclxuXHJcbi8qIERhcmsgdGhlbWUgYWRqdXN0bWVudHMgKi9cclxuLnRoZW1lLWRhcmsgLnVuaXZlcnNhbC1zdWdnZXN0LWl0ZW06aG92ZXIge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpO1xyXG59XHJcblxyXG4udGhlbWUtZGFyayAudW5pdmVyc2FsLXN1Z2dlc3QtaXRlbS5pcy1zZWxlY3RlZCB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1hY3RpdmUtaG92ZXIpO1xyXG59XHJcblxyXG4vKiBIaWdoIGNvbnRyYXN0IG1vZGUgKi9cclxuQG1lZGlhIChwcmVmZXJzLWNvbnRyYXN0OiBoaWdoKSB7XHJcblx0LnVuaXZlcnNhbC1zdWdnZXN0LWl0ZW0ge1xyXG5cdFx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdFx0bWFyZ2luLWJvdHRvbTogMnB4O1xyXG5cdH0gXHJcblx0XHJcblx0LnVuaXZlcnNhbC1zdWdnZXN0LWl0ZW06aG92ZXIsXHJcblx0LnVuaXZlcnNhbC1zdWdnZXN0LWl0ZW0uaXMtc2VsZWN0ZWQge1xyXG5cdFx0Ym9yZGVyLWNvbG9yOiB2YXIoLS10ZXh0LWFjY2VudCk7XHJcblx0fVxyXG59XHJcbiIsICIudGcta2FuYmFuLXZpZXcge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRoZWlnaHQ6IDEwMCU7XG5cdHdpZHRoOiAxMDAlO1xuXHRvdmVyZmxvdzogaGlkZGVuOyAvKiBQcmV2ZW50IHZpZXcgaXRzZWxmIGZyb20gc2Nyb2xsaW5nICovXG59XG5cbi50Zy1rYW5iYW4tZmlsdGVycyB7XG5cdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XG5cdGZsZXgtc2hyaW5rOiAwOyAvKiBEb24ndCBzaHJpbmsgZmlsdGVyIGJhciAqL1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XG5cdGdhcDogOHB4O1xuXHRwYWRkaW5nOiA4cHg7XG5cdHBhZGRpbmctYm90dG9tOiAwO1xuXHRwYWRkaW5nLXRvcDogMDtcbn1cblxuLnRnLWthbmJhbi1jb250cm9scy1jb250YWluZXIge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRnYXA6IDEycHg7XG5cdGZsZXgtd3JhcDogd3JhcDtcbn1cblxuLnRnLWthbmJhbi1zb3J0LWNvbnRhaW5lciB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdGdhcDogNHB4O1xufVxuXG4udGcta2FuYmFuLXNvcnQtYnV0dG9uIHtcblx0cGFkZGluZzogNHB4IDhweDtcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XG5cdGN1cnNvcjogcG9pbnRlcjtcblx0ZGlzcGxheTogZmxleDtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0Z2FwOiA0cHg7XG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbCk7XG59XG5cbi50Zy1rYW5iYW4tc29ydC1idXR0b246aG92ZXIge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyKTtcblx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlci1ob3Zlcik7XG59XG5cbi8qIEN5Y2xlIHNlbGVjdG9yIHN0eWxlcyAqL1xuLnRnLWthbmJhbi1jeWNsZS1jb250YWluZXIge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRnYXA6IDRweDtcbn1cblxuLnRnLWthbmJhbi1jeWNsZS1idXR0b24ge1xuXHRwYWRkaW5nOiA0cHggOHB4O1xuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zKTtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcblx0Y3Vyc29yOiBwb2ludGVyO1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRnYXA6IDRweDtcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsKTtcblx0dHJhbnNpdGlvbjpcblx0XHRiYWNrZ3JvdW5kLWNvbG9yIDAuMnMgZWFzZSxcblx0XHRib3JkZXItY29sb3IgMC4ycyBlYXNlO1xufVxuXG4udGcta2FuYmFuLWN5Y2xlLWJ1dHRvbjpob3ZlciB7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpO1xuXHRib3JkZXItY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyLWhvdmVyKTtcbn1cblxuLnRnLWthbmJhbi1jeWNsZS1idXR0b246YWN0aXZlIHtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1hY3RpdmUtaG92ZXIpO1xufVxuXG4udGcta2FuYmFuLXRvZ2dsZS1jb250YWluZXIge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRnYXA6IDRweDtcbn1cblxuLnRnLWthbmJhbi10b2dnbGUtbGFiZWwge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRnYXA6IDZweDtcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsKTtcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcblx0Y3Vyc29yOiBwb2ludGVyO1xufVxuXG4udGcta2FuYmFuLXRvZ2dsZS1jaGVja2JveCB7XG5cdG1hcmdpbjogMDtcbn1cblxuLnRnLWthbmJhbi1maWx0ZXItaW5wdXQge1xuXHRmbGV4LWdyb3c6IDE7XG5cdHBhZGRpbmc6IDZweCAxMHB4O1xuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGwpO1xuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zKTtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcblx0bWFyZ2luLXJpZ2h0OiAxMHB4OyAvKiBPcHRpb25hbDogc3BhY2UgaWYgb3RoZXIgY29udHJvbHMgYXJlIGFkZGVkICovXG59XG5cbi50Zy1rYW5iYW4tZmlsdGVyLWlucHV0OmZvY3VzIHtcblx0b3V0bGluZTogbm9uZTtcblx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xuXHRib3gtc2hhZG93OiAwIDAgMCAxcHggdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcbn1cblxuLnRnLWthbmJhbi1jb2x1bW4tY29udGFpbmVyIHtcblx0ZGlzcGxheTogZmxleDtcblx0ZmxleC1ncm93OiAxOyAvKiBUYWtlIHJlbWFpbmluZyBoZWlnaHQgKi9cblx0b3ZlcmZsb3cteDogYXV0bzsgLyogQWxsb3cgaG9yaXpvbnRhbCBzY3JvbGxpbmcgZm9yIGNvbHVtbnMgKi9cblx0b3ZlcmZsb3cteTogaGlkZGVuOyAvKiBQcmV2ZW50IHZlcnRpY2FsIHNjcm9sbGluZyBoZXJlICovXG5cdHBhZGRpbmc6IDEwcHg7XG5cdGdhcDogMTBweDsgLyogU3BhY2UgYmV0d2VlbiBjb2x1bW5zICovXG5cdGhlaWdodDogMTAwJTsgLyogTmVlZGVkIGZvciBjaGlsZHJlbiBoZWlnaHQgKi9cblxuXHQvKiBNb2JpbGUgc2Nyb2xsaW5nIGltcHJvdmVtZW50cyAqL1xuXHQtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7IC8qIFNtb290aCBob3Jpem9udGFsIHNjcm9sbGluZyBvbiBpT1MgKi9cblx0LyogQ29uZGl0aW9uYWwgb3ZlcnNjcm9sbCBiZWhhdmlvciAtIHByZXZlbnQgYm91bmNlIG9uIGRlc2t0b3AsIGFsbG93IG9uIG1vYmlsZSBmb3IgZHJhZyAqL1xuXHRvdmVyc2Nyb2xsLWJlaGF2aW9yLXg6IGF1dG87IC8qIEFsbG93IGRlZmF1bHQgYmVoYXZpb3IgZm9yIG1vYmlsZSBkcmFnIGNvbXBhdGliaWxpdHkgKi9cblx0c2Nyb2xsLXNuYXAtdHlwZTogeCBwcm94aW1pdHk7IC8qIEtlZXAgc25hcCBmb3IgbW9iaWxlIFVYICovXG5cdHNjcm9sbC1iZWhhdmlvcjogc21vb3RoOyAvKiBTbW9vdGggc2Nyb2xsaW5nICovXG59XG5cbi8qIERlc2t0b3Atc3BlY2lmaWM6IFByZXZlbnQgc2Nyb2xsIGJvdW5jZSAqL1xuQG1lZGlhIChob3ZlcjogaG92ZXIpIGFuZCAocG9pbnRlcjogZmluZSkge1xuXHQudGcta2FuYmFuLWNvbHVtbi1jb250YWluZXIge1xuXHRcdG92ZXJzY3JvbGwtYmVoYXZpb3IteDogbm9uZTsgLyogUHJldmVudCBib3VuY2Ugb24gZGVza3RvcCAqL1xuXHRcdHNjcm9sbC1zbmFwLXR5cGU6IG5vbmU7IC8qIERpc2FibGUgc25hcCBvbiBkZXNrdG9wICovXG5cdH1cbn1cblxuLnRnLWthbmJhbi1jb2x1bW4ge1xuXHRmbGV4OiAwIDAgMjgwcHg7IC8qIEZpeGVkIHdpZHRoIGZvciBjb2x1bW5zLCBubyBzaHJpbmtpbmcvZ3Jvd2luZyAqL1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1tKTtcblx0aGVpZ2h0OiAxMDAlOyAvKiBGaWxsIGNvbnRhaW5lciBoZWlnaHQgKi9cblx0bWF4LWhlaWdodDogY2FsYygxMDB2aCAtIDE3MHB4KTsgLyogUHJldmVudCBleGNlZWRpbmcgY29udGFpbmVyICovXG5cdG92ZXJmbG93OiBoaWRkZW47IC8qIEhpZGUgb3ZlcmZsb3cgd2l0aGluIHRoZSBjb2x1bW4gKi9cblxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XG5cblx0LyogTW9iaWxlIHNjcm9sbCBzbmFwIGZvciBiZXR0ZXIgVVggKi9cblx0c2Nyb2xsLXNuYXAtYWxpZ246IHN0YXJ0O1xufVxuXG4vKiBEZXNrdG9wLXNwZWNpZmljOiBEaXNhYmxlIHNjcm9sbCBzbmFwICovXG5AbWVkaWEgKGhvdmVyOiBob3ZlcikgYW5kIChwb2ludGVyOiBmaW5lKSB7XG5cdC50Zy1rYW5iYW4tY29sdW1uIHtcblx0XHRzY3JvbGwtc25hcC1hbGlnbjogbm9uZTtcblx0fVxufVxuXG4udGcta2FuYmFuLWNvbHVtbi1oZWFkZXIge1xuXHRwYWRkaW5nOiA4cHggMTJweDtcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLW1lZGl1bW4pO1xuXHRmb250LXdlaWdodDogNjAwO1xuXHRib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xuXHRmbGV4LXNocmluazogMDsgLyogUHJldmVudCBoZWFkZXIgZnJvbSBzaHJpbmtpbmcgKi9cblx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcblx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0dGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG5cblx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblxuXHRkaXNwbGF5OiBmbGV4O1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xufVxuXG4udGcta2FuYmFuLWNvbHVtbi1jb250ZW50IHtcblx0ZmxleC1ncm93OiAxO1xuXHRvdmVyZmxvdy15OiBhdXRvO1xuXHRwYWRkaW5nOiA4cHg7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdGdhcDogOHB4O1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xuXHQvKiBwYWRkaW5nLXJpZ2h0OiAwOyAqL1xuXHQtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG5cdG92ZXJzY3JvbGwtYmVoYXZpb3I6IGNvbnRhaW47IC8qIEtlZXAgY29udGFpbiBmb3IgbW9iaWxlIGRyYWcgY29tcGF0aWJpbGl0eSAqL1xuXHRzY3JvbGwtYmVoYXZpb3I6IHNtb290aDsgLyogU21vb3RoIHNjcm9sbGluZyAqL1xufVxuXG4vKiBEZXNrdG9wLXNwZWNpZmljOiBQcmV2ZW50IHZlcnRpY2FsIHNjcm9sbCBib3VuY2UgKi9cbkBtZWRpYSAoaG92ZXI6IGhvdmVyKSBhbmQgKHBvaW50ZXI6IGZpbmUpIHtcblx0LnRnLWthbmJhbi1jb2x1bW4tY29udGVudCB7XG5cdFx0b3ZlcnNjcm9sbC1iZWhhdmlvcjogbm9uZTsgLyogUHJldmVudCBib3VuY2Ugb24gZGVza3RvcCAqL1xuXHR9XG59XG4vKiAtLS0gQ2FyZCBTdHlsaW5nIC0tLSAqL1xuLnRnLWthbmJhbi1jYXJkIHtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XG5cdHBhZGRpbmc6IDEwcHggMTJweDtcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGwpO1xuXHRjdXJzb3I6IGdyYWI7XG5cdHRyYW5zaXRpb246XG5cdFx0Ym94LXNoYWRvdyAwLjJzIGVhc2UtaW4tb3V0LFxuXHRcdGJhY2tncm91bmQtY29sb3IgMC4ycyBlYXNlLWluLW91dDtcblxuXHQvKiBFbnN1cmUgY2FyZCBmaXRzIHdpdGhpbiBjb2x1bW4gYW5kIGhhbmRsZXMgY29udGVudCAqL1xuXHRtYXgtd2lkdGg6IDEwMCU7IC8qIFByZXZlbnQgY2FyZCBmcm9tIGV4Y2VlZGluZyBwYXJlbnQgd2lkdGggKi9cblx0Ym94LXNpemluZzogYm9yZGVyLWJveDsgLyogSW5jbHVkZSBwYWRkaW5nL2JvcmRlciBpbiB3aWR0aCAqL1xuXHR3aGl0ZS1zcGFjZTogbm93cmFwOyAvKiBBbGxvdyB0ZXh0IHdyYXBwaW5nICovXG5cdHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuXG5cdC8qIE1vYmlsZSB0b3VjaCBpbXByb3ZlbWVudHMgKi9cblx0dG91Y2gtYWN0aW9uOiBtYW5pcHVsYXRpb247IC8qIE9wdGltaXplIGZvciB0b3VjaCBpbnRlcmFjdGlvbnMgKi9cblx0dXNlci1zZWxlY3Q6IG5vbmU7IC8qIFByZXZlbnQgdGV4dCBzZWxlY3Rpb24gZHVyaW5nIGRyYWcgKi9cblx0LXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcblx0LW1vei11c2VyLXNlbGVjdDogbm9uZTtcblx0LW1zLXVzZXItc2VsZWN0OiBub25lO1xufVxuXG4udGcta2FuYmFuLWNhcmQgLnRnLWthbmJhbi1jYXJkLWNvbnRlbnQge1xuXHRvdmVyZmxvdzogaGlkZGVuO1xuXHR0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcblx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuXHRtYXgtd2lkdGg6IDEwMCU7XG59XG5cbi50Zy1rYW5iYW4tY2FyZDpob3ZlciB7XG5cdGJvcmRlci1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXItaG92ZXIpO1xuXHRib3gtc2hhZG93OiB2YXIoLS1zaGFkb3ctbSk7XG59XG5cbi50Zy1rYW5iYW4tY2FyZC50YXNrLWNvbXBsZXRlZCB7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcblx0b3BhY2l0eTogMC43O1xufVxuXG4udGcta2FuYmFuLWNhcmQudGFzay1jb21wbGV0ZWQgLnRnLWthbmJhbi1jYXJkLWNvbnRlbnQge1xuXHR0ZXh0LWRlY29yYXRpb246IGxpbmUtdGhyb3VnaDtcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xufVxuXG4udGcta2FuYmFuLWNhcmQtY29udGFpbmVyIHtcblx0ZGlzcGxheTogZmxleDtcblx0YWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG5cdG1hcmdpbi1ib3R0b206IDZweDtcbn1cblxuLnRnLWthbmJhbi1jYXJkLWNvbnRlbnQgcDpsYXN0LWNoaWxkIHtcblx0bWFyZ2luLWJvdHRvbTogMDsgLyogQXZvaWQgZXh0cmEgc3BhY2UgZnJvbSBwYXJhZ3JhcGggKi9cblx0bWFyZ2luLWJsb2NrLWVuZDogMDtcblx0bWFyZ2luLWJsb2NrLXN0YXJ0OiAwO1xufVxuXG4udGcta2FuYmFuLWNhcmQtbWV0YWRhdGEge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRmbGV4LXdyYXA6IHdyYXA7XG5cdGdhcDogNHB4IDhweDsgLyogUm93IGFuZCBjb2x1bW4gZ2FwICovXG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbCk7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcbn1cblxuLnRnLWthbmJhbi1jYXJkLW1ldGFkYXRhIC50YXNrLWRhdGUsXG4udGcta2FuYmFuLWNhcmQtbWV0YWRhdGEgLnRhc2stdGFncy1jb250YWluZXIsXG4udGcta2FuYmFuLWNhcmQtbWV0YWRhdGEgLnRhc2stcHJpb3JpdHkge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRnYXA6IDRweDtcblx0cGFkZGluZzogMnB4IDVweDtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XG5cblx0bWFyZ2luLWlubGluZS1zdGFydDogMDtcblx0bWFyZ2luLWlubGluZS1lbmQ6IDA7XG5cdG1hcmdpbi1sZWZ0OiAwO1xuXHRtYXJnaW4tcmlnaHQ6IDA7XG59XG5cbi50Zy1rYW5iYW4tY2FyZC1tZXRhZGF0YSAudGFzay10YWcge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoXG5cdFx0LS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWFjY2VudC1ob3ZlclxuXHQpOyAvKiBPciB1c2UgdGFnIGNvbG9yICovXG5cdGNvbG9yOiB2YXIoLS10ZXh0LWFjY2VudCk7XG5cdHBhZGRpbmc6IDFweCA0cHg7XG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zKTtcblx0Zm9udC1zaXplOiBjYWxjKHZhcigtLWZvbnQtdWktc21hbGwpICogMC45KTtcbn1cblxuLnRnLWthbmJhbi1jYXJkLW1ldGFkYXRhIC50YXNrLWR1ZS1kYXRlLnRhc2stb3ZlcmR1ZSB7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LWVycm9yKTtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1lcnJvcik7XG59XG4udGcta2FuYmFuLWNhcmQtbWV0YWRhdGEgLnRhc2stZHVlLWRhdGUudGFzay1kdWUtdG9kYXkge1xuXHRjb2xvcjogdmFyKC0tdGV4dC13YXJuaW5nKTtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC13YXJuaW5nKTtcbn1cblxuLyogUHJpb3JpdHkgaW5kaWNhdG9ycyAoc2ltcGxlIGV4YW1wbGUpICovXG4udGcta2FuYmFuLWNhcmQtbWV0YWRhdGEgLnRhc2stcHJpb3JpdHkucHJpb3JpdHktMSB7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LWFjY2VudCk7XG59XG4udGcta2FuYmFuLWNhcmQtbWV0YWRhdGEgLnRhc2stcHJpb3JpdHkucHJpb3JpdHktMiB7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LXdhcm5pbmcpO1xufVxuLnRnLWthbmJhbi1jYXJkLW1ldGFkYXRhIC50YXNrLXByaW9yaXR5LnByaW9yaXR5LTMge1xuXHRjb2xvcjogdmFyKC0tdGV4dC1lcnJvcik7XG5cdGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuLyogQWRkIG1vcmUgcHJpb3JpdHkgc3R5bGVzIGlmIG5lZWRlZCAqL1xuXG4vKiAtLS0gRHJhZyBhbmQgRHJvcCBTdHlsaW5nIC0tLSAqL1xuLnRnLWthbmJhbi1jYXJkLWRyYWdnaW5nIHtcblx0LyogU3R5bGUgZm9yIHRoZSBjbG9uZSBiZWluZyBkcmFnZ2VkICovXG5cdC8qIG9wYWNpdHk6IDAuODsgKi8gLyogUmVtb3ZlZCBvcGFjaXR5ICovXG5cdGJveC1zaGFkb3c6IHZhcigtLXNoYWRvdy1sKTsgLyogTW9yZSBwcm9taW5lbnQgc2hhZG93ICovXG59XG5cbi50Zy1rYW5iYW4tY2FyZC1naG9zdCB7XG5cdC8qIFN0eWxlIGZvciB0aGUgb3JpZ2luYWwgY2FyZCB3aGVuIGEgY2xvbmUgaXMgZHJhZ2dlZCAqL1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeS1hbHQpO1xuXHRib3JkZXI6IDFweCBkYXNoZWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xuXHRib3gtc2hhZG93OiBub25lO1xufVxuXG4udGcta2FuYmFuLWNvbHVtbi1jb250ZW50LnRnLWthbmJhbi1kcm9wLXRhcmdldC1hY3RpdmUge1xuXHQvKiBTdHlsZSBmb3IgcG90ZW50aWFsIGRyb3Agem9uZXMgd2hlbiBkcmFnZ2luZyBzdGFydHMgKi9cblx0LyogYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3Zlcik7ICovXG5cdG91dGxpbmU6IDJweCBkYXNoZWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1hY2NlbnQtaG92ZXIpO1xuXHRvdXRsaW5lLW9mZnNldDogLTJweDtcbn1cblxuLnRnLWthbmJhbi1jb2x1bW4tY29udGVudC50Zy1rYW5iYW4tZHJvcC10YXJnZXQtaG92ZXIge1xuXHQvKiBTdHlsZSBmb3IgdGhlIHNwZWNpZmljIGRyb3Agem9uZSBiZWluZyBob3ZlcmVkIG92ZXIgKi9cblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1hY2NlbnQtaG92ZXIpO1xufVxuXG4vKiBTdHlsZXMgZm9yIEthbmJhbiBkcm9wIGluZGljYXRvcnMgKi9cbi50Zy1rYW5iYW4tY2FyZC0tZHJvcC1pbmRpY2F0b3ItYmVmb3JlIHtcblx0bWFyZ2luLXRvcDogMTBweDsgLyogSW5jcmVhc2VkIG1hcmdpbiAqL1xuXHRib3JkZXItdG9wOiAycHggZGFzaGVkIHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7IC8qIEluZGljYXRvciAqL1xuXHQvKiBwYWRkaW5nLXRvcDogMjBweDsgKi8gLyogUmVtb3ZlZCBwYWRkaW5nICovXG5cdHRyYW5zaXRpb246XG5cdFx0bWFyZ2luLXRvcCAwLjFzIGVhc2Utb3V0LFxuXHRcdGJvcmRlci10b3AgMC4xcyBlYXNlLW91dDsgLyogVXBkYXRlZCB0cmFuc2l0aW9uICovXG59XG5cbi50Zy1rYW5iYW4tY2FyZC0tZHJvcC1pbmRpY2F0b3ItYWZ0ZXIge1xuXHRtYXJnaW4tYm90dG9tOiAxMHB4OyAvKiBJbmNyZWFzZWQgbWFyZ2luICovXG5cdGJvcmRlci1ib3R0b206IDJweCBkYXNoZWQgdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTsgLyogSW5kaWNhdG9yICovXG5cdC8qIHBhZGRpbmctYm90dG9tOiAyMHB4OyAqLyAvKiBSZW1vdmVkIHBhZGRpbmcgKi9cblx0dHJhbnNpdGlvbjpcblx0XHRtYXJnaW4tYm90dG9tIDAuMXMgZWFzZS1vdXQsXG5cdFx0Ym9yZGVyLWJvdHRvbSAwLjFzIGVhc2Utb3V0OyAvKiBVcGRhdGVkIHRyYW5zaXRpb24gKi9cbn1cblxuLyogT3B0aW9uYWw6IFN0eWxlIGZvciBkcm9wcGluZyBpbnRvIGFuIGVtcHR5IGNvbHVtbiAqL1xuLnRnLWthbmJhbi1jb2x1bW4tY29udGVudC0tZHJvcC1pbmRpY2F0b3ItZW1wdHkge1xuXHRib3JkZXI6IDJweCBkYXNoZWQgdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcblx0bWluLWhlaWdodDogNTBweDsgLyogRW5zdXJlIGVtcHR5IGNvbHVtbiBoYXMgc29tZSBoZWlnaHQgZm9yIHRoZSBib3JkZXIgKi9cblx0Ym94LXNpemluZzogYm9yZGVyLWJveDsgLyogSW5jbHVkZSBib3JkZXIgaW4gaGVpZ2h0IGNhbGN1bGF0aW9uICovXG5cdG1hcmdpbi10b3A6IDVweDsgLyogQWRkIHNvbWUgc3BhY2UgKi9cblx0bWFyZ2luLWJvdHRvbTogNXB4OyAvKiBBZGQgc29tZSBzcGFjZSAqL1xufVxuXG4vKiBFbnN1cmUgdHJhbnNpdGlvbnMgYXJlIHNtb290aCB3aGVuIGNsYXNzZXMgYXJlIHJlbW92ZWQgKi9cbi50Zy1rYW5iYW4tY2FyZCB7XG5cdC8qIEVuc3VyZSBleGlzdGluZyB0cmFuc2l0aW9ucyBkb24ndCBjb25mbGljdCwgb3IgYWRkIGJhc2UgdHJhbnNpdGlvbiAqL1xuXHR0cmFuc2l0aW9uOlxuXHRcdG1hcmdpbiAwLjFzIGVhc2Utb3V0LFxuXHRcdHBhZGRpbmcgMC4xcyBlYXNlLW91dCxcblx0XHRib3JkZXIgMC4xcyBlYXNlLW91dCxcblx0XHR0cmFuc2Zvcm0gMC4ycyBlYXNlLW91dCxcblx0XHRib3gtc2hhZG93IDAuMnMgZWFzZS1pbi1vdXQsXG5cdFx0YmFja2dyb3VuZC1jb2xvciAwLjJzIGVhc2UtaW4tb3V0OyAvKiBNZXJnZWQgdHJhbnNpdGlvbnMgKi9cbn1cblxuLmRyb3AtdGFyZ2V0LWFjdGl2ZSB7XG5cdGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMTI4LCAwLCAwLjIpOyAvKiDljYrpgI/mmI7nu7/oibLog4zmma8gKi9cblx0b3V0bGluZTogMnB4IGRhc2hlZCBncmVlbjsgLyog57u/6Imy6Jma57q/6L655qGGICovXG5cdC8qIOS9oOWPr+iDvei/mOmcgOimgeiwg+aVtCBwYWRkaW5nIOaIliBtYXJnaW4g5p2lICfmlL7lpKcnIOinhuinieWMuuWfnyAqL1xuXHQvKiBwYWRkaW5nLXRvcDogMjBweDsgKi9cblx0LyogcGFkZGluZy1ib3R0b206IDIwcHg7ICovXG59XG5cbi8qIEFkZCBDYXJkIEJ1dHRvbiAqL1xuLnRnLWthbmJhbi1hZGQtY2FyZC1jb250YWluZXIge1xuXHRwYWRkaW5nOiA4cHg7XG5cdGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XG5cdGZsZXgtc2hyaW5rOiAwOyAvKiBQcmV2ZW50IGNvbnRhaW5lciBmcm9tIHNocmlua2luZyAqL1xufVxuXG4vKiBTdHlsZXMgZm9yIHRoZSBBZGQgQ2FyZCBidXR0b24gaW4gYm9hcmQgdmlldyAqL1xuLnRhc2stZ2VuaXVzLWFkZC1jYXJkLWNvbnRhaW5lciB7XG5cdHBhZGRpbmc6IDhweDtcblx0bWFyZ2luLXRvcDogYXV0bzsgLyogUHVzaCB0byB0aGUgYm90dG9tIGlmIHRoZSBjb2x1bW4gdXNlcyBmbGV4ICovXG5cdHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLnRnLWthbmJhbi1hZGQtY2FyZC1idXR0b24ge1xuXHQtLWljb24tc2l6ZTogMTZweDtcblx0d2lkdGg6IDEwMCU7XG5cdHBhZGRpbmc6IDZweCAxMnB4O1xuXHRib3JkZXI6IG5vbmU7XG5cdGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyAvKiBNYWtlIGl0IGxlc3MgcHJvbWluZW50ICovXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpO1xuXHRjdXJzb3I6IHBvaW50ZXI7XG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbCk7XG5cdHRleHQtYWxpZ246IGxlZnQ7XG5cdHRyYW5zaXRpb246XG5cdFx0YmFja2dyb3VuZC1jb2xvciAwLjJzIGVhc2UtaW4tb3V0LFxuXHRcdGNvbG9yIDAuMnMgZWFzZS1pbi1vdXQ7XG59XG5cbi50Zy1rYW5iYW4tYWRkLWNhcmQtYnV0dG9uOmhvdmVyIHtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3Zlcik7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XG59XG5cbi8qIENvbHVtbiBEcmFnICYgRHJvcCBTdHlsaW5nICovXG4udGcta2FuYmFuLWNvbHVtbi1kcmFnZ2luZyB7XG5cdC8qIFN0eWxlIGZvciB0aGUgY29sdW1uIGJlaW5nIGRyYWdnZWQgKi9cblx0dHJhbnNmb3JtOiByb3RhdGUoNWRlZyk7XG5cdG9wYWNpdHk6IDAuODtcblx0Ym94LXNoYWRvdzogdmFyKC0tc2hhZG93LXhsKTtcblx0ei1pbmRleDogMTAwMDtcbn1cblxuLnRnLWthbmJhbi1jb2x1bW4tZ2hvc3Qge1xuXHQvKiBTdHlsZSBmb3IgdGhlIGdob3N0IHBsYWNlaG9sZGVyIHdoZW4gZHJhZ2dpbmcgY29sdW1ucyAqL1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XG5cdGJvcmRlcjogMnB4IGRhc2hlZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWFjY2VudCk7XG5cdG9wYWNpdHk6IDAuNTtcbn1cblxuLnRnLWthbmJhbi1jb2x1bW4taGVhZGVyIHtcblx0LyogTWFrZSBjb2x1bW4gaGVhZGVycyBkcmFnZ2FibGUgKi9cblx0Y3Vyc29yOiBncmFiO1xufVxuXG4udGcta2FuYmFuLWNvbHVtbi1oZWFkZXI6YWN0aXZlIHtcblx0Y3Vyc29yOiBncmFiYmluZztcbn1cbiIsICIvKiBGaWx0ZXIgQ29tcG9uZW50IFN0eWxlcyAqL1xyXG4uZmlsdGVyLWNvbXBvbmVudCB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LXdyYXA6IHdyYXA7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRnYXA6IHZhcigtLXNpemUtNC0yKTtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtMikgdmFyKC0tc2l6ZS00LTMpO1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XHJcblx0bWluLWhlaWdodDogNDhweDtcclxuXHJcblx0ZmxleDogMTtcclxufVxyXG5cclxuLyogRmlsdGVyIFBpbGxzIENvbnRhaW5lciAqL1xyXG4uZmlsdGVyLXBpbGxzLWNvbnRhaW5lciB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LXdyYXA6IHdyYXA7XHJcblx0Z2FwOiB2YXIoLS1zaXplLTQtMik7XHJcblx0ZmxleDogMTtcclxufVxyXG5cclxuLyogRmlsdGVyIENvbnRyb2xzICovXHJcbi5maWx0ZXItY29udHJvbHMge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRnYXA6IHZhcigtLXNpemUtNC0yKTtcclxuXHRtYXJnaW4tbGVmdDogYXV0bztcclxufVxyXG5cclxuLyogRmlsdGVyIFBpbGxzICovXHJcbi5maWx0ZXItcGlsbCB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGdhcDogdmFyKC0tc2l6ZS00LTEpO1xyXG5cdHBhZGRpbmc6IDVweCA4cHg7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1tKTtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGwpO1xyXG5cdGFuaW1hdGlvbjogZmlsdGVyLXBpbGwtYXBwZWFyIDIwMG1zIGVhc2Utb3V0O1xyXG5cdHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgdmFyKC0tZHVyYXRpb24tZmFzdCksXHJcblx0XHR0cmFuc2Zvcm0gdmFyKC0tZHVyYXRpb24tZmFzdCk7XHJcbn1cclxuXHJcbi5maWx0ZXItcGlsbC1yZW1vdmUgLmNsaWNrYWJsZS1pY29uOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB1bnNldDtcclxufVxyXG5cclxuLmZpbHRlci1waWxsOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXRlcnRpYXJ5KTtcclxufVxyXG5cclxuLmZpbHRlci1waWxsLWNhdGVnb3J5IHtcclxuXHRmb250LXdlaWdodDogNTAwO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxufVxyXG5cclxuLmZpbHRlci1waWxsLXZhbHVlIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG59XHJcblxyXG4uZmlsdGVyLXBpbGwtcmVtb3ZlIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0d2lkdGg6IDE2cHg7XHJcblx0aGVpZ2h0OiAxNnB4O1xyXG5cdGJvcmRlci1yYWRpdXM6IDUwJTtcclxuXHRiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcclxuXHRib3JkZXI6IG5vbmU7XHJcblx0cGFkZGluZzogMDtcclxuXHRtYXJnaW4tbGVmdDogdmFyKC0tc2l6ZS00LTEpO1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1mYWludCk7XHJcblx0Zm9udC1zaXplOiAxNHB4O1xyXG5cdGxpbmUtaGVpZ2h0OiAxO1xyXG5cdHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgdmFyKC0tZHVyYXRpb24tZmFzdCksXHJcblx0XHRjb2xvciB2YXIoLS1kdXJhdGlvbi1mYXN0KTtcclxufVxyXG5cclxuLmZpbHRlci1waWxsLXJlbW92ZTpob3ZlciB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3Zlcik7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxufVxyXG5cclxuLmZpbHRlci1waWxsLXJlbW92ZS1pY29uIHtcclxuXHRmb250LXNpemU6IDE2cHg7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG59XHJcblxyXG4vKiBGaWx0ZXIgQnV0dG9ucyAqL1xyXG4uZmlsdGVyLWFkZC1idXR0b24sXHJcbi5maWx0ZXItY2xlYXItYWxsLWJ1dHRvbiB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdHBhZGRpbmc6IDZweCAxMHB4O1xyXG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbCk7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG59XHJcblxyXG4uZmlsdGVyLWFkZC1idXR0b24ge1xyXG5cdGdhcDogdmFyKC0tc2l6ZS00LTEpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxufVxyXG5cclxuLmZpbHRlci1hZGQtaWNvbiB7XHJcblx0Zm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtYm9sZCk7XHJcblxyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxufVxyXG5cclxuLyogRmlsdGVyIERyb3Bkb3duICovXHJcbi5maWx0ZXItZHJvcGRvd24ge1xyXG5cdHBvc2l0aW9uOiBmaXhlZDtcclxuXHR3aWR0aDogMjIwcHg7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtbSk7XHJcblx0Ym94LXNoYWRvdzogdmFyKC0tc2hhZG93LWwpO1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHR6LWluZGV4OiB2YXIoLS1sYXllci1wb3BvdmVyKTtcclxuXHRtYXgtaGVpZ2h0OiA0MDBweDtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0b3BhY2l0eTogMDtcclxuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLThweCk7XHJcblx0dHJhbnNpdGlvbjogb3BhY2l0eSB2YXIoLS1kdXJhdGlvbi1ub3JtYWwpLCB0cmFuc2Zvcm0gdmFyKC0tZHVyYXRpb24tbm9ybWFsKTtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG59XHJcblxyXG4uZmlsdGVyLWRyb3Bkb3duLXZpc2libGUge1xyXG5cdG9wYWNpdHk6IDE7XHJcblx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xyXG59XHJcblxyXG4uZmlsdGVyLWRyb3Bkb3duLWhlYWRlciB7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTIpO1xyXG5cdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcbn1cclxuXHJcbi5maWx0ZXItZHJvcGRvd24tc2VhcmNoIHtcclxuXHR3aWR0aDogMTAwJTtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtMik7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1tKTtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsKTtcclxuXHRvdXRsaW5lOiBub25lO1xyXG59XHJcblxyXG4uZmlsdGVyLWRyb3Bkb3duLXNlYXJjaDpmb2N1cyB7XHJcblx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdGJveC1zaGFkb3c6IDAgMCAwIDJweCB2YXIoLS1mb2N1cy1yaW5nLWNvbG9yKTtcclxufVxyXG5cclxuLmZpbHRlci1kcm9wZG93bi1saXN0IHtcclxuXHRvdmVyZmxvdy15OiBhdXRvO1xyXG5cdG1heC1oZWlnaHQ6IDM1MHB4O1xyXG59XHJcblxyXG4uZmlsdGVyLWRyb3Bkb3duLWl0ZW0ge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtMikgdmFyKC0tc2l6ZS00LTMpO1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGwpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcblx0dHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciB2YXIoLS1kdXJhdGlvbi1mYXN0KTtcclxufVxyXG5cclxuLmZpbHRlci1kcm9wZG93bi1pdGVtOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcbn1cclxuXHJcbi5maWx0ZXItZHJvcGRvd24taXRlbS1sYWJlbCB7XHJcblx0ZmxleDogMTtcclxufVxyXG5cclxuLmZpbHRlci1kcm9wZG93bi1pdGVtLWFycm93IHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1mYWludCk7XHJcblx0Zm9udC1zaXplOiAxOHB4O1xyXG59XHJcblxyXG4uZmlsdGVyLWRyb3Bkb3duLWl0ZW0tYXJyb3cuYmFjayB7XHJcblx0bWFyZ2luLXJpZ2h0OiB2YXIoLS1zaXplLTQtMik7XHJcblxyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxufVxyXG5cclxuLmZpbHRlci1kcm9wZG93bi1iYWNrIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcbn1cclxuXHJcbi5maWx0ZXItZHJvcGRvd24tc2VwYXJhdG9yIHtcclxuXHRoZWlnaHQ6IDFweDtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1kaXZpZGVyLWNvbG9yKTtcclxuXHRtYXJnaW46IHZhcigtLXNpemUtNC0xKSAwO1xyXG59XHJcblxyXG4uZmlsdGVyLWRyb3Bkb3duLWVtcHR5IHtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtNCk7XHJcblx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LWZhaW50KTtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGwpO1xyXG59XHJcblxyXG4uZmlsdGVyLWRyb3Bkb3duLXZhbHVlLWl0ZW0ge1xyXG5cdHBhZGRpbmctbGVmdDogdmFyKC0tc2l6ZS00LTQpO1xyXG59XHJcblxyXG4uZmlsdGVyLWRyb3Bkb3duLWNhdGVnb3J5IHtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtMikgMDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0Zm9udC13ZWlnaHQ6IDUwMDtcclxufVxyXG5cclxuLmZpbHRlci1kcm9wZG93bi12YWx1ZS1wcmV2aWV3IHtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtMSkgdmFyKC0tc2l6ZS00LTQpO1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHR0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIHZhcigtLWR1cmF0aW9uLWZhc3QpO1xyXG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbCk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxufVxyXG5cclxuLmZpbHRlci1kcm9wZG93bi12YWx1ZS1wcmV2aWV3OmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcbn1cclxuXHJcbi8qIEFuaW1hdGlvbnMgKi9cclxuQGtleWZyYW1lcyBmaWx0ZXItcGlsbC1hcHBlYXIge1xyXG5cdGZyb20ge1xyXG5cdFx0b3BhY2l0eTogMDtcclxuXHRcdHRyYW5zZm9ybTogc2NhbGUoMC45KTtcclxuXHR9XHJcblx0dG8ge1xyXG5cdFx0b3BhY2l0eTogMTtcclxuXHRcdHRyYW5zZm9ybTogc2NhbGUoMSk7XHJcblx0fVxyXG59XHJcblxyXG4uZmlsdGVyLXBpbGwtcmVtb3Zpbmcge1xyXG5cdG9wYWNpdHk6IDA7XHJcblx0dHJhbnNmb3JtOiBzY2FsZSgwLjkpO1xyXG5cdHRyYW5zaXRpb246IG9wYWNpdHkgMTUwbXMgZWFzZS1vdXQsIHRyYW5zZm9ybSAxNTBtcyBlYXNlLW91dDtcclxufVxyXG4iLCAiLyogPT09IGJhc2UuY3NzID09PSAqL1xuLyoqXG4gKiBCYXNlIHN0eWxlcyAtIENTUyB2YXJpYWJsZXMsIGNvbnRhaW5lciwgaGVhZGVyLCBuYXZpZ2F0aW9uXG4gKi9cblxuLnRnLWNhbGVuZGFyIHtcbiAgICAvKiBDU1MgVmFyaWFibGVzICovXG4gICAgLS10Zy1wcmltYXJ5LWNvbG9yOiAjM2I4MmY2O1xuICAgIC0tdGctcHJpbWFyeS1yZ2I6IDU5LCAxMzAsIDI0NjtcbiAgICAtLXRnLWNlbGwtaGVpZ2h0OiA2MHB4O1xuICAgIC0tdGctZm9udC1oZWFkZXI6IDE0cHg7XG4gICAgLS10Zy1mb250LWV2ZW50OiAxMnB4O1xuXG4gICAgLyogQmFzZSBzdHlsZXMgKi9cbiAgICBmb250LWZhbWlseTpcbiAgICAgICAgLWFwcGxlLXN5c3RlbSwgQmxpbmtNYWNTeXN0ZW1Gb250LCBcIlNlZ29lIFVJXCIsIFJvYm90bywgc2Fucy1zZXJpZjtcbiAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgICBvdmVyZmxvdy14OiBoaWRkZW47XG5cbiAgICAvKiBNYWluIGNvbnRhaW5lciBsYXlvdXQgKi9cbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgYmFja2dyb3VuZDogd2hpdGU7XG4gICAgYm9yZGVyLXJhZGl1czogMTJweDtcbiAgICBib3gtc2hhZG93OiAwIDRweCA2cHggLTFweCByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2U1ZTdlYjtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLyogRGlzYWJsZSB0ZXh0IHNlbGVjdGlvbiBkdXJpbmcgcmFuZ2Ugc2VsZWN0aW9uICovXG4udGctY2FsZW5kYXIudGctc2VsZWN0aW5nIHtcbiAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAgIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xufVxuXG4vKiBWaWV3IGNvbnRhaW5lciAqL1xuLnRnLXZpZXctY29udGFpbmVyIHtcbiAgICBtaW4taGVpZ2h0OiAwO1xuICAgIGJhY2tncm91bmQ6IHdoaXRlO1xuICAgIGZsZXg6IDE7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xufVxuXG4vKiBIZWFkZXIgc3R5bGVzICovXG4udGctaGVhZGVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIHBhZGRpbmc6IDE2cHg7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlNWU3ZWI7XG4gICAgYmFja2dyb3VuZDogd2hpdGU7XG59XG5cbi50Zy10aXRsZSB7XG4gICAgZm9udC1zaXplOiAxLjI1cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGNvbG9yOiAjMWYyOTM3O1xufVxuXG4vKiBWaWV3IHN3aXRjaCBidXR0b25zICovXG4udGctdmlldy1zd2l0Y2gge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgLypiYWNrZ3JvdW5kOiAjZjNmNGY2OyovXG4gICAgcGFkZGluZzogNHB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDhweDtcbn1cblxuLnRnLXZpZXctYnRuIHtcbiAgICBwYWRkaW5nOiA0cHggMTJweDtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgYm9yZGVyLXJhZGl1czogNnB4O1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMnM7XG4gICAgY29sb3I6ICM2YjcyODA7XG59XG5cbi50Zy12aWV3LWJ0bjpob3ZlciB7XG4gICAgY29sb3I6ICMzNzQxNTE7XG59XG5cbi50Zy12aWV3LWJ0bi50Zy1hY3RpdmUge1xuICAgIGJhY2tncm91bmQ6IHdoaXRlO1xuICAgIGJveC1zaGFkb3c6IDAgMXB4IDNweCByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gICAgY29sb3I6IHZhcigtLXRnLXByaW1hcnktY29sb3IpO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG59XG5cbi8qIE5hdmlnYXRpb24gYnV0dG9ucyAqL1xuLnRnLW5hdiB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBnYXA6IDhweDtcbn1cblxuLnRnLW5hdi1idG4ge1xuICAgIHBhZGRpbmc6IDRweCAxMnB4O1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2U1ZTdlYjtcbiAgICBiYWNrZ3JvdW5kOiAjZjlmYWZiO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4ycztcbn1cblxuLnRnLW5hdi1idG46aG92ZXIge1xuICAgIGJhY2tncm91bmQ6ICNmM2Y0ZjY7XG59XG5cbi50Zy1uYXYtYnRuLnRnLXRvZGF5IHtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKHZhcigtLXRnLXByaW1hcnktcmdiKSwgMC4xKTtcbiAgICBjb2xvcjogdmFyKC0tdGctcHJpbWFyeS1jb2xvcik7XG4gICAgYm9yZGVyLWNvbG9yOiByZ2JhKHZhcigtLXRnLXByaW1hcnktcmdiKSwgMC4yKTtcbn1cblxuLnRnLW5hdi1idG4udGctdG9kYXk6aG92ZXIge1xuICAgIGJhY2tncm91bmQ6IHJnYmEodmFyKC0tdGctcHJpbWFyeS1yZ2IpLCAwLjIpO1xufVxuXG4vKiBHcmlkIGxheW91dCBoZWxwZXJzICovXG4udGctZ3JpZC03IHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDcsIDFmcik7XG59XG5cbi8qIERpc2FibGVkIHN0YXRlICovXG4udGctZGlzYWJsZWQge1xuICAgIG9wYWNpdHk6IDAuNTtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xufVxuXG5cbi8qID09PSBtb250aC5jc3MgPT09ICovXG4vKipcclxuICogTW9udGggdmlldyBzdHlsZXNcclxuICovXHJcblxyXG4vKiBNb250aCBib2R5IGNvbnRhaW5lciAtIGdyaWQgbGF5b3V0IHRvIGRpc3RyaWJ1dGUgcm93IGhlaWdodHMgZXZlbmx5ICovXHJcbi50Zy1tb250aC1ib2R5IHtcclxuICAgIG92ZXJmbG93LXk6IGF1dG87XHJcbiAgICBmbGV4OiAxO1xyXG4gICAgbWluLWhlaWdodDogMDsgLyogUmVxdWlyZWQgZm9yIGZsZXggY2hpbGQgdG8gcmVzcGVjdCBvdmVyZmxvdyAqL1xyXG4gICAgZGlzcGxheTogZ3JpZDtcclxuICAgIGdyaWQtYXV0by1yb3dzOiAxZnI7IC8qIEFsbCByb3dzIGdldCBlcXVhbCBoZWlnaHQgKi9cclxufVxyXG5cclxuLyogTW9udGggaGVhZGVyICovXHJcbi50Zy1tb250aC1oZWFkZXIge1xyXG4gICAgZGlzcGxheTogZ3JpZDtcclxuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZTVlN2ViO1xyXG4gICAgYmFja2dyb3VuZDogI2Y5ZmFmYjtcclxufVxyXG5cclxuLnRnLW1vbnRoLWhlYWRlci1jZWxsIHtcclxuICAgIHBhZGRpbmc6IDhweDtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIGZvbnQtc2l6ZTogMTJweDtcclxuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gICAgY29sb3I6ICM5Y2EzYWY7XHJcbn1cclxuXHJcbi8qIE1vbnRoIHJvdyAtIGhlaWdodCBjb250cm9sbGVkIGJ5IHBhcmVudCBncmlkIChncmlkLWF1dG8tcm93czogMWZyKSAqL1xyXG4udGctbW9udGgtcm93IHtcclxuICAgIGRpc3BsYXk6IGdyaWQ7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBtaW4taGVpZ2h0OiB2YXIoLS10Zy1yb3ctbWluLWhlaWdodCwgODBweCk7IC8qIE1pbmltdW0gaGVpZ2h0IHBlciByb3cgKi9cclxuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZTVlN2ViO1xyXG59XHJcblxyXG4vKiBNb250aCBjZWxsICovXHJcbi50Zy1tb250aC1jZWxsIHtcclxuICAgIGhlaWdodDogMTAwJTtcclxuICAgIHBhZGRpbmc6IDRweDtcclxuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICNlNWU3ZWI7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB6LWluZGV4OiAxO1xyXG59XHJcblxyXG4udGctbW9udGgtY2VsbDpsYXN0LWNoaWxkIHtcclxuICAgIGJvcmRlci1yaWdodDogbm9uZTtcclxufVxyXG5cclxuLyogRGF0ZSBudW1iZXIgaW4gbW9udGggY2VsbCAqL1xyXG4udGctZGF0ZS1udW1iZXIge1xyXG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XHJcbiAgICBmb250LXNpemU6IDEycHg7XHJcbiAgICBwYWRkaW5nOiA0cHg7XHJcbn1cclxuXHJcbi50Zy1kYXRlLW51bWJlci50Zy1jdXJyZW50LW1vbnRoIHtcclxuICAgIGNvbG9yOiAjMzc0MTUxO1xyXG59XHJcblxyXG4udGctZGF0ZS1udW1iZXIudGctb3RoZXItbW9udGgge1xyXG4gICAgY29sb3I6ICNkMWQ1ZGI7XHJcbn1cclxuXHJcbi50Zy1kYXRlLW51bWJlci50Zy10b2RheSB7XHJcbiAgICBjb2xvcjogdmFyKC0tdGctcHJpbWFyeS1jb2xvcik7XHJcbiAgICBmb250LXdlaWdodDogYm9sZDtcclxufVxyXG5cclxuLyogRXZlbnQgY291bnQgYmFkZ2UgKi9cclxuLnRnLWV2ZW50LWNvdW50LWJhZGdlIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIGJvdHRvbTogMnB4O1xyXG4gICAgcmlnaHQ6IDJweDtcclxuICAgIGJhY2tncm91bmQ6IHZhcigtLXRnLXByaW1hcnktY29sb3IpO1xyXG4gICAgY29sb3I6IHdoaXRlO1xyXG4gICAgYm9yZGVyLXJhZGl1czogMTBweDtcclxuICAgIHBhZGRpbmc6IDJweCA2cHg7XHJcbiAgICBmb250LXNpemU6IDEwcHg7XHJcbiAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgIG1pbi13aWR0aDogMThweDtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxufVxyXG5cclxuLyogRGlzYWJsZWQgbW9udGggY2VsbCAqL1xyXG4udGctbW9udGgtY2VsbC50Zy1kaXNhYmxlZCB7XHJcbiAgICBvcGFjaXR5OiAwLjU7XHJcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICNmOWZhZmI7XHJcbn1cclxuXHJcbi50Zy1tb250aC1jZWxsLnRnLWRpc2FibGVkIC50Zy1kYXRlLW51bWJlciB7XHJcbiAgICBjb2xvcjogIzljYTNhZjtcclxuICAgIHRleHQtZGVjb3JhdGlvbjogbGluZS10aHJvdWdoO1xyXG59XHJcblxyXG4vKiBSYW5nZSBwcmV2aWV3IGZvciBtb250aCB2aWV3ICovXHJcbi50Zy1tb250aC1jZWxsLnRnLXJhbmdlLXByZXZpZXcge1xyXG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSh2YXIoLS10Zy1wcmltYXJ5LXJnYiksIDAuMTUpO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG59XHJcblxyXG4udGctbW9udGgtY2VsbC50Zy1yYW5nZS1wcmV2aWV3OjpiZWZvcmUge1xyXG4gICAgY29udGVudDogXCJcIjtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIGluc2V0OiAwO1xyXG4gICAgYm9yZGVyOiAycHggc29saWQgcmdiYSh2YXIoLS10Zy1wcmltYXJ5LXJnYiksIDAuNCk7XHJcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbn1cclxuXHJcbi8qIFwiK04gbW9yZVwiIGluZGljYXRvciAqL1xyXG4udGctbW9yZS1pbmRpY2F0b3Ige1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgZm9udC1zaXplOiAxMXB4O1xyXG4gICAgY29sb3I6IHZhcigtLXRnLXByaW1hcnktY29sb3IsICMzYjgyZjYpO1xyXG4gICAgcGFkZGluZzogMnB4IDZweDtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuICAgIGJvcmRlci1yYWRpdXM6IDRweDtcclxuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4xNXM7XHJcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xyXG4gICAgei1pbmRleDogNTtcclxufVxyXG5cclxuLnRnLW1vcmUtaW5kaWNhdG9yOmhvdmVyIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEodmFyKC0tdGctcHJpbWFyeS1yZ2IsIDU5LCAxMzAsIDI0NiksIDAuMSk7XHJcbn1cclxuXHJcbi8qIE1vcmUgZXZlbnRzIHBvcG92ZXIgKi9cclxuLnRnLW1vcmUtcG9wb3ZlciB7XHJcbiAgICBwb3NpdGlvbjogZml4ZWQ7XHJcbiAgICB6LWluZGV4OiAxMDAwO1xyXG4gICAgYmFja2dyb3VuZDogd2hpdGU7XHJcbiAgICBib3JkZXItcmFkaXVzOiA4cHg7XHJcbiAgICBib3gtc2hhZG93OlxyXG4gICAgICAgIDAgNHB4IDE2cHggcmdiYSgwLCAwLCAwLCAwLjE1KSxcclxuICAgICAgICAwIDJweCA4cHggcmdiYSgwLCAwLCAwLCAwLjEpO1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgI2U1ZTdlYjtcclxuICAgIG1pbi13aWR0aDogMjAwcHg7XHJcbiAgICBtYXgtd2lkdGg6IDI4MHB4O1xyXG4gICAgbWF4LWhlaWdodDogMzAwcHg7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbn1cclxuXHJcbi50Zy1tb3JlLXBvcG92ZXItaGVhZGVyIHtcclxuICAgIHBhZGRpbmc6IDEwcHggMTJweDtcclxuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICBmb250LXNpemU6IDEzcHg7XHJcbiAgICBjb2xvcjogIzM3NDE1MTtcclxuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZTVlN2ViO1xyXG4gICAgYmFja2dyb3VuZDogI2Y5ZmFmYjtcclxufVxyXG5cclxuLnRnLW1vcmUtcG9wb3Zlci1saXN0IHtcclxuICAgIG92ZXJmbG93LXk6IGF1dG87XHJcbiAgICBwYWRkaW5nOiA0cHggMDtcclxuICAgIGZsZXg6IDE7XHJcbn1cclxuXHJcbi50Zy1tb3JlLXBvcG92ZXItaXRlbSB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgIGdhcDogOHB4O1xyXG4gICAgcGFkZGluZzogOHB4IDEycHg7XHJcbiAgICBmb250LXNpemU6IDEycHg7XHJcbiAgICBjb2xvcjogIzM3NDE1MTtcclxuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4xNXM7XHJcbn1cclxuXHJcbi50Zy1tb3JlLXBvcG92ZXItaXRlbTpob3ZlciB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjNmNGY2O1xyXG59XHJcblxyXG4udGctbW9yZS1wb3BvdmVyLWRvdCB7XHJcbiAgICB3aWR0aDogOHB4O1xyXG4gICAgaGVpZ2h0OiA4cHg7XHJcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XHJcbiAgICBmbGV4LXNocmluazogMDtcclxufVxyXG5cclxuLnRnLW1vcmUtcG9wb3Zlci10aXRsZSB7XHJcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XHJcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG59XHJcblxuXG4vKiA9PT0gdGltZS5jc3MgPT09ICovXG4vKipcclxuICogVGltZSB2aWV3ICh3ZWVrL2RheSkgc3R5bGVzXHJcbiAqL1xyXG5cclxuLyogVGltZSBncmlkIGNvbnRhaW5lciAtIHNjcm9sbGFibGUgd3JhcHBlciAqL1xyXG4udGctdGltZS1ncmlkLWNvbnRhaW5lciB7XHJcbiAgICBmbGV4OiAxIDEgMDtcclxuICAgIG1pbi1oZWlnaHQ6IDA7XHJcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xyXG4gICAgb3ZlcmZsb3cteDogaGlkZGVuO1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG59XHJcblxyXG4vKiBUaW1lIGhlYWRlciAqL1xyXG4udGctdGltZS1oZWFkZXIge1xyXG4gICAgZGlzcGxheTogZmxleDtcclxuICAgIHBhZGRpbmctbGVmdDogNjBweDtcclxuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZTVlN2ViO1xyXG4gICAgcG9zaXRpb246IHN0aWNreTtcclxuICAgIHRvcDogMDtcclxuICAgIGJhY2tncm91bmQ6IHdoaXRlO1xyXG4gICAgei1pbmRleDogMzA7XHJcbiAgICBib3gtc2hhZG93OiAwIDJweCA0cHggcmdiYSgwLCAwLCAwLCAwLjAyKTtcclxufVxyXG5cclxuLnRnLXRpbWUtaGVhZGVyLWNlbGwge1xyXG4gICAgZmxleDogMTtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIHBhZGRpbmc6IDhweDtcclxuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICNmM2Y0ZjY7XHJcbiAgICBmb250LXNpemU6IHZhcigtLXRnLWZvbnQtaGVhZGVyKTtcclxufVxyXG5cclxuLnRnLXRpbWUtaGVhZGVyLWNlbGwgLnRnLWhlYWRlci1kYXRlIHtcclxuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xyXG4gICAgZm9udC1zaXplOiAxOHB4O1xyXG59XHJcblxyXG4udGctdGltZS1oZWFkZXItY2VsbC50Zy10b2RheSB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKHZhcigtLXRnLXByaW1hcnktcmdiKSwgMC4xKTtcclxuICAgIGNvbG9yOiB2YXIoLS10Zy1wcmltYXJ5LWNvbG9yKTtcclxufVxyXG5cclxuLnRnLXRpbWUtaGVhZGVyLWNlbGwudGctZGlzYWJsZWQge1xyXG4gICAgb3BhY2l0eTogMC41O1xyXG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjlmYWZiO1xyXG59XHJcblxyXG4vKiBUaW1lIGJvZHkgKi9cclxuLnRnLXRpbWUtYm9keSB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgbWluLWhlaWdodDogY2FsYyh2YXIoLS10Zy1jZWxsLWhlaWdodCkgKiAyNCk7XHJcbn1cclxuXHJcbi8qIFRpbWUgYXhpcyAqL1xyXG4udGctdGltZS1heGlzIHtcclxuICAgIHdpZHRoOiA2MHB4O1xyXG4gICAgZmxleC1zaHJpbms6IDA7XHJcbiAgICBiYWNrZ3JvdW5kOiAjZmFmYWZhO1xyXG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgI2U1ZTdlYjtcclxuICAgIHBvc2l0aW9uOiBzdGlja3k7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgei1pbmRleDogMjA7XHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcbn1cclxuXHJcbi50Zy10aW1lLWF4aXMtbGFiZWwge1xyXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBoZWlnaHQ6IHZhcigtLXRnLWNlbGwtaGVpZ2h0KTtcclxuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xyXG4gICAgcGFkZGluZy1yaWdodDogOHB4O1xyXG4gICAgY29sb3I6ICM5Y2EzYWY7XHJcbiAgICBmb250LXNpemU6IDExcHg7XHJcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxuICAgIC8qIFVzZSB0cmFuc2Zvcm0gZm9yIEdQVS1hY2NlbGVyYXRlZCBwb3NpdGlvbmluZyAqL1xyXG4gICAgd2lsbC1jaGFuZ2U6IHRyYW5zZm9ybTtcclxufVxyXG5cclxuLnRnLXRpbWUtYXhpcy1sYWJlbC5jdXN0b20ge1xyXG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbn1cclxuXHJcbi8qIERheSBjb2x1bW5zICovXHJcbi50Zy1kYXktY29sdW1uIHtcclxuICAgIGZsZXg6IDE7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAjZTVlN2ViO1xyXG4gICAgYmFja2dyb3VuZDogcmVwZWF0aW5nLWxpbmVhci1ncmFkaWVudChcclxuICAgICAgICB0byBib3R0b20sXHJcbiAgICAgICAgdHJhbnNwYXJlbnQgMCxcclxuICAgICAgICB0cmFuc3BhcmVudCBjYWxjKHZhcigtLXRnLWNlbGwtaGVpZ2h0KSAtIDFweCksXHJcbiAgICAgICAgI2YzZjRmNiB2YXIoLS10Zy1jZWxsLWhlaWdodClcclxuICAgICk7XHJcbn1cclxuXHJcbi8qIFJhbmdlIHByZXZpZXcgZm9yIHRpbWUgdmlldyAqL1xyXG4udGctdGltZS1yYW5nZS1wcmV2aWV3IHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEodmFyKC0tdGctcHJpbWFyeS1yZ2IpLCAwLjE1KTtcclxuICAgIGJvcmRlcjogMnB4IGRhc2hlZCByZ2JhKHZhcigtLXRnLXByaW1hcnktcmdiKSwgMC44KTtcclxuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG4gICAgei1pbmRleDogMTU7XHJcbiAgICBib3JkZXItcmFkaXVzOiA0cHg7XHJcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG59XHJcblxyXG4vKiBDb2x1bW4tbGV2ZWwgcmFuZ2UgcHJldmlldyBmb3IgbXVsdGktZGF5IHNlbGVjdGlvbiAqL1xyXG4udGctZGF5LWNvbHVtbi50Zy1yYW5nZS1wcmV2aWV3IHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEodmFyKC0tdGctcHJpbWFyeS1yZ2IpLCAwLjA4KTtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxufVxyXG5cclxuLnRnLWRheS1jb2x1bW4udGctcmFuZ2UtcHJldmlldzo6YmVmb3JlIHtcclxuICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICBpbnNldDogMDtcclxuICAgIGJvcmRlci1sZWZ0OiAzcHggc29saWQgcmdiYSh2YXIoLS10Zy1wcmltYXJ5LXJnYiksIDAuNSk7XHJcbiAgICBib3JkZXItcmlnaHQ6IDNweCBzb2xpZCByZ2JhKHZhcigtLXRnLXByaW1hcnktcmdiKSwgMC41KTtcclxuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxufVxyXG5cblxuLyogPT09IGV2ZW50cy5jc3MgPT09ICovXG4vKipcbiAqIEV2ZW50IHN0eWxlcyAtIGV2ZW50IGJsb2NrcywgYmFycywgZHJhZy9yZXNpemUgaGFuZGxlc1xuICpcbiAqIFBlcmZvcm1hbmNlIG5vdGU6IEV2ZW50cyB1c2UgQ1NTIGN1c3RvbSBwcm9wZXJ0aWVzIHdpdGggdHJhbnNmb3JtXG4gKiBmb3IgR1BVLWFjY2VsZXJhdGVkIHBvc2l0aW9uaW5nIGluc3RlYWQgb2YgdG9wL2xlZnQgcHJvcGVydGllcy5cbiAqL1xuXG4vKiBFdmVudCBiYXNlIHN0eWxlcyAqL1xuLnRnLWV2ZW50LWJhc2Uge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgcGFkZGluZzogMnB4IDZweDtcbiAgICBmb250LXNpemU6IHZhcigtLXRnLWZvbnQtZXZlbnQpO1xuICAgIGNvbG9yOiB3aGl0ZTtcbiAgICBjdXJzb3I6IGdyYWI7XG4gICAgei1pbmRleDogMTA7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgIGJveC1zaGFkb3c6IDAgMXB4IDJweCByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gICAgdHJhbnNpdGlvbjpcbiAgICAgICAgb3BhY2l0eSAwLjJzLFxuICAgICAgICBib3gtc2hhZG93IDAuMXMsXG4gICAgICAgIGZpbHRlciAwLjFzO1xuICAgIC8qIEdQVSBhY2NlbGVyYXRpb24gZm9yIHNtb290aCB0cmFuc2Zvcm1zICovXG4gICAgd2lsbC1jaGFuZ2U6IHRyYW5zZm9ybTtcbiAgICAvKiBCYXNlIHBvc2l0aW9uIGZvciB0cmFuc2Zvcm0gLSBKUyBzZXRzIHRyYW5zbGF0ZSgpICovXG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG59XG5cbi50Zy1ldmVudC1iYXNlOmhvdmVyIHtcbiAgICBib3gtc2hhZG93OiAwIDRweCA4cHggcmdiYSgwLCAwLCAwLCAwLjE1KTtcbiAgICBmaWx0ZXI6IGJyaWdodG5lc3MoMS4wNSk7XG59XG5cbi50Zy1ldmVudC1iYXNlOmFjdGl2ZSB7XG4gICAgY3Vyc29yOiBncmFiYmluZztcbn1cblxuLnRnLWV2ZW50LWJhc2UudGctaXMtZHJhZ2dpbmctc291cmNlIHtcbiAgICBvcGFjaXR5OiAwLjM7XG4gICAgZmlsdGVyOiBncmF5c2NhbGUoMC4zKTtcbn1cblxuLyogTW9udGggdmlldyBldmVudCBiYXIgKi9cbi50Zy1ldmVudC1iYXIge1xuICAgIGhlaWdodDogMjZweDtcbiAgICBsaW5lLWhlaWdodDogMjZweDtcbn1cblxuLyogVGltZSB2aWV3IGV2ZW50IGJsb2NrICovXG4udGctZXZlbnQtYmxvY2sge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgbGluZS1oZWlnaHQ6IDEuMztcbiAgICBwYWRkaW5nLXRvcDogNHB4O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4zKTtcbiAgICAvKiBIZWlnaHQgc2V0IHZpYSBDU1MgY3VzdG9tIHByb3BlcnR5ICovXG4gICAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbn1cblxuLnRnLWV2ZW50LWJsb2NrIC50Zy10aW1lLXRleHQge1xuICAgIGZvbnQtc2l6ZTogMTBweDtcbiAgICBvcGFjaXR5OiAwLjk7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLyogRXZlbnQgdGl0bGUgKi9cbi50Zy1ldmVudC10aXRsZSB7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbn1cblxuLyogUmVzaXplIGhhbmRsZXMgKi9cbi50Zy1yZXNpemUtaGFuZGxlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgei1pbmRleDogMjA7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMnM7XG59XG5cbi50Zy1ldmVudC1iYXNlOmhvdmVyIC50Zy1yZXNpemUtaGFuZGxlIHtcbiAgICBvcGFjaXR5OiAxO1xufVxuXG4udGctcmVzaXplLWhhbmRsZTpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjQpO1xufVxuXG4vKiBIb3Jpem9udGFsIHJlc2l6ZSBoYW5kbGVzIChtb250aCB2aWV3KSAqL1xuLnRnLXJlc2l6ZS1oIHtcbiAgICB0b3A6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIHdpZHRoOiAxMnB4O1xuICAgIGN1cnNvcjogY29sLXJlc2l6ZTtcbn1cblxuLnRnLXJlc2l6ZS1oLnRnLWxlZnQge1xuICAgIGxlZnQ6IDA7XG59XG5cbi50Zy1yZXNpemUtaC50Zy1yaWdodCB7XG4gICAgcmlnaHQ6IDA7XG59XG5cbi8qIFZlcnRpY2FsIHJlc2l6ZSBoYW5kbGUgKHRpbWUgdmlldykgKi9cbi50Zy1yZXNpemUtdiB7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICBoZWlnaHQ6IDhweDtcbiAgICBjdXJzb3I6IHJvdy1yZXNpemU7XG59XG5cbi50Zy1yZXNpemUtdi50Zy10b3Age1xuICAgIHRvcDogMDtcbiAgICBib3R0b206IGF1dG87XG59XG5cbi50Zy1yZXNpemUtdi50Zy1ib3R0b20ge1xuICAgIGJvdHRvbTogMDtcbiAgICB0b3A6IGF1dG87XG59XG5cbi8qIEdob3N0IGVsZW1lbnQgZm9yIGRyYWcgcHJldmlldyAqL1xuLnRnLWdob3N0LWV2ZW50IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSh2YXIoLS10Zy1wcmltYXJ5LXJnYiksIDAuMTUpO1xuICAgIGJvcmRlcjogMnB4IGRhc2hlZCByZ2JhKHZhcigtLXRnLXByaW1hcnktcmdiKSwgMC44KTtcbiAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgei1pbmRleDogNTtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG4vKiBEcmFnIHByb3h5ICovXG4jdGctZHJhZy1wcm94eSB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIHotaW5kZXg6IDk5OTk7XG4gICAgYm94LXNoYWRvdzogMCAxMnB4IDI0cHggcmdiYSgwLCAwLCAwLCAwLjIpO1xuICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgb3BhY2l0eTogMC45O1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IHRvcCBsZWZ0O1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQWxsLWRheSBFdmVudHMgU2VjdGlvbiAoV2Vlay9EYXkgdmlld3MpXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udGctYWxsZGF5LXNlY3Rpb24ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tdGctYm9yZGVyLWNvbG9yLCAjZTVlN2ViKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10Zy1iZy1jb2xvciwgI2ZmZik7XG4gICAgbWluLWhlaWdodDogMjhweDtcbn1cblxuLnRnLWFsbGRheS1zcGFjZXIge1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIHdpZHRoOiA2MHB4OyAvKiBNYXRjaCB0aW1lIGF4aXMgd2lkdGggKi9cbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCB2YXIoLS10Zy1ib3JkZXItY29sb3IsICNlNWU3ZWIpO1xufVxuXG4udGctYWxsZGF5LWV2ZW50cy1jb250YWluZXIge1xuICAgIGZsZXg6IDE7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1pbi1oZWlnaHQ6IDI4cHg7XG59XG5cbi8qIEFsbC1kYXkgZXZlbnQgYmFyIChzcGFubmluZyBzdHlsZSBsaWtlIG1vbnRoIHZpZXcpICovXG4udGctYWxsZGF5LWV2ZW50IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgaGVpZ2h0OiAyMnB4O1xuICAgIGxpbmUtaGVpZ2h0OiAyMnB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgICBwYWRkaW5nOiAwIDZweDtcbiAgICBmb250LXNpemU6IDEycHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgIGN1cnNvcjogZ3JhYjtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG4udGctYWxsZGF5LWV2ZW50OmhvdmVyIHtcbiAgICBmaWx0ZXI6IGJyaWdodG5lc3MoMS4wNSk7XG4gICAgYm94LXNoYWRvdzogMCAycHggNHB4IHJnYmEoMCwgMCwgMCwgMC4xNSk7XG59XG5cbi50Zy1hbGxkYXktZXZlbnQ6YWN0aXZlIHtcbiAgICBjdXJzb3I6IGdyYWJiaW5nO1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQ3Jvc3MtTWlkbmlnaHQgRXZlbnQgU3R5bGVzIChUaW1lIHZpZXcpXG4gICBFdmVudHMgdGhhdCBzcGFuIG11bHRpcGxlIGRheXMgc2hvdyBhcyBzZWdtZW50ZWQgYmxvY2tzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKiBCYXNlIHN0eWxpbmcgZm9yIHNlZ21lbnRlZCBldmVudHMgKi9cbi50Zy1ldmVudC1ibG9jay50Zy1ldmVudC1zZWdtZW50ZWQge1xuICAgIC8qIFZpc3VhbCBpbmRpY2F0b3IgdGhhdCB0aGlzIGlzIHBhcnQgb2YgYSBtdWx0aS1kYXkgZXZlbnQgKi9cbn1cblxuLyogRmlyc3Qgc2VnbWVudDogZXZlbnQgc3RhcnQgLSBoYXMgcm91bmRlZCB0b3AgY29ybmVycyAqL1xuLnRnLWV2ZW50LWJsb2NrLnRnLWV2ZW50LXNlZ21lbnQtZmlyc3Qge1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7XG4gICAgYm9yZGVyLWJvdHRvbTogMnB4IGRhc2hlZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7XG59XG5cbi8qIExhc3Qgc2VnbWVudDogZXZlbnQgZW5kIC0gaGFzIHJvdW5kZWQgYm90dG9tIGNvcm5lcnMgKi9cbi50Zy1ldmVudC1ibG9jay50Zy1ldmVudC1zZWdtZW50LWxhc3Qge1xuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XG4gICAgYm9yZGVyLXRvcDogMnB4IGRhc2hlZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7XG59XG5cbi8qIE1pZGRsZSBzZWdtZW50czogbm8gcm91bmRlZCBjb3JuZXJzICovXG4udGctZXZlbnQtYmxvY2sudGctZXZlbnQtc2VnbWVudC1taWRkbGUge1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgYm9yZGVyLXRvcDogMnB4IGRhc2hlZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7XG4gICAgYm9yZGVyLWJvdHRvbTogMnB4IGRhc2hlZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7XG59XG5cbi8qIENvbnRpbnVhdGlvbiBpbmRpY2F0b3I6IGV2ZW50IGNvbnRpbnVlcyBmcm9tIHByZXZpb3VzIGRheSAqL1xuLnRnLWV2ZW50LWJsb2NrLnRnLWV2ZW50LWNvbnRpbnVhdGlvbiB7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcbn1cblxuLyogQ29udGludWVkIGluZGljYXRvcjogZXZlbnQgY29udGludWVzIHRvIG5leHQgZGF5ICovXG4udGctZXZlbnQtYmxvY2sudGctZXZlbnQtY29udGludWVkIHtcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwO1xufVxuXG4vKiBDb21iaW5lZDogbWlkZGxlIHNlZ21lbnQgKGNvbnRpbnVhdGlvbiArIGNvbnRpbnVlZCkgKi9cbi50Zy1ldmVudC1ibG9jay50Zy1ldmVudC1jb250aW51YXRpb24udGctZXZlbnQtY29udGludWVkIHtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xufVxuXG4vKiBWaXN1YWwgZW5oYW5jZW1lbnQ6IHN1YnRsZSBpbmRpY2F0b3IgZm9yIGNyb3NzLW1pZG5pZ2h0IGV2ZW50cyAqL1xuLnRnLWV2ZW50LWJsb2NrLnRnLWV2ZW50LWNvbnRpbnVhdGlvbjo6YmVmb3JlLFxuLnRnLWV2ZW50LWJsb2NrLnRnLWV2ZW50LWNvbnRpbnVlZDo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIG9wYWNpdHk6IDAuNztcbn1cblxuLyogVG9wIGFycm93IGluZGljYXRvciBmb3IgY29udGludWF0aW9uIGZyb20gcHJldmlvdXMgZGF5ICovXG4udGctZXZlbnQtYmxvY2sudGctZXZlbnQtY29udGludWF0aW9uOjpiZWZvcmUge1xuICAgIHRvcDogMDtcbiAgICBib3JkZXItbGVmdDogNnB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1yaWdodDogNnB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci10b3A6IDZweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNik7XG59XG5cbi8qIEJvdHRvbSBhcnJvdyBpbmRpY2F0b3IgZm9yIGNvbnRpbnVhdGlvbiB0byBuZXh0IGRheSAqL1xuLnRnLWV2ZW50LWJsb2NrLnRnLWV2ZW50LWNvbnRpbnVlZDo6YWZ0ZXIge1xuICAgIGJvdHRvbTogMDtcbiAgICBib3JkZXItbGVmdDogNnB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1yaWdodDogNnB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1ib3R0b206IDZweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNik7XG59XG4iLCAiLyoqXG4gKiBUYXNrR2VuaXVzIENhbGVuZGFyIC0gT2JzaWRpYW4gVGhlbWUgQWRhcHRhdGlvblxuICpcbiAqIFRoaXMgc3R5bGVzaGVldCBvdmVycmlkZXMgdGhlIGRlZmF1bHQgc3R5bGVzIGZyb20gQHRhc2tnZW5pdXMvY2FsZW5kYXJcbiAqIHRvIHNlYW1sZXNzbHkgaW50ZWdyYXRlIHdpdGggT2JzaWRpYW4ncyB0aGVtZSBzeXN0ZW0gKGxpZ2h0IGFuZCBkYXJrIG1vZGVzKS5cbiAqL1xuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQmFzZSBDYWxlbmRhciBTdHlsZXMgLSBPYnNpZGlhbiBJbnRlZ3JhdGlvblxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnRnLWNhbGVuZGFyIHtcblx0LyogVXNlIE9ic2lkaWFuJ3MgdGhlbWUgY29sb3JzICovXG5cdC0tdGctcHJpbWFyeS1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcblx0LS10Zy1wcmltYXJ5LXJnYjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50LXJnYiwgNTksIDEzMCwgMjQ2KTtcblx0LS10Zy1jZWxsLWhlaWdodDogNjBweDtcblx0LS10Zy1mb250LWhlYWRlcjogdmFyKC0tZm9udC11aS1zbWFsbCk7XG5cdC0tdGctZm9udC1ldmVudDogdmFyKC0tZm9udC11aS1zbWFsbGVyKTtcblxuXHQvKiBUeXBvZ3JhcGh5ICovXG5cdGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWludGVyZmFjZSk7XG5cdC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuXHR1c2VyLXNlbGVjdDogbm9uZTtcblxuXHQvKiBMYXlvdXQgKi9cblx0b3ZlcmZsb3cteDogaGlkZGVuO1xuXHR3aWR0aDogMTAwJTtcblxuXHRib3JkZXItcmFkaXVzOiAwO1xuXHRib3gtc2hhZG93OiBub25lO1xuXG5cdGJvcmRlci1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgVmlldyBDb250YWluZXJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi50Zy12aWV3LWNvbnRhaW5lciB7XG5cdG1pbi1oZWlnaHQ6IDYwMHB4O1xuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xufVxuXG4udGhlbWUtbGlnaHQgLmZ1bGwtY2FsZW5kYXItY29udGFpbmVyIHtcblx0LnRnLWV2ZW50LWJhc2Uge1xuXHRcdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KSAhaW1wb3J0YW50O1xuXHRcdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcblx0fVxuXG5cdC50Zy12aWV3LWNvbnRhaW5lciB7XG5cdFx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcblx0fVxuXG5cdC50Zy1tb250aC1jZWxsIHtcblx0XHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xuXHR9XG5cblx0LnRnLWV2ZW50LWJhc2Uge1xuXHRcdGJveC1zaGFkb3c6IDAgMXB4IDJweCByZ2JhKDAsIDAsIDAsIDAuMSk7XG5cdH1cbn1cblxuLmZ1bGwtY2FsZW5kYXItY29udGFpbmVyIHtcblx0LnRnLWV2ZW50LWJhc2Uge1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRib3JkZXItcmFkaXVzOiA0cHg7XG5cdFx0cGFkZGluZzogMnB4IDZweDtcblx0XHRmb250LXNpemU6IHZhcigtLXRnLWZvbnQtZXZlbnQpO1xuXHRcdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY25ldCk7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnktYWx0KSAhaW1wb3J0YW50O1xuXHRcdGN1cnNvcjogZ3JhYjtcblx0XHR6LWluZGV4OiAxMDtcblx0XHRvdmVyZmxvdzogaGlkZGVuO1xuXHRcdHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cdFx0dGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG5cdFx0Ym94LXNoYWRvdzogdmFyKC0tc2hhZG93LXMpO1xuXHRcdHRyYW5zaXRpb246XG5cdFx0XHRvcGFjaXR5IDAuMnMsXG5cdFx0XHR0cmFuc2Zvcm0gMC4xcztcblx0fVxuXG5cdC50Zy1ldmVudC1iYXNlOmFjdGl2ZSB7XG5cdFx0Y3Vyc29yOiBncmFiYmluZztcblx0fVxuXG5cdC50Zy1ldmVudC1iYXNlOmhvdmVyIHtcblx0XHRvcGFjaXR5OiAwLjk7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xcHgpO1xuXHRcdGJveC1zaGFkb3c6IHZhcigtLXNoYWRvdy1sKTtcblx0XHRjb2xvcjogdmFyKC0tdGV4dC1vbi1hY2NlbnQpO1xuXHRcdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCkgIWltcG9ydGFudDtcblx0fVxuXG5cdC50Zy1ldmVudC1iYXNlLnRnLWlzLWRyYWdnaW5nLXNvdXJjZSB7XG5cdFx0b3BhY2l0eTogMC4zO1xuXHRcdGZpbHRlcjogZ3JheXNjYWxlKDAuMyk7XG5cdH1cblxuXHQvKiBNb250aCB2aWV3IGV2ZW50IGJhciAqL1xuXHQudGctZXZlbnQtYmFyIHtcblx0XHRoZWlnaHQ6IDI2cHg7XG5cdFx0bGluZS1oZWlnaHQ6IDI2cHg7XG5cdH1cblxuXHQvKiBUaW1lIHZpZXcgZXZlbnQgYmxvY2sgKi9cblx0LnRnLWV2ZW50LWJsb2NrIHtcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdFx0anVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuXHRcdGxpbmUtaGVpZ2h0OiAxLjM7XG5cdFx0cGFkZGluZy10b3A6IDRweDtcblx0XHRib3JkZXI6IDFweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMyk7XG5cdH1cblxuXHQudGctZXZlbnQtYmxvY2sgLnRnLXRpbWUtdGV4dCB7XG5cdFx0Zm9udC1zaXplOiAxMHB4O1xuXHRcdG9wYWNpdHk6IDAuOTtcblx0XHRtYXJnaW4tYm90dG9tOiAwO1xuXHR9XG5cblx0LnRnLWV2ZW50LXRpdGxlIHtcblx0XHRmb250LXdlaWdodDogYm9sZDtcblx0XHRvdmVyZmxvdzogaGlkZGVuO1xuXHRcdHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuXHR9XG5cblx0LyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIFRhc2sgQ291bnQgQmFkZ2VcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cblx0LnRnLWV2ZW50LWNvdW50LWJhZGdlIHtcblx0XHRkaXNwbGF5OiBub25lO1xuXHR9XG5cblx0LnRnLWV2ZW50LWNvdW50LWJhZGdlLmhhcy1wcmlvcml0eSB7XG5cdFx0YmFja2dyb3VuZDogdmFyKC0tY29sb3ItcmVkKTtcblx0fVxuXG5cdC8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBEcmFnICYgRHJvcCBTdHlsZXNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cblx0LyogUmVzaXplIGhhbmRsZXMgKi9cblx0LnRnLXJlc2l6ZS1oYW5kbGUge1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHR6LWluZGV4OiAyMDtcblx0XHRvcGFjaXR5OiAwO1xuXHRcdHRyYW5zaXRpb246IG9wYWNpdHkgMC4ycztcblx0fVxuXG5cdC50Zy1ldmVudC1iYXNlOmhvdmVyIC50Zy1yZXNpemUtaGFuZGxlIHtcblx0XHRvcGFjaXR5OiAxO1xuXHR9XG5cblx0LnRnLXJlc2l6ZS1oYW5kbGU6aG92ZXIge1xuXHRcdGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC40KTtcblx0fVxuXG5cdC8qIEhvcml6b250YWwgcmVzaXplIGhhbmRsZXMgKG1vbnRoIHZpZXcpICovXG5cdC50Zy1yZXNpemUtaCB7XG5cdFx0dG9wOiAwO1xuXHRcdGJvdHRvbTogMDtcblx0XHR3aWR0aDogMTJweDtcblx0XHRjdXJzb3I6IGNvbC1yZXNpemU7XG5cdH1cblxuXHQudGctcmVzaXplLWgudGctbGVmdCB7XG5cdFx0bGVmdDogMDtcblx0fVxuXG5cdC50Zy1yZXNpemUtaC50Zy1yaWdodCB7XG5cdFx0cmlnaHQ6IDA7XG5cdH1cblxuXHQvKiBWZXJ0aWNhbCByZXNpemUgaGFuZGxlICh0aW1lIHZpZXcpICovXG5cdC50Zy1yZXNpemUtdiB7XG5cdFx0bGVmdDogMDtcblx0XHRyaWdodDogMDtcblx0XHRoZWlnaHQ6IDhweDtcblx0XHRjdXJzb3I6IHJvdy1yZXNpemU7XG5cdH1cblxuXHQudGctcmVzaXplLXYudGctdG9wIHtcblx0XHR0b3A6IDA7XG5cdFx0Ym90dG9tOiBhdXRvO1xuXHR9XG5cblx0LnRnLXJlc2l6ZS12LnRnLWJvdHRvbSB7XG5cdFx0Ym90dG9tOiAwO1xuXHRcdHRvcDogYXV0bztcblx0fVxuXG5cdC8qIEdob3N0IGVsZW1lbnQgZm9yIGRyYWcgcHJldmlldyAqL1xuXHQudGctZ2hvc3QtZXZlbnQge1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKHZhcigtLXRnLXByaW1hcnktcmdiKSwgMC4xNSk7XG5cdFx0Ym9yZGVyOiAycHggZGFzaGVkIHJnYmEodmFyKC0tdGctcHJpbWFyeS1yZ2IpLCAwLjgpO1xuXHRcdGJvcmRlci1yYWRpdXM6IDRweDtcblx0XHR6LWluZGV4OiA1O1xuXHRcdHBvaW50ZXItZXZlbnRzOiBub25lO1xuXHRcdGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cdH1cblxuXHQvKiBEcmFnIHByb3h5ICovXG5cdCN0Zy1kcmFnLXByb3h5IHtcblx0XHRwb3NpdGlvbjogZml4ZWQ7XG5cdFx0cG9pbnRlci1ldmVudHM6IG5vbmU7XG5cdFx0ei1pbmRleDogOTk5OTtcblx0XHRib3gtc2hhZG93OiAwIDEycHggMjRweCByZ2JhKDAsIDAsIDAsIDAuMik7XG5cdFx0Ym9yZGVyLXJhZGl1czogNHB4O1xuXHRcdHZpc2liaWxpdHk6IGhpZGRlbjtcblx0XHRvcGFjaXR5OiAwLjk7XG5cdFx0dHJhbnNmb3JtLW9yaWdpbjogdG9wIGxlZnQ7XG5cdH1cblxuXHQvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgR3JpZCBMYXlvdXQgSGVscGVyc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuXHQudGctZ3JpZC03IHtcblx0XHRkaXNwbGF5OiBncmlkO1xuXHRcdGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDcsIDFmcik7XG5cdFx0Z2FwOiAxcHg7XG5cdH1cblxuXHQudGctdGltZS1ncmlkLWNvbnRhaW5lcjo6LXdlYmtpdC1zY3JvbGxiYXIge1xuXHRcdHdpZHRoOiA4cHg7XG5cdH1cblxuXHQudGctdGltZS1ncmlkLWNvbnRhaW5lcjo6LXdlYmtpdC1zY3JvbGxiYXItdHJhY2sge1xuXHRcdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcblx0fVxuXG5cdC50Zy10aW1lLWdyaWQtY29udGFpbmVyOjotd2Via2l0LXNjcm9sbGJhci10aHVtYiB7XG5cdFx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xuXHRcdGJvcmRlci1yYWRpdXM6IDRweDtcblx0fVxuXG5cdC50Zy10aW1lLWdyaWQtY29udGFpbmVyOjotd2Via2l0LXNjcm9sbGJhci10aHVtYjpob3ZlciB7XG5cdFx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXItaG92ZXIpO1xuXHR9XG5cblx0LyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIEFjY2Vzc2liaWxpdHlcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cblx0LnRnLWV2ZW50LWJhc2U6Zm9jdXMge1xuXHRcdG91dGxpbmU6IDJweCBzb2xpZCB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xuXHRcdG91dGxpbmUtb2Zmc2V0OiAycHg7XG5cdH1cblxuXHQudGctbmF2LWJ0bjpmb2N1cyxcblx0LnRnLXZpZXctYnRuOmZvY3VzIHtcblx0XHRvdXRsaW5lOiAycHggc29saWQgdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcblx0XHRvdXRsaW5lLW9mZnNldDogMXB4O1xuXHR9XG5cblx0LyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIEFuaW1hdGlvbiAmIFRyYW5zaXRpb25zXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG5cdC50Zy1tb250aC1jZWxsLFxuXHQudGctZXZlbnQtYmFzZSxcblx0LnRnLW5hdi1idG4sXG5cdC50Zy12aWV3LWJ0biB7XG5cdFx0dHJhbnNpdGlvbjogYWxsIDAuMnMgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC4yLCAxKTtcblx0fVxuXG5cdC8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBUYXNrIENoZWNrYm94IE92ZXJsYXlcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cblx0LyogQ29udGFpbmVyIGZvciBjaGVja2JveCBpbiBUR0NhbGVuZGFyIGV2ZW50cyAqL1xuXHQudGctZXZlbnQgLnRhc2stY2hlY2tib3gtb3ZlcmxheSB7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdGxlZnQ6IDJweDtcblx0XHR0b3A6IDUwJTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG5cdFx0ei1pbmRleDogMTU7XG5cdFx0YmFja2dyb3VuZDogcmdiYSh2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnktcmdiLCAyNTUsIDI1NSwgMjU1KSwgMC45KTtcblx0XHRib3JkZXItcmFkaXVzOiAzcHg7XG5cdFx0cGFkZGluZzogMCAycHg7XG5cdFx0ZGlzcGxheTogZmxleDtcblx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRcdG9wYWNpdHk6IDA7XG5cdFx0dHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzO1xuXHR9XG5cblx0LyogU2hvdyBjaGVja2JveCBvbiBob3ZlciAqL1xuXHQudGctZXZlbnQ6aG92ZXIgLnRhc2stY2hlY2tib3gtb3ZlcmxheSB7XG5cdFx0b3BhY2l0eTogMTtcblx0fVxuXG5cdC8qIENoZWNrYm94IHN0eWxpbmcgKi9cblx0LnRhc2stY2hlY2tib3gtb3ZlcmxheSAudGFzay1saXN0LWl0ZW0tY2hlY2tib3gge1xuXHRcdHdpZHRoOiAxNnB4O1xuXHRcdGhlaWdodDogMTZweDtcblx0XHRtYXJnaW46IDA7XG5cdFx0Y3Vyc29yOiBwb2ludGVyO1xuXHRcdHotaW5kZXg6IDIwO1xuXHR9XG5cblx0LyogRW5zdXJlIGV2ZW50IHRpdGxlIGRvZXNuJ3Qgb3ZlcmxhcCB3aXRoIGNoZWNrYm94ICovXG5cdC50Zy1ldmVudDpoYXMoLnRhc2stY2hlY2tib3gtb3ZlcmxheSkgLnRnLWV2ZW50LXRpdGxlIHtcblx0XHRwYWRkaW5nLWxlZnQ6IDIycHg7XG5cdH1cblxuXHQvKiBNb250aCB2aWV3IC0gYWx3YXlzIHNob3cgY2hlY2tib3ggZm9yIGJldHRlciBVWCAqL1xuXHQudGctbW9udGgtdmlldyAudGctZXZlbnQgLnRhc2stY2hlY2tib3gtb3ZlcmxheSB7XG5cdFx0b3BhY2l0eTogMTtcblx0fVxuXG5cdC50Zy1hbGxkYXktZXZlbnRzLWNvbnRhaW5lciB7XG5cdFx0bWFyZ2luLXJpZ2h0OiB2YXIoLS1zaXplLTQtMyk7XG5cdH1cblxuXHQudGctYWxsZGF5LXNlY3Rpb24ge1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0ZmxleC1kaXJlY3Rpb246IHJvdztcblx0XHRib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xuXHRcdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcblx0XHRtaW4taGVpZ2h0OiAyOHB4O1xuXHR9XG5cblx0LnRnLWFsbGRheS1zcGFjZXIge1xuXHRcdGJvcmRlci1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xuXHR9XG5cblx0LyogRGF5IGNvbHVtbnMgKi9cblx0LnRnLWRheS1jb2x1bW4ge1xuXHRcdGZsZXg6IDE7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7IC8qIEZvcmNlIHJlbGF0aXZlIHBvc2l0aW9uaW5nIGZvciByYW5nZSBzZWxlY3Rpb24gcHJldmlldyAqL1xuXHRcdGJvcmRlci1yaWdodDogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcblx0XHRiYWNrZ3JvdW5kOiByZXBlYXRpbmctbGluZWFyLWdyYWRpZW50KFxuXHRcdFx0dG8gYm90dG9tLFxuXHRcdFx0dHJhbnNwYXJlbnQgMCxcblx0XHRcdHRyYW5zcGFyZW50IGNhbGModmFyKC0tdGctY2VsbC1oZWlnaHQpIC0gMXB4KSxcblx0XHRcdHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKSB2YXIoLS10Zy1jZWxsLWhlaWdodClcblx0XHQpO1xuXHR9XG5cblx0LyogUmFuZ2Ugc2VsZWN0aW9uIHByZXZpZXcgZm9yIHRpbWUgdmlldyAod2Vlay9kYXkpICovXG5cdC50Zy10aW1lLXJhbmdlLXByZXZpZXcge1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuXHRcdGJhY2tncm91bmQtY29sb3I6IHJnYmEoXG5cdFx0XHR2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQtcmdiLCA1OSwgMTMwLCAyNDYpLFxuXHRcdFx0MC4xNVxuXHRcdCk7XG5cdFx0Ym9yZGVyOiAycHggZGFzaGVkXG5cdFx0XHRyZ2JhKHZhcigtLWludGVyYWN0aXZlLWFjY2VudC1yZ2IsIDU5LCAxMzAsIDI0NiksIDAuOCk7XG5cdFx0cG9pbnRlci1ldmVudHM6IG5vbmU7XG5cdFx0ei1pbmRleDogMTU7XG5cdFx0Ym9yZGVyLXJhZGl1czogNHB4O1xuXHRcdGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cdH1cblxuXHQvKiBSYW5nZSBwcmV2aWV3IGNsYXNzIGZvciBkYXkgY29sdW1ucyAobXVsdGktZGF5IHNlbGVjdGlvbikgKi9cblx0LnRnLWRheS1jb2x1bW4udGctcmFuZ2UtcHJldmlldyB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogcmdiYShcblx0XHRcdHZhcigtLWludGVyYWN0aXZlLWFjY2VudC1yZ2IsIDU5LCAxMzAsIDI0NiksXG5cdFx0XHQwLjA4XG5cdFx0KTtcblx0fVxuXG5cdC50Zy1kYXktY29sdW1uLnRnLXJhbmdlLXByZXZpZXc6OmJlZm9yZSB7XG5cdFx0Y29udGVudDogXCJcIjtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0aW5zZXQ6IDA7XG5cdFx0Ym9yZGVyLWxlZnQ6IDNweCBzb2xpZFxuXHRcdFx0cmdiYSh2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQtcmdiLCA1OSwgMTMwLCAyNDYpLCAwLjUpO1xuXHRcdGJvcmRlci1yaWdodDogM3B4IHNvbGlkXG5cdFx0XHRyZ2JhKHZhcigtLWludGVyYWN0aXZlLWFjY2VudC1yZ2IsIDU5LCAxMzAsIDI0NiksIDAuNSk7XG5cdFx0cG9pbnRlci1ldmVudHM6IG5vbmU7XG5cdFx0Ym94LXNpemluZzogYm9yZGVyLWJveDtcblx0fVxuXG5cdC8qIE1vbnRoIHZpZXcgcmFuZ2UgcHJldmlldyAqL1xuXHQudGctbW9udGgtY2VsbC50Zy1yYW5nZS1wcmV2aWV3IHtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKFxuXHRcdFx0dmFyKC0taW50ZXJhY3RpdmUtYWNjZW50LXJnYiwgNTksIDEzMCwgMjQ2KSxcblx0XHRcdDAuMTVcblx0XHQpICFpbXBvcnRhbnQ7XG5cdH1cblxuXHQudGctbW9udGgtY2VsbC50Zy1yYW5nZS1wcmV2aWV3OjpiZWZvcmUge1xuXHRcdGNvbnRlbnQ6IFwiXCI7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdGluc2V0OiAwO1xuXHRcdGJvcmRlcjogMnB4IHNvbGlkIHJnYmEodmFyKC0taW50ZXJhY3RpdmUtYWNjZW50LXJnYiwgNTksIDEzMCwgMjQ2KSwgMC41KTtcblx0XHRwb2ludGVyLWV2ZW50czogbm9uZTtcblx0XHRib3gtc2l6aW5nOiBib3JkZXItYm94O1xuXHR9XG5cblx0LyogUHJldmVudCB0ZXh0IHNlbGVjdGlvbiBkdXJpbmcgcmFuZ2Ugc2VsZWN0aW9uICovXG5cdC50Zy1jYWxlbmRhci50Zy1zZWxlY3Rpbmcge1xuXHRcdHVzZXItc2VsZWN0OiBub25lO1xuXHRcdC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG5cdH1cblxuXHQudGctY2FsZW5kYXIudGctc2VsZWN0aW5nICoge1xuXHRcdGN1cnNvcjogY3Jvc3NoYWlyICFpbXBvcnRhbnQ7XG5cdH1cblxuXHQvKiBIaWRlIHRoZSBsaWJyYXJ5J3MgYnVpbHQtaW4gaGVhZGVyIHNpbmNlIHdlIHVzZSBvdXIgb3duIGN1c3RvbSBjYWxlbmRhci1oZWFkZXIgKi9cblx0LnRnLWhlYWRlciB7XG5cdFx0ZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuXHR9XG5cblx0LnRnLXRpdGxlIHtcblx0XHRmb250LXNpemU6IDEuMjVyZW07XG5cdFx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG5cdFx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcblx0fVxuXG5cdC8qIE5hdmlnYXRpb24gYnV0dG9ucyAqL1xuXHQudGctbmF2IHtcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdGdhcDogOHB4O1xuXHR9XG5cblx0LnRnLW5hdi1idG4ge1xuXHRcdHBhZGRpbmc6IDRweCAxMnB4O1xuXHRcdGZvbnQtc2l6ZTogMTRweDtcblx0XHRib3JkZXItcmFkaXVzOiA0cHg7XG5cdFx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xuXHRcdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcblx0XHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xuXHRcdGN1cnNvcjogcG9pbnRlcjtcblx0XHR0cmFuc2l0aW9uOiBhbGwgMC4ycztcblx0fVxuXG5cdC50Zy1uYXYtYnRuOmhvdmVyIHtcblx0XHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyKTtcblx0XHRib3JkZXItY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyLWhvdmVyKTtcblx0fVxuXG5cdC50Zy1uYXYtYnRuLnRnLXRvZGF5IHtcblx0XHRiYWNrZ3JvdW5kOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xuXHRcdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XG5cdFx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xuXHR9XG5cblx0LnRnLW5hdi1idG4udGctdG9kYXk6aG92ZXIge1xuXHRcdG9wYWNpdHk6IDAuOTtcblx0fVxuXG5cdC8qIFZpZXcgc3dpdGNoZXIgKi9cblx0LnRnLXZpZXctc3dpdGNoIHtcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcblx0XHRwYWRkaW5nOiA0cHg7XG5cdFx0Ym9yZGVyLXJhZGl1czogOHB4O1xuXHRcdGdhcDogNHB4O1xuXHR9XG5cblx0LnRnLXZpZXctYnRuIHtcblx0XHRwYWRkaW5nOiA0cHggMTJweDtcblx0XHRmb250LXNpemU6IDE0cHg7XG5cdFx0Ym9yZGVyLXJhZGl1czogNnB4O1xuXHRcdGJvcmRlcjogbm9uZTtcblx0XHRiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcblx0XHRjdXJzb3I6IHBvaW50ZXI7XG5cdFx0dHJhbnNpdGlvbjogYWxsIDAuMnM7XG5cdFx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xuXHR9XG5cblx0LnRnLXZpZXctYnRuOmhvdmVyIHtcblx0XHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xuXHRcdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpO1xuXHR9XG5cblx0LnRnLXZpZXctYnRuLnRnLWFjdGl2ZSB7XG5cdFx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcblx0XHRib3gtc2hhZG93OiAwIDFweCAzcHggcmdiYSgwLCAwLCAwLCAwLjEpO1xuXHRcdGNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xuXHRcdGZvbnQtd2VpZ2h0OiA1MDA7XG5cdH1cblxuXHQvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgTW9udGggVmlldyBTdHlsZXNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cblx0LnRnLW1vbnRoLXJvdyB7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdC8qaGVpZ2h0OiAxMjBweDsqL1xuXHRcdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XG5cdH1cblxuXHQudGctbW9udGgtY2VsbCB7XG5cdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdGJvcmRlci1yaWdodDogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0ei1pbmRleDogMTtcblx0XHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xuXHR9XG5cblx0LnRnLW1vbnRoLWNlbGw6aG92ZXIge1xuXHRcdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeS1hbHQpO1xuXHR9XG5cblx0LnRnLW1vbnRoLWNlbGw6bGFzdC1jaGlsZCB7XG5cdFx0Ym9yZGVyLXJpZ2h0OiBub25lO1xuXHR9XG5cblx0LyogTW9udGggdmlldyBoZWFkZXIgKi9cblx0LnRnLW1vbnRoLWhlYWRlciB7XG5cdFx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcblx0XHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XG5cdH1cblxuXHQudGctbW9udGgtaGVhZGVyLWNlbGwge1xuXHRcdHBhZGRpbmc6IDhweDtcblx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0Zm9udC1zaXplOiAxMnB4O1xuXHRcdGZvbnQtd2VpZ2h0OiBib2xkO1xuXHRcdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcblx0fVxuXG5cdC8qIERhdGUgbnVtYmVyIGluIG1vbnRoIGNlbGwgKi9cblx0LnRnLWRhdGUtbnVtYmVyIHtcblx0XHR0ZXh0LWFsaWduOiByaWdodDtcblx0XHRmb250LXNpemU6IDEycHg7XG5cdFx0cGFkZGluZzogNHB4O1xuXHRcdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XG5cdH1cblxuXHQudGctZGF0ZS1udW1iZXIudGctY3VycmVudC1tb250aCB7XG5cdFx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcblx0fVxuXG5cdC50Zy1kYXRlLW51bWJlci50Zy1vdGhlci1tb250aCB7XG5cdFx0Y29sb3I6IHZhcigtLXRleHQtZmFpbnQpO1xuXHR9XG5cblx0LnRnLWRhdGUtbnVtYmVyLnRnLXRvZGF5IHtcblx0XHRjb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcblx0XHRmb250LXdlaWdodDogYm9sZDtcblx0XHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyKTtcblx0XHRib3JkZXItcmFkaXVzOiA1MCU7XG5cdFx0d2lkdGg6IDI0cHg7XG5cdFx0aGVpZ2h0OiAyNHB4O1xuXHRcdGRpc3BsYXk6IGlubGluZS1mbGV4O1xuXHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdH1cblxuXHQudGctZGF0ZS1udW1iZXIucGFzdC1kdWUge1xuXHRcdGNvbG9yOiB2YXIoLS10ZXh0LWVycm9yKTtcblx0fVxuXG5cdC8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBUaW1lIFZpZXcgU3R5bGVzIChXZWVrL0RheSlcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cblx0LnRnLXRpbWUtZ3JpZC1jb250YWluZXIge1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0XHRoZWlnaHQ6IDYwMHB4O1xuXHRcdG92ZXJmbG93LXk6IGF1dG87XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdHNjcm9sbC1iZWhhdmlvcjogYXV0bztcblx0fVxuXG5cdC50Zy10aW1lLWhlYWRlciB7XG5cdFx0ZGlzcGxheTogZmxleDtcblx0XHRib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xuXHRcdHBvc2l0aW9uOiBzdGlja3k7XG5cdFx0dG9wOiAwO1xuXHRcdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XG5cdFx0ei1pbmRleDogMzA7XG5cdFx0Ym94LXNoYWRvdzogMCAycHggNHB4IHJnYmEoMCwgMCwgMCwgMC4wMik7XG5cblx0XHRwYWRkaW5nLXJpZ2h0OiB2YXIoLS1zaXplLTQtMyk7XG5cdH1cblxuXHQudGctdGltZS1oZWFkZXItY2VsbCB7XG5cdFx0ZmxleDogMTtcblx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0cGFkZGluZzogOHB4O1xuXHRcdGJvcmRlci1yaWdodDogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcblx0XHRmb250LXNpemU6IHZhcigtLXRnLWZvbnQtaGVhZGVyKTtcblx0XHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xuXHR9XG5cblx0LnRnLXRpbWUtYm9keSB7XG5cdFx0ZGlzcGxheTogZmxleDtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0bWluLWhlaWdodDogY2FsYyh2YXIoLS10Zy1jZWxsLWhlaWdodCkgKiAyNCk7XG5cdH1cblxuXHQvKiBUaW1lIGF4aXMgKi9cblx0LnRnLXRpbWUtYXhpcyB7XG5cdFx0d2lkdGg6IDYwcHg7XG5cdFx0ZmxleC1zaHJpbms6IDA7XG5cdFx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xuXHRcdGJvcmRlci1yaWdodDogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcblx0XHRwb3NpdGlvbjogc3RpY2t5O1xuXHRcdGxlZnQ6IDA7XG5cdFx0ei1pbmRleDogMjA7XG5cdH1cblxuXHQudGctdGltZS1heGlzLWxhYmVsIHtcblx0XHRoZWlnaHQ6IHZhcigtLXRnLWNlbGwtaGVpZ2h0KTtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdFx0dGV4dC1hbGlnbjogcmlnaHQ7XG5cdFx0cGFkZGluZy1yaWdodDogOHB4O1xuXHRcdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcblx0XHRmb250LXNpemU6IDExcHg7XG5cdFx0dG9wOiAtNnB4O1xuXHRcdHBvaW50ZXItZXZlbnRzOiBub25lO1xuXHR9XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBEYXJrIFRoZW1lIFNwZWNpZmljIEFkanVzdG1lbnRzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udGhlbWUtZGFyayAuZnVsbC1jYWxlbmRhci1jb250YWluZXIge1xuXHQudGctdmlldy1jb250YWluZXIge1xuXHRcdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XG5cdH1cblxuXHQudGctbW9udGgtY2VsbCB7XG5cdFx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcblx0fVxuXG5cdC50Zy1tb250aC1jZWxsOmhvdmVyIHtcblx0XHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnktYWx0KTtcblx0fVxuXG5cdC50Zy10aW1lLWhlYWRlciB7XG5cdFx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcblx0fVxuXG5cdC50Zy1ldmVudC1iYXNlIHtcblx0XHRib3gtc2hhZG93OiAwIDFweCAzcHggcmdiYSgwLCAwLCAwLCAwLjMpO1xuXHR9XG5cblx0LnRnLWdob3N0LWV2ZW50IHtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKHZhcigtLXRnLXByaW1hcnktcmdiKSwgMC4yKTtcblx0XHRib3JkZXItY29sb3I6IHJnYmEodmFyKC0tdGctcHJpbWFyeS1yZ2IpLCAwLjYpO1xuXHR9XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBTY3JvbGxiYXIgU3R5bGluZyAoT2JzaWRpYW4tbGlrZSlcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBSZXNwb25zaXZlIEFkanVzdG1lbnRzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG5AbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcblx0LnRoZW1lLWRhcmsgLmZ1bGwtY2FsZW5kYXItY29udGFpbmVyIHtcblx0XHQudGctY2FsZW5kYXIge1xuXHRcdFx0LS10Zy1jZWxsLWhlaWdodDogNTBweDtcblx0XHRcdC0tdGctZm9udC1oZWFkZXI6IDEycHg7XG5cdFx0XHQtLXRnLWZvbnQtZXZlbnQ6IDExcHg7XG5cdFx0fVxuXG5cdFx0LnRnLXRpbWUtYXhpcyB7XG5cdFx0XHR3aWR0aDogNTBweDtcblx0XHR9XG5cblx0XHQudGctdmlldy1zd2l0Y2gge1xuXHRcdFx0ZmxleC13cmFwOiB3cmFwO1xuXHRcdH1cblx0fVxufVxuXG4vKiBTbW9vdGggZW50cnkgYW5pbWF0aW9uIGZvciBldmVudHMgKi9cbkBrZXlmcmFtZXMgdGctZXZlbnQtZW50ZXIge1xuXHRmcm9tIHtcblx0XHRvcGFjaXR5OiAwO1xuXHRcdHRyYW5zZm9ybTogc2NhbGUoMC45NSk7XG5cdH1cblx0dG8ge1xuXHRcdG9wYWNpdHk6IDE7XG5cdFx0dHJhbnNmb3JtOiBzY2FsZSgxKTtcblx0fVxufVxuIiwgIi8qIHN0eWxlcy9jYWxlbmRhci9jYWxlbmRhci5jc3MgKi9cblxuLmZ1bGwtY2FsZW5kYXItY29udGFpbmVyIHtcblx0Y29udGFpbmVyLXR5cGU6IGlubGluZS1zaXplO1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRoZWlnaHQ6IDEwMCU7IC8qIE9yIGFkanVzdCBhcyBuZWVkZWQgKi9cblx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0ZmxleC1ncm93OiAxO1xufVxuXG4uZnVsbC1jYWxlbmRhci1jb250YWluZXIgLmNhbGVuZGFyLWhlYWRlciB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0cGFkZGluZzogdmFyKC0tc2l6ZS0yLTMpIHZhcigtLXNpemUtNC00KTsgLyogVXNlIE9ic2lkaWFuIHZhcmlhYmxlcyAqL1xuXHQvKmJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7Ki9cblx0ZmxleC1zaHJpbms6IDA7IC8qIFByZXZlbnQgaGVhZGVyIGZyb20gc2hyaW5raW5nICovXG5cdG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5mdWxsLWNhbGVuZGFyLWNvbnRhaW5lciAuY2FsZW5kYXItbmF2LFxuLmZ1bGwtY2FsZW5kYXItY29udGFpbmVyIC5jYWxlbmRhci12aWV3LXN3aXRjaGVyIHtcblx0ZGlzcGxheTogZmxleDtcblx0Z2FwOiB2YXIoLS1zaXplLTItMik7XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIE5hdmlnYXRpb24gQ29udHJvbCAocHJldi90b2RheS9uZXh0KVxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4uZnVsbC1jYWxlbmRhci1jb250YWluZXIgLmNhbGVuZGFyLW5hdiB7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLW0pO1xuXHRwYWRkaW5nOiAzcHg7XG5cdGdhcDogMnB4O1xufVxuXG4uZnVsbC1jYWxlbmRhci1jb250YWluZXIgLmNhbGVuZGFyLW5hdiA+IGRpdiB7XG5cdGRpc3BsYXk6IGZsZXg7XG59XG5cbi5mdWxsLWNhbGVuZGFyLWNvbnRhaW5lciAuY2FsZW5kYXItbmF2IGJ1dHRvbiB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXHRwYWRkaW5nOiA2cHggMTBweDtcblx0bWluLXdpZHRoOiAyOHB4O1xuXHRoZWlnaHQ6IDI4cHg7XG5cdGJvcmRlcjogbm9uZTtcblx0YmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG5cdGJvcmRlci1yYWRpdXM6IGNhbGModmFyKC0tcmFkaXVzLW0pIC0gMnB4KTtcblx0Y3Vyc29yOiBwb2ludGVyO1xuXHR0cmFuc2l0aW9uOlxuXHRcdGNvbG9yIDAuMTVzIGVhc2UsXG5cdFx0YmFja2dyb3VuZC1jb2xvciAwLjE1cyBlYXNlO1xuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbGVyKTtcblx0Zm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtbWVkaXVtKTtcblxuXHRib3gtc2hhZG93OiBub25lO1xufVxuXG4uZnVsbC1jYWxlbmRhci1jb250YWluZXIgLmNhbGVuZGFyLW5hdiBidXR0b246aG92ZXIge1xuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyKTtcbn1cblxuLmZ1bGwtY2FsZW5kYXItY29udGFpbmVyIC5jYWxlbmRhci1uYXYgYnV0dG9uOmFjdGl2ZSB7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XG59XG5cbi5mdWxsLWNhbGVuZGFyLWNvbnRhaW5lciAuY2FsZW5kYXItbmF2IC50b2RheS1idXR0b24ge1xuXHRwYWRkaW5nOiA2cHggMTJweDtcblx0Zm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtc2VtaWJvbGQpO1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBTZWdtZW50ZWQgQ29udHJvbCBWaWV3IFN3aXRjaGVyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi5mdWxsLWNhbGVuZGFyLWNvbnRhaW5lciAuY2FsZW5kYXItc2VnbWVudGVkLWNvbnRyb2wge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLW0pO1xuXHRwYWRkaW5nOiAzcHg7XG5cdGdhcDogMnB4O1xufVxuXG4vKiBTbGlkaW5nIGFjdGl2ZSBpbmRpY2F0b3IgKi9cbi5mdWxsLWNhbGVuZGFyLWNvbnRhaW5lciAuY2FsZW5kYXItc2VnbWVudGVkLWluZGljYXRvciB7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0dG9wOiAzcHg7XG5cdGJvdHRvbTogM3B4O1xuXHRsZWZ0OiAzcHg7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XG5cdGJvcmRlci1yYWRpdXM6IGNhbGModmFyKC0tcmFkaXVzLW0pIC0gMnB4KTtcblx0dHJhbnNpdGlvbjpcblx0XHR0cmFuc2Zvcm0gMC4ycyBlYXNlLFxuXHRcdHdpZHRoIDAuMnMgZWFzZTtcblx0ei1pbmRleDogMDtcblx0cG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cbi8qIFNlZ21lbnQgYnV0dG9uIGJhc2Ugc3R5bGVzICovXG4uZnVsbC1jYWxlbmRhci1jb250YWluZXIgYnV0dG9uLmNhbGVuZGFyLXNlZ21lbnQtYnRuIHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHR6LWluZGV4OiAxO1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0Z2FwOiA0cHg7XG5cdHBhZGRpbmc6IDZweCAxMHB4O1xuXHRtaW4td2lkdGg6IDMycHg7XG5cdGhlaWdodDogMjhweDtcblx0Ym9yZGVyOiBub25lO1xuXHRiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcblx0Ym9yZGVyLXJhZGl1czogY2FsYyh2YXIoLS1yYWRpdXMtbSkgLSAycHgpO1xuXHRjdXJzb3I6IHBvaW50ZXI7XG5cdHRyYW5zaXRpb246XG5cdFx0Y29sb3IgMC4xNXMgZWFzZSxcblx0XHRiYWNrZ3JvdW5kLWNvbG9yIDAuMTVzIGVhc2U7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsKTtcblx0Zm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtbWVkaXVtKTtcblx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuXHRib3gtc2hhZG93OiBub25lO1xufVxuXG4uZnVsbC1jYWxlbmRhci1jb250YWluZXIgYnV0dG9uLmNhbGVuZGFyLXNlZ21lbnQtYnRuOmhvdmVyIHtcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3Zlcik7XG59XG5cbi5mdWxsLWNhbGVuZGFyLWNvbnRhaW5lciBidXR0b24uY2FsZW5kYXItc2VnbWVudC1idG4uaXMtYWN0aXZlIHtcblx0Y29sb3I6IHZhcigtLXRleHQtb24tYWNjZW50KTtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYWNjZW50KTsgLyogSW5kaWNhdG9yIHByb3ZpZGVzIGJhY2tncm91bmQgKi9cbn1cblxuLmZ1bGwtY2FsZW5kYXItY29udGFpbmVyIGJ1dHRvbi5jYWxlbmRhci1zZWdtZW50LWJ0bi5pcy1hY3RpdmU6aG92ZXIge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1hY2NlbnQtMSk7XG59XG5cbi8qIFNob3J0IGxhYmVsIChhbHdheXMgdmlzaWJsZSkgKi9cbi5mdWxsLWNhbGVuZGFyLWNvbnRhaW5lciAuY2FsZW5kYXItc2VnbWVudC1zaG9ydCB7XG5cdGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXNlbWlib2xkKTtcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsKTtcblx0bGluZS1oZWlnaHQ6IDE7XG59XG5cbi8qIEZ1bGwgbGFiZWwgKGhpZGRlbiBieSBkZWZhdWx0LCBzaG93biBvbiB3aWRlciBzY3JlZW5zKSAqL1xuLmZ1bGwtY2FsZW5kYXItY29udGFpbmVyIC5jYWxlbmRhci1zZWdtZW50LWZ1bGwge1xuXHRkaXNwbGF5OiBub25lO1xuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGxlcik7XG5cdGxpbmUtaGVpZ2h0OiAxO1xufVxuXG4vKiBDdXN0b20gdmlldyBpY29uICovXG4uZnVsbC1jYWxlbmRhci1jb250YWluZXIgLmNhbGVuZGFyLXNlZ21lbnQtaWNvbiB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXHR3aWR0aDogMTRweDtcblx0aGVpZ2h0OiAxNHB4O1xufVxuXG4uZnVsbC1jYWxlbmRhci1jb250YWluZXIgLmNhbGVuZGFyLXNlZ21lbnQtaWNvbiBzdmcge1xuXHR3aWR0aDogMTRweDtcblx0aGVpZ2h0OiAxNHB4O1xufVxuXG4vKiBTZXBhcmF0b3IgYmV0d2VlbiBidWlsdC1pbiBhbmQgY3VzdG9tIHZpZXdzICovXG4uZnVsbC1jYWxlbmRhci1jb250YWluZXIgLmNhbGVuZGFyLXNlZ21lbnQtc2VwYXJhdG9yIHtcblx0d2lkdGg6IDFweDtcblx0aGVpZ2h0OiAxNnB4O1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XG5cdG1hcmdpbjogMCA0cHg7XG59XG5cbi8qIEN1c3RvbSBzZWdtZW50IGJ1dHRvbiBhZGp1c3RtZW50cyAqL1xuLmZ1bGwtY2FsZW5kYXItY29udGFpbmVyIC5jYWxlbmRhci1zZWdtZW50LWJ0bi5jYWxlbmRhci1zZWdtZW50LWN1c3RvbSB7XG5cdGdhcDogMnB4O1xufVxuXG4uZnVsbC1jYWxlbmRhci1jb250YWluZXJcblx0LmNhbGVuZGFyLXNlZ21lbnQtYnRuLmNhbGVuZGFyLXNlZ21lbnQtY3VzdG9tXG5cdC5jYWxlbmRhci1zZWdtZW50LWljb24ge1xuXHRkaXNwbGF5OiBmbGV4O1xufVxuXG4uZnVsbC1jYWxlbmRhci1jb250YWluZXIgLmNhbGVuZGFyLWN1cnJlbnQtZGF0ZSB7XG5cdGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXNlbWlib2xkKTtcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLWxhcmdlKTtcblx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRmbGV4LWdyb3c6IDE7IC8qIEFsbG93IGl0IHRvIHRha2Ugc3BhY2UgKi9cblxuXHRtYXgtd2lkdGg6IG1heCgxMjBweCwgNDAlKTtcblx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0dGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG5cdHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cbi8qIFNob3cgZnVsbCBsYWJlbHMgb24gd2lkZXIgc2NyZWVucyAqL1xuQGNvbnRhaW5lciAobWluLXdpZHRoOiA3MDBweCkge1xuXHQuZnVsbC1jYWxlbmRhci1jb250YWluZXIgLmNhbGVuZGFyLXNlZ21lbnQtZnVsbCB7XG5cdFx0ZGlzcGxheTogaW5saW5lO1xuXHR9XG5cblx0LmZ1bGwtY2FsZW5kYXItY29udGFpbmVyIC5jYWxlbmRhci1zZWdtZW50LWJ0biB7XG5cdFx0cGFkZGluZzogNnB4IDEycHg7XG5cdH1cblxuXHQvKiBTaG93IHNob3J0IGxhYmVsIGZvciBjdXN0b20gdmlld3Mgb24gd2lkZXIgc2NyZWVucyB0b28gKi9cblx0LmZ1bGwtY2FsZW5kYXItY29udGFpbmVyXG5cdFx0LmNhbGVuZGFyLXNlZ21lbnQtYnRuLmNhbGVuZGFyLXNlZ21lbnQtY3VzdG9tXG5cdFx0LmNhbGVuZGFyLXNlZ21lbnQtc2hvcnQge1xuXHRcdGRpc3BsYXk6IGlubGluZTtcblx0fVxufVxuXG4uZnVsbC1jYWxlbmRhci1jb250YWluZXIgLmNhbGVuZGFyLXZpZXctY29udGFpbmVyIHtcblx0ZmxleC1ncm93OiAxOyAvKiBBbGxvdyB2aWV3IHRvIHRha2UgcmVtYWluaW5nIHNwYWNlICovXG5cdG92ZXJmbG93LXk6IGF1dG87IC8qIEVuYWJsZSBzY3JvbGxpbmcgaWYgY29udGVudCBvdmVyZmxvd3MgKi9cblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTIpO1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7IC8qIE5lZWRlZCBmb3IgYWJzb2x1dGUgcG9zaXRpb25pbmcgb2YgZXZlbnRzICovXG5cblx0ZGlzcGxheTogZmxleDtcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbn1cblxuLyogQmFzaWMgVmlldyBTdHlsZXMgKFBsYWNlaG9sZGVycykgKi9cbi8qIC0tLSBNb250aCBWaWV3IFNwZWNpZmljIFN0eWxlcyAtLS0gKi9cbi5mdWxsLWNhbGVuZGFyLWNvbnRhaW5lciAuY2FsZW5kYXItd2Vla2RheS1oZWFkZXIge1xuXHRkaXNwbGF5OiBncmlkO1xuXHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg3LCAxZnIpO1xuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbCk7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTEpIDA7XG5cdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XG5cdG1hcmdpbi1ib3R0b206IC0xcHg7IC8qIE92ZXJsYXAgd2l0aCBncmlkIGdhcCAqL1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7IC8qIFNsaWdodCBkaXN0aW5jdGlvbiAqL1xufVxuXG4uZnVsbC1jYWxlbmRhci1jb250YWluZXIgLmNhbGVuZGFyLXdlZWtkYXkge1xuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtMSk7XG59XG5cbi5mdWxsLWNhbGVuZGFyLWNvbnRhaW5lciAuY2FsZW5kYXItdmlldy1jb250YWluZXIudmlldy1tb250aCB7XG5cdHBhZGRpbmc6IDA7IC8qIFJlbW92ZSBwYWRkaW5nIGlmIGdyaWQgcHJvdmlkZXMgaXQgdmlhIGdhcCAqL1xuXHQvKiBTdHlsZXMgbW92ZWQgdG8gLmNhbGVuZGFyLW1vbnRoLWdyaWQgKi9cbn1cblxuLyogQWRkIHRoZSBncmlkIHN0eWxlcyBkaXJlY3RseSB0byB0aGUgZ3JpZCBjb250YWluZXIgZWxlbWVudCAqL1xuLmZ1bGwtY2FsZW5kYXItY29udGFpbmVyIC5jYWxlbmRhci1tb250aC1ncmlkIHtcblx0ZGlzcGxheTogZ3JpZDtcblx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNywgMWZyKTtcblx0Z3JpZC1hdXRvLXJvd3M6IG1pbm1heCgxMDBweCwgYXV0byk7IC8qIEdpdmUgcm93cyBhIG1pbmltdW0gaGVpZ2h0ICovXG5cdGdhcDogMXB4O1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7IC8qIEdyaWQgbGluZXMgKi9cblxuXHRoZWlnaHQ6IDEwMCU7XG59XG5cbi5mdWxsLWNhbGVuZGFyLWNvbnRhaW5lciAuY2FsZW5kYXItZGF5LWNlbGwge1xuXHQvKiBFeGFtcGxlIHN0eWxlIGZvciBhIGRheSBjZWxsIGluIG1vbnRoIHZpZXcgKi9cblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTEpO1xuXHQvKiBtaW4taGVpZ2h0OiA4MHB4OyAtIExldCBncmlkLWF1dG8tcm93cyBoYW5kbGUgaGVpZ2h0ICovXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0ZGlzcGxheTogZmxleDsgLyogVXNlIGZsZXhib3ggZm9yIGxheW91dCBpbnNpZGUgdGhlIGNlbGwgKi9cblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgLyogU3RhY2sgZGF5IG51bWJlciBhbmQgZXZlbnRzICovXG5cdG1pbi13aWR0aDogMDsgLyogUHJldmVudCBjb250ZW50IGZyb20gZXhwYW5kaW5nIHRoZSBjZWxsIHdpZHRoIGluIHRoZSBncmlkICovXG59XG5cbi5mdWxsLWNhbGVuZGFyLWNvbnRhaW5lciAuY2FsZW5kYXItZGF5LWNlbGw6aG92ZXIge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiBoc2woXG5cdFx0dmFyKC0tY29sb3ItYWNjZW50LWgpLFxuXHRcdHZhcigtLWNvbG9yLWFjY2VudC1zKSxcblx0XHR2YXIoLS1jb2xvci1hY2NlbnQtbCksXG5cdFx0MC44XG5cdCkgIWltcG9ydGFudDtcbn1cblxuLmZ1bGwtY2FsZW5kYXItY29udGFpbmVyIC5jYWxlbmRhci1kYXktY2VsbC5pcy10b2RheSB7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5LWFsdCkgIWltcG9ydGFudDtcblx0Ym9yZGVyOiAxcHggc29saWRcblx0XHRoc2wodmFyKC0tYWNjZW50LWgpLCB2YXIoLS1hY2NlbnQtcyksIHZhcigtLWFjY2VudC1sKSwgMC41KTtcbn1cblxuLmZ1bGwtY2FsZW5kYXItY29udGFpbmVyIC5jYWxlbmRhci1kYXktY2VsbC5pcy10b2RheSAuY2FsZW5kYXItZGF5LW51bWJlciB7XG5cdGNvbG9yOiBoc2wodmFyKC0tYWNjZW50LWgpLCB2YXIoLS1hY2NlbnQtcyksIHZhcigtLWFjY2VudC1sKSwgMSk7XG59XG5cbi5mdWxsLWNhbGVuZGFyLWNvbnRhaW5lciAuY2FsZW5kYXItZGF5LWhlYWRlciB7XG5cdHdpZHRoOiAxMDAlO1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XG5cdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0Z2FwOiB2YXIoLS1zaXplLTQtMSk7XG59XG5cbi5mdWxsLWNhbGVuZGFyLWNvbnRhaW5lciAuY2FsZW5kYXItZGF5LWNlbGw6bm90KC5pcy10b2RheSkge1xuXHRvcGFjaXR5OiAwLjc7XG59XG5cbi5mdWxsLWNhbGVuZGFyLWNvbnRhaW5lciAuY2FsZW5kYXItZGF5LWNlbGwuaXMtb3RoZXItbW9udGgge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XG5cdG9wYWNpdHk6IDAuNztcbn1cblxuLmZ1bGwtY2FsZW5kYXItY29udGFpbmVyIC5jYWxlbmRhci1kYXktY2VsbC5pcy13ZWVrZW5kIHtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKFxuXHRcdC0tYmFja2dyb3VuZC1zZWNvbmRhcnlcblx0KTsgLyogU2xpZ2h0bHkgZGlmZmVyZW50IGJhY2tncm91bmQgZm9yIHdlZWtlbmRzICovXG59XG5cbi5mdWxsLWNhbGVuZGFyLWNvbnRhaW5lciAuY2FsZW5kYXItZGF5LW51bWJlciB7XG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbCk7XG5cdHRleHQtYWxpZ246IGNlbnRlcjtcblx0bWFyZ2luLWJvdHRvbTogdmFyKC0tc2l6ZS00LTEpO1xuXHRmbGV4LXNocmluazogMDsgLyogUHJldmVudCBudW1iZXIgZnJvbSBzaHJpbmtpbmcgKi9cblx0YWxpZ24tc2VsZjogZmxleC1lbmQ7IC8qIFBvc2l0aW9uIHRvIHRoZSB0b3AgcmlnaHQgKi9cbn1cblxuLmZ1bGwtY2FsZW5kYXItY29udGFpbmVyIC5jYWxlbmRhci1ldmVudHMtY29udGFpbmVyIHtcblx0ZmxleC1ncm93OiAxOyAvKiBBbGxvdyBldmVudHMgY29udGFpbmVyIHRvIGZpbGwgc3BhY2UgKi9cblx0b3ZlcmZsb3c6IGhpZGRlbjsgLyogSGlkZSBldmVudHMgdGhhdCBvdmVyZmxvdyB0aGUgY2VsbCBoZWlnaHQgKi9cblx0cG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uZnVsbC1jYWxlbmRhci1jb250YWluZXIgLmNhbGVuZGFyLWV2ZW50IHtcblx0LyogRXhhbXBsZSBzdHlsZSBmb3IgYW4gZXZlbnQgKi9cblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcblx0LS1ib2xkLWNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zKTtcblx0cGFkZGluZzogMnB4IDRweDtcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsZXIpO1xuXHRtYXJnaW4tYm90dG9tOiAycHg7XG5cdG1hcmdpbi1ib3R0b206IDNweDsgLyogSW5jcmVhc2Ugc3BhY2luZyBzbGlnaHRseSAqL1xuXHRvdmVyZmxvdzogaGlkZGVuO1xuXHR0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcblx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcblx0Y3Vyc29yOiBwb2ludGVyO1xuXHRkaXNwbGF5OiBibG9jazsgLyogRW5zdXJlIGl0IHRha2VzIGZ1bGwgd2lkdGggYXZhaWxhYmxlICovXG59XG5cbi5mdWxsLWNhbGVuZGFyLWNvbnRhaW5lciAuY2FsZW5kYXItZXZlbnQ6aGFzKC50YXNrLWxpc3QtaXRlbS1jaGVja2JveCkge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRmbGV4LWRpcmVjdGlvbjogcm93O1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xufVxuXG4uZnVsbC1jYWxlbmRhci1jb250YWluZXJcblx0LmNhbGVuZGFyLWV2ZW50OmhhcygudGFzay1saXN0LWl0ZW0tY2hlY2tib3gpLmNhbGVuZGFyLWV2ZW50LXdlZWstYWxsZGF5IHtcblx0ZGlzcGxheTogZmxleDtcbn1cblxuLmZ1bGwtY2FsZW5kYXItY29udGFpbmVyXG5cdC5jYWxlbmRhci1ldmVudDpoYXMoLnRhc2stbGlzdC1pdGVtLWNoZWNrYm94KS5jYWxlbmRhci1ldmVudC1tb250aCB7XG5cdGRpc3BsYXk6IGZsZXg7XG59XG5cbi5mdWxsLWNhbGVuZGFyLWNvbnRhaW5lciAuZnVsbC1jYWxlbmRhci1jb250YWluZXIgLmNhbGVuZGFyLWV2ZW50OmhvdmVyIHtcblx0b3BhY2l0eTogMC44O1xufVxuXG4uZnVsbC1jYWxlbmRhci1jb250YWluZXIgLmNhbGVuZGFyLWV2ZW50LmlzLWNvbXBsZXRlZCB7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcihcblx0XHQtLWJhY2tncm91bmQtbW9kaWZpZXItc3VjY2Vzcy1ob3ZlclxuXHQpOyAvKiBPciB1c2UgZ3JleS9zdHJpa2V0aHJvdWdoICovXG5cdHRleHQtZGVjb3JhdGlvbjogbGluZS10aHJvdWdoO1xuXHRvcGFjaXR5OiAwLjc7XG59XG5cbi5mdWxsLWNhbGVuZGFyLWNvbnRhaW5lciAuY2FsZW5kYXItZXZlbnQuaXMtbXVsdGktZGF5IHtcblx0LyogQmFzaWMgc3R5bGUgZm9yIG11bHRpLWRheSwgbW9yZSBhZHZhbmNlZCBjb3VsZCByZW1vdmUgcm91bmRlZCBjb3JuZXJzICovXG59XG4uZnVsbC1jYWxlbmRhci1jb250YWluZXIgLmNhbGVuZGFyLWV2ZW50LmlzLW11bHRpLWRheS5pcy1zdGFydCB7XG5cdC8qIE9wdGlvbmFsOiBzdHlsZSB0aGUgc3RhcnQgc2VnbWVudCBkaWZmZXJlbnRseSAqL1xuXHQvKiBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDsgKi9cblx0LyogYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7ICovXG59XG4uZnVsbC1jYWxlbmRhci1jb250YWluZXIgLmNhbGVuZGFyLWV2ZW50LmlzLW11bHRpLWRheS5pcy1lbmQge1xuXHQvKiBPcHRpb25hbDogc3R5bGUgdGhlIGVuZCBzZWdtZW50IGRpZmZlcmVudGx5ICovXG5cdC8qIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7ICovXG5cdC8qIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7ICovXG59XG5cbi8qIEFkZCBtb3JlIHNwZWNpZmljIHN0eWxlcyBmb3Igd2VlaywgZGF5LCBhZ2VuZGEgdmlld3MgYXMgdGhleSBhcmUgaW1wbGVtZW50ZWQgKi9cblxuLyogU3R5bGUgZm9yIG1vbnRoIHZpZXcgZXZlbnRzIHRvIGhhbmRsZSBvdmVyZmxvdyAqL1xuLmZ1bGwtY2FsZW5kYXItY29udGFpbmVyIC5jYWxlbmRhci1ldmVudC5jYWxlbmRhci1ldmVudC1tb250aCB7XG5cdC8qIEluaGVyaXRzIGJhc2UgLmNhbGVuZGFyLWV2ZW50IHN0eWxlcyAqL1xuXHQvKiBBZGQgb3ZlcmZsb3cgaGFuZGxpbmcgc2ltaWxhciB0byB3ZWVrLWFsbGRheSAqL1xuXHRvdmVyZmxvdzogaGlkZGVuO1xuXHR0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcblx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcblx0ZGlzcGxheTogYmxvY2s7IC8qIEVuc3VyZSBibG9jayBkaXNwbGF5ICovXG5cdHdpZHRoOiAxMDAlOyAvKiBFeHBsaWNpdGx5IHNldCB3aWR0aCAqL1xuXHRib3gtc2l6aW5nOiBib3JkZXItYm94OyAvKiBJbmNsdWRlIHBhZGRpbmcvYm9yZGVyIGluIHdpZHRoICovXG59XG5cbi8qIC0tLSBEYXkgVmlldyBTcGVjaWZpYyBTdHlsZXMgLS0tICovXG4uZnVsbC1jYWxlbmRhci1jb250YWluZXIgLmNhbGVuZGFyLXZpZXctY29udGFpbmVyLnZpZXctZGF5IHtcblx0ZGlzcGxheTogZmxleDtcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0cGFkZGluZzogMDsgLyogUmVtb3ZlIHBhZGRpbmcsIG1hbmFnZSBpbnRlcm5hbGx5ICovXG59XG5cbi5mdWxsLWNhbGVuZGFyLWNvbnRhaW5lciAuY2FsZW5kYXItdGltZWxpbmUtc2VjdGlvbiB7XG5cdGZsZXgtZ3JvdzogMTtcblx0LyogcG9zaXRpb246IHJlbGF0aXZlOyAvKiBObyBsb25nZXIgbmVlZGVkIGZvciBhYnNvbHV0ZSBldmVudCBwb3NpdGlvbmluZyAqL1xuXHRib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpOyAvKiBBZGQgYm9yZGVyIHRoYXQgd2FzIG9uIGFsbGRheSAqL1xuXHRvdmVyZmxvdy15OiBhdXRvOyAvKiBBbGxvdyB0aW1lbGluZSB0byBzY3JvbGwgKi9cblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTQpO1xufVxuXG4uZnVsbC1jYWxlbmRhci1jb250YWluZXIgLmNhbGVuZGFyLXRpbWVsaW5lLWV2ZW50cy1jb250YWluZXIge1xuXHQvKiBSZW1vdmUgYWJzb2x1dGUgcG9zaXRpb25pbmcgKi9cblx0LyogcG9zaXRpb246IGFic29sdXRlOyAqL1xuXHQvKiB0b3A6IDA7ICovXG5cdC8qIGxlZnQ6IDA7ICovXG5cdC8qIHJpZ2h0OiAwOyAqL1xuXHQvKiBib3R0b206IDA7ICovXG5cdC8qIHotaW5kZXg6IDI7ICovXG5cdC8qIFJlbW92ZSBjYWxjdWxhdGVkIGhlaWdodCAqL1xuXHQvKiBoZWlnaHQ6IGNhbGMoMjQgKiA0MHB4KTsgKi9cblxuXHQvKiBBZGQgZmxleCBsYXlvdXQgZm9yIHZlcnRpY2FsIHN0YWNraW5nICovXG5cdGRpc3BsYXk6IGZsZXg7XG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdGdhcDogdmFyKC0tc2l6ZS00LTIpOyAvKiBBZGQgc3BhY2luZyBiZXR3ZWVuIGV2ZW50cyAqL1xufVxuXG4uZnVsbC1jYWxlbmRhci1jb250YWluZXIgLmNhbGVuZGFyLXRpbWVsaW5lLWV2ZW50cy1jb250YWluZXIuaXMtZW1wdHkge1xuXHRjb2xvcjogdmFyKC0tdGV4dC1mYWludCk7XG5cdGZvbnQtc3R5bGU6IGl0YWxpYztcblx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtOCk7XG59XG5cbi8qIFN0eWxlIGFkanVzdG1lbnRzIGZvciBldmVudHMgcHJldmlvdXNseSB0aW1lZCAqL1xuLmZ1bGwtY2FsZW5kYXItY29udGFpbmVyIC5jYWxlbmRhci1ldmVudC10aW1lZCB7XG5cdC8qIFJlbW92ZSBhYnNvbHV0ZSBwb3NpdGlvbmluZyAqL1xuXHQvKiBwb3NpdGlvbjogYWJzb2x1dGU7ICovXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcblx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0ZGlzcGxheTogZmxleDtcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0LyogQWRkIG1hcmdpbiBmb3Igc3BhY2luZyBpbiB0aGUgbmV3IGZsb3cgbGF5b3V0ICovXG5cdC8qIFVzaW5nIGdhcCBvbiBwYXJlbnQgY29udGFpbmVyIG5vdyAqL1xuXHQvKiBtYXJnaW4tYm90dG9tOiB2YXIoLS1zaXplLTQtMik7ICovXG5cdHdpZHRoOiAxMDAlOyAvKiBFbnN1cmUgaXQgdGFrZXMgZnVsbCB3aWR0aCAqL1xuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XG5cdHRyYW5zaXRpb246XG5cdFx0dHJhbnNmb3JtIDAuMTVzIGVhc2UsXG5cdFx0Ym94LXNoYWRvdyAwLjE1cyBlYXNlO1xufVxuXG4uZnVsbC1jYWxlbmRhci1jb250YWluZXIgLmNhbGVuZGFyLWV2ZW50LXRpbWVkOmhvdmVyIHtcblx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xcHgpO1xuXHRib3gtc2hhZG93OiB2YXIoLS1zaGFkb3ctcyk7XG59XG5cbi8qIFNwZWNpZmljIHN0eWxlcyBmb3IgZGF5IHZpZXcgdGltZWQgZXZlbnRzICovXG4uZnVsbC1jYWxlbmRhci1jb250YWluZXIgLmNhbGVuZGFyLWV2ZW50LWRheS10aW1lZCB7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0d2lkdGg6IDEwMCU7XG5cdG1pbi1oZWlnaHQ6IDIuNWVtO1xuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtMik7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zKTtcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xufVxuXG4uZnVsbC1jYWxlbmRhci1jb250YWluZXIgLmNhbGVuZGFyLWV2ZW50LWRheS10aW1lZDpob3ZlciB7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudC1ob3Zlcik7XG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMXB4KTtcblx0Ym94LXNoYWRvdzogdmFyKC0tc2hhZG93LXMpO1xufVxuXG4uZnVsbC1jYWxlbmRhci1jb250YWluZXIgLmNhbGVuZGFyLWV2ZW50LWRheS10aW1lZC5pcy1jb21wbGV0ZWQge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLXN1Y2Nlc3MtaG92ZXIpO1xuXHRvcGFjaXR5OiAwLjc7XG5cdHRleHQtZGVjb3JhdGlvbjogbGluZS10aHJvdWdoO1xufVxuXG4vKiBLZWVwIGludGVybmFsIHN0eWxlcyAqL1xuLmZ1bGwtY2FsZW5kYXItY29udGFpbmVyIC5jYWxlbmRhci1ldmVudC10aW1lIHtcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsZXIpO1xuXHRmb250LXdlaWdodDogYm9sZDtcblx0cGFkZGluZzogMXB4IDNweDtcblx0YmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjEpOyAvKiBTbGlnaHQgYmFja2dyb3VuZCBmb3IgdGltZSAqL1xuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XG5cdG1hcmdpbi1ib3R0b206IHZhcigtLXNpemUtNC0xKTtcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHR3aWR0aDogZml0LWNvbnRlbnQ7XG59XG5cbi5mdWxsLWNhbGVuZGFyLWNvbnRhaW5lciAuY2FsZW5kYXItZXZlbnQtdGl0bGUge1xuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGwpO1xuXHRwYWRkaW5nOiAycHggM3B4O1xuXHRmbGV4LWdyb3c6IDE7XG5cdHdoaXRlLXNwYWNlOiBub3JtYWw7XG5cdHdvcmQtd3JhcDogYnJlYWstd29yZDtcblx0ZGlzcGxheTogZmxleDtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cblxuLyogLS0tIFdlZWsgVmlldyBTcGVjaWZpYyBTdHlsZXMgLS0tICovXG4uZnVsbC1jYWxlbmRhci1jb250YWluZXIgLmNhbGVuZGFyLXZpZXctY29udGFpbmVyLnZpZXctd2VlayB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdHBhZGRpbmc6IDA7XG59XG5cbi5mdWxsLWNhbGVuZGFyLWNvbnRhaW5lciAuY2FsZW5kYXItd2Vlay1oZWFkZXIge1xuXHRkaXNwbGF5OiBncmlkO1xuXHQvKiBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDUwcHggcmVwZWF0KDcsIDFmcik7ICovIC8qIEd1dHRlciArIDcgZGF5cyAtPiBSZW1vdmUgZ3V0dGVyICovXG5cdGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDcsIDFmcik7IC8qIEp1c3QgNyBkYXlzICovXG5cdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XG5cdGZsZXgtc2hyaW5rOiAwO1xuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLW1lZGl1bSk7XG59XG5cbi5mdWxsLWNhbGVuZGFyLWNvbnRhaW5lciAuY2FsZW5kYXItaGVhZGVyLWNlbGwge1xuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtMSkgMDtcblx0Ym9yZGVyLWxlZnQ6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlci1ob3Zlcik7XG59XG4uZnVsbC1jYWxlbmRhci1jb250YWluZXIgLmNhbGVuZGFyLWhlYWRlci1jZWxsOmZpcnN0LWNoaWxkIHtcblx0Ym9yZGVyLWxlZnQ6IG5vbmU7XG59XG4uZnVsbC1jYWxlbmRhci1jb250YWluZXIgLmNhbGVuZGFyLWhlYWRlci1jZWxsLmlzLXRvZGF5IC5jYWxlbmRhci1kYXktbnVtYmVyIHtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcblx0Y29sb3I6IHZhcigtLXRleHQtb24tYWNjZW50KTtcblx0Ym9yZGVyLXJhZGl1czogNTAlO1xuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdHdpZHRoOiAxLjVlbTtcblx0aGVpZ2h0OiAxLjVlbTtcblx0bGluZS1oZWlnaHQ6IDEuNWVtO1xuXHRtYXJnaW46IGF1dG87XG5cblx0bWFyZ2luOiBhdXRvO1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cbi5mdWxsLWNhbGVuZGFyLWNvbnRhaW5lciAuY2FsZW5kYXItd2Vla2RheSB7XG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbCk7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcbn1cbi5mdWxsLWNhbGVuZGFyLWNvbnRhaW5lciAuY2FsZW5kYXItZGF5LW51bWJlciB7XG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1tZWRpdW0pO1xufVxuXG4vKiBVcGRhdGVkIFdlZWsgR3JpZCBTZWN0aW9uICh3YXMgLWFsbGRheS1zZWN0aW9uKSAqL1xuLmZ1bGwtY2FsZW5kYXItY29udGFpbmVyIC5jYWxlbmRhci13ZWVrLWdyaWQtc2VjdGlvbiB7XG5cdC8qIFJlbmFtZWQgY2xhc3MgKi9cblx0ZmxleC1ncm93OiAxOyAvKiBBbGxvdyB0aGlzIHNlY3Rpb24gdG8gZmlsbCBhdmFpbGFibGUgdmVydGljYWwgc3BhY2UgKi9cblx0ZGlzcGxheTogZmxleDsgLyogVXNlIGZsZXggdG8gZW5zdXJlIGdyaWQgZmlsbHMgaGVpZ2h0ICovXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdG92ZXJmbG93LXk6IGF1dG87IC8qIEFkZCBzY3JvbGwgaWYgY29udGVudCBvdmVyZmxvd3MgKi9cblx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTsgLyogTWF0Y2ggb2xkIHN0eWxlICovXG59XG5cbi5mdWxsLWNhbGVuZGFyLWNvbnRhaW5lciAuY2FsZW5kYXItd2Vlay1ncmlkIHtcblx0LyogUmVuYW1lZCBjbGFzcyAqL1xuXHRmbGV4LWdyb3c6IDE7IC8qIEFsbG93IGdyaWQgdG8gZXhwYW5kICovXG5cdGRpc3BsYXk6IGdyaWQ7XG5cdGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDcsIDFmcik7XG5cdGdyaWQtdGVtcGxhdGUtcm93czogMWZyOyAvKiBNYWtlIGdyaWQgZmlsbCB0aGUgc2VjdGlvbiBoZWlnaHQgKi9cblx0Z2FwOiAxcHg7IC8qIEFkZCBnYXAgZm9yIGJvcmRlcnMgKi9cblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpOyAvKiBHcmlkIGxpbmVzICovXG5cdGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7IC8qIEFkZCB0b3AgYm9yZGVyICovXG59XG5cbi5mdWxsLWNhbGVuZGFyLWNvbnRhaW5lciAuY2FsZW5kYXItZGF5LWNvbHVtbiB7XG5cdC8qIFJlbmFtZWQgY2xhc3MgKi9cblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTEpO1xuXHQvKiBtaW4taGVpZ2h0OiA1ZW07ICovIC8qIFJlbW92ZSBmaXhlZCBtaW4taGVpZ2h0LCBsZXQgY29udGVudCBkaWN0YXRlICovXG5cdGJvcmRlci1sZWZ0OiBub25lOyAvKiBSZW1vdmUgcmVkdW5kYW50IGxlZnQgYm9yZGVyLCBnYXAgaGFuZGxlcyBsaW5lcyAqL1xuXHRkaXNwbGF5OiBmbGV4OyAvKiBVc2UgZmxleCBmb3IgdmVydGljYWwgbGF5b3V0ICovXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdGdhcDogdmFyKC0tc2l6ZS00LTEpOyAvKiBTcGFjZSBiZXR3ZWVuIGV2ZW50cyAqL1xuXHRvdmVyZmxvdzogaGlkZGVuOyAvKiBQcmV2ZW50IGNvbnRlbnQgZnJvbSBleHBhbmRpbmcgdGhlIGNvbHVtbiAqL1xuXHRtaW4td2lkdGg6IDA7IC8qIEhlbHAgZ3JpZCBpdGVtIHNocmluayBwcm9wZXJseSAqL1xufVxuXG4uZnVsbC1jYWxlbmRhci1jb250YWluZXIgLmNhbGVuZGFyLWRheS1jb2x1bW46Zmlyc3QtY2hpbGQge1xuXHQvKiBObyBzcGVjaWZpYyBmaXJzdC1jaGlsZCBib3JkZXIgbmVlZGVkIG5vdyAqL1xufVxuXG4uZnVsbC1jYWxlbmRhci1jb250YWluZXIgLmNhbGVuZGFyLWRheS1jb2x1bW4uaXMtd2Vla2VuZCB7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcbn1cblxuLyogQWRqdXN0IGdyaWQgbGF5b3V0cyB3aGVuIHdlZWtlbmRzIGFyZSBoaWRkZW4gKi9cbi5mdWxsLWNhbGVuZGFyLWNvbnRhaW5lclxuXHQuY2FsZW5kYXItdmlldy1jb250YWluZXIuaGlkZS13ZWVrZW5kc1xuXHQuY2FsZW5kYXItd2Vla2RheS1oZWFkZXIge1xuXHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdChcblx0XHQ1LFxuXHRcdDFmclxuXHQpICFpbXBvcnRhbnQ7IC8qIDUgY29sdW1ucyBpbnN0ZWFkIG9mIDcgd2hlbiB3ZWVrZW5kcyBoaWRkZW4gKi9cbn1cblxuLmZ1bGwtY2FsZW5kYXItY29udGFpbmVyXG5cdC5jYWxlbmRhci12aWV3LWNvbnRhaW5lci5oaWRlLXdlZWtlbmRzXG5cdC5jYWxlbmRhci1tb250aC1ncmlkIHtcblx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoXG5cdFx0NSxcblx0XHQxZnJcblx0KSAhaW1wb3J0YW50OyAvKiA1IGNvbHVtbnMgaW5zdGVhZCBvZiA3IHdoZW4gd2Vla2VuZHMgaGlkZGVuICovXG59XG5cbi5mdWxsLWNhbGVuZGFyLWNvbnRhaW5lclxuXHQuY2FsZW5kYXItdmlldy1jb250YWluZXIuaGlkZS13ZWVrZW5kc1xuXHQuY2FsZW5kYXItd2Vlay1oZWFkZXIge1xuXHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdChcblx0XHQ1LFxuXHRcdDFmclxuXHQpICFpbXBvcnRhbnQ7IC8qIDUgY29sdW1ucyBpbnN0ZWFkIG9mIDcgd2hlbiB3ZWVrZW5kcyBoaWRkZW4gKi9cbn1cblxuLmZ1bGwtY2FsZW5kYXItY29udGFpbmVyXG5cdC5jYWxlbmRhci12aWV3LWNvbnRhaW5lci5oaWRlLXdlZWtlbmRzXG5cdC5jYWxlbmRhci13ZWVrLWdyaWQge1xuXHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdChcblx0XHQ1LFxuXHRcdDFmclxuXHQpICFpbXBvcnRhbnQ7IC8qIDUgY29sdW1ucyBpbnN0ZWFkIG9mIDcgd2hlbiB3ZWVrZW5kcyBoaWRkZW4gKi9cbn1cblxuLmZ1bGwtY2FsZW5kYXItY29udGFpbmVyXG5cdC5jYWxlbmRhci12aWV3LWNvbnRhaW5lci5oaWRlLXdlZWtlbmRzXG5cdC5taW5pLW1vbnRoLWdyaWQge1xuXHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdChcblx0XHQ1LFxuXHRcdDFmclxuXHQpICFpbXBvcnRhbnQ7IC8qIDUgY29sdW1ucyBpbnN0ZWFkIG9mIDcgd2hlbiB3ZWVrZW5kcyBoaWRkZW4gKi9cbn1cblxuLyogTm90ZTogV2Vla2VuZCBlbGVtZW50cyBhcmUgbm90IGNyZWF0ZWQgd2hlbiBoaWRlV2Vla2VuZHMgaXMgZW5hYmxlZCxcbiAgIHNvIG5vIGhpZGluZyBydWxlcyBhcmUgbmVlZGVkLiBUaGUgZ3JpZCBsYXlvdXQgYWRqdXN0bWVudHMgYWJvdmUgYXJlIHN1ZmZpY2llbnQuICovXG5cbi5mdWxsLWNhbGVuZGFyLWNvbnRhaW5lciAuY2FsZW5kYXItZGF5LWV2ZW50cy1jb250YWluZXIge1xuXHQvKiBSZW5hbWVkIGNsYXNzICovXG5cdC8qIFRoaXMgY29udGFpbmVyIG1pZ2h0IG5vdCBiZSBzdHJpY3RseSBuZWNlc3NhcnkgaWYgLmNhbGVuZGFyLWRheS1jb2x1bW4gdXNlcyBmbGV4ICovXG5cdC8qIFN0eWxlcyBhcmUgYXBwbGllZCBkaXJlY3RseSB0byAuY2FsZW5kYXItZGF5LWNvbHVtbiBub3cgKi9cblx0ZmxleC1ncm93OiAxOyAvKiBBbGxvdyBjb250YWluZXIgdG8gZ3JvdyAqL1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRnYXA6IDNweDsgLyogU3BhY2UgYmV0d2VlbiBldmVudHMgKi9cbn1cblxuLyogRW5zdXJlIGV2ZW50cyB0YWtlIGZ1bGwgd2lkdGggYW5kIGRvbid0IGhhdmUgaG9yaXpvbnRhbCBkaXNwbGF5IHByb3BlcnRpZXMgKi9cbi5mdWxsLWNhbGVuZGFyLWNvbnRhaW5lciAuY2FsZW5kYXItZXZlbnQuY2FsZW5kYXItZXZlbnQtd2Vlay1hbGxkYXkge1xuXHRkaXNwbGF5OiBibG9jazsgLyogRW5zdXJlIGJsb2NrIGRpc3BsYXkgZm9yIHZlcnRpY2FsIHN0YWNraW5nICovXG5cdHdpZHRoOiAxMDAlOyAvKiBUYWtlIGZ1bGwgd2lkdGggb2YgdGhlIGNvbHVtbiAqL1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7IC8qIFJlc2V0IHBvc2l0aW9uIGlmIGl0IHdhcyBhYnNvbHV0ZSAqL1xuXHRsZWZ0OiBhdXRvO1xuXHR0b3A6IGF1dG87XG5cdGhlaWdodDogYXV0bzsgLyogTGV0IGNvbnRlbnQgZGV0ZXJtaW5lIGhlaWdodCAqL1xuXHRtYXJnaW4tYm90dG9tOiAzcHg7IC8qIENvbnNpc3RlbnQgc3BhY2luZyAqL1xuXHRvdmVyZmxvdzogaGlkZGVuOyAvKiBQcmV2ZW50IGludGVybmFsIGNvbnRlbnQgZnJvbSBvdmVyZmxvd2luZyAqL1xuXHR0ZXh0LW92ZXJmbG93OiBlbGxpcHNpczsgLyogQWRkIGVsbGlwc2lzIGZvciBvdmVyZmxvdyAqL1xuXHR3aGl0ZS1zcGFjZTogbm93cmFwOyAvKiBFbnN1cmUgZWxsaXBzaXMgd29ya3MgKi9cbn1cblxuLyogUmVtb3ZlIHN0eWxlcyBmb3IgdGhlIG9sZCB0aW1lbGluZSBzZWN0aW9uICovXG4vKlxuLmZ1bGwtY2FsZW5kYXItY29udGFpbmVyIC5jYWxlbmRhci13ZWVrLXRpbWVsaW5lLXNlY3Rpb24ge1xuXHRkaXNwbGF5OiBmbGV4O1xuLy8gLi4uIGV4aXN0aW5nIGNvZGUgLi4uXG5cdGJveC1zaGFkb3c6IHZhcigtLXNoYWRvdy1zKTtcbn1cbiovXG5cbi8qIC0tLSBZZWFyIFZpZXcgU3BlY2lmaWMgU3R5bGVzIC0tLSAqL1xuLmZ1bGwtY2FsZW5kYXItY29udGFpbmVyIC5jYWxlbmRhci12aWV3LWNvbnRhaW5lci52aWV3LXllYXIge1xuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtNCk7XG59XG5cbi5mdWxsLWNhbGVuZGFyLWNvbnRhaW5lciAuY2FsZW5kYXIteWVhci1ncmlkIHtcblx0ZGlzcGxheTogZ3JpZDtcblx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoXG5cdFx0YXV0by1maXQsXG5cdFx0bWlubWF4KDIwMHB4LCAxZnIpXG5cdCk7IC8qIFJlc3BvbnNpdmUgY29sdW1ucyAqL1xuXHRnYXA6IHZhcigtLXNpemUtNC00KTtcbn1cblxuLmZ1bGwtY2FsZW5kYXItY29udGFpbmVyIC5jYWxlbmRhci1taW5pLW1vbnRoIHtcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtbSk7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcblx0b3ZlcmZsb3c6IGhpZGRlbjsgLyogQ2xpcCBjb250ZW50ICovXG59XG5cbi5mdWxsLWNhbGVuZGFyLWNvbnRhaW5lciAubWluaS1tb250aC1oZWFkZXIge1xuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXNlbWlib2xkKTtcblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTIpO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeS1hbHQpO1xuXHRib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xufVxuXG4uZnVsbC1jYWxlbmRhci1jb250YWluZXIgLm1pbmktbW9udGgtYm9keSB7XG5cdHBhZGRpbmc6IHZhcigtLXNpemUtNC0yKTtcbn1cblxuLmZ1bGwtY2FsZW5kYXItY29udGFpbmVyIC5taW5pLW1vbnRoLWdyaWQge1xuXHRkaXNwbGF5OiBncmlkO1xuXHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg3LCAxZnIpO1xuXHRnYXA6IDJweDsgLyogU21hbGwgZ2FwIGJldHdlZW4gZGF5cyAqL1xuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5mdWxsLWNhbGVuZGFyLWNvbnRhaW5lciAubWluaS13ZWVrZGF5LWhlYWRlciB7XG5cdGRpc3BsYXk6IGNvbnRlbnRzOyAvKiBMZXQgY2hpbGRyZW4gcGFydGljaXBhdGUgaW4gdGhlIGdyaWQgKi9cblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsZXIpO1xuXHRjb2xvcjogdmFyKC0tdGV4dC1mYWludCk7XG5cdGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuLmZ1bGwtY2FsZW5kYXItY29udGFpbmVyIC5taW5pLXdlZWtkYXkge1xuXHRwYWRkaW5nLWJvdHRvbTogdmFyKC0tc2l6ZS00LTEpO1xufVxuXG4uZnVsbC1jYWxlbmRhci1jb250YWluZXIgLm1pbmktZGF5LWNlbGwge1xuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGwpO1xuXHRwYWRkaW5nOiAxcHg7XG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zKTtcblx0bGluZS1oZWlnaHQ6IDEuNWVtOyAvKiBBZGp1c3QgZm9yIGNlbnRlcmluZyAqL1xufVxuXG4uZnVsbC1jYWxlbmRhci1jb250YWluZXIgLm1pbmktZGF5LWNlbGwuaXMtb3RoZXItbW9udGgge1xuXHRjb2xvcjogdmFyKC0tdGV4dC1mYWludCk7XG5cdG9wYWNpdHk6IDAuNjtcbn1cblxuLmZ1bGwtY2FsZW5kYXItY29udGFpbmVyIC5taW5pLWRheS1jZWxsLmlzLXRvZGF5IHtcblx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudC1ob3Zlcik7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XG59XG5cbi5mdWxsLWNhbGVuZGFyLWNvbnRhaW5lciAubWluaS1kYXktY2VsbC5oYXMtZXZlbnRzIHtcblx0LyogSW5kaWNhdGUgZXZlbnRzIC0gZS5nLiwgYm9sZCBvciBiYWNrZ3JvdW5kIGRvdCAqL1xuXHRmb250LXdlaWdodDogYm9sZDtcblx0LyogT3IgYWRkIGEgYmFja2dyb3VuZCBkb3Q6ICovXG5cdC8qIHBvc2l0aW9uOiByZWxhdGl2ZTsgKi9cbn1cbi8qIC5taW5pLWRheS1jZWxsLmhhcy1ldmVudHM6OmFmdGVyIHtcblx0Y29udGVudDogJyc7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0Ym90dG9tOiAycHg7XG5cdGxlZnQ6IDUwJTtcblx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuXHR3aWR0aDogNHB4O1xuXHRoZWlnaHQ6IDRweDtcblx0Ym9yZGVyLXJhZGl1czogNTAlO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10ZXh0LWFjY2VudCk7XG59ICovXG5cbi5hZ2VuZGEtZGF5LXNlY3Rpb24ge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHR3aWR0aDogMTAwJTtcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xuXHRwYWRkaW5nLXRvcDogdmFyKC0tc2l6ZS00LTIpO1xuXHRwYWRkaW5nLWJvdHRvbTogdmFyKC0tc2l6ZS00LTIpO1xuXHRwYWRkaW5nLWxlZnQ6IHZhcigtLXNpemUtNC0yKTtcblx0cGFkZGluZy1yaWdodDogdmFyKC0tc2l6ZS00LTIpO1xufVxuXG4uYWdlbmRhLWRheS1kYXRlLWNvbHVtbiB7XG5cdHdpZHRoOiAyMCU7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cblxuLmFnZW5kYS1kYXktZXZlbnRzLWNvbHVtbiB7XG5cdGZsZXg6IDE7XG59XG5cbi5mdWxsLWNhbGVuZGFyLWNvbnRhaW5lciBpbnB1dC50YXNrLWxpc3QtaXRlbS1jaGVja2JveCB7XG5cdHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbi5mdWxsLWNhbGVuZGFyLWNvbnRhaW5lciAuY2FsZW5kYXItdmlldy1zd2l0Y2hlci1zZWxlY3RvciB7XG5cdGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qIC0tLSBEcmFnIGFuZCBEcm9wIFN0eWxlcyAtLS0gKi9cbi5jYWxlbmRhci1ldmVudC1naG9zdCB7XG5cdC8qIFN0eWxlIGZvciB0aGUgcGxhY2Vob2xkZXIgd2hlbiBkcmFnZ2luZyAqL1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeS1hbHQpICFpbXBvcnRhbnQ7XG5cdGJvcmRlcjogMnB4IGRhc2hlZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcikgIWltcG9ydGFudDtcblx0b3BhY2l0eTogMC41ICFpbXBvcnRhbnQ7XG5cdGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLmNhbGVuZGFyLWV2ZW50LWRyYWdnaW5nIHtcblx0LyogU3R5bGUgZm9yIHRoZSBlbGVtZW50IGJlaW5nIGRyYWdnZWQgKi9cblx0b3BhY2l0eTogMC45ICFpbXBvcnRhbnQ7XG5cdGJveC1zaGFkb3c6IHZhcigtLXNoYWRvdy1sKSAhaW1wb3J0YW50O1xuXHR0cmFuc2Zvcm06IHJvdGF0ZSgyZGVnKSAhaW1wb3J0YW50O1xuXHR6LWluZGV4OiAxMDAwICFpbXBvcnRhbnQ7XG59XG5cbi8qIE1ha2UgY2FsZW5kYXIgZXZlbnRzIGRyYWdnYWJsZSAqL1xuLmNhbGVuZGFyLWV2ZW50cy1jb250YWluZXIgLmNhbGVuZGFyLWV2ZW50IHtcblx0Y3Vyc29yOiBncmFiO1xuXHR0cmFuc2l0aW9uOlxuXHRcdHRyYW5zZm9ybSAwLjJzIGVhc2UsXG5cdFx0Ym94LXNoYWRvdyAwLjJzIGVhc2U7XG59XG5cbi5jYWxlbmRhci1ldmVudHMtY29udGFpbmVyIC5jYWxlbmRhci1ldmVudDpob3ZlciB7XG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMXB4KTtcblx0Ym94LXNoYWRvdzogdmFyKC0tc2hhZG93LXMpO1xufVxuXG4uY2FsZW5kYXItZXZlbnRzLWNvbnRhaW5lciAuY2FsZW5kYXItZXZlbnQ6YWN0aXZlIHtcblx0Y3Vyc29yOiBncmFiYmluZztcbn1cblxuLyogU29ydGFibGUgY29udGFpbmVyIHN0eWxlcyAqL1xuLmNhbGVuZGFyLWV2ZW50cy1jb250YWluZXIsXG4uY2FsZW5kYXItZGF5LWV2ZW50cy1jb250YWluZXIge1xuXHRtaW4taGVpZ2h0OiAyMHB4OyAvKiBFbnN1cmUgdGhlcmUncyBhbHdheXMgYSBkcm9wIHpvbmUgKi9cblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpO1xuXHR0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMnMgZWFzZTtcbn1cblxuLyogSGlkZSBzZWdtZW50ZWQgY29udHJvbCBhbmQgc2hvdyBkcm9wZG93biBvbiBuYXJyb3cgc2NyZWVucyAqL1xuQGNvbnRhaW5lciAobWF4LXdpZHRoOiA2MDBweCkge1xuXHQuZnVsbC1jYWxlbmRhci1jb250YWluZXIgLmNhbGVuZGFyLXNlZ21lbnRlZC1jb250cm9sIHtcblx0XHRkaXNwbGF5OiBub25lO1xuXHR9XG5cblx0LmNhbGVuZGFyLW5hdiAucHJldi1idXR0b24ge1xuXHRcdGRpc3BsYXk6IG5vbmU7XG5cdH1cblxuXHQuY2FsZW5kYXItbmF2IC5uZXh0LWJ1dHRvbiB7XG5cdFx0ZGlzcGxheTogbm9uZTtcblx0fVxuXG5cdC5mdWxsLWNhbGVuZGFyLWNvbnRhaW5lciAuY2FsZW5kYXItdmlldy1zd2l0Y2hlci1zZWxlY3RvciB7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdH1cbn1cblxuLyogTWVkaXVtIHdpZHRoOiBzaG93IG9ubHkgc2hvcnQgbGFiZWxzICovXG5AY29udGFpbmVyIChtaW4td2lkdGg6IDYwMXB4KSBhbmQgKG1heC13aWR0aDogNjk5cHgpIHtcblx0LmZ1bGwtY2FsZW5kYXItY29udGFpbmVyIC5jYWxlbmRhci1zZWdtZW50LWZ1bGwge1xuXHRcdGRpc3BsYXk6IG5vbmU7XG5cdH1cblxuXHQuZnVsbC1jYWxlbmRhci1jb250YWluZXIgLmNhbGVuZGFyLXNlZ21lbnQtc2hvcnQge1xuXHRcdGRpc3BsYXk6IGlubGluZTtcblx0fVxuXG5cdC5mdWxsLWNhbGVuZGFyLWNvbnRhaW5lciAuY2FsZW5kYXItc2VnbWVudC1idG4ge1xuXHRcdHBhZGRpbmc6IDZweCA4cHg7XG5cdFx0bWluLXdpZHRoOiAyOHB4O1xuXHR9XG59XG4iLCAiLmZ1bGwtY2FsZW5kYXItY29udGFpbmVyIC5jYWxlbmRhci1ldmVudC10aXRsZS1jb250YWluZXIgcCB7XHJcblx0cGFkZGluZy1pbmxpbmUtc3RhcnQ6IDA7XHJcblx0cGFkZGluZy1pbmxpbmUtZW5kOiAwO1xyXG5cdG1hcmdpbi1ibG9jay1zdGFydDogMDtcclxuXHRtYXJnaW4tYmxvY2stZW5kOiAwO1xyXG59XHJcblxyXG4uZnVsbC1jYWxlbmRhci1jb250YWluZXIgLmNhbGVuZGFyLWV2ZW50LXRpdGxlLWNvbnRhaW5lciB7XHJcblx0LyogSGFuZGxlIHRleHQgb3ZlcmZsb3cgd2l0aCBlbGxpcHNpcyAqL1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcblx0dGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XHJcblx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuXHRtYXgtd2lkdGg6IDEwMCU7XHJcbn1cclxuXHJcbi5mdWxsLWNhbGVuZGFyLWNvbnRhaW5lciAuY2FsZW5kYXItZXZlbnQtdGl0bGUgcCB7XHJcblx0bWFyZ2luLWJsb2NrLXN0YXJ0OiAwO1xyXG5cdG1hcmdpbi1ibG9jay1lbmQ6IDA7XHJcbn1cclxuIiwgIi8qIENhbGVuZGFyIEJhZGdlIFN0eWxlcyAqL1xyXG4uY2FsZW5kYXItYmFkZ2VzLWNvbnRhaW5lciB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogcm93O1xyXG5cdGdhcDogNHB4O1xyXG5cdHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG5cdHotaW5kZXg6IDEwO1xyXG59XHJcblxyXG4uY2FsZW5kYXItYmFkZ2Uge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZvbnQtc2l6ZTogMTBweDtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTItMSk7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpO1xyXG5cclxuXHRtYXgtd2lkdGg6IDgwcHg7XHJcblx0b3ZlcmZsb3c6IGhpZGRlbjtcclxuXHR0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcclxuXHR3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG59XHJcblxyXG4vKiBFbnN1cmUgYmFkZ2VzIGFyZSBwb3NpdGlvbmVkIHJlbGF0aXZlIHRvIHRoZSBkYXkgY2VsbCAqL1xyXG4uY2FsZW5kYXItZGF5LWNlbGwge1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxufVxyXG4iLCAiLmdhbnR0LWNoYXJ0LWNvbnRhaW5lciB7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0aGVpZ2h0OiAxMDAlO1xyXG5cdG92ZXJmbG93OiBhdXRvO1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcblxyXG5cdC0tZ2FudHQtaGVhZGVyLWhlaWdodDogNTBweDtcclxuXHQtLWdhbnR0LXJvdy1oZWlnaHQ6IDQwcHg7XHJcblx0LS1nYW50dC1iYXItaGVpZ2h0OiAyMHB4O1xyXG5cdC0tZ2FudHQtYmFyLXJhZGl1czogM3B4O1xyXG5cclxuXHQtLWdhbnR0LWJnLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcblx0LS1nYW50dC1ncmlkLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0LS1nYW50dC1yb3ctY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcclxuXHQtLWdhbnR0LWJhci1jb2xvcjogdmFyKC0tY29sb3ItYmx1ZSk7XHJcblx0LS1nYW50dC1taWxlc3RvbmUtY29sb3I6IHZhcigtLWNvbG9yLXB1cnBsZSk7XHJcblx0LS1nYW50dC1wcm9ncmVzcy1jb2xvcjogdmFyKC0tY29sb3ItYmx1ZSk7XHJcblx0LS1nYW50dC10b2RheS1jb2xvcjogdmFyKC0tY29sb3ItYWNjZW50KTtcclxufVxyXG5cclxuLmdhbnR0LXN2ZyB7XHJcblx0ZGlzcGxheTogYmxvY2s7XHJcblx0Zm9udC1mYW1pbHk6IHZhcigtLWZvbnQtaW50ZXJmYWNlKTtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGwpO1xyXG5cdHVzZXItc2VsZWN0OiBub25lO1xyXG59XHJcblxyXG4uZ2FudHQtaGVhZGVyLWJnIHtcclxuXHRmaWxsOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xyXG5cdHN0cm9rZTogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdHN0cm9rZS13aWR0aDogMXB4O1xyXG59XHJcblxyXG4uZ2FudHQtaGVhZGVyLXRleHQge1xyXG5cdGZpbGw6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdGZvbnQtd2VpZ2h0OiA1MDA7XHJcbn1cclxuXHJcbi5nYW50dC1ncmlkLWJnIHtcclxuXHRmaWxsOiB0cmFuc3BhcmVudDtcclxuXHRzdHJva2U6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRzdHJva2Utd2lkdGg6IDA7XHJcbn1cclxuXHJcbi5nYW50dC1ncmlkLWxpbmUtdmVydGljYWwge1xyXG5cdHN0cm9rZTogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdHN0cm9rZS13aWR0aDogMXB4O1xyXG5cdHN0cm9rZS1kYXNoYXJyYXk6IDIsIDI7XHJcbn1cclxuXHJcbi5nYW50dC10YXNrLWl0ZW0ge1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxufVxyXG5cclxuLmdhbnR0LXRhc2stYmFyIHtcclxuXHRmaWxsOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdHN0cm9rZTogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50LWhvdmVyKTtcclxuXHRzdHJva2Utd2lkdGg6IDFweDtcclxuXHR0cmFuc2l0aW9uOiBmaWxsIDAuMXMgZWFzZS1pbi1vdXQ7XHJcbn1cclxuXHJcbi5nYW50dC10YXNrLWl0ZW06aG92ZXIgLmdhbnR0LXRhc2stYmFyIHtcclxuXHRmaWxsOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQtaG92ZXIpO1xyXG59XHJcblxyXG4uZ2FudHQtdGFzay1taWxlc3RvbmUge1xyXG5cdGZpbGw6IHZhcigtLWNvbG9yLW9yYW5nZSk7XHJcblx0c3Ryb2tlOiB2YXIoLS1jb2xvci1vcmFuZ2UtYm9yZGVyKTtcclxuXHRzdHJva2Utd2lkdGg6IDFweDtcclxufVxyXG5cclxuLmdhbnR0LXRhc2stbGFiZWwge1xyXG5cdGZpbGw6IHZhcigtLXRleHQtb24tYWNjZW50KTtcclxuXHRmb250LXNpemU6IGNhbGModmFyKC0tZm9udC11aS1zbWFsbCkgKiAwLjkpO1xyXG5cdHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG5cdHdoaXRlLXNwYWNlOiBwcmU7XHJcbn1cclxuXHJcbi5nYW50dC10YXNrLWJhci5zdGF0dXMtY29tcGxldGVkIHtcclxuXHRmaWxsOiB2YXIoLS1jb2xvci1ncmVlbik7XHJcblx0c3Ryb2tlOiB2YXIoLS1jb2xvci1ncmVlbi1ib3JkZXIpO1xyXG59XHJcblxyXG4uZ2FudHQtdGFzay1iYXIucHJpb3JpdHktaGlnaCB7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBHYW50dCBDaGFydCBTdHlsZXNcclxuICovXHJcblxyXG4uZ2FudHQtaGVhZGVyIHtcclxuXHRwb3NpdGlvbjogc3RpY2t5O1xyXG5cdHRvcDogMDtcclxuXHRsZWZ0OiAwO1xyXG5cdHJpZ2h0OiAwO1xyXG5cdHotaW5kZXg6IDEwO1xyXG5cdGhlaWdodDogdmFyKC0tZ2FudHQtaGVhZGVyLWhlaWdodCk7XHJcblx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWdhbnR0LWdyaWQtY29sb3IpO1xyXG5cdHVzZXItc2VsZWN0OiBub25lO1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdhbnR0LWJnLWNvbG9yKTtcclxuXHRwb2ludGVyLWV2ZW50czogbm9uZTtcclxuXHR3aWR0aDogMTAwJTtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG59XHJcblxyXG4uZ2FudHQtaGVhZGVyLXJvdyB7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdGhlaWdodDogNTAlO1xyXG5cdHdpZHRoOiAxMDAlO1xyXG59XHJcblxyXG4uZ2FudHQtaGVhZGVyLXJvdy5wcmltYXJ5IHtcclxuXHRib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tZ2FudHQtZ3JpZC1jb2xvcik7XHJcblx0Zm9udC13ZWlnaHQ6IDYwMDtcclxufVxyXG5cclxuLmdhbnR0LWhlYWRlci1jZWxsIHtcclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0aGVpZ2h0OiAxMDAlO1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0Zm9udC1zaXplOiAxMnB4O1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcblx0Ym9yZGVyLXJpZ2h0OiAxcHggc29saWQgdmFyKC0tZ2FudHQtZ3JpZC1jb2xvcik7XHJcblx0Ym94LXNpemluZzogYm9yZGVyLWJveDtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nYW50dC1iZy1jb2xvcik7XHJcblx0cG9pbnRlci1ldmVudHM6IGF1dG87XHJcbn1cclxuXHJcbi5nYW50dC1ib2R5IHtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0b3ZlcmZsb3c6IGF1dG87XHJcblx0aGVpZ2h0OiAxMDAlO1xyXG5cdHBhZGRpbmctdG9wOiB2YXIoLS1nYW50dC1oZWFkZXItaGVpZ2h0KTtcclxuXHRtYXJnaW4tdG9wOiBjYWxjKHZhcigtLWdhbnR0LWhlYWRlci1oZWlnaHQpICogLTEpO1xyXG59XHJcblxyXG4uZ2FudHQtZ3JpZCB7XHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdHRvcDogdmFyKC0tZ2FudHQtaGVhZGVyLWhlaWdodCk7XHJcblx0bGVmdDogMDtcclxuXHRoZWlnaHQ6IGNhbGMoMTAwJSAtIHZhcigtLWdhbnR0LWhlYWRlci1oZWlnaHQpKTtcclxuXHRtaW4td2lkdGg6IDEwMCU7XHJcbn1cclxuXHJcbi5nYW50dC1ncmlkLWNvbHVtbiB7XHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdHRvcDogMDtcclxuXHRoZWlnaHQ6IDEwMCU7XHJcblx0Ym9yZGVyLXJpZ2h0OiAxcHggc29saWQgdmFyKC0tZ2FudHQtZ3JpZC1jb2xvcik7XHJcblx0Ym94LXNpemluZzogYm9yZGVyLWJveDtcclxufVxyXG5cclxuLmdhbnR0LWdyaWQtY29sdW1uLnRvZGF5IHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nYW50dC10b2RheS1jb2xvcik7XHJcbn1cclxuXHJcbi5nYW50dC1ncmlkLXJvdyB7XHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdGxlZnQ6IDA7XHJcblx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWdhbnR0LWdyaWQtY29sb3IpO1xyXG5cdGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2FudHQtcm93LWNvbG9yKTtcclxufVxyXG5cclxuLmdhbnR0LWdyaWQtcm93Om50aC1jaGlsZChvZGQpIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nYW50dC1iZy1jb2xvcik7XHJcbn1cclxuXHJcbi5nYW50dC1iYXJzIHtcclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0dG9wOiB2YXIoLS1nYW50dC1oZWFkZXItaGVpZ2h0KTtcclxuXHRsZWZ0OiAwO1xyXG5cdGhlaWdodDogY2FsYygxMDAlIC0gdmFyKC0tZ2FudHQtaGVhZGVyLWhlaWdodCkpO1xyXG5cdG1pbi13aWR0aDogMTAwJTtcclxuXHRwb2ludGVyLWV2ZW50czogbm9uZTtcclxufVxyXG5cclxuLmdhbnR0LXRhc2stY29udGFpbmVyIHtcclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0Ym94LXNpemluZzogYm9yZGVyLWJveDtcclxuXHRwb2ludGVyLWV2ZW50czogYXV0bztcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0dHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMXMgZWFzZTtcclxufVxyXG5cclxuLmdhbnR0LXRhc2stY29udGFpbmVyOmhvdmVyIHtcclxuXHR6LWluZGV4OiAxMDtcclxuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTJweCk7XHJcbn1cclxuXHJcbi5nYW50dC10YXNrLWJhci5taWxlc3RvbmUge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdhbnR0LW1pbGVzdG9uZS1jb2xvcik7XHJcblx0d2lkdGg6IDE1cHggIWltcG9ydGFudDtcclxuXHRoZWlnaHQ6IDE1cHggIWltcG9ydGFudDtcclxuXHRib3JkZXItcmFkaXVzOiA1MCU7XHJcblx0dHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xyXG5cdHRvcDogNTAlO1xyXG5cdG1hcmdpbi10b3A6IC03LjVweDtcclxuXHRsZWZ0OiA1MCU7XHJcblx0bWFyZ2luLWxlZnQ6IC03LjVweDtcclxufVxyXG5cclxuLmdhbnR0LXRhc2stcHJvZ3Jlc3Mge1xyXG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHR0b3A6IDA7XHJcblx0bGVmdDogMDtcclxuXHRoZWlnaHQ6IDEwMCU7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2FudHQtcHJvZ3Jlc3MtY29sb3IpO1xyXG5cdG9wYWNpdHk6IDAuNztcclxufVxyXG5cclxuLmdhbnR0LXRhc2stbGFiZWwge1xyXG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRsZWZ0OiBjYWxjKDEwMCUgKyA4cHgpO1xyXG5cdHRvcDogMDtcclxuXHR3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG5cdGZvbnQtc2l6ZTogMTJweDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG5cdGxpbmUtaGVpZ2h0OiB2YXIoLS1nYW50dC1iYXItaGVpZ2h0KTtcclxufVxyXG5cclxuLmdhbnR0LXRhc2stY29udGFpbmVyLnJpZ2h0LWFsaWduZWQgLmdhbnR0LXRhc2stbGFiZWwge1xyXG5cdGxlZnQ6IGF1dG87XHJcblx0cmlnaHQ6IGNhbGMoMTAwJSArIDhweCk7XHJcblx0dGV4dC1hbGlnbjogcmlnaHQ7XHJcbn1cclxuXHJcbkBtZWRpYSAobWF4LXdpZHRoOiA2ODBweCkge1xyXG5cdC5nYW50dC1oZWFkZXItY2VsbCB7XHJcblx0XHRmb250LXNpemU6IDEwcHg7XHJcblx0fVxyXG5cclxuXHQuZ2FudHQtdGFzay1sYWJlbCB7XHJcblx0XHRmb250LXNpemU6IDEwcHg7XHJcblx0fVxyXG59XHJcblxyXG4uZ2FudHQtY2hhcnQtY29udGFpbmVyIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0aGVpZ2h0OiAxMDAlO1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG59XHJcblxyXG4uZ2FudHQtaGVhZGVyLWNvbnRhaW5lciB7XHJcblx0aGVpZ2h0OiA0MHB4O1xyXG5cdGZsZXgtc2hyaW5rOiAwO1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xyXG59XHJcblxyXG4uZ2FudHQtaGVhZGVyLXN2ZyB7XHJcblx0ZGlzcGxheTogYmxvY2s7XHJcbn1cclxuXHJcbi5nYW50dC1oZWFkZXItdGljay1tYWpvcixcclxuLmdhbnR0LWhlYWRlci10aWNrLW1pbm9yLFxyXG4uZ2FudHQtaGVhZGVyLXRpY2stZGF5LFxyXG4uZ2FudHQtaGVhZGVyLXRvZGF5LW1hcmtlciB7XHJcblx0c3Ryb2tlOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0c3Ryb2tlLXdpZHRoOiAxO1xyXG59XHJcbi5nYW50dC1oZWFkZXItdGljay1tYWpvciB7XHJcblx0c3Ryb2tlLXdpZHRoOiAxLjU7XHJcbn1cclxuLmdhbnR0LWhlYWRlci10b2RheS1tYXJrZXIge1xyXG5cdHN0cm9rZTogdmFyKC0tY29sb3Itb3JhbmdlKTtcclxuXHRzdHJva2Utd2lkdGg6IDEuNTtcclxuXHRzdHJva2UtZGFzaGFycmF5OiA0LCAyO1xyXG59XHJcblxyXG4uZ2FudHQtaGVhZGVyLWxhYmVsLW1ham9yLFxyXG4uZ2FudHQtaGVhZGVyLWxhYmVsLW1pbm9yLFxyXG4uZ2FudHQtaGVhZGVyLWxhYmVsLWRheSB7XHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsKTtcclxuXHRmaWxsOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHR1c2VyLXNlbGVjdDogbm9uZTtcclxuXHRwb2ludGVyLWV2ZW50czogbm9uZTtcclxufVxyXG4uZ2FudHQtaGVhZGVyLWxhYmVsLW1ham9yIHtcclxuXHRmb250LXdlaWdodDogNTAwO1xyXG5cdGZpbGw6IHZhcigtLXRleHQtbm9ybWFsKTtcclxufVxyXG5cclxuLmdhbnR0LXNjcm9sbC1jb250YWluZXIge1xyXG5cdGZsZXgtZ3JvdzogMTtcclxuXHRvdmVyZmxvdzogYXV0bztcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcbn1cclxuXHJcbi5nYW50dC1jb250ZW50LXdyYXBwZXIge1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xyXG59XHJcblxyXG4uZ2FudHQtZ3JpZC1saW5lLW1ham9yLFxyXG4uZ2FudHQtZ3JpZC1saW5lLW1pbm9yIHtcclxuXHRzdHJva2U6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyLWhvdmVyKTtcclxuXHRzdHJva2Utd2lkdGg6IDAuNTtcclxufVxyXG4uZ2FudHQtZ3JpZC1saW5lLW1ham9yIHtcclxuXHRzdHJva2Utd2lkdGg6IDE7XHJcbn1cclxuLmdhbnR0LWdyaWQtbGluZS1ob3Jpem9udGFsIHtcclxuXHRzdHJva2U6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRzdHJva2Utd2lkdGg6IDE7XHJcbn1cclxuXHJcbi5nYW50dC1ncmlkLXRvZGF5LW1hcmtlciB7XHJcblx0c3Ryb2tlOiB2YXIoLS1jb2xvci1vcmFuZ2UpO1xyXG5cdHN0cm9rZS13aWR0aDogMTtcclxuXHRzdHJva2UtZGFzaGFycmF5OiA0LCAyO1xyXG59XHJcblxyXG4uZ2FudHQtdGFzay1pdGVtIHtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcbn1cclxuXHJcbi5nYW50dC10YXNrLWJhciB7XHJcblx0ZmlsbDogdmFyKC0tY29sb3ItYmx1ZSk7XHJcblx0c3Ryb2tlOiB2YXIoLS1jb2xvci1ibHVlLWhvdmVyKTtcclxuXHRzdHJva2Utd2lkdGg6IDAuNTtcclxuXHR0cmFuc2l0aW9uOiBmaWxsIDAuMXMgZWFzZTtcclxufVxyXG4uZ2FudHQtdGFzay1pdGVtOmhvdmVyIC5nYW50dC10YXNrLWJhciB7XHJcblx0ZmlsbDogdmFyKC0tY29sb3ItYWNjZW50KTtcclxufVxyXG5cclxuLmdhbnR0LXRhc2stbWlsZXN0b25lIHtcclxuXHRmaWxsOiB2YXIoLS1jb2xvci1wdXJwbGUpO1xyXG5cdHN0cm9rZTogdmFyKC0tY29sb3ItcHVycGxlKTtcclxuXHRzdHJva2Utd2lkdGg6IDE7XHJcblx0dHJhbnNpdGlvbjogZmlsbCAwLjFzIGVhc2U7XHJcbn1cclxuLmdhbnR0LXRhc2staXRlbTpob3ZlciAuZ2FudHQtdGFzay1taWxlc3RvbmUge1xyXG5cdGZpbGw6IHZhcigtLWNvbG9yLWFjY2VudCk7XHJcbn1cclxuXHJcbi5nYW50dC10YXNrLWl0ZW0uc3RhdHVzLWRvbmUgLmdhbnR0LXRhc2stYmFyLFxyXG4uZ2FudHQtdGFzay1pdGVtLnN0YXR1cy1kb25lIC5nYW50dC10YXNrLW1pbGVzdG9uZSB7XHJcblx0ZmlsbDogdmFyKC0tY29sb3ItZ3JlZW4pO1xyXG5cdHN0cm9rZTogdmFyKC0tY29sb3ItZ3JlZW4pO1xyXG5cdG9wYWNpdHk6IDAuNztcclxufVxyXG4uZ2FudHQtdGFzay1pdGVtLnN0YXR1cy1jYW5jZWxsZWQgLmdhbnR0LXRhc2stYmFyLFxyXG4uZ2FudHQtdGFzay1pdGVtLnN0YXR1cy1jYW5jZWxsZWQgLmdhbnR0LXRhc2stbWlsZXN0b25lIHtcclxuXHRmaWxsOiB2YXIoLS1jb2xvci1yZWQpO1xyXG5cdHN0cm9rZTogdmFyKC0tY29sb3ItcmVkKTtcclxuXHRvcGFjaXR5OiAwLjY7XHJcblx0dGV4dC1kZWNvcmF0aW9uOiBsaW5lLXRocm91Z2g7XHJcbn1cclxuLmdhbnR0LXRhc2staXRlbS5zdGF0dXMtaW5wcm9ncmVzcyAuZ2FudHQtdGFzay1iYXIge1xyXG59XHJcblxyXG4uZ2FudHQtdGFzay1sYWJlbC1mbyB7XHJcblx0cG9pbnRlci1ldmVudHM6IG5vbmU7XHJcblx0b3ZlcmZsb3c6IGhpZGRlbjtcclxuXHR1c2VyLXNlbGVjdDogbm9uZTtcclxufVxyXG5cclxuLmdhbnR0LXRhc2stbGFiZWwtbWFya2Rvd24ge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsZXIpO1xyXG5cdGxpbmUtaGVpZ2h0OiAxLjM7XHJcblx0cGFkZGluZzogMCAycHg7XHJcblx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG5cdHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xyXG5cclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0aGVpZ2h0OiAxMDAlO1xyXG59XHJcblxyXG4uZ2FudHQtdGFzay1sYWJlbC1tYXJrZG93biBwIHtcclxuXHRtYXJnaW46IDAgIWltcG9ydGFudDtcclxufVxyXG5cclxuLmdhbnR0LW1pbGVzdG9uZS1sYWJlbC1jb250YWluZXIgcCB7XHJcblx0bWFyZ2luLWJsb2NrLXN0YXJ0OiAwO1xyXG5cdG1hcmdpbi1ibG9jay1lbmQ6IDA7XHJcblx0bWFyZ2luLWlubGluZS1zdGFydDogMDtcclxuXHRtYXJnaW4taW5saW5lLWVuZDogMDtcclxuXHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGxlcik7XHJcblx0bGluZS1oZWlnaHQ6IDEuMztcclxuXHRwYWRkaW5nOiAwIDJweDtcclxuXHR3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcblx0dGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XHJcblxyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRoZWlnaHQ6IDEwMCU7XHJcbn1cclxuXHJcbi5nYW50dC10YXNrLWl0ZW0uc3RhdHVzLWRvbmUgLmdhbnR0LXRhc2stbGFiZWwtbWFya2Rvd24ge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XHJcbn1cclxuLmdhbnR0LXRhc2staXRlbS5zdGF0dXMtY2FuY2VsbGVkIC5nYW50dC10YXNrLWxhYmVsLW1hcmtkb3duIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1vbi1hY2NlbnQpO1xyXG5cdHRleHQtZGVjb3JhdGlvbjogbGluZS10aHJvdWdoO1xyXG59XHJcblxyXG4uZ2FudHQtbWlsZXN0b25lLWxhYmVsIHtcclxuXHRmaWxsOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcbn1cclxuXHJcbi5nYW50dC1maWx0ZXItYXJlYSB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XHJcblxyXG5cdHdpZHRoOiAxMDAlO1xyXG5cclxuXHRwYWRkaW5nLWxlZnQ6IHZhcigtLXNpemUtMi0yKTtcclxuXHRwYWRkaW5nLXJpZ2h0OiB2YXIoLS1zaXplLTQtMik7XHJcblxyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XHJcbn1cclxuXHJcbi5nYW50dC1maWx0ZXItYXJlYSAuZmlsdGVyLWNvbXBvbmVudCB7XHJcblx0ZmxleDogMTtcclxufVxyXG5cclxuLmdhbnR0LW9mZnNjcmVlbi1pbmRpY2F0b3Ige1xyXG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHR0b3A6IGNhbGMoNTAlICsgMjBweCk7XHJcblx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xyXG5cdHdpZHRoOiA4cHg7XHJcblx0aGVpZ2h0OiA4cHg7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogcmdiYSgxMjgsIDEyOCwgMTI4LCAwLjYpO1xyXG5cdGJvcmRlci1yYWRpdXM6IDUwJTtcclxuXHR6LWluZGV4OiAxMDtcclxuXHRwb2ludGVyLWV2ZW50czogbm9uZTtcclxuXHRkaXNwbGF5OiBub25lO1xyXG5cdHRyYW5zaXRpb246IG9wYWNpdHkgMC4ycyBlYXNlLWluLW91dDtcclxuXHRvcGFjaXR5OiAxO1xyXG59XHJcblxyXG4uZ2FudHQtb2Zmc2NyZWVuLWluZGljYXRvcltzdHlsZSo9XCJkaXNwbGF5OiBub25lXCJdIHtcclxuXHRvcGFjaXR5OiAwO1xyXG59XHJcblxyXG4uZ2FudHQtb2Zmc2NyZWVuLWluZGljYXRvci1sZWZ0IHtcclxuXHRsZWZ0OiA1cHg7XHJcbn1cclxuXHJcbi5nYW50dC1vZmZzY3JlZW4taW5kaWNhdG9yLXJpZ2h0IHtcclxuXHRyaWdodDogNXB4O1xyXG59XHJcblxyXG4uZ2FudHQtaW5kaWNhdG9yLWNvbnRhaW5lciB7XHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdHRvcDogMDtcclxuXHRib3R0b206IDA7XHJcblx0d2lkdGg6IHZhcigtLXNpemUtNC0zKTtcclxuXHR6LWluZGV4OiAxMDtcclxuXHRwb2ludGVyLWV2ZW50czogbm9uZTtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG59XHJcblxyXG4uZ2FudHQtaW5kaWNhdG9yLWNvbnRhaW5lci1sZWZ0IHtcclxuXHRsZWZ0OiAwO1xyXG59XHJcblxyXG4uZ2FudHQtaW5kaWNhdG9yLWNvbnRhaW5lci1yaWdodCB7XHJcblx0cmlnaHQ6IDA7XHJcbn1cclxuXHJcbi5nYW50dC1zaW5nbGUtaW5kaWNhdG9yIHtcclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0bGVmdDogdmFyKC0tc2l6ZS0yLTEpO1xyXG5cdHdpZHRoOiB2YXIoLS1zaXplLTQtMik7XHJcblx0aGVpZ2h0OiB2YXIoLS1zaXplLTQtMik7XHJcblx0Ym9yZGVyLXJhZGl1czogNTAlO1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRleHQtZmFpbnQpO1xyXG5cdHBvaW50ZXItZXZlbnRzOiBhdXRvO1xyXG5cdGN1cnNvcjogZGVmYXVsdDtcclxufVxyXG5cclxuLmdhbnR0LXNpbmdsZS1pbmRpY2F0b3I6aG92ZXIge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRleHQtYWNjZW50KTtcclxufVxyXG5cclxuLmdhbnR0LWNoYXJ0LWNvbnRhaW5lciAuZ2FudHQtaW5kaWNhdG9yLWNvbnRhaW5lciB7XHJcblx0dG9wOiBjYWxjKHZhcigtLWhlYWRlci1oZWlnaHQsIDQwcHgpICsgdmFyKC0tZmlsdGVyLWhlaWdodCwgMHB4KSk7XHJcblx0Ym90dG9tOiAxNXB4O1xyXG59XHJcblxyXG4uZ2FudHQtY2hhcnQtY29udGFpbmVyIC5nYW50dC1pbmRpY2F0b3ItY29udGFpbmVyLXJpZ2h0IHtcclxuXHRyaWdodDogMTVweDtcclxufVxyXG5cclxuLmdhbnR0LXRhc2stbGFiZWwgcCB7XHJcblx0bWFyZ2luOiAwO1xyXG5cdGxpbmUtaGVpZ2h0OiB2YXIoLS1nYW50dC1iYXItaGVpZ2h0KTtcclxuXHR3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcblx0dGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XHJcbn1cclxuIiwgIi50YXNrLXN0YXR1cy1pbmRpY2F0b3Itd3JhcHBlciB7XG5cdGRpc3BsYXk6IGZsZXg7XG59XG5cbi50YXNrLXN0YXR1cy1pbmRpY2F0b3Ige1xuXHRkaXNwbGF5OiBpbmxpbmUtZmxleDtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdHBhZGRpbmc6IDAgdmFyKC0tc2l6ZS0yLTIpO1xuXHRtaW4taGVpZ2h0OiAyMHB4O1xuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbCk7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3Zlcik7XG5cdGN1cnNvcjogcG9pbnRlcjtcblx0dXNlci1zZWxlY3Q6IG5vbmU7XG5cdHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4xNXMgZWFzZSwgY29sb3IgMC4xNXMgZWFzZSxcblx0XHRvcGFjaXR5IDAuMTVzIGVhc2U7XG59XG5cbi50YXNrLXN0YXR1cy1pbmRpY2F0b3JfX3RleHQge1xuXHRwYWRkaW5nOiAwIHZhcigtLXNpemUtMi0xKTtcblx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxuLnRhc2stc3RhdHVzLWluZGljYXRvcjpob3ZlciB7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYWN0aXZlLWhvdmVyKTtcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcbn1cblxuLnRhc2stc3RhdHVzLWluZGljYXRvci5pcy1kaXNhYmxlZCB7XG5cdG9wYWNpdHk6IDAuNTtcblx0Y3Vyc29yOiBkZWZhdWx0O1xufVxuXG4udGFzay1zdGF0dXMtaW5kaWNhdG9yLmlzLXByb2Nlc3Npbmcge1xuXHRvcGFjaXR5OiAwLjc7XG5cdGN1cnNvcjogcHJvZ3Jlc3M7XG59XG5cbi50YXNrLXN0YXR1cy1pbmRpY2F0b3IuaXMtY29tcGxldGVkIHtcblx0Y29sb3I6IHZhcigtLXRleHQtb24tYWNjZW50KTtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1zdWNjZXNzKTtcbn1cbiIsICIvKiBJbmxpbmUgRWRpdG9yIFN0eWxlcyAtIE9wdGltaXplZCBmb3IgUGVyZm9ybWFuY2UgYW5kIFVYICovXHJcbi5pbmxpbmUtZWRpdG9yIHtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG5cdHdpZHRoOiAxMDAlO1xyXG59XHJcblxyXG4vKiBDb250ZW50IEVkaXRvciAtIE1vcmUgaW5saW5lIGFwcGVhcmFuY2UgKi9cclxuLmlubGluZS1jb250ZW50LWVkaXRvciB7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0bWluLWhlaWdodDogMThweDtcclxuXHRib3JkZXI6IG5vbmU7XHJcblx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcblx0Ym9yZGVyLXJhZGl1czogMDtcclxuXHRwYWRkaW5nOiAycHggNHB4O1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcblx0Zm9udC1mYW1pbHk6IGluaGVyaXQ7XHJcblx0Zm9udC1zaXplOiBpbmhlcml0O1xyXG5cdGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xyXG5cdHJlc2l6ZTogbm9uZTtcclxuXHRvdXRsaW5lOiBub25lO1xyXG5cdHRyYW5zaXRpb246IGJvcmRlci1jb2xvciAwLjE1cyBlYXNlLCBiYWNrZ3JvdW5kLWNvbG9yIDAuMTVzIGVhc2U7XHJcbn1cclxuXHJcbi5pbmxpbmUtY29udGVudC1lZGl0b3I6Zm9jdXMge1xyXG5cdGJvcmRlci1ib3R0b20tY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudC1ob3Zlcik7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5LWFsdCk7XHJcblx0Ym94LXNoYWRvdzogMCAxcHggMCAwIHZhcigtLWludGVyYWN0aXZlLWFjY2VudC1ob3Zlcik7XHJcbn1cclxuXHJcbi8qIEVtYmVkZGVkIEVkaXRvciBTdHlsZXMgLSBNb3JlIHNlYW1sZXNzICovXHJcbi5pbmxpbmUtZW1iZWRkZWQtZWRpdG9yLWNvbnRhaW5lciB7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0bWluLWhlaWdodDogMThweDtcclxuXHRib3JkZXI6IG5vbmU7XHJcblx0Ym9yZGVyLXJhZGl1czogMDtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxufVxyXG5cclxuLmlubGluZS1lbWJlZGRlZC1lZGl0b3Ige1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cdG1pbi1oZWlnaHQ6IDE4cHg7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbn1cclxuXHJcbi5pbmxpbmUtZW1iZWRkZWQtZWRpdG9yIC5jbS1lZGl0b3Ige1xyXG5cdGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xyXG5cdG91dGxpbmU6IG5vbmUgIWltcG9ydGFudDtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xyXG5cdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5pbmxpbmUtZW1iZWRkZWQtZWRpdG9yIC5jbS1mb2N1c2VkIHtcclxuXHRvdXRsaW5lOiBub25lICFpbXBvcnRhbnQ7XHJcblx0Ym9yZGVyLWJvdHRvbS1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50LWhvdmVyKSAhaW1wb3J0YW50O1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeS1hbHQpICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5pbmxpbmUtZW1iZWRkZWQtZWRpdG9yIC5jbS1jb250ZW50IHtcclxuXHRwYWRkaW5nOiAycHggNHB4O1xyXG5cdG1pbi1oZWlnaHQ6IDE4cHg7XHJcblx0Zm9udC1mYW1pbHk6IGluaGVyaXQ7XHJcblx0Zm9udC1zaXplOiBpbmhlcml0O1xyXG5cdGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xyXG59XHJcblxyXG4uaW5saW5lLWVtYmVkZGVkLWVkaXRvciAuY20tbGluZSB7XHJcblx0cGFkZGluZzogMDtcclxufVxyXG5cclxuLyogTWV0YWRhdGEgRWRpdG9yIENvbnRhaW5lciAtIE1vcmUgY29tcGFjdCBhbmQgaW5saW5lICovXHJcbi5pbmxpbmUtbWV0YWRhdGEtZWRpdG9yIHtcclxuXHRkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGdhcDogNHB4O1xyXG5cdHBhZGRpbmc6IDJweCA2cHg7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5LWFsdCk7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XHJcblx0Ym94LXNoYWRvdzogMCAxcHggM3B4IHJnYmEoMCwgMCwgMCwgMC4xKTtcclxuXHRtaW4td2lkdGg6IDEyMHB4O1xyXG5cdG1heC13aWR0aDogMzAwcHg7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdHotaW5kZXg6IDEwMDtcclxufVxyXG5cclxuLmlubGluZS1tZXRhZGF0YS1lZGl0b3IgaW5wdXQge1xyXG5cdGJvcmRlcjogdW5zZXQ7XHJcblx0b3V0bGluZTogdW5zZXQ7XHJcblx0cGFkZGluZzogMDtcclxuXHRoZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0KTtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuXHRiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XHJcbn1cclxuXHJcbi5pbmxpbmUtbWV0YWRhdGEtZWRpdG9yIGlucHV0OmZvY3VzIHtcclxuXHRvdXRsaW5lOiB1bnNldDtcclxuXHRwYWRkaW5nOiAwO1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG59XHJcblxyXG4uaW5saW5lLW1ldGFkYXRhLWVkaXRvcjpoYXMoaW5wdXQpIHtcclxuXHRvdXRsaW5lOiB1bnNldDtcclxuXHRib3JkZXI6IDA7XHJcblx0cGFkZGluZzogMDtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuXHRib3JkZXItcmFkaXVzOiB1bnNldDtcclxufVxyXG5cclxuLyogTWV0YWRhdGEgSW5wdXQgRmllbGRzIC0gTW9yZSBjb21wYWN0ICovXHJcbi5pbmxpbmUtcHJvamVjdC1pbnB1dCxcclxuLmlubGluZS10YWdzLWlucHV0LFxyXG4uaW5saW5lLWNvbnRleHQtaW5wdXQsXHJcbi5pbmxpbmUtZGF0ZS1pbnB1dCxcclxuLmlubGluZS1yZWN1cnJlbmNlLWlucHV0IHtcclxuXHRmbGV4OiAxO1xyXG5cdHBhZGRpbmc6IDJweCA0cHg7XHJcblx0Ym9yZGVyOiBub25lO1xyXG5cdGJvcmRlci1yYWRpdXM6IDJweDtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG5cdGZvbnQtZmFtaWx5OiBpbmhlcml0O1xyXG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbCk7XHJcblx0b3V0bGluZTogbm9uZTtcclxuXHRtaW4td2lkdGg6IDgwcHg7XHJcblx0dHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjE1cyBlYXNlO1xyXG59XHJcblxyXG4uaW5saW5lLXByb2plY3QtaW5wdXQ6Zm9jdXMsXHJcbi5pbmxpbmUtdGFncy1pbnB1dDpmb2N1cyxcclxuLmlubGluZS1jb250ZXh0LWlucHV0OmZvY3VzLFxyXG4uaW5saW5lLWRhdGUtaW5wdXQ6Zm9jdXMsXHJcbi5pbmxpbmUtcmVjdXJyZW5jZS1pbnB1dDpmb2N1cyB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcclxuXHRib3gtc2hhZG93OiBpbnNldCAwIDAgMCAxcHggdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxufVxyXG5cclxuLmlubGluZS1wcmlvcml0eS1zZWxlY3Qge1xyXG5cdHBhZGRpbmc6IDJweCA0cHg7XHJcblx0Ym9yZGVyOiBub25lO1xyXG5cdGJvcmRlci1yYWRpdXM6IDJweDtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG5cdGZvbnQtZmFtaWx5OiBpbmhlcml0O1xyXG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbCk7XHJcblx0b3V0bGluZTogbm9uZTtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0bWluLXdpZHRoOiA4MHB4O1xyXG59XHJcblxyXG4uaW5saW5lLXByaW9yaXR5LXNlbGVjdDpmb2N1cyB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcclxuXHRib3gtc2hhZG93OiBpbnNldCAwIDAgMCAxcHggdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxufVxyXG5cclxuLyogQWRkIE1ldGFkYXRhIEJ1dHRvbiAtIE1vcmUgc3VidGxlICovXHJcbi5hZGQtbWV0YWRhdGEtY29udGFpbmVyIHtcclxuXHRkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdG1hcmdpbi1sZWZ0OiA0cHg7XHJcbn1cclxuXHJcbi50YXNrLWxpc3QgLnRhc2staXRlbTpub3QoLnRyZWUtdGFzay1pdGVtKTpob3ZlciAuYWRkLW1ldGFkYXRhLWJ0biB7XHJcblx0b3BhY2l0eTogMTtcclxufVxyXG5cclxuLnRyZWUtdGFzay1pdGVtIC50YXNrLWl0ZW0tY29udGFpbmVyOmhvdmVyIC5hZGQtbWV0YWRhdGEtYnRuIHtcclxuXHRvcGFjaXR5OiAxO1xyXG59XHJcblxyXG4uYWRkLW1ldGFkYXRhLWJ0biB7XHJcblx0ZGlzcGxheTogaW5saW5lLWZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHR3aWR0aDogMjJweDtcclxuXHRoZWlnaHQ6IDIycHg7XHJcblx0Ym9yZGVyOiBub25lO1xyXG5cdGJvcmRlci1yYWRpdXM6IDJweDtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHR0cmFuc2l0aW9uOiBhbGwgMC4xNXMgZWFzZTtcclxuXHQtLWljb24tc2l6ZTogMTBweDtcclxuXHRvcGFjaXR5OiAwO1xyXG5cdHBhZGRpbmc6IDA7XHJcblx0bWFyZ2luOiAwO1xyXG59XHJcblxyXG4uYWRkLW1ldGFkYXRhLWJ0bjpob3ZlciB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3Zlcik7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxuXHRvcGFjaXR5OiAxO1xyXG59XHJcblxyXG4uYWRkLW1ldGFkYXRhLWJ0bjphY3RpdmUge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYWN0aXZlKTtcclxuXHR0cmFuc2Zvcm06IHNjYWxlKDAuOTUpO1xyXG59XHJcblxyXG4uYWRkLW1ldGFkYXRhLWJ0biBzdmcge1xyXG5cdHdpZHRoOiAxMHB4O1xyXG5cdGhlaWdodDogMTBweDtcclxufVxyXG5cclxuLyogU21vb3RoIHRyYW5zaXRpb25zIGZvciBiZXR0ZXIgcGVyZm9ybWFuY2UgKi9cclxuLmlubGluZS1lZGl0b3IgKiB7XHJcblx0dHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIDAuMTVzIGVhc2UsIGJhY2tncm91bmQtY29sb3IgMC4xNXMgZWFzZSxcclxuXHRcdGJveC1zaGFkb3cgMC4xNXMgZWFzZTtcclxufVxyXG5cclxuLyogRm9jdXMgc3RhdGVzIGZvciBiZXR0ZXIgYWNjZXNzaWJpbGl0eSAqL1xyXG4uaW5saW5lLWVkaXRvciBpbnB1dDpmb2N1cyxcclxuLmlubGluZS1lZGl0b3IgdGV4dGFyZWE6Zm9jdXMsXHJcbi5pbmxpbmUtZWRpdG9yIHNlbGVjdDpmb2N1cyB7XHJcblx0b3V0bGluZTogbm9uZTtcclxufVxyXG5cclxuLyogRWRpdGFibGUgTWV0YWRhdGEgSXRlbXMgLSBNb3JlIHN1YnRsZSBob3ZlciBlZmZlY3RzICovXHJcbi50YXNrLWl0ZW0tbWV0YWRhdGEgLnRhc2stZGF0ZSxcclxuLnRhc2staXRlbS1tZXRhZGF0YSAudGFzay1wcm9qZWN0LFxyXG4udGFzay1pdGVtLW1ldGFkYXRhIC50YXNrLXRhZyB7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4xNXMgZWFzZSwgdHJhbnNmb3JtIDAuMTVzIGVhc2U7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG59XHJcblxyXG4udGFzay1pdGVtLW1ldGFkYXRhIC50YXNrLWRhdGU6aG92ZXIsXHJcbi50YXNrLWl0ZW0tbWV0YWRhdGEgLnRhc2stcHJvamVjdDpob3ZlcixcclxuLnRhc2staXRlbS1tZXRhZGF0YSAudGFzay10YWc6aG92ZXIge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpO1xyXG5cdHRyYW5zZm9ybTogbm9uZTtcclxufVxyXG5cclxuLyogUmVtb3ZlIHRvb2x0aXAgb24gaG92ZXIgZm9yIGJldHRlciBwZXJmb3JtYW5jZSAqL1xyXG4udGFzay1pdGVtLW1ldGFkYXRhIC50YXNrLWRhdGU6aG92ZXI6OmFmdGVyLFxyXG4udGFzay1pdGVtLW1ldGFkYXRhIC50YXNrLXByb2plY3Q6aG92ZXI6OmFmdGVyLFxyXG4udGFzay1pdGVtLW1ldGFkYXRhIC50YXNrLXRhZzpob3Zlcjo6YWZ0ZXIge1xyXG5cdGRpc3BsYXk6IG5vbmU7XHJcbn1cclxuXHJcbi8qIENvbnRlbnQgRWRpdGFibGUgSG92ZXIgLSBNb3JlIHN1YnRsZSAqL1xyXG4udGFzay1pdGVtLWNvbnRlbnQge1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHR0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMTVzIGVhc2U7XHJcbn1cclxuXHJcbi8qIEFuaW1hdGlvbiBmb3Igc21vb3RoIHRyYW5zaXRpb25zIC0gT3B0aW1pemVkICovXHJcbi5pbmxpbmUtbWV0YWRhdGEtZWRpdG9yIHtcclxuXHRhbmltYXRpb246IGZhZGVJblNjYWxlIDAuMTVzIGVhc2Utb3V0O1xyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIGZhZGVJblNjYWxlIHtcclxuXHRmcm9tIHtcclxuXHRcdG9wYWNpdHk6IDA7XHJcblx0XHR0cmFuc2Zvcm06IHNjYWxlKDAuOTUpO1xyXG5cdH1cclxuXHR0byB7XHJcblx0XHRvcGFjaXR5OiAxO1xyXG5cdFx0dHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuXHR9XHJcbn1cclxuXHJcbi8qIFByZXZlbnQgbGF5b3V0IHNoaWZ0IGR1cmluZyBlZGl0aW5nICovXHJcbi5pbmxpbmUtZWRpdG9yLXBsYWNlaG9sZGVyIHtcclxuXHRtaW4taGVpZ2h0OiAxZW07XHJcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG59XHJcblxyXG4vKiBSZXNwb25zaXZlIGFkanVzdG1lbnRzIC0gU2ltcGxpZmllZCAqL1xyXG5AbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcclxuXHQuaW5saW5lLXByb2plY3QtaW5wdXQsXHJcblx0LmlubGluZS10YWdzLWlucHV0LFxyXG5cdC5pbmxpbmUtY29udGV4dC1pbnB1dCxcclxuXHQuaW5saW5lLXJlY3VycmVuY2UtaW5wdXQge1xyXG5cdFx0bWluLXdpZHRoOiAxMDBweDtcclxuXHRcdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbGVyKTtcclxuXHR9XHJcblxyXG5cdC5pbmxpbmUtbWV0YWRhdGEtZWRpdG9yIHtcclxuXHRcdG1heC13aWR0aDogMjUwcHg7XHJcblx0fVxyXG59XHJcblxyXG4vKiBIaWdoIGNvbnRyYXN0IG1vZGUgc3VwcG9ydCAqL1xyXG5AbWVkaWEgKHByZWZlcnMtY29udHJhc3Q6IGhpZ2gpIHtcclxuXHQuaW5saW5lLWNvbnRlbnQtZWRpdG9yLFxyXG5cdC5pbmxpbmUtZW1iZWRkZWQtZWRpdG9yIC5jbS1lZGl0b3Ige1xyXG5cdFx0Ym9yZGVyLWJvdHRvbS13aWR0aDogMnB4O1xyXG5cdH1cclxuXHJcblx0LmlubGluZS1tZXRhZGF0YS1lZGl0b3Ige1xyXG5cdFx0Ym9yZGVyLXdpZHRoOiAycHg7XHJcblx0fVxyXG59XHJcblxyXG4vKiBSZWR1Y2VkIG1vdGlvbiBzdXBwb3J0ICovXHJcbkBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XHJcblx0LmlubGluZS1lZGl0b3IgKixcclxuXHQudGFzay1pdGVtLW1ldGFkYXRhIC50YXNrLWRhdGUsXHJcblx0LnRhc2staXRlbS1tZXRhZGF0YSAudGFzay1wcm9qZWN0LFxyXG5cdC50YXNrLWl0ZW0tbWV0YWRhdGEgLnRhc2stdGFnLFxyXG5cdC50YXNrLWl0ZW0tY29udGVudCxcclxuXHQuYWRkLW1ldGFkYXRhLWJ0biB7XHJcblx0XHR0cmFuc2l0aW9uOiBub25lO1xyXG5cdH1cclxuXHJcblx0LmlubGluZS1tZXRhZGF0YS1lZGl0b3Ige1xyXG5cdFx0YW5pbWF0aW9uOiBub25lO1xyXG5cdH1cclxufVxyXG5cclxuLyogTmV3IGZpZWxkIGlucHV0IHN0eWxlcyAqL1xyXG4uaW5saW5lLWRlcGVuZHNvbi1pbnB1dCxcclxuLmlubGluZS1pZC1pbnB1dCB7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0bWluLXdpZHRoOiAyMDBweDtcclxuXHRwYWRkaW5nOiA0cHggOHB4O1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRib3JkZXItcmFkaXVzOiA0cHg7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG5cdGZvbnQtZmFtaWx5OiBpbmhlcml0O1xyXG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbCk7XHJcblx0b3V0bGluZTogbm9uZTtcclxuXHR0cmFuc2l0aW9uOiBib3JkZXItY29sb3IgMC4xNXMgZWFzZSwgYm94LXNoYWRvdyAwLjE1cyBlYXNlO1xyXG59XHJcblxyXG4uaW5saW5lLWRlcGVuZHNvbi1pbnB1dDpmb2N1cyxcclxuLmlubGluZS1pZC1pbnB1dDpmb2N1cyB7XHJcblx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdGJveC1zaGFkb3c6IDAgMCAwIDJweCB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQtaG92ZXIpO1xyXG59XHJcblxyXG4uaW5saW5lLWRlcGVuZHNvbi1pbnB1dDo6cGxhY2Vob2xkZXIsXHJcbi5pbmxpbmUtaWQtaW5wdXQ6OnBsYWNlaG9sZGVyIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1mYWludCk7XHJcbn1cclxuIiwgIi50YXNrLXNpZGViYXIuY29sbGFwc2VkIHtcblx0d2lkdGg6IDQ4cHg7XG5cdG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5wYW5lbC10b2dnbGUtYnRuIHtcblx0ZGlzcGxheTogZmxleDtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdGJvcmRlci1yYWRpdXM6IDRweDtcblx0Y3Vyc29yOiBwb2ludGVyO1xuXHRvcGFjaXR5OiAwLjY7XG5cblx0dHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzIGVhc2U7XG59XG5cbi5wYW5lbC10b2dnbGUtYnRuOmhvdmVyIHtcblx0b3BhY2l0eTogMTtcbn1cblxuLnRhc2stc2lkZWJhci5jb2xsYXBzZWQgLnNpZGViYXItbmF2IHtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cblxuLyogU2lkZWJhciBOYXZpZ2F0aW9uICovXG4uc2lkZWJhci1uYXYge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRwYWRkaW5nOiAyMHB4IDAgMTBweCAwO1xuXHRnYXA6IDVweDtcbn1cblxuLnNpZGViYXItbmF2LXNwYWNlciB7XG5cdGhlaWdodDogMXB4O1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XG5cdG1hcmdpbjogOHB4IDE1cHg7XG5cdG9wYWNpdHk6IDAuNztcblx0bWFyZ2luLXRvcDogYXV0bztcbn1cblxuLnNpZGViYXItbmF2LWl0ZW0ge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRwYWRkaW5nOiA4cHggMTVweDtcblx0Y3Vyc29yOiBwb2ludGVyO1xuXHRib3JkZXItcmFkaXVzOiA0cHg7XG5cdG1hcmdpbjogMCA1cHg7XG5cdHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4ycyBlYXNlO1xufVxuXG4uc2lkZWJhci1uYXYtaXRlbTpob3ZlciB7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYWN0aXZlKTtcbn1cblxuLnNpZGViYXItbmF2LWl0ZW0uaXMtYWN0aXZlIHtcblx0Zm9udC13ZWlnaHQ6IDYwMDtcblx0LS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xuXHQtLWljb24tY29sb3I6IHZhcigtLXRleHQtb24tYWNjZW50KTtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcblx0Y29sb3I6IHZhcigtLXRleHQtb24tYWNjZW50KTtcbn1cblxuLm5hdi1pdGVtLWljb24ge1xuXHQtLWljb24tc2l6ZTogdmFyKC0tc2l6ZS00LTQpO1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0bWFyZ2luLXJpZ2h0OiB2YXIoLS1zaXplLTQtMik7XG59XG5cbi5uYXYtaXRlbS1sYWJlbCB7XG5cdGZsZXg6IDE7XG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1tZWRpdW0pO1xuXHR3aGl0ZS1zcGFjZTogbm93cmFwO1xuXHRvdmVyZmxvdzogaGlkZGVuO1xuXHR0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbn1cblxuLm5hdi1pdGVtLWxhYmVsLmhpZGRlbiB7XG5cdG9wYWNpdHk6IDA7XG5cdHdpZHRoOiAwO1xuXHRvdmVyZmxvdzogaGlkZGVuO1xuXHRtYXJnaW46IDA7XG59XG5cbi50YXNrLXNpZGViYXIuY29sbGFwc2VkIC5zaWRlYmFyLW5hdi1pdGVtIHtcblx0cGFkZGluZzogOHB4IDEwcHg7XG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXHR3aWR0aDogdmFyKC0tc2l6ZS00LTkpO1xuXHRmbGV4LXNocmluazogMDtcblxuXHR0cmFuc2l0aW9uOlxuXHRcdHdpZHRoIDAuM3MgZWFzZS1pbi1vdXQsXG5cdFx0ZmxleC1zaHJpbmsgMC4zcyBlYXNlLWluLW91dDtcbn1cblxuLnRhc2stc2lkZWJhci5jb2xsYXBzZWQgLm5hdi1pdGVtLWljb24ge1xuXHRtYXJnaW4tcmlnaHQ6IDA7XG59XG5cbi8qIENvbnRlbnQgU3R5bGVzICovXG4udGFzay1jb250ZW50IHtcblx0ZmxleDogMTtcblx0ZGlzcGxheTogZmxleDtcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0bWluLXdpZHRoOiAwO1xuXHR0cmFuc2l0aW9uOiBtYXJnaW4gMC4zcyBlYXNlO1xufVxuXG4udGFzay1zaWRlYmFyLmNvbGxhcHNlZCAudGFzay1jb250ZW50IHtcblx0bWFyZ2luLWxlZnQ6IC0yMDBweDtcblxuXHR0cmFuc2l0aW9uOiBtYXJnaW4gMC4zcyBlYXNlO1xufVxuXG4vKiBQcm9qZWN0IFRyZWUgKi9cbi50YXNrLWdlbml1cy12aWV3IC5wcm9qZWN0LXRyZWUge1xuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTItMikgMDtcblx0dHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzIGVhc2U7XG59XG5cbi50YXNrLWdlbml1cy12aWV3IC50cmVlLXJvb3Qge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xufVxuXG4udGFzay1nZW5pdXMtdmlldyAudGFzay1nZW5pdXMtdmlldyAudHJlZS1pdGVtIHtcblx0ZGlzcGxheTogZmxleDtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0cGFkZGluZzogNnB4IDhweDtcblx0Y3Vyc29yOiBwb2ludGVyO1xuXHR0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMnMgZWFzZTtcblx0Ym9yZGVyLXJhZGl1czogNHB4O1xuXHRtYXJnaW46IDAgNXB4O1xufVxuXG4udGFzay1nZW5pdXMtdmlldyAudHJlZS1pdGVtOmhvdmVyIHtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXItaG92ZXIpO1xufVxuXG4udGFzay1nZW5pdXMtdmlldyAudHJlZS1pdGVtLnNlbGVjdGVkIHtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXItaG92ZXIpO1xufVxuXG4udGFzay1nZW5pdXMtdmlldyAudHJlZS1pdGVtLWljb24ge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0d2lkdGg6IDIwcHg7XG5cdGhlaWdodDogMjBweDtcblx0bWFyZ2luLXJpZ2h0OiA4cHg7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcbn1cblxuLnRhc2stZ2VuaXVzLXZpZXcgLnRyZWUtaXRlbS1uYW1lIHtcblx0ZmxleDogMTtcblx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0dGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG5cdHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cbi50YXNrLWdlbml1cy12aWV3IC50cmVlLWl0ZW0tY291bnQge1xuXHRmb250LXNpemU6IDAuOGVtO1xuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XG5cdG1hcmdpbi1sZWZ0OiA1cHg7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpO1xuXHRwYWRkaW5nOiAxcHggNnB4O1xuXHRib3JkZXItcmFkaXVzOiAxMHB4O1xufVxuXG4udGFzay1nZW5pdXMtdmlldyAudHJlZS1pdGVtLXRvZ2dsZSxcbi50YXNrLWdlbml1cy12aWV3IC50cmVlLWl0ZW0taW5kZW50IHtcblx0d2lkdGg6IDIwcHg7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXHRtYXJnaW4tcmlnaHQ6IDVweDtcbn1cblxuLnRhc2stZ2VuaXVzLXZpZXcgLnRyZWUtaXRlbS10b2dnbGUge1xuXHRjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi8qIENvbnRlbnQgSGVhZGVyICovXG4uY29udGVudC1oZWFkZXIge1xuXHRwYWRkaW5nOiAxNXB4O1xuXHRib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRmbGV4LXNocmluazogMDtcbn1cblxuLnRhc2stY291bnQge1xuXHRmb250LXNpemU6IDAuOGVtO1xuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XG5cdG1hcmdpbi1yaWdodDogMTBweDtcbn1cblxuLmZvY3VzLWZpbHRlciB7XG5cdG1hcmdpbi1sZWZ0OiAxMHB4O1xufVxuXG4vKiBUYXNrVmlldyAtIE9tbmlGb2N1cyBTdHlsZSAqL1xuXG4ud29ya3NwYWNlLWxlYWYtY29udGVudCAudGFzay1nZW5pdXMtdmlldyB7XG5cdHBhZGRpbmc6IDA7XG59XG5cbi5iYXNlcy12aWV3IC50YXNrLWdlbml1cy12aWV3IHtcblx0aGVpZ2h0OiAxMDAlO1xufVxuXG4vKiBNYWluIGNvbnRhaW5lciBsYXlvdXQgKi9cbi50YXNrLWdlbml1cy1jb250YWluZXIge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRmbGV4LWRpcmVjdGlvbjogcm93O1xuXHRoZWlnaHQ6IDEwMCU7XG5cdHdpZHRoOiAxMDAlO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xuXHRib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xuXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0b3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLyogTGVmdCBzaWRlYmFyICovXG4udGFzay1zaWRlYmFyIHtcblx0ZGlzcGxheTogZmxleDtcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0Ym9yZGVyLXJpZ2h0OiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XG5cdG92ZXJmbG93LXk6IGF1dG87XG5cblx0d2lkdGg6IDI0MHB4O1xuXHR0cmFuc2l0aW9uOiB3aWR0aCAwLjNzIGVhc2UtaW4tb3V0O1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi8qIE1haW4gY29udGVudCBhcmVhICovXG4udGFzay1jb250ZW50IHtcblx0ZGlzcGxheTogZmxleDtcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0ZmxleDogMTtcblx0bWluLXdpZHRoOiAzMDBweDtcblx0aGVpZ2h0OiAxMDAlO1xuXHRvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4vKiBOYXZpZ2F0aW9uIHNpZGViYXIgKi9cbi50YXNrLXNpZGViYXIgLnNpZGViYXItbmF2IHtcblx0ZGlzcGxheTogZmxleDtcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0cGFkZGluZzogOHB4IDA7XG5cdGhlaWdodDogMTAwJTtcbn1cblxuLyogUHJvamVjdCB0cmVlICovXG4ucHJvamVjdC10cmVlIHtcblx0ZGlzcGxheTogZmxleDtcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0cGFkZGluZzogOHB4IDA7XG5cdG92ZXJmbG93LXk6IGF1dG87XG59XG5cbi50cmVlLXJvb3Qge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xufVxuXG4udGFzay1nZW5pdXMtdmlldyAudHJlZS1pdGVtIHtcblx0ZGlzcGxheTogZmxleDtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0cGFkZGluZzogNHB4IDEycHg7XG5cdGN1cnNvcjogcG9pbnRlcjtcblx0Ym9yZGVyLXJhZGl1czogNHB4O1xuXHRtYXJnaW46IDJweCA4cHg7XG59XG5cbi50YXNrLWdlbml1cy12aWV3IC50cmVlLWl0ZW06aG92ZXIge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlci1ob3Zlcik7XG59XG5cbi50YXNrLWdlbml1cy12aWV3IC50cmVlLWl0ZW0uc2VsZWN0ZWQge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlci1ob3Zlcik7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LWFjY2VudCk7XG59XG5cbi50YXNrLWdlbml1cy12aWV3IC50cmVlLWl0ZW0tdG9nZ2xlIHtcblx0d2lkdGg6IDE2cHg7XG5cdGhlaWdodDogMTZweDtcblx0ZGlzcGxheTogZmxleDtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdG1hcmdpbi1yaWdodDogNHB4O1xufVxuXG4udGFzay1nZW5pdXMtdmlldyAudHJlZS1pdGVtLWluZGVudCB7XG5cdHdpZHRoOiAxNnB4O1xuXHRoZWlnaHQ6IDE2cHg7XG5cdG1hcmdpbi1yaWdodDogNHB4O1xufVxuXG4udGFzay1nZW5pdXMtdmlldyAudHJlZS1pdGVtLWljb24ge1xuXHRtYXJnaW4tcmlnaHQ6IDhweDtcblx0d2lkdGg6IDE2cHg7XG5cdGhlaWdodDogMTZweDtcblx0ZGlzcGxheTogZmxleDtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcbn1cblxuLnRhc2stZ2VuaXVzLXZpZXcgLnRyZWUtaXRlbS1uYW1lIHtcblx0ZmxleDogMTtcblx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcblx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0dGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG59XG5cbi50YXNrLWdlbml1cy12aWV3IC50cmVlLWl0ZW0tY291bnQge1xuXHRmb250LXNpemU6IDAuOGVtO1xuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpO1xuXHRib3JkZXItcmFkaXVzOiAxMHB4O1xuXHRwYWRkaW5nOiAycHggNnB4O1xuXHRtaW4td2lkdGg6IDE2cHg7XG5cdHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLnRhc2stZ2VuaXVzLXZpZXcgLnRyZWUtaXRlbS5leHBhbmRlZCA+IC50cmVlLWl0ZW0tY2hpbGRyZW4ge1xuXHRkaXNwbGF5OiBmbGV4O1xufVxuXG4udGFzay1nZW5pdXMtdmlldyAudHJlZS1pdGVtLWNoaWxkcmVuIHtcblx0ZGlzcGxheTogbm9uZTtcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0bWFyZ2luLWxlZnQ6IDE2cHg7XG5cdHdpZHRoOiAxMDAlO1xufVxuXG4vKiBDb250ZW50IGhlYWRlciAqL1xuLnRhc2stZ2VuaXVzLXZpZXcgLmNvbnRlbnQtaGVhZGVyIHtcblx0ZGlzcGxheTogZmxleDtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0cGFkZGluZzogMTBweCAxNnB4O1xuXHRib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xuXHRtaW4taGVpZ2h0OiA1MHB4O1xufVxuXG4udGFzay1nZW5pdXMtdmlldyAuY29udGVudC10aXRsZSB7XG5cdGZvbnQtc2l6ZTogMS4yZW07XG5cdGZvbnQtd2VpZ2h0OiA2MDA7XG5cdG1hcmdpbi1yaWdodDogMTJweDtcblx0ZmxleDogMTtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcblx0LnRhc2stZ2VuaXVzLXZpZXcgLmNvbnRlbnQtdGl0bGUge1xuXHRcdGRpc3BsYXk6IG5vbmU7XG5cdH1cblxuXHQudGFzay1nZW5pdXMtdmlldyAudGFzay1jb3VudCB7XG5cdFx0ZmxleDogMTtcblx0fVxuXG5cdC50YXNrLWdlbml1cy12aWV3IC5mb2N1cy1maWx0ZXIge1xuXHRcdGZsZXg6IDE7XG5cdH1cbn1cblxuLnRhc2stZ2VuaXVzLXZpZXcgLmNvbnRlbnQtZmlsdGVyIHtcblx0ZGlzcGxheTogZmxleDtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0bWFyZ2luLXJpZ2h0OiAxMnB4O1xufVxuXG4udGFzay1nZW5pdXMtdmlldyAuZmlsdGVyLWlucHV0IHtcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xuXHRib3JkZXItcmFkaXVzOiA0cHg7XG5cdHBhZGRpbmc6IDRweCA4cHg7XG5cdHdpZHRoOiAyMDBweDtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcbn1cblxuLnRhc2stZ2VuaXVzLXZpZXcgLmZvY3VzLWJ1dHRvbiB7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWludGVyYWN0aXZlLW5vcm1hbCk7XG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcblx0Ym9yZGVyLXJhZGl1czogNHB4O1xuXHRwYWRkaW5nOiA0cHggMTBweDtcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcblx0Y3Vyc29yOiBwb2ludGVyO1xufVxuXG4udGFzay1nZW5pdXMtdmlldyAuZm9jdXMtYnV0dG9uOmhvdmVyIHtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtaG92ZXIpO1xufVxuXG4udGFzay1nZW5pdXMtdmlldyAuZm9jdXMtYnV0dG9uLmZvY3VzZWQge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xuXHRjb2xvcjogdmFyKC0tdGV4dC1vbi1hY2NlbnQpO1xufVxuXG4ubW9kLXJvb3QgLnRhc2stZ2VuaXVzLWFjdGlvbi1idG4ge1xuXHQtLWljb24tc2l6ZTogMTZweDtcbn1cblxuLm1vZC1sZWZ0LXNwbGl0IC50YXNrLWdlbml1cy1hY3Rpb24tYnRuIHtcblx0ZGlzcGxheTogbm9uZTtcbn1cblxuLm1vZC1sZWZ0LXNwbGl0XG5cdC53b3Jrc3BhY2UtdGFiLWhlYWRlci1zdGF0dXMtY29udGFpbmVyOmhhcygudGFzay1nZW5pdXMtYWN0aW9uLWJ0bikge1xuXHRkaXNwbGF5OiBub25lO1xufVxuXG4ubW9kLXJpZ2h0LXNwbGl0XG5cdC53b3Jrc3BhY2UtdGFiLWhlYWRlci1zdGF0dXMtY29udGFpbmVyOmhhcygudGFzay1nZW5pdXMtYWN0aW9uLWJ0bikge1xuXHRkaXNwbGF5OiBub25lO1xufVxuXG4udGFzay1nZW5pdXMtdmlldyAudGFzay1lbXB0eS1zdGF0ZSxcbi50YXNrLWdlbml1cy1mbHVlbnQtdmlldyAudGFzay1lbXB0eS1zdGF0ZSB7XG5cdHdpZHRoOiAxMDAlO1xuXHRoZWlnaHQ6IDEwMCU7XG5cdGZsZXg6IDE7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuXG4udGctZmx1ZW50LWVycm9yLXN0YXRlIHtcblx0ZGlzcGxheTogZmxleDtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdHdpZHRoOiAxMDAlO1xuXHRoZWlnaHQ6IDEwMCU7XG5cdC0taWNvbi1zaXplOiB2YXIoLS1zaXplLTQtMTIpO1xuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktbGFyZ2UpO1xuXHRnYXA6IHZhcigtLXNpemUtMi0yKTtcbn1cblxuLm1vZC1yb290IC50YXNrLWdlbml1cy10YWItaGVhZGVyIHtcblx0Y29udGFpbmVyLXR5cGU6IGlubGluZS1zaXplICFpbXBvcnRhbnQ7XG59XG5cbkBjb250YWluZXIgKG1heC13aWR0aDogMTIwcHgpIHtcblx0Lm1vZC1yb290IC50YXNrLWdlbml1cy1hY3Rpb24tYnRuIHtcblx0XHRkaXNwbGF5OiBub25lO1xuXHR9XG59XG5cbi50YXNrLXNpZGViYXIuY29sbGFwc2VkIC5zaWRlYmFyLW5hdiB7XG5cdG1heC13aWR0aDogNDVweDtcbn1cblxuLyogV29ya2Zsb3cgUXVpY2sgTW9kYWwgU3R5bGVzICovXG4ucXVpY2std29ya2Zsb3ctbW9kYWwge1xuXHRtYXgtd2lkdGg6IDYwMHB4O1xuXHRtaW4taGVpZ2h0OiA0MDBweDtcbn1cblxuLndvcmtmbG93LXRlbXBsYXRlLXNlY3Rpb24ge1xuXHRtYXJnaW4tYm90dG9tOiAyMHB4O1xuXHRwYWRkaW5nOiAxNXB4O1xuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XG5cdGJvcmRlci1yYWRpdXM6IDhweDtcbn1cblxuLnRlbXBsYXRlLWRlc2NyaXB0aW9uIHtcblx0bWFyZ2luLXRvcDogMTBweDtcbn1cblxuLnRlbXBsYXRlLWRlc2MtdGV4dCB7XG5cdGZvbnQtc3R5bGU6IGl0YWxpYztcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xuXHRtYXJnaW46IDA7XG59XG5cbi53b3JrZmxvdy1mb3JtLXNlY3Rpb24ge1xuXHRtYXJnaW4tYm90dG9tOiAyMHB4O1xufVxuXG4ud29ya2Zsb3ctc3RhZ2VzLXByZXZpZXcge1xuXHRtYXJnaW4tdG9wOiAxNXB4O1xufVxuXG4uc3RhZ2VzLXByZXZpZXctbGlzdCB7XG5cdG1hcmdpbi10b3A6IDEwcHg7XG59XG5cbi5zdGFnZS1wcmV2aWV3LWl0ZW0ge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG5cdHBhZGRpbmc6IDhweCAxMnB4O1xuXHRtYXJnaW46IDRweCAwO1xuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XG5cdGJvcmRlci1yYWRpdXM6IDZweDtcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xufVxuXG4uc3RhZ2UtaW5mbyB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdGdhcDogOHB4O1xufVxuXG4uc3RhZ2UtbmFtZSB7XG5cdGZvbnQtd2VpZ2h0OiA1MDA7XG59XG5cbi5zdGFnZS10eXBlIHtcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xuXHRmb250LXNpemU6IDAuOWVtO1xufVxuXG4uc3RhZ2UtYWN0aW9ucyB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGdhcDogNHB4O1xufVxuXG4ubm8tc3RhZ2VzLW1lc3NhZ2Uge1xuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcblx0Zm9udC1zdHlsZTogaXRhbGljO1xuXHRwYWRkaW5nOiAyMHB4O1xuXHRib3JkZXI6IDJweCBkYXNoZWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xuXHRib3JkZXItcmFkaXVzOiA4cHg7XG5cdG1hcmdpbi10b3A6IDEwcHg7XG59XG5cbi53b3JrZmxvdy1tb2RhbC1idXR0b25zIHtcblx0ZGlzcGxheTogZmxleDtcblx0anVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcblx0Z2FwOiAxMHB4O1xuXHRtYXJnaW4tdG9wOiAyMHB4O1xuXHRwYWRkaW5nLXRvcDogMTVweDtcblx0Ym9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcbn1cblxuLyogV29ya2Zsb3cgUHJvZ3Jlc3MgSW5kaWNhdG9yIFN0eWxlcyAqL1xuLndvcmtmbG93LXByb2dyZXNzLWluZGljYXRvciB7XG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xuXHRib3JkZXItcmFkaXVzOiA4cHg7XG5cdHBhZGRpbmc6IDE1cHg7XG5cdG1hcmdpbjogMTBweCAwO1xufVxuXG4ud29ya2Zsb3ctcHJvZ3Jlc3MtaGVhZGVyIHtcblx0ZGlzcGxheTogZmxleDtcblx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRtYXJnaW4tYm90dG9tOiAxNXB4O1xufVxuXG4ud29ya2Zsb3ctbmFtZSB7XG5cdGZvbnQtd2VpZ2h0OiA2MDA7XG5cdGZvbnQtc2l6ZTogMS4xZW07XG59XG5cbi53b3JrZmxvdy1wcm9ncmVzcy10ZXh0IHtcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xuXHRmb250LXNpemU6IDAuOWVtO1xufVxuXG4ud29ya2Zsb3ctcHJvZ3Jlc3MtYmFyLWNvbnRhaW5lciB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdGdhcDogMTBweDtcblx0bWFyZ2luLWJvdHRvbTogMTVweDtcbn1cblxuLndvcmtmbG93LXByb2dyZXNzLWJhciB7XG5cdGZsZXg6IDE7XG5cdGhlaWdodDogOHB4O1xuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XG5cdGJvcmRlci1yYWRpdXM6IDRweDtcblx0b3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLndvcmtmbG93LXByb2dyZXNzLWZpbGwge1xuXHRoZWlnaHQ6IDEwMCU7XG5cdGJhY2tncm91bmQ6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XG5cdHRyYW5zaXRpb246IHdpZHRoIDAuM3MgZWFzZTtcbn1cblxuLndvcmtmbG93LXByb2dyZXNzLXBlcmNlbnRhZ2Uge1xuXHRmb250LXNpemU6IDAuOWVtO1xuXHRmb250LXdlaWdodDogNTAwO1xuXHRtaW4td2lkdGg6IDM1cHg7XG5cdHRleHQtYWxpZ246IHJpZ2h0O1xufVxuXG4ud29ya2Zsb3ctc3RhZ2UtbGlzdCB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdGdhcDogOHB4O1xufVxuXG4ud29ya2Zsb3ctc3RhZ2UtaXRlbSB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuXHRnYXA6IDEycHg7XG5cdHBhZGRpbmc6IDEwcHg7XG5cdGJvcmRlci1yYWRpdXM6IDZweDtcblx0dHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjJzIGVhc2U7XG59XG5cbi53b3JrZmxvdy1zdGFnZS1pdGVtLmNvbXBsZXRlZCB7XG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItc3VjY2Vzcyk7XG59XG5cbi53b3JrZmxvdy1zdGFnZS1pdGVtLmN1cnJlbnQge1xuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWFjY2VudCk7XG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XG59XG5cbi53b3JrZmxvdy1zdGFnZS1pdGVtLnBlbmRpbmcge1xuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xuXHRvcGFjaXR5OiAwLjc7XG59XG5cbi53b3JrZmxvdy1zdGFnZS1pY29uIHtcblx0d2lkdGg6IDIwcHg7XG5cdGhlaWdodDogMjBweDtcblx0ZGlzcGxheTogZmxleDtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdG1hcmdpbi10b3A6IDJweDtcbn1cblxuLndvcmtmbG93LXN0YWdlLWljb24uY29tcGxldGVkLWljb24ge1xuXHRjb2xvcjogdmFyKC0tdGV4dC1zdWNjZXNzKTtcbn1cblxuLndvcmtmbG93LXN0YWdlLWljb24uY3VycmVudC1pY29uIHtcblx0Y29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XG59XG5cbi53b3JrZmxvdy1zdGFnZS1pY29uLnBlbmRpbmctaWNvbiB7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcbn1cblxuLndvcmtmbG93LXN0YWdlLWNvbnRlbnQge1xuXHRmbGV4OiAxO1xufVxuXG4ud29ya2Zsb3ctc3RhZ2UtbmFtZSB7XG5cdGZvbnQtd2VpZ2h0OiA1MDA7XG5cdG1hcmdpbi1ib3R0b206IDJweDtcbn1cblxuLndvcmtmbG93LXN0YWdlLXR5cGUge1xuXHRmb250LXNpemU6IDAuOGVtO1xuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XG59XG5cbi53b3JrZmxvdy1zdGFnZS1udW1iZXIge1xuXHR3aWR0aDogMjRweDtcblx0aGVpZ2h0OiAyNHB4O1xuXHRib3JkZXItcmFkaXVzOiA1MCU7XG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcblx0ZGlzcGxheTogZmxleDtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdGZvbnQtc2l6ZTogMC44ZW07XG5cdGZvbnQtd2VpZ2h0OiA2MDA7XG5cdG1hcmdpbi10b3A6IDJweDtcbn1cblxuLndvcmtmbG93LXN0YWdlLWl0ZW0uY29tcGxldGVkIC53b3JrZmxvdy1zdGFnZS1udW1iZXIge1xuXHRiYWNrZ3JvdW5kOiB2YXIoLS10ZXh0LXN1Y2Nlc3MpO1xuXHRjb2xvcjogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcbn1cblxuLndvcmtmbG93LXN0YWdlLWl0ZW0uY3VycmVudCAud29ya2Zsb3ctc3RhZ2UtbnVtYmVyIHtcblx0YmFja2dyb3VuZDogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcblx0Y29sb3I6IHZhcigtLXRleHQtb24tYWNjZW50KTtcbn1cblxuLndvcmtmbG93LXN1YnN0YWdlLWNvbnRhaW5lciB7XG5cdG1hcmdpbi10b3A6IDhweDtcblx0cGFkZGluZy1sZWZ0OiAxNnB4O1xuXHRib3JkZXItbGVmdDogMnB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcbn1cblxuLndvcmtmbG93LXN1YnN0YWdlLWl0ZW0ge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRnYXA6IDhweDtcblx0cGFkZGluZzogNHB4IDA7XG59XG5cbi53b3JrZmxvdy1zdWJzdGFnZS1pY29uIHtcblx0d2lkdGg6IDEycHg7XG5cdGhlaWdodDogMTJweDtcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xufVxuXG4ud29ya2Zsb3ctc3Vic3RhZ2UtbmFtZSB7XG5cdGZvbnQtc2l6ZTogMC45ZW07XG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcbn1cbiIsICIvKiB0YXNrLXByb3BlcnR5IFZpZXcgU3R5bGVzICovXHJcbi50YXNrLXByb3BlcnR5LWNvbnRhaW5lciB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdGhlaWdodDogMTAwJTtcclxuXHR3aWR0aDogMTAwJTtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG59XHJcblxyXG4udGFzay1wcm9wZXJ0eS1jb250ZW50IHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiByb3c7XHJcblx0ZmxleDogMTtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG59XHJcblxyXG4udGFzay1wcm9wZXJ0eS1sZWZ0LWNvbHVtbiB7XHJcblx0d2lkdGg6IG1heCgxMjBweCwgMzAlKTtcclxuXHRtaW4td2lkdGg6IG1pbigxMjBweCwgMzAlKTtcclxuXHRtYXgtd2lkdGg6IDMwMHB4O1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRib3JkZXItcmlnaHQ6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0b3ZlcmZsb3c6IGhpZGRlbjtcclxufVxyXG5cclxuLmlzLXBob25lIC50YXNrLXByb3BlcnR5LWxlZnQtY29sdW1uIHtcclxuXHRtYXgtd2lkdGg6IDEwMCU7XHJcbn1cclxuXHJcbi50YXNrLXByb3BlcnR5LXJpZ2h0LWNvbHVtbiB7XHJcblx0ZmxleDogMTtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0b3ZlcmZsb3c6IGhpZGRlbjtcclxufVxyXG5cclxuLnRhc2stcHJvcGVydHktc2lkZWJhci1oZWFkZXIge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTIpIHZhcigtLXNpemUtNC00KTtcclxuXHRib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGhlaWdodDogdmFyKC0tc2l6ZS00LTEwKTtcclxufVxyXG5cclxuLnRhc2stcHJvcGVydHktc2lkZWJhci10aXRsZSB7XHJcblx0Zm9udC13ZWlnaHQ6IDYwMDtcclxuXHRmb250LXNpemU6IDE0cHg7XHJcbn1cclxuXHJcbi5tdWx0aS1zZWxlY3QtbW9kZSAudGFzay1wcm9wZXJ0eS1tdWx0aS1zZWxlY3QtYnRuIHtcclxuXHRjb2xvcjogdmFyKC0tY29sb3ItYWNjZW50KTtcclxufVxyXG5cclxuLnRhc2stcHJvcGVydHktbXVsdGktc2VsZWN0LWJ0biB7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG59XHJcblxyXG4udGFzay1wcm9wZXJ0eS1tdWx0aS1zZWxlY3QtYnRuOmhvdmVyIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG59XHJcblxyXG4udGFzay1wcm9wZXJ0eS1zaWRlYmFyLWxpc3Qge1xyXG5cdGZsZXg6IDE7XHJcblx0b3ZlcmZsb3cteTogYXV0bztcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtMik7XHJcbn1cclxuXHJcbi50YXNrLXByb3BlcnR5LWxpc3QtaXRlbSB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdHBhZGRpbmc6IDRweCAxMnB4O1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XHJcbn1cclxuXHJcbi50YXNrLXByb3BlcnR5LWxpc3QtaXRlbTpob3ZlciB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3Zlcik7XHJcbn1cclxuXHJcbi50YXNrLXByb3BlcnR5LWxpc3QtaXRlbS5zZWxlY3RlZCB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1hY3RpdmUpO1xyXG59XHJcblxyXG4udGFzay1wcm9wZXJ0eS1pY29uIHtcclxuXHRtYXJnaW4tcmlnaHQ6IDhweDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblxyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxufVxyXG5cclxuLnRhc2stcHJvcGVydHktbmFtZSB7XHJcblx0ZmxleDogMTtcclxuXHR3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcblx0dGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XHJcbn1cclxuXHJcbi50YXNrLXByb3BlcnR5LWNvdW50IHtcclxuXHRtYXJnaW4tbGVmdDogOHB4O1xyXG5cdGZvbnQtc2l6ZTogMC44ZW07XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRib3JkZXItcmFkaXVzOiAxMHB4O1xyXG5cdHBhZGRpbmc6IDFweCA2cHg7XHJcbn1cclxuXHJcbi50YXNrLXByb3BlcnR5LXRhc2staGVhZGVyIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtNC0yKSB2YXIoLS1zaXplLTQtNCk7XHJcblx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRoZWlnaHQ6IHZhcigtLXNpemUtNC0xMCk7XHJcbn1cclxuXHJcbi50YXNrLXByb3BlcnR5LXRhc2stdGl0bGUge1xyXG5cdGZvbnQtd2VpZ2h0OiA2MDA7XHJcblx0Zm9udC1zaXplOiAxNnB4O1xyXG59XHJcblxyXG4udGFzay1wcm9wZXJ0eS10YXNrLWNvdW50IHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcbn1cclxuXHJcbi50YXNrLXByb3BlcnR5LXRhc2stbGlzdCB7XHJcblx0ZmxleDogMTtcclxuXHRvdmVyZmxvdy15OiBhdXRvO1xyXG59XHJcblxyXG4udGFzay1wcm9wZXJ0eS1lbXB0eS1zdGF0ZSB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdGhlaWdodDogMTAwJTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0Zm9udC1zdHlsZTogaXRhbGljO1xyXG5cdHBhZGRpbmc6IDE2cHg7XHJcbn1cclxuXHJcbi8qIHRhc2stcHJvcGVydHkgVmlldyAtIE1vYmlsZSAqL1xyXG4uaXMtcGhvbmUgLnRhc2stcHJvcGVydHktbGVmdC1jb2x1bW4ge1xyXG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRsZWZ0OiAwO1xyXG5cdHRvcDogMDtcclxuXHRoZWlnaHQ6IDEwMCU7XHJcblx0ei1pbmRleDogMTA7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSk7XHJcblx0dHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuM3MgZWFzZS1pbi1vdXQ7XHJcblx0Ym9yZGVyLXJpZ2h0OiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG59XHJcblxyXG4uaXMtcGhvbmUgLnRhc2stcHJvcGVydHktbGVmdC1jb2x1bW4uaXMtdmlzaWJsZSB7XHJcblx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xyXG59XHJcblxyXG4uaXMtcGhvbmUgLnRhc2stcHJvcGVydHktc2lkZWJhci10b2dnbGUge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHRtYXJnaW4tcmlnaHQ6IDhweDtcclxufVxyXG5cclxuLmlzLXBob25lIC50YXNrLXByb3BlcnR5LXNpZGViYXItY2xvc2Uge1xyXG5cdC0taWNvbi1zaXplOiB2YXIoLS1zaXplLTQtNCk7XHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdHRvcDogdmFyKC0tc2l6ZS00LTIpO1xyXG5cdHJpZ2h0OiAxMHB4O1xyXG5cdHotaW5kZXg6IDE1O1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxufVxyXG5cclxuLyogQWRkIG92ZXJsYXkgd2hlbiBsZWZ0IGNvbHVtbiBpcyB2aXNpYmxlIG9uIG1vYmlsZSAqL1xyXG4uaXMtcGhvbmVcclxuXHQudGFzay1wcm9wZXJ0eS1jb250YWluZXI6aGFzKFxyXG5cdFx0LnRhc2stcHJvcGVydHktbGVmdC1jb2x1bW4uaXMtdmlzaWJsZVxyXG5cdCk6OmJlZm9yZSB7XHJcblx0Y29udGVudDogXCJcIjtcclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0dG9wOiAwO1xyXG5cdGxlZnQ6IDA7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0aGVpZ2h0OiAxMDAlO1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItY292ZXIpO1xyXG5cdG9wYWNpdHk6IDAuNTtcclxuXHR6LWluZGV4OiA1O1xyXG5cdHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcyBlYXNlLWluLW91dDtcclxufVxyXG5cclxuLyogQWRkIHBvc2l0aW9uIHJlbGF0aXZlIHRvIGNvbnRhaW5lciBmb3IgYWJzb2x1dGUgcG9zaXRpb25pbmcgY29udGV4dCAqL1xyXG4uaXMtcGhvbmUgLnRhc2stcHJvcGVydHktY29udGFpbmVyIHtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0b3ZlcmZsb3c6IGhpZGRlbjtcclxufVxyXG5cclxuLmlzLXBob25lIC50YXNrLXByb3BlcnR5LXNpZGViYXItaGVhZGVyOmhhcygudGFzay1wcm9wZXJ0eS1zaWRlYmFyLWNsb3NlKSB7XHJcblx0cGFkZGluZy1yaWdodDogdmFyKC0tc2l6ZS00LTEyKTtcclxufVxyXG4iLCAiLyogRm9yZWNhc3QgQ29tcG9uZW50IFN0eWxlcyAqL1xuLmZvcmVjYXN0LWNvbnRhaW5lciB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdGhlaWdodDogMTAwJTtcblx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0ZmxleDogMTtcbn1cblxuLmZvcmVjYXN0LWhlYWRlciB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0cGFkZGluZzogMTVweDtcblx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcbn1cblxuLmZvcmVjYXN0LXRpdGxlLWNvbnRhaW5lciB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG59XG5cbi5mb3JlY2FzdC10aXRsZSB7XG5cdGZvbnQtd2VpZ2h0OiA2MDA7XG5cdGZvbnQtc2l6ZTogMS4yZW07XG59XG5cbi5mb3JlY2FzdC1jb3VudCB7XG5cdGZvbnQtc2l6ZTogMC44ZW07XG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcblx0bWFyZ2luLXRvcDogNHB4O1xufVxuXG4uZm9yZWNhc3QtYWN0aW9ucyB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGdhcDogdmFyKC0tc2l6ZS00LTIpO1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cblxuLmZvcmVjYXN0LXNldHRpbmdzIHtcblx0Y3Vyc29yOiBwb2ludGVyO1xuXHRvcGFjaXR5OiAwLjc7XG5cdHRyYW5zaXRpb246IG9wYWNpdHkgMC4ycyBlYXNlO1xuXG5cdGRpc3BsYXk6IGZsZXg7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuXG4uZm9yZWNhc3Qtc2V0dGluZ3M6aG92ZXIge1xuXHRvcGFjaXR5OiAxO1xufVxuXG4uZm9yZWNhc3QtZm9jdXMtYmFyIHtcblx0ZGlzcGxheTogZmxleDtcblx0cGFkZGluZzogMTBweCAxNXB4O1xuXHRib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xuXHRnYXA6IDEwcHg7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5cbi5mb2N1cy1pbnB1dCB7XG5cdGZsZXg6IDE7XG5cdHBhZGRpbmc6IDZweCAxMnB4O1xuXHRib3JkZXItcmFkaXVzOiA0cHg7XG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XG59XG5cbi51bmZvY3VzLWJ1dHRvbiB7XG5cdHBhZGRpbmc6IDZweCAxMnB4O1xuXHRib3JkZXItcmFkaXVzOiA0cHg7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XG5cdGN1cnNvcjogcG9pbnRlcjtcblx0Ym9yZGVyOiBub25lO1xufVxuXG4udW5mb2N1cy1idXR0b246aG92ZXIge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQtaG92ZXIpO1xufVxuXG4vKiBNYWluIGNvbnRlbnQgbGF5b3V0IHdpdGggdHdvIGNvbHVtbnMgKi9cbi5mb3JlY2FzdC1jb250ZW50IHtcblx0ZGlzcGxheTogZmxleDtcblx0ZmxleDogMTtcblx0b3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLmZvcmVjYXN0LWxlZnQtY29sdW1uIHtcblx0d2lkdGg6IDM2MHB4O1xuXHRtaW4td2lkdGg6IDM2MHB4O1xuXHRib3JkZXItcmlnaHQ6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdG92ZXJmbG93LXk6IGF1dG87XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5LWFsdCk7XG59XG5cbi5mb3JlY2FzdC1yaWdodC1jb2x1bW4ge1xuXHRmbGV4OiAxO1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xuXHR3aWR0aDogY2FsYygxMDAlIC0gMzYwcHgpO1xufVxuXG4uZm9yZWNhc3QtdGFzay1saXN0IHtcblx0b3ZlcmZsb3cteTogYXV0bztcbn1cblxuLmZvcmVjYXN0LWNhbGVuZGFyLXNlY3Rpb24ge1xuXHRwYWRkaW5nOiAxMHB4IDA7XG5cdG1hcmdpbi10b3A6IHZhcigtLXNpemUtNC00KTtcblx0ZmxleC1zaHJpbms6IDA7XG5cdGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XG59XG5cbi8qIFN0YXRzIEJhciAqL1xuLmZvcmVjYXN0LXN0YXRzIHtcblx0ZGlzcGxheTogZmxleDtcbn1cblxuLnN0YXQtaXRlbSB7XG5cdGZsZXg6IDE7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdHBhZGRpbmc6IDEwcHg7XG5cdGN1cnNvcjogcG9pbnRlcjtcblx0dHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjJzIGVhc2U7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLnN0YXQtaXRlbTo6YWZ0ZXIge1xuXHRjb250ZW50OiBcIlwiO1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdGJvdHRvbTogMDtcblx0bGVmdDogMTAlO1xuXHR3aWR0aDogODAlO1xuXHRoZWlnaHQ6IDNweDtcblx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cdHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4ycyBlYXNlO1xufVxuXG4uc3RhdC1pdGVtOmhvdmVyIHtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3Zlcik7XG59XG5cbi5zdGF0LWl0ZW0uYWN0aXZlOjphZnRlciB7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XG5cdGFuaW1hdGlvbjogY29sb3ItcHVsc2UgMS41cyBpbmZpbml0ZSBhbHRlcm5hdGU7XG59XG5cbkBrZXlmcmFtZXMgY29sb3ItcHVsc2Uge1xuXHQwJSB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItYWNjZW50LTEpICFpbXBvcnRhbnQ7XG5cdFx0b3BhY2l0eTogMC43O1xuXHR9XG5cdDEwMCUge1xuXHRcdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWFjY2VudC0yKSAhaW1wb3J0YW50O1xuXHRcdG9wYWNpdHk6IDE7XG5cdH1cbn1cblxuLnN0YXQtaXRlbS50Zy1wYXN0LWR1ZTo6YWZ0ZXIge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10ZXh0LWVycm9yKTtcblx0b3BhY2l0eTogMC43O1xufVxuXG4uc3RhdC1pdGVtLnRnLXRvZGF5OjphZnRlciB7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XG5cdG9wYWNpdHk6IDAuNztcbn1cblxuLnN0YXQtaXRlbS50Zy1mdXR1cmU6OmFmdGVyIHtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGV4dC1hY2NlbnQpO1xuXHRvcGFjaXR5OiAwLjc7XG59XG5cbi5zdGF0LWNvdW50IHtcblx0Zm9udC1zaXplOiAxLjVlbTtcblx0Zm9udC13ZWlnaHQ6IDYwMDtcbn1cblxuLnN0YXQtaXRlbS50Zy1wYXN0LWR1ZSAuc3RhdC1jb3VudCB7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LWVycm9yKTtcbn1cblxuLnN0YXQtbGFiZWwge1xuXHRmb250LXNpemU6IDAuOGVtO1xuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XG59XG5cbi8qIER1ZSBTb29uIFNlY3Rpb24gKi9cbi5mb3JlY2FzdC1kdWUtc29vbi1zZWN0aW9uIHtcblx0ZGlzcGxheTogZmxleDtcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0cGFkZGluZy1ib3R0b206IHZhcigtLXNpemUtNC0zKTtcbn1cblxuLmR1ZS1zb29uLWhlYWRlciB7XG5cdGZvbnQtc2l6ZTogMC44ZW07XG5cdGZvbnQtd2VpZ2h0OiA2MDA7XG5cdHBhZGRpbmc6IDVweCAxNXB4O1xuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XG5cdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cdGxldHRlci1zcGFjaW5nOiAwLjA1ZW07XG59XG5cbi5kdWUtc29vbi1pdGVtIHtcblx0ZGlzcGxheTogZmxleDtcblx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXHRwYWRkaW5nOiA4cHggMTVweDtcblx0Y3Vyc29yOiBwb2ludGVyO1xuXHRib3JkZXItbGVmdDogM3B4IHNvbGlkIHRyYW5zcGFyZW50O1xuXHR0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMnMgZWFzZTtcbn1cblxuLmR1ZS1zb29uLWl0ZW06aG92ZXIge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyKTtcblx0Ym9yZGVyLWxlZnQtY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XG59XG5cbi5kdWUtc29vbi1kYXRlIHtcblx0Zm9udC1zaXplOiAwLjllbTtcbn1cblxuLmR1ZS1zb29uLWNvdW50IHtcblx0Zm9udC1zaXplOiAwLjhlbTtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xuXHRwYWRkaW5nOiAycHggNnB4O1xuXHRib3JkZXItcmFkaXVzOiAxMHB4O1xuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XG59XG5cbi5kdWUtc29vbi1lbXB0eSB7XG5cdHRleHQtYWxpZ246IGNlbnRlcjtcblx0cGFkZGluZzogMTVweDtcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xuXHRmb250LXN0eWxlOiBpdGFsaWM7XG5cdGZvbnQtc2l6ZTogMC45ZW07XG59XG5cbi5kYXRlLXNlY3Rpb24taGVhZGVyIHtcblx0ZGlzcGxheTogZmxleDtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0cGFkZGluZzogOHB4IDE1cHg7XG5cdGN1cnNvcjogcG9pbnRlcjtcblx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnktYWx0KTtcbn1cblxuLmRhdGUtc2VjdGlvbi1oZWFkZXIgLnNlY3Rpb24tdG9nZ2xlIHtcblx0bWFyZ2luLXJpZ2h0OiA4cHg7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuXG4uZGF0ZS1zZWN0aW9uLWhlYWRlciAuc2VjdGlvbi10aXRsZSB7XG5cdGZsZXg6IDE7XG5cdGZvbnQtd2VpZ2h0OiBib2xkZXI7XG59XG5cbi5kYXRlLXNlY3Rpb24taGVhZGVyIC5zZWN0aW9uLWNvdW50IHtcblx0Zm9udC1zaXplOiAwLjhlbTtcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XG5cdGJvcmRlci1yYWRpdXM6IDEwcHg7XG5cdGhlaWdodDogdmFyKC0tc2l6ZS00LTUpO1xuXHR3aWR0aDogdmFyKC0tc2l6ZS00LTUpO1xuXHRkaXNwbGF5OiBpbmxpbmUtZmxleDtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG5cbi8qIE92ZXJkdWUgc2VjdGlvbiBzdHlsaW5nICovXG4udGFzay1kYXRlLXNlY3Rpb24ub3ZlcmR1ZSAuZGF0ZS1zZWN0aW9uLWhlYWRlciB7XG5cdGJvcmRlci1sZWZ0OiAzcHggc29saWQgdmFyKC0tdGV4dC1lcnJvcik7XG59XG5cbi50YXNrLWRhdGUtc2VjdGlvbi5vdmVyZHVlIC5zZWN0aW9uLXRpdGxlIHtcblx0Y29sb3I6IHZhcigtLXRleHQtZXJyb3IpO1xufVxuXG4udGFzay1kYXRlLXNlY3Rpb24ub3ZlcmR1ZSAuc2VjdGlvbi1jb3VudCB7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRleHQtZXJyb3IpO1xuXHRjb2xvcjogd2hpdGU7XG59XG5cbi5zZWN0aW9uLXRhc2tzIHtcblx0ZGlzcGxheTogZmxleDtcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbn1cblxuLmZvcmVjYXN0LWVtcHR5LXN0YXRlIHtcblx0ZGlzcGxheTogZmxleDtcblx0aGVpZ2h0OiAxMDBweDtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcblx0Zm9udC1zdHlsZTogaXRhbGljO1xufVxuXG4uZm9yZWNhc3Qtc2lkZWJhci10b2dnbGUge1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG59XG5cbi5pcy1waG9uZVxuXHQuZm9yZWNhc3QtaGVhZGVyOmhhcyguZm9yZWNhc3Qtc2lkZWJhci10b2dnbGUpXG5cdC5mb3JlY2FzdC10aXRsZS1jb250YWluZXIge1xuXHRwYWRkaW5nLWxlZnQ6IHZhcigtLXNpemUtNC0xMCk7XG59XG5cbi8qIEZvcmVjYXN0IFZpZXcgLSBNb2JpbGUgKi9cbi5pcy1waG9uZSAuZm9yZWNhc3QtY29udGFpbmVyIHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4uaXMtcGhvbmUgLmZvcmVjYXN0LWxlZnQtY29sdW1uIHtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHRsZWZ0OiAwO1xuXHR0b3A6IDA7XG5cdGhlaWdodDogMTAwJTtcblx0ei1pbmRleDogMTA7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcblx0d2lkdGg6IDEwMCU7XG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSk7XG5cdHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzIGVhc2UtaW4tb3V0O1xuXHRib3JkZXItcmlnaHQ6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XG59XG5cbi5pcy1waG9uZSAuZm9yZWNhc3QtbGVmdC1jb2x1bW4uaXMtdmlzaWJsZSB7XG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbn1cblxuLmlzLXBob25lIC5mb3JlY2FzdC1zaWRlYmFyLXRvZ2dsZSB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXHRtYXJnaW4tcmlnaHQ6IDhweDtcbn1cblxuLmlzLXBob25lIC5mb3JlY2FzdC1zaWRlYmFyLWNsb3NlIHtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHR0b3A6IDEwcHg7XG5cdHJpZ2h0OiAxMHB4O1xuXHR6LWluZGV4OiAxNTtcblx0d2lkdGg6IDI4cHg7XG5cdGhlaWdodDogMjhweDtcblx0ZGlzcGxheTogZmxleDtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdGJvcmRlci1yYWRpdXM6IDUwJTtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcblx0Ym94LXNoYWRvdzogMCAycHggNHB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbn1cblxuLyogQWRkIG92ZXJsYXkgd2hlbiBsZWZ0IGNvbHVtbiBpcyB2aXNpYmxlIG9uIG1vYmlsZSAqL1xuLmlzLXBob25lIC50YXNrLWdlbml1cy1jb250YWluZXI6aGFzKC5mb3JlY2FzdC1sZWZ0LWNvbHVtbi5pcy12aXNpYmxlKTo6YmVmb3JlIHtcblx0Y29udGVudDogXCJcIjtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHR0b3A6IDA7XG5cdGxlZnQ6IDA7XG5cdHdpZHRoOiAxMDAlO1xuXHRoZWlnaHQ6IDEwMCU7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItY292ZXIpO1xuXHRvcGFjaXR5OiAwLjU7XG5cdHotaW5kZXg6IDU7XG5cdHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcyBlYXNlLWluLW91dDtcbn1cbiIsICIvKiBDYWxlbmRhciBDb21wb25lbnQgU3R5bGVzICovXHJcbi50YXNrLWdlbml1cy12aWV3IC5taW5pLWNhbGVuZGFyLWNvbnRhaW5lciB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0cGFkZGluZy1ib3R0b206IDEwcHg7XHJcbn1cclxuXHJcbi50YXNrLWdlbml1cy12aWV3IC5taW5pLWNhbGVuZGFyLWNvbnRhaW5lciAuY2FsZW5kYXItaGVhZGVyIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdHBhZGRpbmc6IDhweCAxNXB4O1xyXG5cdG1hcmdpbi1ib3R0b206IDhweDtcclxufVxyXG5cclxuLnRhc2stZ2VuaXVzLXZpZXcgLm1pbmktY2FsZW5kYXItY29udGFpbmVyIC5jYWxlbmRhci10aXRsZSB7XHJcblx0Zm9udC13ZWlnaHQ6IDYwMDtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGdhcDogNXB4O1xyXG59XHJcblxyXG4udGFzay1nZW5pdXMtdmlldyAubWluaS1jYWxlbmRhci1jb250YWluZXIgLmNhbGVuZGFyLW1vbnRoIHtcclxuXHRtYXJnaW4tcmlnaHQ6IDVweDtcclxufVxyXG5cclxuLnRhc2stZ2VuaXVzLXZpZXcgLm1pbmktY2FsZW5kYXItY29udGFpbmVyIC5jYWxlbmRhci15ZWFyIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcbn1cclxuXHJcbi50YXNrLWdlbml1cy12aWV3IC5taW5pLWNhbGVuZGFyLWNvbnRhaW5lciAuY2FsZW5kYXItbmF2IHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0Z2FwOiA4cHg7XHJcbn1cclxuXHJcbi50YXNrLWdlbml1cy12aWV3IC5taW5pLWNhbGVuZGFyLWNvbnRhaW5lciAuY2FsZW5kYXItbmF2LWJ0biB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdHdpZHRoOiAyNHB4O1xyXG5cdGhlaWdodDogMjRweDtcclxuXHRib3JkZXItcmFkaXVzOiA0cHg7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3Zlcik7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdG9wYWNpdHk6IDAuNztcclxuXHR0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMnMgZWFzZTtcclxufVxyXG5cclxuLnRhc2stZ2VuaXVzLXZpZXcgLm1pbmktY2FsZW5kYXItY29udGFpbmVyIC5jYWxlbmRhci1uYXYtYnRuOmhvdmVyIHtcclxuXHRvcGFjaXR5OiAxO1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyLWhvdmVyKTtcclxufVxyXG5cclxuLnRhc2stZ2VuaXVzLXZpZXcgLm1pbmktY2FsZW5kYXItY29udGFpbmVyIC5jYWxlbmRhci10b2RheS1idG4ge1xyXG5cdHBhZGRpbmc6IDJweCA4cHg7XHJcblx0Ym9yZGVyLXJhZGl1czogNHB4O1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpO1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHRmb250LXNpemU6IDAuOGVtO1xyXG5cdHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4ycyBlYXNlO1xyXG59XHJcblxyXG4udGFzay1nZW5pdXMtdmlldyAubWluaS1jYWxlbmRhci1jb250YWluZXIgLmNhbGVuZGFyLXRvZGF5LWJ0bjpob3ZlciB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXItaG92ZXIpO1xyXG59XHJcblxyXG4udGFzay1nZW5pdXMtdmlldyAubWluaS1jYWxlbmRhci1jb250YWluZXIgLmNhbGVuZGFyLWdyaWQge1xyXG5cdGRpc3BsYXk6IGdyaWQ7XHJcblx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNywgMWZyKTtcclxuXHRnYXA6IDFweDtcclxuXHRwYWRkaW5nOiAwIDEwcHg7XHJcbn1cclxuXHJcbi50YXNrLWdlbml1cy12aWV3IC5taW5pLWNhbGVuZGFyLWNvbnRhaW5lciAuY2FsZW5kYXItZGF5LWhlYWRlciB7XHJcblx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG5cdGZvbnQtc2l6ZTogMC44ZW07XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdHBhZGRpbmc6IDNweCAwO1xyXG5cdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0bWFyZ2luLWJvdHRvbTogM3B4O1xyXG59XHJcblxyXG4udGFzay1nZW5pdXMtdmlld1xyXG5cdC5taW5pLWNhbGVuZGFyLWNvbnRhaW5lclxyXG5cdC5jYWxlbmRhci1kYXktaGVhZGVyLmNhbGVuZGFyLXdlZWtlbmQge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LWFjY2VudCk7XHJcbn1cclxuXHJcbi8qIEFkanVzdCBncmlkIGxheW91dCB3aGVuIHdlZWtlbmRzIGFyZSBoaWRkZW4gaW4gbWluaSBjYWxlbmRhciAqL1xyXG4udGFzay1nZW5pdXMtdmlldyAubWluaS1jYWxlbmRhci1jb250YWluZXIuaGlkZS13ZWVrZW5kcyAuY2FsZW5kYXItZ3JpZCB7XHJcblx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNSwgMWZyKTsgLyogNSBjb2x1bW5zIGluc3RlYWQgb2YgNyB3aGVuIHdlZWtlbmRzIGhpZGRlbiAqL1xyXG59XHJcblxyXG4vKiBOb3RlOiBXZWVrZW5kIGVsZW1lbnRzIGFyZSBub3QgY3JlYXRlZCB3aGVuIGhpZGVXZWVrZW5kcyBpcyBlbmFibGVkLFxyXG4gICBzbyBubyBoaWRpbmcgcnVsZXMgYXJlIG5lZWRlZC4gVGhlIGdyaWQgbGF5b3V0IGFkanVzdG1lbnRzIGFib3ZlIGFyZSBzdWZmaWNpZW50LiAqL1xyXG5cclxuLnRhc2stZ2VuaXVzLXZpZXcgLm1pbmktY2FsZW5kYXItY29udGFpbmVyIC5jYWxlbmRhci1kYXkge1xyXG5cdGJvcmRlci1yYWRpdXM6IDRweDtcclxuXHRwYWRkaW5nOiAxcHg7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0dHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjJzIGVhc2U7XHJcblx0aGVpZ2h0OiBhdXRvO1xyXG5cdG1pbi1oZWlnaHQ6IHZhcigtLXNpemUtNC0xMik7XHJcbn1cclxuXHJcbi50YXNrLWdlbml1cy12aWV3IC5taW5pLWNhbGVuZGFyLWNvbnRhaW5lciAuY2FsZW5kYXItZGF5OmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyKTtcclxufVxyXG5cclxuLnRhc2stZ2VuaXVzLXZpZXcgLm1pbmktY2FsZW5kYXItY29udGFpbmVyIC5jYWxlbmRhci1kYXkuc2VsZWN0ZWQge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyLWhvdmVyKTtcclxufVxyXG5cclxuLnRhc2stZ2VuaXVzLXZpZXcgLm1pbmktY2FsZW5kYXItY29udGFpbmVyIC5jYWxlbmRhci1kYXkudG9kYXkge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudC1ob3Zlcik7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtb24tYWNjZW50KTtcclxufVxyXG5cclxuLnRhc2stZ2VuaXVzLXZpZXcgLm1pbmktY2FsZW5kYXItY29udGFpbmVyIC5jYWxlbmRhci1kYXkucGFzdC1kdWUge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LWVycm9yKTtcclxufVxyXG5cclxuLnRhc2stZ2VuaXVzLXZpZXcgLm1pbmktY2FsZW5kYXItY29udGFpbmVyIC5jYWxlbmRhci1kYXkub3RoZXItbW9udGgge1xyXG5cdG9wYWNpdHk6IDAuNTtcclxufVxyXG5cclxuLnRhc2stZ2VuaXVzLXZpZXcgLm1pbmktY2FsZW5kYXItY29udGFpbmVyIC5jYWxlbmRhci1kYXktbnVtYmVyIHtcclxuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0Zm9udC1zaXplOiAwLjllbTtcclxuXHRmb250LXdlaWdodDogNTAwO1xyXG5cdHBhZGRpbmc6IDFweDtcclxufVxyXG5cclxuLnRhc2stZ2VuaXVzLXZpZXcgLm1pbmktY2FsZW5kYXItY29udGFpbmVyIC5jYWxlbmRhci1kYXktY291bnQge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG5cdGJvcmRlci1yYWRpdXM6IDhweDtcclxuXHRmb250LXNpemU6IDAuN2VtO1xyXG5cdHBhZGRpbmc6IDFweCA0cHg7XHJcblx0bWFyZ2luOiAxcHggYXV0byAwO1xyXG5cdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHR3aWR0aDogZml0LWNvbnRlbnQ7XHJcbn1cclxuXHJcbi50YXNrLWdlbml1cy12aWV3IC5taW5pLWNhbGVuZGFyLWNvbnRhaW5lciAuY2FsZW5kYXItZGF5LWNvdW50Lmhhcy1wcmlvcml0eSB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGV4dC1hY2NlbnQpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XHJcbn1cclxuXHJcbkBtZWRpYSAobWF4LXdpZHRoOiAxNDAwcHgpIHtcclxuXHQudGFzay1nZW5pdXMtY29udGFpbmVyOmhhcygudGFzay1kZXRhaWxzLnZpc2libGUpXHJcblx0XHQubWluaS1jYWxlbmRhci1jb250YWluZXJcclxuXHRcdC5mb3JlY2FzdC1sZWZ0LWNvbHVtbiB7XHJcblx0XHRkaXNwbGF5OiBub25lO1xyXG5cdH1cclxufVxyXG4iLCAiLyogVGFzayBUYWJsZSBWaWV3IFN0eWxlcyAqL1xuLnRhYmxlLXZpZXctYWRhcHRlciB7XG5cdHdpZHRoOiAxMDAlO1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRnYXA6IDA7XG5cdGhlaWdodDogMTAwJTtcblx0b3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLnRhc2stdGFibGUtY29udGFpbmVyIHtcblx0ZGlzcGxheTogZmxleDtcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0aGVpZ2h0OiAxMDAlO1xuXHRvdmVyZmxvdzogaGlkZGVuO1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XG59XG5cbi50YXNrLXRhYmxlIHtcblx0d2lkdGg6IDEwMCU7XG5cdGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG5cdHRhYmxlLWxheW91dDogZml4ZWQ7XG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbCk7XG5cdGZsZXg6IDE7XG5cdG1pbi1oZWlnaHQ6IDA7XG5cdC8qIEVuc3VyZSB0YWJsZSB0YWtlcyBmdWxsIHdpZHRoIGV2ZW4gd2l0aCBtYW55IGNvbHVtbnMgKi9cblx0bWluLXdpZHRoOiBtYXgtY29udGVudDtcbn1cblxuLyogVGFibGUgd3JhcHBlciBmb3Igc2Nyb2xsaW5nICovXG4udGFzay10YWJsZS13cmFwcGVyIHtcblx0ZmxleDogMTtcblx0b3ZlcmZsb3c6IGF1dG87XG5cdG1pbi1oZWlnaHQ6IDA7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0LyogRW5hYmxlIGJvdGggaG9yaXpvbnRhbCBhbmQgdmVydGljYWwgc2Nyb2xsaW5nICovXG5cdG92ZXJmbG93LXg6IGF1dG87XG5cdG92ZXJmbG93LXk6IGF1dG87XG5cdC8qIFNtb290aCBzY3JvbGxpbmcgKi9cblx0c2Nyb2xsLWJlaGF2aW9yOiBzbW9vdGg7XG59XG5cbi8qIEhlYWRlciBTdHlsZXMgKi9cbi50YXNrLXRhYmxlLWhlYWRlciB7XG5cdHBvc2l0aW9uOiBzdGlja3k7XG5cdHRvcDogMDtcblx0ei1pbmRleDogMTA7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcblx0Ym9yZGVyLWJvdHRvbTogMnB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcblx0LyogRW5zdXJlIGhlYWRlciBkb2Vzbid0IGJyZWFrIHdoZW4gc2Nyb2xsaW5nIGhvcml6b250YWxseSAqL1xuXHRtaW4td2lkdGg6IG1heC1jb250ZW50O1xufVxuXG4udGFzay10YWJsZS1oZWFkZXItcm93IHtcblx0aGVpZ2h0OiA0MHB4O1xufVxuXG4udGFzay10YWJsZS1oZWFkZXItY2VsbCB7XG5cdHBhZGRpbmc6IDhweCAxMnB4O1xuXHR0ZXh0LWFsaWduOiBsZWZ0O1xuXHRmb250LXdlaWdodDogNjAwO1xuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XG5cdGJvcmRlci1yaWdodDogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHR1c2VyLXNlbGVjdDogbm9uZTtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xuXHQvKiBQcmV2ZW50IGhlYWRlciBjZWxscyBmcm9tIHNocmlua2luZyB0b28gbXVjaCAqL1xuXHR3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG4udGFzay10YWJsZS1oZWFkZXItY2VsbDpsYXN0LWNoaWxkIHtcblx0Ym9yZGVyLXJpZ2h0OiBub25lO1xufVxuXG4udGFzay10YWJsZS1oZWFkZXItY2VsbC5zb3J0YWJsZSB7XG5cdGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLnRhc2stdGFibGUtaGVhZGVyLWNlbGwuc29ydGFibGU6aG92ZXIge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyKTtcbn1cblxuLnRhc2stdGFibGUtaGVhZGVyLWNvbnRlbnQge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG5cdGdhcDogNHB4O1xufVxuXG4udGFzay10YWJsZS1oZWFkZXItdGl0bGUge1xuXHRmbGV4OiAxO1xuXHRvdmVyZmxvdzogaGlkZGVuO1xuXHR0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcblx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxuLnRhc2stdGFibGUtc29ydC1pY29uIHtcblx0Zm9udC1zaXplOiAxMnB4O1xuXHRvcGFjaXR5OiAwLjU7XG5cdHRyYW5zaXRpb246IG9wYWNpdHkgMC4ycztcblx0ZGlzcGxheTogZmxleDtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0d2lkdGg6IDE2cHg7XG5cdGhlaWdodDogMTZweDtcbn1cblxuLnRhc2stdGFibGUtc29ydC1pY29uLmFzYyxcbi50YXNrLXRhYmxlLXNvcnQtaWNvbi5kZXNjIHtcblx0b3BhY2l0eTogMTtcblx0Y29sb3I6IHZhcigtLXRleHQtYWNjZW50KTtcbn1cblxuLnRhc2stdGFibGUtcmVzaXplLWhhbmRsZSB7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0dG9wOiAwO1xuXHRyaWdodDogMDtcblx0d2lkdGg6IDRweDtcblx0aGVpZ2h0OiAxMDAlO1xuXHRjdXJzb3I6IGNvbC1yZXNpemU7XG5cdGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuXHR0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMnM7XG59XG5cbi50YXNrLXRhYmxlLXJlc2l6ZS1oYW5kbGU6aG92ZXIge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10ZXh0LWFjY2VudCk7XG59XG5cbi8qIEJvZHkgU3R5bGVzICovXG4udGFzay10YWJsZS1ib2R5IHtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcbn1cblxuLnRhc2stdGFibGUtcm93IHtcblx0aGVpZ2h0OiA0MHB4O1xuXHRib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xuXHR0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMnM7XG59XG5cbi50YXNrLXRhYmxlLXJvdzpob3ZlciB7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpO1xufVxuXG4udGFzay10YWJsZS1yb3cuc2VsZWN0ZWQge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWFjdGl2ZS1ob3Zlcik7XG59XG5cbi50YXNrLXRhYmxlLXJvdzpudGgtY2hpbGQoZXZlbikge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeS1hbHQpO1xufVxuXG4udGFzay10YWJsZS1yb3c6bnRoLWNoaWxkKGV2ZW4pOmhvdmVyIHtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3Zlcik7XG59XG5cbi50YXNrLXRhYmxlLXJvdzpudGgtY2hpbGQoZXZlbikuc2VsZWN0ZWQge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWFjdGl2ZS1ob3Zlcik7XG59XG5cbi50YXNrLXRhYmxlLWNlbGwge1xuXHRwYWRkaW5nOiA4cHggMTJweDtcblx0dmVydGljYWwtYWxpZ246IG1pZGRsZTtcblx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0dGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG5cdHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cbi50YXNrLXRhYmxlLWNlbGw6bGFzdC1jaGlsZCB7XG5cdGJvcmRlci1yaWdodDogbm9uZTtcbn1cblxuLnRhc2stdGFibGUtY2VsbC5lZGl0aW5nIHtcblx0cGFkZGluZzogMDtcbn1cblxuLyogVHJlZSBWaWV3IFN0eWxlcyAqL1xuLnRhc2stdGFibGUtdHJlZS1pbmRlbnQge1xuXHRkaXNwbGF5OiBpbmxpbmUtZmxleDtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0Z2FwOiA0cHg7IFxufVxuXG4udGFzay10YWJsZS1jZWxsOmhhcygudGFzay10YWJsZS1leHBhbmQtYnRuKSB7XG5cdHBhZGRpbmctbGVmdDogMDtcbn1cblxuLnRhc2stdGFibGUtcm93LnRhc2stdGFibGUtc3VidGFzayB7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcbn1cblxuLnRhc2stdGFibGUtZXhwYW5kLWJ0biB7XG5cdGN1cnNvcjogcG9pbnRlcjtcblx0dXNlci1zZWxlY3Q6IG5vbmU7XG5cdHdpZHRoOiAyMHB4O1xuXHRoZWlnaHQ6IDIwcHg7XG5cdHBhZGRpbmc6IDA7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXHRib3JkZXItcmFkaXVzOiAycHg7XG5cdGZvbnQtc2l6ZTogMTBweDtcblx0dHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjJzO1xufVxuXG4udGFzay10YWJsZS1leHBhbmQtYnRuOmhvdmVyIHtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3Zlcik7XG59XG5cbi50YXNrLXRhYmxlLXJvdy1sZXZlbC0xIC50YXNrLXRhYmxlLWNlbGw6Zmlyc3QtY2hpbGQge1xuXHRwYWRkaW5nLWxlZnQ6IDMycHg7XG59XG5cbi50YXNrLXRhYmxlLXJvdy1sZXZlbC0yIC50YXNrLXRhYmxlLWNlbGw6Zmlyc3QtY2hpbGQge1xuXHRwYWRkaW5nLWxlZnQ6IDUycHg7XG59XG5cbi50YXNrLXRhYmxlLXJvdy1sZXZlbC0zIC50YXNrLXRhYmxlLWNlbGw6Zmlyc3QtY2hpbGQge1xuXHRwYWRkaW5nLWxlZnQ6IDcycHg7XG59XG5cbi50YXNrLXRhYmxlLXJvdy1sZXZlbC00IC50YXNrLXRhYmxlLWNlbGw6Zmlyc3QtY2hpbGQge1xuXHRwYWRkaW5nLWxlZnQ6IDkycHg7XG59XG5cbi50YXNrLXRhYmxlLXJvdy1sZXZlbC01IC50YXNrLXRhYmxlLWNlbGw6Zmlyc3QtY2hpbGQge1xuXHRwYWRkaW5nLWxlZnQ6IDExMnB4O1xufVxuXG4vKiBDZWxsIFR5cGUgU3R5bGVzICovXG4udGFzay10YWJsZS10ZXh0IHtcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcbn1cblxuLnRhc2stdGFibGUtbnVtYmVyIHtcblx0dGV4dC1hbGlnbjogcmlnaHQ7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcblx0Zm9udC12YXJpYW50LW51bWVyaWM6IHRhYnVsYXItbnVtcztcbn1cblxuLyogU3RhdHVzIENlbGwgKi9cbi50YXNrLXRhYmxlLXN0YXR1cyB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdGdhcDogNnB4O1xufVxuXG4udGFzay10YWJsZS1zdGF0dXMtaWNvbiB7XG5cdGZvbnQtc2l6ZTogMTRweDtcblx0ZGlzcGxheTogZmxleDtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0d2lkdGg6IDE2cHg7XG5cdGhlaWdodDogMTZweDtcbn1cblxuLnRhc2stdGFibGUtc3RhdHVzLXRleHQge1xuXHRmbGV4OiAxO1xuXHRvdmVyZmxvdzogaGlkZGVuO1xuXHR0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbn1cblxuLnRhc2stdGFibGUtc3RhdHVzLmNvbXBsZXRlZCAudGFzay10YWJsZS1zdGF0dXMtaWNvbiB7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LXN1Y2Nlc3MpO1xufVxuXG4udGFzay10YWJsZS1zdGF0dXMuaW4tcHJvZ3Jlc3MgLnRhc2stdGFibGUtc3RhdHVzLWljb24ge1xuXHRjb2xvcjogdmFyKC0tdGV4dC13YXJuaW5nKTtcbn1cblxuLnRhc2stdGFibGUtc3RhdHVzLmFiYW5kb25lZCAudGFzay10YWJsZS1zdGF0dXMtaWNvbiB7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LWVycm9yKTtcbn1cblxuLnRhc2stdGFibGUtc3RhdHVzLnBsYW5uZWQgLnRhc2stdGFibGUtc3RhdHVzLWljb24ge1xuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XG59XG5cbi50YXNrLXRhYmxlLXN0YXR1cy5ub3Qtc3RhcnRlZCAudGFzay10YWJsZS1zdGF0dXMtaWNvbiB7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LWZhaW50KTtcbn1cblxuLyogUHJpb3JpdHkgQ2VsbCAqL1xuLnRhc2stdGFibGUtcHJpb3JpdHkge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRnYXA6IDZweDtcbn1cblxuLnRhc2stdGFibGUtcHJpb3JpdHkuY2xpY2thYmxlLXByaW9yaXR5IHtcblx0Y3Vyc29yOiBwb2ludGVyO1xuXHRwYWRkaW5nOiA0cHg7XG5cdGJvcmRlci1yYWRpdXM6IDRweDtcblx0dHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjJzO1xufVxuXG4udGFzay10YWJsZS1wcmlvcml0eS5jbGlja2FibGUtcHJpb3JpdHk6aG92ZXIge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyKTtcbn1cblxuLnRhc2stdGFibGUtcHJpb3JpdHktaWNvbiB7XG5cdGZvbnQtc2l6ZTogMTRweDtcblx0ZGlzcGxheTogZmxleDtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0d2lkdGg6IDE2cHg7XG5cdGhlaWdodDogMTZweDtcbn1cblxuLnRhc2stdGFibGUtcHJpb3JpdHktaWNvbi5oaWdoIHtcblx0Y29sb3I6IHZhcigtLXRleHQtZXJyb3IpO1xufVxuXG4udGFzay10YWJsZS1wcmlvcml0eS1pY29uLm1lZGl1bSB7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LXdhcm5pbmcpO1xufVxuXG4udGFzay10YWJsZS1wcmlvcml0eS1pY29uLmxvdyB7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcbn1cblxuLnRhc2stdGFibGUtcHJpb3JpdHktdGV4dCB7XG5cdGZsZXg6IDE7XG5cdG92ZXJmbG93OiBoaWRkZW47XG5cdHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xufVxuXG4udGFzay10YWJsZS1wcmlvcml0eS1lbXB0eSB7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LWZhaW50KTtcblx0Zm9udC1zdHlsZTogaXRhbGljO1xufVxuXG4vKiBEYXRlIENlbGwgKi9cbi50YXNrLXRhYmxlLWRhdGUge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRnYXA6IDJweDtcblx0Y3Vyc29yOiBwb2ludGVyO1xuXHR0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMnM7XG5cdHBhZGRpbmc6IDRweDtcblx0Ym9yZGVyLXJhZGl1czogNHB4O1xufVxuXG4udGFzay10YWJsZS1kYXRlOmhvdmVyIHtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3Zlcik7XG59XG5cbi50YXNrLXRhYmxlLWRhdGUtdGV4dCB7XG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbCk7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XG59XG5cbi50YXNrLXRhYmxlLWRhdGUtcmVsYXRpdmUge1xuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGxlcik7XG5cdGZvbnQtd2VpZ2h0OiA1MDA7XG59XG5cbi50YXNrLXRhYmxlLWRhdGUtcmVsYXRpdmUudG9kYXkge1xuXHRjb2xvcjogdmFyKC0tdGV4dC1zdWNjZXNzKTtcbn1cblxuLnRhc2stdGFibGUtZGF0ZS1yZWxhdGl2ZS50b21vcnJvdyB7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LWFjY2VudCk7XG59XG5cbi50YXNrLXRhYmxlLWRhdGUtcmVsYXRpdmUueWVzdGVyZGF5IHtcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xufVxuXG4udGFzay10YWJsZS1kYXRlLXJlbGF0aXZlLm92ZXJkdWUge1xuXHRjb2xvcjogdmFyKC0tdGV4dC1lcnJvcik7XG59XG5cbi50YXNrLXRhYmxlLWRhdGUtcmVsYXRpdmUudXBjb21pbmcge1xuXHRjb2xvcjogdmFyKC0tdGV4dC13YXJuaW5nKTtcbn1cblxuLnRhc2stdGFibGUtZGF0ZS1lbXB0eSB7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LWZhaW50KTtcblx0Zm9udC1zdHlsZTogaXRhbGljO1xufVxuXG4vKiBUYWdzIENlbGwgKi9cbi50YXNrLXRhYmxlLXRhZ3Mge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRmbGV4LXdyYXA6IHdyYXA7XG5cdGdhcDogNHB4O1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xufVxuXG4udGFzay10YWJsZS10YWctY2hpcCB7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYWNjZW50KTtcblx0Y29sb3I6IHZhcigtLXRleHQtYWNjZW50KTtcblx0cGFkZGluZzogMnB4IDZweDtcblx0Ym9yZGVyLXJhZGl1czogOHB4O1xuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGxlcik7XG5cdGZvbnQtd2VpZ2h0OiA1MDA7XG5cdHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cbi50YXNrLXRhYmxlLXRhZ3MtZW1wdHkge1xuXHRjb2xvcjogdmFyKC0tdGV4dC1mYWludCk7XG5cdGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cblxuLyogSW5saW5lIEVkaXRpbmcgSW5wdXRzICovXG4udGFzay10YWJsZS10ZXh0LWlucHV0LFxuLnRhc2stdGFibGUtdGFncy1pbnB1dCB7XG5cdGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuXHRiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuXHRvdXRsaW5lOiBub25lICFpbXBvcnRhbnQ7XG5cdHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG5cdHBhZGRpbmc6IDAgIWltcG9ydGFudDtcblx0Zm9udDogaW5oZXJpdCAhaW1wb3J0YW50O1xuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpICFpbXBvcnRhbnQ7XG59XG5cbi50YXNrLXRhYmxlLXRleHQtaW5wdXQ6Zm9jdXMsXG4udGFzay10YWJsZS10YWdzLWlucHV0OmZvY3VzIHtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1mb3JtLWZpZWxkKSAhaW1wb3J0YW50O1xuXHRib3JkZXItcmFkaXVzOiAzcHggIWltcG9ydGFudDtcblx0cGFkZGluZzogMnB4IDRweCAhaW1wb3J0YW50O1xufVxuXG4vKiBUYXNrIENvdW50IEljb24gKi9cbi50YXNrLWNvdW50LWljb24ge1xuXHRmb250LXNpemU6IDE2cHg7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdHdpZHRoOiAxNnB4O1xuXHRoZWlnaHQ6IDE2cHg7XG59XG5cbi50YXNrLXRhYmxlLWVtcHR5LXJvdyB7XG5cdGhlaWdodDogODBweDtcbn1cblxuLnRhc2stdGFibGUtZW1wdHktY2VsbCB7XG5cdHRleHQtYWxpZ246IGNlbnRlcjtcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xuXHRmb250LXN0eWxlOiBpdGFsaWM7XG5cdHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbi8qIExvYWRpbmcgU3RhdGUgKi9cbi50YXNrLXRhYmxlLWxvYWRpbmcge1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdHRvcDogNTAlO1xuXHRsZWZ0OiA1MCU7XG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuXHRwYWRkaW5nOiAyMHB4O1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XG5cdGJvcmRlci1yYWRpdXM6IDhweDtcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGwpO1xuXHR6LWluZGV4OiAxMDA7XG59XG5cbi8qIFJlc2l6ZSBTdGF0ZSAqL1xuLnRhc2stdGFibGUucmVzaXppbmcge1xuXHR1c2VyLXNlbGVjdDogbm9uZTtcbn1cblxuLnRhc2stdGFibGUucmVzaXppbmcgKiB7XG5cdGN1cnNvcjogY29sLXJlc2l6ZSAhaW1wb3J0YW50O1xufVxuXG4vKiBWaXJ0dWFsIHNjcm9sbGluZyBzdHlsZXMgKi9cbi52aXJ0dWFsLXNjcm9sbC1zcGFjZXIge1xuXHRwb2ludGVyLWV2ZW50czogbm9uZTtcblx0dmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4vKiBSZXNwb25zaXZlIERlc2lnbiAqL1xuQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XG5cdC50YXNrLXRhYmxlLWNvbnRhaW5lciB7XG5cdFx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsZXIpO1xuXHR9XG5cblx0LnRhc2stdGFibGUtd3JhcHBlciB7XG5cdFx0b3ZlcmZsb3cteDogYXV0bztcblx0fVxuXG5cdC50YXNrLXRhYmxlIHtcblx0XHRtaW4td2lkdGg6IDgwMHB4OyAvKiBFbnN1cmUgdGFibGUgZG9lc24ndCBnZXQgdG9vIG5hcnJvdyAqL1xuXHR9XG5cblx0LnRhc2stdGFibGUtaGVhZGVyLWNlbGwsXG5cdC50YXNrLXRhYmxlLWNlbGwge1xuXHRcdHBhZGRpbmc6IDZweCA4cHg7XG5cdH1cblxuXHQudGFzay10YWJsZS1yb3cge1xuXHRcdGhlaWdodDogMzZweDtcblx0fVxuXG5cdC50YXNrLXRhYmxlLWhlYWRlci1yb3cge1xuXHRcdGhlaWdodDogMzZweDtcblx0fVxufVxuXG4vKiBEYXJrIE1vZGUgQWRqdXN0bWVudHMgKi9cbi50aGVtZS1kYXJrIC50YXNrLXRhYmxlLWNvbnRhaW5lciB7XG5cdGJvcmRlci1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xufVxuXG4udGhlbWUtZGFyayAudGFzay10YWJsZS1yb3c6bnRoLWNoaWxkKGV2ZW4pIHtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5LWFsdCk7XG59XG5cbi8qIEhpZ2ggQ29udHJhc3QgTW9kZSAqL1xuQG1lZGlhIChwcmVmZXJzLWNvbnRyYXN0OiBoaWdoKSB7XG5cdC50YXNrLXRhYmxlLWNvbnRhaW5lciB7XG5cdFx0Ym9yZGVyLXdpZHRoOiAycHg7XG5cdH1cblxuXHQudGFzay10YWJsZS1oZWFkZXItY2VsbCxcblx0LnRhc2stdGFibGUtY2VsbCB7XG5cdFx0Ym9yZGVyLXdpZHRoOiAxcHg7XG5cdH1cblxuXHQudGFzay10YWJsZS1yb3cge1xuXHRcdGJvcmRlci1ib3R0b20td2lkdGg6IDFweDtcblx0fVxufVxuXG4vKiBQcmludCBTdHlsZXMgKi9cbkBtZWRpYSBwcmludCB7XG5cdC50YXNrLXRhYmxlLWNvbnRhaW5lciB7XG5cdFx0Ym9yZGVyOiBub25lO1xuXHRcdG92ZXJmbG93OiB2aXNpYmxlO1xuXHRcdGhlaWdodDogYXV0bztcblx0fVxuXG5cdC50YXNrLXRhYmxlLWhlYWRlciB7XG5cdFx0cG9zaXRpb246IHN0YXRpYztcblx0fVxuXG5cdC50YXNrLXRhYmxlLXJlc2l6ZS1oYW5kbGUge1xuXHRcdGRpc3BsYXk6IG5vbmU7XG5cdH1cblxuXHQudGFzay10YWJsZS1leHBhbmQtYnRuIHtcblx0XHRkaXNwbGF5OiBub25lO1xuXHR9XG59XG5cbi8qIFZpcnR1YWwgc2Nyb2xsaW5nIHN0eWxlcyAqL1xuLnZpcnR1YWwtc2Nyb2xsLXNwYWNlci10b3Age1xuXHRwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cblxuLnZpcnR1YWwtc2Nyb2xsLXNwYWNlci10b3AgdGQge1xuXHRwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG5cdGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuXHRiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xufVxuXG4vKiBDb250ZXh0IG1lbnUgc3R5bGVzICovXG4udGFzay10YWJsZS1jb250ZXh0LW1lbnUge1xuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XG5cdGJvcmRlci1yYWRpdXM6IDRweDtcblx0Ym94LXNoYWRvdzogMCAycHggOHB4IHJnYmEoMCwgMCwgMCwgMC4xNSk7XG5cdHotaW5kZXg6IDEwMDA7XG5cdG1pbi13aWR0aDogMTIwcHg7XG59XG5cbi50YXNrLXRhYmxlLWNvbnRleHQtbWVudS1pdGVtIHtcblx0cGFkZGluZzogNnB4IDEycHg7XG5cdGN1cnNvcjogcG9pbnRlcjtcblx0dHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjFzIGVhc2U7XG59XG5cbi50YXNrLXRhYmxlLWNvbnRleHQtbWVudS1pdGVtOmhvdmVyIHtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3Zlcik7XG59XG5cbi8qIERhdGUgaW5wdXQgaW1wcm92ZW1lbnRzICovXG4udGFzay10YWJsZS1kYXRlLWlucHV0IHtcblx0Y3Vyc29yOiBwb2ludGVyO1xuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XG5cdGJvcmRlci1yYWRpdXM6IDNweDtcblx0cGFkZGluZzogNHB4IDhweDtcblx0d2lkdGg6IDEwMCU7XG59XG5cbi50YXNrLXRhYmxlLWRhdGUtaW5wdXQ6aG92ZXIge1xuXHRib3JkZXItY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyLWhvdmVyKTtcbn1cblxuLnRhc2stdGFibGUtZGF0ZS1pbnB1dDpmb2N1cyB7XG5cdGJvcmRlci1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcblx0b3V0bGluZTogbm9uZTtcbn1cblxuLyogQXV0b2NvbXBsZXRlIGlucHV0IGltcHJvdmVtZW50cyAqL1xuLnRhc2stdGFibGUtcHJvamVjdC1pbnB1dCxcbi50YXNrLXRhYmxlLWNvbnRleHQtaW5wdXQsXG4udGFzay10YWJsZS10YWdzLWlucHV0IHtcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xuXHRib3JkZXItcmFkaXVzOiAzcHg7XG5cdHBhZGRpbmc6IDRweCA4cHg7XG5cdHdpZHRoOiAxMDAlO1xufVxuXG4udGFzay10YWJsZS1wcm9qZWN0LWlucHV0OmZvY3VzLFxuLnRhc2stdGFibGUtY29udGV4dC1pbnB1dDpmb2N1cyxcbi50YXNrLXRhYmxlLXRhZ3MtaW5wdXQ6Zm9jdXMge1xuXHRib3JkZXItY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XG5cdG91dGxpbmU6IG5vbmU7XG59XG5cbi8qIFJvdyBzZWxlY3Rpb24gaW1wcm92ZW1lbnRzICovXG4udGFzay10YWJsZS1yb3cuc2VsZWN0ZWQge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyKTtcbn1cblxuLnRhc2stdGFibGUtcm93OmhvdmVyIHtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3Zlci13ZWFrKTtcbn1cblxuLyogUmVzcG9uc2l2ZSBpbXByb3ZlbWVudHMgKi9cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xuXHQudGFzay10YWJsZSB7XG5cdFx0Zm9udC1zaXplOiAwLjllbTtcblx0fVxuXG5cdHRoW2RhdGEtY29sdW1uLWlkPVwicm93TnVtYmVyXCJdIHtcblx0XHRtYXgtd2lkdGg6IDQwcHggIWltcG9ydGFudDtcblx0XHRtaW4td2lkdGg6IDQwcHggIWltcG9ydGFudDtcblx0XHR3aWR0aDogNDBweCAhaW1wb3J0YW50O1xuXHR9XG5cblx0LnRhc2stdGFibGUtdHJlZS1jb250YWluZXIge1xuXHRcdGdhcDogMCAhaW1wb3J0YW50O1xuXHR9XG5cblx0LnRhc2stdGFibGUtZXhwYW5kLWJ0biB7XG5cdFx0bWFyZ2luLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG5cdH1cblxuXHR0ZFtkYXRhLWNvbHVtbi1pZD1cInJvd051bWJlclwiXSB7XG5cdFx0bWF4LXdpZHRoOiA0MHB4ICFpbXBvcnRhbnQ7XG5cdFx0bWluLXdpZHRoOiA0MHB4ICFpbXBvcnRhbnQ7XG5cdFx0d2lkdGg6IDQwcHggIWltcG9ydGFudDtcblx0fVxuXG5cdC50YXNrLXRhYmxlLWhlYWRlci1jZWxsLFxuXHQudGFzay10YWJsZS1jZWxsIHtcblx0XHRwYWRkaW5nOiA2cHggNHB4O1xuXHR9XG59XG5cbi8qIFRhc2sgVGFibGUgSGVhZGVyIEJhciBTdHlsZXMgKi9cbi50YXNrLXRhYmxlLWhlYWRlci1iYXIge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdHBhZGRpbmc6IDZweCA4cHg7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcblx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcblx0Ym9yZGVyLXJhZGl1czogNnB4IDZweCAwIDA7XG5cdG1hcmdpbi1ib3R0b206IDA7XG5cdGZsZXgtc2hyaW5rOiAwO1xuXHRtaW4taGVpZ2h0OiA0MHB4O1xufVxuXG4udGFibGUtaGVhZGVyLWxlZnQge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRnYXA6IDEycHg7XG59XG5cbi50YWJsZS1oZWFkZXItcmlnaHQge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRnYXA6IDhweDtcbn1cblxuLyogVGFzayBDb3VudCBEaXNwbGF5ICovXG4udGFzay1jb3VudC1jb250YWluZXIge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRnYXA6IDhweDtcblx0cGFkZGluZzogNnB4IDEycHg7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XG5cdGJvcmRlci1yYWRpdXM6IDRweDtcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xufVxuXG4udGFzay1jb3VudC10ZXh0IHtcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsKTtcblx0Zm9udC13ZWlnaHQ6IDUwMDtcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcbn1cblxuLyogQ29udHJvbCBCdXR0b25zICovXG4udGFibGUtY29udHJvbHMtY29udGFpbmVyIHtcblx0ZGlzcGxheTogZmxleDtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0Z2FwOiA4cHg7XG59XG5cbi50YWJsZS1jb250cm9sLWJ0biB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdGdhcDogNnB4O1xuXHRwYWRkaW5nOiA4cHggMTJweDtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xuXHRib3JkZXItcmFkaXVzOiA0cHg7XG5cdGN1cnNvcjogcG9pbnRlcjtcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsKTtcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcblx0dHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZTtcblxuXHRib3gtc2hhZG93OiB1bnNldCAhaW1wb3J0YW50O1xufVxuXG4udGFibGUtY29udHJvbC1idG46aG92ZXIge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyKTtcbn1cblxuLnRhYmxlLWNvbnRyb2wtYnRuOmFjdGl2ZSB7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYWN0aXZlKTtcbn1cblxuLnRyZWUtbW9kZS1idG4uYWN0aXZlIHtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGV4dC1hY2NlbnQpO1xuXHRjb2xvcjogdmFyKC0tdGV4dC1vbi1hY2NlbnQpO1xuXHRib3JkZXItY29sb3I6IHZhcigtLXRleHQtYWNjZW50KTtcbn1cblxuLnRyZWUtbW9kZS1pY29uLFxuLnJlZnJlc2gtaWNvbixcbi5jb2x1bW4taWNvbiB7XG5cdGZvbnQtc2l6ZTogMTRweDtcblx0ZGlzcGxheTogZmxleDtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG5cbi50cmVlLW1vZGUtdGV4dCxcbi5yZWZyZXNoLXRleHQsXG4uY29sdW1uLXRleHQge1xuXHRmb250LXdlaWdodDogNTAwO1xufVxuXG4uZHJvcGRvd24tYXJyb3cge1xuXHRmb250LXNpemU6IDEwcHg7XG5cdHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjJzIGVhc2U7XG59XG5cbi8qIENvbHVtbiBEcm9wZG93biAqL1xuLmNvbHVtbi1kcm9wZG93biB7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmNvbHVtbi1kcm9wZG93bi1tZW51IHtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHR0b3A6IDEwMCU7XG5cdHJpZ2h0OiAwO1xuXHRtYXJnaW4tdG9wOiA0cHg7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcblx0Ym9yZGVyLXJhZGl1czogNHB4O1xuXHRib3gtc2hhZG93OiB2YXIoLS1zaGFkb3ctbCk7XG5cdHotaW5kZXg6IDEwMDA7XG5cdG1pbi13aWR0aDogMjAwcHg7XG5cdG1heC1oZWlnaHQ6IDMwMHB4O1xuXHRvdmVyZmxvdy15OiBhdXRvO1xufVxuXG4uY29sdW1uLXRvZ2dsZS1pdGVtIHtcblx0ZGlzcGxheTogZmxleDtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0Z2FwOiA4cHg7XG5cdHBhZGRpbmc6IDhweCAxMnB4O1xuXHRjdXJzb3I6IHBvaW50ZXI7XG5cdHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4ycyBlYXNlO1xufVxuXG4uY29sdW1uLXRvZ2dsZS1pdGVtOmhvdmVyIHtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3Zlcik7XG59XG5cbi5jb2x1bW4tdG9nZ2xlLWNoZWNrYm94IHtcblx0bWFyZ2luOiAwO1xuXHRjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi5jb2x1bW4tdG9nZ2xlLWxhYmVsIHtcblx0ZmxleDogMTtcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsKTtcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcblx0Y3Vyc29yOiBwb2ludGVyO1xuXHRtYXJnaW46IDA7XG59XG5cbi8qIFJlc3BvbnNpdmUgRGVzaWduIGZvciBIZWFkZXIgKi9cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xuXHQudGFzay10YWJsZS1oZWFkZXItYmFyIHtcblx0XHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRcdGdhcDogMTJweDtcblx0XHRhbGlnbi1pdGVtczogc3RyZXRjaDtcblx0fVxuXG5cdC50YWJsZS1oZWFkZXItbGVmdCB7XG5cdFx0ZGlzcGxheTogbm9uZTtcblx0fVxuXG5cdC50YWJsZS1oZWFkZXItbGVmdCxcblx0LnRhYmxlLWhlYWRlci1yaWdodCB7XG5cdFx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdH1cblxuXHQudGFibGUtY29udHJvbHMtY29udGFpbmVyIHtcblx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0XHRmbGV4LXdyYXA6IHdyYXA7XG5cdH1cblxuXHQudGFibGUtY29udHJvbC1idG4ge1xuXHRcdGZsZXg6IDE7XG5cdFx0bWluLXdpZHRoOiAxMDBweDtcblx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0fVxuXG5cdC5jb2x1bW4tZHJvcGRvd24tbWVudSB7XG5cdFx0cmlnaHQ6IGF1dG87XG5cdFx0bGVmdDogMDtcblx0XHR3aWR0aDogMTAwJTtcblx0fVxufVxuXG4vKiBEYXJrIE1vZGUgQWRqdXN0bWVudHMgZm9yIEhlYWRlciAqL1xuLnRoZW1lLWRhcmsgLnRhc2stdGFibGUtaGVhZGVyLWJhciB7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5LWFsdCk7XG59XG5cbi50aGVtZS1kYXJrIC5jb2x1bW4tZHJvcGRvd24tbWVudSB7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeS1hbHQpO1xuXHRib3JkZXItY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyLWhvdmVyKTtcbn1cblxuLyogQ3VzdG9tIEF1dG8tU3VnZ2VzdCBEcm9wZG93biAqL1xuLmN1c3RvbS1zdWdnZXN0LWRyb3Bkb3duIHtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xuXHRib3JkZXItcmFkaXVzOiA0cHg7XG5cdGJveC1zaGFkb3c6IHZhcigtLXNoYWRvdy1sKTtcblx0ei1pbmRleDogMTAwMDtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHRtYXgtaGVpZ2h0OiAyMDBweDtcblx0b3ZlcmZsb3cteTogYXV0bztcblx0bWluLXdpZHRoOiAxNTBweDtcbn1cblxuLmN1c3RvbS1zdWdnZXN0LWRyb3Bkb3duIC5zdWdnZXN0aW9uLWl0ZW0ge1xuXHRwYWRkaW5nOiA4cHggMTJweDtcblx0Y3Vyc29yOiBwb2ludGVyO1xuXHRib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xuXHR0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMnM7XG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbCk7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XG59XG5cbi5jdXN0b20tc3VnZ2VzdC1kcm9wZG93biAuc3VnZ2VzdGlvbi1pdGVtOmxhc3QtY2hpbGQge1xuXHRib3JkZXItYm90dG9tOiBub25lO1xufVxuXG4uY3VzdG9tLXN1Z2dlc3QtZHJvcGRvd24gLnN1Z2dlc3Rpb24taXRlbTpob3Zlcixcbi5jdXN0b20tc3VnZ2VzdC1kcm9wZG93biAuc3VnZ2VzdGlvbi1pdGVtLnNlbGVjdGVkIHtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3Zlcik7XG59XG5cbi5jdXN0b20tc3VnZ2VzdC1kcm9wZG93biAuc3VnZ2VzdGlvbi1pdGVtLnNlbGVjdGVkIHtcblx0Y29sb3I6IHZhcigtLXRleHQtYWNjZW50KTtcbn1cblxuLyogRW5oYW5jZWQgVHJlZSBWaWV3IFN0eWxlcyAqL1xuLnRhc2stdGFibGUtc3VidGFzayB7XG5cdGJvcmRlci1sZWZ0OiAycHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXItaG92ZXIpO1xufVxuXG4udGFzay10YWJsZS1wYXJlbnQgLnRhc2stdGFibGUtY2VsbDpmaXJzdC1jaGlsZCB7XG5cdGZvbnQtd2VpZ2h0OiA1MDA7XG59XG5cbi50YXNrLXRhYmxlLXN1YnRhc2stY2VsbCB7XG5cdGJvcmRlci1sZWZ0OiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXItZm9jdXMpO1xufVxuXG4udGFzay10YWJsZS10cmVlLWNvbnRhaW5lciB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdGdhcDogNnB4O1xuXHR3aWR0aDogMTAwJTtcbn1cblxuLnRhc2stdGFibGUtdHJlZS1zdHJ1Y3R1cmUge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRnYXA6IDJweDtcblx0ZmxleC1zaHJpbms6IDA7XG59XG5cbi50YXNrLXRhYmxlLXRyZWUtbGluZSB7XG5cdGZvbnQtZmFtaWx5OiBtb25vc3BhY2U7XG5cdGZvbnQtc2l6ZTogMTJweDtcblx0Y29sb3I6IHZhcigtLXRleHQtZmFpbnQpO1xuXHRsaW5lLWhlaWdodDogMTtcblx0d2lkdGg6IDE2cHg7XG5cdHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLnRhc2stdGFibGUtdHJlZS1jb25uZWN0b3Ige1xuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XG59XG5cbi50YXNrLXRhYmxlLXRyZWUtdmVydGljYWwge1xuXHRjb2xvcjogdmFyKC0tdGV4dC1mYWludCk7XG59XG5cbi50YXNrLXRhYmxlLXN1YnRhc2staW5kaWNhdG9yIHtcblx0Zm9udC1zaXplOiAxMHB4O1xuXHRjb2xvcjogdmFyKC0tdGV4dC1hY2NlbnQpO1xuXHRtYXJnaW4tcmlnaHQ6IDZweDtcblx0bWFyZ2luLWxlZnQ6IDRweDtcblx0ZmxleC1zaHJpbms6IDA7XG5cdGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4udGFzay10YWJsZS10b3AtbGV2ZWwtZXhwYW5kIHtcblx0bWFyZ2luLXJpZ2h0OiA2cHg7XG59XG5cbi50YXNrLXRhYmxlLWNvbnRlbnQtd3JhcHBlciB7XG5cdGZsZXg6IDE7XG5cdG1pbi13aWR0aDogMDtcbn1cblxuLnRhc2stdGFibGUtY2hpbGQtaW5kaWNhdG9yIHtcblx0Zm9udC1zaXplOiAxMHB4O1xuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XG5cdG1hcmdpbi1sZWZ0OiA2cHg7XG5cdGZsZXgtc2hyaW5rOiAwO1xufVxuXG4vKiBFbmhhbmNlZCBTdGF0dXMgQ2VsbCAqL1xuLnRhc2stdGFibGUtc3RhdHVzLmNsaWNrYWJsZS1zdGF0dXMge1xuXHRjdXJzb3I6IHBvaW50ZXI7XG5cdHBhZGRpbmc6IDRweDtcblx0Ym9yZGVyLXJhZGl1czogNHB4O1xuXHR0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMnM7XG59XG5cbi50YXNrLXRhYmxlLXN0YXR1cy5jbGlja2FibGUtc3RhdHVzOmhvdmVyIHtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3Zlcik7XG59XG5cbi8qIEVuaGFuY2VkIFByaW9yaXR5IEljb25zICovXG4udGFzay10YWJsZS1wcmlvcml0eS1pY29uLmhpZ2hlc3Qge1xuXHRjb2xvcjogdmFyKC0tdGV4dC1lcnJvcik7XG5cdGZpbHRlcjogYnJpZ2h0bmVzcygxLjIpO1xufVxuXG4udGFzay10YWJsZS1wcmlvcml0eS1pY29uLmxvd2VzdCB7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LWZhaW50KTtcbn1cblxuLyogVHJlZSBleHBhbmQgYnV0dG9uIGltcHJvdmVtZW50cyAqL1xuLnRhc2stdGFibGUtZXhwYW5kLWJ0bi5jbGlja2FibGUtaWNvbiB7XG5cdG9wYWNpdHk6IDAuNztcblx0dHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzLCBiYWNrZ3JvdW5kLWNvbG9yIDAuMnM7XG59XG5cbi50YXNrLXRhYmxlLWV4cGFuZC1idG4uY2xpY2thYmxlLWljb246aG92ZXIge1xuXHRvcGFjaXR5OiAxO1xufVxuXG4vKiBPdmVycmlkZSBleGlzdGluZyB0cmVlIGluZGVudGF0aW9uIHRvIHVzZSBuZXcgc3lzdGVtICovXG4udGFzay10YWJsZS1yb3ctbGV2ZWwtMSAudGFzay10YWJsZS1jZWxsOmZpcnN0LWNoaWxkLFxuLnRhc2stdGFibGUtcm93LWxldmVsLTIgLnRhc2stdGFibGUtY2VsbDpmaXJzdC1jaGlsZCxcbi50YXNrLXRhYmxlLXJvdy1sZXZlbC0zIC50YXNrLXRhYmxlLWNlbGw6Zmlyc3QtY2hpbGQsXG4udGFzay10YWJsZS1yb3ctbGV2ZWwtNCAudGFzay10YWJsZS1jZWxsOmZpcnN0LWNoaWxkLFxuLnRhc2stdGFibGUtcm93LWxldmVsLTUgLnRhc2stdGFibGUtY2VsbDpmaXJzdC1jaGlsZCB7XG5cdHBhZGRpbmctbGVmdDogMTJweDsgLyogUmVzZXQgdG8gbm9ybWFsIHBhZGRpbmcsIGxldCB0cmVlIHN0cnVjdHVyZSBoYW5kbGUgaW5kZW50YXRpb24gKi9cbn1cbiIsICIvKiBUYXNrIEdlbml1cyAtIFF1YWRyYW50IFZpZXcgU3R5bGVzICovXHJcblxyXG4vKiBNYWluIFF1YWRyYW50IENvbnRhaW5lciAqL1xyXG4udGctcXVhZHJhbnQtY29tcG9uZW50LWNvbnRhaW5lciB7XHJcblx0aGVpZ2h0OiAxMDAlO1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XHJcblx0d2lkdGg6IDEwMCU7XHJcbn1cclxuXHJcbi8qIEhlYWRlciBTZWN0aW9uICovXHJcbi50Zy1xdWFkcmFudC1oZWFkZXIge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTMpIHZhcigtLXNpemUtNC00KTtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xyXG5cdGZsZXgtc2hyaW5rOiAwO1xyXG59XHJcblxyXG4udGctcXVhZHJhbnQtdGl0bGUge1xyXG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1tZWRpdW0pO1xyXG5cdGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXNlbWlib2xkKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG5cdG1hcmdpbjogMDtcclxufVxyXG5cclxuLnRnLXF1YWRyYW50LWNvbnRyb2xzIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0Z2FwOiB2YXIoLS1zaXplLTItMyk7XHJcbn1cclxuXHJcbi50Zy1xdWFkcmFudC1zb3J0LXNlbGVjdCB7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS0yLTIpIHZhcigtLXNpemUtMi0zKTtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpO1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGwpO1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHR0cmFuc2l0aW9uOiBib3JkZXItY29sb3IgMC4ycyBlYXNlO1xyXG59XHJcblxyXG4udGctcXVhZHJhbnQtc29ydC1zZWxlY3Q6aG92ZXIge1xyXG5cdGJvcmRlci1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXItaG92ZXIpO1xyXG59XHJcblxyXG4udGctcXVhZHJhbnQtc29ydC1zZWxlY3Q6Zm9jdXMge1xyXG5cdGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItYWNjZW50KTtcclxuXHRvdXRsaW5lOiBub25lO1xyXG59XHJcblxyXG4udGctcXVhZHJhbnQtdG9nZ2xlLWVtcHR5IHtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTItMik7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zKTtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0dHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZTtcclxuXHR3aWR0aDogMjhweDtcclxuXHRoZWlnaHQ6IDI4cHg7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG59XHJcblxyXG4udGctcXVhZHJhbnQtdG9nZ2xlLWVtcHR5OmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG5cdGJvcmRlci1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXItaG92ZXIpO1xyXG59XHJcblxyXG4vKiBGaWx0ZXIgU2VjdGlvbiAqL1xyXG4udGctcXVhZHJhbnQtZmlsdGVyLWNvbnRhaW5lciB7XHJcblx0ZmxleC1zaHJpbms6IDA7XHJcblx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxufVxyXG5cclxuLyogUXVhZHJhbnQgR3JpZCAqL1xyXG4udGctcXVhZHJhbnQtZ3JpZCB7XHJcblx0ZGlzcGxheTogZ3JpZDtcclxuXHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnI7XHJcblx0Z3JpZC10ZW1wbGF0ZS1yb3dzOiAxZnIgMWZyO1xyXG5cdGdhcDogMXB4O1xyXG5cdGZsZXg6IDE7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcbn1cclxuXHJcbi8qIEluZGl2aWR1YWwgUXVhZHJhbnQgQ29sdW1ucyAqL1xyXG4udGctcXVhZHJhbnQtY29sdW1uIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcclxuXHRtaW4taGVpZ2h0OiAwO1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG59XHJcblxyXG4udGctcXVhZHJhbnQtY29sdW1uLS1oaWRkZW4ge1xyXG5cdGRpc3BsYXk6IG5vbmU7XHJcbn1cclxuXHJcbi8qIFF1YWRyYW50IEhlYWRlcnMgKi9cclxuLnRnLXF1YWRyYW50LWNvbHVtbiAudGctcXVhZHJhbnQtaGVhZGVyIHtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtMikgdmFyKC0tc2l6ZS00LTMpO1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcclxuXHRib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGZsZXgtc2hyaW5rOiAwO1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRtaW4taGVpZ2h0OiB2YXIoLS1zaXplLTQtMTIpO1xyXG59XHJcblxyXG4udGctcXVhZHJhbnQtdGl0bGUtY29udGFpbmVyIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0Z2FwOiB2YXIoLS1zaXplLTItMik7XHJcblx0bWFyZ2luLWJvdHRvbTogdmFyKC0tc2l6ZS0yLTEpO1xyXG59XHJcblxyXG4udGctcXVhZHJhbnQtcHJpb3JpdHkge1xyXG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1tZWRpdW0pO1xyXG5cdGxpbmUtaGVpZ2h0OiAxO1xyXG5cdG9wYWNpdHk6IDAuODtcclxufVxyXG5cclxuLnRnLXF1YWRyYW50LWNvbHVtbiAudGctcXVhZHJhbnQtdGl0bGUge1xyXG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbCk7XHJcblx0Zm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtc2VtaWJvbGQpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcblx0bWFyZ2luOiAwO1xyXG59XHJcblxyXG4udGctcXVhZHJhbnQtZGVzY3JpcHRpb24ge1xyXG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbGVyKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0bWFyZ2luLWJvdHRvbTogdmFyKC0tc2l6ZS0yLTIpO1xyXG5cdGxpbmUtaGVpZ2h0OiAxLjM7XHJcbn1cclxuXHJcbi50Zy1xdWFkcmFudC1jb3VudCB7XHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsZXIpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LWZhaW50KTtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS0yLTEpIHZhcigtLXNpemUtMi0yKTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XHJcblx0Zm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtbWVkaXVtKTtcclxufVxyXG5cclxuLyogUXVhZHJhbnQgQ29udGVudCBBcmVhcyAqL1xyXG4udGctcXVhZHJhbnQtY29sdW1uLWNvbnRlbnQge1xyXG5cdGZsZXg6IDE7XHJcblx0b3ZlcmZsb3cteTogYXV0bztcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTItMyk7XHJcblx0bWluLWhlaWdodDogMTAwcHg7XHJcbn1cclxuXHJcbi50Zy1xdWFkcmFudC1jb2x1bW4tY29udGVudDo6LXdlYmtpdC1zY3JvbGxiYXIge1xyXG5cdHdpZHRoOiA4cHg7XHJcbn1cclxuXHJcbi50Zy1xdWFkcmFudC1jb2x1bW4tY29udGVudDo6LXdlYmtpdC1zY3JvbGxiYXItdHJhY2sge1xyXG5cdGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG59XHJcblxyXG4udGctcXVhZHJhbnQtY29sdW1uLWNvbnRlbnQ6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iIHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpO1xyXG59XHJcblxyXG4udGctcXVhZHJhbnQtY29sdW1uLWNvbnRlbnQ6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlci1ob3Zlcik7XHJcbn1cclxuXHJcbi50Zy1xdWFkcmFudC1jb2x1bW4tY29udGVudC0tZHJvcC1hY3RpdmUge1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpO1xyXG5cdGJvcmRlcjogMnB4IGRhc2hlZCB2YXIoLS1jb2xvci1hY2NlbnQpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1tKTtcclxufVxyXG5cclxuLyogUXVhZHJhbnQgU3BlY2lmaWMgU3R5bGluZyAtIFN1YnRsZSBhY2NlbnQgYmFycyAqL1xyXG4ucXVhZHJhbnQtdXJnZW50LWltcG9ydGFudCAudGctcXVhZHJhbnQtaGVhZGVyOjpiZWZvcmUge1xyXG5cdGNvbnRlbnQ6IFwiXCI7XHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdHRvcDogMDtcclxuXHRsZWZ0OiAwO1xyXG5cdHJpZ2h0OiAwO1xyXG5cdGhlaWdodDogM3B4O1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLXRleHQtZXJyb3IpO1xyXG5cdG9wYWNpdHk6IDAuNjtcclxufVxyXG5cclxuLnF1YWRyYW50LW5vdC11cmdlbnQtaW1wb3J0YW50IC50Zy1xdWFkcmFudC1oZWFkZXI6OmJlZm9yZSB7XHJcblx0Y29udGVudDogXCJcIjtcclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0dG9wOiAwO1xyXG5cdGxlZnQ6IDA7XHJcblx0cmlnaHQ6IDA7XHJcblx0aGVpZ2h0OiAzcHg7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tY29sb3ItYWNjZW50KTtcclxuXHRvcGFjaXR5OiAwLjY7XHJcbn1cclxuXHJcbi5xdWFkcmFudC11cmdlbnQtbm90LWltcG9ydGFudCAudGctcXVhZHJhbnQtaGVhZGVyOjpiZWZvcmUge1xyXG5cdGNvbnRlbnQ6IFwiXCI7XHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdHRvcDogMDtcclxuXHRsZWZ0OiAwO1xyXG5cdHJpZ2h0OiAwO1xyXG5cdGhlaWdodDogM3B4O1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLXRleHQtd2FybmluZyk7XHJcblx0b3BhY2l0eTogMC42O1xyXG59XHJcblxyXG4ucXVhZHJhbnQtbm90LXVyZ2VudC1ub3QtaW1wb3J0YW50IC50Zy1xdWFkcmFudC1oZWFkZXI6OmJlZm9yZSB7XHJcblx0Y29udGVudDogXCJcIjtcclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0dG9wOiAwO1xyXG5cdGxlZnQ6IDA7XHJcblx0cmlnaHQ6IDA7XHJcblx0aGVpZ2h0OiAzcHg7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0b3BhY2l0eTogMC40O1xyXG59XHJcblxyXG4vKiBUYXNrIENhcmRzICovXHJcbi50Zy1xdWFkcmFudC1jYXJkIHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XHJcblx0bWFyZ2luLWJvdHRvbTogdmFyKC0tc2l6ZS0yLTMpO1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtNC0yKTtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0dHJhbnNpdGlvbjogYWxsIDAuMTVzIGVhc2U7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG59XHJcblxyXG4udGctcXVhZHJhbnQtY2FyZDpob3ZlciB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3Zlcik7XHJcblx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlci1ob3Zlcik7XHJcblx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xcHgpO1xyXG5cdGJveC1zaGFkb3c6IHZhcigtLXNoYWRvdy1zKTtcclxufVxyXG5cclxuLnRnLXF1YWRyYW50LWNhcmQ6YWN0aXZlIHtcclxuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XHJcbn1cclxuXHJcbi50Zy1xdWFkcmFudC1jYXJkOmxhc3QtY2hpbGQge1xyXG5cdG1hcmdpbi1ib3R0b206IDA7XHJcbn1cclxuXHJcbi8qIENhcmQgSGVhZGVyICovXHJcbi50Zy1xdWFkcmFudC1jYXJkLWhlYWRlciB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogZmxleC1zdGFydDtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblx0bWFyZ2luLWJvdHRvbTogdmFyKC0tc2l6ZS0yLTIpO1xyXG5cdGdhcDogdmFyKC0tc2l6ZS0yLTIpO1xyXG59XHJcblxyXG4udGctcXVhZHJhbnQtY2FyZC1jaGVja2JveCB7XHJcblx0ZmxleC1zaHJpbms6IDA7XHJcblx0bWFyZ2luLXRvcDogMnB4O1xyXG59XHJcblxyXG4udGctcXVhZHJhbnQtY2FyZC1hY3Rpb25zIHtcclxuXHRmbGV4LXNocmluazogMDtcclxuXHRvcGFjaXR5OiAwO1xyXG5cdHRyYW5zaXRpb246IG9wYWNpdHkgMC4ycyBlYXNlO1xyXG59XHJcblxyXG4udGctcXVhZHJhbnQtY2FyZDpob3ZlciAudGctcXVhZHJhbnQtY2FyZC1hY3Rpb25zIHtcclxuXHRvcGFjaXR5OiAxO1xyXG59XHJcblxyXG4udGctcXVhZHJhbnQtY2FyZC1tb3JlLWJ0biB7XHJcblx0YmFja2dyb3VuZDogbm9uZTtcclxuXHRib3JkZXI6IG5vbmU7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS0yLTEpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2U7XHJcblx0d2lkdGg6IDI0cHg7XHJcblx0aGVpZ2h0OiAyNHB4O1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxufVxyXG5cclxuLnRnLXF1YWRyYW50LWNhcmQtbW9yZS1idG46aG92ZXIge1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcbn1cclxuXHJcbi8qIENhcmQgQ29udGVudCAqL1xyXG4udGctcXVhZHJhbnQtY2FyZC1jb250ZW50IHtcclxuXHRtYXJnaW4tYm90dG9tOiB2YXIoLS1zaXplLTItMik7XHJcbn1cclxuXHJcbi50Zy1xdWFkcmFudC1jYXJkLXRpdGxlIHtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGwpO1xyXG5cdGxpbmUtaGVpZ2h0OiAxLjQ7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxuXHRtYXJnaW4tYm90dG9tOiB2YXIoLS1zaXplLTItMSk7XHJcblx0d29yZC13cmFwOiBicmVhay13b3JkO1xyXG5cdGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LW5vcm1hbCk7XHJcbn1cclxuXHJcbi50Zy1xdWFkcmFudC1jYXJkLXByaW9yaXR5IHtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGwpO1xyXG5cdG1hcmdpbi1sZWZ0OiB2YXIoLS1zaXplLTItMSk7XHJcblx0b3BhY2l0eTogMC44O1xyXG59XHJcblxyXG4udGctcXVhZHJhbnQtY2FyZC10YWdzIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtd3JhcDogd3JhcDtcclxuXHRnYXA6IHZhcigtLXNpemUtMi0xKTtcclxuXHRtYXJnaW4tdG9wOiB2YXIoLS1zaXplLTItMik7XHJcbn1cclxuXHJcbi50Zy1xdWFkcmFudC1jYXJkLXRhZyB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTItMSkgdmFyKC0tc2l6ZS0yLTIpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zKTtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGxlcik7XHJcblx0Zm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtbWVkaXVtKTtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcclxuXHR0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlO1xyXG59XHJcblxyXG4udGctcXVhZHJhbnQtY2FyZC10YWc6aG92ZXIge1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcbn1cclxuXHJcbi50Zy1xdWFkcmFudC10YWctLXVyZ2VudCB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1lcnJvcik7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtZXJyb3IpO1xyXG5cdGJvcmRlci1jb2xvcjogdmFyKC0tdGV4dC1lcnJvcik7XHJcbn1cclxuXHJcbi50Zy1xdWFkcmFudC10YWctLWltcG9ydGFudCB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1hY2NlbnQpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LWFjY2VudCk7XHJcblx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1hY2NlbnQpO1xyXG59XHJcblxyXG4vKiBDYXJkIE1ldGFkYXRhICovXHJcbi50Zy1xdWFkcmFudC1jYXJkLW1ldGFkYXRhIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbGVyKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1mYWludCk7XHJcblx0Z2FwOiB2YXIoLS1zaXplLTItMik7XHJcbn1cclxuXHJcbi50Zy1xdWFkcmFudC1jYXJkLWR1ZS1kYXRlIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0Z2FwOiB2YXIoLS1zaXplLTItMSk7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtMi0xKSB2YXIoLS1zaXplLTItMik7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpO1xyXG5cdGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LW1lZGl1bSk7XHJcbn1cclxuXHJcbi50Zy1xdWFkcmFudC1jYXJkLWR1ZS1kYXRlLWljb24ge1xyXG5cdHdpZHRoOiAxMnB4O1xyXG5cdGhlaWdodDogMTJweDtcclxuXHRvcGFjaXR5OiAwLjc7XHJcbn1cclxuXHJcbi50Zy1xdWFkcmFudC1jYXJkLWR1ZS1kYXRlLS11cmdlbnQge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LXdhcm5pbmcpO1xyXG59XHJcblxyXG4udGctcXVhZHJhbnQtY2FyZC1kdWUtZGF0ZS0tb3ZlcmR1ZSB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtZXJyb3IpO1xyXG59XHJcblxyXG4udGctcXVhZHJhbnQtY2FyZC1maWxlLWluZm8ge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblx0Z2FwOiB2YXIoLS1zaXplLTQtMik7XHJcblx0b3BhY2l0eTogMC43O1xyXG5cdHRyYW5zaXRpb246IG9wYWNpdHkgMC4ycyBlYXNlO1xyXG59XHJcblxyXG4udGctcXVhZHJhbnQtY2FyZDpob3ZlciAudGctcXVhZHJhbnQtY2FyZC1maWxlLWluZm8ge1xyXG5cdG9wYWNpdHk6IDE7XHJcbn1cclxuXHJcbi50Zy1xdWFkcmFudC1jYXJkLWZpbGUtaWNvbiB7XHJcblx0d2lkdGg6IDEycHg7XHJcblx0aGVpZ2h0OiAxMnB4O1xyXG59XHJcblxyXG4udGctcXVhZHJhbnQtY2FyZC1maWxlLW5hbWUge1xyXG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbGVyKTtcclxuXHRtYXgtd2lkdGg6IDEyMHB4O1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcblx0dGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XHJcblx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcclxufVxyXG5cclxuLnRnLXF1YWRyYW50LWNhcmQtbGluZSB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtZmFpbnQpO1xyXG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbGVyKTtcclxuXHRvcGFjaXR5OiAwLjY7XHJcblx0Zm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtbWVkaXVtKTtcclxufVxyXG5cclxuLyogUHJpb3JpdHkgQ2xhc3NlcyAtIFN1YnRsZSBsZWZ0IGJvcmRlciAqL1xyXG4udGctcXVhZHJhbnQtY2FyZC0tcHJpb3JpdHktaGlnaGVzdCB7XHJcblx0Ym9yZGVyLWxlZnQ6IDNweCBzb2xpZCB2YXIoLS10ZXh0LWVycm9yKTtcclxufVxyXG5cclxuLnRnLXF1YWRyYW50LWNhcmQtLXByaW9yaXR5LWhpZ2gge1xyXG5cdGJvcmRlci1sZWZ0OiAzcHggc29saWQgdmFyKC0tdGV4dC13YXJuaW5nKTtcclxufVxyXG5cclxuLnRnLXF1YWRyYW50LWNhcmQtLXByaW9yaXR5LW1lZGl1bSB7XHJcblx0Ym9yZGVyLWxlZnQ6IDNweCBzb2xpZCB2YXIoLS1jb2xvci1hY2NlbnQpO1xyXG59XHJcblxyXG4udGctcXVhZHJhbnQtY2FyZC0tcHJpb3JpdHktbG93IHtcclxuXHRib3JkZXItbGVmdDogM3B4IHNvbGlkIHZhcigtLXRleHQtc3VjY2Vzcyk7XHJcbn1cclxuXHJcbi50Zy1xdWFkcmFudC1jYXJkLS1wcmlvcml0eS1sb3dlc3Qge1xyXG5cdGJvcmRlci1sZWZ0OiAzcHggc29saWQgdmFyKC0tdGV4dC1tdXRlZCk7XHJcbn1cclxuXHJcbi8qIERyYWcgYW5kIERyb3AgU3RhdGVzICovXHJcbi50Zy1xdWFkcmFudC1jYXJkLS1naG9zdCB7XHJcblx0b3BhY2l0eTogMC40O1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRib3JkZXI6IDJweCBkYXNoZWQgdmFyKC0tY29sb3ItYWNjZW50KTtcclxufVxyXG5cclxuLnRnLXF1YWRyYW50LWNhcmQtLWRyYWdnaW5nIHtcclxuXHQvKiBTdHlsZSBmb3IgdGhlIGNsb25lIGJlaW5nIGRyYWdnZWQgLSBmb2xsb3dpbmcga2FuYmFuIHBhdHRlcm4gKi9cclxuXHRib3gtc2hhZG93OiB2YXIoLS1zaGFkb3ctbCk7IC8qIE1vcmUgcHJvbWluZW50IHNoYWRvdyAqL1xyXG59XHJcblxyXG4vKiBSZW1vdmUgb2xkIGRyYWcgY2xhc3NlcyB0aGF0IGFyZSBubyBsb25nZXIgdXNlZCAqL1xyXG4udGctcXVhZHJhbnQtY2FyZC0tY2hvc2VuIHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyKTtcclxuXHRib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLWFjY2VudCk7XHJcblx0Ym94LXNoYWRvdzogdmFyKC0tc2hhZG93LXMpO1xyXG59XHJcblxyXG4udGctcXVhZHJhbnQtY2FyZC0tZHJhZyB7XHJcblx0Ym94LXNoYWRvdzogdmFyKC0tc2hhZG93LWwpO1xyXG5cdHotaW5kZXg6IDEwMDA7XHJcblx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1hY2NlbnQpO1xyXG59XHJcblxyXG4vKiBFbXB0eSBTdGF0ZSAqL1xyXG4udGctcXVhZHJhbnQtZW1wdHktc3RhdGUge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdGhlaWdodDogMTIwcHg7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtZmFpbnQpO1xyXG5cdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtNCk7XHJcblx0b3BhY2l0eTogMC44O1xyXG59XHJcblxyXG4udGctcXVhZHJhbnQtZW1wdHktaWNvbiB7XHJcblx0d2lkdGg6IDMycHg7XHJcblx0aGVpZ2h0OiAzMnB4O1xyXG5cdG1hcmdpbi1ib3R0b206IHZhcigtLXNpemUtMi0zKTtcclxuXHRvcGFjaXR5OiAwLjU7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtZmFpbnQpO1xyXG59XHJcblxyXG4udGctcXVhZHJhbnQtZW1wdHktbWVzc2FnZSB7XHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsKTtcclxuXHRsaW5lLWhlaWdodDogMS40O1xyXG5cdGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LW1lZGl1bSk7XHJcbn1cclxuXHJcbi8qIFJlc3BvbnNpdmUgRGVzaWduICovXHJcbkBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xyXG5cdC50Zy1xdWFkcmFudC1ncmlkIHtcclxuXHRcdGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xyXG5cdFx0Z3JpZC10ZW1wbGF0ZS1yb3dzOiByZXBlYXQoNCwgMWZyKTtcclxuXHR9XHJcblxyXG5cdC50Zy1xdWFkcmFudC1oZWFkZXIge1xyXG5cdFx0cGFkZGluZzogdmFyKC0tc2l6ZS0yLTMpIHZhcigtLXNpemUtNC0yKTtcclxuXHR9XHJcblxyXG5cdC50Zy1xdWFkcmFudC1jb2x1bW4gLnRnLXF1YWRyYW50LWhlYWRlciB7XHJcblx0XHRwYWRkaW5nOiB2YXIoLS1zaXplLTItMykgdmFyKC0tc2l6ZS00LTIpO1xyXG5cdH1cclxuXHJcblx0LnRnLXF1YWRyYW50LWNhcmQge1xyXG5cdFx0cGFkZGluZzogdmFyKC0tc2l6ZS0yLTMpO1xyXG5cdH1cclxuXHJcblx0LnRnLXF1YWRyYW50LWNhcmQtdGl0bGUge1xyXG5cdFx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsZXIpO1xyXG5cdH1cclxuXHJcblx0LnRnLXF1YWRyYW50LWNvbnRyb2xzIHtcclxuXHRcdGdhcDogdmFyKC0tc2l6ZS0yLTIpO1xyXG5cdH1cclxufVxyXG5cclxuLyogRm9jdXMgc3RhdGVzIGZvciBhY2Nlc3NpYmlsaXR5ICovXHJcbi50Zy1xdWFkcmFudC1jYXJkOmZvY3VzIHtcclxuXHRvdXRsaW5lOiAycHggc29saWQgdmFyKC0tY29sb3ItYWNjZW50KTtcclxuXHRvdXRsaW5lLW9mZnNldDogMnB4O1xyXG59XHJcblxyXG4udGctcXVhZHJhbnQtY2FyZC1tb3JlLWJ0bjpmb2N1cyB7XHJcblx0b3V0bGluZTogMnB4IHNvbGlkIHZhcigtLWNvbG9yLWFjY2VudCk7XHJcblx0b3V0bGluZS1vZmZzZXQ6IDJweDtcclxufVxyXG5cclxuLyogQW5pbWF0aW9uIGZvciBzbW9vdGggaW50ZXJhY3Rpb25zICovXHJcbkBrZXlmcmFtZXMgY2FyZENvbXBsZXRlIHtcclxuXHQwJSB7XHJcblx0XHR0cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG5cdH1cclxuXHQ1MCUge1xyXG5cdFx0dHJhbnNmb3JtOiBzY2FsZSgxLjA1KTtcclxuXHR9XHJcblx0MTAwJSB7XHJcblx0XHR0cmFuc2Zvcm06IHNjYWxlKDEpO1xyXG5cdH1cclxufVxyXG5cclxuLnRnLXF1YWRyYW50LWNhcmQtLWNvbXBsZXRlZCB7XHJcblx0YW5pbWF0aW9uOiBjYXJkQ29tcGxldGUgMC4zcyBlYXNlLWluLW91dDtcclxufVxyXG5cclxuLyogSW1wcm92ZWQgaG92ZXIgc3RhdGVzICovXHJcbi50Zy1xdWFkcmFudC1jYXJkOmhvdmVyIC50Zy1xdWFkcmFudC1jYXJkLXRpdGxlIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG59XHJcblxyXG4udGctcXVhZHJhbnQtY2FyZDpob3ZlciAudGctcXVhZHJhbnQtY2FyZC1wcmlvcml0eSB7XHJcblx0b3BhY2l0eTogMTtcclxufVxyXG5cclxuLyogQmV0dGVyIHZpc3VhbCBoaWVyYXJjaHkgKi9cclxuLnRnLXF1YWRyYW50LWNhcmQtY29udGVudCB7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG59XHJcblxyXG4vKiBMYXp5IGxvYWRpbmcgc3R5bGVzICovXHJcbi50Zy1xdWFkcmFudC1sb2FkaW5nIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHRwYWRkaW5nOiAycmVtO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRtaW4taGVpZ2h0OiAxMDBweDtcclxufVxyXG5cclxuLnRnLXF1YWRyYW50LWxvYWRpbmctc3Bpbm5lciB7XHJcblx0bWFyZ2luLWJvdHRvbTogMXJlbTtcclxufVxyXG5cclxuLnRnLXF1YWRyYW50LXNwaW5uZXIge1xyXG5cdHdpZHRoOiAyNHB4O1xyXG5cdGhlaWdodDogMjRweDtcclxuXHRjb2xvcjogdmFyKC0tY29sb3ItYWNjZW50KTtcclxufVxyXG5cclxuLnRnLXF1YWRyYW50LWxvYWRpbmctbWVzc2FnZSB7XHJcblx0Zm9udC1zaXplOiAwLjlyZW07XHJcblx0b3BhY2l0eTogMC43O1xyXG59XHJcblxyXG4vKiBFbmhhbmNlZCBkcmFnIGFuZCBkcm9wIHN0eWxlcyAqL1xyXG4udGctcXVhZHJhbnQtZHJhZ2dpbmcge1xyXG5cdGN1cnNvcjogZ3JhYmJpbmcgIWltcG9ydGFudDtcclxufVxyXG5cclxuLnRnLXF1YWRyYW50LWRyYWdnaW5nICoge1xyXG5cdHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG59XHJcblxyXG4udGctcXVhZHJhbnQtY2FyZC0tZ2hvc3Qge1xyXG5cdG9wYWNpdHk6IDAuNDtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Ym9yZGVyOiAycHggZGFzaGVkIHZhcigtLWNvbG9yLWFjY2VudCk7XHJcbn1cclxuXHJcbi50Zy1xdWFkcmFudC1jYXJkLS1jaG9zZW4ge1xyXG5cdGJveC1zaGFkb3c6IDAgOHB4IDI1cHggcmdiYSgwLCAwLCAwLCAwLjE1KTtcclxuXHR0cmFuc2Zvcm06IHNjYWxlKDEuMDIpO1xyXG5cdHotaW5kZXg6IDEwMDA7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcclxuXHRib3JkZXI6IDJweCBzb2xpZCB2YXIoLS1jb2xvci1hY2NlbnQpO1xyXG59XHJcblxyXG4udGctcXVhZHJhbnQtY2FyZC0tZHJhZyB7XHJcblx0b3BhY2l0eTogMC44O1xyXG5cdGJveC1zaGFkb3c6IDAgMTJweCAzMHB4IHJnYmEoMCwgMCwgMCwgMC4yKTtcclxufVxyXG5cclxuLnRnLXF1YWRyYW50LWNhcmQtLWZhbGxiYWNrIHtcclxuXHRvcGFjaXR5OiAwLjk7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcclxuXHRib3JkZXI6IDJweCBzb2xpZCB2YXIoLS1jb2xvci1hY2NlbnQpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1tKTtcclxuXHRib3gtc2hhZG93OiAwIDhweCAyNXB4IHJnYmEoMCwgMCwgMCwgMC4xNSk7XHJcbn1cclxuXHJcbi50Zy1xdWFkcmFudC1jb2x1bW4tLWRyYWctdGFyZ2V0IHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyKTtcclxuXHRib3JkZXI6IDJweCBkYXNoZWQgdmFyKC0tY29sb3ItYWNjZW50KTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtbSk7XHJcbn1cclxuXHJcbi50Zy1xdWFkcmFudC1jb2x1bW4tY29udGVudC0tZHJvcC1hY3RpdmUge1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYWN0aXZlLWhvdmVyKTtcclxuXHRib3JkZXI6IDJweCBkYXNoZWQgdmFyKC0tY29sb3ItYWNjZW50KTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XHJcblx0bWluLWhlaWdodDogNjBweDtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcbn1cclxuXHJcbi50Zy1xdWFkcmFudC1jb2x1bW4tY29udGVudC0tZHJvcC1hY3RpdmU6OmJlZm9yZSB7XHJcblx0Y29udGVudDogXCJEcm9wIHRhc2sgaGVyZVwiO1xyXG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHR0b3A6IDUwJTtcclxuXHRsZWZ0OiA1MCU7XHJcblx0dHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XHJcblx0Y29sb3I6IHZhcigtLWNvbG9yLWFjY2VudCk7XHJcblx0Zm9udC1zaXplOiAwLjlyZW07XHJcblx0Zm9udC13ZWlnaHQ6IDUwMDtcclxuXHRvcGFjaXR5OiAwLjc7XHJcblx0cG9pbnRlci1ldmVudHM6IG5vbmU7XHJcblx0ei1pbmRleDogMTtcclxufVxyXG5cclxuLyogRmVlZGJhY2sgc3R5bGVzICovXHJcbi50Zy1xdWFkcmFudC11cGRhdGUtZmVlZGJhY2sge1xyXG5cdHBvc2l0aW9uOiBmaXhlZDtcclxuXHR0b3A6IDIwcHg7XHJcblx0cmlnaHQ6IDIwcHg7XHJcblx0ei1pbmRleDogMTAwMDA7XHJcblx0b3BhY2l0eTogMDtcclxuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSk7XHJcblx0dHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcclxuXHRwb2ludGVyLWV2ZW50czogbm9uZTtcclxufVxyXG5cclxuLnRnLXF1YWRyYW50LWZlZWRiYWNrLS1zaG93IHtcclxuXHRvcGFjaXR5OiAxO1xyXG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcclxufVxyXG5cclxuLnRnLXF1YWRyYW50LWZlZWRiYWNrLS1oaWRlIHtcclxuXHRvcGFjaXR5OiAwO1xyXG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKTtcclxufVxyXG5cclxuLnRnLXF1YWRyYW50LWZlZWRiYWNrLWNvbnRlbnQge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRnYXA6IDAuNXJlbTtcclxuXHRwYWRkaW5nOiAwLjc1cmVtIDFyZW07XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLW0pO1xyXG5cdGJveC1zaGFkb3c6IDAgNHB4IDEycHggcmdiYSgwLCAwLCAwLCAwLjEpO1xyXG5cdG1pbi13aWR0aDogMjAwcHg7XHJcbn1cclxuXHJcbi50Zy1xdWFkcmFudC1mZWVkYmFjay0tZXJyb3IgLnRnLXF1YWRyYW50LWZlZWRiYWNrLWNvbnRlbnQge1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItZXJyb3IpO1xyXG5cdGJvcmRlci1jb2xvcjogdmFyKC0tdGV4dC1lcnJvcik7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtZXJyb3IpO1xyXG59XHJcblxyXG4udGctcXVhZHJhbnQtZmVlZGJhY2staWNvbiB7XHJcblx0Zm9udC1zaXplOiAxLjJyZW07XHJcblx0ZmxleC1zaHJpbms6IDA7XHJcbn1cclxuXHJcbi50Zy1xdWFkcmFudC1mZWVkYmFjay10ZXh0IHtcclxuXHRmb250LXNpemU6IDAuOXJlbTtcclxuXHRmb250LXdlaWdodDogNTAwO1xyXG59XHJcblxyXG4vKiBFbmhhbmNlZCBjYXJkIGludGVyYWN0aW9ucyAqL1xyXG4udGctcXVhZHJhbnQtY2FyZCB7XHJcblx0dHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZTtcclxuXHRjdXJzb3I6IGdyYWI7XHJcbn1cclxuXHJcbi50Zy1xdWFkcmFudC1jYXJkOmhvdmVyIHtcclxuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTJweCk7XHJcblx0Ym94LXNoYWRvdzogMCA0cHggMTJweCByZ2JhKDAsIDAsIDAsIDAuMSk7XHJcbn1cclxuXHJcbi50Zy1xdWFkcmFudC1jYXJkOmFjdGl2ZSB7XHJcblx0Y3Vyc29yOiBncmFiYmluZztcclxufVxyXG5cclxuLyogSW1wcm92ZWQgZW1wdHkgc3RhdGUgKi9cclxuLnRnLXF1YWRyYW50LWVtcHR5LXN0YXRlIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHRwYWRkaW5nOiAycmVtIDFyZW07XHJcblx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRtaW4taGVpZ2h0OiAxMjBweDtcclxuXHRib3JkZXI6IDJweCBkYXNoZWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1tKTtcclxuXHRtYXJnaW46IDAuNXJlbSAwO1xyXG59XHJcblxyXG4udGctcXVhZHJhbnQtZW1wdHktaWNvbiB7XHJcblx0bWFyZ2luLWJvdHRvbTogMC43NXJlbTtcclxuXHRvcGFjaXR5OiAwLjU7XHJcbn1cclxuXHJcbi50Zy1xdWFkcmFudC1lbXB0eS1tZXNzYWdlIHtcclxuXHRmb250LXNpemU6IDAuOXJlbTtcclxuXHRsaW5lLWhlaWdodDogMS40O1xyXG5cdG1heC13aWR0aDogMjAwcHg7XHJcbn1cclxuXHJcbi8qIExvYWRpbmcgYW5pbWF0aW9uICovXHJcbkBrZXlmcmFtZXMgc3BpbiB7XHJcblx0MCUge1xyXG5cdFx0dHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XHJcblx0fVxyXG5cdDEwMCUge1xyXG5cdFx0dHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcclxuXHR9XHJcbn1cclxuXHJcbi50Zy1xdWFkcmFudC1zcGlubmVyIGNpcmNsZSB7XHJcblx0YW5pbWF0aW9uOiBzcGluIDJzIGxpbmVhciBpbmZpbml0ZTtcclxuXHR0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XHJcbn1cclxuXHJcbi8qIFJlc3BvbnNpdmUgYWRqdXN0bWVudHMgKi9cclxuQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XHJcblx0LnRnLXF1YWRyYW50LXVwZGF0ZS1mZWVkYmFjayB7XHJcblx0XHR0b3A6IDEwcHg7XHJcblx0XHRyaWdodDogMTBweDtcclxuXHRcdGxlZnQ6IDEwcHg7XHJcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpO1xyXG5cdH1cclxuXHJcblx0LnRnLXF1YWRyYW50LWZlZWRiYWNrLS1zaG93IHtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcclxuXHR9XHJcblxyXG5cdC50Zy1xdWFkcmFudC1mZWVkYmFjay0taGlkZSB7XHJcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpO1xyXG5cdH1cclxuXHJcblx0LnRnLXF1YWRyYW50LWZlZWRiYWNrLWNvbnRlbnQge1xyXG5cdFx0bWluLXdpZHRoOiBhdXRvO1xyXG5cdFx0d2lkdGg6IDEwMCU7XHJcblx0fVxyXG59XHJcblxyXG4vKiBEYXJrIG1vZGUgYWRqdXN0bWVudHMgKi9cclxuLnRoZW1lLWRhcmsgLnRnLXF1YWRyYW50LWNhcmQtLWNob3NlbiB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5LWFsdCk7XHJcblx0Ym94LXNoYWRvdzogMCA4cHggMjVweCByZ2JhKDAsIDAsIDAsIDAuMyk7XHJcbn1cclxuXHJcbi50aGVtZS1kYXJrIC50Zy1xdWFkcmFudC1jYXJkLS1mYWxsYmFjayB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5LWFsdCk7XHJcblx0Ym94LXNoYWRvdzogMCA4cHggMjVweCByZ2JhKDAsIDAsIDAsIDAuMyk7XHJcbn1cclxuXHJcbi50aGVtZS1kYXJrIC50Zy1xdWFkcmFudC1mZWVkYmFjay1jb250ZW50IHtcclxuXHRib3gtc2hhZG93OiAwIDRweCAxMnB4IHJnYmEoMCwgMCwgMCwgMC4zKTtcclxufVxyXG5cclxuLyogQWNjZXNzaWJpbGl0eSBpbXByb3ZlbWVudHMgKi9cclxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcclxuXHQudGctcXVhZHJhbnQtY2FyZCxcclxuXHQudGctcXVhZHJhbnQtdXBkYXRlLWZlZWRiYWNrLFxyXG5cdC50Zy1xdWFkcmFudC1jYXJkLS1jaG9zZW4sXHJcblx0LnRnLXF1YWRyYW50LWNhcmQtLWRyYWcge1xyXG5cdFx0dHJhbnNpdGlvbjogbm9uZTtcclxuXHRcdGFuaW1hdGlvbjogbm9uZTtcclxuXHR9XHJcblxyXG5cdC50Zy1xdWFkcmFudC1zcGlubmVyIGNpcmNsZSB7XHJcblx0XHRhbmltYXRpb246IG5vbmU7XHJcblx0fVxyXG59XHJcblxyXG4vKiBTY3JvbGwgY29udGFpbmVyIHN0eWxlcyAqL1xyXG4udGctcXVhZHJhbnQtc2Nyb2xsLWNvbnRhaW5lciB7XHJcblx0ZmxleDogMTtcclxuXHRvdmVyZmxvdy15OiBhdXRvO1xyXG5cdG92ZXJmbG93LXg6IGhpZGRlbjtcclxuXHRtYXgtaGVpZ2h0OiA3MHZoO1xyXG5cdHNjcm9sbGJhci13aWR0aDogdGhpbjtcclxuXHRzY3JvbGxiYXItY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKSB0cmFuc3BhcmVudDtcclxufVxyXG5cclxuLnRnLXF1YWRyYW50LXNjcm9sbC1jb250YWluZXI6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcclxuXHR3aWR0aDogNnB4O1xyXG59XHJcblxyXG4udGctcXVhZHJhbnQtc2Nyb2xsLWNvbnRhaW5lcjo6LXdlYmtpdC1zY3JvbGxiYXItdHJhY2sge1xyXG5cdGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG59XHJcblxyXG4udGctcXVhZHJhbnQtc2Nyb2xsLWNvbnRhaW5lcjo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWIge1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRib3JkZXItcmFkaXVzOiAzcHg7XHJcbn1cclxuXHJcbi50Zy1xdWFkcmFudC1zY3JvbGwtY29udGFpbmVyOjotd2Via2l0LXNjcm9sbGJhci10aHVtYjpob3ZlciB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXItaG92ZXIpO1xyXG59XHJcblxyXG4vKiBMb2FkIG1vcmUgaW5kaWNhdG9yIHN0eWxlcyAqL1xyXG4udGctcXVhZHJhbnQtbG9hZC1tb3JlIHtcclxuXHRkaXNwbGF5OiBub25lO1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHRwYWRkaW5nOiAxcmVtO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdG1hcmdpbi10b3A6IDAuNXJlbTtcclxufVxyXG5cclxuLnRnLXF1YWRyYW50LWxvYWQtbW9yZS0tdmlzaWJsZSB7XHJcblx0ZGlzcGxheTogZmxleDtcclxufVxyXG5cclxuLnRnLXF1YWRyYW50LWxvYWQtbW9yZS1zcGlubmVyIHtcclxuXHRtYXJnaW4tYm90dG9tOiAwLjVyZW07XHJcblx0d2lkdGg6IDI0cHg7XHJcblx0aGVpZ2h0OiAyNHB4O1xyXG5cdGNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG59XHJcblxyXG4vKiBBbmltYXRlIHRoZSBPYnNpZGlhbiBsb2FkZXIgaWNvbiAqL1xyXG4udGctcXVhZHJhbnQtbG9hZC1tb3JlLXNwaW5uZXIgc3ZnIHtcclxuXHRhbmltYXRpb246IHNwaW4gMXMgbGluZWFyIGluZmluaXRlO1xyXG59XHJcblxyXG4udGctcXVhZHJhbnQtbG9hZC1tb3JlLW1lc3NhZ2Uge1xyXG5cdGZvbnQtc2l6ZTogMC44cmVtO1xyXG5cdG9wYWNpdHk6IDAuNztcclxufVxyXG5cclxuLyogQ29sdW1uIGxheW91dCBhZGp1c3RtZW50cyBmb3Igc2Nyb2xsaW5nICovXHJcbi50Zy1xdWFkcmFudC1jb2x1bW4ge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRoZWlnaHQ6IDEwMCU7XHJcblx0bWluLWhlaWdodDogNDAwcHg7XHJcblx0bWF4LWhlaWdodDogODB2aDtcclxufVxyXG5cclxuLnRnLXF1YWRyYW50LWNvbHVtbi1jb250ZW50IHtcclxuXHRmbGV4OiAxO1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRnYXA6IDAuNXJlbTtcclxuXHRwYWRkaW5nOiAwLjVyZW07XHJcbn1cclxuXHJcbi8qIFNtb290aCBzY3JvbGxpbmcgKi9cclxuLnRnLXF1YWRyYW50LXNjcm9sbC1jb250YWluZXIge1xyXG5cdHNjcm9sbC1iZWhhdmlvcjogc21vb3RoO1xyXG59XHJcblxyXG4vKiBMb2FkaW5nIHN0YXRlcyBkdXJpbmcgc2Nyb2xsICovXHJcbi50Zy1xdWFkcmFudC1jb2x1bW4ubG9hZGluZy1tb3JlIC50Zy1xdWFkcmFudC1sb2FkLW1vcmUge1xyXG5cdG9wYWNpdHk6IDE7XHJcblx0cG9pbnRlci1ldmVudHM6IG5vbmU7XHJcbn1cclxuXHJcbi8qIEludGVyc2VjdGlvbiBvYnNlcnZlciB0YXJnZXQgc3R5bGluZyAqL1xyXG4udGctcXVhZHJhbnQtbG9hZC1tb3JlIHtcclxuXHRtaW4taGVpZ2h0OiA0MHB4O1xyXG5cdHRyYW5zaXRpb246IG9wYWNpdHkgMC4ycyBlYXNlO1xyXG59XHJcblxyXG4vKiBFbmhhbmNlZCBlbXB0eSBzdGF0ZSBmb3Igc2Nyb2xsYWJsZSBjb250ZW50ICovXHJcbi50Zy1xdWFkcmFudC1jb2x1bW4tY29udGVudDplbXB0eTo6YmVmb3JlIHtcclxuXHRjb250ZW50OiBcIlwiO1xyXG5cdGRpc3BsYXk6IGJsb2NrO1xyXG5cdG1pbi1oZWlnaHQ6IDEwMHB4O1xyXG59XHJcblxyXG4vKiBHcmlkIGxheW91dCBhZGp1c3RtZW50cyAqL1xyXG4udGctcXVhZHJhbnQtZ3JpZCB7XHJcblx0ZGlzcGxheTogZ3JpZDtcclxuXHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCAxZnIpO1xyXG5cdGhlaWdodDogY2FsYygxMDB2aCAtIDIwMHB4KTtcclxuXHRtaW4taGVpZ2h0OiA0MDBweDtcclxufVxyXG5cclxuLyogUmVzcG9uc2l2ZSBzY3JvbGwgY29udGFpbmVyIGhlaWdodHMgKi9cclxuQG1lZGlhIChtYXgtd2lkdGg6IDEyMDBweCkge1xyXG5cdC50Zy1xdWFkcmFudC1zY3JvbGwtY29udGFpbmVyIHtcclxuXHRcdG1heC1oZWlnaHQ6IDYwdmg7XHJcblx0fVxyXG5cclxuXHQudGctcXVhZHJhbnQtY29sdW1uIHtcclxuXHRcdG1heC1oZWlnaHQ6IDcwdmg7XHJcblx0fVxyXG59XHJcblxyXG5AbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcclxuXHQudGctcXVhZHJhbnQtc2Nyb2xsLWNvbnRhaW5lciB7XHJcblx0XHRtYXgtaGVpZ2h0OiA1MHZoO1xyXG5cdH1cclxuXHJcblx0LnRnLXF1YWRyYW50LWNvbHVtbiB7XHJcblx0XHRtYXgtaGVpZ2h0OiA2MHZoO1xyXG5cdFx0bWluLWhlaWdodDogMzAwcHg7XHJcblx0fVxyXG5cclxuXHQudGctcXVhZHJhbnQtZ3JpZCB7XHJcblx0XHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcclxuXHRcdGhlaWdodDogYXV0bztcclxuXHR9XHJcbn1cclxuXHJcbi8qIFBlcmZvcm1hbmNlIG9wdGltaXphdGlvbnMgKi9cclxuLnRnLXF1YWRyYW50LWNvbHVtbi1jb250ZW50IHtcclxuXHRjb250YWluOiBsYXlvdXQgc3R5bGU7XHJcblx0d2lsbC1jaGFuZ2U6IGNvbnRlbnRzO1xyXG59XHJcblxyXG4udGctcXVhZHJhbnQtY2FyZCB7XHJcblx0Y29udGFpbjogbGF5b3V0IHN0eWxlIHBhaW50O1xyXG59XHJcblxyXG4vKiBTY3JvbGwgaW5kaWNhdG9ycyAqL1xyXG4udGctcXVhZHJhbnQtc2Nyb2xsLWNvbnRhaW5lci5oYXMtc2Nyb2xsOjpiZWZvcmUge1xyXG5cdGNvbnRlbnQ6IFwiXCI7XHJcblx0cG9zaXRpb246IHN0aWNreTtcclxuXHR0b3A6IDA7XHJcblx0aGVpZ2h0OiAxcHg7XHJcblx0YmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KFxyXG5cdFx0dG8gYm90dG9tLFxyXG5cdFx0dmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KSxcclxuXHRcdHRyYW5zcGFyZW50XHJcblx0KTtcclxuXHR6LWluZGV4OiAxO1xyXG59XHJcblxyXG4udGctcXVhZHJhbnQtc2Nyb2xsLWNvbnRhaW5lci5oYXMtc2Nyb2xsOjphZnRlciB7XHJcblx0Y29udGVudDogXCJcIjtcclxuXHRwb3NpdGlvbjogc3RpY2t5O1xyXG5cdGJvdHRvbTogMDtcclxuXHRoZWlnaHQ6IDFweDtcclxuXHRiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gdG9wLCB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpLCB0cmFuc3BhcmVudCk7XHJcblx0ei1pbmRleDogMTtcclxufVxyXG4iLCAiLyogVGFzayBUaW1lciBXaWRnZXQgU3R5bGVzIC0gU2ltcGxlIFRleHQtQmFzZWQgKi9cclxuXHJcbi50YXNrLXRpbWVyLXdpZGdldCB7XHJcblx0ZGlzcGxheTogYmxvY2s7XHJcblx0bWFyZ2luOiA0cHggMDtcclxuXHRwYWRkaW5nOiAycHggMDtcclxuXHRmb250LXNpemU6IDAuOWVtO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRsaW5lLWhlaWdodDogMS40O1xyXG59XHJcblxyXG4vKiBTdGFydCBidXR0b24gYW5kIGFjdGlvbiBsaW5rcyAqL1xyXG4udGFzay10aW1lci1zdGFydCxcclxuLnRhc2stdGltZXItYWN0aW9uIHtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0dGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtYWNjZW50KTtcclxufVxyXG5cclxuLnRhc2stdGltZXItc3RhcnQ6aG92ZXIsXHJcbi50YXNrLXRpbWVyLWFjdGlvbjpob3ZlciB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtYWNjZW50LWhvdmVyKTtcclxufSIsICIvKiBFeHBlcmltZW50YWwgU2V0dGluZ3MgKi9cbi5leHBlcmltZW50YWwtc2V0dGluZ3Mtc2VjdGlvbiB7XG5cdG1hcmdpbjogMjBweCAwO1xufVxuXG4uZXhwZXJpbWVudGFsLXNlY3Rpb24taGVhZGluZyB7XG5cdG1hcmdpbjogMjBweCAwIDEwcHggMDtcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcbn1cblxuLmV4cGVyaW1lbnRhbC1zdWJzZWN0aW9uLWhlYWRpbmcge1xuXHRtYXJnaW46IDE1cHggMCA4cHggMDtcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xuXHRmb250LXNpemU6IDAuOWVtO1xufVxuXG4uZXhwZXJpbWVudGFsLXdhcm5pbmcge1xuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWVycm9yKTtcblx0Y29sb3I6IHZhcigtLXRleHQtb24tYWNjZW50KTtcblx0cGFkZGluZzogMTJweDtcblx0Ym9yZGVyLXJhZGl1czogNnB4O1xuXHRtYXJnaW46IDEwcHggMCAyMHB4IDA7XG5cdGJvcmRlci1sZWZ0OiA0cHggc29saWQgdmFyKC0tY29sb3ItcmVkKTtcbn1cblxuLmV4cGVyaW1lbnRhbC1kYXRhZmxvdy1zZWN0aW9uIHtcblx0bWFyZ2luOiAxNXB4IDA7XG5cdHBhZGRpbmc6IDE1cHg7XG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcblx0Ym9yZGVyLXJhZGl1czogOHB4O1xufVxuXG4uZXhwZXJpbWVudGFsLWluZm8ge1xuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XG5cdGZvbnQtc2l6ZTogMC44NWVtO1xuXHRtYXJnaW4tdG9wOiA4cHg7XG5cdGxpbmUtaGVpZ2h0OiAxLjQ7XG59XG5cbi5leHBlcmltZW50YWwtcmVzdGFydC1ub3RpY2Uge1xuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWZvcm0tZmllbGQpO1xuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XG5cdHBhZGRpbmc6IDhweDtcblx0Ym9yZGVyLXJhZGl1czogNHB4O1xuXHRtYXJnaW4tdG9wOiAxMHB4O1xuXHRmb250LXNpemU6IDAuODVlbTtcbn1cblxuLyogQ2hlY2tib3ggU3RhdHVzIEN5Y2xlIG1hbmFnZW1lbnQgVUkgKi9cbi50YXNrLXN0YXRlcy1jb250YWluZXIge1xuXHRtYXJnaW46IDEwcHggMDtcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xuXHRib3JkZXItcmFkaXVzOiA1cHg7XG5cdHBhZGRpbmc6IDEwcHg7XG59XG5cbi50YXNrLXN0YXRlLXJvdyB7XG5cdG1hcmdpbi1ib3R0b206IDhweDtcbn1cblxuLnRhc2stc3RhdGUtcm93IC5zZXR0aW5nLWl0ZW0ge1xuXHRib3JkZXI6IG5vbmU7XG5cdHBhZGRpbmc6IDZweDtcblx0Ym9yZGVyLXJhZGl1czogNHB4O1xufVxuXG4udGFzay1zdGF0ZS1yb3cgLnNldHRpbmctaXRlbS1pbmZvIHtcblx0bWFyZ2luLXJpZ2h0OiAxMHB4O1xufVxuXG4udGFzay1zdGF0ZS1yb3cgLnNldHRpbmctaXRlbS1jb250cm9sIHtcblx0ZGlzcGxheTogZmxleDtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0anVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcblx0ZmxleC13cmFwOiBub3dyYXA7XG59XG5cbi50YXNrLXN0YXRlLXJvdyAuc2V0dGluZy1pdGVtLWNvbnRyb2wgaW5wdXRbdHlwZT1cInRleHRcIl0ge1xuXHRtYXJnaW4tcmlnaHQ6IDhweDtcbn1cblxuLnRhc2stc3RhdGUtcm93IC5leHRyYS1zZXR0aW5nLWJ1dHRvbiB7XG5cdHBhZGRpbmc6IDRweDtcblx0d2lkdGg6IDI0cHg7XG5cdGhlaWdodDogMjRweDtcblx0Ym9yZGVyLXJhZGl1czogNHB4O1xuXHRtYXJnaW4tbGVmdDogNHB4O1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cblxuLnRhc2stc3RhdGUtcm93IC5zZXR0aW5nLWl0ZW0tY29udHJvbCBidXR0b24ge1xuXHR3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG4udGFzay1zdGF0ZS1jb250YWluZXIge1xuXHRtYXJnaW4taW5saW5lLXN0YXJ0OiBjYWxjKHZhcigtLWNoZWNrYm94LXNpemUpICogLTEpO1xufVxuXG4udGFzay1zdGF0ZS1jb250YWluZXIgLnRhc2stc3RhdGUge1xuXHRwYWRkaW5nLWlubGluZS1zdGFydDogdmFyKC0tc2l6ZS0yLTEpO1xuXHRwYWRkaW5nLWlubGluZS1lbmQ6IHZhcigtLXNpemUtMi0yKTtcblxuXHR0ZXh0LWRlY29yYXRpb246IG5vbmUgIWltcG9ydGFudDtcblxuXHRjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi8qIEV4cGVyaW1lbnRhbCBTZXR0aW5ncyAqL1xuLmV4cGVyaW1lbnRhbC1zZXR0aW5ncy1zZWN0aW9uIHtcblx0bWFyZ2luOiAyMHB4IDA7XG59XG5cbi5leHBlcmltZW50YWwtc2VjdGlvbi1oZWFkaW5nIHtcblx0bWFyZ2luOiAyMHB4IDAgMTBweCAwO1xuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xufVxuXG4uZXhwZXJpbWVudGFsLXN1YnNlY3Rpb24taGVhZGluZyB7XG5cdG1hcmdpbjogMTVweCAwIDhweCAwO1xuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XG5cdGZvbnQtc2l6ZTogMC45ZW07XG59XG5cbi5leHBlcmltZW50YWwtd2FybmluZyB7XG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItZXJyb3IpO1xuXHRjb2xvcjogdmFyKC0tdGV4dC1vbi1hY2NlbnQpO1xuXHRwYWRkaW5nOiAxMnB4O1xuXHRib3JkZXItcmFkaXVzOiA2cHg7XG5cdG1hcmdpbjogMTBweCAwIDIwcHggMDtcblx0Ym9yZGVyLWxlZnQ6IDRweCBzb2xpZCB2YXIoLS1jb2xvci1yZWQpO1xufVxuXG4uZXhwZXJpbWVudGFsLWRhdGFmbG93LXNlY3Rpb24ge1xuXHRtYXJnaW46IDE1cHggMDtcblx0cGFkZGluZzogMTVweDtcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xuXHRib3JkZXItcmFkaXVzOiA4cHg7XG59XG5cbi5leHBlcmltZW50YWwtaW5mbyB7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcblx0Zm9udC1zaXplOiAwLjg1ZW07XG5cdG1hcmdpbi10b3A6IDhweDtcblx0bGluZS1oZWlnaHQ6IDEuNDtcbn1cblxuLmV4cGVyaW1lbnRhbC1yZXN0YXJ0LW5vdGljZSB7XG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItZm9ybS1maWVsZCk7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcblx0cGFkZGluZzogOHB4O1xuXHRib3JkZXItcmFkaXVzOiA0cHg7XG5cdG1hcmdpbi10b3A6IDEwcHg7XG5cdGZvbnQtc2l6ZTogMC44NWVtO1xufVxuXG4vKiBDaGVja2JveCBTdGF0dXMgQ3ljbGUgbWFuYWdlbWVudCBVSSAqL1xuLnRhc2stc3RhdGVzLWNvbnRhaW5lciB7XG5cdG1hcmdpbjogMTBweCAwO1xuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XG5cdGJvcmRlci1yYWRpdXM6IDVweDtcblx0cGFkZGluZzogMTBweDtcbn1cblxuLnRhc2stc3RhdGUtcm93IHtcblx0bWFyZ2luLWJvdHRvbTogOHB4O1xufVxuXG4udGFzay1zdGF0ZS1yb3cgLnNldHRpbmctaXRlbSB7XG5cdGJvcmRlcjogbm9uZTtcblx0cGFkZGluZzogNnB4O1xuXHRib3JkZXItcmFkaXVzOiA0cHg7XG59XG5cbi50YXNrLXN0YXRlLXJvdyAuc2V0dGluZy1pdGVtLWluZm8ge1xuXHRtYXJnaW4tcmlnaHQ6IDEwcHg7XG59XG5cbi50YXNrLXN0YXRlLXJvdyAuc2V0dGluZy1pdGVtLWNvbnRyb2wge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuXHRmbGV4LXdyYXA6IG5vd3JhcDtcbn1cblxuLnRhc2stc3RhdGUtcm93IC5zZXR0aW5nLWl0ZW0tY29udHJvbCBpbnB1dFt0eXBlPVwidGV4dFwiXSB7XG5cdG1hcmdpbi1yaWdodDogOHB4O1xufVxuXG4udGFzay1zdGF0ZS1yb3cgLmV4dHJhLXNldHRpbmctYnV0dG9uIHtcblx0cGFkZGluZzogNHB4O1xuXHR3aWR0aDogMjRweDtcblx0aGVpZ2h0OiAyNHB4O1xuXHRib3JkZXItcmFkaXVzOiA0cHg7XG5cdG1hcmdpbi1sZWZ0OiA0cHg7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuXG4udGFzay1zdGF0ZS1yb3cgLnNldHRpbmctaXRlbS1jb250cm9sIGJ1dHRvbiB7XG5cdHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cbi50YXNrLXN0YXRlLWNvbnRhaW5lciB7XG5cdG1hcmdpbi1pbmxpbmUtc3RhcnQ6IGNhbGModmFyKC0tY2hlY2tib3gtc2l6ZSkgKiAtMSk7XG59XG5cbi50YXNrLXN0YXRlLWNvbnRhaW5lciAudGFzay1zdGF0ZSB7XG5cdHBhZGRpbmctaW5saW5lLXN0YXJ0OiB2YXIoLS1zaXplLTItMSk7XG5cdHBhZGRpbmctaW5saW5lLWVuZDogdmFyKC0tc2l6ZS0yLTIpO1xuXG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xuXG5cdGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLyogQ2F0ZWdvcml6ZWQgdGFicyBjb250YWluZXIgKi9cbi50YXNrLWdlbml1cy1zZXR0aW5ncyAuc2V0dGluZ3MtdGFicy1jYXRlZ29yaXplZC1jb250YWluZXIge1xuXHRtYXJnaW4tdG9wOiB2YXIoLS1zaXplLTQtNCk7XG5cdG1hcmdpbi1ib3R0b206IHZhcigtLXNpemUtNC00KTtcblx0ZGlzcGxheTogZmxleDtcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0Z2FwOiB2YXIoLS1zaXplLTQtNik7XG59XG5cbi8qIENhdGVnb3J5IHNlY3Rpb24gKi9cbi50YXNrLWdlbml1cy1zZXR0aW5ncyAuc2V0dGluZ3MtY2F0ZWdvcnktc2VjdGlvbiB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdGdhcDogdmFyKC0tc2l6ZS00LTIpO1xufVxuXG4vKiBDYXRlZ29yeSBoZWFkZXIgKi9cbi50YXNrLWdlbml1cy1zZXR0aW5ncyAuc2V0dGluZ3MtY2F0ZWdvcnktaGVhZGVyIHtcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsKTtcblx0Zm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXNlbWlib2xkKTtcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xuXHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXHRsZXR0ZXItc3BhY2luZzogMC4wNWVtO1xuXHRwYWRkaW5nOiAwIHZhcigtLXNpemUtNC0yKTtcblx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcblx0cGFkZGluZy1ib3R0b206IHZhcigtLXNpemUtNC0xKTtcbn1cblxuLyogQ2F0ZWdvcnkgdGFicyBjb250YWluZXIgKi9cbi50YXNrLWdlbml1cy1zZXR0aW5ncyAuc2V0dGluZ3MtY2F0ZWdvcnktdGFicyB7XG5cdGRpc3BsYXk6IGdyaWQ7XG5cdGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDMsIG1pbm1heCgyMDBweCwgMWZyKSk7XG5cdGdhcDogdmFyKC0tc2l6ZS00LTIpO1xufVxuXG5AbWVkaWEgKG1heC13aWR0aDogMTIwMHB4KSB7XG5cdC50YXNrLWdlbml1cy1zZXR0aW5ncyAuc2V0dGluZ3MtY2F0ZWdvcnktdGFicyB7XG5cdFx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgbWlubWF4KDIwMHB4LCAxZnIpKTtcblx0fVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcblx0LnRhc2stZ2VuaXVzLXNldHRpbmdzIC5zZXR0aW5ncy1jYXRlZ29yeS10YWJzIHtcblx0XHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcblx0fVxufVxuXG4vKiBMZWdhY3kgdGFicyBjb250YWluZXIgKGZhbGxiYWNrKSAqL1xuLnRhc2stZ2VuaXVzLXNldHRpbmdzIC5zZXR0aW5ncy10YWJzLWNvbnRhaW5lciB7XG5cdGRpc3BsYXk6IGdyaWQ7XG5cdGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIDFmcik7XG5cdGdyaWQtYXV0by1yb3dzOiB2YXIoLS1zaXplLTQtMTgpO1xuXHRtYXJnaW4tdG9wOiB2YXIoLS1zaXplLTQtNCk7XG5cdG1hcmdpbi1ib3R0b206IHZhcigtLXNpemUtNC00KTtcblx0aGVpZ2h0OiBmaXQtY29udGVudDtcblx0Z2FwOiB2YXIoLS1zaXplLTQtNCk7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xuXHQudGFzay1nZW5pdXMtc2V0dGluZ3MgLnNldHRpbmdzLXRhYnMtY29udGFpbmVyIHtcblx0XHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgxLCAxZnIpO1xuXHR9XG59XG5cbi50YXNrLWdlbml1cy1zZXR0aW5ncyAuc2V0dGluZ3MtdGFiIHtcblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTMpIHZhcigtLXNpemUtNC00KTtcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLW0pO1xuXHRjdXJzb3I6IHBvaW50ZXI7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdGdhcDogdmFyKC0tc2l6ZS00LTIpO1xuXHRtaW4taGVpZ2h0OiB2YXIoLS1zaXplLTQtMTIpO1xuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0dHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZTtcbn1cblxuLnRhc2stZ2VuaXVzLXNldHRpbmdzIC5zZXR0aW5ncy10YWI6OmFmdGVyIHtcblx0Y29udGVudDogXCJcIjtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHR0b3A6IDEwcHg7XG5cdHJpZ2h0OiAtODBweDtcblx0d2lkdGg6IDIwMHB4O1xuXHRoZWlnaHQ6IDIwMHB4O1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeS1hbHQpO1xuXHR0cmFuc2Zvcm06IHJvdGF0ZVooLTE1ZGVnKTtcblx0ei1pbmRleDogMDtcblx0b3BhY2l0eTogMC43O1xuXHR0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtbSk7XG59XG5cbi50YXNrLWdlbml1cy1zZXR0aW5ncyAuc2V0dGluZ3MtdGFiOmhvdmVyOjphZnRlciB7XG5cdHRyYW5zZm9ybTogcm90YXRlWigtMTBkZWcpO1xuXHRvcGFjaXR5OiAwLjk7XG59XG5cbi50YXNrLWdlbml1cy1zZXR0aW5ncyAuc2V0dGluZ3MtdGFiLWFjdGl2ZTo6YWZ0ZXIge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xuXHRvcGFjaXR5OiAwLjM7XG59XG5cbi8qIFRhYiBjb250ZW50IHN0eWxpbmcgKi9cbi50YXNrLWdlbml1cy1zZXR0aW5ncyAuc2V0dGluZ3MtdGFiLWljb24sXG4udGFzay1nZW5pdXMtc2V0dGluZ3MgLnNldHRpbmdzLXRhYiBzcGFuLFxuLnRhc2stZ2VuaXVzLXNldHRpbmdzIC5zZXR0aW5ncy10YWItbGFiZWwge1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdHotaW5kZXg6IDE7XG59XG5cbi8qIEVuaGFuY2VkIHRhYiBpY29uIHN0eWxpbmcgZm9yIGNhdGVnb3JpemVkIGxheW91dCAqL1xuLnRhc2stZ2VuaXVzLXNldHRpbmdzIC5zZXR0aW5ncy1jYXRlZ29yeS10YWJzIC5zZXR0aW5ncy10YWItaWNvbiB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXHR3aWR0aDogdmFyKC0tc2l6ZS00LTQpO1xuXHRoZWlnaHQ6IHZhcigtLXNpemUtNC00KTtcblx0ZmxleC1zaHJpbms6IDA7XG59XG5cbi50YXNrLWdlbml1cy1zZXR0aW5ncyAuc2V0dGluZ3MtY2F0ZWdvcnktdGFicyAuc2V0dGluZ3MtdGFiLWljb24gc3ZnIHtcblx0d2lkdGg6IHZhcigtLWljb24tcyk7XG5cdGhlaWdodDogdmFyKC0taWNvbi1zKTtcbn1cblxuLyogRW5oYW5jZWQgdGFiIGxhYmVsIHN0eWxpbmcgZm9yIGNhdGVnb3JpemVkIGxheW91dCAqL1xuLnRhc2stZ2VuaXVzLXNldHRpbmdzIC5zZXR0aW5ncy1jYXRlZ29yeS10YWJzIC5zZXR0aW5ncy10YWItbGFiZWwge1xuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGwpO1xuXHRmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtbWVkaXVtKTtcblx0ZmxleDogMTtcblx0dGV4dC1hbGlnbjogbGVmdDtcbn1cblxuLyogRW5oYW5jZWQgaG92ZXIgYW5kIGFjdGl2ZSBzdGF0ZXMgZm9yIGNhdGVnb3JpemVkIHRhYnMgKi9cbi50YXNrLWdlbml1cy1zZXR0aW5ncyAuc2V0dGluZ3MtY2F0ZWdvcnktdGFicyAuc2V0dGluZ3MtdGFiOmhvdmVyIHtcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3Zlcik7XG5cdGJvcmRlci1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXItaG92ZXIpO1xuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTFweCk7XG5cdGJveC1zaGFkb3c6IHZhcigtLXNoYWRvdy1tKTtcbn1cblxuLnRhc2stZ2VuaXVzLXNldHRpbmdzIC5zZXR0aW5ncy1jYXRlZ29yeS10YWJzIC5zZXR0aW5ncy10YWItYWN0aXZlIHtcblx0YmFja2dyb3VuZDogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcblx0Y29sb3I6IHZhcigtLXRleHQtb24tYWNjZW50KTtcblx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xuXHRib3gtc2hhZG93OiB2YXIoLS1zaGFkb3ctbSk7XG5cdGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1zZW1pYm9sZCk7XG59XG5cbi50YXNrLWdlbml1cy1zZXR0aW5ncyAuc2V0dGluZ3MtY2F0ZWdvcnktdGFicyAuc2V0dGluZ3MtdGFiLWFjdGl2ZTpob3ZlciB7XG5cdGJhY2tncm91bmQ6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudC1ob3Zlcik7XG5cdGJvcmRlci1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50LWhvdmVyKTtcblx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xcHgpO1xufVxuXG4vKiBMZWdhY3kgdGFiIHN0eWxlcyAoZmFsbGJhY2spICovXG4udGFzay1nZW5pdXMtc2V0dGluZ3MgLnNldHRpbmdzLXRhYjpob3ZlciB7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpO1xufVxuXG4udGFzay1nZW5pdXMtc2V0dGluZ3MgLnNldHRpbmdzLXRhYi1hY3RpdmUge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlci1ob3Zlcik7XG5cdGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4udGFzay1nZW5pdXMtc2V0dGluZ3MgLnNldHRpbmdzLXRhYi1zZWN0aW9ucyB7XG5cdG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi50YXNrLWdlbml1cy1zZXR0aW5ncyAuc2V0dGluZ3MtdGFiLXNlY3Rpb24ge1xuXHRkaXNwbGF5OiBub25lO1xufVxuXG4udGFzay1nZW5pdXMtc2V0dGluZ3MgLnNldHRpbmdzLXRhYi1zZWN0aW9uLWFjdGl2ZSB7XG5cdGRpc3BsYXk6IGJsb2NrO1xufVxuXG4udGFzay1nZW5pdXMtc2V0dGluZ3MgLnNldHRpbmdzLXRhYi1zZWN0aW9uLWhlYWRlciB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXHRtYXJnaW4tdG9wOiB2YXIoLS1zaXplLTQtMik7XG5cdG1hcmdpbi1ib3R0b206IHZhcigtLXNpemUtNC00KTtcbn1cblxuLnRhc2stZ2VuaXVzLXNldHRpbmdzIC5zZXR0aW5ncy10YWItc2VjdGlvbi1oZWFkZXIgLmhlYWRlci1idXR0b24ge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0Z2FwOiA0cHg7XG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbCk7XG59XG5cbi50YXNrLWdlbml1cy1zZXR0aW5ncyAuc2V0dGluZ3MtdGFiLXNlY3Rpb24taGVhZGVyIC5oZWFkZXItYnV0dG9uLWljb24ge1xuXHQtLWljb24tc2l6ZTogMTZweDtcblxuXHRkaXNwbGF5OiBmbGV4O1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cblxuLyogVGFiIHNlY3Rpb24gaGVhZGVyIHZpc2liaWxpdHkgcnVsZXMgKi9cbi50YXNrLWdlbml1cy1zZXR0aW5ncyAuc2V0dGluZ3MtdGFiW2RhdGEtdGFiLWlkPVwiZ2VuZXJhbFwiXSB7XG5cdGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qIEhpZGUgY2F0ZWdvcml6ZWQgdGFicyBjb250YWluZXIgd2hlbiBhbnkgbm9uLWdlbmVyYWwgdGFiIGlzIGFjdGl2ZSAqL1xuLnRhc2stZ2VuaXVzLXNldHRpbmdzIC5zZXR0aW5ncy10YWJzLWNhdGVnb3JpemVkLWNvbnRhaW5lciB7XG5cdGRpc3BsYXk6IGZsZXg7XG59XG5cbi50YXNrLWdlbml1cy1zZXR0aW5nczpoYXMoXG5cdFx0LnNldHRpbmdzLXRhYi1zZWN0aW9uLWFjdGl2ZTpub3QoW2RhdGEtdGFiLWlkPVwiZ2VuZXJhbFwiXSlcblx0KVxuXHQuc2V0dGluZ3MtdGFicy1jYXRlZ29yaXplZC1jb250YWluZXIge1xuXHRkaXNwbGF5OiBub25lO1xufVxuXG4vKiBMZWdhY3kgdGFicyBjb250YWluZXIgdmlzaWJpbGl0eSAoZmFsbGJhY2spICovXG4udGFzay1nZW5pdXMtc2V0dGluZ3MgLnNldHRpbmdzLXRhYnMtY29udGFpbmVyIHtcblx0ZGlzcGxheTogbm9uZTtcbn1cblxuLyogU2hvdyBsZWdhY3kgdGFicyB3aGVuIGdlbmVyYWwgdGFiIGlzIGFjdGl2ZSAoZmFsbGJhY2sgYmVoYXZpb3IpICovXG4udGFzay1nZW5pdXMtc2V0dGluZ3M6aGFzKC5zZXR0aW5ncy10YWItYWN0aXZlW2RhdGEtdGFiLWlkPVwiZ2VuZXJhbFwiXSlcblx0LnNldHRpbmdzLXRhYnMtY29udGFpbmVyIHtcblx0ZGlzcGxheTogZ3JpZDtcbn1cblxuLyogU2V0dGluZ3MgaGVhZGVyIHZpc2liaWxpdHkgLSBoaWRlIHdoZW4gbm9uLWdlbmVyYWwgdGFiIGlzIGFjdGl2ZSAqL1xuLnRhc2stZ2VuaXVzLXNldHRpbmdzLWhlYWRlciB7XG5cdGRpc3BsYXk6IGJsb2NrO1xufVxuXG4udGFzay1nZW5pdXMtc2V0dGluZ3M6aGFzKFxuXHRcdC5zZXR0aW5ncy10YWItc2VjdGlvbi1hY3RpdmU6bm90KFtkYXRhLXRhYi1pZD1cImdlbmVyYWxcIl0pXG5cdClcblx0LnRhc2stZ2VuaXVzLXNldHRpbmdzLWhlYWRlciB7XG5cdGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qIEV4cHJlc3Npb24gZXhhbXBsZXMgaW4gc2V0dGluZ3MgKi9cbi5leHByZXNzaW9uLWV4YW1wbGVzIHtcblx0bWFyZ2luLXRvcDogOHB4O1xuXHRib3JkZXItcmFkaXVzOiA1cHg7XG59XG5cbi5leHByZXNzaW9uLWV4YW1wbGUtaXRlbSB7XG5cdG1hcmdpbi1ib3R0b206IHZhcigtLXNpemUtNC0zKTtcblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTIpO1xuXHRwYWRkaW5nLWxlZnQ6IHZhcigtLXNpemUtNC0zKTtcblx0cGFkZGluZy1yaWdodDogdmFyKC0tc2l6ZS00LTMpO1xuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XG5cdC8qIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7ICovXG5cdGRpc3BsYXk6IGZsZXg7XG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdGdhcDogNnB4O1xuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XG59XG5cbi5leHByZXNzaW9uLWV4YW1wbGUtbmFtZSB7XG5cdGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4uZXhwcmVzc2lvbi1leGFtcGxlLWNvZGUge1xuXHRwYWRkaW5nOiA0cHggOHB4O1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XG5cdGJvcmRlci1yYWRpdXM6IDRweDtcblx0Zm9udC1mYW1pbHk6IHZhcigtLWZvbnQtbW9ub3NwYWNlKTtcblx0Zm9udC1zaXplOiAwLjllbTtcblx0b3ZlcmZsb3ctd3JhcDogYnJlYWstd29yZDtcblx0dXNlci1zZWxlY3Q6IHRleHQ7XG59XG5cbi5leHByZXNzaW9uLWV4YW1wbGUtdXNlIHtcblx0YWxpZ24tc2VsZjogZmxleC1lbmQ7XG5cdG1hcmdpbi10b3A6IDRweDtcbn1cblxuLmN1c3RvbS1mb3JtYXQtdGV4dGFyZWEge1xuXHRoZWlnaHQ6IDIwMHB4O1xuXHR3aWR0aDogMTAwJTtcblx0Zm9udC1mYW1pbHk6IHZhcigtLWZvbnQtbW9ub3NwYWNlKTtcblx0cmVzaXplOiB2ZXJ0aWNhbDtcbn1cblxuLmN1c3RvbS1mb3JtYXQtcHJldmlldy1jb250YWluZXIge1xuXHRtYXJnaW4tYm90dG9tOiB2YXIoLS1zaXplLTQtMyk7XG5cdHBhZGRpbmc6IHZhcigtLXNpemUtNC0zKTtcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG59XG5cbi5jdXN0b20tZm9ybWF0LXByZXZpZXctbGFiZWwge1xuXHRmb250LXdlaWdodDogYm9sZDtcblx0bWFyZ2luLWJvdHRvbTogdmFyKC0tc2l6ZS00LTIpO1xuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XG59XG5cbi5jdXN0b20tZm9ybWF0LXByZXZpZXctY29udGVudCB7XG5cdHBhZGRpbmc6IHZhcigtLXNpemUtNC0yKTtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpO1xuXHRmb250LWZhbWlseTogdmFyKC0tZm9udC1pbnRlcmZhY2UpO1xufVxuXG4uY3VzdG9tLWZvcm1hdC1wbGFjZWhvbGRlci1pbmZvIHtcblx0bWFyZ2luLXRvcDogdmFyKC0tc2l6ZS00LTIpO1xuXHRtYXJnaW4tYm90dG9tOiB2YXIoLS1zaXplLTQtMik7XG5cblx0dXNlci1zZWxlY3Q6IHRleHQ7XG59XG5cbi5jdXN0b20tZm9ybWF0LXByZXZpZXctZXJyb3IsXG4uZXhwcmVzc2lvbi1wcmV2aWV3LWVycm9yIHtcblx0Y29sb3I6IHZhcigtLXRleHQtZXJyb3IpO1xufVxuXG4vKiDooajovr7lvI/npLrkvovpooTop4jmoLflvI8gKi9cbi5leHByZXNzaW9uLWV4YW1wbGUtcHJldmlldyB7XG5cdG1hcmdpbi10b3A6IHZhcigtLXNpemUtNC0yKTtcblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTIpO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnktYWx0KTtcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpO1xuXHRmb250LXNpemU6IDAuOWVtO1xufVxuXG4ucHJlc2V0LWZpbHRlcnMtY29udGFpbmVyIHtcblx0bWFyZ2luLXRvcDogMTBweDtcblx0cGFkZGluZzogOHB4O1xuXHRib3JkZXItcmFkaXVzOiA1cHg7XG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcbn1cblxuLnByZXNldC1maWx0ZXItcm93IHtcblx0bWFyZ2luLWJvdHRvbTogNXB4O1xuXHRib3JkZXItcmFkaXVzOiA0cHg7XG5cdHBhZGRpbmctdG9wOiB2YXIoLS1zaXplLTQtMik7XG5cdHBhZGRpbmctbGVmdDogdmFyKC0tc2l6ZS00LTIpO1xuXHRwYWRkaW5nLXJpZ2h0OiB2YXIoLS1zaXplLTQtMik7XG5cdHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4ycyBlYXNlO1xufVxuXG4ucHJlc2V0LWZpbHRlci1yb3c6aG92ZXIge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeS1hbHQpO1xufVxuXG4ubm8tcHJlc2V0cy1tZXNzYWdlIHtcblx0Zm9udC1zdHlsZTogaXRhbGljO1xuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XG5cdHRleHQtYWxpZ246IGNlbnRlcjtcblx0cGFkZGluZzogMTVweDtcbn1cblxuLnByZXNldC1zYXZlZC1tZXNzYWdlIHtcblx0Y29sb3I6IHZhcigtLXRleHQtYWNjZW50KTtcblx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG5cdHRleHQtYWxpZ246IGNlbnRlcjtcblx0cGFkZGluZzogNXB4O1xuXHRtYXJnaW4tdG9wOiA1cHg7XG5cdGFuaW1hdGlvbjogZmFkZUluIDAuM3MgZWFzZS1pbi1vdXQ7XG59XG5cbi50YXNrLWZpbHRlci1zYXZlLXByZXNldCB7XG5cdG1hcmdpbi10b3A6IDE1cHg7XG5cdHBhZGRpbmc6IDEwcHg7XG5cdGJvcmRlci1yYWRpdXM6IDVweDtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnktYWx0KTtcbn1cblxuLnRnLW1vZGFsLWJ1dHRvbi1jb250YWluZXIge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuXHRnYXA6IDEwcHg7XG5cdG1hcmdpbi10b3A6IDIwcHg7XG59XG5cbi50Zy1tb2RhbC1idXR0b24tY29udGFpbmVyIGJ1dHRvbiB7XG5cdHBhZGRpbmc6IDZweCAxMnB4O1xuXHRib3JkZXItcmFkaXVzOiA0cHg7XG5cdGZvbnQtc2l6ZTogMTRweDtcblx0Zm9udC13ZWlnaHQ6IDUwMDtcblx0Y3Vyc29yOiBwb2ludGVyO1xufVxuXG4udGctbW9kYWwtYnV0dG9uLWNvbnRhaW5lciBidXR0b24ubW9kLXdhcm5pbmcge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWVycm9yKTtcblx0Y29sb3I6IHdoaXRlO1xufVxuXG5Aa2V5ZnJhbWVzIGZhZGVJbiB7XG5cdGZyb20ge1xuXHRcdG9wYWNpdHk6IDA7XG5cdH1cblx0dG8ge1xuXHRcdG9wYWNpdHk6IDE7XG5cdH1cbn1cblxuLm1vZGFsLXdvcmtmbG93LWRlZmluaXRpb24ge1xuXHRtYXgtd2lkdGg6IDgwMHB4O1xuXHR3aWR0aDogOTB2dztcbn1cblxuLm1vZGFsLXN0YWdlLWRlZmluaXRpb24ge1xuXHRtYXgtd2lkdGg6IDgwMHB4O1xuXHR3aWR0aDogOTB2dztcbn1cblxuLyogV29ya2Zsb3cgc2V0dGluZ3MgcGFuZWwgaW1wcm92ZW1lbnRzICovXG4ud29ya2Zsb3ctY29udGFpbmVyIHtcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xuXHRib3JkZXItcmFkaXVzOiA1cHg7XG5cdHBhZGRpbmc6IDE1cHg7XG5cdG1heC1oZWlnaHQ6IDUwMHB4O1xuXHRvdmVyZmxvdy15OiBhdXRvO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xuXHRib3gtc2hhZG93OiAwIDFweCA0cHggcmdiYSgwLCAwLCAwLCAwLjA1KTtcbn1cblxuLndvcmtmbG93LXJvdyB7XG5cdG1hcmdpbi1ib3R0b206IDE1cHg7XG5cdHBhZGRpbmc6IDEycHg7XG5cdGJvcmRlci1yYWRpdXM6IDZweDtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnktYWx0KTtcblx0Ym94LXNoYWRvdzogMCAxcHggM3B4IHJnYmEoMCwgMCwgMCwgMC4wOCk7XG5cdGJvcmRlci1sZWZ0OiAzcHggc29saWQgdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcbn1cblxuLndvcmtmbG93LXJvdyAuc2V0dGluZy1pdGVtIHtcblx0Ym9yZGVyOiBub25lO1xuXHRwYWRkaW5nOiAwO1xufVxuXG4ud29ya2Zsb3ctcm93IC5zZXR0aW5nLWl0ZW0taW5mbyB7XG5cdHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbn1cblxuLndvcmtmbG93LXJvdyAuc2V0dGluZy1pdGVtLW5hbWUge1xuXHRmb250LXNpemU6IDE2cHg7XG5cdGZvbnQtd2VpZ2h0OiA2MDA7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XG59XG5cbi53b3JrZmxvdy1yb3cgLnNldHRpbmctaXRlbS1kZXNjcmlwdGlvbiB7XG5cdGZvbnQtc2l6ZTogMTNweDtcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xuXHRtYXJnaW4tdG9wOiA0cHg7XG59XG5cbi53b3JrZmxvdy1zdGFnZXMtaW5mbyB7XG5cdG1hcmdpbi10b3A6IDEycHg7XG5cdHBhZGRpbmc6IDhweCAwIDAgMDtcblx0Ym9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcbn1cblxuLndvcmtmbG93LXN0YWdlcy1saXN0IHtcblx0bGlzdC1zdHlsZS10eXBlOiBub25lO1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRmbGV4LXdyYXA6IHdyYXA7XG5cdGdhcDogdmFyKC0tc2l6ZS0yLTIpO1xuXHRwYWRkaW5nOiAwO1xuXHRtYXJnaW46IDA7XG59XG5cbi53b3JrZmxvdy1zdGFnZS1pdGVtIHtcblx0cGFkZGluZzogNHB4IDhweDtcblx0Ym9yZGVyLXJhZGl1czogNHB4O1xuXHRmb250LXNpemU6IDEycHg7XG5cdGRpc3BsYXk6IGlubGluZS1mbGV4O1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XG59XG5cbi53b3JrZmxvdy1zdGFnZS1jeWNsZSB7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRhc2staW4tcHJvZ3Jlc3MtY29sb3IpO1xuXHRjb2xvcjogdmFyKC0tdGV4dC1vbi1hY2NlbnQpO1xufVxuXG4ud29ya2Zsb3ctc3RhZ2UtdGVybWluYWwge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10YXNrLWNvbXBsZXRlZC1jb2xvcik7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XG59XG5cbi5uby13b3JrZmxvd3MtbWVzc2FnZSB7XG5cdGZvbnQtc3R5bGU6IGl0YWxpYztcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdHBhZGRpbmc6IDE1cHg7XG59XG5cbi8qIFdvcmtmbG93IG1vZGFsIHN0eWxlcyAqL1xuLndvcmtmbG93LWZvcm0ge1xuXHRtYXJnaW4tYm90dG9tOiAyMHB4O1xufVxuXG4ud29ya2Zsb3ctc3RhZ2VzLXNlY3Rpb24ge1xuXHRtYXJnaW4tdG9wOiAyMHB4O1xuXHRib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xuXHRwYWRkaW5nLXRvcDogMTVweDtcbn1cblxuLndvcmtmbG93LXN0YWdlcy1zZWN0aW9uIGgyIHtcblx0bWFyZ2luLXRvcDogMDtcblx0bWFyZ2luLWJvdHRvbTogMTVweDtcblx0Zm9udC1zaXplOiAxLjNlbTtcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcbn1cblxuLndvcmtmbG93LXN0YWdlcy1jb250YWluZXIge1xuXHRtYXJnaW4tdG9wOiAxNXB4O1xufVxuXG4ud29ya2Zsb3ctc3RhZ2VzLWNvbnRhaW5lciAud29ya2Zsb3ctc3RhZ2VzLWxpc3Qge1xuXHRkaXNwbGF5OiBibG9jaztcblx0ZmxleC13cmFwOiB1bnNldDtcblx0Z2FwOiB1bnNldDtcbn1cblxuLndvcmtmbG93LXN0YWdlcy1jb250YWluZXIgLndvcmtmbG93LXN0YWdlLWl0ZW0ge1xuXHRkaXNwbGF5OiBibG9jaztcblx0bWFyZ2luLWJvdHRvbTogMTBweDtcblx0cGFkZGluZzogMDtcblx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbi53b3JrZmxvdy1idXR0b25zIHtcblx0ZGlzcGxheTogZmxleDtcblx0anVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcblx0Z2FwOiAxMHB4O1xuXHRtYXJnaW4tdG9wOiAyMHB4O1xuXHRwYWRkaW5nLXRvcDogMTBweDtcblx0Ym9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcbn1cblxuLndvcmtmbG93LXNhdmUtYnV0dG9uLFxuLndvcmtmbG93LWNhbmNlbC1idXR0b24sXG4ud29ya2Zsb3ctYWRkLXN0YWdlLWJ1dHRvbiB7XG5cdHBhZGRpbmc6IDZweCAxMnB4O1xuXHRib3JkZXItcmFkaXVzOiA0cHg7XG5cdGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLndvcmtmbG93LXNhdmUtYnV0dG9uLm1vZC1jdGEge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xuXHRjb2xvcjogdmFyKC0tdGV4dC1vbi1hY2NlbnQpO1xufVxuXG4ud29ya2Zsb3ctY2FuY2VsLWJ1dHRvbiB7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcbn1cblxuLndvcmtmbG93LWFkZC1zdGFnZS1idXR0b24ge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xuXHRjb2xvcjogdmFyKC0tdGV4dC1vbi1hY2NlbnQpO1xuXHRtYXJnaW4tdG9wOiAxMHB4O1xufVxuXG4ubm8tc3RhZ2VzLW1lc3NhZ2Uge1xuXHRmb250LXN0eWxlOiBpdGFsaWM7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcblx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRwYWRkaW5nOiAxNXB4O1xufVxuXG4vKiBTdGFnZSBlZGl0aW5nIHN0eWxlcyAqL1xuLndvcmtmbG93LXN0YWdlLWhlYWRlciB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcblx0cGFkZGluZzogOHB4IDEycHg7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcblx0Ym9yZGVyLXJhZGl1czogNHB4O1xuXHRtYXJnaW4tYm90dG9tOiA4cHg7XG5cdGJveC1zaGFkb3c6IDAgMXB4IDNweCByZ2JhKDAsIDAsIDAsIDAuMSk7XG59XG5cbi53b3JrZmxvdy1zdGFnZS1uYW1lIHtcblx0Zm9udC13ZWlnaHQ6IDYwMDtcblx0ZmxleDogMTtcblx0bWFyZ2luLXJpZ2h0OiAxMHB4O1xufVxuXG4ud29ya2Zsb3ctc3RhZ2UtYWN0aW9ucyB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGdhcDogNXB4O1xufVxuXG4ud29ya2Zsb3ctc3RhZ2UtZWRpdCxcbi53b3JrZmxvdy1zdGFnZS1tb3ZlLXVwLFxuLndvcmtmbG93LXN0YWdlLW1vdmUtZG93bixcbi53b3JrZmxvdy1zdGFnZS1kZWxldGUge1xuXHRwYWRkaW5nOiAzcHggOHB4O1xuXHRib3JkZXItcmFkaXVzOiAzcHg7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcblx0Y3Vyc29yOiBwb2ludGVyO1xuXHRmb250LXNpemU6IDEycHg7XG5cdGJvcmRlcjogbm9uZTtcbn1cblxuLndvcmtmbG93LXN0YWdlLWVkaXQ6aG92ZXIsXG4ud29ya2Zsb3ctc3RhZ2UtbW92ZS11cDpob3Zlcixcbi53b3JrZmxvdy1zdGFnZS1tb3ZlLWRvd246aG92ZXIge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xuXHRjb2xvcjogdmFyKC0tdGV4dC1vbi1hY2NlbnQpO1xufVxuXG4ud29ya2Zsb3ctc3RhZ2UtZGVsZXRlOmhvdmVyIHtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1lcnJvcik7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XG59XG5cbi53b3JrZmxvdy1zdGFnZS10eXBlLWJhZGdlIHtcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRwYWRkaW5nOiAycHggNnB4O1xuXHRtYXJnaW4tbGVmdDogOHB4O1xuXHRib3JkZXItcmFkaXVzOiAzcHg7XG5cdGZvbnQtc2l6ZTogMTBweDtcblx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblx0Zm9udC13ZWlnaHQ6IDYwMDtcbn1cblxuLndvcmtmbG93LXN0YWdlLXR5cGUtbGluZWFyIHtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xufVxuXG4ud29ya2Zsb3ctc3RhZ2UtdHlwZS1jeWNsZSB7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRhc2staW4tcHJvZ3Jlc3MtY29sb3IpO1xuXHRjb2xvcjogdmFyKC0tdGV4dC1vbi1hY2NlbnQpO1xufVxuXG4ud29ya2Zsb3ctc3RhZ2UtdHlwZS10ZXJtaW5hbCB7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRhc2stY29tcGxldGVkLWNvbG9yKTtcblx0Y29sb3I6IHZhcigtLXRleHQtb24tYWNjZW50KTtcbn1cblxuLyogU3Vic3RhZ2Ugc3R5bGVzICovXG4ud29ya2Zsb3ctc3Vic3RhZ2VzLWxpc3Qge1xuXHRwYWRkaW5nOiAwIDAgMCB2YXIoLS1zaXplLTQtNik7XG5cdG1hcmdpbi10b3A6IHZhcigtLXNpemUtNC0yKTtcblx0bWFyZ2luLWJvdHRvbTogdmFyKC0tc2l6ZS00LTIpO1xuXHRib3JkZXItbGVmdDogMnB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcbn1cblxuLnN1YnN0YWdlLXNldHRpbmdzLWNvbnRhaW5lciB7XG5cdHdpZHRoOiAxMDAlO1xufVxuXG4vKiBTdGFnZSBlZGl0IG1vZGFsICovXG4uc3RhZ2UtdHlwZS1zZXR0aW5ncyB7XG5cdG1hcmdpbi10b3A6IDIwcHg7XG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcblx0Ym9yZGVyLXJhZGl1czogNHB4O1xuXHRwYWRkaW5nOiAxNXB4O1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xufVxuXG4uc3Vic3RhZ2VzLXNlY3Rpb24sXG4uY2FuLXByb2NlZWQtdG8tc2VjdGlvbiB7XG5cdG1hcmdpbi10b3A6IDIwcHg7XG5cdHBhZGRpbmctdG9wOiAxNXB4O1xuXHRib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xufVxuXG4uc3Vic3RhZ2VzLWNvbnRhaW5lcixcbi5jYW4tcHJvY2VlZC10by1jb250YWluZXIge1xuXHRtYXJnaW4tdG9wOiAxNXB4O1xuXHRwYWRkaW5nOiAxMHB4O1xuXHRib3JkZXItcmFkaXVzOiA0cHg7XG59XG5cbi5zdWJzdGFnZXMtbGlzdCxcbi5jYW4tcHJvY2VlZC1saXN0IHtcblx0bGlzdC1zdHlsZS10eXBlOiBub25lO1xuXHRwYWRkaW5nOiAwO1xuXHRtYXJnaW46IDA7XG59XG5cbi5zdWJzdGFnZS1uYW1lLWNvbnRhaW5lciB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGdhcDogMTBweDtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0ZmxleDogMTtcbn1cblxuLnN1YnN0YWdlLW5hbWUtY29udGFpbmVyIGlucHV0IHtcblx0cGFkZGluZzogNHB4IDhweDtcblx0Ym9yZGVyLXJhZGl1czogM3B4O1xuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XG59XG5cbi5zdWJzdGFnZS1uZXh0LWNvbnRhaW5lciB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdGdhcDogNXB4O1xuXHRtYXJnaW4tbGVmdDogMTBweDtcbn1cblxuLnN1YnN0YWdlLXJlbW92ZS1idXR0b24sXG4uY2FuLXByb2NlZWQtcmVtb3ZlLWJ1dHRvbiB7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XG5cdGJvcmRlci1yYWRpdXM6IDNweDtcblx0cGFkZGluZzogMnB4IDVweDtcblx0Y3Vyc29yOiBwb2ludGVyO1xuXHRib3JkZXI6IG5vbmU7XG59XG5cbi5zdWJzdGFnZS1yZW1vdmUtYnV0dG9uOmhvdmVyLFxuLmNhbi1wcm9jZWVkLXJlbW92ZS1idXR0b246aG92ZXIge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWVycm9yKTtcblx0Y29sb3I6IHZhcigtLXRleHQtb24tYWNjZW50KTtcbn1cblxuLmFkZC1zdWJzdGFnZS1idXR0b24sXG4uYWRkLWNhbi1wcm9jZWVkLWJ1dHRvbiB7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XG5cdHBhZGRpbmc6IDRweCAxMHB4O1xuXHRib3JkZXItcmFkaXVzOiA0cHg7XG5cdG1hcmdpbi10b3A6IDEwcHg7XG5cdGN1cnNvcjogcG9pbnRlcjtcblx0Ym9yZGVyOiBub25lO1xufVxuXG4uYWRkLWNhbi1wcm9jZWVkLWNvbnRhaW5lciB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGdhcDogMTBweDtcblx0YWxpZ24taXRlbXM6IGZsZXgtZW5kO1xufVxuXG4uYWRkLWNhbi1wcm9jZWVkLXNlbGVjdCB7XG5cdGZsZXg6IDE7XG5cdHBhZGRpbmc6IDRweCA4cHg7XG5cdGJvcmRlci1yYWRpdXM6IDNweDtcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xufVxuXG4uc3RhZ2UtYnV0dG9ucyB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG5cdGdhcDogMTBweDtcblx0bWFyZ2luLXRvcDogMjBweDtcblx0cGFkZGluZy10b3A6IDEwcHg7XG5cdGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XG59XG5cbi5zdGFnZS1zYXZlLWJ1dHRvbixcbi5zdGFnZS1jYW5jZWwtYnV0dG9uIHtcblx0cGFkZGluZzogNnB4IDEycHg7XG5cdGJvcmRlci1yYWRpdXM6IDRweDtcblx0Y3Vyc29yOiBwb2ludGVyO1xuXHRib3JkZXI6IG5vbmU7XG59XG5cbi5zdGFnZS1zYXZlLWJ1dHRvbi5tb2QtY3RhIHtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcblx0Y29sb3I6IHZhcigtLXRleHQtb24tYWNjZW50KTtcbn1cblxuLnN0YWdlLWNhbmNlbC1idXR0b24ge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XG59XG5cbi5zdGFnZS1lcnJvci1tZXNzYWdlIHtcblx0Y29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItZXJyb3IpO1xuXHRmb250LXdlaWdodDogYm9sZDtcblx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRtYXJnaW4tdG9wOiAxMHB4O1xuXHRwYWRkaW5nOiA4cHg7XG5cdGJvcmRlci1yYWRpdXM6IDRweDtcbn1cblxuLyogV29ya2Zsb3cgdGFzayBpbiBlZGl0b3IvcHJldmlldyBtb2RlIHN0eWxlcyAqL1xuLnRhc2std29ya2Zsb3ctdGFnIHtcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRwYWRkaW5nOiAycHggNXB4O1xuXHRib3JkZXItcmFkaXVzOiAzcHg7XG5cdG1hcmdpbi1sZWZ0OiA1cHg7XG5cdGZvbnQtc2l6ZTogMTJweDtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnktYWx0KTtcbn1cblxuLnRhc2std29ya2Zsb3ctc3RhZ2Uge1xuXHRtYXJnaW4tbGVmdDogNXB4O1xuXHRjb2xvcjogdmFyKC0tdGV4dC1hY2NlbnQpO1xufVxuXG4udGFzay13b3JrZmxvdy1zdWJzdGFnZSB7XG5cdGZvbnQtc2l6ZTogMTFweDtcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xufVxuXG4udGFzay13b3JrZmxvdy1oaXN0b3J5IHtcblx0bWFyZ2luLWxlZnQ6IDIwcHg7XG5cdGZvbnQtc2l6ZTogMTJweDtcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xufVxuXG4udGFzay13b3JrZmxvdy10aW1lc3RhbXAge1xuXHRjb2xvcjogdmFyKC0tdGV4dC1mYWludCk7XG59XG5cbi8qIFdvcmtmbG93IHNldHRpbmdzIGRpc3BsYXkgZW5oYW5jZW1lbnRzICovXG4uc2V0dGluZy1pdGVtLWNvbnRyb2wgc3BhbltjbGFzc149XCJ3b3JrZmxvdy1zdGFnZS1uYW1lLVwiXSB7XG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0cGFkZGluZzogMnB4IDZweDtcblx0Ym9yZGVyLXJhZGl1czogM3B4O1xuXHRmb250LXNpemU6IDEycHg7XG5cdGZvbnQtd2VpZ2h0OiA1MDA7XG5cdG1hcmdpbi1yaWdodDogNXB4O1xufVxuXG4uc2V0dGluZy1pdGVtLWNvbnRyb2wgLndvcmtmbG93LXN0YWdlLW5hbWUtY3ljbGUge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10YXNrLWluLXByb2dyZXNzLWNvbG9yKTtcblx0Y29sb3I6IHZhcigtLXRleHQtb24tYWNjZW50KTtcbn1cblxuLnNldHRpbmctaXRlbS1jb250cm9sIC53b3JrZmxvdy1zdGFnZS1uYW1lLXRlcm1pbmFsIHtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGFzay1jb21wbGV0ZWQtY29sb3IpO1xuXHRjb2xvcjogdmFyKC0tdGV4dC1vbi1hY2NlbnQpO1xufVxuXG4ud29ya2Zsb3ctc3RhZ2UtaXRlbSB7XG5cdG1hcmdpbi1yaWdodDogNHB4O1xufVxuXG4vKiBXb3JrZmxvd0RlZmluaXRpb25Nb2RhbCBoZWFkZXIgZW5oYW5jZW1lbnRzICovXG4ud29ya2Zsb3ctc3RhZ2VzLWNvbnRhaW5lciAud29ya2Zsb3ctc3RhZ2UtaGVhZGVyIHtcblx0cGFkZGluZzogOHB4IDEycHg7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcblx0Ym9yZGVyLXJhZGl1czogNHB4O1xuXHRib3gtc2hhZG93OiAwIDFweCAzcHggcmdiYSgwLCAwLCAwLCAwLjEpO1xuXHRtYXJnaW4tYm90dG9tOiA4cHg7XG59XG5cbi53b3JrZmxvdy1zdGFnZXMtY29udGFpbmVyIC53b3JrZmxvdy1zdGFnZS10eXBlLWJhZGdlIHtcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRwYWRkaW5nOiAycHggNnB4O1xuXHRtYXJnaW4tbGVmdDogOHB4O1xuXHRib3JkZXItcmFkaXVzOiAzcHg7XG5cdGZvbnQtc2l6ZTogMTBweDtcblx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblx0Zm9udC13ZWlnaHQ6IDYwMDtcbn1cblxuLndvcmtmbG93LXN1YnN0YWdlcy1saXN0IHtcblx0bGlzdC1zdHlsZS10eXBlOiBub25lO1xuXHRwYWRkaW5nOiAwIDAgMCAyMHB4O1xuXHRtYXJnaW46IDVweCAwIDEwcHggMDtcblx0Ym9yZGVyLWxlZnQ6IDJweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XG59XG5cbi8qIEJldHRlciBidXR0b25zIGluIHdvcmtmbG93IHBhbmVscyAqL1xuLndvcmtmbG93LWFkZC1zdGFnZS1idXR0b24sXG4uc3RhZ2Utc2F2ZS1idXR0b24ubW9kLWN0YSxcbi53b3JrZmxvdy1zYXZlLWJ1dHRvbi5tb2QtY3RhIHtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcblx0Y29sb3I6IHZhcigtLXRleHQtb24tYWNjZW50KTtcblx0cGFkZGluZzogNnB4IDE1cHg7XG5cdGJvcmRlci1yYWRpdXM6IDRweDtcblx0Zm9udC13ZWlnaHQ6IDUwMDtcblx0Ym9yZGVyOiBub25lO1xuXHRjdXJzb3I6IHBvaW50ZXI7XG5cdGJveC1zaGFkb3c6IDAgMnB4IDRweCByZ2JhKDAsIDAsIDAsIDAuMSk7XG5cdHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2U7XG5cdHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLndvcmtmbG93LWFkZC1zdGFnZS1idXR0b246aG92ZXIsXG4uc3RhZ2Utc2F2ZS1idXR0b24ubW9kLWN0YTpob3Zlcixcbi53b3JrZmxvdy1zYXZlLWJ1dHRvbi5tb2QtY3RhOmhvdmVyIHtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50LWhvdmVyKTtcblx0Ym94LXNoYWRvdzogMCAzcHggNnB4IHJnYmEoMCwgMCwgMCwgMC4xNSk7XG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMXB4KTtcbn1cblxuLndvcmtmbG93LXN0YWdlLW1vdmUtdXAsXG4ud29ya2Zsb3ctc3RhZ2UtbW92ZS1kb3duLFxuLndvcmtmbG93LXN0YWdlLWVkaXQsXG4ud29ya2Zsb3ctc3RhZ2UtZGVsZXRlIHtcblx0Ym9yZGVyOiBub25lO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XG5cdHBhZGRpbmc6IDNweCA4cHg7XG5cdGJvcmRlci1yYWRpdXM6IDNweDtcblx0Zm9udC1zaXplOiAxMnB4O1xuXHRjdXJzb3I6IHBvaW50ZXI7XG5cdHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2U7XG59XG5cbi53b3JrZmxvdy1zdGFnZS1tb3ZlLXVwOmhvdmVyLFxuLndvcmtmbG93LXN0YWdlLW1vdmUtZG93bjpob3Zlcixcbi53b3JrZmxvdy1zdGFnZS1lZGl0OmhvdmVyIHtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcblx0Y29sb3I6IHZhcigtLXRleHQtb24tYWNjZW50KTtcbn1cblxuLndvcmtmbG93LXN0YWdlLWRlbGV0ZTpob3ZlciB7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItZXJyb3IpO1xuXHRjb2xvcjogdmFyKC0tdGV4dC1vbi1hY2NlbnQpO1xufVxuXG4vKiBTdWJ0YXNrIHN0eWxpbmcgaW1wcm92ZW1lbnRzICovXG4uc3Vic3RhZ2UtaXRlbSB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdHBhZGRpbmc6IDZweCAwO1xuXHRtYXJnaW4tYm90dG9tOiA1cHg7XG5cdGJvcmRlci1yYWRpdXM6IDRweDtcbn1cblxuLnN1YnN0YWdlLW5hbWUtY29udGFpbmVyIGlucHV0IHtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xuXHRwYWRkaW5nOiA0cHggOHB4O1xuXHRib3JkZXItcmFkaXVzOiAzcHg7XG5cdGZvbnQtc2l6ZTogMTNweDtcbn1cblxuLnN1YnN0YWdlLW5hbWUtY29udGFpbmVyIGlucHV0OmZvY3VzIHtcblx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xuXHRvdXRsaW5lOiBub25lO1xufVxuXG4ubm8tc3RhZ2VzLW1lc3NhZ2UsXG4ubm8td29ya2Zsb3dzLW1lc3NhZ2UsXG4ubm8tc3Vic3RhZ2VzLW1lc3NhZ2UsXG4ubm8tY2FuLXByb2NlZWQtbWVzc2FnZSB7XG5cdGZvbnQtc3R5bGU6IGl0YWxpYztcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xuXHRwYWRkaW5nOiAxNXB4O1xuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5LWFsdCk7XG5cdGJvcmRlci1yYWRpdXM6IDVweDtcblx0bWFyZ2luOiAxMHB4IDA7XG59XG5cbi8qIFNUQVJUOiBSZXdhcmQgU2V0dGluZ3MgU3R5bGVzICovXG4ucmV3YXJkcy1sZXZlbHMtY29udGFpbmVyLFxuLnJld2FyZHMtaXRlbXMtY29udGFpbmVyIHtcblx0bWFyZ2luLXRvcDogMTBweDtcblx0cGFkZGluZzogMTVweDtcblx0Ym9yZGVyLXJhZGl1czogNXB4O1xuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcbn1cblxuLnJld2FyZHMtbGV2ZWwtcm93IC5zZXR0aW5nLWl0ZW0taW5mbyxcbi5yZXdhcmRzLWl0ZW0tcm93IC5zZXR0aW5nLWl0ZW0taW5mbyB7XG5cdGRpc3BsYXk6IG5vbmU7XG59XG5cbi5yZXdhcmRzLWl0ZW0tcm93LnNldHRpbmctaXRlbSB7XG5cdGJvcmRlci10b3A6IDA7XG59XG5cbi5yZXdhcmRzLWxldmVsLXJvdyAuc2V0dGluZy1pdGVtLWNvbnRyb2wsXG4ucmV3YXJkcy1pdGVtLXJvdyAuc2V0dGluZy1pdGVtLWNvbnRyb2wge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRmbGV4LXdyYXA6IHdyYXA7IC8qIEFsbG93IHdyYXBwaW5nIG9uIHNtYWxsZXIgc2NyZWVucyAqL1xuXHRnYXA6IDEwcHg7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5cbi5yZXdhcmRzLWxldmVsLXJvdyAuc2V0dGluZy1pdGVtLWNvbnRyb2wgaW5wdXRbdHlwZT1cInRleHRcIl0ge1xuXHRmbGV4OiAxO1xuXHRtaW4td2lkdGg6IDEwMHB4OyAvKiBFbnN1cmUgcmVhc29uYWJsZSBtaW5pbXVtIHdpZHRoICovXG59XG5cbi5yZXdhcmRzLWl0ZW0tcm93IC5zZXR0aW5nLWl0ZW0tY29udHJvbCAuaW5wdXQtY29udGFpbmVyIHtcblx0LyogT2JzaWRpYW4gdXNlcyB0aGlzIGNsYXNzIGZvciB0ZXh0L3RleHRhcmVhICovXG5cdGZsZXg6IDE7XG5cdG1pbi13aWR0aDogMTUwcHg7XG59XG5cbi5yZXdhcmRzLWl0ZW0tcm93IC5zZXR0aW5nLWl0ZW0tY29udHJvbCB0ZXh0YXJlYSB7XG5cdHdpZHRoOiAxMDAlOyAvKiBNYWtlIHRleHRhcmVhIHRha2UgZnVsbCB3aWR0aCB3aXRoaW4gaXRzIGNvbnRhaW5lciAqL1xuXHRtaW4taGVpZ2h0OiA0MHB4OyAvKiBFbnN1cmUgaXQncyB0YWxsIGVub3VnaCBmb3IgYSBjb3VwbGUgbGluZXMgKi9cblx0cmVzaXplOiB2ZXJ0aWNhbDtcbn1cblxuLnJld2FyZHMtaXRlbS1yb3cgLnNldHRpbmctaXRlbS1jb250cm9sIC5kcm9wZG93biB7XG5cdG1pbi13aWR0aDogMTIwcHg7XG59XG5cbi5yZXdhcmRzLWxldmVsLXJvdyAuc2V0dGluZy1pdGVtLWNvbnRyb2wgYnV0dG9uLFxuLnJld2FyZHMtaXRlbS1yb3cgLnNldHRpbmctaXRlbS1jb250cm9sIGJ1dHRvbiB7XG5cdG1hcmdpbi1sZWZ0OiBhdXRvOyAvKiBQdXNoIGRlbGV0ZSBidXR0b24gdG8gdGhlIHJpZ2h0ICovXG59XG5cbi5yZXdhcmRzLWl0ZW0tZGl2aWRlciB7XG5cdGJvcmRlcjogbm9uZTtcblx0aGVpZ2h0OiAxcHg7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcblx0bWFyZ2luLXRvcDogMTVweDtcblx0bWFyZ2luLWJvdHRvbTogMTVweDtcbn1cblxuLnNldHRpbmctaXRlbS5zb3J0LWNyaXRlcmlvbi1yb3cgLnNldHRpbmctaXRlbS1pbmZvIHtcblx0ZGlzcGxheTogbm9uZTtcbn1cblxuLnNldHRpbmctaXRlbS5zb3J0LWNyaXRlcmlvbi1yb3cgc2VsZWN0LmRyb3Bkb3duIHtcblx0ZmxleDogMTtcbn1cblxuLnZpZXctZWRpdC1idXR0b24sXG4udmlldy1jb3B5LWJ1dHRvbixcbi52aWV3LW9yZGVyLWJ1dHRvbixcbi52aWV3LWRlbGV0ZS1idXR0b24ge1xuXHRwYWRkaW5nOiA0cHg7XG5cdHdpZHRoOiAyNHB4O1xuXHRoZWlnaHQ6IDI0cHg7XG5cdGJvcmRlci1yYWRpdXM6IDRweDtcblx0bWFyZ2luLWxlZnQ6IDRweDtcblx0ZGlzcGxheTogZmxleDtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG5cbi52aWV3LWNvcHktYnV0dG9uIHtcblx0Y29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XG59XG5cbi52aWV3LWNvcHktYnV0dG9uOmhvdmVyIHtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcblx0Y29sb3I6IHZhcigtLXRleHQtb24tYWNjZW50KTtcbn1cblxuLnZpZXctZGVsZXRlLWJ1dHRvbiB7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LWVycm9yKTtcbn1cblxuLnZpZXctZGVsZXRlLWJ1dHRvbjpob3ZlciB7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItZXJyb3IpO1xuXHRjb2xvcjogdmFyKC0tdGV4dC1vbi1hY2NlbnQpO1xufVxuXG4udmlldy1pY29uIHtcblx0bWFyZ2luLXJpZ2h0OiA4cHg7XG5cdC0taWNvbi1zaXplOiAxNnB4O1xufVxuXG4vKiBDb3B5IG1vZGUgaW5mbyBzdHlsZXMgKi9cbi5jb3B5LW1vZGUtaW5mbyB7XG5cdG1hcmdpbjogMTBweCAwO1xuXHRwYWRkaW5nOiAxMnB4O1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeS1hbHQpO1xuXHRib3JkZXItcmFkaXVzOiA1cHg7XG5cdGJvcmRlci1sZWZ0OiAzcHggc29saWQgdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcbn1cblxuLmNvcHktbW9kZS1pbmZvIHAge1xuXHRtYXJnaW46IDRweCAwO1xufVxuXG4vKiBUYXNrcyBQbHVnaW4gQ29tcGF0aWJpbGl0eSBXYXJuaW5nIEJhbm5lciAqL1xuLnRhc2tzLWNvbXBhdGliaWxpdHktd2FybmluZyB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuXHRnYXA6IHZhcigtLXNpemUtNC0zKTtcblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTQpO1xuXHRtYXJnaW4tYm90dG9tOiB2YXIoLS1zaXplLTQtNCk7XG5cdGJhY2tncm91bmQtY29sb3I6IGhzbChcblx0XHR2YXIoLS1hY2NlbnQtaCksXG5cdFx0dmFyKC0tYWNjZW50LXMpLFxuXHRcdHZhcigtLWFjY2VudC1sKSxcblx0XHQwLjVcblx0KTtcblx0Ym9yZGVyOiAxcHggc29saWRcblx0XHRoc2wodmFyKC0tYWNjZW50LWgpLCB2YXIoLS1hY2NlbnQtcyksIHZhcigtLWFjY2VudC1sKSwgMC41KTtcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLW0pO1xuXHRjb2xvcjogdmFyKC0tdGV4dC1vbi1hY2NlbnQpO1xufVxuXG4udGFza3Mtd2FybmluZy1pY29uIHtcblx0Zm9udC1zaXplOiAyMHB4O1xuXHRsaW5lLWhlaWdodDogMTtcblx0ZmxleC1zaHJpbms6IDA7XG59XG5cbi50YXNrcy13YXJuaW5nLWNvbnRlbnQge1xuXHRmbGV4OiAxO1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRnYXA6IHZhcigtLXNpemUtMi0yKTtcbn1cblxuLnRhc2tzLXdhcm5pbmctdGl0bGUge1xuXHRmb250LXdlaWdodDogNjAwO1xuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktbWVkaXVtKTtcbn1cblxuLnRhc2tzLXdhcm5pbmctdGV4dCB7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbCk7XG5cdGxpbmUtaGVpZ2h0OiAxLjQ7XG59XG5cbi50YXNrcy13YXJuaW5nLXRleHQgYSB7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XG5cdHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xufVxuXG4udGFza3Mtd2FybmluZy10ZXh0IGE6aG92ZXIge1xuXHRjb2xvcjogdmFyKC0tdGV4dC1vbi1hY2NlbnQpO1xufVxuXG4udGFzay1nZW5pdXMtZm9ybWF0LWV4YW1wbGVzIHtcblx0ZGlzcGxheTogZmxleDtcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0Z2FwOiB2YXIoLS1zaXplLTItMyk7XG5cdHBhZGRpbmc6IHZhcigtLXNpemUtNC0zKTtcblx0bWFyZ2luOiB2YXIoLS1zaXplLTQtMykgMDtcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLW0pO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeS1hbHQpO1xuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XG59XG5cbi50YXNrLWdlbml1cy1mb3JtYXQtZXhhbXBsZXMgc3Ryb25nIHtcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLW1lZGl1bSk7XG5cdGZvbnQtd2VpZ2h0OiA2MDA7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XG5cdG1hcmdpbi1ib3R0b206IHZhcigtLXNpemUtMi0xKTtcbn1cblxuLnRhc2stZ2VuaXVzLWZvcm1hdC1leGFtcGxlcyBzcGFuIHtcblx0Zm9udC1mYW1pbHk6IHZhcigtLWZvbnQtbW9ub3NwYWNlKTtcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsZXIpO1xuXHRsaW5lLWhlaWdodDogMS41O1xuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XG5cdHBhZGRpbmc6IHZhcigtLXNpemUtMi0xKSB2YXIoLS1zaXplLTItMyk7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zKTtcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xuXHRtYXJnaW46IHZhcigtLXNpemUtMi0xKSAwO1xufVxuXG4udGFzay1nZW5pdXMtZm9ybWF0LWV4YW1wbGVzIHNwYW46Zmlyc3Qtb2YtdHlwZSB7XG5cdG1hcmdpbi10b3A6IDA7XG59XG5cbi50YXNrLWdlbml1cy1mb3JtYXQtZXhhbXBsZXMgc3BhbjpsYXN0LW9mLXR5cGUge1xuXHRtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4vKiBFbmhhbmNlZCBQcm9qZWN0IENvbmZpZ3VyYXRpb24gU3R5bGVzICovXG4ucHJvamVjdC1wYXRoLW1hcHBpbmdzLWNvbnRhaW5lcixcbi5wcm9qZWN0LW1ldGFkYXRhLW1hcHBpbmdzLWNvbnRhaW5lciB7XG5cdG1hcmdpbi10b3A6IDEwcHg7XG59XG5cbi5wcm9qZWN0LXBhdGgtbWFwcGluZy1yb3csXG4ucHJvamVjdC1tZXRhZGF0YS1tYXBwaW5nLXJvdyB7XG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcblx0Ym9yZGVyLXJhZGl1czogNnB4O1xuXHRtYXJnaW4tYm90dG9tOiAxMHB4O1xuXHRwYWRkaW5nOiAxMHB4O1xufVxuXG4ubm8tbWFwcGluZ3MtbWVzc2FnZSB7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcblx0Zm9udC1zdHlsZTogaXRhbGljO1xuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdHBhZGRpbmc6IDIwcHg7XG59XG5cbi8qIFRhc2sgUHJvamVjdCBEaXNwbGF5IFN0eWxlcyAqL1xuLnRhc2stcHJvamVjdC10ZyB7XG5cdG9wYWNpdHk6IDAuODtcblx0Zm9udC1zdHlsZTogaXRhbGljO1xuXHRib3JkZXItbGVmdDogMnB4IHNvbGlkIHZhcigtLWNvbG9yLWFjY2VudCk7XG5cdHBhZGRpbmctbGVmdDogNHB4O1xufVxuXG4udGFzay1wcm9qZWN0LXRnOjpiZWZvcmUge1xuXHRjb250ZW50OiBcIvCflJdcIjtcblx0bWFyZ2luLXJpZ2h0OiAycHg7XG5cdGZvbnQtc2l6ZTogMC44ZW07XG59XG5cbi8qIE1ldGFkYXRhIEVkaXRvciBQcm9qZWN0IFN0eWxlcyAqL1xuLnByb2plY3QtcmVhZG9ubHkge1xuXHRvcGFjaXR5OiAwLjg7XG59XG5cbi5wcm9qZWN0LXJlYWRvbmx5IGlucHV0IHtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xuXHRjdXJzb3I6IG5vdC1hbGxvd2VkO1xufVxuXG4ucHJvamVjdC1zb3VyY2UtaW5kaWNhdG9yIHtcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsZXIpO1xuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XG5cdGZvbnQtc3R5bGU6IGl0YWxpYztcblx0bWFyZ2luLXRvcDogNHB4O1xufVxuXG4vKiBEYXRlIGZvcm1hdCBjb25maWd1cmF0aW9uIHN0eWxlcyAqL1xuLnRhc2stZ2VuaXVzLWRhdGUtZm9ybWF0cy1jb250YWluZXIge1xuXHRtYXJnaW4tdG9wOiAxNXB4O1xuXHRwYWRkaW5nOiAxNXB4O1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XG5cdGJvcmRlci1yYWRpdXM6IDhweDtcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xufVxuXG4udGFzay1nZW5pdXMtZm9ybWF0cy1oZWFkZXIge1xuXHRtYXJnaW4tdG9wOiAwO1xuXHRtYXJnaW4tYm90dG9tOiAxMHB4O1xuXHRmb250LXNpemU6IDEuMWVtO1xuXHRmb250LXdlaWdodDogNjAwO1xuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xufVxuXG4udGFzay1nZW5pdXMtZm9ybWF0LWxpc3Qge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRnYXA6IDEwcHg7XG5cdG1hcmdpbi10b3A6IDE1cHg7XG59XG5cbi50YXNrLWdlbml1cy1mb3JtYXQtaXRlbSB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdGdhcDogMTBweDtcblx0cGFkZGluZzogOHB4O1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xuXHRib3JkZXItcmFkaXVzOiA2cHg7XG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcblx0dHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZTtcbn1cblxuLnRhc2stZ2VuaXVzLWZvcm1hdC1pdGVtOmhvdmVyIHtcblx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xuXHRib3gtc2hhZG93OiAwIDJweCA0cHggcmdiYSgwLCAwLCAwLCAwLjEpO1xufVxuXG4udGFzay1nZW5pdXMtZm9ybWF0LWlucHV0IHtcblx0ZmxleDogMTtcblx0cGFkZGluZzogNnB4IDEwcHg7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcblx0Ym9yZGVyLXJhZGl1czogNHB4O1xuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xuXHRmb250LWZhbWlseTogdmFyKC0tZm9udC1tb25vc3BhY2UpO1xuXHRmb250LXNpemU6IDAuOTVlbTtcblx0dHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIDAuMnMgZWFzZTtcbn1cblxuLnRhc2stZ2VuaXVzLWZvcm1hdC1pbnB1dDpmb2N1cyB7XG5cdG91dGxpbmU6IG5vbmU7XG5cdGJvcmRlci1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcblx0Ym94LXNoYWRvdzogMCAwIDAgMnB4IHZhcigtLWludGVyYWN0aXZlLWFjY2VudC1ob3Zlcik7XG59XG5cbi50YXNrLWdlbml1cy1mb3JtYXQtaW5wdXQ6OnBsYWNlaG9sZGVyIHtcblx0Y29sb3I6IHZhcigtLXRleHQtZmFpbnQpO1xuXHRmb250LXN0eWxlOiBpdGFsaWM7XG59XG5cbi50YXNrLWdlbml1cy1mb3JtYXQtZGVsZXRlLWJ0biB7XG5cdHdpZHRoOiAyOHB4O1xuXHRoZWlnaHQ6IDI4cHg7XG5cdHBhZGRpbmc6IDA7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWVycm9yKTtcblx0Y29sb3I6IHZhcigtLXRleHQtb24tYWNjZW50KTtcblx0Ym9yZGVyOiBub25lO1xuXHRib3JkZXItcmFkaXVzOiA0cHg7XG5cdGZvbnQtc2l6ZTogMjBweDtcblx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG5cdGN1cnNvcjogcG9pbnRlcjtcblx0dHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZTtcbn1cblxuLnRhc2stZ2VuaXVzLWZvcm1hdC1kZWxldGUtYnRuOmhvdmVyIHtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1lcnJvci1ob3Zlcik7XG5cdHRyYW5zZm9ybTogc2NhbGUoMS4xKTtcbn1cblxuLnRhc2stZ2VuaXVzLWFkZC1mb3JtYXQtYnRuIHtcblx0cGFkZGluZzogMTBweCAxNnB4O1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xuXHRjb2xvcjogdmFyKC0tdGV4dC1vbi1hY2NlbnQpO1xuXHRib3JkZXI6IG5vbmU7XG5cdGJvcmRlci1yYWRpdXM6IDZweDtcblx0Zm9udC13ZWlnaHQ6IDUwMDtcblx0Y3Vyc29yOiBwb2ludGVyO1xuXHR0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlO1xuXHRhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0O1xuXHRtYXJnaW4tdG9wOiA1cHg7XG59XG5cbi50YXNrLWdlbml1cy1hZGQtZm9ybWF0LWJ0bjpob3ZlciB7XG5cdGJveC1zaGFkb3c6IDAgMnB4IDZweCByZ2JhKDAsIDAsIDAsIDAuMTUpO1xuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTFweCk7XG59XG5cbi50YXNrLWdlbml1cy1hZGQtZm9ybWF0LWJ0bjphY3RpdmUge1xuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG59XG5cbi8qIERhdGUgZm9ybWF0IGV4YW1wbGVzIHNlY3Rpb24gKi9cbi50YXNrLWdlbml1cy1kYXRlLWV4YW1wbGVzIHtcblx0bWFyZ2luLXRvcDogMjBweDtcblx0cGFkZGluZzogMTVweDtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xuXHRib3JkZXItcmFkaXVzOiA4cHg7XG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcbn1cblxuLnRhc2stZ2VuaXVzLWV4YW1wbGVzLWhlYWRlciB7XG5cdG1hcmdpbi10b3A6IDA7XG5cdG1hcmdpbi1ib3R0b206IDEycHg7XG5cdGZvbnQtc2l6ZTogMWVtO1xuXHRmb250LXdlaWdodDogNjAwO1xuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xufVxuXG4udGFzay1nZW5pdXMtZGF0ZS1leGFtcGxlcy10YWJsZSB7XG5cdHdpZHRoOiAxMDAlO1xuXHRib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuXHRmb250LXNpemU6IDAuOWVtO1xufVxuXG4udGFzay1nZW5pdXMtZGF0ZS1leGFtcGxlcy10YWJsZSB0aCxcbi50YXNrLWdlbml1cy1kYXRlLWV4YW1wbGVzLXRhYmxlIHRkIHtcblx0cGFkZGluZzogOHB4IDEycHg7XG5cdHRleHQtYWxpZ246IGxlZnQ7XG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcbn1cblxuLnRhc2stZ2VuaXVzLWRhdGUtZXhhbXBsZXMtdGFibGUgdGgge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeS1hbHQpO1xuXHRmb250LXdlaWdodDogNjAwO1xuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xufVxuXG4udGFzay1nZW5pdXMtZGF0ZS1leGFtcGxlcy10YWJsZSB0ZCB7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XG5cdGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LW1vbm9zcGFjZSk7XG59XG5cbi50YXNrLWdlbml1cy1kYXRlLWV4YW1wbGVzLXRhYmxlIHRyOm50aC1jaGlsZChldmVuKSB0ZCB7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeS1hbHQpO1xufVxuXG4udGFzay1nZW5pdXMtZGF0ZS1leGFtcGxlcy10YWJsZSB0cjpob3ZlciB0ZCB7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpO1xufVxuXG4udGctaW5kZXgtdGFzay1zb3VyY2Utd3JhcHBlciB7XG5cdG1hcmdpbi10b3A6IDE4cHg7XG59XG5cbi50Zy1pbmRleC10YXNrLXNvdXJjZS1wYW5lbHMge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRnYXA6IDEycHg7XG59XG5cbi50Zy1zb3VyY2Utc2V0dGluZ3MtYm9keSB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdGdhcDogMTJweDtcbn1cblxuLnRnLXNvdXJjZS1zZXR0aW5ncy1ib2R5LnRnLXNvdXJjZS1kaXNhYmxlZCB7XG5cdG9wYWNpdHk6IDAuNTU7XG5cdHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBNdWx0aXBsZSBTdGF0dXMgQ3ljbGVzIFVJIFN0eWxlc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKiBDb250YWluZXIgZm9yIGFsbCBzdGF0dXMgY3ljbGVzICovXG4uc3RhdHVzLWN5Y2xlcy1jb250YWluZXIge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRnYXA6IHZhcigtLXNpemUtNC0zKTtcblx0bWFyZ2luLXRvcDogdmFyKC0tc2l6ZS00LTIpO1xufVxuXG4vKiBJbmRpdmlkdWFsIGN5Y2xlIGNhcmQgKi9cbi5zdGF0dXMtY3ljbGUtY2FyZCB7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeS1hbHQpO1xuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1tKTtcblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTIpO1xuXHR0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlO1xufVxuXG4uc3RhdHVzLWN5Y2xlLWNhcmQ6aG92ZXIge1xuXHRib3JkZXItY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XG5cdGJveC1zaGFkb3c6IDAgMnB4IDhweCByZ2JhKDAsIDAsIDAsIDAuMSk7XG59XG5cbi8qIEN5Y2xlIGNhcmQgaGVhZGVyICovXG4uc3RhdHVzLWN5Y2xlLWhlYWRlciB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdGdhcDogdmFyKC0tc2l6ZS0yLTMpO1xuXHRtYXJnaW4tYm90dG9tOiB2YXIoLS1zaXplLTQtMik7XG5cdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XG5cdHBhZGRpbmctYm90dG9tOiB2YXIoLS1zaXplLTItMyk7XG59XG5cbi5zdGF0dXMtY3ljbGUtY2FyZC5jb2xsYXBzZWQgLnN0YXR1cy1jeWNsZS1oZWFkZXIge1xuXHRtYXJnaW4tYm90dG9tOiAwO1xuXHRib3JkZXItYm90dG9tOiB1bnNldDtcbn1cblxuLyogQ29sbGFwc2UgYnV0dG9uICovXG4uc3RhdHVzLWN5Y2xlLWNvbGxhcHNlLWJ1dHRvbiB7XG5cdHdpZHRoOiAyMHB4O1xuXHRoZWlnaHQ6IDIwcHg7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXHRjdXJzb3I6IHBvaW50ZXI7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcblx0dXNlci1zZWxlY3Q6IG5vbmU7XG5cdGZsZXgtc2hyaW5rOiAwO1xuXHR0cmFuc2l0aW9uOiBjb2xvciAwLjE1cyBlYXNlO1xufVxuXG4uc3RhdHVzLWN5Y2xlLWNvbGxhcHNlLWJ1dHRvbiBzdmcge1xuXHR3aWR0aDogMTZweDtcblx0aGVpZ2h0OiAxNnB4O1xufVxuXG4uc3RhdHVzLWN5Y2xlLWNvbGxhcHNlLWJ1dHRvbjpob3ZlciB7XG5cdGNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xufVxuXG4vKiBVcC9Eb3duIGJ1dHRvbnMgKi9cbi5zdGF0dXMtY3ljbGUtdXBkb3duLWJ1dHRvbnMge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRnYXA6IDJweDtcblx0ZmxleC1zaHJpbms6IDA7XG59XG5cbi5zdGF0dXMtY3ljbGUtYnV0dG9uIHtcblx0d2lkdGg6IDE4cHg7XG5cdGhlaWdodDogMThweDtcblx0ZGlzcGxheTogZmxleDtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdGN1cnNvcjogcG9pbnRlcjtcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xuXHR1c2VyLXNlbGVjdDogbm9uZTtcblx0dHJhbnNpdGlvbjogY29sb3IgMC4xNXMgZWFzZTtcbn1cblxuLnN0YXR1cy1jeWNsZS1idXR0b24gc3ZnIHtcblx0d2lkdGg6IDE0cHg7XG5cdGhlaWdodDogMTRweDtcbn1cblxuLnN0YXR1cy1jeWNsZS1idXR0b246aG92ZXIge1xuXHRjb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcbn1cblxuLnN0YXR1cy1jeWNsZS1idXR0b24uZGlzYWJsZWQge1xuXHRvcGFjaXR5OiAwLjM7XG5cdGN1cnNvcjogbm90LWFsbG93ZWQ7XG5cdHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuXG4vKiBDb250ZW50LWVkaXRhYmxlIHRpdGxlICovXG4uc3RhdHVzLWN5Y2xlLXRpdGxlIHtcblx0ZmxleDogMTtcblx0Zm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LXNlbWlib2xkKTtcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLW1lZGl1bSk7XG5cdHBhZGRpbmc6IHZhcigtLXNpemUtMi0xKSB2YXIoLS1zaXplLTItMik7XG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zKTtcblx0b3V0bGluZTogbm9uZTtcblx0dHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjE1cyBlYXNlO1xuXHRtaW4td2lkdGg6IDA7XG59XG5cbi5zdGF0dXMtY3ljbGUtdGl0bGU6aG92ZXIge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyKTtcbn1cblxuLnN0YXR1cy1jeWNsZS10aXRsZTpmb2N1cyB7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItZm9ybS1maWVsZCk7XG5cdGJveC1zaGFkb3c6IDAgMCAwIDJweCB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xufVxuXG4uc3RhdHVzLWN5Y2xlLXRpdGxlOmVtcHR5OjpiZWZvcmUge1xuXHRjb250ZW50OiBcIlVubmFtZWQgQ3ljbGVcIjtcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xufVxuXG4vKiBDb250cm9scyBjb250YWluZXIgKi9cbi5zdGF0dXMtY3ljbGUtY29udHJvbHMge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRnYXA6IHZhcigtLXNpemUtMi0yKTtcblx0ZmxleC1zaHJpbms6IDA7XG59XG5cbi5zdGF0dXMtY3ljbGUtY29udHJvbHMgLnNldHRpbmctaXRlbSB7XG5cdGJvcmRlci1ib3R0b206IG5vbmU7XG5cdHBhZGRpbmc6IDA7XG5cdG1hcmdpbjogMDtcbn1cblxuLyogQ3ljbGUgY2FyZCBib2R5ICovXG4uc3RhdHVzLWN5Y2xlLWJvZHkge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRnYXA6IHZhcigtLXNpemUtMi0zKTtcblx0dHJhbnNpdGlvbjpcblx0XHRtYXgtaGVpZ2h0IDAuMnMgZWFzZSxcblx0XHRvcGFjaXR5IDAuMnMgZWFzZTtcbn1cblxuLnN0YXR1cy1jeWNsZS1ib2R5IC5zZXR0aW5nLWl0ZW0ge1xuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTItMikgMDtcbn1cblxuLyogQ29sbGFwc2VkIHN0YXRlICovXG4uc3RhdHVzLWN5Y2xlLWNhcmQuY29sbGFwc2VkIC5zdGF0dXMtY3ljbGUtYm9keSB7XG5cdGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qIFN0YXR1cyBsaXN0IGNvbnRhaW5lciAqL1xuLnN0YXR1cy1saXN0LWNvbnRhaW5lciB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdGdhcDogdmFyKC0tc2l6ZS0yLTIpO1xuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTItMyk7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpO1xuXHRtYXJnaW4tdG9wOiB2YXIoLS1zaXplLTItMik7XG59XG5cbi8qIEluZGl2aWR1YWwgc3RhdHVzIHJvdyAqL1xuLnN0YXR1cy1yb3cge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRnYXA6IHZhcigtLXNpemUtMi0yKTtcblx0cGFkZGluZzogdmFyKC0tc2l6ZS0yLTEpO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcblx0dHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIDAuMTVzIGVhc2U7XG59XG5cbi5zdGF0dXMtcm93OmhvdmVyIHtcblx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1ob3Zlcik7XG59XG5cbi5zdGF0dXMtcm93IC5zZXR0aW5nLWl0ZW0ge1xuXHRwYWRkaW5nOiAwO1xuXHRib3JkZXI6IG5vbmU7XG5cdG1hcmdpbjogMDtcblx0ZmxleDogMTtcbn1cblxuLnN0YXR1cy1yb3cgLnNldHRpbmctaXRlbS1uYW1lIHtcblx0bWluLXdpZHRoOiA0MHB4O1xuXHRmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtbWVkaXVtKTtcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsZXIpO1xuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XG59XG5cbi5zdGF0dXMtcm93IC5zZXR0aW5nLWl0ZW0tY29udHJvbCB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdGdhcDogdmFyKC0tc2l6ZS0yLTIpO1xuXHRmbGV4OiAxO1xufVxuXG4vKiBTdGF0dXMgZHJhZyBoYW5kbGUgKi9cbi5zdGF0dXMtZHJhZy1oYW5kbGUge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0d2lkdGg6IDIwcHg7XG5cdG1pbi1oZWlnaHQ6IDMwcHg7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcblx0Y3Vyc29yOiBncmFiO1xuXHR1c2VyLXNlbGVjdDogbm9uZTtcblx0b3BhY2l0eTogMC40O1xuXHR0cmFuc2l0aW9uOiBhbGwgMC4xNXMgZWFzZTtcblx0ZmxleC1zaHJpbms6IDA7XG5cdG1hcmdpbi1yaWdodDogdmFyKC0tc2l6ZS0yLTEpO1xufVxuXG4uc3RhdHVzLWRyYWctaGFuZGxlIHN2ZyB7XG5cdHdpZHRoOiAxNnB4O1xuXHRoZWlnaHQ6IDE2cHg7XG59XG5cbi5zdGF0dXMtcm93OmhvdmVyIC5zdGF0dXMtZHJhZy1oYW5kbGUge1xuXHRvcGFjaXR5OiAwLjc7XG59XG5cbi5zdGF0dXMtZHJhZy1oYW5kbGU6aG92ZXIge1xuXHRvcGFjaXR5OiAxICFpbXBvcnRhbnQ7XG5cdGNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xuXHR0cmFuc2Zvcm06IHNjYWxlKDEuMSk7XG59XG5cbi5zdGF0dXMtZHJhZy1oYW5kbGU6YWN0aXZlIHtcblx0Y3Vyc29yOiBncmFiYmluZztcblx0Y29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XG59XG5cbi8qIFN0YXR1cyBkcmFnIHN0YXRlcyAqL1xuLnN0YXR1cy1yb3ctZ2hvc3Qge1xuXHRvcGFjaXR5OiAwLjM7XG59XG5cbi5zdGF0dXMtcm93LWNob3NlbiB7XG5cdG9wYWNpdHk6IDAuNztcbn1cblxuLnN0YXR1cy1yb3ctZHJhZyB7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XG5cdGJvcmRlcjogMXB4IGRhc2hlZCB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpICFpbXBvcnRhbnQ7XG5cdGJveC1zaGFkb3c6IDAgMnB4IDhweCByZ2JhKDAsIDAsIDAsIDAuMTUpO1xufVxuXG4vKiBQcmlvcml0eSBpbmRpY2F0b3IgKi9cbi5zdGF0dXMtY3ljbGUtaGVhZGVyIC5zZXR0aW5nLWl0ZW0tbmFtZTo6YmVmb3JlIHtcblx0Y29udGVudDogXCJcIjtcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHR3aWR0aDogOHB4O1xuXHRoZWlnaHQ6IDhweDtcblx0Ym9yZGVyLXJhZGl1czogNTAlO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xuXHRtYXJnaW4tcmlnaHQ6IHZhcigtLXNpemUtMi0xKTtcbn1cblxuLyogRGlzYWJsZWQgY3ljbGUgc3R5bGluZyAqL1xuLnN0YXR1cy1jeWNsZS1jYXJkOmhhcyhcblx0LnNldHRpbmctaXRlbS1jb250cm9sIC5jaGVja2JveC1jb250YWluZXI6bm90KC5pcy1lbmFibGVkKVxuKSB7XG5cdG9wYWNpdHk6IDAuNjtcbn1cblxuLnN0YXR1cy1jeWNsZS1jYXJkOmhhcyhcblx0XHQuc2V0dGluZy1pdGVtLWNvbnRyb2wgLmNoZWNrYm94LWNvbnRhaW5lcjpub3QoLmlzLWVuYWJsZWQpXG5cdClcblx0LnN0YXR1cy1jeWNsZS1ib2R5IHtcblx0cG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cbi8qIFF1aWNrIFRlbXBsYXRlcyBTZWN0aW9uICovXG4uc3RhdHVzLWN5Y2xlcy1jb250YWluZXIgKyAuc2V0dGluZy1pdGVtIHtcblx0bWFyZ2luLXRvcDogdmFyKC0tc2l6ZS00LTQpO1xufVxuXG4vKiBSZXNwb25zaXZlIGFkanVzdG1lbnRzICovXG5AbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcblx0LnN0YXR1cy1yb3cgLnNldHRpbmctaXRlbS1jb250cm9sIHtcblx0XHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRcdGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuXHR9XG5cblx0LnN0YXR1cy1yb3cgaW5wdXRbdHlwZT1cInRleHRcIl0ge1xuXHRcdHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG5cdH1cbn1cblxuLyogQWRkIGJ1dHRvbiBzdHlsaW5nICovXG4uc3RhdHVzLWxpc3QtY29udGFpbmVyIC5zZXR0aW5nLWl0ZW0gYnV0dG9uLFxuLnN0YXR1cy1jeWNsZXMtY29udGFpbmVyID4gLnNldHRpbmctaXRlbSBidXR0b24ge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xuXHRjb2xvcjogdmFyKC0tdGV4dC1vbi1hY2NlbnQpO1xuXHRib3JkZXI6IG5vbmU7XG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zKTtcblx0cGFkZGluZzogdmFyKC0tc2l6ZS0yLTIpIHZhcigtLXNpemUtNC0yKTtcblx0Zm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LW1lZGl1bSk7XG5cdGN1cnNvcjogcG9pbnRlcjtcblx0dHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZTtcbn1cblxuLnN0YXR1cy1saXN0LWNvbnRhaW5lciAuc2V0dGluZy1pdGVtIGJ1dHRvbjpob3Zlcixcbi5zdGF0dXMtY3ljbGVzLWNvbnRhaW5lciA+IC5zZXR0aW5nLWl0ZW0gYnV0dG9uOmhvdmVyIHtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50LWhvdmVyKTtcblx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xcHgpO1xuXHRib3gtc2hhZG93OiAwIDJweCA2cHggcmdiYSgwLCAwLCAwLCAwLjE1KTtcbn1cblxuLyogVGVtcGxhdGUgYnV0dG9ucyBpbiBxdWljayB0ZW1wbGF0ZXMgc2VjdGlvbiAqL1xuLnNldHRpbmctaXRlbS1jb250cm9sIGJ1dHRvbltkYXRhLXRvb2x0aXAqPVwiVE9ET1wiXSB7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWdyZWVuKTtcbn1cblxuLnNldHRpbmctaXRlbS1jb250cm9sIGJ1dHRvbltkYXRhLXRvb2x0aXAqPVwiUExBTlwiXSB7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWJsdWUpO1xufVxuXG4uc2V0dGluZy1pdGVtLWNvbnRyb2wgYnV0dG9uW2RhdGEtdG9vbHRpcCo9XCIxXCJdIHtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItcHVycGxlKTtcbn1cblxuLyogRXh0cmEgYnV0dG9uIGljb25zIHN0eWxpbmcgKi9cbi5zdGF0dXMtY3ljbGUtaGVhZGVyIC5zZXR0aW5nLWl0ZW0tY29udHJvbCAuY2xpY2thYmxlLWljb24ge1xuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XG5cdHRyYW5zaXRpb246IGNvbG9yIDAuMTVzIGVhc2U7XG59XG5cbi5zdGF0dXMtY3ljbGUtaGVhZGVyIC5zZXR0aW5nLWl0ZW0tY29udHJvbCAuY2xpY2thYmxlLWljb246aG92ZXIge1xuXHRjb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcbn1cblxuLnN0YXR1cy1jeWNsZS1oZWFkZXJcblx0LnNldHRpbmctaXRlbS1jb250cm9sXG5cdC5jbGlja2FibGUtaWNvblthcmlhLWxhYmVsKj1cIkRlbGV0ZVwiXTpob3Zlcixcbi5zdGF0dXMtcm93IC5jbGlja2FibGUtaWNvblthcmlhLWxhYmVsKj1cIlJlbW92ZVwiXTpob3ZlciB7XG5cdGNvbG9yOiB2YXIoLS1jb2xvci1yZWQpO1xufVxuXG4vKiBBbmltYXRpb24gZm9yIGN5Y2xlIGNhcmRzIC0gcmVtb3ZlZCBwZXIgdXNlciByZXF1ZXN0ICovXG4vKiBDeWNsZSBkcmFnIGZ1bmN0aW9uYWxpdHkgLSByZW1vdmVkLCByZXBsYWNlZCB3aXRoIHVwL2Rvd24gYnV0dG9ucyAqL1xuIiwgIi50Zy1zdGF0dXMtaWNvbiB7XG5cdGRpc3BsYXk6IGlubGluZS1mbGV4O1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHR2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXHRtYXJnaW4tcmlnaHQ6IHZhcigtLXNpemUtMi0zKTtcblx0bWFyZ2luLXRvcDogY2FsYygtMSAqIHZhcigtLXNpemUtMi0xKSk7XG59XG5cbi50Zy1pY29ucy1jb250YWluZXIge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRnYXA6IHZhcigtLXNpemUtMi0yKTtcblx0ZmxleC13cmFwOiB3cmFwO1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cblxuLnRnLWljb25zLWNvbnRhaW5lciAudGctc3RhdHVzLWljb24ge1xuXHRtYXJnaW4tcmlnaHQ6IDA7XG5cdG1hcmdpbi10b3A6IDA7XG59XG5cbi8qIEdsb2JhbCBGaWx0ZXIgQ29udGFpbmVyIFN0eWxlcyAqL1xuLmdsb2JhbC1maWx0ZXItY29udGFpbmVyIHtcblx0bWFyZ2luLWJvdHRvbTogMjBweDtcblx0cGFkZGluZzogMTBweDtcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xuXHRib3JkZXItcmFkaXVzOiA2cHg7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcbn1cblxuLyogRmlsZSBUYXNrIGR5bmFtaWMgY29uZmlndXJhdGlvbiBzdHlsZXMgKi9cbi50YXNrLWdlbml1cy1tZXRhZGF0YS1maWVsZHMtY29udGFpbmVyLFxuLnRhc2stZ2VuaXVzLXRhZ3MtY29udGFpbmVyLFxuLnRhc2stZ2VuaXVzLXBhdGhzLWNvbnRhaW5lcixcbi50YXNrLWdlbml1cy1kYXRlLWZvcm1hdHMtY29udGFpbmVyIHtcblx0bWFyZ2luOiAxcmVtIDA7XG5cdHBhZGRpbmc6IDFyZW07XG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcblx0Ym9yZGVyLXJhZGl1czogOHB4O1xufVxuXG4udGFzay1nZW5pdXMtZmllbGRzLWhlYWRlcixcbi50YXNrLWdlbml1cy10YWdzLWhlYWRlcixcbi50YXNrLWdlbml1cy1wYXRocy1oZWFkZXIsXG4udGFzay1nZW5pdXMtZm9ybWF0cy1oZWFkZXIsXG4udGFzay1nZW5pdXMtZXhhbXBsZXMtaGVhZGVyIHtcblx0Zm9udC1zaXplOiAwLjk1ZW07XG5cdGZvbnQtd2VpZ2h0OiA2MDA7XG5cdG1hcmdpbi1ib3R0b206IDAuNXJlbTtcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcbn1cblxuLnRhc2stZ2VuaXVzLWZpZWxkLWxpc3QsXG4udGFzay1nZW5pdXMtdGFnLWxpc3QsXG4udGFzay1nZW5pdXMtcGF0aC1saXN0LFxuLnRhc2stZ2VuaXVzLWZvcm1hdC1saXN0IHtcblx0ZGlzcGxheTogZmxleDtcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0Z2FwOiAwLjVyZW07XG5cdG1hcmdpbi1ib3R0b206IDFyZW07XG59XG5cbi50YXNrLWdlbml1cy1maWVsZC1pdGVtLFxuLnRhc2stZ2VuaXVzLXRhZy1pdGVtLFxuLnRhc2stZ2VuaXVzLXBhdGgtaXRlbSxcbi50YXNrLWdlbml1cy1mb3JtYXQtaXRlbSB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdGdhcDogMC41cmVtO1xuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xuXHRwYWRkaW5nOiAwLjVyZW07XG5cdGJvcmRlci1yYWRpdXM6IDRweDtcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xuXHR0cmFuc2l0aW9uOiBib3JkZXItY29sb3IgMC4ycztcbn1cblxuLnRhc2stZ2VuaXVzLWZpZWxkLWl0ZW06aG92ZXIsXG4udGFzay1nZW5pdXMtdGFnLWl0ZW06aG92ZXIsXG4udGFzay1nZW5pdXMtcGF0aC1pdGVtOmhvdmVyLFxuLnRhc2stZ2VuaXVzLWZvcm1hdC1pdGVtOmhvdmVyIHtcblx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xufVxuXG4udGFzay1nZW5pdXMtZmllbGQtaW5wdXQsXG4udGFzay1nZW5pdXMtdGFnLWlucHV0LFxuLnRhc2stZ2VuaXVzLXBhdGgtaW5wdXQsXG4udGFzay1nZW5pdXMtZm9ybWF0LWlucHV0IHtcblx0ZmxleDogMTtcblx0cGFkZGluZzogMC40cmVtO1xuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XG5cdGJvcmRlci1yYWRpdXM6IDRweDtcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcblx0Zm9udC1mYW1pbHk6IHZhcigtLWZvbnQtaW50ZXJmYWNlKTtcblx0Zm9udC1zaXplOiAwLjllbTtcbn1cblxuLnRhc2stZ2VuaXVzLWZpZWxkLWlucHV0OmZvY3VzLFxuLnRhc2stZ2VuaXVzLXRhZy1pbnB1dDpmb2N1cyxcbi50YXNrLWdlbml1cy1wYXRoLWlucHV0OmZvY3VzLFxuLnRhc2stZ2VuaXVzLWZvcm1hdC1pbnB1dDpmb2N1cyB7XG5cdG91dGxpbmU6IG5vbmU7XG5cdGJvcmRlci1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcblx0Ym94LXNoYWRvdzogMCAwIDAgMnB4IHZhcigtLWludGVyYWN0aXZlLWFjY2VudC1ob3Zlcik7XG59XG5cbi50YXNrLWdlbml1cy1maWVsZC1kZWxldGUtYnRuLFxuLnRhc2stZ2VuaXVzLXRhZy1kZWxldGUtYnRuLFxuLnRhc2stZ2VuaXVzLXBhdGgtZGVsZXRlLWJ0bixcbi50YXNrLWdlbml1cy1mb3JtYXQtZGVsZXRlLWJ0biB7XG5cdHdpZHRoOiAyOHB4O1xuXHRoZWlnaHQ6IDI4cHg7XG5cdHBhZGRpbmc6IDA7XG5cdGJvcmRlcjogbm9uZTtcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1lcnJvcik7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XG5cdGJvcmRlci1yYWRpdXM6IDRweDtcblx0Y3Vyc29yOiBwb2ludGVyO1xuXHRmb250LXNpemU6IDEuMmVtO1xuXHRmb250LXdlaWdodDogYm9sZDtcblx0ZGlzcGxheTogZmxleDtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4ycztcbn1cblxuLnRhc2stZ2VuaXVzLWZpZWxkLWRlbGV0ZS1idG46aG92ZXIsXG4udGFzay1nZW5pdXMtdGFnLWRlbGV0ZS1idG46aG92ZXIsXG4udGFzay1nZW5pdXMtcGF0aC1kZWxldGUtYnRuOmhvdmVyLFxuLnRhc2stZ2VuaXVzLWZvcm1hdC1kZWxldGUtYnRuOmhvdmVyIHtcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1lcnJvci1ob3Zlcik7XG59XG5cbi50YXNrLWdlbml1cy1hZGQtZmllbGQtYnRuLFxuLnRhc2stZ2VuaXVzLWFkZC10YWctYnRuLFxuLnRhc2stZ2VuaXVzLWFkZC1wYXRoLWJ0bixcbi50YXNrLWdlbml1cy1hZGQtZm9ybWF0LWJ0biB7XG5cdHBhZGRpbmc6IDAuNXJlbSAxcmVtO1xuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XG5cdGJvcmRlci1yYWRpdXM6IDRweDtcblx0Y3Vyc29yOiBwb2ludGVyO1xuXHRmb250LXNpemU6IDAuOWVtO1xuXHR0cmFuc2l0aW9uOiBhbGwgMC4ycztcbn1cblxuLnRhc2stZ2VuaXVzLWFkZC1maWVsZC1idG46aG92ZXIsXG4udGFzay1nZW5pdXMtYWRkLXRhZy1idG46aG92ZXIsXG4udGFzay1nZW5pdXMtYWRkLXBhdGgtYnRuOmhvdmVyLFxuLnRhc2stZ2VuaXVzLWFkZC1mb3JtYXQtYnRuOmhvdmVyIHtcblx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xuXHRjb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcbn1cblxuLyogRGF0ZSBmb3JtYXQgZXhhbXBsZXMgdGFibGUgKi9cbi50YXNrLWdlbml1cy1kYXRlLWV4YW1wbGVzIHtcblx0bWFyZ2luLXRvcDogMXJlbTtcblx0cGFkZGluZzogMXJlbTtcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xuXHRib3JkZXItcmFkaXVzOiA4cHg7XG59XG5cbi50YXNrLWdlbml1cy1kYXRlLWV4YW1wbGVzLXRhYmxlIHtcblx0d2lkdGg6IDEwMCU7XG5cdGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG5cdGZvbnQtc2l6ZTogMC45ZW07XG59XG5cbi50YXNrLWdlbml1cy1kYXRlLWV4YW1wbGVzLXRhYmxlIHRoIHtcblx0dGV4dC1hbGlnbjogbGVmdDtcblx0cGFkZGluZzogMC41cmVtO1xuXHRib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XG5cdGZvbnQtd2VpZ2h0OiA1MDA7XG59XG5cbi50YXNrLWdlbml1cy1kYXRlLWV4YW1wbGVzLXRhYmxlIHRkIHtcblx0cGFkZGluZzogMC40cmVtIDAuNXJlbTtcblx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyLWhvdmVyKTtcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcbn1cblxuLnRhc2stZ2VuaXVzLWRhdGUtZXhhbXBsZXMtdGFibGUgdHI6bGFzdC1jaGlsZCB0ZCB7XG5cdGJvcmRlci1ib3R0b206IG5vbmU7XG59XG5cbi50YXNrLWdlbml1cy1kYXRlLWV4YW1wbGVzLXRhYmxlIHRyOmhvdmVyIHRkIHtcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5LWFsdCk7XG59XG5cbi50YXNrLWdlbml1cy1pZnJhbWUtbW9kYWwge1xuXHR3aWR0aDogOTAlO1xuXHRtYXgtd2lkdGg6IDE0MDBweDtcblx0bWF4LWhlaWdodDogOTB2aDtcblx0b3ZlcmZsb3cteTogYXV0bztcbn1cblxuLnRhc2stZ2VuaXVzLWlmcmFtZS1tb2RhbCAubW9kYWwtdGl0bGUge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRmbGV4LWRpcmVjdGlvbjogcm93O1xufVxuXG4udGltZS1wYXJzaW5nLWV4YW1wbGUge1xuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTItMik7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpO1xuXHRtYXJnaW4tdG9wOiB2YXIoLS1zaXplLTItMik7XG5cdG1hcmdpbi1ib3R0b206IHZhcigtLXNpemUtMi0yKTtcblx0cGFkZGluZy1sZWZ0OiB2YXIoLS1zaXplLTQtMik7XG5cdHBhZGRpbmctcmlnaHQ6IHZhcigtLXNpemUtNC0yKTtcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsKTtcbn1cblxuLnRhc2stZ2VuaXVzLXNldHRpbmdzIC5zZXR0aW5nLWl0ZW0tY29udHJvbCBpbnB1dFt0eXBlPVwidGltZVwiXSB7XG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcblx0cGFkZGluZzogdmFyKC0tc2l6ZS0yLTIpO1xuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XG59XG5cbi50YXNrLWdlbml1cy1zZXR0aW5ncyAuZmlsZS1zb3VyY2Utc3RyYXRlZ3ktY29udGFpbmVyIHtcblx0Ym9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcblx0cGFkZGluZy10b3A6IHZhcigtLXNpemUtNC00KTtcbn1cblxuLmZsdWVudC12aWV3LXRhYnMudGctaW5kZXgtdGFzay1zb3VyY2Utc3dpdGNoZXIge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRhbGlnbi1pdGVtczogc3RyZXRjaDtcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdGdhcDogdmFyKC0tc2l6ZS0yLTIpO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXNpemUtMi0zKTtcblx0cGFkZGluZzogdmFyKC0tc2l6ZS0yLTEpO1xuXHRtYXJnaW4tYm90dG9tOiB2YXIoLS1zaXplLTQtNCk7XG5cdHdpZHRoOiBmaXQtY29udGVudDtcblx0bWFyZ2luLWxlZnQ6IGF1dG87XG5cdG1hcmdpbi1yaWdodDogYXV0bztcbn1cblxuLnRnLWluZGV4LXRhc2stc291cmNlLXN3aXRjaGVyIC5mbHVlbnQtdmlldy10YWIge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRnYXA6IDZweDtcblx0cGFkZGluZzogNnB4IDEycHg7XG5cdGJhY2tncm91bmQ6IG5vbmU7XG5cdGJvcmRlcjogbm9uZTtcblx0Ym9yZGVyLXJhZGl1czogNHB4O1xuXHRmb250LXNpemU6IDE0cHg7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcblx0Y3Vyc29yOiBwb2ludGVyO1xuXHR0cmFuc2l0aW9uOiBhbGwgMC4xNXMgZWFzZTtcbn1cblxuLnRnLWluZGV4LXRhc2stc291cmNlLXN3aXRjaGVyIC5mbHVlbnQtdmlldy10YWI6aG92ZXIge1xuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xufVxuXG4udGctaW5kZXgtdGFzay1zb3VyY2Utc3dpdGNoZXIgLmZsdWVudC12aWV3LXRhYi5pcy1hY3RpdmUge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xuXHRib3gtc2hhZG93OiAwIDFweCAzcHggcmdiYSgwLCAwLCAwLCAwLjEpO1xufVxuXG4udGctaW5kZXgtdGFzay1zb3VyY2Utc3dpdGNoZXIgLmZsdWVudC12aWV3LXRhYi1pY29uIHtcblx0d2lkdGg6IDE2cHg7XG5cdGhlaWdodDogMTZweDtcblx0ZGlzcGxheTogZmxleDtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdGZvbnQtc2l6ZTogMTRweDtcbn1cblxuLnRnLWluZGV4LXRhc2stc291cmNlLXN3aXRjaGVyIC5mbHVlbnQtdmlldy10YWItbGFiZWwge1xuXHRkaXNwbGF5OiBpbmxpbmUtZmxleDtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cblxuLmZpbGUtbmFtZS10ZW1wbGF0ZXMtY29udGFpbmVyIGlucHV0IHtcblx0ZmxleDogMTtcbn1cblxuLmZpbGUtbmFtZS10ZW1wbGF0ZXMtY29udGFpbmVyIC5zZXR0aW5nLWl0ZW0taW5mbyB7XG5cdGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qIFdvcmtzcGFjZSBIaWRkZW4gTW9kdWxlcyBDb25maWd1cmF0aW9uICovXG4ud29ya3NwYWNlLWhpZGRlbi1tb2R1bGVzLWNvbnRhaW5lciB7XG5cdG1hcmdpbi10b3A6IHZhcigtLXNpemUtNC00KTtcblx0bWFyZ2luLWJvdHRvbTogdmFyKC0tc2l6ZS00LTQpO1xuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtNCk7XG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLW0pO1xuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XG59XG5cbi53b3Jrc3BhY2UtaGlkZGVuLW1vZHVsZXMtdGl0bGUge1xuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktbWVkaXVtKTtcblx0Zm9udC13ZWlnaHQ6IDYwMDtcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcblx0bWFyZ2luLWJvdHRvbTogdmFyKC0tc2l6ZS00LTIpO1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRnYXA6IHZhcigtLXNpemUtMi0yKTtcbn1cblxuLndvcmtzcGFjZS1oaWRkZW4tbW9kdWxlcy10aXRsZSBzdmcge1xuXHR3aWR0aDogMThweDtcblx0aGVpZ2h0OiAxOHB4O1xuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XG59XG5cbi53b3Jrc3BhY2UtaGlkZGVuLW1vZHVsZXMtZGVzYyB7XG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbCk7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcblx0bWFyZ2luLWJvdHRvbTogdmFyKC0tc2l6ZS00LTMpO1xuXHRsaW5lLWhlaWdodDogMS41O1xufVxuXG4ud29ya3NwYWNlLW1vZHVsZS1ncm91cHMge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRnYXA6IHZhcigtLXNpemUtNC0zKTtcbn1cblxuLndvcmtzcGFjZS1tb2R1bGUtZ3JvdXAge1xuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XG5cdHBhZGRpbmc6IHZhcigtLXNpemUtNC0yKTtcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xufVxuXG4ud29ya3NwYWNlLW1vZHVsZS1ncm91cC1oZWFkZXIge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRnYXA6IHZhcigtLXNpemUtMi0yKTtcblx0bWFyZ2luLWJvdHRvbTogdmFyKC0tc2l6ZS00LTIpO1xuXHRwYWRkaW5nLWJvdHRvbTogdmFyKC0tc2l6ZS0yLTMpO1xuXHRib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xufVxuXG4ud29ya3NwYWNlLW1vZHVsZS1ncm91cC1pY29uIHtcblx0d2lkdGg6IDE2cHg7XG5cdGhlaWdodDogMTZweDtcblx0ZGlzcGxheTogZmxleDtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdGNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xufVxuXG4ud29ya3NwYWNlLW1vZHVsZS1ncm91cC10aXRsZSB7XG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbCk7XG5cdGZvbnQtd2VpZ2h0OiA2MDA7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XG5cdGZsZXg6IDE7XG59XG5cbi53b3Jrc3BhY2UtbW9kdWxlLWdyb3VwLWNvdW50IHtcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsZXIpO1xuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcblx0cGFkZGluZzogMnB4IDhweDtcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpO1xufVxuXG4ud29ya3NwYWNlLW1vZHVsZS1saXN0IHtcblx0ZGlzcGxheTogZ3JpZDtcblx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoYXV0by1maWxsLCBtaW5tYXgoMjAwcHgsIDFmcikpO1xuXHRnYXA6IHZhcigtLXNpemUtMi0zKTtcbn1cblxuLndvcmtzcGFjZS1tb2R1bGUtaXRlbSB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdGdhcDogdmFyKC0tc2l6ZS0yLTIpO1xuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTItMyk7XG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpO1xuXHRib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcblx0Y3Vyc29yOiBwb2ludGVyO1xuXHR0cmFuc2l0aW9uOiBhbGwgMC4xNXMgZWFzZTtcblx0dXNlci1zZWxlY3Q6IG5vbmU7XG59XG5cbi53b3Jrc3BhY2UtbW9kdWxlLWl0ZW06aG92ZXIge1xuXHRib3JkZXItY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyLWhvdmVyKTtcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnktYWx0KTtcbn1cblxuLndvcmtzcGFjZS1tb2R1bGUtaXRlbS5pcy1oaWRkZW4ge1xuXHRvcGFjaXR5OiAwLjY7XG59XG5cbi53b3Jrc3BhY2UtbW9kdWxlLWl0ZW0uaXMtaGlkZGVuOmhvdmVyIHtcblx0b3BhY2l0eTogMC44O1xufVxuXG4ud29ya3NwYWNlLW1vZHVsZS1jaGVja2JveCB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXHRmbGV4LXNocmluazogMDtcbn1cblxuLndvcmtzcGFjZS1tb2R1bGUtY2hlY2tib3ggaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcblx0bWFyZ2luOiAwO1xuXHRjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi53b3Jrc3BhY2UtbW9kdWxlLWljb24ge1xuXHR3aWR0aDogMTZweDtcblx0aGVpZ2h0OiAxNnB4O1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xuXHRmbGV4LXNocmluazogMDtcbn1cblxuLndvcmtzcGFjZS1tb2R1bGUtbGFiZWwge1xuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGwpO1xuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xuXHRmbGV4OiAxO1xuXHRsaW5lLWhlaWdodDogMS4zO1xufVxuXG4ud29ya3NwYWNlLW1vZHVsZS1pdGVtLmlzLWhpZGRlbiAud29ya3NwYWNlLW1vZHVsZS1sYWJlbCB7XG5cdHRleHQtZGVjb3JhdGlvbjogbGluZS10aHJvdWdoO1xuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XG59XG5cbi8qIFdvcmtzcGFjZSBsaXN0IGljb24gaW4gc2V0dGluZ3MgKi9cbi53b3Jrc3BhY2UtbmFtZS13aXRoLWljb24ge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRnYXA6IHZhcigtLXNpemUtMi0yKTtcbn1cblxuLndvcmtzcGFjZS1saXN0LWljb24ge1xuXHR3aWR0aDogMTZweDtcblx0aGVpZ2h0OiAxNnB4O1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xuXHRmbGV4LXNocmluazogMDtcbn1cbiIsICIvKiBCZXRhIHRlc3Qgd2FybmluZyBiYW5uZXIgc3R5bGVzICovXHJcbi5iZXRhLXRlc3Qtd2FybmluZy1iYW5uZXIge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XHJcblx0Z2FwOiAxMnB4O1xyXG5cdHBhZGRpbmc6IDE2cHg7XHJcblx0bWFyZ2luLWJvdHRvbTogMjBweDtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1vcmFuZ2UpO1xyXG5cdGJvcmRlci1yYWRpdXM6IDhweDtcclxufVxyXG5cclxuLmJldGEtd2FybmluZy1pY29uIHtcclxuXHRmb250LXNpemU6IDIwcHg7XHJcblx0bGluZS1oZWlnaHQ6IDE7XHJcblx0ZmxleC1zaHJpbms6IDA7XHJcblx0bWFyZ2luLXRvcDogMnB4O1xyXG59XHJcblxyXG4uYmV0YS13YXJuaW5nLWNvbnRlbnQge1xyXG5cdGZsZXg6IDE7XHJcblx0bWluLXdpZHRoOiAwO1xyXG59XHJcblxyXG4uYmV0YS13YXJuaW5nLXRpdGxlIHtcclxuXHRmb250LXdlaWdodDogNjAwO1xyXG5cdGZvbnQtc2l6ZTogMTRweDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG5cdG1hcmdpbi1ib3R0b206IDhweDtcclxufVxyXG5cclxuLmJldGEtd2FybmluZy10ZXh0IHtcclxuXHRmb250LXNpemU6IDEzcHg7XHJcblx0bGluZS1oZWlnaHQ6IDEuNDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcbn1cclxuIiwgIi8qIFNldHRpbmdzIFNlYXJjaCBDb21wb25lbnQgU3R5bGVzICovXHJcblxyXG4vKiDmkJzntKLovpPlhaXmoYblrrnlmaggLSDkvb/nlKggT2JzaWRpYW4g5qCH5YeG6L6T5YWl5qGG5qC35byPICovXHJcbi50Zy1zZXR0aW5ncy1zZWFyY2gtaW5wdXQtY29udGFpbmVyIHtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWlucHV0LWJhY2tncm91bmQpO1xyXG5cdGJvcmRlcjogdmFyKC0taW5wdXQtYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpO1xyXG5cdHRyYW5zaXRpb246IGFsbCAwLjE1cyBlYXNlLWluLW91dDtcclxuXHRtaW4taGVpZ2h0OiB2YXIoLS1pbnB1dC1oZWlnaHQpO1xyXG59XHJcblxyXG4udGctc2V0dGluZ3Mtc2VhcmNoLWlucHV0LWNvbnRhaW5lcjpmb2N1cy13aXRoaW4ge1xyXG5cdGJvcmRlci1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxuXHRib3gtc2hhZG93OiAwIDAgMCAycHggcmdiYSh2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQtcmdiKSwgMC4yKTtcclxufVxyXG5cclxuLyog5pCc57Si5Zu+5qCHICovXHJcbi50Zy1zZXR0aW5ncy1zZWFyY2gtaWNvbiB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdHBhZGRpbmc6IDAgdmFyKC0tc2l6ZS00LTIpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRmbGV4LXNocmluazogMDtcclxufVxyXG5cclxuLnRnLXNldHRpbmdzLXNlYXJjaC1pY29uIHN2ZyB7XHJcblx0d2lkdGg6IHZhcigtLWljb24tcyk7XHJcblx0aGVpZ2h0OiB2YXIoLS1pY29uLXMpO1xyXG59XHJcblxyXG4vKiDmkJzntKLovpPlhaXmoYYgLSDph43nva4gT2JzaWRpYW4g6buY6K6k5qC35byPICovXHJcbi50Zy1zZXR0aW5ncy1zZWFyY2gtaW5wdXQge1xyXG5cdGZsZXg6IDE7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS0yLTIpIHZhcigtLXNpemUtMi0xKTtcclxuXHRib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcclxuXHRiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLW1lZGl1bSk7XHJcblx0b3V0bGluZTogbm9uZTtcclxufVxyXG5cclxuaW5wdXQudGctc2V0dGluZ3Mtc2VhcmNoLWlucHV0IHtcclxuXHRib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcclxuXHRib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi50Zy1zZXR0aW5ncy1zZWFyY2gtaW5wdXQ6OnBsYWNlaG9sZGVyIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0b3BhY2l0eTogMC43O1xyXG59XHJcblxyXG4vKiDmuIXpmaTmjInpkq4gLSDkvb/nlKggT2JzaWRpYW4g5oyJ6ZKu5qC35byPICovXHJcbi50Zy1zZXR0aW5ncy1zZWFyY2gtY2xlYXIge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTItMSk7XHJcblx0bWFyZ2luLXJpZ2h0OiB2YXIoLS1zaXplLTItMSk7XHJcblx0Ym9yZGVyOiBub25lICFpbXBvcnRhbnQ7XHJcblx0YmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLWJ1dHRvbi1yYWRpdXMpO1xyXG5cdHRyYW5zaXRpb246IGFsbCAwLjE1cyBlYXNlLWluLW91dDtcclxuXHRib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XHJcblx0ZmxleC1zaHJpbms6IDA7XHJcblx0d2lkdGg6IHZhcigtLWNsaWNrYWJsZS1pY29uLXNpemUpO1xyXG5cdGhlaWdodDogdmFyKC0tY2xpY2thYmxlLWljb24tc2l6ZSk7XHJcbn1cclxuXHJcbi50Zy1zZXR0aW5ncy1zZWFyY2gtY2xlYXI6aG92ZXIge1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpICFpbXBvcnRhbnQ7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxufVxyXG5cclxuLnRnLXNldHRpbmdzLXNlYXJjaC1jbGVhcjphY3RpdmUge1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYWN0aXZlKSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4udGctc2V0dGluZ3Mtc2VhcmNoLWNsZWFyIHN2ZyB7XHJcblx0d2lkdGg6IHZhcigtLWljb24teHMpO1xyXG5cdGhlaWdodDogdmFyKC0taWNvbi14cyk7XHJcbn1cclxuXHJcbi8qIOaQnOe0oue7k+aenOWuueWZqCAtIOS9v+eUqCBPYnNpZGlhbiDlvLnlh7roj5zljZXmoLflvI8gKi9cclxuLnRnLXNldHRpbmdzLXNlYXJjaC1yZXN1bHRzIHtcclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0dG9wOiBjYWxjKDEwMCUgKyB2YXIoLS1zaXplLTItMSkpO1xyXG5cdGxlZnQ6IDA7XHJcblx0cmlnaHQ6IDA7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcclxuXHRib3JkZXI6IHZhcigtLWJvcmRlci13aWR0aCkgc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1tKTtcclxuXHRib3gtc2hhZG93OiB2YXIoLS1zaGFkb3ctbCk7XHJcblx0ei1pbmRleDogdmFyKC0tbGF5ZXItcG9wb3Zlcik7XHJcblx0bWF4LWhlaWdodDogMzIwcHg7XHJcblx0b3ZlcmZsb3cteTogYXV0bztcclxuXHRvdmVyZmxvdy14OiBoaWRkZW47XHJcbn1cclxuXHJcbi8qIOaQnOe0oue7k+aenOmhuSAtIOS9v+eUqCBPYnNpZGlhbiDoj5zljZXpobnmoLflvI8gKi9cclxuLnRnLXNldHRpbmdzLXNlYXJjaC1yZXN1bHQge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtMikgdmFyKC0tc2l6ZS00LTMpO1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHRib3JkZXItYm90dG9tOiB2YXIoLS1ib3JkZXItd2lkdGgpIHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyLWhvdmVyKTtcclxuXHR0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMXMgZWFzZS1pbi1vdXQ7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG59XHJcblxyXG4udGctc2V0dGluZ3Mtc2VhcmNoLXJlc3VsdDpsYXN0LWNoaWxkIHtcclxuXHRib3JkZXItYm90dG9tOiBub25lO1xyXG59XHJcblxyXG4udGctc2V0dGluZ3Mtc2VhcmNoLXJlc3VsdDpob3ZlcixcclxuLnRnLXNldHRpbmdzLXNlYXJjaC1yZXN1bHQtc2VsZWN0ZWQge1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpO1xyXG59XHJcblxyXG4udGctc2V0dGluZ3Mtc2VhcmNoLXJlc3VsdDphY3RpdmUge1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYWN0aXZlKTtcclxufVxyXG5cclxuLyog5pCc57Si57uT5p6c5ZCN56ewICovXHJcbi50Zy1zZXR0aW5ncy1zZWFyY2gtcmVzdWx0LW5hbWUge1xyXG5cdGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1tZWRpdW0pO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcblx0bWFyZ2luLWJvdHRvbTogdmFyKC0tc2l6ZS0yLTEpO1xyXG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1tZWRpdW0pO1xyXG5cdGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC10aWdodCk7XHJcbn1cclxuXHJcbi8qIOaQnOe0oue7k+aenOWFg+S/oeaBryAqL1xyXG4udGctc2V0dGluZ3Mtc2VhcmNoLXJlc3VsdC1tZXRhIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0Z2FwOiB2YXIoLS1zaXplLTItMik7XHJcblx0bWFyZ2luLWJvdHRvbTogdmFyKC0tc2l6ZS0yLTEpO1xyXG59XHJcblxyXG4udGctc2V0dGluZ3Mtc2VhcmNoLXJlc3VsdC1jYXRlZ29yeSB7XHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsZXIpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS0yLTEpIHZhcigtLXNpemUtMi0yKTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XHJcblx0Zm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LW1lZGl1bSk7XHJcblx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuXHRsZXR0ZXItc3BhY2luZzogMC4wMmVtO1xyXG59XHJcblxyXG4vKiDmkJzntKLnu5Pmnpzmj4/ov7AgKi9cclxuLnRnLXNldHRpbmdzLXNlYXJjaC1yZXN1bHQtZGVzYyB7XHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0bGluZS1oZWlnaHQ6IHZhcigtLWxpbmUtaGVpZ2h0LW5vcm1hbCk7XHJcblx0bWFyZ2luLXRvcDogdmFyKC0tc2l6ZS0yLTEpO1xyXG59XHJcblxyXG4vKiDml6Dnu5PmnpznirbmgIEgKi9cclxuLnRnLXNldHRpbmdzLXNlYXJjaC1uby1yZXN1bHQge1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtNC00KSB2YXIoLS1zaXplLTQtMyk7XHJcblx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktbWVkaXVtKTtcclxuXHRmb250LXN0eWxlOiBpdGFsaWM7XHJcbn1cclxuXHJcbi8qIOiuvue9rumhuemrmOS6ruaViOaenCAqL1xyXG4udGctc2V0dGluZ3Mtc2VhcmNoLWhpZ2hsaWdodCB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpICFpbXBvcnRhbnQ7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpO1xyXG5cdHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC42cyBlYXNlLW91dDtcclxuXHRhbmltYXRpb246IHRnLXNldHRpbmdzLXNlYXJjaC1wdWxzZSAwLjZzIGVhc2Utb3V0O1xyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIHRnLXNldHRpbmdzLXNlYXJjaC1wdWxzZSB7XHJcblx0MCUge1xyXG5cdFx0YmFja2dyb3VuZDogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxuXHRcdHRyYW5zZm9ybTogc2NhbGUoMSk7XHJcblx0fVxyXG5cdDUwJSB7XHJcblx0XHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcblx0XHR0cmFuc2Zvcm06IHNjYWxlKDEuMDEpO1xyXG5cdH1cclxuXHQxMDAlIHtcclxuXHRcdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcclxuXHRcdHRyYW5zZm9ybTogc2NhbGUoMSk7XHJcblx0fVxyXG59XHJcblxyXG4vKiDplK7nm5jlr7zoiKrmjIfnpLrlmaggKi9cclxuLnRnLXNldHRpbmdzLXNlYXJjaC1yZXN1bHQtc2VsZWN0ZWQge1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpICFpbXBvcnRhbnQ7XHJcblx0b3V0bGluZTogdmFyKC0tYm9yZGVyLXdpZHRoKSBzb2xpZCB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdG91dGxpbmUtb2Zmc2V0OiAtMXB4O1xyXG59XHJcblxyXG4vKiDlk43lupTlvI/orr7orqEgKi9cclxuQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XHJcblx0LnRnLXNldHRpbmdzLXNlYXJjaC1yZXN1bHRzIHtcclxuXHRcdG1heC1oZWlnaHQ6IDI4MHB4O1xyXG5cdFx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpO1xyXG5cdH1cclxuXHJcblx0LnRnLXNldHRpbmdzLXNlYXJjaC1yZXN1bHQge1xyXG5cdFx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTIpIHZhcigtLXNpemUtNC0yKTtcclxuXHR9XHJcblxyXG5cdC50Zy1zZXR0aW5ncy1zZWFyY2gtcmVzdWx0LW5hbWUge1xyXG5cdFx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsKTtcclxuXHR9XHJcblxyXG5cdC50Zy1zZXR0aW5ncy1zZWFyY2gtcmVzdWx0LWNhdGVnb3J5IHtcclxuXHRcdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbGVyKTtcclxuXHRcdHBhZGRpbmc6IHZhcigtLXNpemUtMi0xKSB2YXIoLS1zaXplLTItMSk7XHJcblx0fVxyXG59XHJcblxyXG4vKiDmu5rliqjmnaHmoLflvI8gLSDkvb/nlKggT2JzaWRpYW4g5qCH5YeG5rua5Yqo5p2hICovXHJcbi50Zy1zZXR0aW5ncy1zZWFyY2gtcmVzdWx0cyB7XHJcblx0c2Nyb2xsYmFyLXdpZHRoOiB0aGluO1xyXG5cdHNjcm9sbGJhci1jb2xvcjogdmFyKC0tc2Nyb2xsYmFyLXRodW1iLWJnKSB0cmFuc3BhcmVudDtcclxufVxyXG5cclxuLnRnLXNldHRpbmdzLXNlYXJjaC1yZXN1bHRzOjotd2Via2l0LXNjcm9sbGJhciB7XHJcblx0d2lkdGg6IHZhcigtLXNjcm9sbGJhci10aGluLXdpZHRoKTtcclxufVxyXG5cclxuLnRnLXNldHRpbmdzLXNlYXJjaC1yZXN1bHRzOjotd2Via2l0LXNjcm9sbGJhci10cmFjayB7XHJcblx0YmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XHJcbn1cclxuXHJcbi50Zy1zZXR0aW5ncy1zZWFyY2gtcmVzdWx0czo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWIge1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLXNjcm9sbGJhci10aHVtYi1iZyk7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tc2Nyb2xsYmFyLXRoaW4tdGh1bWItcmFkaXVzKTtcclxuXHRib3JkZXI6IDJweCBzb2xpZCB0cmFuc3BhcmVudDtcclxuXHRiYWNrZ3JvdW5kLWNsaXA6IGNvbnRlbnQtYm94O1xyXG59XHJcblxyXG4udGctc2V0dGluZ3Mtc2VhcmNoLXJlc3VsdHM6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1zY3JvbGxiYXItdGh1bWItYmctaG92ZXIpO1xyXG5cdGJhY2tncm91bmQtY2xpcDogY29udGVudC1ib3g7XHJcbn1cclxuXHJcbi8qIOS4juiuvue9ruagh+etvumhteWuueWZqOeahOmXtOi3neiwg+aVtCAqL1xyXG4udGFzay1nZW5pdXMtc2V0dGluZ3MgLnNldHRpbmdzLXRhYnMtY2F0ZWdvcml6ZWQtY29udGFpbmVyIHtcclxuXHRtYXJnaW4tdG9wOiB2YXIoLS1zaXplLTQtMyk7XHJcbn1cclxuXHJcbi8qIOS/ruWkjeWPr+iDveeahCB6LWluZGV4IOmXrumimCAqL1xyXG4udGctc2V0dGluZ3Mtc2VhcmNoLXJlc3VsdHMge1xyXG5cdHotaW5kZXg6IHZhcigtLWxheWVyLXBvcG92ZXIsIDIwMCk7XHJcbn1cclxuXHJcbi8qIOehruS/nei+k+WFpeahhuiBmueEpuaXtueahOagt+W8j+ato+ehriAqL1xyXG4udGctc2V0dGluZ3Mtc2VhcmNoLWlucHV0OmZvY3VzIHtcclxuXHRib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcclxuXHRvdXRsaW5lOiBub25lICFpbXBvcnRhbnQ7XHJcblx0Ym94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4vKiDmkJzntKLlm77moIfnmoTkuqTkupLnirbmgIEgKi9cclxuLnRnLXNldHRpbmdzLXNlYXJjaC1pY29uIHtcclxuXHR0cmFuc2l0aW9uOiBjb2xvciAwLjE1cyBlYXNlLWluLW91dDtcclxufVxyXG5cclxuLnRnLXNldHRpbmdzLXNlYXJjaC1pbnB1dC1jb250YWluZXI6Zm9jdXMtd2l0aGluIC50Zy1zZXR0aW5ncy1zZWFyY2gtaWNvbiB7XHJcblx0Y29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcbn1cclxuXHJcbi8qIOa4hemZpOaMiemSrueahOWbvuagh+agt+W8jyAqL1xyXG4udGctc2V0dGluZ3Mtc2VhcmNoLWNsZWFyIHtcclxuXHRvcGFjaXR5OiAwLjg7XHJcbn1cclxuXHJcbi50Zy1zZXR0aW5ncy1zZWFyY2gtY2xlYXI6aG92ZXIge1xyXG5cdG9wYWNpdHk6IDE7XHJcbn1cclxuIiwgIi8qIFNldHRpbmdzIE1pZ3JhdGlvbiBTdHlsaW5nICovXHJcblxyXG4uc2V0dGluZy1pdGVtLWluZm8ubW9kLXdhcm5pbmcge1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItZXJyb3IpO1xyXG5cdGJvcmRlci1yYWRpdXM6IDZweDtcclxuXHRwYWRkaW5nOiAxNnB4O1xyXG5cdG1hcmdpbjogMTJweCAwO1xyXG59XHJcblxyXG4uc2V0dGluZy1pdGVtLWluZm8ubW9kLXdhcm5pbmcgLnNldHRpbmctaXRlbS1uYW1lIHtcclxuXHRmb250LXdlaWdodDogNjAwO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LWVycm9yKTtcclxuXHRtYXJnaW4tYm90dG9tOiA4cHg7XHJcbn1cclxuXHJcbi5zZXR0aW5nLWl0ZW0taW5mby5tb2Qtd2FybmluZyAuc2V0dGluZy1pdGVtLWRlc2NyaXB0aW9uIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0bWFyZ2luLWJvdHRvbTogMTJweDtcclxufVxyXG5cclxuLnNldHRpbmctaXRlbS1pbmZvLm1vZC13YXJuaW5nIC5zZXR0aW5nLWl0ZW0tZGVzY3JpcHRpb24gcCB7XHJcblx0bWFyZ2luOiA0cHggMDtcclxufVxyXG5cclxuLnNldHRpbmctaXRlbS1pbmZvLm1vZC13YXJuaW5nIC5zZXR0aW5nLWl0ZW0tY29udHJvbCB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRnYXA6IDhweDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG59XHJcblxyXG4uc2V0dGluZy1pdGVtLWluZm8ubW9kLXdhcm5pbmcgYnV0dG9uLm1vZC1jdGEge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtb24tYWNjZW50KTtcclxuXHRib3JkZXI6IG5vbmU7XHJcblx0Ym9yZGVyLXJhZGl1czogNHB4O1xyXG5cdHBhZGRpbmc6IDhweCAxNnB4O1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHRmb250LXdlaWdodDogNTAwO1xyXG59XHJcblxyXG4uc2V0dGluZy1pdGVtLWluZm8ubW9kLXdhcm5pbmcgYnV0dG9uLm1vZC1jdGE6aG92ZXIge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudC1ob3Zlcik7XHJcbn1cclxuXHJcbi5zZXR0aW5nLWl0ZW0taW5mby5tb2Qtd2FybmluZyBidXR0b24ubW9kLW11dGVkIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGJvcmRlci1yYWRpdXM6IDRweDtcclxuXHRwYWRkaW5nOiA4cHggMTZweDtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcbn1cclxuXHJcbi5zZXR0aW5nLWl0ZW0taW5mby5tb2Qtd2FybmluZyBidXR0b24ubW9kLW11dGVkOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG59XHJcblxyXG4vKiBNaWdyYXRpb24gU3VjY2VzcyBJbmRpY2F0b3IgKi9cclxuLnNldHRpbmctaXRlbS1pbmZvLm1vZC1zdWNjZXNzIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1ncmVlbi1iZyk7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tY29sb3ItZ3JlZW4pO1xyXG5cdGJvcmRlci1yYWRpdXM6IDZweDtcclxuXHRwYWRkaW5nOiAxNnB4O1xyXG5cdG1hcmdpbjogMTJweCAwO1xyXG59XHJcblxyXG4uc2V0dGluZy1pdGVtLWluZm8ubW9kLXN1Y2Nlc3MgLnNldHRpbmctaXRlbS1uYW1lIHtcclxuXHRmb250LXdlaWdodDogNjAwO1xyXG5cdGNvbG9yOiB2YXIoLS1jb2xvci1ncmVlbik7XHJcblx0bWFyZ2luLWJvdHRvbTogOHB4O1xyXG59XHJcblxyXG4vKiBGaWxlU291cmNlIEludGVncmF0aW9uIE5vdGljZSAqL1xyXG4uZmlsZS1zb3VyY2Utbm90aWNlIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Ym9yZGVyLXJhZGl1czogNnB4O1xyXG5cdHBhZGRpbmc6IDEycHg7XHJcblx0bWFyZ2luOiA4cHggMDtcclxufVxyXG5cclxuLmZpbGUtc291cmNlLW5vdGljZSAubm90aWNlLXRpdGxlIHtcclxuXHRmb250LXdlaWdodDogNjAwO1xyXG5cdG1hcmdpbi1ib3R0b206IDRweDtcclxufVxyXG5cclxuLmZpbGUtc291cmNlLW5vdGljZSAubm90aWNlLWRlc2NyaXB0aW9uIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0Zm9udC1zaXplOiAwLjllbTtcclxufVxyXG4iLCAiLyogV29ya3NwYWNlIFNldHRpbmdzIFNlbGVjdG9yIFN0eWxlcyAqL1xyXG5cclxuLyogTWFpbiBjb250YWluZXIgZm9yIHRoZSBoZWFkZXIgYmFyICovXHJcbi50Zy1zZXR0aW5ncy1oZWFkZXItYmFyIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0Z2FwOiAxMnB4O1xyXG5cdG1hcmdpbi1ib3R0b206IDIwcHg7XHJcblx0d2lkdGg6IDEwMCU7XHJcbn1cclxuXHJcbi8qIENvbnRhaW5lciBmb3Igd29ya3NwYWNlIHNlbGVjdG9yICovXHJcbi50Zy13b3Jrc3BhY2Utc2VsZWN0b3ItY29udGFpbmVyIHtcclxuXHRmbGV4LXNocmluazogMDtcclxufVxyXG5cclxuLyogV29ya3NwYWNlIHNlbGVjdG9yIGJ1dHRvbiAqL1xyXG4ud29ya3NwYWNlLXNldHRpbmdzLXNlbGVjdG9yIHtcclxuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbn1cclxuXHJcbi53b3Jrc3BhY2Utc2V0dGluZ3Mtc2VsZWN0b3ItYnV0dG9uIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0Z2FwOiA4cHg7XHJcblx0cGFkZGluZzogNnB4IDEycHg7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1mb3JtLWZpZWxkKTtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Ym9yZGVyLXJhZGl1czogNnB4O1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHR0cmFuc2l0aW9uOiBhbGwgMC4xNXMgZWFzZTtcclxuXHRtaW4td2lkdGg6IDE1MHB4O1xyXG5cdGhlaWdodDogMzRweDsgLyogTWF0Y2ggc2VhcmNoIGJhciBoZWlnaHQgKi9cclxufVxyXG5cclxuLndvcmtzcGFjZS1zZXR0aW5ncy1zZWxlY3Rvci1idXR0b246aG92ZXIge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpO1xyXG5cdGJvcmRlci1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXItaG92ZXIpO1xyXG59XHJcblxyXG4ud29ya3NwYWNlLXNldHRpbmdzLXNlbGVjdG9yLWJ1dHRvbjphY3RpdmUge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYWN0aXZlLWhvdmVyKTtcclxufVxyXG5cclxuLyogV29ya3NwYWNlIGljb24gKi9cclxuLndvcmtzcGFjZS1zZXR0aW5ncy1zZWxlY3Rvci1idXR0b24gLndvcmtzcGFjZS1pY29uIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0d2lkdGg6IDIwcHg7XHJcblx0aGVpZ2h0OiAyMHB4O1xyXG5cdGZsZXgtc2hyaW5rOiAwO1xyXG59XHJcblxyXG4ud29ya3NwYWNlLXNldHRpbmdzLXNlbGVjdG9yLWJ1dHRvbiAud29ya3NwYWNlLWljb24gc3ZnIHtcclxuXHR3aWR0aDogMTZweDtcclxuXHRoZWlnaHQ6IDE2cHg7XHJcbn1cclxuXHJcbi8qIFdvcmtzcGFjZSBuYW1lICovXHJcbi53b3Jrc3BhY2Utc2V0dGluZ3Mtc2VsZWN0b3ItYnV0dG9uIC53b3Jrc3BhY2UtbmFtZSB7XHJcblx0ZmxleDogMTtcclxuXHRmb250LXNpemU6IDE0cHg7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxuXHR3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcblx0dGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XHJcbn1cclxuXHJcbi8qIERyb3Bkb3duIGFycm93IGljb24gKi9cclxuLndvcmtzcGFjZS1zZXR0aW5ncy1zZWxlY3Rvci1idXR0b24gLndvcmtzcGFjZS1kcm9wZG93bi1pY29uIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0d2lkdGg6IDE2cHg7XHJcblx0aGVpZ2h0OiAxNnB4O1xyXG5cdGZsZXgtc2hyaW5rOiAwO1xyXG5cdG1hcmdpbi1sZWZ0OiBhdXRvO1xyXG59XHJcblxyXG4ud29ya3NwYWNlLXNldHRpbmdzLXNlbGVjdG9yLWJ1dHRvbiAud29ya3NwYWNlLWRyb3Bkb3duLWljb24gc3ZnIHtcclxuXHR3aWR0aDogMTJweDtcclxuXHRoZWlnaHQ6IDEycHg7XHJcblx0ZmlsbDogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0dHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMTVzIGVhc2U7XHJcbn1cclxuXHJcbi53b3Jrc3BhY2Utc2V0dGluZ3Mtc2VsZWN0b3ItYnV0dG9uOmhvdmVyIC53b3Jrc3BhY2UtZHJvcGRvd24taWNvbiBzdmcge1xyXG5cdGZpbGw6IHZhcigtLXRleHQtbm9ybWFsKTtcclxufVxyXG5cclxuLyogQWRqdXN0IHNlYXJjaCBjb250YWluZXIgdG8gdGFrZSByZW1haW5pbmcgc3BhY2UgKi9cclxuLnRnLXNldHRpbmdzLWhlYWRlci1iYXIgLnRnLXNldHRpbmdzLXNlYXJjaC1jb250YWluZXIge1xyXG5cdGZsZXg6IDE7XHJcblx0bWF4LXdpZHRoOiBub25lO1xyXG59XHJcblxyXG4vKiBFbnN1cmUgc2VhcmNoIGlucHV0IGNvbnRhaW5lciBmaWxscyB3aWR0aCAqL1xyXG4udGctc2V0dGluZ3MtaGVhZGVyLWJhciAudGctc2V0dGluZ3Mtc2VhcmNoLWlucHV0LWNvbnRhaW5lciB7XHJcblx0d2lkdGg6IDEwMCU7XHJcbn1cclxuXHJcbi8qIE1haW4gY29udGFpbmVyIGFkanVzdG1lbnRzICovXHJcbi50Zy1zZXR0aW5ncy1tYWluLWNvbnRhaW5lciB7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG59XHJcblxyXG4vKiBFbnN1cmUgc2VhcmNoIHJlc3VsdHMgYXBwZWFyIGJlbG93IHRoZSBoZWFkZXIgYmFyICovXHJcbi50Zy1zZXR0aW5ncy1tYWluLWNvbnRhaW5lciAudGctc2V0dGluZ3Mtc2VhcmNoLXJlc3VsdHMge1xyXG5cdG1hcmdpbi10b3A6IDhweDtcclxufVxyXG5cclxuLyogTW9iaWxlIHJlc3BvbnNpdmUgYWRqdXN0bWVudHMgKi9cclxuQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XHJcblx0LnRnLXNldHRpbmdzLWhlYWRlci1iYXIge1xyXG5cdFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRcdGFsaWduLWl0ZW1zOiBzdHJldGNoO1xyXG5cdFx0Z2FwOiA4cHg7XHJcblx0fVxyXG5cclxuXHQud29ya3NwYWNlLXNldHRpbmdzLXNlbGVjdG9yLWJ1dHRvbiB7XHJcblx0XHR3aWR0aDogMTAwJTtcclxuXHRcdG1pbi13aWR0aDogdW5zZXQ7XHJcblx0fVxyXG5cclxuXHQudGctc2V0dGluZ3MtaGVhZGVyLWJhciAudGctc2V0dGluZ3Mtc2VhcmNoLWNvbnRhaW5lciB7XHJcblx0XHR3aWR0aDogMTAwJTtcclxuXHR9XHJcbn1cclxuXHJcbi50YXNrLWdlbml1cy1zZXR0aW5ncyAudGctd29ya3NwYWNlLXNlbGVjdG9yLWNvbnRhaW5lciAud29ya3NwYWNlLWljb24ge1xyXG5cdHdpZHRoOiB1bnNldDtcclxuXHRoZWlnaHQ6IHVuc2V0O1xyXG5cdGNvbG9yOiBpbmhlcml0O1xyXG59XHJcbiIsICIvKiBTZXR0aW5ncyBNb2RhbCAtIE9ic2lkaWFuIHZlcnRpY2FsLXRhYnMgc3R5bGUgKi9cbi5tb2RhbC5tb2Qtc2V0dGluZ3MtbW9kYWwge1xuXHR3aWR0aDogOTB2dztcblx0aGVpZ2h0OiA4NXZoO1xuXHRtYXgtd2lkdGg6IDExMDBweDtcblx0bWF4LWhlaWdodDogODUwcHg7XG5cblx0Lm1vZGFsLWNvbnRlbnQge1xuXHRcdHBhZGRpbmc6IDA7XG5cdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdG92ZXJmbG93OiBoaWRkZW47XG5cdH1cblxuXHQubW9kYWwtY2xvc2UtYnV0dG9uIHtcblx0XHR6LWluZGV4OiAxMDtcblx0fVxufVxuXG4vKiBWZXJ0aWNhbCB0YWJzIGNvbnRhaW5lciAqL1xuXG4vKiBWZXJ0aWNhbCB0YWIgaGVhZGVyIChzaWRlYmFyKSAqL1xuLyogLm1vZGFsLm1vZC1zZXR0aW5ncy1tb2RhbCAudmVydGljYWwtdGFiLWhlYWRlciB7XG5cdHdpZHRoOiAyNDBweDtcblx0bWluLXdpZHRoOiAyMDBweDtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xuXHRib3JkZXItcmlnaHQ6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdG92ZXJmbG93OiBoaWRkZW47XG5cdGZsZXgtc2hyaW5rOiAwO1xufSAqL1xuXG4vKiBTZWFyY2ggaW4gaGVhZGVyICovXG4ubW9kYWwubW9kLXNldHRpbmdzIC52ZXJ0aWNhbC10YWItaGVhZGVyLXNlYXJjaCB7XG5cdHBhZGRpbmc6IHZhcigtLXNpemUtNC0zKTtcblx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcblx0ZmxleC1zaHJpbms6IDA7XG5cblx0aW5wdXQge1xuXHRcdHdpZHRoOiAxMDAlO1xuXHRcdHBhZGRpbmc6IHZhcigtLXNpemUtMi0yKSB2YXIoLS1zaXplLTItMyk7XG5cdFx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xuXHRcdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zKTtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xuXHRcdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbCk7XG5cdH1cbn1cblxuLyogSGVhZGVyIGdyb3VwICovXG4ubW9kYWwubW9kLXNldHRpbmdzLW1vZGFsIC52ZXJ0aWNhbC10YWItaGVhZGVyLWdyb3VwIHtcblx0bWFyZ2luLWJvdHRvbTogdmFyKC0tc2l6ZS0yLTIpO1xuXG5cdC52ZXJ0aWNhbC10YWItaGVhZGVyLWdyb3VwLXRpdGxlIHtcblx0XHRwYWRkaW5nOiB2YXIoLS1zaXplLTItMikgdmFyKC0tc2l6ZS00LTMpO1xuXHRcdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbGVyKTtcblx0XHRmb250LXdlaWdodDogdmFyKC0tZm9udC13ZWlnaHQtc2VtaWJvbGQpO1xuXHRcdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcblx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXHRcdGxldHRlci1zcGFjaW5nOiAwLjA1ZW07XG5cdH1cblxuXHQudmVydGljYWwtdGFiLWhlYWRlci1ncm91cC1pdGVtcyB7XG5cdFx0ZGlzcGxheTogZmxleDtcblx0XHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHR9XG59XG5cbi8qIE5hdmlnYXRpb24gaXRlbSAqL1xuLyogLm1vZGFsLm1vZC1zZXR0aW5ncy1tb2RhbCAudmVydGljYWwtdGFiLW5hdi1pdGVtIHtcblx0cGFkZGluZzogdmFyKC0tc2l6ZS0yLTIpIHZhcigtLXNpemUtNC0zKTtcblx0bWFyZ2luOiAxcHggdmFyKC0tc2l6ZS0yLTIpO1xuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XG5cdGN1cnNvcjogcG9pbnRlcjtcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGwpO1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRnYXA6IHZhcigtLXNpemUtMi0zKTtcblx0dHJhbnNpdGlvbjogYWxsIDAuMTVzIGVhc2U7XG5cdHVzZXItc2VsZWN0OiBub25lO1xuXG5cdCY6aG92ZXIge1xuXHRcdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpO1xuXHRcdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XG5cdH1cblxuXHQmLmlzLWFjdGl2ZSB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcblx0XHRjb2xvcjogdmFyKC0tdGV4dC1vbi1hY2NlbnQpO1xuXHRcdGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1tZWRpdW0pO1xuXHR9XG5cblx0Ji5pcy1oaWRkZW4ge1xuXHRcdGRpc3BsYXk6IG5vbmU7XG5cdH1cblxuXHQmLmlzLXNlYXJjaC1tYXRjaCB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3Zlcik7XG5cdH1cblxuXHQudmVydGljYWwtdGFiLW5hdi1pdGVtLWljb24ge1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0XHR3aWR0aDogMThweDtcblx0XHRoZWlnaHQ6IDE4cHg7XG5cdFx0ZmxleC1zaHJpbms6IDA7XG5cdFx0b3BhY2l0eTogMC44O1xuXHR9XG5cblx0Ji5pcy1hY3RpdmUgLnZlcnRpY2FsLXRhYi1uYXYtaXRlbS1pY29uIHtcblx0XHRvcGFjaXR5OiAxO1xuXHR9XG5cblx0LnZlcnRpY2FsLXRhYi1uYXYtaXRlbS10aXRsZSB7XG5cdFx0ZmxleDogMTtcblx0XHR3aGl0ZS1zcGFjZTogbm93cmFwO1xuXHRcdG92ZXJmbG93OiBoaWRkZW47XG5cdFx0dGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG5cdH1cblxuXHQudmVydGljYWwtdGFiLW5hdi1pdGVtLWNoZXZyb24ge1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0XHR3aWR0aDogMTZweDtcblx0XHRoZWlnaHQ6IDE2cHg7XG5cdFx0b3BhY2l0eTogMC41O1xuXHRcdGZsZXgtc2hyaW5rOiAwO1xuXHR9XG5cblx0Ji5pcy1hY3RpdmUgLnZlcnRpY2FsLXRhYi1uYXYtaXRlbS1jaGV2cm9uIHtcblx0XHRvcGFjaXR5OiAwLjg7XG5cdH1cbn0gKi9cblxuLyogQ29udGVudCBoZWFkZXIgKi9cbi5tb2RhbC5tb2Qtc2V0dGluZ3MgLnZlcnRpY2FsLXRhYi1jb250ZW50LWhlYWRlciB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGZsZXgtd3JhcDogd3JhcDtcblx0YWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG5cdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcblx0Z2FwOiB2YXIoLS1zaXplLTItMik7XG5cdHBhZGRpbmc6IHZhcigtLXNpemUtNC0yKSB2YXIoLS1zaXplLTQtMik7XG5cdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XG5cdGZsZXgtc2hyaW5rOiAwO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xuXHRtYXJnaW4tYm90dG9tOiB2YXIoLS1zaXplLTQtNCk7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cblx0LnZlcnRpY2FsLXRhYi1jb250ZW50LWhlYWRlci10aXRsZSB7XG5cdFx0ZGlzcGxheTogZmxleDtcblx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRcdGdhcDogdmFyKC0tc2l6ZS0yLTMpO1xuXHRcdG1hcmdpbjogMDtcblx0XHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktbGFyZ2UpO1xuXHRcdGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1zZW1pYm9sZCk7XG5cdFx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcblx0XHRwYWRkaW5nOiAwO1xuXG5cdFx0LnZlcnRpY2FsLXRhYi1jb250ZW50LWhlYWRlci1pY29uIHtcblx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRcdFx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdFx0XHRjb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcblx0XHR9XG5cdH1cblxuXHQudmVydGljYWwtdGFiLWNvbnRlbnQtaGVhZGVyLWFjdGlvbnMge1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHRnYXA6IHZhcigtLXNpemUtMi0zKTtcblx0XHRmbGV4LXNocmluazogMDtcblxuXHRcdGJ1dHRvbiB7XG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHRcdGdhcDogdmFyKC0tc2l6ZS0yLTIpO1xuXHRcdFx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsKTtcblx0XHR9XG5cdH1cblxuXHQudmVydGljYWwtdGFiLWNvbnRlbnQtaGVhZGVyLWRlc2Mge1xuXHRcdHdpZHRoOiAxMDAlO1xuXHRcdG1hcmdpbjogMDtcblx0XHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGwpO1xuXHRcdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcblx0XHRsaW5lLWhlaWdodDogMS41O1xuXHR9XG59XG5cbi8qIENvbnRlbnQgYm9keSAqL1xuLm1vZGFsLm1vZC1zZXR0aW5ncy1tb2RhbCAudmVydGljYWwtdGFiLWNvbnRlbnQtYm9keSB7XG5cdGZsZXg6IDE7XG5cdG92ZXJmbG93LXk6IGF1dG87XG5cdHBhZGRpbmc6IHZhcigtLXNpemUtNC00KSB2YXIoLS1zaXplLTQtNik7XG5cdGFuaW1hdGlvbjogc2V0dGluZ3NGYWRlSW4gMC4xNXMgZWFzZS1vdXQ7XG5cblx0LyogRW5zdXJlIHNldHRpbmcgaXRlbXMgZG9uJ3QgaGF2ZSBleGNlc3NpdmUgcGFkZGluZyAqL1xuXHQuc2V0dGluZy1pdGVtIHtcblx0XHRwYWRkaW5nLXRvcDogdmFyKC0tc2l6ZS00LTMpO1xuXHRcdHBhZGRpbmctYm90dG9tOiB2YXIoLS1zaXplLTQtMyk7XG5cdH1cblxuXHQuc2V0dGluZy1pdGVtOmZpcnN0LWNoaWxkIHtcblx0XHRwYWRkaW5nLXRvcDogMDtcblx0XHRib3JkZXItdG9wOiBub25lO1xuXHR9XG5cblx0LyogU2VjdGlvbiBoZWFkZXJzIHdpdGhpbiBjb250ZW50ICovXG5cdGgzIHtcblx0XHRtYXJnaW4tdG9wOiB2YXIoLS1zaXplLTQtNCk7XG5cdFx0bWFyZ2luLWJvdHRvbTogdmFyKC0tc2l6ZS0yLTMpO1xuXHRcdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1tZWRpdW0pO1xuXHRcdGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1zZW1pYm9sZCk7XG5cdFx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcblxuXHRcdCY6Zmlyc3QtY2hpbGQge1xuXHRcdFx0bWFyZ2luLXRvcDogMDtcblx0XHR9XG5cdH1cbn1cblxuLyogRW1wdHkgc3RhdGUgKi9cbi5tb2RhbC5tb2Qtc2V0dGluZ3MtbW9kYWwgLnZlcnRpY2FsLXRhYi1jb250ZW50LWVtcHR5IHtcblx0ZGlzcGxheTogZmxleDtcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdGhlaWdodDogMTAwJTtcblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTgpO1xuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcbn1cblxuLyogQW5pbWF0aW9uIGZvciB0YWIgc3dpdGNoaW5nICovXG5Aa2V5ZnJhbWVzIHNldHRpbmdzRmFkZUluIHtcblx0ZnJvbSB7XG5cdFx0b3BhY2l0eTogMDtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNHB4KTtcblx0fVxuXHR0byB7XG5cdFx0b3BhY2l0eTogMTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG5cdH1cbn1cblxuLyogUmVzcG9uc2l2ZSBhZGp1c3RtZW50cyAqL1xuLyogQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XG5cdC5tb2RhbC5tb2Qtc2V0dGluZ3MtbW9kYWwge1xuXHRcdHdpZHRoOiA5NXZ3O1xuXHRcdGhlaWdodDogOTB2aDtcblx0fVxuXG5cdC5tb2RhbC5tb2Qtc2V0dGluZ3MtbW9kYWwgLnZlcnRpY2FsLXRhYi1oZWFkZXIge1xuXHRcdHdpZHRoOiAxODBweDtcblx0XHRtaW4td2lkdGg6IDE1MHB4O1xuXG5cdFx0LnZlcnRpY2FsLXRhYi1oZWFkZXItZ3JvdXAtdGl0bGUge1xuXHRcdFx0cGFkZGluZzogdmFyKC0tc2l6ZS0yLTEpIHZhcigtLXNpemUtMi0zKTtcblx0XHRcdGZvbnQtc2l6ZTogMTBweDtcblx0XHR9XG5cblx0XHQudmVydGljYWwtdGFiLW5hdi1pdGVtIHtcblx0XHRcdHBhZGRpbmc6IHZhcigtLXNpemUtMi0xKSB2YXIoLS1zaXplLTItMyk7XG5cdFx0XHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGxlcik7XG5cdFx0fVxuXHR9XG5cblx0Lm1vZGFsLm1vZC1zZXR0aW5ncy1tb2RhbCAudmVydGljYWwtdGFiLWNvbnRlbnQtaGVhZGVyIHtcblx0XHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtMykgdmFyKC0tc2l6ZS00LTQpO1xuXHR9XG5cblx0Lm1vZGFsLm1vZC1zZXR0aW5ncy1tb2RhbCAudmVydGljYWwtdGFiLWNvbnRlbnQtYm9keSB7XG5cdFx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTMpIHZhcigtLXNpemUtNC00KTtcblx0fVxufSAqL1xuXG5AbWVkaWEgKG1heC13aWR0aDogNjAwcHgpIHtcblx0Lm1vZGFsLm1vZC1zZXR0aW5ncy1tb2RhbCAudmVydGljYWwtdGFicy1jb250YWluZXIge1xuXHRcdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdH1cblxuXHQubW9kYWwubW9kLXNldHRpbmdzLW1vZGFsIC52ZXJ0aWNhbC10YWItaGVhZGVyIHtcblx0XHR3aWR0aDogMTAwJTtcblx0XHRoZWlnaHQ6IGF1dG87XG5cdFx0bWF4LWhlaWdodDogMjAwcHg7XG5cdFx0Ym9yZGVyLXJpZ2h0OiBub25lO1xuXHRcdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XG5cdFx0b3ZlcmZsb3cteTogYXV0bztcblxuXHRcdC52ZXJ0aWNhbC10YWItaGVhZGVyLWdyb3VwIHtcblx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRmbGV4LXdyYXA6IHdyYXA7XG5cdFx0XHRnYXA6IHZhcigtLXNpemUtMi0xKTtcblx0XHRcdG1hcmdpbi1ib3R0b206IDA7XG5cdFx0XHRwYWRkaW5nOiB2YXIoLS1zaXplLTItMik7XG5cblx0XHRcdC52ZXJ0aWNhbC10YWItaGVhZGVyLWdyb3VwLXRpdGxlIHtcblx0XHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHRcdH1cblxuXHRcdFx0LnZlcnRpY2FsLXRhYi1oZWFkZXItZ3JvdXAtaXRlbXMge1xuXHRcdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0XHRmbGV4LWRpcmVjdGlvbjogcm93O1xuXHRcdFx0XHRmbGV4LXdyYXA6IHdyYXA7XG5cdFx0XHRcdGdhcDogdmFyKC0tc2l6ZS0yLTEpO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdC8qIC52ZXJ0aWNhbC10YWItbmF2LWl0ZW0ge1xuXHRcdFx0bWFyZ2luOiAwO1xuXHRcdFx0cGFkZGluZzogdmFyKC0tc2l6ZS0yLTEpIHZhcigtLXNpemUtMi0yKTtcblxuXHRcdFx0LnZlcnRpY2FsLXRhYi1uYXYtaXRlbS1jaGV2cm9uIHtcblx0XHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHRcdH1cblx0XHR9ICovXG5cdH1cbn1cblxuLyogTW9iaWxlLXNwZWNpZmljIHN0eWxlcyAqL1xuLmlzLW1vYmlsZSAubW9kYWwubW9kLXNldHRpbmdzIHtcblx0LnZlcnRpY2FsLXRhYi1oZWFkZXIge1xuXHRcdHdpZHRoOiAxMDAlO1xuXHRcdGhlaWdodDogMTAwJTtcblx0XHRtYXgtaGVpZ2h0OiBub25lO1xuXHRcdGJvcmRlci1yaWdodDogbm9uZTtcblx0XHRvdmVyZmxvdy15OiBhdXRvO1xuXG5cdFx0Ji5pcy1tb2JpbGUtaGlkZGVuIHtcblx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0fVxuXG5cdFx0LnZlcnRpY2FsLXRhYi1oZWFkZXItZ3JvdXAge1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogdmFyKC0tc2l6ZS00LTIpO1xuXG5cdFx0XHQudmVydGljYWwtdGFiLWhlYWRlci1ncm91cC10aXRsZSB7XG5cdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0fVxuXG5cdFx0XHQudmVydGljYWwtdGFiLWhlYWRlci1ncm91cC1pdGVtcyB7XG5cdFx0XHRcdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0LyogLnZlcnRpY2FsLXRhYi1uYXYtaXRlbSB7XG5cdFx0XHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtMykgdmFyKC0tc2l6ZS00LTQpO1xuXG5cdFx0XHQudmVydGljYWwtdGFiLW5hdi1pdGVtLWNoZXZyb24ge1xuXHRcdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0fVxuXHRcdH0gKi9cblx0fVxuXG5cdC52ZXJ0aWNhbC10YWItY29udGVudC1jb250YWluZXIge1xuXHRcdHdpZHRoOiAxMDAlO1xuXHRcdGhlaWdodDogMTAwJTtcblxuXHRcdCYuaXMtbW9iaWxlLWhpZGRlbiB7XG5cdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdH1cblx0fVxuXG5cdC52ZXJ0aWNhbC10YWItY29udGVudC1oZWFkZXIge1xuXHRcdHBhZGRpbmc6IHZhcigtLXNpemUtNC0zKSB2YXIoLS1zaXplLTQtNCk7XG5cdH1cblxuXHQudmVydGljYWwtdGFiLWNvbnRlbnQtYm9keSB7XG5cdFx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTMpIHZhcigtLXNpemUtNC00KTtcblx0fVxufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBTZXR0aW5ncyBFbnRyeSBQYWdlIChQbHVnaW5TZXR0aW5nVGFiKVxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udGFzay1nZW5pdXMtc2V0dGluZ3MtZW50cnkge1xuXHRtYXgtd2lkdGg6IDgwMHB4O1xuXHRtYXJnaW46IDAgYXV0bztcblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTQpO1xufVxuXG4uc2V0dGluZ3MtZW50cnktaGVhZGVyIHtcblx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRtYXJnaW4tYm90dG9tOiB2YXIoLS1zaXplLTQtOCk7XG5cdHBhZGRpbmctYm90dG9tOiB2YXIoLS1zaXplLTQtNik7XG5cdG1hcmdpbi1ibG9jay1zdGFydDogdmFyKC0tc2l6ZS00LTgpO1xuXHRib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xufVxuXG4uc2V0dGluZ3MtZW50cnktdGl0bGUtY29udGFpbmVyIHtcblx0ZGlzcGxheTogZmxleDtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdGdhcDogdmFyKC0tc2l6ZS00LTMpO1xuXHRtYXJnaW4tYm90dG9tOiB2YXIoLS1zaXplLTQtMyk7XG59XG5cbi5zZXR0aW5ncy1lbnRyeS1sb2dvIHtcblx0ZGlzcGxheTogZmxleDtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdHdpZHRoOiA0OHB4O1xuXHRoZWlnaHQ6IDQ4cHg7XG5cdGNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xuXG5cdC0taWNvbi1zaXplOiA0OHB4O1xufVxuXG4uc2V0dGluZ3MtZW50cnktdGl0bGUtdGV4dCB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuXG5cdGgyIHtcblx0XHRtYXJnaW46IDA7XG5cdFx0cGFkZGluZzogMDtcblx0XHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktbGFyZ2UpO1xuXHRcdGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1ib2xkKTtcblx0XHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xuXHR9XG5cblx0LnNldHRpbmdzLWVudHJ5LXZlcnNpb24ge1xuXHRcdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbGVyKTtcblx0XHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XG5cdH1cbn1cblxuLnNldHRpbmdzLWVudHJ5LWRlc2Mge1xuXHRtYXgtd2lkdGg6IDUwMHB4O1xuXHRtYXJnaW46IDAgYXV0bztcblxuXHRwIHtcblx0XHRtYXJnaW46IDA7XG5cdFx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsKTtcblx0XHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XG5cdFx0bGluZS1oZWlnaHQ6IDEuNjtcblx0fVxufVxuXG4uc2V0dGluZ3MtZW50cnktYWN0aW9uIHtcblx0bWFyZ2luLWJvdHRvbTogdmFyKC0tc2l6ZS00LTYpO1xuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtNCk7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLW0pO1xuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XG5cblx0LnNldHRpbmctaXRlbSB7XG5cdFx0Ym9yZGVyOiBub25lO1xuXHRcdHBhZGRpbmc6IDA7XG5cdH1cblxuXHQuc2V0dGluZy1pdGVtLWluZm8ge1xuXHRcdGZsZXg6IDE7XG5cdH1cblxuXHQuc2V0dGluZy1pdGVtLWNvbnRyb2wgYnV0dG9uLm1vZC1jdGEge1xuXHRcdHBhZGRpbmc6IHZhcigtLXNpemUtNC0yKSB2YXIoLS1zaXplLTQtNik7XG5cdFx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLW1lZGl1bSk7XG5cdH1cbn1cblxuLnNldHRpbmdzLWVudHJ5LWxpbmtzIHtcblx0bWFyZ2luLWJsb2NrLWVuZDogdmFyKC0tc2l6ZS00LTYpO1xuXHRtYXJnaW4tYmxvY2stc3RhcnQ6IHZhcigtLXNpemUtNC00KTtcblxuXHRoMyB7XG5cdFx0bWFyZ2luOiAwIDAgdmFyKC0tc2l6ZS00LTMpO1xuXHRcdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1tZWRpdW0pO1xuXHRcdGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1zZW1pYm9sZCk7XG5cdFx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcblx0fVxufVxuXG4uc2V0dGluZ3MtZW50cnktbGlua3MtZ3JpZCB7XG5cdGRpc3BsYXk6IGdyaWQ7XG5cdGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KGF1dG8tZml0LCBtaW5tYXgoMTUwcHgsIDFmcikpO1xuXHRnYXA6IHZhcigtLXNpemUtNC0yKTtcbn1cblxuLnNldHRpbmdzLWVudHJ5LWxpbmsge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRnYXA6IHZhcigtLXNpemUtMi0zKTtcblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTIpIHZhcigtLXNpemUtNC0zKTtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zKTtcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xuXHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbCk7XG5cdHRyYW5zaXRpb246IGFsbCAwLjE1cyBlYXNlO1xuXG5cdCY6aG92ZXIge1xuXHRcdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpO1xuXHRcdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XG5cdFx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xuXHR9XG5cblx0LnNldHRpbmdzLWVudHJ5LWxpbmstaWNvbiB7XG5cdFx0ZGlzcGxheTogZmxleDtcblx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRcdGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXHRcdHdpZHRoOiAxOHB4O1xuXHRcdGhlaWdodDogMThweDtcblx0XHRjb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcblx0fVxufVxuXG4uc2V0dGluZ3MtZW50cnktZmVhdHVyZXMge1xuXHRoMyB7XG5cdFx0bWFyZ2luOiAwIDAgdmFyKC0tc2l6ZS00LTMpO1xuXHRcdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1tZWRpdW0pO1xuXHRcdGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXdlaWdodC1zZW1pYm9sZCk7XG5cdFx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcblx0fVxufVxuXG4uc2V0dGluZ3MtZW50cnktZmVhdHVyZXMtZ3JpZCB7XG5cdGRpc3BsYXk6IGdyaWQ7XG5cdGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KGF1dG8tZml0LCBtaW5tYXgoMjIwcHgsIDFmcikpO1xuXHRnYXA6IHZhcigtLXNpemUtNC0zKTtcbn1cblxuLnNldHRpbmdzLWVudHJ5LWZlYXR1cmUge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRhbGlnbi1pdGVtczogZmxleC1zdGFydDtcblx0Z2FwOiB2YXIoLS1zaXplLTQtMik7XG5cdHBhZGRpbmc6IHZhcigtLXNpemUtNC0zKTtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1tKTtcblx0dHJhbnNpdGlvbjogYWxsIDAuMTVzIGVhc2U7XG5cblx0Jjpob3ZlciB7XG5cdFx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlci1ob3Zlcik7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xcHgpO1xuXHRcdGJveC1zaGFkb3c6IDAgMnB4IDhweCByZ2JhKDAsIDAsIDAsIDAuMDgpO1xuXHR9XG5cblx0LnNldHRpbmdzLWVudHJ5LWZlYXR1cmUtaWNvbiB7XG5cdFx0ZGlzcGxheTogZmxleDtcblx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRcdGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXHRcdHdpZHRoOiAzMnB4O1xuXHRcdGhlaWdodDogMzJweDtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xuXHRcdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zKTtcblx0XHRjb2xvcjogdmFyKC0tdGV4dC1vbi1hY2NlbnQpO1xuXHRcdGZsZXgtc2hyaW5rOiAwO1xuXG5cdFx0c3ZnIHtcblx0XHRcdHdpZHRoOiAxOHB4O1xuXHRcdFx0aGVpZ2h0OiAxOHB4O1xuXHRcdH1cblx0fVxuXG5cdC5zZXR0aW5ncy1lbnRyeS1mZWF0dXJlLXRleHQge1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0XHRnYXA6IHZhcigtLXNpemUtMi0xKTtcblxuXHRcdHN0cm9uZyB7XG5cdFx0XHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGwpO1xuXHRcdFx0Zm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtd2VpZ2h0LW1lZGl1bSk7XG5cdFx0XHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xuXHRcdH1cblxuXHRcdHNwYW4ge1xuXHRcdFx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsZXIpO1xuXHRcdFx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xuXHRcdFx0bGluZS1oZWlnaHQ6IDEuNDtcblx0XHR9XG5cdH1cbn1cbiIsICIvKiBPbmJvYXJkaW5nIENvbXBvbmVudCBQcmV2aWV3cyBTdHlsZXMgKi9cblxuLm9uYm9hcmRpbmctdmlldzpoYXMoLmNvbXBvbmVudC1zaG93Y2FzZSkgLm9uYm9hcmRpbmctY29udGVudCB7XG5cdG92ZXJmbG93LXk6IGhpZGRlbjtcbn1cblxuLm9uYm9hcmRpbmctdmlldzpoYXMoLmNvbXBvbmVudC1zaG93Y2FzZSwgLmludHJvLWxpbmUpIC5vbmJvYXJkaW5nLWhlYWRlciB7XG5cdHBhZGRpbmc6IGNhbGModmFyKC0tb25ib2FyZGluZy1zcGFjaW5nKSAqIDIpIHZhcigtLW9uYm9hcmRpbmctc3BhY2luZylcblx0XHR2YXIoLS1zaXplLTQtMikgdmFyKC0tb25ib2FyZGluZy1zcGFjaW5nKTtcbn1cblxuLm9uYm9hcmRpbmctdmlldyAub25ib2FyZGluZy1oZWFkZXIge1xuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5mbHVlbnQtdG9wLW5hdmlnYXRpb24uY29tcG9uZW50LXByZXZpZXcge1xuXHRvdmVyZmxvdy14OiBhdXRvO1xufVxuXG4uZmx1ZW50LXNpZGViYXIuY29tcG9uZW50LXByZXZpZXcge1xuXHR3aWR0aDogMTAwJTtcbn1cblxuLmNvbXBvbmVudC1zaG93Y2FzZTpoYXMoXG5cdFx0LnRnLWZsdWVudC1jb250YWluZXIuY29tcG9uZW50LXByZXZpZXctc2lkZWJhclxuXHRcdFx0KyAudGctZmx1ZW50LWNvbnRhaW5lci5jb21wb25lbnQtcHJldmlldy10b3BuYXZcblx0KVxuXHQudGctZmx1ZW50LWNvbnRhaW5lciB7XG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XG59XG5cbi50Zy1mbHVlbnQtY29udGFpbmVyLmNvbXBvbmVudC1wcmV2aWV3LXNpZGViYXIge1xuXHR3aWR0aDogMjAwcHg7XG5cdG1pbi13aWR0aDogMjAwcHg7XG5cdGJvcmRlci1yaWdodDogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcbn1cblxuLnRnLWZsdWVudC1jb250YWluZXIuY29tcG9uZW50LXByZXZpZXctdG9wbmF2IHtcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcbn1cblxuLyogQ29tcG9uZW50IHNob3djYXNlIGNvbnRhaW5lciAqL1xuLmNvbXBvbmVudC1zaG93Y2FzZSB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGdhcDogdmFyKC0tc2l6ZS00LTYpO1xuXHRtYXJnaW46IHZhcigtLXNpemUtNC00KSAwO1xuXHRtaW4taGVpZ2h0OiA0MDBweDtcblx0bWluLXdpZHRoOiA5MCU7XG59XG5cbi5jb21wb25lbnQtc2hvd2Nhc2UtcHJldmlldyB7XG5cdGZsZXg6IDE7XG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLW0pO1xuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtNCk7XG5cdG92ZXJmbG93OiBoaWRkZW47XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRmbGV4LWRpcmVjdGlvbjogcm93O1xuXHRvdmVyZmxvdy14OiBhdXRvO1xufVxuXG4uY29tcG9uZW50LXNob3djYXNlLWRlc2NyaXB0aW9uIHtcblx0ZmxleDogMTtcblx0ZGlzcGxheTogZmxleDtcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0Z2FwOiB2YXIoLS1zaXplLTQtMyk7XG59XG5cbi5jb21wb25lbnQtc2hvd2Nhc2UtZGVzY3JpcHRpb24gaDMge1xuXHRtYXJnaW46IDA7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XG59XG5cbi5jb21wb25lbnQtc2hvd2Nhc2UtZGVzY3JpcHRpb24gcCB7XG5cdG1hcmdpbjogMDtcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xuXHRsaW5lLWhlaWdodDogMS42O1xufVxuXG4uY29tcG9uZW50LWZlYXR1cmUtbGlzdCB7XG5cdGxpc3Qtc3R5bGU6IG5vbmU7XG5cdHBhZGRpbmc6IDA7XG5cdG1hcmdpbjogMDtcblx0ZGlzcGxheTogZmxleDtcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0Z2FwOiB2YXIoLS1zaXplLTQtMik7XG59XG5cbi5jb21wb25lbnQtZmVhdHVyZS1saXN0IGxpIHtcblx0ZGlzcGxheTogZmxleDtcblx0YWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG5cdGdhcDogdmFyKC0tc2l6ZS00LTIpO1xuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xufVxuXG4uY29tcG9uZW50LWZlYXR1cmUtbGlzdCBsaTo6YmVmb3JlIHtcblx0Y29udGVudDogXCLinJNcIjtcblx0Y29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XG5cdGZvbnQtd2VpZ2h0OiBib2xkO1xuXHRmbGV4LXNocmluazogMDtcbn1cblxuLyogQ29tcG9uZW50IHByZXZpZXcgYWRqdXN0bWVudHMgKi9cbi5jb21wb25lbnQtcHJldmlldyB7XG5cdHBvaW50ZXItZXZlbnRzOiBub25lO1xuXHR1c2VyLXNlbGVjdDogbm9uZTtcbn1cblxuLyogU2NhbGUgZG93biBwcmV2aWV3cyB0byBmaXQgKi9cbi5jb21wb25lbnQtcHJldmlldy1zaWRlYmFyIHtcblx0bWF4LXdpZHRoOiAzMDBweDtcbn1cblxuLmNvbXBvbmVudC1wcmV2aWV3LXBvcG92ZXIge1xuXHRtYXgtd2lkdGg6IDM1MHB4O1xufVxuXG4vKiBEaXNhYmxlIGludGVyYWN0aW9ucyBpbiBwcmV2aWV3cyAqL1xuLmNvbXBvbmVudC1wcmV2aWV3IGlucHV0LFxuLmNvbXBvbmVudC1wcmV2aWV3IGJ1dHRvbixcbi5jb21wb25lbnQtcHJldmlldyAuY2xpY2thYmxlLWljb24ge1xuXHRwb2ludGVyLWV2ZW50czogbm9uZTtcblx0Y3Vyc29yOiBkZWZhdWx0O1xufVxuXG4vKiBDb21wb25lbnQgdGFicyBmb3Igc3dpdGNoaW5nIHZpZXdzICovXG4uY29tcG9uZW50LXRhYnMge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRnYXA6IHZhcigtLXNpemUtNC0yKTtcblx0bWFyZ2luLWJvdHRvbTogdmFyKC0tc2l6ZS00LTQpO1xuXHRib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xuXHRwYWRkaW5nLWJvdHRvbTogdmFyKC0tc2l6ZS00LTIpO1xufVxuXG4uY29tcG9uZW50LXRhYiB7XG5cdHBhZGRpbmc6IHZhcigtLXNpemUtNC0yKSB2YXIoLS1zaXplLTQtNCk7XG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zKTtcblx0Y3Vyc29yOiBwb2ludGVyO1xuXHR0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlO1xuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XG5cdGZvbnQtd2VpZ2h0OiA1MDA7XG59XG5cbi5jb21wb25lbnQtdGFiOmhvdmVyIHtcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3Zlcik7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XG59XG5cbi5jb21wb25lbnQtdGFiLmlzLWFjdGl2ZSB7XG5cdGJhY2tncm91bmQ6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XG59XG5cbi8qIE11bHRpcGxlIGNvbXBvbmVudCBzaG93Y2FzZSAqL1xuLmNvbXBvbmVudHMtZ3JpZCB7XG5cdGRpc3BsYXk6IGdyaWQ7XG5cdGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xuXHRnYXA6IHZhcigtLXNpemUtNC04KTtcbn1cblxuLyogUmVzcG9uc2l2ZSBhZGp1c3RtZW50cyAqL1xuQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XG5cdC5jb21wb25lbnQtc2hvd2Nhc2Uge1xuXHRcdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdH1cblxuXHQuY29tcG9uZW50LXNob3djYXNlLXByZXZpZXcge1xuXHRcdG1pbi1oZWlnaHQ6IDMwMHB4O1xuXHR9XG59XG5cbi8qIEZpbGUgZmlsdGVyIHByZXZpZXcgc3R5bGVzICovXG4uZmlsZS1maWx0ZXItcHJldmlldyB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdGdhcDogdmFyKC0tc2l6ZS00LTQpO1xufVxuXG4uZmlsZS1maWx0ZXItY29uZmlnIHtcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLW0pO1xuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtNCk7XG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcbn1cblxuLmZpbGUtZmlsdGVyLXN0YXRzLXByZXZpZXcge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRnYXA6IHZhcigtLXNpemUtNC00KTtcblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTMpO1xuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zKTtcbn1cblxuLmZpbHRlci1zdGF0LWl0ZW0ge1xuXHRmbGV4OiAxO1xuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5maWx0ZXItc3RhdC12YWx1ZSB7XG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1sYXJnZXIpO1xuXHRmb250LXdlaWdodDogNjAwO1xuXHRjb2xvcjogdmFyKC0tdGV4dC1hY2NlbnQpO1xuXHRkaXNwbGF5OiBibG9jaztcbn1cblxuLmZpbHRlci1zdGF0LWxhYmVsIHtcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsKTtcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xuXHRkaXNwbGF5OiBibG9jaztcblx0bWFyZ2luLXRvcDogdmFyKC0tc2l6ZS00LTEpO1xufVxuXG4vKiBSZWNvbW1lbmRlZCBjb25maWdzICovXG4ucmVjb21tZW5kZWQtY29uZmlncyB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdGdhcDogdmFyKC0tc2l6ZS00LTIpO1xuXHRtYXJnaW4tdG9wOiB2YXIoLS1zaXplLTQtNCk7XG59XG5cbi5yZWNvbW1lbmRlZC1jb25maWctaXRlbSB7XG5cdHBhZGRpbmc6IHZhcigtLXNpemUtNC0zKTtcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcblx0Y3Vyc29yOiBwb2ludGVyO1xuXHR0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlO1xufVxuXG4ucmVjb21tZW5kZWQtY29uZmlnLWl0ZW06aG92ZXIge1xuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyKTtcblx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xufVxuXG4ucmVjb21tZW5kZWQtY29uZmlnLWl0ZW0gaDQge1xuXHRtYXJnaW46IDAgMCB2YXIoLS1zaXplLTQtMikgMDtcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLW1lZGl1bSk7XG59XG5cbi5yZWNvbW1lbmRlZC1jb25maWctaXRlbSBwIHtcblx0bWFyZ2luOiAwO1xuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbCk7XG59XG5cbi5jb21wb25lbnQtc2hvd2Nhc2UtcHJldmlldy50Zy1mbHVlbnQtY29udGFpbmVyLmNvbXBvbmVudC1wcmV2aWV3LXNpZGViYXJcblx0LmZsdWVudC1zaWRlYmFyIHtcblx0d2lkdGg6IDEwMCU7XG59XG5cbi8qIFByZXZpZXcgaW50ZXJhY3Rpdml0eSAoc2NvcGVkIHRvIHByZXZpZXcgb25seSkgKi9cbi5jb21wb25lbnQtc2hvd2Nhc2UtcHJldmlldyAuY29tcG9uZW50LXByZXZpZXctc2lkZWJhciAuZmx1ZW50LW5hdmlnYXRpb24taXRlbSxcbi5jb21wb25lbnQtc2hvd2Nhc2UtcHJldmlldyAuY29tcG9uZW50LXByZXZpZXctc2lkZWJhciAuZmx1ZW50LXByb2plY3QtaXRlbSB7XG5cdHBvaW50ZXItZXZlbnRzOiBhdXRvO1xuXHRjdXJzb3I6IHBvaW50ZXI7XG5cdG91dGxpbmU6IG5vbmU7XG59XG5cbi5jb21wb25lbnQtc2hvd2Nhc2UtcHJldmlld1xuXHQuY29tcG9uZW50LXByZXZpZXctc2lkZWJhclxuXHQuZmx1ZW50LW5hdmlnYXRpb24taXRlbS5pcy1hY3RpdmUsXG4uY29tcG9uZW50LXNob3djYXNlLXByZXZpZXdcblx0LmNvbXBvbmVudC1wcmV2aWV3LXNpZGViYXJcblx0LmZsdWVudC1wcm9qZWN0LWl0ZW0uaXMtYWN0aXZlIHtcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3Zlcik7XG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zKTtcbn1cblxuLmNvbXBvbmVudC1zaG93Y2FzZS1wcmV2aWV3XG5cdC5jb21wb25lbnQtcHJldmlldy1zaWRlYmFyXG5cdC5mbHVlbnQtbmF2aWdhdGlvbi1pdGVtOmZvY3VzLXZpc2libGUsXG4uY29tcG9uZW50LXNob3djYXNlLXByZXZpZXdcblx0LmNvbXBvbmVudC1wcmV2aWV3LXNpZGViYXJcblx0LmZsdWVudC1wcm9qZWN0LWl0ZW06Zm9jdXMtdmlzaWJsZSB7XG5cdGJveC1zaGFkb3c6IDAgMCAwIDJweCB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XG59XG5cbi8qIEZvY3VzL0RpbSBtb2RlIGZvciBzdGVwIGhpZ2hsaWdodHMgKi9cbi5jb21wb25lbnQtc2hvd2Nhc2UtcHJldmlldy5mb2N1cy1tb2RlIC5pcy1kaW1tZWQge1xuXHRvcGFjaXR5OiAwLjU7XG5cdGZpbHRlcjogZ3JheXNjYWxlKDE1JSk7XG5cdHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuXG4uY29tcG9uZW50LXNob3djYXNlLXByZXZpZXcuZm9jdXMtbW9kZSAuaXMtZm9jdXNlZCB7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0b3V0bGluZTogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWFjY2VudCk7XG5cdG91dGxpbmUtb2Zmc2V0OiAtMXB4O1xuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XG5cdHotaW5kZXg6IDE7XG59XG5cbi5jb21wb25lbnQtc2hvd2Nhc2U6aGFzKC5mbHVlbnQtdG9wLW5hdmlnYXRpb24pOm5vdChcblx0XHQ6aGFzKC5jb21wb25lbnQtcHJldmlldy1zaWRlYmFyKVxuXHQpIHtcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbn1cblxuLmNvbXBvbmVudC1zaG93Y2FzZS1wcmV2aWV3LmZvY3VzLW1vZGUudGctZmx1ZW50LWNvbnRhaW5lci5jb21wb25lbnQtcHJldmlldy10b3BuYXYge1xuXHRmbGV4OiB1bnNldDtcblx0aGVpZ2h0OiBtYXgtY29udGVudDtcbn1cblxuLmZsdWVudC10b3AtbmF2aWdhdGlvbi5jb21wb25lbnQtcHJldmlldy5pcy1mb2N1c2VkIHtcblx0b3V0bGluZTogdW5zZXQ7XG59XG5cbi5jb21wb25lbnQtc2hvd2Nhc2UtcHJldmlldzpoYXMoXG5cdFx0LmNvbXBvbmVudC1wcmV2aWV3LXNpZGViYXIgKyAuY29tcG9uZW50LXByZXZpZXctdG9wbmF2XG5cdClcblx0LmNvbXBvbmVudC1wcmV2aWV3LXNpZGViYXIge1xuXHRib3JkZXItdG9wOiB1bnNldDtcbn1cblxuLmNvbXBvbmVudC1zaG93Y2FzZTpoYXMoXG5cdFx0LnRnLWZsdWVudC1jb250YWluZXIuY29tcG9uZW50LXByZXZpZXctc2lkZWJhclxuXHRcdFx0KyAudGctZmx1ZW50LWNvbnRhaW5lci5jb21wb25lbnQtcHJldmlldy10b3BuYXZcblx0KVxuXHQudGctZmx1ZW50LWNvbnRhaW5lci5jb21wb25lbnQtcHJldmlldy10b3BuYXYge1xuXHRib3JkZXItdG9wOiB1bnNldDtcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcbn1cblxuLm9uYm9hcmRpbmctY29udGVudCAucmVzb3VyY2VzLXNlY3Rpb24ge1xuXHR3aWR0aDogMTAwJTtcbn1cbiIsICIvKiBQbGFjZW1lbnQgUHJldmlldyBTdHlsZXMgKi9cclxuXHJcbi5wbGFjZW1lbnQtcHJldmlldyB7XHJcblx0ZGlzcGxheTogZ3JpZDtcclxuXHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAyZnIgMWZyO1xyXG5cdGdhcDogMnB4O1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtNC0yKTtcclxuXHRoZWlnaHQ6IDE4MHB4O1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XHJcblx0Ym9yZGVyLXJhZGl1czogNHB4O1xyXG59XHJcblxyXG4vKiBTaWRlYmFycyAqL1xyXG4ucGxhY2VtZW50LXNpZGViYXIge1xyXG5cdGJvcmRlci1yYWRpdXM6IDJweDtcclxuXHRwYWRkaW5nOiA0cHg7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdGdhcDogMnB4O1xyXG59XHJcblxyXG4ucGxhY2VtZW50LXNpZGViYXItYWN0aXZlIHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdG9wYWNpdHk6IDAuNDtcclxufVxyXG5cclxuLnBsYWNlbWVudC1zaWRlYmFyLWluYWN0aXZlIHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0b3BhY2l0eTogMC4zO1xyXG59XHJcblxyXG4vKiBTaWRlYmFyIGl0ZW1zICovXHJcbi5wbGFjZW1lbnQtc2lkZWJhci1pdGVtIHtcclxuXHRoZWlnaHQ6IDZweDtcclxuXHRib3JkZXItcmFkaXVzOiAxcHg7XHJcbn1cclxuXHJcbi5wbGFjZW1lbnQtc2lkZWJhci1pdGVtLWFjdGl2ZSB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG5cdG9wYWNpdHk6IDAuMztcclxufVxyXG5cclxuLnBsYWNlbWVudC1zaWRlYmFyLWl0ZW0taW5hY3RpdmUge1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLXRleHQtZmFpbnQpO1xyXG5cdG9wYWNpdHk6IDAuMjtcclxufVxyXG5cclxuLyogUmlnaHQgc2lkZWJhciBpdGVtcyAoc21hbGxlcikgKi9cclxuLnBsYWNlbWVudC1zaWRlYmFyLWl0ZW0tc21hbGwge1xyXG5cdGhlaWdodDogNXB4O1xyXG59XHJcblxyXG4vKiBDZW50ZXIgYXJlYSAqL1xyXG4ucGxhY2VtZW50LWNlbnRlciB7XHJcblx0Ym9yZGVyLXJhZGl1czogMnB4O1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxufVxyXG5cclxuLnBsYWNlbWVudC1jZW50ZXItYWN0aXZlIHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdG9wYWNpdHk6IDAuNDtcclxufVxyXG5cclxuLyogVGFiIGJhciAqL1xyXG4ucGxhY2VtZW50LXRhYi1iYXIge1xyXG5cdGhlaWdodDogMTZweDtcclxuXHRib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdHBhZGRpbmc6IDJweCA0cHg7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRnYXA6IDJweDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG59XHJcblxyXG4ucGxhY2VtZW50LXRhYiB7XHJcblx0d2lkdGg6IDI0cHg7XHJcblx0aGVpZ2h0OiAxMHB4O1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRvcGFjaXR5OiAwLjM7XHJcblx0Ym9yZGVyLXJhZGl1czogMXB4O1xyXG59XHJcblxyXG4ucGxhY2VtZW50LXRhYi1hY3RpdmUge1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLXRleHQtbm9ybWFsKTtcclxuXHRvcGFjaXR5OiAwLjU7XHJcbn1cclxuXHJcbi8qIENvbnRlbnQgYXJlYSAqL1xyXG4ucGxhY2VtZW50LWNvbnRlbnQge1xyXG5cdGZsZXg6IDE7XHJcblx0cGFkZGluZzogNnB4O1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRnYXA6IDRweDtcclxufVxyXG5cclxuLnBsYWNlbWVudC1jb250ZW50LWxpbmUge1xyXG5cdGhlaWdodDogOHB4O1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLXRleHQtbm9ybWFsKTtcclxuXHRvcGFjaXR5OiAwLjM7XHJcblx0Ym9yZGVyLXJhZGl1czogMXB4O1xyXG59XHJcbiIsICIvKiBGaWxlIEZpbHRlciBTZXR0aW5ncyBTdHlsZXMgKi9cblxuLmZpbGUtZmlsdGVyLXJ1bGVzLWNvbnRhaW5lciB7XG5cdG1hcmdpbi10b3A6IDFyZW07XG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcblx0Ym9yZGVyLXJhZGl1czogNnB4O1xuXHRwYWRkaW5nOiAxcmVtO1xuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XG59XG5cbi5maWxlLWZpbHRlci1ydWxlIHtcblx0ZGlzcGxheTogZmxleDtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0Z2FwOiAxcmVtO1xuXHRwYWRkaW5nOiAwLjc1cmVtO1xuXHRtYXJnaW4tYm90dG9tOiAwLjVyZW07XG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcblx0Ym9yZGVyLXJhZGl1czogNHB4O1xuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xuXHRvdmVyZmxvdy14OiBhdXRvO1xufVxuXG4uZmlsZS1maWx0ZXItcnVsZTpsYXN0LWNoaWxkIHtcblx0bWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmZpbGUtZmlsdGVyLXJ1bGUtdHlwZSxcbi5maWxlLWZpbHRlci1ydWxlLXBhdGgsXG4uZmlsZS1maWx0ZXItcnVsZS1zY29wZSxcbi5maWxlLWZpbHRlci1ydWxlLWVuYWJsZWQge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRnYXA6IDAuMjVyZW07XG59XG5cbi5maWxlLWZpbHRlci1ydWxlLXR5cGUge1xuXHRtaW4td2lkdGg6IDgwcHg7XG59XG5cbi5maWxlLWZpbHRlci1ydWxlLXBhdGgge1xuXHRmbGV4OiAxO1xufVxuXG4uZmlsZS1maWx0ZXItcnVsZS1lbmFibGVkIHtcblx0bWluLXdpZHRoOiA2MHB4O1xufVxuXG4uZmlsZS1maWx0ZXItcnVsZSBsYWJlbCB7XG5cdGZvbnQtc2l6ZTogMC44cmVtO1xuXHRmb250LXdlaWdodDogNTAwO1xuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XG59XG5cbi5maWxlLWZpbHRlci1ydWxlIGlucHV0W3R5cGU9XCJ0ZXh0XCJdIHtcblx0cGFkZGluZzogMC4yNXJlbSAwLjVyZW07XG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcblx0Ym9yZGVyLXJhZGl1czogM3B4O1xuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xuXHRmb250LXNpemU6IDAuOXJlbTtcbn1cblxuLmZpbGUtZmlsdGVyLXJ1bGUgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcblx0d2lkdGg6IDE2cHg7XG5cdGhlaWdodDogMTZweDtcbn1cblxuLmZpbGUtZmlsdGVyLXJ1bGUtZGVsZXRlIHtcblx0cGFkZGluZzogMC4yNXJlbTtcblx0Ym9yZGVyOiBub25lO1xuXHRib3JkZXItcmFkaXVzOiAzcHg7XG5cdGJhY2tncm91bmQ6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XG5cdGN1cnNvcjogcG9pbnRlcjtcblx0ZGlzcGxheTogZmxleDtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdG1pbi13aWR0aDogMjhweDtcblx0aGVpZ2h0OiAyOHB4O1xufVxuXG4uZmlsZS1maWx0ZXItYWRkLXJ1bGUge1xuXHRtYXJnaW4tdG9wOiAxcmVtO1xufVxuXG4uZmlsZS1maWx0ZXItYWRkLXJ1bGUgLnNldHRpbmctaXRlbSB7XG5cdGJvcmRlcjogbm9uZTtcblx0cGFkZGluZzogMDtcbn1cblxuLmZpbGUtZmlsdGVyLWFkZC1ydWxlIC5zZXR0aW5nLWl0ZW0tY29udHJvbCB7XG5cdGdhcDogMC41cmVtO1xufVxuXG4uZmlsZS1maWx0ZXItYWRkLXJ1bGUgKyAuc2V0dGluZy1pdGVtIHtcblx0Ym9yZGVyLXRvcDogbm9uZTtcbn1cblxuLmZpbGUtZmlsdGVyLXN0YXRzIHtcblx0bWFyZ2luLXRvcDogMS41cmVtO1xuXHRwYWRkaW5nOiAxcmVtO1xuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XG5cdGJvcmRlci1yYWRpdXM6IDZweDtcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xufVxuXG4uZmlsZS1maWx0ZXItc3RhdCB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0cGFkZGluZzogMC4yNXJlbSAwO1xufVxuXG4uZmlsZS1maWx0ZXItc3RhdDpub3QoOmxhc3QtY2hpbGQpIHtcblx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcblx0bWFyZ2luLWJvdHRvbTogMC4yNXJlbTtcblx0cGFkZGluZy1ib3R0b206IDAuNXJlbTtcbn1cblxuLnN0YXQtbGFiZWwge1xuXHRmb250LXdlaWdodDogNTAwO1xuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xufVxuXG4uc3RhdC12YWx1ZSB7XG5cdGZvbnQtd2VpZ2h0OiA2MDA7XG5cdGNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xufVxuXG4vKiBFcnJvciBzdGF0ZSBmb3Igc3RhdGlzdGljcyAqL1xuLmZpbGUtZmlsdGVyLXN0YXQuZXJyb3Ige1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWVycm9yKTtcblx0Ym9yZGVyLWxlZnQ6IDNweCBzb2xpZCB2YXIoLS10ZXh0LWVycm9yKTtcbn1cblxuLmZpbGUtZmlsdGVyLXN0YXQuZXJyb3IgLnN0YXQtbGFiZWwge1xuXHRjb2xvcjogdmFyKC0tdGV4dC1lcnJvcik7XG59XG5cbi8qIFJlZnJlc2ggYnV0dG9uIHN0eWxpbmcgKi9cbi5zZXR0aW5nLWl0ZW0gLnNldHRpbmctaXRlbS1jb250cm9sIGJ1dHRvblthcmlhLWxhYmVsKj1cInJlZnJlc2hcIl0ge1xuXHR0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4ycyBlYXNlO1xufVxuXG4uc2V0dGluZy1pdGVtIC5zZXR0aW5nLWl0ZW0tY29udHJvbCBidXR0b25bYXJpYS1sYWJlbCo9XCJyZWZyZXNoXCJdOmhvdmVyIHtcblx0dHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xufVxuXG4vKiBMb2FkaW5nIHN0YXRlIGFuaW1hdGlvbiAqL1xuQGtleWZyYW1lcyByZWZyZXNoLXNwaW4ge1xuXHRmcm9tIHtcblx0XHR0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcblx0fVxuXHR0byB7XG5cdFx0dHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcblx0fVxufVxuXG4uc2V0dGluZy1pdGVtIC5zZXR0aW5nLWl0ZW0tY29udHJvbCBidXR0b25bZGlzYWJsZWRdIC5sdWNpZGUtcmVmcmVzaC1jdyB7XG5cdGFuaW1hdGlvbjogcmVmcmVzaC1zcGluIDFzIGxpbmVhciBpbmZpbml0ZTtcbn1cblxuLyogUmVzcG9uc2l2ZSBkZXNpZ24gZm9yIHNtYWxsZXIgc2NyZWVucyAqL1xuQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XG5cdC5maWxlLWZpbHRlci1ydWxlIHtcblx0XHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRcdGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuXHRcdGdhcDogMC41cmVtO1xuXHR9XG5cblx0LmZpbGUtZmlsdGVyLXJ1bGUtdHlwZSxcblx0LmZpbGUtZmlsdGVyLXJ1bGUtcGF0aCxcblx0LmZpbGUtZmlsdGVyLXJ1bGUtZW5hYmxlZCB7XG5cdFx0bWluLXdpZHRoOiBhdXRvO1xuXHR9XG5cblx0LmZpbGUtZmlsdGVyLXJ1bGUtZGVsZXRlIHtcblx0XHRhbGlnbi1zZWxmOiBmbGV4LWVuZDtcblx0XHRtYXJnaW4tdG9wOiAwLjVyZW07XG5cdH1cbn1cblxuLyogRGFyayB0aGVtZSBhZGp1c3RtZW50cyAqL1xuLnRoZW1lLWRhcmsgLmZpbGUtZmlsdGVyLXJ1bGUgaW5wdXRbdHlwZT1cInRleHRcIl0ge1xuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnktYWx0KTtcblx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlci1ob3Zlcik7XG59XG5cbi50aGVtZS1kYXJrIC5maWxlLWZpbHRlci1ydWxlIGlucHV0W3R5cGU9XCJ0ZXh0XCJdOmZvY3VzIHtcblx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xuXHRib3gtc2hhZG93OiAwIDAgMCAycHggdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50LWhvdmVyKTtcbn1cblxuLyogRW1wdHkgc3RhdGUgc3R5bGluZyAqL1xuLmZpbGUtZmlsdGVyLXJ1bGVzLWNvbnRhaW5lcjplbXB0eTo6YmVmb3JlIHtcblx0Y29udGVudDogXCJObyBmaWx0ZXIgcnVsZXMgY29uZmlndXJlZC4gQWRkIHJ1bGVzIGJlbG93IHRvIHN0YXJ0IGZpbHRlcmluZyBmaWxlcyBhbmQgZm9sZGVycy5cIjtcblx0ZGlzcGxheTogYmxvY2s7XG5cdHRleHQtYWxpZ246IGNlbnRlcjtcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xuXHRmb250LXN0eWxlOiBpdGFsaWM7XG5cdHBhZGRpbmc6IDJyZW07XG59XG5cbi8qIFByZXNldCB0ZW1wbGF0ZXMgc2VjdGlvbiAqL1xuLmZpbGUtZmlsdGVyLXByZXNldC1jb250YWluZXIge1xuXHRtYXJnaW4tdG9wOiAxcmVtO1xuXHRwYWRkaW5nOiAxcmVtO1xuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XG5cdGJvcmRlci1yYWRpdXM6IDZweDtcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xufVxuXG4uZmlsZS1maWx0ZXItcHJlc2V0LWNvbnRhaW5lciAuc2V0dGluZy1pdGVtIHtcblx0Ym9yZGVyOiBub25lO1xuXHRwYWRkaW5nOiAwLjVyZW0gMDtcbn1cblxuLmZpbGUtZmlsdGVyLXByZXNldC1jb250YWluZXIgLnNldHRpbmctaXRlbTpub3QoOmxhc3QtY2hpbGQpIHtcblx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcbn1cblxuLyogUHJlc2V0IGJ1dHRvbiBzdHlsaW5nICovXG4uZmlsZS1maWx0ZXItcHJlc2V0LWNvbnRhaW5lciBidXR0b24ge1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2U7XG59XG5cbi5maWxlLWZpbHRlci1wcmVzZXQtY29udGFpbmVyIGJ1dHRvbjpkaXNhYmxlZCB7XG5cdG9wYWNpdHk6IDAuNjtcblx0Y3Vyc29yOiBub3QtYWxsb3dlZDtcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XG59XG5cbi5maWxlLWZpbHRlci1wcmVzZXQtY29udGFpbmVyIGJ1dHRvbjpub3QoOmRpc2FibGVkKTpob3ZlciB7XG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMXB4KTtcblx0Ym94LXNoYWRvdzogdmFyKC0tc2hhZG93LXMpO1xufVxuXG4vKiBTdWNjZXNzIHN0YXRlIGZvciBhcHBsaWVkIHByZXNldHMgKi9cbi5maWxlLWZpbHRlci1wcmVzZXQtY29udGFpbmVyIGJ1dHRvbltkaXNhYmxlZF0ge1xuXHRiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1ncmVlbik7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XG5cdGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItZ3JlZW4pO1xufVxuXG4udGhlbWUtZGFyayAuZmlsZS1maWx0ZXItcHJlc2V0LWNvbnRhaW5lciBidXR0b25bZGlzYWJsZWRdIHtcblx0YmFja2dyb3VuZDogdmFyKC0tY29sb3ItZ3JlZW4tcmdiKTtcblx0b3BhY2l0eTogMC44O1xufVxuXG4uZmlsZS1maWx0ZXItcnVsZS1lZGl0b3ItbW9kYWwge1xuXHRtYXgtd2lkdGg6IDgwMHB4O1xuXHR3aWR0aDogOTB2dztcbn1cbiIsICIvKiDkuaDmg6/nvJbovpHlvLnnqpfmoLflvI8gKi9cclxuXHJcbi5oYWJpdC1lZGl0LWRpYWxvZyB7XHJcblx0bWF4LXdpZHRoOiA2MDBweDtcclxuXHR3aWR0aDogMTAwJTtcclxufVxyXG5cclxuLmhhYml0LWVkaXQtZGlhbG9nIC5tb2RhbC1jb250ZW50IHtcclxuXHRwYWRkaW5nOiAyMHB4O1xyXG59XHJcblxyXG4vKiDkuaDmg6/nsbvlnovpgInmi6nlmaggKi9cclxuLmhhYml0LWVkaXQtZGlhbG9nIC5oYWJpdC10eXBlLXNlbGVjdG9yIHtcclxuXHRtYXJnaW4tYm90dG9tOiAyMHB4O1xyXG59XHJcblxyXG4uaGFiaXQtZWRpdC1kaWFsb2cgLmhhYml0LXR5cGUtZGVzY3JpcHRpb24ge1xyXG5cdGZvbnQtd2VpZ2h0OiA2MDA7XHJcblx0bWFyZ2luLWJvdHRvbTogMTBweDtcclxufVxyXG5cclxuLmhhYml0LWVkaXQtZGlhbG9nIC5oYWJpdC10eXBlLWdyaWQge1xyXG5cdGRpc3BsYXk6IGdyaWQ7XHJcblx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgMWZyKTtcclxuXHRnYXA6IDEwcHg7XHJcbn1cclxuXHJcbkBtZWRpYSAobWF4LXdpZHRoOiA1MDBweCkge1xyXG5cdC5oYWJpdC1lZGl0LWRpYWxvZyAuaGFiaXQtdHlwZS1ncmlkIHtcclxuXHRcdGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xyXG5cdH1cclxufVxyXG5cclxuLmhhYml0LWVkaXQtZGlhbG9nIC5oYWJpdC10eXBlLWl0ZW0ge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0cGFkZGluZzogMTJweDtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtbSk7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0dHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZTtcclxufVxyXG5cclxuLmhhYml0LWVkaXQtZGlhbG9nIC5oYWJpdC10eXBlLWl0ZW06aG92ZXIge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpO1xyXG59XHJcblxyXG4uaGFiaXQtZWRpdC1kaWFsb2cgLmhhYml0LXR5cGUtaXRlbS5zZWxlY3RlZCB7XHJcblx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudC1ob3Zlcik7XHJcbn1cclxuXHJcbi5oYWJpdC1lZGl0LWRpYWxvZyAuaGFiaXQtdHlwZS1pY29uIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0d2lkdGg6IDQwcHg7XHJcblx0aGVpZ2h0OiA0MHB4O1xyXG5cdGJvcmRlci1yYWRpdXM6IDUwJTtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xyXG5cdG1hcmdpbi1yaWdodDogMTBweDtcclxufVxyXG5cclxuLmhhYml0LWVkaXQtZGlhbG9nIC5oYWJpdC10eXBlLWljb24gc3ZnIHtcclxuXHR3aWR0aDogMjBweDtcclxuXHRoZWlnaHQ6IDIwcHg7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxufVxyXG5cclxuLmhhYml0LWVkaXQtZGlhbG9nIC5oYWJpdC10eXBlLXRleHQge1xyXG5cdGZsZXg6IDE7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG59XHJcblxyXG4uaGFiaXQtZWRpdC1kaWFsb2cgLmhhYml0LXR5cGUtbmFtZSB7XHJcblx0Zm9udC13ZWlnaHQ6IDYwMDtcclxuXHRtYXJnaW4tYm90dG9tOiA0cHg7XHJcbn1cclxuXHJcbi5oYWJpdC1lZGl0LWRpYWxvZyAuaGFiaXQtdHlwZS1kZXNjIHtcclxuXHRmb250LXNpemU6IDAuODVlbTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcbn1cclxuXHJcbi8qIOmAmueUqOihqOWNleagt+W8jyAqL1xyXG4uaGFiaXQtZWRpdC1kaWFsb2cgLmhhYml0LWNvbW1vbi1mb3JtLFxyXG4uaGFiaXQtZWRpdC1kaWFsb2cgLmhhYml0LXR5cGUtZm9ybSB7XHJcblx0bWFyZ2luLWJvdHRvbTogMjBweDtcclxufVxyXG5cclxuLyog5Zu+5qCH6aKE6KeIICovXHJcbi5oYWJpdC1lZGl0LWRpYWxvZyAuaGFiaXQtaWNvbi1wcmV2aWV3IHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0d2lkdGg6IDMwcHg7XHJcblx0aGVpZ2h0OiAzMHB4O1xyXG5cdG1hcmdpbi1sZWZ0OiAxMHB4O1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XHJcblx0Ym9yZGVyLXJhZGl1czogNTAlO1xyXG59XHJcblxyXG4uaGFiaXQtZWRpdC1kaWFsb2cgLmhhYml0LWljb24tcHJldmlldyBzdmcge1xyXG5cdHdpZHRoOiAxOHB4O1xyXG5cdGhlaWdodDogMThweDtcclxufVxyXG5cclxuLyog5pig5bCE57yW6L6R5ZmoICovXHJcbi5oYWJpdC1lZGl0LWRpYWxvZyAuaGFiaXQtbWFwcGluZy1jb250YWluZXIge1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XHJcblx0cGFkZGluZzogMTBweDtcclxuXHRtYXJnaW4tYm90dG9tOiAxMHB4O1xyXG5cdG1hcmdpbi10b3A6IDVweDtcclxufVxyXG5cclxuLmhhYml0LWVkaXQtZGlhbG9nIC5oYWJpdC1tYXBwaW5nLXJvdyB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdG1hcmdpbi1ib3R0b206IDhweDtcclxufVxyXG5cclxuLmhhYml0LWVkaXQtZGlhbG9nIC5oYWJpdC1tYXBwaW5nLWtleSB7XHJcblx0d2lkdGg6IDgwcHg7XHJcblx0bWFyZ2luLXJpZ2h0OiA1cHg7XHJcblx0Zm9udC1zaXplOiAwLjllbTtcclxufVxyXG5cclxuLmhhYml0LWVkaXQtZGlhbG9nIC5oYWJpdC1tYXBwaW5nLWFycm93IHtcclxuXHRtYXJnaW46IDAgMTBweDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcbn1cclxuXHJcbi5oYWJpdC1lZGl0LWRpYWxvZyAuaGFiaXQtbWFwcGluZy12YWx1ZSB7XHJcblx0ZmxleDogMTtcclxuXHRmb250LXNpemU6IDAuOWVtO1xyXG5cdG1hcmdpbi1yaWdodDogdmFyKC0tc2l6ZS00LTQpO1xyXG59XHJcblxyXG4uaGFiaXQtZWRpdC1kaWFsb2cgLmhhYml0LW1hcHBpbmctZGVsZXRlIHtcclxuXHRiYWNrZ3JvdW5kOiBub25lO1xyXG5cdGJvcmRlcjogbm9uZTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1lcnJvcik7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdGZvbnQtc2l6ZTogMS4yZW07XHJcblx0cGFkZGluZzogMCA4cHg7XHJcbn1cclxuXHJcbi5oYWJpdC1lZGl0LWRpYWxvZyAuaGFiaXQtYWRkLW1hcHBpbmctYnV0dG9uIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XHJcblx0Ym9yZGVyOiBub25lO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zKTtcclxuXHRwYWRkaW5nOiA2cHggMTJweDtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0Zm9udC1zaXplOiAwLjllbTtcclxufVxyXG5cclxuLyog5LqL5Lu257yW6L6R5ZmoICovXHJcbi5oYWJpdC1lZGl0LWRpYWxvZyAuaGFiaXQtZXZlbnRzLWNvbnRhaW5lciB7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zKTtcclxuXHRwYWRkaW5nOiAxMHB4O1xyXG5cdG1hcmdpbi1ib3R0b206IDEwcHg7XHJcblx0bWFyZ2luLXRvcDogNXB4O1xyXG59XHJcblxyXG4uaGFiaXQtZWRpdC1kaWFsb2cgLmhhYml0LWV2ZW50LXJvdyB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRtYXJnaW4tYm90dG9tOiA4cHg7XHJcblx0Z2FwOiA1cHg7XHJcbn1cclxuXHJcbi5oYWJpdC1lZGl0LWRpYWxvZyAuaGFiaXQtZXZlbnQtbmFtZSB7XHJcblx0d2lkdGg6IDEyMHB4O1xyXG5cdGZvbnQtc2l6ZTogMC45ZW07XHJcbn1cclxuXHJcbi5oYWJpdC1lZGl0LWRpYWxvZyAuaGFiaXQtZXZlbnQtZGV0YWlscyB7XHJcblx0ZmxleDogMTtcclxuXHRmb250LXNpemU6IDAuOWVtO1xyXG59XHJcblxyXG4uaGFiaXQtZWRpdC1kaWFsb2cgLmhhYml0LWV2ZW50LXByb3BlcnR5IHtcclxuXHR3aWR0aDogMTIwcHg7XHJcblx0Zm9udC1zaXplOiAwLjllbTtcclxufVxyXG5cclxuLmhhYml0LWVkaXQtZGlhbG9nIC5oYWJpdC1ldmVudC1kZWxldGUge1xyXG5cdGJhY2tncm91bmQ6IG5vbmU7XHJcblx0Ym9yZGVyOiBub25lO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LWVycm9yKTtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0Zm9udC1zaXplOiAxLjJlbTtcclxuXHRwYWRkaW5nOiAwIDhweDtcclxufVxyXG5cclxuLmhhYml0LWVkaXQtZGlhbG9nIC5oYWJpdC1hZGQtZXZlbnQtYnV0dG9uIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XHJcblx0Ym9yZGVyOiBub25lO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zKTtcclxuXHRwYWRkaW5nOiA2cHggMTJweDtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0Zm9udC1zaXplOiAwLjllbTtcclxufVxyXG5cclxuLyog5oyJ6ZKu5a655ZmoICovXHJcbi5oYWJpdC1lZGl0LWRpYWxvZyAuaGFiaXQtZWRpdC1idXR0b25zIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XHJcblx0Z2FwOiAxMHB4O1xyXG5cdG1hcmdpbi10b3A6IDIwcHg7XHJcbn1cclxuXHJcbi5oYWJpdC1lZGl0LWRpYWxvZyAuaGFiaXQtY2FuY2VsLWJ1dHRvbiB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3Zlcik7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpO1xyXG5cdHBhZGRpbmc6IDhweCAxNnB4O1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxufVxyXG5cclxuLmhhYml0LWVkaXQtZGlhbG9nIC5oYWJpdC1zYXZlLWJ1dHRvbiB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1vbi1hY2NlbnQpO1xyXG5cdGJvcmRlcjogbm9uZTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XHJcblx0cGFkZGluZzogOHB4IDE2cHg7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG59XHJcblxyXG4vKiDovpPlhaXlrZfmrrUgKi9cclxuLmhhYml0LWVkaXQtZGlhbG9nIGlucHV0W3R5cGU9XCJ0ZXh0XCJdLFxyXG4uaGFiaXQtZWRpdC1kaWFsb2cgaW5wdXRbdHlwZT1cIm51bWJlclwiXSB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpO1xyXG5cdHBhZGRpbmc6IDZweDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG59XHJcblxyXG4uaGFiaXQtZWRpdC1kaWFsb2cgLmhhYml0LXR5cGUtaXRlbS5zZWxlY3RlZCAuaGFiaXQtdHlwZS1kZXNjLFxyXG4uaGFiaXQtZWRpdC1kaWFsb2cgLmhhYml0LXR5cGUtaXRlbS5zZWxlY3RlZCAuaGFiaXQtdHlwZS1uYW1lIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1vbi1hY2NlbnQpO1xyXG59XHJcbiIsICIvKiDkuaDmg6/liJfooajlrrnlmaggKi9cclxuLmhhYml0LWxpc3QtY29udGFpbmVyIHtcclxuXHRwYWRkaW5nOiAxMnB4O1xyXG5cdHdpZHRoOiAxMDAlO1xyXG59XHJcblxyXG4uaGFiaXQtc2V0dGluZ3MtY29udGFpbmVyIHtcclxuXHRwYWRkaW5nLXRvcDogMTJweDtcclxuXHRib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG59XHJcblxyXG4vKiDmt7vliqDmjInpkq4gKi9cclxuLmhhYml0LWFkZC1idXR0b24tY29udGFpbmVyIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XHJcblx0bWFyZ2luLWJvdHRvbTogMTZweDtcclxufVxyXG5cclxuLmhhYml0LWFkZC1idXR0b24ge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRnYXA6IDZweDtcclxuXHRwYWRkaW5nOiA2cHggMTJweDtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpO1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHRmb250LXNpemU6IDE0cHg7XHJcbn1cclxuXHJcbi5oYWJpdC1hZGQtYnV0dG9uIHN2ZyB7XHJcblx0d2lkdGg6IDE2cHg7XHJcblx0aGVpZ2h0OiAxNnB4O1xyXG59XHJcblxyXG4vKiDkuaDmg6/liJfooajkuLrnqbrnirbmgIEgKi9cclxuLmhhYml0LWVtcHR5LXN0YXRlIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHRtaW4taGVpZ2h0OiAyMDBweDtcclxuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0cGFkZGluZzogMjBweDtcclxuXHRib3JkZXI6IDFweCBkYXNoZWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1tKTtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcbn1cclxuXHJcbi5oYWJpdC1lbXB0eS1zdGF0ZSBoMiB7XHJcblx0bWFyZ2luOiAwIDAgMTBweCAwO1xyXG5cdGZvbnQtc2l6ZTogMS4yZW07XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxufVxyXG5cclxuLmhhYml0LWVtcHR5LXN0YXRlIHAge1xyXG5cdG1hcmdpbjogMDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcbn1cclxuXHJcbi8qIOS5oOaDr+mhueWIl+ihqCAqL1xyXG4uaGFiaXQtaXRlbXMtY29udGFpbmVyIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0Z2FwOiAxMHB4O1xyXG59XHJcblxyXG4vKiDkuaDmg6/pobkgKi9cclxuLmhhYml0LWl0ZW0ge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRwYWRkaW5nOiAxMnB4O1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1tKTtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4ycyBlYXNlO1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHRoZWlnaHQ6IDcuNXJlbTtcclxufVxyXG5cclxuLmhhYml0LWl0ZW06aG92ZXIge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpO1xyXG59XHJcblxyXG4vKiDkuaDmg6/lm77moIcgKi9cclxuLmhhYml0LWl0ZW0taWNvbiB7XHJcblx0LS1pY29uLXNpemU6IDIwcHg7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdHdpZHRoOiA0OHB4O1xyXG5cdGhlaWdodDogNDhweDtcclxuXHRib3JkZXItcmFkaXVzOiA1MCU7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcclxuXHRtYXJnaW4tcmlnaHQ6IDEycHg7XHJcbn1cclxuXHJcbi5oYWJpdC1pdGVtLWljb24gc3ZnIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG59XHJcblxyXG4vKiDkuaDmg6/kv6Hmga8gKi9cclxuLmhhYml0LWl0ZW0taW5mbyB7XHJcblx0ZmxleDogMTtcclxuXHRtaW4td2lkdGg6IDA7IC8qIOmYsuatouWGheWuuei/h+mVv+aSkeW8gOW4g+WxgCAqL1xyXG59XHJcblxyXG4uaGFiaXQtaXRlbS1uYW1lIHtcclxuXHRmb250LXdlaWdodDogNjAwO1xyXG5cdG1hcmdpbi1ib3R0b206IDRweDtcclxuXHRmb250LXNpemU6IDE2cHg7XHJcblx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG5cdHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xyXG59XHJcblxyXG4uaGFiaXQtaXRlbS1kZXNjcmlwdGlvbiB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdGZvbnQtc2l6ZTogMTJweDtcclxuXHR3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcblx0dGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XHJcblx0bWFyZ2luLWJvdHRvbTogNHB4O1xyXG59XHJcblxyXG4uaGFiaXQtaXRlbS10eXBlIHtcclxuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblx0Zm9udC1zaXplOiAxMXB4O1xyXG5cdHBhZGRpbmc6IDJweCA2cHg7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpO1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcbn1cclxuXHJcbi8qIOS5oOaDr+aTjeS9nOaMiemSriAqL1xyXG4uaGFiaXQtaXRlbS1hY3Rpb25zIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGdhcDogOHB4O1xyXG5cdG1hcmdpbi1sZWZ0OiAxMnB4O1xyXG59XHJcblxyXG4uaGFiaXQtZWRpdC1idXR0b24sXHJcbi5oYWJpdC1kZWxldGUtYnV0dG9uIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0d2lkdGg6IDMycHg7XHJcblx0aGVpZ2h0OiAzMnB4O1xyXG5cdGJvcmRlci1yYWRpdXM6IDUwJTtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHRwYWRkaW5nOiAwO1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxufVxyXG5cclxuLmhhYml0LWVkaXQtYnV0dG9uOmhvdmVyLFxyXG4uaGFiaXQtZGVsZXRlLWJ1dHRvbjpob3ZlciB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3Zlcik7XHJcbn1cclxuXHJcbi5oYWJpdC1lZGl0LWJ1dHRvbiBzdmcsXHJcbi5oYWJpdC1kZWxldGUtYnV0dG9uIHN2ZyB7XHJcblx0d2lkdGg6IDE2cHg7XHJcblx0aGVpZ2h0OiAxNnB4O1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxufVxyXG5cclxuLmhhYml0LWRlbGV0ZS1idXR0b246aG92ZXIgc3ZnIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1lcnJvcik7XHJcbn1cclxuXHJcbi8qIOS5oOaDr+WIoOmZpOWvueivneahhuagt+W8jyAqL1xyXG4uaGFiaXQtZGVsZXRlLW1vZGFsLWJ1dHRvbnMge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0anVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcclxuXHRnYXA6IDEwcHg7XHJcblx0bWFyZ2luLXRvcDogMjBweDtcclxufVxyXG5cclxuLmhhYml0LWRlbGV0ZS1idXR0b24tY29uZmlybSB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGV4dC1lcnJvcik7XHJcblx0Y29sb3I6ICNmZmY7XHJcblx0Ym9yZGVyOiBub25lO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zKTtcclxuXHRwYWRkaW5nOiA4cHggMTZweDtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcbn1cclxuIiwgIi8qIElDUyBTZXR0aW5ncyBTdHlsZXMgKi9cclxuXHJcbi8qIE1haW4gY29udGFpbmVyICovXHJcbi5pY3Mtc2V0dGluZ3MtY29udGFpbmVyIHtcclxuXHRtYXgtd2lkdGg6IDgwMHB4O1xyXG5cdG1hcmdpbjogMCBhdXRvO1xyXG59XHJcblxyXG4vKiBIZWFkZXIgc2VjdGlvbiAqL1xyXG4uaWNzLWhlYWRlci1jb250YWluZXIge1xyXG5cdG1hcmdpbi1ib3R0b206IDJyZW07XHJcblx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRwYWRkaW5nLWJvdHRvbTogMXJlbTtcclxufVxyXG5cclxuLmljcy1iYWNrLWJ1dHRvbiB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1vbi1hY2NlbnQpO1xyXG5cdGJvcmRlcjogbm9uZTtcclxuXHRwYWRkaW5nOiAwLjVyZW0gMXJlbTtcclxuXHRib3JkZXItcmFkaXVzOiA2cHg7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdG1hcmdpbi1ib3R0b206IDFyZW07XHJcblx0Zm9udC1zaXplOiAwLjllbTtcclxuXHR0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlO1xyXG59XHJcblxyXG4uaWNzLWJhY2stYnV0dG9uOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQtaG92ZXIpO1xyXG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMXB4KTtcclxufVxyXG5cclxuLmljcy1kZXNjcmlwdGlvbiB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdG1hcmdpbi10b3A6IDAuNXJlbTtcclxuXHRsaW5lLWhlaWdodDogMS41O1xyXG59XHJcblxyXG4vKiBHbG9iYWwgc2V0dGluZ3MgKi9cclxuLmljcy1nbG9iYWwtc2V0dGluZ3Mge1xyXG5cdG1hcmdpbi1ib3R0b206IDJyZW07XHJcblx0cGFkZGluZzogMS41cmVtO1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRib3JkZXItcmFkaXVzOiA4cHg7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xyXG59XHJcblxyXG4vKiBTb3VyY2VzIGxpc3QgKi9cclxuLmljcy1zb3VyY2VzLWxpc3Qge1xyXG5cdG1hcmdpbi10b3A6IDEuNXJlbTtcclxufVxyXG5cclxuLmljcy1zb3VyY2VzLWxpc3QgaDMge1xyXG5cdG1hcmdpbi1ib3R0b206IDFyZW07XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxufVxyXG5cclxuLmljcy1zb3VyY2UtaXRlbSB7XHJcblx0bWFyZ2luLWJvdHRvbTogMXJlbTtcclxuXHRwYWRkaW5nOiAxLjVyZW07XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGJvcmRlci1yYWRpdXM6IDhweDtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xyXG5cdHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2U7XHJcbn1cclxuXHJcbi5pY3Mtc291cmNlLWl0ZW06aG92ZXIge1xyXG5cdGJvcmRlci1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxuXHRib3gtc2hhZG93OiB2YXIoLS1zaGFkb3ctcyk7XHJcbn1cclxuXHJcbi5pY3Mtc291cmNlLWhlYWRlciB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRtYXJnaW4tYm90dG9tOiAxcmVtO1xyXG59XHJcblxyXG4uaWNzLXNvdXJjZS10aXRsZSBzdHJvbmcge1xyXG5cdGZvbnQtc2l6ZTogMS4xZW07XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxufVxyXG5cclxuLmljcy1zb3VyY2Utc3RhdHVzIHtcclxuXHRwYWRkaW5nOiAwLjNyZW0gMC44cmVtO1xyXG5cdGJvcmRlci1yYWRpdXM6IDEycHg7XHJcblx0Zm9udC1zaXplOiAwLjc1ZW07XHJcblx0Zm9udC13ZWlnaHQ6IDYwMDtcclxuXHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG5cdGxldHRlci1zcGFjaW5nOiAwLjVweDtcclxufVxyXG5cclxuLnN0YXR1cy1lbmFibGVkIHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1ncmVlbik7XHJcblx0Y29sb3I6IHdoaXRlO1xyXG59XHJcblxyXG4uc3RhdHVzLWRpc2FibGVkIHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1yZWQpO1xyXG5cdGNvbG9yOiB3aGl0ZTtcclxufVxyXG5cclxuLmljcy1zb3VyY2UtZGV0YWlscyB7XHJcblx0bWFyZ2luLWJvdHRvbTogMS41cmVtO1xyXG5cdGZvbnQtc2l6ZTogMC45ZW07XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdGxpbmUtaGVpZ2h0OiAxLjQ7XHJcbn1cclxuXHJcbi5pY3Mtc291cmNlLWRldGFpbHMgZGl2IHtcclxuXHRtYXJnaW4tYm90dG9tOiAwLjRyZW07XHJcbn1cclxuXHJcbi8qIEFjdGlvbiBidXR0b25zICovXHJcbi5pY3Mtc291cmNlLWFjdGlvbnMge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0Z2FwOiAxcmVtO1xyXG59XHJcblxyXG4ucHJpbWFyeS1hY3Rpb25zLFxyXG4uc2Vjb25kYXJ5LWFjdGlvbnMge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0Z2FwOiAwLjVyZW07XHJcbn1cclxuXHJcbi5pY3Mtc291cmNlLWFjdGlvbnMgYnV0dG9uIHtcclxuXHRwYWRkaW5nOiAwLjVyZW0gMXJlbTtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Ym9yZGVyLXJhZGl1czogNnB4O1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG5cdGZvbnQtc2l6ZTogMC44NWVtO1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHR0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlO1xyXG5cdG1pbi13aWR0aDogODBweDtcclxuXHR3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG59XHJcblxyXG4uaWNzLXNvdXJjZS1hY3Rpb25zIGJ1dHRvbjpob3ZlciB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3Zlcik7XHJcblx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMXB4KTtcclxufVxyXG5cclxuLmljcy1zb3VyY2UtYWN0aW9ucyBidXR0b24ubW9kLWN0YSB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1vbi1hY2NlbnQpO1xyXG5cdGJvcmRlci1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxufVxyXG5cclxuLmljcy1zb3VyY2UtYWN0aW9ucyBidXR0b24ubW9kLWN0YTpob3ZlciB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50LWhvdmVyKTtcclxufVxyXG5cclxuLmljcy1zb3VyY2UtYWN0aW9ucyBidXR0b24ubW9kLXdhcm5pbmcge1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLXJlZCk7XHJcblx0Y29sb3I6IHdoaXRlO1xyXG5cdGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItcmVkKTtcclxufVxyXG5cclxuLmljcy1zb3VyY2UtYWN0aW9ucyBidXR0b24ubW9kLXdhcm5pbmc6aG92ZXIge1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLXJlZCk7XHJcblx0b3BhY2l0eTogMC44O1xyXG59XHJcblxyXG4uaWNzLXNvdXJjZS1hY3Rpb25zIGJ1dHRvbjpkaXNhYmxlZCB7XHJcblx0b3BhY2l0eTogMC41O1xyXG5cdGN1cnNvcjogbm90LWFsbG93ZWQ7XHJcblx0dHJhbnNmb3JtOiBub25lO1xyXG59XHJcblxyXG4uaWNzLXNvdXJjZS1hY3Rpb25zIGJ1dHRvbi5zeW5jaW5nIHtcclxuXHRjb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxufVxyXG5cclxuLmljcy1zb3VyY2UtYWN0aW9ucyBidXR0b24uc3VjY2VzcyB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tY29sb3ItZ3JlZW4pO1xyXG5cdGNvbG9yOiB3aGl0ZTtcclxuXHRib3JkZXItY29sb3I6IHZhcigtLWNvbG9yLWdyZWVuKTtcclxufVxyXG5cclxuLmljcy1zb3VyY2UtYWN0aW9ucyBidXR0b24uZXJyb3Ige1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLXJlZCk7XHJcblx0Y29sb3I6IHdoaXRlO1xyXG5cdGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItcmVkKTtcclxufVxyXG5cclxuLyogQWRkIHNvdXJjZSBjb250YWluZXIgKi9cclxuLmljcy1hZGQtc291cmNlLWNvbnRhaW5lciB7XHJcblx0bWFyZ2luLXRvcDogMnJlbTtcclxuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0cGFkZGluZzogMnJlbTtcclxuXHRib3JkZXI6IDJweCBkYXNoZWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGJvcmRlci1yYWRpdXM6IDhweDtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcblx0dHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZTtcclxufVxyXG5cclxuLmljcy1hZGQtc291cmNlLWNvbnRhaW5lcjpob3ZlciB7XHJcblx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpO1xyXG59XHJcblxyXG4uaWNzLWFkZC1zb3VyY2UtY29udGFpbmVyIGJ1dHRvbiB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1vbi1hY2NlbnQpO1xyXG5cdGJvcmRlcjogbm9uZTtcclxuXHRwYWRkaW5nOiAwLjhyZW0gMS41cmVtO1xyXG5cdGJvcmRlci1yYWRpdXM6IDZweDtcclxuXHRmb250LXdlaWdodDogNTAwO1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHR0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlO1xyXG5cdGZvbnQtc2l6ZTogMC45NWVtO1xyXG59XHJcblxyXG4uaWNzLWFkZC1zb3VyY2UtY29udGFpbmVyIGJ1dHRvbjpob3ZlciB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50LWhvdmVyKTtcclxuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTJweCk7XHJcbn1cclxuXHJcbi8qIFRlc3QgY29udGFpbmVyICovXHJcbi5pY3MtdGVzdC1jb250YWluZXIge1xyXG5cdG1hcmdpbi10b3A6IDFyZW07XHJcblx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG5cdHBhZGRpbmc6IDFyZW07XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGJvcmRlci1yYWRpdXM6IDhweDtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWZvcm0tZmllbGQpO1xyXG59XHJcblxyXG4uaWNzLXRlc3QtYnV0dG9uIHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1vcmFuZ2UpO1xyXG5cdGNvbG9yOiB3aGl0ZTtcclxuXHRib3JkZXI6IG5vbmU7XHJcblx0cGFkZGluZzogMC42cmVtIDEuMnJlbTtcclxuXHRib3JkZXItcmFkaXVzOiA2cHg7XHJcblx0Zm9udC13ZWlnaHQ6IDUwMDtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0dHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZTtcclxuXHRmb250LXNpemU6IDAuOWVtO1xyXG59XHJcblxyXG4uaWNzLXRlc3QtYnV0dG9uOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1vcmFuZ2UpO1xyXG5cdG9wYWNpdHk6IDAuODtcclxuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTFweCk7XHJcbn1cclxuXHJcbi8qIEVtcHR5IHN0YXRlICovXHJcbi5pY3MtZW1wdHktc3RhdGUge1xyXG5cdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHRwYWRkaW5nOiAzcmVtIDJyZW07XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdGZvbnQtc3R5bGU6IGl0YWxpYztcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcblx0Ym9yZGVyLXJhZGl1czogOHB4O1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxufVxyXG5cclxuLyogTW9kYWwgc3R5bGVzICovXHJcbi5pY3Mtc291cmNlLW1vZGFsIC5tb2RhbC1jb250ZW50IHtcclxuXHRtYXgtd2lkdGg6IDYwMHB4O1xyXG5cdG1heC1oZWlnaHQ6IDgwdmg7XHJcblx0b3ZlcmZsb3cteTogYXV0bztcclxufVxyXG5cclxuLmF1dGgtZmllbGQge1xyXG5cdG1hcmdpbi10b3A6IDAuNXJlbTtcclxufVxyXG5cclxuLm1vZGFsLWJ1dHRvbi1jb250YWluZXIge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0Z2FwOiAwLjVyZW07XHJcblx0anVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcclxuXHRtYXJnaW4tdG9wOiAxLjVyZW07XHJcblx0cGFkZGluZy10b3A6IDFyZW07XHJcblx0Ym9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxufVxyXG5cclxuLm1vZGFsLWJ1dHRvbi1jb250YWluZXIgYnV0dG9uIHtcclxuXHRwYWRkaW5nOiAwLjVyZW0gMXJlbTtcclxuXHRib3JkZXItcmFkaXVzOiA2cHg7XHJcblx0Zm9udC1zaXplOiAwLjllbTtcclxuXHRtaW4td2lkdGg6IDgwcHg7XHJcbn1cclxuXHJcbi8qIFJlc3BvbnNpdmUgZGVzaWduICovXHJcbkBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xyXG5cdC5pY3Mtc291cmNlLWhlYWRlciB7XHJcblx0XHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdFx0YWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XHJcblx0XHRnYXA6IDAuNXJlbTtcclxuXHR9XHJcblxyXG5cdC5pY3Mtc291cmNlLWFjdGlvbnMge1xyXG5cdFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRcdGdhcDogMC41cmVtO1xyXG5cdH1cclxuXHJcblx0LnByaW1hcnktYWN0aW9ucyxcclxuXHQuc2Vjb25kYXJ5LWFjdGlvbnMge1xyXG5cdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblx0fVxyXG5cclxuXHQuaWNzLXNvdXJjZS1hY3Rpb25zIGJ1dHRvbiB7XHJcblx0XHRmbGV4OiAxO1xyXG5cdFx0bWluLXdpZHRoOiBhdXRvO1xyXG5cdH1cclxufVxyXG5cclxuQG1lZGlhIChtYXgtd2lkdGg6IDQ4MHB4KSB7XHJcblx0Lmljcy1zb3VyY2UtaXRlbSB7XHJcblx0XHRwYWRkaW5nOiAxcmVtO1xyXG5cdH1cclxuXHJcblx0LnByaW1hcnktYWN0aW9ucyxcclxuXHQuc2Vjb25kYXJ5LWFjdGlvbnMge1xyXG5cdFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHR9XHJcblxyXG5cdC5pY3Mtc291cmNlLWFjdGlvbnMgYnV0dG9uIHtcclxuXHRcdHdpZHRoOiAxMDAlO1xyXG5cdFx0bWFyZ2luLWJvdHRvbTogMC4zcmVtO1xyXG5cdH1cclxuXHJcblx0Lm1vZGFsLWJ1dHRvbi1jb250YWluZXIge1xyXG5cdFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHR9XHJcblxyXG5cdC5tb2RhbC1idXR0b24tY29udGFpbmVyIGJ1dHRvbiB7XHJcblx0XHR3aWR0aDogMTAwJTtcclxuXHR9XHJcbn1cclxuXHJcbi8qIFRleHQgUmVwbGFjZW1lbnRzIFN0eWxlcyAqL1xyXG4udGV4dC1yZXBsYWNlbWVudHMtbGlzdCB7XHJcblx0bWFyZ2luOiAxcmVtIDA7XHJcbn1cclxuXHJcbi50ZXh0LXJlcGxhY2VtZW50cy1lbXB0eSB7XHJcblx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG5cdHBhZGRpbmc6IDJyZW07XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdGZvbnQtc3R5bGU6IGl0YWxpYztcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcblx0Ym9yZGVyLXJhZGl1czogNnB4O1xyXG5cdGJvcmRlcjogMXB4IGRhc2hlZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcbn1cclxuXHJcbi50ZXh0LXJlcGxhY2VtZW50LXJ1bGUge1xyXG5cdG1hcmdpbi1ib3R0b206IDFyZW07XHJcblx0cGFkZGluZzogMXJlbTtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Ym9yZGVyLXJhZGl1czogNnB4O1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XHJcblx0dHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZTtcclxufVxyXG5cclxuLnRleHQtcmVwbGFjZW1lbnQtcnVsZTpob3ZlciB7XHJcblx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdGJveC1zaGFkb3c6IDAgMnB4IDRweCByZ2JhKDAsIDAsIDAsIDAuMSk7XHJcbn1cclxuXHJcbi50ZXh0LXJlcGxhY2VtZW50LWhlYWRlciB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRtYXJnaW4tYm90dG9tOiAwLjhyZW07XHJcbn1cclxuXHJcbi50ZXh0LXJlcGxhY2VtZW50LWhlYWRlciBzdHJvbmcge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcblx0Zm9udC1zaXplOiAxZW07XHJcbn1cclxuXHJcbi50ZXh0LXJlcGxhY2VtZW50LXN0YXR1cyB7XHJcblx0cGFkZGluZzogMC4ycmVtIDAuNnJlbTtcclxuXHRib3JkZXItcmFkaXVzOiAxMHB4O1xyXG5cdGZvbnQtc2l6ZTogMC43ZW07XHJcblx0Zm9udC13ZWlnaHQ6IDYwMDtcclxuXHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG5cdGxldHRlci1zcGFjaW5nOiAwLjVweDtcclxufVxyXG5cclxuLnRleHQtcmVwbGFjZW1lbnQtc3RhdHVzLmVuYWJsZWQge1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLWdyZWVuKTtcclxuXHRjb2xvcjogd2hpdGU7XHJcbn1cclxuXHJcbi50ZXh0LXJlcGxhY2VtZW50LXN0YXR1cy5kaXNhYmxlZCB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tY29sb3ItcmVkKTtcclxuXHRjb2xvcjogd2hpdGU7XHJcbn1cclxuXHJcbi50ZXh0LXJlcGxhY2VtZW50LWRldGFpbHMge1xyXG5cdG1hcmdpbi1ib3R0b206IDFyZW07XHJcblx0Zm9udC1zaXplOiAwLjg1ZW07XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdGxpbmUtaGVpZ2h0OiAxLjQ7XHJcbn1cclxuXHJcbi50ZXh0LXJlcGxhY2VtZW50LWRldGFpbHMgZGl2IHtcclxuXHRtYXJnaW4tYm90dG9tOiAwLjNyZW07XHJcbn1cclxuXHJcbi50ZXh0LXJlcGxhY2VtZW50LXBhdHRlcm4ge1xyXG5cdGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LW1vbm9zcGFjZSk7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1mb3JtLWZpZWxkKTtcclxuXHRwYWRkaW5nOiAwLjJyZW0gMC40cmVtO1xyXG5cdGJvcmRlci1yYWRpdXM6IDNweDtcclxuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblx0bWFyZ2luLWxlZnQ6IDAuNXJlbTtcclxufVxyXG5cclxuLnRleHQtcmVwbGFjZW1lbnQtcmVwbGFjZW1lbnQge1xyXG5cdGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LW1vbm9zcGFjZSk7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1mb3JtLWZpZWxkKTtcclxuXHRwYWRkaW5nOiAwLjJyZW0gMC40cmVtO1xyXG5cdGJvcmRlci1yYWRpdXM6IDNweDtcclxuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblx0bWFyZ2luLWxlZnQ6IDAuNXJlbTtcclxufVxyXG5cclxuLnRleHQtcmVwbGFjZW1lbnQtYWN0aW9ucyB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRnYXA6IDAuNXJlbTtcclxuXHRmbGV4LXdyYXA6IHdyYXA7XHJcbn1cclxuXHJcbi50ZXh0LXJlcGxhY2VtZW50LWFjdGlvbnMgYnV0dG9uIHtcclxuXHRwYWRkaW5nOiAwLjRyZW0gMC44cmVtO1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRib3JkZXItcmFkaXVzOiA0cHg7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcblx0Zm9udC1zaXplOiAwLjhlbTtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0dHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZTtcclxufVxyXG5cclxuLnRleHQtcmVwbGFjZW1lbnQtYWN0aW9ucyBidXR0b246aG92ZXIge1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpO1xyXG5cdGJvcmRlci1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxufVxyXG5cclxuLnRleHQtcmVwbGFjZW1lbnQtYWN0aW9ucyBidXR0b24ubW9kLWN0YSB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1vbi1hY2NlbnQpO1xyXG5cdGJvcmRlci1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxufVxyXG5cclxuLnRleHQtcmVwbGFjZW1lbnQtYWN0aW9ucyBidXR0b24ubW9kLXdhcm5pbmcge1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLXJlZCk7XHJcblx0Y29sb3I6IHdoaXRlO1xyXG5cdGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3ItcmVkKTtcclxufVxyXG5cclxuLnRleHQtcmVwbGFjZW1lbnQtYWRkIHtcclxuXHRtYXJnaW4tdG9wOiAxcmVtO1xyXG5cdHRleHQtYWxpZ246IGNlbnRlcjtcclxufVxyXG5cclxuLnRleHQtcmVwbGFjZW1lbnQtYWRkIGJ1dHRvbiB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1vbi1hY2NlbnQpO1xyXG5cdGJvcmRlcjogbm9uZTtcclxuXHRwYWRkaW5nOiAwLjZyZW0gMS4ycmVtO1xyXG5cdGJvcmRlci1yYWRpdXM6IDZweDtcclxuXHRmb250LXdlaWdodDogNTAwO1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHR0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlO1xyXG59XHJcblxyXG4udGV4dC1yZXBsYWNlbWVudC1hZGQgYnV0dG9uOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQtaG92ZXIpO1xyXG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMXB4KTtcclxufVxyXG5cclxuLyogVGV4dCBSZXBsYWNlbWVudCBNb2RhbCBTdHlsZXMgKi9cclxuLnRleHQtcmVwbGFjZW1lbnQtbW9kYWwgLm1vZGFsLWNvbnRlbnQge1xyXG5cdG1heC13aWR0aDogNzAwcHg7XHJcblx0bWF4LWhlaWdodDogODV2aDtcclxuXHRvdmVyZmxvdy15OiBhdXRvO1xyXG59XHJcblxyXG4udGVzdC1vdXRwdXQge1xyXG5cdG1hcmdpbi10b3A6IDAuNXJlbTtcclxuXHRwYWRkaW5nOiAwLjhyZW07XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1mb3JtLWZpZWxkKTtcclxuXHRib3JkZXItcmFkaXVzOiA0cHg7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LW1vbm9zcGFjZSk7XHJcblx0Zm9udC1zaXplOiAwLjllbTtcclxufVxyXG5cclxuLnRlc3QtcmVzdWx0IHtcclxuXHRmb250LXdlaWdodDogNTAwO1xyXG59XHJcblxyXG4vKiBFeGFtcGxlcyBzZWN0aW9uICovXHJcbi50ZXh0LXJlcGxhY2VtZW50LW1vZGFsIHVsIHtcclxuXHRtYXJnaW46IDAuNXJlbSAwO1xyXG5cdHBhZGRpbmctbGVmdDogMS41cmVtO1xyXG59XHJcblxyXG4udGV4dC1yZXBsYWNlbWVudC1tb2RhbCBsaSB7XHJcblx0bWFyZ2luLWJvdHRvbTogMC41cmVtO1xyXG5cdGxpbmUtaGVpZ2h0OiAxLjQ7XHJcbn1cclxuXHJcbi50ZXh0LXJlcGxhY2VtZW50LW1vZGFsIGNvZGUge1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItZm9ybS1maWVsZCk7XHJcblx0cGFkZGluZzogMC4xcmVtIDAuM3JlbTtcclxuXHRib3JkZXItcmFkaXVzOiAzcHg7XHJcblx0Zm9udC1mYW1pbHk6IHZhcigtLWZvbnQtbW9ub3NwYWNlKTtcclxuXHRmb250LXNpemU6IDAuODVlbTtcclxufVxyXG5cclxuLyogQW5pbWF0aW9uIGZvciBzeW5jIGJ1dHRvbiAqL1xyXG5Aa2V5ZnJhbWVzIHNwaW4ge1xyXG5cdDAlIHtcclxuXHRcdHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xyXG5cdH1cclxuXHQxMDAlIHtcclxuXHRcdHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XHJcblx0fVxyXG59XHJcblxyXG4uaWNzLXNvdXJjZS1hY3Rpb25zIGJ1dHRvbi5zeW5jaW5nOjpiZWZvcmUge1xyXG5cdGNvbnRlbnQ6IFwiXCI7XHJcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG5cdG1hcmdpbi1yaWdodDogMC4zcmVtO1xyXG5cdGFuaW1hdGlvbjogc3BpbiAxcyBsaW5lYXIgaW5maW5pdGU7XHJcbn1cclxuXHJcbi5pY3MtdGV4dC1yZXBsYWNlbWVudC1tb2RhbCxcclxuLmljcy1zb3VyY2UtbW9kYWwge1xyXG5cdG1heC13aWR0aDogMTAwMHB4O1xyXG5cdG1heC1oZWlnaHQ6IDkwdmg7XHJcblxyXG5cdHBhZGRpbmctcmlnaHQ6IDA7XHJcbn1cclxuXHJcbi5pY3MtdGV4dC1yZXBsYWNlbWVudC1tb2RhbCAubW9kYWwtY29udGVudCxcclxuLmljcy1zb3VyY2UtbW9kYWwgLm1vZGFsLWNvbnRlbnQge1xyXG5cdHBhZGRpbmctcmlnaHQ6IHZhcigtLXNpemUtNC0yKTtcclxufVxyXG4iLCAiLyogVGFzayBmaWx0ZXIgcGFuZWwgc3R5bGVzICovXG4udGFzay1maWx0ZXItcGFuZWwge1xuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtNCkgdmFyKC0tc2l6ZS00LTQpO1xuXHRwYWRkaW5nLWJvdHRvbTogdmFyKC0tc2l6ZS0yLTIpO1xuXHRwYWRkaW5nLWxlZnQ6IHZhcigtLXNpemUtNC04KTtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcblx0Ym9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcblx0ZGlzcGxheTogZmxleDtcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0bWF4LWhlaWdodDogMzAwcHg7XG5cdG92ZXJmbG93LXk6IGF1dG87XG59XG5cbi50YXNrLWZpbHRlci1hY3RpdmUge1xuXHRjb2xvcjogdmFyKC0tY29sb3ItYWNjZW50LTIpO1xuXHRmb250LXdlaWdodDogYm9sZDtcbn1cblxuLnRhc2stZmlsdGVyLXBhbmVsID4gLnNldHRpbmctaXRlbSB7XG5cdGJvcmRlci10b3A6IHVuc2V0O1xufVxuXG4udGFzay1maWx0ZXItaGVhZGVyLWNvbnRhaW5lciB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG59XG5cbi50YXNrLWZpbHRlci10aXRsZSB7XG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbCk7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XG59XG5cbi50YXNrLWZpbHRlci1vcHRpb25zIHtcblx0ZGlzcGxheTogZmxleDtcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0Z2FwOiAxMHB4O1xufVxuXG4udGFzay1maWx0ZXItc2VjdGlvbiB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG59XG5cbi50YXNrLWZpbHRlci1zZWN0aW9uIGgzIHtcblx0Zm9udC1zaXplOiAxNHB4O1xuXHRtYXJnaW46IDVweCAwO1xuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XG59XG5cbi50YXNrLWZpbHRlci1zZWN0aW9uOmxhc3QtY2hpbGQge1xuXHRib3JkZXItYm90dG9tOiB1bnNldDtcbn1cblxuLnRhc2stZmlsdGVyLW9wdGlvbiB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdGdhcDogNnB4O1xufVxuXG4udGFzay1maWx0ZXItb3B0aW9uIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG5cdG1hcmdpbjogMDtcbn1cblxuLnRhc2stZmlsdGVyLW9wdGlvbiBsYWJlbCB7XG5cdGZvbnQtc2l6ZTogMTNweDtcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcbn1cblxuLnRhc2stZmlsdGVyLWJ1dHRvbnMge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuXHRnYXA6IDhweDtcblx0bWFyZ2luLXRvcDogOHB4O1xuXHRwYWRkaW5nLXRvcDogOHB4O1xuXHRib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xufVxuXG4udGFzay1maWx0ZXItYXBwbHksXG4udGFzay1maWx0ZXItY2xvc2Uge1xuXHRwYWRkaW5nOiA2cHggMTJweDtcblx0Ym9yZGVyLXJhZGl1czogNHB4O1xuXHRmb250LXNpemU6IDEycHg7XG5cdGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLnRhc2stZmlsdGVyLWFwcGx5IHtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcblx0Y29sb3I6IHZhcigtLXRleHQtb24tYWNjZW50KTtcbn1cblxuLnRhc2stZmlsdGVyLXJlc2V0IHtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xufVxuXG4udGFzay1maWx0ZXItY2xvc2Uge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XG59XG5cbi50YXNrLWZpbHRlci1xdWVyeS1pbnB1dCB7XG5cdHdpZHRoOiAxMDAlO1xuXHRtaW4td2lkdGg6IDI1MHB4O1xuXHRib3JkZXItcmFkaXVzOiA0cHg7XG5cdHBhZGRpbmc6IDhweCAxMnB4O1xuXHRmb250LWZhbWlseTogdmFyKC0tZm9udC1tb25vc3BhY2UpO1xuXHRmb250LXNpemU6IDE0cHg7XG59XG5cbi50YXNrLWZpbHRlci1xdWVyeS1pbnB1dDpmb2N1cyB7XG5cdGJveC1zaGFkb3c6IDAgMCAwIDJweCB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xuXHRvdXRsaW5lOiBub25lO1xufVxuXG4udGFzay1maWx0ZXItc2VjdGlvbiAuc2V0dGluZy1pdGVtLWRlc2NyaXB0aW9uIHtcblx0bWFyZ2luLXRvcDogNXB4O1xuXHRtYXJnaW4tYm90dG9tOiAxMHB4O1xuXHRmb250LXNpemU6IDEycHg7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcblx0bGluZS1oZWlnaHQ6IDEuNDtcbn1cblxuLnRhc2stZmlsdGVyLW9wdGlvbnMge1xuXHRtYXgtaGVpZ2h0OiA3MHZoO1xuXHRvdmVyZmxvdy15OiBhdXRvO1xuXHRwYWRkaW5nLXJpZ2h0OiA1cHg7XG59XG5cbi50YXNrLWZpbHRlci1vcHRpb25zIHtcblx0bWFyZ2luLWJvdHRvbTogMTBweDtcblx0cGFkZGluZy10b3A6IHZhcigtLXNpemUtNC00KTtcbn1cbiIsICIuZmlsdGVyLWdyb3VwLXNlcGFyYXRvciB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdG1hcmdpbjogdmFyKC0tc2l6ZS0yLTIpIDA7IC8qIOS9v+eUqCBPYnNpZGlhbiDnmoTlsLrlr7jlj5jph48gKi9cclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7IC8qIOS9v+eUqCBPYnNpZGlhbiDnmoTmrKHopoHmlofmnKzpopzoibIgKi9cclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGxlcik7IC8qIOS9v+eUqCBPYnNpZGlhbiDnmoTlrZfkvZPlpKflsI/lj5jph48gKi9cclxufVxyXG5cclxuLmZpbHRlci1ncm91cC1zZXBhcmF0b3I6OmJlZm9yZSxcclxuLmZpbHRlci1ncm91cC1zZXBhcmF0b3I6OmFmdGVyIHtcclxuXHRjb250ZW50OiBcIlwiO1xyXG5cdGZsZXgtZ3JvdzogMTtcclxuXHRoZWlnaHQ6IDFweDtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoXHJcblx0XHQtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyXHJcblx0KTsgLyog5L2/55SoIE9ic2lkaWFuIOeahOi+ueahhuminOiJsiAqL1xyXG5cdG1hcmdpbjogMCB2YXIoLS1zaXplLTItMSk7IC8qIOS9v+eUqCBPYnNpZGlhbiDnmoTlsLrlr7jlj5jph48gKi9cclxufVxyXG5cclxuLmRyYWctaGFuZGxlIHtcclxuXHRjdXJzb3I6IGdyYWI7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG59XHJcblxyXG4vKiDmjInpkq7lkozovpPlhaXmoYbnmoTovoPlsI/mlofmnKzlkozlhoXovrnot50gKi9cclxuLmNvbXBhY3QtYnRuIHtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTItMSkgdmFyKC0tc2l6ZS0yLTIpOyAvKiDkvb/nlKggT2JzaWRpYW4g55qE5bC65a+45Y+Y6YePICovXHJcblx0Ym94LXNoYWRvdzogdW5zZXQgIWltcG9ydGFudDtcclxuXHRib3JkZXI6IHVuc2V0ICFpbXBvcnRhbnQ7XHJcblx0LS1pY29uLXNpemU6IHZhcigtLXNpemUtNC00KTtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0Z2FwOiB2YXIoLS1zaXplLTItMik7XHJcblxyXG5cdC13ZWJraXQtYXBwLXJlZ2lvbjogbm8tZHJhZztcclxuXHRkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbCk7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tYnV0dG9uLXJhZGl1cyk7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS0yLTIpO1xyXG5cdGZvbnQtd2VpZ2h0OiB2YXIoLS1pbnB1dC1mb250LXdlaWdodCk7XHJcblx0Y3Vyc29yOiB2YXIoLS1jdXJzb3IpO1xyXG5cdGZvbnQtZmFtaWx5OiBpbmhlcml0O1xyXG5cdGdhcDogdmFyKC0tc2l6ZS0yLTIpO1xyXG5cclxuXHRtaW4taGVpZ2h0OiAzMHB4O1xyXG59XHJcblxyXG4uY29tcGFjdC1idG46aG92ZXIge1xyXG5cdGJveC1zaGFkb3c6IG5vbmU7XHJcblx0b3BhY2l0eTogdmFyKC0taWNvbi1vcGFjaXR5LWhvdmVyKTtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG59XHJcblxyXG4uY29tcGFjdC1pbnB1dCxcclxuLmNvbXBhY3Qtc2VsZWN0IHtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGxlcik7IC8qIOS9v+eUqCBPYnNpZGlhbiDnmoTlrZfkvZPlpKflsI/lj5jph48gKi9cclxuXHRoZWlnaHQ6IHZhcigtLWlucHV0LWhlaWdodCk7IC8qIOS9v+eUqCBPYnNpZGlhbiDnmoTovpPlhaXmoYbpq5jluqblj5jph48gKi9cclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Ym94LXNoYWRvdzogbm9uZTtcclxufVxyXG5cclxuLmNvbXBhY3Qtc2VsZWN0OmhvdmVyIHtcclxuXHRib3gtc2hhZG93OiBub25lO1xyXG59XHJcblxyXG4uY29tcGFjdC10ZXh0IHtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGxlcik7IC8qIOS9v+eUqCBPYnNpZGlhbiDnmoTlrZfkvZPlpKflsI/lj5jph48gKi9cclxufVxyXG5cclxuLyog5ouW5Yqo5pe255qE5Y2g5L2N56ymICovXHJcbi5kcmFnZ2luZy1wbGFjZWhvbGRlciB7XHJcblx0b3BhY2l0eTogMC41O1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcihcclxuXHRcdC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3ZlclxyXG5cdCk7IC8qIOS9v+eUqCBPYnNpZGlhbiDnmoTmgqzlgZzog4zmma/oibIgKi9cclxufVxyXG5cclxuLyog5aaC5p6c6ZyA6KaB77yM5Li66L+H5ruk5Zmo57uE5Lu255qE5qC55a655Zmo6K6+572u5qC35byPICovXHJcbi50YXNrLWZpbHRlci1yb290LWNvbnRhaW5lci50YXNrLXBvcG92ZXItY29udGVudCB7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS0yLTIpOyAvKiDkvb/nlKggT2JzaWRpYW4g55qE5bC65a+45Y+Y6YePICovXHJcblx0bWF4LXdpZHRoOiAxMDAlO1xyXG5cdG1heC1oZWlnaHQ6IDEwMCU7XHJcbn1cclxuXHJcbi50YXNrLWZpbHRlci1tYWluLXBhbmVsIHtcclxuXHRtYXgtd2lkdGg6IDEwMCU7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS0yLTIpOyAvKiDkvb/nlKggT2JzaWRpYW4g55qE5bC65a+45Y+Y6YePICovXHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLW0pOyAvKiDkvb/nlKggT2JzaWRpYW4g55qE5ZyG6KeS5Y+Y6YePICovXHJcbn1cclxuXHJcbi5maWx0ZXItbWVudSB7XHJcblx0ei1pbmRleDogNTA7XHJcblx0bWluLXdpZHRoOiA2MDBweDtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1tKTtcclxuXHRib3gtc2hhZG93OiB2YXIoLS1zaGFkb3ctcyk7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG59XHJcblxyXG4vKiByb290RmlsdGVyU2V0dXBTZWN0aW9uIGluIFRTLCBjb3JyZXNwb25kcyB0byBIVE1MJ3MgI3Jvb3QtZmlsdGVyLWNvbnRhaW5lciAqL1xyXG4ucm9vdC1maWx0ZXItc2V0dXAtc2VjdGlvbiB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdGdhcDogMC43NXJlbTsgLyogc3BhY2UteS0zIGZyb20gSFRNTCwgVGFpbHdpbmQgdmFyKC0tc3BhY2UtMykgKi9cclxufVxyXG5cclxuLyogUm9vdCBDb25kaXRpb24gU2VjdGlvbiAoZGl2LmZsZXguaXRlbXMtY2VudGVyLnNwYWNlLXgtMi5wLTIuYmctc2xhdGUtMTAwLnJvdW5kZWQtbWQuYm9yZGVyLmJvcmRlci1zbGF0ZS0yMDApICovXHJcbi5yb290LWNvbmRpdGlvbi1zZWN0aW9uIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0Z2FwOiAwLjVyZW07IC8qIHNwYWNlLXgtMiBmcm9tIEhUTUwsIFRhaWx3aW5kIHZhcigtLXNwYWNlLTIpICovXHJcblx0cGFkZGluZzogMC41cmVtOyAvKiBwLTIgZnJvbSBIVE1MLCBUYWlsd2luZCB2YXIoLS1zcGFjZS0yKSAqL1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcihcclxuXHRcdC0tYmFja2dyb3VuZC1zZWNvbmRhcnktYWx0LFxyXG5cdFx0dmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3ZlcilcclxuXHQpOyAvKiBiZy1zbGF0ZS0xMDAgKi9cclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtbSk7IC8qIHJvdW5kZWQtbWQgKi9cclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7IC8qIGJvcmRlciBib3JkZXItc2xhdGUtMjAwICovXHJcbn1cclxuXHJcbi5yb290LWNvbmRpdGlvbi1sYWJlbCB7XHJcblx0LyogY29tcGFjdC10ZXh0IGFscmVhZHkgcHJvdmlkZXMgZm9udC1zaXplICovXHJcblx0Zm9udC13ZWlnaHQ6IDUwMDsgLyogZm9udC1tZWRpdW0gKi9cclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpOyAvKiB0ZXh0LXNsYXRlLTYwMCAqL1xyXG59XHJcblxyXG4ucm9vdC1jb25kaXRpb24tc2VsZWN0IHtcclxuXHQvKiBjb21wYWN0LXNlbGVjdCBhbHJlYWR5IHByb3ZpZGVzIGJhc2Ugc3R5bGluZyAqL1xyXG5cdHdpZHRoOiBhdXRvO1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWlucHV0LWJvcmRlci1jb2xvciwgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpKTsgLyogYm9yZGVyIGJvcmRlci1zbGF0ZS0zMDAgKi9cclxuXHQvKiBib3gtc2hhZG93OiB2YXIoLS1zaGFkb3ctcyk7IC8qIHNoYWRvdy1zbSAqLyAvKiBDb25zaWRlciBpZiBuZWVkZWQgKi9cclxufVxyXG5cclxuLnJvb3QtY29uZGl0aW9uLXNlbGVjdDpmb2N1cyB7XHJcblx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdGJveC1zaGFkb3c6IDAgMCAwIDFweCB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG59XHJcblxyXG4ucm9vdC1jb25kaXRpb24tc3BhbiB7XHJcblx0LyogY29tcGFjdC10ZXh0IGFscmVhZHkgcHJvdmlkZXMgZm9udC1zaXplICovXHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTsgLyogdGV4dC1zbGF0ZS02MDAgKi9cclxufVxyXG5cclxuLyogRmlsdGVyIEdyb3VwcyBDb250YWluZXIgKCNmaWx0ZXItZ3JvdXBzLWNvbnRhaW5lcikgKi9cclxuLmZpbHRlci1ncm91cHMtY29udGFpbmVyIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0Z2FwOiB2YXIoLS1zaXplLTItMyk7IC8qIHNwYWNlLXktMyBmcm9tIEhUTUwgKi9cclxuXHJcblx0bWF4LWhlaWdodDogNTB2aDtcclxuXHRvdmVyZmxvdzogYXV0bztcclxufVxyXG5cclxuLyogRmlsdGVyIEdyb3VwICgjZmlsdGVyLWdyb3VwLXRlbXBsYXRlKSAqL1xyXG4uZmlsdGVyLWdyb3VwIHtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTItMyk7IC8qIHAtMyBmcm9tIEhUTUwgKi9cclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7IC8qIGJvcmRlciBib3JkZXItc2xhdGUtMzAwICovXHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLW0pOyAvKiByb3VuZGVkLW1kICovXHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTsgLyogYmctd2hpdGUgKi9cclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0Z2FwOiB2YXIoLS1zaXplLTQtMik7IC8qIHNwYWNlLXktMiBmcm9tIEhUTUwgKi9cclxufVxyXG5cclxuLmZpbHRlci1ncm91cC1oZWFkZXIge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbn1cclxuXHJcbi5maWx0ZXItZ3JvdXAtaGVhZGVyLWxlZnQge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRnYXA6IDAuMzc1cmVtOyAvKiBzcGFjZS14LTEuNSBmcm9tIEhUTUwgKi9cclxufVxyXG5cclxuLmZpbHRlci1ncm91cC1oZWFkZXItbGVmdCAuZHJhZy1oYW5kbGUtY29udGFpbmVyIC5zdmctaWNvbiB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtZmFpbnQpOyAvKiB0ZXh0LXNsYXRlLTQwMCAqL1xyXG59XHJcblxyXG4uZmlsdGVyLWdyb3VwLWhlYWRlci1sZWZ0IC5kcmFnLWhhbmRsZS1jb250YWluZXI6aG92ZXIgLnN2Zy1pY29uIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7IC8qIGhvdmVyOnRleHQtc2xhdGUtNTAwICovXHJcbn1cclxuXHJcbi5maWx0ZXItZ3JvdXAtaGVhZGVyLWxlZnQgLmRyYWctaGFuZGxlLWNvbnRhaW5lciB7XHJcblx0cGFkZGluZy1yaWdodDogdmFyKC0tc2l6ZS0yLTEpO1xyXG59XHJcblxyXG4uZmlsdGVyLWdyb3VwLWhlYWRlci1sZWZ0ID4gLmNvbXBhY3QtdGV4dCxcclxuLmZpbHRlci1ncm91cC1oZWFkZXItbGVmdCA+IHNwYW4uY29tcGFjdC10ZXh0IHtcclxuXHRmb250LXdlaWdodDogNTAwOyAvKiBmb250LW1lZGl1bSAqL1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7IC8qIHRleHQtc2xhdGUtNjAwICovXHJcbn1cclxuXHJcbi5maWx0ZXItZ3JvdXAtaGVhZGVyLWxlZnQgLmdyb3VwLWNvbmRpdGlvbi1zZWxlY3QuY29tcGFjdC1zZWxlY3Qge1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWlucHV0LWJvcmRlci1jb2xvciwgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpKTtcclxufVxyXG5cclxuLmZpbHRlci1ncm91cC1oZWFkZXItbGVmdCAuZ3JvdXAtY29uZGl0aW9uLXNlbGVjdC5jb21wYWN0LXNlbGVjdDpmb2N1cyB7XHJcblx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdGJveC1zaGFkb3c6IDAgMCAwIDFweCB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG59XHJcblxyXG4uZmlsdGVyLWdyb3VwLWhlYWRlci1yaWdodCB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGdhcDogMC4yNXJlbTsgLyogc3BhY2UteC0xIGZyb20gSFRNTCAqL1xyXG59XHJcblxyXG4uZmlsdGVyLWdyb3VwLWhlYWRlci1yaWdodCAuZHVwbGljYXRlLWdyb3VwLWJ0bi5jb21wYWN0LWljb24tYnRuLFxyXG4uZmlsdGVyLWdyb3VwLWhlYWRlci1yaWdodCAucmVtb3ZlLWdyb3VwLWJ0bi5jb21wYWN0LWljb24tYnRuIHtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7IC8qIHJvdW5kZWQtbWQgZnJvbSBUYWlsd2luZCAqL1xyXG59XHJcblxyXG4uZmlsdGVyLWdyb3VwLWhlYWRlci1yaWdodCAuZHVwbGljYXRlLWdyb3VwLWJ0bi5jb21wYWN0LWljb24tYnRuIC5zdmctaWNvbiB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpOyAvKiB0ZXh0LXNsYXRlLTUwMCAqL1xyXG59XHJcblxyXG4uZmlsdGVyLWdyb3VwLWhlYWRlci1yaWdodFxyXG4uZHVwbGljYXRlLWdyb3VwLWJ0bi5jb21wYWN0LWljb24tYnRuOmhvdmVyXHJcbi5zdmctaWNvbiB7XHJcblx0Y29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7IC8qIGhvdmVyOnRleHQtaW5kaWdvLTYwMCAqL1xyXG59XHJcblxyXG4uZmlsdGVyLWdyb3VwLWhlYWRlci1yaWdodCAuZHVwbGljYXRlLWdyb3VwLWJ0bi5jb21wYWN0LWljb24tYnRuOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyKTtcclxufVxyXG5cclxuLmZpbHRlci1ncm91cC1oZWFkZXItcmlnaHQgLnJlbW92ZS1ncm91cC1idG4uY29tcGFjdC1pY29uLWJ0biAuc3ZnLWljb24ge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTsgLyogdGV4dC1zbGF0ZS01MDAgKi9cclxufVxyXG5cclxuLmZpbHRlci1ncm91cC1oZWFkZXItcmlnaHQgLnJlbW92ZS1ncm91cC1idG4uY29tcGFjdC1pY29uLWJ0bjpob3ZlciAuc3ZnLWljb24ge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LWVycm9yKTsgLyogaG92ZXI6dGV4dC1yZWQtNjAwICovXHJcbn1cclxuXHJcbi5maWx0ZXItZ3JvdXAtaGVhZGVyLXJpZ2h0IC5yZW1vdmUtZ3JvdXAtYnRuLmNvbXBhY3QtaWNvbi1idG46aG92ZXIge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcihcclxuXHRcdC0tYmFja2dyb3VuZC1lcnJvci1ob3ZlcixcclxuXHRcdHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItZXJyb3ItaG92ZXIpXHJcblx0KTtcclxufVxyXG5cclxuLyogRmlsdGVycyBMaXN0ICguZmlsdGVycy1saXN0KSAqL1xyXG4uZmlsdGVycy1saXN0IHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0Z2FwOiB2YXIoLS1zaXplLTItMik7IC8qIHNwYWNlLXktMS41IGZyb20gSFRNTCAqL1xyXG5cdHBhZGRpbmctbGVmdDogMXJlbTsgLyogcGwtNCBmcm9tIEhUTUwgKi9cclxuXHRib3JkZXItbGVmdDogMnB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTsgLyogYm9yZGVyLWwtMiBib3JkZXItc2xhdGUtMjAwICovXHJcblx0bWFyZ2luLWxlZnQ6IHZhcigtLXNpemUtNC0yKTsgLyogbWwtMS41IGZyb20gSFRNTCAqL1xyXG59XHJcblxyXG4uZmlsdGVycy1saXN0OmVtcHR5IHtcclxuXHRkaXNwbGF5OiBub25lO1xyXG59XHJcblxyXG4vKiBHcm91cCBGb290ZXIgKC5ncm91cC1mb290ZXIpICovXHJcbi5ncm91cC1mb290ZXIge1xyXG5cdC8qIEhUTUw6IDxkaXYgY2xhc3M9XCJwbC00IG10LTEuNVwiPiBjb250YWluaW5nIGJ1dHRvbiAqL1xyXG5cdC8qIFRTIGNyZWF0ZXMgLmdyb3VwLWZvb3RlciwgdGhlbiBhZGRzIEJ1dHRvbkNvbXBvbmVudCB0byBpdC4gKi9cclxuXHRwYWRkaW5nLWxlZnQ6IDAuMzc1cmVtOyAvKiBDb3JyZXNwb25kcyB0byBwbC0xLjUgZWZmZWN0aXZlbHkgaWYgaXRlbXMgaW5zaWRlIC5maWx0ZXJzLWxpc3QgaGF2ZSBtYXJnaW4vcGFkZGluZyAqL1xyXG5cdG1hcmdpbi10b3A6IDAuMzc1cmVtOyAvKiBtdC0xLjUgKi9cclxufVxyXG5cclxuLmFkZC1maWx0ZXItYnRuLWljb24ge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxufVxyXG5cclxuLyogRmlsdGVyIEl0ZW0gKCNmaWx0ZXItaXRlbS10ZW1wbGF0ZSkgKi9cclxuLmZpbHRlci1pdGVtIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0Z2FwOiB2YXIoLS1zaXplLTItMik7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTIpO1xyXG5cdC8qIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTsgKi9cclxuXHQvKiBib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtbSk7ICovXHJcblx0cGFkZGluZy10b3A6IDA7XHJcblx0cGFkZGluZy1ib3R0b206IDA7XHJcbn1cclxuXHJcbi5maWx0ZXItaXRlbSAuZmlsdGVyLWNvbmp1bmN0aW9uIHtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGxlcik7IC8qIHRleHQtMnhzICovXHJcblx0Zm9udC13ZWlnaHQ6IDYwMDsgLyogZm9udC1zZW1pYm9sZCAqL1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LWZhaW50KTsgLyogdGV4dC1zbGF0ZS00MDAgKi9cclxuXHRhbGlnbi1zZWxmOiBjZW50ZXI7XHJcbn1cclxuXHJcbi5maWx0ZXItaXRlbSAuZmlsdGVyLXByb3BlcnR5LXNlbGVjdC5jb21wYWN0LXNlbGVjdCB7XHJcblx0ZmxleC1iYXNpczogMzAlOyAvKiB3LTEvMyAqL1xyXG5cdGZsZXgtZ3JvdzogMDtcclxuXHRmbGV4LXNocmluazogMDtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1pbnB1dC1ib3JkZXItY29sb3IsIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKSk7XHJcblx0LyogYm9yZGVyOiB1bnNldCAhaW1wb3J0YW50OyAqL1xyXG5cdGJveC1zaGFkb3c6IG5vbmU7XHJcbn1cclxuXHJcbi5maWx0ZXItaXRlbSAuZmlsdGVyLXByb3BlcnR5LXNlbGVjdC5jb21wYWN0LXNlbGVjdDpmb2N1cyB7XHJcblx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdGJveC1zaGFkb3c6IDAgMCAwIDFweCB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG59XHJcblxyXG4uZmlsdGVyLWl0ZW0gLmZpbHRlci1jb25kaXRpb24tc2VsZWN0LmNvbXBhY3Qtc2VsZWN0IHtcclxuXHR3aWR0aDogYXV0bzsgLyogdy1hdXRvICovXHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0taW5wdXQtYm9yZGVyLWNvbG9yLCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcikpO1xyXG5cdC8qIGJvcmRlcjogdW5zZXQgIWltcG9ydGFudDsgKi9cclxuXHRib3gtc2hhZG93OiBub25lO1xyXG59XHJcblxyXG4uZmlsdGVyLWl0ZW0gLmZpbHRlci1jb25kaXRpb24tc2VsZWN0LmNvbXBhY3Qtc2VsZWN0OmZvY3VzIHtcclxuXHRib3JkZXItY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcblx0Ym94LXNoYWRvdzogMCAwIDAgMXB4IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcbn1cclxuXHJcbi5maWx0ZXItaXRlbSAuZmlsdGVyLXZhbHVlLWlucHV0LmNvbXBhY3QtaW5wdXQge1xyXG5cdGZsZXgtZ3JvdzogMTsgLyogZmxleC1ncm93ICovXHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0taW5wdXQtYm9yZGVyLWNvbG9yLCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcikpO1xyXG5cdHdpZHRoOiAxMDAlO1xyXG59XHJcblxyXG4uZmlsdGVyLWl0ZW0gLmZpbHRlci12YWx1ZS1pbnB1dC5jb21wYWN0LWlucHV0OmZvY3VzIHtcclxuXHRib3JkZXItY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcblx0Ym94LXNoYWRvdzogMCAwIDAgMXB4IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcbn1cclxuXHJcbi5maWx0ZXItaXRlbSAucmVtb3ZlLWZpbHRlci1idG4uY29tcGFjdC1pY29uLWJ0biAuc3ZnLWljb24ge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTsgLyogdGV4dC1zbGF0ZS01MDAgKi9cclxufVxyXG5cclxuLmZpbHRlci1pdGVtIC5yZW1vdmUtZmlsdGVyLWJ0bi5jb21wYWN0LWljb24tYnRuOmhvdmVyIC5zdmctaWNvbiB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtZXJyb3IpOyAvKiBob3Zlcjp0ZXh0LXJlZC02MDAgKi9cclxufVxyXG5cclxuLmZpbHRlci1pdGVtIC5yZW1vdmUtZmlsdGVyLWJ0bi5jb21wYWN0LWljb24tYnRuOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoXHJcblx0XHQtLWJhY2tncm91bmQtZXJyb3ItaG92ZXIsXHJcblx0XHR2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWVycm9yLWhvdmVyKVxyXG5cdCk7XHJcbn1cclxuXHJcbi8qIEFkZCBGaWx0ZXIgR3JvdXAgQnV0dG9uIFNlY3Rpb24gKi9cclxuLmFkZC1ncm91cC1zZWN0aW9uIHtcclxuXHRtYXJnaW4tdG9wOiB2YXIoLS1zaXplLTItMSk7XHJcblx0bWFyZ2luLWJvdHRvbTogdmFyKC0tc2l6ZS0yLTEpO1xyXG5cdG1hcmdpbi1sZWZ0OiB2YXIoLS1zaXplLTItMSk7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbn1cclxuXHJcbi5hZGQtZmlsdGVyLWdyb3VwLWJ0bi1pY29uIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbn1cclxuXHJcbi8qIEZpbHRlciBDb25maWd1cmF0aW9uIFNlY3Rpb24gKi9cclxuLmZpbHRlci1jb25maWctc2VjdGlvbiB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRnYXA6IHZhcigtLXNpemUtNC0yKTtcclxuXHQvKiBtYXJnaW4tdG9wOiB2YXIoLS1zaXplLTItMSk7ICovXHJcblx0LyogbWFyZ2luLWJvdHRvbTogdmFyKC0tc2l6ZS0yLTEpOyAqL1xyXG5cdC8qIG1hcmdpbi1sZWZ0OiB2YXIoLS1zaXplLTItMSk7ICovXHJcblx0LyogcGFkZGluZy10b3A6IHZhcigtLXNpemUtMi0yKTsgKi9cclxuXHQvKiBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpOyAqL1xyXG59XHJcblxyXG4uc2F2ZS1maWx0ZXItY29uZmlnLWJ0bixcclxuLmxvYWQtZmlsdGVyLWNvbmZpZy1idG4ge1xyXG5cdGZsZXg6IDE7XHJcbn1cclxuXHJcbi5zYXZlLWZpbHRlci1jb25maWctYnRuLWljb24sXHJcbi5sb2FkLWZpbHRlci1jb25maWctYnRuLWljb24ge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxufVxyXG5cclxuLnNhdmUtZmlsdGVyLWNvbmZpZy1idG46aG92ZXIge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudC1ob3Zlcik7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtb24tYWNjZW50KTtcclxufVxyXG5cclxuLmxvYWQtZmlsdGVyLWNvbmZpZy1idG46aG92ZXIge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpO1xyXG59XHJcblxyXG4vKiBGaWx0ZXIgQ29uZmlnIE1vZGFsIFN0eWxlcyAqL1xyXG4uZmlsdGVyLWNvbmZpZy1kZXRhaWxzIHtcclxuXHRtYXJnaW4tdG9wOiB2YXIoLS1zaXplLTQtMyk7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTMpO1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtbCk7XHJcblx0YmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KFxyXG5cdFx0MTM1ZGVnLFxyXG5cdFx0dmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpIDAlLFxyXG5cdFx0dmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5LWFsdCkgMTAwJVxyXG5cdCk7XHJcblx0Ym94LXNoYWRvdzogdmFyKC0tc2hhZG93LXMpO1xyXG5cdHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0O1xyXG59XHJcblxyXG4uZmlsdGVyLWNvbmZpZy1kZXRhaWxzOmhvdmVyIHtcclxuXHRib3gtc2hhZG93OiAwIDRweCAxMnB4IHJnYmEoMCwgMCwgMCwgMC4xNSk7XHJcblx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xcHgpO1xyXG59XHJcblxyXG4uZmlsdGVyLWNvbmZpZy1kZXRhaWxzIGgzIHtcclxuXHRtYXJnaW46IDAgMCB2YXIoLS1zaXplLTQtMikgMDtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktbWVkaXVtKTtcclxuXHRmb250LXdlaWdodDogNjAwO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LWFjY2VudCk7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGdhcDogdmFyKC0tc2l6ZS0yLTIpO1xyXG59XHJcblxyXG4uZmlsdGVyLWNvbmZpZy1kZXRhaWxzIHAge1xyXG5cdG1hcmdpbjogdmFyKC0tc2l6ZS0yLTIpIDA7XHJcblx0bGluZS1oZWlnaHQ6IDEuNTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG59XHJcblxyXG4uZmlsdGVyLWNvbmZpZy1tZXRhIHtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGxlcik7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdG1hcmdpbjogdmFyKC0tc2l6ZS0yLTEpIDA7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS0yLTEpIHZhcigtLXNpemUtMi0yKTtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWZvcm0tZmllbGQpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zKTtcclxuXHRib3JkZXItbGVmdDogM3B4IHNvbGlkIHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcbn1cclxuXHJcbi5maWx0ZXItY29uZmlnLXN1bW1hcnkge1xyXG5cdG1hcmdpbi10b3A6IHZhcigtLXNpemUtNC0zKTtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtMikgMCAwIDA7XHJcblx0Ym9yZGVyLXRvcDogMnB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxufVxyXG5cclxuLmZpbHRlci1jb25maWctc3VtbWFyeSBoNCB7XHJcblx0bWFyZ2luOiAwIDAgdmFyKC0tc2l6ZS0yLTMpIDA7XHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsKTtcclxuXHRmb250LXdlaWdodDogNjAwO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGdhcDogdmFyKC0tc2l6ZS0yLTEpO1xyXG59XHJcblxyXG4uZmlsdGVyLWNvbmZpZy1zdW1tYXJ5IHAge1xyXG5cdG1hcmdpbjogdmFyKC0tc2l6ZS0yLTEpIDA7XHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsZXIpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTItMSkgdmFyKC0tc2l6ZS0yLTIpO1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeS1hbHQpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zKTtcclxufVxyXG5cclxuLmZpbHRlci1jb25maWctYnV0dG9ucyB7XHJcblx0bWFyZ2luLXRvcDogdmFyKC0tc2l6ZS00LTMpO1xyXG5cdHBhZGRpbmctdG9wOiB2YXIoLS1zaXplLTQtMik7XHJcbn1cclxuXHJcbi5maWx0ZXItY29uZmlnLW5hbWUtaGlnaGxpZ2h0IHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10ZXh0LWFjY2VudCk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtb24tYWNjZW50KTtcclxuXHRwYWRkaW5nOiAwLjEyNXJlbSAwLjI1cmVtO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zKTtcclxuXHRmb250LXdlaWdodDogNTAwO1xyXG59XHJcblxyXG4vKiBBZHZhbmNlZCBmaWx0ZXIgY29udGFpbmVyIHN0eWxlcyBmb3IgVmlld0NvbmZpZ01vZGFsICovXHJcbi5hZHZhbmNlZC1maWx0ZXItY29udGFpbmVyIHtcclxuXHRtYXJnaW4tdG9wOiB2YXIoLS1zaXplLTQtMik7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTMpO1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtbSk7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xyXG59XHJcblxyXG4uYWR2YW5jZWQtZmlsdGVyLWNvbnRhaW5lciAudGFzay1maWx0ZXItcm9vdC1jb250YWluZXIge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG5cdGJvcmRlcjogbm9uZTtcclxuXHRwYWRkaW5nOiAwO1xyXG59XHJcblxyXG4uYWR2YW5jZWQtZmlsdGVyLWNvbnRhaW5lciAudGFzay1maWx0ZXItbWFpbi1wYW5lbCB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcblx0Ym9yZGVyOiBub25lO1xyXG5cdHBhZGRpbmc6IDA7XHJcbn1cclxuXHJcbi8qIFNtYWxsZXIgc3R5bGluZyBmb3IgZmlsdGVycyBpbiBtb2RhbCAqL1xyXG4udGFzay1nZW5pdXMtdmlldy1jb25maWctbW9kYWwgLmFkdmFuY2VkLWZpbHRlci1jb250YWluZXIgLmZpbHRlci1ncm91cCB7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTIpO1xyXG5cdG1hcmdpbi1ib3R0b206IHZhcigtLXNpemUtNC0yKTtcclxufVxyXG5cclxuLnRhc2stZ2VuaXVzLXZpZXctY29uZmlnLW1vZGFsIC5hZHZhbmNlZC1maWx0ZXItY29udGFpbmVyIC5maWx0ZXItaXRlbSB7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS0yLTIpO1xyXG5cdGdhcDogdmFyKC0tc2l6ZS0yLTIpO1xyXG59XHJcblxyXG4udGFzay1nZW5pdXMtdmlldy1jb25maWctbW9kYWwgLmFkdmFuY2VkLWZpbHRlci1jb250YWluZXIgLmNvbXBhY3QtYnRuIHtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTItMSkgdmFyKC0tc2l6ZS0yLTIpO1xyXG5cdG1pbi1oZWlnaHQ6IDI2cHg7XHJcbn1cclxuXHJcbi50YXNrLWdlbml1cy12aWV3LWNvbmZpZy1tb2RhbCAuYWR2YW5jZWQtZmlsdGVyLWNvbnRhaW5lciAuY29tcGFjdC1zZWxlY3QsXHJcbi50YXNrLWdlbml1cy12aWV3LWNvbmZpZy1tb2RhbCAuYWR2YW5jZWQtZmlsdGVyLWNvbnRhaW5lciAuY29tcGFjdC1pbnB1dCB7XHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsZXIpO1xyXG5cdGhlaWdodDogMjhweDtcclxufVxyXG4iLCAiLyogVmlldyBTZXR0aW5ncyBUYWIgU3R5bGVzICovXHJcblxyXG4vKiBWaWV3IG1hbmFnZW1lbnQgbGlzdCBjb250YWluZXIgKi9cclxuLnZpZXctbWFuYWdlbWVudC1saXN0IHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0Z2FwOiAyMHB4O1xyXG5cdG1hcmdpbi1ib3R0b206IHZhcigtLXNpemUtNC00KTtcclxufVxyXG5cclxuLyogU2VjdGlvbiBjb250YWluZXJzICovXHJcbi52aWV3LXNlY3Rpb24tY29udGFpbmVyIHtcclxuXHRtaW4taGVpZ2h0OiAxMDBweDtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Ym9yZGVyLXJhZGl1czogNnB4O1xyXG5cdHBhZGRpbmc6IDEwcHg7XHJcbn1cclxuXHJcbi8qIFNlY3Rpb24gaGVhZGVycyAqL1xyXG4udmlldy1zZWN0aW9uLWhlYWRlciB7XHJcblx0bWFyZ2luLWJvdHRvbTogMTBweDtcclxufVxyXG5cclxuLnZpZXctc2VjdGlvbi1oZWFkZXIgaDQge1xyXG5cdG1hcmdpbjogMDtcclxuXHRmb250LXNpemU6IDE0cHg7XHJcblx0Zm9udC13ZWlnaHQ6IDYwMDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcbn1cclxuXHJcbi52aWV3LXNlY3Rpb24taXRlbXMsXHJcbi5zb3J0YWJsZS12aWV3cyB7XHJcblx0bWluLWhlaWdodDogNjBweDtcclxuXHRib3JkZXI6IDFweCBkYXNoZWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGJvcmRlci1yYWRpdXM6IDRweDtcclxuXHRwYWRkaW5nOiA4cHg7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcclxufVxyXG5cclxuLnNvcnRhYmxlLXZpZXdzOmVtcHR5OjphZnRlciB7XHJcblx0Y29udGVudDogYXR0cihkYXRhLWVtcHR5LXRleHQpO1xyXG5cdGRpc3BsYXk6IGJsb2NrO1xyXG5cdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0cGFkZGluZzogMjBweDtcclxuXHRmb250LXN0eWxlOiBpdGFsaWM7XHJcbn1cclxuXHJcbi5zb3J0YWJsZS12aWV3c1tkYXRhLXJlZ2lvbj1cInRvcFwiXTplbXB0eTo6YWZ0ZXIge1xyXG5cdGNvbnRlbnQ6IFwiRHJhZyB2aWV3cyBoZXJlIGZvciB0aGUgdG9wIHNlY3Rpb25cIjtcclxufVxyXG5cclxuLnNvcnRhYmxlLXZpZXdzW2RhdGEtcmVnaW9uPVwiYm90dG9tXCJdOmVtcHR5OjphZnRlciB7XHJcblx0Y29udGVudDogXCJEcmFnIHZpZXdzIGhlcmUgZm9yIHRoZSBib3R0b20gc2VjdGlvblwiO1xyXG59XHJcblxyXG4vKiBWaWV3IGl0ZW0gc3R5bGVzICovXHJcbi52aWV3LWl0ZW0sXHJcbi5zb3J0YWJsZS12aWV3LWl0ZW0ge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRwYWRkaW5nOiA4cHg7XHJcblx0bWFyZ2luLWJvdHRvbTogNHB4O1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcclxuXHRib3JkZXItcmFkaXVzOiA0cHg7XHJcblx0Y3Vyc29yOiBtb3ZlO1xyXG5cdHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2U7XHJcbn1cclxuXHJcbi52aWV3LWl0ZW06aG92ZXIge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5LWFsdCkgIWltcG9ydGFudDtcclxufVxyXG5cclxuLyogRHJhZyBoYW5kbGUgc3R5bGVzICovXHJcbi52aWV3LWRyYWctaGFuZGxlIHtcclxuXHRjdXJzb3I6IGdyYWI7XHJcblx0bWFyZ2luLXJpZ2h0OiA4cHg7XHJcblx0b3BhY2l0eTogMC41O1xyXG59XHJcblxyXG4udmlldy1kcmFnLWhhbmRsZTphY3RpdmUge1xyXG5cdGN1cnNvcjogZ3JhYmJpbmcgIWltcG9ydGFudDtcclxufVxyXG5cclxuLyogVmlldyBpdGVtIGljb24gKi9cclxuLnZpZXctaXRlbS1pY29uIHtcclxuXHRtYXJnaW4tcmlnaHQ6IDhweDtcclxufVxyXG5cclxuLyogVmlldyBpdGVtIGluZm8gKi9cclxuLnZpZXctaXRlbS1pbmZvIHtcclxuXHRmbGV4OiAxO1xyXG5cdG1hcmdpbi1yaWdodDogOHB4O1xyXG59XHJcblxyXG4udmlldy1pdGVtLW5hbWUge1xyXG5cdGZvbnQtd2VpZ2h0OiA1MDA7XHJcbn1cclxuXHJcbi52aWV3LWl0ZW0tdHlwZSB7XHJcblx0Zm9udC1zaXplOiAxMnB4O1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxufVxyXG5cclxuLyogVmlldyBpdGVtIGFjdGlvbnMgKi9cclxuLnZpZXctaXRlbS1hY3Rpb25zIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGdhcDogNHB4O1xyXG59XHJcblxyXG4udmlldy1hY3Rpb24tYnV0dG9uIHtcclxuXHRiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcclxuXHRib3JkZXI6IG5vbmU7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdHBhZGRpbmc6IDRweDtcclxuXHRib3JkZXItcmFkaXVzOiA0cHg7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxufVxyXG5cclxuLnZpZXctYWN0aW9uLWJ1dHRvbjpob3ZlciB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3Zlcik7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxufVxyXG5cclxuLnZpZXctYWN0aW9uLWRlbGV0ZTpob3ZlciB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1lcnJvcik7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtb24tYWNjZW50KTtcclxufVxyXG5cclxuLnNvcnRhYmxlLWdob3N0IHtcclxuXHRvcGFjaXR5OiAwLjQ7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3ZlcikgIWltcG9ydGFudDtcclxufVxyXG5cclxuLnNvcnRhYmxlLWRyYWcge1xyXG5cdG9wYWNpdHk6IDA7XHJcbn1cclxuXHJcbi5zb3J0YWJsZS1jaG9zZW4ge1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpICFpbXBvcnRhbnQ7XHJcbn1cclxuIiwgIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XHJcbiAgIENhbGVuZGFyIFZpZXcgU2V0dGluZ3MgVGFiIFN0eWxlc1xyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLyogVGVtcGxhdGVzIENvbnRhaW5lciAqL1xyXG4uY2FsZW5kYXItdGVtcGxhdGVzLWNvbnRhaW5lciB7XHJcblx0ZGlzcGxheTogZ3JpZDtcclxuXHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdChhdXRvLWZpbGwsIG1pbm1heCgyODBweCwgMWZyKSk7XHJcblx0Z2FwOiB2YXIoLS1zaXplLTQtMyk7XHJcblx0bWFyZ2luLWJvdHRvbTogdmFyKC0tc2l6ZS00LTQpO1xyXG59XHJcblxyXG4uY2FsZW5kYXItdGVtcGxhdGUtY2FyZCB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogZmxleC1zdGFydDtcclxuXHRnYXA6IHZhcigtLXNpemUtNC0zKTtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtMyk7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1tKTtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0dHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIDAuMTVzIGVhc2UsIGJveC1zaGFkb3cgMC4xNXMgZWFzZTtcclxufVxyXG5cclxuLmNhbGVuZGFyLXRlbXBsYXRlLWNhcmQ6aG92ZXIge1xyXG5cdGJvcmRlci1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxuXHRib3gtc2hhZG93OiAwIDJweCA4cHggdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3gtc2hhZG93KTtcclxufVxyXG5cclxuLmNhbGVuZGFyLXRlbXBsYXRlLWljb24ge1xyXG5cdGZsZXgtc2hyaW5rOiAwO1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHR3aWR0aDogNDBweDtcclxuXHRoZWlnaHQ6IDQwcHg7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtYWNjZW50KTtcclxufVxyXG5cclxuLmNhbGVuZGFyLXRlbXBsYXRlLWljb24gc3ZnIHtcclxuXHR3aWR0aDogMjBweDtcclxuXHRoZWlnaHQ6IDIwcHg7XHJcbn1cclxuXHJcbi5jYWxlbmRhci10ZW1wbGF0ZS1pbmZvIHtcclxuXHRmbGV4OiAxO1xyXG5cdG1pbi13aWR0aDogMDtcclxufVxyXG5cclxuLmNhbGVuZGFyLXRlbXBsYXRlLW5hbWUge1xyXG5cdGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXNlbWlib2xkKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG5cdG1hcmdpbi1ib3R0b206IHZhcigtLXNpemUtMi0xKTtcclxufVxyXG5cclxuLmNhbGVuZGFyLXRlbXBsYXRlLWRlc2NyaXB0aW9uIHtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGxlcik7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdGxpbmUtaGVpZ2h0OiAxLjQ7XHJcbn1cclxuXHJcbi5jYWxlbmRhci10ZW1wbGF0ZS1hY3Rpb25zIHtcclxuXHRmbGV4LXNocmluazogMDtcclxufVxyXG5cclxuLmNhbGVuZGFyLXRlbXBsYXRlLWFjdGlvbnMgYnV0dG9uIHtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGxlcik7XHJcbn1cclxuXHJcbi8qIEN1c3RvbSBWaWV3cyBDb250YWluZXIgKi9cclxuLmN1c3RvbS1jYWxlbmRhci12aWV3cy1jb250YWluZXIge1xyXG5cdG1hcmdpbi1ib3R0b206IHZhcigtLXNpemUtNC00KTtcclxufVxyXG5cclxuLyogRW1wdHkgU3RhdGUgKi9cclxuLmNhbGVuZGFyLXZpZXdzLWVtcHR5IHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtOCkgdmFyKC0tc2l6ZS00LTQpO1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtbSk7XHJcblx0Ym9yZGVyOiAycHggZGFzaGVkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbn1cclxuXHJcbi5jYWxlbmRhci12aWV3cy1lbXB0eS1pY29uIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1mYWludCk7XHJcblx0bWFyZ2luLWJvdHRvbTogdmFyKC0tc2l6ZS00LTIpO1xyXG59XHJcblxyXG4uY2FsZW5kYXItdmlld3MtZW1wdHktaWNvbiBzdmcge1xyXG5cdHdpZHRoOiA0OHB4O1xyXG5cdGhlaWdodDogNDhweDtcclxufVxyXG5cclxuLmNhbGVuZGFyLXZpZXdzLWVtcHR5LXRleHQge1xyXG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1tZWRpdW0pO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRmb250LXdlaWdodDogdmFyKC0tZm9udC1tZWRpdW0pO1xyXG5cdG1hcmdpbi1ib3R0b206IHZhcigtLXNpemUtMi0yKTtcclxufVxyXG5cclxuLmNhbGVuZGFyLXZpZXdzLWVtcHR5LWhpbnQge1xyXG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbGVyKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1mYWludCk7XHJcbn1cclxuXHJcbi8qIFZpZXdzIExpc3QgKi9cclxuLmNhbGVuZGFyLXZpZXdzLWxpc3Qge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRnYXA6IHZhcigtLXNpemUtMi0yKTtcclxufVxyXG5cclxuLyogVmlldyBJdGVtICovXHJcbi5jYWxlbmRhci12aWV3LWl0ZW0ge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRnYXA6IHZhcigtLXNpemUtNC0yKTtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtMikgdmFyKC0tc2l6ZS00LTMpO1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtbSk7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdHRyYW5zaXRpb246IGFsbCAwLjE1cyBlYXNlO1xyXG59XHJcblxyXG4uY2FsZW5kYXItdmlldy1pdGVtOmhvdmVyIHtcclxuXHRib3JkZXItY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcbn1cclxuXHJcbi5jYWxlbmRhci12aWV3LWl0ZW0uaXMtZGlzYWJsZWQge1xyXG5cdG9wYWNpdHk6IDAuNjtcclxufVxyXG5cclxuLmNhbGVuZGFyLXZpZXctaXRlbS5pcy1kaXNhYmxlZCAuY2FsZW5kYXItdmlldy1uYW1lIHtcclxuXHR0ZXh0LWRlY29yYXRpb246IGxpbmUtdGhyb3VnaDtcclxufVxyXG5cclxuLmNhbGVuZGFyLXZpZXctZHJhZy1oYW5kbGUge1xyXG5cdGN1cnNvcjogZ3JhYjtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1mYWludCk7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS0yLTEpO1xyXG59XHJcblxyXG4uY2FsZW5kYXItdmlldy1kcmFnLWhhbmRsZTpob3ZlciB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG59XHJcblxyXG4uY2FsZW5kYXItdmlldy1kcmFnLWhhbmRsZTphY3RpdmUge1xyXG5cdGN1cnNvcjogZ3JhYmJpbmc7XHJcbn1cclxuXHJcbi5jYWxlbmRhci12aWV3LWljb24ge1xyXG5cdGZsZXgtc2hyaW5rOiAwO1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHR3aWR0aDogMzJweDtcclxuXHRoZWlnaHQ6IDMycHg7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtYWNjZW50KTtcclxufVxyXG5cclxuLmNhbGVuZGFyLXZpZXctaWNvbiBzdmcge1xyXG5cdHdpZHRoOiAxNnB4O1xyXG5cdGhlaWdodDogMTZweDtcclxufVxyXG5cclxuLmNhbGVuZGFyLXZpZXctaW5mbyB7XHJcblx0ZmxleDogMTtcclxuXHRtaW4td2lkdGg6IDA7XHJcbn1cclxuXHJcbi5jYWxlbmRhci12aWV3LW5hbWUge1xyXG5cdGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LW1lZGl1bSk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxufVxyXG5cclxuLmNhbGVuZGFyLXZpZXctbWV0YSB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LXdyYXA6IHdyYXA7XHJcblx0Z2FwOiB2YXIoLS1zaXplLTItMik7XHJcblx0bWFyZ2luLXRvcDogdmFyKC0tc2l6ZS0yLTEpO1xyXG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbGVyKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcbn1cclxuXHJcbi5jYWxlbmRhci12aWV3LWJhc2UtdHlwZSB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcclxuXHRwYWRkaW5nOiAxcHggNnB4O1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zKTtcclxufVxyXG5cclxuLmNhbGVuZGFyLXZpZXctY29uZmlnLXN1bW1hcnkge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LWZhaW50KTtcclxufVxyXG5cclxuLmNhbGVuZGFyLXZpZXctYWN0aW9ucyB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRnYXA6IHZhcigtLXNpemUtMi0xKTtcclxufVxyXG5cclxuLmNhbGVuZGFyLXZpZXctYWN0aW9uLWJ0biB7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS0yLTIpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zKTtcclxufVxyXG5cclxuLmNhbGVuZGFyLXZpZXctYWN0aW9uLWRlbGV0ZTpob3ZlciB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtZXJyb3IpO1xyXG59XHJcblxyXG4vKiBBZGQgVmlldyBDb250YWluZXIgKi9cclxuLmNhbGVuZGFyLWFkZC12aWV3LWNvbnRhaW5lciB7XHJcblx0bWFyZ2luLXRvcDogdmFyKC0tc2l6ZS00LTIpO1xyXG59XHJcblxyXG4vKiBTb3J0YWJsZSBTdGF0ZXMgKi9cclxuLnNvcnRhYmxlLWdob3N0IHtcclxuXHRvcGFjaXR5OiAwLjQ7XHJcblx0YmFja2dyb3VuZDogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxufVxyXG5cclxuLnNvcnRhYmxlLWNob3NlbiB7XHJcblx0Ym94LXNoYWRvdzogMCA0cHggMTJweCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJveC1zaGFkb3cpO1xyXG59XHJcblxyXG4uc29ydGFibGUtZHJhZyB7XHJcblx0b3BhY2l0eTogMC45O1xyXG59XHJcblxyXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4gICBDYWxlbmRhciBWaWV3IENvbmZpZyBNb2RhbCBTdHlsZXNcclxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi5jYWxlbmRhci12aWV3LWNvbmZpZy1tb2RhbCB7XHJcblx0d2lkdGg6IDU2MHB4O1xyXG5cdG1heC13aWR0aDogOTB2dztcclxufVxyXG5cclxuLmNhbGVuZGFyLXZpZXctY29uZmlnLW1vZGFsIC5tb2RhbC1oZWFkZXIge1xyXG5cdG1hcmdpbi1ib3R0b206IHZhcigtLXNpemUtNC0zKTtcclxufVxyXG5cclxuLmNhbGVuZGFyLXZpZXctY29uZmlnLW1vZGFsIC5tb2RhbC1oZWFkZXIgaDIge1xyXG5cdG1hcmdpbjogMDtcclxufVxyXG5cclxuLyogVGFicyAqL1xyXG4uY2FsZW5kYXItY29uZmlnLXRhYnMge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0Z2FwOiB2YXIoLS1zaXplLTItMSk7XHJcblx0bWFyZ2luLWJvdHRvbTogdmFyKC0tc2l6ZS00LTQpO1xyXG5cdHBhZGRpbmctYm90dG9tOiB2YXIoLS1zaXplLTQtMik7XHJcblx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxufVxyXG5cclxuLmNhbGVuZGFyLWNvbmZpZy10YWIge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRnYXA6IHZhcigtLXNpemUtMi0yKTtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTItMikgdmFyKC0tc2l6ZS00LTIpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zKTtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbCk7XHJcblx0dHJhbnNpdGlvbjogYWxsIDAuMTVzIGVhc2U7XHJcbn1cclxuXHJcbi5jYWxlbmRhci1jb25maWctdGFiOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG59XHJcblxyXG4uY2FsZW5kYXItY29uZmlnLXRhYi5pcy1hY3RpdmUge1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtb24tYWNjZW50KTtcclxufVxyXG5cclxuLmNhbGVuZGFyLWNvbmZpZy10YWIuaXMtZGlzYWJsZWQge1xyXG5cdG9wYWNpdHk6IDAuNDtcclxuXHRjdXJzb3I6IG5vdC1hbGxvd2VkO1xyXG59XHJcblxyXG4uY2FsZW5kYXItY29uZmlnLXRhYi5pcy1kaXNhYmxlZDpob3ZlciB7XHJcblx0YmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG59XHJcblxyXG4uY2FsZW5kYXItY29uZmlnLXRhYi1pY29uIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbn1cclxuXHJcbi5jYWxlbmRhci1jb25maWctdGFiLWljb24gc3ZnIHtcclxuXHR3aWR0aDogMTRweDtcclxuXHRoZWlnaHQ6IDE0cHg7XHJcbn1cclxuXHJcbi8qIENvbnRlbnQgKi9cclxuLmNhbGVuZGFyLWNvbmZpZy1jb250ZW50IHtcclxuXHRtaW4taGVpZ2h0OiAyODBweDtcclxufVxyXG5cclxuLmNhbGVuZGFyLWNvbmZpZy1jb250ZW50IC5zZXR0aW5nLWl0ZW0ge1xyXG5cdGJvcmRlci10b3A6IG5vbmU7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTIpIDA7XHJcbn1cclxuXHJcbi5jYWxlbmRhci1jb25maWctY29udGVudCAuc2V0dGluZy1pdGVtOmZpcnN0LWNoaWxkIHtcclxuXHRwYWRkaW5nLXRvcDogMDtcclxufVxyXG5cclxuLmNhbGVuZGFyLWNvbmZpZy1jb250ZW50IC5zZXR0aW5nLWl0ZW0taGVhZGluZyB7XHJcblx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRwYWRkaW5nLWJvdHRvbTogdmFyKC0tc2l6ZS00LTIpO1xyXG5cdG1hcmdpbi1ib3R0b206IHZhcigtLXNpemUtNC0yKTtcclxufVxyXG5cclxuLyogSWNvbiBTZWxlY3RvciAqL1xyXG4uY2FsZW5kYXItdmlldy1pY29uLXNlbGVjdG9yIHtcclxuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbn1cclxuXHJcbi5jYWxlbmRhci12aWV3LWljb24tc2VsZWN0b3IgYnV0dG9uIHtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtMik7XHJcbn1cclxuXHJcbi8qIERheXMgU2VsZWN0b3IgKi9cclxuLmNhbGVuZGFyLWRheXMtc2VsZWN0b3Ige1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC13cmFwOiB3cmFwO1xyXG5cdGdhcDogdmFyKC0tc2l6ZS0yLTIpO1xyXG59XHJcblxyXG4uY2FsZW5kYXItZGF5LWNoaXAge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHRtaW4td2lkdGg6IDQ0cHg7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS0yLTIpIHZhcigtLXNpemUtNC0yKTtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbGVyKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG5cdHRyYW5zaXRpb246IGFsbCAwLjE1cyBlYXNlO1xyXG59XHJcblxyXG4uY2FsZW5kYXItZGF5LWNoaXA6aG92ZXIge1xyXG5cdGJvcmRlci1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxufVxyXG5cclxuLmNhbGVuZGFyLWRheS1jaGlwLmlzLWhpZGRlbiB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tdGV4dC1lcnJvcik7XHJcblx0Ym9yZGVyLWNvbG9yOiB2YXIoLS10ZXh0LWVycm9yKTtcclxuXHRjb2xvcjogd2hpdGU7XHJcbn1cclxuXHJcbi8qIFRpbWUgUmFuZ2UgRGlzcGxheSAqL1xyXG4uY2FsZW5kYXItdGltZS1yYW5nZS1kaXNwbGF5IHtcclxuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTIpO1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLW1lZGl1bSk7XHJcblx0Zm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtc2VtaWJvbGQpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LWFjY2VudCk7XHJcblx0bWFyZ2luLXRvcDogdmFyKC0tc2l6ZS00LTIpO1xyXG59XHJcblxyXG4vKiBOb3RpY2UgKi9cclxuLmNhbGVuZGFyLWNvbmZpZy1ub3RpY2Uge1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtNC0zKTtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGwpO1xyXG5cdHRleHQtYWxpZ246IGNlbnRlcjtcclxufVxyXG4iLCAiLyogTUNQIEludGVncmF0aW9uIFNldHRpbmdzIFN0eWxlcyAqL1xuXG4vKiBTdGF0dXMgQ29udGFpbmVyICovXG4ubWNwLXN0YXR1cy1jb250YWluZXIge1xuXHRwYWRkaW5nOiAxNnB4O1xuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XG5cdGJvcmRlci1yYWRpdXM6IDhweDtcblx0bWFyZ2luLWJvdHRvbTogMjRweDtcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xufVxuXG4ubWNwLXN0YXR1cyB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdGdhcDogMTBweDtcbn1cblxuLm1jcC1zdGF0dXMtaW5kaWNhdG9yIHtcblx0ZGlzcGxheTogZmxleDtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0Z2FwOiAxMHB4O1xuXHRmb250LXdlaWdodDogNjAwO1xuXHRmb250LXNpemU6IDEuMDVlbTtcbn1cblxuLm1jcC1zdGF0dXMtaW5kaWNhdG9yLnJ1bm5pbmcgLnN0YXR1cy1kb3Qge1xuXHRjb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1zdWNjZXNzKTtcblx0Zm9udC1zaXplOiAxLjJlbTtcblx0YW5pbWF0aW9uOiBwdWxzZSAycyBpbmZpbml0ZTtcbn1cblxuLm1jcC1zdGF0dXMtaW5kaWNhdG9yLnN0b3BwZWQgLnN0YXR1cy1kb3Qge1xuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XG5cdGZvbnQtc2l6ZTogMS4yZW07XG59XG5cbi5tY3Atc3RhdHVzLWRldGFpbHMge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRnYXA6IDI0cHg7XG5cdGZvbnQtc2l6ZTogMC45ZW07XG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcblx0cGFkZGluZy1sZWZ0OiAzMHB4O1xufVxuXG4vKiBDbGllbnQgQ29uZmlndXJhdGlvbiAqL1xuLm1jcC1jb25maWctY29udGFpbmVyIHtcblx0bWFyZ2luLWJvdHRvbTogMzBweDtcbn1cblxuLm1jcC1jbGllbnQtc2VjdGlvbiB7XG5cdG1hcmdpbi1ib3R0b206IDE2cHg7XG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcblx0Ym9yZGVyLXJhZGl1czogOHB4O1xuXHRvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4ubWNwLWNsaWVudC1oZWFkZXIge1xuXHRjdXJzb3I6IHBvaW50ZXI7XG5cdHBhZGRpbmc6IDEycHggMTZweDtcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xuXHRib3JkZXItcmFkaXVzOiAwO1xuXHRtYXJnaW4tYm90dG9tOiAwO1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRnYXA6IDEwcHg7XG5cdHVzZXItc2VsZWN0OiBub25lO1xuXHR0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMnM7XG59XG5cbi5tY3AtY2xpZW50LWhlYWRlcjpob3ZlciB7XG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpO1xufVxuXG4vKiBBcnJvdyBpY29uIGZvciBjb2xsYXBzaWJsZSBzZWN0aW9ucyAqL1xuLm1jcC1hcnJvdyB7XG5cdHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjJzO1xuXHRkaXNwbGF5OiBpbmxpbmUtZmxleDtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdHdpZHRoOiAxNnB4O1xuXHRoZWlnaHQ6IDE2cHg7XG59XG5cbi5tY3AtYXJyb3cgc3ZnIHtcblx0d2lkdGg6IDE0cHg7XG5cdGhlaWdodDogMTRweDtcblx0c3Ryb2tlLXdpZHRoOiAyO1xufVxuXG4ubWNwLWFycm93LmV4cGFuZGVkIHtcblx0dHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xufVxuXG4ubWNwLWNsaWVudC1uYW1lIHtcblx0Zm9udC13ZWlnaHQ6IDUwMDtcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcbn1cblxuLm1jcC1jbGllbnQtY29udGVudCB7XG5cdHBhZGRpbmc6IDE2cHggIWltcG9ydGFudDtcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcblx0ZGlzcGxheTogbm9uZTtcbn1cblxuLm1jcC1jbGllbnQtY29udGVudC5leHBhbmRlZCB7XG5cdGRpc3BsYXk6IGJsb2NrO1xufVxuXG4ubWNwLWNvbmZpZy1ibG9jayB7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0bWFyZ2luLWJvdHRvbTogMjBweDtcbn1cblxuLm1jcC1jb25maWctY29kZSB7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0cGFkZGluZzogMTZweCA2MHB4IDE2cHggMTZweCAhaW1wb3J0YW50O1xuXHRiYWNrZ3JvdW5kOiB2YXIoLS1jb2RlLWJhY2tncm91bmQpO1xuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XG5cdGJvcmRlci1yYWRpdXM6IDZweDtcblx0bWFyZ2luLWJvdHRvbTogMDtcblx0Zm9udC1zaXplOiAwLjg1ZW07XG5cdGxpbmUtaGVpZ2h0OiAxLjU7XG5cdG92ZXJmbG93OiBhdXRvO1xuXHRtYXgtaGVpZ2h0OiAzMDBweDtcblx0Zm9udC1mYW1pbHk6IHZhcigtLWZvbnQtbW9ub3NwYWNlKTtcblx0c2Nyb2xsYmFyLXdpZHRoOiB0aGluO1xuXHRzY3JvbGxiYXItY29sb3I6IHZhcigtLXNjcm9sbGJhci10aHVtYi1iZykgdmFyKC0tc2Nyb2xsYmFyLWJnKTtcbn1cblxuLm1jcC1jb25maWctY29kZSBjb2RlIHtcblx0Y29sb3I6IHZhcigtLWNvZGUtbm9ybWFsKTtcblx0Zm9udC1mYW1pbHk6IHZhcigtLWZvbnQtbW9ub3NwYWNlKTtcblx0d2hpdGUtc3BhY2U6IHByZTtcblx0ZGlzcGxheTogYmxvY2s7XG59XG5cbi5tY3AtY29uZmlnLWNvZGU6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcblx0d2lkdGg6IDhweDtcblx0aGVpZ2h0OiA4cHg7XG59XG5cbi5tY3AtY29uZmlnLWNvZGU6Oi13ZWJraXQtc2Nyb2xsYmFyLXRyYWNrIHtcblx0YmFja2dyb3VuZDogdmFyKC0tc2Nyb2xsYmFyLWJnKTtcbn1cblxuLm1jcC1jb25maWctY29kZTo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWIge1xuXHRiYWNrZ3JvdW5kOiB2YXIoLS1zY3JvbGxiYXItdGh1bWItYmcpO1xuXHRib3JkZXItcmFkaXVzOiA0cHg7XG59XG5cbi5tY3AtY29uZmlnLWNvZGU6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iOmhvdmVyIHtcblx0YmFja2dyb3VuZDogdmFyKC0tc2Nyb2xsYmFyLWFjdGl2ZS10aHVtYi1iZyk7XG59XG5cbi8qIENvcHkgQnV0dG9ucyAqL1xuLm1jcC1jb3B5LWJ0biB7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuXHR0b3A6IDEycHg7XG5cdHJpZ2h0OiAxMnB4O1xuXHRwYWRkaW5nOiA2cHggMTJweDtcblx0Zm9udC1zaXplOiAwLjhlbTtcblx0YmFja2dyb3VuZDogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcblx0Y29sb3I6IHZhcigtLXRleHQtb24tYWNjZW50KTtcblx0Ym9yZGVyOiBub25lO1xuXHRib3JkZXItcmFkaXVzOiA0cHg7XG5cdGN1cnNvcjogcG9pbnRlcjtcblx0dHJhbnNpdGlvbjogYWxsIDAuMnM7XG5cdGZvbnQtd2VpZ2h0OiA1MDA7XG5cdHotaW5kZXg6IDEwO1xufVxuXG4ubWNwLWNvcHktYnRuOmhvdmVyIHtcblx0YmFja2dyb3VuZDogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50LWhvdmVyKTtcblx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xcHgpO1xuXHRib3gtc2hhZG93OiAwIDJweCA0cHggcmdiYSgwLCAwLCAwLCAwLjIpO1xufVxuXG4ubWNwLWNvcHktYnRuLmNvcGllZCB7XG5cdGFuaW1hdGlvbjogY29weVN1Y2Nlc3MgMC4zcyBlYXNlO1xuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLXN1Y2Nlc3MpICFpbXBvcnRhbnQ7XG59XG5cbi8qIEF1dGhlbnRpY2F0aW9uIE1ldGhvZHMgTGlzdCAqL1xuLm1jcC1hdXRoLW1ldGhvZHMge1xuXHRtYXJnaW46IDE1cHggMDtcblx0cGFkZGluZzogMTVweDtcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xuXHRib3JkZXItcmFkaXVzOiA4cHg7XG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcbn1cblxuLm1jcC1hdXRoLWxpc3Qge1xuXHRtYXJnaW46IDEwcHggMCAwIDIwcHg7XG5cdGxpbmUtaGVpZ2h0OiAxLjg7XG59XG5cbi5tY3AtYXV0aC1saXN0IGxpIHtcblx0bWFyZ2luOiA4cHggMDtcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcbn1cblxuLm1jcC1hdXRoLWxpc3QgY29kZSB7XG5cdGJhY2tncm91bmQ6IHZhcigtLWNvZGUtYmFja2dyb3VuZCk7XG5cdHBhZGRpbmc6IDJweCA2cHg7XG5cdGJvcmRlci1yYWRpdXM6IDNweDtcblx0Zm9udC1zaXplOiAwLjllbTtcblx0Y29sb3I6IHZhcigtLWNvZGUtbm9ybWFsKTtcbn1cblxuLyogVG9rZW4gSW5wdXQgKi9cbi5tY3AtdG9rZW4taW5wdXQge1xuXHRmb250LWZhbWlseTogbW9ub3NwYWNlO1xuXHR3aWR0aDogMzAwcHg7XG5cdG1hcmdpbi1yaWdodDogMTBweDtcbn1cblxuLyogQVBJIERvY3VtZW50YXRpb24gKi9cbi5tY3AtZG9jcy1jb250YWluZXIge1xuXHRtYXJnaW4tdG9wOiAyMHB4O1xufVxuXG4ubWNwLWRvY3Mtc2VjdGlvbiB7XG5cdG1hcmdpbi1ib3R0b206IDMwcHg7XG59XG5cbi5tY3AtZG9jcy1zdWJ0aXRsZSB7XG5cdGZvbnQtc2l6ZTogMWVtO1xuXHRmb250LXdlaWdodDogNjAwO1xuXHRtYXJnaW4tYm90dG9tOiAxMnB4O1xuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xufVxuXG4vKiBFbmRwb2ludCBCb3ggKi9cbi5tY3AtZW5kcG9pbnQtYm94IHtcblx0ZGlzcGxheTogZmxleDtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0Z2FwOiAxMnB4O1xuXHRwYWRkaW5nOiAxMnB4O1xuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcblx0Ym9yZGVyLXJhZGl1czogOHB4O1xuXHRtYXJnaW4tYm90dG9tOiAyMHB4O1xufVxuXG4ubWNwLWVuZHBvaW50LWNvbnRlbnQge1xuXHRmbGV4OiAxO1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRnYXA6IDhweDtcbn1cblxuLm1jcC1lbmRwb2ludC1sYWJlbCB7XG5cdGZvbnQtd2VpZ2h0OiA1MDA7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcbn1cblxuLm1jcC1lbmRwb2ludC11cmwge1xuXHRmb250LWZhbWlseTogdmFyKC0tZm9udC1tb25vc3BhY2UpO1xuXHRwYWRkaW5nOiA2cHggMTBweDtcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xuXHRib3JkZXItcmFkaXVzOiA0cHg7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LWFjY2VudCk7XG5cdHVzZXItc2VsZWN0OiB0ZXh0O1xufVxuXG5idXR0b24ubWNwLWNvcHktZW5kcG9pbnQtYnRuIHtcblx0cGFkZGluZzogNnB4IDEycHg7XG5cdGJhY2tncm91bmQ6IHZhcigtLWludGVyYWN0aXZlLW5vcm1hbCk7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcblx0Ym9yZGVyLXJhZGl1czogNHB4O1xuXHRjdXJzb3I6IHBvaW50ZXI7XG5cdHRyYW5zaXRpb246IGJhY2tncm91bmQgMC4ycztcblx0Ym94LXNoYWRvdzogbm9uZTtcbn1cblxuYnV0dG9uLm1jcC1jb3B5LWVuZHBvaW50LWJ0bjpob3ZlciB7XG5cdGJhY2tncm91bmQ6IHZhcigtLWludGVyYWN0aXZlLWhvdmVyKTtcbn1cblxuYnV0dG9uLm1jcC1jb3B5LWVuZHBvaW50LWJ0bi5jb3BpZWQge1xuXHRhbmltYXRpb246IGNvcHlTdWNjZXNzIDAuM3MgZWFzZTtcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1zdWNjZXNzKSAhaW1wb3J0YW50O1xufVxuXG4vKiBUb29scyBHcmlkICovXG4ubWNwLXRvb2xzLWdyaWQge1xuXHRkaXNwbGF5OiBncmlkO1xuXHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdChhdXRvLWZpbGwsIG1pbm1heCgyODBweCwgMWZyKSk7XG5cdGdhcDogMTZweDtcblx0bWFyZ2luLWJvdHRvbTogMjRweDtcbn1cblxuLm1jcC10b29sLWNhcmQge1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdHBhZGRpbmc6IDE2cHg7XG5cdGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudChcblx0XHQxMzVkZWcsXG5cdFx0dmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpIDAlLFxuXHRcdHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSkgMTAwJVxuXHQpO1xuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XG5cdGJvcmRlci1yYWRpdXM6IDEwcHg7XG5cdHRyYW5zaXRpb246IGFsbCAwLjNzIGN1YmljLWJlemllcigwLjQsIDAsIDAuMiwgMSk7XG5cdG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5tY3AtdG9vbC1jYXJkOjpiZWZvcmUge1xuXHRjb250ZW50OiBcIlwiO1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdHRvcDogMDtcblx0bGVmdDogMDtcblx0d2lkdGg6IDEwMCU7XG5cdGhlaWdodDogM3B4O1xuXHRiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoXG5cdFx0OTBkZWcsXG5cdFx0dmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KSAwJSxcblx0XHR2YXIoLS10ZXh0LWFjY2VudCkgMTAwJVxuXHQpO1xuXHR0cmFuc2Zvcm06IHNjYWxlWCgwKTtcblx0dHJhbnNmb3JtLW9yaWdpbjogbGVmdDtcblx0dHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuM3MgZWFzZTtcbn1cblxuLm1jcC10b29sLWNhcmQ6aG92ZXIge1xuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTRweCk7XG5cdGJveC1zaGFkb3c6IDAgOHB4IDI0cHggcmdiYSgwLCAwLCAwLCAwLjEyKTtcblx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xufVxuXG4ubWNwLXRvb2wtY2FyZDpob3Zlcjo6YmVmb3JlIHtcblx0dHJhbnNmb3JtOiBzY2FsZVgoMSk7XG59XG5cbi5tY3AtdG9vbC1oZWFkZXIge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRnYXA6IDhweDtcblx0bWFyZ2luLWJvdHRvbTogMTBweDtcbn1cblxuLm1jcC10b29sLWljb24ge1xuXHR3aWR0aDogMjBweDtcblx0aGVpZ2h0OiAyMHB4O1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0Y29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XG5cdG9wYWNpdHk6IDAuOTtcbn1cblxuLm1jcC10b29sLWljb24gc3ZnIHtcblx0d2lkdGg6IDE2cHg7XG5cdGhlaWdodDogMTZweDtcblx0c3Ryb2tlLXdpZHRoOiAyO1xufVxuXG4ubWNwLXRvb2wtbmFtZSB7XG5cdGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LW1vbm9zcGFjZSk7XG5cdGZvbnQtc2l6ZTogMC44NWVtO1xuXHRmb250LXdlaWdodDogNjAwO1xuXHRjb2xvcjogdmFyKC0tdGV4dC1hY2NlbnQpO1xuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJveCk7XG5cdHBhZGRpbmc6IDRweCA4cHg7XG5cdGJvcmRlci1yYWRpdXM6IDRweDtcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRsZXR0ZXItc3BhY2luZzogMC41cHg7XG59XG5cbi5tY3AtdG9vbC1kZXNjIHtcblx0Zm9udC1zaXplOiAwLjg1ZW07XG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcblx0bGluZS1oZWlnaHQ6IDEuNTtcblx0cGFkZGluZy1sZWZ0OiAyOHB4O1xufVxuXG4vKiBFeGFtcGxlIENvbnRhaW5lciAqL1xuLm1jcC1leGFtcGxlLWNvbnRhaW5lciB7XG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcblx0Ym9yZGVyLXJhZGl1czogMTJweDtcblx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0Ym94LXNoYWRvdzogMCA0cHggMTJweCByZ2JhKDAsIDAsIDAsIDAuMDgpO1xuXHRtYXJnaW4tdG9wOiAxNnB4O1xufVxuXG4vKiBFeGFtcGxlIFRhYnMgKi9cbi5tY3AtZXhhbXBsZS10YWJzIHtcblx0ZGlzcGxheTogZmxleDtcblx0Z2FwOiAwO1xuXHRiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoXG5cdFx0MTgwZGVnLFxuXHRcdHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KSAwJSxcblx0XHR2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJveCkgMTAwJVxuXHQpO1xuXHRib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xuXHRwYWRkaW5nOiAwO1xufVxuXG4ubWNwLWV4YW1wbGUtdGFiIHtcblx0ZmxleDogMTtcblx0cGFkZGluZzogMTRweCAyMHB4O1xuXHRiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xuXHRib3JkZXI6IG5vbmU7XG5cdGN1cnNvcjogcG9pbnRlcjtcblx0dHJhbnNpdGlvbjogYWxsIDAuM3MgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC4yLCAxKTtcblx0Zm9udC1zaXplOiAwLjllbTtcblx0Zm9udC13ZWlnaHQ6IDUwMDtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLm1jcC1leGFtcGxlLXRhYjo6YWZ0ZXIge1xuXHRjb250ZW50OiBcIlwiO1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdGJvdHRvbTogMDtcblx0bGVmdDogNTAlO1xuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSkgc2NhbGVYKDApO1xuXHR3aWR0aDogODAlO1xuXHRoZWlnaHQ6IDNweDtcblx0YmFja2dyb3VuZDogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcblx0dHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuM3MgZWFzZTtcblx0Ym9yZGVyLXJhZGl1czogM3B4IDNweCAwIDA7XG59XG5cbi5tY3AtZXhhbXBsZS10YWI6aG92ZXIge1xuXHRiYWNrZ3JvdW5kOiByZ2JhKHZhcigtLWludGVyYWN0aXZlLWFjY2VudC1yZ2IpLCAwLjA1KTtcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcbn1cblxuLm1jcC1leGFtcGxlLXRhYi5hY3RpdmUge1xuXHRiYWNrZ3JvdW5kOiByZ2JhKHZhcigtLWludGVyYWN0aXZlLWFjY2VudC1yZ2IpLCAwLjEpO1xuXHRjb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcblx0Zm9udC13ZWlnaHQ6IDYwMDtcbn1cblxuLm1jcC1leGFtcGxlLXRhYi5hY3RpdmU6OmFmdGVyIHtcblx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpIHNjYWxlWCgxKTtcbn1cblxuLyogRXhhbXBsZSBDb2RlICovXG4ubWNwLWV4YW1wbGUtY29kZS1jb250YWluZXIge1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdGJhY2tncm91bmQ6IHZhcigtLWNvZGUtYmFja2dyb3VuZCk7XG5cdGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XG59XG5cbi5tY3AtZXhhbXBsZS1ibG9jayB7XG5cdGRpc3BsYXk6IG5vbmU7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0YW5pbWF0aW9uOiBmYWRlSW4gMC4zcyBlYXNlO1xufVxuXG4ubWNwLWV4YW1wbGUtYmxvY2suYWN0aXZlIHtcblx0ZGlzcGxheTogYmxvY2s7XG59XG5cbkBrZXlmcmFtZXMgZmFkZUluIHtcblx0ZnJvbSB7XG5cdFx0b3BhY2l0eTogMDtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwcHgpO1xuXHR9XG5cdHRvIHtcblx0XHRvcGFjaXR5OiAxO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcblx0fVxufVxuXG4ubWNwLWV4YW1wbGUtY29kZSB7XG5cdG1hcmdpbjogMDtcblx0cGFkZGluZzogMjRweCA4MHB4IDI0cHggMjRweDtcblx0YmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KFxuXHRcdDEzNWRlZyxcblx0XHR2YXIoLS1jb2RlLWJhY2tncm91bmQpIDAlLFxuXHRcdHJnYmEodmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5LXJnYiksIDAuNSkgMTAwJVxuXHQpO1xuXHRmb250LXNpemU6IDAuODVlbTtcblx0bGluZS1oZWlnaHQ6IDEuNztcblx0b3ZlcmZsb3cteDogYXV0bztcblx0bWF4LWhlaWdodDogNTAwcHg7XG5cdGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LW1vbm9zcGFjZSk7XG5cdGJvcmRlcjogbm9uZTtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4ubWNwLWV4YW1wbGUtY29kZTo6YmVmb3JlIHtcblx0Y29udGVudDogXCJcIjtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHR0b3A6IDA7XG5cdGxlZnQ6IDA7XG5cdHJpZ2h0OiAwO1xuXHRoZWlnaHQ6IDFweDtcblx0YmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KFxuXHRcdDkwZGVnLFxuXHRcdHRyYW5zcGFyZW50LFxuXHRcdHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKSxcblx0XHR0cmFuc3BhcmVudFxuXHQpO1xufVxuXG4ubWNwLWV4YW1wbGUtY29kZSBjb2RlIHtcblx0Y29sb3I6IHZhcigtLWNvZGUtbm9ybWFsKTtcblx0Zm9udC1mYW1pbHk6IHZhcigtLWZvbnQtbW9ub3NwYWNlKTtcblx0d2hpdGUtc3BhY2U6IHByZTtcblx0ZGlzcGxheTogYmxvY2s7XG5cdHRleHQtc2hhZG93OiAwIDFweCAycHggcmdiYSgwLCAwLCAwLCAwLjA1KTtcbn1cblxuLm1jcC1leGFtcGxlLWNvcHktYnRuIHtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHR0b3A6IDIwcHg7XG5cdHJpZ2h0OiAyMHB4O1xuXHRwYWRkaW5nOiA4cHggMTZweDtcblx0YmFja2dyb3VuZDogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcblx0Y29sb3I6IHZhcigtLXRleHQtb24tYWNjZW50KTtcblx0Ym9yZGVyOiBub25lO1xuXHRib3JkZXItcmFkaXVzOiA2cHg7XG5cdGN1cnNvcjogcG9pbnRlcjtcblx0Zm9udC1zaXplOiAwLjg1ZW07XG5cdGZvbnQtd2VpZ2h0OiA2MDA7XG5cdHRyYW5zaXRpb246IGFsbCAwLjNzIGN1YmljLWJlemllcigwLjQsIDAsIDAuMiwgMSk7XG5cdHotaW5kZXg6IDEwO1xuXHRib3gtc2hhZG93OiAwIDJweCA4cHggcmdiYSh2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQtcmdiKSwgMC4zKTtcbn1cblxuLm1jcC1leGFtcGxlLWNvcHktYnRuOmhvdmVyIHtcblx0YmFja2dyb3VuZDogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50LWhvdmVyKTtcblx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0ycHgpO1xuXHRib3gtc2hhZG93OiAwIDRweCAxMnB4IHJnYmEodmFyKC0taW50ZXJhY3RpdmUtYWNjZW50LXJnYiksIDAuNCk7XG59XG5cbi5tY3AtZXhhbXBsZS1jb3B5LWJ0bjphY3RpdmUge1xuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG5cdGJveC1zaGFkb3c6IDAgMXB4IDRweCByZ2JhKHZhcigtLWludGVyYWN0aXZlLWFjY2VudC1yZ2IpLCAwLjMpO1xufVxuXG4ubWNwLWV4YW1wbGUtY29weS1idG4uY29waWVkIHtcblx0YW5pbWF0aW9uOiBjb3B5U3VjY2VzcyAwLjRzIGVhc2U7XG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItc3VjY2VzcykgIWltcG9ydGFudDtcblx0Ym94LXNoYWRvdzogMCAycHggOHB4IHJnYmEodmFyKC0taW50ZXJhY3RpdmUtc3VjY2Vzcy1yZ2IpLCAwLjMpO1xufVxuXG4vKiBBbmltYXRpb25zICovXG5Aa2V5ZnJhbWVzIGNvcHlTdWNjZXNzIHtcblx0MCUge1xuXHRcdHRyYW5zZm9ybTogc2NhbGUoMSk7XG5cdH1cblx0NTAlIHtcblx0XHR0cmFuc2Zvcm06IHNjYWxlKDEuMSk7XG5cdH1cblx0MTAwJSB7XG5cdFx0dHJhbnNmb3JtOiBzY2FsZSgxKTtcblx0fVxufVxuXG5Aa2V5ZnJhbWVzIHB1bHNlIHtcblx0MCUge1xuXHRcdG9wYWNpdHk6IDE7XG5cdH1cblx0NTAlIHtcblx0XHRvcGFjaXR5OiAwLjY7XG5cdH1cblx0MTAwJSB7XG5cdFx0b3BhY2l0eTogMTtcblx0fVxufVxuXG4vKiBTbW9vdGggdHJhbnNpdGlvbnMgZm9yIGFsbCBpbnRlcmFjdGl2ZSBlbGVtZW50cyAqL1xuLm1jcC1jbGllbnQtaGVhZGVyLFxuLm1jcC1leGFtcGxlLXRhYixcbi5tY3AtdG9vbC1jYXJkLFxuYnV0dG9uIHtcblx0dHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZTtcbn1cblxuLyogQ29kZSBzeW50YXggY29sb3JzIGZvciBiZXR0ZXIgcmVhZGFiaWxpdHkgKi9cbi5tY3AtY29uZmlnLWNvZGUgLmpzb24ta2V5IHtcblx0Y29sb3I6IHZhcigtLXRleHQtYWNjZW50KTtcbn1cblxuLm1jcC1jb25maWctY29kZSAuanNvbi1zdHJpbmcge1xuXHRjb2xvcjogdmFyKC0tdGV4dC1zdWNjZXNzKTtcbn1cblxuLm1jcC1jb25maWctY29kZSAuanNvbi1udW1iZXIge1xuXHRjb2xvcjogdmFyKC0tdGV4dC13YXJuaW5nKTtcbn1cblxuLm1jcC1jb25maWctY29kZSAuanNvbi1ib29sZWFuIHtcblx0Y29sb3I6IHZhcigtLXRleHQtZXJyb3IpO1xufVxuXG4vKiBSZXNwb25zaXZlIGFkanVzdG1lbnRzICovXG5AbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcblx0Lm1jcC10b29scy1ncmlkIHtcblx0XHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcblx0fVxuXG5cdC5tY3Atc3RhdHVzLWRldGFpbHMge1xuXHRcdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdFx0Z2FwOiA4cHg7XG5cdH1cbn1cblxuLm1jcC1leGFtcGxlLXN1YnRpdGxlIHtcblx0cGFkZGluZy1sZWZ0OiB2YXIoLS1zaXplLTQtNCk7XG59XG5cbi8qIEN1cnNvciBPbmUtQ2xpY2sgSW5zdGFsbCBTZWN0aW9uICovXG4ubWNwLWN1cnNvci1pbnN0YWxsLXNlY3Rpb24ge1xuXHRtYXJnaW4tYm90dG9tOiAyMHB4O1xufVxuXG4ubWNwLWN1cnNvci1pbnN0YWxsLWNvbnRhaW5lciB7XG5cdG1hcmdpbi10b3A6IDEycHg7XG59XG5cbi5tY3AtY3Vyc29yLWluc3RhbGwtZGVzYyB7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcblx0bWFyZ2luLWJvdHRvbTogMTJweDtcblx0Zm9udC1zaXplOiAxNHB4O1xufVxuXG4ubWNwLWN1cnNvci1pbnN0YWxsLWxpbmsge1xuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdG1hcmdpbi1ib3R0b206IDE2cHg7XG5cdHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjJzIGVhc2U7XG59XG5cbi5tY3AtY3Vyc29yLWluc3RhbGwtbGluazpob3ZlciB7XG5cdHRyYW5zZm9ybTogc2NhbGUoMS4wNSk7XG59XG5cbi5tY3AtY3Vyc29yLWFkZGl0aW9uYWwtYnV0dG9ucyB7XG5cdG1hcmdpbi10b3A6IDEycHg7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGdhcDogMTBweDtcbn1cblxuLm1jcC1jdXJzb3ItY29weS1kZWVwbGluay1idG4ge1xuXHRiYWNrZ3JvdW5kOiB2YXIoLS1pbnRlcmFjdGl2ZS1ub3JtYWwpO1xuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XG5cdHBhZGRpbmc6IDhweCAxNnB4O1xuXHRib3JkZXItcmFkaXVzOiA0cHg7XG5cdGZvbnQtc2l6ZTogMTRweDtcblx0Y3Vyc29yOiBwb2ludGVyO1xuXHR0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlO1xufVxuXG4ubWNwLWN1cnNvci1jb3B5LWRlZXBsaW5rLWJ0bjpob3ZlciB7XG5cdGJhY2tncm91bmQ6IHZhcigtLWludGVyYWN0aXZlLWhvdmVyKTtcbn1cblxuLm1jcC1jdXJzb3ItY29weS1kZWVwbGluay1idG4uY29waWVkIHtcblx0YmFja2dyb3VuZDogdmFyKC0taW50ZXJhY3RpdmUtc3VjY2Vzcyk7XG5cdGNvbG9yOiB3aGl0ZTtcbn1cblxuLm1jcC1jdXJzb3ItZGVidWctY29udGFpbmVyIHtcblx0bWFyZ2luLXRvcDogMjBweDtcbn1cblxuLm1jcC1jdXJzb3ItZGVidWctdG9nZ2xlIHtcblx0YmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xuXHRwYWRkaW5nOiA2cHggMTJweDtcblx0Ym9yZGVyLXJhZGl1czogNHB4O1xuXHRmb250LXNpemU6IDEycHg7XG5cdGN1cnNvcjogcG9pbnRlcjtcblx0dHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZTtcbn1cblxuLm1jcC1jdXJzb3ItZGVidWctdG9nZ2xlOmhvdmVyIHtcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3Zlcik7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XG59XG5cbi5tY3AtY3Vyc29yLWRlYnVnLWNvbnRlbnQge1xuXHRtYXJnaW4tdG9wOiAxMnB4O1xuXHRwYWRkaW5nOiAxMnB4O1xuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XG5cdGJvcmRlci1yYWRpdXM6IDRweDtcbn1cblxuLm1jcC1jdXJzb3ItZGVidWctbGFiZWwge1xuXHRmb250LXNpemU6IDEycHg7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcblx0bWFyZ2luLWJvdHRvbTogOHB4O1xuXHRtYXJnaW4tdG9wOiAxMnB4O1xufVxuXG4ubWNwLWN1cnNvci1kZWJ1Zy1sYWJlbDpmaXJzdC1jaGlsZCB7XG5cdG1hcmdpbi10b3A6IDA7XG59XG5cbi5tY3AtY3Vyc29yLWRlYnVnLWNvZGUge1xuXHRiYWNrZ3JvdW5kOiB2YXIoLS1jb2RlLWJhY2tncm91bmQpO1xuXHRwYWRkaW5nOiA4cHg7XG5cdGJvcmRlci1yYWRpdXM6IDRweDtcblx0Zm9udC1zaXplOiAxMnB4O1xuXHRvdmVyZmxvdy14OiBhdXRvO1xuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XG59XG5cbi5tY3AtY3Vyc29yLWRlYnVnLWNvZGUgY29kZSB7XG5cdGNvbG9yOiB2YXIoLS1jb2RlLW5vcm1hbCk7XG5cdHdvcmQtYnJlYWs6IGJyZWFrLWFsbDtcbn1cblxuLm1jcC1zZWN0aW9uLXNlcGFyYXRvciB7XG5cdG1hcmdpbjogMjRweCAwO1xuXHRib3JkZXI6IG5vbmU7XG5cdGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XG59XG4iLCAiLyogV29ya2Zsb3cgRGVjb3JhdG9yIFN0eWxlcyAqL1xyXG4uY20td29ya2Zsb3ctc3RhZ2UtaW5kaWNhdG9yIHtcclxuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblx0bWFyZ2luLWxlZnQ6IDRweDtcclxuXHRmb250LXNpemU6IDEycHg7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdG9wYWNpdHk6IDAuNztcclxuXHR0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMnMgZWFzZTtcclxuXHR1c2VyLXNlbGVjdDogbm9uZTtcclxuXHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHR2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG59XHJcblxyXG4uY20td29ya2Zsb3ctc3RhZ2UtaW5kaWNhdG9yIHNwYW4ge1xyXG5cdGRpc3BsYXk6IGlubGluZS1mbGV4O1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbn1cclxuXHJcbi5jbS13b3JrZmxvdy1zdGFnZS1pbmRpY2F0b3I6aG92ZXIge1xyXG5cdG9wYWNpdHk6IDE7XHJcbn1cclxuXHJcbi8qIERpZmZlcmVudCBjb2xvcnMgZm9yIGRpZmZlcmVudCBzdGFnZSB0eXBlcyAqL1xyXG4uY20td29ya2Zsb3ctc3RhZ2UtaW5kaWNhdG9yW2RhdGEtc3RhZ2UtdHlwZT1cImxpbmVhclwiXSB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtYWNjZW50KTtcclxufVxyXG5cclxuLmNtLXdvcmtmbG93LXN0YWdlLWluZGljYXRvcltkYXRhLXN0YWdlLXR5cGU9XCJjeWNsZVwiXSB7XHJcblx0Y29sb3I6IHZhcigtLXRhc2staW4tcHJvZ3Jlc3MtY29sb3IpO1xyXG59XHJcblxyXG4uY20td29ya2Zsb3ctc3RhZ2UtaW5kaWNhdG9yW2RhdGEtc3RhZ2UtdHlwZT1cInRlcm1pbmFsXCJdIHtcclxuXHRjb2xvcjogdmFyKC0tdGFzay1jb21wbGV0ZWQtY29sb3IpO1xyXG59XHJcblxyXG4vKiBEYXJrIHRoZW1lIGFkanVzdG1lbnRzICovXHJcbi50aGVtZS1kYXJrIC5jbS13b3JrZmxvdy1zdGFnZS1pbmRpY2F0b3JbZGF0YS1zdGFnZS10eXBlPVwibGluZWFyXCJdIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1hY2NlbnQpO1xyXG59XHJcblxyXG4udGhlbWUtZGFyayAuY20td29ya2Zsb3ctc3RhZ2UtaW5kaWNhdG9yW2RhdGEtc3RhZ2UtdHlwZT1cImN5Y2xlXCJdIHtcclxuXHRjb2xvcjogdmFyKC0tdGFzay1pbi1wcm9ncmVzcy1jb2xvcik7XHJcbn1cclxuXHJcbi50aGVtZS1kYXJrIC5jbS13b3JrZmxvdy1zdGFnZS1pbmRpY2F0b3JbZGF0YS1zdGFnZS10eXBlPVwidGVybWluYWxcIl0ge1xyXG5cdGNvbG9yOiB2YXIoLS10YXNrLWNvbXBsZXRlZC1jb2xvcik7XHJcbn1cclxuIiwgIi8qIFF1aWNrIENhcHR1cmUgRW5oYW5jZWQgU3R5bGVzIC0gd2l0aCBzaGFkY24gdGhlbWUgKi9cblxuOnJvb3Qge1xuXHQvKiBUYWIgY29tcG9uZW50IGNvbG9ycyAqL1xuXHQtLXRnLXRhYi1iYWNrZ3JvdW5kOiAwIDAlIDEwMCU7XG5cdC0tdGctdGFiLWZvcmVncm91bmQ6IDI0MCAxMCUgMy45JTtcblx0LS10Zy10YWItbXV0ZWQ6IDI0MCA0LjglIDk1LjklO1xuXHQtLXRnLXRhYi1tdXRlZC1mb3JlZ3JvdW5kOiAyNDAgMy44JSA0Ni4xJTtcblx0LS10Zy10YWItYm9yZGVyOiAyNDAgNS45JSA5MCU7XG5cblx0LyogUXVpY2sgQ2FwdHVyZSBIZWFkZXIgYmFja2dyb3VuZCAobGlnaHQpICovXG5cdC0tdGctcWMtaGVhZGVyLWJnOiAwIDAlIDEwMCU7XG59XG5cbi50aGVtZS1kYXJrIHtcblx0LS10Zy10YWItYmFja2dyb3VuZDogMjQwIDEwJSAzLjklO1xuXHQtLXRnLXRhYi1mb3JlZ3JvdW5kOiAwIDAlIDk4JTtcblx0LS10Zy10YWItbXV0ZWQ6IDI0MCAzLjclIDE1LjklO1xuXHQtLXRnLXRhYi1tdXRlZC1mb3JlZ3JvdW5kOiAyNDAgNSUgNjQuOSU7XG5cdC0tdGctdGFiLWJvcmRlcjogMjQwIDMuNyUgMTUuOSU7XG5cblx0LyogUXVpY2sgQ2FwdHVyZSBIZWFkZXIgYmFja2dyb3VuZCAoZGFyaykgKi9cblx0LS10Zy1xYy1oZWFkZXItYmc6IDI0MCA0JSAxMCU7XG59XG5cbi8qIFF1aWNrIENhcHR1cmUgSGVhZGVyIC0gc2hhZGNuIHN0eWxlLCB3aXRoIGN1c3RvbSBiYWNrZ3JvdW5kIGZvciBoZWFkZXIgKi9cbi5xdWljay1jYXB0dXJlLWhlYWRlciB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0cGFkZGluZzogMTJweCAxNnB4O1xuXHRib3JkZXItYm90dG9tOiAxcHggc29saWQgaHNsKHZhcigtLXRnLXRhYi1ib3JkZXIpKTtcblx0YmFja2dyb3VuZDogaHNsKHZhcigtLXRnLXFjLWhlYWRlci1iZykpO1xufVxuXG4udGctbWluaW1hbC1jYXB0dXJlLW1vZGFsIC5xdWljay1jYXB0dXJlLWhlYWRlciB7XG5cdHBhZGRpbmc6IDRweCA4cHg7XG59XG5cbi50Zy1taW5pbWFsLWNhcHR1cmUtbW9kYWwgLm1vZGVsLWhlYWRlciB7XG5cdG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi8qIFF1aWNrIENhcHR1cmUgVGFicyAtIHNoYWRjbiBzdHlsZSAqL1xuLnF1aWNrLWNhcHR1cmUtdGFicyB7XG5cdGRpc3BsYXk6IGlubGluZS1mbGV4O1xuXHRwYWRkaW5nOiA0cHg7XG5cdGJhY2tncm91bmQ6IGhzbCh2YXIoLS10Zy10YWItbXV0ZWQpKTtcblx0Ym9yZGVyLXJhZGl1czogNnB4O1xuXHRnYXA6IDJweDtcbn1cblxuLnF1aWNrLWNhcHR1cmUtdGFiIHtcblx0cGFkZGluZzogNnB4IDEycHg7XG5cdGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuXHRib3JkZXI6IG5vbmU7XG5cdGJvcmRlci1yYWRpdXM6IDRweDtcblx0Y3Vyc29yOiBwb2ludGVyO1xuXHR0cmFuc2l0aW9uOiBhbGwgMC4xNXMgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC4yLCAxKTtcblx0Y29sb3I6IGhzbCh2YXIoLS10Zy10YWItbXV0ZWQtZm9yZWdyb3VuZCkpO1xuXHRmb250LXNpemU6IDE0cHg7XG5cdGZvbnQtd2VpZ2h0OiA1MDA7XG5cdGRpc3BsYXk6IGlubGluZS1mbGV4O1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4udGctbWluaW1hbC1jYXB0dXJlLW1vZGFsIC5xdWljay1jYXB0dXJlLXRhYi10ZXh0IHtcblx0ZGlzcGxheTogbm9uZTtcbn1cblxuLnRnLW1pbmltYWwtY2FwdHVyZS1tb2RhbCAucXVpY2stY2FwdHVyZS10YWItaWNvbiB7XG5cdG1hcmdpbi1yaWdodDogMDtcbn1cblxuLnF1aWNrLWNhcHR1cmUtdGFiOmhvdmVyOm5vdCguYWN0aXZlKSB7XG5cdGNvbG9yOiBoc2wodmFyKC0tdGctdGFiLWZvcmVncm91bmQpKTtcbn1cblxuLnF1aWNrLWNhcHR1cmUtdGFiLmFjdGl2ZSB7XG5cdGJhY2tncm91bmQ6IGhzbCh2YXIoLS10Zy10YWItYmFja2dyb3VuZCkpO1xuXHRjb2xvcjogaHNsKHZhcigtLXRnLXRhYi1mb3JlZ3JvdW5kKSk7XG5cdGJveC1zaGFkb3c6XG5cdFx0MCAxcHggM3B4IDAgcmdiKDAgMCAwIC8gMC4xKSxcblx0XHQwIDFweCAycHggLTFweCByZ2IoMCAwIDAgLyAwLjEpO1xufVxuXG4ucXVpY2stY2FwdHVyZS10YWJzLmlzLWhpZGRlbiB7XG5cdGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qIFF1aWNrIENhcHR1cmUgVGFiIEJ1dHRvbiBJY29uIGFuZCBUZXh0IC0gc2hhZGNuIHN0eWxlICovXG4ucXVpY2stY2FwdHVyZS10YWItaWNvbiB7XG5cdG1hcmdpbi1yaWdodDogNnB4O1xuXHRkaXNwbGF5OiBpbmxpbmUtZmxleDtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0d2lkdGg6IDE2cHg7XG5cdGhlaWdodDogMTZweDtcbn1cblxuLnF1aWNrLWNhcHR1cmUtdGFiLWljb24gc3ZnIHtcblx0d2lkdGg6IDE0cHg7XG5cdGhlaWdodDogMTRweDtcbn1cblxuLnF1aWNrLWNhcHR1cmUtdGFiLXRleHQge1xuXHRkaXNwbGF5OiBpbmxpbmUtZmxleDtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0bGluZS1oZWlnaHQ6IDE7XG59XG5cbi8qIFF1aWNrIENhcHR1cmUgQ2xlYXIgQnV0dG9uIC0gc2hhZGNuIHN0eWxlICovXG4ucXVpY2stY2FwdHVyZS1jbGVhciB7XG5cdHBhZGRpbmc6IDZweCAxMnB4O1xuXHRiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcblx0Ym9yZGVyOiAxcHggc29saWQgaHNsKHZhcigtLXRnLXRhYi1ib3JkZXIpKTtcblx0Ym9yZGVyLXJhZGl1czogNnB4O1xuXHRjdXJzb3I6IHBvaW50ZXI7XG5cdHRyYW5zaXRpb246IGFsbCAwLjE1cyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpO1xuXHRjb2xvcjogaHNsKHZhcigtLXRnLXRhYi1tdXRlZC1mb3JlZ3JvdW5kKSk7XG5cdGZvbnQtc2l6ZTogMTRweDtcblx0Zm9udC13ZWlnaHQ6IDUwMDtcbn1cblxuLnF1aWNrLWNhcHR1cmUtY2xlYXI6aG92ZXIge1xuXHQvKmJhY2tncm91bmQ6IGhzbCh2YXIoLS10Zy10YWItbXV0ZWQpKTsqL1xuXHQvKmNvbG9yOiBoc2wodmFyKC0tdGctdGFiLWZvcmVncm91bmQpKTsqL1xuXHQvKmJvcmRlci1jb2xvcjogaHNsKHZhcigtLXRnLXRhYi1tdXRlZC1mb3JlZ3JvdW5kKSk7Ki9cbn1cblxuLyogUXVpY2sgQ2FwdHVyZSBDb250ZW50ICovXG4ucXVpY2stY2FwdHVyZS1jb250ZW50IHtcblx0ZmxleDogMTtcblx0b3ZlcmZsb3cteTogYXV0bztcblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTMpO1xufVxuXG4vKiBRdWljayBDYXB0dXJlIEZvb3RlciAqL1xuLnF1aWNrLWNhcHR1cmUtZm9vdGVyIHtcblx0ZGlzcGxheTogZmxleDtcblx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtMik7XG5cdGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XG59XG5cbi5xdWljay1jYXB0dXJlLWZvb3Rlci1sZWZ0LFxuLnF1aWNrLWNhcHR1cmUtZm9vdGVyLXJpZ2h0IHtcblx0ZGlzcGxheTogZmxleDtcblx0Z2FwOiB2YXIoLS1zaXplLTItMik7XG59XG5cbi5xdWljay1jYXB0dXJlLWNvbnRpbnVlIHtcblx0cGFkZGluZzogdmFyKC0tc2l6ZS0yLTIpIHZhcigtLXNpemUtNC0zKTtcblx0YmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zKTtcblx0Y3Vyc29yOiBwb2ludGVyO1xuXHR0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlO1xuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XG59XG5cbi8qIEZpbGUgTmFtZSBJbnB1dCBDb21wb25lbnQgKi9cbi5maWxlLW5hbWUtaW5wdXQtY29udGFpbmVyIHtcblx0ZGlzcGxheTogZmxleDtcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0Z2FwOiB2YXIoLS1zaXplLTItMSk7XG5cdG1hcmdpbi1ib3R0b206IHZhcigtLXNpemUtNC0zKTtcbn1cblxuLmZpbGUtbmFtZS1sYWJlbCB7XG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbCk7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcblx0Zm9udC13ZWlnaHQ6IDUwMDtcbn1cblxuLmZpbGUtbmFtZS1pbnB1dCB7XG5cdHdpZHRoOiAxMDAlO1xuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTItMik7XG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xufVxuXG4uZmlsZS1uYW1lLWlucHV0OmZvY3VzIHtcblx0b3V0bGluZTogbm9uZTtcblx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xuXHRib3gtc2hhZG93OiAwIDAgMCAycHggdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50LWhvdmVyKTtcbn1cblxuLmZpbGUtbmFtZS1pbnB1dC13cmFwcGVyIHtcblx0ZGlzcGxheTogZmxleDtcblx0Z2FwOiB2YXIoLS1zaXplLTItMik7XG59XG5cbi5maWxlLW5hbWUtaW5wdXQtd3JhcHBlciBpbnB1dC5maWxlLW5hbWUtaW5wdXQge1xuXHRmbGV4OiAxO1xufVxuXG4uZmlsZS1uYW1lLXRlbXBsYXRlLWNvbnRhaW5lciB7XG5cdG1heC13aWR0aDogdmFyKC0tc2l6ZS00LTE4KTtcbn1cblxuLmZpbGUtbmFtZS10ZW1wbGF0ZXMge1xuXHRtYXJnaW4tdG9wOiB2YXIoLS1zaXplLTQtMik7XG59XG5cbi50ZW1wbGF0ZXMtbGFiZWwge1xuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGwpO1xuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XG5cdG1hcmdpbi1ib3R0b206IHZhcigtLXNpemUtMi0xKTtcbn1cblxuLnRlbXBsYXRlLWJ1dHRvbnMge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRmbGV4LXdyYXA6IHdyYXA7XG5cdGdhcDogdmFyKC0tc2l6ZS0yLTEpO1xufVxuXG4udGVtcGxhdGUtYnV0dG9uIHtcblx0cGFkZGluZzogdmFyKC0tc2l6ZS0yLTEpIHZhcigtLXNpemUtMi0zKTtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zKTtcblx0Y3Vyc29yOiBwb2ludGVyO1xuXHR0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlO1xuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGxlcik7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcbn1cblxuLnRlbXBsYXRlLWJ1dHRvbjpob3ZlciB7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpO1xuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xuXHRib3JkZXItY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XG59XG5cbi8qIE1vZGUtc3BlY2lmaWMgYWRqdXN0bWVudHMgKi9cbi5xdWljay1jYXB0dXJlLW1vZGFsLnF1aWNrLWNhcHR1cmUtY2hlY2tib3gge1xuXHR3aWR0aDogODAwcHg7XG5cdG1heC13aWR0aDogOTB2dztcblx0bWF4LWhlaWdodDogODB2aDtcblx0bWluLWhlaWdodDogZml0LWNvbnRlbnQ7XG59XG5cbi5xdWljay1jYXB0dXJlLW1vZGFsLnF1aWNrLWNhcHR1cmUtZmlsZSB7XG5cdHdpZHRoOiA4MDBweDtcblx0bWF4LXdpZHRoOiA5MHZ3O1xuXHRoZWlnaHQ6IDcwMHB4O1xuXHRtYXgtaGVpZ2h0OiA4MHZoO1xuXHRtaW4taGVpZ2h0OiBmaXQtY29udGVudDtcbn1cblxuLnF1aWNrLWNhcHR1cmUtbW9kYWwudGctbWluaW1hbC1jYXB0dXJlLW1vZGFsIHtcblx0d2lkdGg6IDYwMHB4O1xuXHRtYXgtd2lkdGg6IDkwdnc7XG5cdGhlaWdodDogMzAwcHg7XG5cdG1heC1oZWlnaHQ6IDgwdmg7XG5cdG1pbi1oZWlnaHQ6IGZpdC1jb250ZW50O1xufVxuXG4vKiBRdWljayBDYXB0dXJlIFBhbmVsICovXG4ucXVpY2stY2FwdHVyZS1wYW5lbCB7XG5cdHBhZGRpbmc6IHZhcigtLXNpemUtNC0yKTtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcblx0Ym9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcblx0ZGlzcGxheTogZmxleDtcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0Z2FwOiB2YXIoLS1zaXplLTQtMik7XG59XG5cbi8qIFF1aWNrIENhcHR1cmUgQWN0aW9ucyAqL1xuLnF1aWNrLWNhcHR1cmUtYWN0aW9ucyB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGdhcDogdmFyKC0tc2l6ZS0yLTEpO1xuXHRtYXJnaW4tbGVmdDogYXV0bztcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cblxuLnF1aWNrLWNhcHR1cmUtYWN0aW9ucyAucXVpY2stYWN0aW9uLWJ1dHRvbiB7XG5cdGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuXHRib3JkZXI6IG5vbmU7XG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zKTtcblx0cGFkZGluZzogdmFyKC0tc2l6ZS0yLTEpO1xuXHRjdXJzb3I6IHBvaW50ZXI7XG5cdHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2U7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcblx0ZGlzcGxheTogZmxleDtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG5cbi5xdWljay1jYXB0dXJlLWFjdGlvbnMgLnF1aWNrLWFjdGlvbi1idXR0b246aG92ZXIge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyKTtcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcbn1cblxuLnF1aWNrLWNhcHR1cmUtYWN0aW9ucyAucXVpY2stYWN0aW9uLWJ1dHRvbi5hY3RpdmUge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xuXHRjb2xvcjogdmFyKC0tdGV4dC1vbi1hY2NlbnQpO1xufVxuXG4vKiBNaW5pbWFsIFF1aWNrIENhcHR1cmUgTW9kYWwgKi9cbi5xdWljay1jYXB0dXJlLW1vZGFsLm1pbmltYWwge1xuXHRtYXgtd2lkdGg6IDYwMHB4O1xuXHRtaW4td2lkdGg6IDUwMHB4O1xuXHRtYXgtaGVpZ2h0OiAzMDBweDtcbn1cblxuLyogTWluaW1hbCBRdWljayBDYXB0dXJlIFRhcmdldCBEaXNwbGF5ICovXG4ucXVpY2stY2FwdHVyZS1taW5pbWFsLXRhcmdldC1jb250YWluZXIge1xuXHRib3JkZXItcmFkaXVzOiA2cHg7XG5cdG1hcmdpbi1ib3R0b206IDEycHg7XG59XG5cbi5xdWljay1jYXB0dXJlLW1pbmltYWwtdGFyZ2V0IHtcblx0ZGlzcGxheTogZmxleDtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0Z2FwOiA4cHg7XG5cdGZvbnQtc2l6ZTogMTRweDtcbn1cblxuLnF1aWNrLWNhcHR1cmUtdGFyZ2V0LWxhYmVsIHtcblx0Y29sb3I6IGhzbCh2YXIoLS10Zy10YWItbXV0ZWQtZm9yZWdyb3VuZCkpO1xuXHRmb250LXdlaWdodDogNTAwO1xufVxuXG4ucXVpY2stY2FwdHVyZS10YXJnZXQtdmFsdWUge1xuXHRjb2xvcjogaHNsKHZhcigtLXRnLXRhYi1mb3JlZ3JvdW5kKSk7XG5cdGZsZXg6IDE7XG59XG5cbi5xdWljay1jYXB0dXJlLW1pbmltYWwtZmlsZS1pbnB1dCB7XG5cdGZsZXg6IDE7XG5cdHBhZGRpbmc6IDRweCA4cHg7XG5cdGJhY2tncm91bmQ6IGhzbCh2YXIoLS10Zy10YWItYmFja2dyb3VuZCkpO1xuXHRib3JkZXI6IDFweCBzb2xpZCBoc2wodmFyKC0tdGctdGFiLWJvcmRlcikpO1xuXHRib3JkZXItcmFkaXVzOiA0cHg7XG5cdGZvbnQtc2l6ZTogMTRweDtcblx0Y29sb3I6IGhzbCh2YXIoLS10Zy10YWItZm9yZWdyb3VuZCkpO1xufVxuXG4ucXVpY2stY2FwdHVyZS1taW5pbWFsLWZpbGUtaW5wdXQ6Zm9jdXMge1xuXHRvdXRsaW5lOiBub25lO1xuXHRib3JkZXItY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XG5cdGJveC1zaGFkb3c6IDAgMCAwIDJweCB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQtaG92ZXIpO1xufVxuXG4vKiBSZW1vdmVkIG1pbmltYWwgbW9kZSBzdHlsZXMgYXMgbWluaW1hbCBVSSBtb2RlIG5vIGxvbmdlciBleGlzdHMgKi9cblxuLnF1aWNrLWFjdGlvbnMtbGVmdCB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGdhcDogdmFyKC0tc2l6ZS0yLTEpO1xufVxuXG4ucXVpY2stYWN0aW9ucy1yaWdodCB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGdhcDogdmFyKC0tc2l6ZS0yLTEpO1xufVxuXG4ucXVpY2stYWN0aW9uLWJ1dHRvbi5hY3RpdmUge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xuXHRjb2xvcjogdmFyKC0tdGV4dC1vbi1hY2NlbnQpO1xuXHRib3JkZXItY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XG59XG5cbi5xdWljay1hY3Rpb24tc2F2ZSB7XG5cdHBhZGRpbmc6IHZhcigtLXNpemUtMi0xKSB2YXIoLS1zaXplLTQtMik7XG5cdG1pbi13aWR0aDogODBweDtcblx0aGVpZ2h0OiAzMnB4O1xuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XG59XG5cbi5xdWljay1jYXB0dXJlLXRhZy1pbnB1dCB7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0Ym90dG9tOiA2MHB4O1xuXHRsZWZ0OiA1MCU7XG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcblx0d2lkdGg6IDMwMHB4O1xuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTItMSk7XG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdGV4dC1zaXplKTtcblx0ei1pbmRleDogMTAwMDtcbn1cblxuLyogTWluaW1hbCBRdWljayBDYXB0dXJlIFN1Z2dlc3QgKi9cbi5taW5pbWFsLXF1aWNrLWNhcHR1cmUtc3VnZ2VzdGlvbiB7XG5cdHBhZGRpbmc6IHZhcigtLXNpemUtMi0xKSB2YXIoLS1zaXplLTQtMik7XG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zKTtcblx0Y3Vyc29yOiBwb2ludGVyO1xuXHR0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMnMgZWFzZTtcblx0bWluLWhlaWdodDogNDBweDtcblx0ZGlzcGxheTogZmxleDtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cblxuLm1pbmltYWwtcXVpY2stY2FwdHVyZS1zdWdnZXN0aW9uOmhvdmVyIHtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3Zlcik7XG59XG5cbi5taW5pbWFsLXF1aWNrLWNhcHR1cmUtc3VnZ2VzdGlvbi5pcy1zZWxlY3RlZCB7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XG59XG5cbi5taW5pbWFsLXF1aWNrLWNhcHR1cmUtc3VnZ2VzdGlvbi5pcy1zZWxlY3RlZCAuc3VnZ2VzdGlvbi1sYWJlbCB7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XG59XG5cbi5taW5pbWFsLXF1aWNrLWNhcHR1cmUtc3VnZ2VzdGlvbi5pcy1zZWxlY3RlZCAuc3VnZ2VzdGlvbi1kZXNjcmlwdGlvbiB7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XG5cdG9wYWNpdHk6IDAuODtcbn1cblxuLnN1Z2dlc3Rpb24taWNvbiB7XG5cdGZvbnQtc2l6ZTogMTZweDtcblx0bWluLXdpZHRoOiAyMHB4O1xuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5zdWdnZXN0aW9uLWNvbnRlbnQge1xuXHRmbGV4OiAxO1xufVxuXG4uc3VnZ2VzdGlvbi1sYWJlbCB7XG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC10ZXh0LXNpemUpO1xuXHRmb250LXdlaWdodDogNTAwO1xuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xufVxuXG4uc3VnZ2VzdGlvbi1kZXNjcmlwdGlvbiB7XG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbCk7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcblx0bWFyZ2luLXRvcDogMnB4O1xufVxuXG4ucXVpY2stY2FwdHVyZS1oZWFkZXItY29udGFpbmVyIHtcblx0ZGlzcGxheTogZmxleDtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0bWFyZ2luLWJvdHRvbTogdmFyKC0tc2l6ZS00LTIpO1xuXHRnYXA6IHZhcigtLXNpemUtNC0yKTtcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLW1lZGl1bSk7XG5cdGZvbnQtd2VpZ2h0OiBib2xkO1xuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTItMSkgdmFyKC0tc2l6ZS00LTIpO1xuXHRmbGV4LXdyYXA6IG5vd3JhcDtcbn1cblxuLnF1aWNrLWNhcHR1cmUtdGl0bGUge1xuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xuXHR3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG4ucXVpY2stY2FwdHVyZS10YXJnZXQge1xuXHRmbGV4OiAxO1xuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LWFjY2VudCk7XG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC10ZXh0LXNpemUpO1xuXHRmb250LXdlaWdodDogbm9ybWFsO1xuXHRtaW4td2lkdGg6IDEwMHB4O1xuXHRtYXgtd2lkdGg6IDUwMHB4O1xuXHR3aGl0ZS1zcGFjZTogbm93cmFwO1xuXHRvdmVyZmxvdzogaGlkZGVuO1xuXHR0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcblx0cGFkZGluZzogMnB4IDRweDtcblx0dHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjJzIGVhc2U7XG59XG5cbi5xdWljay1jYXB0dXJlLXRhcmdldDpob3ZlciB7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpO1xufVxuXG4ucXVpY2stY2FwdHVyZS10YXJnZXQ6Zm9jdXMge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyKTtcblx0b3V0bGluZTogMnB4IHNvbGlkIHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XG5cdG91dGxpbmUtb2Zmc2V0OiAtMXB4O1xuXHRvdmVyZmxvdzogdmlzaWJsZTtcblx0dGV4dC1vdmVyZmxvdzogaW5pdGlhbDtcbn1cblxuLnF1aWNrLWNhcHR1cmUtaGludCB7XG5cdGZvbnQtc2l6ZTogMTJweDtcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xuXHRtYXJnaW4tYm90dG9tOiA4cHg7XG5cdG1hcmdpbi10b3A6IC00cHg7XG5cdHRleHQtYWxpZ246IHJpZ2h0O1xufVxuXG4ucXVpY2stY2FwdHVyZS1lZGl0b3Ige1xuXHRtaW4taGVpZ2h0OiAyMDBweDtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcbn1cblxuLnF1aWNrLWNhcHR1cmUtZmlsZS1zdWdnZXN0IHtcblx0bWF4LXdpZHRoOiA1MDBweDtcbn1cblxuLnF1aWNrLWNhcHR1cmUtYnV0dG9ucyB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG5cdGdhcDogOHB4O1xufVxuXG4ucXVpY2stY2FwdHVyZS1zdWJtaXQsXG4ucXVpY2stY2FwdHVyZS1jYW5jZWwge1xuXHRwYWRkaW5nOiA2cHggMTJweDtcblx0Ym9yZGVyLXJhZGl1czogNHB4O1xuXHRjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi5xdWljay1jYXB0dXJlLXN1Ym1pdCB7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XG59XG5cbi5xdWljay1jYXB0dXJlLWNhbmNlbCB7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcbn1cblxuLnF1aWNrLWNhcHR1cmUtbW9kYWwgLm1vZGFsLXRpdGxlOmhhcyguaXMtaGlkZGVuKSB7XG5cdGRpc3BsYXk6IG5vbmU7XG59XG5cbi5xdWljay1jYXB0dXJlLW1vZGFsIC5tb2RhbC10aXRsZSB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdGZsZXgtZGlyZWN0aW9uOiByb3c7XG5cdGdhcDogMTBweDtcblxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktbWVkaXVtKTtcblx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbi5xdWljay1jYXB0dXJlLW1vZGFsLWVkaXRvciB7XG5cdG1pbi1oZWlnaHQ6IDE1MHB4O1xuXHRtYXJnaW4tYm90dG9tOiAyMHB4O1xufVxuXG4ucXVpY2stY2FwdHVyZS1tb2RhbC1idXR0b25zIHtcblx0ZGlzcGxheTogZmxleDtcblx0anVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcblx0Z2FwOiAxMHB4O1xufVxuXG4vKiBGdWxsLWZlYXR1cmVkIG1vZGFsIHN0eWxlcyAqL1xuLnF1aWNrLWNhcHR1cmUtbW9kYWwuZnVsbCB7XG5cdHdpZHRoOiA4MHZ3O1xuXHRtYXgtd2lkdGg6IDkwMHB4O1xufVxuXG4ucXVpY2stY2FwdHVyZS1sYXlvdXQge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRoZWlnaHQ6IDEwMCU7XG5cdGdhcDogMTZweDtcblx0bWFyZ2luLWJvdHRvbTogMTZweDtcbn1cblxuLnF1aWNrLWNhcHR1cmUtY29uZmlnLXBhbmVsIHtcblx0ZmxleDogMTtcblx0Ym9yZGVyLXJpZ2h0OiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xuXHRwYWRkaW5nLXJpZ2h0OiAxNnB4O1xuXHRvdmVyZmxvdy15OiBhdXRvO1xuXHRtYXgtd2lkdGg6IDQwJTtcbn1cblxuLnF1aWNrLWNhcHR1cmUtZWRpdG9yLXBhbmVsIHtcblx0ZmxleDogMS41O1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xufVxuXG4ucXVpY2stY2FwdHVyZS1zZWN0aW9uLXRpdGxlIHtcblx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG5cdG1hcmdpbi1ib3R0b206IDhweDtcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLW1lZGl1bSk7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XG59XG5cbi5xdWljay1jYXB0dXJlLXRhcmdldC1jb250YWluZXIge1xuXHRtYXJnaW4tYm90dG9tOiAxNnB4O1xufVxuXG4ucXVpY2stY2FwdHVyZS1tb2RhbC5mdWxsIC5xdWljay1jYXB0dXJlLW1vZGFsLWVkaXRvciB7XG5cdG1pbi1oZWlnaHQ6IDIwMHB4O1xuXHRmbGV4OiAxO1xuXHRvdmVyZmxvdy15OiBhdXRvO1xuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zKTtcblx0cGFkZGluZzogOHB4O1xuXHRtYXJnaW4tdG9wOiA4cHg7XG59XG5cbi8qIE1vYmlsZSBvcHRpbWl6YXRpb24gKi9cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xuXHQucXVpY2stY2FwdHVyZS1tb2RhbC5mdWxsIHtcblx0XHR3aWR0aDogOTV2dztcblx0fVxuXG5cdC5xdWljay1jYXB0dXJlLWxheW91dCB7XG5cdFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0fVxuXG5cdC5xdWljay1jYXB0dXJlLWNvbmZpZy1wYW5lbCB7XG5cdFx0bWF4LXdpZHRoOiAxMDAlO1xuXHRcdGJvcmRlci1yaWdodDogbm9uZTtcblx0XHRib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xuXHRcdHBhZGRpbmctcmlnaHQ6IDA7XG5cdFx0cGFkZGluZy1ib3R0b206IDE2cHg7XG5cdFx0bWFyZ2luLWJvdHRvbTogMTZweDtcblx0XHRtYXgtaGVpZ2h0OiA0MCU7XG5cdH1cbn1cblxuLnF1aWNrLWNhcHR1cmUtY29uZmlnLXBhbmVsIC5kZXRhaWxzLXN0YXR1cy1zZWxlY3RvciB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGZsZXgtZGlyZWN0aW9uOiByb3c7XG5cdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcblxuXHRtYXJnaW4tYm90dG9tOiB2YXIoLS1zaXplLTQtMik7XG5cdG1hcmdpbi10b3A6IHZhcigtLXNpemUtNC0yKTtcbn1cblxuLnF1aWNrLWNhcHR1cmUtY29uZmlnLXBhbmVsIC5xdWljay1jYXB0dXJlLXN0YXR1cy1zZWxlY3RvciB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGZsZXgtZGlyZWN0aW9uOiByb3c7XG5cdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcblxuXHRnYXA6IHZhcigtLXNpemUtNC0zKTtcbn1cblxuLnF1aWNrLWNhcHR1cmUtbW9kYWwgLnNldHRpbmctaXRlbS1jb250cm9sIGlucHV0W3R5cGU9XCJkYXRldGltZS1sb2NhbFwiXSB7XG5cdHdpZHRoOiAxMHJlbTtcbn1cbiIsICIvKiBUaW1lciBTdGF0aXN0aWNzIFBhbmVsIFN0eWxlcyAqL1xuXG4udGltZXItc3RhdGlzdGljcy1wYW5lbCB7XG5cdC0tdGltZXItY2FyZC1iZzogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xuXHQtLXRpbWVyLXJ1bm5pbmctY29sb3I6IHZhcigtLWNvbG9yLWdyZWVuKTtcblx0LS10aW1lci1wYXVzZWQtY29sb3I6IHZhcigtLWNvbG9yLW9yYW5nZSk7XG5cdC0tdGltZXItc3RvcHBlZC1jb2xvcjogdmFyKC0tY29sb3ItcmVkKTtcblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTQpO1xuXHRvdmVyZmxvdy15OiBhdXRvO1xuXHRoZWlnaHQ6IDEwMCU7XG59XG5cbi50aW1lci1zdGF0cy1oZWFkZXIge1xuXHRtYXJnaW4tYm90dG9tOiB2YXIoLS1zaXplLTQtNCk7XG59XG5cbi50aW1lci1zdGF0cy10aXRsZSB7XG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1sYXJnZSk7XG5cdGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXNlbWlib2xkKTtcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcblx0bWFyZ2luOiAwO1xufVxuXG4vKiBTdW1tYXJ5IENhcmRzICovXG4udGltZXItc3RhdHMtc3VtbWFyeSB7XG5cdG1hcmdpbi1ib3R0b206IHZhcigtLXNpemUtNC02KTtcbn1cblxuLnRpbWVyLXN0YXRzLWNhcmRzIHtcblx0ZGlzcGxheTogZ3JpZDtcblx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoYXV0by1maXQsIG1pbm1heCgxMjBweCwgMWZyKSk7XG5cdGdhcDogdmFyKC0tc2l6ZS00LTMpO1xufVxuXG4udGltZXItc3RhdHMtY2FyZCB7XG5cdGJhY2tncm91bmQ6IHZhcigtLXRpbWVyLWNhcmQtYmcpO1xuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtbSk7XG5cdHBhZGRpbmc6IHZhcigtLXNpemUtNC00KTtcblx0ZGlzcGxheTogZmxleDtcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHR0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4xNXMgZWFzZSwgYm94LXNoYWRvdyAwLjE1cyBlYXNlO1xufVxuXG4udGltZXItc3RhdHMtY2FyZDpob3ZlciB7XG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMnB4KTtcblx0Ym94LXNoYWRvdzogMCA0cHggMTJweCByZ2JhKDAsIDAsIDAsIDAuMSk7XG59XG5cbi50aW1lci1zdGF0cy1jYXJkLWljb24ge1xuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XG5cdG1hcmdpbi1ib3R0b206IHZhcigtLXNpemUtNC0yKTtcbn1cblxuLnRpbWVyLXN0YXRzLWNhcmQucnVubmluZyAudGltZXItc3RhdHMtY2FyZC1pY29uIHtcblx0Y29sb3I6IHZhcigtLXRpbWVyLXJ1bm5pbmctY29sb3IpO1xufVxuXG4udGltZXItc3RhdHMtY2FyZC5wYXVzZWQgLnRpbWVyLXN0YXRzLWNhcmQtaWNvbiB7XG5cdGNvbG9yOiB2YXIoLS10aW1lci1wYXVzZWQtY29sb3IpO1xufVxuXG4udGltZXItc3RhdHMtY2FyZC12YWx1ZSB7XG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1sYXJnZSk7XG5cdGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXNlbWlib2xkKTtcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcblx0bWFyZ2luLWJvdHRvbTogdmFyKC0tc2l6ZS00LTEpO1xufVxuXG4udGltZXItc3RhdHMtY2FyZC1sYWJlbCB7XG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbGVyKTtcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xufVxuXG4vKiBTZWN0aW9ucyAqL1xuLnRpbWVyLXN0YXRzLXNlY3Rpb24ge1xuXHRtYXJnaW4tYm90dG9tOiB2YXIoLS1zaXplLTQtNik7XG59XG5cbi50aW1lci1zdGF0cy1zZWN0aW9uIGgzIHtcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLW1lZGl1bSk7XG5cdGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXNlbWlib2xkKTtcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcblx0bWFyZ2luOiAwIDAgdmFyKC0tc2l6ZS00LTMpIDA7XG5cdHBhZGRpbmctYm90dG9tOiB2YXIoLS1zaXplLTQtMik7XG5cdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XG59XG5cbi50aW1lci1zdGF0cy1lbXB0eSB7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcblx0Zm9udC1zdHlsZTogaXRhbGljO1xuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtNCk7XG5cdHRleHQtYWxpZ246IGNlbnRlcjtcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtbSk7XG59XG5cbi8qIFRpbWVyIEdyb3VwcyAqL1xuLnRpbWVyLWdyb3VwIHtcblx0bWFyZ2luLWJvdHRvbTogdmFyKC0tc2l6ZS00LTQpO1xufVxuXG4udGltZXItZ3JvdXAtdGl0bGUge1xuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGwpO1xuXHRmb250LXdlaWdodDogdmFyKC0tZm9udC1tZWRpdW0pO1xuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XG5cdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cdGxldHRlci1zcGFjaW5nOiAwLjA1ZW07XG5cdG1hcmdpbi1ib3R0b206IHZhcigtLXNpemUtNC0yKTtcbn1cblxuLnRpbWVyLWdyb3VwLXJ1bm5pbmcgLnRpbWVyLWdyb3VwLXRpdGxlIHtcblx0Y29sb3I6IHZhcigtLXRpbWVyLXJ1bm5pbmctY29sb3IpO1xufVxuXG4udGltZXItZ3JvdXAtcGF1c2VkIC50aW1lci1ncm91cC10aXRsZSB7XG5cdGNvbG9yOiB2YXIoLS10aW1lci1wYXVzZWQtY29sb3IpO1xufVxuXG4vKiBUaW1lciBJdGVtcyAqL1xuLnRpbWVyLWdyb3VwLWxpc3Qge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRnYXA6IHZhcigtLXNpemUtNC0yKTtcbn1cblxuLnRpbWVyLWl0ZW0ge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRnYXA6IHZhcigtLXNpemUtNC0zKTtcblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTMpO1xuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1tKTtcblx0dHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjE1cyBlYXNlO1xufVxuXG4udGltZXItaXRlbTpob3ZlciB7XG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpO1xufVxuXG4udGltZXItaXRlbS1pbmZvIHtcblx0ZmxleDogMTtcblx0bWluLXdpZHRoOiAwO1xufVxuXG4udGltZXItaXRlbS1uYW1lIHtcblx0Zm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtbWVkaXVtKTtcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcblx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcblx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0dGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG59XG5cbi50aW1lci1pdGVtLXBhdGgge1xuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGxlcik7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcblx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcblx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0dGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG59XG5cbi50aW1lci1pdGVtLWR1cmF0aW9uIHtcblx0Zm9udC1mYW1pbHk6IHZhcigtLWZvbnQtbW9ub3NwYWNlKTtcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLW1lZGl1bSk7XG5cdGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXNlbWlib2xkKTtcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcblx0bWluLXdpZHRoOiA4MHB4O1xuXHR0ZXh0LWFsaWduOiByaWdodDtcbn1cblxuLnRpbWVyLWl0ZW0tc3RhdHVzIHtcblx0ZGlzcGxheTogZmxleDtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdHdpZHRoOiAyNHB4O1xuXHRoZWlnaHQ6IDI0cHg7XG59XG5cbi50aW1lci1zdGF0dXMtcnVubmluZyB7XG5cdGNvbG9yOiB2YXIoLS10aW1lci1ydW5uaW5nLWNvbG9yKTtcbn1cblxuLnRpbWVyLXN0YXR1cy1wYXVzZWQge1xuXHRjb2xvcjogdmFyKC0tdGltZXItcGF1c2VkLWNvbG9yKTtcbn1cblxuLyogVGltZXIgQWN0aW9ucyAqL1xuLnRpbWVyLWl0ZW0tYWN0aW9ucyB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGdhcDogdmFyKC0tc2l6ZS00LTEpO1xufVxuXG5idXR0b24udGltZXItYWN0aW9uLWJ0biB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXHR3aWR0aDogMjhweDtcblx0aGVpZ2h0OiAyOHB4O1xuXHRwYWRkaW5nOiAwO1xuXHRiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XG5cdGN1cnNvcjogcG9pbnRlcjtcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xuXHR0cmFuc2l0aW9uOiBhbGwgMC4xNXMgZWFzZTtcblxuXHRib3gtc2hhZG93OiB1bnNldDtcbn1cblxuYnV0dG9uLnRpbWVyLWFjdGlvbi1idG46aG92ZXIge1xuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyKTtcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcblx0Ym9yZGVyLWNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcbn1cblxuLnRpbWVyLWFjdGlvbi1zdG9wOmhvdmVyIHtcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1lcnJvcik7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XG5cdGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbi8qIFRhc2sgVGltZXIgTGlzdCAqL1xuLnRpbWVyLXN0YXRzLXRhc2stbGlzdCB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdGdhcDogdmFyKC0tc2l6ZS00LTIpO1xufVxuXG4udGltZXItdGFzay1pdGVtIHtcblx0ZGlzcGxheTogZmxleDtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtMyk7XG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLW0pO1xufVxuXG4udGltZXItdGFzay1jb250ZW50IHtcblx0ZmxleDogMTtcblx0bWluLXdpZHRoOiAwO1xuXHR3aGl0ZS1zcGFjZTogbm93cmFwO1xuXHRvdmVyZmxvdzogaGlkZGVuO1xuXHR0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcbn1cblxuLnRpbWVyLXRhc2stdGltZXIge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRnYXA6IHZhcigtLXNpemUtNC0yKTtcblx0bWFyZ2luLWxlZnQ6IHZhcigtLXNpemUtNC0zKTtcbn1cblxuLnRpbWVyLXRhc2stZHVyYXRpb24ge1xuXHRmb250LWZhbWlseTogdmFyKC0tZm9udC1tb25vc3BhY2UpO1xuXHRmb250LXdlaWdodDogdmFyKC0tZm9udC1tZWRpdW0pO1xuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xufVxuXG4udGltZXItdGFzay1zdGF0dXMge1xuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGxlcik7XG59XG5cbi50aW1lci10YXNrLXN0YXR1cy50aW1lci1zdGF0dXMtcnVubmluZyB7XG5cdGNvbG9yOiB2YXIoLS10aW1lci1ydW5uaW5nLWNvbG9yKTtcbn1cblxuLnRpbWVyLXRhc2stc3RhdHVzLnRpbWVyLXN0YXR1cy1wYXVzZWQge1xuXHRjb2xvcjogdmFyKC0tdGltZXItcGF1c2VkLWNvbG9yKTtcbn1cblxuLyogVGFzayBUaW1lciBNZXRhIFN0b3BwZWQgU3RhdGUgKi9cbi50YXNrLXRpbWVyLXN0b3BwZWQge1xuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XG5cdGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cblxuLyogQ29tcGxldGVkIFRpbWVycyAqL1xuLnRpbWVyLWNvbXBsZXRlZC1saXN0IHtcblx0ZGlzcGxheTogZmxleDtcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0Z2FwOiB2YXIoLS1zaXplLTQtMik7XG59XG5cbi50aW1lci1jb21wbGV0ZWQtaXRlbSB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTMpO1xuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1tKTtcblx0Z2FwOiB2YXIoLS1zaXplLTQtMyk7XG59XG5cbi50aW1lci1jb21wbGV0ZWQtaW5mbyB7XG5cdGZsZXg6IDE7XG5cdG1pbi13aWR0aDogMDtcbn1cblxuLnRpbWVyLWNvbXBsZXRlZC1uYW1lIHtcblx0Zm9udC13ZWlnaHQ6IHZhcigtLWZvbnQtbWVkaXVtKTtcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcblx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcblx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0dGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG59XG5cbi50aW1lci1jb21wbGV0ZWQtcGF0aCB7XG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbGVyKTtcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xuXHR3aGl0ZS1zcGFjZTogbm93cmFwO1xuXHRvdmVyZmxvdzogaGlkZGVuO1xuXHR0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbn1cblxuLnRpbWVyLWNvbXBsZXRlZC1tZXRhIHtcblx0ZGlzcGxheTogZmxleDtcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0YWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuXHRnYXA6IHZhcigtLXNpemUtMi0yKTtcblx0bWluLXdpZHRoOiAxNjBweDtcbn1cblxuLnRpbWVyLWNvbXBsZXRlZC1kdXJhdGlvbiB7XG5cdGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LW1vbm9zcGFjZSk7XG5cdGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LXNlbWlib2xkKTtcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcbn1cblxuLnRpbWVyLWNvbXBsZXRlZC10aW1lIHtcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsZXIpO1xuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XG5cdHRleHQtYWxpZ246IHJpZ2h0O1xufVxuIiwgIi8qIFRhc2sgbGlzdCAqL1xuLnRhc2stbGlzdCB7XG5cdGZsZXg6IDE7XG5cdG92ZXJmbG93LXk6IGF1dG87XG5cdHBhZGRpbmc6IDA7XG59XG5cbi50YXNrLWl0ZW0ge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRhbGlnbi1pdGVtczogZmxleC1zdGFydDtcblx0cGFkZGluZzogOHB4IDE2cHg7XG5cdC8qIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7ICovXG5cdGN1cnNvcjogcG9pbnRlcjtcblx0Z2FwOiB2YXIoLS1zaXplLTItMyk7XG5cblx0bWluLWhlaWdodDogNDBweDtcbn1cblxuLnRhc2staXRlbTpob3ZlciB7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5LWFsdCk7XG59XG5cbi50YXNrLWNoaWxkcmVuLWNvbnRhaW5lciAudGFzay1pdGVtOmhvdmVyIHtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xufVxuXG4udGFzay1pdGVtLnNlbGVjdGVkIHtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnktYWx0KTtcbn1cblxuLnRhc2staXRlbS50YXNrLWNvbXBsZXRlZCAudGFzay1pdGVtLWNvbnRlbnQge1xuXHR0ZXh0LWRlY29yYXRpb246IGxpbmUtdGhyb3VnaDtcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xufVxuXG4udGFzay1pdGVtIC5tYXJrZG93bi1ibG9jay5tYXJrZG93bi1yZW5kZXJlciA+IHA6b25seS1jaGlsZCB7XG5cdHBhZGRpbmc6IDA7XG5cdG1hcmdpbjogMDtcblx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcblx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0dGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG59XG5cbi50YXNrLWNoZWNrYm94IHtcblx0d2lkdGg6IDE2cHg7XG5cdGhlaWdodDogMTZweDtcblx0ZGlzcGxheTogZmxleDtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XG5cdGN1cnNvcjogcG9pbnRlcjtcblx0ZmxleC1zaHJpbms6IDA7XG59XG5cbi50YXNrLWl0ZW0udGFzay1jb21wbGV0ZWQgLnRhc2stY2hlY2tib3gge1xuXHRjb2xvcjogdmFyKC0tdGV4dC1vbi1hY2NlbnQpO1xufVxuXG4udGFzay1pdGVtLWNvbnRlbnQge1xuXHRmbGV4OiAxO1xuXHR3aGl0ZS1zcGFjZTogbm93cmFwO1xuXHRvdmVyZmxvdzogaGlkZGVuO1xuXHR0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcblx0d2lkdGg6IDEwMCU7XG59XG5cbi50YXNrLWl0ZW0tY29udGFpbmVyIHtcblx0ZmxleDogMTtcblx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcblx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0dGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG59XG5cbi8qIER5bmFtaWMgY29udGVudC1tZXRhZGF0YSBjb250YWluZXIgKi9cbi50YXNrLWNvbnRlbnQtbWV0YWRhdGEtY29udGFpbmVyIHtcblx0ZGlzcGxheTogZmxleDtcblx0ZmxleC13cmFwOiB3cmFwO1xuXHRhbGlnbi1pdGVtczogZmxleC1zdGFydDtcblx0Z2FwOiB2YXIoLS1zaXplLTItMik7XG5cdC8qIFJlbW92ZSB0cmFuc2l0aW9uIHRvIHByZXZlbnQgZmxhc2ggZHVyaW5nIGxheW91dCBjaGFuZ2VzICovXG5cdC8qIFVzZSBHUFUtYWNjZWxlcmF0ZWQgcHJvcGVydGllcyBvbmx5IGlmIHRyYW5zaXRpb24gaXMgbmVlZGVkICovXG5cdHdpbGwtY2hhbmdlOiBhdXRvO1xufVxuXG4vKiBTaW5nbGUgbGluZSBjb250ZW50IGxheW91dCAtIGhvcml6b250YWwgKi9cbi50YXNrLWNvbnRlbnQtbWV0YWRhdGEtY29udGFpbmVyLnNpbmdsZS1saW5lLWNvbnRlbnQge1xuXHRmbGV4LWRpcmVjdGlvbjogcm93O1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xufVxuXG4udGFzay1jb250ZW50LW1ldGFkYXRhLWNvbnRhaW5lci5zaW5nbGUtbGluZS1jb250ZW50IC50YXNrLWl0ZW0tY29udGVudCB7XG5cdGZsZXg6IDE7XG5cdG1pbi13aWR0aDogMDsgLyogQWxsb3cgY29udGVudCB0byBzaHJpbmsgKi9cbn1cblxuLnRhc2stY29udGVudC1tZXRhZGF0YS1jb250YWluZXIuc2luZ2xlLWxpbmUtY29udGVudCAudGFzay1pdGVtLW1ldGFkYXRhIHtcblx0ZmxleC1zaHJpbms6IDA7XG5cdG1hcmdpbi10b3A6IDA7XG59XG5cbi8qIE11bHRpLWxpbmUgY29udGVudCBsYXlvdXQgLSB2ZXJ0aWNhbCAqL1xuLnRhc2stY29udGVudC1tZXRhZGF0YS1jb250YWluZXIubXVsdGktbGluZS1jb250ZW50IHtcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0YWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG59XG5cbi50YXNrLWNvbnRlbnQtbWV0YWRhdGEtY29udGFpbmVyLm11bHRpLWxpbmUtY29udGVudCAudGFzay1pdGVtLWNvbnRlbnQge1xuXHQvKiB3aWR0aDogMTAwJTsgKi9cbn1cblxuLnRhc2stY29udGVudC1tZXRhZGF0YS1jb250YWluZXIubXVsdGktbGluZS1jb250ZW50IC50YXNrLWl0ZW0tbWV0YWRhdGEge1xuXHRtYXJnaW4tdG9wOiB2YXIoLS1zaXplLTItMik7XG59XG5cbi50YXNrLWl0ZW0tbWV0YWRhdGEge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRnYXA6IHZhcigtLXNpemUtNC0yKTtcblx0bWFyZ2luLXRvcDogdmFyKC0tc2l6ZS0yLTIpO1xufVxuXG4udGFzay1pdGVtLW1ldGFkYXRhOmVtcHR5IHtcblx0ZGlzcGxheTogbm9uZTtcbn1cblxuLnRhc2stZGF0ZSB7XG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbCk7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LWZhaW50KTtcblx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1hY3RpdmUtaG92ZXIpO1xuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTItMSkgdmFyKC0tc2l6ZS0yLTMpO1xuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XG5cdG9wYWNpdHk6IDAuODtcbn1cblxuLnRhc2staXRlbTpob3ZlciAudGFzay1kYXRlIHtcblx0b3BhY2l0eTogMTtcbn1cblxuLnRhc2stZGF0ZTo6YmVmb3JlIHtcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRtYXJnaW4tcmlnaHQ6IHZhcigtLXNpemUtMi0yKTtcblx0Zm9udC1zaXplOiB4eC1zbWFsbDtcblx0ZGlzcGxheTogaW5saW5lLWZsZXg7XG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMXB4KTtcbn1cblxuLnRnLWthbmJhbi12aWV3IC50YXNrLWRhdGU6OmJlZm9yZSB7XG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbn1cblxuLnRhc2stZGF0ZS50YXNrLWR1ZS1kYXRlOjpiZWZvcmUge1xuXHRjb250ZW50OiBcIvCfk4VcIjtcbn1cblxuLnRhc2stZGF0ZS50YXNrLW92ZXJkdWUge1xuXHRjb2xvcjogdmFyKC0tdGV4dC1lcnJvcik7XG5cdGZvbnQtd2VpZ2h0OiA2MDA7XG59XG5cbi50YXNrLWRhdGUudGFzay1kdWUtdG9kYXkge1xuXHRjb2xvcjogdmFyKC0tdGFzay1kb2luZy1jb2xvcik7XG5cdGZvbnQtd2VpZ2h0OiA2MDA7XG59XG5cbi50YXNrLWRhdGUudGFzay1kdWUtc29vbiB7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LXdhcm5pbmcpO1xuXHRmb250LXdlaWdodDogNjAwO1xufVxuXG4udGFzay1kYXRlLnRhc2stc3RhcnQtZGF0ZTo6YmVmb3JlIHtcblx0Y29udGVudDogXCLwn5urXCI7XG59XG5cbi50YXNrLWRhdGUudGFzay1jcmVhdGVkLWRhdGU6OmJlZm9yZSB7XG5cdGNvbnRlbnQ6IFwi4p6VXCI7XG59XG5cbi50YXNrLWRhdGUudGFzay1zY2hlZHVsZWQtZGF0ZTo6YmVmb3JlIHtcblx0Y29udGVudDogXCLij7NcIjtcbn1cblxuLnRhc2stZGF0ZS50YXNrLWRvbmUtZGF0ZTo6YmVmb3JlIHtcblx0Y29udGVudDogXCLinIVcIjtcbn1cblxuLnRhc2stZGF0ZS50YXNrLWNhbmNlbGxlZC1kYXRlOjpiZWZvcmUge1xuXHRjb250ZW50OiBcIuKdjFwiO1xufVxuXG4udGFzay1kYXRlLnRhc2stcmVjdXJyZW5jZTo6YmVmb3JlIHtcblx0Y29udGVudDogXCLwn5SBXCI7XG59XG5cbi50YXNrLWRhdGUudGFzay1vbi1jb21wbGV0aW9uOjpiZWZvcmUge1xuXHRjb250ZW50OiBcIvCfj4FcIjtcbn1cblxuLnRhc2stcHJvamVjdCB7XG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbCk7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvbG9yLWFjY2VudCk7XG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zKTtcblx0cGFkZGluZzogdmFyKC0tc2l6ZS0yLTEpIHZhcigtLXNpemUtMi0zKTtcblx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcblx0b3BhY2l0eTogMC41O1xufVxuXG4udGFzay1wcm9qZWN0OmhhcyhpbnB1dCkge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWFjdGl2ZS1ob3Zlcik7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XG59XG5cbi50YXNrLWl0ZW06aG92ZXIgLnRhc2stcHJvamVjdCB7XG5cdG9wYWNpdHk6IDE7XG59XG5cbi50YXNrLXByb2plY3Q6OmJlZm9yZSB7XG5cdGNvbnRlbnQ6IFwi8J+Xgu+4j1wiO1xuXHRtYXJnaW4tcmlnaHQ6IHZhcigtLXNpemUtNC0yKTtcblxuXHRkaXNwbGF5OiBpbmxpbmUtZmxleDtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsKTtcbn1cblxuLnRhc2stcHJvamVjdDpob3ZlciB7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYWN0aXZlLWhvdmVyKTtcblx0Y29sb3I6IHZhcigtLXRleHQtYWNjZW50LWhvdmVyKTtcbn1cblxuLnRhc2stcHJpb3JpdHkge1xuXHRtYXJnaW4tbGVmdDogOHB4O1xuXHRmb250LXNpemU6IDAuOWVtO1xuXHR3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuLnRhc2stcHJpb3JpdHkucHJpb3JpdHktNSB7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LWVycm9yKTtcblx0Zm9udC13ZWlnaHQ6IDYwMDtcbn1cbi50YXNrLXByaW9yaXR5LnByaW9yaXR5LTQge1xuXHRjb2xvcjogdmFyKC0tdGV4dC13YXJuaW5nKTtcblx0Zm9udC13ZWlnaHQ6IDYwMDtcbn1cbi50YXNrLXByaW9yaXR5LnByaW9yaXR5LTMge1xuXHRjb2xvcjogdmFyKC0tdGV4dC13YXJuaW5nKTtcblx0Zm9udC13ZWlnaHQ6IDYwMDtcbn1cbi50YXNrLXByaW9yaXR5LnByaW9yaXR5LTIge1xuXHRjb2xvcjogdmFyKC0tdGV4dC13YXJuaW5nKTtcbn1cbi50YXNrLXByaW9yaXR5LnByaW9yaXR5LTEge1xuXHRjb2xvcjogdmFyKC0tdGV4dC1hY2NlbnQpO1xufVxuXG4udGFzay1wcmlvcml0eS1jbGlja2FibGUge1xuXHRjdXJzb3I6IHBvaW50ZXI7XG5cdHRyYW5zaXRpb246IG9wYWNpdHkgMC4ycyBlYXNlO1xufVxuXG4udGFzay1wcmlvcml0eS1jbGlja2FibGU6aG92ZXIge1xuXHRvcGFjaXR5OiAwLjc7XG59XG5cbi5hZGQtcHJpb3JpdHktYnRuIHtcblx0ZGlzcGxheTogaW5saW5lLWZsZXg7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXHR3aWR0aDogMjBweDtcblx0aGVpZ2h0OiAyMHB4O1xuXHRtYXJnaW4tbGVmdDogNHB4O1xuXHRwYWRkaW5nOiAwO1xuXHQvKiBib3JkZXI6IDFweCBkYXNoZWQgdmFyKC0tdGV4dC1tdXRlZCk7ICovXG5cdGJvcmRlci1yYWRpdXM6IDNweDtcblx0YmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcblx0Zm9udC1zaXplOiAxMnB4O1xuXHRjdXJzb3I6IHBvaW50ZXI7XG5cdHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2U7XG59XG5cbi5hZGQtcHJpb3JpdHktYnRuOmhvdmVyIHtcblx0Ym9yZGVyLWNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpO1xufVxuXG4udGFzay1pdGVtLnRyZWUtdGFzay1pdGVtIC50YXNrLXByaW9yaXR5LWNsaWNrYWJsZSxcbi50YXNrLWl0ZW0udHJlZS10YXNrLWl0ZW0gLmFkZC1wcmlvcml0eS1idG4ge1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdHJpZ2h0OiB2YXIoLS1zaXplLTQtMik7XG5cdHRvcDogdmFyKC0tc2l6ZS00LTIpO1xufVxuXG4vKiBOZXcgZmllbGQgc3R5bGVzICovXG4udGFzay1vbmNvbXBsZXRpb24ge1xuXHRkaXNwbGF5OiBpbmxpbmUtZmxleDtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0cGFkZGluZzogMnB4IDZweDtcblx0bWFyZ2luLWxlZnQ6IDRweDtcblx0Ym9yZGVyLXJhZGl1czogM3B4O1xuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGwpO1xuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcblx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxuLnRhc2stb25jb21wbGV0aW9uOmhvdmVyIHtcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcbn1cblxuLnRhc2stZGVwZW5kc29uIHtcblx0ZGlzcGxheTogaW5saW5lLWZsZXg7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdHBhZGRpbmc6IDJweCA2cHg7XG5cdG1hcmdpbi1sZWZ0OiA0cHg7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcblx0Ym9yZGVyLXJhZGl1czogM3B4O1xuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGwpO1xuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xuXHR3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG4udGFzay1kZXBlbmRzb246aG92ZXIge1xuXHQvKmJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItZXJyb3ItaG92ZXIpOyovXG5cdGNvbG9yOiB2YXIoLS10ZXh0LWVycm9yKTtcbn1cblxuLnRhc2staWQge1xuXHRkaXNwbGF5OiBpbmxpbmUtZmxleDtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0cGFkZGluZzogMnB4IDZweDtcblx0bWFyZ2luLWxlZnQ6IDRweDtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1hY2NlbnQpO1xuXHRib3JkZXItcmFkaXVzOiAzcHg7XG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbCk7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LWFjY2VudCk7XG5cdHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cbi50YXNrLWlkOmhvdmVyIHtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1hY2NlbnQtaG92ZXIpO1xuXHRjb2xvcjogdmFyKC0tdGV4dC1hY2NlbnQtaG92ZXIpO1xufVxuXG4vKiBUYXNrIHRhZyBzdHlsZXMgKi9cbi50YXNrLXRhZ3MtY29udGFpbmVyIHtcblx0ZGlzcGxheTogZmxleDtcblx0ZmxleC13cmFwOiB3cmFwO1xuXHRnYXA6IHZhcigtLXNpemUtMi0yKTtcbn1cblxuLnRhc2stdGFncy1jb250YWluZXI6ZW1wdHkge1xuXHRkaXNwbGF5OiBub25lO1xufVxuXG4udGFzay10YWcge1xuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGwpO1xuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyKTtcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpO1xuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTItMSkgdmFyKC0tc2l6ZS0yLTMpO1xuXHR3aGl0ZS1zcGFjZTogbm93cmFwO1xuXHRvcGFjaXR5OiAwLjc1O1xufVxuXG4udGFzay1pdGVtOmhvdmVyIC50YXNrLXRhZyB7XG5cdG9wYWNpdHk6IDE7XG59XG5cbi50YXNrLWl0ZW0tY29udGVudCBwOmhhcyhpbWcpIGltZyB7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHR3aWR0aDogbWluKDUwJSwgMjAwcHgpO1xufVxuIiwgIi8qIFRyZWUgVmlldyBzdHlsZXMgKi9cblxuLyogVHJlZSBpdGVtIGNvbnRhaW5lciAqL1xuLnRyZWUtdGFzay1pdGVtIHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRwYWRkaW5nOiA4cHggMTZweDtcblx0dHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjJzIGVhc2U7XG59XG5cbi50YXNrLWNoaWxkcmVuLWNvbnRhaW5lciAudGFzay1pdGVtLnRyZWUtdGFzay1pdGVtIHtcblx0Ym9yZGVyLWJvdHRvbTogdW5zZXQ7XG5cdHBhZGRpbmctdG9wOiB2YXIoLS1zaXplLTItMik7XG5cdHBhZGRpbmctYm90dG9tOiB2YXIoLS1zaXplLTItMik7XG5cdGdhcDogMDtcbn1cblxuLnRhc2staXRlbS50cmVlLXRhc2staXRlbSB7XG5cdGdhcDogMDtcbn1cblxuLnRyZWUtdGFzay1pdGVtOmhvdmVyIHtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnktYWx0KTtcbn1cblxuLnRyZWUtdGFzay1pdGVtLnNlbGVjdGVkIHtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1hY3RpdmUpO1xufVxuXG4udHJlZS10YXNrLWl0ZW0uY29tcGxldGVkIHtcblx0b3BhY2l0eTogMC43O1xufVxuXG4vKiBUYXNrIGNvbnRlbnQgcm93IChjb250YWlucyB0aGUgbWFpbiB0YXNrIGNvbnRlbnQpICovXG4udHJlZS10YXNrLWl0ZW0gPiBkaXY6Zmlyc3Qtb2YtdHlwZSB7XG5cdHdpZHRoOiAxMDAlO1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRhbGlnbi1pdGVtczogZmxleC1zdGFydDtcblx0Z2FwOiA2cHg7XG59XG5cbi8qIEluZGVudGF0aW9uIGZvciBoaWVyYXJjaHkgKi9cbi50YXNrLWluZGVudCB7XG5cdGZsZXgtc2hyaW5rOiAwO1xufVxuXG4udGFzay1pdGVtLnRyZWUtdGFzay1pdGVtIC50YXNrLWV4cGFuZC10b2dnbGUge1xuXHRwYWRkaW5nLXRvcDogdmFyKC0tc2l6ZS0yLTIpO1xufVxuXG4udGFzay1pdGVtIC50YXNrLWNoZWNrYm94IHtcblx0cGFkZGluZy10b3A6IHZhcigtLXNpemUtMi0yKTtcbn1cblxuLyogRXhwYW5kL2NvbGxhcHNlIHRvZ2dsZSAqL1xuLnRhc2stZXhwYW5kLXRvZ2dsZSB7XG5cdGN1cnNvcjogcG9pbnRlcjtcblx0ZGlzcGxheTogZmxleDtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdHdpZHRoOiAxNnB4O1xuXHRoZWlnaHQ6IDE2cHg7XG5cdGZsZXgtc2hyaW5rOiAwO1xuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XG59XG5cbi50YXNrLWV4cGFuZC10b2dnbGU6aG92ZXIge1xuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xufVxuXG4vKiBUYXNrIGNoZWNrYm94ICovXG4udGFzay1pdGVtLnRyZWUtdGFzay1pdGVtIC50YXNrLWNoZWNrYm94IHtcblx0Y3Vyc29yOiBwb2ludGVyO1xuXHRmbGV4LXNocmluazogMDtcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xuXHR3aWR0aDogMTZweDtcblx0aGVpZ2h0OiAxNnB4O1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cblxuLnRhc2staXRlbS50cmVlLXRhc2staXRlbSAudGFzay1jaGVja2JveDpob3ZlciB7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LWFjY2VudCk7XG59XG5cbi50YXNrLWl0ZW0udHJlZS10YXNrLWl0ZW0gLnRhc2stY2hlY2tib3guY2hlY2tlZCB7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LWFjY2VudCk7XG59XG5cbi8qIFRhc2sgY29udGVudCAqL1xuLnRhc2stY29udGVudCB7XG5cdGZsZXgtZ3JvdzogMTtcblx0bGluZS1oZWlnaHQ6IDEuNDtcbn1cblxuLnRyZWUtdGFzay1pdGVtLmNvbXBsZXRlZCAudGFzay1jb250ZW50IHtcblx0dGV4dC1kZWNvcmF0aW9uOiBsaW5lLXRocm91Z2g7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcbn1cblxuLyogRHluYW1pYyBjb250ZW50LW1ldGFkYXRhIGNvbnRhaW5lciBmb3IgdHJlZSB2aWV3ICovXG4udHJlZS10YXNrLWl0ZW0gLnRhc2stY29udGVudC1tZXRhZGF0YS1jb250YWluZXIge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRmbGV4LXdyYXA6IHdyYXA7XG5cdGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuXHRnYXA6IHZhcigtLXNpemUtMi0yKTtcblx0dHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZTtcbn1cblxuLyogU2luZ2xlIGxpbmUgY29udGVudCBsYXlvdXQgLSBob3Jpem9udGFsICovXG4udHJlZS10YXNrLWl0ZW0gLnRhc2stY29udGVudC1tZXRhZGF0YS1jb250YWluZXIuc2luZ2xlLWxpbmUtY29udGVudCB7XG5cdGZsZXgtZGlyZWN0aW9uOiByb3c7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5cbi50cmVlLXRhc2staXRlbVxuXHQudGFzay1jb250ZW50LW1ldGFkYXRhLWNvbnRhaW5lci5zaW5nbGUtbGluZS1jb250ZW50XG5cdC50YXNrLWl0ZW0tY29udGVudCB7XG5cdGZsZXg6IDE7XG5cdG1pbi13aWR0aDogMDsgLyogQWxsb3cgY29udGVudCB0byBzaHJpbmsgKi9cbn1cblxuLnRyZWUtdGFzay1pdGVtXG5cdC50YXNrLWNvbnRlbnQtbWV0YWRhdGEtY29udGFpbmVyLnNpbmdsZS1saW5lLWNvbnRlbnRcblx0LnRhc2stbWV0YWRhdGEge1xuXHRmbGV4LXNocmluazogMDtcblx0bWFyZ2luLXRvcDogMDtcbn1cblxuLyogTXVsdGktbGluZSBjb250ZW50IGxheW91dCAtIHZlcnRpY2FsICovXG4udHJlZS10YXNrLWl0ZW0gLnRhc2stY29udGVudC1tZXRhZGF0YS1jb250YWluZXIubXVsdGktbGluZS1jb250ZW50IHtcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0YWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG59XG5cbi50cmVlLXRhc2staXRlbVxuXHQudGFzay1jb250ZW50LW1ldGFkYXRhLWNvbnRhaW5lci5tdWx0aS1saW5lLWNvbnRlbnRcblx0LnRhc2staXRlbS1jb250ZW50IHtcblx0d2lkdGg6IDEwMCU7XG59XG5cbi50cmVlLXRhc2staXRlbVxuXHQudGFzay1jb250ZW50LW1ldGFkYXRhLWNvbnRhaW5lci5tdWx0aS1saW5lLWNvbnRlbnRcblx0LnRhc2stbWV0YWRhdGEge1xuXHRtYXJnaW4tdG9wOiA0cHg7XG59XG5cbi8qIFRhc2sgbWV0YWRhdGEgKi9cbi50YXNrLW1ldGFkYXRhIHtcblx0ZGlzcGxheTogZmxleDtcblx0Z2FwOiA4cHg7XG5cdG1hcmdpbi10b3A6IDRweDtcblx0Zm9udC1zaXplOiAwLjg1ZW07XG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcbn1cblxuLnRhc2stbWV0YWRhdGE6ZW1wdHkge1xuXHRkaXNwbGF5OiBub25lO1xufVxuXG4udGFzay1kdWUtZGF0ZS5vdmVyZHVlIHtcblx0Y29sb3I6IHZhcigtLXRleHQtZXJyb3IpO1xuXHRmb250LXdlaWdodDogYm9sZDtcbn1cblxuLnRhc2staXRlbS50cmVlLXRhc2staXRlbSAudGFzay1wcm9qZWN0IHtcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRwYWRkaW5nOiAxcHggNnB4O1xuXHRib3JkZXItcmFkaXVzOiA0cHg7XG59XG5cbi50YXNrLXByaW9yaXR5LnByaW9yaXR5LTMge1xuXHRjb2xvcjogdmFyKC0tdGV4dC1lcnJvcik7XG59XG5cbi50YXNrLXByaW9yaXR5LnByaW9yaXR5LTIge1xuXHRjb2xvcjogdmFyKC0tdGV4dC13YXJuaW5nKTtcbn1cblxuLnRhc2stcHJpb3JpdHkucHJpb3JpdHktMSB7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LWFjY2VudCk7XG59XG5cbi50YXNrLXByaW9yaXR5LWNsaWNrYWJsZSB7XG5cdGN1cnNvcjogcG9pbnRlcjtcblx0dHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzIGVhc2U7XG59XG5cbi50YXNrLXByaW9yaXR5LWNsaWNrYWJsZTpob3ZlciB7XG5cdG9wYWNpdHk6IDAuNztcbn1cblxuLyogTmV3IGZpZWxkIHN0eWxlcyBmb3IgdHJlZSB2aWV3ICovXG4udHJlZS10YXNrLWl0ZW0gLnRhc2stb25jb21wbGV0aW9uIHtcblx0ZGlzcGxheTogaW5saW5lLWZsZXg7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdHBhZGRpbmc6IDJweCA2cHg7XG5cdG1hcmdpbi1sZWZ0OiA0cHg7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcblx0Ym9yZGVyLXJhZGl1czogM3B4O1xuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGwpO1xuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XG5cdHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cbi50cmVlLXRhc2staXRlbSAudGFzay1vbmNvbXBsZXRpb246aG92ZXIge1xuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xufVxuXG4udHJlZS10YXNrLWl0ZW0gLnRhc2stZGVwZW5kc29uIHtcblx0ZGlzcGxheTogaW5saW5lLWZsZXg7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdHBhZGRpbmc6IDJweCA2cHg7XG5cdG1hcmdpbi1sZWZ0OiA0cHg7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItZXJyb3IpO1xuXHRib3JkZXItcmFkaXVzOiAzcHg7XG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbCk7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LWVycm9yKTtcblx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxuLnRyZWUtdGFzay1pdGVtIC50YXNrLWRlcGVuZHNvbjpob3ZlciB7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItZXJyb3ItaG92ZXIpO1xuXHRjb2xvcjogdmFyKC0tdGV4dC1lcnJvcik7XG59XG5cbi50cmVlLXRhc2staXRlbSAudGFzay1pZCB7XG5cdGRpc3BsYXk6IGlubGluZS1mbGV4O1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRwYWRkaW5nOiAycHggNnB4O1xuXHRtYXJnaW4tbGVmdDogNHB4O1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWFjY2VudCk7XG5cdGJvcmRlci1yYWRpdXM6IDNweDtcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsKTtcblx0Y29sb3I6IHZhcigtLXRleHQtYWNjZW50KTtcblx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxuLnRyZWUtdGFzay1pdGVtIC50YXNrLWlkOmhvdmVyIHtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1hY2NlbnQtaG92ZXIpO1xuXHRjb2xvcjogdmFyKC0tdGV4dC1hY2NlbnQtaG92ZXIpO1xufVxuXG4vKiBDaGlsZHJlbiBjb250YWluZXIgKi9cbi50YXNrLWNoaWxkcmVuLWNvbnRhaW5lciB7XG5cdC8qIG1hcmdpbi1sZWZ0OiAyMHB4OyAqL1xuXHRtYXJnaW4tdG9wOiA0cHg7XG5cdHdpZHRoOiAxMDAlO1xufVxuXG4vKiBWaWV3IHRvZ2dsZSBidXR0b24gKi9cbi52aWV3LXRvZ2dsZS1idG4ge1xuXHRjdXJzb3I6IHBvaW50ZXI7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXHR3aWR0aDogMjRweDtcblx0aGVpZ2h0OiAyNHB4O1xuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XG5cdGJvcmRlci1yYWRpdXM6IDRweDtcbn1cblxuLnZpZXctdG9nZ2xlLWJ0bjpob3ZlciB7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpO1xuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xufVxuXG4udGFzay1jaGlsZHJlbi1jb250YWluZXI6ZW1wdHkge1xuXHRkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG4iLCAiLyog5Yig6Zmk5LiOIGZsdWVudC1tb2Rlcm4uY3NzIOmHjeWkjeWGheWuue+8jOS7heS/neeVmSBtb2Rlcm4uY3NzIOeLrOacieaIluWPmOS9k+agt+W8jyAqL1xuXG4udGFzay1pdGVtIHtcblx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWJhc2UtMjApO1xuXHQvKiDoi6XpnIDopobnm5YgZmx1ZW50IOWPmOS9k+WPr+WcqOatpOa3u+WKoOmdnumHjeWkjeagt+W8jyAqL1xufVxuIiwgIi8qIEdyb3VwIEJ5IENvbXBvbmVudCBTdHlsZXMgKi9cblxuLyogTm90ZTogR3JvdXAgQnkgYnV0dG9uIGlzIG5vdyBkeW5hbWljYWxseSByZWdpc3RlcmVkIGluIEZsdWVudFRvcE5hdmlnYXRpb24gKi9cbi8qIExlZ2FjeSBzdHlsZXMgYmVsb3cgYXJlIGtlcHQgZm9yIGJhY2t3YXJkIGNvbXBhdGliaWxpdHkgd2l0aCBub24tRmx1ZW50IHZpZXdzICovXG5cbi8qIEZpbHRlciBjb250cm9scyBjb250YWluZXIgKG5vdyBvbmx5IGNvbnRhaW5zIGZpbHRlciBpbnB1dCkgKi9cbi5jb250ZW50LWZpbHRlci1jb250cm9scyB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdGdhcDogNHB4O1xufVxuXG4vKiBUYXNrIEdyb3VwIFNlY3Rpb25zIChyZXVzaW5nIGZvcmVjYXN0IHNlY3Rpb24gcGF0dGVybikgKi9cbi50YXNrLWdyb3VwLXNlY3Rpb24ge1xuXHRtYXJnaW4tYm90dG9tOiA4cHg7XG59XG5cbi5ncm91cC1zZWN0aW9uLWhlYWRlciB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdHBhZGRpbmc6IDhweCAxNXB4O1xuXHRjdXJzb3I6IHBvaW50ZXI7XG5cdC8qIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7ICovXG5cdC8qIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5LWFsdCk7ICovXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zKTtcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xufVxuXG4uZ3JvdXAtc2VjdGlvbi1oZWFkZXI6aG92ZXIge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeS1hbHQpO1xufVxuXG4uZ3JvdXAtc2VjdGlvbi1oZWFkZXIgLnNlY3Rpb24tdG9nZ2xlIHtcblx0bWFyZ2luLXJpZ2h0OiA4cHg7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuXG4uZ3JvdXAtc2VjdGlvbi1oZWFkZXIgLnNlY3Rpb24tdGl0bGUge1xuXHRmbGV4OiAxO1xuXHRmb250LXdlaWdodDogNjAwO1xuXHRmb250LXNpemU6IDAuOTVlbTtcbn1cblxuLmdyb3VwLXNlY3Rpb24taGVhZGVyIC5zZWN0aW9uLWNvdW50IHtcblx0Zm9udC1zaXplOiAwLjhlbTtcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XG5cdGJvcmRlci1yYWRpdXM6IDEwcHg7XG5cdGhlaWdodDogdmFyKC0tc2l6ZS00LTUpO1xuXHRtaW4td2lkdGg6IHZhcigtLXNpemUtNC01KTtcblx0cGFkZGluZzogMCA2cHg7XG5cdGRpc3BsYXk6IGlubGluZS1mbGV4O1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cblxuLnRhc2stZ3JvdXAtc2VjdGlvbiAuc2VjdGlvbi10YXNrcyB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdHBhZGRpbmctbGVmdDogdmFyKC0tc2l6ZS00LTgpO1xufVxuXG4vKiBHcm91cCBieSBwcmlvcml0eSAtIHNwZWNpYWwgY29sb3JpbmcgKi9cbi50YXNrLWdyb3VwLXNlY3Rpb25bZGF0YS1ncm91cC1rZXk9XCJwcmlvcml0eS1oaWdoXCJdIC5ncm91cC1zZWN0aW9uLWhlYWRlciB7XG5cdGJvcmRlci1sZWZ0OiAzcHggc29saWQgdmFyKC0tdGV4dC1lcnJvcik7XG59XG5cbi50YXNrLWdyb3VwLXNlY3Rpb25bZGF0YS1ncm91cC1rZXk9XCJwcmlvcml0eS1oaWdoXCJdIC5zZWN0aW9uLXRpdGxlIHtcblx0Y29sb3I6IHZhcigtLXRleHQtZXJyb3IpO1xufVxuXG4udGFzay1ncm91cC1zZWN0aW9uW2RhdGEtZ3JvdXAta2V5PVwicHJpb3JpdHktbWVkaXVtXCJdIC5ncm91cC1zZWN0aW9uLWhlYWRlciB7XG5cdGJvcmRlci1sZWZ0OiAzcHggc29saWQgdmFyKC0tdGV4dC13YXJuaW5nKTtcbn1cblxuLnRhc2stZ3JvdXAtc2VjdGlvbltkYXRhLWdyb3VwLWtleT1cInByaW9yaXR5LW1lZGl1bVwiXSAuc2VjdGlvbi10aXRsZSB7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LXdhcm5pbmcpO1xufVxuXG4vKiBHcm91cCBieSBkdWUgZGF0ZSAtIGhpZ2hsaWdodCBwYXN0IGR1ZSAqL1xuLnRhc2stZ3JvdXAtc2VjdGlvbltkYXRhLWdyb3VwLWtleT1cImR1ZS1wYXN0XCJdIC5ncm91cC1zZWN0aW9uLWhlYWRlciB7XG5cdGJvcmRlci1sZWZ0OiAzcHggc29saWQgdmFyKC0tdGV4dC1lcnJvcik7XG59XG5cbi50YXNrLWdyb3VwLXNlY3Rpb25bZGF0YS1ncm91cC1rZXk9XCJkdWUtcGFzdFwiXSAuc2VjdGlvbi10aXRsZSB7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LWVycm9yKTtcbn1cblxuLnRhc2stZ3JvdXAtc2VjdGlvbltkYXRhLWdyb3VwLWtleT1cImR1ZS1wYXN0XCJdIC5zZWN0aW9uLWNvdW50IHtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGV4dC1lcnJvcik7XG5cdGNvbG9yOiB3aGl0ZTtcbn1cblxuLnRhc2stZ3JvdXAtc2VjdGlvbltkYXRhLWdyb3VwLWtleT1cImR1ZS10b2RheVwiXSAuZ3JvdXAtc2VjdGlvbi1oZWFkZXIge1xuXHRib3JkZXItbGVmdDogM3B4IHNvbGlkIHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XG59XG5cbi50YXNrLWdyb3VwLXNlY3Rpb25bZGF0YS1ncm91cC1rZXk9XCJkdWUtdG9kYXlcIl0gLnNlY3Rpb24tdGl0bGUge1xuXHRjb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgTmVzdGVkIEdyb3VwIFN0eWxlc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKiBMZXZlbC1iYXNlZCBpbmRlbnRhdGlvbiBmb3IgbmVzdGVkIGdyb3VwcyAqL1xuLnRhc2stZ3JvdXAtc2VjdGlvbi5sZXZlbC0wIHtcblx0bWFyZ2luLWxlZnQ6IDA7XG5cdC8qIG1hcmdpbi1ib3R0b206IDEycHg7ICovXG59XG5cbi50YXNrLWdyb3VwLXNlY3Rpb24ubGV2ZWwtMSB7XG5cdG1hcmdpbi1sZWZ0OiB2YXIoLS1zaXplLTQtNCk7XG5cdC8qIG1hcmdpbi1ib3R0b206IDRweDsgKi9cbn1cblxuLnRhc2stZ3JvdXAtc2VjdGlvbi5sZXZlbC0yIHtcblx0bWFyZ2luLWxlZnQ6IHZhcigtLXNpemUtNC04KTtcblx0LyogbWFyZ2luLWJvdHRvbTogNHB4OyAqL1xufVxuXG4udGFzay1ncm91cC1zZWN0aW9uLmxldmVsLTMge1xuXHRtYXJnaW4tbGVmdDogdmFyKC0tc2l6ZS00LTEyKTtcblx0LyogbWFyZ2luLWJvdHRvbTogNHB4OyAqL1xufVxuXG4vKiBGb2xkZXIgZ3JvdXAgaGVhZGVycyAodG9wLWxldmVsIGdyb3VwcyB3aXRoIGNoaWxkcmVuKSAqL1xuLmdyb3VwLXNlY3Rpb24taGVhZGVyLmZvbGRlci1ncm91cCB7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTsgLyogQWRkZWQgZm9yIHByb3BlciBwb3NpdGlvbmluZyAqL1xuXHRmb250LXdlaWdodDogNjAwO1xuXHRmb250LXNpemU6IDFlbTtcblx0LyogYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnktYWx0KTsgKi9cblx0cGFkZGluZzogMTBweCAxNXB4O1xuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XG59XG5cbi5ncm91cC1zZWN0aW9uLWhlYWRlci5mb2xkZXItZ3JvdXA6aG92ZXIge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeS1hbHQpO1xuXHRjb2xvcjogdmFyKC0tdGV4dC1hY2NlbnQpO1xufVxuXG4vKiBGaWxlIGdyb3VwIGhlYWRlcnMgKGxlYWYgZ3JvdXBzKSAqL1xuLmdyb3VwLXNlY3Rpb24taGVhZGVyLmZpbGUtZ3JvdXAge1xuXHRmb250LXdlaWdodDogNTAwO1xuXHRmb250LXNpemU6IDAuOWVtO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xuXHRwYWRkaW5nOiA2cHggMTJweDtcbn1cblxuLmdyb3VwLXNlY3Rpb24taGVhZGVyLmZpbGUtZ3JvdXA6aG92ZXIge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeS1hbHQpO1xuXHRjb2xvcjogdmFyKC0tdGV4dC1hY2NlbnQpO1xufVxuXG4uZ3JvdXAtc2VjdGlvbi1oZWFkZXIuZmlsZS1ncm91cCAuc2VjdGlvbi10aXRsZSB7XG5cdGZvbnQtd2VpZ2h0OiA1MDA7XG5cdC8qIGNvbG9yOiB2YXIoLS10ZXh0LWFjY2VudCk7ICovXG59XG5cbi8qIENvbnRlbnQgY29udGFpbmVyIGZvciBuZXN0ZWQgZ3JvdXBzICovXG4uZ3JvdXAtc2VjdGlvbi1jb250ZW50IHtcblx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0dHJhbnNpdGlvbjogb3BhY2l0eSAwLjE1cyBlYXNlLW91dDtcblx0cGFkZGluZy1sZWZ0OiB2YXIoLS1zaXplLTQtNCk7XG59XG5cbi5ncm91cC1zZWN0aW9uLWNvbnRlbnQ6bm90KFtzdHlsZSo9XCJkaXNwbGF5OiBub25lXCJdKSB7XG5cdG9wYWNpdHk6IDE7XG59XG5cbi8qIEFkanVzdCB0b2dnbGUgaWNvbnMgZm9yIG5lc3RlZCBsZXZlbHMgKi9cbi50YXNrLWdyb3VwLXNlY3Rpb24ubGV2ZWwtMSAuc2VjdGlvbi10b2dnbGUsXG4udGFzay1ncm91cC1zZWN0aW9uLmxldmVsLTIgLnNlY3Rpb24tdG9nZ2xlLFxuLnRhc2stZ3JvdXAtc2VjdGlvbi5sZXZlbC0zIC5zZWN0aW9uLXRvZ2dsZSB7XG5cdG9wYWNpdHk6IDAuNztcbn1cblxuLyogQ291bnQgYmFkZ2UgYWRqdXN0bWVudHMgZm9yIG5lc3RlZCBncm91cHMgKi9cbi50YXNrLWdyb3VwLXNlY3Rpb24ubGV2ZWwtMSAuc2VjdGlvbi1jb3VudCB7XG5cdGZvbnQtc2l6ZTogMC43NWVtO1xuXHRoZWlnaHQ6IDE4cHg7XG5cdG1pbi13aWR0aDogMThweDtcblx0cGFkZGluZzogMCA1cHg7XG59XG5cbi8qIENvbGxhcHNlZCBzdGF0ZSBoaW50ICovXG4uZ3JvdXAtc2VjdGlvbi1jb250ZW50W3N0eWxlKj1cImRpc3BsYXk6IG5vbmVcIl0gfiAuZ3JvdXAtc2VjdGlvbi1oZWFkZXIge1xuXHRvcGFjaXR5OiAwLjg1O1xufVxuXG4vKiBSZXNwb25zaXZlIGFkanVzdG1lbnRzIGZvciBuYXJyb3cgc2NyZWVucyAqL1xuQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XG5cdC50YXNrLWdyb3VwLXNlY3Rpb24ubGV2ZWwtMSB7XG5cdFx0bWFyZ2luLWxlZnQ6IDEycHg7XG5cdH1cblxuXHQudGFzay1ncm91cC1zZWN0aW9uLmxldmVsLTIge1xuXHRcdG1hcmdpbi1sZWZ0OiAyNHB4O1xuXHR9XG5cblx0LnRhc2stZ3JvdXAtc2VjdGlvbi5sZXZlbC0zIHtcblx0XHRtYXJnaW4tbGVmdDogMzZweDtcblx0fVxufVxuIiwgIi8qIFRhZ3MgVmlldyBTdHlsZXMgKi9cclxuLnRhZ3MtY29udGFpbmVyIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0aGVpZ2h0OiAxMDAlO1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcblx0ZmxleDogMTtcclxufVxyXG5cclxuLnRhc2stZ2VuaXVzLXZpZXc6aGFzKC50YXNrLWRldGFpbHMudmlzaWJsZSkgLnRhZ3MtbGVmdC1jb2x1bW4ge1xyXG5cdGRpc3BsYXk6IG5vbmU7XHJcbn1cclxuXHJcbi50YWdzLWNvbnRlbnQge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IHJvdztcclxuXHRmbGV4OiAxO1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcbn1cclxuXHJcbi5tdWx0aS1zZWxlY3QtbW9kZSAudGFncy1tdWx0aS1zZWxlY3QtYnRuIHtcclxuXHRjb2xvcjogdmFyKC0tY29sb3ItYWNjZW50KTtcclxufVxyXG5cclxuLnRhZ3MtbGVmdC1jb2x1bW4ge1xyXG5cdHdpZHRoOiBtYXgoMTIwcHgsIDMwJSk7XHJcblx0bWluLXdpZHRoOiBtaW4oMTIwcHgsIDMwJSk7XHJcblx0bWF4LXdpZHRoOiA0MDBweDtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0Ym9yZGVyLXJpZ2h0OiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcbn1cclxuXHJcbi50YWdzLXJpZ2h0LWNvbHVtbiB7XHJcblx0ZmxleDogMTtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0b3ZlcmZsb3c6IGhpZGRlbjtcclxufVxyXG5cclxuLnRhZ3Mtc2lkZWJhci1oZWFkZXIge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTIpIHZhcigtLXNpemUtNC00KTtcclxuXHRib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGhlaWdodDogdmFyKC0tc2l6ZS00LTEwKTtcclxufVxyXG5cclxuLnRhZ3Mtc2lkZWJhci10aXRsZSB7XHJcblx0Zm9udC13ZWlnaHQ6IDYwMDtcclxuXHRmb250LXNpemU6IDE0cHg7XHJcbn1cclxuXHJcbi50YWdzLW11bHRpLXNlbGVjdC1idG4ge1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblxyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxufVxyXG5cclxuLnRhZ3MtbXVsdGktc2VsZWN0LWJ0bjpob3ZlciB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxufVxyXG5cclxuLnRhZ3Mtc2lkZWJhci1saXN0IHtcclxuXHRmbGV4OiAxO1xyXG5cdG92ZXJmbG93LXk6IGF1dG87XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTIpO1xyXG5cclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0Z2FwOiB2YXIoLS1zaXplLTItMSk7XHJcbn1cclxuXHJcbi50YWctbGlzdC1pdGVtIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0cGFkZGluZzogNHB4IDEycHg7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XHJcbn1cclxuXHJcbi50YWctbGlzdC1pdGVtOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyKTtcclxufVxyXG5cclxuLnRhZy1saXN0LWl0ZW0uc2VsZWN0ZWQge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYWN0aXZlKTtcclxufVxyXG5cclxuLnRhZy1pbmRlbnQge1xyXG5cdGZsZXgtc2hyaW5rOiAwO1xyXG59XHJcblxyXG4udGFnLWljb24ge1xyXG5cdG1hcmdpbi1yaWdodDogdmFyKC0tc2l6ZS0yLTIpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdC0taWNvbi1zaXplOiB2YXIoLS1zaXplLTQtNCk7XHJcbn1cclxuXHJcbi50YWctbmFtZSB7XHJcblx0ZmxleDogMTtcclxuXHR3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcblx0dGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XHJcbn1cclxuXHJcbi50YWctY291bnQge1xyXG5cdG1hcmdpbi1sZWZ0OiA4cHg7XHJcblx0Zm9udC1zaXplOiAwLjhlbTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGJvcmRlci1yYWRpdXM6IDEwcHg7XHJcblx0cGFkZGluZzogMXB4IDZweDtcclxufVxyXG5cclxuLnRhZy1jaGlsZHJlbiB7XHJcblx0d2lkdGg6IDEwMCU7XHJcbn1cclxuXHJcbi50YWdzLXRhc2staGVhZGVyIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtNC0yKSB2YXIoLS1zaXplLTQtNCk7XHJcblx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRoZWlnaHQ6IHZhcigtLXNpemUtNC0xMCk7XHJcbn1cclxuXHJcbi50YWdzLXRhc2stdGl0bGUge1xyXG5cdGZvbnQtd2VpZ2h0OiA2MDA7XHJcblx0Zm9udC1zaXplOiAxNnB4O1xyXG59XHJcblxyXG4udGFncy10YXNrLWNvdW50IHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcbn1cclxuXHJcbi50YWdzLXRhc2stbGlzdCB7XHJcblx0ZmxleDogMTtcclxuXHRvdmVyZmxvdy15OiBhdXRvO1xyXG59XHJcblxyXG4udGFncy1lbXB0eS1zdGF0ZSB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdGhlaWdodDogMTAwJTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0Zm9udC1zdHlsZTogaXRhbGljO1xyXG5cdHBhZGRpbmc6IDE2cHg7XHJcbn1cclxuXHJcbi50YWctc2VjdGlvbi1oZWFkZXIge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRwYWRkaW5nOiA4cHggMTVweDtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeS1hbHQpO1xyXG59XHJcblxyXG4udGFnLXNlY3Rpb24taGVhZGVyIC5zZWN0aW9uLXRvZ2dsZSB7XHJcblx0bWFyZ2luLXJpZ2h0OiA4cHg7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG59XHJcblxyXG4udGFnLXNlY3Rpb24taGVhZGVyIC5zZWN0aW9uLXRpdGxlIHtcclxuXHRmbGV4OiAxO1xyXG5cdGZvbnQtd2VpZ2h0OiA1MDA7XHJcbn1cclxuXHJcbi50YWctc2VjdGlvbi1oZWFkZXIgLnNlY3Rpb24tY291bnQge1xyXG5cdGZvbnQtc2l6ZTogMC44ZW07XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRwYWRkaW5nOiAycHggNnB4O1xyXG5cdGJvcmRlci1yYWRpdXM6IDEwcHg7XHJcblx0aGVpZ2h0OiB2YXIoLS1zaXplLTQtNSk7XHJcblx0d2lkdGg6IHZhcigtLXNpemUtNC01KTtcclxufVxyXG5cclxuLyogVGFncyBWaWV3IC0gTW9iaWxlICovXHJcbi5pcy1waG9uZSAudGFncy1jb250YWluZXIge1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG59XHJcblxyXG4uaXMtcGhvbmUgLnRhZ3MtbGVmdC1jb2x1bW4ge1xyXG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRsZWZ0OiAwO1xyXG5cdHRvcDogMDtcclxuXHRoZWlnaHQ6IDEwMCU7XHJcblx0ei1pbmRleDogMTA7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSk7XHJcblx0dHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuM3MgZWFzZS1pbi1vdXQ7XHJcblx0Ym9yZGVyLXJpZ2h0OiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG59XHJcblxyXG4uaXMtcGhvbmUgLnRhZ3MtbGVmdC1jb2x1bW4uaXMtdmlzaWJsZSB7XHJcblx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xyXG59XHJcblxyXG4uaXMtcGhvbmUgLnRhZ3Mtc2lkZWJhci10b2dnbGUge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHRtYXJnaW4tcmlnaHQ6IDhweDtcclxufVxyXG5cclxuLmlzLXBob25lIC50YWdzLXNpZGViYXItY2xvc2Uge1xyXG5cdC0taWNvbi1zaXplOiB2YXIoLS1zaXplLTQtNCk7XHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdHRvcDogdmFyKC0tc2l6ZS00LTIpO1xyXG5cdHJpZ2h0OiAxMHB4O1xyXG5cdHotaW5kZXg6IDE1O1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxufVxyXG5cclxuLyogQWRkIG92ZXJsYXkgd2hlbiBsZWZ0IGNvbHVtbiBpcyB2aXNpYmxlIG9uIG1vYmlsZSAqL1xyXG4uaXMtcGhvbmUgLnRhZ3MtY29udGFpbmVyOmhhcygudGFncy1sZWZ0LWNvbHVtbi5pcy12aXNpYmxlKTo6YmVmb3JlIHtcclxuXHRjb250ZW50OiBcIlwiO1xyXG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHR0b3A6IDA7XHJcblx0bGVmdDogMDtcclxuXHR3aWR0aDogMTAwJTtcclxuXHRoZWlnaHQ6IDEwMCU7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1jb3Zlcik7XHJcblx0b3BhY2l0eTogMC41O1xyXG5cdHotaW5kZXg6IDU7XHJcblx0dHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzIGVhc2UtaW4tb3V0O1xyXG59XHJcblxyXG4uaXMtcGhvbmUgLnRhZ3Mtc2lkZWJhci1oZWFkZXI6aGFzKC50YWdzLXNpZGViYXItY2xvc2UpIHtcclxuXHRwYWRkaW5nLXJpZ2h0OiB2YXIoLS1zaXplLTQtMTIpO1xyXG59XHJcbiIsICIvKiBQcm9qZWN0cyBWaWV3IFN0eWxlcyAqL1xyXG4ucHJvamVjdHMtY29udGFpbmVyIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0aGVpZ2h0OiAxMDAlO1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcbn1cclxuXHJcbi5wcm9qZWN0cy1jb250ZW50IHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiByb3c7XHJcblx0ZmxleDogMTtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG59XHJcblxyXG4ucHJvamVjdHMtbGVmdC1jb2x1bW4ge1xyXG5cdHdpZHRoOiBtYXgoMTIwcHgsIDMwJSk7XHJcblx0bWluLXdpZHRoOiBtaW4oMTIwcHgsIDMwJSk7XHJcblx0bWF4LXdpZHRoOiAzMDBweDtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0b3ZlcmZsb3c6IGhpZGRlbjtcclxuXHRib3JkZXItcmlnaHQ6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcbn1cclxuXHJcbi5pcy1waG9uZSAucHJvamVjdHMtbGVmdC1jb2x1bW4ge1xyXG5cdG1heC13aWR0aDogMTAwJTtcclxufVxyXG5cclxuLnByb2plY3RzLXJpZ2h0LWNvbHVtbiB7XHJcblx0ZmxleDogMTtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0b3ZlcmZsb3c6IGhpZGRlbjtcclxufVxyXG5cclxuLnByb2plY3RzLXNpZGViYXItaGVhZGVyIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtNC0yKSB2YXIoLS1zaXplLTQtNCk7XHJcblx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRoZWlnaHQ6IHZhcigtLXNpemUtNC0xMCk7XHJcbn1cclxuXHJcbi5wcm9qZWN0cy1zaWRlYmFyLXRpdGxlIHtcclxuXHRmb250LXdlaWdodDogNjAwO1xyXG5cdGZvbnQtc2l6ZTogMTRweDtcclxufVxyXG5cclxuLnByb2plY3RzLXNpZGViYXItaGVhZGVyLWJ0bi1ncm91cCB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogcm93O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblxyXG5cdGdhcDogdmFyKC0tc2l6ZS00LTIpO1xyXG59XHJcblxyXG4ubXVsdGktc2VsZWN0LW1vZGUgLnByb2plY3RzLW11bHRpLXNlbGVjdC1idG4ge1xyXG5cdGNvbG9yOiB2YXIoLS1jb2xvci1hY2NlbnQpO1xyXG59XHJcblxyXG4ucHJvamVjdHMtdHJlZS10b2dnbGUtYnRuIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbn1cclxuXHJcbi5wcm9qZWN0cy1tdWx0aS1zZWxlY3QtYnRuIHtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbn1cclxuXHJcbi5wcm9qZWN0cy1tdWx0aS1zZWxlY3QtYnRuOmhvdmVyIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG59XHJcblxyXG4ucHJvamVjdHMtc2lkZWJhci1saXN0IHtcclxuXHRmbGV4OiAxO1xyXG5cdG92ZXJmbG93LXk6IGF1dG87XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTIpIHZhcigtLXNpemUtNC0yKTtcclxufVxyXG5cclxuLnByb2plY3QtbGlzdC1pdGVtIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zKTtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtMik7XHJcbn1cclxuXHJcbi5wcm9qZWN0LWxpc3QtaXRlbTpob3ZlciB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3Zlcik7XHJcbn1cclxuXHJcbi5wcm9qZWN0LWxpc3QtaXRlbS5zZWxlY3RlZCB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xyXG59XHJcblxyXG4ucHJvamVjdC1pY29uIHtcclxuXHRtYXJnaW4tcmlnaHQ6IDhweDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblxyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxufVxyXG5cclxuLnByb2plY3QtbmFtZSB7XHJcblx0ZmxleDogMTtcclxuXHR3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcblx0dGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XHJcbn1cclxuXHJcbi5wcm9qZWN0LWNvdW50IHtcclxuXHRtYXJnaW4tbGVmdDogOHB4O1xyXG5cdGZvbnQtc2l6ZTogMC44ZW07XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRib3JkZXItcmFkaXVzOiAxMHB4O1xyXG5cdHBhZGRpbmc6IDFweCA2cHg7XHJcblx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuXHR0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMnMgZWFzZSwgY29sb3IgMC4ycyBlYXNlO1xyXG59XHJcblxyXG4vKiBQcm9ncmVzcyBjb3VudCBzdHlsaW5nIHdoZW4gc2hvd2luZyBjb21wbGV0ZWQvdG90YWwgKi9cclxuLnByb2plY3QtY291bnQucGFydGlhbGx5LWNvbXBsZXRlZCB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtc3VjY2Vzcyk7XHJcbn1cclxuXHJcbi5wcm9qZWN0LWNvdW50LmFsbC1jb21wbGV0ZWQge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XHJcblx0Zm9udC13ZWlnaHQ6IDYwMDtcclxufVxyXG5cclxuLnByb2plY3QtY291bnQuaGFzLXByb2dyZXNzIHtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XHJcbn1cclxuXHJcbi8qIFNlbGVjdGVkIHN0YXRlIG92ZXJyaWRlcyAqL1xyXG4ucHJvamVjdC1saXN0LWl0ZW0uc2VsZWN0ZWQgLnByb2plY3QtY291bnQge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XHJcbn1cclxuXHJcbi5wcm9qZWN0LWxpc3QtaXRlbS5zZWxlY3RlZCAucHJvamVjdC1jb3VudC5hbGwtY29tcGxldGVkIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMyk7XHJcbn1cclxuXHJcbi5wcm9qZWN0cy10YXNrLWhlYWRlciB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtMikgdmFyKC0tc2l6ZS00LTQpO1xyXG5cdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0bWluLWhlaWdodDogdmFyKC0tc2l6ZS00LTEwKTtcclxufVxyXG5cclxuLnByb2plY3RzLWhlYWRlci1tYWluLWNvbnRlbnQge1xyXG5cdGZsZXg6IDE7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdGdhcDogdmFyKC0tc2l6ZS00LTIpO1xyXG59XHJcblxyXG4ucHJvamVjdHMtaGVhZGVyLXRvcC1yb3cge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblxyXG5cdHdpZHRoOiAxMDAlO1xyXG59XHJcblxyXG4ucHJvamVjdHMtaGVhZGVyLXRvcC1yaWdodCB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGdhcDogdmFyKC0tc2l6ZS00LTIpO1xyXG59XHJcblxyXG4vKiBQcm9ncmVzcyBiYXIgc3R5bGVzIGZvciBQcm9qZWN0cyB2aWV3ICovXHJcbi5wcm9qZWN0cy1oZWFkZXItcHJvZ3Jlc3Mge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRnYXA6IDZweDtcclxuXHRtYXJnaW4tdG9wOiA0cHg7XHJcbn1cclxuXHJcbi8qIEFkanVzdCB0aGUgZXhpc3RpbmcgcHJvZ3Jlc3MgYmFyIHN0eWxlcyB3aGVuIHVzZWQgaW4gcHJvamVjdHMgdmlldyAqL1xyXG4ucHJvamVjdHMtaGVhZGVyLXByb2dyZXNzIC5jbS10YXNrLXByb2dyZXNzLWJhciB7XHJcblx0ZGlzcGxheTogaW5saW5lLWZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRnYXA6IDhweDtcclxuXHR3aWR0aDogMTAwJTtcclxufVxyXG5cclxuLnByb2plY3RzLWhlYWRlci1wcm9ncmVzcyAucHJvZ3Jlc3MtYmFyLWlubGluZS1iYWNrZ3JvdW5kIHtcclxuXHRmbGV4OiAxO1xyXG5cdG1heC13aWR0aDogMTAwJTtcclxufVxyXG5cclxuLnByb2plY3RzLWhlYWRlci1wcm9ncmVzcyAucHJvZ3Jlc3Mtc3RhdHVzIHtcclxuXHRmb250LXNpemU6IDAuOWVtO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHR3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG59XHJcblxyXG4ucHJvamVjdHMtdGFzay10aXRsZSB7XHJcblx0Zm9udC13ZWlnaHQ6IDYwMDtcclxuXHRmb250LXNpemU6IDE2cHg7XHJcbn1cclxuXHJcbi5wcm9qZWN0cy10YXNrLWNvdW50IHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcbn1cclxuXHJcbi5wcm9qZWN0cy10YXNrLWxpc3Qge1xyXG5cdGZsZXg6IDE7XHJcblx0b3ZlcmZsb3cteTogYXV0bztcclxufVxyXG5cclxuLnByb2plY3RzLWVtcHR5LXN0YXRlIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0aGVpZ2h0OiAxMDAlO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRmb250LXN0eWxlOiBpdGFsaWM7XHJcblx0cGFkZGluZzogMTZweDtcclxufVxyXG5cclxuLyogUHJvamVjdHMgVmlldyAtIE1vYmlsZSAqL1xyXG4uaXMtcGhvbmUgLnByb2plY3RzLWxlZnQtY29sdW1uIHtcclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0bGVmdDogMDtcclxuXHR0b3A6IDA7XHJcblx0aGVpZ2h0OiAxMDAlO1xyXG5cdHotaW5kZXg6IDEwO1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcclxuXHR3aWR0aDogMTAwJTtcclxuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpO1xyXG5cdHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzIGVhc2UtaW4tb3V0O1xyXG5cdGJvcmRlci1yaWdodDogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxufVxyXG5cclxuLmlzLXBob25lIC5wcm9qZWN0cy1sZWZ0LWNvbHVtbi5pcy12aXNpYmxlIHtcclxuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XHJcbn1cclxuXHJcbi5pcy1waG9uZSAucHJvamVjdHMtc2lkZWJhci10b2dnbGUge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHRtYXJnaW4tcmlnaHQ6IDhweDtcclxufVxyXG5cclxuLmlzLXBob25lIC5wcm9qZWN0cy1zaWRlYmFyLWNsb3NlIHtcclxuXHQtLWljb24tc2l6ZTogdmFyKC0tc2l6ZS00LTQpO1xyXG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHR0b3A6IHZhcigtLXNpemUtNC0yKTtcclxuXHRyaWdodDogMTBweDtcclxuXHR6LWluZGV4OiAxNTtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbn1cclxuXHJcbi8qIEFkZCBvdmVybGF5IHdoZW4gbGVmdCBjb2x1bW4gaXMgdmlzaWJsZSBvbiBtb2JpbGUgKi9cclxuLmlzLXBob25lIC5wcm9qZWN0cy1jb250YWluZXI6aGFzKC5wcm9qZWN0cy1sZWZ0LWNvbHVtbi5pcy12aXNpYmxlKTo6YmVmb3JlIHtcclxuXHRjb250ZW50OiBcIlwiO1xyXG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHR0b3A6IDA7XHJcblx0bGVmdDogMDtcclxuXHR3aWR0aDogMTAwJTtcclxuXHRoZWlnaHQ6IDEwMCU7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1jb3Zlcik7XHJcblx0b3BhY2l0eTogMC41O1xyXG5cdHotaW5kZXg6IDU7XHJcblx0dHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzIGVhc2UtaW4tb3V0O1xyXG59XHJcblxyXG4vKiBBZGQgcG9zaXRpb24gcmVsYXRpdmUgdG8gY29udGFpbmVyIGZvciBhYnNvbHV0ZSBwb3NpdGlvbmluZyBjb250ZXh0ICovXHJcbi5pcy1waG9uZSAucHJvamVjdHMtY29udGFpbmVyIHtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0b3ZlcmZsb3c6IGhpZGRlbjtcclxufVxyXG5cclxuLmlzLXBob25lIC5wcm9qZWN0cy1zaWRlYmFyLWhlYWRlcjpoYXMoLnByb2plY3RzLXNpZGViYXItY2xvc2UpIHtcclxuXHRwYWRkaW5nLXJpZ2h0OiB2YXIoLS1zaXplLTQtMTIpO1xyXG59XHJcblxyXG4vKiBQcm9qZWN0IGluZm8gcG9wb3ZlciBzdHlsaW5nICovXHJcbi50Zy1wcm9qZWN0LXBvcG92ZXIge1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLW0pO1xyXG5cdGJveC1zaGFkb3c6IHZhcigtLXNoYWRvdy1zKTtcclxuXHRwYWRkaW5nOiAxMHB4IDEycHg7XHJcblx0bWF4LXdpZHRoOiA1MjBweDtcclxuXHRtYXgtaGVpZ2h0OiA2MHZoO1xyXG5cdG92ZXJmbG93OiBhdXRvO1xyXG59XHJcblxyXG4udGctcHJvamVjdC1wcm9wcyB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdGdhcDogNnB4O1xyXG59XHJcblxyXG4vKiBFYWNoIHJvdzoga2V5IG9uIHRoZSBsZWZ0LCB2YWx1ZSBvbiB0aGUgcmlnaHQgKi9cclxuLnRnLXByb2plY3QtcHJvcHMgPiBkaXYge1xyXG5cdGRpc3BsYXk6IGdyaWQ7XHJcblx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBtaW5tYXgoOTBweCwgMTYwcHgpIDFmcjtcclxuXHRhbGlnbi1pdGVtczogc3RhcnQ7XHJcblx0Y29sdW1uLWdhcDogMTBweDtcclxuXHRwYWRkaW5nOiAycHggMDtcclxufVxyXG5cclxuLyogS2V5IGNlbGwgKi9cclxuLnRnLXByb2plY3QtcHJvcHMgPiBkaXYgPiBkaXY6Zmlyc3QtY2hpbGQge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRmb250LXNpemU6IDEycHg7XHJcblx0bGluZS1oZWlnaHQ6IDEuMztcclxuXHR3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcblx0dGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XHJcbn1cclxuXHJcbi8qIFZhbHVlIGNlbGwgKi9cclxuLnRnLXByb2plY3QtcHJvcHMgPiBkaXYgPiBkaXY6bGFzdC1jaGlsZCB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxuXHRsaW5lLWhlaWdodDogMS40O1xyXG5cdHdoaXRlLXNwYWNlOiBwcmUtd3JhcDtcclxuXHR3b3JkLWJyZWFrOiBicmVhay13b3JkO1xyXG59XHJcblxyXG4vKiBJbmZvIGJ1dHRvbiBwb2xpc2ggKi9cclxuLnByb2plY3RzLXByb3BzLWJ0biB7XHJcblx0ZGlzcGxheTogaW5saW5lLWZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHR3aWR0aDogdmFyKC0taWNvbi1zaXplLCAyNHB4KTtcclxuXHRoZWlnaHQ6IHZhcigtLWljb24tc2l6ZSwgMjRweCk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XHJcbn1cclxuLnByb2plY3RzLXByb3BzLWJ0bjpob3ZlciB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3Zlcik7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxufVxyXG4iLCAiLyoqXHJcbiAqIFByb2plY3QgVHJlZSBWaWV3IFN0eWxlc1xyXG4gKi9cclxuXHJcbjpyb290IHtcclxuXHQvKiBEZWZhdWx0IHRyZWUgaW5kZW50YXRpb24gc2l6ZSBwZXIgbGV2ZWwgKi9cclxuXHQtLXRyZWUtaW5kZW50LXNpemU6IDEuNXJlbTtcclxuXHQvKiBHdWlkZSBsaW5lIGNvbG9yICovXHJcblx0LS10cmVlLWd1aWRlLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcbn1cclxuXHJcbi8qIENvbnRhaW5lciAqL1xyXG4ucHJvamVjdC10cmVlLWNvbnRhaW5lciB7XHJcblx0aGVpZ2h0OiAxMDAlO1xyXG5cdG92ZXJmbG93OiBhdXRvO1xyXG59XHJcblxyXG4ucHJvamVjdC10cmVlIHtcclxuXHRwYWRkaW5nOiAwLjVyZW0gMDtcclxufVxyXG5cclxuLyogVHJlZSBJdGVtIEJhc2UgKi9cclxuLnByb2plY3QtdHJlZS1pdGVtIHtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0dXNlci1zZWxlY3Q6IG5vbmU7XHJcblx0LS10cmVlLWxldmVsOiAwOyAvKiBEZWZhdWx0IGxldmVsLCB3aWxsIGJlIG92ZXJyaWRkZW4gYnkgaW5saW5lIHN0eWxlICovXHJcbn1cclxuXHJcbi5wcm9qZWN0LXRyZWUtaXRlbS1jb250ZW50IHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0cGFkZGluZzogOHB4O1xyXG5cdHBhZGRpbmctbGVmdDogY2FsYyhjYWxjKHZhcigtLXRyZWUtbGV2ZWwpIC0gMSkgKiB2YXIoLS10cmVlLWluZGVudC1zaXplKSk7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zKTtcclxuXHR0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMTVzIGVhc2U7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG59XHJcblxyXG4ucHJvamVjdC10cmVlLWl0ZW0tY29udGVudDpob3ZlciB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3Zlcik7XHJcbn1cclxuXHJcbi8qIFNlbGVjdGVkIFN0YXRlICovXHJcbi5wcm9qZWN0LXRyZWUtaXRlbS5pcy1zZWxlY3RlZCA+IC5wcm9qZWN0LXRyZWUtaXRlbS1jb250ZW50IHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWFjdGl2ZS1ob3Zlcik7XHJcbn1cclxuXHJcbi8qIFRvZ2dsZSBCdXR0b24gKi9cclxuLnByb2plY3QtdHJlZS1pdGVtLXRvZ2dsZSB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdHdpZHRoOiAxLjVyZW07XHJcblx0aGVpZ2h0OiAxLjVyZW07XHJcblx0ZmxleC1zaHJpbms6IDA7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHR0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4xNXMgZWFzZTtcclxufVxyXG5cclxuLnByb2plY3QtdHJlZS1pdGVtLXRvZ2dsZTpob3ZlciB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxufVxyXG5cclxuLnByb2plY3QtdHJlZS1pdGVtLXRvZ2dsZSBzdmcge1xyXG5cdHdpZHRoOiAwLjg3NXJlbTtcclxuXHRoZWlnaHQ6IDAuODc1cmVtO1xyXG59XHJcblxyXG4ucHJvamVjdC10cmVlLWl0ZW0tdG9nZ2xlLXNwYWNlciB7XHJcblx0d2lkdGg6IDEuNXJlbTtcclxuXHRmbGV4LXNocmluazogMDtcclxufVxyXG5cclxuLyogSWNvbiAqL1xyXG4ucHJvamVjdC10cmVlLWl0ZW0taWNvbiB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdHdpZHRoOiAxLjI1cmVtO1xyXG5cdGhlaWdodDogMS4yNXJlbTtcclxuXHRtYXJnaW4tcmlnaHQ6IDAuNXJlbTtcclxuXHRmbGV4LXNocmluazogMDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcbn1cclxuXHJcbi8qIENvbnRlbnQgV3JhcHBlciAqL1xyXG4ucHJvamVjdC10cmVlLWl0ZW0tY29udGVudC13cmFwcGVyIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG5cdGZsZXg6IDE7XHJcblx0bWluLXdpZHRoOiAwO1xyXG5cdGdhcDogMC41cmVtO1xyXG59XHJcblxyXG4vKiBQcm9qZWN0IE5hbWUgKi9cclxuLnByb2plY3QtdHJlZS1pdGVtLW5hbWUge1xyXG5cdGZsZXg6IDE7XHJcblx0bWluLXdpZHRoOiAwO1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcblx0dGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XHJcblx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcclxufVxyXG5cclxuLyogVGFzayBDb3VudHMgKi9cclxuLnByb2plY3QtdHJlZS1pdGVtLWNvdW50cyB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGdhcDogMC4yNXJlbTtcclxufVxyXG5cclxuLnByb2plY3QtdHJlZS1pdGVtLWNvdW50LWRpcmVjdCxcclxuLnByb2plY3QtdHJlZS1pdGVtLWNvdW50LXRvdGFsIHtcclxuXHRkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdG1pbi13aWR0aDogMS4yNXJlbTtcclxuXHRoZWlnaHQ6IDEuMjVyZW07XHJcblx0cGFkZGluZzogMCAwLjI1cmVtO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zKTtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGxlcik7XHJcblx0Zm9udC13ZWlnaHQ6IDUwMDtcclxufVxyXG5cclxuLnByb2plY3QtdHJlZS1pdGVtLWNvdW50LWRpcmVjdCB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1hY3RpdmUpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcblx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuXHR0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMnMgZWFzZSwgY29sb3IgMC4ycyBlYXNlO1xyXG59XHJcblxyXG4ucHJvamVjdC10cmVlLWl0ZW0tY291bnQtdG90YWwge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuXHR0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMnMgZWFzZSwgY29sb3IgMC4ycyBlYXNlO1xyXG59XHJcblxyXG4vKiBQcm9ncmVzcyBjb3VudCBzdHlsaW5nIGZvciB0cmVlIHZpZXcgKi9cclxuLnByb2plY3QtdHJlZS1pdGVtLWNvdW50LWRpcmVjdC5wYXJ0aWFsbHktY29tcGxldGVkLFxyXG4ucHJvamVjdC10cmVlLWl0ZW0tY291bnQtdG90YWwucGFydGlhbGx5LWNvbXBsZXRlZCB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtc3VjY2Vzcyk7XHJcbn1cclxuXHJcbi5wcm9qZWN0LXRyZWUtaXRlbS1jb3VudC1kaXJlY3QuYWxsLWNvbXBsZXRlZCxcclxuLnByb2plY3QtdHJlZS1pdGVtLWNvdW50LXRvdGFsLmFsbC1jb21wbGV0ZWQge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWludGVyYWN0aXZlLXN1Y2Nlc3MpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XHJcblx0Zm9udC13ZWlnaHQ6IDYwMDtcclxufVxyXG5cclxuLyogU2VsZWN0ZWQgc3RhdGUgZm9yIGNvdW50IGJhZGdlcyBpbiB0cmVlICovXHJcbi5wcm9qZWN0LXRyZWUtaXRlbS5pcy1zZWxlY3RlZCAucHJvamVjdC10cmVlLWl0ZW0tY291bnQtZGlyZWN0LmFsbC1jb21wbGV0ZWQsXHJcbi5wcm9qZWN0LXRyZWUtaXRlbS5pcy1zZWxlY3RlZCAucHJvamVjdC10cmVlLWl0ZW0tY291bnQtdG90YWwuYWxsLWNvbXBsZXRlZCB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtc3VjY2Vzcyk7XHJcblx0b3BhY2l0eTogMC45O1xyXG59XHJcblxyXG4vKiBDaGlsZHJlbiBDb250YWluZXIgKi9cclxuLnByb2plY3QtdHJlZS1jaGlsZHJlbiB7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG59XHJcblxyXG4vKiBUcmVlIGd1aWRlIGxpbmVzIChvcHRpb25hbCkgKi9cclxuLnByb2plY3QtdHJlZS1pdGVtW2RhdGEtbGV2ZWxdOm5vdChbZGF0YS1sZXZlbD1cIjBcIl0pID4gLnByb2plY3QtdHJlZS1pdGVtLWNvbnRlbnQ6OmJlZm9yZSB7XHJcblx0Y29udGVudDogJyc7XHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdGxlZnQ6IGNhbGMoMC41cmVtICsgKHZhcigtLXRyZWUtbGV2ZWwpIC0gMSkgKiB2YXIoLS10cmVlLWluZGVudC1zaXplKSArIDAuNzVyZW0pO1xyXG5cdHRvcDogMDtcclxuXHRib3R0b206IDA7XHJcblx0d2lkdGg6IDFweDtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS10cmVlLWd1aWRlLWNvbG9yKTtcclxuXHRvcGFjaXR5OiAwLjM7XHJcbn1cclxuXHJcbi5wcm9qZWN0LXRyZWUtaXRlbS1jaGlsZHJlbiB7XHJcblx0b3ZlcmZsb3c6IGhpZGRlbjtcclxuXHR0cmFuc2l0aW9uOiBtYXgtaGVpZ2h0IDAuMnMgZWFzZTtcclxufVxyXG5cclxuLnByb2plY3QtdHJlZS1pdGVtLWNoaWxkcmVuOm5vdCguaXMtZXhwYW5kZWQpIHtcclxuXHRtYXgtaGVpZ2h0OiAwO1xyXG59XHJcblxyXG4vKiBFbXB0eSBTdGF0ZSAqL1xyXG4ucHJvamVjdC10cmVlLWVtcHR5IHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0cGFkZGluZzogMnJlbTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsKTtcclxufVxyXG5cclxuLyogVmlldyBUb2dnbGUgQnV0dG9uICovXHJcbi5wcm9qZWN0cy12aWV3LXRvZ2dsZS1idG4ge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHR3aWR0aDogMS43NXJlbTtcclxuXHRoZWlnaHQ6IDEuNzVyZW07XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpO1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0dHJhbnNpdGlvbjogYWxsIDAuMTVzIGVhc2U7XHJcbn1cclxuXHJcbi5wcm9qZWN0cy12aWV3LXRvZ2dsZS1idG46aG92ZXIge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcbn1cclxuXHJcbi5wcm9qZWN0cy12aWV3LXRvZ2dsZS1idG4gc3ZnIHtcclxuXHR3aWR0aDogMXJlbTtcclxuXHRoZWlnaHQ6IDFyZW07XHJcbn1cclxuXHJcbi8qIE11bHRpLXNlbGVjdCBNb2RlIEluZGljYXRvciAqL1xyXG4ucHJvamVjdC10cmVlLWNvbnRhaW5lci5tdWx0aS1zZWxlY3QtbW9kZSAucHJvamVjdC10cmVlLWl0ZW0tY29udGVudCB7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG59XHJcblxyXG4ucHJvamVjdC10cmVlLWNvbnRhaW5lci5tdWx0aS1zZWxlY3QtbW9kZSAucHJvamVjdC10cmVlLWl0ZW0tY29udGVudDo6YmVmb3JlIHtcclxuXHRjb250ZW50OiAnJztcclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0bGVmdDogMC4yNXJlbTtcclxuXHR0b3A6IDUwJTtcclxuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XHJcblx0d2lkdGg6IDAuODc1cmVtO1xyXG5cdGhlaWdodDogMC44NzVyZW07XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXItaG92ZXIpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zKTtcclxufVxyXG5cclxuLnByb2plY3QtdHJlZS1jb250YWluZXIubXVsdGktc2VsZWN0LW1vZGUgLnByb2plY3QtdHJlZS1pdGVtLmlzLXNlbGVjdGVkIC5wcm9qZWN0LXRyZWUtaXRlbS1jb250ZW50OjpiZWZvcmUge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcblx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG59XHJcblxyXG4ucHJvamVjdC10cmVlLWNvbnRhaW5lci5tdWx0aS1zZWxlY3QtbW9kZSAucHJvamVjdC10cmVlLWl0ZW0uaXMtc2VsZWN0ZWQgLnByb2plY3QtdHJlZS1pdGVtLWNvbnRlbnQ6OmFmdGVyIHtcclxuXHRjb250ZW50OiAn4pyTJztcclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0bGVmdDogMC4yNXJlbTtcclxuXHR0b3A6IDUwJTtcclxuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XHJcblx0d2lkdGg6IDAuODc1cmVtO1xyXG5cdGhlaWdodDogMC44NzVyZW07XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XHJcblx0Zm9udC1zaXplOiAwLjYyNXJlbTtcclxuXHRmb250LXdlaWdodDogYm9sZDtcclxufVxyXG5cclxuLyogRGFyayBUaGVtZSBBZGp1c3RtZW50cyAqL1xyXG4udGhlbWUtZGFyayAucHJvamVjdC10cmVlLWl0ZW0tY291bnQtZGlyZWN0IHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWFjdGl2ZS1ob3Zlcik7XHJcbn1cclxuXHJcbi50aGVtZS1kYXJrIC5wcm9qZWN0LXRyZWUtaXRlbS1jb3VudC10b3RhbCB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXItaG92ZXIpO1xyXG59XHJcblxyXG4vKiBSZXNwb25zaXZlICovXHJcbkBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xyXG5cdC5wcm9qZWN0LXRyZWUtaXRlbS1jb250ZW50IHtcclxuXHRcdHBhZGRpbmc6IDAuMzc1cmVtIDAuNXJlbTtcclxuXHR9XHJcbn1cclxuXHJcbi8qIEFuaW1hdGlvbiBmb3IgdHJlZSBleHBhbnNpb24gKi9cclxuQGtleWZyYW1lcyBzbGlkZURvd24ge1xyXG5cdGZyb20ge1xyXG5cdFx0b3BhY2l0eTogMDtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMC41cmVtKTtcclxuXHR9XHJcblx0dG8ge1xyXG5cdFx0b3BhY2l0eTogMTtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcclxuXHR9XHJcbn1cclxuXHJcbi5wcm9qZWN0LXRyZWUtaXRlbS1jaGlsZHJlbiA+IC5wcm9qZWN0LXRyZWUtaXRlbSB7XHJcblx0YW5pbWF0aW9uOiBzbGlkZURvd24gMC4xNXMgZWFzZTtcclxufVxyXG4iLCAiLyogUHJvamVjdHMgVmlldyBTdHlsZXMgKi9cbi5yZXZpZXctY29udGFpbmVyIHtcblx0ZGlzcGxheTogZmxleDtcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0aGVpZ2h0OiAxMDAlO1xuXHR3aWR0aDogMTAwJTtcblx0b3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLnJldmlldy1jb250ZW50IHtcblx0ZGlzcGxheTogZmxleDtcblx0ZmxleC1kaXJlY3Rpb246IHJvdztcblx0ZmxleDogMTtcblx0b3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLnJldmlldy1sZWZ0LWNvbHVtbiB7XG5cdHdpZHRoOiAyNTBweDtcblx0bWluLXdpZHRoOiAyMDBweDtcblx0bWF4LXdpZHRoOiAzMDBweDtcblx0ZGlzcGxheTogZmxleDtcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0Ym9yZGVyLXJpZ2h0OiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xuXHRvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4uaXMtcGhvbmUgLnJldmlldy1sZWZ0LWNvbHVtbiB7XG5cdG1heC13aWR0aDogMTAwJTtcbn1cblxuLnJldmlldy1yaWdodC1jb2x1bW4ge1xuXHRmbGV4OiAxO1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4ucmV2aWV3LXNpZGViYXItaGVhZGVyIHtcblx0ZGlzcGxheTogZmxleDtcblx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtMikgdmFyKC0tc2l6ZS00LTQpO1xuXHRib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xuXHRoZWlnaHQ6IHZhcigtLXNpemUtNC0xMCk7XG59XG5cbi5yZXZpZXctc2lkZWJhci10aXRsZSB7XG5cdGZvbnQtd2VpZ2h0OiA2MDA7XG5cdGZvbnQtc2l6ZTogMTRweDtcbn1cblxuLnJldmlldy1tdWx0aS1zZWxlY3QtYnRuIHtcblx0Y3Vyc29yOiBwb2ludGVyO1xuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XG5cblx0ZGlzcGxheTogZmxleDtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG5cbi5yZXZpZXctbXVsdGktc2VsZWN0LWJ0bjpob3ZlciB7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XG59XG5cbi5yZXZpZXctc2lkZWJhci1saXN0IHtcblx0ZmxleDogMTtcblx0b3ZlcmZsb3cteTogYXV0bztcblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTIpO1xufVxuXG4vKiBQcm9qZWN0IGdyb3VwIGhlYWRlcnMgKi9cbi5yZXZpZXctcHJvamVjdHMtZ3JvdXAtaGVhZGVyIHtcblx0Zm9udC1zaXplOiAxMHB4O1xuXHRmb250LXdlaWdodDogNjAwO1xuXHRjb2xvcjogdmFyKC0tdGV4dC1mYWludCk7XG5cdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cdHBhZGRpbmc6IDRweCA4cHggNHB4O1xuXHRtYXJnaW4tdG9wOiAxMnB4O1xuXHRsZXR0ZXItc3BhY2luZzogMC41cHg7XG59XG5cbi5yZXZpZXctcHJvamVjdHMtZ3JvdXAtaGVhZGVyOmZpcnN0LWNoaWxkIHtcblx0bWFyZ2luLXRvcDogNHB4O1xufVxuXG4vKiBQcm9qZWN0IGl0ZW1zIGluIHRoZSBzaWRlYmFyICovXG4ucmV2aWV3LXByb2plY3QtaXRlbSB7XG5cdC0taWNvbi1zaXplOiB2YXIoLS1zaXplLTQtNCk7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdHBhZGRpbmc6IDRweCA4cHg7XG5cdGN1cnNvcjogcG9pbnRlcjtcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpO1xuXHRtYXJnaW4tYm90dG9tOiAycHg7XG59XG5cbi5yZXZpZXctcHJvamVjdC1pdGVtOmhvdmVyIHtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3Zlcik7XG59XG5cbi5yZXZpZXctcHJvamVjdC1pdGVtLnNlbGVjdGVkIHtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1hY3RpdmUpO1xufVxuXG4vKiBQcm9qZWN0cyB3aXRoIHJldmlldyBzZXR0aW5ncyAqL1xuLnJldmlldy1wcm9qZWN0LWl0ZW0uaGFzLXJldmlldy1zZXR0aW5ncyAucmV2aWV3LXByb2plY3QtaWNvbiB7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LWFjY2VudCk7XG59XG5cbi5yZXZpZXctcHJvamVjdC1pdGVtLmhhcy1yZXZpZXctc2V0dGluZ3MgLnJldmlldy1wcm9qZWN0LW5hbWUge1xuXHRmb250LXdlaWdodDogNTAwO1xufVxuXG4vKiBQcm9qZWN0cyB3aXRob3V0IHJldmlldyBzZXR0aW5ncyAqL1xuLnJldmlldy1wcm9qZWN0LWl0ZW06bm90KC5oYXMtcmV2aWV3LXNldHRpbmdzKSAucmV2aWV3LXByb2plY3QtaWNvbiB7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcbn1cblxuLnJldmlldy1wcm9qZWN0LWljb24ge1xuXHRtYXJnaW4tcmlnaHQ6IDhweDtcblx0ZGlzcGxheTogZmxleDtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG5cbi5yZXZpZXctcHJvamVjdC1uYW1lIHtcblx0ZmxleDogMTtcblx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcblx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0dGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG59XG5cbi5yZXZpZXctdGFzay1oZWFkZXIge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtNCk7XG5cdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XG59XG5cbi5pcy1waG9uZSAucmV2aWV3LXRhc2staGVhZGVyIHtcblx0ZmxleC1kaXJlY3Rpb246IHJvdztcblx0YWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG59XG5cbi5yZXZpZXctaGVhZGVyLWNvbnRlbnQgaDMge1xuXHRtYXJnaW46IDAgMCA4cHggMDtcblx0cGFkZGluZzogMDtcbn1cblxuLnJldmlldy1pbmZvIHtcblx0ZGlzcGxheTogZmxleDtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xuXHRmb250LXNpemU6IDAuOWVtO1xufVxuXG4ucmV2aWV3LXNlcGFyYXRvciB7XG5cdG1hcmdpbjogMCA4cHg7XG59XG5cbi5yZXZpZXctZnJlcXVlbmN5IHtcblx0Y29sb3I6IHZhcigtLXRleHQtYWNjZW50KTtcbn1cblxuLnJldmlldy1mcmVxdWVuY3k6aG92ZXIge1xuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xuXHR0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbn1cblxuLnJldmlldy1sYXN0LWRhdGUge1xuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xufVxuXG4ucmV2aWV3LW5vLXNldHRpbmdzIHtcblx0Zm9udC1zdHlsZTogaXRhbGljO1xufVxuXG4vKiBGaWx0ZXIgaW5mb3JtYXRpb24gKi9cbi5yZXZpZXctZmlsdGVyLWluZm8ge1xuXHRtYXJnaW4tdG9wOiAxMHB4O1xuXHRwYWRkaW5nOiA2cHggMTBweDtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XG5cdGZvbnQtc2l6ZTogMC44NWVtO1xuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XG5cdGJvcmRlci1sZWZ0OiAzcHggc29saWQgdmFyKC0tdGV4dC1hY2NlbnQpO1xufVxuXG4ucmV2aWV3LWZpbHRlci10b2dnbGUge1xuXHRjdXJzb3I6IHBvaW50ZXI7XG5cdHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuXHRjb2xvcjogdmFyKC0tdGV4dC1hY2NlbnQpO1xuXHRtYXJnaW4tbGVmdDogNXB4O1xufVxuXG4ucmV2aWV3LWZpbHRlci10b2dnbGU6aG92ZXIge1xuXHRjb2xvcjogdmFyKC0tdGV4dC1hY2NlbnQtaG92ZXIpO1xufVxuXG4ucmV2aWV3LXRhc2stbGlzdCB7XG5cdGZsZXg6IDE7XG5cdG92ZXJmbG93LXk6IGF1dG87XG5cdHBhZGRpbmc6IHZhcigtLXNpemUtNC0yKTtcbn1cblxuLnJldmlldy1lbXB0eS1zdGF0ZSB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXHRoZWlnaHQ6IDEwMCU7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcblx0Zm9udC1zdHlsZTogaXRhbGljO1xuXHRwYWRkaW5nOiAxNnB4O1xuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi8qIFJldmlldyBidXR0b25zICovXG4ucmV2aWV3LWJ1dHRvbi1jb250YWluZXIge1xuXHRtYXJnaW4tdG9wOiAxMnB4O1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG59XG5cbi5yZXZpZXctY29tcGxldGUtYnRuLFxuLnJldmlldy1jb25maWd1cmUtYnRuIHtcblx0cGFkZGluZzogNnB4IDEycHg7XG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zKTtcblx0Y3Vyc29yOiBwb2ludGVyO1xuXHRmb250LXNpemU6IDAuOWVtO1xuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcbn1cblxuLnJldmlldy1jb21wbGV0ZS1idG4ge1xuXHRjb2xvcjogdmFyKC0tdGV4dC1hY2NlbnQpO1xufVxuXG4ucmV2aWV3LWNvbXBsZXRlLWJ0bjpob3ZlciB7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpO1xuXHRjb2xvcjogdmFyKC0tdGV4dC1hY2NlbnQpO1xufVxuXG4ucmV2aWV3LWNvbmZpZ3VyZS1idG4ge1xuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XG59XG5cbi5yZXZpZXctY29uZmlndXJlLWJ0bjpob3ZlciB7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpO1xuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xufVxuXG4ucmV2aWV3LWVkaXQtYnRuIHtcblx0Y29sb3I6IHZhcigtLXRleHQtYWNjZW50LWhvdmVyKTtcblx0bWFyZ2luLWxlZnQ6IDhweDtcbn1cblxuLnJldmlldy1lZGl0LWJ0bjpob3ZlciB7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpO1xuXHRjb2xvcjogdmFyKC0tdGV4dC1hY2NlbnQtaG92ZXIpO1xufVxuXG4vKiBSZXZpZXcgQ29uZmlndXJlIE1vZGFsICovXG4ucmV2aWV3LW1vZGFsLXRpdGxlIHtcblx0bWFyZ2luLXRvcDogMDtcblx0bWFyZ2luLWJvdHRvbTogMjBweDtcblx0Zm9udC1zaXplOiAxLjVlbTtcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcblx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcblx0cGFkZGluZy1ib3R0b206IDEwcHg7XG59XG5cbi5yZXZpZXctbW9kYWwtZm9ybSB7XG5cdG1hcmdpbi1ib3R0b206IDIwcHg7XG59XG5cbi5yZXZpZXctbW9kYWwtZmllbGQge1xuXHRtYXJnaW4tYm90dG9tOiAxNnB4O1xufVxuXG4ucmV2aWV3LW1vZGFsLWxhYmVsIHtcblx0ZGlzcGxheTogYmxvY2s7XG5cdGZvbnQtd2VpZ2h0OiA2MDA7XG5cdG1hcmdpbi1ib3R0b206IDRweDtcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcbn1cblxuLnJldmlldy1tb2RhbC1kZXNjcmlwdGlvbiB7XG5cdGZvbnQtc2l6ZTogMC45ZW07XG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcblx0bWFyZ2luLWJvdHRvbTogOHB4O1xufVxuXG4ucmV2aWV3LW1vZGFsLXNlbGVjdCB7XG5cdHdpZHRoOiAxMDAlO1xuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcblx0Zm9udC1zaXplOiAxNHB4O1xufVxuXG4ucmV2aWV3LW1vZGFsLWN1c3RvbS1mcmVxdWVuY3kge1xuXHRtYXJnaW4tdG9wOiA4cHg7XG59XG5cbi5yZXZpZXctbW9kYWwtaW5wdXQge1xuXHR3aWR0aDogMTAwJTtcblx0cGFkZGluZzogOHB4O1xuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcblx0Zm9udC1zaXplOiAxNHB4O1xufVxuXG4ucmV2aWV3LW1vZGFsLWxhc3QtcmV2aWV3ZWQge1xuXHRwYWRkaW5nOiA4cHg7XG5cdGZvbnQtc2l6ZTogMTRweDtcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XG59XG5cbi5yZXZpZXctbW9kYWwtYnV0dG9ucyB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG5cdG1hcmdpbi10b3A6IDI0cHg7XG5cdGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XG5cdHBhZGRpbmctdG9wOiAxNnB4O1xufVxuXG4ucmV2aWV3LW1vZGFsLWJ1dHRvbiB7XG5cdHBhZGRpbmc6IDhweCAxNnB4O1xuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XG5cdGZvbnQtc2l6ZTogMTRweDtcblx0Y3Vyc29yOiBwb2ludGVyO1xuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XG59XG5cbi5yZXZpZXctbW9kYWwtYnV0dG9uLWNhbmNlbCB7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xuXHRtYXJnaW4tcmlnaHQ6IDhweDtcbn1cblxuLnJldmlldy1tb2RhbC1idXR0b24tY2FuY2VsOmhvdmVyIHtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3Zlcik7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XG59XG5cbi5yZXZpZXctbW9kYWwtYnV0dG9uLXNhdmUge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xuXHRjb2xvcjogdmFyKC0tdGV4dC1vbi1hY2NlbnQpO1xufVxuXG4ucmV2aWV3LW1vZGFsLWJ1dHRvbi1zYXZlOmhvdmVyIHtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50LWhvdmVyKTtcbn1cblxuLyogUmV2aWV3IFZpZXcgLSBNb2JpbGUgKi9cbi5pcy1waG9uZSAucmV2aWV3LWNvbnRhaW5lciB7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0b3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLmlzLXBob25lIC5yZXZpZXctbGVmdC1jb2x1bW4ge1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdGxlZnQ6IDA7XG5cdHRvcDogMDtcblx0aGVpZ2h0OiAxMDAlO1xuXHR6LWluZGV4OiAxMDtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xuXHR3aWR0aDogMTAwJTtcblx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTtcblx0dHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuM3MgZWFzZS1pbi1vdXQ7XG5cdGJvcmRlci1yaWdodDogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcbn1cblxuLmlzLXBob25lIC5yZXZpZXctbGVmdC1jb2x1bW4uaXMtdmlzaWJsZSB7XG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbn1cblxuLmlzLXBob25lIC5yZXZpZXctc2lkZWJhci10b2dnbGUge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0bWFyZ2luLXJpZ2h0OiA4cHg7XG59XG5cbi5pcy1waG9uZSAucmV2aWV3LXNpZGViYXItY2xvc2Uge1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdHRvcDogdmFyKC0tc2l6ZS0yLTIpO1xuXHRyaWdodDogMTBweDtcblx0ei1pbmRleDogMTU7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuXG4vKiBBZGQgb3ZlcmxheSB3aGVuIGxlZnQgY29sdW1uIGlzIHZpc2libGUgb24gbW9iaWxlICovXG4uaXMtcGhvbmUgLnJldmlldy1jb250YWluZXI6aGFzKC5yZXZpZXctbGVmdC1jb2x1bW4uaXMtdmlzaWJsZSk6OmJlZm9yZSB7XG5cdGNvbnRlbnQ6IFwiXCI7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0dG9wOiAwO1xuXHRsZWZ0OiAwO1xuXHR3aWR0aDogMTAwJTtcblx0aGVpZ2h0OiAxMDAlO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWNvdmVyKTtcblx0b3BhY2l0eTogMC41O1xuXHR6LWluZGV4OiA1O1xuXHR0cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3MgZWFzZS1pbi1vdXQ7XG59XG4iLCAiLnRnLWhhYml0LWNvbXBvbmVudC1jb250YWluZXIge1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0Z2FwOiAxcmVtOyAvKiBnYXAtNCAqL1xyXG5cdHBhZGRpbmc6IDFyZW07IC8qIHAtNCAqL1xyXG5cdGhlaWdodDogMTAwJTsgLyogQWxsb3cgc2Nyb2xsaW5nIGlmIGNvbnRlbnQgb3ZlcmZsb3dzICovXHJcblx0b3ZlcmZsb3cteTogYXV0bztcclxufVxyXG5cclxuLyogPT09IEhhYml0IExpc3QgQ29udGFpbmVyID09PSAqL1xyXG4uaGFiaXQtbGlzdC1jb250YWluZXIge1xyXG5cdGRpc3BsYXk6IGdyaWQ7XHJcblx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMSwgbWlubWF4KDAsIDFmcikpO1xyXG5cdGdhcDogMXJlbTsgLyogZ2FwLTQgKi9cclxuXHR3aWR0aDogMTAwJTtcclxufVxyXG5cclxuLyog5bCP5bGP5bmV6K6+5aSHICovXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ4MHB4KSB7XHJcblx0LmhhYml0LWxpc3QtY29udGFpbmVyIHtcclxuXHRcdHBhZGRpbmc6IDAuNXJlbTtcclxuXHRcdGdhcDogMC43NXJlbTtcclxuXHR9XHJcbn1cclxuXHJcbi8qIOS4reetieWxj+W5leiuvuWkhyB+NzY4cHggKi9cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcclxuXHQuaGFiaXQtbGlzdC1jb250YWluZXIge1xyXG5cdFx0bWFyZ2luLWxlZnQ6IGF1dG87XHJcblx0XHRtYXJnaW4tcmlnaHQ6IGF1dG87XHJcblx0XHRtYXgtd2lkdGg6IDQwMHB4O1xyXG5cdFx0ZGlzcGxheTogZmxleDtcclxuXHRcdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0fVxyXG59XHJcblxyXG4vKiDlpKflsY/luZXorr7lpIcgKi9cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XHJcblx0LmhhYml0LWxpc3QtY29udGFpbmVyIHtcclxuXHRcdG1heC13aWR0aDogNTAwcHg7XHJcblx0fVxyXG59XHJcbi8qIEFkanVzdCBtYXgtd2lkdGgvY29sdW1ucyBiYXNlZCBvbiBkZXNpcmVkIGxheW91dCAqL1xyXG5cclxuLmhhYml0LWNhcmQtd3JhcHBlciB7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0bWluLWhlaWdodDogZml0LWNvbnRlbnQ7XHJcbn1cclxuXHJcbi8qID09PSBDcmVhdGUgSGFiaXQgQnV0dG9uID09PSAqL1xyXG4uaGFiaXQtY3JlYXRlLWJ1dHRvbi1jb250YWluZXIge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0anVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xyXG59XHJcblxyXG4vKiA9PT0gQmFzZSBDYXJkIFN0eWxlcyA9PT0gKi9cclxuLmhhYml0LWNhcmQge1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtbSk7IC8qIFN0YW5kYXJkIG1lZGl1bSByYWRpdXMgKi9cclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgLyogU3RhY2sgaGVhZGVyIGFuZCBjb250ZW50ICovXHJcblx0d2lkdGg6IDEwMCU7XHJcblx0aGVpZ2h0OiAxMDAlO1xyXG5cdG1pbi1oZWlnaHQ6IGZpdC1jb250ZW50O1xyXG59XHJcblxyXG4uaGFiaXQtY2FyZCAuY2FyZC1oZWFkZXIge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblx0cGFkZGluZzogMC41cmVtIDFyZW07XHJcblx0Z2FwOiAwLjVyZW07XHJcblx0LyogYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTsgKi9cclxufVxyXG5cclxuLmhhYml0LWNhcmQgLmNhcmQtdGl0bGUge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRnYXA6IDAuNXJlbTsgLyogZ2FwLTIgKi9cclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktbGFyZ2UpOyAvKiBMYXJnZXIgVUkgZm9udCAqL1xyXG5cdGZvbnQtd2VpZ2h0OiA2MDA7IC8qIGZvbnQtc2VtaWJvbGQgKi9cclxuXHRmbGV4LWdyb3c6IDE7IC8qIEFsbG93IHRpdGxlIHRvIHRha2Ugc3BhY2UgKi9cclxuXHRvdmVyZmxvdzogaGlkZGVuOyAvKiBQcmV2ZW50IGxvbmcgbmFtZXMgYnJlYWtpbmcgbGF5b3V0ICovXHJcblx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuXHR0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcclxufVxyXG5cclxuLmhhYml0LW5hbWUuaGFiaXQtbmFtZTpob3ZlciB7XHJcblx0LyogU3BlY2lmaWNpdHkgZm9yIGhvdmVyICovXHJcblx0dGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG59XHJcblxyXG4uaGFiaXQtY2FyZCAuY2FyZC1jb250ZW50LXdyYXBwZXIge1xyXG5cdHBhZGRpbmc6IDAuNzVyZW0gMXJlbTsgLyogQ29uc2lzdGVudCBwYWRkaW5nICovXHJcblx0ZmxleC1ncm93OiAxOyAvKiBBbGxvdyBjb250ZW50IHRvIGZpbGwgc3BhY2UgKi9cclxuXHQvKiBMYXlvdXQgc3BlY2lmaWNzIGRlZmluZWQgcGVyIGNhcmQgdHlwZSAqL1xyXG59XHJcblxyXG4vKiA9PT0gRGFpbHkgSGFiaXQgQ2FyZCA9PT0gKi9cclxuLmRhaWx5LWhhYml0LWNhcmQgLmNhcmQtaGVhZGVyIHtcclxuXHQvKiBObyBib3JkZXIgbmVlZGVkIGlmIGNoZWNrYm94IGlzIG1haW4gYWN0aW9uICovXHJcblx0LyogYm9yZGVyLWJvdHRvbTogbm9uZTsgKi9cclxufVxyXG4uZGFpbHktaGFiaXQtY2FyZCAuaGFiaXQtY2hlY2tib3gtY29udGFpbmVyIHtcclxuXHQvKiBTdHlsZSBjb250YWluZXIgaWYgbmVlZGVkICovXHJcbn1cclxuLmRhaWx5LWhhYml0LWNhcmQgLmhhYml0LWNoZWNrYm94IHtcclxuXHQtLWNoZWNrYm94LXNpemU6IDEuMjVyZW07XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdGFjY2VudC1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTsgLyogU3R5bGUgY2hlY2tib3ggY29sb3IgKi9cclxufVxyXG4uZGFpbHktaGFiaXQtY2FyZCAuY2FyZC1jb250ZW50LXdyYXBwZXIge1xyXG5cdC8qIENvbnRhaW5zIGhlYXRtYXAgKi9cclxuXHRwYWRkaW5nOiAwcmVtIDFyZW0gMC43NXJlbTsgLyogQWRqdXN0IHBhZGRpbmcgYXJvdW5kIGhlYXRtYXAgKi9cclxufVxyXG5cclxuLyogPT09IENvdW50IEhhYml0IENhcmQgPT09ICovXHJcbi5jb3VudC1oYWJpdC1jYXJkIC5jYXJkLWNvbnRlbnQtd3JhcHBlciB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uOyAvKiBEZWZhdWx0IG1vYmlsZSBsYXlvdXQgKi9cclxuXHRnYXA6IDAuNzVyZW07IC8qIEFkanVzdGVkIGdhcCAqL1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbn1cclxuXHJcbi5jb3VudC1oYWJpdC1jYXJkIC5oYWJpdC1pY29uLWJ1dHRvbiB7XHJcblx0LS1pY29uLXNpemU6IDJyZW07XHJcblx0aGVpZ2h0OiA0cmVtOyAvKiBTbGlnaHRseSBzbWFsbGVyIHRoYW4gaC0xNiAqL1xyXG5cdHdpZHRoOiA0cmVtO1xyXG5cdGFzcGVjdC1yYXRpbzogMTtcclxuXHRwYWRkaW5nOiAwO1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7IC8qIFNtYWxsZXIgcmFkaXVzICovXHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGZvbnQtc2l6ZTogMS41cmVtOyAvKiBGb3IgaWNvbiAqL1xyXG59XHJcblxyXG4uY291bnQtaGFiaXQtY2FyZCAuaGFiaXQtaWNvbi1idXR0b24ge1xyXG5cdGNvbG9yOiB2YXIoLS1pY29uLWNvbG9yKTtcclxufVxyXG5cclxuLmNvdW50LWhhYml0LWNhcmQgLmhhYml0LWljb24tYnV0dG9uOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcbn1cclxuXHJcbi5jb3VudC1oYWJpdC1jYXJkIC5oYWJpdC1jYXJkLW5hbWUge1xyXG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1sYXJnZSk7XHJcblx0Zm9udC13ZWlnaHQ6IDYwMDtcclxufVxyXG5cclxuLmNvdW50LWhhYml0LWNhcmQgLmhhYml0LWFjdGl2ZS1kYXkge1xyXG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbCk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdGZvbnQtd2VpZ2h0OiA0MDA7XHJcbn1cclxuXHJcbi5jb3VudC1oYWJpdC1jYXJkIC5oYWJpdC1pbmZvIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjsgLyogQ2VudGVyIHRleHQgb24gbW9iaWxlICovXHJcblx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG5cdGZsZXgtZ3JvdzogMTtcclxufVxyXG4uY291bnQtaGFiaXQtY2FyZCAuaGFiaXQtaW5mbyBoMyB7XHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLWxhcmdlKTtcclxuXHRmb250LXdlaWdodDogNjAwO1xyXG59XHJcblxyXG4uY291bnQtaGFiaXQtY2FyZCAuaGFiaXQtcHJvZ3Jlc3MtYXJlYSB7XHJcblx0d2lkdGg6IDEwMCU7IC8qIEZ1bGwgd2lkdGggb24gbW9iaWxlICovXHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0Z2FwOiAwLjVyZW07XHJcbn1cclxuXHJcbi8qIFRhYmxldC9EZXNrdG9wIGxheW91dCBmb3IgQ291bnQgQ2FyZCAqL1xyXG5AbWVkaWEgKG1pbi13aWR0aDogNjQwcHgpIHtcclxuXHQvKiBzbSBicmVha3BvaW50ICovXHJcblx0LmNvdW50LWhhYml0LWNhcmQgLmNhcmQtY29udGVudC13cmFwcGVyIHtcclxuXHRcdGZsZXgtZGlyZWN0aW9uOiByb3c7XHJcblx0XHRhbGlnbi1pdGVtczogY2VudGVyOyAvKiBBbGlnbiBpdGVtcyB2ZXJ0aWNhbGx5ICovXHJcblx0XHRnYXA6IDFyZW07XHJcblx0fVxyXG5cdC5jb3VudC1oYWJpdC1jYXJkIC5oYWJpdC1wcm9ncmVzcy1hcmVhIHtcclxuXHRcdHdpZHRoOiBhdXRvOyAvKiBBbGxvdyBpdCB0byBzaHJpbmsgKi9cclxuXHRcdG1pbi13aWR0aDogMTUwcHg7IC8qIEVuc3VyZSBtaW5pbXVtIHdpZHRoIGZvciBoZWF0bWFwL3Byb2dyZXNzICovXHJcblx0XHRhbGlnbi1pdGVtczogZmxleC1lbmQ7IC8qIEFsaWduIHByb2dyZXNzIHRvIHRoZSByaWdodCAqL1xyXG5cdH1cclxuXHQuY291bnQtaGFiaXQtY2FyZCAuaGFiaXQtaGVhdG1hcC1zbWFsbCB7XHJcblx0XHR3aWR0aDogMTAwJTsgLyogQWxsb3cgaGVhdG1hcCB0byBkZWZpbmUgaXRzIG93biB3aWR0aCAqL1xyXG5cdH1cclxufVxyXG5cclxuLyogPT09IFNjaGVkdWxlZCBIYWJpdCBDYXJkID09PSAqL1xyXG4uc2NoZWR1bGVkLWhhYml0LWNhcmQgLmNhcmQtaGVhZGVyIHtcclxuXHRwYWRkaW5nLWJvdHRvbTogMC41cmVtOyAvKiBwYi0yICovXHJcbn1cclxuLnNjaGVkdWxlZC1oYWJpdC1jYXJkIC5jYXJkLWNvbnRlbnQtd3JhcHBlciB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uOyAvKiBNb2JpbGUgZGVmYXVsdCAqL1xyXG5cdGdhcDogMC43NXJlbTtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyOyAvKiBDZW50ZXIgb24gbW9iaWxlICovXHJcbn1cclxuXHJcbi5zY2hlZHVsZWQtaGFiaXQtY2FyZCAuaGFiaXQtaGVhdG1hcC1tZWRpdW0ge1xyXG5cdHdpZHRoOiAxMDAlOyAvKiBGdWxsIHdpZHRoIGhlYXRtYXAgb24gbW9iaWxlICovXHJcbn1cclxuXHJcbi5zY2hlZHVsZWQtaGFiaXQtY2FyZCAuaGFiaXQtY29udHJvbHMge1xyXG5cdHdpZHRoOiAxMDAlOyAvKiBGdWxsIHdpZHRoIGNvbnRyb2xzIG9uIG1vYmlsZSAqL1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRnYXA6IDAuNXJlbTtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyOyAvKiBDZW50ZXIgY29udHJvbHMgb24gbW9iaWxlICovXHJcbn1cclxuXHJcbi5zY2hlZHVsZWQtaGFiaXQtY2FyZCAuaGFiaXQtZXZlbnQtZHJvcGRvd24ge1xyXG5cdHdpZHRoOiBhdXRvOyAvKiBBdXRvIHdpZHRoIGRyb3Bkb3duICovXHJcblx0bWFyZ2luLWJvdHRvbTogMC41cmVtO1xyXG5cdHdpZHRoOiAxMDAlO1xyXG59XHJcblxyXG4vKiBUYWJsZXQvRGVza3RvcCBsYXlvdXQgZm9yIFNjaGVkdWxlZCBDYXJkICovXHJcbkBtZWRpYSAobWluLXdpZHRoOiA2NDBweCkge1xyXG5cdC5zY2hlZHVsZWQtaGFiaXQtY2FyZCAuY2FyZC1jb250ZW50LXdyYXBwZXIge1xyXG5cdFx0ZmxleC1kaXJlY3Rpb246IHJvdztcclxuXHRcdGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0OyAvKiBBbGlnbiB0b3AgKi9cclxuXHRcdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuXHR9XHJcblx0LnNjaGVkdWxlZC1oYWJpdC1jYXJkIC5oYWJpdC1oZWF0bWFwLW1lZGl1bSB7XHJcblx0XHR3aWR0aDogYXV0bzsgLyogQWxsb3cgaGVhdG1hcCB0byBzaHJpbmsgKi9cclxuXHRcdGZsZXgtZ3JvdzogMTsgLyogQWxsb3cgaGVhdG1hcCB0byB0YWtlIGF2YWlsYWJsZSBzcGFjZSAqL1xyXG5cdFx0bWFyZ2luLXJpZ2h0OiAxcmVtOyAvKiBTcGFjZSBiZXR3ZWVuIGhlYXRtYXAgYW5kIGNvbnRyb2xzICovXHJcblx0fVxyXG5cdC5zY2hlZHVsZWQtaGFiaXQtY2FyZCAuaGFiaXQtY29udHJvbHMge1xyXG5cdFx0d2lkdGg6IGF1dG87IC8qIFNocmluayBjb250cm9scyAqL1xyXG5cdFx0bWluLXdpZHRoOiAxNTBweDsgLyogTWluaW11bSB3aWR0aCAqL1xyXG5cdFx0YWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7IC8qIEFsaWduIGNvbnRyb2xzIGxlZnQgKi9cclxuXHR9XHJcbn1cclxuXHJcbi8qID09PSBNYXBwaW5nIEhhYml0IENhcmQgPT09ICovXHJcbi5tYXBwaW5nLWhhYml0LWNhcmQgLmNhcmQtaGVhZGVyIHtcclxuXHRwYWRkaW5nLWJvdHRvbTogMC41cmVtOyAvKiBwYi0yICovXHJcbn1cclxuLm1hcHBpbmctaGFiaXQtY2FyZCAuY2FyZC1jb250ZW50LXdyYXBwZXIge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgLyogTW9iaWxlIGRlZmF1bHQgKi9cclxuXHRnYXA6IDAuNzVyZW07XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRwYWRkaW5nLXRvcDogMDtcclxuXHRwYWRkaW5nLWJvdHRvbTogMS4ycmVtO1xyXG59XHJcbi5tYXBwaW5nLWhhYml0LWNhcmQgLmhhYml0LWhlYXRtYXAtbWVkaXVtIHtcclxuXHR3aWR0aDogMTAwJTsgLyogRnVsbCB3aWR0aCBoZWF0bWFwIG9uIG1vYmlsZSAqL1xyXG59XHJcbi5tYXBwaW5nLWhhYml0LWNhcmQgLmhhYml0LWNvbnRyb2xzIHtcclxuXHR3aWR0aDogMTAwJTsgLyogRnVsbCB3aWR0aCBjb250cm9scyBvbiBtb2JpbGUgKi9cclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRnYXA6IDAuNXJlbTtcclxufVxyXG5cclxuLm1hcHBpbmctaGFiaXQtY2FyZCAuaGFiaXQtbWFwcGluZy1idXR0b24ge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRmb250LXNpemU6IDEuNzVyZW07IC8qIExhcmdlciBlbW9qaS90ZXh0ICovXHJcblx0cGFkZGluZzogMC41cmVtO1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cdG1heC13aWR0aDogMTAwcHg7IC8qIExpbWl0IGJ1dHRvbiB3aWR0aCAqL1xyXG5cdGhlaWdodDogMy41cmVtOyAvKiBoLTE2IGVxdWl2YWxlbnQgKi9cclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1idXR0b24tc2Vjb25kYXJ5LWJvcmRlci1jb2xvcik7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYnV0dG9uLXNlY29uZGFyeS1iZyk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTsgLyogRW5zdXJlIGVtb2ppIHZpc2liaWxpdHkgKi9cclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpO1xyXG59XHJcbi5tYXBwaW5nLWhhYml0LWNhcmQgLmhhYml0LW1hcHBpbmctYnV0dG9uOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1idXR0b24tc2Vjb25kYXJ5LWhvdmVyLWJnKTtcclxufVxyXG5cclxuLm1hcHBpbmctaGFiaXQtY2FyZCAuaGFiaXQtc2xpZGVyLXNldHRpbmcge1xyXG5cdHdpZHRoOiAxMDAlOyAvKiBTbGlkZXIgdGFrZXMgZnVsbCB3aWR0aCAqL1xyXG5cdG1heC13aWR0aDogMjAwcHg7IC8qIExpbWl0IHNsaWRlciB3aWR0aCAqL1xyXG59XHJcbi5tYXBwaW5nLWhhYml0LWNhcmQgLmhhYml0LXNsaWRlci1zZXR0aW5nIC5zZXR0aW5nLWl0ZW0taW5mbyB7XHJcblx0ZGlzcGxheTogbm9uZTsgLyogSGlkZSBzbGlkZXIgbGFiZWwgKi9cclxufVxyXG4ubWFwcGluZy1oYWJpdC1jYXJkIC5oYWJpdC1zbGlkZXItc2V0dGluZyAuc2V0dGluZy1pdGVtIHtcclxuXHR3aWR0aDogMTAwJTtcclxuXHRwYWRkaW5nOiAwO1xyXG5cdGJvcmRlcjogbm9uZTtcclxufVxyXG4ubWFwcGluZy1oYWJpdC1jYXJkIC5oYWJpdC1zbGlkZXItc2V0dGluZyAuc2V0dGluZy1pdGVtLWNvbnRyb2wge1xyXG5cdHdpZHRoOiAxMDAlOyAvKiBNYWtlIHNsaWRlciBjb250cm9sIHRha2UgZnVsbCB3aWR0aCAqL1xyXG59XHJcblxyXG4ubWFwcGluZy1oYWJpdC1jYXJkIC5oZWF0bWFwLW1kIC5oZWF0bWFwLWNvbnRhaW5lci1zaW1wbGUge1xyXG5cdGdhcDogdmFyKC0tc2l6ZS0yLTIpO1xyXG59XHJcblxyXG4vKiBUYWJsZXQvRGVza3RvcCBsYXlvdXQgZm9yIE1hcHBpbmcgQ2FyZCAqL1xyXG5AbWVkaWEgKG1pbi13aWR0aDogNjQwcHgpIHtcclxuXHQubWFwcGluZy1oYWJpdC1jYXJkIC5jYXJkLWNvbnRlbnQtd3JhcHBlciB7XHJcblx0XHRmbGV4LWRpcmVjdGlvbjogcm93O1xyXG5cdFx0YWxpZ24taXRlbXM6IGNlbnRlcjsgLyogQ2VudGVyIGl0ZW1zIHZlcnRpY2FsbHkgKi9cclxuXHRcdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuXHR9XHJcblx0Lm1hcHBpbmctaGFiaXQtY2FyZCAuaGFiaXQtaGVhdG1hcC1tZWRpdW0ge1xyXG5cdFx0d2lkdGg6IGF1dG87XHJcblx0XHRmbGV4LWdyb3c6IDE7XHJcblx0XHRtYXJnaW4tcmlnaHQ6IDFyZW07XHJcblx0fVxyXG5cdC5tYXBwaW5nLWhhYml0LWNhcmQgLmhhYml0LWNvbnRyb2xzIHtcclxuXHRcdHdpZHRoOiBhdXRvO1xyXG5cdFx0bWluLXdpZHRoOiA4MHB4OyAvKiBXaWR0aCBmb3IgYnV0dG9uICsgc2xpZGVyICovXHJcblx0XHRmbGV4LWRpcmVjdGlvbjogY29sdW1uOyAvKiBLZWVwIGJ1dHRvbiBhYm92ZSBzbGlkZXIgKi9cclxuXHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0XHRnYXA6IDAuNzVyZW07XHJcblx0fVxyXG5cdC5tYXBwaW5nLWhhYml0LWNhcmQgLmhhYml0LW1hcHBpbmctYnV0dG9uIHtcclxuXHRcdHdpZHRoOiA0cmVtOyAvKiBGaXhlZCB3aWR0aCBidXR0b24gKi9cclxuXHRcdGhlaWdodDogNHJlbTtcclxuXHR9XHJcblx0Lm1hcHBpbmctaGFiaXQtY2FyZCAuaGFiaXQtc2xpZGVyLXNldHRpbmcge1xyXG5cdFx0d2lkdGg6IDEwMCU7IC8qIFNsaWRlciB0YWtlcyB3aWR0aCBvZiBjb250cm9sIGFyZWEgKi9cclxuXHRcdG1heC13aWR0aDogbm9uZTtcclxuXHR9XHJcbn1cclxuXHJcbi8qID09PSBQcm9ncmVzcyBCYXIgKENvbW1vbiBmb3IgQ291bnQvU2NoZWR1bGVkKSA9PT0gKi9cclxuLmhhYml0LXByb2dyZXNzLWNvbnRhaW5lciB7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0aGVpZ2h0OiAwLjc1cmVtOyAvKiBTbGlnaHRseSB0aGlja2VyICovXHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1sKTsgLyogUGlsbCBzaGFwZSAqL1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcblx0cG9zaXRpb246IHJlbGF0aXZlOyAvKiBGb3IgdGV4dCBvdmVybGF5ICovXHJcbn1cclxuLmhhYml0LXByb2dyZXNzLWJhciB7XHJcblx0aGVpZ2h0OiAxMDAlO1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLWwpO1xyXG5cdHRyYW5zaXRpb246IHdpZHRoIDAuM3MgZWFzZS1pbi1vdXQ7XHJcbn1cclxuLmhhYml0LXByb2dyZXNzLWNvbnRhaW5lci5maWxsZWQgLmhhYml0LXByb2dyZXNzLXRleHQge1xyXG5cdG1peC1ibGVuZC1tb2RlOiB1bnNldDtcclxufVxyXG4uaGFiaXQtcHJvZ3Jlc3MtdGV4dCB7XHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdHRvcDogMDtcclxuXHRsZWZ0OiAwO1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cdGhlaWdodDogMTAwJTtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0Zm9udC1zaXplOiAwLjZyZW07IC8qIFRpbnkgdGV4dCAqL1xyXG5cdGxpbmUtaGVpZ2h0OiAxO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7IC8qIFRleHQgY29sb3Igb24gZmlsbGVkIHBhcnQgKi9cclxuXHRtaXgtYmxlbmQtbW9kZTogZGlmZmVyZW5jZTsgLyogVHJ5IHRvIG1ha2UgdGV4dCB2aXNpYmxlICovXHJcblx0Zm9udC13ZWlnaHQ6IDUwMDtcclxufVxyXG5cclxuLyogPT09IEhlYXRtYXAgU3R5bGVzID09PSAqL1xyXG4udGctaGVhdG1hcC1yb290IHtcclxuXHR3aWR0aDogMTAwJTsgLyogVGFrZSBhdmFpbGFibGUgd2lkdGggKi9cclxufVxyXG4uaGVhdG1hcC1zbSAuaGVhdG1hcC1jb250YWluZXItc2ltcGxlIHtcclxuXHRkaXNwbGF5OiBncmlkO1xyXG5cdGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDMsIDFmcik7XHJcblx0Z2FwOiB2YXIoLS1zaXplLTItMik7XHJcblx0b3ZlcmZsb3cteDogYXV0bzsgLyogQWxsb3cgaG9yaXpvbnRhbCBzY3JvbGwgaWYgdG9vIG1hbnkgY2VsbHMgKi9cclxuXHRwYWRkaW5nLWJvdHRvbTogMnB4OyAvKiBTcGFjZSBmb3Igc2Nyb2xsYmFyICovXHJcbn1cclxuXHJcbi5oZWF0bWFwLW1kIC5oZWF0bWFwLWNvbnRhaW5lci1zaW1wbGUge1xyXG5cdGRpc3BsYXk6IGdyaWQ7XHJcblx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNiwgMWZyKTtcclxuXHRnYXA6IHZhcigtLXNpemUtMi0yKTtcclxuXHRvdmVyZmxvdy14OiBhdXRvOyAvKiBBbGxvdyBob3Jpem9udGFsIHNjcm9sbCBpZiB0b28gbWFueSBjZWxscyAqL1xyXG5cdHBhZGRpbmctYm90dG9tOiAycHg7IC8qIFNwYWNlIGZvciBzY3JvbGxiYXIgKi9cclxuXHRqdXN0aWZ5LWl0ZW1zOiBjZW50ZXI7XHJcbn1cclxuXHJcbi5oZWF0bWFwLWxnIC5oZWF0bWFwLWNvbnRhaW5lci1zaW1wbGUge1xyXG5cdGRpc3BsYXk6IGdyaWQ7XHJcblx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMTAsIDFmcik7XHJcblx0Z2FwOiB2YXIoLS1zaXplLTItMik7XHJcblx0b3ZlcmZsb3cteDogYXV0bzsgLyogQWxsb3cgaG9yaXpvbnRhbCBzY3JvbGwgaWYgdG9vIG1hbnkgY2VsbHMgKi9cclxuXHRwYWRkaW5nLWJvdHRvbTogMnB4OyAvKiBTcGFjZSBmb3Igc2Nyb2xsYmFyICovXHJcblx0anVzdGlmeS1pdGVtczogY2VudGVyO1xyXG59XHJcblxyXG4uaGVhdG1hcC1jZWxsIHtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7IC8qIFNtYWxsIHJhZGl1cyAqL1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0ZmxleC1zaHJpbms6IDA7IC8qIFByZXZlbnQgY2VsbHMgZnJvbSBzaHJpbmtpbmcgKi9cclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoXHJcblx0XHQtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyXHJcblx0KTsgLyogRGVmYXVsdCBiYWNrZ3JvdW5kICovXHJcblx0Ym9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7IC8qIEJvcmRlciBmb3IgYmxhbmsvY3VzdG9tICovXHJcbn1cclxuXHJcbi8qIEhlYXRtYXAgU2hhcGVzICovXHJcbi5oZWF0bWFwLWNlbGwtc3F1YXJlIHtcclxuXHQvKiBEZWZpbmVkIGJ5IHNpemUgKi9cclxufVxyXG4uaGVhdG1hcC1jZWxsLWRvdCB7XHJcblx0Ym9yZGVyLXJhZGl1czogNTAlO1xyXG59XHJcblxyXG4vKiBIZWF0bWFwIFNpemVzICovXHJcbi5oZWF0bWFwLXNtIC5oZWF0bWFwLWNlbGwge1xyXG5cdHdpZHRoOiAwLjc1cmVtO1xyXG5cdGhlaWdodDogMC43NXJlbTtcclxufVxyXG4uaGFiaXQtaGVhdG1hcC1tZWRpdW0gLmhlYXRtYXAtbWQgLmhlYXRtYXAtY2VsbCB7XHJcblx0d2lkdGg6IDEuNHJlbTtcclxuXHRoZWlnaHQ6IDEuNHJlbTtcclxuXHRmb250LXNpemU6IDAuN3JlbTtcclxufVxyXG5cclxuLmhlYXRtYXAtbWQgLmhlYXRtYXAtY2VsbCB7XHJcblx0d2lkdGg6IDEuMXJlbTtcclxuXHRoZWlnaHQ6IDEuMXJlbTtcclxuXHRmb250LXNpemU6IDAuN3JlbTtcclxufSAvKiBNYXBwaW5nL1NjaGVkdWxlZCAqL1xyXG4uaGVhdG1hcC1sZyAuaGVhdG1hcC1jZWxsIHtcclxuXHR3aWR0aDogMS4yNXJlbTtcclxuXHRoZWlnaHQ6IDEuMjVyZW07XHJcblx0Zm9udC1zaXplOiAwLjc1cmVtO1xyXG59IC8qIERhaWx5ICovXHJcblxyXG4vKiBIZWF0bWFwIFZhcmlhbnRzICovXHJcbi5oZWF0bWFwLWNlbGwuZGVmYXVsdCB7XHJcblx0LyogRGVmYXVsdCBzdHlsZXMgYWxyZWFkeSBzZXQgKi9cclxufVxyXG4uaGVhdG1hcC1jZWxsLmZpbGxlZCB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1vbi1hY2NlbnQpOyAvKiBUZXh0IG9uIGZpbGxlZCAoZS5nLiwgZW1vamkpICovXHJcbn1cclxuXHJcbi5oZWF0bWFwLWNlbGwuaGFzLWN1c3RvbS1jb250ZW50OmhhcygucGllLWRvdC1jb250YWluZXIpIHtcclxuXHRiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcclxuXHRib3JkZXI6IHVuc2V0O1xyXG59XHJcblxyXG4vKiBTdHlsZSBmb3IgY2VsbHMgd2l0aCBjdXN0b20gY29udGVudCBsaWtlIFBpZURvdCBvciBFbW9qaSAqL1xyXG4uaGVhdG1hcC1jZWxsLmhhcy1jdXN0b20tY29udGVudCxcclxuLmhlYXRtYXAtY2VsbC5oYXMtdGV4dC1jb250ZW50IHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7IC8qIFVzZSBjYXJkIGJhY2tncm91bmQgKi9cclxuXHRib3JkZXItY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTsgLyogQWRkIGJvcmRlciAqL1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7IC8qIEVuc3VyZSB0ZXh0L2Vtb2ppIGlzIHZpc2libGUgKi9cclxufVxyXG4uaGVhdG1hcC1jZWxsLmhhcy10ZXh0LWNvbnRlbnQge1xyXG5cdGxpbmUtaGVpZ2h0OiAxOyAvKiBDZW50ZXIgZW1vamkgdmVydGljYWxseSAqL1xyXG59XHJcblxyXG4vKiBQaWVEb3QgQ29udGFpbmVyICovXHJcbi5waWUtZG90LWNvbnRhaW5lciB7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0aGVpZ2h0OiAxMDAlO1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxufVxyXG4ucGllLWRvdC1jb250YWluZXIgc3ZnIHtcclxuXHRkaXNwbGF5OiBibG9jazsgLyogUmVtb3ZlIGV4dHJhIHNwYWNlIGJlbG93IFNWRyAqL1xyXG59XHJcblxyXG4vKiA9PT0gRW1wdHkgU3RhdGUgPT09ICovXHJcbi5oYWJpdC1lbXB0eS1zdGF0ZSB7XHJcblx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG5cdHBhZGRpbmc6IDJyZW0gMXJlbTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcbn1cclxuLmhhYml0LWVtcHR5LXN0YXRlIGgyIHtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktbGFyZ2UpO1xyXG5cdGZvbnQtd2VpZ2h0OiA2MDA7XHJcblx0bWFyZ2luLWJvdHRvbTogMC41cmVtO1xyXG59XHJcbi5oYWJpdC1lbXB0eS1zdGF0ZSBwIHtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktbm9ybWFsKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1mYWludCk7XHJcbn1cclxuXHJcbi8qID09PSBJY29ucyBQbGFjZWhvbGRlciA9PT0gKi9cclxuLmhhYml0LWljb24ge1xyXG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuXHQvKiB3aWR0aDogMWVtOyAqL1xyXG5cdGhlaWdodDogMWVtO1xyXG5cdGxpbmUtaGVpZ2h0OiAxO1xyXG5cdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0Zm9udC1zdHlsZTogaXRhbGljO1xyXG5cdG1hcmdpbi1yaWdodDogMC4yNWVtO1xyXG5cdC0taWNvbi1zaXplOiAxLjVyZW07XHJcbn1cclxuXHJcbi8qID09PSBIYWJpdCBDaGFydCBNb2RhbCA9PT0gKi9cclxuLmhhYml0LWNoYXJ0LWNvbnRyb2xzIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0Z2FwOiAwLjVyZW07XHJcblx0bWFyZ2luLWJvdHRvbTogMC43NXJlbTtcclxufVxyXG4uaGFiaXQtY2hhcnQtZmlsdGVycyB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LXdyYXA6IHdyYXA7XHJcblx0Z2FwOiAwLjVyZW07XHJcbn1cclxuLmhhYml0LWNoYXJ0LWZpbHRlcnMgLmZpbHRlci1idG4ge1xyXG5cdHBhZGRpbmc6IDAuMjVyZW0gMC42cmVtO1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG59XHJcbi5oYWJpdC1jaGFydC1maWx0ZXJzIC5maWx0ZXItYnRuOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeS1hbHQpO1xyXG59XHJcbi5oYWJpdC1jaGFydC15ZWFycyB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGdhcDogMC41cmVtO1xyXG59XHJcbi5oYWJpdC1jaGFydC15ZWFycyAueWVhcnMtbGFiZWwge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGwpO1xyXG59XHJcbi5oYWJpdC1jaGFydC15ZWFycyAueWVhcnMtYmFyIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtd3JhcDogbm93cmFwO1xyXG5cdGdhcDogMC40cmVtO1xyXG5cdG92ZXJmbG93LXg6IGF1dG87XHJcblx0cGFkZGluZy1ib3R0b206IDJweDtcclxufVxyXG4uaGFiaXQtY2hhcnQteWVhcnMgLnllYXItYnRuIHtcclxuXHRwYWRkaW5nOiAwLjJyZW0gMC41cmVtO1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zKTtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcclxufVxyXG4uaGFiaXQtY2hhcnQteWVhcnMgLnllYXItYnRuLnNlbGVjdGVkLFxyXG4uaGFiaXQtY2hhcnQteWVhcnMgLnllYXItYnRuOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdGJvcmRlci1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1vbi1hY2NlbnQpO1xyXG59XHJcbi5oYWJpdC1jaGFydC1oZWF0bWFwIHtcclxuXHQvKiBSZXVzZSB0aGUgaGVhdG1hcCBncmlkIHN0eWxlczsgYWxsb3cgb3ZlcmZsb3cgKi9cclxuXHRtYXgtaGVpZ2h0OiA2MHZoO1xyXG5cdG92ZXJmbG93OiBhdXRvO1xyXG59XHJcbiIsICIvKiBEZWZpbmUgdGhlbWUgdmFyaWFibGVzICovXHJcbjpyb290IHtcclxuXHQvKiBUYXNrIHN0YXR1cyBjb2xvcnMgKi9cclxuXHQtLXRhc2stY29tcGxldGVkLWNvbG9yOiAjNGNhZjUwO1xyXG5cdC0tdGFzay1kb2luZy1jb2xvcjogIzgwZGVlNTtcclxuXHQtLXRhc2staW4tcHJvZ3Jlc3MtY29sb3I6ICNmOWQ5MjM7XHJcblx0LS10YXNrLWFiYW5kb25lZC1jb2xvcjogI2ViNTM1MztcclxuXHQtLXRhc2stcGxhbm5lZC1jb2xvcjogIzljMjdiMDsgLyogUGxhbm5lZCB0YXNrIGNvbG9yICovXHJcblx0LS10YXNrLXF1ZXN0aW9uLWNvbG9yOiAjMjE5NmYzOyAvKiBRdWVzdGlvbiB0YXNrcyAqL1xyXG5cdC0tdGFzay1pbXBvcnRhbnQtY29sb3I6ICNmNDQzMzY7IC8qIEltcG9ydGFudCB0YXNrcyAqL1xyXG5cdC0tdGFzay1zdGFyLWNvbG9yOiAjZmZjMTA3OyAvKiBTdGFyIHRhc2tzICovXHJcblx0LS10YXNrLXF1b3RlLWNvbG9yOiAjNjA3ZDhiOyAvKiBRdW90ZSB0YXNrcyAqL1xyXG5cdC0tdGFzay1sb2NhdGlvbi1jb2xvcjogIzc5NTU0ODsgLyogTG9jYXRpb24gdGFza3MgKi9cclxuXHQtLXRhc2stYm9va21hcmstY29sb3I6ICNmZjk4MDA7IC8qIEJvb2ttYXJrIHRhc2tzICovXHJcblx0LS10YXNrLWluZm9ybWF0aW9uLWNvbG9yOiAjMDBiY2Q0OyAvKiBJbmZvcm1hdGlvbiB0YXNrcyAqL1xyXG5cdC0tdGFzay1pZGVhLWNvbG9yOiAjOWMyN2IwOyAvKiBJZGVhIHRhc2tzICovXHJcblx0LS10YXNrLXByb3MtY29sb3I6ICM0Y2FmNTA7IC8qIFByb3MgdGFza3MgKi9cclxuXHQtLXRhc2stY29ucy1jb2xvcjogI2Y0NDMzNjsgLyogQ29ucyB0YXNrcyAqL1xyXG5cdC0tdGFzay1maXJlLWNvbG9yOiAjZmY1NzIyOyAvKiBGaXJlIHRhc2tzICovXHJcblx0LS10YXNrLWtleS1jb2xvcjogI2ZmZDcwMDsgLyogS2V5IHRhc2tzICovXHJcblx0LS10YXNrLXdpbi1jb2xvcjogIzY2YmI2YTsgLyogV2luIHRhc2tzICovXHJcblx0LS10YXNrLXVwLWNvbG9yOiAjNGNhZjUwOyAvKiBVcCB0YXNrcyAqL1xyXG5cdC0tdGFzay1kb3duLWNvbG9yOiAjZjQ0MzM2OyAvKiBEb3duIHRhc2tzICovXHJcblx0LS10YXNrLW5vdGUtY29sb3I6ICM5ZTllOWU7IC8qIE5vdGUgdGFza3MgKi9cclxuXHQtLXRhc2stYW1vdW50LWNvbG9yOiAjOGJjMzRhOyAvKiBBbW91bnQvc2F2aW5ncyB0YXNrcyAqL1xyXG5cdC0tdGFzay1zcGVlY2gtY29sb3I6ICMwM2E5ZjQ7IC8qIFNwZWVjaCBidWJibGUgdGFza3MgKi9cclxuXHJcblx0LyogUHJvZ3Jlc3MgYmFyIGdyYWRpZW50IGNvbG9ycyAtIGxpZ2h0IHRoZW1lICovXHJcblx0LS1wcm9ncmVzcy0wLWNvbG9yOiAjYWU0MzFlO1xyXG5cdC0tcHJvZ3Jlc3MtMjUtY29sb3I6ICNlNTg5MGE7XHJcblx0LS1wcm9ncmVzcy01MC1jb2xvcjogI2I0YzZhNjtcclxuXHQtLXByb2dyZXNzLTc1LWNvbG9yOiAjNmJjYjc3O1xyXG5cdC0tcHJvZ3Jlc3MtMTAwLWNvbG9yOiAjNGQ5NmZmO1xyXG5cclxuXHQtLXByb2dyZXNzLWJhY2tncm91bmQtY29sb3I6ICNmMWYxZjE7XHJcbn1cclxuXHJcbi8qIERhcmsgdGhlbWUgY29sb3IgYWRqdXN0bWVudHMgKi9cclxuLnRoZW1lLWRhcmsge1xyXG5cdC0tdGFzay1jb21wbGV0ZWQtY29sb3I6ICM0Y2FmNTA7XHJcblx0LS10YXNrLWRvaW5nLWNvbG9yOiAjMzc5ZmE3O1xyXG5cdC0tdGFzay1pbi1wcm9ncmVzcy1jb2xvcjogI2ZmYzEwNztcclxuXHQtLXRhc2stYWJhbmRvbmVkLWNvbG9yOiAjZjQ0MzM2O1xyXG5cdC0tdGFzay1wbGFubmVkLWNvbG9yOiAjY2U5M2Q4OyAvKiBQbGFubmVkIHRhc2sgY29sb3IgZm9yIGRhcmsgdGhlbWUgKi9cclxuXHQtLXRhc2stcXVlc3Rpb24tY29sb3I6ICM0MmE1ZjU7IC8qIFF1ZXN0aW9uIHRhc2tzIGRhcmsgdGhlbWUgKi9cclxuXHQtLXRhc2staW1wb3J0YW50LWNvbG9yOiAjZWY1MzUwOyAvKiBJbXBvcnRhbnQgdGFza3MgZGFyayB0aGVtZSAqL1xyXG5cdC0tdGFzay1zdGFyLWNvbG9yOiAjZmZkNTRmOyAvKiBTdGFyIHRhc2tzIGRhcmsgdGhlbWUgKi9cclxuXHQtLXRhc2stcXVvdGUtY29sb3I6ICM5MGE0YWU7IC8qIFF1b3RlIHRhc2tzIGRhcmsgdGhlbWUgKi9cclxuXHQtLXRhc2stbG9jYXRpb24tY29sb3I6ICM4ZDZlNjM7IC8qIExvY2F0aW9uIHRhc2tzIGRhcmsgdGhlbWUgKi9cclxuXHQtLXRhc2stYm9va21hcmstY29sb3I6ICNmZmI3NGQ7IC8qIEJvb2ttYXJrIHRhc2tzIGRhcmsgdGhlbWUgKi9cclxuXHQtLXRhc2staW5mb3JtYXRpb24tY29sb3I6ICMyNmM2ZGE7IC8qIEluZm9ybWF0aW9uIHRhc2tzIGRhcmsgdGhlbWUgKi9cclxuXHQtLXRhc2staWRlYS1jb2xvcjogI2NlOTNkODsgLyogSWRlYSB0YXNrcyBkYXJrIHRoZW1lICovXHJcblx0LS10YXNrLXByb3MtY29sb3I6ICM2NmJiNmE7IC8qIFByb3MgdGFza3MgZGFyayB0aGVtZSAqL1xyXG5cdC0tdGFzay1jb25zLWNvbG9yOiAjZWY1MzUwOyAvKiBDb25zIHRhc2tzIGRhcmsgdGhlbWUgKi9cclxuXHQtLXRhc2stZmlyZS1jb2xvcjogI2ZmNzA0MzsgLyogRmlyZSB0YXNrcyBkYXJrIHRoZW1lICovXHJcblx0LS10YXNrLWtleS1jb2xvcjogI2ZmZDcwMDsgLyogS2V5IHRhc2tzIGRhcmsgdGhlbWUgKi9cclxuXHQtLXRhc2std2luLWNvbG9yOiAjODFjNzg0OyAvKiBXaW4gdGFza3MgZGFyayB0aGVtZSAqL1xyXG5cdC0tdGFzay11cC1jb2xvcjogIzY2YmI2YTsgLyogVXAgdGFza3MgZGFyayB0aGVtZSAqL1xyXG5cdC0tdGFzay1kb3duLWNvbG9yOiAjZWY1MzUwOyAvKiBEb3duIHRhc2tzIGRhcmsgdGhlbWUgKi9cclxuXHQtLXRhc2stbm90ZS1jb2xvcjogI2JkYmRiZDsgLyogTm90ZSB0YXNrcyBkYXJrIHRoZW1lICovXHJcblx0LS10YXNrLWFtb3VudC1jb2xvcjogI2FlZDU4MTsgLyogQW1vdW50L3NhdmluZ3MgdGFza3MgZGFyayB0aGVtZSAqL1xyXG5cdC0tdGFzay1zcGVlY2gtY29sb3I6ICMyOWI2ZjY7IC8qIFNwZWVjaCBidWJibGUgdGFza3MgZGFyayB0aGVtZSAqL1xyXG5cclxuXHQtLXByb2dyZXNzLTAtY29sb3I6ICNhZTQzMWU7XHJcblx0LS1wcm9ncmVzcy0yNS1jb2xvcjogI2U1ODkwYTtcclxuXHQtLXByb2dyZXNzLTUwLWNvbG9yOiAjYjRjNmE2O1xyXG5cdC0tcHJvZ3Jlc3MtNzUtY29sb3I6ICM2YmNiNzc7XHJcblx0LS1wcm9ncmVzcy0xMDAtY29sb3I6ICM0ZDk2ZmY7XHJcblxyXG5cdC0tcHJvZ3Jlc3MtYmFja2dyb3VuZC1jb2xvcjogI2YxZjFmMTtcclxufVxyXG4iLCAiLyogc3JjL3N0eWxlcy9uYXRpdmUtbGF5b3V0LmNzcyAqL1xuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIE5hdGl2ZSBMYXlvdXQgLSBPYnNpZGlhbiBQREYgVmlld2VyIFN0eWxlXG4gICBaZXJvIGdhcHMsIGJvcmRlci1iYXNlZCBzZXBhcmF0aW9uLCBmbGF0IHZpc3VhbCBoaWVyYXJjaHlcblxuICAgTk9URTogVGhpcyBmaWxlIGRvZXMgTk9UIG1vZGlmeSBGbHVlbnQgU2lkZWJhciAoLnRnLWZsdWVudC1zaWRlYmFyLWNvbnRhaW5lcilcbiAgICAgICAgIHdoaWNoIG1haW50YWlucyBpdHMgb3JpZ2luYWwgZmx1ZW50LW1haW4uY3NzIHN0eWxpbmcuXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgMS4gQ1NTIFZhcmlhYmxlcyBEZWZpbml0aW9uXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udGFzay1nZW5pdXMtY29udGFpbmVyLFxuLnRnLWZsdWVudC1jb250YWluZXIsXG4udGFzay1nZW5pdXMtdmlldyxcbi50YXNrLWdlbml1cy1mbHVlbnQtdmlldyB7XG5cdC8qIENvcmUgYmFja2dyb3VuZCBjb2xvciAtIHVzZXMgT2JzaWRpYW4gdmFyaWFibGVzIGJ5IGRlZmF1bHQgKi9cblx0LS10Zy1iZy1wcmltYXJ5OiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xuXHQtLXRnLWJnLXNlY29uZGFyeTogdmFyKC0tdGctYmctcHJpbWFyeSk7XG5cblx0LyogQm9yZGVyIGNvbG9yIGZvciBzZXBhcmF0aW9uICovXG5cdC0tdGctYm9yZGVyLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XG5cblx0LyogSW50ZXJhY3Rpb24gc3RhdGVzIC0gdW5pZmllZCB0byB1c2UgT2JzaWRpYW4ncyBob3ZlciB2YXJpYWJsZSAqL1xuXHQtLXRnLWhvdmVyLWJnOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyKTtcblx0LS10Zy1hY3RpdmUtYmc6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpO1xufVxuXG4vKiBEYXJrIHRoZW1lIG92ZXJyaWRlIC0gdXNlciBzcGVjaWZpZWQgIzFjMWMxYyBmb3IgbWFpbiBjb250ZW50IGFyZWEgKi9cbi50aGVtZS1kYXJrIC50YXNrLWdlbml1cy1jb250YWluZXIsXG4udGhlbWUtZGFyayAudGctZmx1ZW50LWNvbnRhaW5lcixcbi50aGVtZS1kYXJrIC50YXNrLWdlbml1cy12aWV3LFxuLnRoZW1lLWRhcmsgLnRhc2stZ2VuaXVzLWZsdWVudC12aWV3IHtcblx0LS10Zy1iZy1wcmltYXJ5OiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xuXHQvKiBLZWVwIHNlY29uZGFyeSBhcyBPYnNpZGlhbiBkZWZhdWx0IGZvciBzaWRlYmFyIGNvbXBhdGliaWxpdHkgKi9cblx0LS10Zy1iZy1zZWNvbmRhcnk6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcbn1cblxuLyogTGlnaHQgdGhlbWUgLSBwcm92aWRlIHJlYXNvbmFibGUgYWx0ZXJuYXRpdmUgKi9cbi50aGVtZS1saWdodCAudGFzay1nZW5pdXMtY29udGFpbmVyLFxuLnRoZW1lLWxpZ2h0IC50Zy1mbHVlbnQtY29udGFpbmVyLFxuLnRoZW1lLWxpZ2h0IC50YXNrLWdlbml1cy12aWV3LFxuLnRoZW1lLWxpZ2h0IC50YXNrLWdlbml1cy1mbHVlbnQtdmlldyB7XG5cdC0tdGctYmctcHJpbWFyeTogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcblx0LS10Zy1iZy1zZWNvbmRhcnk6IHZhcigtLXRnLWJnLXByaW1hcnkpO1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgMi4gTWFpbiBDb250YWluZXIgTGF5b3V0IC0gUmVtb3ZlIEdhcHNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qIE1haW4gY29udGFpbmVycyAtIG9ubHkgYWZmZWN0IGxheW91dCwgbm90IHNpZGViYXIgKi9cbi50YXNrLWdlbml1cy1jb250YWluZXIsXG4udGctZmx1ZW50LWNvbnRhaW5lciB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGZsZXgtZGlyZWN0aW9uOiByb3c7XG5cdGdhcDogMDtcblx0cGFkZGluZzogMDtcblx0bWFyZ2luOiAwO1xuXHRoZWlnaHQ6IDEwMCU7XG5cdHdpZHRoOiAxMDAlO1xuXHRib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tdGctYm9yZGVyLWNvbG9yKTtcbn1cblxuLyogVHdvLWNvbHVtbiBsYXlvdXQgY29udGFpbmVycyAqL1xuLnR3by1jb2x1bW4tY29udGFpbmVyIHtcblx0Z2FwOiAwO1xuXHRwYWRkaW5nOiAwO1xufVxuXG4udHdvLWNvbHVtbi1jb250ZW50IHtcblx0Z2FwOiAwO1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgMy4gTGVnYWN5IFNpZGViYXIgU3R5bGVzIChOb24tRmx1ZW50KSAtIEZsYXQsIE5vIEZsb2F0IEVmZmVjdFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyogU3RhbmRhcmQgc2lkZWJhciAoTGVnYWN5IHZpZXcgb25seSwgbm90IEZsdWVudCkgKi9cbi50YXNrLXNpZGViYXIge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10Zy1iZy1zZWNvbmRhcnkpO1xuXHRib3JkZXItcmlnaHQ6IDFweCBzb2xpZCB2YXIoLS10Zy1ib3JkZXItY29sb3IpO1xuXHRtYXJnaW46IDA7XG5cdHBhZGRpbmc6IDA7XG5cdGJveC1zaGFkb3c6IG5vbmU7XG59XG5cbi8qIFNpZGViYXIgbmF2aWdhdGlvbiAtIHJlbW92ZSBpbnRlcm5hbCBnYXBzIChMZWdhY3kgb25seSkgKi9cbi5zaWRlYmFyLW5hdiB7XG5cdGdhcDogMDtcblx0cGFkZGluZzogOHB4IDA7XG59XG5cbi8qIFR3by1jb2x1bW4gbGVmdCBjb2x1bW4gKi9cbi50d28tY29sdW1uLWxlZnQtY29sdW1uIHtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGctYmctc2Vjb25kYXJ5KTtcblx0Ym9yZGVyLXJpZ2h0OiAxcHggc29saWQgdmFyKC0tdGctYm9yZGVyLWNvbG9yKTtcblx0bWFyZ2luOiAwO1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgNC4gTWFpbiBDb250ZW50IEFyZWEgLSBBcHBseSBOZXcgQmFja2dyb3VuZFxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyogTGVnYWN5IHRhc2sgY29udGVudCAqL1xuLnRhc2stY29udGVudCB7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRnLWJnLXByaW1hcnkpO1xuXHRmbGV4OiAxO1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRtYXJnaW46IDA7XG5cdHBhZGRpbmc6IDA7XG5cdGdhcDogMDtcblx0Ym9yZGVyOiBub25lO1xuXHRib3gtc2hhZG93OiBub25lO1xufVxuXG4vKiBGbHVlbnQgbWFpbiBjb250YWluZXIgKHJpZ2h0IHNpZGUgY29udGVudCBhcmVhLCBOT1Qgc2lkZWJhcikgKi9cbi50Zy1mbHVlbnQtbWFpbi1jb250YWluZXIge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10Zy1iZy1wcmltYXJ5KTtcblx0ZmxleDogMTtcblx0ZGlzcGxheTogZmxleDtcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0bWFyZ2luOiAwO1xuXHRwYWRkaW5nOiAwO1xuXHRnYXA6IDA7XG5cdGJvcmRlcjogbm9uZTtcblx0Ym94LXNoYWRvdzogbm9uZTtcbn1cblxuLnR3by1jb2x1bW4tcmlnaHQtY29sdW1uIHtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGctYmctcHJpbWFyeSk7XG5cdG1hcmdpbjogMDtcbn1cblxuLyogRmx1ZW50IGNvbnRlbnQgYXJlYSAodGFzayBsaXN0IGFyZWEpICovXG4udGctZmx1ZW50LWNvbnRlbnQge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10Zy1iZy1wcmltYXJ5KTtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIDUuIEhlYWRlciAvIFRvb2xiYXIgLSBGbGF0IExvb2sgd2l0aCBCb3JkZXIgU2VwYXJhdGlvblxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyogU3RhbmRhcmQgY29udGVudCBoZWFkZXIgKi9cbi5jb250ZW50LWhlYWRlciB7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRnLWJnLXByaW1hcnkpO1xuXHRib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tdGctYm9yZGVyLWNvbG9yKTtcblx0cGFkZGluZzogMTBweCAxNnB4O1xuXHRtYXJnaW46IDA7XG59XG5cbi8qIEZsdWVudCB0b3AgbmF2aWdhdGlvbiBiYXIgKi9cbi50Zy1mbHVlbnQtdG9wLW5hdiB7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRnLWJnLXByaW1hcnkpO1xuXHRib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tdGctYm9yZGVyLWNvbG9yKTtcbn1cblxuLmZsdWVudC10b3AtbmF2aWdhdGlvbiB7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRnLWJnLXByaW1hcnkpO1xufVxuXG4vKiBUd28tY29sdW1uIGhlYWRlcnMgKi9cbi50d28tY29sdW1uLXNpZGViYXItaGVhZGVyLFxuLnR3by1jb2x1bW4tdGFzay1oZWFkZXIge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcblx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLXRnLWJvcmRlci1jb2xvcik7XG5cdG1hcmdpbjogMDtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIDYuIFRvb2xiYXIgQnV0dG9ucyAtIFVuaWZpZWQgQWN0aXZlL0hvdmVyIFN0YXRlc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyogVmlldyB0YWJzIGluIGZsdWVudCB0b29sYmFyICovXG4uZmx1ZW50LXZpZXctdGFiIHtcblx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cdGJvcmRlcjogbm9uZTtcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpO1xuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XG5cdHRyYW5zaXRpb246XG5cdFx0YmFja2dyb3VuZC1jb2xvciAwLjE1cyBlYXNlLFxuXHRcdGNvbG9yIDAuMTVzIGVhc2U7XG59XG5cbi5mbHVlbnQtdmlldy10YWI6aG92ZXIge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10Zy1ob3Zlci1iZyk7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XG59XG5cbi8qIEFjdGl2ZSBzdGF0ZSAtIHVzZSBob3ZlciBiYWNrZ3JvdW5kIGFzIHNwZWNpZmllZCAqL1xuLmZsdWVudC12aWV3LXRhYi5pcy1hY3RpdmUsXG4uZmx1ZW50LXZpZXctdGFiLmFjdGl2ZSB7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRnLWFjdGl2ZS1iZyk7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XG5cdGJveC1zaGFkb3c6IG5vbmU7XG59XG5cbi8qIEljb24gYnV0dG9ucyBpbiB0b29sYmFyICovXG4uZmx1ZW50LW5hdi1pY29uLWJ1dHRvbiB7XG5cdGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XG5cdHRyYW5zaXRpb246XG5cdFx0YmFja2dyb3VuZC1jb2xvciAwLjE1cyBlYXNlLFxuXHRcdGNvbG9yIDAuMTVzIGVhc2U7XG59XG5cbi5mbHVlbnQtbmF2LWljb24tYnV0dG9uOmhvdmVyIHtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGctaG92ZXItYmcpO1xuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xufVxuXG4uZmx1ZW50LW5hdi1pY29uLWJ1dHRvbi5pcy1hY3RpdmUge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10Zy1hY3RpdmUtYmcpO1xufVxuXG4vKiBTdGFuZGFyZCBjbGlja2FibGUgaWNvbnMgKi9cbi5jbGlja2FibGUtaWNvbiB7XG5cdHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4xNXMgZWFzZTtcbn1cblxuLmNsaWNrYWJsZS1pY29uOmhvdmVyIHtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGctaG92ZXItYmcpO1xufVxuXG4vKiBOYXYgYnV0dG9ucyAqL1xuLmZsdWVudC1uYXYtYnV0dG9uIHtcblx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLXRnLWJvcmRlci1jb2xvcik7XG5cdHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4xNXMgZWFzZTtcbn1cblxuLmZsdWVudC1uYXYtYnV0dG9uOmhvdmVyIHtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGctaG92ZXItYmcpO1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgNy4gTGVnYWN5IFNpZGViYXIgTmF2aWdhdGlvbiBJdGVtcyAoTm9uLUZsdWVudClcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qIFN0YW5kYXJkIHNpZGViYXIgbmF2IGl0ZW1zIChMZWdhY3kgdmlldykgKi9cbi5zaWRlYmFyLW5hdi1pdGVtIHtcblx0bWFyZ2luOiAwIDRweDtcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcblx0dHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjE1cyBlYXNlO1xufVxuXG4uc2lkZWJhci1uYXYtaXRlbTpob3ZlciB7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRnLWhvdmVyLWJnKTtcbn1cblxuLyogQWN0aXZlIHN0YXRlIC0gb3ZlcnJpZGUgdGhlIGFjY2VudCBjb2xvciB3aXRoIGhvdmVyIGJhY2tncm91bmQgKi9cbi5zaWRlYmFyLW5hdi1pdGVtLmlzLWFjdGl2ZSB7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRnLWFjdGl2ZS1iZyk7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XG5cdC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3ZlcjogdmFyKC0tdGctaG92ZXItYmcpO1xufVxuXG4vKiBUd28tY29sdW1uIGxpc3QgaXRlbXMgKi9cbi50d28tY29sdW1uLWxpc3QtaXRlbSB7XG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zKTtcblx0dHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjE1cyBlYXNlO1xufVxuXG4udHdvLWNvbHVtbi1saXN0LWl0ZW06aG92ZXIge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10Zy1ob3Zlci1iZyk7XG59XG5cbi50d28tY29sdW1uLWxpc3QtaXRlbS5zZWxlY3RlZCB7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRnLWFjdGl2ZS1iZyk7XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICA4LiBUYXNrIExpc3QgSXRlbXMgLSBCb3JkZXIgU2VwYXJhdGlvbiwgVW5pZmllZCBIb3ZlclxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyogU3RhbmRhcmQgdGFzayBpdGVtcyAqL1xuLnRhc2staXRlbSB7XG5cdGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuXHRib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tdGctYm9yZGVyLWNvbG9yKTtcblx0bWFyZ2luOiAwO1xuXHQvKiBib3JkZXItcmFkaXVzOiAwOyAqL1xuXHR0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMTVzIGVhc2U7XG59XG5cbi50YXNrLWl0ZW06aG92ZXIge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10Zy1ob3Zlci1iZyk7XG59XG5cbi50YXNrLWl0ZW0uc2VsZWN0ZWQge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10Zy1hY3RpdmUtYmcpO1xufVxuXG4vKiBMYXN0IHRhc2sgaXRlbSAtIG9wdGlvbmFsbHkgcmVtb3ZlIGJvdHRvbSBib3JkZXIgKi9cbi50YXNrLWxpc3QgPiAudGFzay1pdGVtOmxhc3QtY2hpbGQge1xuXHRib3JkZXItYm90dG9tOiBub25lO1xufVxuXG4vKiBGbHVlbnQgdGFzayBsaXN0IGl0ZW1zICovXG4udGctdGFzay1saXN0LWl0ZW0ge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcblx0Ym9yZGVyOiBub25lO1xuXHRib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tdGctYm9yZGVyLWNvbG9yKTtcblx0Ym9yZGVyLXJhZGl1czogMDtcblx0bWFyZ2luOiAwO1xuXHR0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMTVzIGVhc2U7XG59XG5cbi50Zy10YXNrLWxpc3QtaXRlbTpob3ZlciB7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRnLWhvdmVyLWJnKTtcblx0Ym94LXNoYWRvdzogbm9uZTtcblx0dHJhbnNmb3JtOiBub25lO1xufVxuXG4udGctdGFzay1saXN0LWl0ZW06aG92ZXI6OmJlZm9yZSB7XG5cdGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgOS4gVGFzayBMaXN0IENvbnRhaW5lciAtIFJlbW92ZSBHYXBzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udGFzay1saXN0IHtcblx0cGFkZGluZzogMDtcblx0Z2FwOiAwO1xufVxuXG4udGFzay1saXN0LWNvbnRhaW5lciB7XG5cdHBhZGRpbmc6IDA7XG5cdGdhcDogMDtcbn1cblxuLnRhc2stdHJlZS1jb250YWluZXIge1xuXHRwYWRkaW5nOiAwO1xuXHRnYXA6IDA7XG59XG5cbi8qIFR3by1jb2x1bW4gdGFzayBsaXN0ICovXG4udHdvLWNvbHVtbi10YXNrLWxpc3Qge1xuXHRwYWRkaW5nOiAwO1xufVxuXG4udHdvLWNvbHVtbi1zaWRlYmFyLWxpc3Qge1xuXHRwYWRkaW5nOiA0cHg7XG5cdGdhcDogMDtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIDEwLiBUcmVlIFZpZXcgSXRlbXNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi50YXNrLWdlbml1cy12aWV3IC50cmVlLWl0ZW0ge1xuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XG5cdHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4xNXMgZWFzZTtcbn1cblxuLnRhc2stZ2VuaXVzLXZpZXcgLnRyZWUtaXRlbTpob3ZlciB7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRnLWhvdmVyLWJnKTtcbn1cblxuLnRhc2stZ2VuaXVzLXZpZXcgLnRyZWUtaXRlbS5zZWxlY3RlZCB7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRnLWFjdGl2ZS1iZyk7XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAxMS4gRmx1ZW50IFZpZXcgVGFicyBDb250YWluZXJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi5mbHVlbnQtdmlldy10YWJzIHtcblx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zKTtcblx0cGFkZGluZzogMnB4O1xuXHRnYXA6IDJweDtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIDEyLiBFbWJlZGRlZCBWaWV3c1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLmludGVybmFsLWVtYmVkIC50YXNrLWdlbml1cy1jb250YWluZXIge1xuXHRib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tdGctYm9yZGVyLWNvbG9yKTtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIDEzLiBCYXNlcyBWaWV3IEludGVncmF0aW9uXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4uYmFzZXMtdmlldy50YXNrLWdlbml1cy1jb250YWluZXIge1xuXHRib3JkZXItdG9wOiBub25lO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10Zy1iZy1wcmltYXJ5KTtcbn1cbiIsICIudGFzay1nZW5pdXMtdmlldy1jb25maWctbW9kYWwge1xuXHR3aWR0aDogbWF4KDcwJSwgNTAwcHgpO1xufVxuXG4vKiBTdHlsaW5nIGZvciB0aGUgVmlldyBDb25maWd1cmF0aW9uIE1vZGFsICovXG4udGFzay1nZW5pdXMtdmlldy1jb25maWctbW9kYWwgLnNldHRpbmctaXRlbSB7XG5cdC8qIEFkZCBzb21lIHNwYWNpbmcgYmV0d2VlbiBzZXR0aW5ncyBpbiB0aGUgbW9kYWwgKi9cblx0bWFyZ2luLWJvdHRvbTogMTVweDtcbn1cblxuLnRhc2stZ2VuaXVzLXZpZXctY29uZmlnLW1vZGFsXG5cdC5zZXR0aW5nLWl0ZW06bm90KC5zZXR0aW5nLWl0ZW0taGVhZGluZylcblx0LnNldHRpbmctaXRlbS1pbmZvIHtcblx0LyogRW5zdXJlIGxhYmVscyBhcmUgYWxpZ25lZCB3ZWxsICovXG5cdHdpZHRoOiAxMjBweDtcbn1cblxuLnRhc2stZ2VuaXVzLXZpZXctY29uZmlnLW1vZGFsIC5zZXR0aW5nLWl0ZW0tY29udHJvbCBpbnB1dFt0eXBlPVwidGV4dFwiXSxcbi50YXNrLWdlbml1cy12aWV3LWNvbmZpZy1tb2RhbCAuc2V0dGluZy1pdGVtLWNvbnRyb2wgaW5wdXRbdHlwZT1cIm51bWJlclwiXSB7XG5cdC8qIEVuc3VyZSB0ZXh0IGlucHV0cyB0YWtlIGF2YWlsYWJsZSB3aWR0aCAqL1xuXHR3aWR0aDogMTAwJTtcbn1cblxuLnRhc2stZ2VuaXVzLXZpZXctY29uZmlnLW1vZGFsIC5zZXR0aW5nLWl0ZW0tZGVzY3JpcHRpb24ge1xuXHQvKiBTdHlsZSBkZXNjcmlwdGlvbnMgKi9cblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsZXIpO1xuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XG5cdG1hcmdpbi10b3A6IDJweDtcbn1cblxuLyogU3R5bGluZyBmb3IgdGhlIFZpZXcgTWFuYWdlbWVudCBMaXN0IGluIFNldHRpbmdzIFRhYiAqL1xuLnZpZXctbWFuYWdlbWVudC1saXN0IC5zZXR0aW5nLWl0ZW0ge1xuXHRib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xuXHRwYWRkaW5nOiAxMHB4IDA7XG5cdGRpc3BsYXk6IGZsZXg7IC8qIFVzZSBmbGV4IGZvciBiZXR0ZXIgY29udHJvbCAqL1xuXHRhbGlnbi1pdGVtczogY2VudGVyOyAvKiBBbGlnbiBpdGVtcyB2ZXJ0aWNhbGx5ICovXG59XG5cbi52aWV3LW1hbmFnZW1lbnQtbGlzdCAuc2V0dGluZy1pdGVtLWluZm8ge1xuXHRmbGV4LWdyb3c6IDE7IC8qIEFsbG93IG5hbWUvZGVzY3JpcHRpb24gdG8gdGFrZSB1cCBzcGFjZSAqL1xuXHRtYXJnaW4tcmlnaHQ6IDEwcHg7XG59XG5cbi52aWV3LW1hbmFnZW1lbnQtbGlzdCAuc2V0dGluZy1pdGVtLWNvbnRyb2wge1xuXHQvKiBLZWVwIGNvbnRyb2xzIHRvZ2V0aGVyICovXG5cdGRpc3BsYXk6IGZsZXg7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdGdhcDogOHB4OyAvKiBTcGFjZSBiZXR3ZWVuIHRvZ2dsZXMvYnV0dG9ucyAqL1xufVxuXG4udmlldy1tYW5hZ2VtZW50LWxpc3QgLnNldHRpbmctaXRlbS1jb250cm9sIC5idXR0b24tY29tcG9uZW50IHtcblx0cGFkZGluZzogNXB4OyAvKiBTbWFsbGVyIHBhZGRpbmcgZm9yIGljb24gYnV0dG9ucyAqL1xuXHRoZWlnaHQ6IGF1dG87XG59XG5cbi52aWV3LW1hbmFnZW1lbnQtbGlzdCAudmlldy1vcmRlci1idXR0b24sXG4udmlldy1tYW5hZ2VtZW50LWxpc3QgLnZpZXctZGVsZXRlLWJ1dHRvbiB7XG5cdC8qIFN0eWxlIGFjdGlvbiBidXR0b25zICovXG5cdG1hcmdpbi1sZWZ0OiA1cHg7XG59XG5cbi52aWV3LW1hbmFnZW1lbnQtbGlzdCAuc2V0dGluZy1pdGVtOmxhc3QtY2hpbGQge1xuXHRib3JkZXItYm90dG9tOiBub25lO1xufVxuXG4vKiBTcGVjaWZpYyBzdHlsaW5nIGZvciB0b2dnbGVzIGluIHRoZSBsaXN0ICovXG4udmlldy1tYW5hZ2VtZW50LWxpc3QgLnNldHRpbmctaXRlbS1jb250cm9sIC5jaGVja2JveC1jb250YWluZXIge1xuXHRtYXJnaW46IDA7IC8qIFJlbW92ZSBkZWZhdWx0IG1hcmdpbnMgaWYgYW55ICovXG59XG5cbi8qIEljb24gUGlja2VyIE1lbnUgU3R5bGVzIChTY29wZWQpICovXG4udGctaWNvbi1tZW51IHtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHR6LWluZGV4OiAxMDA7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtbSk7XG5cdGJveC1zaGFkb3c6IHZhcigtLXNoYWRvdy1sKTtcblx0cGFkZGluZzogOHB4O1xuXHRtYXgtaGVpZ2h0OiAzMDBweDsgLyogTGltaXQgb3ZlcmFsbCBtZW51IGhlaWdodCAqL1xuXHR3aWR0aDogMjUwcHg7XG5cdGRpc3BsYXk6IGZsZXg7IC8qIFVzZSBmbGV4Ym94ICovXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdC8qIFByZXZlbnQgcGFkZGluZyBmcm9tIGFmZmVjdGluZyBtYXgtaGVpZ2h0IGNhbGN1bGF0aW9uIGZvciBmbGV4IGNoaWxkcmVuICovXG5cdGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbi8qIFJlbW92ZSBzdHlsZXMgZm9yIHRoZSBpbnRlcm1lZGlhdGUgY29udGFpbmVyICovXG4vKiAuYm0tcGx1Z2luLWljb24tbWVudSAuYm0tbWVudS1jb250ZW50IHsgXG5cdGZsZXgtZ3JvdzogMTsgXG5cdG92ZXJmbG93LXk6IGF1dG87IFxuXHRkaXNwbGF5OiBmbGV4O1xuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRtaW4taGVpZ2h0OiAwOyBcbn0gKi9cblxuLnRnLWljb24tbWVudSAudGctbWVudS1zZWFyY2gge1xuXHR3aWR0aDogMTAwJTtcblx0cGFkZGluZzogNnB4IDhweDtcblx0bWFyZ2luLWJvdHRvbTogOHB4O1xuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zKTtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcblx0Ym94LXNpemluZzogYm9yZGVyLWJveDtcblx0ZmxleC1zaHJpbms6IDA7IC8qIFByZXZlbnQgc2VhcmNoIGJhciBmcm9tIHNocmlua2luZyAqL1xufVxuXG4udGctaWNvbi1tZW51IC50Zy1tZW51LWljb25zIHtcblx0ZmxleC1ncm93OiAxOyAvKiBJY29uIGxpc3QgdGFrZXMgcmVtYWluaW5nIHZlcnRpY2FsIHNwYWNlICovXG5cdG92ZXJmbG93LXk6IGF1dG87IC8qIE1ha2UgdGhlIGljb24gbGlzdCBzY3JvbGxhYmxlICovXG5cdG1pbi1oZWlnaHQ6IDA7IC8qIENydWNpYWwgZm9yIGFsbG93aW5nIGZsZXggY2hpbGQgdG8gc2hyaW5rIGFuZCBzY3JvbGwgKi9cblx0ZGlzcGxheTogZ3JpZDtcblx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoYXV0by1maWxsLCBtaW5tYXgoMzJweCwgMWZyKSk7XG5cdGdhcDogNHB4O1xuXHQvKiBSZW1vdmUgbWluLWhlaWdodCBwcmV2aW91c2x5IG5lZWRlZCBmb3IgZ3JpZCBpbiBmbGV4ICovXG59XG5cbi8qIFNjb3BlIHRoZSBjbGlja2FibGUgaWNvbiAqd2l0aGluKiB0aGUgbWVudSAqL1xuLnRnLWljb24tbWVudSAuY2xpY2thYmxlLWljb24ge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0cGFkZGluZzogNnB4O1xuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XG5cdGN1cnNvcjogcG9pbnRlcjtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcblx0Ym9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG5cdHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4xcyBlYXNlLWluLW91dCwgYm9yZGVyLWNvbG9yIDAuMXMgZWFzZS1pbi1vdXQ7XG59XG5cbi50Zy1pY29uLW1lbnUgLmNsaWNrYWJsZS1pY29uOmhvdmVyIHtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3Zlcik7XG5cdGJvcmRlci1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXItaG92ZXIpO1xufVxuXG4udGctaWNvbi1tZW51IC5jbGlja2FibGUtaWNvbiBzdmcge1xuXHR3aWR0aDogMjBweDtcblx0aGVpZ2h0OiAyMHB4O1xuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XG59XG4iLCAiLyogQ2hlY2tib3ggU3RhdHVzIFN3aXRjaGVyIFN0eWxlcyAqL1xyXG4udGFzay1zdGF0dXMtd2lkZ2V0IHtcclxuXHRkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktbWVkaXVtKTtcclxuXHRmb250LXdlaWdodDogdmFyKC0tZm9udC1ib2xkKTtcclxufVxyXG5cclxuLnRhc2stc3RhdGUubGl2ZS1wcmV2aWV3LW1vZGUge1xyXG5cdHBhZGRpbmctaW5saW5lLXN0YXJ0OiB2YXIoLS1zaXplLTQtMik7XHJcblx0cGFkZGluZy1pbmxpbmUtZW5kOiB2YXIoLS1zaXplLTItMSk7XHJcbn1cclxuXHJcbi50YXNrLXN0YXR1cy13aWRnZXQgLmxpc3QtYnVsbGV0OjphZnRlciB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbGlzdC1tYXJrZXItY29sb3IpICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi8qIFRPRE8gc3RhdHVzIHN0eWxlICovXHJcbi50YXNrLXN0YXRlW2RhdGEtdGFzay1zdGF0ZT1cIiBcIl0ge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LWFjY2VudCk7XHJcbn1cclxuXHJcbi8qIERPSU5HIHN0YXR1cyBzdHlsZSAqL1xyXG4udGFzay1zdGF0ZVtkYXRhLXRhc2stc3RhdGU9XCIvXCJdIHtcclxuXHRjb2xvcjogdmFyKC0tdGFzay1kb2luZy1jb2xvcik7XHJcbn1cclxuXHJcbi8qIElOLVBST0dSRVNTIHN0YXR1cyBzdHlsZSAqL1xyXG4udGFzay1zdGF0ZVtkYXRhLXRhc2stc3RhdGU9XCI+XCJdIHtcclxuXHRjb2xvcjogdmFyKC0tdGFzay1pbi1wcm9ncmVzcy1jb2xvcik7XHJcbn1cclxuXHJcbi8qIERPTkUgc3RhdHVzIHN0eWxlICovXHJcbi50YXNrLXN0YXRlW2RhdGEtdGFzay1zdGF0ZT1cInhcIl0sXHJcbi50YXNrLXN0YXRlW2RhdGEtdGFzay1zdGF0ZT1cIlhcIl0ge1xyXG5cdGNvbG9yOiB2YXIoLS10YXNrLWNvbXBsZXRlZC1jb2xvcik7XHJcbn1cclxuXHJcbi8qIENBTkNFTExFRCBzdGF0dXMgc3R5bGUgKi9cclxuLnRhc2stc3RhdGVbZGF0YS10YXNrLXN0YXRlPVwiLVwiXSB7XHJcblx0Y29sb3I6IHZhcigtLXRhc2stYWJhbmRvbmVkLWNvbG9yKTtcclxufVxyXG5cclxuLyogU0NIRURVTEVEIHN0YXR1cyBzdHlsZSAqL1xyXG4udGFzay1zdGF0ZVtkYXRhLXRhc2stc3RhdGU9XCI8XCJdIHtcclxuXHRjb2xvcjogdmFyKC0tdGFzay1wbGFubmVkLWNvbG9yKTtcclxufVxyXG5cclxuLyogUVVFU1RJT04gc3RhdHVzIHN0eWxlICovXHJcbi50YXNrLXN0YXRlW2RhdGEtdGFzay1zdGF0ZT1cIj9cIl0ge1xyXG5cdGNvbG9yOiB2YXIoLS10YXNrLXF1ZXN0aW9uLWNvbG9yKTtcclxufVxyXG5cclxuLyogSU1QT1JUQU5UIHN0YXR1cyBzdHlsZSAqL1xyXG4udGFzay1zdGF0ZVtkYXRhLXRhc2stc3RhdGU9XCIhXCJdIHtcclxuXHRjb2xvcjogdmFyKC0tdGFzay1pbXBvcnRhbnQtY29sb3IpO1xyXG59XHJcblxyXG4vKiBTVEFSIHN0YXR1cyBzdHlsZSAqL1xyXG4udGFzay1zdGF0ZVtkYXRhLXRhc2stc3RhdGU9XCIqXCJdIHtcclxuXHRjb2xvcjogdmFyKC0tdGFzay1zdGFyLWNvbG9yKTtcclxufVxyXG5cclxuLyogUVVPVEUgc3RhdHVzIHN0eWxlICovXHJcbi50YXNrLXN0YXRlW2RhdGEtdGFzay1zdGF0ZT0nXCInXSB7XHJcblx0Y29sb3I6IHZhcigtLXRhc2stcXVvdGUtY29sb3IpO1xyXG59XHJcblxyXG4vKiBMT0NBVElPTiBzdGF0dXMgc3R5bGUgKi9cclxuLnRhc2stc3RhdGVbZGF0YS10YXNrLXN0YXRlPVwibFwiXSB7XHJcblx0Y29sb3I6IHZhcigtLXRhc2stbG9jYXRpb24tY29sb3IpO1xyXG59XHJcblxyXG4vKiBCT09LTUFSSyBzdGF0dXMgc3R5bGUgKi9cclxuLnRhc2stc3RhdGVbZGF0YS10YXNrLXN0YXRlPVwiYlwiXSB7XHJcblx0Y29sb3I6IHZhcigtLXRhc2stYm9va21hcmstY29sb3IpO1xyXG59XHJcblxyXG4vKiBJTkZPUk1BVElPTiBzdGF0dXMgc3R5bGUgKi9cclxuLnRhc2stc3RhdGVbZGF0YS10YXNrLXN0YXRlPVwiaVwiXSB7XHJcblx0Y29sb3I6IHZhcigtLXRhc2staW5mb3JtYXRpb24tY29sb3IpO1xyXG59XHJcblxyXG4vKiBJREVBIHN0YXR1cyBzdHlsZSAqL1xyXG4udGFzay1zdGF0ZVtkYXRhLXRhc2stc3RhdGU9XCJJXCJdIHtcclxuXHRjb2xvcjogdmFyKC0tdGFzay1pZGVhLWNvbG9yKTtcclxufVxyXG5cclxuLyogUFJPUyBzdGF0dXMgc3R5bGUgKi9cclxuLnRhc2stc3RhdGVbZGF0YS10YXNrLXN0YXRlPVwicFwiXSB7XHJcblx0Y29sb3I6IHZhcigtLXRhc2stcHJvcy1jb2xvcik7XHJcbn1cclxuXHJcbi8qIENPTlMgc3RhdHVzIHN0eWxlICovXHJcbi50YXNrLXN0YXRlW2RhdGEtdGFzay1zdGF0ZT1cImNcIl0ge1xyXG5cdGNvbG9yOiB2YXIoLS10YXNrLWNvbnMtY29sb3IpO1xyXG59XHJcblxyXG4vKiBGSVJFIHN0YXR1cyBzdHlsZSAqL1xyXG4udGFzay1zdGF0ZVtkYXRhLXRhc2stc3RhdGU9XCJmXCJdIHtcclxuXHRjb2xvcjogdmFyKC0tdGFzay1maXJlLWNvbG9yKTtcclxufVxyXG5cclxuLyogS0VZIHN0YXR1cyBzdHlsZSAqL1xyXG4udGFzay1zdGF0ZVtkYXRhLXRhc2stc3RhdGU9XCJrXCJdIHtcclxuXHRjb2xvcjogdmFyKC0tdGFzay1rZXktY29sb3IpO1xyXG59XHJcblxyXG4vKiBXSU4gc3RhdHVzIHN0eWxlICovXHJcbi50YXNrLXN0YXRlW2RhdGEtdGFzay1zdGF0ZT1cIndcIl0ge1xyXG5cdGNvbG9yOiB2YXIoLS10YXNrLXdpbi1jb2xvcik7XHJcbn1cclxuXHJcbi8qIFVQIHN0YXR1cyBzdHlsZSAqL1xyXG4udGFzay1zdGF0ZVtkYXRhLXRhc2stc3RhdGU9XCJ1XCJdIHtcclxuXHRjb2xvcjogdmFyKC0tdGFzay11cC1jb2xvcik7XHJcbn1cclxuXHJcbi8qIERPV04gc3RhdHVzIHN0eWxlICovXHJcbi50YXNrLXN0YXRlW2RhdGEtdGFzay1zdGF0ZT1cImRcIl0ge1xyXG5cdGNvbG9yOiB2YXIoLS10YXNrLWRvd24tY29sb3IpO1xyXG59XHJcblxyXG4vKiBOT1RFIHN0YXR1cyBzdHlsZSAqL1xyXG4udGFzay1zdGF0ZVtkYXRhLXRhc2stc3RhdGU9XCJuXCJdIHtcclxuXHRjb2xvcjogdmFyKC0tdGFzay1ub3RlLWNvbG9yKTtcclxufVxyXG5cclxuLyogQU1PVU5UL1NBVklOR1Mgc3RhdHVzIHN0eWxlICovXHJcbi50YXNrLXN0YXRlW2RhdGEtdGFzay1zdGF0ZT1cIlNcIl0ge1xyXG5cdGNvbG9yOiB2YXIoLS10YXNrLWFtb3VudC1jb2xvcik7XHJcbn1cclxuXHJcbi8qIFNQRUVDSCBCVUJCTEUgc3RhdHVzIHN0eWxlICovXHJcbi50YXNrLXN0YXRlW2RhdGEtdGFzay1zdGF0ZT1cIjBcIl0sXHJcbi50YXNrLXN0YXRlW2RhdGEtdGFzay1zdGF0ZT1cIjFcIl0sXHJcbi50YXNrLXN0YXRlW2RhdGEtdGFzay1zdGF0ZT1cIjJcIl0sXHJcbi50YXNrLXN0YXRlW2RhdGEtdGFzay1zdGF0ZT1cIjNcIl0sXHJcbi50YXNrLXN0YXRlW2RhdGEtdGFzay1zdGF0ZT1cIjRcIl0sXHJcbi50YXNrLXN0YXRlW2RhdGEtdGFzay1zdGF0ZT1cIjVcIl0sXHJcbi50YXNrLXN0YXRlW2RhdGEtdGFzay1zdGF0ZT1cIjZcIl0sXHJcbi50YXNrLXN0YXRlW2RhdGEtdGFzay1zdGF0ZT1cIjdcIl0sXHJcbi50YXNrLXN0YXRlW2RhdGEtdGFzay1zdGF0ZT1cIjhcIl0sXHJcbi50YXNrLXN0YXRlW2RhdGEtdGFzay1zdGF0ZT1cIjlcIl0ge1xyXG5cdGNvbG9yOiB2YXIoLS10YXNrLXNwZWVjaC1jb2xvcik7XHJcbn1cclxuXHJcbi50YXNrLWZha2UtYnVsbGV0IHtcclxuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcblx0d2lkdGg6IDVweDtcclxuXHRoZWlnaHQ6IDVweDtcclxuXHRib3JkZXItcmFkaXVzOiA1MCU7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG5cdG1hcmdpbi1yaWdodDogNHB4O1xyXG5cdHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcbn1cclxuXHJcbm9sID4gLnRhc2stbGlzdC1pdGVtIC50YXNrLWZha2UtYnVsbGV0IHtcclxuXHRkaXNwbGF5OiBub25lO1xyXG59XHJcblxyXG5vbCA+IC50YXNrLWxpc3QtaXRlbSAudGFzay1zdGF0ZS1jb250YWluZXIge1xyXG5cdG1hcmdpbi1pbmxpbmUtc3RhcnQ6IDA7XHJcbn1cclxuIiwgIi8qIFRhc2sgTXVsdGktU2VsZWN0aW9uIFN0eWxlcyAqL1xyXG5cclxuLyogU2VsZWN0aW9uIG1vZGUgaW5kaWNhdG9yIG92ZXJsYXkgKi9cclxuLnRhc2stdmlldy5zZWxlY3Rpb24tbW9kZSB7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG59XHJcblxyXG4udGFzay12aWV3LnNlbGVjdGlvbi1tb2RlOjpiZWZvcmUge1xyXG5cdGNvbnRlbnQ6IFwiXCI7XHJcblx0cG9zaXRpb246IGZpeGVkO1xyXG5cdHRvcDogMDtcclxuXHRsZWZ0OiAwO1xyXG5cdHJpZ2h0OiAwO1xyXG5cdGJvdHRvbTogMDtcclxuXHRwb2ludGVyLWV2ZW50czogbm9uZTtcclxuXHRiYWNrZ3JvdW5kOiByZ2JhKHZhcigtLWludGVyYWN0aXZlLWFjY2VudC1yZ2IpLCAwLjAzKTtcclxuXHR6LWluZGV4OiAwO1xyXG59XHJcblxyXG4vKiBTZWxlY3RlZCB0YXNrIGl0ZW0gc3R5bGluZyAqL1xyXG4udGFzay1pdGVtLnRhc2staXRlbS1zZWxlY3RlZCB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogcmdiYSh2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQtcmdiKSwgMC4xNSkgIWltcG9ydGFudDtcclxuXHRib3JkZXItbGVmdDogM3B4IHNvbGlkIHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcblx0cGFkZGluZy1sZWZ0OiAxM3B4OyAvKiBDb21wZW5zYXRlIGZvciBib3JkZXIgKi9cclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcbn1cclxuXHJcbi8qIFNlbGVjdGlvbiBjb3VudCBiYWRnZSAqL1xyXG4udGFzay1zZWxlY3Rpb24tYmFkZ2Uge1xyXG5cdHBvc2l0aW9uOiBmaXhlZDtcclxuXHRib3R0b206IDIwcHg7XHJcblx0cmlnaHQ6IDIwcHg7XHJcblx0cGFkZGluZzogOHB4IDE2cHg7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1vbi1hY2NlbnQpO1xyXG5cdGJvcmRlci1yYWRpdXM6IDE2cHg7XHJcblx0Zm9udC13ZWlnaHQ6IDYwMDtcclxuXHRmb250LXNpemU6IDE0cHg7XHJcblx0Ym94LXNoYWRvdzogMCAycHggOHB4IHJnYmEoMCwgMCwgMCwgMC4yKTtcclxuXHR6LWluZGV4OiAxMDAwO1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRnYXA6IDhweDtcclxuXHRhbmltYXRpb246IHNsaWRlSW5VcCAwLjJzIGVhc2Utb3V0O1xyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIHNsaWRlSW5VcCB7XHJcblx0ZnJvbSB7XHJcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMjBweCk7XHJcblx0XHRvcGFjaXR5OiAwO1xyXG5cdH1cclxuXHR0byB7XHJcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XHJcblx0XHRvcGFjaXR5OiAxO1xyXG5cdH1cclxufVxyXG5cclxuLnRhc2stc2VsZWN0aW9uLWJhZGdlIC5zZWxlY3Rpb24tY291bnQge1xyXG5cdGZvbnQtd2VpZ2h0OiBib2xkO1xyXG59XHJcblxyXG4vKiBMb25nIHByZXNzIGZlZWRiYWNrIG9uIG1vYmlsZSAqL1xyXG5AbWVkaWEgKHBvaW50ZXI6IGNvYXJzZSkge1xyXG5cdC50YXNrLWl0ZW0ubG9uZy1wcmVzcy1hY3RpdmUge1xyXG5cdFx0YmFja2dyb3VuZC1jb2xvcjogcmdiYSh2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQtcmdiKSwgMC4xKTtcclxuXHRcdHRyYW5zZm9ybTogc2NhbGUoMC45OCk7XHJcblx0XHR0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlO1xyXG5cdH1cclxufVxyXG5cclxuLyogSG92ZXIgZWZmZWN0IHdoZW4gaW4gc2VsZWN0aW9uIG1vZGUgKi9cclxuLnRhc2stdmlldy5zZWxlY3Rpb24tbW9kZSAudGFzay1pdGVtOm5vdCgudGFzay1pdGVtLXNlbGVjdGVkKTpob3ZlciB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogcmdiYSh2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQtcmdiKSwgMC4wOCk7XHJcblx0Ym9yZGVyLWxlZnQ6IDJweCBzb2xpZCByZ2JhKHZhcigtLWludGVyYWN0aXZlLWFjY2VudC1yZ2IpLCAwLjUpO1xyXG5cdHBhZGRpbmctbGVmdDogMTRweDtcclxufVxyXG5cclxuLyogU2hpZnQga2V5IGluZGljYXRvciAob3B0aW9uYWwgdmlzdWFsIGZlZWRiYWNrKSAqL1xyXG4udGFzay12aWV3LnNoaWZ0LWtleS1hY3RpdmUgLnRhc2staXRlbSB7XHJcblx0Y3Vyc29yOiBjcm9zc2hhaXI7XHJcbn1cclxuXHJcbi8qIEJ1bGsgb3BlcmF0aW9ucyBtZW51IHN0eWxpbmcgKi9cclxuLnRhc2stYnVsay1vcGVyYXRpb25zLW1lbnUge1xyXG5cdG1pbi13aWR0aDogMjAwcHg7XHJcbn1cclxuXHJcbi50YXNrLWJ1bGstb3BlcmF0aW9ucy1tZW51IC5tZW51LWl0ZW0ge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRnYXA6IDhweDtcclxufVxyXG5cclxuLnRhc2stYnVsay1vcGVyYXRpb25zLW1lbnUgLm1lbnUtaXRlbS1pY29uIHtcclxuXHRvcGFjaXR5OiAwLjc7XHJcbn1cclxuXHJcbi8qIFNlbGVjdGlvbiBtb2RlIGV4aXQgYnV0dG9uICovXHJcbi50YXNrLXNlbGVjdGlvbi1leGl0LWhpbnQge1xyXG5cdHBvc2l0aW9uOiBmaXhlZDtcclxuXHR0b3A6IDYwcHg7XHJcblx0cmlnaHQ6IDIwcHg7XHJcblx0cGFkZGluZzogNnB4IDEycHg7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRib3JkZXItcmFkaXVzOiA4cHg7XHJcblx0Zm9udC1zaXplOiAxMnB4O1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHR6LWluZGV4OiA5OTk7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGdhcDogNnB4O1xyXG5cdGJveC1zaGFkb3c6IDAgMnB4IDRweCByZ2JhKDAsIDAsIDAsIDAuMSk7XHJcbn1cclxuXHJcbi50YXNrLXNlbGVjdGlvbi1leGl0LWhpbnQga2JkIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRib3JkZXItcmFkaXVzOiA0cHg7XHJcblx0cGFkZGluZzogMnB4IDZweDtcclxuXHRmb250LWZhbWlseTogdmFyKC0tZm9udC1tb25vc3BhY2UpO1xyXG5cdGZvbnQtc2l6ZTogMTFweDtcclxufVxyXG5cclxuLyogVHJlZSB2aWV3IHNlbGVjdGlvbiBzdHlsZXMgKi9cclxuLnRyZWUtaXRlbS50YXNrLWl0ZW0tc2VsZWN0ZWQge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHJnYmEodmFyKC0taW50ZXJhY3RpdmUtYWNjZW50LXJnYiksIDAuMTUpICFpbXBvcnRhbnQ7XHJcblx0Ym9yZGVyLWxlZnQ6IDNweCBzb2xpZCB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG59XHJcblxyXG4udHJlZS1pdGVtLnRhc2staXRlbS1zZWxlY3RlZCAudHJlZS1pdGVtLWlubmVyIHtcclxuXHRmb250LXdlaWdodDogNTAwO1xyXG59XHJcblxyXG4vKiBEaXNhYmxlZCBzdGF0ZSBmb3Igbm9uLXNlbGVjdGFibGUgaXRlbXMgKi9cclxuLnRhc2staXRlbS5zZWxlY3Rpb24tZGlzYWJsZWQge1xyXG5cdG9wYWNpdHk6IDAuNTtcclxuXHRjdXJzb3I6IG5vdC1hbGxvd2VkO1xyXG59XHJcblxyXG4udGFzay1pdGVtLnNlbGVjdGlvbi1kaXNhYmxlZDpob3ZlciB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbn1cclxuXHJcbi8qIFNlbGVjdGlvbiBjaGVja2JveCB2aXN1YWwgKGlmIGFkZGluZyBleHBsaWNpdCBjaGVja2JveGVzKSAqL1xyXG4udGFzay1pdGVtLXNlbGVjdGlvbi1jaGVja2JveCB7XHJcblx0d2lkdGg6IDE4cHg7XHJcblx0aGVpZ2h0OiAxOHB4O1xyXG5cdGJvcmRlcjogMnB4IHNvbGlkIHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdGJvcmRlci1yYWRpdXM6IDRweDtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0bWFyZ2luLXJpZ2h0OiA4cHg7XHJcblx0ZmxleC1zaHJpbms6IDA7XHJcblx0dHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZTtcclxufVxyXG5cclxuLnRhc2staXRlbS1zZWxlY3RlZCAudGFzay1pdGVtLXNlbGVjdGlvbi1jaGVja2JveCB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxuXHRib3JkZXItY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcbn1cclxuXHJcbi50YXNrLWl0ZW0tc2VsZWN0ZWQgLnRhc2staXRlbS1zZWxlY3Rpb24tY2hlY2tib3g6OmFmdGVyIHtcclxuXHRjb250ZW50OiBcIuKck1wiO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XHJcblx0Zm9udC1zaXplOiAxMnB4O1xyXG5cdGZvbnQtd2VpZ2h0OiBib2xkO1xyXG59XHJcblxyXG4vKiBGYWRlIGluL291dCBhbmltYXRpb25zIGZvciBzZWxlY3Rpb24gbW9kZSAqL1xyXG4udGFzay1zZWxlY3Rpb24tbW9kZS1lbnRlciB7XHJcblx0YW5pbWF0aW9uOiBmYWRlSW4gMC4ycyBlYXNlLW91dDtcclxufVxyXG5cclxuLnRhc2stc2VsZWN0aW9uLW1vZGUtZXhpdCB7XHJcblx0YW5pbWF0aW9uOiBmYWRlT3V0IDAuMnMgZWFzZS1vdXQ7XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgZmFkZUluIHtcclxuXHRmcm9tIHtcclxuXHRcdG9wYWNpdHk6IDA7XHJcblx0fVxyXG5cdHRvIHtcclxuXHRcdG9wYWNpdHk6IDE7XHJcblx0fVxyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIGZhZGVPdXQge1xyXG5cdGZyb20ge1xyXG5cdFx0b3BhY2l0eTogMTtcclxuXHR9XHJcblx0dG8ge1xyXG5cdFx0b3BhY2l0eTogMDtcclxuXHR9XHJcbn1cclxuXHJcbi8qIE1vYmlsZS1zcGVjaWZpYyBhZGp1c3RtZW50cyAqL1xyXG5AbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcclxuXHQudGFzay1zZWxlY3Rpb24tYmFkZ2Uge1xyXG5cdFx0Ym90dG9tOiA3MHB4OyAvKiBBY2NvdW50IGZvciBtb2JpbGUgYm90dG9tIG5hdiAqL1xyXG5cdH1cclxuXHJcblx0LnRhc2staXRlbS50YXNrLWl0ZW0tc2VsZWN0ZWQge1xyXG5cdFx0Ym9yZGVyLWxlZnQtd2lkdGg6IDRweDsgLyogTW9yZSBwcm9taW5lbnQgb24gbW9iaWxlICovXHJcblx0XHRwYWRkaW5nLWxlZnQ6IDEycHg7XHJcblx0fVxyXG5cclxuXHQudGFzay1zZWxlY3Rpb24tZXhpdC1oaW50IHtcclxuXHRcdGRpc3BsYXk6IG5vbmU7IC8qIEhpZGUgRVNDIGhpbnQgb24gbW9iaWxlICovXHJcblx0fVxyXG59XHJcblxyXG4vKiBEYXJrIHRoZW1lIGFkanVzdG1lbnRzICovXHJcbi50aGVtZS1kYXJrIC50YXNrLWl0ZW0udGFzay1pdGVtLXNlbGVjdGVkIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKHZhcigtLWludGVyYWN0aXZlLWFjY2VudC1yZ2IpLCAwLjIpICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi50aGVtZS1kYXJrIC50YXNrLXNlbGVjdGlvbi1iYWRnZSB7XHJcblx0Ym94LXNoYWRvdzogMCAycHggMTJweCByZ2JhKDAsIDAsIDAsIDAuNCk7XHJcbn1cclxuXHJcbi8qIExpZ2h0IHRoZW1lIGFkanVzdG1lbnRzICovXHJcbi50aGVtZS1saWdodCAudGFzay1pdGVtLnRhc2staXRlbS1zZWxlY3RlZCB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogcmdiYSh2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQtcmdiKSwgMC4xMikgIWltcG9ydGFudDtcclxufVxyXG5cclxuLnRoZW1lLWxpZ2h0IC50YXNrLXNlbGVjdGlvbi1iYWRnZSB7XHJcblx0Ym94LXNoYWRvdzogMCAycHggOHB4IHJnYmEoMCwgMCwgMCwgMC4xNSk7XHJcbn1cclxuXHJcbi8qIENvbXBhY3QgbW9kZSBhZGp1c3RtZW50cyAqL1xyXG4udGFzay12aWV3LmNvbXBhY3QtbW9kZSAudGFzay1pdGVtLnRhc2staXRlbS1zZWxlY3RlZCB7XHJcblx0cGFkZGluZy10b3A6IDRweDtcclxuXHRwYWRkaW5nLWJvdHRvbTogNHB4O1xyXG59XHJcblxyXG4vKiBBY2Nlc3NpYmlsaXR5OiBIaWdoIGNvbnRyYXN0IG1vZGUgKi9cclxuQG1lZGlhIChwcmVmZXJzLWNvbnRyYXN0OiBoaWdoKSB7XHJcblx0LnRhc2staXRlbS50YXNrLWl0ZW0tc2VsZWN0ZWQge1xyXG5cdFx0Ym9yZGVyLWxlZnQtd2lkdGg6IDRweDtcclxuXHRcdGJhY2tncm91bmQtY29sb3I6IHJnYmEodmFyKC0taW50ZXJhY3RpdmUtYWNjZW50LXJnYiksIDAuMjUpICFpbXBvcnRhbnQ7XHJcblx0fVxyXG59XHJcblxyXG4vKiBSZWR1Y2UgbW90aW9uIGZvciBhY2Nlc3NpYmlsaXR5ICovXHJcbkBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XHJcblx0LnRhc2staXRlbS50YXNrLWl0ZW0tc2VsZWN0ZWQsXHJcblx0LnRhc2stc2VsZWN0aW9uLWJhZGdlLFxyXG5cdC50YXNrLXNlbGVjdGlvbi1leGl0LWhpbnQge1xyXG5cdFx0YW5pbWF0aW9uOiBub25lO1xyXG5cdFx0dHJhbnNpdGlvbjogbm9uZTtcclxuXHR9XHJcbn1cclxuIiwgIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcbi8qIFRhc2sgR2VuaXVzIE9uYm9hcmRpbmcgU3R5bGVzICovXHJcbi8qIHNoYWRjbiBEZXNpZ24gUHJpbmNpcGxlcyBBcHBsaWVkICovXHJcbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4vKiBNYWluIG9uYm9hcmRpbmcgc3R5bGVzIC0gc2hhcmVkIGJ5IG1vZGFsIGFuZCB2aWV3ICovXHJcbi5vbmJvYXJkaW5nLXZpZXcge1xyXG5cdC0tZGlhbG9nLXdpZHRoOiA4MDBweDtcclxuXHQtLWRpYWxvZy1tYXgtd2lkdGg6IDkwdnc7XHJcblx0LS1kaWFsb2ctbWF4LWhlaWdodDogOTB2aDtcclxuXHQtLW9uYm9hcmRpbmctc3BhY2luZzogdmFyKC0tc2l6ZS00LTQpO1xyXG5cdC0tb25ib2FyZGluZy1ib3JkZXItcmFkaXVzOiA4cHg7XHJcblx0LS1vbmJvYXJkaW5nLXRyYW5zaXRpb246IGFsbCAyMDBtcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpO1xyXG5cclxuXHQvKiBzaGFkY24gZGVzaWduIHRva2VucyAqL1xyXG5cdC0tc2hhZG93LXNtOiAwIDFweCAycHggMCByZ2IoMCAwIDAgLyAwLjA1KTtcclxuXHQtLXNoYWRvdy1tZDogMCAxcHggM3B4IDAgcmdiKDAgMCAwIC8gMC4xKSwgMCAxcHggMnB4IC0xcHggcmdiKDAgMCAwIC8gMC4xKTtcclxuXHQtLXNoYWRvdy1sZzpcclxuXHRcdDAgNHB4IDZweCAtMXB4IHJnYigwIDAgMCAvIDAuMSksIDAgMnB4IDRweCAtMnB4IHJnYigwIDAgMCAvIDAuMSk7XHJcblx0LS1zaGFkb3cteGw6XHJcblx0XHQwIDEwcHggMTVweCAtM3B4IHJnYigwIDAgMCAvIDAuMSksIDAgNHB4IDZweCAtNHB4IHJnYigwIDAgMCAvIDAuMSk7XHJcbn1cclxuXHJcbi8qIE1vZGFsIHNwZWNpZmljIHN0eWxlcyAqL1xyXG4ub25ib2FyZGluZy12aWV3IC5tb2RhbC1jb250ZW50IHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1tb2RhbC1iYWNrZ3JvdW5kKTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1tb2RhbC1yYWRpdXMpO1xyXG5cdG1heC13aWR0aDogdmFyKC0tZGlhbG9nLW1heC13aWR0aCk7XHJcblx0bWF4LWhlaWdodDogdmFyKC0tZGlhbG9nLW1heC1oZWlnaHQpO1xyXG5cdGhlaWdodDogOTB2aDtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0b3ZlcmZsb3c6IGF1dG87XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdG1pbi1oZWlnaHQ6IDEwMHB4O1xyXG59XHJcblxyXG4vKiBWaWV3IHNwZWNpZmljIHN0eWxlcyAqL1xyXG4ub25ib2FyZGluZy12aWV3IHtcclxuXHRoZWlnaHQ6IDEwMCU7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLnZpZXctY29udGVudCB7XHJcblx0aGVpZ2h0OiAxMDAlO1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxufVxyXG5cclxuLyogSGlkZSBvbmJvYXJkaW5nLWhlYWRlciBpZiBubyBoZWFkZXIgY29udGVudCAqL1xyXG4ub25ib2FyZGluZy12aWV3IC5vbmJvYXJkaW5nLWhlYWRlcjplbXB0eSB7XHJcblx0ZGlzcGxheTogbm9uZTtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAub25ib2FyZGluZy1zdWJ0aXRsZSB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdGZvbnQtc2l6ZTogMC45NWVtO1xyXG5cdG1hcmdpbjogMDtcclxufVxyXG5cclxuLyogQ29udGVudCBzZWN0aW9uICovXHJcbi5vbmJvYXJkaW5nLXZpZXcgLm9uYm9hcmRpbmctY29udGVudCB7XHJcblx0ZmxleDogMTtcclxuXHRwYWRkaW5nOiB2YXIoLS1vbmJvYXJkaW5nLXNwYWNpbmcpO1xyXG5cdG92ZXJmbG93LXk6IGF1dG87XHJcblx0bWluLWhlaWdodDogMDtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxufVxyXG5cclxuLyogRm9vdGVyIHNlY3Rpb24gLSBNb2Rlcm4gZGVzaWduICovXHJcbi5vbmJvYXJkaW5nLXZpZXcgLm9uYm9hcmRpbmctZm9vdGVyIHtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtNCkgdmFyKC0tb25ib2FyZGluZy1zcGFjaW5nKTtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xyXG5cdGJvcmRlci10b3A6IG5vbmU7XHJcblx0Ym94LXNoYWRvdzogMCAtMnB4IDEycHggcmdiYSgwLCAwLCAwLCAwLjA2KTtcclxuXHRmbGV4LXNocmluazogMDtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0dHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcclxufVxyXG5cclxuLyogR2xhc3MgbW9ycGhpc20gZWZmZWN0IGZvciBtb2Rlcm4gbG9vayAqL1xyXG4ub25ib2FyZGluZy12aWV3IC5vbmJvYXJkaW5nLWZvb3Rlcjo6YmVmb3JlIHtcclxuXHRjb250ZW50OiBcIlwiO1xyXG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHR0b3A6IDA7XHJcblx0bGVmdDogMDtcclxuXHRyaWdodDogMDtcclxuXHRib3R0b206IDA7XHJcblx0YmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIHRvcCwgdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KSwgdHJhbnNwYXJlbnQpO1xyXG5cdG9wYWNpdHk6IDAuNTtcclxuXHRwb2ludGVyLWV2ZW50czogbm9uZTtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAub25ib2FyZGluZy1idXR0b25zIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGdhcDogdmFyKC0tc2l6ZS00LTMpO1xyXG5cdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHR6LWluZGV4OiAxO1xyXG59XHJcblxyXG4vKiBCdXR0b24gZ3JvdXBzIC0gbGVmdCBhbmQgcmlnaHQgKi9cclxuLm9uYm9hcmRpbmctdmlldyAuYnV0dG9ucy1sZWZ0IHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGdhcDogdmFyKC0tc2l6ZS00LTMpO1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLmJ1dHRvbnMtcmlnaHQge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0Z2FwOiB2YXIoLS1zaXplLTQtMyk7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRtYXJnaW4tbGVmdDogYXV0bztcclxufVxyXG5cclxuLyogRW5oYW5jZWQgYnV0dG9uIHN0eWxlcyAqL1xyXG4ub25ib2FyZGluZy12aWV3IC5vbmJvYXJkaW5nLWJ1dHRvbnMgYnV0dG9uIHtcclxuXHRtaW4taGVpZ2h0OiAzNnB4O1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtNC0yKSB2YXIoLS1zaXplLTQtNCk7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLW0pO1xyXG5cdGZvbnQtd2VpZ2h0OiA1MDA7XHJcblx0dHJhbnNpdGlvbjogYWxsIDAuMnMgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC4yLCAxKTtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0b3ZlcmZsb3c6IGhpZGRlbjtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAub25ib2FyZGluZy1idXR0b25zIGJ1dHRvbjpub3QoLm1vZC1jdGEpOmhvdmVyIHtcclxuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTFweCk7XHJcbn1cclxuXHJcbi8qIFJpcHBsZSBlZmZlY3Qgb24gYnV0dG9uIGNsaWNrICovXHJcbi5vbmJvYXJkaW5nLXZpZXcgLm9uYm9hcmRpbmctYnV0dG9ucyBidXR0b246OmFmdGVyIHtcclxuXHRjb250ZW50OiBcIlwiO1xyXG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHR0b3A6IDUwJTtcclxuXHRsZWZ0OiA1MCU7XHJcblx0d2lkdGg6IDA7XHJcblx0aGVpZ2h0OiAwO1xyXG5cdGJvcmRlci1yYWRpdXM6IDUwJTtcclxuXHRiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMyk7XHJcblx0dHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XHJcblx0dHJhbnNpdGlvbjpcclxuXHRcdHdpZHRoIDAuNnMsXHJcblx0XHRoZWlnaHQgMC42cztcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAub25ib2FyZGluZy1idXR0b25zIGJ1dHRvbjphY3RpdmU6OmFmdGVyIHtcclxuXHR3aWR0aDogMjAwcHg7XHJcblx0aGVpZ2h0OiAyMDBweDtcclxufVxyXG5cclxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcbi8qIFNldHRpbmdzIENoZWNrIFN0ZXAgKi9cclxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4ub25ib2FyZGluZy12aWV3IC5zZXR0aW5ncy1jaGVjay1jb250ZW50IHtcclxuXHRkaXNwbGF5OiBncmlkO1xyXG5cdGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDEuMmZyO1xyXG5cdGdhcDogdmFyKC0tc2l6ZS00LTYpO1xyXG5cdG1hcmdpbi10b3A6IHZhcigtLXNpemUtNC00KTtcclxufVxyXG5cclxuLyogQ3VycmVudCBjb25maWd1cmF0aW9uIGNhcmQgKi9cclxuLm9uYm9hcmRpbmctdmlldyAuc2V0dGluZ3MtY2hlY2stY3VycmVudC1jYXJkIHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLW9uYm9hcmRpbmctYm9yZGVyLXJhZGl1cyk7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTQpO1xyXG5cdGJveC1zaGFkb3c6IHZhcigtLXNoYWRvdy1zbSk7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLnNldHRpbmdzLWNoZWNrLWNhcmQtaGVhZGVyIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0Z2FwOiB2YXIoLS1zaXplLTQtMyk7XHJcblx0bWFyZ2luLWJvdHRvbTogdmFyKC0tc2l6ZS00LTMpO1xyXG5cdHBhZGRpbmctYm90dG9tOiB2YXIoLS1zaXplLTQtMyk7XHJcblx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAuY2hlY2staGVhZGVyLWljb24ge1xyXG5cdGNvbG9yOiB2YXIoLS1jb2xvci1ncmVlbik7XHJcblx0Zm9udC1zaXplOiAxLjVlbTtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAuY2hlY2staGVhZGVyLXRpdGxlIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0Z2FwOiB2YXIoLS1zaXplLTQtMik7XHJcblx0ZmxleDogMTtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAuY2hlY2staGVhZGVyLXRpdGxlIGgzIHtcclxuXHRtYXJnaW46IDA7XHJcblx0Zm9udC1zaXplOiAxLjFlbTtcclxuXHRmb250LXdlaWdodDogNjAwO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy12aWV3IC5zZXR0aW5ncy1jaGVjay1jYXJkLWJvZHkge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAuY2hlY2stY2FyZC1kZXNjIHtcclxuXHRmb250LXNpemU6IDAuOWVtO1xyXG5cdG1hcmdpbi1ib3R0b206IHZhcigtLXNpemUtNC0zKTtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAuc2V0dGluZ3MtY2hlY2stY2hhbmdlcy1saXN0IHtcclxuXHRsaXN0LXN0eWxlOiBub25lO1xyXG5cdHBhZGRpbmc6IDA7XHJcblx0bWFyZ2luOiAwO1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRnYXA6IHZhcigtLXNpemUtNC0yKTtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAuc2V0dGluZ3MtY2hlY2stY2hhbmdlcy1saXN0IGxpIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0Z2FwOiB2YXIoLS1zaXplLTQtMik7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxuXHRmb250LXNpemU6IDAuOWVtO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy12aWV3IC5jaGFuZ2UtY2hlY2staWNvbiB7XHJcblx0Y29sb3I6IHZhcigtLWNvbG9yLWdyZWVuKTtcclxuXHRmbGV4LXNocmluazogMDtcclxufVxyXG5cclxuLyogQWN0aW9ucyBjb250YWluZXIgKi9cclxuLm9uYm9hcmRpbmctdmlldyAuc2V0dGluZ3MtY2hlY2stYWN0aW9ucyB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdGdhcDogdmFyKC0tc2l6ZS00LTMpO1xyXG59XHJcblxyXG4vKiBBY3Rpb24gY2FyZHMgKi9cclxuLm9uYm9hcmRpbmctdmlldyAuc2V0dGluZ3MtY2hlY2stYWN0aW9uLWNhcmQge1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XHJcblx0Ym9yZGVyOiAycHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLW9uYm9hcmRpbmctYm9yZGVyLXJhZGl1cyk7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTQpO1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHR0cmFuc2l0aW9uOiB2YXIoLS1vbmJvYXJkaW5nLXRyYW5zaXRpb24pO1xyXG5cdGJveC1zaGFkb3c6IHZhcigtLXNoYWRvdy1zbSk7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcbn1cclxuXHJcbi8qIFNlbGVjdGVkIGNhcmQgc3RhdGUgKi9cclxuLm9uYm9hcmRpbmctdmlldyAuc2V0dGluZ3MtY2hlY2stYWN0aW9uLWNhcmQuaXMtc2VsZWN0ZWQge1xyXG5cdGJvcmRlci1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxuXHRiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoXHJcblx0XHQxMzVkZWcsXHJcblx0XHRyZ2JhKHZhcigtLWludGVyYWN0aXZlLWFjY2VudC1yZ2IpLCAwLjA1KSAwJSxcclxuXHRcdHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSkgMTAwJVxyXG5cdCk7XHJcblx0Ym94LXNoYWRvdzpcclxuXHRcdHZhcigtLXNoYWRvdy1tZCksXHJcblx0XHQwIDAgMCAzcHggcmdiYSh2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQtcmdiKSwgMC4xKTtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAuc2V0dGluZ3MtY2hlY2stYWN0aW9uLWNhcmQ6aG92ZXIge1xyXG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMnB4KTtcclxuXHRib3gtc2hhZG93OiB2YXIoLS1zaGFkb3ctbGcpO1xyXG5cdGJvcmRlci1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAuc2V0dGluZ3MtY2hlY2stYWN0aW9uLWNhcmQ6aG92ZXI6OmJlZm9yZSB7XHJcblx0dHJhbnNmb3JtOiBzY2FsZVgoMSk7XHJcbn1cclxuXHJcbi8qIFdpemFyZCBjYXJkIChwcmltYXJ5KSAqL1xyXG4ub25ib2FyZGluZy12aWV3IC5zZXR0aW5ncy1jaGVjay1hY3Rpb24td2l6YXJkIHtcclxuXHRiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoXHJcblx0XHQxMzVkZWcsXHJcblx0XHR2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpIDAlLFxyXG5cdFx0dmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpIDEwMCVcclxuXHQpO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy12aWV3IC5zZXR0aW5ncy1jaGVjay1hY3Rpb24td2l6YXJkOjpiZWZvcmUge1xyXG5cdHRyYW5zZm9ybTogc2NhbGVYKDEpO1xyXG59XHJcblxyXG4vKiBLZWVwIGNhcmQgKHNlY29uZGFyeSkgKi9cclxuLm9uYm9hcmRpbmctdmlldyAuc2V0dGluZ3MtY2hlY2stYWN0aW9uLWtlZXAge1xyXG5cdG9wYWNpdHk6IDAuOTtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAuc2V0dGluZ3MtY2hlY2stYWN0aW9uLWtlZXA6aG92ZXIge1xyXG5cdG9wYWNpdHk6IDE7XHJcbn1cclxuXHJcbi8qIEFjdGlvbiBjYXJkIGNvbnRlbnQgKi9cclxuLm9uYm9hcmRpbmctdmlldyAuYWN0aW9uLWNhcmQtaGVhZGVyIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0bWFyZ2luLWJvdHRvbTogdmFyKC0tc2l6ZS00LTMpO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy12aWV3IC5hY3Rpb24tY2FyZC1pY29uIHtcclxuXHRmb250LXNpemU6IDJlbTtcclxuXHRjb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxuXHRtYXJnaW4tcmlnaHQ6IHZhcigtLXNpemUtNC0zKTtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAuYWN0aW9uLWNhcmQtY29udGVudCBoMyB7XHJcblx0bWFyZ2luOiAwIDAgdmFyKC0tc2l6ZS00LTIpIDA7XHJcblx0Zm9udC1zaXplOiAxLjJlbTtcclxuXHRmb250LXdlaWdodDogNjAwO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLmFjdGlvbi1jYXJkLWNvbnRlbnQgPiBwIHtcclxuXHRtYXJnaW46IDAgMCB2YXIoLS1zaXplLTQtMykgMDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0Zm9udC1zaXplOiAwLjllbTtcclxuXHRsaW5lLWhlaWdodDogMS41O1xyXG59XHJcblxyXG4ub25ib2FyZGluZy12aWV3IC5hY3Rpb24tY2FyZC1mZWF0dXJlcyB7XHJcblx0bGlzdC1zdHlsZTogbm9uZTtcclxuXHRwYWRkaW5nOiAwO1xyXG5cdG1hcmdpbjogdmFyKC0tc2l6ZS00LTMpIDAgMCAwO1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRnYXA6IHZhcigtLXNpemUtMi0zKTtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAuYWN0aW9uLWNhcmQtZmVhdHVyZXMgbGkge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRnYXA6IHZhcigtLXNpemUtMi0yKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0Zm9udC1zaXplOiAwLjg1ZW07XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLmFjdGlvbi1jYXJkLWZlYXR1cmVzIC5mZWF0dXJlLWljb24ge1xyXG5cdGNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdGZsZXgtc2hyaW5rOiAwO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy12aWV3IC5hY3Rpb24tY2FyZC1ub3RlIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0Z2FwOiB2YXIoLS1zaXplLTItMik7XHJcblx0bWFyZ2luLXRvcDogdmFyKC0tc2l6ZS00LTMpO1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtMi0zKSB2YXIoLS1zaXplLTQtMik7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zKTtcclxuXHRmb250LXNpemU6IDAuODVlbTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLmFjdGlvbi1jYXJkLW5vdGUgLm5vdGUtaWNvbiB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtYWNjZW50KTtcclxuXHRmbGV4LXNocmluazogMDtcclxufVxyXG5cclxuLyogUmVzcG9uc2l2ZSBhZGp1c3RtZW50cyAqL1xyXG5AbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcclxuXHQub25ib2FyZGluZy12aWV3IC5zZXR0aW5ncy1jaGVjay1jb250ZW50IHtcclxuXHRcdGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xyXG5cdH1cclxufVxyXG5cclxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcbi8qIFdlbGNvbWUgU3RlcCAqL1xyXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLndlbGNvbWUtc2VjdGlvbiB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdGdhcDogdmFyKC0tb25ib2FyZGluZy1zcGFjaW5nKTtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAuZmVhdHVyZXMtb3ZlcnZpZXcge1xyXG5cdGRpc3BsYXk6IGdyaWQ7XHJcblx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoYXV0by1maXQsIG1pbm1heCgyODBweCwgMWZyKSk7XHJcblx0Z2FwOiB2YXIoLS1zaXplLTQtMyk7XHJcblx0bWFyZ2luOiB2YXIoLS1vbmJvYXJkaW5nLXNwYWNpbmcpIDA7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLmZlYXR1cmUtaXRlbSB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRnYXA6IHZhcigtLXNpemUtNC0yKTtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtMyk7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLW9uYm9hcmRpbmctYm9yZGVyLXJhZGl1cyk7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLmZlYXR1cmUtaWNvbiB7XHJcblx0Zm9udC1zaXplOiAxLjVlbTtcclxuXHRmbGV4LXNocmluazogMDtcclxuXHRsaW5lLWhlaWdodDogMTtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAuc2V0dXAtbm90ZSB7XHJcblx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtNC0zKTtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tb25ib2FyZGluZy1ib3JkZXItcmFkaXVzKTtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAuc2V0dXAtZGVzY3JpcHRpb24ge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRmb250LXNpemU6IDAuOTVlbTtcclxuXHRsaW5lLWhlaWdodDogMS41O1xyXG5cdG1hcmdpbjogMDtcclxufVxyXG5cclxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcbi8qIFVzZXIgTGV2ZWwgU2VsZWN0aW9uICovXHJcbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLm9uYm9hcmRpbmctdmlldyAudXNlci1sZXZlbC1jYXJkcyB7XHJcblx0ZGlzcGxheTogZ3JpZDtcclxuXHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdChhdXRvLWZpdCwgbWlubWF4KDI1MHB4LCAxZnIpKTtcclxuXHRnYXA6IHZhcigtLW9uYm9hcmRpbmctc3BhY2luZyk7XHJcblx0bWFyZ2luOiB2YXIoLS1vbmJvYXJkaW5nLXNwYWNpbmcpIDA7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLnVzZXItbGV2ZWwtY2FyZCB7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLW9uYm9hcmRpbmctYm9yZGVyLXJhZGl1cyk7XHJcblx0cGFkZGluZzogdmFyKC0tb25ib2FyZGluZy1zcGFjaW5nKTtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0dHJhbnNpdGlvbjogdmFyKC0tb25ib2FyZGluZy10cmFuc2l0aW9uKTtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG5cdGJveC1zaGFkb3c6IHZhcigtLXNoYWRvdy1zbSk7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLnVzZXItbGV2ZWwtY2FyZC5jYXJkLWhvdmVyIHtcclxuXHRib3JkZXItY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcblx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0ycHgpO1xyXG5cdGJveC1zaGFkb3c6IHZhcigtLXNoYWRvdy1sZyk7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLnVzZXItbGV2ZWwtY2FyZC5zZWxlY3RlZCB7XHJcblx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpO1xyXG5cdGJveC1zaGFkb3c6IDAgMCAwIDNweCByZ2JhKHZhcigtLWludGVyYWN0aXZlLWFjY2VudC1yZ2IpLCAwLjEpO1xyXG59XHJcblxyXG4udXNlci1sZXZlbC1jYXJkIC5jYXJkLWhlYWRlciB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGdhcDogdmFyKC0tc2l6ZS00LTIpO1xyXG5cdG1hcmdpbi1ib3R0b206IHZhcigtLXNpemUtNC0yKTtcclxufVxyXG5cclxuLnVzZXItbGV2ZWwtY2FyZCAuY2FyZC1pY29uIHtcclxuXHRmb250LXNpemU6IDEuOGVtO1xyXG5cdGxpbmUtaGVpZ2h0OiAxO1xyXG5cdGZsZXgtc2hyaW5rOiAwO1xyXG59XHJcblxyXG4udXNlci1sZXZlbC1jYXJkIC5jYXJkLXRpdGxlIHtcclxuXHRtYXJnaW46IDA7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxuXHRmb250LXNpemU6IDEuMmVtO1xyXG5cdGZvbnQtd2VpZ2h0OiA2MDA7XHJcbn1cclxuXHJcbi51c2VyLWxldmVsLWNhcmQgLmNhcmQtZGVzY3JpcHRpb24ge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRmb250LXNpemU6IDAuOWVtO1xyXG5cdGxpbmUtaGVpZ2h0OiAxLjQ7XHJcblx0bWFyZ2luOiAwIDAgdmFyKC0tc2l6ZS00LTIpIDA7XHJcbn1cclxuXHJcbi51c2VyLWxldmVsLWNhcmQgLmNhcmQtZmVhdHVyZXMge1xyXG5cdG1hcmdpbi10b3A6IHZhcigtLXNpemUtNC0yKTtcclxufVxyXG5cclxuLnVzZXItbGV2ZWwtY2FyZCAuY2FyZC1mZWF0dXJlcyB1bCB7XHJcblx0bWFyZ2luOiAwO1xyXG5cdHBhZGRpbmctbGVmdDogdmFyKC0tc2l6ZS00LTMpO1xyXG5cdGxpc3Qtc3R5bGU6IG5vbmU7XHJcbn1cclxuXHJcbi51c2VyLWxldmVsLWNhcmQgLmNhcmQtZmVhdHVyZXMgbGkge1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0Zm9udC1zaXplOiAwLjg1ZW07XHJcblx0bGluZS1oZWlnaHQ6IDEuNDtcclxuXHRtYXJnaW4tYm90dG9tOiB2YXIoLS1zaXplLTItMSk7XHJcbn1cclxuXHJcbi51c2VyLWxldmVsLWNhcmQgLmNhcmQtZmVhdHVyZXMgbGk6YmVmb3JlIHtcclxuXHRjb250ZW50OiBcIuKAolwiO1xyXG5cdGNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRsZWZ0OiBjYWxjKC0xICogdmFyKC0tc2l6ZS00LTMpKTtcclxuXHRmb250LXdlaWdodDogYm9sZDtcclxufVxyXG5cclxuLnVzZXItbGV2ZWwtY2FyZCAucmVjb21tZW5kYXRpb24tYmFkZ2Uge1xyXG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHR0b3A6IHZhcigtLXNpemUtNC0yKTtcclxuXHRyaWdodDogdmFyKC0tc2l6ZS00LTIpO1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtb24tYWNjZW50KTtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTItMSkgdmFyKC0tc2l6ZS00LTEpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zKTtcclxuXHRmb250LXNpemU6IDAuN2VtO1xyXG5cdGZvbnQtd2VpZ2h0OiA2MDA7XHJcblx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuXHRsZXR0ZXItc3BhY2luZzogMC4wMmVtO1xyXG59XHJcblxyXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuLyogQ29uZmlndXJhdGlvbiBQcmV2aWV3ICovXHJcbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLm9uYm9hcmRpbmctdmlldyAuY29uZmlnLW92ZXJ2aWV3IHtcclxuXHR3aWR0aDogMTAwJTtcclxuXHRtYXgtd2lkdGg6IDgwMHB4O1xyXG5cdG1hcmdpbi1ib3R0b206IHZhcigtLW9uYm9hcmRpbmctc3BhY2luZyk7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLm1vZGUtaWNvbiB7XHJcblx0LS1pY29uLXNpemU6IHZhcigtLXNpemUtNC00KTtcclxuXHRmbGV4LXNocmluazogMDtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAuY29uZmlnLXNldHRpbmdzIHtcclxuXHR3aWR0aDogMTAwJTtcclxuXHRtYXgtd2lkdGg6IDgwMHB4O1xyXG5cdG1hcmdpbi1ib3R0b206IHZhcigtLW9uYm9hcmRpbmctc3BhY2luZyk7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLmNvbmZpZy1mZWF0dXJlcyB7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0bWF4LXdpZHRoOiA4MDBweDtcclxuXHRtYXJnaW4tYm90dG9tOiB2YXIoLS1vbmJvYXJkaW5nLXNwYWNpbmcpO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy12aWV3IC5jb25maWctdmlld3Mge1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cdG1heC13aWR0aDogODAwcHg7XHJcblx0bWFyZ2luLWJvdHRvbTogdmFyKC0tb25ib2FyZGluZy1zcGFjaW5nKTtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAuZW5hYmxlZC1mZWF0dXJlcy1saXN0IHtcclxuXHRsaXN0LXN0eWxlOiBub25lO1xyXG5cdHBhZGRpbmc6IDA7XHJcblx0bWFyZ2luOiAwO1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1vbmJvYXJkaW5nLWJvcmRlci1yYWRpdXMpO1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtNC0yKTtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAuZW5hYmxlZC1mZWF0dXJlcy1saXN0IGxpIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0Z2FwOiB2YXIoLS1zaXplLTQtMik7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS0yLTEpIDA7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxuXHRmb250LXNpemU6IDAuOWVtO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy12aWV3IC5mZWF0dXJlLWNoZWNrIHtcclxuXHRjb2xvcjogdmFyKC0tY29sb3ItZ3JlZW4pO1xyXG5cdGZvbnQtd2VpZ2h0OiBib2xkO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy12aWV3IC52aWV3cy1ncmlkIHtcclxuXHRkaXNwbGF5OiBncmlkO1xyXG5cdGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KGF1dG8tZml0LCBtaW5tYXgoMTIwcHgsIDFmcikpO1xyXG5cdGdhcDogdmFyKC0tc2l6ZS00LTIpO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy12aWV3IC52aWV3LWl0ZW0ge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtNC0yKTtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tb25ib2FyZGluZy1ib3JkZXItcmFkaXVzKTtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAudmlldy1pY29uIHtcclxuXHRmb250LXNpemU6IDEuMmVtO1xyXG5cdG1hcmdpbi1ib3R0b206IHZhcigtLXNpemUtMi0xKTtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAudmlldy1uYW1lIHtcclxuXHRmb250LXNpemU6IDAuOGVtO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLnNldHRpbmdzLXN1bW1hcnktbGlzdCB7XHJcblx0bGlzdC1zdHlsZTogbm9uZTtcclxuXHRwYWRkaW5nOiAwO1xyXG5cdG1hcmdpbjogMDtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tb25ib2FyZGluZy1ib3JkZXItcmFkaXVzKTtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtMik7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLnNldHRpbmdzLXN1bW1hcnktbGlzdCBsaSB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS0yLTEpIDA7XHJcblx0Zm9udC1zaXplOiAwLjllbTtcclxuXHRib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy12aWV3IC5zZXR0aW5ncy1zdW1tYXJ5LWxpc3QgbGk6bGFzdC1jaGlsZCB7XHJcblx0Ym9yZGVyLWJvdHRvbTogbm9uZTtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAuc2V0dGluZy1sYWJlbCB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxuXHRmb250LXdlaWdodDogNTAwO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy12aWV3IC5zZXR0aW5nLXZhbHVlIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLmNvbmZpZy1vcHRpb25zIHtcclxuXHR3aWR0aDogMTAwJTtcclxuXHRtYXgtd2lkdGg6IDgwMHB4O1xyXG5cdG1hcmdpbi10b3A6IHZhcigtLW9uYm9hcmRpbmctc3BhY2luZyk7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLmN1c3RvbWl6YXRpb24tbm90ZSB7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0bWF4LXdpZHRoOiA4MDBweDtcclxuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTMpO1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1vbmJvYXJkaW5nLWJvcmRlci1yYWRpdXMpO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy12aWV3IC5ub3RlLXRleHQge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRmb250LXNpemU6IDAuOWVtO1xyXG5cdG1hcmdpbjogMDtcclxuXHRmb250LXN0eWxlOiBpdGFsaWM7XHJcbn1cclxuXHJcbi8qIENvbmZpZ3VyYXRpb24gQ2hhbmdlcyBQcmV2aWV3ICovXHJcbi5vbmJvYXJkaW5nLXZpZXcgLmNvbmZpZy1jaGFuZ2VzLXN1bW1hcnkge1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cdG1heC13aWR0aDogODAwcHg7XHJcblx0bWFyZ2luOiB2YXIoLS1vbmJvYXJkaW5nLXNwYWNpbmcpIDA7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTMpO1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1vbmJvYXJkaW5nLWJvcmRlci1yYWRpdXMpO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy12aWV3IC5zZXR0aW5ncy1jaGFuZ2VzIHtcclxuXHRtYXJnaW46IHZhcigtLXNpemUtNC0yKSAwO1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtNC0yKTtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zKTtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAucHJlc2VydmVkLWhlYWRlciB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGdhcDogdmFyKC0tc2l6ZS00LTEpO1xyXG5cdG1hcmdpbi1ib3R0b206IHZhcigtLXNpemUtNC0xKTtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAucHJlc2VydmVkLWljb24ge1xyXG5cdGNvbG9yOiB2YXIoLS1jb2xvci1ncmVlbik7XHJcblx0Zm9udC1zaXplOiAxLjFlbTtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAuY2hhbmdlLXRleHQge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcblx0Zm9udC1zaXplOiAwLjllbTtcclxuXHRmb250LXdlaWdodDogNTAwO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy12aWV3IC51cGRhdGVkLXZpZXdzLFxyXG4ub25ib2FyZGluZy1tb2RhbCAudXBkYXRlZC12aWV3cyB7XHJcblx0ZGlzcGxheTogZmxleDtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAuY2hhbmdlLWl0ZW0ge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IHJvdztcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAuY2hhbmdlLWljb24ge1xyXG5cdGNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdGZvbnQtc2l6ZTogMS4xZW07XHJcblx0bWFyZ2luLXJpZ2h0OiB2YXIoLS1zaXplLTQtMSk7XHJcblx0ZGlzcGxheTogZmxleDtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAuc2V0dGluZ3MtY2hhbmdlcy1saXN0IHtcclxuXHRsaXN0LXN0eWxlOiBub25lO1xyXG5cdHBhZGRpbmc6IDA7XHJcblx0bWFyZ2luOiB2YXIoLS1zaXplLTQtMSkgMCAwIHZhcigtLXNpemUtNC00KTtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAuc2V0dGluZ3MtY2hhbmdlcy1saXN0IGxpIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS0yLTEpIDA7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdGZvbnQtc2l6ZTogMC44NWVtO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy12aWV3IC5zYWZldHktbm90ZSB7XHJcblx0bWFyZ2luLXRvcDogdmFyKC0tc2l6ZS00LTMpO1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtNC0yKTtcclxuXHRiYWNrZ3JvdW5kOiByZ2JhKHZhcigtLWNvbG9yLWJsdWUtcmdiKSwgMC4xKTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGdhcDogdmFyKC0tc2l6ZS00LTEpO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy12aWV3IC5zYWZldHktaWNvbiB7XHJcblx0Y29sb3I6IHZhcigtLWNvbG9yLWJsdWUpO1xyXG5cdGZvbnQtc2l6ZTogMS4xZW07XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy12aWV3IC5zYWZldHktdGV4dCB7XHJcblx0Y29sb3I6IHZhcigtLWNvbG9yLWJsdWUpO1xyXG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbGVyKTtcclxuXHRmb250LXdlaWdodDogNTAwO1xyXG59XHJcblxyXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuLyogVGFzayBDcmVhdGlvbiBHdWlkZSAqL1xyXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLnRhc2stZ3VpZGUtaW50cm8ge1xyXG5cdG1hcmdpbi1ib3R0b206IHZhcigtLW9uYm9hcmRpbmctc3BhY2luZyk7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLmd1aWRlLWRlc2NyaXB0aW9uIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0Zm9udC1zaXplOiAwLjk1ZW07XHJcblx0bGluZS1oZWlnaHQ6IDEuNTtcclxuXHRtYXJnaW46IDA7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLnNob3J0Y3V0cy1zZWN0aW9uIHtcclxuXHRtYXJnaW4tYm90dG9tOiB2YXIoLS1vbmJvYXJkaW5nLXNwYWNpbmcpO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy12aWV3IC5mb3JtYXQtZXhhbXBsZSB7XHJcblx0bWFyZ2luLXRvcDogdmFyKC0tc2l6ZS00LTQpO1xyXG5cdG1hcmdpbi1ib3R0b206IHZhcigtLXNpemUtNC00KTtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAuZm9ybWF0LWV4YW1wbGUgY29kZSB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTItMSkgdmFyKC0tc2l6ZS00LTEpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zKTtcclxuXHRmb250LWZhbWlseTogdmFyKC0tZm9udC1tb25vc3BhY2UpO1xyXG5cdGZvbnQtc2l6ZTogMC44NWVtO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LWFjY2VudCk7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGRpc3BsYXk6IGJsb2NrO1xyXG5cdG1hcmdpbjogdmFyKC0tc2l6ZS0yLTEpIDA7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLmZvcm1hdC1sZWdlbmQgc21hbGwge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LWZhaW50KTtcclxuXHRmb250LXNpemU6IDAuOGVtO1xyXG5cdG1hcmdpbi10b3A6IHZhcigtLXNpemUtMi0xKTtcclxuXHRkaXNwbGF5OiBibG9jaztcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAubWV0YWRhdGEtc3ltYm9scyB7XHJcblx0bWFyZ2luLXRvcDogdmFyKC0tc2l6ZS00LTIpO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy12aWV3IC5zdGF0dXMtbGlzdCBsaSxcclxuLm9uYm9hcmRpbmctdmlldyAuc3ltYm9scy1saXN0IHtcclxuXHRsaXN0LXN0eWxlOiBub25lO1xyXG5cdG1hcmdpbjogMDtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLW9uYm9hcmRpbmctYm9yZGVyLXJhZGl1cyk7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLnN0YXR1cy1saXN0IGxpLFxyXG4ub25ib2FyZGluZy12aWV3IC5zeW1ib2xzLWxpc3QgbGkge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTItMSkgMDtcclxuXHRmb250LXNpemU6IDAuODVlbTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy12aWV3IC5zdGF0dXMtbGlzdCBjb2RlIHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS0yLTEpIHZhcigtLXNpemUtNC0xKTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XHJcblx0Zm9udC1mYW1pbHk6IHZhcigtLWZvbnQtbW9ub3NwYWNlKTtcclxuXHRtYXJnaW4tcmlnaHQ6IHZhcigtLXNpemUtNC0yKTtcclxuXHRtaW4td2lkdGg6IDQwcHg7XHJcblx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy12aWV3IC5kZW1vLWNvbnRlbnQge1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtNC0zKTtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tb25ib2FyZGluZy1ib3JkZXItcmFkaXVzKTtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAuZGVtby1idXR0b24ge1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtb24tYWNjZW50KTtcclxuXHRib3JkZXI6IG5vbmU7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTIpIHZhcigtLXNpemUtNC00KTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1idXR0b24tcmFkaXVzKTtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0Zm9udC13ZWlnaHQ6IDUwMDtcclxuXHR0cmFuc2l0aW9uOiB2YXIoLS1vbmJvYXJkaW5nLXRyYW5zaXRpb24pO1xyXG5cdG1hcmdpbi10b3A6IHZhcigtLXNpemUtNC0yKTtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAuZGVtby1idXR0b246aG92ZXIge1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudC1ob3Zlcik7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLnByYWN0aWNlLWZlZWRiYWNrIHtcclxuXHRtYXJnaW4tdG9wOiB2YXIoLS1zaXplLTQtMik7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLnZhbGlkYXRpb24tbWVzc2FnZSB7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTIpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLW9uYm9hcmRpbmctYm9yZGVyLXJhZGl1cyk7XHJcblx0Zm9udC1zaXplOiAwLjllbTtcclxuXHRtYXJnaW4tYm90dG9tOiB2YXIoLS1zaXplLTItMSk7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLnZhbGlkYXRpb24tc3VjY2VzcyB7XHJcblx0YmFja2dyb3VuZDogcmdiYSh2YXIoLS1jb2xvci1ncmVlbi1yZ2IpLCAwLjEpO1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWdyZWVuKTtcclxuXHRjb2xvcjogdmFyKC0tY29sb3ItZ3JlZW4pO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy12aWV3IC52YWxpZGF0aW9uLWVycm9yIHtcclxuXHRiYWNrZ3JvdW5kOiByZ2JhKHZhcigtLWNvbG9yLXJlZC1yZ2IpLCAwLjEpO1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNvbG9yLXJlZCk7XHJcblx0Y29sb3I6IHZhcigtLWNvbG9yLXJlZCk7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLnZhbGlkYXRpb24td2FybmluZyB7XHJcblx0YmFja2dyb3VuZDogcmdiYSh2YXIoLS1jb2xvci1vcmFuZ2UtcmdiKSwgMC4xKTtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1vcmFuZ2UpO1xyXG5cdGNvbG9yOiB2YXIoLS1jb2xvci1vcmFuZ2UpO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy12aWV3IC52YWxpZGF0aW9uLWluZm8ge1xyXG5cdGJhY2tncm91bmQ6IHJnYmEodmFyKC0tY29sb3ItYmx1ZS1yZ2IpLCAwLjEpO1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNvbG9yLWJsdWUpO1xyXG5cdGNvbG9yOiB2YXIoLS1jb2xvci1ibHVlKTtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAuc2hvcnRjdXRzLWxpc3Qge1xyXG5cdGxpc3Qtc3R5bGU6IG5vbmU7XHJcblx0cGFkZGluZzogMDtcclxuXHRtYXJnaW46IDA7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLW9uYm9hcmRpbmctYm9yZGVyLXJhZGl1cyk7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTIpO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy12aWV3IC5zaG9ydGN1dHMtbGlzdCBsaSB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtMi0xKSAwO1xyXG5cdGZvbnQtc2l6ZTogMC45ZW07XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAuc2hvcnRjdXRzLWxpc3QgY29kZSB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTItMSkgdmFyKC0tc2l6ZS00LTIpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zKTtcclxuXHRmb250LWZhbWlseTogdmFyKC0tZm9udC1tb25vc3BhY2UpO1xyXG5cdG1hcmdpbi1yaWdodDogdmFyKC0tc2l6ZS00LTMpO1xyXG5cdG1pbi13aWR0aDogMTAwcHg7XHJcblx0Zm9udC1zaXplOiAwLjhlbTtcclxufVxyXG5cclxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcbi8qIENvbXBsZXRpb24gUGFnZSAqL1xyXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLmNvbXBsZXRpb24tc3VjY2VzcyB7XHJcblx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG5cdG1hcmdpbi1ib3R0b206IHZhcigtLW9uYm9hcmRpbmctc3BhY2luZyk7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLnN1Y2Nlc3MtaWNvbiB7XHJcblx0Zm9udC1zaXplOiAzZW07XHJcblx0bWFyZ2luLWJvdHRvbTogdmFyKC0tc2l6ZS00LTIpO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy12aWV3IC5zdWNjZXNzLW1lc3NhZ2Uge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRmb250LXNpemU6IDAuOTVlbTtcclxuXHRtYXJnaW46IDA7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLmZlZWRiYWNrLXNlY3Rpb24ge1xyXG5cdG1hcmdpbi1ib3R0b206IHZhcigtLW9uYm9hcmRpbmctc3BhY2luZyk7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLmNvbmZpZy1zdW1tYXJ5LWNhcmQge1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtNC0zKTtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tb25ib2FyZGluZy1ib3JkZXItcmFkaXVzKTtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAuY29uZmlnLWhlYWRlciB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGdhcDogdmFyKC0tc2l6ZS00LTIpO1xyXG5cdG1hcmdpbi1ib3R0b206IHZhcigtLXNpemUtMi0xKTtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAuY29uZmlnLWljb24ge1xyXG5cdGZvbnQtc2l6ZTogMS41ZW07XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLmNvbmZpZy1uYW1lIHtcclxuXHRmb250LXNpemU6IDEuMWVtO1xyXG5cdGZvbnQtd2VpZ2h0OiA2MDA7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAuY29uZmlnLWRlc2NyaXB0aW9uIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0Zm9udC1zaXplOiAwLjllbTtcclxuXHRtYXJnaW46IDA7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLnF1aWNrLXN0YXJ0LXN0ZXBzIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0Z2FwOiB2YXIoLS1zaXplLTQtMik7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLnF1aWNrLXN0YXJ0LXN0ZXAge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XHJcblx0Z2FwOiB2YXIoLS1zaXplLTQtMyk7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTIpO1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1vbmJvYXJkaW5nLWJvcmRlci1yYWRpdXMpO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy12aWV3IC5zdGVwLW51bWJlciB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1vbi1hY2NlbnQpO1xyXG5cdHdpZHRoOiAyNHB4O1xyXG5cdGhlaWdodDogMjRweDtcclxuXHRib3JkZXItcmFkaXVzOiA1MCU7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdGZvbnQtc2l6ZTogMC44ZW07XHJcblx0Zm9udC13ZWlnaHQ6IDYwMDtcclxuXHRmbGV4LXNocmluazogMDtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAuc3RlcC1jb250ZW50IHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG5cdGZvbnQtc2l6ZTogMC45ZW07XHJcblx0bGluZS1oZWlnaHQ6IDEuNDtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAubmV4dC1zdGVwcy1saXN0IHtcclxuXHRsaXN0LXN0eWxlOiBub25lO1xyXG5cdHBhZGRpbmc6IDA7XHJcblx0bWFyZ2luOiAwO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy12aWV3IC5uZXh0LXN0ZXBzLWxpc3QgbGkge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XHJcblx0Z2FwOiB2YXIoLS1zaXplLTQtMik7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTIpO1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1vbmJvYXJkaW5nLWJvcmRlci1yYWRpdXMpO1xyXG5cdG1hcmdpbi1ib3R0b206IHZhcigtLXNpemUtMi0xKTtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAuc3RlcC1jaGVjayB7XHJcblx0Y29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcblx0Zm9udC13ZWlnaHQ6IGJvbGQ7XHJcblx0ZmxleC1zaHJpbms6IDA7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLnN0ZXAtdGV4dCB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxuXHRmb250LXNpemU6IDAuOWVtO1xyXG5cdGxpbmUtaGVpZ2h0OiAxLjQ7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLnJlc291cmNlcy1saXN0IHtcclxuXHRkaXNwbGF5OiBncmlkO1xyXG5cdGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KGF1dG8tZml0LCBtaW5tYXgoMjAwcHgsIDFmcikpO1xyXG5cdGdhcDogdmFyKC0tc2l6ZS00LTIpO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy12aWV3IC5yZXNvdXJjZS1pdGVtIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGdhcDogdmFyKC0tc2l6ZS00LTIpO1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtNC0zKTtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tb25ib2FyZGluZy1ib3JkZXItcmFkaXVzKTtcclxuXHR0cmFuc2l0aW9uOiB2YXIoLS1vbmJvYXJkaW5nLXRyYW5zaXRpb24pO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy12aWV3IC5yZXNvdXJjZS1jbGlja2FibGUge1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAucmVzb3VyY2UtY2xpY2thYmxlOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyKTtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAucmVzb3VyY2UtaWNvbiB7XHJcblx0Zm9udC1zaXplOiAxLjVlbTtcclxuXHRmbGV4LXNocmluazogMDtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAuZmVlZGJhY2stZGVzY3JpcHRpb24ge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRmb250LXNpemU6IDAuOWVtO1xyXG5cdGxpbmUtaGVpZ2h0OiAxLjU7XHJcblx0bWFyZ2luOiAwIDAgdmFyKC0tc2l6ZS00LTIpIDA7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLmZlZWRiYWNrLWJ1dHRvbnMge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0Z2FwOiB2YXIoLS1zaXplLTQtMik7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLmZlZWRiYWNrLWJ1dHRvbiB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xyXG5cdGJvcmRlcjogbm9uZTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtNC0yKSB2YXIoLS1zaXplLTQtNCk7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tYnV0dG9uLXJhZGl1cyk7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdGZvbnQtc2l6ZTogMC45ZW07XHJcblx0dHJhbnNpdGlvbjogdmFyKC0tb25ib2FyZGluZy10cmFuc2l0aW9uKTtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAuZmVlZGJhY2stcG9zaXRpdmU6aG92ZXIge1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWNvbG9yLWdyZWVuKTtcclxuXHRjb2xvcjogd2hpdGU7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLmZlZWRiYWNrLW5lZ2F0aXZlOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1yZWQpO1xyXG5cdGNvbG9yOiB3aGl0ZTtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAuZmVlZGJhY2stdGhhbmtzIHtcclxuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTMpO1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1vbmJvYXJkaW5nLWJvcmRlci1yYWRpdXMpO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy12aWV3IC5mZWVkYmFjay10aGFua3MtbWVzc2FnZSB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxuXHRmb250LXNpemU6IDAuOWVtO1xyXG5cdG1hcmdpbjogMCAwIHZhcigtLXNpemUtNC0yKSAwO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy12aWV3IC5mZWVkYmFjay10aGFua3MgYSB7XHJcblx0Y29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcblx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy12aWV3IC5mZWVkYmFjay10aGFua3MgYTpob3ZlciB7XHJcblx0dGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLmZpbmFsLW1lc3NhZ2Uge1xyXG5cdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtNCk7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLmZpbmFsLW1lc3NhZ2UtdGV4dCB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdGZvbnQtc2l6ZTogMWVtO1xyXG5cdGZvbnQtc3R5bGU6IGl0YWxpYztcclxuXHRtYXJnaW46IDA7XHJcbn1cclxuXHJcbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG4vKiBSZXNwb25zaXZlIERlc2lnbiAqL1xyXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbkBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xyXG5cdC5vbmJvYXJkaW5nLXZpZXcge1xyXG5cdFx0LS1kaWFsb2ctd2lkdGg6IDk1dnc7XHJcblx0XHQtLWRpYWxvZy1tYXgtd2lkdGg6IDk1dnc7XHJcblx0XHQtLWRpYWxvZy1tYXgtaGVpZ2h0OiA5NXZoO1xyXG5cdH1cclxuXHJcblx0Lm9uYm9hcmRpbmctdmlldyAudXNlci1sZXZlbC1jYXJkcyB7XHJcblx0XHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcclxuXHR9XHJcblxyXG5cdC5vbmJvYXJkaW5nLXZpZXcgLmZlYXR1cmVzLW92ZXJ2aWV3IHtcclxuXHRcdGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xyXG5cdH1cclxuXHJcblx0Lm9uYm9hcmRpbmctdmlldyAudmlld3MtZ3JpZCB7XHJcblx0XHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdChhdXRvLWZpdCwgbWlubWF4KDEwMHB4LCAxZnIpKTtcclxuXHR9XHJcblxyXG5cdC5vbmJvYXJkaW5nLXZpZXcgLnJlc291cmNlcy1saXN0IHtcclxuXHRcdGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xyXG5cdH1cclxuXHJcblx0Lm9uYm9hcmRpbmctdmlldyAuZmVlZGJhY2stYnV0dG9ucyB7XHJcblx0XHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdH1cclxuXHJcblx0Lm9uYm9hcmRpbmctdmlldyAub25ib2FyZGluZy1idXR0b25zIHtcclxuXHRcdGZsZXgtd3JhcDogd3JhcDtcclxuXHRcdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdH1cclxuXHJcblx0LyogTW9kZSBhbmQgUGxhY2VtZW50IFNlbGVjdGlvbiAtIE1vYmlsZSBMYXlvdXQgKi9cclxuXHQubW9kZS1vcHRpb25zLFxyXG5cdC5wbGFjZW1lbnQtb3B0aW9ucyB7XHJcblx0XHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcclxuXHR9XHJcblxyXG5cdC5tb2RlLWNhcmQtcHJldmlldyB7XHJcblx0XHRoZWlnaHQ6IDEwMHB4O1xyXG5cdH1cclxuXHJcblx0LnBsYWNlbWVudC1jYXJkLXByZXZpZXcge1xyXG5cdFx0aGVpZ2h0OiA4MHB4O1xyXG5cdH1cclxuXHJcblx0Lm1vZGUtY2FyZCxcclxuXHQucGxhY2VtZW50LWNhcmQge1xyXG5cdFx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTMpO1xyXG5cdH1cclxuXHJcblx0LyogSW50cm8gbW9kZSBzZWxlY3Rpb24gLSBNb2JpbGUgYWRqdXN0bWVudHMgKi9cclxuXHQuaW50cm8tbW9kZS1zZWxlY3Rpb24tY29udGFpbmVyIHtcclxuXHRcdG1heC13aWR0aDogMTAwJTtcclxuXHRcdHBhZGRpbmc6IDAgdmFyKC0tc2l6ZS00LTEpO1xyXG5cdH1cclxuXHJcblx0LmludHJvLXR5cGluZyB7XHJcblx0XHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtNCkgdmFyKC0tc2l6ZS00LTIpO1xyXG5cdH1cclxuXHJcblx0LyogRm9vdGVyIGFkanVzdG1lbnRzIGZvciBtb2JpbGUgKi9cclxuXHQub25ib2FyZGluZy12aWV3IC5vbmJvYXJkaW5nLWZvb3RlciB7XHJcblx0XHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtMykgdmFyKC0tc2l6ZS00LTIpO1xyXG5cdH1cclxuXHJcblx0Lm9uYm9hcmRpbmctdmlldyAub25ib2FyZGluZy1idXR0b25zIHtcclxuXHRcdGdhcDogdmFyKC0tc2l6ZS00LTIpO1xyXG5cdH1cclxuXHJcblx0Lm9uYm9hcmRpbmctdmlldyAub25ib2FyZGluZy1idXR0b25zIGJ1dHRvbiB7XHJcblx0XHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtMikgdmFyKC0tc2l6ZS00LTMpO1xyXG5cdFx0Zm9udC1zaXplOiAwLjllbTtcclxuXHR9XHJcbn1cclxuXHJcbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG4vKiBEYXJrIFRoZW1lIEFkanVzdG1lbnRzICovXHJcbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLyogRGFyayB0aGVtZSBhZGp1c3RtZW50cyBmb3IgZm9vdGVyICovXHJcbi50aGVtZS1kYXJrIC50aGVtZS1kYXJrIC5vbmJvYXJkaW5nLXZpZXcgLm9uYm9hcmRpbmctZm9vdGVyIHtcclxuXHRib3gtc2hhZG93OiAwIC0ycHggMTZweCByZ2JhKDAsIDAsIDAsIDAuMyk7XHJcbn1cclxuXHJcbi50aGVtZS1kYXJrIC50aGVtZS1kYXJrIC5vbmJvYXJkaW5nLXZpZXcgLm9uYm9hcmRpbmctZm9vdGVyOjpiZWZvcmUge1xyXG5cdGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byB0b3AsIHJnYmEoMCwgMCwgMCwgMC4yKSwgdHJhbnNwYXJlbnQpO1xyXG59XHJcblxyXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuLyogQW5pbWF0aW9uIGFuZCBUcmFuc2l0aW9ucyAqL1xyXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi5vbmJvYXJkaW5nLXZpZXcgLm9uYm9hcmRpbmctY29udGVudCB7XHJcblx0YW5pbWF0aW9uOiBmYWRlSW5VcCAwLjNzIGVhc2Utb3V0O1xyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIGZhZGVJblVwIHtcclxuXHRmcm9tIHtcclxuXHRcdG9wYWNpdHk6IDA7XHJcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMjBweCk7XHJcblx0fVxyXG5cdHRvIHtcclxuXHRcdG9wYWNpdHk6IDE7XHJcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XHJcblx0fVxyXG59XHJcblxyXG4ub25ib2FyZGluZy12aWV3IC51c2VyLWxldmVsLWNhcmQuc2VsZWN0ZWQge1xyXG5cdGFuaW1hdGlvbjogY2FyZFNlbGVjdCAwLjJzIGVhc2Utb3V0O1xyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIGNhcmRTZWxlY3Qge1xyXG5cdDAlIHtcclxuXHRcdHRyYW5zZm9ybTogc2NhbGUoMSk7XHJcblx0fVxyXG5cdDUwJSB7XHJcblx0XHR0cmFuc2Zvcm06IHNjYWxlKDEuMDIpO1xyXG5cdH1cclxuXHQxMDAlIHtcclxuXHRcdHRyYW5zZm9ybTogc2NhbGUoMSk7XHJcblx0fVxyXG59XHJcblxyXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuLyogTW9kZSBTZWxlY3Rpb24gLSBGbHVlbnQgdnMgTGVnYWN5ICovXHJcbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xyXG5cclxuLm1vZGUtc2VsZWN0aW9uIHtcclxuXHRtYXJnaW4tYm90dG9tOiB2YXIoLS1vbmJvYXJkaW5nLXNwYWNpbmcpO1xyXG59XHJcblxyXG4ubW9kZS1vcHRpb25zIHtcclxuXHRkaXNwbGF5OiBncmlkO1xyXG5cdGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KGF1dG8tZml0LCBtaW5tYXgoMjgwcHgsIDFmcikpO1xyXG5cdGdhcDogdmFyKC0tb25ib2FyZGluZy1zcGFjaW5nKTtcclxuXHRtYXJnaW46IHZhcigtLW9uYm9hcmRpbmctc3BhY2luZykgMDtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAubW9kZS1jYXJkIHtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tb25ib2FyZGluZy1ib3JkZXItcmFkaXVzKTtcclxuXHRwYWRkaW5nOiB2YXIoLS1vbmJvYXJkaW5nLXNwYWNpbmcpO1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHR0cmFuc2l0aW9uOiB2YXIoLS1vbmJvYXJkaW5nLXRyYW5zaXRpb24pO1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG59XHJcblxyXG4ubW9kZS1jYXJkOmhvdmVyIHtcclxuXHRib3JkZXItY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcblx0Ym94LXNoYWRvdzogdmFyKC0tc2hhZG93LXMpO1xyXG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMnB4KTtcclxufVxyXG5cclxuLm1vZGUtY2FyZC5pcy1zZWxlY3RlZCB7XHJcblx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpO1xyXG5cdGJveC1zaGFkb3c6IDAgMCAwIDJweCByZ2JhKHZhcigtLWludGVyYWN0aXZlLWFjY2VudC1yZ2IpLCAwLjIpO1xyXG59XHJcblxyXG4ubW9kZS1jYXJkLWhlYWRlciB7XHJcblx0bWFyZ2luLWJvdHRvbTogdmFyKC0tc2l6ZS00LTMpO1xyXG59XHJcblxyXG4ubW9kZS1jYXJkLXRpdGxlIHtcclxuXHRmb250LXNpemU6IDEuMWVtO1xyXG5cdGZvbnQtd2VpZ2h0OiA2MDA7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxuXHRtYXJnaW4tYm90dG9tOiB2YXIoLS1zaXplLTQtMik7XHJcbn1cclxuXHJcbi5tb2RlLWNhcmQtYm9keSB7XHJcblx0bWFyZ2luLXRvcDogdmFyKC0tc2l6ZS00LTIpO1xyXG59XHJcblxyXG4ubW9kZS1jYXJkLXByZXZpZXcge1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XHJcblx0bWFyZ2luLWJvdHRvbTogdmFyKC0tc2l6ZS00LTMpO1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0Zm9udC1zaXplOiAzZW07XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcbn1cclxuXHJcbi5tb2RlLWZsdWVudCAubW9kZS1jYXJkLXByZXZpZXcge1xyXG5cdGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudChcclxuXHRcdDEzNWRlZyxcclxuXHRcdHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KSAwJSxcclxuXHRcdHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpIDEwMCVcclxuXHQpO1xyXG59XHJcblxyXG4ubW9kZS1sZWdhY3kgLm1vZGUtY2FyZC1wcmV2aWV3IHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG59XHJcblxyXG4ubW9kZS1jYXJkLWRlc2Mge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRmb250LXNpemU6IDAuOWVtO1xyXG5cdGxpbmUtaGVpZ2h0OiAxLjU7XHJcblx0bWluLWhlaWdodDogM2VtO1xyXG59XHJcblxyXG4vKiBTZWN0aW9uIHNoYXJlZCBzdHlsZXMgKi9cclxuLm9uYm9hcmRpbmctc2VjdGlvbi10aXRsZSB7XHJcblx0Zm9udC1zaXplOiAxLjI1ZW07XHJcblx0Zm9udC13ZWlnaHQ6IDYwMDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG5cdG1hcmdpbi1ib3R0b206IHZhcigtLXNpemUtNC0yKTtcclxuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbn1cclxuXHJcbi5zZWN0aW9uLWRlc2Mge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRmb250LXNpemU6IDAuOTVlbTtcclxuXHRtYXJnaW4tYm90dG9tOiB2YXIoLS1zaXplLTQtNCk7XHJcblx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG5cdGxpbmUtaGVpZ2h0OiAxLjU7XHJcbn1cclxuXHJcbi5tb2RlLXRpcHMsXHJcbi5wbGFjZW1lbnQtdGlwcyB7XHJcblx0bWFyZ2luLXRvcDogdmFyKC0tb25ib2FyZGluZy1zcGFjaW5nKTtcclxuXHR0ZXh0LWFsaWduOiBsZWZ0O1xyXG59XHJcblxyXG4ubW9kZS10aXBzIHAsXHJcbi5wbGFjZW1lbnQtdGlwcyBwIHtcclxuXHRtYXJnaW46IDA7XHJcblx0Zm9udC1zaXplOiAwLjllbTtcclxufVxyXG5cclxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcbi8qIFBsYWNlbWVudCBTZWxlY3Rpb24gLSBTaWRlbGVhdmVzIHZzIElubGluZSAqL1xyXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi5wbGFjZW1lbnQtc2VsZWN0aW9uIHtcclxuXHRtYXJnaW4tYm90dG9tOiB2YXIoLS1vbmJvYXJkaW5nLXNwYWNpbmcpO1xyXG59XHJcblxyXG4ucGxhY2VtZW50LW9wdGlvbnMge1xyXG5cdGRpc3BsYXk6IGdyaWQ7XHJcblx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoYXV0by1maXQsIG1pbm1heCgyODBweCwgMWZyKSk7XHJcblx0Z2FwOiB2YXIoLS1vbmJvYXJkaW5nLXNwYWNpbmcpO1xyXG5cdG1hcmdpbjogdmFyKC0tb25ib2FyZGluZy1zcGFjaW5nKSAwO1xyXG59XHJcblxyXG4ucGxhY2VtZW50LWNhcmQge1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1vbmJvYXJkaW5nLWJvcmRlci1yYWRpdXMpO1xyXG5cdHBhZGRpbmc6IHZhcigtLW9uYm9hcmRpbmctc3BhY2luZyk7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdHRyYW5zaXRpb246IHZhcigtLW9uYm9hcmRpbmctdHJhbnNpdGlvbik7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0b3ZlcmZsb3c6IGhpZGRlbjtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcbn1cclxuXHJcbi5wbGFjZW1lbnQtY2FyZDpob3ZlciB7XHJcblx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdGJveC1zaGFkb3c6IHZhcigtLXNoYWRvdy1zKTtcclxuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTJweCk7XHJcbn1cclxuXHJcbi5wbGFjZW1lbnQtY2FyZC5pcy1zZWxlY3RlZCB7XHJcblx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpO1xyXG5cdGJveC1zaGFkb3c6IDAgMCAwIDJweCByZ2JhKHZhcigtLWludGVyYWN0aXZlLWFjY2VudC1yZ2IpLCAwLjIpO1xyXG59XHJcblxyXG4ucGxhY2VtZW50LWNhcmQtaGVhZGVyIHtcclxuXHRtYXJnaW4tYm90dG9tOiB2YXIoLS1zaXplLTQtMyk7XHJcbn1cclxuXHJcbi5wbGFjZW1lbnQtY2FyZC10aXRsZSB7XHJcblx0Zm9udC1zaXplOiAxLjFlbTtcclxuXHRmb250LXdlaWdodDogNjAwO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcblx0bWFyZ2luLWJvdHRvbTogdmFyKC0tc2l6ZS00LTIpO1xyXG59XHJcblxyXG4ucGxhY2VtZW50LWNhcmQtYm9keSB7XHJcblx0bWFyZ2luLXRvcDogdmFyKC0tc2l6ZS00LTIpO1xyXG59XHJcblxyXG4ucGxhY2VtZW50LWNhcmQtcHJldmlldyB7XHJcblx0aGVpZ2h0OiAxMDBweDtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpO1xyXG5cdG1hcmdpbi1ib3R0b206IHZhcigtLXNpemUtNC0zKTtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxufVxyXG5cclxuLyogVmlzdWFsIHJlcHJlc2VudGF0aW9ucyBmb3IgcGxhY2VtZW50IG1vZGVzICovXHJcbi5wbGFjZW1lbnQtc2lkZWxlYXZlcyAucGxhY2VtZW50LWNhcmQtcHJldmlldyB7XHJcblx0ZGlzcGxheTogZ3JpZDtcclxuXHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAyZnIgMWZyO1xyXG5cdGdhcDogNHB4O1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtNC0yKTtcclxufVxyXG5cclxuLnBsYWNlbWVudC1wcmV2aWV3LWNvbCB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGJvcmRlci1yYWRpdXM6IDJweDtcclxuXHRoZWlnaHQ6IDEwMCU7XHJcbn1cclxuXHJcbi5wbGFjZW1lbnQtcHJldmlldy1jb2wucGxhY2VtZW50LXByZXZpZXctbWFpbiB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxuXHRvcGFjaXR5OiAwLjM7XHJcbn1cclxuXHJcbi5wbGFjZW1lbnQtaW5saW5lIC5wbGFjZW1lbnQtY2FyZC1wcmV2aWV3IHtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtMik7XHJcbn1cclxuXHJcbi5wbGFjZW1lbnQtcHJldmlldy1zaW5nbGUge1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cdGhlaWdodDogMTAwJTtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdG9wYWNpdHk6IDAuMztcclxuXHRib3JkZXItcmFkaXVzOiA0cHg7XHJcbn1cclxuXHJcbi5wbGFjZW1lbnQtY2FyZC1kZXNjIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0Zm9udC1zaXplOiAwLjllbTtcclxuXHRsaW5lLWhlaWdodDogMS41O1xyXG5cdG1pbi1oZWlnaHQ6IDNlbTtcclxufVxyXG5cclxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcbi8qIEFJLVN0eWxlIEludHJvIFR5cGluZyBBbmltYXRpb24gKi9cclxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4vKiBXcmFwcGVyIHRvIHByZXZlbnQgbGF5b3V0IHNoaWZ0ICovXHJcbi5pbnRyby10eXBpbmctd3JhcHBlciB7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0cGFkZGluZy1sZWZ0OiBjYWxjKHZhcigtLW9uYm9hcmRpbmctc3BhY2luZykgKiAzKTtcclxuXHRwYWRkaW5nLXJpZ2h0OiBjYWxjKHZhcigtLW9uYm9hcmRpbmctc3BhY2luZykgKiAzKTtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctdmlldyAub25ib2FyZGluZy1jb250ZW50LmludHJvLXR5cGluZy13cmFwcGVyIHtcclxuXHRwYWRkaW5nLWxlZnQ6IGNhbGModmFyKC0tb25ib2FyZGluZy1zcGFjaW5nKSAqIDMpO1xyXG5cdHBhZGRpbmctcmlnaHQ6IGNhbGModmFyKC0tb25ib2FyZGluZy1zcGFjaW5nKSAqIDMpO1xyXG59XHJcblxyXG4uaW50cm8tdHlwaW5nIHtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtNikgdmFyKC0tc2l6ZS00LTQpO1xyXG5cdHRleHQtYWxpZ246IGxlZnQ7XHJcblx0d2lkdGg6IDEwMCU7XHJcbn1cclxuXHJcbi5pbnRyby1saW5lIHtcclxuXHRtYXJnaW4tYm90dG9tOiB2YXIoLS1zaXplLTQtNCk7XHJcblx0bGluZS1oZWlnaHQ6IDEuNjtcclxufVxyXG5cclxuLmludHJvLWxpbmUtMSB7XHJcblx0LyogXCJIaSxcIiAtIExhcmdlIHJlc3BvbnNpdmUgZ3JlZXRpbmcgKi9cclxuXHRmb250LXNpemU6IGNsYW1wKDNyZW0sIDZ2dywgNXJlbSk7XHJcblx0Zm9udC13ZWlnaHQ6IDcwMDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG5cdG1hcmdpbi1ib3R0b206IHZhcigtLXNpemUtNC0yKTtcclxuXHRsaW5lLWhlaWdodDogMS4yO1xyXG59XHJcblxyXG4uaW50cm8tbGluZS0yIHtcclxuXHQvKiBcIlRoYW5rIHlvdSBmb3IgdXNpbmcgVGFzayBHZW5pdXNcIiAtIFNlY29uZGFyeSBncmVldGluZyAqL1xyXG5cdGZvbnQtc2l6ZTogY2xhbXAoMS41cmVtLCAzdncsIDIuNXJlbSk7XHJcblx0Zm9udC13ZWlnaHQ6IDYwMDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG5cdG1hcmdpbi1ib3R0b206IHZhcigtLXNpemUtNC02KTtcclxuXHRsaW5lLWhlaWdodDogMS40O1xyXG59XHJcblxyXG4uaW50cm8tbGluZS0zLFxyXG4uaW50cm8tbGluZS00IHtcclxuXHQvKiBEZXNjcmlwdGlvbiB0ZXh0IC0gUmVzcG9uc2l2ZSBib2R5IHRleHQgKi9cclxuXHRmb250LXNpemU6IGNsYW1wKDFyZW0sIDJ2dywgMS40cmVtKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0bWFyZ2luLWJvdHRvbTogdmFyKC0tc2l6ZS00LTUpO1xyXG5cdHRleHQtYWxpZ246IGxlZnQ7XHJcbn1cclxuXHJcbi5pbnRyby1saW5lLTQge1xyXG5cdHBhZGRpbmctdG9wOiBjYWxjKHZhcigtLW9uYm9hcmRpbmctc3BhY2luZykgKiA0KTtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctaGVhZGVyID4gLmludHJvLWxpbmUtNCB7XHJcblx0cGFkZGluZy10b3A6IDA7XHJcbn1cclxuXHJcbi8qIEFJLXN0eWxlIHN0cmVhbWluZyBjaGFyYWN0ZXJzICovXHJcbi5pbnRyby1jaGFyIHtcclxuXHRkaXNwbGF5OiBpbmxpbmU7XHJcblx0b3BhY2l0eTogMDtcclxuXHRmaWx0ZXI6IGJsdXIoNHB4KTtcclxuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTJweCk7XHJcblx0dHJhbnNpdGlvbjpcclxuXHRcdG9wYWNpdHkgMC40cyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpLFxyXG5cdFx0ZmlsdGVyIDAuNHMgY3ViaWMtYmV6aWVyKDAuNCwgMCwgMC4yLCAxKSxcclxuXHRcdHRyYW5zZm9ybSAwLjRzIGN1YmljLWJlemllcigwLjQsIDAsIDAuMiwgMSk7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG59XHJcblxyXG4uaW50cm8tY2hhci12aXNpYmxlIHtcclxuXHRvcGFjaXR5OiAxO1xyXG5cdGZpbHRlcjogYmx1cigwcHgpO1xyXG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcclxufVxyXG5cclxuLyogU3BhY2UgY2hhcmFjdGVyIGhhbmRsaW5nICovXHJcbi5pbnRyby1jaGFyLXNwYWNlIHtcclxuXHR3aWR0aDogMC4yNWVtO1xyXG59XHJcblxyXG4vKiBTdHJlYW1pbmcgY3Vyc29yIHRoYXQgZm9sbG93cyBjaGFyYWN0ZXJzICovXHJcbi5pbnRyby1jdXJzb3Ige1xyXG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuXHRtYXJnaW4tbGVmdDogMXB4O1xyXG5cdG9wYWNpdHk6IDAuNztcclxuXHRhbmltYXRpb246IGN1cnNvckJsaW5rIDFzIGluZmluaXRlO1xyXG5cdGNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcblx0dmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIGN1cnNvckJsaW5rIHtcclxuXHQwJSxcclxuXHQ0OSUge1xyXG5cdFx0b3BhY2l0eTogMC43O1xyXG5cdH1cclxuXHQ1MCUsXHJcblx0MTAwJSB7XHJcblx0XHRvcGFjaXR5OiAwO1xyXG5cdH1cclxufVxyXG5cclxuLyogQ29tcGxldGVkIHN0cmVhbSBsaW5lICovXHJcbi5zdHJlYW0tY29tcGxldGUge1xyXG5cdGFuaW1hdGlvbjogc3RyZWFtQ29tcGxldGUgMC4zcyBlYXNlLW91dDtcclxufVxyXG5cclxuQGtleWZyYW1lcyBzdHJlYW1Db21wbGV0ZSB7XHJcblx0MCUge1xyXG5cdFx0b3BhY2l0eTogMTtcclxuXHR9XHJcblx0NTAlIHtcclxuXHRcdG9wYWNpdHk6IDAuOTU7XHJcblx0fVxyXG5cdDEwMCUge1xyXG5cdFx0b3BhY2l0eTogMTtcclxuXHR9XHJcbn1cclxuXHJcbi8qIEZhZGUgb3V0IGFuaW1hdGlvbiBmb3IgcmVtb3ZpbmcgbGluZXMgKi9cclxuLmludHJvLWxpbmUtZmFkZW91dCB7XHJcblx0b3BhY2l0eTogMDtcclxuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwcHgpO1xyXG5cdHRyYW5zaXRpb246XHJcblx0XHRvcGFjaXR5IDAuNXMgZWFzZS1vdXQsXHJcblx0XHR0cmFuc2Zvcm0gMC41cyBlYXNlLW91dDtcclxuXHRwb2ludGVyLWV2ZW50czogbm9uZTtcclxufVxyXG5cclxuLyogTW9kZSBzZWxlY3Rpb24gY29udGFpbmVyIHRoYXQgYXBwZWFycyBhZnRlciBpbnRybyB0eXBpbmcgKi9cclxuLmludHJvLW1vZGUtc2VsZWN0aW9uLWNvbnRhaW5lciB7XHJcblx0YW5pbWF0aW9uOiBmYWRlSW5Gcm9tQm90dG9tIDAuNnMgZWFzZS1vdXQ7XHJcblx0YW5pbWF0aW9uLWZpbGwtbW9kZTogYm90aDtcclxuXHR3aWR0aDogMTAwJTtcclxufVxyXG5cclxuQGtleWZyYW1lcyBmYWRlSW5Gcm9tQm90dG9tIHtcclxuXHRmcm9tIHtcclxuXHRcdG9wYWNpdHk6IDA7XHJcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMjBweCk7XHJcblx0fVxyXG5cdHRvIHtcclxuXHRcdG9wYWNpdHk6IDE7XHJcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XHJcblx0fVxyXG59XHJcblxyXG4vKiBFbmhhbmNlZCByZWFkYWJpbGl0eSBvbiBkaWZmZXJlbnQgdGhlbWVzICovXHJcbi50aGVtZS1kYXJrIC5pbnRyby1saW5lLTEge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcblx0dGV4dC1zaGFkb3c6IDAgMCAyMHB4IHJnYmEodmFyKC0taW50ZXJhY3RpdmUtYWNjZW50LXJnYiksIDAuMSk7XHJcbn1cclxuXHJcbi50aGVtZS1kYXJrIC5pbnRyby1jaGFyLXZpc2libGUge1xyXG5cdC8qIFN1YnRsZSBnbG93IGVmZmVjdCBmb3IgZGFyayB0aGVtZSAqL1xyXG5cdHRleHQtc2hhZG93OiAwIDAgOHB4IHJnYmEodmFyKC0taW50ZXJhY3RpdmUtYWNjZW50LXJnYiksIDAuMDUpO1xyXG59XHJcblxyXG4vKiBTbW9vdGggYXBwZWFyYW5jZSBmb3Igd2hvbGUgdHlwaW5nIGNvbnRhaW5lciAqL1xyXG4uaW50cm8tdHlwaW5nIHtcclxuXHRhbmltYXRpb246IGZhZGVJblR5cGluZyAwLjVzIGVhc2Utb3V0O1xyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIGZhZGVJblR5cGluZyB7XHJcblx0ZnJvbSB7XHJcblx0XHRvcGFjaXR5OiAwO1xyXG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwcHgpO1xyXG5cdH1cclxuXHR0byB7XHJcblx0XHRvcGFjaXR5OiAxO1xyXG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xyXG5cdH1cclxufVxyXG5cclxuLyogVHJhbnNpdGlvbiBtZXNzYWdlIGNvbnRhaW5lciAqL1xyXG4uaW50cm8tdHJhbnNpdGlvbi1jb250YWluZXIge1xyXG5cdG1hcmdpbi10b3A6IHZhcigtLXNpemUtNC00KTtcclxuXHRtaW4taGVpZ2h0OiA2MHB4O1xyXG59XHJcblxyXG4uaW50cm8tdHJhbnNpdGlvbi1tZXNzYWdlIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0Z2FwOiB2YXIoLS1zaXplLTQtMyk7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTMpIHZhcigtLXNpemUtNC00KTtcclxuXHRiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoXHJcblx0XHQxMzVkZWcsXHJcblx0XHRyZ2JhKHZhcigtLWludGVyYWN0aXZlLWFjY2VudC1yZ2IpLCAwLjA4KSAwJSxcclxuXHRcdHJnYmEodmFyKC0taW50ZXJhY3RpdmUtYWNjZW50LXJnYiksIDAuMDMpIDEwMCVcclxuXHQpO1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHJnYmEodmFyKC0taW50ZXJhY3RpdmUtYWNjZW50LXJnYiksIDAuMik7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tb25ib2FyZGluZy1ib3JkZXItcmFkaXVzKTtcclxuXHRib3gtc2hhZG93OiB2YXIoLS1zaGFkb3ctc20pO1xyXG5cdHRyYW5zaXRpb246IGFsbCAzMDBtcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpO1xyXG59XHJcblxyXG4uaW50cm8tdHJhbnNpdGlvbi1tZXNzYWdlIC50cmFuc2l0aW9uLWljb24ge1xyXG5cdGZvbnQtc2l6ZTogMS41ZW07XHJcblx0ZmxleC1zaHJpbms6IDA7XHJcblx0YW5pbWF0aW9uOiBzcGFya2xlIDEuNXMgZWFzZS1pbi1vdXQgaW5maW5pdGU7XHJcbn1cclxuXHJcbi5pbnRyby10cmFuc2l0aW9uLW1lc3NhZ2UgLnRyYW5zaXRpb24tdGV4dCB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxuXHRmb250LXNpemU6IDAuOTVlbTtcclxuXHRsaW5lLWhlaWdodDogMS41O1xyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIHNwYXJrbGUge1xyXG5cdDAlLFxyXG5cdDEwMCUge1xyXG5cdFx0dHJhbnNmb3JtOiBzY2FsZSgxKTtcclxuXHRcdG9wYWNpdHk6IDE7XHJcblx0fVxyXG5cdDUwJSB7XHJcblx0XHR0cmFuc2Zvcm06IHNjYWxlKDEuMSk7XHJcblx0XHRvcGFjaXR5OiAwLjg7XHJcblx0fVxyXG59XHJcblxyXG4vKiBDb25maWcgY2hlY2sgdHlwaW5nIGFuaW1hdGlvbiAqL1xyXG4uY29uZmlnLWNoZWNrLXR5cGluZyB7XHJcblx0bWluLWhlaWdodDogMjAwcHg7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG59XHJcblxyXG4uY29uZmlnLWNoZWNrLXR5cGluZyAuY2hlY2stbGluZSB7XHJcblx0bGluZS1oZWlnaHQ6IDEuNjtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG5cdG1hcmdpbi1ibG9jay1zdGFydDogdmFyKC0tc2l6ZS00LTIpO1xyXG5cdG1hcmdpbi1ibG9jay1lbmQ6IHZhcigtLXNpemUtNC0yKTtcclxufVxyXG5cclxuLmNvbmZpZy1jaGVjay10eXBpbmcgLmNoZWNrLWxpbmUtMSB7XHJcblx0LyogRmlyc3QgbGluZSAtIGF0dGVudGlvbiBncmFiYmVyICovXHJcblx0Zm9udC1zaXplOiBjbGFtcCgxLjJyZW0sIDIuNXZ3LCAxLjhyZW0pO1xyXG5cdGZvbnQtd2VpZ2h0OiA2MDA7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdGxpbmUtaGVpZ2h0OiAxLjQ7XHJcbn1cclxuXHJcbi5jb25maWctY2hlY2stdHlwaW5nIC5jaGVjay1saW5lLTIsXHJcbi5jb25maWctY2hlY2stdHlwaW5nIC5jaGVjay1saW5lLTMge1xyXG5cdC8qIFByb2dyZXNzIG1lc3NhZ2VzICovXHJcblx0Zm9udC1zaXplOiBjbGFtcCgxcmVtLCAydncsIDEuM3JlbSk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdGxpbmUtaGVpZ2h0OiAxLjU7XHJcbn1cclxuXHJcbi5jb25maWctY2hlY2stdHlwaW5nIC5jaGVjay1saW5lLXJlc3VsdCB7XHJcblx0LyogUmVzdWx0IG1lc3NhZ2UgLSBoaWdobGlnaHRlZCBjYXJkICovXHJcblx0Zm9udC1zaXplOiBjbGFtcCgxLjFyZW0sIDIuMnZ3LCAxLjZyZW0pO1xyXG5cdGZvbnQtd2VpZ2h0OiA2MDA7XHJcblx0bWFyZ2luLXRvcDogdmFyKC0tc2l6ZS00LTQpO1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtNC00KSB2YXIoLS1zaXplLTQtNSk7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLW0pO1xyXG5cdGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudChcclxuXHRcdDEzNWRlZyxcclxuXHRcdHJnYmEodmFyKC0taW50ZXJhY3RpdmUtYWNjZW50LXJnYiksIDAuMDUpIDAlLFxyXG5cdFx0cmdiYSh2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQtcmdiKSwgMC4wMikgMTAwJVxyXG5cdCk7XHJcblx0Ym9yZGVyLWxlZnQ6IDNweCBzb2xpZCB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdGxpbmUtaGVpZ2h0OiAxLjU7XHJcbn1cclxuXHJcbi5jb25maWctY2hlY2stdHlwaW5nIC5jaGVjay1saW5lLXN1Y2Nlc3Mge1xyXG5cdGNvbG9yOiB2YXIoLS1jb2xvci1ncmVlbik7XHJcblx0Ym9yZGVyLWxlZnQtY29sb3I6IHZhcigtLWNvbG9yLWdyZWVuKTtcclxuXHRiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoXHJcblx0XHQxMzVkZWcsXHJcblx0XHRyZ2JhKHZhcigtLWNvbG9yLWdyZWVuLXJnYiksIDAuMDgpIDAlLFxyXG5cdFx0cmdiYSh2YXIoLS1jb2xvci1ncmVlbi1yZ2IpLCAwLjAyKSAxMDAlXHJcblx0KTtcclxufVxyXG5cclxuLmNvbmZpZy1jaGVjay10eXBpbmcgLmNoZWNrLWxpbmUtZnJlc2gge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LWFjY2VudCk7XHJcblx0Ym9yZGVyLWxlZnQtY29sb3I6IHZhcigtLXRleHQtYWNjZW50KTtcclxufVxyXG5cclxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcbi8qIE5ldyBVSSBDb21wb25lbnRzIChzaGFkY24gRGVzaWduKSAqL1xyXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi8qID09PT09IFNlbGVjdGFibGUgQ2FyZCBDb21wb25lbnQgPT09PT0gKi9cclxuLnNlbGVjdGFibGUtY2FyZHMtY29udGFpbmVyIHtcclxuXHRkaXNwbGF5OiBncmlkO1xyXG5cdGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KGF1dG8tZml0LCBtaW5tYXgoMjgwcHgsIDFmcikpO1xyXG5cdGdhcDogdmFyKC0tc2l6ZS00LTQpO1xyXG5cdG1hcmdpbjogdmFyKC0tc2l6ZS00LTQpIDA7XHJcbn1cclxuXHJcbi5zZWxlY3RhYmxlLWNhcmRzLWNvbnRhaW5lci51c2VyLWxldmVsLWNhcmRzIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiByb3c7XHJcblx0Z2FwOiB2YXIoLS1zaXplLTQtNCk7XHJcbn1cclxuXHJcbi5zZWxlY3RhYmxlLWNhcmQge1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1vbmJvYXJkaW5nLWJvcmRlci1yYWRpdXMsIHZhcigtLXJhZGl1cy1tKSk7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTQpO1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHR0cmFuc2l0aW9uOiB2YXIoLS1vbmJvYXJkaW5nLXRyYW5zaXRpb24pO1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcblx0Ym94LXNoYWRvdzogdmFyKC0tc2hhZG93LXNtKTtcclxufVxyXG5cclxuLnNlbGVjdGFibGUtY2FyZDpob3ZlciB7XHJcblx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMnB4KTtcclxuXHRib3gtc2hhZG93OiB2YXIoLS1zaGFkb3ctbGcpO1xyXG59XHJcblxyXG4uc2VsZWN0YWJsZS1jYXJkLmlzLXNlbGVjdGVkIHtcclxuXHRib3JkZXItY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3Zlcik7XHJcblx0Ym94LXNoYWRvdzogMCAwIDAgM3B4IHJnYmEodmFyKC0taW50ZXJhY3RpdmUtYWNjZW50LXJnYiksIDAuMSk7XHJcbn1cclxuXHJcbi5zZWxlY3RhYmxlLWNhcmQtaGVhZGVyIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0Z2FwOiB2YXIoLS1zaXplLTQtMik7XHJcblx0bWFyZ2luLWJvdHRvbTogdmFyKC0tc2l6ZS00LTMpO1xyXG59XHJcblxyXG4uc2VsZWN0YWJsZS1jYXJkLWljb24ge1xyXG5cdGZsZXgtc2hyaW5rOiAwO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LWFjY2VudCk7XHJcblx0b3BhY2l0eTogMC44O1xyXG59XHJcblxyXG4uc2VsZWN0YWJsZS1jYXJkLXRpdGxlLWNvbnRhaW5lciB7XHJcblx0ZmxleDogMTtcclxufVxyXG5cclxuLnNlbGVjdGFibGUtY2FyZC10aXRsZSB7XHJcblx0bWFyZ2luOiAwO1xyXG5cdGZvbnQtc2l6ZTogMS4xZW07XHJcblx0Zm9udC13ZWlnaHQ6IDYwMDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG59XHJcblxyXG4uc2VsZWN0YWJsZS1jYXJkLXN1YnRpdGxlIHtcclxuXHRkaXNwbGF5OiBibG9jaztcclxuXHRtYXJnaW4tdG9wOiB2YXIoLS1zaXplLTItMSk7XHJcblx0Zm9udC1zaXplOiAwLjg1ZW07XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbn1cclxuXHJcbi5zZWxlY3RhYmxlLWNhcmQtYmFkZ2Uge1xyXG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHR0b3A6IHZhcigtLXNpemUtNC0yKTtcclxuXHRyaWdodDogdmFyKC0tc2l6ZS00LTIpO1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtb24tYWNjZW50KTtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTItMSkgdmFyKC0tc2l6ZS00LTIpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zKTtcclxuXHRmb250LXNpemU6IDAuN2VtO1xyXG5cdGZvbnQtd2VpZ2h0OiA2MDA7XHJcblx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuXHRsZXR0ZXItc3BhY2luZzogMC4wMmVtO1xyXG59XHJcblxyXG4uc2VsZWN0YWJsZS1jYXJkLWJvZHkge1xyXG5cdG1hcmdpbi10b3A6IHZhcigtLXNpemUtNC0yKTtcclxufVxyXG5cclxuLnNlbGVjdGFibGUtY2FyZC1wcmV2aWV3IHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpO1xyXG5cdG1hcmdpbi1ib3R0b206IHZhcigtLXNpemUtNC0zKTtcclxuXHRtaW4taGVpZ2h0OiAxMDBweDtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0b3ZlcmZsb3c6IGhpZGRlbjtcclxufVxyXG5cclxuLnNlbGVjdGFibGUtY2FyZC1kZXNjcmlwdGlvbiB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdGZvbnQtc2l6ZTogMC45ZW07XHJcblx0bGluZS1oZWlnaHQ6IDEuNTtcclxuXHRtYXJnaW46IDAgMCB2YXIoLS1zaXplLTQtMikgMDtcclxufVxyXG5cclxuLnNlbGVjdGFibGUtY2FyZC1mZWF0dXJlcyB7XHJcblx0bWFyZ2luLXRvcDogdmFyKC0tc2l6ZS00LTIpO1xyXG59XHJcblxyXG4uc2VsZWN0YWJsZS1jYXJkLWZlYXR1cmVzIHVsIHtcclxuXHRtYXJnaW46IDA7XHJcblx0cGFkZGluZy1sZWZ0OiB2YXIoLS1zaXplLTQtMyk7XHJcblx0bGlzdC1zdHlsZTogbm9uZTtcclxufVxyXG5cclxuLnNlbGVjdGFibGUtY2FyZC1mZWF0dXJlcyBsaSB7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRmb250LXNpemU6IDAuODVlbTtcclxuXHRsaW5lLWhlaWdodDogMS40O1xyXG5cdG1hcmdpbi1ib3R0b206IHZhcigtLXNpemUtMi0xKTtcclxufVxyXG5cclxuLnNlbGVjdGFibGUtY2FyZC1mZWF0dXJlcyBsaTpiZWZvcmUge1xyXG5cdGNvbnRlbnQ6IFwi4oCiXCI7XHJcblx0Y29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdGxlZnQ6IGNhbGMoLTEgKiB2YXIoLS1zaXplLTQtMykpO1xyXG5cdGZvbnQtd2VpZ2h0OiBib2xkO1xyXG59XHJcblxyXG4vKiA9PT09PSBGZWF0dXJlIExpc3QgQ29tcG9uZW50ID09PT09ICovXHJcbi5mZWF0dXJlLWxpc3Qge1xyXG5cdGxpc3Qtc3R5bGU6IG5vbmU7XHJcblx0cGFkZGluZzogMDtcclxuXHRtYXJnaW46IDA7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLW9uYm9hcmRpbmctYm9yZGVyLXJhZGl1cyk7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTIpO1xyXG59XHJcblxyXG4uZmVhdHVyZS1pdGVtIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0Z2FwOiB2YXIoLS1zaXplLTQtMik7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS0yLTEpIDA7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxuXHRmb250LXNpemU6IDAuOWVtO1xyXG59XHJcblxyXG4uZmVhdHVyZS1pdGVtLWljb24ge1xyXG5cdGNvbG9yOiB2YXIoLS1jb2xvci1ncmVlbik7XHJcblx0ZmxleC1zaHJpbms6IDA7XHJcblx0ZGlzcGxheTogZmxleDtcclxufVxyXG5cclxuLmZlYXR1cmUtaXRlbS10ZXh0IHtcclxuXHRmbGV4OiAxO1xyXG59XHJcblxyXG4vKiA9PT09PSBCYWRnZSBDb21wb25lbnQgPT09PT0gKi9cclxuLm9uYm9hcmRpbmctYmFkZ2Uge1xyXG5cdGRpc3BsYXk6IGlubGluZS1mbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS0yLTEpIHZhcigtLXNpemUtNC0yKTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XHJcblx0Zm9udC1zaXplOiAwLjc1ZW07XHJcblx0Zm9udC13ZWlnaHQ6IDUwMDtcclxuXHRsZXR0ZXItc3BhY2luZzogMC4wMWVtO1xyXG5cdHRyYW5zaXRpb246IHZhcigtLW9uYm9hcmRpbmctdHJhbnNpdGlvbik7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLWJhZGdlLWRlZmF1bHQge1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctYmFkZ2Utc3VjY2VzcyB7XHJcblx0YmFja2dyb3VuZDogcmdiYSh2YXIoLS1jb2xvci1ncmVlbi1yZ2IpLCAwLjEpO1xyXG5cdGNvbG9yOiB2YXIoLS1jb2xvci1ncmVlbik7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tY29sb3ItZ3JlZW4pO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy1iYWRnZS13YXJuaW5nIHtcclxuXHRiYWNrZ3JvdW5kOiByZ2JhKHZhcigtLWNvbG9yLW9yYW5nZS1yZ2IpLCAwLjEpO1xyXG5cdGNvbG9yOiB2YXIoLS1jb2xvci1vcmFuZ2UpO1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWNvbG9yLW9yYW5nZSk7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLWJhZGdlLWluZm8ge1xyXG5cdGJhY2tncm91bmQ6IHJnYmEodmFyKC0tY29sb3ItYmx1ZS1yZ2IpLCAwLjEpO1xyXG5cdGNvbG9yOiB2YXIoLS1jb2xvci1ibHVlKTtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1jb2xvci1ibHVlKTtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctYmFkZ2UtYWNjZW50IHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XHJcblx0Ym9yZGVyOiBub25lO1xyXG59XHJcblxyXG4vKiA9PT09PSBBbGVydCBDb21wb25lbnQgPT09PT0gKi9cclxuLm9uYm9hcmRpbmctYWxlcnQge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0Z2FwOiB2YXIoLS1zaXplLTQtMik7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTMpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLW9uYm9hcmRpbmctYm9yZGVyLXJhZGl1cyk7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XHJcblx0dHJhbnNpdGlvbjogdmFyKC0tb25ib2FyZGluZy10cmFuc2l0aW9uKTtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctYWxlcnQtaWNvbiB7XHJcblx0ZmxleC1zaHJpbms6IDA7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy1hbGVydC1jb250ZW50IHtcclxuXHRmbGV4OiAxO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy1hbGVydC10aXRsZSB7XHJcblx0Zm9udC13ZWlnaHQ6IDYwMDtcclxuXHRtYXJnaW4tYm90dG9tOiB2YXIoLS1zaXplLTItMSk7XHJcblx0Zm9udC1zaXplOiAwLjk1ZW07XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLWFsZXJ0LW1lc3NhZ2Uge1xyXG5cdGZvbnQtc2l6ZTogMC45ZW07XHJcblx0bGluZS1oZWlnaHQ6IDEuNTtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctYWxlcnQtaW5mbyB7XHJcblx0YmFja2dyb3VuZDogcmdiYSh2YXIoLS1jb2xvci1ibHVlLXJnYiksIDAuMSk7XHJcblx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1ibHVlKTtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctYWxlcnQtaW5mbyAub25ib2FyZGluZy1hbGVydC1pY29uIHtcclxuXHRjb2xvcjogdmFyKC0tY29sb3ItYmx1ZSk7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLWFsZXJ0LWluZm8gLm9uYm9hcmRpbmctYWxlcnQtdGl0bGUsXHJcbi5vbmJvYXJkaW5nLWFsZXJ0LWluZm8gLm9uYm9hcmRpbmctYWxlcnQtbWVzc2FnZSB7XHJcblx0Y29sb3I6IHZhcigtLWNvbG9yLWJsdWUpO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy1hbGVydC1zdWNjZXNzIHtcclxuXHRiYWNrZ3JvdW5kOiByZ2JhKHZhcigtLWNvbG9yLWdyZWVuLXJnYiksIDAuMSk7XHJcblx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1ncmVlbik7XHJcbn1cclxuXHJcbi5vbmJvYXJkaW5nLWFsZXJ0LXN1Y2Nlc3MgLm9uYm9hcmRpbmctYWxlcnQtaWNvbiB7XHJcblx0Y29sb3I6IHZhcigtLWNvbG9yLWdyZWVuKTtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctYWxlcnQtc3VjY2VzcyAub25ib2FyZGluZy1hbGVydC10aXRsZSxcclxuLm9uYm9hcmRpbmctYWxlcnQtc3VjY2VzcyAub25ib2FyZGluZy1hbGVydC1tZXNzYWdlIHtcclxuXHRjb2xvcjogdmFyKC0tY29sb3ItZ3JlZW4pO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy1hbGVydC13YXJuaW5nIHtcclxuXHRiYWNrZ3JvdW5kOiByZ2JhKHZhcigtLWNvbG9yLW9yYW5nZS1yZ2IpLCAwLjEpO1xyXG5cdGJvcmRlci1jb2xvcjogdmFyKC0tY29sb3Itb3JhbmdlKTtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctYWxlcnQtd2FybmluZyAub25ib2FyZGluZy1hbGVydC1pY29uIHtcclxuXHRjb2xvcjogdmFyKC0tY29sb3Itb3JhbmdlKTtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctYWxlcnQtd2FybmluZyAub25ib2FyZGluZy1hbGVydC10aXRsZSxcclxuLm9uYm9hcmRpbmctYWxlcnQtd2FybmluZyAub25ib2FyZGluZy1hbGVydC1tZXNzYWdlIHtcclxuXHRjb2xvcjogdmFyKC0tY29sb3Itb3JhbmdlKTtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctYWxlcnQtZXJyb3Ige1xyXG5cdGJhY2tncm91bmQ6IHJnYmEodmFyKC0tY29sb3ItcmVkLXJnYiksIDAuMSk7XHJcblx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1jb2xvci1yZWQpO1xyXG59XHJcblxyXG4ub25ib2FyZGluZy1hbGVydC1lcnJvciAub25ib2FyZGluZy1hbGVydC1pY29uIHtcclxuXHRjb2xvcjogdmFyKC0tY29sb3ItcmVkKTtcclxufVxyXG5cclxuLm9uYm9hcmRpbmctYWxlcnQtZXJyb3IgLm9uYm9hcmRpbmctYWxlcnQtdGl0bGUsXHJcbi5vbmJvYXJkaW5nLWFsZXJ0LWVycm9yIC5vbmJvYXJkaW5nLWFsZXJ0LW1lc3NhZ2Uge1xyXG5cdGNvbG9yOiB2YXIoLS1jb2xvci1yZWQpO1xyXG59XHJcblxyXG4vKiA9PT09PSBQcm9ncmVzcyBEb3RzIENvbXBvbmVudCA9PT09PSAqL1xyXG4ucHJvZ3Jlc3MtZG90cyB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRnYXA6IHZhcigtLXNpemUtNC0yKTtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdG1hcmdpbjogdmFyKC0tc2l6ZS00LTMpIDA7XHJcbn1cclxuXHJcbi5wcm9ncmVzcy1kb3Qtd3JhcHBlciB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0Z2FwOiB2YXIoLS1zaXplLTItMSk7XHJcbn1cclxuXHJcbi5wcm9ncmVzcy1kb3Qge1xyXG5cdHdpZHRoOiA4cHg7XHJcblx0aGVpZ2h0OiA4cHg7XHJcblx0Ym9yZGVyLXJhZGl1czogNTAlO1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHR0cmFuc2l0aW9uOiB2YXIoLS1vbmJvYXJkaW5nLXRyYW5zaXRpb24pO1xyXG59XHJcblxyXG4ucHJvZ3Jlc3MtZG90LmlzLWFjdGl2ZSB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxuXHR0cmFuc2Zvcm06IHNjYWxlKDEuNSk7XHJcblx0Ym94LXNoYWRvdzogMCAwIDAgNHB4IHJnYmEodmFyKC0taW50ZXJhY3RpdmUtYWNjZW50LXJnYiksIDAuMik7XHJcbn1cclxuXHJcbi5wcm9ncmVzcy1kb3QuaXMtY29tcGxldGVkIHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdG9wYWNpdHk6IDAuNjtcclxufVxyXG5cclxuLnByb2dyZXNzLWRvdC1sYWJlbCB7XHJcblx0Zm9udC1zaXplOiAwLjdlbTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0Zm9udC13ZWlnaHQ6IDUwMDtcclxufVxyXG4iLCAiLyogTm9pc2UgTGF5ZXIgRWZmZWN0ICovXHJcbi50Zy1ub2lzZS1sYXllciB7XHJcblx0cG9zaXRpb246IGZpeGVkO1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cdGhlaWdodDogMTAwJTtcclxuXHRsZWZ0OiAwO1xyXG5cdHRvcDogMDtcclxuXHRwb2ludGVyLWV2ZW50czogbm9uZTtcclxufVxyXG5cclxuLnRnLW5vaXNlLWxheWVyOjpiZWZvcmUge1xyXG5cdGNvbnRlbnQ6IFwiXCI7XHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdHRvcDogMDtcclxuXHRsZWZ0OiAwO1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cdGhlaWdodDogMTAwJTtcclxuXHRwb2ludGVyLWV2ZW50czogbm9uZTtcclxuXHRvcGFjaXR5OiAwLjI1O1xyXG5cdGJhY2tncm91bmQtaW1hZ2U6IHVybCgnZGF0YTppbWFnZS9zdmcreG1sO3V0ZjgsPHN2ZyB3aWR0aD1cIjE5MDFcIiBoZWlnaHQ9XCI5NjFcIiB2aWV3Qm94PVwiMCAwIDE5MDEgOTYxXCIgZmlsbD1cIm5vbmVcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCI+PGcgb3BhY2l0eT1cIjAuMjVcIiBmaWx0ZXI9XCJ1cmwoJTIzZmlsdGVyMF9uXzFfMilcIj48cmVjdCB3aWR0aD1cIjE5MDFcIiBoZWlnaHQ9XCI5NjFcIiBmaWxsPVwiJTIzRUZFRkVGXCIvPjwvZz48ZGVmcz48ZmlsdGVyIGlkPVwiZmlsdGVyMF9uXzFfMlwiIHg9XCIwXCIgeT1cIjBcIiB3aWR0aD1cIjE5MDFcIiBoZWlnaHQ9XCI5NjFcIiBmaWx0ZXJVbml0cz1cInVzZXJTcGFjZU9uVXNlXCIgY29sb3ItaW50ZXJwb2xhdGlvbi1maWx0ZXJzPVwic1JHQlwiPjxmZUZsb29kIGZsb29kLW9wYWNpdHk9XCIwXCIgcmVzdWx0PVwiQmFja2dyb3VuZEltYWdlRml4XCIvPjxmZUJsZW5kIG1vZGU9XCJub3JtYWxcIiBpbj1cIlNvdXJjZUdyYXBoaWNcIiBpbjI9XCJCYWNrZ3JvdW5kSW1hZ2VGaXhcIiByZXN1bHQ9XCJzaGFwZVwiLz48ZmVUdXJidWxlbmNlIHR5cGU9XCJmcmFjdGFsTm9pc2VcIiBiYXNlRnJlcXVlbmN5PVwiMS4yNSAxLjI1XCIgc3RpdGNoVGlsZXM9XCJzdGl0Y2hcIiBudW1PY3RhdmVzPVwiM1wiIHJlc3VsdD1cIm5vaXNlXCIgc2VlZD1cIjUzMzlcIiAvPjxmZUNvbG9yTWF0cml4IGluPVwibm9pc2VcIiB0eXBlPVwibHVtaW5hbmNlVG9BbHBoYVwiIHJlc3VsdD1cImFscGhhTm9pc2VcIiAvPjxmZUNvbXBvbmVudFRyYW5zZmVyIGluPVwiYWxwaGFOb2lzZVwiIHJlc3VsdD1cImNvbG9yZWROb2lzZTFcIj48ZmVGdW5jQSB0eXBlPVwiZGlzY3JldGVcIiB0YWJsZVZhbHVlcz1cIjEgMSAxIDEgMSAxIDEgMSAxIDEgMSAxIDEgMSAxIDEgMSAxIDEgMSAxIDEgMSAxIDEgMSAxIDEgMSAxIDEgMSAxIDEgMSAxIDEgMSAxIDEgMSAxIDEgMSAxIDEgMSAxIDEgMSAxIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgXCIvPjwvZmVDb21wb25lbnRUcmFuc2Zlcj48ZmVDb21wb3NpdGUgb3BlcmF0b3I9XCJpblwiIGluMj1cInNoYXBlXCIgaW49XCJjb2xvcmVkTm9pc2UxXCIgcmVzdWx0PVwibm9pc2UxQ2xpcHBlZFwiIC8+PGZlRmxvb2QgZmxvb2QtY29sb3I9XCJyZ2JhKDAsIDAsIDAsIDAuMjUpXCIgcmVzdWx0PVwiY29sb3IxRmxvb2RcIiAvPjxmZUNvbXBvc2l0ZSBvcGVyYXRvcj1cImluXCIgaW4yPVwibm9pc2UxQ2xpcHBlZFwiIGluPVwiY29sb3IxRmxvb2RcIiByZXN1bHQ9XCJjb2xvcjFcIiAvPjxmZU1lcmdlIHJlc3VsdD1cImVmZmVjdDFfbm9pc2VfMV8yXCI+PGZlTWVyZ2VOb2RlIGluPVwic2hhcGVcIiAvPjxmZU1lcmdlTm9kZSBpbj1cImNvbG9yMVwiIC8+PC9mZU1lcmdlPjwvZmlsdGVyPjwvZGVmcz48L3N2Zz4nKTtcclxuXHRiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xyXG5cdGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcclxuXHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG5cdHotaW5kZXg6IDE7XHJcbn1cclxuXHJcbi50Zy1ub2lzZS1sYXllciA+ICoge1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHR6LWluZGV4OiAyO1xyXG59XHJcbiIsICIudGctY2hhbmdlbG9nLXZpZXcge1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtNC02KTtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0Z2FwOiB2YXIoLS1zaXplLTQtNCk7XHJcbn1cclxuXHJcbi50Zy1jaGFuZ2Vsb2ctaGVhZGVyIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0Z2FwOiB2YXIoLS1zaXplLTIpO1xyXG59XHJcblxyXG4udGctY2hhbmdlbG9nLWhlYWRlciBoMiB7XHJcblx0bWFyZ2luOiAwO1xyXG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1sYXJnZSk7XHJcblx0Zm9udC13ZWlnaHQ6IDYwMDtcclxufVxyXG5cclxuLnRnLWNoYW5nZWxvZy1tZXRhIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0Z2FwOiB2YXIoLS1zaXplLTIpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGwpO1xyXG59XHJcblxyXG4udGctY2hhbmdlbG9nLW1ldGEgYSB7XHJcblx0Y29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcblx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG59XHJcblxyXG4udGctY2hhbmdlbG9nLW1ldGEgYTpob3ZlciB7XHJcblx0dGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XHJcbn1cclxuXHJcbi50Zy1jaGFuZ2Vsb2ctYm9keSB7XHJcblx0ZmxleDogMTtcclxuXHRvdmVyZmxvdy15OiBhdXRvO1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtNC0yKTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtbSk7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcclxufVxyXG5cclxuLnRnLWNoYW5nZWxvZy1lcnJvciB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtZXJyb3IpO1xyXG5cdGZvbnQtd2VpZ2h0OiA1MDA7XHJcbn1cclxuXHJcbi50Zy1jaGFuZ2Vsb2ctYm9keSBoMSxcclxuLnRnLWNoYW5nZWxvZy1ib2R5IGgyLFxyXG4udGctY2hhbmdlbG9nLWJvZHkgaDMge1xyXG5cdGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWludGVyZmFjZSwgaW5oZXJpdCk7XHJcblx0Zm9udC13ZWlnaHQ6IDYwMDtcclxuXHRtYXJnaW4tdG9wOiB2YXIoLS1zaXplLTQtNCk7XHJcblx0bWFyZ2luLWJvdHRvbTogdmFyKC0tc2l6ZS00LTIpO1xyXG5cdGxpbmUtaGVpZ2h0OiAxLjM7XHJcbn1cclxuXHJcbi50Zy1jaGFuZ2Vsb2ctYm9keSBoMSB7XHJcblx0Zm9udC1zaXplOiAxLjY1cmVtO1xyXG59XHJcblxyXG4udGctY2hhbmdlbG9nLWJvZHkgaDIge1xyXG5cdGZvbnQtc2l6ZTogMS4zNXJlbTtcclxufVxyXG5cclxuLnRnLWNoYW5nZWxvZy1ib2R5IGgyOm5vdCg6Zmlyc3QtY2hpbGQpIHtcclxuXHRtYXJnaW4tdG9wOiB2YXIoLS1zaXplLTQtOCk7XHJcbn1cclxuXHJcbi50Zy1jaGFuZ2Vsb2ctYm9keSBoMyB7XHJcblx0Zm9udC1zaXplOiAxLjE1cmVtO1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRnYXA6IHZhcigtLXNpemUtMik7XHJcbn1cclxuXHJcbi50Zy1jaGFuZ2Vsb2ctYm9keSBoMzo6YmVmb3JlIHtcclxuXHRjb250ZW50OiBcIlwiO1xyXG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuXHR3aWR0aDogMXJlbTtcclxuXHRoZWlnaHQ6IDFyZW07XHJcblx0Ym9yZGVyLXJhZGl1czogMnB4O1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyLWhvdmVyKTtcclxuXHRmbGV4OiAwIDAgYXV0bztcclxuXHRtYXJnaW4tcmlnaHQ6IHZhcigtLXNpemUtNC0yKTtcclxufVxyXG5cclxuLnRnLWNoYW5nZWxvZy1ib2R5IGgzW2RhdGEtaGVhZGluZ149XCJCdWcgRml4ZXNcIl06OmJlZm9yZSB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3ItcmVkLCAjZTA2Yzc1KTtcclxufVxyXG5cclxuLnRnLWNoYW5nZWxvZy1ib2R5IGgzW2RhdGEtaGVhZGluZ149XCJGZWF0dXJlc1wiXTo6YmVmb3JlLFxyXG4udGctY2hhbmdlbG9nLWJvZHkgaDNbZGF0YS1oZWFkaW5nXj1cIk5ld1wiXTo6YmVmb3JlIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1jeWFuLCAjNTZiNmMyKTtcclxufVxyXG5cclxuLnRnLWNoYW5nZWxvZy1ib2R5IGgzW2RhdGEtaGVhZGluZ149XCJJbXByb3ZlbWVudHNcIl06OmJlZm9yZSxcclxuLnRnLWNoYW5nZWxvZy1ib2R5IGgzW2RhdGEtaGVhZGluZ149XCJFbmhhbmNlbWVudHNcIl06OmJlZm9yZSB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29sb3IteWVsbG93LCAjZDE5YTY2KTtcclxufVxyXG5cclxuLnRnLWNoYW5nZWxvZy1ib2R5IGgzW2RhdGEtaGVhZGluZ149XCJQZXJmb3JtYW5jZVwiXTo6YmVmb3JlIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2xvci1ncmVlbiwgIzk4YzM3OSk7XHJcbn1cclxuXHJcbi50Zy1jaGFuZ2Vsb2ctYm9keSBwICsgaDEsXHJcbi50Zy1jaGFuZ2Vsb2ctYm9keSBwICsgaDIsXHJcbi50Zy1jaGFuZ2Vsb2ctYm9keSBwICsgaDMge1xyXG5cdG1hcmdpbi10b3A6IHZhcigtLXNpemUtNC02KTtcclxufVxyXG4iLCAiLyogVGltZWxpbmUgU2lkZWJhciBWaWV3IFN0eWxlcyAqL1xyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXSAudGltZWxpbmUtc2lkZWJhci1jb250YWluZXIge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRoZWlnaHQ6IDEwMCU7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG5cdGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWludGVyZmFjZSk7XHJcblx0cGFkZGluZzogMCAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4vKiBIZWFkZXIgKi9cclxuZGl2W2RhdGEtdHlwZV49XCJ0Zy10aW1lbGluZS1zaWRlYmFyLXZpZXdcIl0gLnRpbWVsaW5lLWhlYWRlciB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtMykgdmFyKC0tc2l6ZS00LTQpO1xyXG5cdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0YmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KFxyXG5cdFx0MTM1ZGVnLFxyXG5cdFx0dmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpIDAlLFxyXG5cdFx0dmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3ZlcikgMTAwJVxyXG5cdCk7XHJcblx0ZmxleC1zaHJpbms6IDA7XHJcblx0YmFja2Ryb3AtZmlsdGVyOiBibHVyKDEwcHgpO1xyXG5cdC13ZWJraXQtYmFja2Ryb3AtZmlsdGVyOiBibHVyKDEwcHgpO1xyXG59XHJcblxyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXSAudGltZWxpbmUtdGl0bGUge1xyXG5cdGZvbnQtd2VpZ2h0OiA2MDA7XHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLW1lZGl1bSk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0Z2FwOiB2YXIoLS1zaXplLTQtMik7XHJcbn1cclxuXHJcbmRpdltkYXRhLXR5cGVePVwidGctdGltZWxpbmUtc2lkZWJhci12aWV3XCJdIC50aW1lbGluZS1jb250cm9scyB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRnYXA6IHZhcigtLXNpemUtNC0yKTtcclxufVxyXG5cclxuZGl2W2RhdGEtdHlwZV49XCJ0Zy10aW1lbGluZS1zaWRlYmFyLXZpZXdcIl0gLnRpbWVsaW5lLWJ0biB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdHdpZHRoOiB2YXIoLS1zaXplLTQtOCk7XHJcblx0aGVpZ2h0OiB2YXIoLS1zaXplLTQtOCk7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpO1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcblx0dHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZTtcclxufVxyXG5cclxuZGl2W2RhdGEtdHlwZV49XCJ0Zy10aW1lbGluZS1zaWRlYmFyLXZpZXdcIl0gLnRpbWVsaW5lLWJ0bjpob3ZlciB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyKTtcclxufVxyXG5cclxuZGl2W2RhdGEtdHlwZV49XCJ0Zy10aW1lbGluZS1zaWRlYmFyLXZpZXdcIl0gLnRpbWVsaW5lLWJ0bi5pcy1hY3RpdmUge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxufVxyXG5cclxuLyogVGltZWxpbmUgQ29udGVudCAqL1xyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXSAudGltZWxpbmUtY29udGVudCB7XHJcblx0ZmxleDogMTtcclxuXHRvdmVyZmxvdy15OiBhdXRvO1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtNC0yKSAwO1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxufVxyXG5cclxuZGl2W2RhdGEtdHlwZV49XCJ0Zy10aW1lbGluZS1zaWRlYmFyLXZpZXdcIl1cclxuLnRpbWVsaW5lLWNvbnRlbnQuZm9jdXMtbW9kZVxyXG4udGltZWxpbmUtZGF0ZS1ncm91cDpub3QoLmlzLXRvZGF5KSB7XHJcblx0b3BhY2l0eTogMC4zO1xyXG5cdHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG59XHJcblxyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXSAudGltZWxpbmUtZW1wdHkge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHRoZWlnaHQ6IDEwMCU7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdGZvbnQtc3R5bGU6IGl0YWxpYztcclxuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTgpO1xyXG59XHJcblxyXG4vKiBEYXRlIEdyb3VwcyAqL1xyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXSAudGltZWxpbmUtZGF0ZS1ncm91cCB7XHJcblx0bWFyZ2luLWJvdHRvbTogdmFyKC0tc2l6ZS00LTIpO1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtbSk7XHJcblx0dHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcclxufVxyXG5cclxuZGl2W2RhdGEtdHlwZV49XCJ0Zy10aW1lbGluZS1zaWRlYmFyLXZpZXdcIl0gLnRpbWVsaW5lLWRhdGUtZ3JvdXAuaXMtdG9kYXkge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtbSk7XHJcblx0bWFyZ2luOiAwIHZhcigtLXNpemUtNC0yKSB2YXIoLS1zaXplLTQtMik7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTIpO1xyXG5cdGJveC1zaGFkb3c6IHZhcigtLXNoYWRvdy1zKTtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG59XHJcblxyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXSAudGltZWxpbmUtZGF0ZS1oZWFkZXIge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTIpIHZhcigtLXNpemUtNC00KTtcclxuXHRmb250LXdlaWdodDogNjAwO1xyXG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbCk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtYWNjZW50KTtcclxuXHRib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdG1hcmdpbi1ib3R0b206IHZhcigtLXNpemUtNC0yKTtcclxuXHRwb3NpdGlvbjogc3RpY2t5O1xyXG5cdHRvcDogMDtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xyXG5cdHotaW5kZXg6IDE7XHJcbn1cclxuXHJcbmRpdltkYXRhLXR5cGVePVwidGctdGltZWxpbmUtc2lkZWJhci12aWV3XCJdXHJcbi50aW1lbGluZS1kYXRlLWdyb3VwLmlzLXRvZGF5XHJcbi50aW1lbGluZS1kYXRlLWhlYWRlciB7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpO1xyXG5cdG1hcmdpbjogMCAwIHZhcigtLXNpemUtNC0yKSAwO1xyXG59XHJcblxyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXSAudGltZWxpbmUtZGF0ZS1yZWxhdGl2ZSB7XHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsZXIpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRmb250LXdlaWdodDogbm9ybWFsO1xyXG59XHJcblxyXG4vKiBFdmVudHMgTGlzdCAqL1xyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXSAudGltZWxpbmUtZXZlbnRzLWxpc3Qge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRnYXA6IHZhcigtLXNpemUtMi0xKTtcclxuXHRwYWRkaW5nOiAwIHZhcigtLXNpemUtMi0zKTtcclxufVxyXG5cclxuLyogVGltZWxpbmUgRXZlbnRzICovXHJcbmRpdltkYXRhLXR5cGVePVwidGctdGltZWxpbmUtc2lkZWJhci12aWV3XCJdIC50aW1lbGluZS1ldmVudCB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogZmxleC1zdGFydDtcclxuXHRnYXA6IHZhcigtLXNpemUtNC0zKTtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtMyk7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLW0pO1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XHJcblx0bWFyZ2luLWJvdHRvbTogdmFyKC0tc2l6ZS00LTIpO1xyXG59XHJcblxyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXSAudGltZWxpbmUtZXZlbnQ6aG92ZXIge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpO1xyXG5cdGJvcmRlci1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxuXHRib3gtc2hhZG93OiAwIDJweCA4cHggcmdiYSgwLCAwLCAwLCAwLjA1KTtcclxuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTFweCk7XHJcbn1cclxuXHJcbmRpdltkYXRhLXR5cGVePVwidGctdGltZWxpbmUtc2lkZWJhci12aWV3XCJdXHJcbi50aW1lbGluZS1ldmVudDpob3ZlcjpoYXMoLnRpbWVsaW5lLWV2ZW50LWNoZWNrYm94OmhvdmVyKSB7XHJcblx0dHJhbnNmb3JtOiBub25lO1xyXG59XHJcblxyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXSAudGltZWxpbmUtZXZlbnQuaXMtY29tcGxldGVkIHtcclxuXHRvcGFjaXR5OiAwLjY7XHJcbn1cclxuXHJcbmRpdltkYXRhLXR5cGVePVwidGctdGltZWxpbmUtc2lkZWJhci12aWV3XCJdXHJcbi50aW1lbGluZS1ldmVudC5pcy1jb21wbGV0ZWRcclxuLnRpbWVsaW5lLWV2ZW50LXRleHQge1xyXG5cdHRleHQtZGVjb3JhdGlvbjogbGluZS10aHJvdWdoO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxufVxyXG5cclxuLyogRXZlbnQgVGltZSAqL1xyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXSAudGltZWxpbmUtZXZlbnQtdGltZSB7XHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsZXIpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRmb250LWZhbWlseTogdmFyKC0tZm9udC1tb25vc3BhY2UpO1xyXG5cdG1pbi13aWR0aDogNDVweDtcclxuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblx0bWFyZ2luLXRvcDogMnB4O1xyXG5cdGZsZXgtc2hyaW5rOiAwO1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTEpIHZhcigtLXNpemUtNC0yKTtcclxuXHRmb250LXdlaWdodDogNTAwO1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxufVxyXG5cclxuLyogRW5oYW5jZWQgdGltZSBkaXNwbGF5IHN0eWxlcyAqL1xyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXSAudGltZWxpbmUtZXZlbnQtdGltZS50aW1lbGluZS1ldmVudC10aW1lLXNpbmdsZSB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1vbi1hY2NlbnQpO1xyXG5cdGZvbnQtd2VpZ2h0OiA2MDA7XHJcbn1cclxuXHJcbmRpdltkYXRhLXR5cGVePVwidGctdGltZWxpbmUtc2lkZWJhci12aWV3XCJdIC50aW1lbGluZS1ldmVudC10aW1lLnRpbWVsaW5lLWV2ZW50LXRpbWUtcmFuZ2Uge1xyXG5cdGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsIHZhcigtLWludGVyYWN0aXZlLWFjY2VudCkgMCUsIHZhcigtLWludGVyYWN0aXZlLWFjY2VudC1ob3ZlcikgMTAwJSk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtb24tYWNjZW50KTtcclxuXHRmb250LXdlaWdodDogNjAwO1xyXG5cdG1pbi13aWR0aDogODBweDtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0YW5pbWF0aW9uOiBzdWJ0bGUtcHVsc2UgMnMgZWFzZS1pbi1vdXQgaW5maW5pdGU7XHJcbn1cclxuXHJcbmRpdltkYXRhLXR5cGVePVwidGctdGltZWxpbmUtc2lkZWJhci12aWV3XCJdIC50aW1lbGluZS1ldmVudC10aW1lLnRpbWVsaW5lLWV2ZW50LXRpbWUtcmFuZ2U6OmFmdGVyIHtcclxuXHRjb250ZW50OiBcIuKPsVwiO1xyXG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHR0b3A6IC02cHg7XHJcblx0cmlnaHQ6IC02cHg7XHJcblx0Zm9udC1zaXplOiAxMHB4O1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XHJcblx0Ym9yZGVyLXJhZGl1czogOTk5cHg7XHJcblx0bWluLXdpZHRoOiAxOHB4O1xyXG5cdGhlaWdodDogMTZweDtcclxuXHRwYWRkaW5nOiAwIDRweDtcclxuXHRkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdGJvcmRlcjogMnB4IHNvbGlkIHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcblx0Ym94LXNoYWRvdzogMCAxcHggM3B4IHJnYmEoMCwgMCwgMCwgMC4yKTtcclxuXHRsaW5lLWhlaWdodDogMTtcclxuXHR3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG59XHJcblxyXG4vKiBXaGVuIGR1cmF0aW9uIGlzIHByb3ZpZGVkLCBzaG93IGl0IGluc3RlYWQgb2YgdGhlIGljb24gKi9cclxuZGl2W2RhdGEtdHlwZV49XCJ0Zy10aW1lbGluZS1zaWRlYmFyLXZpZXdcIl0gLnRpbWVsaW5lLWV2ZW50LXRpbWUudGltZWxpbmUtZXZlbnQtdGltZS1yYW5nZVtkYXRhLWR1cmF0aW9uXTo6YWZ0ZXIge1xyXG5cdGNvbnRlbnQ6IGF0dHIoZGF0YS1kdXJhdGlvbik7XHJcbn1cclxuXHJcbmRpdltkYXRhLXR5cGVePVwidGctdGltZWxpbmUtc2lkZWJhci12aWV3XCJdIC50aW1lbGluZS1ldmVudC10aW1lLnRpbWVsaW5lLWV2ZW50LXRpbWUtZGVmYXVsdCB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxufVxyXG5cclxuZGl2W2RhdGEtdHlwZV49XCJ0Zy10aW1lbGluZS1zaWRlYmFyLXZpZXdcIl0gLnRpbWVsaW5lLWV2ZW50LXRpbWUudGltZWxpbmUtZXZlbnQtdGltZS1ncm91cCB7XHJcblx0YmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgdmFyKC0tdGV4dC1hY2NlbnQpIDAlLCB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpIDEwMCUpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XHJcblx0Zm9udC13ZWlnaHQ6IDcwMDtcclxuXHRtaW4td2lkdGg6IDYwcHg7XHJcbn1cclxuXHJcbmRpdltkYXRhLXR5cGVePVwidGctdGltZWxpbmUtc2lkZWJhci12aWV3XCJdIC50aW1lbGluZS1ldmVudC10aW1lLnRpbWVsaW5lLWV2ZW50LXRpbWUtZGF0ZS1vbmx5IHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0Zm9udC1zdHlsZTogaXRhbGljO1xyXG5cdG1pbi13aWR0aDogNjBweDtcclxufVxyXG5cclxuLyogVGltZSBHcm91cCBTdHlsZXMgKi9cclxuZGl2W2RhdGEtdHlwZV49XCJ0Zy10aW1lbGluZS1zaWRlYmFyLXZpZXdcIl0gLnRpbWVsaW5lLXRpbWUtZ3JvdXAge1xyXG5cdG1hcmdpbi1ib3R0b206IHZhcigtLXNpemUtNC0zKTtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLW0pO1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG59XHJcblxyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXSAudGltZWxpbmUtdGltZS1ncm91cC1oZWFkZXIge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRnYXA6IHZhcigtLXNpemUtNC0zKTtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtMikgdmFyKC0tc2l6ZS00LTMpO1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpO1xyXG5cdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcbn1cclxuXHJcbmRpdltkYXRhLXR5cGVePVwidGctdGltZWxpbmUtc2lkZWJhci12aWV3XCJdIC50aW1lbGluZS10aW1lLWdyb3VwLWNvdW50IHtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGxlcik7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdGZvbnQtd2VpZ2h0OiA1MDA7XHJcbn1cclxuXHJcbmRpdltkYXRhLXR5cGVePVwidGctdGltZWxpbmUtc2lkZWJhci12aWV3XCJdIC50aW1lbGluZS10aW1lLWdyb3VwLWV2ZW50cyB7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTIpO1xyXG59XHJcblxyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXSAudGltZWxpbmUtZXZlbnQudGltZWxpbmUtZXZlbnQtZ3JvdXBlZCB7XHJcblx0bWFyZ2luLWJvdHRvbTogdmFyKC0tc2l6ZS00LTIpO1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtNC0yKTtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpO1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XHJcbn1cclxuXHJcbmRpdltkYXRhLXR5cGVePVwidGctdGltZWxpbmUtc2lkZWJhci12aWV3XCJdIC50aW1lbGluZS1ldmVudC50aW1lbGluZS1ldmVudC1ncm91cGVkOmxhc3QtY2hpbGQge1xyXG5cdG1hcmdpbi1ib3R0b206IDA7XHJcbn1cclxuXHJcbi8qIERhdGUtb25seSBFdmVudHMgU2VjdGlvbiAqL1xyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXSAudGltZWxpbmUtZGF0ZS1vbmx5LXNlY3Rpb24ge1xyXG5cdG1hcmdpbi10b3A6IHZhcigtLXNpemUtNC00KTtcclxuXHRwYWRkaW5nLXRvcDogdmFyKC0tc2l6ZS00LTMpO1xyXG5cdGJvcmRlci10b3A6IDJweCBkYXNoZWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG59XHJcblxyXG5cclxuLyogSGlkZSBwZXItZXZlbnQgdGltZSBsYWJlbHMgaW5zaWRlIEFsbCBkYXkgc2VjdGlvbiBhcyBzYWZldHkgbmV0ICovXHJcbmRpdltkYXRhLXR5cGVePVwidGctdGltZWxpbmUtc2lkZWJhci12aWV3XCJdIC50aW1lbGluZS1kYXRlLW9ubHktc2VjdGlvbiAudGltZWxpbmUtZXZlbnQgLnRpbWVsaW5lLWV2ZW50LXRpbWUge1xyXG5cdGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcclxufVxyXG5cclxuZGl2W2RhdGEtdHlwZV49XCJ0Zy10aW1lbGluZS1zaWRlYmFyLXZpZXdcIl0gLnRpbWVsaW5lLWRhdGUtb25seS1oZWFkZXIge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRnYXA6IHZhcigtLXNpemUtNC0zKTtcclxuXHRtYXJnaW4tYm90dG9tOiB2YXIoLS1zaXplLTQtMyk7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTIpIHZhcigtLXNpemUtNC0zKTtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyKTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XHJcbn1cclxuXHJcbmRpdltkYXRhLXR5cGVePVwidGctdGltZWxpbmUtc2lkZWJhci12aWV3XCJdIC50aW1lbGluZS1kYXRlLW9ubHktdGl0bGUge1xyXG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbCk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdGZvbnQtd2VpZ2h0OiA1MDA7XHJcblx0Zm9udC1zdHlsZTogaXRhbGljO1xyXG59XHJcblxyXG4vKiBFdmVudCBDb250ZW50ICovXHJcbmRpdltkYXRhLXR5cGVePVwidGctdGltZWxpbmUtc2lkZWJhci12aWV3XCJdIC50aW1lbGluZS1ldmVudC1jb250ZW50IHtcclxuXHRmbGV4OiAxO1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XHJcblx0Z2FwOiB2YXIoLS1zaXplLTQtMik7XHJcblx0bWluLXdpZHRoOiAwO1xyXG59XHJcblxyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXSAudGltZWxpbmUtZXZlbnQtY2hlY2tib3gge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRtYXJnaW4tdG9wOiAycHg7XHJcbn1cclxuXHJcbmRpdltkYXRhLXR5cGVePVwidGctdGltZWxpbmUtc2lkZWJhci12aWV3XCJdXHJcbi50aW1lbGluZS1ldmVudC1jaGVja2JveFxyXG5pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xyXG5cdG1hcmdpbjogMDtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcbn1cclxuXHJcbmRpdltkYXRhLXR5cGVePVwidGctdGltZWxpbmUtc2lkZWJhci12aWV3XCJdIC50aW1lbGluZS1ldmVudC10ZXh0IHtcclxuXHRmbGV4OiAxO1xyXG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbCk7XHJcblx0bGluZS1oZWlnaHQ6IDEuNDtcclxuXHR3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xyXG5cdGdhcDogdmFyKC0tc2l6ZS00LTIpO1xyXG59XHJcblxyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXSAudGltZWxpbmUtZXZlbnQtaWNvbiB7XHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLW1lZGl1bSk7XHJcblx0ZmxleC1zaHJpbms6IDA7XHJcblx0bWFyZ2luLXRvcDogMXB4O1xyXG59XHJcblxyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXSAudGltZWxpbmUtZXZlbnQtY29udGVudC10ZXh0IHtcclxuXHRmbGV4OiAxO1xyXG5cdHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7XHJcbn1cclxuXHJcbi8qIEV2ZW50IEFjdGlvbnMgKi9cclxuZGl2W2RhdGEtdHlwZV49XCJ0Zy10aW1lbGluZS1zaWRlYmFyLXZpZXdcIl0gLnRpbWVsaW5lLWV2ZW50LWFjdGlvbnMge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0Z2FwOiB2YXIoLS1zaXplLTQtMSk7XHJcblx0b3BhY2l0eTogMDtcclxuXHR0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMnMgZWFzZTtcclxufVxyXG5cclxuZGl2W2RhdGEtdHlwZV49XCJ0Zy10aW1lbGluZS1zaWRlYmFyLXZpZXdcIl1cclxuLnRpbWVsaW5lLWV2ZW50OmhvdmVyXHJcbi50aW1lbGluZS1ldmVudC1hY3Rpb25zIHtcclxuXHRvcGFjaXR5OiAxO1xyXG59XHJcblxyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXSAudGltZWxpbmUtZXZlbnQtYWN0aW9uIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0d2lkdGg6IHZhcigtLXNpemUtNC02KTtcclxuXHRoZWlnaHQ6IHZhcigtLXNpemUtNC02KTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuXHR0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlO1xyXG59XHJcblxyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXSAudGltZWxpbmUtZXZlbnQtYWN0aW9uOmhvdmVyIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxufVxyXG5cclxuLyogUXVpY2sgSW5wdXQgQXJlYSAqL1xyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXSAudGltZWxpbmUtcXVpY2staW5wdXQge1xyXG5cdGZsZXgtc2hyaW5rOiAwO1xyXG5cdGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtNC00KTtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0Z2FwOiB2YXIoLS1zaXplLTQtMyk7XHJcblx0cGFkZGluZy1ib3R0b206IHZhcigtLXNpemUtNC0xMik7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdHRyYW5zaXRpb246IGFsbCAzMDBtcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpO1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcbn1cclxuXHJcbi8qIENvbGxhcHNlZCBzdGF0ZSAqL1xyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXSAudGltZWxpbmUtcXVpY2staW5wdXQuaXMtY29sbGFwc2VkIHtcclxuXHRwYWRkaW5nOiAwO1xyXG5cdGdhcDogMDtcclxuXHRoZWlnaHQ6IGF1dG87XHJcbn1cclxuXHJcbmRpdltkYXRhLXR5cGVePVwidGctdGltZWxpbmUtc2lkZWJhci12aWV3XCJdXHJcbi50aW1lbGluZS1xdWljay1pbnB1dC5pcy1jb2xsYXBzZWRcclxuLnF1aWNrLWlucHV0LWhlYWRlcixcclxuZGl2W2RhdGEtdHlwZV49XCJ0Zy10aW1lbGluZS1zaWRlYmFyLXZpZXdcIl1cclxuLnRpbWVsaW5lLXF1aWNrLWlucHV0LmlzLWNvbGxhcHNlZFxyXG4ucXVpY2staW5wdXQtZWRpdG9yLFxyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXVxyXG4udGltZWxpbmUtcXVpY2staW5wdXQuaXMtY29sbGFwc2VkXHJcbi5xdWljay1pbnB1dC1hY3Rpb25zIHtcclxuXHRkaXNwbGF5OiBub25lO1xyXG59XHJcblxyXG4vKiBBbmltYXRpb24gc3RhdGVzICovXHJcbmRpdltkYXRhLXR5cGVePVwidGctdGltZWxpbmUtc2lkZWJhci12aWV3XCJdIC50aW1lbGluZS1xdWljay1pbnB1dC5pcy1jb2xsYXBzaW5nIHtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG59XHJcblxyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXSAudGltZWxpbmUtcXVpY2staW5wdXQuaXMtZXhwYW5kaW5nIHtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG59XHJcblxyXG4vKiBDb2xsYXBzZWQgaGVhZGVyICovXHJcbmRpdltkYXRhLXR5cGVePVwidGctdGltZWxpbmUtc2lkZWJhci12aWV3XCJdIC5xdWljay1pbnB1dC1oZWFkZXItY29sbGFwc2VkIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtNC0zKSB2YXIoLS1zaXplLTQtNCk7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xyXG5cdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMjAwbXMgZWFzZTtcclxufVxyXG5cclxuZGl2W2RhdGEtdHlwZV49XCJ0Zy10aW1lbGluZS1zaWRlYmFyLXZpZXdcIl0gLnF1aWNrLWlucHV0LWhlYWRlci1jb2xsYXBzZWQ6aG92ZXIge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpO1xyXG59XHJcblxyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXSAuY29sbGFwc2VkLWV4cGFuZC1idG4ge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHR3aWR0aDogdmFyKC0tc2l6ZS00LTYpO1xyXG5cdGhlaWdodDogdmFyKC0tc2l6ZS00LTYpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1zKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0dHJhbnNpdGlvbjogYWxsIDIwMG1zIGVhc2U7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG59XHJcblxyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXSAuY29sbGFwc2VkLWV4cGFuZC1idG46aG92ZXIge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG59XHJcblxyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXSAuY29sbGFwc2VkLXRpdGxlIHtcclxuXHRmbGV4OiAxO1xyXG5cdGZvbnQtd2VpZ2h0OiA2MDA7XHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG5cdG1hcmdpbi1sZWZ0OiB2YXIoLS1zaXplLTQtMik7XHJcbn1cclxuXHJcbmRpdltkYXRhLXR5cGVePVwidGctdGltZWxpbmUtc2lkZWJhci12aWV3XCJdIC5jb2xsYXBzZWQtcXVpY2stYWN0aW9ucyB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRnYXA6IHZhcigtLXNpemUtNC0yKTtcclxufVxyXG5cclxuZGl2W2RhdGEtdHlwZV49XCJ0Zy10aW1lbGluZS1zaWRlYmFyLXZpZXdcIl0gLmNvbGxhcHNlZC1xdWljay1jYXB0dXJlLFxyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXSAuY29sbGFwc2VkLW1vcmUtb3B0aW9ucyB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdHdpZHRoOiB2YXIoLS1zaXplLTQtNyk7XHJcblx0aGVpZ2h0OiB2YXIoLS1zaXplLTQtNyk7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0dHJhbnNpdGlvbjogYWxsIDIwMG1zIGVhc2U7XHJcbn1cclxuXHJcbmRpdltkYXRhLXR5cGVePVwidGctdGltZWxpbmUtc2lkZWJhci12aWV3XCJdIC5jb2xsYXBzZWQtcXVpY2stY2FwdHVyZTpob3ZlcixcclxuZGl2W2RhdGEtdHlwZV49XCJ0Zy10aW1lbGluZS1zaWRlYmFyLXZpZXdcIl0gLmNvbGxhcHNlZC1tb3JlLW9wdGlvbnM6aG92ZXIge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG59XHJcblxyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXSAuY29sbGFwc2VkLXF1aWNrLWNhcHR1cmU6aG92ZXIge1xyXG5cdGNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG59XHJcblxyXG4vKiBFeHBhbmRlZCBoZWFkZXIgd2l0aCBjb2xsYXBzZSBidXR0b24gKi9cclxuZGl2W2RhdGEtdHlwZV49XCJ0Zy10aW1lbGluZS1zaWRlYmFyLXZpZXdcIl0gLnF1aWNrLWlucHV0LWhlYWRlciB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblx0YWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XHJcblx0Z2FwOiB2YXIoLS1zaXplLTQtMik7XHJcblx0bWFyZ2luLWJvdHRvbTogdmFyKC0tc2l6ZS00LTIpO1xyXG59XHJcblxyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXSAucXVpY2staW5wdXQtaGVhZGVyLWxlZnQge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRnYXA6IHZhcigtLXNpemUtNC0yKTtcclxufVxyXG5cclxuZGl2W2RhdGEtdHlwZV49XCJ0Zy10aW1lbGluZS1zaWRlYmFyLXZpZXdcIl0gLnF1aWNrLWlucHV0LWNvbGxhcHNlLWJ0biB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdHdpZHRoOiB2YXIoLS1zaXplLTQtNik7XHJcblx0aGVpZ2h0OiB2YXIoLS1zaXplLTQtNik7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0dHJhbnNpdGlvbjogYWxsIDIwMG1zIGVhc2U7XHJcbn1cclxuXHJcbmRpdltkYXRhLXR5cGVePVwidGctdGltZWxpbmUtc2lkZWJhci12aWV3XCJdIC5xdWljay1pbnB1dC1jb2xsYXBzZS1idG46aG92ZXIge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG59XHJcblxyXG4vKiBSb3RhdGUgY29sbGFwc2UgYnV0dG9uIGljb24gKi9cclxuZGl2W2RhdGEtdHlwZV49XCJ0Zy10aW1lbGluZS1zaWRlYmFyLXZpZXdcIl0gLnF1aWNrLWlucHV0LWNvbGxhcHNlLWJ0biBzdmcge1xyXG5cdHRyYW5zaXRpb246IHRyYW5zZm9ybSAyMDBtcyBlYXNlO1xyXG59XHJcblxyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXVxyXG4udGltZWxpbmUtcXVpY2staW5wdXQuaXMtY29sbGFwc2VkXHJcbi5xdWljay1pbnB1dC1jb2xsYXBzZS1idG5cclxuc3ZnIHtcclxuXHR0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xyXG59XHJcblxyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXSAucXVpY2staW5wdXQtdGl0bGUge1xyXG5cdGZvbnQtd2VpZ2h0OiA2MDA7XHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG59XHJcblxyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXSAucXVpY2staW5wdXQtdGFyZ2V0LWluZm8ge1xyXG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbGVyKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0Zm9udC1zdHlsZTogaXRhbGljO1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtNC0xKSB2YXIoLS1zaXplLTQtMik7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3Zlcik7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpO1xyXG5cdHdvcmQtYnJlYWs6IGJyZWFrLWFsbDtcclxufVxyXG5cclxuZGl2W2RhdGEtdHlwZV49XCJ0Zy10aW1lbGluZS1zaWRlYmFyLXZpZXdcIl0gLnF1aWNrLWlucHV0LWVkaXRvciB7XHJcblx0bWluLWhlaWdodDogODBweDtcclxuXHRib3JkZXI6IDJweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLW0pO1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTMpO1xyXG5cdGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LXRleHQpO1xyXG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbCk7XHJcblx0cmVzaXplOiB2ZXJ0aWNhbDtcclxuXHR0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xyXG59XHJcblxyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXSAucXVpY2staW5wdXQtZWRpdG9yOmZvY3VzLXdpdGhpbiB7XHJcblx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdGJveC1zaGFkb3c6IDAgMCAwIDJweCByZ2JhKHZhcigtLWludGVyYWN0aXZlLWFjY2VudC1yZ2IpLCAwLjIpO1xyXG59XHJcblxyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXSAucXVpY2staW5wdXQtZWRpdG9yIC5jbS1lZGl0b3Ige1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xyXG5cdGJvcmRlcjogbm9uZTtcclxuXHRvdXRsaW5lOiBub25lO1xyXG59XHJcblxyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXSAucXVpY2staW5wdXQtZWRpdG9yIC5jbS1mb2N1c2VkIHtcclxuXHRvdXRsaW5lOiBub25lO1xyXG59XHJcblxyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXVxyXG4ucXVpY2staW5wdXQtZWRpdG9yXHJcbi5jbS1lZGl0b3IuY20tZm9jdXNlZCB7XHJcblx0b3V0bGluZTogbm9uZTtcclxufVxyXG5cclxuZGl2W2RhdGEtdHlwZV49XCJ0Zy10aW1lbGluZS1zaWRlYmFyLXZpZXdcIl0gLnF1aWNrLWlucHV0LWFjdGlvbnMge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0Z2FwOiB2YXIoLS1zaXplLTQtMik7XHJcblx0anVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcclxufVxyXG5cclxuZGl2W2RhdGEtdHlwZV49XCJ0Zy10aW1lbGluZS1zaWRlYmFyLXZpZXdcIl0gLnF1aWNrLWNhcHR1cmUtYnRuLFxyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXSAucXVpY2stbW9kYWwtYnRuIHtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtMykgdmFyKC0tc2l6ZS00LTYpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1tKTtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGwpO1xyXG5cdGZvbnQtd2VpZ2h0OiA1MDA7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdGJvcmRlcjogbm9uZTtcclxuXHR0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xyXG5cdGJveC1zaGFkb3c6IDAgMnB4IDRweCByZ2JhKDAsIDAsIDAsIDAuMSk7XHJcbn1cclxuXHJcbmRpdltkYXRhLXR5cGVePVwidGctdGltZWxpbmUtc2lkZWJhci12aWV3XCJdIC5xdWljay1jYXB0dXJlLWJ0biB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1vbi1hY2NlbnQpO1xyXG59XHJcblxyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXSAucXVpY2stY2FwdHVyZS1idG46aG92ZXIge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudC1ob3Zlcik7XHJcblx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xcHgpO1xyXG5cdGJveC1zaGFkb3c6IDAgNHB4IDhweCByZ2JhKDAsIDAsIDAsIDAuMTUpO1xyXG59XHJcblxyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXSAucXVpY2stbW9kYWwtYnRuIHtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxufVxyXG5cclxuZGl2W2RhdGEtdHlwZV49XCJ0Zy10aW1lbGluZS1zaWRlYmFyLXZpZXdcIl0gLnF1aWNrLW1vZGFsLWJ0bjpob3ZlciB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXItaG92ZXIpO1xyXG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMXB4KTtcclxuXHRib3gtc2hhZG93OiAwIDRweCA4cHggcmdiYSgwLCAwLCAwLCAwLjE1KTtcclxufVxyXG5cclxuLyogUmVzcG9uc2l2ZSBEZXNpZ24gKi9cclxuQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XHJcblx0ZGl2W2RhdGEtdHlwZV49XCJ0Zy10aW1lbGluZS1zaWRlYmFyLXZpZXdcIl0gLnRpbWVsaW5lLWhlYWRlciB7XHJcblx0XHRwYWRkaW5nOiB2YXIoLS1zaXplLTQtMikgdmFyKC0tc2l6ZS00LTMpO1xyXG5cdH1cclxuXHJcblx0ZGl2W2RhdGEtdHlwZV49XCJ0Zy10aW1lbGluZS1zaWRlYmFyLXZpZXdcIl0gLnRpbWVsaW5lLWNvbnRyb2xzIHtcclxuXHRcdGdhcDogdmFyKC0tc2l6ZS00LTEpO1xyXG5cdH1cclxuXHJcblx0ZGl2W2RhdGEtdHlwZV49XCJ0Zy10aW1lbGluZS1zaWRlYmFyLXZpZXdcIl0gLnRpbWVsaW5lLWJ0biB7XHJcblx0XHR3aWR0aDogdmFyKC0tc2l6ZS00LTcpO1xyXG5cdFx0aGVpZ2h0OiB2YXIoLS1zaXplLTQtNyk7XHJcblx0fVxyXG5cclxuXHRkaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXSAudGltZWxpbmUtZXZlbnRzLWxpc3Qge1xyXG5cdFx0cGFkZGluZzogMCB2YXIoLS1zaXplLTItMyk7XHJcblx0fVxyXG5cclxuXHRkaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXSAudGltZWxpbmUtZXZlbnQge1xyXG5cdFx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTIpO1xyXG5cdH1cclxuXHJcblx0ZGl2W2RhdGEtdHlwZV49XCJ0Zy10aW1lbGluZS1zaWRlYmFyLXZpZXdcIl0gLnRpbWVsaW5lLXF1aWNrLWlucHV0IHtcclxuXHRcdHBhZGRpbmc6IHZhcigtLXNpemUtNC0zKTtcclxuXHR9XHJcblxyXG5cdGRpdltkYXRhLXR5cGVePVwidGctdGltZWxpbmUtc2lkZWJhci12aWV3XCJdXHJcblx0LnRpbWVsaW5lLXF1aWNrLWlucHV0LmlzLWNvbGxhcHNlZCB7XHJcblx0XHRwYWRkaW5nOiAwO1xyXG5cdH1cclxuXHJcblx0ZGl2W2RhdGEtdHlwZV49XCJ0Zy10aW1lbGluZS1zaWRlYmFyLXZpZXdcIl0gLnF1aWNrLWlucHV0LWVkaXRvciB7XHJcblx0XHRtaW4taGVpZ2h0OiA2MHB4O1xyXG5cdH1cclxuXHJcblx0ZGl2W2RhdGEtdHlwZV49XCJ0Zy10aW1lbGluZS1zaWRlYmFyLXZpZXdcIl0gLnF1aWNrLWlucHV0LWhlYWRlci1jb2xsYXBzZWQge1xyXG5cdFx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTIpIHZhcigtLXNpemUtNC0zKTtcclxuXHR9XHJcblxyXG5cdGRpdltkYXRhLXR5cGVePVwidGctdGltZWxpbmUtc2lkZWJhci12aWV3XCJdIC5jb2xsYXBzZWQtcXVpY2stY2FwdHVyZSxcclxuXHRkaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXSAuY29sbGFwc2VkLW1vcmUtb3B0aW9ucyB7XHJcblx0XHR3aWR0aDogdmFyKC0tc2l6ZS00LTYpO1xyXG5cdFx0aGVpZ2h0OiB2YXIoLS1zaXplLTQtNik7XHJcblx0fVxyXG59XHJcblxyXG4vKiBTY3JvbGxiYXIgU3R5bGluZyAqL1xyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXVxyXG4udGltZWxpbmUtY29udGVudDo6LXdlYmtpdC1zY3JvbGxiYXIge1xyXG5cdHdpZHRoOiA2cHg7XHJcbn1cclxuXHJcbmRpdltkYXRhLXR5cGVePVwidGctdGltZWxpbmUtc2lkZWJhci12aWV3XCJdXHJcbi50aW1lbGluZS1jb250ZW50Ojotd2Via2l0LXNjcm9sbGJhci10cmFjayB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xyXG59XHJcblxyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXVxyXG4udGltZWxpbmUtY29udGVudDo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWIge1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRib3JkZXItcmFkaXVzOiAzcHg7XHJcbn1cclxuXHJcbmRpdltkYXRhLXR5cGVePVwidGctdGltZWxpbmUtc2lkZWJhci12aWV3XCJdXHJcbi50aW1lbGluZS1jb250ZW50Ojotd2Via2l0LXNjcm9sbGJhci10aHVtYjpob3ZlciB7XHJcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXItaG92ZXIpO1xyXG59XHJcblxyXG4vKiBBbmltYXRpb24gKi9cclxuQGtleWZyYW1lcyBmYWRlSW4ge1xyXG5cdGZyb20ge1xyXG5cdFx0b3BhY2l0eTogMDtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMHB4KTtcclxuXHR9XHJcblx0dG8ge1xyXG5cdFx0b3BhY2l0eTogMTtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcclxuXHR9XHJcbn1cclxuXHJcbkBrZXlmcmFtZXMgc3VidGxlLXB1bHNlIHtcclxuXHQwJSwgMTAwJSB7XHJcblx0XHRib3gtc2hhZG93OiAwIDAgMCAwIHJnYmEodmFyKC0taW50ZXJhY3RpdmUtYWNjZW50LXJnYiksIDAuNCk7XHJcblx0fVxyXG5cdDUwJSB7XHJcblx0XHRib3gtc2hhZG93OiAwIDAgMCA0cHggcmdiYSh2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQtcmdiKSwgMC4xKTtcclxuXHR9XHJcbn1cclxuXHJcbi8qIEZvY3VzIE1vZGUgKi9cclxuZGl2W2RhdGEtdHlwZV49XCJ0Zy10aW1lbGluZS1zaWRlYmFyLXZpZXdcIl0gLnRpbWVsaW5lLWNvbnRlbnQuZm9jdXMtbW9kZSB7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG59XHJcblxyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXVxyXG4udGltZWxpbmUtY29udGVudC5mb2N1cy1tb2RlOjpiZWZvcmUge1xyXG5cdGNvbnRlbnQ6IFwiXCI7XHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdHRvcDogMDtcclxuXHRsZWZ0OiAwO1xyXG5cdHJpZ2h0OiAwO1xyXG5cdGJvdHRvbTogMDtcclxuXHRiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoXHJcblx0XHR0byBib3R0b20sXHJcblx0XHRyZ2JhKHZhcigtLWJhY2tncm91bmQtcHJpbWFyeS1yZ2IpLCAwLjkpIDAlLFxyXG5cdFx0cmdiYSh2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnktcmdiKSwgMC43KSA1MCUsXHJcblx0XHRyZ2JhKHZhcigtLWJhY2tncm91bmQtcHJpbWFyeS1yZ2IpLCAwLjkpIDEwMCVcclxuXHQpO1xyXG5cdHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG5cdHotaW5kZXg6IDA7XHJcbn1cclxuXHJcbmRpdltkYXRhLXR5cGVePVwidGctdGltZWxpbmUtc2lkZWJhci12aWV3XCJdXHJcbi50aW1lbGluZS1jb250ZW50LmZvY3VzLW1vZGVcclxuLnRpbWVsaW5lLWRhdGUtZ3JvdXAuaXMtdG9kYXkge1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHR6LWluZGV4OiAxO1xyXG59XHJcblxyXG4vKiBNYXJrZG93biByZW5kZXJlciBzdHlsZXMgaW4gdGltZWxpbmUgZXZlbnRzICovXHJcbmRpdltkYXRhLXR5cGVePVwidGctdGltZWxpbmUtc2lkZWJhci12aWV3XCJdXHJcbi50aW1lbGluZS1ldmVudC1jb250ZW50LXRleHRcclxuLm1hcmtkb3duLWJsb2NrIHtcclxuXHRtYXJnaW46IDA7XHJcblx0cGFkZGluZzogMDtcclxuXHRmb250LXNpemU6IGluaGVyaXQ7XHJcblx0bGluZS1oZWlnaHQ6IGluaGVyaXQ7XHJcbn1cclxuXHJcbmRpdltkYXRhLXR5cGVePVwidGctdGltZWxpbmUtc2lkZWJhci12aWV3XCJdXHJcbi50aW1lbGluZS1ldmVudC1jb250ZW50LXRleHRcclxuLm1hcmtkb3duLWJsb2NrXHJcbnAge1xyXG5cdG1hcmdpbjogMDtcclxuXHRwYWRkaW5nOiAwO1xyXG5cdGZvbnQtc2l6ZTogaW5oZXJpdDtcclxuXHRsaW5lLWhlaWdodDogaW5oZXJpdDtcclxufVxyXG5cclxuZGl2W2RhdGEtdHlwZV49XCJ0Zy10aW1lbGluZS1zaWRlYmFyLXZpZXdcIl1cclxuLnRpbWVsaW5lLWV2ZW50LWNvbnRlbnQtdGV4dFxyXG4ubWFya2Rvd24tYmxvY2tcclxuc3Ryb25nLFxyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXVxyXG4udGltZWxpbmUtZXZlbnQtY29udGVudC10ZXh0XHJcbi5tYXJrZG93bi1ibG9ja1xyXG5lbSxcclxuZGl2W2RhdGEtdHlwZV49XCJ0Zy10aW1lbGluZS1zaWRlYmFyLXZpZXdcIl1cclxuLnRpbWVsaW5lLWV2ZW50LWNvbnRlbnQtdGV4dFxyXG4ubWFya2Rvd24tYmxvY2tcclxuY29kZSB7XHJcblx0Zm9udC1zaXplOiBpbmhlcml0O1xyXG59XHJcblxyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXVxyXG4udGltZWxpbmUtZXZlbnQtY29udGVudC10ZXh0XHJcbi5tYXJrZG93bi1ibG9ja1xyXG5hIHtcclxuXHRjb2xvcjogdmFyKC0tbGluay1jb2xvcik7XHJcblx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG59XHJcblxyXG5kaXZbZGF0YS10eXBlXj1cInRnLXRpbWVsaW5lLXNpZGViYXItdmlld1wiXVxyXG4udGltZWxpbmUtZXZlbnQtY29udGVudC10ZXh0XHJcbi5tYXJrZG93bi1ibG9ja1xyXG5hOmhvdmVyIHtcclxuXHR0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcclxufVxyXG5cclxuZGl2W2RhdGEtdHlwZV49XCJ0Zy10aW1lbGluZS1zaWRlYmFyLXZpZXdcIl1cclxuLnRpbWVsaW5lLWV2ZW50LWNvbnRlbnQtdGV4dFxyXG4ubWFya2Rvd24tYmxvY2tcclxudWwsXHJcbmRpdltkYXRhLXR5cGVePVwidGctdGltZWxpbmUtc2lkZWJhci12aWV3XCJdXHJcbi50aW1lbGluZS1ldmVudC1jb250ZW50LXRleHRcclxuLm1hcmtkb3duLWJsb2NrXHJcbm9sIHtcclxuXHRtYXJnaW46IDA7XHJcblx0cGFkZGluZy1sZWZ0OiB2YXIoLS1zaXplLTQtNCk7XHJcbn1cclxuXHJcbmRpdltkYXRhLXR5cGVePVwidGctdGltZWxpbmUtc2lkZWJhci12aWV3XCJdXHJcbi50aW1lbGluZS1ldmVudC1jb250ZW50LXRleHRcclxuLm1hcmtkb3duLWJsb2NrXHJcbmxpIHtcclxuXHRtYXJnaW46IDA7XHJcblx0cGFkZGluZzogMDtcclxufVxyXG4iLCAiLyogU3R5bGVzIGZvciB0aGUgUmV3YXJkIE1vZGFsICovXHJcbi5yZXdhcmQtbW9kYWwtY29udGVudCB7XHJcblx0dGV4dC1hbGlnbjogY2VudGVyOyAvKiBDZW50ZXIgYWxpZ24gY29udGVudCAqL1xyXG59XHJcblxyXG4ucmV3YXJkLW1vZGFsIC5tb2RhbC10aXRsZSB7XHJcblx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG59XHJcblxyXG4ucmV3YXJkLW5hbWUge1xyXG5cdGZvbnQtc2l6ZTogMS4yZW07XHJcblx0Zm9udC13ZWlnaHQ6IGJvbGQ7XHJcblx0bWFyZ2luLWJvdHRvbTogMTVweDtcclxufVxyXG5cclxuLnJld2FyZC1pbWFnZS1jb250YWluZXIge1xyXG5cdG1hcmdpbi1ib3R0b206IDIwcHg7XHJcblx0ZGlzcGxheTogZmxleDsgLyogVXNlIGZsZXhib3ggZm9yIGNlbnRlcmluZyAqL1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyOyAvKiBDZW50ZXIgaG9yaXpvbnRhbGx5ICovXHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjsgLyogQ2VudGVyIHZlcnRpY2FsbHkgKi9cclxufVxyXG5cclxuLnJld2FyZC1pbWFnZSB7XHJcblx0bWF4LXdpZHRoOiA4MCU7IC8qIExpbWl0IGltYWdlIHdpZHRoICovXHJcblx0bWF4LWhlaWdodDogMzAwcHg7IC8qIExpbWl0IGltYWdlIGhlaWdodCAqL1xyXG5cdGJvcmRlci1yYWRpdXM6IDhweDsgLyogT3B0aW9uYWw6IGFkZCByb3VuZGVkIGNvcm5lcnMgKi9cclxuXHRib3gtc2hhZG93OiAwIDJweCA0cHggcmdiYSgwLCAwLCAwLCAwLjEpOyAvKiBPcHRpb25hbDogYWRkIHN1YnRsZSBzaGFkb3cgKi9cclxufVxyXG5cclxuLnJld2FyZC1pbWFnZS1lcnJvciB7XHJcblx0Zm9udC1zdHlsZTogaXRhbGljO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTsgLyogVXNlIE9ic2lkaWFuJ3MgbXV0ZWQgdGV4dCBjb2xvciAqL1xyXG59XHJcblxyXG4ucmV3YXJkLXNwYWNlciB7XHJcblx0aGVpZ2h0OiAyMHB4OyAvKiBBZGQgc29tZSBzcGFjZSBiZWZvcmUgdGhlIGJ1dHRvbnMgKi9cclxufVxyXG5cclxuLyogU3R5bGUgdGhlIGJ1dHRvbnMgd2l0aGluIHRoZSBtb2RhbCAqL1xyXG4udGFzay1nZW5pdXMtcmV3YXJkLW1vZGFsIC5zZXR0aW5nLWl0ZW0tY29udHJvbCB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgLyogQ2VudGVyIGJ1dHRvbnMgKi9cclxuXHRnYXA6IDEwcHg7IC8qIEFkZCBzcGFjZSBiZXR3ZWVuIGJ1dHRvbnMgKi9cclxufVxyXG4iLCAiLm1hcmtkb3duLXNvdXJjZS12aWV3Lm1vZC1jbTYgLmNtLWd1dHRlcnMudGFzay1ndXR0ZXIge1xyXG5cdG1hcmdpbi1pbmxpbmUtZW5kOiAwICFpbXBvcnRhbnQ7XHJcblx0bWFyZ2luLWlubGluZS1zdGFydDogdmFyKC0tZmlsZS1mb2xkaW5nLW9mZnNldCk7XHJcbn1cclxuXHJcbi5pcy1tb2JpbGUgLm1hcmtkb3duLXNvdXJjZS12aWV3Lm1vZC1jbTYgLmNtLWd1dHRlcnMudGFzay1ndXR0ZXIge1xyXG5cdG1hcmdpbi1pbmxpbmUtc3RhcnQ6IDAgIWltcG9ydGFudDtcclxufVxyXG5cclxuLnRhc2stZGV0YWlscy1wb3BvdmVyLnRnLW1lbnUge1xyXG5cdHotaW5kZXg6IDIwO1xyXG5cdHBvc2l0aW9uOiBmaXhlZDtcclxuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTMpO1xyXG5cdGJveC1zaGFkb3c6IHZhcigtLXNoYWRvdy1sKTtcclxufVxyXG5cclxuLnRhc2stZ3V0dGVyIHtcclxuXHR3aWR0aDogMjZweDtcclxufVxyXG5cclxuLnRhc2stZ3V0dGVyLW1hcmtlciB7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zbWFsbGVyKTtcclxuXHRvcGFjaXR5OiAwLjE7XHJcblx0dHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzIGVhc2U7XHJcbn1cclxuXHJcbi50YXNrLWd1dHRlci1tYXJrZXI6aG92ZXIge1xyXG5cdG9wYWNpdHk6IDE7XHJcbn1cclxuXHJcbi50YXNrLXBvcG92ZXItY29udGVudCB7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTMpO1xyXG5cdG1heC13aWR0aDogMzAwcHg7XHJcblx0bWF4LWhlaWdodDogNDAwcHg7XHJcblx0b3ZlcmZsb3c6IGF1dG87XHJcbn1cclxuXHJcbi50YXNrLW1ldGFkYXRhLWVkaXRvciB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdGdhcDogdmFyKC0tc2l6ZS00LTIpO1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtMi0yKTtcclxuXHRoZWlnaHQ6IDEwMCU7XHJcbn1cclxuXHJcbi5maWVsZC1jb250YWluZXIge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRtYXJnaW4tYm90dG9tOiB2YXIoLS1zaXplLTItMik7XHJcbn1cclxuXHJcbi5maWVsZC1sYWJlbCB7XHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXNtYWxsZXN0KTtcclxuXHRmb250LXdlaWdodDogdmFyKC0tZm9udC1ib2xkKTtcclxuXHRtYXJnaW4tYm90dG9tOiB2YXIoLS1zaXplLTItMSk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG59XHJcblxyXG4uYWN0aW9uLWJ1dHRvbnMge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG5cdG1hcmdpbi10b3A6IHZhcigtLXNpemUtNC0yKTtcclxuXHRnYXA6IHZhcigtLXNpemUtNC0yKTtcclxufVxyXG5cclxuLmFjdGlvbi1idXR0b24ge1xyXG5cdHBhZGRpbmc6IHZhcigtLXNpemUtMi0yKSB2YXIoLS1zaXplLTQtMik7XHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXNtYWxsZXN0KTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG59XHJcblxyXG4udGFzay1ndXR0ZXItbWFya2VyLmNsaWNrYWJsZS1pY29uIHtcclxuXHR3aWR0aDogMjRweDtcclxuXHRwYWRkaW5nOiB2YXIoLS1zaXplLTItMSk7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG59XHJcblxyXG4vKiBUYWJiZWQgSW50ZXJmYWNlIFN0eWxlcyAqL1xyXG4udGFzay1kZXRhaWxzLXBvcG92ZXIgLnRhYnMtbWFpbi1jb250YWluZXIge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHR3aWR0aDogMTAwJTsgLyogRW5zdXJlIGl0IHRha2VzIGF2YWlsYWJsZSB3aWR0aCAqL1xyXG59XHJcblxyXG4udGFzay1kZXRhaWxzLXBvcG92ZXIgLnRhYnMtbmF2aWdhdGlvbiB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRtYXJnaW4tYm90dG9tOiB2YXIoLS1zaXplLTQtMik7XHJcblx0Z2FwOiB2YXIoLS1zaXplLTQtMik7XHJcbn1cclxuXHJcbi50YXNrLWRldGFpbHMtcG9wb3ZlciAudGFiLWJ1dHRvbiB7XHJcblx0cGFkZGluZzogdmFyKC0tc2l6ZS0yLTIpIHZhcigtLXNpemUtNC0yKTtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0Ym9yZGVyOiBub25lO1xyXG5cdGJhY2tncm91bmQ6IG5vbmU7XHJcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsKTsgLyogQWRqdXN0ZWQgZm9yIGNvbnNpc3RlbmN5ICovXHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdG1hcmdpbi1ib3R0b206IC0xcHg7IC8qIEFsaWduIHdpdGggcGFyZW50IGJvcmRlciAqL1xyXG5cdHRyYW5zaXRpb246IGNvbG9yIDAuMnMgZWFzZSwgYm9yZGVyLWNvbG9yIDAuMnMgZWFzZTtcclxufVxyXG5cclxuLnRhc2stZGV0YWlscy1wb3BvdmVyIC50YWItYnV0dG9uOmhvdmVyIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG59XHJcblxyXG4udGFzay1kZXRhaWxzLXBvcG92ZXIgLnRhYi1idXR0b24uYWN0aXZlIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1vbi1hY2NlbnQpO1xyXG5cdGZvbnQtd2VpZ2h0OiB2YXIoLS1mb250LWJvbGQpO1xyXG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcbn1cclxuXHJcbi50YXNrLWRldGFpbHMtcG9wb3ZlciAudGFiLXBhbmUge1xyXG5cdGRpc3BsYXk6IG5vbmU7IC8qIEhpZGUgaW5hY3RpdmUgcGFuZXMgYnkgZGVmYXVsdCAqL1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IC8qIEVuc3VyZSBjb250ZW50IHdpdGhpbiBwYW5lIGZsb3dzIHZlcnRpY2FsbHkgKi9cclxuXHRnYXA6IHZhcigtLXNpemUtNC0yKTsgLyogQWRkIHNvbWUgZ2FwIGJldHdlZW4gZWxlbWVudHMgaW4gdGhlIHBhbmUgKi9cclxufVxyXG5cclxuLnRhc2stZGV0YWlscy1wb3BvdmVyIC50YWItcGFuZS5hY3RpdmUge1xyXG5cdGRpc3BsYXk6IGZsZXg7IC8qIFNob3cgYWN0aXZlIHBhbmUgKi9cclxufVxyXG5cclxuLnRhc2stZGV0YWlscy1wb3BvdmVyIC5kZXRhaWxzLXN0YXR1cy1zZWxlY3RvcixcclxuLnRhc2stc3RhdHVzLWVkaXRvciAuZGV0YWlscy1zdGF0dXMtc2VsZWN0b3Ige1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IHJvdztcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblxyXG5cdG1hcmdpbi1ib3R0b206IHZhcigtLXNpemUtNC0yKTtcclxuXHRtYXJnaW4tdG9wOiB2YXIoLS1zaXplLTQtMik7XHJcbn1cclxuXHJcbi50YXNrLWRldGFpbHMtcG9wb3ZlciAucXVpY2stY2FwdHVyZS1zdGF0dXMtc2VsZWN0b3IsXHJcbi50YXNrLXN0YXR1cy1lZGl0b3IgLnF1aWNrLWNhcHR1cmUtc3RhdHVzLXNlbGVjdG9yIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiByb3c7XHJcblx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG5cclxuXHRnYXA6IHZhcigtLXNpemUtNC0zKTtcclxufVxyXG5cclxuLnRhc2stZGV0YWlscy1wb3BvdmVyIC5xdWljay1jYXB0dXJlLXN0YXR1cy1zZWxlY3Rvci1sYWJlbCxcclxuLnRhc2stc3RhdHVzLWVkaXRvciAucXVpY2stY2FwdHVyZS1zdGF0dXMtc2VsZWN0b3ItbGFiZWwge1xyXG5cdGRpc3BsYXk6IG5vbmU7XHJcbn1cclxuXHJcbi5tb2RhbC1jb250ZW50LnRhc2stbWV0YWRhdGEtZWRpdG9yIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0Z2FwOiB2YXIoLS1zaXplLTQtMik7XHJcbn1cclxuXHJcbi5tZXRhZGF0YS1mdWxsLWNvbnRhaW5lciB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdGdhcDogdmFyKC0tc2l6ZS00LTIpO1xyXG59XHJcblxyXG4ubWV0YWRhdGEtZnVsbC1jb250YWluZXIgLmRhdGVzLWNvbnRhaW5lciB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdGdhcDogdmFyKC0tc2l6ZS00LTIpO1xyXG59XHJcbiIsICIvKiBmbHVlbnQgVmlldyBNYWluIExheW91dCAqL1xuLnRhc2stZ2VuaXVzLWZsdWVudC12aWV3IHtcblx0aGVpZ2h0OiAxMDAlO1xuXHRvdmVyZmxvdzogaGlkZGVuO1xuXHRwYWRkaW5nOiAwO1xufVxuXG4udGctZmx1ZW50LWNvbnRhaW5lciB7XG5cdGhlaWdodDogMTAwJTtcblx0ZGlzcGxheTogZmxleDtcblx0ZmxleC1kaXJlY3Rpb246IHJvdztcblx0Ym9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcbn1cblxuLnZpZXctY29udGVudC50YXNrLWdlbml1cy1mbHVlbnQtdmlldyB7XG5cdHBhZGRpbmc6IDA7XG59XG5cbi50Zy1mbHVlbnQtbGF5b3V0IHtcblx0ZGlzcGxheTogZmxleDtcblx0aGVpZ2h0OiAxMDAlO1xuXHR3aWR0aDogMTAwJTtcblx0b3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLyogU2lkZWJhciBTdHlsZXMgKi9cbi50Zy1mbHVlbnQtc2lkZWJhci1jb250YWluZXIge1xuXHR3aWR0aDogMjYwcHg7XG5cdG1pbi13aWR0aDogMjAwcHg7XG5cdG1heC13aWR0aDogNDAwcHg7XG5cdC8qIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTsgKi9cblx0Ym9yZGVyLXJpZ2h0OiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4uZmx1ZW50LXNpZGViYXIge1xuXHRoZWlnaHQ6IDEwMCU7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG59XG5cbi5mbHVlbnQtc2lkZWJhci1oZWFkZXIge1xuXHRwYWRkaW5nOiAxMnB4O1xuXHRib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xufVxuXG4vKiBXb3Jrc3BhY2UgU2VsZWN0b3IgKi9cbi53b3Jrc3BhY2Utc2VsZWN0b3ItYnV0dG9uIHtcblx0ZGlzcGxheTogZmxleDtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXHR3aWR0aDogMTAwJTtcblx0cGFkZGluZzogOHB4O1xuXHRiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcblx0Ym9yZGVyOiBub25lO1xuXHRib3JkZXItcmFkaXVzOiA2cHg7XG5cdGN1cnNvcjogcG9pbnRlcjtcblx0dHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjE1cztcbn1cblxuLndvcmtzcGFjZS1zZWxlY3Rvci1idXR0b246aG92ZXIge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyKTtcbn1cblxuLndvcmtzcGFjZS1pbmZvIHtcblx0ZGlzcGxheTogZmxleDtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0Z2FwOiAxMnB4O1xufVxuXG4ud29ya3NwYWNlLWljb24ge1xuXHR3aWR0aDogMzJweDtcblx0aGVpZ2h0OiAzMnB4O1xuXHRib3JkZXItcmFkaXVzOiA4cHg7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXHRjb2xvcjogd2hpdGU7XG59XG5cbi53b3Jrc3BhY2UtaWNvbiBzdmcge1xuXHR3aWR0aDogMTZweDtcblx0aGVpZ2h0OiAxNnB4O1xufVxuXG4ud29ya3NwYWNlLWRldGFpbHMge1xuXHR0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG4ud29ya3NwYWNlLW5hbWUge1xuXHRmb250LXdlaWdodDogNTAwO1xuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xufVxuXG4ud29ya3NwYWNlLWxhYmVsIHtcblx0Zm9udC1zaXplOiAxMnB4O1xuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XG59XG5cbi53b3Jrc3BhY2UtZHJvcGRvd24taWNvbiB7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcbn1cblxuLyogTmV3IFRhc2sgQnV0dG9uICovXG5idXR0b24uZmx1ZW50LW5ldy10YXNrLWJ0biB7XG5cdHdpZHRoOiAxMDAlO1xuXHRtYXJnaW4tdG9wOiAxMnB4O1xuXHRib3gtc2hhZG93OiB1bnNldDtcblx0cGFkZGluZzogMTBweDtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcblx0Y29sb3I6IHZhcigtLXRleHQtb24tYWNjZW50KTtcblx0Ym9yZGVyOiBub25lO1xuXHRib3JkZXItcmFkaXVzOiA2cHg7XG5cdGZvbnQtd2VpZ2h0OiA1MDA7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXHRnYXA6IDhweDtcblx0Y3Vyc29yOiBwb2ludGVyO1xuXHR0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMTVzO1xufVxuXG5idXR0b24uZmx1ZW50LW5ldy10YXNrLWJ0bjpob3ZlciB7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudC1ob3Zlcik7XG59XG5cbi5mbHVlbnQtbmV3LXRhc2staWNvbiB7XG5cdGRpc3BsYXk6IGZsZXg7XG59XG5cbi8qIFNpZGViYXIgQ29udGVudCAqL1xuLmZsdWVudC1zaWRlYmFyLWNvbnRlbnQge1xuXHRmbGV4OiAxO1xuXHRvdmVyZmxvdy15OiBhdXRvO1xuXHRwYWRkaW5nOiA4cHggMDtcblx0LS1pY29uLXNpemU6IDE2cHg7XG59XG5cbi5mbHVlbnQtc2lkZWJhci1zZWN0aW9uIHtcblx0cGFkZGluZzogOHB4IDA7XG59XG5cbi5mbHVlbnQtc2lkZWJhci1zZWN0aW9uICsgLmZsdWVudC1zaWRlYmFyLXNlY3Rpb24ge1xuXHRib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xufVxuXG4uZmx1ZW50LXNlY3Rpb24taGVhZGVyIHtcblx0ZGlzcGxheTogZmxleDtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXHRwYWRkaW5nOiA0cHggMTZweDtcblx0bWFyZ2luLWJvdHRvbTogNHB4O1xufVxuXG4uZmx1ZW50LXNlY3Rpb24taGVhZGVyIHNwYW4ge1xuXHRmb250LXNpemU6IDEycHg7XG5cdGZvbnQtd2VpZ2h0OiA2MDA7XG5cdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcbn1cblxuLmZsdWVudC1wcm9qZWN0LWhlYWRlci1idXR0b25zIHtcblx0ZGlzcGxheTogZmxleDtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0Z2FwOiA4cHg7XG59XG5cbi5mbHVlbnQtYWRkLXByb2plY3QtYnRuLFxuLmZsdWVudC1zb3J0LXByb2plY3QtYnRuLFxuLmZsdWVudC10cmVlLXRvZ2dsZS1idG4ge1xuXHRjdXJzb3I6IHBvaW50ZXI7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcblx0dHJhbnNpdGlvbjogY29sb3IgMC4xNXM7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXHR3aWR0aDogMjBweDtcblx0aGVpZ2h0OiAyMHB4O1xufVxuXG4uZmx1ZW50LWFkZC1wcm9qZWN0LWJ0bjpob3Zlcixcbi5mbHVlbnQtc29ydC1wcm9qZWN0LWJ0bjpob3Zlcixcbi5mbHVlbnQtdHJlZS10b2dnbGUtYnRuOmhvdmVyIHtcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcbn1cblxuLyogTmF2aWdhdGlvbiBJdGVtcyAqL1xuLmZsdWVudC1uYXZpZ2F0aW9uLWxpc3Qge1xuXHRwYWRkaW5nOiAwIDhweDtcbn1cblxuLmZsdWVudC1uYXZpZ2F0aW9uLWl0ZW0ge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRnYXA6IDEycHg7XG5cdHBhZGRpbmc6IDZweCA4cHg7XG5cdGJvcmRlci1yYWRpdXM6IDRweDtcblx0Y3Vyc29yOiBwb2ludGVyO1xuXHR0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMTVzO1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5mbHVlbnQtbmF2aWdhdGlvbi1pdGVtOmhvdmVyIHtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3Zlcik7XG59XG5cbi5mbHVlbnQtbmF2aWdhdGlvbi1pdGVtLmlzLWFjdGl2ZSB7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYWN0aXZlLWhvdmVyKTtcbn1cblxuLmZsdWVudC1uYXZpZ2F0aW9uLWljb24ge1xuXHR3aWR0aDogMjBweDtcblx0aGVpZ2h0OiAyMHB4O1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xufVxuXG4uZmx1ZW50LW5hdmlnYXRpb24taXRlbS5pcy1hY3RpdmUgLmZsdWVudC1uYXZpZ2F0aW9uLWljb24ge1xuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xufVxuXG4uZmx1ZW50LW5hdmlnYXRpb24tbGFiZWwge1xuXHRmbGV4OiAxO1xuXHRmb250LXNpemU6IDE0cHg7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XG59XG5cbi5mbHVlbnQtbmF2aWdhdGlvbi1iYWRnZSB7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XG5cdGZvbnQtc2l6ZTogMTFweDtcblx0Zm9udC13ZWlnaHQ6IDYwMDtcblx0cGFkZGluZzogMnB4IDZweDtcblx0Ym9yZGVyLXJhZGl1czogMTBweDtcblx0bWluLXdpZHRoOiAxOHB4O1xuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi8qIFByb2plY3QgTGlzdCAqL1xuLmZsdWVudC1wcm9qZWN0LXNjcm9sbCB7XG5cdG1heC1oZWlnaHQ6IDMwMHB4O1xuXHRvdmVyZmxvdy15OiBhdXRvO1xuXHRwYWRkaW5nOiAwIDhweDtcbn1cblxuLmZsdWVudC1wcm9qZWN0LWl0ZW0ge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRnYXA6IDEwcHg7XG5cdHBhZGRpbmc6IDZweCA4cHg7XG5cdGJvcmRlci1yYWRpdXM6IDRweDtcblx0Y3Vyc29yOiBwb2ludGVyO1xuXHR0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMTVzO1xufVxuXG4uZmx1ZW50LXByb2plY3QtaXRlbS5mbHVlbnQtYWRkLXByb2plY3Qge1xuXHRtYXJnaW46IDAgOHB4O1xufVxuXG4uZmx1ZW50LXByb2plY3QtaXRlbTpob3ZlciB7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpO1xufVxuXG4uZmx1ZW50LXByb2plY3QtaXRlbS5pcy1hY3RpdmUge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWFjdGl2ZS1ob3Zlcik7XG59XG5cbi5mbHVlbnQtcHJvamVjdC1jb2xvciB7XG5cdHdpZHRoOiAxMnB4O1xuXHRoZWlnaHQ6IDEycHg7XG5cdGJvcmRlci1yYWRpdXM6IDNweDtcblx0ZmxleC1zaHJpbms6IDA7XG59XG5cbi5mbHVlbnQtcHJvamVjdC1jb2xvci1kYXNoZWQge1xuXHR3aWR0aDogMTJweDtcblx0aGVpZ2h0OiAxMnB4O1xuXHRib3JkZXI6IDEuNXB4IGRhc2hlZCB2YXIoLS10ZXh0LW11dGVkKTtcblx0Ym9yZGVyLXJhZGl1czogM3B4O1xufVxuXG4uZmx1ZW50LXByb2plY3QtbmFtZSB7XG5cdGZsZXg6IDE7XG5cdGZvbnQtc2l6ZTogMTRweDtcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcblx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcblx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0dGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG59XG5cbi5mbHVlbnQtYWRkLXByb2plY3QgLmZsdWVudC1wcm9qZWN0LW5hbWUge1xuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XG59XG5cbi5mbHVlbnQtcHJvamVjdC1jb3VudCB7XG5cdGZvbnQtc2l6ZTogMTJweDtcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xufVxuXG4vKiBUcmVlIFZpZXcgU3R5bGVzICovXG4uZmx1ZW50LXByb2plY3QtbGlzdC5pcy10cmVlLXZpZXcgLmZsdWVudC1wcm9qZWN0LWl0ZW0ge1xuXHR0cmFuc2l0aW9uOiBhbGwgMC4xNXMgZWFzZTtcbn1cblxuLmZsdWVudC1wcm9qZWN0LWNoZXZyb24ge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0d2lkdGg6IDE2cHg7XG5cdGhlaWdodDogMTZweDtcblx0bWFyZ2luLXJpZ2h0OiA0cHg7XG5cdGN1cnNvcjogcG9pbnRlcjtcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xuXHR0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4xNXMgZWFzZTtcblx0ZmxleC1zaHJpbms6IDA7XG59XG5cbi5mbHVlbnQtcHJvamVjdC1jaGV2cm9uOmhvdmVyIHtcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcbn1cblxuLmZsdWVudC1wcm9qZWN0LWNoZXZyb24gc3ZnIHtcblx0d2lkdGg6IDEycHg7XG5cdGhlaWdodDogMTJweDtcbn1cblxuLmZsdWVudC1wcm9qZWN0LWNoZXZyb24tc3BhY2VyIHtcblx0d2lkdGg6IDE2cHg7XG5cdGhlaWdodDogMTZweDtcblx0bWFyZ2luLXJpZ2h0OiA0cHg7XG5cdGZsZXgtc2hyaW5rOiAwO1xufVxuXG4vKiBUcmVlIGluZGVudGF0aW9uICovXG4uZmx1ZW50LXByb2plY3QtbGlzdC5pcy10cmVlLXZpZXcgLmZsdWVudC1wcm9qZWN0LWl0ZW1bZGF0YS1sZXZlbD1cIjFcIl0ge1xuXHRwYWRkaW5nLWxlZnQ6IDI4cHg7XG59XG5cbi5mbHVlbnQtcHJvamVjdC1saXN0LmlzLXRyZWUtdmlldyAuZmx1ZW50LXByb2plY3QtaXRlbVtkYXRhLWxldmVsPVwiMlwiXSB7XG5cdHBhZGRpbmctbGVmdDogNDhweDtcbn1cblxuLmZsdWVudC1wcm9qZWN0LWxpc3QuaXMtdHJlZS12aWV3IC5mbHVlbnQtcHJvamVjdC1pdGVtW2RhdGEtbGV2ZWw9XCIzXCJdIHtcblx0cGFkZGluZy1sZWZ0OiA2OHB4O1xufVxuXG4vKiBUcmVlIGhpZXJhcmNoeSBsaW5lcyAob3B0aW9uYWwgLSBjYW4gYmUgYWRkZWQgbGF0ZXIpICovXG4uZmx1ZW50LXByb2plY3QtbGlzdC5pcy10cmVlLXZpZXcgLmZsdWVudC1wcm9qZWN0LWl0ZW06OmJlZm9yZSB7XG5cdGNvbnRlbnQ6IFwiXCI7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0bGVmdDogOHB4O1xuXHR0b3A6IDA7XG5cdGJvdHRvbTogMDtcblx0d2lkdGg6IDFweDtcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xuXHRvcGFjaXR5OiAwO1xuXHR0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMTVzO1xufVxuXG4uZmx1ZW50LXByb2plY3QtbGlzdC5pcy10cmVlLXZpZXdcblx0LmZsdWVudC1wcm9qZWN0LWl0ZW1bZGF0YS1sZXZlbF06bm90KFtkYXRhLWxldmVsPVwiMFwiXSk6aG92ZXI6OmJlZm9yZSB7XG5cdG9wYWNpdHk6IDAuMztcbn1cblxuLyogVmlydHVhbCBwcm9qZWN0IG5vZGVzIChpbnRlcm1lZGlhdGUgZm9sZGVycykgKi9cbi5mbHVlbnQtcHJvamVjdC1pdGVtLmlzLXZpcnR1YWwgLmZsdWVudC1wcm9qZWN0LW5hbWUge1xuXHRmb250LXN0eWxlOiBpdGFsaWM7XG5cdG9wYWNpdHk6IDAuODU7XG59XG5cbi5mbHVlbnQtcHJvamVjdC1pdGVtLmlzLXZpcnR1YWwgLmZsdWVudC1wcm9qZWN0LWNvbG9yIHtcblx0b3BhY2l0eTogMC42O1xufVxuXG4uZmx1ZW50LXByb2plY3QtaXRlbS5pcy12aXJ0dWFsOmhvdmVyIHtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3Zlcik7XG59XG5cbi8qIERpc2FibGVkIHByb2plY3QgbGlzdCBzdHlsZXMgLSB1c2VkIHdoZW4gc2hvd2luZyBmdWxsIHByb2plY3RzIG92ZXJ2aWV3ICovXG4udGctcHJvamVjdC1saXN0LWRpc2FibGVkIHtcblx0cG9pbnRlci1ldmVudHM6IG5vbmU7XG5cdG9wYWNpdHk6IDAuNTtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4udGctcHJvamVjdC1saXN0LWRpc2FibGVkOjphZnRlciB7XG5cdGNvbnRlbnQ6IFwiXCI7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0dG9wOiAwO1xuXHRsZWZ0OiAwO1xuXHRyaWdodDogMDtcblx0Ym90dG9tOiAwO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWNvdmVyKTtcblx0b3BhY2l0eTogMC4zO1xuXHR6LWluZGV4OiAxO1xufVxuXG4udGctcHJvamVjdC1saXN0LWRpc2FibGVkIC5mbHVlbnQtcHJvamVjdC1pdGVtIHtcblx0Y3Vyc29yOiBub3QtYWxsb3dlZDtcbn1cblxuLyogTWFpbiBDb250YWluZXIgKi9cbi50Zy1mbHVlbnQtbWFpbi1jb250YWluZXIge1xuXHRmbGV4OiAxO1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4vKiBUb3AgTmF2aWdhdGlvbiAqL1xuLnRnLWZsdWVudC10b3AtbmF2IHtcblx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcbn1cblxuLmZsdWVudC10b3AtbmF2aWdhdGlvbiB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcblx0aGVpZ2h0OiA1NnB4O1xuXHRwYWRkaW5nOiAwIDIwcHg7XG5cdGdhcDogMjBweDtcbn1cblxuLmZsdWVudC1uYXYtbGVmdCB7XG5cdGZsZXg6IDAgMSA0MDBweDtcbn1cblxuLmZsdWVudC1zZWFyY2gtY29udGFpbmVyIHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXG5cdG1heC13aWR0aDogNDAwcHg7XG5cdGZsZXg6IDE7XG59XG5cbi8qIENlbnRlciBOYXZpZ2F0aW9uICovXG4uZmx1ZW50LW5hdi1jZW50ZXIge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRnYXA6IDEycHg7XG59XG5cbi5mbHVlbnQtdmlldy10YWJzIHtcblx0ZGlzcGxheTogZmxleDtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xuXHRib3JkZXItcmFkaXVzOiA2cHg7XG5cdHBhZGRpbmc6IDJweDtcbn1cblxuLmZsdWVudC12aWV3LXRhYiB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdGdhcDogNnB4O1xuXHRwYWRkaW5nOiA2cHggMTJweDtcblx0YmFja2dyb3VuZDogbm9uZTtcblx0Ym9yZGVyOiBub25lO1xuXHRib3JkZXItcmFkaXVzOiA0cHg7XG5cdGZvbnQtc2l6ZTogMTRweDtcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xuXHRjdXJzb3I6IHBvaW50ZXI7XG5cdHRyYW5zaXRpb246IGFsbCAwLjE1cztcbn1cblxuLmZsdWVudC12aWV3LXRhYjpob3ZlciB7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XG59XG5cbi5mbHVlbnQtdmlldy10YWIuaXMtYWN0aXZlIHtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnktYWx0KTtcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcblx0Ym94LXNoYWRvdzogMCAxcHggM3B4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbn1cblxuLmZsdWVudC12aWV3LXRhYi1pY29uIHtcblx0d2lkdGg6IDE2cHg7XG5cdGhlaWdodDogMTZweDtcblx0ZGlzcGxheTogZmxleDtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cblxuLmZsdWVudC1uYXYtc2VwYXJhdG9yIHtcblx0d2lkdGg6IDFweDtcblx0aGVpZ2h0OiAyNHB4O1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XG59XG5cbi5mbHVlbnQtbmF2LWJ1dHRvbiB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdGdhcDogNnB4O1xuXHRwYWRkaW5nOiA2cHggMTJweDtcblx0YmFja2dyb3VuZDogbm9uZTtcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xuXHRib3JkZXItcmFkaXVzOiA2cHg7XG5cdGZvbnQtc2l6ZTogMTRweDtcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcblx0Y3Vyc29yOiBwb2ludGVyO1xuXHR0cmFuc2l0aW9uOiBhbGwgMC4xNXM7XG59XG5cbi5mbHVlbnQtbmF2LWJ1dHRvbjpob3ZlciB7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpO1xufVxuXG4uZmx1ZW50LW5hdi1idXR0b24taWNvbiB7XG5cdHdpZHRoOiAxNnB4O1xuXHRoZWlnaHQ6IDE2cHg7XG5cdGRpc3BsYXk6IGZsZXg7XG59XG5cbi8qIFJpZ2h0IE5hdmlnYXRpb24gKi9cbi5mbHVlbnQtbmF2LXJpZ2h0IHtcblx0ZGlzcGxheTogZmxleDtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0Z2FwOiAxMnB4O1xufVxuXG4vKiBDdXN0b20gYnV0dG9ucyBjb250YWluZXIgKGZvciBkeW5hbWljIGJ1dHRvbnMgZnJvbSB2aWV3cykgKi9cbi5mbHVlbnQtbmF2LWN1c3RvbS1idXR0b25zIHtcblx0ZGlzcGxheTogZmxleDtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0Z2FwOiA0cHg7XG59XG5cbi5mbHVlbnQtbmF2LWN1c3RvbS1idXR0b24td3JhcHBlciB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5cbi8qIEN5Y2xlIHNlbGVjdG9yIHN0eWxlcyAqL1xuLmZsdWVudC1uYXYtY3ljbGUtc2VsZWN0b3Itd3JhcHBlciB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdG1hcmdpbi1yaWdodDogOHB4O1xufVxuXG4uZmx1ZW50LW5hdi1jeWNsZS1idXR0b24ge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRnYXA6IDZweDtcblx0cGFkZGluZzogNnB4IDEycHg7XG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLXMpO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xuXHRjdXJzb3I6IHBvaW50ZXI7XG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbCk7XG5cdHRyYW5zaXRpb246XG5cdFx0YmFja2dyb3VuZC1jb2xvciAwLjJzIGVhc2UsXG5cdFx0Ym9yZGVyLWNvbG9yIDAuMnMgZWFzZTtcblx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxuLmZsdWVudC1uYXYtY3ljbGUtYnV0dG9uOmhvdmVyIHtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3Zlcik7XG5cdGJvcmRlci1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXItaG92ZXIpO1xufVxuXG4uZmx1ZW50LW5hdi1jeWNsZS1idXR0b246YWN0aXZlIHtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1hY3RpdmUtaG92ZXIpO1xufVxuXG4uZmx1ZW50LW5hdi1jeWNsZS1pY29uIHtcblx0ZGlzcGxheTogZmxleDtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdHdpZHRoOiAxNnB4O1xuXHRoZWlnaHQ6IDE2cHg7XG59XG5cbi5mbHVlbnQtbmF2LWN5Y2xlLWxhYmVsIHtcblx0Zm9udC13ZWlnaHQ6IDUwMDtcblx0bWF4LXdpZHRoOiAxMjBweDtcblx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0dGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG59XG5cbi5mbHVlbnQtbmF2LWljb24tYnV0dG9uIHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHR3aWR0aDogMzZweDtcblx0aGVpZ2h0OiAzNnB4O1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0Ym9yZGVyLXJhZGl1czogNnB4O1xuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XG5cdGN1cnNvcjogcG9pbnRlcjtcblx0dHJhbnNpdGlvbjogYWxsIDAuMTVzO1xufVxuXG4uZmx1ZW50LW5hdi1pY29uLWJ1dHRvbjpob3ZlciB7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpO1xuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xufVxuXG4uZmx1ZW50LW5vdGlmaWNhdGlvbi1iYWRnZSB7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0dG9wOiAtMnB4O1xuXHRyaWdodDogLTJweDtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdGV4dC1lcnJvcik7XG5cdGNvbG9yOiB3aGl0ZTtcblx0Zm9udC1zaXplOiAxMHB4O1xuXHRmb250LXdlaWdodDogNjAwO1xuXHRwYWRkaW5nOiAycHggNXB4O1xuXHRib3JkZXItcmFkaXVzOiAxMHB4O1xuXHRtaW4td2lkdGg6IDE2cHg7XG5cdHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLyogQ29udGVudCBBcmVhICovXG4udGctZmx1ZW50LWNvbnRlbnQge1xuXHRmbGV4OiAxO1xuXHRvdmVyZmxvdzogYXV0bztcbn1cblxuLmJhc2VzLXZpZXcgLnRnLWthbmJhbi1maWx0ZXJzLFxuLnRnLWZsdWVudC1jb250ZW50IC5jb250ZW50LWhlYWRlcixcbi50Zy1mbHVlbnQtbWFpbi1jb250YWluZXI6aGFzKC5mbHVlbnQtdG9wLW5hdmlnYXRpb246bm90KC5vdGhlci12aWV3KSlcblx0LnRnLWZsdWVudC1jb250ZW50XG5cdC50Zy1rYW5iYW4tZmlsdGVycyB7XG5cdGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qIFZpZXctc3BlY2lmaWMgc3R5bGVzICovXG4udGctZmx1ZW50LWxpc3Qtdmlldyxcbi50Zy1mbHVlbnQta2FuYmFuLXZpZXcsXG4udGctZmx1ZW50LXRyZWUtdmlldyxcbi50Zy1mbHVlbnQtY2FsZW5kYXItdmlldyB7XG5cdGhlaWdodDogMTAwJTtcbn1cblxuLyogUmVzcG9uc2l2ZSBhZGp1c3RtZW50cyAqL1xuQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XG5cdC50Zy1mbHVlbnQtc2lkZWJhci1jb250YWluZXI6bm90KC5pcy1tb2JpbGUtZHJhd2VyKSB7XG5cdFx0d2lkdGg6IDIwMHB4O1xuXHR9XG5cblx0LmZsdWVudC1uYXYtY2VudGVyIHtcblx0XHRkaXNwbGF5OiBub25lO1xuXHR9XG5cblx0LmZsdWVudC1zZWFyY2gtY29udGFpbmVyIHtcblx0XHRmbGV4OiAxO1xuXHR9XG5cblx0LmZsdWVudC1uYXYtbGVmdCAuc2VhcmNoLWlucHV0LWNvbnRhaW5lciB7XG5cdFx0d2lkdGg6IDMwMHB4O1xuXHR9XG59XG5cbi8qIE1vYmlsZS1zcGVjaWZpYyBtZWRpYSBxdWVyeSAqL1xuQG1lZGlhIChtYXgtd2lkdGg6IDQ4MHB4KSB7XG5cdC8qIEVuc3VyZSBkcmF3ZXIgdGFrZXMgYXBwcm9wcmlhdGUgd2lkdGggb24gc21hbGwgc2NyZWVucyAqL1xuXHQudGctZmx1ZW50LXNpZGViYXItY29udGFpbmVyLmlzLW1vYmlsZS1kcmF3ZXIge1xuXHRcdHdpZHRoOiA3NXZ3ICFpbXBvcnRhbnQ7XG5cdFx0bWF4LXdpZHRoOiAzMjBweCAhaW1wb3J0YW50O1xuXHR9XG5cblx0LyogTWFrZSBoYW1idXJnZXIgYnV0dG9uIG1vcmUgcHJvbWluZW50IG9uIG1vYmlsZSAqL1xuXHQuZmx1ZW50LWhhbWJ1cmdlci1idXR0b24ge1xuXHRcdHdpZHRoOiA0NHB4O1xuXHRcdGhlaWdodDogNDRweDtcblx0fVxuXG5cdC8qIEFkanVzdCB0b3AgbmF2aWdhdGlvbiBzcGFjaW5nIG9uIG1vYmlsZSAqL1xuXHQuZmx1ZW50LXRvcC1uYXZpZ2F0aW9uIHtcblx0XHRwYWRkaW5nOiAwIDEycHg7XG5cdH1cblxuXHQvKiBIaWRlIHZpZXcgdGFicyBvbiB2ZXJ5IHNtYWxsIHNjcmVlbnMgKi9cblx0LmZsdWVudC12aWV3LXRhYnMge1xuXHRcdGRpc3BsYXk6IG5vbmU7XG5cdH1cblxuXHQvKiBPcHRpbWl6ZSBzZWFyY2ggY29udGFpbmVyIG9uIG1vYmlsZSAqL1xuXHQuZmx1ZW50LXNlYXJjaC1jb250YWluZXIge1xuXHRcdGZsZXg6IDE7XG5cdFx0bWF4LXdpZHRoOiBjYWxjKDEwMHZ3IC0gMTgwcHgpO1xuXHR9XG59XG5cbi8qID09PT09IENvbGxhcHNlZCBTaWRlYmFyIChSYWlsKSA9PT09PSAqL1xuLnRnLWZsdWVudC1zaWRlYmFyLWNvbnRhaW5lciB7XG5cdHRyYW5zaXRpb246XG5cdFx0d2lkdGggMC4ycyBlYXNlLFxuXHRcdG1pbi13aWR0aCAwLjJzIGVhc2UsXG5cdFx0bWF4LXdpZHRoIDAuMnMgZWFzZTtcbn1cblxuLyogV2hlbiB0aGUgc2lkZWJhciBlbGVtZW50IGl0c2VsZiBpcyBjb2xsYXBzZWQgKi9cbi50Zy1mbHVlbnQtc2lkZWJhci1jb250YWluZXIuaXMtY29sbGFwc2VkLFxuXHQvKiBPciB3aGVuIHRoZSByb290IGFkZHMgYSBoZWxwZXIgY2xhc3MgKi9cbi5mbHVlbnQtc2lkZWJhci1jb2xsYXBzZWQgLnRnLWZsdWVudC1zaWRlYmFyLWNvbnRhaW5lciB7XG5cdHdpZHRoOiA0NHB4O1xuXHRtaW4td2lkdGg6IDQ0cHg7XG5cdG1heC13aWR0aDogNDRweDtcbn1cblxuLyogUmFpbCBsYXlvdXQgKi9cbi5mbHVlbnQtc2lkZWJhci1yYWlsIHtcblx0aGVpZ2h0OiAxMDAlO1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRnYXA6IDhweDtcblx0cGFkZGluZzogOHB4IDRweDtcbn1cblxuLmZsdWVudC1yYWlsLWJ0biB7XG5cdHdpZHRoOiAzNnB4O1xuXHRoZWlnaHQ6IDM2cHg7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcblx0Y3Vyc29yOiBwb2ludGVyO1xuXHR0cmFuc2l0aW9uOlxuXHRcdGJhY2tncm91bmQtY29sb3IgMC4xNXMgZWFzZSxcblx0XHRjb2xvciAwLjE1cyBlYXNlO1xufVxuXG4uZmx1ZW50LXJhaWwtYnRuOmhvdmVyIHtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3Zlcik7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XG59XG5cbi5mbHVlbnQtcmFpbC1idG4gc3ZnIHtcblx0d2lkdGg6IDE2cHg7XG5cdGhlaWdodDogMTZweDtcbn1cblxuLyogQWN0aXZlIHN0YXRlIGZvciByYWlsIGJ1dHRvbnMgKi9cbi5mbHVlbnQtcmFpbC1idG4uaXMtYWN0aXZlIHtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1hY3RpdmUtaG92ZXIpO1xuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xufVxuXG4udGctYmV0YSB7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLnRnLWJldGE6OmFmdGVyIHtcblx0Y29udGVudDogXCJiZXRhXCI7XG5cdGZvbnQtc2l6ZTogMC40NGVtO1xuXHRiYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1hY2NlbnQpO1xuXHRjb2xvcjogdmFyKC0tdGV4dC1vbi1hY2NlbnQtaW52ZXJ0ZWQpO1xuXHRwYWRkaW5nLWxlZnQ6IDJweDtcblx0cGFkZGluZy1yaWdodDogMnB4O1xuXHRmb250LXdlaWdodDogYm9sZDtcblx0bWFyZ2luLWxlZnQ6IDRweDtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHR0b3A6IC0xcHg7XG5cdHJpZ2h0OiAtMnB4O1xuXHRib3JkZXItcmFkaXVzOiAycHg7XG5cdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cdHBhZGRpbmctdG9wOiAxcHg7XG59XG5cbi8qID09PT09IE1vYmlsZSBEcmF3ZXIgU3R5bGVzID09PT09ICovXG4uZHJhd2VyLW92ZXJsYXkge1xuXHRwb3NpdGlvbjogZml4ZWQ7XG5cdHRvcDogMDtcblx0bGVmdDogMDtcblx0cmlnaHQ6IDA7XG5cdGJvdHRvbTogMDtcblx0YmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjUpO1xuXHR6LWluZGV4OiA5OTk7XG5cdG9wYWNpdHk6IDA7XG5cdHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcyBlYXNlO1xuXHRwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cblxuLmRyYXdlci1vcGVuIC5kcmF3ZXItb3ZlcmxheSB7XG5cdG9wYWNpdHk6IDE7XG5cdHBvaW50ZXItZXZlbnRzOiBhdXRvO1xufVxuXG4vKiBNb2JpbGUgZHJhd2VyIHNpZGViYXIgKi9cbi50Zy1mbHVlbnQtc2lkZWJhci1jb250YWluZXIuaXMtbW9iaWxlLWRyYXdlciB7XG5cdHBvc2l0aW9uOiBmaXhlZDtcblx0dG9wOiAwO1xuXHRsZWZ0OiAwO1xuXHRib3R0b206IDA7XG5cdHdpZHRoOiAyODBweCAhaW1wb3J0YW50O1xuXHRtYXgtd2lkdGg6IDg1dncgIWltcG9ydGFudDtcblx0bWluLXdpZHRoOiAyODBweCAhaW1wb3J0YW50O1xuXHR6LWluZGV4OiAxMDAwO1xuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpO1xuXHR0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcyBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpO1xuXHRib3gtc2hhZG93OiA0cHggMCAyMHB4IHJnYmEoMCwgMCwgMCwgMC4xNSk7XG59XG5cbi8qIFdoZW4gZHJhd2VyIGlzIG9wZW4gKi9cbi5kcmF3ZXItb3BlbiAudGctZmx1ZW50LXNpZGViYXItY29udGFpbmVyLmlzLW1vYmlsZS1kcmF3ZXIge1xuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG59XG5cbi8qIEVuc3VyZSBzaWRlYmFyIGNvbnRlbnQgaXMgdmlzaWJsZSBvbiBtb2JpbGUgZXZlbiB3aGVuIFwiY29sbGFwc2VkXCIgKi9cbi50Zy1mbHVlbnQtc2lkZWJhci1jb250YWluZXIuaXMtbW9iaWxlLWRyYXdlciAuZmx1ZW50LXNpZGViYXIuaXMtY29sbGFwc2VkIHtcblx0ZGlzcGxheTogZmxleDtcblx0d2lkdGg6IDEwMCU7XG59XG5cbi8qIEhpZGUgcmFpbCBtb2RlIG9uIG1vYmlsZSAqL1xuLnRnLWZsdWVudC1zaWRlYmFyLWNvbnRhaW5lci5pcy1tb2JpbGUtZHJhd2VyIC5mbHVlbnQtc2lkZWJhci1yYWlsIHtcblx0ZGlzcGxheTogbm9uZTtcbn1cblxuLyogTW9iaWxlLXNwZWNpZmljIHNpZGViYXIgY29udGVudCBhZGp1c3RtZW50cyAqL1xuLmlzLW1vYmlsZSAuZmx1ZW50LXNpZGViYXIge1xuXHR3aWR0aDogMTAwJTtcblx0b3ZlcmZsb3cteTogYXV0bztcblx0b3ZlcmZsb3cteDogaGlkZGVuO1xuXHRtYXgtd2lkdGg6IDMwMHB4O1xufVxuXG4uaXMtbW9iaWxlIC5mbHVlbnQtc2lkZWJhci1oZWFkZXIge1xuXHRwYWRkaW5nOiAxNnB4O1xuXHRib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xufVxuXG4vKiBFbnN1cmUgYWxsIHNlY3Rpb25zIGFyZSB2aXNpYmxlIG9uIG1vYmlsZSAqL1xuLmlzLW1vYmlsZSAuZmx1ZW50LXNpZGViYXItY29udGVudCB7XG5cdG92ZXJmbG93LXk6IGF1dG87XG5cdG1heC1oZWlnaHQ6IGNhbGMoXG5cdFx0MTAwdmggLSAxNTBweFxuXHQpOyAvKiBBY2NvdW50IGZvciBoZWFkZXIgYW5kIG5ldyB0YXNrIGJ1dHRvbiAqL1xufVxuXG4uaXMtbW9iaWxlIC5mbHVlbnQtc2lkZWJhci1zZWN0aW9uIHtcblx0ZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcblx0dmlzaWJpbGl0eTogdmlzaWJsZSAhaW1wb3J0YW50O1xufVxuXG4vKiBFbnN1cmUgc2VjdGlvbiBoZWFkZXJzIGFyZSB2aXNpYmxlIG9uIG1vYmlsZSAqL1xuLmlzLW1vYmlsZSAuZmx1ZW50LXNlY3Rpb24taGVhZGVyIHtcblx0ZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xuXHR2aXNpYmlsaXR5OiB2aXNpYmxlICFpbXBvcnRhbnQ7XG59XG5cbi5pcy1tb2JpbGUgLmZsdWVudC1uYXZpZ2F0aW9uLWl0ZW0sXG4uaXMtbW9iaWxlIC5mbHVlbnQtcHJvamVjdC1pdGVtIHtcblx0cGFkZGluZzogMTBweCAxNnB4O1xuXHRmb250LXNpemU6IDE1cHg7XG59XG5cbi5pcy1tb2JpbGUgLmZsdWVudC1uZXctdGFzay1idG4ge1xuXHRwYWRkaW5nOiAxMnB4O1xuXHRmb250LXNpemU6IDE1cHg7XG59XG5cbi5pcy1tb2JpbGUgLmZsdWVudC1uYXZpZ2F0aW9uLWxpc3Qge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cblxuLmlzLW1vYmlsZSBzcGFuLmZsdWVudC1uYXZpZ2F0aW9uLWxhYmVsIHtcblx0ZGlzcGxheTogbm9uZTtcbn1cblxuLyogVG91Y2gtZnJpZW5kbHkgc2l6aW5nICovXG4uaXMtbW9iaWxlIC5mbHVlbnQtbmF2aWdhdGlvbi1pdGVtLFxuLmlzLW1vYmlsZSAuZmx1ZW50LXByb2plY3QtaXRlbSxcbi5pcy1tb2JpbGUgLmZsdWVudC1hZGQtcHJvamVjdCB7XG5cdG1pbi1oZWlnaHQ6IDQ0cHg7XG59XG5cbi8qIEFkanVzdCBtYWluIGNvbnRhaW5lciBvbiBtb2JpbGUgd2hlbiBkcmF3ZXIgaXMgb3BlbiAqL1xuLmRyYXdlci1vcGVuIC50Zy1mbHVlbnQtbWFpbi1jb250YWluZXIge1xuXHRwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cblxuLyogSGFtYnVyZ2VyIG1lbnUgYnV0dG9uIGZvciBtb2JpbGUgKi9cbi5mbHVlbnQtaGFtYnVyZ2VyLWJ1dHRvbiB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXHR3aWR0aDogNDBweDtcblx0aGVpZ2h0OiA0MHB4O1xuXHRib3JkZXItcmFkaXVzOiA0cHg7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcblx0Y3Vyc29yOiBwb2ludGVyO1xuXHR0cmFuc2l0aW9uOlxuXHRcdGJhY2tncm91bmQtY29sb3IgMC4xNXMgZWFzZSxcblx0XHRjb2xvciAwLjE1cyBlYXNlO1xuXHRtYXJnaW4tcmlnaHQ6IDhweDtcblx0ZmxleC1zaHJpbms6IDA7XG59XG5cbi5mbHVlbnQtaGFtYnVyZ2VyLWJ1dHRvbjpob3ZlciB7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpO1xuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xufVxuXG4uZmx1ZW50LWhhbWJ1cmdlci1idXR0b24gc3ZnIHtcblx0d2lkdGg6IDIwcHg7XG5cdGhlaWdodDogMjBweDtcbn1cblxuLyogQWRqdXN0IHNlYXJjaCBjb250YWluZXIgb24gbW9iaWxlIHdoZW4gaGFtYnVyZ2VyIGlzIHByZXNlbnQgKi9cbi5mbHVlbnQtbmF2LWxlZnQge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRnYXA6IDhweDtcbn1cblxuLyogSGlkZSBzaWRlYmFyIHRvZ2dsZSBvbiBkZXNrdG9wIHdoZW4gaW4gbW9iaWxlIGRyYXdlciBtb2RlICovXG4udGctZmx1ZW50LXNpZGViYXItY29udGFpbmVyLmlzLW1vYmlsZS1kcmF3ZXJcblx0fiAudGctZmx1ZW50LW1haW4tY29udGFpbmVyXG5cdC5zaWRlYmFyLXRvZ2dsZSB7XG5cdGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLyogQW5pbWF0aW9uIGZvciBkcmF3ZXIgZnJvbSByaWdodCAob3B0aW9uYWwgLSBjYW4gYmUgY29uZmlndXJlZCkgKi9cbi50Zy1mbHVlbnQtc2lkZWJhci1jb250YWluZXIuaXMtbW9iaWxlLWRyYXdlci5kcmF3ZXItcmlnaHQge1xuXHRsZWZ0OiBhdXRvO1xuXHRyaWdodDogMDtcblx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpO1xuXHRib3gtc2hhZG93OiAtNHB4IDAgMjBweCByZ2JhKDAsIDAsIDAsIDAuMTUpO1xufVxuXG4uZHJhd2VyLW9wZW4gLnRnLWZsdWVudC1zaWRlYmFyLWNvbnRhaW5lci5pcy1tb2JpbGUtZHJhd2VyLmRyYXdlci1yaWdodCB7XG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbn1cblxuLnZpZXctY29udGVudDpoYXMoLnRnLXJpZ2h0LWRldGFpbC12aWV3KSB7XG5cdHBhZGRpbmctbGVmdDogMDtcblx0cGFkZGluZy1yaWdodDogMDtcblx0cGFkZGluZy10b3A6IDA7XG59XG5cbi50Zy1yaWdodC1kZXRhaWwtdmlldyAudGFzay1kZXRhaWxzIHtcblx0d2lkdGg6IDEwMCU7XG59XG5cbi8qIFNtb290aCBhbmltYXRpb25zIGZvciBhbGwgdHJhbnNpdGlvbnMgKi9cbkBrZXlmcmFtZXMgc2xpZGVJbkZyb21MZWZ0IHtcblx0ZnJvbSB7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTtcblx0XHRvcGFjaXR5OiAwLjg7XG5cdH1cblx0dG8ge1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcblx0XHRvcGFjaXR5OiAxO1xuXHR9XG59XG5cbkBrZXlmcmFtZXMgc2xpZGVJbkZyb21SaWdodCB7XG5cdGZyb20ge1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKTtcblx0XHRvcGFjaXR5OiAwLjg7XG5cdH1cblx0dG8ge1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcblx0XHRvcGFjaXR5OiAxO1xuXHR9XG59XG5cbi5vbmJvYXJkaW5nLXNoYWRvdyB7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0YmFja2dyb3VuZDogaHNsKHZhcigtLWNvbG9yLWFjY2VudC1oc2wpLCAwKTtcblx0Ym9yZGVyLXJhZGl1czogMjRweDtcblx0cm90YXRlOiAzNWRlZztcblx0d2lkdGg6IDI2MHB4O1xuXHR0b3A6IDIwMHB4O1xuXHRoZWlnaHQ6IDQwMHB4O1xuXHRmaWx0ZXI6IGJsdXIoMTUwcHgpO1xuXHRhbmltYXRpb246IHNoYWRvdy1zbGlkZSBpbmZpbml0ZSA0cyBsaW5lYXIgYWx0ZXJuYXRlO1xuXHRwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cblxuQGtleWZyYW1lcyBzaGFkb3ctc2xpZGUge1xuXHQwJSB7XG5cdFx0YmFja2dyb3VuZDogaHNsKHZhcigtLWNvbG9yLWFjY2VudC1oc2wpLCAwLjIpO1xuXHRcdHJpZ2h0OiAzNjBweDtcblx0fVxuXHR0byB7XG5cdFx0YmFja2dyb3VuZDogaHNsKHZhcigtLWNvbG9yLWFjY2VudC1oc2wpLCAwLjgpO1xuXHRcdHJpZ2h0OiAxNjBweDtcblx0fVxufVxuXG4udmlldy1jb250ZW50LnRhc2stZ2VuaXVzLWZsdWVudC12aWV3LnRhc2stZ2VuaXVzLXZpZXcge1xuXHRjb250YWluZXItdHlwZTogaW5saW5lLXNpemU7XG59XG5cbkBjb250YWluZXIgKHdpZHRoIDwgODAwcHgpIHtcblx0LnRnLWZsdWVudC1tYWluLWNvbnRhaW5lciBidXR0b24uZmx1ZW50LXZpZXctdGFiLmNsaWNrYWJsZS1pY29uIHNwYW4ge1xuXHRcdGRpc3BsYXk6IG5vbmU7XG5cdH1cbn1cblxuLyogRmx1ZW50IFNpZGViYXIgU29ydGFibGUgU3RhdGVzICovXG4uZmx1ZW50LW5hdmlnYXRpb24taXRlbS5zb3J0YWJsZS1naG9zdCB7XG5cdG9wYWNpdHk6IDAuNDtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3Zlcik7XG5cdGJvcmRlcjogMXB4IGRhc2hlZCB2YXIoLS10ZXh0LW11dGVkKTtcbn1cblxuLmZsdWVudC1uYXZpZ2F0aW9uLWl0ZW0uc29ydGFibGUtY2hvc2VuIHtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1hY3RpdmUtaG92ZXIpO1xufVxuXG4uZmx1ZW50LW5hdmlnYXRpb24taXRlbS5zb3J0YWJsZS1kcmFnIHtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xuXHRib3gtc2hhZG93OiB2YXIoLS1zaGFkb3ctbCk7XG5cdG9wYWNpdHk6IDAuOTtcblx0Y3Vyc29yOiBncmFiYmluZztcblx0Ym9yZGVyLXJhZGl1czogNHB4O1xuXHR6LWluZGV4OiAxMDAwO1xufVxuIiwgIi8qIFRhc2sgR2VuaXVzIGZsdWVudCBFbmhhbmNlZCBTdHlsZXMgLSBTaGFkY24taW5zcGlyZWQgKi9cclxuXHJcbi8qID09PT09PT09PT0gQmFzZSBWYXJpYWJsZXMgPT09PT09PT09PSAqL1xyXG46cm9vdCB7XHJcblx0LyogU2hhZG93cyAqL1xyXG5cdC0tdGctc2hhZG93LXNtOiAwIDFweCAycHggMCByZ2IoMCAwIDAgLyAwLjA1KTtcclxuXHQtLXRnLXNoYWRvdzogMCAxcHggM3B4IDAgcmdiKDAgMCAwIC8gMC4xKSwgMCAxcHggMnB4IC0xcHggcmdiKDAgMCAwIC8gMC4xKTtcclxuXHQtLXRnLXNoYWRvdy1tZDpcclxuXHRcdDAgNHB4IDZweCAtMXB4IHJnYigwIDAgMCAvIDAuMSksIDAgMnB4IDRweCAtMnB4IHJnYigwIDAgMCAvIDAuMSk7XHJcblx0LS10Zy1zaGFkb3ctbGc6XHJcblx0XHQwIDEwcHggMTVweCAtM3B4IHJnYigwIDAgMCAvIDAuMSksIDAgNHB4IDZweCAtNHB4IHJnYigwIDAgMCAvIDAuMSk7XHJcblx0LS10Zy1zaGFkb3cteGw6XHJcblx0XHQwIDIwcHggMjVweCAtNXB4IHJnYigwIDAgMCAvIDAuMSksIDAgOHB4IDEwcHggLTZweCByZ2IoMCAwIDAgLyAwLjEpO1xyXG5cclxuXHQvKiBBbmltYXRpb25zICovXHJcblx0LS10Zy10cmFuc2l0aW9uLWZhc3Q6IDE1MG1zIGN1YmljLWJlemllcigwLjQsIDAsIDAuMiwgMSk7XHJcblx0LS10Zy10cmFuc2l0aW9uLWJhc2U6IDIwMG1zIGN1YmljLWJlemllcigwLjQsIDAsIDAuMiwgMSk7XHJcblx0LS10Zy10cmFuc2l0aW9uLXNsb3c6IDMwMG1zIGN1YmljLWJlemllcigwLjQsIDAsIDAuMiwgMSk7XHJcblxyXG5cdC8qIEJvcmRlciByYWRpdXMgKi9cclxuXHQtLXRnLXJhZGl1cy1zbTogMC4yNXJlbTtcclxuXHQtLXRnLXJhZGl1czogMC4zNzVyZW07XHJcblx0LS10Zy1yYWRpdXMtbWQ6IDAuNXJlbTtcclxuXHQtLXRnLXJhZGl1cy1sZzogMC43NXJlbTtcclxuXHQtLXRnLXJhZGl1cy1mdWxsOiA5OTk5cHg7XHJcbn1cclxuXHJcbi8qID09PT09PT09PT0gVGFzayBMaXN0IFZpZXcgU3R5bGVzID09PT09PT09PT0gKi9cclxuLnRhc2stbGlzdC1jb250YWluZXIge1xyXG5cdGhlaWdodDogMTAwJTtcclxuXHRvdmVyZmxvdy15OiBhdXRvO1xyXG5cdHBhZGRpbmc6IDEuNXJlbTtcclxuXHRhbmltYXRpb246IGZhZGVJbiB2YXIoLS10Zy10cmFuc2l0aW9uLWJhc2UpO1xyXG59XHJcblxyXG4udGFzay1saXN0LXdyYXBwZXIge1xyXG5cdG1heC13aWR0aDogMTIwMHB4O1xyXG5cdG1hcmdpbjogMCBhdXRvO1xyXG59XHJcblxyXG4udGctdGFzay1saXN0LWl0ZW0ge1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXRnLXJhZGl1cy1tZCk7XHJcblx0bWFyZ2luLWJvdHRvbTogMC43NXJlbTtcclxuXHRwYWRkaW5nOiAxcmVtIDEuMjVyZW07XHJcblx0dHJhbnNpdGlvbjogYWxsIHZhcigtLXRnLXRyYW5zaXRpb24tZmFzdCk7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcbn1cclxuXHJcbi50YXNrLWxpc3QtaXRlbTo6YmVmb3JlIHtcclxuXHRjb250ZW50OiBcIlwiO1xyXG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRsZWZ0OiAwO1xyXG5cdHRvcDogMDtcclxuXHRib3R0b206IDA7XHJcblx0d2lkdGg6IDNweDtcclxuXHRiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcclxuXHR0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIHZhcigtLXRnLXRyYW5zaXRpb24tZmFzdCk7XHJcbn1cclxuXHJcbi50Zy10YXNrLWxpc3QtaXRlbTpob3ZlciB7XHJcblx0Ym94LXNoYWRvdzogdmFyKC0tdGctc2hhZG93KTtcclxuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTFweCk7XHJcblx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG59XHJcblxyXG4udGctdGFzay1saXN0LWl0ZW06aG92ZXI6OmJlZm9yZSB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxufVxyXG5cclxuLnRhc2stbGlzdC1pdGVtLmlzLWNvbXBsZXRlZCB7XHJcblx0b3BhY2l0eTogMC42O1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcclxufVxyXG5cclxuLnRhc2stbGlzdC1pdGVtLmlzLW92ZXJkdWU6OmJlZm9yZSB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tdGV4dC1lcnJvcik7XHJcbn1cclxuXHJcbi50YXNrLWxpc3QtZW1wdHkge1xyXG5cdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHRwYWRkaW5nOiAzcmVtIDEuNXJlbTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0Zm9udC1zaXplOiAwLjlyZW07XHJcbn1cclxuXHJcbi8qID09PT09PT09PT0gVGFzayBUcmVlIFZpZXcgU3R5bGVzID09PT09PT09PT0gKi9cclxuLnRhc2stdHJlZS1jb250YWluZXIge1xyXG5cdGhlaWdodDogMTAwJTtcclxuXHRvdmVyZmxvdy15OiBhdXRvO1xyXG5cdHBhZGRpbmc6IDEuNXJlbTtcclxuXHRhbmltYXRpb246IGZhZGVJbiB2YXIoLS10Zy10cmFuc2l0aW9uLWJhc2UpO1xyXG59XHJcblxyXG4udGFzay10cmVlLXdyYXBwZXIge1xyXG5cdG1heC13aWR0aDogMTIwMHB4O1xyXG5cdG1hcmdpbjogMCBhdXRvO1xyXG59XHJcblxyXG4udGFzay10cmVlLXByb2plY3Qge1xyXG5cdG1hcmdpbi1ib3R0b206IDEuNXJlbTtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS10Zy1yYWRpdXMtbGcpO1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcblx0dHJhbnNpdGlvbjogYWxsIHZhcigtLXRnLXRyYW5zaXRpb24tYmFzZSk7XHJcbn1cclxuXHJcbi50YXNrLXRyZWUtcHJvamVjdDpob3ZlciB7XHJcblx0Ym94LXNoYWRvdzogdmFyKC0tdGctc2hhZG93LW1kKTtcclxufVxyXG5cclxuLnRhc2stdHJlZS1wcm9qZWN0LWhlYWRlciB7XHJcblx0cGFkZGluZzogMXJlbSAxLjI1cmVtO1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcclxuXHRib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGZvbnQtd2VpZ2h0OiA2MDA7XHJcblx0Zm9udC1zaXplOiAwLjk1cmVtO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0dHJhbnNpdGlvbjogYmFja2dyb3VuZCB2YXIoLS10Zy10cmFuc2l0aW9uLWZhc3QpO1xyXG59XHJcblxyXG4udGFzay10cmVlLXByb2plY3QtaGVhZGVyOmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyKTtcclxufVxyXG5cclxuLnRhc2stdHJlZS1wcm9qZWN0LWhlYWRlcjo6YmVmb3JlIHtcclxuXHRjb250ZW50OiBcIuKWtlwiO1xyXG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuXHRtYXJnaW4tcmlnaHQ6IDAuNXJlbTtcclxuXHR0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gdmFyKC0tdGctdHJhbnNpdGlvbi1mYXN0KTtcclxuXHRmb250LXNpemU6IDAuNzVyZW07XHJcbn1cclxuXHJcbi50YXNrLXRyZWUtcHJvamVjdC5pcy1leHBhbmRlZCAudGFzay10cmVlLXByb2plY3QtaGVhZGVyOjpiZWZvcmUge1xyXG5cdHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTtcclxufVxyXG5cclxuLnRhc2stdHJlZS10YXNrcyB7XHJcblx0cGFkZGluZzogMC41cmVtO1xyXG59XHJcblxyXG4udGFzay10cmVlLWl0ZW0ge1xyXG5cdHBhZGRpbmc6IDAuNzVyZW0gMXJlbTtcclxuXHRtYXJnaW46IDAuMjVyZW07XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tdGctcmFkaXVzKTtcclxuXHR0cmFuc2l0aW9uOiBhbGwgdmFyKC0tdGctdHJhbnNpdGlvbi1mYXN0KTtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0cGFkZGluZy1sZWZ0OiAycmVtO1xyXG59XHJcblxyXG4udGFzay10cmVlLWl0ZW06OmJlZm9yZSB7XHJcblx0Y29udGVudDogXCJcIjtcclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0bGVmdDogMXJlbTtcclxuXHR0b3A6IDUwJTtcclxuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XHJcblx0d2lkdGg6IDRweDtcclxuXHRoZWlnaHQ6IDRweDtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS10Zy1yYWRpdXMtZnVsbCk7XHJcbn1cclxuXHJcbi50YXNrLXRyZWUtaXRlbTpob3ZlciB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3Zlcik7XHJcbn1cclxuXHJcbi50YXNrLXRyZWUtZW1wdHkge1xyXG5cdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHRwYWRkaW5nOiAzcmVtIDEuNXJlbTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0Zm9udC1zaXplOiAwLjlyZW07XHJcbn1cclxuXHJcbi8qID09PT09PT09PT0gRmlsdGVyIFBhbmVsIFN0eWxlcyA9PT09PT09PT09ICovXHJcbi50Zy1mbHVlbnQtZmlsdGVyLXBhbmVsIHtcclxuXHRwb3NpdGlvbjogZml4ZWQ7XHJcblx0cmlnaHQ6IC0zODBweDtcclxuXHR0b3A6IDA7XHJcblx0Ym90dG9tOiAwO1xyXG5cdHdpZHRoOiAzODBweDtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xyXG5cdGJvcmRlci1sZWZ0OiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGJveC1zaGFkb3c6IHZhcigtLXRnLXNoYWRvdy14bCk7XHJcblx0dHJhbnNpdGlvbjogcmlnaHQgdmFyKC0tdGctdHJhbnNpdGlvbi1zbG93KTtcclxuXHR6LWluZGV4OiAxMDAwO1xyXG5cdG92ZXJmbG93LXk6IGF1dG87XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG59XHJcblxyXG4udGctZmx1ZW50LWZpbHRlci1wYW5lbC5pcy1vcGVuIHtcclxuXHRyaWdodDogMDtcclxufVxyXG5cclxuLmZpbHRlci1wYW5lbC1oZWFkZXIge1xyXG5cdHBhZGRpbmc6IDEuMjVyZW07XHJcblx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG59XHJcblxyXG4uZmlsdGVyLXBhbmVsLXRpdGxlIHtcclxuXHRmb250LXNpemU6IDEuMXJlbTtcclxuXHRmb250LXdlaWdodDogNjAwO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcbn1cclxuXHJcbi5maWx0ZXItcGFuZWwtY2xvc2Uge1xyXG5cdHdpZHRoOiAzMnB4O1xyXG5cdGhlaWdodDogMzJweDtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tdGctcmFkaXVzKTtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0dHJhbnNpdGlvbjogYmFja2dyb3VuZCB2YXIoLS10Zy10cmFuc2l0aW9uLWZhc3QpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxufVxyXG5cclxuLmZpbHRlci1wYW5lbC1jbG9zZTpob3ZlciB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3Zlcik7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxufVxyXG5cclxuLmZpbHRlci1wYW5lbC1jb250ZW50IHtcclxuXHRwYWRkaW5nOiAxLjI1cmVtO1xyXG59XHJcblxyXG4uZmlsdGVyLWdyb3VwIHtcclxuXHRtYXJnaW4tYm90dG9tOiAxLjVyZW07XHJcbn1cclxuXHJcbi5maWx0ZXItZ3JvdXAtbGFiZWwge1xyXG5cdGZvbnQtc2l6ZTogMC44NzVyZW07XHJcblx0Zm9udC13ZWlnaHQ6IDUwMDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0bWFyZ2luLWJvdHRvbTogMC41cmVtO1xyXG5cdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcblx0bGV0dGVyLXNwYWNpbmc6IDAuMDI1ZW07XHJcbn1cclxuXHJcbi5maWx0ZXItb3B0aW9ucyB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdGdhcDogMC41cmVtO1xyXG59XHJcblxyXG4uZmlsdGVyLW9wdGlvbiB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdHBhZGRpbmc6IDAuNXJlbSAwLjc1cmVtO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXRnLXJhZGl1cyk7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdHRyYW5zaXRpb246IGJhY2tncm91bmQgdmFyKC0tdGctdHJhbnNpdGlvbi1mYXN0KTtcclxufVxyXG5cclxuLmZpbHRlci1vcHRpb246aG92ZXIge1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpO1xyXG59XHJcblxyXG4uZmlsdGVyLW9wdGlvbi5pcy1zZWxlY3RlZCB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1vbi1hY2NlbnQpO1xyXG59XHJcblxyXG4uZmlsdGVyLWNoZWNrYm94IHtcclxuXHRtYXJnaW4tcmlnaHQ6IDAuNzVyZW07XHJcbn1cclxuXHJcbi8qIEZpbHRlciBzcGVjaWZpYyBzdHlsZXMgKi9cclxuLmZpbHRlci1zZWxlY3Qge1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cdHBhZGRpbmc6IDAuNXJlbSAwLjc1cmVtO1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItZm9ybS1maWVsZCk7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXRnLXJhZGl1cyk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxuXHRmb250LXNpemU6IDAuODc1cmVtO1xyXG5cdHRyYW5zaXRpb246IGFsbCB2YXIoLS10Zy10cmFuc2l0aW9uLWZhc3QpO1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxufVxyXG5cclxuLmZpbHRlci1zZWxlY3Q6aG92ZXIge1xyXG5cdGJvcmRlci1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxufVxyXG5cclxuLmZpbHRlci1zZWxlY3Q6Zm9jdXMge1xyXG5cdG91dGxpbmU6IG5vbmU7XHJcblx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdGJveC1zaGFkb3c6IDAgMCAwIDJweCB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQtaG92ZXIpO1xyXG59XHJcblxyXG4uZmlsdGVyLXRhZ3MtY29udGFpbmVyIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtd3JhcDogd3JhcDtcclxuXHRnYXA6IDAuNXJlbTtcclxuXHRwYWRkaW5nOiAwLjVyZW0gMDtcclxufVxyXG5cclxuLmZpbHRlci10YWcge1xyXG5cdGRpc3BsYXk6IGlubGluZS1mbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0Z2FwOiAwLjVyZW07XHJcblx0cGFkZGluZzogMC4zNzVyZW0gMC43NXJlbTtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXRnLXJhZGl1cy1mdWxsKTtcclxuXHRmb250LXNpemU6IDAuODc1cmVtO1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHR0cmFuc2l0aW9uOiBhbGwgdmFyKC0tdGctdHJhbnNpdGlvbi1mYXN0KTtcclxufVxyXG5cclxuLmZpbHRlci10YWc6aG92ZXIge1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpO1xyXG59XHJcblxyXG4uZmlsdGVyLXRhZy5pcy1zZWxlY3RlZCB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1vbi1hY2NlbnQpO1xyXG5cdGJvcmRlci1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxufVxyXG5cclxuLmZpbHRlci1kYXRlLWNvbnRhaW5lciB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cdGdhcDogMC43NXJlbTtcclxufVxyXG5cclxuLmZpbHRlci1kYXRlLWZpZWxkIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0Z2FwOiAwLjVyZW07XHJcbn1cclxuXHJcbi5maWx0ZXItZGF0ZS1maWVsZCBzcGFuIHtcclxuXHRtaW4td2lkdGg6IDUwcHg7XHJcblx0Zm9udC1zaXplOiAwLjg3NXJlbTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcbn1cclxuXHJcbi5maWx0ZXItZGF0ZS1pbnB1dCB7XHJcblx0ZmxleDogMTtcclxuXHRwYWRkaW5nOiAwLjVyZW0gMC43NXJlbTtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWZvcm0tZmllbGQpO1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS10Zy1yYWRpdXMpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcblx0Zm9udC1zaXplOiAwLjg3NXJlbTtcclxuXHR0cmFuc2l0aW9uOiBhbGwgdmFyKC0tdGctdHJhbnNpdGlvbi1mYXN0KTtcclxufVxyXG5cclxuLmZpbHRlci1kYXRlLWlucHV0OmhvdmVyIHtcclxuXHRib3JkZXItY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcbn1cclxuXHJcbi5maWx0ZXItZGF0ZS1pbnB1dDpmb2N1cyB7XHJcblx0b3V0bGluZTogbm9uZTtcclxuXHRib3JkZXItY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcbn1cclxuXHJcbi5maWx0ZXItYWN0aW9uLWJ1dHRvbnMge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0Z2FwOiAwLjc1cmVtO1xyXG5cdG1hcmdpbi10b3A6IDEuNXJlbTtcclxuXHRwYWRkaW5nLXRvcDogMS41cmVtO1xyXG5cdGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcbn1cclxuXHJcbi5maWx0ZXItYWN0aW9uLWJ1dHRvbnMgYnV0dG9uIHtcclxuXHRmbGV4OiAxO1xyXG59XHJcblxyXG4ucHJpb3JpdHktY29sb3ItZG90IHtcclxuXHR3aWR0aDogMTJweDtcclxuXHRoZWlnaHQ6IDEycHg7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tdGctcmFkaXVzLWZ1bGwpO1xyXG5cdGZsZXgtc2hyaW5rOiAwO1xyXG59XHJcblxyXG4vKiA9PT09PT09PT09IExvYWRpbmcgU3RhdGVzID09PT09PT09PT0gKi9cclxuLnRnLWZsdWVudC1sb2FkaW5nIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHRoZWlnaHQ6IDEwMCU7XHJcblx0Z2FwOiAxcmVtO1xyXG59XHJcblxyXG4udGctZmx1ZW50LXNwaW5uZXIge1xyXG5cdHdpZHRoOiAzMnB4O1xyXG5cdGhlaWdodDogMzJweDtcclxuXHRib3JkZXI6IDNweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Ym9yZGVyLXRvcC1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS10Zy1yYWRpdXMtZnVsbCk7XHJcblx0YW5pbWF0aW9uOiBzcGluIDFzIGxpbmVhciBpbmZpbml0ZTtcclxufVxyXG5cclxuQGtleWZyYW1lcyBzcGluIHtcclxuXHR0byB7XHJcblx0XHR0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xyXG5cdH1cclxufVxyXG5cclxuLnRnLWZsdWVudC1sb2FkaW5nLXRleHQge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRmb250LXNpemU6IDAuOXJlbTtcclxufVxyXG5cclxuLyogPT09PT09PT09PSBFbXB0eSBTdGF0ZXMgPT09PT09PT09PSAqL1xyXG4udGctZmx1ZW50LWVtcHR5LXN0YXRlIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHRoZWlnaHQ6IDEwMCU7XHJcblx0cGFkZGluZzogMnJlbTtcclxuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbn1cclxuXHJcbi50Zy1mbHVlbnQtZW1wdHktaWNvbiB7XHJcblx0d2lkdGg6IDY0cHg7XHJcblx0aGVpZ2h0OiA2NHB4O1xyXG5cdG1hcmdpbi1ib3R0b206IDFyZW07XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdG9wYWNpdHk6IDAuNTtcclxuXHQtLWljb24tc2l6ZTogNDhweDtcclxufVxyXG5cclxuLnRnLWZsdWVudC1lbXB0eS10aXRsZSB7XHJcblx0Zm9udC1zaXplOiAxLjI1cmVtO1xyXG5cdGZvbnQtd2VpZ2h0OiA2MDA7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxuXHRtYXJnaW4tYm90dG9tOiAwLjVyZW07XHJcbn1cclxuXHJcbi50Zy1mbHVlbnQtZW1wdHktZGVzY3JpcHRpb24ge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRtYXJnaW4tYm90dG9tOiAxLjVyZW07XHJcblx0bWF4LXdpZHRoOiA0MDBweDtcclxufVxyXG5cclxuLnRnLWZsdWVudC1lbXB0eS1hY3Rpb24ge1xyXG5cdHBhZGRpbmc6IDAuNzVyZW0gMS41cmVtO1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtb24tYWNjZW50KTtcclxuXHRib3JkZXI6IG5vbmU7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tdGctcmFkaXVzLW1kKTtcclxuXHRmb250LXdlaWdodDogNTAwO1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHR0cmFuc2l0aW9uOiBhbGwgdmFyKC0tdGctdHJhbnNpdGlvbi1mYXN0KTtcclxufVxyXG5cclxuLnRnLWZsdWVudC1lbXB0eS1hY3Rpb246aG92ZXIge1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudC1ob3Zlcik7XHJcblx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xcHgpO1xyXG5cdGJveC1zaGFkb3c6IHZhcigtLXRnLXNoYWRvdyk7XHJcbn1cclxuXHJcbi8qID09PT09PT09PT0gVG9vbHRpcHMgPT09PT09PT09PSAqL1xyXG4udGctZmx1ZW50LXRvb2x0aXAge1xyXG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxuXHRwYWRkaW5nOiAwLjVyZW0gMC43NXJlbTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS10Zy1yYWRpdXMpO1xyXG5cdGZvbnQtc2l6ZTogMC44NzVyZW07XHJcblx0Ym94LXNoYWRvdzogdmFyKC0tdGctc2hhZG93LWxnKTtcclxuXHR6LWluZGV4OiA5OTk5O1xyXG5cdHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG5cdG9wYWNpdHk6IDA7XHJcblx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKDRweCk7XHJcblx0dHJhbnNpdGlvbjogYWxsIHZhcigtLXRnLXRyYW5zaXRpb24tZmFzdCk7XHJcbn1cclxuXHJcbi50Zy1mbHVlbnQtdG9vbHRpcC5pcy12aXNpYmxlIHtcclxuXHRvcGFjaXR5OiAxO1xyXG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcclxufVxyXG5cclxuLyogPT09PT09PT09PSBDYXJkcyA9PT09PT09PT09ICovXHJcbi50Zy1mbHVlbnQtY2FyZCB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tdGctcmFkaXVzLWxnKTtcclxuXHRwYWRkaW5nOiAxLjI1cmVtO1xyXG5cdG1hcmdpbi1ib3R0b206IDFyZW07XHJcblx0dHJhbnNpdGlvbjogYWxsIHZhcigtLXRnLXRyYW5zaXRpb24tYmFzZSk7XHJcbn1cclxuXHJcbi50Zy1mbHVlbnQtY2FyZDpob3ZlciB7XHJcblx0Ym94LXNoYWRvdzogdmFyKC0tdGctc2hhZG93LW1kKTtcclxuXHRib3JkZXItY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcbn1cclxuXHJcbi50Zy1mbHVlbnQtY2FyZC1oZWFkZXIge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcblx0bWFyZ2luLWJvdHRvbTogMXJlbTtcclxuXHRwYWRkaW5nLWJvdHRvbTogMC43NXJlbTtcclxuXHRib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG59XHJcblxyXG4udGctZmx1ZW50LWNhcmQtdGl0bGUge1xyXG5cdGZvbnQtc2l6ZTogMXJlbTtcclxuXHRmb250LXdlaWdodDogNjAwO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcbn1cclxuXHJcbi50Zy1mbHVlbnQtY2FyZC1hY3Rpb25zIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGdhcDogMC41cmVtO1xyXG59XHJcblxyXG4udGctZmx1ZW50LWNhcmQtYWN0aW9uIHtcclxuXHR3aWR0aDogMjhweDtcclxuXHRoZWlnaHQ6IDI4cHg7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXRnLXJhZGl1cyk7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdHRyYW5zaXRpb246IGFsbCB2YXIoLS10Zy10cmFuc2l0aW9uLWZhc3QpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxufVxyXG5cclxuLnRnLWZsdWVudC1jYXJkLWFjdGlvbjpob3ZlciB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3Zlcik7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxufVxyXG5cclxuLyogPT09PT09PT09PSBCdXR0b25zID09PT09PT09PT0gKi9cclxuLnRnLWZsdWVudC1idXR0b24ge1xyXG5cdGRpc3BsYXk6IGlubGluZS1mbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0Z2FwOiAwLjVyZW07XHJcblx0cGFkZGluZzogMC42MjVyZW0gMS4yNXJlbTtcclxuXHRmb250LXNpemU6IDAuODc1cmVtO1xyXG5cdGZvbnQtd2VpZ2h0OiA1MDA7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tdGctcmFkaXVzLW1kKTtcclxuXHRib3JkZXI6IG5vbmU7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdHRyYW5zaXRpb246IGFsbCB2YXIoLS10Zy10cmFuc2l0aW9uLWZhc3QpO1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG59XHJcblxyXG4udGctZmx1ZW50LWJ1dHRvbjo6YmVmb3JlIHtcclxuXHRjb250ZW50OiBcIlwiO1xyXG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHR0b3A6IDUwJTtcclxuXHRsZWZ0OiA1MCU7XHJcblx0d2lkdGg6IDA7XHJcblx0aGVpZ2h0OiAwO1xyXG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLXRnLXJhZGl1cy1mdWxsKTtcclxuXHRiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMik7XHJcblx0dHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XHJcblx0dHJhbnNpdGlvbjpcclxuXHRcdHdpZHRoIHZhcigtLXRnLXRyYW5zaXRpb24tc2xvdyksXHJcblx0XHRoZWlnaHQgdmFyKC0tdGctdHJhbnNpdGlvbi1zbG93KTtcclxufVxyXG5cclxuLnRnLWZsdWVudC1idXR0b246YWN0aXZlOjpiZWZvcmUge1xyXG5cdHdpZHRoOiAzMDBweDtcclxuXHRoZWlnaHQ6IDMwMHB4O1xyXG59XHJcblxyXG5idXR0b24udGctZmx1ZW50LWJ1dHRvbi1wcmltYXJ5IHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XHJcbn1cclxuXHJcbmJ1dHRvbi50Zy1mbHVlbnQtYnV0dG9uLXByaW1hcnk6aG92ZXIge1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudC1ob3Zlcik7XHJcblx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xcHgpO1xyXG5cdGJveC1zaGFkb3c6IHZhcigtLXRnLXNoYWRvdyk7XHJcbn1cclxuXHJcbmJ1dHRvbi50Zy1mbHVlbnQtYnV0dG9uLXNlY29uZGFyeSB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG59XHJcblxyXG5idXR0b24udGctZmx1ZW50LWJ1dHRvbi1zZWNvbmRhcnk6aG92ZXIge1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpO1xyXG5cdGJvcmRlci1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxufVxyXG5cclxuYnV0dG9uLnRnLWZsdWVudC1idXR0b24tZ2hvc3Qge1xyXG5cdGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcbn1cclxuXHJcbmJ1dHRvbi50Zy1mbHVlbnQtYnV0dG9uLWdob3N0OmhvdmVyIHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyKTtcclxufVxyXG5cclxuYnV0dG9uLnRnLWZsdWVudC1idXR0b24tZGFuZ2VyIHtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS10ZXh0LWVycm9yKTtcclxuXHRjb2xvcjogd2hpdGU7XHJcbn1cclxuXHJcbmJ1dHRvbi50Zy1mbHVlbnQtYnV0dG9uLWRhbmdlcjpob3ZlciB7XHJcblx0YmFja2dyb3VuZDogI2RjMjYyNjtcclxuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTFweCk7XHJcblx0Ym94LXNoYWRvdzogdmFyKC0tdGctc2hhZG93KTtcclxufVxyXG5cclxuLyogPT09PT09PT09PSBBbmltYXRpb25zID09PT09PT09PT0gKi9cclxuQGtleWZyYW1lcyBmYWRlSW4ge1xyXG5cdGZyb20ge1xyXG5cdFx0b3BhY2l0eTogMDtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWSg0cHgpO1xyXG5cdH1cclxuXHR0byB7XHJcblx0XHRvcGFjaXR5OiAxO1xyXG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xyXG5cdH1cclxufVxyXG5cclxuQGtleWZyYW1lcyBzbGlkZUluIHtcclxuXHRmcm9tIHtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKTtcclxuXHR9XHJcblx0dG8ge1xyXG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xyXG5cdH1cclxufVxyXG5cclxuQGtleWZyYW1lcyBzbGlkZVVwIHtcclxuXHRmcm9tIHtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMDAlKTtcclxuXHR9XHJcblx0dG8ge1xyXG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xyXG5cdH1cclxufVxyXG5cclxuQGtleWZyYW1lcyBwdWxzZSB7XHJcblx0MCUsXHJcblx0MTAwJSB7XHJcblx0XHRvcGFjaXR5OiAxO1xyXG5cdH1cclxuXHQ1MCUge1xyXG5cdFx0b3BhY2l0eTogMC41O1xyXG5cdH1cclxufVxyXG5cclxuLyogPT09PT09PT09PSBSZXNwb25zaXZlIERlc2lnbiA9PT09PT09PT09ICovXHJcbkBtZWRpYSAobWF4LXdpZHRoOiAxMDI0cHgpIHtcclxuXHQudGFzay1saXN0LWNvbnRhaW5lcixcclxuXHQudGFzay10cmVlLWNvbnRhaW5lciB7XHJcblx0XHRwYWRkaW5nOiAxcmVtO1xyXG5cdH1cclxuXHJcblx0LnRnLWZsdWVudC1maWx0ZXItcGFuZWwge1xyXG5cdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRyaWdodDogLTEwMCU7XHJcblx0fVxyXG59XHJcblxyXG5AbWVkaWEgKG1heC13aWR0aDogNjQwcHgpIHtcclxuXHQudGctdGFzay1saXN0LWl0ZW0ge1xyXG5cdFx0cGFkZGluZzogMC43NXJlbSAxcmVtO1xyXG5cdH1cclxuXHJcblx0LnRhc2stdHJlZS1wcm9qZWN0LWhlYWRlciB7XHJcblx0XHRwYWRkaW5nOiAwLjc1cmVtIDFyZW07XHJcblx0fVxyXG5cclxuXHQudGctZmx1ZW50LWNhcmQge1xyXG5cdFx0cGFkZGluZzogMXJlbTtcclxuXHR9XHJcbn1cclxuXHJcbi8qID09PT09PT09PT0gRGFyayBNb2RlIEFkanVzdG1lbnRzID09PT09PT09PT0gKi9cclxuLnRoZW1lLWRhcmsge1xyXG5cdC0tdGctc2hhZG93LXNtOiAwIDFweCAycHggMCByZ2IoMCAwIDAgLyAwLjMpO1xyXG5cdC0tdGctc2hhZG93OiAwIDFweCAzcHggMCByZ2IoMCAwIDAgLyAwLjQpLCAwIDFweCAycHggLTFweCByZ2IoMCAwIDAgLyAwLjMpO1xyXG5cdC0tdGctc2hhZG93LW1kOlxyXG5cdFx0MCA0cHggNnB4IC0xcHggcmdiKDAgMCAwIC8gMC40KSwgMCAycHggNHB4IC0ycHggcmdiKDAgMCAwIC8gMC4zKTtcclxuXHQtLXRnLXNoYWRvdy1sZzpcclxuXHRcdDAgMTBweCAxNXB4IC0zcHggcmdiKDAgMCAwIC8gMC40KSwgMCA0cHggNnB4IC00cHggcmdiKDAgMCAwIC8gMC4zKTtcclxuXHQtLXRnLXNoYWRvdy14bDpcclxuXHRcdDAgMjBweCAyNXB4IC01cHggcmdiKDAgMCAwIC8gMC40KSwgMCA4cHggMTBweCAtNnB4IHJnYigwIDAgMCAvIDAuMyk7XHJcbn1cclxuXHJcbi50aGVtZS1kYXJrIC50Zy1mbHVlbnQtY2FyZDpob3ZlcixcclxuLnRoZW1lLWRhcmsgLnRnLXRhc2stbGlzdC1pdGVtOmhvdmVyLFxyXG4udGhlbWUtZGFyayAudGFzay10cmVlLXByb2plY3Q6aG92ZXIge1xyXG5cdGJveC1zaGFkb3c6XHJcblx0XHQwIDAgMCAxcHggdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KSxcclxuXHRcdHZhcigtLXRnLXNoYWRvdy1tZCk7XHJcbn1cclxuXHJcbi8qID09PT09PT09PT0gUHJvZ3Jlc3MgQmFycyA9PT09PT09PT09ICovXHJcbi50Zy1mbHVlbnQtcHJvZ3Jlc3Mge1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cdGhlaWdodDogNnB4O1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS10Zy1yYWRpdXMtZnVsbCk7XHJcblx0b3ZlcmZsb3c6IGhpZGRlbjtcclxuXHRtYXJnaW46IDAuNXJlbSAwO1xyXG59XHJcblxyXG4udGctZmx1ZW50LXByb2dyZXNzLWJhciB7XHJcblx0aGVpZ2h0OiAxMDAlO1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tdGctcmFkaXVzLWZ1bGwpO1xyXG5cdHRyYW5zaXRpb246IHdpZHRoIHZhcigtLXRnLXRyYW5zaXRpb24tc2xvdyk7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcbn1cclxuXHJcbi50Zy1mbHVlbnQtcHJvZ3Jlc3MtYmFyOjphZnRlciB7XHJcblx0Y29udGVudDogXCJcIjtcclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0dG9wOiAwO1xyXG5cdGxlZnQ6IDA7XHJcblx0cmlnaHQ6IDA7XHJcblx0Ym90dG9tOiAwO1xyXG5cdGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudChcclxuXHRcdDkwZGVnLFxyXG5cdFx0dHJhbnNwYXJlbnQsXHJcblx0XHRyZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMyksXHJcblx0XHR0cmFuc3BhcmVudFxyXG5cdCk7XHJcblx0YW5pbWF0aW9uOiBzaGltbWVyIDJzIGluZmluaXRlO1xyXG59XHJcblxyXG5Aa2V5ZnJhbWVzIHNoaW1tZXIge1xyXG5cdDAlIHtcclxuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSk7XHJcblx0fVxyXG5cdDEwMCUge1xyXG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpO1xyXG5cdH1cclxufVxyXG5cclxuLyogPT09PT09PT09PSBUYWdzID09PT09PT09PT0gKi9cclxuLnRnLWZsdWVudC10YWcge1xyXG5cdGRpc3BsYXk6IGlubGluZS1mbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0cGFkZGluZzogMC4yNXJlbSAwLjYyNXJlbTtcclxuXHRmb250LXNpemU6IDAuNzVyZW07XHJcblx0Zm9udC13ZWlnaHQ6IDUwMDtcclxuXHRib3JkZXItcmFkaXVzOiB2YXIoLS10Zy1yYWRpdXMtZnVsbCk7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdG1hcmdpbi1yaWdodDogMC4yNXJlbTtcclxuXHR0cmFuc2l0aW9uOiBhbGwgdmFyKC0tdGctdHJhbnNpdGlvbi1mYXN0KTtcclxufVxyXG5cclxuLnRnLWZsdWVudC10YWc6aG92ZXIge1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpO1xyXG5cdGJvcmRlci1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxufVxyXG5cclxuLnRnLWZsdWVudC10YWctcHJpbWFyeSB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1vbi1hY2NlbnQpO1xyXG5cdGJvcmRlci1jb2xvcjogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxufVxyXG5cclxuLnRnLWZsdWVudC10YWctc3VjY2VzcyB7XHJcblx0YmFja2dyb3VuZDogIzEwYjk4MTtcclxuXHRjb2xvcjogd2hpdGU7XHJcblx0Ym9yZGVyLWNvbG9yOiAjMTBiOTgxO1xyXG59XHJcblxyXG4udGctZmx1ZW50LXRhZy13YXJuaW5nIHtcclxuXHRiYWNrZ3JvdW5kOiAjZjU5ZTBiO1xyXG5cdGNvbG9yOiB3aGl0ZTtcclxuXHRib3JkZXItY29sb3I6ICNmNTllMGI7XHJcbn1cclxuXHJcbi50Zy1mbHVlbnQtdGFnLWRhbmdlciB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tdGV4dC1lcnJvcik7XHJcblx0Y29sb3I6IHdoaXRlO1xyXG5cdGJvcmRlci1jb2xvcjogdmFyKC0tdGV4dC1lcnJvcik7XHJcbn1cclxuXHJcbi53b3Jrc3BhY2UtbmFtZS13aXRoLWljb24ge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XHJcblx0Z2FwOiB2YXIoLS1zaXplLTItMik7XHJcbn1cclxuIiwgIi8qIFRhc2sgR2VuaXVzIGZsdWVudCBDb250ZW50IEhlYWRlciBTdHlsZXMgKi9cclxuXHJcbi8qID09PSBDb250ZW50IFdyYXBwZXIgPT09ICovXHJcbi50Zy1mbHVlbnQtY29udGVudC13cmFwcGVyIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0aGVpZ2h0OiAxMDAlO1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcbn1cclxuXHJcbi8qID09PSBDb250ZW50IEhlYWRlciA9PT0gKi9cclxuLmZsdWVudC1jb250ZW50LWhlYWRlciB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuXHRwYWRkaW5nOiAxMnB4IDIwcHg7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcclxuXHRib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdG1pbi1oZWlnaHQ6IDU2cHg7XHJcblx0Z2FwOiAxNnB4O1xyXG5cdGZsZXgtc2hyaW5rOiAwO1xyXG59XHJcblxyXG4uZmx1ZW50LWNvbnRlbnQtaGVhZGVyIC5oZWFkZXItbGVmdC1zZWN0aW9uIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0Z2FwOiAxMnB4O1xyXG5cdG1pbi13aWR0aDogMjAwcHg7XHJcbn1cclxuXHJcbi5mbHVlbnQtY29udGVudC1oZWFkZXIgLmNvbnRlbnQtdGl0bGUge1xyXG5cdGZvbnQtc2l6ZTogMS4yNXJlbTtcclxuXHRmb250LXdlaWdodDogNjAwO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcblx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcclxufVxyXG5cclxuLmZsdWVudC1jb250ZW50LWhlYWRlciAudGFzay1jb3VudCB7XHJcblx0Zm9udC1zaXplOiAwLjg3NXJlbTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0cGFkZGluZzogMnB4IDhweDtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcblx0Ym9yZGVyLXJhZGl1czogNHB4O1xyXG5cdHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcbn1cclxuXHJcbi5mbHVlbnQtY29udGVudC1oZWFkZXIgLmhlYWRlci1jZW50ZXItc2VjdGlvbiB7XHJcblx0ZmxleDogMTtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG5cdG1heC13aWR0aDogNTAwcHg7XHJcblx0bWFyZ2luOiAwIGF1dG87XHJcbn1cclxuXHJcbi5mbHVlbnQtY29udGVudC1oZWFkZXIgLmNvbnRlbnQtZmlsdGVyIHtcclxuXHR3aWR0aDogMTAwJTtcclxufVxyXG5cclxuLmZsdWVudC1jb250ZW50LWhlYWRlciAuZmlsdGVyLWlucHV0IHtcclxuXHR3aWR0aDogMTAwJTtcclxuXHRwYWRkaW5nOiA2cHggMTJweDtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnktYWx0KTtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0Ym9yZGVyLXJhZGl1czogNnB4O1xyXG5cdGZvbnQtc2l6ZTogMC44NzVyZW07XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxuXHR0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlO1xyXG59XHJcblxyXG4uZmx1ZW50LWNvbnRlbnQtaGVhZGVyIC5maWx0ZXItaW5wdXQ6OnBsYWNlaG9sZGVyIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcbn1cclxuXHJcbi5mbHVlbnQtY29udGVudC1oZWFkZXIgLmZpbHRlci1pbnB1dDpmb2N1cyB7XHJcblx0b3V0bGluZTogbm9uZTtcclxuXHRib3JkZXItY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcblx0Ym94LXNoYWRvdzogMCAwIDAgMnB4IHJnYmEodmFyKC0taW50ZXJhY3RpdmUtYWNjZW50LXJnYiksIDAuMik7XHJcbn1cclxuXHJcbi5mbHVlbnQtY29udGVudC1oZWFkZXIgLmhlYWRlci1yaWdodC1zZWN0aW9uIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0Z2FwOiA4cHg7XHJcbn1cclxuXHJcbi5mbHVlbnQtY29udGVudC1oZWFkZXIgLnZpZXctdG9nZ2xlLWJ0bixcclxuLmZsdWVudC1jb250ZW50LWhlYWRlciAuc29ydC1idXR0b24sXHJcbi5mbHVlbnQtY29udGVudC1oZWFkZXIgLmZpbHRlci1idXR0b24ge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHR3aWR0aDogMzJweDtcclxuXHRoZWlnaHQ6IDMycHg7XHJcblx0Ym9yZGVyLXJhZGl1czogNnB4O1xyXG5cdGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0dHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZTtcclxufVxyXG5cclxuLmZsdWVudC1jb250ZW50LWhlYWRlciAudmlldy10b2dnbGUtYnRuOmhvdmVyLFxyXG4uZmx1ZW50LWNvbnRlbnQtaGVhZGVyIC5zb3J0LWJ1dHRvbjpob3ZlcixcclxuLmZsdWVudC1jb250ZW50LWhlYWRlciAuZmlsdGVyLWJ1dHRvbjpob3ZlciB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3Zlcik7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxufVxyXG5cclxuLmZsdWVudC1jb250ZW50LWhlYWRlciAudmlldy10b2dnbGUtYnRuOmFjdGl2ZSxcclxuLmZsdWVudC1jb250ZW50LWhlYWRlciAuc29ydC1idXR0b246YWN0aXZlLFxyXG4uZmx1ZW50LWNvbnRlbnQtaGVhZGVyIC5maWx0ZXItYnV0dG9uOmFjdGl2ZSB7XHJcblx0dHJhbnNmb3JtOiBzY2FsZSgwLjk1KTtcclxufVxyXG5cclxuLmZsdWVudC1jb250ZW50LWhlYWRlciAudmlldy10b2dnbGUtYnRuIHN2ZyxcclxuLmZsdWVudC1jb250ZW50LWhlYWRlciAuc29ydC1idXR0b24gc3ZnLFxyXG4uZmx1ZW50LWNvbnRlbnQtaGVhZGVyIC5maWx0ZXItYnV0dG9uIHN2ZyB7XHJcblx0d2lkdGg6IDE2cHg7XHJcblx0aGVpZ2h0OiAxNnB4O1xyXG59XHJcblxyXG4vKiA9PT0gQ29udGVudCBBcmVhICh3aXRoIGhlYWRlcikgPT09ICovXHJcbi50Zy1mbHVlbnQtY29udGVudCB7XHJcblx0ZmxleDogMTtcclxuXHRvdmVyZmxvdy15OiBhdXRvO1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XHJcbn1cclxuXHJcbi8qID09PSBSZXNwb25zaXZlIGFkanVzdG1lbnRzID09PSAqL1xyXG5AbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcclxuXHQuZmx1ZW50LWNvbnRlbnQtaGVhZGVyIHtcclxuXHRcdGZsZXgtd3JhcDogd3JhcDtcclxuXHRcdHBhZGRpbmc6IDhweCAxMnB4O1xyXG5cdH1cclxuXHJcblx0LmZsdWVudC1jb250ZW50LWhlYWRlciAuaGVhZGVyLWxlZnQtc2VjdGlvbiB7XHJcblx0XHRtaW4td2lkdGg6IGF1dG87XHJcblx0fVxyXG5cclxuXHQuZmx1ZW50LWNvbnRlbnQtaGVhZGVyIC5oZWFkZXItY2VudGVyLXNlY3Rpb24ge1xyXG5cdFx0b3JkZXI6IDM7XHJcblx0XHR3aWR0aDogMTAwJTtcclxuXHRcdG1heC13aWR0aDogbm9uZTtcclxuXHRcdG1hcmdpbi10b3A6IDhweDtcclxuXHR9XHJcblxyXG5cdC5mbHVlbnQtY29udGVudC1oZWFkZXIgLmNvbnRlbnQtdGl0bGUge1xyXG5cdFx0Zm9udC1zaXplOiAxLjFyZW07XHJcblx0fVxyXG59XHJcbiIsICIvKiBQcm9qZWN0IFBvcG92ZXIgU3R5bGVzICovXG4uZmx1ZW50LXByb2plY3QtcG9wb3Zlci1jb250YWluZXIge1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdHotaW5kZXg6IDEwMDA7XG59XG5cbi5mbHVlbnQtcHJvamVjdC1wb3BvdmVyIHtcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xuXHRib3JkZXItcmFkaXVzOiA4cHg7XG5cdGJveC1zaGFkb3c6IDAgNHB4IDIwcHggcmdiYSgwLCAwLCAwLCAwLjE1KTtcblx0bWluLXdpZHRoOiAzMjBweDtcblx0bWF4LXdpZHRoOiA0MDBweDtcblx0YW5pbWF0aW9uOiBwb3BvdmVyLWZhZGUtaW4gMC4ycyBlYXNlLW91dDtcbn1cblxuQGtleWZyYW1lcyBwb3BvdmVyLWZhZGUtaW4ge1xuXHRmcm9tIHtcblx0XHRvcGFjaXR5OiAwO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtOHB4KTtcblx0fVxuXHR0byB7XG5cdFx0b3BhY2l0eTogMTtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG5cdH1cbn1cblxuLmZsdWVudC1wb3BvdmVyLWFycm93LFxuLmZsdWVudC1wb3BvdmVyLWFycm93OjpiZWZvcmUge1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdHdpZHRoOiAxMHB4O1xuXHRoZWlnaHQ6IDEwcHg7XG5cdGJhY2tncm91bmQ6IGluaGVyaXQ7XG59XG5cbi5mbHVlbnQtcG9wb3Zlci1hcnJvdyB7XG5cdHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLmZsdWVudC1wb3BvdmVyLWFycm93OjpiZWZvcmUge1xuXHR2aXNpYmlsaXR5OiB2aXNpYmxlO1xuXHRjb250ZW50OiBcIlwiO1xuXHR0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcbn1cblxuLyogQXJyb3cgcG9zaXRpb25pbmcgZm9yIGRpZmZlcmVudCBwbGFjZW1lbnRzICovXG4uZmx1ZW50LXByb2plY3QtcG9wb3ZlcltkYXRhLXBvcHBlci1wbGFjZW1lbnRePVwidG9wXCJdIC5mbHVlbnQtcG9wb3Zlci1hcnJvdyB7XG5cdGJvdHRvbTogLTVweDtcbn1cblxuLmZsdWVudC1wcm9qZWN0LXBvcG92ZXJbZGF0YS1wb3BwZXItcGxhY2VtZW50Xj1cInRvcFwiXVxuXHQuZmx1ZW50LXBvcG92ZXItYXJyb3c6OmJlZm9yZSB7XG5cdGJvcmRlci10b3A6IG5vbmU7XG5cdGJvcmRlci1sZWZ0OiBub25lO1xufVxuXG4uZmx1ZW50LXByb2plY3QtcG9wb3ZlcltkYXRhLXBvcHBlci1wbGFjZW1lbnRePVwiYm90dG9tXCJdIC5mbHVlbnQtcG9wb3Zlci1hcnJvdyB7XG5cdHRvcDogLTVweDtcbn1cblxuLmZsdWVudC1wcm9qZWN0LXBvcG92ZXJbZGF0YS1wb3BwZXItcGxhY2VtZW50Xj1cImJvdHRvbVwiXVxuXHQuZmx1ZW50LXBvcG92ZXItYXJyb3c6OmJlZm9yZSB7XG5cdGJvcmRlci1yaWdodDogbm9uZTtcblx0Ym9yZGVyLWJvdHRvbTogbm9uZTtcbn1cblxuLmZsdWVudC1wcm9qZWN0LXBvcG92ZXJbZGF0YS1wb3BwZXItcGxhY2VtZW50Xj1cImxlZnRcIl0gLmZsdWVudC1wb3BvdmVyLWFycm93IHtcblx0cmlnaHQ6IC01cHg7XG59XG5cbi5mbHVlbnQtcHJvamVjdC1wb3BvdmVyW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49XCJsZWZ0XCJdXG5cdC5mbHVlbnQtcG9wb3Zlci1hcnJvdzo6YmVmb3JlIHtcblx0Ym9yZGVyLWJvdHRvbTogbm9uZTtcblx0Ym9yZGVyLWxlZnQ6IG5vbmU7XG59XG5cbi5mbHVlbnQtcHJvamVjdC1wb3BvdmVyW2RhdGEtcG9wcGVyLXBsYWNlbWVudF49XCJyaWdodFwiXSAuZmx1ZW50LXBvcG92ZXItYXJyb3cge1xuXHRsZWZ0OiAtNXB4O1xufVxuXG4uZmx1ZW50LXByb2plY3QtcG9wb3ZlcltkYXRhLXBvcHBlci1wbGFjZW1lbnRePVwicmlnaHRcIl1cblx0LmZsdWVudC1wb3BvdmVyLWFycm93OjpiZWZvcmUge1xuXHRib3JkZXItdG9wOiBub25lO1xuXHRib3JkZXItcmlnaHQ6IG5vbmU7XG59XG5cbi5mbHVlbnQtcG9wb3Zlci1jb250ZW50IHtcblx0cGFkZGluZzogMTZweDtcbn1cblxuLmZsdWVudC1wb3BvdmVyLWhlYWRlciB7XG5cdG1hcmdpbi1ib3R0b206IDE2cHg7XG5cdHBhZGRpbmctYm90dG9tOiAxMnB4O1xuXHRib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xufVxuXG4uZmx1ZW50LXBvcG92ZXItaGVhZGVyIGgzIHtcblx0bWFyZ2luOiAwO1xuXHRmb250LXNpemU6IDE2cHg7XG5cdGZvbnQtd2VpZ2h0OiA2MDA7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XG59XG5cbi5mbHVlbnQtcG9wb3Zlci1zZWN0aW9uIHtcblx0bWFyZ2luLWJvdHRvbTogMTZweDtcbn1cblxuLmZsdWVudC1wb3BvdmVyLXNlY3Rpb24gbGFiZWwge1xuXHRkaXNwbGF5OiBibG9jaztcblx0bWFyZ2luLWJvdHRvbTogOHB4O1xuXHRmb250LXNpemU6IDEycHg7XG5cdGZvbnQtd2VpZ2h0OiA1MDA7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcblx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblx0bGV0dGVyLXNwYWNpbmc6IDAuNXB4O1xufVxuXG4uZmx1ZW50LXBvcG92ZXItaW5wdXQge1xuXHR3aWR0aDogMTAwJTtcblx0cGFkZGluZzogOHB4IDEycHg7XG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcblx0Ym9yZGVyLXJhZGl1czogNHB4O1xuXHRmb250LXNpemU6IDE0cHg7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XG5cdHRyYW5zaXRpb246IGFsbCAwLjJzO1xufVxuXG4uZmx1ZW50LXBvcG92ZXItaW5wdXQ6Zm9jdXMge1xuXHRvdXRsaW5lOiBub25lO1xuXHRib3JkZXItY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XG5cdGJveC1zaGFkb3c6IDAgMCAwIDJweCB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQtaG92ZXIpO1xufVxuXG4uZmx1ZW50LXBvcG92ZXItaW5wdXQuaXMtZXJyb3Ige1xuXHRib3JkZXItY29sb3I6IHZhcigtLXRleHQtZXJyb3IpO1xuXHRhbmltYXRpb246IHNoYWtlIDAuM3M7XG59XG5cbkBrZXlmcmFtZXMgc2hha2Uge1xuXHQwJSxcblx0MTAwJSB7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuXHR9XG5cdDI1JSB7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKC00cHgpO1xuXHR9XG5cdDc1JSB7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKDRweCk7XG5cdH1cbn1cblxuLmZsdWVudC1jb2xvci1ncmlkIHtcblx0ZGlzcGxheTogZ3JpZDtcblx0Z3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoNSwgMWZyKTtcblx0Z2FwOiA4cHg7XG59XG5cbi5mbHVlbnQtY29sb3ItYnV0dG9uIHtcblx0d2lkdGg6IDM2cHg7XG5cdGhlaWdodDogMzZweDtcblx0Ym9yZGVyLXJhZGl1czogOHB4O1xuXHRjdXJzb3I6IHBvaW50ZXI7XG5cdHRyYW5zaXRpb246IGFsbCAwLjJzO1xuXHRib3JkZXI6IDJweCBzb2xpZCB0cmFuc3BhcmVudDtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uZmx1ZW50LWNvbG9yLWJ1dHRvbjpob3ZlciB7XG5cdHRyYW5zZm9ybTogc2NhbGUoMS4xKTtcbn1cblxuLmZsdWVudC1jb2xvci1idXR0b24uaXMtc2VsZWN0ZWQge1xuXHRib3JkZXItY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XG5cdGJveC1zaGFkb3c6IDAgMCAwIDJweCB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQtaG92ZXIpO1xufVxuXG4uZmx1ZW50LWNvbG9yLWJ1dHRvbi5pcy1zZWxlY3RlZDo6YWZ0ZXIge1xuXHRjb250ZW50OiBcIuKck1wiO1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdHRvcDogNTAlO1xuXHRsZWZ0OiA1MCU7XG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuXHRjb2xvcjogd2hpdGU7XG5cdGZvbnQtc2l6ZTogMTZweDtcblx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG5cdHRleHQtc2hhZG93OiAwIDFweCAycHggcmdiYSgwLCAwLCAwLCAwLjMpO1xufVxuXG4uZmx1ZW50LXBvcG92ZXItYWN0aW9ucyB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG5cdGdhcDogOHB4O1xuXHRtYXJnaW4tdG9wOiAyMHB4O1xuXHRwYWRkaW5nLXRvcDogMTZweDtcblx0Ym9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcbn1cblxuLmZsdWVudC1idXR0b24ge1xuXHRwYWRkaW5nOiA2cHggMTZweDtcblx0Ym9yZGVyLXJhZGl1czogNHB4O1xuXHRmb250LXNpemU6IDE0cHg7XG5cdGZvbnQtd2VpZ2h0OiA1MDA7XG5cdGN1cnNvcjogcG9pbnRlcjtcblx0dHJhbnNpdGlvbjogYWxsIDAuMnM7XG5cdGJvcmRlcjogbm9uZTtcblx0b3V0bGluZTogbm9uZTtcbn1cblxuLmZsdWVudC1idXR0b24tcHJpbWFyeSB7XG5cdGJhY2tncm91bmQ6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LW9uLWFjY2VudCk7XG59XG5cbi5mbHVlbnQtYnV0dG9uLXByaW1hcnk6aG92ZXIge1xuXHRiYWNrZ3JvdW5kOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQtaG92ZXIpO1xufVxuXG4uZmx1ZW50LWJ1dHRvbi1zZWNvbmRhcnkge1xuXHRiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XG59XG5cbi5mbHVlbnQtYnV0dG9uLXNlY29uZGFyeTpob3ZlciB7XG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpO1xuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xufVxuXG4vKiBNb2RhbCBTdHlsZXMgdXNpbmcgT2JzaWRpYW4gbmF0aXZlIE1vZGFsICovXG4uZmx1ZW50LXByb2plY3QtbW9kYWwge1xuXHQvKiBNb2RhbCB3aWxsIHVzZSBPYnNpZGlhbidzIGRlZmF1bHQgc3R5bGluZyAqL1xufVxuXG4uZmx1ZW50LXByb2plY3QtbW9kYWwgLm1vZGFsLWNvbnRlbnQgaDIge1xuXHRtYXJnaW4tYm90dG9tOiAyMHB4O1xuXHRmb250LXNpemU6IDIwcHg7XG5cdGZvbnQtd2VpZ2h0OiA2MDA7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XG59XG5cbi5mbHVlbnQtbW9kYWwtc2VjdGlvbiB7XG5cdG1hcmdpbi1ib3R0b206IDI0cHg7XG59XG5cbi5mbHVlbnQtbW9kYWwtc2VjdGlvbiBsYWJlbCB7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHRtYXJnaW4tYm90dG9tOiA4cHg7XG5cdGZvbnQtc2l6ZTogMTRweDtcblx0Zm9udC13ZWlnaHQ6IDUwMDtcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xufVxuXG4uZmx1ZW50LW1vZGFsLWlucHV0IHtcblx0d2lkdGg6IDEwMCU7XG5cdHBhZGRpbmc6IDEwcHggMTRweDtcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xuXHRib3JkZXItcmFkaXVzOiA2cHg7XG5cdGZvbnQtc2l6ZTogMTZweDtcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcblx0dHJhbnNpdGlvbjogYWxsIDAuMnM7XG59XG5cbi5mbHVlbnQtbW9kYWwtaW5wdXQ6Zm9jdXMge1xuXHRvdXRsaW5lOiBub25lO1xuXHRib3JkZXItY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XG5cdGJveC1zaGFkb3c6IDAgMCAwIDNweCB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQtaG92ZXIpO1xufVxuXG4uZmx1ZW50LW1vZGFsLWlucHV0LmlzLWVycm9yIHtcblx0Ym9yZGVyLWNvbG9yOiB2YXIoLS10ZXh0LWVycm9yKTtcblx0YW5pbWF0aW9uOiBzaGFrZSAwLjNzO1xufVxuXG4uZmx1ZW50LW1vZGFsLWNvbG9yLWdyaWQge1xuXHRkaXNwbGF5OiBncmlkO1xuXHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCg1LCAxZnIpO1xuXHRnYXA6IDEycHg7XG59XG5cbi5mbHVlbnQtbW9kYWwtY29sb3ItYnV0dG9uIHtcblx0d2lkdGg6IDQ4cHg7XG5cdGhlaWdodDogNDhweDtcblx0Ym9yZGVyLXJhZGl1czogOHB4O1xuXHRjdXJzb3I6IHBvaW50ZXI7XG5cdHRyYW5zaXRpb246IGFsbCAwLjJzO1xuXHRib3JkZXI6IDNweCBzb2xpZCB0cmFuc3BhcmVudDtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uZmx1ZW50LW1vZGFsLWNvbG9yLWJ1dHRvbjpob3ZlciB7XG5cdHRyYW5zZm9ybTogc2NhbGUoMS4xKTtcbn1cblxuLmZsdWVudC1tb2RhbC1jb2xvci1idXR0b24uaXMtc2VsZWN0ZWQge1xuXHRib3JkZXItY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XG5cdGJveC1zaGFkb3c6IDAgMCAwIDNweCB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQtaG92ZXIpO1xufVxuXG4uZmx1ZW50LW1vZGFsLWNvbG9yLWJ1dHRvbi5pcy1zZWxlY3RlZDo6YWZ0ZXIge1xuXHRjb250ZW50OiBcIuKck1wiO1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdHRvcDogNTAlO1xuXHRsZWZ0OiA1MCU7XG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuXHRjb2xvcjogd2hpdGU7XG5cdGZvbnQtc2l6ZTogMjBweDtcblx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG5cdHRleHQtc2hhZG93OiAwIDFweCAzcHggcmdiYSgwLCAwLCAwLCAwLjQpO1xufVxuXG4uZmx1ZW50LW1vZGFsLXByZXZpZXcge1xuXHRwYWRkaW5nOiAxMnB4O1xuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XG5cdGJvcmRlci1yYWRpdXM6IDhweDtcbn1cblxuLmZsdWVudC1wcm9qZWN0LWl0ZW0tcHJldmlldyB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdGdhcDogMTJweDtcblx0cGFkZGluZzogOHB4O1xuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xuXHRib3JkZXItcmFkaXVzOiA2cHg7XG59XG5cbi5mbHVlbnQtcHJvamVjdC1pdGVtLXByZXZpZXcgLmZsdWVudC1wcm9qZWN0LWNvbG9yIHtcblx0d2lkdGg6IDhweDtcblx0aGVpZ2h0OiAzMnB4O1xuXHRib3JkZXItcmFkaXVzOiAycHg7XG5cdGZsZXgtc2hyaW5rOiAwO1xufVxuXG4uZmx1ZW50LXByb2plY3QtaXRlbS1wcmV2aWV3IC5mbHVlbnQtcHJvamVjdC1uYW1lIHtcblx0Zm9udC1zaXplOiAxNHB4O1xuXHRmb250LXdlaWdodDogNTAwO1xuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xufVxuXG4uZmx1ZW50LW1vZGFsLWZvb3RlciB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG5cdGdhcDogMTJweDtcblx0cGFkZGluZzogMjBweDtcblx0Ym9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcbn1cblxuLmZsdWVudC1tb2RhbC1mb290ZXIgLmZsdWVudC1idXR0b24ge1xuXHRwYWRkaW5nOiAxMHB4IDI0cHg7XG5cdGZvbnQtc2l6ZTogMTVweDtcbn1cbiIsICIvKiDnjrDku6MgRmx1ZW50IOS+p+i+ueagj+mFjeiJsuWSjOW4g+WxgOWPmOmHjyAqL1xuLmZsdWVudC1tb2Rlcm4ge1xuXHQtLW1vZGVybi1iYWNrZ3JvdW5kLXNlY29uZGFyeTogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xuXHQtLW1vZGVybi1iYWNrZ3JvdW5kLXByaW1hcnk6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XG59XG4udGhlbWUtZGFyayAuZmx1ZW50LW1vZGVybiB7XG5cdC0tbW9kZXJuLWJhY2tncm91bmQtc2Vjb25kYXJ5OiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XG5cdC0tbW9kZXJuLWJhY2tncm91bmQtcHJpbWFyeTogdmFyKC0tYmFja2dyb3VuZC1wcmltYXJ5KTtcbn1cblxuLyog4oCU4oCUIEZsdWVudCDkvqfovrnmoI/lj4rlhbblhoXlrrnljLrln58g4oCU4oCUICovXG4uZmx1ZW50LW1vZGVybiB7XG5cdC50Zy1mbHVlbnQtc2lkZWJhci1jb250YWluZXIge1xuXHRcdC8qIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTsgKi9cblx0XHQvKiBib3JkZXItcmlnaHQ6IHVuc2V0OyAqL1xuXHR9XG5cdC5mbHVlbnQtc2lkZWJhci1jb250ZW50IHtcblx0XHRmbGV4OiAxO1xuXHRcdG92ZXJmbG93LXk6IGF1dG87XG5cdFx0cGFkZGluZzogOHB4IDAgMCAwO1xuXHRcdC0taWNvbi1zaXplOiAxNnB4O1xuXHR9XG5cblx0Lyog5Li75YaF5a655biD5bGAICovXG5cdC50Zy1mbHVlbnQtbGF5b3V0IHtcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdGhlaWdodDogMTAwJTtcblx0XHR3aWR0aDogMTAwJTtcblx0XHRvdmVyZmxvdzogaGlkZGVuO1xuXHRcdC8qIHBhZGRpbmc6IHZhcigtLXNpemUtNC0yKSAwOyAqL1xuXHRcdC8qIGdhcDogdmFyKC0tc2l6ZS00LTIpOyAqL1xuXHRcdC8qIGJhY2tncm91bmQ6IHZhcigtLW1vZGVybi1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7ICovXG5cdH1cblx0LnRnLWZsdWVudC1tYWluLWNvbnRhaW5lciB7XG5cdFx0ZmxleDogMTtcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdFx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0XHQvKiBnYXA6IHZhcigtLXNpemUtNC0yKTsgKi9cblx0fVxuXG5cdC8qIOWGheWuueWMheijuSAqL1xuXHQudGctZmx1ZW50LWNvbnRlbnQtd3JhcHBlciB7XG5cdFx0ZGlzcGxheTogZmxleDtcblx0XHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRcdGhlaWdodDogMTAwJTtcblx0XHRvdmVyZmxvdzogaGlkZGVuO1xuXHRcdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1tKTtcblx0fVxuXHQudGctZmx1ZW50LWNvbnRlbnQge1xuXHRcdGZsZXg6IDE7XG5cdFx0b3ZlcmZsb3cteTogYXV0bztcblx0XHQvKiBiYWNrZ3JvdW5kOiB2YXIoLS1tb2Rlcm4tYmFja2dyb3VuZC1zZWNvbmRhcnkpOyAqL1xuXHR9XG5cblx0Lyog5pCc57Si5qCPICovXG5cdC5mbHVlbnQtc2VhcmNoLWNvbnRhaW5lciBpbnB1dFt0eXBlPVwic2VhcmNoXCJdIHtcblx0XHR3aWR0aDogMTAwJTtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnktYWx0KTtcblx0XHRoZWlnaHQ6IHZhcigtLXNpemUtNC04KTtcblx0XHRib3JkZXI6IHVuc2V0O1xuXHR9XG5cdC5zZWFyY2gtaW5wdXQtY29udGFpbmVyIHtcblx0XHR3aWR0aDogMTAwJTtcblx0fVxuXG5cdC8qIOWIl+ihqOWSjOS7u+WKoemhueagt+W8jyAqL1xuXHQudGFzay1saXN0IHtcblx0XHRmbGV4OiAxO1xuXHRcdG92ZXJmbG93LXk6IGF1dG87XG5cdFx0cGFkZGluZzogdmFyKC0tc2l6ZS00LTIpO1xuXHR9XG5cdC50YXNrLWxpc3QgPiAudGFzay1pdGVtIHtcblx0XHRtYXJnaW4tYm90dG9tOiB2YXIoLS1zaXplLTQtMik7XG5cdH1cblx0LnRhc2staXRlbSB7XG5cdFx0ZGlzcGxheTogZmxleDtcblx0XHRhbGlnbi1pdGVtczogZmxleC1zdGFydDtcblx0XHRwYWRkaW5nOiA4cHggMTZweDtcblx0XHRib3JkZXItYm90dG9tOiB1bnNldDtcblx0XHRjdXJzb3I6IHBvaW50ZXI7XG5cdFx0Z2FwOiB2YXIoLS1zaXplLTItMyk7XG5cdFx0bWluLWhlaWdodDogNDBweDtcblx0XHRib3JkZXItcmFkaXVzOiB2YXIoLS1yYWRpdXMtcyk7XG5cdH1cblx0LnRhc2staXRlbSxcblx0LnRhc2staXRlbTpob3ZlciB7XG5cdFx0LyogaG92ZXLmoLflvI/kuZ/lkIjlubbnroDljJYgKi9cblx0XHRnYXA6IDA7XG5cdH1cblx0LnRhc2staXRlbTpob3ZlciB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnktYWx0KTtcblx0fVxuXHQudHJlZS10YXNrLWl0ZW0ge1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdFx0cGFkZGluZzogOHB4IDE2cHg7XG5cdFx0dHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjJzIGVhc2U7XG5cdFx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLW0pO1xuXHRcdG1hcmdpbi1ib3R0b206IHZhcigtLXNpemUtMi0yKTtcblx0fVxuXG5cdC8qIOmhtumDqOWvvOiIquadoSAqL1xuXHQuZmx1ZW50LXRvcC1uYXZpZ2F0aW9uIHtcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXHRcdGhlaWdodDogNTZweDtcblx0XHRwYWRkaW5nOiAwIDIwcHg7XG5cdFx0Z2FwOiAyMHB4O1xuXHRcdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XG5cdFx0LyogYm9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLW0pOyAqL1xuXHRcdC8qIGJvcmRlci1ib3R0b206IHVuc2V0OyAqL1xuXHRcdC8qIOWFtuS7luWPr+mAiei+ueahhi/pmLTlvbHlt7Lms6jph4ogKi9cblx0fVxuXG5cdC53b3Jrc3BhY2UtbGVhZi1jb250ZW50W2RhdGEtdHlwZV49XCJmbHVlbnQtdGFzay1nZW5pdXMtdmlld1wiXSAudmlldy1oZWFkZXIge1xuXHRcdC8qIGJhY2tncm91bmQtY29sb3I6IHZhcigtLW1vZGVybi1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7ICovXG5cdFx0Ym9yZGVyLXJhZGl1czogdmFyKC0tcmFkaXVzLW0pO1xuXHRcdGhlaWdodDogdmFyKC0taGVhZGVyLWhlaWdodCk7XG5cdFx0ZGlzcGxheTogZmxleDtcblx0XHR6LWluZGV4OiAxO1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRnYXA6IHZhcigtLXNpemUtNC0yKTtcblx0XHRwYWRkaW5nOiAwIHZhcigtLXNpemUtNC0zKTtcblx0fVxufVxuXG4uaXMtbW9iaWxlIC5mbHVlbnQtbW9kZXJuIHtcblx0LndvcmtzcGFjZS1sZWFmLWNvbnRlbnRbZGF0YS10eXBlXj1cImZsdWVudC10YXNrLWdlbml1cy12aWV3XCJdIHtcblx0XHQvKiBwYWRkaW5nOiB2YXIoLS1zaXplLTQtMik7ICovXG5cdFx0LyogYmFja2dyb3VuZDogdmFyKC0tbW9kZXJuLWJhY2tncm91bmQtc2Vjb25kYXJ5KTsgKi9cblx0fVxuXG5cdC53b3Jrc3BhY2UtbGVhZi1jb250ZW50W2RhdGEtdHlwZV49XCJmbHVlbnQtdGFzay1nZW5pdXMtdmlld1wiXSAudmlldy1oZWFkZXIge1xuXHRcdGhlaWdodDogdmFyKC0tdmlldy1oZWFkZXItaGVpZ2h0KTtcblx0fVxuXG5cdC50Zy1mbHVlbnQtc2lkZWJhci1jb250YWluZXIuZmx1ZW50LXNpZGViYXI6bm90KC5pcy1jb2xsYXBzZWQpIHtcblx0XHRtYXgtd2lkdGg6IDMwMHB4O1xuXHR9XG59XG5cbi8qIOS7u+WKoeivpuaDheS+p+agj++8iOS7heahjOmdouerr++8iSAqL1xuOndoZXJlKGJvZHk6bm90KC5pcy1tb2JpbGUpKSAuZmx1ZW50LW1vZGVybiB7XG5cdC50YXNrLWRldGFpbHMtY29udGFpbmVyIHtcblx0XHR3aWR0aDogMzAwcHg7XG5cdFx0ZmxleC1zaHJpbms6IDA7XG5cdFx0LyogYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbW9kZXJuLWJhY2tncm91bmQtc2Vjb25kYXJ5KTsgKi9cblx0XHRvcmRlcjogMTtcblx0XHQvKiBwYWRkaW5nOiB2YXIoLS1zaXplLTQtMikgMCB2YXIoLS1zaXplLTQtMikgdmFyKC0tc2l6ZS00LTIpO1xuXHRcdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1tKTsgKi9cblx0fVxuXHQudGFzay1kZXRhaWxzIHtcblx0XHRoZWlnaHQ6IDEwMCU7XG5cdFx0b3ZlcmZsb3cteTogYXV0bztcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdFx0dHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdG1pbi13aWR0aDogMjUwcHg7XG5cdFx0bWF4LXdpZHRoOiA0MDBweDtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xuXHRcdGJvcmRlci1yYWRpdXM6IHZhcigtLXJhZGl1cy1tKTtcblx0fVxufVxuIl0sCiAgIm1hcHBpbmdzIjogIjs7O0FBQ0EsQ0FBQTtBQUNDLFdBQUE7QUFDQSxZQUFBO0FBQ0EsZUFBQTtBQUNBLGlCQUFBOztB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LFdBQUEsSUFBQSxZQUFBLElBQUE7QUFDQSxVQUFBLElBQUEsTUFBQSxJQUFBO0FBQ0EsaUJBQUEsSUFBQTtBQUNBLGNBQUEsSUFBQTtBQUNBLFNBQUEsSUFBQTtBQUNBLGFBQUEsSUFBQTs7QUFHRCxDQVZBLG9CQVVBO0FBQ0MsV0FBQTtBQUNBLGdCQUFBLElBQUE7O0FBR0QsQ0FBQTtBQUNDLGlCQUFBLElBQUE7QUFDQSxXQUFBLElBQUE7QUFDQSxjQUFBLElBQUE7QUFDQSxpQkFBQSxJQUFBOztBQUdELENBQUE7QUFDQyxhQUFBLElBQUE7QUFDQSxTQUFBLElBQUE7QUFDQSxjQUFBOztBQUdELENBQUE7QUFDQyxjQUFBO0FBQ0EsY0FBQTtBQUNBLFdBQUEsSUFBQTtBQUNBLFVBQUEsSUFBQSxNQUFBLElBQUE7QUFDQSxpQkFBQSxJQUFBO0FBQ0EsY0FBQSxJQUFBOztBQUdELENBQUE7QUFDQyxjQUFBO0FBQ0EsV0FBQSxJQUFBO0FBQ0EsU0FBQSxJQUFBO0FBQ0EsY0FBQTs7QUFHRCxDQUFBO0FBQ0MsaUJBQUEsSUFBQTtBQUNBLFdBQUEsSUFBQTtBQUNBLFVBQUEsSUFBQSxNQUFBLElBQUE7QUFDQSxpQkFBQSxJQUFBO0FBQ0EsY0FBQSxJQUFBOztBQUdELENBUkEsYUFRQTtBQUNDLGlCQUFBOztBQUdELENBQUE7QUFDQyxjQUFBLElBQUE7O0FBR0QsQ0FBQTtBQUNDLFdBQUE7QUFDQSxlQUFBO0FBQ0EsT0FBQSxJQUFBO0FBQ0EsYUFBQSxJQUFBOztBQUdELENBQUE7QUFDQyxTQUFBLElBQUE7QUFDQSxlQUFBLElBQUE7QUFDQSxhQUFBLElBQUE7QUFDQSxhQUFBOztBQUdELENBQUE7QUFDQyxlQUFBO0FBQ0EsU0FBQSxJQUFBO0FBQ0EsUUFBQTs7QUFHRCxDQUFBO0FBQ0MsU0FBQSxJQUFBO0FBQ0EsZUFBQSxJQUFBO0FBQ0EsYUFBQSxJQUFBOztBQUdELENBQUE7QUFDQyxTQUFBLElBQUE7QUFDQSxlQUFBLElBQUE7QUFDQSxhQUFBLElBQUE7QUFDQSxVQUFBOztBQUdELENBQUE7QUFDQyxX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QUNBLGNBQUE7O0FBR0QsQ0FBQTtBQUNDLGlCQUFBO0FBQ0EsV0FBQTtBQUNBLFVBQUEsSUFBQSxNQUFBLElBQUE7QUFDQSxpQkFBQTs7QUFHRCxDQUFBO0FBQ0MsY0FBQTs7QUFHRCxDQUFBO0FBQ0MsY0FBQTtBQUNBLFNBQUEsSUFBQTtBQUNBLFVBQUE7O0FBR0QsQ0FBQTtBQUNDLGlCQUFBOztBQUdELENBQUE7QUFDQyxjQUFBOztBQUdELENBQUE7QUFDQyxjQUFBOztBQUdELENBQUE7QUFDQyxXQUFBO0FBQ0EsZUFBQTtBQUNBLG1CQUFBO0FBQ0EsV0FBQSxJQUFBO0FBQ0EsVUFBQSxJQUFBO0FBQ0EsY0FBQSxJQUFBO0FBQ0EsaUJBQUE7QUFDQSxVQUFBLElBQUEsTUFBQSxJQUFBOztBQUdELENBQUE7QUFDQyxXQUFBO0FBQ0EsZUFBQTtBQUNBLE9BQUE7O0FBR0QsQ0FBQTtBQUNDLGVBQUE7O0FBR0QsQ0FBQTtBQUNDLFNBQUEsSUFBQTtBQUNBLGFBQUE7O0FBR0QsQ0FBQTtBQUNDLFdBQUE7QUFDQSxPQUFBOztBQUdELENBQUE7QUFDQyxjQUFBO0FBQ0EsU0FBQSxJQUFBO0FBQ0EsY0FBQTtBQUNBLFdBQUE7QUFDQSxVQUFBLElBQUEsT0FBQSxJQUFBO0FBQ0EsaUJBQUE7QUFDQSxjQUFBOztBQUdELENBQUE7QUFDQyxXQUFBO0FBQ0EsbUJBQUE7QUFDQSxPQUFBO0FBQ0EsY0FBQTtBQUNBLGVBQUE7QUFDQSxjQUFBLElBQUEsTUFBQSxJQUFBOztBQUlELENBQUE7QUFDQyxjQUFBLElBQUE7QUFDQSxVQUFBLElBQUEsTUFBQSxJQUFBO0FBQ0EsaUJBQUE7QUFDQSxXQUFBO0FBQ0EsVUFBQSxLQUFBOztBQUdELENBQUE7QUFDQyxXQUFBO0FBQ0EsbUJBQUE7QUFDQSxlQUFBO0FBQ0EsaUJBQUE7O0FBR0QsQ0FBQTtBQUNDLGVBQUE7QUFDQSxhQUFBOztBQUdELENBQUE7QUFDQyxTQUFBLElBQUE7QUFDQSxhQUFBOztBQUdELENBQUE7QUFDQyxXQUFBO0FBQ0EsZUFBQTtBQUNBLE9BQUE7QUFD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SUFBQTs7QUFHRCxDQUFBO0FBQ0MsY0FBQSxJQUFBO0FBQ0EsU0FBQSxJQUFBO0FBQ0EsZ0JBQUEsSUFBQTs7QUFHRCxDQUFBO0FBQ0MsY0FBQSxJQUFBO0FBQ0EsU0FBQSxJQUFBO0FBQ0EsZ0JBQUEsSUFBQTs7QUFJRCxDQUFBO0FBQ0MsV0FBQTtBQUNBLGVBQUE7QUFDQSxtQkFBQTtBQUNBLGFBQUEsSUFBQTtBQUNBLFNBQUEsSUFBQTtBQUNBLE9BQUEsSUFBQTs7QUFHRCxDQUFBO0FBQ0MsV0FBQTtBQUNBLGVBQUE7QUFDQSxPQUFBLElBQUE7QUFDQSxjQUFBLElBQUE7QUFDQSxXQUFBLElBQUEsWUFBQSxJQUFBO0FBQ0EsaUJBQUEsSUFBQTtBQUNBLGVBQUEsSUFBQTs7QUFHRCxDQUFBO0FBQ0MsU0FBQTtBQUNBLFVBQUE7QUFDQSxXQUFBOztBQUdELENBQUE7QUFDQyxTQUFBLElBQUE7O0FBR0QsQ0FBQTtBQUNDLFNBQUEsSUFBQTs7QUFHRCxDQUFBO0FBQ0MsV0FBQTtBQUNBLGVBQUE7QUFDQSxtQkFBQTtBQUNBLE9BQUEsSUFBQTtBQUNBLFdBQUE7QUFDQSxjQUFBLFFBQUEsS0FBQTs7QUFHRCxDQXhLQSxnQkF3S0EsT0FBQSxDQVRBO0FBVUMsV0FBQTs7QUFHRCxDQUFBO0FBQ0MsU0FBQTtBQUNBLFVBQUE7O0FBR0QsQ0FBQTtBQUNDLGFBQUEsSUFBQTtBQUNBLGFBQUE7QUFDQSxZQUFBO0FBQ0EsaUJBQUE7QUFDQSxlQUFBOztBQUdELENBQUE7QUFDQyxTQUFBLElBQUE7QUFDQSxhQUFBLElBQUE7QUFDQSxXQUFBO0FBQ0EsZUFBQSxJQUFBOztBQUlELENBQUE7QUFDQyxlQUFBLElBQUEsTUFBQSxJQUFBOztBQUdELENBQUE7QUFDQyxlQUFBLElBQUEsTUFBQSxJQUFBOztBQUdELENBQUE7QUFDQyxlQUFBLElBQUEsTUFBQSxJQUFBOztBQUdELENBQUE7QUFDQyxlQUFBLElBQUEsTUFBQSxJQUFBOztBQUdELENBQUE7QUFDQyxlQUFBLElBQUEsTUFBQSxJQUFBOztBQUlELENBQUE7QUFD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SUFBQTs7QUFHRCxDQUFBO0FBQ0Msb0JBQUEsSUFBQTtBQUNBLFNBQUEsSUFBQTs7QUFHRCxDQUFBO0FBQ0Msb0JBQUEsSUFBQTtBQUNBLFNBQUEsSUFBQTs7QUFJRCxDQUFBO0FBQ0MsV0FBQSxFQUFBLEVBQUEsRUFBQSxJQUFBO0FBQ0EsY0FBQSxJQUFBO0FBQ0EsaUJBQUEsSUFBQTtBQUNBLGVBQUEsSUFBQSxNQUFBLElBQUE7O0FBR0QsQ0FBQTtBQUNDLFNBQUE7O0FBSUQsQ0FBQTtBQUNDLGNBQUE7QUFDQSxVQUFBLElBQUEsTUFBQSxJQUFBO0FBQ0EsaUJBQUE7QUFDQSxXQUFBO0FBQ0Esb0JBQUEsSUFBQTs7QUFHRCxDQUFBO0FBQUEsQ0FBQTtBQUVDLGNBQUE7QUFDQSxlQUFBO0FBQ0EsY0FBQSxJQUFBLE1BQUEsSUFBQTs7QUFHRCxDQUFBO0FBQUEsQ0FBQTtBQUVDLGNBQUE7QUFDQSxXQUFBO0FBQ0EsaUJBQUE7O0FBR0QsQ0FBQTtBQUFBLENBQUE7QUFFQyxtQkFBQTtBQUNBLFdBQUE7QUFDQSxVQUFBOztBQUdELENBQUE7QUFDQyxXQUFBO0FBQ0EsT0FBQTtBQUNBLGVBQUE7QUFDQSxRQUFBOztBQUdELENBUEEsd0JBT0E7QUFDQyxXQUFBLElBQUE7QUFDQSxpQkFBQTtBQUNBLFVBQUEsSUFBQSxNQUFBLElBQUE7QUFDQSxvQkFBQSxJQUFBOztBQUdELENBQUE7QUFDQyxXQUFBO0FBQ0EsZUFBQTtBQUNBLE9BQUE7QUFDQSxlQUFBOztBQUdELENBQUE7QUFBQSxDQUFBO0FBRUMsU0FBQSxJQUFBO0FBQ0EsaUJBQUE7QUFDQSxXQUFBLElBQUE7QUFDQSxVQUFBO0FBQ0EsVUFBQTs7QUFHRCxDQVRBLHNCQVNBO0FBQUEsQ0FUQSx5QkFTQTtBQUVDLG9CQUFBLElBQUE7QUFDQSxTQUFBLElBQUE7O0FBR0QsQ0FBQTtBQUFBLENBQUE7QUFFQyxvQkFBQSxJQUFBO0FBQ0EsU0FBQSxJQUFBO0FBQ0EsV0FBQSxJQUFBO0FBQ0EsaUJBQUE7QUFDQSxjQUFBO0FBQ0EsVUFBQTtBQUNBLFVBQUE7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c0JBLENBSkEsU0FJQTtBQUNDLFdBQUE7O0FBR0QsQ0FBQTtBQUNDLFdBQUE7QUFDQSxlQUFBO0FBQ0EsbUJBQUE7QUFDQSxlQUFBOztBQUdELENBUEEsMEJBT0EsS0FBQSxDQUFBO0FBQ0MsVUFBQTtBQUNBLFVBQUE7O0FBR0QsQ0FBQTtBQUNDLFNBQUE7QUFDQSxVQUFBO0FBQ0EsV0FBQTtBQUNBLGVBQUE7QUFDQSxtQkFBQTtBQUNBLFNBQUEsSUFBQTtBQUNBLGVBQUE7O0FBR0QsQ0FBQTtBQUNDLGFBQUEsSUFBQTtBQUNBLFNBQUEsSUFBQTtBQUNBLFFBQUE7QUFDQSxlQUFBOztBQUdELENBdkRBLHFCQXVEQSxDQXJDQSxVQXFDQSxDQVBBO0FBUUMsbUJBQUE7QUFDQSxTQUFBLElBQUE7O0FBSUQsQ0FBQTtBQUNDLFdBQUE7QUFDQSxlQUFBO0FBQ0EsT0FBQSxJQUFBOztBQUdELENBQUE7QUFDQyxTQUFBO0FBQ0EsVUFBQTtBQUNBLFdBQUE7QUFDQSxlQUFBO0FBQ0EsbUJBQUE7QUFDQSxTQUFBLElBQUE7QUFDQSxlQUFBOzs7O0FDMWJELENBQUE7QUFDQyxXQUFBO0FBQ0EsZUFBQTtBQUNBLE9BQUE7QUFDQSxXQUFBO0FBQ0EsaUJBQUE7QUFDQSxVQUFBLElBQUEsTUFBQSxJQUFBO0FBQ0EsaUJBQUE7O0FBR0QsQ0FBQTtBQUNDLGFBQUE7QUFDQSxlQUFBO0FBQ0EsZUFBQTtBQUNBLGNBQUE7O0FBR0QsQ0FBQTtBQUNDLFFBQUE7QUFDQSxhQUFBOztBQUdELENBQUE7QUFDQyxlQUFBO0FBQ0EsYUFBQTtBQUNBLFNBQUEsSUFBQTtBQUNBLGlCQUFBOztBQUdELENBQUE7QUFDQyxhQUFBO0FBQ0EsZUFBQTtBQUNBLFNBQUEsSUFBQTs7OztBQzlCRCxDQUFBO0FBQ0MsWUFBQTtBQUNBLFdBQUE7QUFDQSxlQUFBO0FBQ0EsY0FBQSxJQUFBO0FBQ0EsVUFBQSxJQUFBLHNCQUFBLE1BQUEsSUFBQTtBQUNBLGlCQUFBLElBQUE7QUFDQSxjQUFBLElBQUEsTUFBQTtBQUNBLGNBQUEsSUFBQTs7QUFHRCxD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RCxDQVZBLGNBVUE7QUFDQyxjQUFBLElBQUE7QUFDQSxXQUFBLElBQUE7QUFDQSxpQkFBQTtBQUNBLGFBQUE7QUFDQSxTQUFBLElBQUE7O0FBSUQsQ0FBQTtBQUNDLGVBQUE7QUFDQSxTQUFBO0FBQ0EsZ0JBQUE7O0FBSUQsQ0FBQTtBQUNDLGNBQUE7O0FBR0QsQ0FBQTtBQUNDLGlCQUFBOztBQUdELENBQUE7QUFDQyxhQUFBO0FBQ0EsZUFBQTtBQUNBLGlCQUFBO0FBQ0EsU0FBQSxJQUFBOztBQUlELENBQUE7QUFDQyxXQUFBO0FBQ0EsZUFBQTtBQUNBLE9BQUE7QUFDQSxXQUFBO0FBQ0EsY0FBQSxJQUFBO0FBQ0EsVUFBQSxJQUFBLE1BQUEsSUFBQTtBQUNBLGlCQUFBO0FBQ0EsaUJBQUE7O0FBR0QsQ0FBQTtBQUNDLFFBQUE7QUFDQSxXQUFBO0FBQ0EsZUFBQTtBQUNBLE9BQUE7O0FBR0QsQ0FBQTtBQUNDLGVBQUE7QUFDQSxTQUFBLElBQUE7O0FBR0QsQ0FBQTtBQUNDLGVBQUEsSUFBQTtBQUNBLFdBQUEsSUFBQTtBQUNBLGNBQUEsSUFBQTtBQUNBLFVBQUEsSUFBQSxNQUFBLElBQUE7QUFDQSxpQkFBQTtBQUNBLFNBQUEsSUFBQTtBQUNBLGVBQUE7O0FBR0QsTUFBQSxDQUFBO0FBQ0MsV0FBQSxJQUFBO0FBQ0EsY0FBQSxJQUFBO0FBQ0EsU0FBQSxJQUFBO0FBQ0EsVUFBQSxJQUFBLE1BQUEsSUFBQTtBQUNBLGlCQUFBO0FBQ0EsVUFBQTtBQUNBLGNBQUEsV0FBQTtBQUNBLGNBQUE7O0FBR0QsTUFBQSxDQVhBLHFCQVdBO0FBQ0MsY0FBQSxJQUFBOztBQUdELE1BQUEsQ0FmQSxxQkFlQSxDQXhHQTtBQXlHQyxhQUFBLFlBQUEsS0FBQTtBQUNBLGNBQUEsSUFBQTs7QUFJRCxDQUFBO0FBQ0MsV0FBQTtBQUNBLHlCQUFBLE9BQUEsU0FBQSxFQUFBLE9BQUEsS0FBQSxFQUFBO0FBQ0EsT0FBQTtBQUNBLGlCQUFBOztBQUdELENBQUE7QUFDQyxZQUFBO0FBQ0EsV0FBQTtBQUNBO0lBQUE7TUFBQSxN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SUFBQTtBQUNBLGlCQUFBLElBQUE7O0FBR0QsQ0FBQTtBQUNDLGFBQUEsSUFBQTtBQUNBLFNBQUEsSUFBQTs7QUFJRCxDQUFBO0FBQ0MsaUJBQUEsSUFBQTs7QUFHRCxDQUpBLG9CQUlBO0FBQ0MsYUFBQSxJQUFBO0FBQ0EsZUFBQSxJQUFBO0FBQ0EsU0FBQSxJQUFBO0FBQ0EsVUFBQSxFQUFBLEVBQUEsSUFBQSxZQUFBO0FBQ0Esa0JBQUEsSUFBQTtBQUNBLGlCQUFBLElBQUEsTUFBQSxJQUFBOztBQUdELENBQUE7QUFDQyxTQUFBLElBQUE7QUFDQSxjQUFBO0FBQ0EsV0FBQSxJQUFBO0FBQ0EsY0FBQTtBQUNBLGNBQUEsSUFBQTtBQUNBLGlCQUFBLElBQUE7O0FBSUQsQ0FBQTtBQUNDLGlCQUFBLElBQUE7O0FBR0QsQ0FBQTtBQUNDLGFBQUEsSUFBQTtBQUNBLGVBQUEsSUFBQTtBQUNBLFNBQUEsSUFBQTtBQUNBLGtCQUFBO0FBQ0Esa0JBQUE7QUFDQSxpQkFBQSxJQUFBOztBQUdELENBQUEsb0JBQUEsQ0FUQTtBQVVDLFNBQUEsSUFBQTs7QUFHRCxDQUFBLG1CQUFBLENBYkE7QUFjQyxTQUFBLElBQUE7O0FBSUQsQ0FBQTtBQUNDLFdBQUE7QUFDQSxrQkFBQTtBQUNBLE9BQUEsSUFBQTs7QUFHRCxDQUFBO0FBQ0MsV0FBQTtBQUNBLGVBQUE7QUFDQSxPQUFBLElBQUE7QUFDQSxXQUFBLElBQUE7QUFDQSxjQUFBLElBQUE7QUFDQSxpQkFBQSxJQUFBO0FBQ0EsY0FBQSxpQkFBQSxNQUFBOztBQUdELENBVkEsVUFVQTtBQUNDLGNBQUEsSUFBQTs7QUFHRCxDQUFBO0FBQ0MsUUFBQTtBQUNBLGFBQUE7O0FBR0QsQ0FBQTtBQUNDLGVBQUEsSUFBQTtBQUNBLFNBQUEsSUFBQTtBQUNBLGVBQUE7QUFDQSxZQUFBO0FBQ0EsaUJBQUE7O0FBR0QsQ0FBQTtBQUNDLGFBQUEsSUFBQTtBQUNBLFNBQUEsSUFBQTtBQUNBLGVBQUE7QUFDQSxZQUFBO0FBQ0EsaUJBQUE7O0FBR0QsQ0FBQTtBQUNDLGVBQUEsSUFB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QUE7O0FBR0QsQ0FBQTtBQUNDLGlCQUFBOztBQUdELENBQUE7QUFDQyxXQUFBO0FBQ0EsZUFBQTtBQUNBLGlCQUFBO0FBQ0EsU0FBQSxJQUFBOztBQUdELENBQUE7QUFDQyxhQUFBO0FBQ0EsU0FBQSxJQUFBO0FBQ0EsaUJBQUE7O0FBR0QsQ0FBQTtBQUNDLFNBQUE7QUFDQSxpQkFBQSxJQUFBO0FBQ0EsVUFBQSxJQUFBLE1BQUEsSUFBQTtBQUNBLG9CQUFBLElBQUE7QUFDQSxTQUFBLElBQUE7QUFDQSxhQUFBOztBQUdELENBQUE7QUFDQyxjQUFBOztBQUdELENBQUE7QUFDQyxTQUFBO0FBQ0EsV0FBQTtBQUNBLGlCQUFBLElBQUE7QUFDQSxVQUFBLElBQUEsTUFBQSxJQUFBO0FBQ0Esb0JBQUEsSUFBQTtBQUNBLFNBQUEsSUFBQTtBQUNBLGFBQUE7O0FBR0QsQ0FBQTtBQUNDLFdBQUE7QUFDQSxhQUFBO0FBQ0EsU0FBQSxJQUFBO0FBQ0Esb0JBQUEsSUFBQTtBQUNBLGlCQUFBLElBQUE7O0FBR0QsQ0FBQTtBQUNDLFdBQUE7QUFDQSxtQkFBQTtBQUNBLGNBQUE7QUFDQSxjQUFBLElBQUEsTUFBQSxJQUFBO0FBQ0EsZUFBQTs7QUFHRCxDQUFBO0FBQ0MsV0FBQSxJQUFBO0FBQ0EsaUJBQUEsSUFBQTtBQUNBLGFBQUE7QUFDQSxVQUFBO0FBQ0EsVUFBQSxJQUFBLE1BQUEsSUFBQTs7QUFHRCxDQUFBO0FBQ0Msb0JBQUEsSUFBQTtBQUNBLFNBQUEsSUFBQTtBQUNBLGdCQUFBOztBQUdELENBTkEsMEJBTUE7QUFDQyxvQkFBQSxJQUFBO0FBQ0EsU0FBQSxJQUFBOztBQUdELENBQUE7QUFDQyxvQkFBQSxJQUFBO0FBQ0EsU0FBQSxJQUFBOztBQUdELENBTEEsd0JBS0E7QUFDQyxvQkFBQSxJQUFBOztBQUlELENBOVVBLFNBOFVBLENBdldBO0FBd1dDLFlBQUE7QUFDQSxZQUFBOztBQUdELENBblZBLFNBbVZBLENBN1ZBO0FBOFZDLFlBQUE7QUFDQSxRQUFBO0FBQ0EsT0FBQTtBQUNBLFVBQUE7QUFDQSxXQUFBO0FBQ0Esb0JBQUEsSUFBQTtBQUNBLFNBQUE7QUFDQSxhQUFBLFdBQUE7QUFDQSxjQUFBLFVBQUEsS0FBQTtBQUNBLGdCQUFBLElBQUEsTUFBQSxJQUFBOztBQUdELENBaFdBLFNBZ1dBLENBMVdBLGtCQTBXQSxDQUFBO0FBQ0MsYUFBQSxXQUFBOztBQUdELENBcFdBLFNBb1dBLENBQUE7QUFDQyxXQUFBO0FBQ0EsZUFBQTtBQUNBLG1CQUFBO0FBQ0EsZ0JBQUE7O0FBR0QsQ0EzV0EsU0EyV0EsQ0FBQTtBQUNDLFlBQUE7QUFDQSxPQUFBLElBQUE7QUFDQSxTQUFBO0FBQ0EsV0FBQTtBQUNBLFdBQUE7QUFDQSxlQUFBO0FBQ0EsbUJBQUE7O0FBSUQsQ0F0WEEsU0FzWEEsQ0EvWUEsZ0JBK1lBLEtBQUEsQ0FoWUEsa0JBZ1lBLENBdEJBLFdBc0JBO0FBQ0MsV0FBQTtBQUNBLFlBQUE7QUFDQSxPQUFBO0FBQ0EsUUFBQTtBQUNBLFNBQUE7QUFDQSxVQUFBO0FBQ0Esb0JBQUEsSUFBQTtBQUNBLFdBQUE7QUFDQSxXQUFBO0FBQ0EsY0FBQSxRQUFBLEtBQUE7Ozs7QUMxWkQsQ0FBQTtBQUNDLFNBQUE7QUFFQSxXQUFBO0FBQ0Esa0JBQUE7QUFDQSxPQUFBO0FBQ0EsV0FBQTtBQUNBLFVBQUE7QUFDQSxjQUFBOztBQUlELENBQUE7QUFDQyxXQUFBO0FBQ0EseUJBQUEsT0FBQSxDQUFBLEVBQUEsT0FBQSxDQUFBLEVBQUE7QUFDQSxPQUFBO0FBQ0EsU0FBQTs7QUFJRCxPQUFBLE9BQUEsSUFBQSxDQUFBLFNBQUEsRUFBQTtBQUNDLEdBVEQ7QUFVRSxhQUFBO0FBQ0EsU0FBQTs7O0FBS0YsT0FBQSxPQUFBLElBQUEsQ0FBQSxTQUFBLEVBQUE7QUFDQyxHQWpCRDtBQWtCRSxpQkFBQTtBQUNBLGtCQUFBO0FBQ0EsZUFBQTtBQUNBLGFBQUE7QUFDQSxvQkFBQTs7O0FBS0YsT0FBQSxPQUFBLElBQUEsQ0FBQSxTQUFBLEVBQUE7QUFDQyxHQTVCRDtBQTZCRSxlQUFBOzs7QUFLRixDQUFBO0FBQ0MsU0FBQTtBQUNBLGNBQUE7O0FBSUQsQ0FBQTtBQUNDLFdBQUE7QUFDQSxtQkFBQTs7QUFJRCxDQUFBO0FBQ0MsVUFBQSxJQUFBLE1BQUEsSUFBQTtBQUNBLGlCQUFBLElBQUE7QUFDQSxvQkFBQSxJQUFBO0FBQ0EsU0FBQSxJQUFBO0FBQ0EsWUFBQTtBQUNBLFdBQUE7QUFDQSxrQkFBQTtBQUNBLFNBQUE7QUFDQSxVQUFBO0FBQ0EsY0FBQTs7QUFHRCxDQWJBLFdBYUEsQ0FBQTtBQUNDLFdBQUE7QUFDQSxlQUFBO0FBQ0EsbUJBQUE7QUFDQSxXQUFBLE9BQUE7QUFDQSxPQUFBOztBQUlELENBdEJBLFdBc0JBLENBQUE7QUFDQyxXQUFBO0FBQ0EsZUFBQTtBQUNBLE9BQUE7QUFDQSxhQUFBLElBQUE7QUFDQSxlQUFBO0FBQ0EsYUFBQTtBQUNBLFlBQUE7QUFDQSxlQUFBO0FBQ0EsaUJBQUE7O0FBR0QsQ0FBQSxVQUFBLENBQUEsVUFBQTtBQUVDLG1CQUFBO0FBQ0EsVUFBQTs7QUFHRCxDQXhDQSxXQXdDQSxDQUFBO0FBQ0MsV0FBQSxRQUFBO0FBQ0EsYUFBQTs7QUFLRCxDQUFBLGlCQUFBLENBbENBOztBQXNDQSxDQUpBLGlCQUlBLENBQUE7O0FBR0EsQ0FQQSxpQkFPQSxDQUFBO0FBQ0MsbUJBQUE7QUFDQSxVQUFBO0FBQ0EsZ0JBQUEsSUFBQTs7QUFFRCxDQVpBLGlCQVlBLENBbkJBO0FBcUJDLFdBQUEsS0FBQSxLQUFBOztBQUlELENBQUEsaUJBQUEsQ0F6QkE7QUEwQkMsV0FBQTtBQUNBLGtCQUFBO0FBQ0EsT0FBQTtBQUNBLGVBQUE7O0FBR0QsQ0FQQSxpQkFPQSxDQUFBO0FBQ0MsZUFBQTtBQUNBLFVBQUE7QUFDQSxTQUFBO0FBQ0EsZ0JBQUE7QUFDQSxXQUFBO0FBQ0EsVUFBQTtBQUNBLGlCQUFBLElBQUE7QUFDQSxXQUFBO0FBQ0EsbUJBQUE7QUFDQSxlQUFBO0FBQ0EsYUFBQTs7QUFHRCxDQXJCQSxpQkFxQkEsQ0FkQTtBQWVDLFNBQUEsSUFBQTs7QUFHRCxDQXpCQSxpQkF5QkEsQ0FsQkEsaUJBa0JBO0FBQ0Msb0JBQUEsSUFBQTs7QUFHRCxDQTdCQSxpQkE2QkEsQ0FBQTtBQUNDLGFBQUEsSUFBQTtBQUNBLGVBQUE7O0FBR0QsQ0FsQ0EsaUJBa0NBLENBQUE7QUFDQyxhQUFBLElBQUE7QUFDQSxTQUFBLElBQUE7QUFDQSxlQUFBOztBQUdELENBeENBLGlCQXdDQSxDQUFBO0FBQ0MsV0FBQTtBQUNBLGtCQUFBO0FBQ0EsZUFBQTtBQUNBLGNBQUE7QUFDQSxhQUFBOztBQUVELENBL0NBLGlCQStDQSxDQVBBLFdBT0E7QUFDQyxhQUFBLElBQUE7QUFDQSxlQUFBOztBQUdELENBcERBLGlCQW9EQSxDQUFBO0FBQ0MsU0FBQTtBQUNBLFdBQUE7QUFDQSxrQkFBQTtBQUNBLGVBQUE7QUFDQSxPQUFBOztBQUlELE9BQUEsQ0FBQSxTQUFBLEVBQUE7QUFFQyxHQS9ERCxpQkErREMsQ0F4RkQ7QUF5RkUsb0JBQUE7QUFDQSxpQkFBQTtBQUNBLFNBQUE7O0FBRUQsR0FwRUQsaUJBb0VDLENBaEJEO0FBaUJFLFdBQUE7QUFDQSxlQUFBO0FBQ0EsaUJBQUE7O0FBRUQsR0F6RUQsaUJBeUVDLENBQUE7QUFDQyxXQUFBOzs7QUFLRixDQUFBLHFCQUFBLENBbklBO0FBb0lDLGtCQUFBOztBQUVELENBSEEscUJBR0EsQ0EzR0E7QUE0R0MsV0FBQTtBQUNBLGtCQUFBO0FBQ0EsT0FBQTtBQUNBLGVBQUE7O0FBR0QsQ0FWQSxxQkFVQSxDQUFBO0FBQ0MsU0FBQTs7QUFHRCxDQWRBLHFCQWNBLENBQUE7QUFDQyxTQUFBO0FBQ0EsV0FBQTtBQUNBLGtCQUFBO0FBQ0EsT0FBQTtBQUNBLGVBQUE7O0FBR0QsQ0F0QkEscUJBc0JBLENBQUE7QUFDQyxTQUFBO0FBQ0EsaUJBQUE7QUFDQSxTQUFBOztBQUlELE9BQUEsQ0FBQSxTQUFBLEVBQUE7QUFDQyxHQTlCRCxxQkE4QkMsQ0F0SUQ7QUF1SUUsb0JBQUE7QUFDQSxpQkFBQTtBQUNBLHFCQUFBOztBQUVELEdBbkNELHFCQW1DQyxDQXpCRDtBQTBCRSxXQUFBO0FBQ0EsZUFBQTtBQUNBLGtCQUFBOztBQUVELEdBeENELHFCQXdDQyxDQTFCRDtBQTJCRSxXQUFBO0FBQ0EsZUFBQTtBQUNBLGlCQUFBOzs7QUFLRixDQUFBLG1CQUFBLENBbkxBO0FBb0xDLGtCQUFBOztBQUVELENBSEEsbUJBR0EsQ0EzSkE7QUE0SkMsV0FBQTtBQUNBLGtCQUFBO0FBQ0EsT0FBQTtBQUNBLGVBQUE7QUFDQSxlQUFBO0FBQ0Esa0JBQUE7O0FBRUQsQ0FYQSxtQkFXQSxDQWpEQTtBQWtEQyxTQUFBOztBQUVELENBZEEsbUJBY0EsQ0FoREE7QUFpREMsU0FBQTtBQUNBLFdBQUE7QUFDQSxrQkFBQTtBQUNBLGVBQUE7QUFDQSxPQUFBOztBQUdELENBdEJBLG1CQXNCQSxDQUFBO0FBQ0MsV0FBQTtBQUNBLG1CQUFBO0FBQ0EsZUFBQTtBQUNBLGFBQUE7QUFDQSxXQUFBO0FBQ0EsU0FBQTtBQUNBLGFBQUE7QUFDQSxVQUFBO0FBQ0EsVUFBQSxJQUFBLE1BQUEsSUFBQTtBQUNBLG9CQUFBLElBQUE7QUFDQSxTQUFBLElBQUE7QUFDQSxVQUFBO0FBQ0EsaUJBQUEsSUFBQTs7QUFFRCxDQXJDQSxtQkFxQ0EsQ0FmQSxvQkFlQTtBQUNDLG9CQUFBLElBQUE7O0FBR0QsQ0F6Q0EsbUJBeUNBLENBQUE7QUFDQyxTQUFBO0FBQ0EsYUFBQTs7QUFFRCxDQTdDQSxtQkE2Q0EsQ0FKQSxxQkFJQSxDQUFBO0FBQ0MsV0FBQTs7QUFFRCxDQWhEQSxtQkFnREEsQ0FQQSxxQkFPQSxDQUFBO0FBQ0MsU0FBQTtBQUNBLFdBQUE7QUFDQSxVQUFBOztBQUVELENBckRBLG1CQXFEQSxDQVpBLHFCQVlBLENBQUE7QUFDQyxTQUFBOztBQUdELENBekRBLG1CQXlEQSxDQUFBLFdBQUEsQ0FBQTtBQUNDLE9BQUEsSUFBQTs7QUFJRCxPQUFBLENBQUEsU0FBQSxFQUFBO0FBQ0MsR0EvREQsbUJBK0RDLENBdk5EO0FBd05FLG9CQUFBO0FBQ0EsaUJBQUE7QUFDQSxxQkFBQTs7QUFFRCxHQXBFRCxtQkFvRUMsQ0ExR0Q7QUEyR0UsV0FBQTtBQUNBLGVBQUE7QUFDQSxrQkFBQTs7QUFFRCxHQXpFRCxtQkF5RUMsQ0EzR0Q7QUE0R0UsV0FBQTtBQUNBLGVBQUE7QUFDQSxvQkFBQTtBQUNBLGlCQUFBO0FBQ0EsU0FBQTs7QUFFRCxHQWhGRCxtQkFnRkMsQ0ExREQ7QUEyREUsV0FBQTtBQUNBLFlBQUE7O0FBRUQsR0FwRkQsbUJBb0ZDLENBM0NEO0FBNENFLFdBQUE7QUFDQSxlQUFBOzs7QUFLRixDQUFBO0FBQ0MsU0FBQTtBQUNBLFVBQUE7QUFDQSxvQkFBQSxJQUFBO0FBQ0EsaUJBQUEsSUFBQTtBQUNBLFlBQUE7QUFDQSxZQUFBOztBQUVELENBQUE7QUFDQyxVQUFBO0FBQ0Esb0JBQUEsSUFBQTtBQUNBLGlCQUFBLElBQUE7QUFDQSxjQUFBLE1BQUEsS0FBQTs7QUFFRCxDQWRBLHdCQWNBLENBQUEsT0FBQSxDQUFBO0FBQ0Msa0JBQUE7O0FBRUQsQ0FIQTtBQUlDLFlBQUE7QUFDQSxPQUFBO0FBQ0EsUUFBQTtBQUNBLFNBQUE7QUFDQSxVQUFBO0FBQ0EsV0FBQTtBQUNBLG1CQUFBO0FBQ0EsZUFBQTtBQUNBLGFBQUE7QUFDQSxlQUFBO0FBQ0EsU0FBQSxJQUFBO0FBQ0Esa0JBQUE7QUFDQSxlQUFBOztBQUlELENBQUE7QUFDQyxTQUFBOztBQUVELENBQUEsV0FBQSxDQXZFQTtBQXdFQyxXQUFBO0FBQ0EseUJBQUEsT0FBQSxDQUFBLEVBQUE7QUFDQSxPQUFBLElBQUE7QUFDQSxjQUFBO0FBQ0Esa0JBQUE7O0FBR0QsQ0EvRUEsV0ErRUEsQ0EvRUE7QUFnRkMsV0FBQTtBQUNBLHlCQUFBLE9BQUEsQ0FBQSxFQUFBO0FBQ0EsT0FBQSxJQUFBO0FBQ0EsY0FBQTtBQUNBLGtCQUFBO0FBQ0EsaUJBQUE7O0FBR0QsQ0FBQSxXQUFBLENBeEZBO0FBeUZDLFdBQUE7QUFDQSx5QkFBQSxPQUFBLEVBQUEsRUFBQTtBQUNBLE9BQUEsSUFBQTtBQUNBLGNBQUE7QUFDQSxrQkFBQTtBQUNBLGlCQUFBOztBQUdELENBQUE7QUFDQyxpQkFBQSxJQUFBO0FBQ0EsV0FBQTtBQUNBLG1CQUFBO0FBQ0EsZUFBQTtBQUNBLFVBQUE7QUFDQSxlQUFBO0FBQ0Esb0JBQUEsSUFBQTtBQUdBLFVBQUEsSUFBQSxNQUFBOztBQUlELENBQUE7O0FBR0EsQ0FBQTtBQUNDLGlCQUFBOztBQUlELENBaERBLFdBZ0RBLENBdEJBO0FBdUJDLFNBQUE7QUFDQSxVQUFBOztBQUVELENBMU5BLHFCQTBOQSxDQTNIQSxXQTJIQSxDQTFCQTtBQTJCQyxTQUFBO0FBQ0EsVUFBQTtBQUNBLGFBQUE7O0FBR0QsQ0FqSUEsV0FpSUEsQ0FoQ0E7QUFpQ0MsU0FBQTtBQUNBLFVBQUE7QUFDQSxhQUFBOztBQUVELENBOUNBLFdBOENBLENBckNBO0FBc0NDLFNBQUE7QUFDQSxVQUFBO0FBQ0EsYUFBQTs7QUFJRCxDQTVDQSxZQTRDQSxDQUFBOztBQUdBLENBL0NBLFlBK0NBLENBaEdBO0FBaUdDLG9CQUFBLElBQUE7QUFDQSxTQUFBLElBQUE7O0FBR0QsQ0FwREEsWUFvREEsQ0FBQSxrQkFBQSxLQUFBLENBQUE7QUFDQyxjQUFBO0FBQ0EsVUFBQTs7QUFJRCxDQTFEQSxZQTBEQSxDQU5BO0FBTUEsQ0ExREEsWUEwREEsQ0FBQTtBQUVDLG9CQUFBLElBQUE7QUFDQSxnQkFBQSxJQUFBO0FBQ0EsU0FBQSxJQUFBOztBQUVELENBaEVBLFlBZ0VBLENBTkE7QUFPQyxlQUFBOztBQUlELENBakJBO0FBa0JDLFNBQUE7QUFDQSxVQUFBO0FBQ0EsV0FBQTtBQUNBLG1CQUFBO0FBQ0EsZUFBQTs7QUFFRCxDQXhCQSxrQkF3QkE7QUFDQyxXQUFBOztBQUlELENBQUE7QUFDQyxjQUFBO0FBQ0EsV0FBQSxLQUFBO0FBQ0EsU0FBQSxJQUFBOztBQUVELENBTEEsa0JBS0E7QUFDQyxhQUFBLElBQUE7QUFDQSxlQUFBO0FBQ0EsaUJBQUE7O0FBRUQsQ0FWQSxrQkFVQTtBQUNDLGFBQUEsSUFBQTtBQUNBLFNBQUEsSUFBQTs7QUFJRCxDQUFBO0FBQ0MsV0FBQTtBQUVBLFVBQUE7QUFDQSxlQUFBO0FBQ0EsY0FBQTtBQUNBLFNBQUEsSUFBQTtBQUNBLGNBQUE7QUFDQSxnQkFBQTtBQUNBLGVBQUE7O0FBSUQsQ0FBQTtBQUNDLFdBQUE7QUFDQSxrQkFBQTtBQUNBLE9BQUE7QUFDQSxpQkFBQTs7QUFFRCxDQUFBO0FBQ0MsV0FBQTtBQUNBLGFBQUE7QUFDQSxPQUFBOztBQUVELENBTEEsb0JBS0EsQ0FBQTtBQUNDLFdBQUEsUUFBQTtBQUNBLFVBQUEsSUFBQSxNQUFBLElBQUE7QUFDQSxjQUFBLElBQUE7QUFDQSxTQUFBLElBQUE7QUFDQSxpQkFBQSxJQUFBO0FBQ0EsVUFBQTs7QUFFRCxDQWJBLG9CQWFBLENBUkEsVUFRQTtBQUNDLGNBQUEsSUFBQTs7QUFFRCxDQUFBO0FBQ0MsV0FBQTtBQUNBLGVBQUE7QUFDQSxPQUFBOztBQUVELENBTEEsa0JBS0EsQ0FBQTtBQUNDLFNBQUEsSUFBQTtBQUNBLGFBQUEsSUFBQTs7QUFFRCxDQVRBLGtCQVNBLENBQUE7QUFDQyxXQUFBO0FBQ0EsYUFBQTtBQUNBLE9BQUE7QUFDQSxjQUFBO0FBQ0Esa0JBQUE7O0FBRUQsQ0FoQkEsa0JBZ0JBLENBQUE7QUFDQyxXQUFBLE9BQUE7QUFDQSxVQUFBLElBQUEsTUFBQSxJQUFBO0FBQ0EsY0FBQSxJQUFBO0FBQ0EsU0FBQSxJQUFBO0FBQ0EsaUJBQUEsSUFBQTtBQUNBLFVBQUE7QUFDQSxlQUFBOztBQUVELENBekJBLGtCQXlCQSxDQVRBLFFBU0EsQ0FBQTtBQUFBLENBekJBLGtCQXlCQSxDQVRBLFFBU0E7QUFFQyxjQUFBLElBQUE7QUFDQSxnQkFBQSxJQUFBO0FBQ0EsU0FBQSxJQUFBOztBQUVELENBQUE7QUFFQyxjQUFBO0FBQ0EsWUFBQTs7OztBQ3pqQkQ7QUFFQywwQkFBQTtBQUNBLHNCQUFBO0FBQ0EsNEJBQUE7QUFDQSwwQkFBQTtBQUNBLHdCQUFBO0FBQ0EseUJBQUE7QUFDQSwwQkFBQTtBQUNBLHFCQUFBO0FBQ0Esc0JBQUE7QUFDQSx5QkFBQTtBQUNBLHlCQUFBO0FBQ0EsNEJBQUE7QUFDQSxxQkFBQTtBQUNBLHFCQUFBO0FBQ0EscUJBQUE7QUFDQSxxQkFBQTtBQUNBLG9CQUFBO0FBQ0Esb0JBQUE7QUFDQSxtQkFBQTtBQUNBLHFCQUFBO0FBQ0EscUJBQUE7QUFDQSx1QkFBQTtBQUNBLHVCQUFBO0FBR0Esc0JBQUE7QUFDQSx1QkFBQTtBQUNBLHVCQUFBO0FBQ0EsdUJBQUE7QUFDQSx3QkFBQTtBQUVBLCtCQUFBOztBQUlELENBQUE7QUFDQywwQkFBQTtBQUNBLHNCQUFBO0FBQ0EsNEJBQUE7QUFDQSwwQkFBQTtBQUNBLHdCQUFBO0FBQ0EseUJBQUE7QUFDQSwwQkFBQTtBQUNBLHFCQUFBO0FBQ0Esc0JBQUE7QUFDQSx5QkFBQTtBQUNBLHlCQUFBO0FBQ0EsNEJBQUE7QUFDQSxxQkFBQTtBQUNBLHFCQUFBO0FBQ0EscUJBQUE7QUFDQSxxQkFBQTtBQUNBLG9CQUFBO0FBQ0Esb0JBQUE7QUFDQSxtQkFBQTtBQUNBLHFCQUFBO0FBQ0EscUJBQUE7QUFDQSx1QkFBQTtBQUNBLHVCQUFBO0FBRUEsc0JBQUE7QUFDQSx1QkFBQTtBQUNBLHVCQUFBO0FBQ0EsdUJBQUE7QUFDQSx3QkFBQTtBQUVBLCtCQUFBOzs7O0FDeERELENBQUE7QUFBQSxDQUFBO0FBQUEsQ0FBQTtBQUFBLENBQUE7QUFLQyxtQkFBQSxJQUFBO0FBQ0EscUJBQUEsSUFBQTtBQUdBLHFCQUFBLElBQUE7QUFHQSxpQkFBQSxJQUFBO0FBQ0Esa0JBQUEsSUFBQTs7QUFJRCxDQUFBLFdBQUEsQ0FqQkE7QUFpQkEsQ0FBQSxXQUFBLENBakJBO0FBaUJBLENBQUEsV0FBQSxDQWpCQTtBQWlCQSxDQUFBLFdBQUEsQ0FqQkE7QUFxQkMsbUJBQUEsSUFBQTtBQUVBLHFCQUFBLElBQUE7O0FBSUQsQ0FBQSxZQUFBLENBM0JBO0FBMkJBLENBQUEsWUFBQSxDQTNCQTtBQTJCQSxDQUFBLFlBQUEsQ0EzQkE7QUEyQkEsQ0FBQSxZQUFBLENBM0JBO0FBK0JDLG1CQUFBLElBQUE7QUFDQSxxQkFBQSxJQUFBOztBQVFELENBeENBO0FBd0NBLENBeENBO0FBMENDLFdBQUE7QUFDQSxrQkFBQTtBQUNBLE9BQUE7QUFDQSxXQUFBO0FBQ0EsVUFBQTtBQUNBLFVBQUE7QUFDQSxTQUFBO0FBQ0EsY0FBQSxJQUFBLE1BQUEsSUFBQTs7QUFJRCxDQUFBO0FBQ0MsT0FBQTtBQUNBLFdBQUE7O0FBR0QsQ0FBQTtBQUNDLE9BQUE7O0FBUUQsQ0FBQTtBQUNDLG9CQUFBLElBQUE7QUFDQSxnQkFBQSxJQUFBLE1BQUEsSUFBQTtBQUNBLFVBQUE7QUFDQSxXQUFBO0FBQ0EsY0FBQTs7QUFJRCxDQUFBO0FBQ0MsT0FBQTtBQUNBLFdBQUEsSUFBQTs7QUFJRCxDQUFBO0FBQ0Msb0JBQUEsSUFBQTtBQUNBLGdCQUFBLElBQUEsTUFBQSxJQUFBO0FBQ0EsVUFBQTs7QUFRRCxDQUFBO0FBQ0Msb0JBQUEsSUFBQTtBQUNBLFFBQUE7QUFDQSxXQUFBO0FBQ0Esa0JBQUE7QUFDQSxVQUFBO0FBQ0EsV0FBQTtBQUNBLE9BQUE7QUFDQSxVQUFBO0FBQ0EsY0FBQTs7QUFJRCxDQUFBO0FBQ0Msb0JBQUEsSUFBQTtBQUNBLFFBQUE7QUFDQSxXQUFBO0FBQ0Esa0JBQUE7QUFDQSxVQUFBO0FBQ0EsV0FBQTtBQUNBLE9BQUE7QUFDQSxVQUFBO0FBQ0EsY0FBQTs7QUFHRCxDQUFBO0FBQ0Msb0JBQUEsSUFBQTtBQUNBLFVBQUE7O0FBSUQsQ0FBQTtBQUNDLG9CQUFBLElBQUE7O0FBUUQsQ0FBQTtBQUNDLG9CQUFBLElBQUE7QUFDQSxpQkFBQSxJQUFBLE1BQUEsSUFBQTtBQUNBLFdBQUEsS0FBQTtBQUNBLFVBQUE7O0FBSUQsQ0FBQTtBQUNDLG9CQUFBLElBQUE7QUFDQSxpQkFBQSxJQUFBLE1BQUEsSUFBQTs7QUFHRCxDQUFBO0FBQ0Msb0JBQUEsSUFBQTs7QUFJRCxDQUFBO0FBQUEsQ0FBQTtBQUVDLG9CQUFBO0FBQ0EsaUJBQUEsSUFBQSxNQUFBLElBQUE7QUFDQSxVQUFBOztBQVFELENBQUE7QUFDQyxvQkFBQTtBQUNBLFVBQUE7QUFDQSxpQkFBQSxJQUFBO0FBQ0EsU0FBQSxJQUFBO0FBQ0EsY0FDQyxpQkFBQSxNQUFB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 */