Standardize settings file naming and relocate documentation files Fix code quality violations from rsx:check Reorganize user_management directory into logical subdirectories Move Quill Bundle to core and align with Tom Select pattern Simplify Site Settings page to focus on core site information Complete Phase 5: Multi-tenant authentication with login flow and site selection Add route query parameter rule and synchronize filename validation logic Fix critical bug in UpdateNpmCommand causing missing JavaScript stubs Implement filename convention rule and resolve VS Code auto-rename conflict Implement js-sanitizer RPC server to eliminate 900+ Node.js process spawns Implement RPC server architecture for JavaScript parsing WIP: Add RPC server infrastructure for JS parsing (partial implementation) Update jqhtml terminology from destroy to stop, fix datagrid DOM preservation Add JQHTML-CLASS-01 rule and fix redundant class names Improve code quality rules and resolve violations Remove legacy fatal error format in favor of unified 'fatal' error type Filter internal keys from window.rsxapp output Update button styling and comprehensive form/modal documentation Add conditional fly-in animation for modals Fix non-deterministic bundle compilation 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
1407 lines
129 KiB
CSS
1407 lines
129 KiB
CSS
/* Concatenated CSS bundle: css_bundle_Frontend_Bundle.css */
|
|
/* Generated: 2025-11-12T19:33:18.985Z */
|
|
|
|
/* === rsx/theme/quill/quill_cdn.css === */
|
|
/* Quill Editor - CDN Import */
|
|
@import url('https://cdn.jsdelivr.net/npm/quill@2.0.2/dist/quill.snow.css');
|
|
|
|
/* === storage/rsx-tmp/scss_048fdb4ef127c481.css === */
|
|
|
|
/* ======= FILE: app/RSpade/Integrations/Jqhtml/Jqhtml_Integration.scss ======= */
|
|
|
|
.Jqhtml_Component_Init {
|
|
display: none;
|
|
}
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/theme/variables.scss ======= */
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/theme/components/datagrid/datagrid_abstract.scss ======= */
|
|
|
|
/**
|
|
* DataGrid Component Styles (Phase 1)
|
|
*
|
|
* **Responsive Strategy**:
|
|
* - Desktop (>= 768px): Table layout
|
|
* - Mobile (< 768px): Card layout (Phase 1 - basic, will enhance in future)
|
|
*
|
|
* **Design Philosophy**:
|
|
* - Clean, minimal styling
|
|
* - Bootstrap 5 compatible
|
|
* - No shadows or excessive borders
|
|
* - Touch-friendly tap targets on mobile
|
|
*/
|
|
.DataGrid {
|
|
/* Container */
|
|
}
|
|
.DataGrid {
|
|
/* Loading State */
|
|
}
|
|
.DataGrid .datagrid-loading {
|
|
text-align: center;
|
|
padding: 60px 20px;
|
|
}
|
|
.DataGrid .datagrid-loading .spinner-border {
|
|
width: 3rem;
|
|
height: 3rem;
|
|
}
|
|
.DataGrid {
|
|
/* Desktop: Table Layout */
|
|
}
|
|
.DataGrid table thead th {
|
|
background-color: #f8f9fa;
|
|
border-bottom: 2px solid #dee2e6;
|
|
font-weight: 600;
|
|
white-space: nowrap;
|
|
vertical-align: middle;
|
|
padding: 0.75rem 0.75rem;
|
|
}
|
|
.DataGrid table thead th .sortable-header {
|
|
cursor: pointer;
|
|
user-select: none;
|
|
color: inherit;
|
|
text-decoration: none;
|
|
display: inline-flex;
|
|
align-items: center;
|
|
}
|
|
.DataGrid table thead th .sortable-header:hover {
|
|
color: inherit;
|
|
text-decoration: underline;
|
|
}
|
|
.DataGrid table thead th .sortable-header i {
|
|
margin-left: 5px;
|
|
font-size: 0.8em;
|
|
vertical-align: middle;
|
|
color: #0d6efd;
|
|
}
|
|
.DataGrid table tbody {
|
|
display: table-row-group;
|
|
position: relative;
|
|
}
|
|
.DataGrid table tbody.is-loading tr.loading-row td,
|
|
.DataGrid table tbody.is-loading tr.empty-row td, .DataGrid table tbody.is-empty tr.loading-row td,
|
|
.DataGrid table tbody.is-empty tr.empty-row td {
|
|
vertical-align: middle;
|
|
height: 100%;
|
|
}
|
|
.DataGrid table tbody tr:hover:not(.loading-row):not(.empty-row) {
|
|
background-color: #f8f9fa;
|
|
}
|
|
.DataGrid table tbody tr td {
|
|
vertical-align: middle;
|
|
padding: 0 0.75rem;
|
|
}
|
|
.DataGrid table tbody tr td .datagrid-row-link {
|
|
display: block;
|
|
color: inherit;
|
|
text-decoration: none;
|
|
width: 100%;
|
|
height: 100%;
|
|
}
|
|
.DataGrid table tbody tr td .datagrid-row-link:hover {
|
|
color: inherit;
|
|
text-decoration: none;
|
|
}
|
|
.DataGrid table tbody tr td.has-only-text {
|
|
padding: 0.75rem 0.75rem;
|
|
}
|
|
.DataGrid table tbody tr td.has-full-link {
|
|
padding: 0;
|
|
}
|
|
.DataGrid table tbody tr td.has-full-link > a {
|
|
display: block;
|
|
padding: 0.75rem 0.75rem;
|
|
color: inherit;
|
|
text-decoration: none;
|
|
}
|
|
.DataGrid table tbody tr td.has-full-link > a:hover {
|
|
color: inherit;
|
|
text-decoration: none;
|
|
}
|
|
.DataGrid table th:first-child,
|
|
.DataGrid table td:first-child {
|
|
text-align: center;
|
|
width: 40px;
|
|
}
|
|
.DataGrid {
|
|
/* Empty State */
|
|
}
|
|
.DataGrid .datagrid-empty {
|
|
text-align: center;
|
|
padding: 60px 20px;
|
|
}
|
|
.DataGrid .datagrid-empty i {
|
|
display: block;
|
|
margin-bottom: 1rem;
|
|
}
|
|
.DataGrid {
|
|
/* Mobile Responsive (< 768px) - Phase 1 keeps table, will add cards later */
|
|
}
|
|
@media (max-width: 767px) {
|
|
.DataGrid table {
|
|
font-size: 0.875rem;
|
|
}
|
|
.DataGrid table thead th {
|
|
padding: 0.5025rem 0.5025rem;
|
|
}
|
|
.DataGrid table tbody td {
|
|
padding: 0 0.5025rem;
|
|
}
|
|
.DataGrid table tbody td.has-only-text {
|
|
padding: 0.5025rem 0.5025rem;
|
|
}
|
|
.DataGrid table tbody td.has-full-link > a {
|
|
padding: 0.5025rem 0.5025rem;
|
|
}
|
|
}
|
|
.DataGrid {
|
|
/* Print Styles */
|
|
}
|
|
@media print {
|
|
.DataGrid input[type=checkbox] {
|
|
display: none !important;
|
|
}
|
|
.DataGrid .datagrid-table-wrapper {
|
|
overflow: visible;
|
|
}
|
|
.DataGrid .datagrid-table tbody tr:hover {
|
|
background-color: transparent;
|
|
}
|
|
}
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/theme/components/_archived/unfinished/activity_feed.scss ======= */
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/theme/components/_archived/unfinished/actor_reference.scss ======= */
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/theme/components/_archived/unfinished/advanced_search_panel.scss ======= */
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/theme/components/_archived/unfinished/alert_banner.scss ======= */
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/theme/components/_archived/unfinished/avatar.scss ======= */
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/theme/components/_archived/unfinished/blockquote.scss ======= */
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/theme/components/_archived/unfinished/breadcrumbs.scss ======= */
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/theme/components/_archived/unfinished/bulk_action_bar.scss ======= */
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/theme/components/_archived/unfinished/bulk_selection.scss ======= */
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/theme/components/_archived/unfinished/button_group.scss ======= */
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/theme/components/_archived/unfinished/button_primary.scss ======= */
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/theme/components/_archived/unfinished/button_secondary.scss ======= */
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/theme/components/_archived/unfinished/button.scss ======= */
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/theme/components/_archived/unfinished/calendar_event.scss ======= */
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/theme/components/_archived/unfinished/calendar_grid.scss ======= */
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/theme/components/_archived/unfinished/card.scss ======= */
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/theme/components/_archived/unfinished/chart_component.scss ======= */
|
|
|
|
.Frontend_Dashboard .chart-placeholder {
|
|
min-height: 300px;
|
|
}
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/theme/components/_archived/unfinished/checkbox.scss ======= */
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/theme/components/_archived/unfinished/code_block.scss ======= */
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/theme/components/_archived/unfinished/column_visibility_toggle.scss ======= */
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/theme/components/_archived/unfinished/comment_thread.scss ======= */
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/theme/components/_archived/unfinished/date_picker.scss ======= */
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/theme/components/_archived/unfinished/dropdown_menu.scss ======= */
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/theme/components/_archived/unfinished/empty_state.scss ======= */
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/theme/components/_archived/unfinished/export_button.scss ======= */
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/theme/components/_archived/unfinished/file_upload.scss ======= */
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/theme/components/_archived/unfinished/filter_bar.scss ======= */
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/theme/components/_archived/unfinished/form_field_group.scss ======= */
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/theme/components/_archived/unfinished/form_validation_message.scss ======= */
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/theme/components/_archived/unfinished/gantt_chart.scss ======= */
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/theme/components/_archived/unfinished/icon_button.scss ======= */
|
|
|
|
.Icon_Button {
|
|
padding: 0.375rem;
|
|
display: inline-flex;
|
|
align-items: center;
|
|
justify-content: center;
|
|
}
|
|
.Icon_Button .Icon {
|
|
display: block;
|
|
margin: 0;
|
|
}
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/theme/components/_archived/unfinished/icon_with_label.scss ======= */
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/theme/components/_archived/unfinished/icon_with_text.scss ======= */
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/theme/components/_archived/unfinished/icon.scss ======= */
|
|
|
|
.icon {
|
|
display: inline-block;
|
|
width: 1.5rem;
|
|
height: 1.5rem;
|
|
vertical-align: middle;
|
|
}
|
|
.icon.icon-xs {
|
|
width: 1rem;
|
|
height: 1rem;
|
|
}
|
|
.icon.icon-sm {
|
|
width: 1.25rem;
|
|
height: 1.25rem;
|
|
}
|
|
.icon.icon-lg {
|
|
width: 2rem;
|
|
height: 2rem;
|
|
}
|
|
.icon.icon-xl {
|
|
width: 3rem;
|
|
height: 3rem;
|
|
}
|
|
.icon.icon-xxs {
|
|
width: 0.75rem;
|
|
height: 0.75rem;
|
|
}
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/theme/components/_archived/unfinished/info_box.scss ======= */
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/theme/components/_archived/unfinished/inline_edit_field.scss ======= */
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/theme/components/_archived/unfinished/input_with_icon.scss ======= */
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/theme/components/_archived/unfinished/input_with_validation.scss ======= */
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/theme/components/_archived/unfinished/input.scss ======= */
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/theme/components/_archived/unfinished/kanban_board.scss ======= */
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/theme/components/_archived/unfinished/link.scss ======= */
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/theme/components/_archived/unfinished/list.scss ======= */
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/theme/components/_archived/unfinished/loading_skeleton.scss ======= */
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/theme/components/_archived/unfinished/metric_card.scss ======= */
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/theme/components/_archived/unfinished/mobile_header.scss ======= */
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/theme/components/_archived/unfinished/modal_dialog.scss ======= */
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/theme/components/_archived/unfinished/multi_select.scss ======= */
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/theme/components/_archived/unfinished/notification_badge.scss ======= */
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/theme/components/_archived/unfinished/notification_dropdown.scss ======= */
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/theme/components/_archived/unfinished/overdue_indicator.scss ======= */
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/theme/components/_archived/unfinished/page_header.scss ======= */
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/theme/components/_archived/unfinished/page_section.scss ======= */
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/theme/components/_archived/unfinished/page.scss ======= */
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/theme/components/_archived/unfinished/popover.scss ======= */
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/theme/components/_archived/unfinished/progress_bar.scss ======= */
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/theme/components/_archived/unfinished/radio_button.scss ======= */
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/theme/components/_archived/unfinished/rich_text_editor.scss ======= */
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/theme/components/_archived/unfinished/row_action_menu.scss ======= */
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/theme/components/_archived/unfinished/search_bar.scss ======= */
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/theme/components/_archived/unfinished/searchable_select.scss ======= */
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/theme/components/_archived/unfinished/select_dropdown.scss ======= */
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/theme/components/_archived/unfinished/sidebar_nav.scss ======= */
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/theme/components/_archived/unfinished/sortable_column_header.scss ======= */
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/theme/components/_archived/unfinished/spinner.scss ======= */
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/theme/components/_archived/unfinished/stat_card.scss ======= */
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/theme/components/_archived/unfinished/status_badge.scss ======= */
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/theme/components/_archived/unfinished/tab_content.scss ======= */
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/theme/components/_archived/unfinished/table_pagination.scss ======= */
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/theme/components/_archived/unfinished/table.scss ======= */
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/theme/components/_archived/unfinished/tabs.scss ======= */
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/theme/components/_archived/unfinished/tag_group.scss ======= */
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/theme/components/_archived/unfinished/tag.scss ======= */
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/theme/components/_archived/unfinished/text_display.scss ======= */
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/theme/components/_archived/unfinished/textarea.scss ======= */
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/theme/components/_archived/unfinished/three_column_layout.scss ======= */
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/theme/components/_archived/unfinished/time_picker.scss ======= */
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/theme/components/_archived/unfinished/timeline.scss ======= */
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/theme/components/_archived/unfinished/timestamp_display.scss ======= */
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/theme/components/_archived/unfinished/tooltip.scss ======= */
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/theme/components/_archived/unfinished/top_nav.scss ======= */
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/theme/components/_archived/unfinished/trend_indicator.scss ======= */
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/theme/components/_archived/unfinished/two_column_layout.scss ======= */
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/theme/components/_archived/unfinished/user_avatar_dropdown.scss ======= */
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/theme/components/modal/rsx_modal.scss ======= */
|
|
|
|
/**
|
|
* Rsx_Modal Styling
|
|
*
|
|
* Overrides Bootstrap modal defaults to implement custom sizing and behavior
|
|
*/
|
|
.rsx-modal.modal {
|
|
display: flex !important;
|
|
align-items: center;
|
|
justify-content: center;
|
|
opacity: 0;
|
|
}
|
|
.rsx-modal.modal.show {
|
|
opacity: 1;
|
|
}
|
|
.rsx-modal .modal-dialog {
|
|
margin: 0;
|
|
max-width: none;
|
|
width: auto;
|
|
min-width: 400px;
|
|
}
|
|
.rsx-modal .modal-content {
|
|
max-height: 100%;
|
|
display: flex;
|
|
flex-direction: column;
|
|
min-height: 260px;
|
|
box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
|
|
}
|
|
.rsx-modal .modal-header {
|
|
flex-shrink: 0;
|
|
border-bottom: 1px solid #dee2e6;
|
|
background-color: #f8f9fa;
|
|
padding: 0.75rem 1rem;
|
|
}
|
|
.rsx-modal .modal-header .modal-title {
|
|
font-weight: 600;
|
|
font-size: 1rem;
|
|
}
|
|
.rsx-modal .modal-header .btn-close {
|
|
padding: 0.5rem;
|
|
margin: -0.5rem -0.5rem -0.5rem auto;
|
|
}
|
|
.rsx-modal .modal-body {
|
|
flex: 1 1 auto;
|
|
overflow-y: auto;
|
|
padding: 1.5rem;
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: center;
|
|
text-align: center;
|
|
}
|
|
.rsx-modal .modal-body form {
|
|
text-align: left;
|
|
width: 100%;
|
|
}
|
|
.rsx-modal .modal-body.has-icon {
|
|
justify-content: flex-start;
|
|
text-align: left;
|
|
}
|
|
.rsx-modal .modal-body.has-icon .modal-icon {
|
|
flex-shrink: 0;
|
|
font-size: 40px;
|
|
margin-right: 1rem;
|
|
align-self: flex-start;
|
|
}
|
|
.rsx-modal .modal-body.has-icon .modal-icon.bi-exclamation-circle {
|
|
color: #dc3545;
|
|
}
|
|
.rsx-modal .modal-body.has-icon .modal-body-content {
|
|
flex: 1;
|
|
}
|
|
.rsx-modal .modal-footer {
|
|
flex-shrink: 0;
|
|
border-top: 1px solid #dee2e6;
|
|
padding: 1rem 1.5rem;
|
|
display: flex;
|
|
gap: 0.5rem;
|
|
justify-content: center;
|
|
}
|
|
.rsx-modal .modal-footer .btn {
|
|
min-width: 80px;
|
|
}
|
|
|
|
.rsx-modal .modal-dialog {
|
|
transition: transform 150ms ease-out, opacity 150ms ease-out;
|
|
}
|
|
|
|
.modal-backdrop {
|
|
position: fixed;
|
|
top: 0;
|
|
left: 0;
|
|
z-index: 1040;
|
|
width: 100vw;
|
|
height: 100vh;
|
|
background-color: rgba(0, 0, 0, 0.5);
|
|
}
|
|
.modal-backdrop.fade {
|
|
opacity: 1;
|
|
transition: none;
|
|
}
|
|
|
|
.rsx-modal {
|
|
z-index: 1050;
|
|
}
|
|
|
|
@media (max-width: 767px) {
|
|
.rsx-modal .modal-dialog {
|
|
margin: 5%;
|
|
max-width: 90%;
|
|
min-width: 280px;
|
|
}
|
|
.rsx-modal .modal-body {
|
|
padding: 1rem;
|
|
}
|
|
.rsx-modal .modal-footer {
|
|
padding: 0.75rem 1rem;
|
|
}
|
|
.rsx-modal .modal-footer .btn {
|
|
min-width: 60px;
|
|
font-size: 0.875rem;
|
|
}
|
|
}
|
|
.rsx-modal .modal-body .is-invalid {
|
|
border-color: #dc3545;
|
|
}
|
|
.rsx-modal .modal-body .invalid-feedback {
|
|
display: block;
|
|
color: #dc3545;
|
|
font-size: 0.875rem;
|
|
margin-top: 0.25rem;
|
|
}
|
|
.rsx-modal .modal-body .alert {
|
|
margin-bottom: 1rem;
|
|
}
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/theme/components/forms/pin_verification_form.scss ======= */
|
|
|
|
.Pin_Verification_Form .pin-inputs .pin-input {
|
|
width: 50px;
|
|
height: 60px;
|
|
font-size: 24px;
|
|
font-weight: 600;
|
|
padding: 0;
|
|
border: 2px solid #dee2e6;
|
|
border-radius: 8px;
|
|
transition: all 0.2s ease;
|
|
}
|
|
.Pin_Verification_Form .pin-inputs .pin-input:focus {
|
|
border-color: #0d6efd;
|
|
box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
|
|
outline: 0;
|
|
}
|
|
.Pin_Verification_Form .pin-inputs .pin-input.is-invalid {
|
|
border-color: #dc3545;
|
|
}
|
|
.Pin_Verification_Form .text-muted {
|
|
margin-top: 10px;
|
|
}
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/theme/layout.scss ======= */
|
|
|
|
.page-content--constrained {
|
|
max-width: 1600px;
|
|
margin: 0 auto;
|
|
}
|
|
.page-content--constrained-wider {
|
|
max-width: 1800px;
|
|
margin: 0 auto;
|
|
}
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/app/frontend/dashboard/frontend_dashboard.scss ======= */
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/app/frontend/clients/frontend_clients.scss ======= */
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/app/frontend/clients/edit/frontend_clients_edit.scss ======= */
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/app/frontend/clients/view/frontend_clients_view.scss ======= */
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/app/frontend/settings/team/frontend_settings_team.scss ======= */
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/app/frontend/settings/notifications/frontend_settings_notifications.scss ======= */
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/app/frontend/settings/billing/frontend_settings_billing.scss ======= */
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/app/frontend/settings/import/frontend_settings_import.scss ======= */
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/app/frontend/settings/api/frontend_settings_api.scss ======= */
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/app/frontend/settings/templates/frontend_settings_templates.scss ======= */
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/app/frontend/settings/audit/frontend_settings_audit.scss ======= */
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/app/frontend/settings/frontend_settings.scss ======= */
|
|
|
|
/**
|
|
* Frontend Settings - Unified Styles
|
|
* Shared styles for all settings pages (general, profile, account)
|
|
*/
|
|
.frontend-settings .sidebar {
|
|
min-height: calc(100vh - 56px);
|
|
padding: 0;
|
|
box-shadow: inset -1px 0 0 rgba(0, 0, 0, 0.1);
|
|
}
|
|
.frontend-settings .sidebar .position-sticky {
|
|
top: 1rem;
|
|
}
|
|
.frontend-settings .sidebar .sidebar-heading {
|
|
font-size: 0.75rem;
|
|
font-weight: 600;
|
|
letter-spacing: 0.05em;
|
|
}
|
|
.frontend-settings .sidebar .nav-link {
|
|
font-weight: 500;
|
|
color: #333;
|
|
padding: 0.5rem 1.5rem;
|
|
transition: background-color 0.2s, color 0.2s;
|
|
}
|
|
.frontend-settings .sidebar .nav-link i {
|
|
width: 20px;
|
|
margin-right: 0.5rem;
|
|
}
|
|
.frontend-settings .sidebar .nav-link:hover {
|
|
background-color: rgba(0, 0, 0, 0.05);
|
|
}
|
|
.frontend-settings .sidebar .nav-link.active {
|
|
color: #0d6efd;
|
|
background-color: rgba(13, 110, 253, 0.1);
|
|
border-left: 3px solid #0d6efd;
|
|
padding-left: calc(1.5rem - 3px);
|
|
}
|
|
.frontend-settings main {
|
|
padding-top: 1rem;
|
|
}
|
|
.frontend-settings .page-header {
|
|
border-bottom: 1px solid #dee2e6;
|
|
padding-bottom: 1rem;
|
|
margin-bottom: 2rem;
|
|
}
|
|
.frontend-settings .page-header h1 {
|
|
font-weight: 500;
|
|
}
|
|
.frontend-settings .card {
|
|
border: 1px solid rgba(0, 0, 0, 0.125);
|
|
box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075);
|
|
margin-bottom: 1.5rem;
|
|
}
|
|
.frontend-settings .card .card-header {
|
|
background-color: #f8f9fa;
|
|
border-bottom: 1px solid rgba(0, 0, 0, 0.125);
|
|
padding: 1rem 1.25rem;
|
|
}
|
|
.frontend-settings .card .card-header h5,
|
|
.frontend-settings .card .card-header h6 {
|
|
margin-bottom: 0;
|
|
font-weight: 600;
|
|
}
|
|
.frontend-settings .card .card-body {
|
|
padding: 1.25rem;
|
|
}
|
|
.frontend-settings .form-label {
|
|
font-weight: 500;
|
|
margin-bottom: 0.5rem;
|
|
}
|
|
.frontend-settings .form-text {
|
|
font-size: 0.875em;
|
|
color: #6c757d;
|
|
}
|
|
.frontend-settings .usage-metric .progress {
|
|
background-color: #e9ecef;
|
|
}
|
|
.frontend-settings .usage-metric .progress .progress-bar {
|
|
background-color: #0d6efd;
|
|
}
|
|
.frontend-settings .usage-metric small {
|
|
font-size: 0.875rem;
|
|
}
|
|
.frontend-settings .profile-section .avatar-lg {
|
|
width: 120px;
|
|
height: 120px;
|
|
border-radius: 50%;
|
|
background-color: #0d6efd;
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: center;
|
|
margin: 0 auto;
|
|
}
|
|
.frontend-settings .profile-section .avatar-lg .avatar-initials {
|
|
color: white;
|
|
font-size: 2.5rem;
|
|
font-weight: 500;
|
|
}
|
|
.frontend-settings .account-section .subscription-badge {
|
|
font-size: 0.875rem;
|
|
padding: 0.35em 0.65em;
|
|
}
|
|
.frontend-settings .account-section .billing-info {
|
|
background-color: #f8f9fa;
|
|
border-radius: 0.375rem;
|
|
padding: 1rem;
|
|
margin-top: 1rem;
|
|
}
|
|
.frontend-settings .card-actions {
|
|
display: flex;
|
|
gap: 0.5rem;
|
|
justify-content: flex-end;
|
|
padding-top: 1rem;
|
|
border-top: 1px solid #dee2e6;
|
|
margin-top: 1rem;
|
|
}
|
|
.frontend-settings .stats-widget .stat-item {
|
|
padding: 0.75rem 0;
|
|
border-bottom: 1px solid #e9ecef;
|
|
}
|
|
.frontend-settings .stats-widget .stat-item:last-child {
|
|
border-bottom: none;
|
|
}
|
|
.frontend-settings .stats-widget .stat-item .stat-label {
|
|
font-size: 0.875rem;
|
|
color: #6c757d;
|
|
}
|
|
.frontend-settings .stats-widget .stat-item .stat-value {
|
|
font-size: 1.125rem;
|
|
font-weight: 600;
|
|
color: #212529;
|
|
}
|
|
@media (max-width: 767.98px) {
|
|
.frontend-settings .sidebar {
|
|
position: static;
|
|
min-height: auto;
|
|
padding: 1rem;
|
|
}
|
|
.frontend-settings main {
|
|
padding: 1rem;
|
|
}
|
|
}
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/app/frontend/settings/profile_display/frontend_settings_profile_display.scss ======= */
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/app/frontend/settings/profile_edit/frontend_settings_profile_edit.scss ======= */
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/app/frontend/settings/user_settings/frontend_settings_user_settings.scss ======= */
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/app/frontend/settings/password_security/frontend_settings_password_security.scss ======= */
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/app/frontend/settings/api_keys/frontend_settings_api_keys.scss ======= */
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/app/frontend/settings/user_management/frontend_settings_user_management.scss ======= */
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/app/frontend/settings/site_settings/frontend_settings_site_settings.scss ======= */
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/app/frontend/contacts/frontend_contacts.scss ======= */
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/app/frontend/contacts/_data_table_qq/data_table.scss ======= */
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/app/frontend/contacts/view/frontend_contacts_view.scss ======= */
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/app/frontend/projects/frontend_projects.scss ======= */
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/app/frontend/projects/frontend_projects_list.scss ======= */
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/app/frontend/projects/frontend_projects_view.scss ======= */
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/app/frontend/projects/frontend_projects_add.scss ======= */
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/app/frontend/tasks/frontend_tasks.scss ======= */
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/app/frontend/tasks/frontend_tasks_view.scss ======= */
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/app/frontend/tasks/frontend_tasks_add.scss ======= */
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/app/frontend/calendar/frontend_calendar.scss ======= */
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/app/frontend/calendar/frontend_calendar_event.scss ======= */
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/app/frontend/invoices/frontend_invoices.scss ======= */
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/app/frontend/invoices/frontend_invoices_view.scss ======= */
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/app/frontend/invoices/frontend_invoices_add.scss ======= */
|
|
|
|
.Frontend_Invoices_Add .invoice-edit-with-sidebar {
|
|
display: grid;
|
|
grid-template-columns: 280px 1fr;
|
|
gap: 1.5rem;
|
|
max-width: 1400px;
|
|
margin: 0 auto;
|
|
padding: 1.5rem;
|
|
}
|
|
@media (max-width: 992px) {
|
|
.Frontend_Invoices_Add .invoice-edit-with-sidebar {
|
|
grid-template-columns: 1fr;
|
|
}
|
|
}
|
|
.Frontend_Invoices_Add .invoice-sidebar {
|
|
position: sticky;
|
|
top: 1.5rem;
|
|
height: fit-content;
|
|
background: #f8f9fa;
|
|
border-radius: 0.5rem;
|
|
overflow: hidden;
|
|
}
|
|
@media (max-width: 992px) {
|
|
.Frontend_Invoices_Add .invoice-sidebar {
|
|
position: relative;
|
|
top: 0;
|
|
}
|
|
}
|
|
.Frontend_Invoices_Add .invoice-sidebar .sidebar-header {
|
|
background: white;
|
|
border-bottom: 1px solid #dee2e6;
|
|
padding: 1rem;
|
|
}
|
|
.Frontend_Invoices_Add .invoice-sidebar .sidebar-actions {
|
|
max-height: calc(100vh - 200px);
|
|
overflow-y: auto;
|
|
}
|
|
.Frontend_Invoices_Add .invoice-main {
|
|
min-width: 0;
|
|
}
|
|
.Frontend_Invoices_Add #lineItemsTable .line-item:hover {
|
|
background-color: #f8f9fa;
|
|
}
|
|
.Frontend_Invoices_Add #lineItemsTable .line-item input.form-control {
|
|
border-color: #dee2e6;
|
|
}
|
|
.Frontend_Invoices_Add #lineItemsTable .line-item input.form-control:focus {
|
|
border-color: #86b7fe;
|
|
box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
|
|
}
|
|
.Frontend_Invoices_Add #lineItemsTable .line-item .item-amount {
|
|
color: #212529;
|
|
}
|
|
.Frontend_Invoices_Add #lineItemsTable .line-item .remove-item {
|
|
opacity: 0;
|
|
transition: opacity 0.15s ease;
|
|
}
|
|
.Frontend_Invoices_Add #lineItemsTable .line-item:hover .remove-item {
|
|
opacity: 1;
|
|
}
|
|
.Frontend_Invoices_Add .table.table-sm {
|
|
margin-bottom: 0;
|
|
}
|
|
.Frontend_Invoices_Add .table.table-sm td {
|
|
border-top: none;
|
|
padding: 0.5rem;
|
|
}
|
|
.Frontend_Invoices_Add .table.table-sm td:first-child {
|
|
width: 60%;
|
|
}
|
|
.Frontend_Invoices_Add .table.table-sm td:last-child {
|
|
width: 40%;
|
|
}
|
|
.Frontend_Invoices_Add .table.table-sm tr.border-top td {
|
|
border-top: 2px solid #dee2e6 !important;
|
|
padding-top: 0.75rem;
|
|
}
|
|
@media (max-width: 768px) {
|
|
.Frontend_Invoices_Add .invoice-edit-with-sidebar {
|
|
padding: 1rem;
|
|
}
|
|
.Frontend_Invoices_Add #lineItemsTable {
|
|
font-size: 0.875rem;
|
|
}
|
|
.Frontend_Invoices_Add #lineItemsTable input.form-control {
|
|
font-size: 0.875rem;
|
|
}
|
|
}
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/app/frontend/reports/frontend_reports.scss ======= */
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/app/frontend/reports/frontend_reports_revenue.scss ======= */
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/app/frontend/reports/frontend_reports_clients.scss ======= */
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/app/frontend/reports/frontend_reports_projects.scss ======= */
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/app/frontend/reports/frontend_reports_time.scss ======= */
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/app/frontend/account/frontend_account.scss ======= */
|
|
|
|
/**
|
|
* Styles for Frontend_Account view
|
|
*/
|
|
.account-management {
|
|
padding: 2rem 0;
|
|
}
|
|
.account-management .usage-metric .progress {
|
|
background-color: #f0f0f0;
|
|
}
|
|
.account-management .usage-metric .progress .progress-bar {
|
|
background-color: #0d6efd;
|
|
}
|
|
.account-management .payment-method {
|
|
transition: background-color 0.2s;
|
|
}
|
|
.account-management .payment-method:hover {
|
|
background-color: #f8f9fa;
|
|
}
|
|
.account-management .avatar.avatar-sm {
|
|
width: 40px;
|
|
height: 40px;
|
|
}
|
|
.account-management .avatar .avatar-initial {
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: center;
|
|
width: 100%;
|
|
height: 100%;
|
|
font-weight: 500;
|
|
color: white;
|
|
}
|
|
.account-management .table th {
|
|
font-weight: 600;
|
|
color: #6c757d;
|
|
border-bottom-width: 2px;
|
|
}
|
|
.account-management .table td {
|
|
vertical-align: middle;
|
|
}
|
|
.account-management .card {
|
|
border: 1px solid #dee2e6;
|
|
box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075);
|
|
}
|
|
.account-management .card .card-header {
|
|
background-color: #f8f9fa;
|
|
border-bottom: 1px solid #dee2e6;
|
|
font-weight: 500;
|
|
}
|
|
.account-management .btn-link {
|
|
text-decoration: none;
|
|
padding: 0.25rem 0.5rem;
|
|
}
|
|
.account-management .btn-link:hover {
|
|
text-decoration: underline;
|
|
}
|
|
.account-management .pagination .page-link {
|
|
color: #495057;
|
|
}
|
|
.account-management .pagination .page-link:hover {
|
|
background-color: #e9ecef;
|
|
}
|
|
.account-management .pagination .page-item.active .page-link {
|
|
background-color: #0d6efd;
|
|
border-color: #0d6efd;
|
|
}
|
|
.account-management #upgradeModal .card.border-primary {
|
|
border-width: 2px;
|
|
}
|
|
@media (max-width: 768px) {
|
|
.account-management .card-header .btn {
|
|
font-size: 0.875rem;
|
|
}
|
|
.account-management .table-responsive {
|
|
font-size: 0.875rem;
|
|
}
|
|
}
|
|
|
|
|
|
|
|
/* ======= FILE: rsx/app/frontend/frontend.scss ======= */
|
|
|
|
body {
|
|
margin: 0;
|
|
padding: 0;
|
|
}
|
|
|
|
.app-sidebar {
|
|
background: #f8f9fa;
|
|
width: 215px;
|
|
position: fixed;
|
|
top: 0;
|
|
bottom: 0;
|
|
left: 0;
|
|
display: flex;
|
|
flex-direction: column;
|
|
z-index: 1000;
|
|
}
|
|
.app-sidebar .sidebar-brand {
|
|
padding: 0.5rem 1.5rem;
|
|
height: 57px;
|
|
border-bottom: 1px solid var(--bs-border-color);
|
|
background: #212529;
|
|
display: flex;
|
|
align-items: center;
|
|
}
|
|
.app-sidebar .sidebar-brand a {
|
|
font-size: 1.25rem;
|
|
font-weight: 600;
|
|
color: white;
|
|
text-decoration: none;
|
|
}
|
|
.app-sidebar .sidebar-brand a:hover {
|
|
color: #e9ecef;
|
|
}
|
|
.app-sidebar .sidebar-nav {
|
|
flex: 1;
|
|
padding: 1rem;
|
|
overflow-y: auto;
|
|
}
|
|
.app-sidebar .sidebar-nav .nav-section {
|
|
margin-bottom: 1.5rem;
|
|
}
|
|
.app-sidebar .sidebar-nav .nav-section:last-child {
|
|
margin-bottom: 0;
|
|
}
|
|
.app-sidebar .sidebar-nav .nav-section-title {
|
|
font-size: 0.75rem;
|
|
font-weight: 600;
|
|
text-transform: uppercase;
|
|
letter-spacing: 0.5px;
|
|
color: #6c757d;
|
|
padding: 0.5rem 1rem;
|
|
margin-bottom: 0.25rem;
|
|
}
|
|
.app-sidebar .sidebar-nav .nav-link {
|
|
display: flex;
|
|
align-items: center;
|
|
padding: 0.75rem 1rem;
|
|
margin-bottom: 0.25rem;
|
|
color: #495057;
|
|
text-decoration: none;
|
|
border-radius: 0.375rem;
|
|
transition: background-color 0.2s ease, color 0.2s ease;
|
|
}
|
|
.app-sidebar .sidebar-nav .nav-link i {
|
|
font-size: 1.1rem;
|
|
width: 1.5rem;
|
|
margin-right: 0.5rem;
|
|
text-align: center;
|
|
}
|
|
.app-sidebar .sidebar-nav .nav-link:hover {
|
|
background: rgba(13, 110, 253, 0.1);
|
|
color: #0d6efd;
|
|
}
|
|
.app-sidebar .sidebar-nav .nav-link.active {
|
|
background: #0d6efd;
|
|
color: white;
|
|
font-weight: 500;
|
|
}
|
|
.app-sidebar .sidebar-nav .nav-link.active i {
|
|
color: white;
|
|
}
|
|
.app-sidebar .sidebar-bottom {
|
|
padding: 1rem;
|
|
border-top: 1px solid var(--bs-border-color);
|
|
background: white;
|
|
}
|
|
.app-sidebar .sidebar-bottom .nav-link {
|
|
display: flex;
|
|
align-items: center;
|
|
padding: 0.75rem 1rem;
|
|
color: #495057;
|
|
text-decoration: none;
|
|
border-radius: 0.375rem;
|
|
transition: background-color 0.2s ease, color 0.2s ease;
|
|
}
|
|
.app-sidebar .sidebar-bottom .nav-link i {
|
|
font-size: 1.1rem;
|
|
width: 1.5rem;
|
|
margin-right: 0.5rem;
|
|
text-align: center;
|
|
}
|
|
.app-sidebar .sidebar-bottom .nav-link:hover {
|
|
background: rgba(13, 110, 253, 0.1);
|
|
color: #0d6efd;
|
|
}
|
|
@media (max-width: 991.98px) {
|
|
.app-sidebar {
|
|
position: static;
|
|
width: 100%;
|
|
border-right: none;
|
|
border-bottom: 1px solid var(--bs-border-color);
|
|
}
|
|
}
|
|
|
|
.app-content {
|
|
margin-left: 215px;
|
|
background: rgb(248, 249, 250);
|
|
min-height: calc(100vh - 57px);
|
|
}
|
|
@media (max-width: 991.98px) {
|
|
.app-content {
|
|
margin-left: 0;
|
|
}
|
|
}
|
|
|
|
.app-header {
|
|
background: white;
|
|
border-bottom: 1px solid var(--bs-border-color);
|
|
height: 57px;
|
|
display: flex;
|
|
align-items: center;
|
|
position: sticky;
|
|
top: 0;
|
|
z-index: 999;
|
|
}
|
|
.app-header .user-profile-icon-link {
|
|
text-decoration: none;
|
|
display: block;
|
|
}
|
|
.app-header .user-profile-icon {
|
|
width: 32px;
|
|
height: 32px;
|
|
border-radius: 50%;
|
|
background: #e9ecef;
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: center;
|
|
}
|
|
.app-header .user-profile-icon i {
|
|
font-size: 1.25rem;
|
|
color: #6c757d;
|
|
}
|
|
.app-header .user-profile-icon--image {
|
|
border: 1px solid #000;
|
|
object-fit: cover;
|
|
}
|
|
.app-header .form-control {
|
|
min-width: 200px;
|
|
}
|
|
|
|
.page-content {
|
|
padding-top: 30px;
|
|
padding-left: 2rem;
|
|
padding-right: 2rem;
|
|
padding-bottom: 2rem;
|
|
}
|
|
@media (max-width: 991.98px) {
|
|
.page-content {
|
|
padding: 1rem;
|
|
}
|
|
}
|
|
|
|
.card {
|
|
background-color: white;
|
|
}
|
|
|
|
.dashboard-content .activity-icon {
|
|
width: 36px;
|
|
height: 36px;
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: center;
|
|
flex-shrink: 0;
|
|
}
|
|
.dashboard-content .card.bg-primary .card-title,
|
|
.dashboard-content .card.bg-success .card-title,
|
|
.dashboard-content .card.bg-warning .card-title,
|
|
.dashboard-content .card.bg-info .card-title,
|
|
.dashboard-content .card.bg-danger .card-title {
|
|
font-size: 0.9rem;
|
|
text-transform: uppercase;
|
|
letter-spacing: 0.5px;
|
|
opacity: 0.9;
|
|
}
|
|
.dashboard-content .card.bg-primary h2,
|
|
.dashboard-content .card.bg-success h2,
|
|
.dashboard-content .card.bg-warning h2,
|
|
.dashboard-content .card.bg-info h2,
|
|
.dashboard-content .card.bg-danger h2 {
|
|
font-weight: 600;
|
|
}
|
|
.dashboard-content .progress {
|
|
height: 0.5rem;
|
|
background-color: #e9ecef;
|
|
}
|
|
|
|
|
|
|
|
|
|
/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInJzeC90aGVtZS9xdWlsbC9xdWlsbF9jZG4uY3NzIiwic3RvcmFnZS9yc3gtdG1wL3Njc3NfY29tcGlsZV82OTE0ZTBiYzMxMDY1L2FwcC5zY3NzIiwiYXBwL1JTcGFkZS9JbnRlZ3JhdGlvbnMvSnFodG1sL0pxaHRtbF9JbnRlZ3JhdGlvbi5zY3NzIiwicnN4L3RoZW1lL2NvbXBvbmVudHMvZGF0YWdyaWQvZGF0YWdyaWRfYWJzdHJhY3Quc2NzcyIsInJzeC90aGVtZS9jb21wb25lbnRzL19hcmNoaXZlZC91bmZpbmlzaGVkL2NoYXJ0X2NvbXBvbmVudC5zY3NzIiwicnN4L3RoZW1lL2NvbXBvbmVudHMvX2FyY2hpdmVkL3VuZmluaXNoZWQvaWNvbl9idXR0b24uc2NzcyIsInJzeC90aGVtZS9jb21wb25lbnRzL19hcmNoaXZlZC91bmZpbmlzaGVkL2ljb24uc2NzcyIsInJzeC90aGVtZS9jb21wb25lbnRzL21vZGFsL3JzeF9tb2RhbC5zY3NzIiwicnN4L3RoZW1lL2NvbXBvbmVudHMvZm9ybXMvcGluX3ZlcmlmaWNhdGlvbl9mb3JtLnNjc3MiLCJyc3gvdGhlbWUvbGF5b3V0LnNjc3MiLCJyc3gvYXBwL2Zyb250ZW5kL3NldHRpbmdzL2Zyb250ZW5kX3NldHRpbmdzLnNjc3MiLCJyc3gvYXBwL2Zyb250ZW5kL2ludm9pY2VzL2Zyb250ZW5kX2ludm9pY2VzX2FkZC5zY3NzIiwicnN4L2FwcC9mcm9udGVuZC9hY2NvdW50L2Zyb250ZW5kX2FjY291bnQuc2NzcyIsInJzeC9hcHAvZnJvbnRlbmQvZnJvbnRlbmQuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQTtBQUNBO0FBQ0E7OztBQ0NBO0FDSEE7Ozs7QURLQTtBQUVBO0FBRUE7QUFFQTtBRVhBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBa0JBO0FBQ0k7O0FBREo7QUFNSTs7QUFDQTs7OztBQUlJOzs7O0FBWFI7QUFpQkk7O0FBS0k7Ozs7Ozs7O0FBU0k7Ozs7Ozs7O0FBUUk7Ozs7QUFLQTs7Ozs7O0FBU1I7Ozs7QUFZWTtBQUFBO0FBQUE7Ozs7QUFTUjs7O0FBSUE7Ozs7QUFLSTs7Ozs7OztBQU9JOzs7O0FBT0o7OztBQUtBOzs7QUFHSTs7Ozs7O0FBTUk7Ozs7QUFVaEI7QUFBQTs7OztBQXpIUjtBQWlJSTs7QUFDQTs7OztBQUlJOzs7O0FBdElSO0FBNElJOztBQUNBOzs7Ozs7Ozs7Ozs7Ozs7OztBQTdJSjtBQW1LSTs7QUFDQTs7Ozs7Ozs7Ozs7O0FGektKO0FBRUE7QUFFQTtBQUVBO0FBRUE7QUFFQTtBQUVBO0FBRUE7QUFFQTtBQUVBO0FBRUE7QUFFQTtBQUVBO0FBRUE7QUFFQTtBQUVBO0FBRUE7QUFFQTtBQUVBO0FBRUE7QUFFQTtBQUVBO0FBRUE7QUFFQTtBQUVBO0FBRUE7QUFFQTtBQUVBO0FBRUE7QUFFQTtBQUVBO0FBRUE7QUFFQTtBQUVBO0FHOUVFOzs7O0FIZ0ZGO0FBRUE7QUFFQTtBQUVBO0FBRUE7QUFFQTtBQUVBO0FBRUE7QUFFQTtBQUVBO0FBRUE7QUFFQTtBQUVBO0FBRUE7QUFFQTtBQUVBO0FBRUE7QUFFQTtBQUVBO0FBRUE7QUFFQTtBQUVBO0FBRUE7QUFFQTtBQUVBO0FBRUE7QUFFQTtBQUVBO0FJdElBOzs7Ozs7QUFVRTs7Ozs7QUo4SEY7QUFFQTtBQUVBO0FBRUE7QUFFQTtBQUVBO0FLbEpBOzs7Ozs7QUFPRTs7OztBQUtBOzs7O0FBS0E7Ozs7QUFLQTs7OztBQUtBOzs7OztBTHlIRjtBQUVBO0FBRUE7QUFFQTtBQUVBO0FBRUE7QUFFQTtBQUVBO0FBRUE7QUFFQTtBQUVBO0FBRUE7QUFFQTtBQUVBO0FBRUE7QUFFQTtBQUVBO0FBRUE7QUFFQTtBQUVBO0FBRUE7QUFFQTtBQUVBO0FBRUE7QUFFQTtBQUVBO0FBRUE7QUFFQTtBQUVBO0FBRUE7QUFFQTtBQUVBO0FBRUE7QUFFQTtBQUVBO0FBRUE7QUFFQTtBQUVBO0FBRUE7QUFFQTtBQUVBO0FBRUE7QUFFQTtBQUVBO0FBRUE7QUFFQTtBQUVBO0FBRUE7QUFFQTtBQUVBO0FBRUE7QUFFQTtBQUVBO0FBRUE7QUFFQTtBQUVBO0FBRUE7QUFFQTtBQUVBO0FBRUE7QUFFQTtBQUVBO0FBRUE7QUFFQTtBQUVBO0FBRUE7QUFFQTtBQUVBO0FBRUE7QUFFQTtBQUVBO0FBRUE7QUFFQTtBQUVBO0FBRUE7QUFFQTtBQUVBO0FBRUE7QUFFQTtBQUVBO0FBRUE7QUFFQTtBQUVBO0FBRUE7QUFFQTtBQUVBO0FBRUE7QUFFQTtBQUVBO0FBRUE7QUFFQTtBQUVBO0FBRUE7QUFFQTtBQUVBO0FBRUE7QUFFQTtBQUVBO0FBRUE7QUFFQTtBTTNWQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBVUk7Ozs7OztBQU1JOzs7QUFNSjs7Ozs7O0FBUUE7Ozs7Ozs7QUFTQTs7Ozs7O0FBTUk7Ozs7QUFLQTs7OztBQU9KOzs7Ozs7Ozs7QUFVSTs7OztBQU1BOzs7O0FBSUk7Ozs7OztBQU9JOzs7QUFLSjs7O0FBT1I7Ozs7Ozs7O0FBUUk7Ozs7QUFRSjs7OztBQU9KOzs7Ozs7Ozs7QUFVSTs7Ozs7QUFPSjs7OztBQUtBOzs7Ozs7Ozs7Ozs7Ozs7OztBQTBCUTs7O0FBSUE7Ozs7OztBQU9BOzs7O0FOMktSO0FBRUE7QU83VlE7Ozs7Ozs7Ozs7QUFVSTs7Ozs7QUFNQTs7O0FBTVI7Ozs7QVB5VUo7QUFFQTtBUTlWSTs7OztBQU1BOzs7OztBUjBWSjtBQUVBO0FBRUE7QUFFQTtBQUVBO0FBRUE7QUFFQTtBQUVBO0FBRUE7QUFFQTtBQUVBO0FBRUE7QUFFQTtBQUVBO0FBRUE7QUFFQTtBQUVBO0FBRUE7QUFFQTtBQUVBO0FBRUE7QUFFQTtBQUVBO0FBRUE7QVNuWkE7QUFBQTtBQUFBO0FBQUE7QUFPSTs7Ozs7QUFLSTs7O0FBSUE7Ozs7O0FBTUE7Ozs7OztBQVFJOzs7O0FBS0E7OztBQUlBOzs7Ozs7QUFVUjs7O0FBS0E7Ozs7O0FBS0k7OztBQU1KOzs7OztBQUtJOzs7OztBQUtJO0FBQUE7Ozs7QUFPSjs7O0FBTUo7Ozs7QUFLQTs7OztBQU9JOzs7QUFHSTs7O0FBS0o7OztBQU9BOzs7Ozs7Ozs7O0FBVUk7Ozs7O0FBVUo7Ozs7QUFLQTs7Ozs7O0FBU0o7Ozs7Ozs7O0FBV0k7Ozs7QUFJSTs7O0FBSUE7Ozs7QUFLQTs7Ozs7QUFTUjs7Ozs7Ozs7Ozs7QVQrTko7QUFFQTtBQUVBO0FBRUE7QUFFQTtBQUVBO0FBRUE7QUFFQTtBQUVBO0FBRUE7QUFFQTtBQUVBO0FBRUE7QUFFQTtBQUVBO0FBRUE7QUFFQTtBQUVBO0FBRUE7QUFFQTtBQUVBO0FBRUE7QUFFQTtBQUVBO0FBRUE7QUFFQTtBQUVBO0FBRUE7QUFFQTtBQUVBO0FBRUE7QUFFQTtBQUVBO0FBRUE7QUFFQTtBQUVBO0FBRUE7QUFFQTtBQUVBO0FBRUE7QUFFQTtBQUVBO0FBRUE7QUFFQTtBVXplSTs7Ozs7Ozs7QUFRSTs7Ozs7QUFLSjs7Ozs7Ozs7QUFRSTs7Ozs7O0FBS0E7Ozs7O0FBTUE7Ozs7QUFNSjs7O0FBT1E7OztBQUlBOzs7QUFHSTs7OztBQU1KOzs7QUFJQTs7OztBQUtBOzs7QUFPUjs7O0FBR0k7Ozs7QUFJSTs7O0FBSUE7OztBQUtKOzs7O0FBT0o7Ozs7Ozs7Ozs7OztBVjBZSjtBQUVBO0FBRUE7QUFFQTtBQUVBO0FBRUE7QUFFQTtBQUVBO0FBRUE7QUFFQTtBQUVBO0FBRUE7QVduZ0JBO0FBQUE7QUFBQTtBQUdBOzs7QUFLUTs7O0FBR0k7OztBQU9SOzs7QUFHSTs7O0FBT0E7Ozs7QUFLQTs7Ozs7Ozs7O0FBYUE7Ozs7O0FBTUE7OztBQU1KOzs7O0FBSUk7Ozs7O0FBUUo7Ozs7QUFJSTs7O0FBT0E7OztBQUdJOzs7QUFLSjs7OztBQWVJOzs7QUFPUjs7Ozs7Ozs7O0FYc1pKO0FBRUE7QVl2ZEE7Ozs7O0FBTUE7Ozs7Ozs7Ozs7O0FBYUk7Ozs7Ozs7O0FBUUk7Ozs7OztBQU1JOzs7QUFPUjs7Ozs7QUFNSTs7O0FBR0k7OztBQUtKOzs7Ozs7Ozs7QUFVQTs7Ozs7Ozs7OztBQVlJOzs7Ozs7QUFPQTs7OztBQUtBOzs7OztBQUtJOzs7QUFRWjs7Ozs7QUFLSTs7Ozs7Ozs7O0FBV0k7Ozs7OztBQU9BOzs7O0FBUVI7Ozs7Ozs7OztBQVNKOzs7OztBQUtJOzs7Ozs7QUFNSjs7Ozs7Ozs7OztBQVVJOzs7O0FBS0E7Ozs7Ozs7OztBQVNJOzs7O0FBS0E7Ozs7QUFNSjs7OztBQU1KOzs7Ozs7QUFPSTs7Ozs7O0FBTUo7Ozs7QUFRSTs7Ozs7Ozs7QUFlSTtBQUFBO0FBQUE7QUFBQTtBQUFBOzs7Ozs7QUFPQTtBQUFBO0FBQUE7QUFBQTtBQUFBOzs7QUFNSjs7Ozs7QVp1T0oiLCJmaWxlIjoiY3NzX2J1bmRsZV9Gcm9udGVuZF9CdW5kbGUuY3NzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXNDb250ZW50IjpbIi8qIFF1aWxsIEVkaXRvciAtIENETiBJbXBvcnQgKi9cbkBpbXBvcnQgdXJsKCdodHRwczovL2Nkbi5qc2RlbGl2ci5uZXQvbnBtL3F1aWxsQDIuMC4yL2Rpc3QvcXVpbGwuc25vdy5jc3MnKTtcbiIsIi8vIE1hc3RlciBTQ1NTIGZpbGUgLSBHZW5lcmF0ZWQgYnkgU2Nzc1Byb2Nlc3NvclxuLy8gVGhpcyBmaWxlIGltcG9ydHMgYWxsIFNDU1MgZmlsZXMgaW4gdGhlIGJ1bmRsZSBpbiBvcmRlclxuXG4vKiA9PT09PT09PT09PT0gU1RBUlQ6IGFwcC9SU3BhZGUvSW50ZWdyYXRpb25zL0pxaHRtbC9KcWh0bWxfSW50ZWdyYXRpb24uc2NzcyA9PT09PT09PT09PT0gKi9cbkBpbXBvcnQgXCJcXC92YXJcXC93d3dcXC9odG1sXFwvc3lzdGVtXFwvYXBwXFwvUlNwYWRlXFwvSW50ZWdyYXRpb25zXFwvSnFodG1sXFwvSnFodG1sX0ludGVncmF0aW9uLnNjc3NcIjtcbi8qID09PT09PT09PT09PSBFTkQ6IGFwcC9SU3BhZGUvSW50ZWdyYXRpb25zL0pxaHRtbC9KcWh0bWxfSW50ZWdyYXRpb24uc2NzcyA9PT09PT09PT09PT0gKi9cblxuLyogPT09PT09PT09PT09IFNUQVJUOiByc3gvdGhlbWUvdmFyaWFibGVzLnNjc3MgPT09PT09PT09PT09ICovXG5AaW1wb3J0IFwiXFwvdmFyXFwvd3d3XFwvaHRtbFxcL3N5c3RlbVxcL3JzeFxcL3RoZW1lXFwvdmFyaWFibGVzLnNjc3NcIjtcbi8qID09PT09PT09PT09PSBFTkQ6IHJzeC90aGVtZS92YXJpYWJsZXMuc2NzcyA9PT09PT09PT09PT0gKi9cblxuLyogPT09PT09PT09PT09IFNUQVJUOiByc3gvdGhlbWUvY29tcG9uZW50cy9kYXRhZ3JpZC9kYXRhZ3JpZF9hYnN0cmFjdC5zY3NzID09PT09PT09PT09PSAqL1xuQGltcG9ydCBcIlxcL3ZhclxcL3d3d1xcL2h0bWxcXC9zeXN0ZW1cXC9yc3hcXC90aGVtZVxcL2NvbXBvbmVudHNcXC9kYXRhZ3JpZFxcL2RhdGFncmlkX2Fic3RyYWN0LnNjc3NcIjtcbi8qID09PT09PT09PT09PSBFTkQ6IHJzeC90aGVtZS9jb21wb25lbnRzL2RhdGFncmlkL2RhdGFncmlkX2Fic3RyYWN0LnNjc3MgPT09PT09PT09PT09ICovXG5cbi8qID09PT09PT09PT09PSBTVEFSVDogcnN4L3RoZW1lL2NvbXBvbmVudHMvX2FyY2hpdmVkL3VuZmluaXNoZWQvYWN0aXZpdHlfZmVlZC5zY3NzID09PT09PT09PT09PSAqL1xuQGltcG9ydCBcIlxcL3ZhclxcL3d3d1xcL2h0bWxcXC9zeXN0ZW1cXC9yc3hcXC90aGVtZVxcL2NvbXBvbmVudHNcXC9fYXJjaGl2ZWRcXC91bmZpbmlzaGVkXFwvYWN0aXZpdHlfZmVlZC5zY3NzXCI7XG4vKiA9PT09PT09PT09PT0gRU5EOiByc3gvdGhlbWUvY29tcG9uZW50cy9fYXJjaGl2ZWQvdW5maW5pc2hlZC9hY3Rpdml0eV9mZWVkLnNjc3MgPT09PT09PT09PT09ICovXG5cbi8qID09PT09PT09PT09PSBTVEFSVDogcnN4L3RoZW1lL2NvbXBvbmVudHMvX2FyY2hpdmVkL3VuZmluaXNoZWQvYWN0b3JfcmVmZXJlbmNlLnNjc3MgPT09PT09PT09PT09ICovXG5AaW1wb3J0IFwiXFwvdmFyXFwvd3d3XFwvaHRtbFxcL3N5c3RlbVxcL3JzeFxcL3RoZW1lXFwvY29tcG9uZW50c1xcL19hcmNoaXZlZFxcL3VuZmluaXNoZWRcXC9hY3Rvcl9yZWZlcmVuY2Uuc2Nzc1wiO1xuLyogPT09PT09PT09PT09IEVORDogcnN4L3RoZW1lL2NvbXBvbmVudHMvX2FyY2hpdmVkL3VuZmluaXNoZWQvYWN0b3JfcmVmZXJlbmNlLnNjc3MgPT09PT09PT09PT09ICovXG5cbi8qID09PT09PT09PT09PSBTVEFSVDogcnN4L3RoZW1lL2NvbXBvbmVudHMvX2FyY2hpdmVkL3VuZmluaXNoZWQvYWR2YW5jZWRfc2VhcmNoX3BhbmVsLnNjc3MgPT09PT09PT09PT09ICovXG5AaW1wb3J0IFwiXFwvdmFyXFwvd3d3XFwvaHRtbFxcL3N5c3RlbVxcL3JzeFxcL3RoZW1lXFwvY29tcG9uZW50c1xcL19hcmNoaXZlZFxcL3VuZmluaXNoZWRcXC9hZHZhbmNlZF9zZWFyY2hfcGFuZWwuc2Nzc1wiO1xuLyogPT09PT09PT09PT09IEVORDogcnN4L3RoZW1lL2NvbXBvbmVudHMvX2FyY2hpdmVkL3VuZmluaXNoZWQvYWR2YW5jZWRfc2VhcmNoX3BhbmVsLnNjc3MgPT09PT09PT09PT09ICovXG5cbi8qID09PT09PT09PT09PSBTVEFSVDogcnN4L3RoZW1lL2NvbXBvbmVudHMvX2FyY2hpdmVkL3VuZmluaXNoZWQvYWxlcnRfYmFubmVyLnNjc3MgPT09PT09PT09PT09ICovXG5AaW1wb3J0IFwiXFwvdmFyXFwvd3d3XFwvaHRtbFxcL3N5c3RlbVxcL3JzeFxcL3RoZW1lXFwvY29tcG9uZW50c1xcL19hcmNoaXZlZFxcL3VuZmluaXNoZWRcXC9hbGVydF9iYW5uZXIuc2Nzc1wiO1xuLyogPT09PT09PT09PT09IEVORDogcnN4L3RoZW1lL2NvbXBvbmVudHMvX2FyY2hpdmVkL3VuZmluaXNoZWQvYWxlcnRfYmFubmVyLnNjc3MgPT09PT09PT09PT09ICovXG5cbi8qID09PT09PT09PT09PSBTVEFSVDogcnN4L3RoZW1lL2NvbXBvbmVudHMvX2FyY2hpdmVkL3VuZmluaXNoZWQvYXZhdGFyLnNjc3MgPT09PT09PT09PT09ICovXG5AaW1wb3J0IFwiXFwvdmFyXFwvd3d3XFwvaHRtbFxcL3N5c3RlbVxcL3JzeFxcL3RoZW1lXFwvY29tcG9uZW50c1xcL19hcmNoaXZlZFxcL3VuZmluaXNoZWRcXC9hdmF0YXIuc2Nzc1wiO1xuLyogPT09PT09PT09PT09IEVORDogcnN4L3RoZW1lL2NvbXBvbmVudHMvX2FyY2hpdmVkL3VuZmluaXNoZWQvYXZhdGFyLnNjc3MgPT09PT09PT09PT09ICovXG5cbi8qID09PT09PT09PT09PSBTVEFSVDogcnN4L3RoZW1lL2NvbXBvbmVudHMvX2FyY2hpdmVkL3VuZmluaXNoZWQvYmxvY2txdW90ZS5zY3NzID09PT09PT09PT09PSAqL1xuQGltcG9ydCBcIlxcL3ZhclxcL3d3d1xcL2h0bWxcXC9zeXN0ZW1cXC9yc3hcXC90aGVtZVxcL2NvbXBvbmVudHNcXC9fYXJjaGl2ZWRcXC91bmZpbmlzaGVkXFwvYmxvY2txdW90ZS5zY3NzXCI7XG4vKiA9PT09PT09PT09PT0gRU5EOiByc3gvdGhlbWUvY29tcG9uZW50cy9fYXJjaGl2ZWQvdW5maW5pc2hlZC9ibG9ja3F1b3RlLnNjc3MgPT09PT09PT09PT09ICovXG5cbi8qID09PT09PT09PT09PSBTVEFSVDogcnN4L3RoZW1lL2NvbXBvbmVudHMvX2FyY2hpdmVkL3VuZmluaXNoZWQvYnJlYWRjcnVtYnMuc2NzcyA9PT09PT09PT09PT0gKi9cbkBpbXBvcnQgXCJcXC92YXJcXC93d3dcXC9odG1sXFwvc3lzdGVtXFwvcnN4XFwvdGhlbWVcXC9jb21wb25lbnRzXFwvX2FyY2hpdmVkXFwvdW5maW5pc2hlZFxcL2JyZWFkY3J1bWJzLnNjc3NcIjtcbi8qID09PT09PT09PT09PSBFTkQ6IHJzeC90aGVtZS9jb21wb25lbnRzL19hcmNoaXZlZC91bmZpbmlzaGVkL2JyZWFkY3J1bWJzLnNjc3MgPT09PT09PT09PT09ICovXG5cbi8qID09PT09PT09PT09PSBTVEFSVDogcnN4L3RoZW1lL2NvbXBvbmVudHMvX2FyY2hpdmVkL3VuZmluaXNoZWQvYnVsa19hY3Rpb25fYmFyLnNjc3MgPT09PT09PT09PT09ICovXG5AaW1wb3J0IFwiXFwvdmFyXFwvd3d3XFwvaHRtbFxcL3N5c3RlbVxcL3JzeFxcL3RoZW1lXFwvY29tcG9uZW50c1xcL19hcmNoaXZlZFxcL3VuZmluaXNoZWRcXC9idWxrX2FjdGlvbl9iYXIuc2Nzc1wiO1xuLyogPT09PT09PT09PT09IEVORDogcnN4L3RoZW1lL2NvbXBvbmVudHMvX2FyY2hpdmVkL3VuZmluaXNoZWQvYnVsa19hY3Rpb25fYmFyLnNjc3MgPT09PT09PT09PT09ICovXG5cbi8qID09PT09PT09PT09PSBTVEFSVDogcnN4L3RoZW1lL2NvbXBvbmVudHMvX2FyY2hpdmVkL3VuZmluaXNoZWQvYnVsa19zZWxlY3Rpb24uc2NzcyA9PT09PT09PT09PT0gKi9cbkBpbXBvcnQgXCJcXC92YXJcXC93d3dcXC9odG1sXFwvc3lzdGVtXFwvcnN4XFwvdGhlbWVcXC9jb21wb25lbnRzXFwvX2FyY2hpdmVkXFwvdW5maW5pc2hlZFxcL2J1bGtfc2VsZWN0aW9uLnNjc3NcIjtcbi8qID09PT09PT09PT09PSBFTkQ6IHJzeC90aGVtZS9jb21wb25lbnRzL19hcmNoaXZlZC91bmZpbmlzaGVkL2J1bGtfc2VsZWN0aW9uLnNjc3MgPT09PT09PT09PT09ICovXG5cbi8qID09PT09PT09PT09PSBTVEFSVDogcnN4L3RoZW1lL2NvbXBvbmVudHMvX2FyY2hpdmVkL3VuZmluaXNoZWQvYnV0dG9uX2dyb3VwLnNjc3MgPT09PT09PT09PT09ICovXG5AaW1wb3J0IFwiXFwvdmFyXFwvd3d3XFwvaHRtbFxcL3N5c3RlbVxcL3JzeFxcL3RoZW1lXFwvY29tcG9uZW50c1xcL19hcmNoaXZlZFxcL3VuZmluaXNoZWRcXC9idXR0b25fZ3JvdXAuc2Nzc1wiO1xuLyogPT09PT09PT09PT09IEVORDogcnN4L3RoZW1lL2NvbXBvbmVudHMvX2FyY2hpdmVkL3VuZmluaXNoZWQvYnV0dG9uX2dyb3VwLnNjc3MgPT09PT09PT09PT09ICovXG5cbi8qID09PT09PT09PT09PSBTVEFSVDogcnN4L3RoZW1lL2NvbXBvbmVudHMvX2FyY2hpdmVkL3VuZmluaXNoZWQvYnV0dG9uX3ByaW1hcnkuc2NzcyA9PT09PT09PT09PT0gKi9cbkBpbXBvcnQgXCJcXC92YXJcXC93d3dcXC9odG1sXFwvc3lzdGVtXFwvcnN4XFwvdGhlbWVcXC9jb21wb25lbnRzXFwvX2FyY2hpdmVkXFwvdW5maW5pc2hlZFxcL2J1dHRvbl9wcmltYXJ5LnNjc3NcIjtcbi8qID09PT09PT09PT09PSBFTkQ6IHJzeC90aGVtZS9jb21wb25lbnRzL19hcmNoaXZlZC91bmZpbmlzaGVkL2J1dHRvbl9wcmltYXJ5LnNjc3MgPT09PT09PT09PT09ICovXG5cbi8qID09PT09PT09PT09PSBTVEFSVDogcnN4L3RoZW1lL2NvbXBvbmVudHMvX2FyY2hpdmVkL3VuZmluaXNoZWQvYnV0dG9uX3NlY29uZGFyeS5zY3NzID09PT09PT09PT09PSAqL1xuQGltcG9ydCBcIlxcL3ZhclxcL3d3d1xcL2h0bWxcXC9zeXN0ZW1cXC9yc3hcXC90aGVtZVxcL2NvbXBvbmVudHNcXC9fYXJjaGl2ZWRcXC91bmZpbmlzaGVkXFwvYnV0dG9uX3NlY29uZGFyeS5zY3NzXCI7XG4vKiA9PT09PT09PT09PT0gRU5EOiByc3gvdGhlbWUvY29tcG9uZW50cy9fYXJjaGl2ZWQvdW5maW5pc2hlZC9idXR0b25fc2Vjb25kYXJ5LnNjc3MgPT09PT09PT09PT09ICovXG5cbi8qID09PT09PT09PT09PSBTVEFSVDogcnN4L3RoZW1lL2NvbXBvbmVudHMvX2FyY2hpdmVkL3VuZmluaXNoZWQvYnV0dG9uLnNjc3MgPT09PT09PT09PT09ICovXG5AaW1wb3J0IFwiXFwvdmFyXFwvd3d3XFwvaHRtbFxcL3N5c3RlbVxcL3JzeFxcL3RoZW1lXFwvY29tcG9uZW50c1xcL19hcmNoaXZlZFxcL3VuZmluaXNoZWRcXC9idXR0b24uc2Nzc1wiO1xuLyogPT09PT09PT09PT09IEVORDogcnN4L3RoZW1lL2NvbXBvbmVudHMvX2FyY2hpdmVkL3VuZmluaXNoZWQvYnV0dG9uLnNjc3MgPT09PT09PT09PT09ICovXG5cbi8qID09PT09PT09PT09PSBTVEFSVDogcnN4L3RoZW1lL2NvbXBvbmVudHMvX2FyY2hpdmVkL3VuZmluaXNoZWQvY2FsZW5kYXJfZXZlbnQuc2NzcyA9PT09PT09PT09PT0gKi9cbkBpbXBvcnQgXCJcXC92YXJcXC93d3dcXC9odG1sXFwvc3lzdGVtXFwvcnN4XFwvdGhlbWVcXC9jb21wb25lbnRzXFwvX2FyY2hpdmVkXFwvdW5maW5pc2hlZFxcL2NhbGVuZGFyX2V2ZW50LnNjc3NcIjtcbi8qID09PT09PT09PT09PSBFTkQ6IHJzeC90aGVtZS9jb21wb25lbnRzL19hcmNoaXZlZC91bmZpbmlzaGVkL2NhbGVuZGFyX2V2ZW50LnNjc3MgPT09PT09PT09PT09ICovXG5cbi8qID09PT09PT09PT09PSBTVEFSVDogcnN4L3RoZW1lL2NvbXBvbmVudHMvX2FyY2hpdmVkL3VuZmluaXNoZWQvY2FsZW5kYXJfZ3JpZC5zY3NzID09PT09PT09PT09PSAqL1xuQGltcG9ydCBcIlxcL3ZhclxcL3d3d1xcL2h0bWxcXC9zeXN0ZW1cXC9yc3hcXC90aGVtZVxcL2NvbXBvbmVudHNcXC9fYXJjaGl2ZWRcXC91bmZpbmlzaGVkXFwvY2FsZW5kYXJfZ3JpZC5zY3NzXCI7XG4vKiA9PT09PT09PT09PT0gRU5EOiByc3gvdGhlbWUvY29tcG9uZW50cy9fYXJjaGl2ZWQvdW5maW5pc2hlZC9jYWxlbmRhcl9ncmlkLnNjc3MgPT09PT09PT09PT09ICovXG5cbi8qID09PT09PT09PT09PSBTVEFSVDogcnN4L3RoZW1lL2NvbXBvbmVudHMvX2FyY2hpdmVkL3VuZmluaXNoZWQvY2FyZC5zY3NzID09PT09PT09PT09PSAqL1xuQGltcG9ydCBcIlxcL3ZhclxcL3d3d1xcL2h0bWxcXC9zeXN0ZW1cXC9yc3hcXC90aGVtZVxcL2NvbXBvbmVudHNcXC9fYXJjaGl2ZWRcXC91bmZpbmlzaGVkXFwvY2FyZC5zY3NzXCI7XG4vKiA9PT09PT09PT09PT0gRU5EOiByc3gvdGhlbWUvY29tcG9uZW50cy9fYXJjaGl2ZWQvdW5maW5pc2hlZC9jYXJkLnNjc3MgPT09PT09PT09PT09ICovXG5cbi8qID09PT09PT09PT09PSBTVEFSVDogcnN4L3RoZW1lL2NvbXBvbmVudHMvX2FyY2hpdmVkL3VuZmluaXNoZWQvY2hhcnRfY29tcG9uZW50LnNjc3MgPT09PT09PT09PT09ICovXG5AaW1wb3J0IFwiXFwvdmFyXFwvd3d3XFwvaHRtbFxcL3N5c3RlbVxcL3JzeFxcL3RoZW1lXFwvY29tcG9uZW50c1xcL19hcmNoaXZlZFxcL3VuZmluaXNoZWRcXC9jaGFydF9jb21wb25lbnQuc2Nzc1wiO1xuLyogPT09PT09PT09PT09IEVORDogcnN4L3RoZW1lL2NvbXBvbmVudHMvX2FyY2hpdmVkL3VuZmluaXNoZWQvY2hhcnRfY29tcG9uZW50LnNjc3MgPT09PT09PT09PT09ICovXG5cbi8qID09PT09PT09PT09PSBTVEFSVDogcnN4L3RoZW1lL2NvbXBvbmVudHMvX2FyY2hpdmVkL3VuZmluaXNoZWQvY2hlY2tib3guc2NzcyA9PT09PT09PT09PT0gKi9cbkBpbXBvcnQgXCJcXC92YXJcXC93d3dcXC9odG1sXFwvc3lzdGVtXFwvcnN4XFwvdGhlbWVcXC9jb21wb25lbnRzXFwvX2FyY2hpdmVkXFwvdW5maW5pc2hlZFxcL2NoZWNrYm94LnNjc3NcIjtcbi8qID09PT09PT09PT09PSBFTkQ6IHJzeC90aGVtZS9jb21wb25lbnRzL19hcmNoaXZlZC91bmZpbmlzaGVkL2NoZWNrYm94LnNjc3MgPT09PT09PT09PT09ICovXG5cbi8qID09PT09PT09PT09PSBTVEFSVDogcnN4L3RoZW1lL2NvbXBvbmVudHMvX2FyY2hpdmVkL3VuZmluaXNoZWQvY29kZV9ibG9jay5zY3NzID09PT09PT09PT09PSAqL1xuQGltcG9ydCBcIlxcL3ZhclxcL3d3d1xcL2h0bWxcXC9zeXN0ZW1cXC9yc3hcXC90aGVtZVxcL2NvbXBvbmVudHNcXC9fYXJjaGl2ZWRcXC91bmZpbmlzaGVkXFwvY29kZV9ibG9jay5zY3NzXCI7XG4vKiA9PT09PT09PT09PT0gRU5EOiByc3gvdGhlbWUvY29tcG9uZW50cy9fYXJjaGl2ZWQvdW5maW5pc2hlZC9jb2RlX2Jsb2NrLnNjc3MgPT09PT09PT09PT09ICovXG5cbi8qID09PT09PT09PT09PSBTVEFSVDogcnN4L3RoZW1lL2NvbXBvbmVudHMvX2FyY2hpdmVkL3VuZmluaXNoZWQvY29sdW1uX3Zpc2liaWxpdHlfdG9nZ2xlLnNjc3MgPT09PT09PT09PT09ICovXG5AaW1wb3J0IFwiXFwvdmFyXFwvd3d3XFwvaHRtbFxcL3N5c3RlbVxcL3JzeFxcL3RoZW1lXFwvY29tcG9uZW50c1xcL19hcmNoaXZlZFxcL3VuZmluaXNoZWRcXC9jb2x1bW5fdmlzaWJpbGl0eV90b2dnbGUuc2Nzc1wiO1xuLyogPT09PT09PT09PT09IEVORDogcnN4L3RoZW1lL2NvbXBvbmVudHMvX2FyY2hpdmVkL3VuZmluaXNoZWQvY29sdW1uX3Zpc2liaWxpdHlfdG9nZ2xlLnNjc3MgPT09PT09PT09PT09ICovXG5cbi8qID09PT09PT09PT09PSBTVEFSVDogcnN4L3RoZW1lL2NvbXBvbmVudHMvX2FyY2hpdmVkL3VuZmluaXNoZWQvY29tbWVudF90aHJlYWQuc2NzcyA9PT09PT09PT09PT0gKi9cbkBpbXBvcnQgXCJcXC92YXJcXC93d3dcXC9odG1sXFwvc3lzdGVtXFwvcnN4XFwvdGhlbWVcXC9jb21wb25lbnRzXFwvX2FyY2hpdmVkXFwvdW5maW5pc2hlZFxcL2NvbW1lbnRfdGhyZWFkLnNjc3NcIjtcbi8qID09PT09PT09PT09PSBFTkQ6IHJzeC90aGVtZS9jb21wb25lbnRzL19hcmNoaXZlZC91bmZpbmlzaGVkL2NvbW1lbnRfdGhyZWFkLnNjc3MgPT09PT09PT09PT09ICovXG5cbi8qID09PT09PT09PT09PSBTVEFSVDogcnN4L3RoZW1lL2NvbXBvbmVudHMvX2FyY2hpdmVkL3VuZmluaXNoZWQvZGF0ZV9waWNrZXIuc2NzcyA9PT09PT09PT09PT0gKi9cbkBpbXBvcnQgXCJcXC92YXJcXC93d3dcXC9odG1sXFwvc3lzdGVtXFwvcnN4XFwvdGhlbWVcXC9jb21wb25lbnRzXFwvX2FyY2hpdmVkXFwvdW5maW5pc2hlZFxcL2RhdGVfcGlja2VyLnNjc3NcIjtcbi8qID09PT09PT09PT09PSBFTkQ6IHJzeC90aGVtZS9jb21wb25lbnRzL19hcmNoaXZlZC91bmZpbmlzaGVkL2RhdGVfcGlja2VyLnNjc3MgPT09PT09PT09PT09ICovXG5cbi8qID09PT09PT09PT09PSBTVEFSVDogcnN4L3RoZW1lL2NvbXBvbmVudHMvX2FyY2hpdmVkL3VuZmluaXNoZWQvZHJvcGRvd25fbWVudS5zY3NzID09PT09PT09PT09PSAqL1xuQGltcG9ydCBcIlxcL3ZhclxcL3d3d1xcL2h0bWxcXC9zeXN0ZW1cXC9yc3hcXC90aGVtZVxcL2NvbXBvbmVudHNcXC9fYXJjaGl2ZWRcXC91bmZpbmlzaGVkXFwvZHJvcGRvd25fbWVudS5zY3NzXCI7XG4vKiA9PT09PT09PT09PT0gRU5EOiByc3gvdGhlbWUvY29tcG9uZW50cy9fYXJjaGl2ZWQvdW5maW5pc2hlZC9kcm9wZG93bl9tZW51LnNjc3MgPT09PT09PT09PT09ICovXG5cbi8qID09PT09PT09PT09PSBTVEFSVDogcnN4L3RoZW1lL2NvbXBvbmVudHMvX2FyY2hpdmVkL3VuZmluaXNoZWQvZW1wdHlfc3RhdGUuc2NzcyA9PT09PT09PT09PT0gKi9cbkBpbXBvcnQgXCJcXC92YXJcXC93d3dcXC9odG1sXFwvc3lzdGVtXFwvcnN4XFwvdGhlbWVcXC9jb21wb25lbnRzXFwvX2FyY2hpdmVkXFwvdW5maW5pc2hlZFxcL2VtcHR5X3N0YXRlLnNjc3NcIjtcbi8qID09PT09PT09PT09PSBFTkQ6IHJzeC90aGVtZS9jb21wb25lbnRzL19hcmNoaXZlZC91bmZpbmlzaGVkL2VtcHR5X3N0YXRlLnNjc3MgPT09PT09PT09PT09ICovXG5cbi8qID09PT09PT09PT09PSBTVEFSVDogcnN4L3RoZW1lL2NvbXBvbmVudHMvX2FyY2hpdmVkL3VuZmluaXNoZWQvZXhwb3J0X2J1dHRvbi5zY3NzID09PT09PT09PT09PSAqL1xuQGltcG9ydCBcIlxcL3ZhclxcL3d3d1xcL2h0bWxcXC9zeXN0ZW1cXC9yc3hcXC90aGVtZVxcL2NvbXBvbmVudHNcXC9fYXJjaGl2ZWRcXC91bmZpbmlzaGVkXFwvZXhwb3J0X2J1dHRvbi5zY3NzXCI7XG4vKiA9PT09PT09PT09PT0gRU5EOiByc3gvdGhlbWUvY29tcG9uZW50cy9fYXJjaGl2ZWQvdW5maW5pc2hlZC9leHBvcnRfYnV0dG9uLnNjc3MgPT09PT09PT09PT09ICovXG5cbi8qID09PT09PT09PT09PSBTVEFSVDogcnN4L3RoZW1lL2NvbXBvbmVudHMvX2FyY2hpdmVkL3VuZmluaXNoZWQvZmlsZV91cGxvYWQuc2NzcyA9PT09PT09PT09PT0gKi9cbkBpbXBvcnQgXCJcXC92YXJcXC93d3dcXC9odG1sXFwvc3lzdGVtXFwvcnN4XFwvdGhlbWVcXC9jb21wb25lbnRzXFwvX2FyY2hpdmVkXFwvdW5maW5pc2hlZFxcL2ZpbGVfdXBsb2FkLnNjc3NcIjtcbi8qID09PT09PT09PT09PSBFTkQ6IHJzeC90aGVtZS9jb21wb25lbnRzL19hcmNoaXZlZC91bmZpbmlzaGVkL2ZpbGVfdXBsb2FkLnNjc3MgPT09PT09PT09PT09ICovXG5cbi8qID09PT09PT09PT09PSBTVEFSVDogcnN4L3RoZW1lL2NvbXBvbmVudHMvX2FyY2hpdmVkL3VuZmluaXNoZWQvZmlsdGVyX2Jhci5zY3NzID09PT09PT09PT09PSAqL1xuQGltcG9ydCBcIlxcL3ZhclxcL3d3d1xcL2h0bWxcXC9zeXN0ZW1cXC9yc3hcXC90aGVtZVxcL2NvbXBvbmVudHNcXC9fYXJjaGl2ZWRcXC91bmZpbmlzaGVkXFwvZmlsdGVyX2Jhci5zY3NzXCI7XG4vKiA9PT09PT09PT09PT0gRU5EOiByc3gvdGhlbWUvY29tcG9uZW50cy9fYXJjaGl2ZWQvdW5maW5pc2hlZC9maWx0ZXJfYmFyLnNjc3MgPT09PT09PT09PT09ICovXG5cbi8qID09PT09PT09PT09PSBTVEFSVDogcnN4L3RoZW1lL2NvbXBvbmVudHMvX2FyY2hpdmVkL3VuZmluaXNoZWQvZm9ybV9maWVsZF9ncm91cC5zY3NzID09PT09PT09PT09PSAqL1xuQGltcG9ydCBcIlxcL3ZhclxcL3d3d1xcL2h0bWxcXC9zeXN0ZW1cXC9yc3hcXC90aGVtZVxcL2NvbXBvbmVudHNcXC9fYXJjaGl2ZWRcXC91bmZpbmlzaGVkXFwvZm9ybV9maWVsZF9ncm91cC5zY3NzXCI7XG4vKiA9PT09PT09PT09PT0gRU5EOiByc3gvdGhlbWUvY29tcG9uZW50cy9fYXJjaGl2ZWQvdW5maW5pc2hlZC9mb3JtX2ZpZWxkX2dyb3VwLnNjc3MgPT09PT09PT09PT09ICovXG5cbi8qID09PT09PT09PT09PSBTVEFSVDogcnN4L3RoZW1lL2NvbXBvbmVudHMvX2FyY2hpdmVkL3VuZmluaXNoZWQvZm9ybV92YWxpZGF0aW9uX21lc3NhZ2Uuc2NzcyA9PT09PT09PT09PT0gKi9cbkBpbXBvcnQgXCJcXC92YXJcXC93d3dcXC9odG1sXFwvc3lzdGVtXFwvcnN4XFwvdGhlbWVcXC9jb21wb25lbnRzXFwvX2FyY2hpdmVkXFwvdW5maW5pc2hlZFxcL2Zvcm1fdmFsaWRhdGlvbl9tZXNzYWdlLnNjc3NcIjtcbi8qID09PT09PT09PT09PSBFTkQ6IHJzeC90aGVtZS9jb21wb25lbnRzL19hcmNoaXZlZC91bmZpbmlzaGVkL2Zvcm1fdmFsaWRhdGlvbl9tZXNzYWdlLnNjc3MgPT09PT09PT09PT09ICovXG5cbi8qID09PT09PT09PT09PSBTVEFSVDogcnN4L3RoZW1lL2NvbXBvbmVudHMvX2FyY2hpdmVkL3VuZmluaXNoZWQvZ2FudHRfY2hhcnQuc2NzcyA9PT09PT09PT09PT0gKi9cbkBpbXBvcnQgXCJcXC92YXJcXC93d3dcXC9odG1sXFwvc3lzdGVtXFwvcnN4XFwvdGhlbWVcXC9jb21wb25lbnRzXFwvX2FyY2hpdmVkXFwvdW5maW5pc2hlZFxcL2dhbnR0X2NoYXJ0LnNjc3NcIjtcbi8qID09PT09PT09PT09PSBFTkQ6IHJzeC90aGVtZS9jb21wb25lbnRzL19hcmNoaXZlZC91bmZpbmlzaGVkL2dhbnR0X2NoYXJ0LnNjc3MgPT09PT09PT09PT09ICovXG5cbi8qID09PT09PT09PT09PSBTVEFSVDogcnN4L3RoZW1lL2NvbXBvbmVudHMvX2FyY2hpdmVkL3VuZmluaXNoZWQvaWNvbl9idXR0b24uc2NzcyA9PT09PT09PT09PT0gKi9cbkBpbXBvcnQgXCJcXC92YXJcXC93d3dcXC9odG1sXFwvc3lzdGVtXFwvcnN4XFwvdGhlbWVcXC9jb21wb25lbnRzXFwvX2FyY2hpdmVkXFwvdW5maW5pc2hlZFxcL2ljb25fYnV0dG9uLnNjc3NcIjtcbi8qID09PT09PT09PT09PSBFTkQ6IHJzeC90aGVtZS9jb21wb25lbnRzL19hcmNoaXZlZC91bmZpbmlzaGVkL2ljb25fYnV0dG9uLnNjc3MgPT09PT09PT09PT09ICovXG5cbi8qID09PT09PT09PT09PSBTVEFSVDogcnN4L3RoZW1lL2NvbXBvbmVudHMvX2FyY2hpdmVkL3VuZmluaXNoZWQvaWNvbl93aXRoX2xhYmVsLnNjc3MgPT09PT09PT09PT09ICovXG5AaW1wb3J0IFwiXFwvdmFyXFwvd3d3XFwvaHRtbFxcL3N5c3RlbVxcL3JzeFxcL3RoZW1lXFwvY29tcG9uZW50c1xcL19hcmNoaXZlZFxcL3VuZmluaXNoZWRcXC9pY29uX3dpdGhfbGFiZWwuc2Nzc1wiO1xuLyogPT09PT09PT09PT09IEVORDogcnN4L3RoZW1lL2NvbXBvbmVudHMvX2FyY2hpdmVkL3VuZmluaXNoZWQvaWNvbl93aXRoX2xhYmVsLnNjc3MgPT09PT09PT09PT09ICovXG5cbi8qID09PT09PT09PT09PSBTVEFSVDogcnN4L3RoZW1lL2NvbXBvbmVudHMvX2FyY2hpdmVkL3VuZmluaXNoZWQvaWNvbl93aXRoX3RleHQuc2NzcyA9PT09PT09PT09PT0gKi9cbkBpbXBvcnQgXCJcXC92YXJcXC93d3dcXC9odG1sXFwvc3lzdGVtXFwvcnN4XFwvdGhlbWVcXC9jb21wb25lbnRzXFwvX2FyY2hpdmVkXFwvdW5maW5pc2hlZFxcL2ljb25fd2l0aF90ZXh0LnNjc3NcIjtcbi8qID09PT09PT09PT09PSBFTkQ6IHJzeC90aGVtZS9jb21wb25lbnRzL19hcmNoaXZlZC91bmZpbmlzaGVkL2ljb25fd2l0aF90ZXh0LnNjc3MgPT09PT09PT09PT09ICovXG5cbi8qID09PT09PT09PT09PSBTVEFSVDogcnN4L3RoZW1lL2NvbXBvbmVudHMvX2FyY2hpdmVkL3VuZmluaXNoZWQvaWNvbi5zY3NzID09PT09PT09PT09PSAqL1xuQGltcG9ydCBcIlxcL3ZhclxcL3d3d1xcL2h0bWxcXC9zeXN0ZW1cXC9yc3hcXC90aGVtZVxcL2NvbXBvbmVudHNcXC9fYXJjaGl2ZWRcXC91bmZpbmlzaGVkXFwvaWNvbi5zY3NzXCI7XG4vKiA9PT09PT09PT09PT0gRU5EOiByc3gvdGhlbWUvY29tcG9uZW50cy9fYXJjaGl2ZWQvdW5maW5pc2hlZC9pY29uLnNjc3MgPT09PT09PT09PT09ICovXG5cbi8qID09PT09PT09PT09PSBTVEFSVDogcnN4L3RoZW1lL2NvbXBvbmVudHMvX2FyY2hpdmVkL3VuZmluaXNoZWQvaW5mb19ib3guc2NzcyA9PT09PT09PT09PT0gKi9cbkBpbXBvcnQgXCJcXC92YXJcXC93d3dcXC9odG1sXFwvc3lzdGVtXFwvcnN4XFwvdGhlbWVcXC9jb21wb25lbnRzXFwvX2FyY2hpdmVkXFwvdW5maW5pc2hlZFxcL2luZm9fYm94LnNjc3NcIjtcbi8qID09PT09PT09PT09PSBFTkQ6IHJzeC90aGVtZS9jb21wb25lbnRzL19hcmNoaXZlZC91bmZpbmlzaGVkL2luZm9fYm94LnNjc3MgPT09PT09PT09PT09ICovXG5cbi8qID09PT09PT09PT09PSBTVEFSVDogcnN4L3RoZW1lL2NvbXBvbmVudHMvX2FyY2hpdmVkL3VuZmluaXNoZWQvaW5saW5lX2VkaXRfZmllbGQuc2NzcyA9PT09PT09PT09PT0gKi9cbkBpbXBvcnQgXCJcXC92YXJcXC93d3dcXC9odG1sXFwvc3lzdGVtXFwvcnN4XFwvdGhlbWVcXC9jb21wb25lbnRzXFwvX2FyY2hpdmVkXFwvdW5maW5pc2hlZFxcL2lubGluZV9lZGl0X2ZpZWxkLnNjc3NcIjtcbi8qID09PT09PT09PT09PSBFTkQ6IHJzeC90aGVtZS9jb21wb25lbnRzL19hcmNoaXZlZC91bmZpbmlzaGVkL2lubGluZV9lZGl0X2ZpZWxkLnNjc3MgPT09PT09PT09PT09ICovXG5cbi8qID09PT09PT09PT09PSBTVEFSVDogcnN4L3RoZW1lL2NvbXBvbmVudHMvX2FyY2hpdmVkL3VuZmluaXNoZWQvaW5wdXRfd2l0aF9pY29uLnNjc3MgPT09PT09PT09PT09ICovXG5AaW1wb3J0IFwiXFwvdmFyXFwvd3d3XFwvaHRtbFxcL3N5c3RlbVxcL3JzeFxcL3RoZW1lXFwvY29tcG9uZW50c1xcL19hcmNoaXZlZFxcL3VuZmluaXNoZWRcXC9pbnB1dF93aXRoX2ljb24uc2Nzc1wiO1xuLyogPT09PT09PT09PT09IEVORDogcnN4L3RoZW1lL2NvbXBvbmVudHMvX2FyY2hpdmVkL3VuZmluaXNoZWQvaW5wdXRfd2l0aF9pY29uLnNjc3MgPT09PT09PT09PT09ICovXG5cbi8qID09PT09PT09PT09PSBTVEFSVDogcnN4L3RoZW1lL2NvbXBvbmVudHMvX2FyY2hpdmVkL3VuZmluaXNoZWQvaW5wdXRfd2l0aF92YWxpZGF0aW9uLnNjc3MgPT09PT09PT09PT09ICovXG5AaW1wb3J0IFwiXFwvdmFyXFwvd3d3XFwvaHRtbFxcL3N5c3RlbVxcL3JzeFxcL3RoZW1lXFwvY29tcG9uZW50c1xcL19hcmNoaXZlZFxcL3VuZmluaXNoZWRcXC9pbnB1dF93aXRoX3ZhbGlkYXRpb24uc2Nzc1wiO1xuLyogPT09PT09PT09PT09IEVORDogcnN4L3RoZW1lL2NvbXBvbmVudHMvX2FyY2hpdmVkL3VuZmluaXNoZWQvaW5wdXRfd2l0aF92YWxpZGF0aW9uLnNjc3MgPT09PT09PT09PT09ICovXG5cbi8qID09PT09PT09PT09PSBTVEFSVDogcnN4L3RoZW1lL2NvbXBvbmVudHMvX2FyY2hpdmVkL3VuZmluaXNoZWQvaW5wdXQuc2NzcyA9PT09PT09PT09PT0gKi9cbkBpbXBvcnQgXCJcXC92YXJcXC93d3dcXC9odG1sXFwvc3lzdGVtXFwvcnN4XFwvdGhlbWVcXC9jb21wb25lbnRzXFwvX2FyY2hpdmVkXFwvdW5maW5pc2hlZFxcL2lucHV0LnNjc3NcIjtcbi8qID09PT09PT09PT09PSBFTkQ6IHJzeC90aGVtZS9jb21wb25lbnRzL19hcmNoaXZlZC91bmZpbmlzaGVkL2lucHV0LnNjc3MgPT09PT09PT09PT09ICovXG5cbi8qID09PT09PT09PT09PSBTVEFSVDogcnN4L3RoZW1lL2NvbXBvbmVudHMvX2FyY2hpdmVkL3VuZmluaXNoZWQva2FuYmFuX2JvYXJkLnNjc3MgPT09PT09PT09PT09ICovXG5AaW1wb3J0IFwiXFwvdmFyXFwvd3d3XFwvaHRtbFxcL3N5c3RlbVxcL3JzeFxcL3RoZW1lXFwvY29tcG9uZW50c1xcL19hcmNoaXZlZFxcL3VuZmluaXNoZWRcXC9rYW5iYW5fYm9hcmQuc2Nzc1wiO1xuLyogPT09PT09PT09PT09IEVORDogcnN4L3RoZW1lL2NvbXBvbmVudHMvX2FyY2hpdmVkL3VuZmluaXNoZWQva2FuYmFuX2JvYXJkLnNjc3MgPT09PT09PT09PT09ICovXG5cbi8qID09PT09PT09PT09PSBTVEFSVDogcnN4L3RoZW1lL2NvbXBvbmVudHMvX2FyY2hpdmVkL3VuZmluaXNoZWQvbGluay5zY3NzID09PT09PT09PT09PSAqL1xuQGltcG9ydCBcIlxcL3ZhclxcL3d3d1xcL2h0bWxcXC9zeXN0ZW1cXC9yc3hcXC90aGVtZVxcL2NvbXBvbmVudHNcXC9fYXJjaGl2ZWRcXC91bmZpbmlzaGVkXFwvbGluay5zY3NzXCI7XG4vKiA9PT09PT09PT09PT0gRU5EOiByc3gvdGhlbWUvY29tcG9uZW50cy9fYXJjaGl2ZWQvdW5maW5pc2hlZC9saW5rLnNjc3MgPT09PT09PT09PT09ICovXG5cbi8qID09PT09PT09PT09PSBTVEFSVDogcnN4L3RoZW1lL2NvbXBvbmVudHMvX2FyY2hpdmVkL3VuZmluaXNoZWQvbGlzdC5zY3NzID09PT09PT09PT09PSAqL1xuQGltcG9ydCBcIlxcL3ZhclxcL3d3d1xcL2h0bWxcXC9zeXN0ZW1cXC9yc3hcXC90aGVtZVxcL2NvbXBvbmVudHNcXC9fYXJjaGl2ZWRcXC91bmZpbmlzaGVkXFwvbGlzdC5zY3NzXCI7XG4vKiA9PT09PT09PT09PT0gRU5EOiByc3gvdGhlbWUvY29tcG9uZW50cy9fYXJjaGl2ZWQvdW5maW5pc2hlZC9saXN0LnNjc3MgPT09PT09PT09PT09ICovXG5cbi8qID09PT09PT09PT09PSBTVEFSVDogcnN4L3RoZW1lL2NvbXBvbmVudHMvX2FyY2hpdmVkL3VuZmluaXNoZWQvbG9hZGluZ19za2VsZXRvbi5zY3NzID09PT09PT09PT09PSAqL1xuQGltcG9ydCBcIlxcL3ZhclxcL3d3d1xcL2h0bWxcXC9zeXN0ZW1cXC9yc3hcXC90aGVtZVxcL2NvbXBvbmVudHNcXC9fYXJjaGl2ZWRcXC91bmZpbmlzaGVkXFwvbG9hZGluZ19za2VsZXRvbi5zY3NzXCI7XG4vKiA9PT09PT09PT09PT0gRU5EOiByc3gvdGhlbWUvY29tcG9uZW50cy9fYXJjaGl2ZWQvdW5maW5pc2hlZC9sb2FkaW5nX3NrZWxldG9uLnNjc3MgPT09PT09PT09PT09ICovXG5cbi8qID09PT09PT09PT09PSBTVEFSVDogcnN4L3RoZW1lL2NvbXBvbmVudHMvX2FyY2hpdmVkL3VuZmluaXNoZWQvbWV0cmljX2NhcmQuc2NzcyA9PT09PT09PT09PT0gKi9cbkBpbXBvcnQgXCJcXC92YXJcXC93d3dcXC9odG1sXFwvc3lzdGVtXFwvcnN4XFwvdGhlbWVcXC9jb21wb25lbnRzXFwvX2FyY2hpdmVkXFwvdW5maW5pc2hlZFxcL21ldHJpY19jYXJkLnNjc3NcIjtcbi8qID09PT09PT09PT09PSBFTkQ6IHJzeC90aGVtZS9jb21wb25lbnRzL19hcmNoaXZlZC91bmZpbmlzaGVkL21ldHJpY19jYXJkLnNjc3MgPT09PT09PT09PT09ICovXG5cbi8qID09PT09PT09PT09PSBTVEFSVDogcnN4L3RoZW1lL2NvbXBvbmVudHMvX2FyY2hpdmVkL3VuZmluaXNoZWQvbW9iaWxlX2hlYWRlci5zY3NzID09PT09PT09PT09PSAqL1xuQGltcG9ydCBcIlxcL3ZhclxcL3d3d1xcL2h0bWxcXC9zeXN0ZW1cXC9yc3hcXC90aGVtZVxcL2NvbXBvbmVudHNcXC9fYXJjaGl2ZWRcXC91bmZpbmlzaGVkXFwvbW9iaWxlX2hlYWRlci5zY3NzXCI7XG4vKiA9PT09PT09PT09PT0gRU5EOiByc3gvdGhlbWUvY29tcG9uZW50cy9fYXJjaGl2ZWQvdW5maW5pc2hlZC9tb2JpbGVfaGVhZGVyLnNjc3MgPT09PT09PT09PT09ICovXG5cbi8qID09PT09PT09PT09PSBTVEFSVDogcnN4L3RoZW1lL2NvbXBvbmVudHMvX2FyY2hpdmVkL3VuZmluaXNoZWQvbW9kYWxfZGlhbG9nLnNjc3MgPT09PT09PT09PT09ICovXG5AaW1wb3J0IFwiXFwvdmFyXFwvd3d3XFwvaHRtbFxcL3N5c3RlbVxcL3JzeFxcL3RoZW1lXFwvY29tcG9uZW50c1xcL19hcmNoaXZlZFxcL3VuZmluaXNoZWRcXC9tb2RhbF9kaWFsb2cuc2Nzc1wiO1xuLyogPT09PT09PT09PT09IEVORDogcnN4L3RoZW1lL2NvbXBvbmVudHMvX2FyY2hpdmVkL3VuZmluaXNoZWQvbW9kYWxfZGlhbG9nLnNjc3MgPT09PT09PT09PT09ICovXG5cbi8qID09PT09PT09PT09PSBTVEFSVDogcnN4L3RoZW1lL2NvbXBvbmVudHMvX2FyY2hpdmVkL3VuZmluaXNoZWQvbXVsdGlfc2VsZWN0LnNjc3MgPT09PT09PT09PT09ICovXG5AaW1wb3J0IFwiXFwvdmFyXFwvd3d3XFwvaHRtbFxcL3N5c3RlbVxcL3JzeFxcL3RoZW1lXFwvY29tcG9uZW50c1xcL19hcmNoaXZlZFxcL3VuZmluaXNoZWRcXC9tdWx0aV9zZWxlY3Quc2Nzc1wiO1xuLyogPT09PT09PT09PT09IEVORDogcnN4L3RoZW1lL2NvbXBvbmVudHMvX2FyY2hpdmVkL3VuZmluaXNoZWQvbXVsdGlfc2VsZWN0LnNjc3MgPT09PT09PT09PT09ICovXG5cbi8qID09PT09PT09PT09PSBTVEFSVDogcnN4L3RoZW1lL2NvbXBvbmVudHMvX2FyY2hpdmVkL3VuZmluaXNoZWQvbm90aWZpY2F0aW9uX2JhZGdlLnNjc3MgPT09PT09PT09PT09ICovXG5AaW1wb3J0IFwiXFwvdmFyXFwvd3d3XFwvaHRtbFxcL3N5c3RlbVxcL3JzeFxcL3RoZW1lXFwvY29tcG9uZW50c1xcL19hcmNoaXZlZFxcL3VuZmluaXNoZWRcXC9ub3RpZmljYXRpb25fYmFkZ2Uuc2Nzc1wiO1xuLyogPT09PT09PT09PT09IEVORDogcnN4L3RoZW1lL2NvbXBvbmVudHMvX2FyY2hpdmVkL3VuZmluaXNoZWQvbm90aWZpY2F0aW9uX2JhZGdlLnNjc3MgPT09PT09PT09PT09ICovXG5cbi8qID09PT09PT09PT09PSBTVEFSVDogcnN4L3RoZW1lL2NvbXBvbmVudHMvX2FyY2hpdmVkL3VuZmluaXNoZWQvbm90aWZpY2F0aW9uX2Ryb3Bkb3duLnNjc3MgPT09PT09PT09PT09ICovXG5AaW1wb3J0IFwiXFwvdmFyXFwvd3d3XFwvaHRtbFxcL3N5c3RlbVxcL3JzeFxcL3RoZW1lXFwvY29tcG9uZW50c1xcL19hcmNoaXZlZFxcL3VuZmluaXNoZWRcXC9ub3RpZmljYXRpb25fZHJvcGRvd24uc2Nzc1wiO1xuLyogPT09PT09PT09PT09IEVORDogcnN4L3RoZW1lL2NvbXBvbmVudHMvX2FyY2hpdmVkL3VuZmluaXNoZWQvbm90aWZpY2F0aW9uX2Ryb3Bkb3duLnNjc3MgPT09PT09PT09PT09ICovXG5cbi8qID09PT09PT09PT09PSBTVEFSVDogcnN4L3RoZW1lL2NvbXBvbmVudHMvX2FyY2hpdmVkL3VuZmluaXNoZWQvb3ZlcmR1ZV9pbmRpY2F0b3Iuc2NzcyA9PT09PT09PT09PT0gKi9cbkBpbXBvcnQgXCJcXC92YXJcXC93d3dcXC9odG1sXFwvc3lzdGVtXFwvcnN4XFwvdGhlbWVcXC9jb21wb25lbnRzXFwvX2FyY2hpdmVkXFwvdW5maW5pc2hlZFxcL292ZXJkdWVfaW5kaWNhdG9yLnNjc3NcIjtcbi8qID09PT09PT09PT09PSBFTkQ6IHJzeC90aGVtZS9jb21wb25lbnRzL19hcmNoaXZlZC91bmZpbmlzaGVkL292ZXJkdWVfaW5kaWNhdG9yLnNjc3MgPT09PT09PT09PT09ICovXG5cbi8qID09PT09PT09PT09PSBTVEFSVDogcnN4L3RoZW1lL2NvbXBvbmVudHMvX2FyY2hpdmVkL3VuZmluaXNoZWQvcGFnZV9oZWFkZXIuc2NzcyA9PT09PT09PT09PT0gKi9cbkBpbXBvcnQgXCJcXC92YXJcXC93d3dcXC9odG1sXFwvc3lzdGVtXFwvcnN4XFwvdGhlbWVcXC9jb21wb25lbnRzXFwvX2FyY2hpdmVkXFwvdW5maW5pc2hlZFxcL3BhZ2VfaGVhZGVyLnNjc3NcIjtcbi8qID09PT09PT09PT09PSBFTkQ6IHJzeC90aGVtZS9jb21wb25lbnRzL19hcmNoaXZlZC91bmZpbmlzaGVkL3BhZ2VfaGVhZGVyLnNjc3MgPT09PT09PT09PT09ICovXG5cbi8qID09PT09PT09PT09PSBTVEFSVDogcnN4L3RoZW1lL2NvbXBvbmVudHMvX2FyY2hpdmVkL3VuZmluaXNoZWQvcGFnZV9zZWN0aW9uLnNjc3MgPT09PT09PT09PT09ICovXG5AaW1wb3J0IFwiXFwvdmFyXFwvd3d3XFwvaHRtbFxcL3N5c3RlbVxcL3JzeFxcL3RoZW1lXFwvY29tcG9uZW50c1xcL19hcmNoaXZlZFxcL3VuZmluaXNoZWRcXC9wYWdlX3NlY3Rpb24uc2Nzc1wiO1xuLyogPT09PT09PT09PT09IEVORDogcnN4L3RoZW1lL2NvbXBvbmVudHMvX2FyY2hpdmVkL3VuZmluaXNoZWQvcGFnZV9zZWN0aW9uLnNjc3MgPT09PT09PT09PT09ICovXG5cbi8qID09PT09PT09PT09PSBTVEFSVDogcnN4L3RoZW1lL2NvbXBvbmVudHMvX2FyY2hpdmVkL3VuZmluaXNoZWQvcGFnZS5zY3NzID09PT09PT09PT09PSAqL1xuQGltcG9ydCBcIlxcL3ZhclxcL3d3d1xcL2h0bWxcXC9zeXN0ZW1cXC9yc3hcXC90aGVtZVxcL2NvbXBvbmVudHNcXC9fYXJjaGl2ZWRcXC91bmZpbmlzaGVkXFwvcGFnZS5zY3NzXCI7XG4vKiA9PT09PT09PT09PT0gRU5EOiByc3gvdGhlbWUvY29tcG9uZW50cy9fYXJjaGl2ZWQvdW5maW5pc2hlZC9wYWdlLnNjc3MgPT09PT09PT09PT09ICovXG5cbi8qID09PT09PT09PT09PSBTVEFSVDogcnN4L3RoZW1lL2NvbXBvbmVudHMvX2FyY2hpdmVkL3VuZmluaXNoZWQvcG9wb3Zlci5zY3NzID09PT09PT09PT09PSAqL1xuQGltcG9ydCBcIlxcL3ZhclxcL3d3d1xcL2h0bWxcXC9zeXN0ZW1cXC9yc3hcXC90aGVtZVxcL2NvbXBvbmVudHNcXC9fYXJjaGl2ZWRcXC91bmZpbmlzaGVkXFwvcG9wb3Zlci5zY3NzXCI7XG4vKiA9PT09PT09PT09PT0gRU5EOiByc3gvdGhlbWUvY29tcG9uZW50cy9fYXJjaGl2ZWQvdW5maW5pc2hlZC9wb3BvdmVyLnNjc3MgPT09PT09PT09PT09ICovXG5cbi8qID09PT09PT09PT09PSBTVEFSVDogcnN4L3RoZW1lL2NvbXBvbmVudHMvX2FyY2hpdmVkL3VuZmluaXNoZWQvcHJvZ3Jlc3NfYmFyLnNjc3MgPT09PT09PT09PT09ICovXG5AaW1wb3J0IFwiXFwvdmFyXFwvd3d3XFwvaHRtbFxcL3N5c3RlbVxcL3JzeFxcL3RoZW1lXFwvY29tcG9uZW50c1xcL19hcmNoaXZlZFxcL3VuZmluaXNoZWRcXC9wcm9ncmVzc19iYXIuc2Nzc1wiO1xuLyogPT09PT09PT09PT09IEVORDogcnN4L3RoZW1lL2NvbXBvbmVudHMvX2FyY2hpdmVkL3VuZmluaXNoZWQvcHJvZ3Jlc3NfYmFyLnNjc3MgPT09PT09PT09PT09ICovXG5cbi8qID09PT09PT09PT09PSBTVEFSVDogcnN4L3RoZW1lL2NvbXBvbmVudHMvX2FyY2hpdmVkL3VuZmluaXNoZWQvcmFkaW9fYnV0dG9uLnNjc3MgPT09PT09PT09PT09ICovXG5AaW1wb3J0IFwiXFwvdmFyXFwvd3d3XFwvaHRtbFxcL3N5c3RlbVxcL3JzeFxcL3RoZW1lXFwvY29tcG9uZW50c1xcL19hcmNoaXZlZFxcL3VuZmluaXNoZWRcXC9yYWRpb19idXR0b24uc2Nzc1wiO1xuLyogPT09PT09PT09PT09IEVORDogcnN4L3RoZW1lL2NvbXBvbmVudHMvX2FyY2hpdmVkL3VuZmluaXNoZWQvcmFkaW9fYnV0dG9uLnNjc3MgPT09PT09PT09PT09ICovXG5cbi8qID09PT09PT09PT09PSBTVEFSVDogcnN4L3RoZW1lL2NvbXBvbmVudHMvX2FyY2hpdmVkL3VuZmluaXNoZWQvcmljaF90ZXh0X2VkaXRvci5zY3NzID09PT09PT09PT09PSAqL1xuQGltcG9ydCBcIlxcL3ZhclxcL3d3d1xcL2h0bWxcXC9zeXN0ZW1cXC9yc3hcXC90aGVtZVxcL2NvbXBvbmVudHNcXC9fYXJjaGl2ZWRcXC91bmZpbmlzaGVkXFwvcmljaF90ZXh0X2VkaXRvci5zY3NzXCI7XG4vKiA9PT09PT09PT09PT0gRU5EOiByc3gvdGhlbWUvY29tcG9uZW50cy9fYXJjaGl2ZWQvdW5maW5pc2hlZC9yaWNoX3RleHRfZWRpdG9yLnNjc3MgPT09PT09PT09PT09ICovXG5cbi8qID09PT09PT09PT09PSBTVEFSVDogcnN4L3RoZW1lL2NvbXBvbmVudHMvX2FyY2hpdmVkL3VuZmluaXNoZWQvcm93X2FjdGlvbl9tZW51LnNjc3MgPT09PT09PT09PT09ICovXG5AaW1wb3J0IFwiXFwvdmFyXFwvd3d3XFwvaHRtbFxcL3N5c3RlbVxcL3JzeFxcL3RoZW1lXFwvY29tcG9uZW50c1xcL19hcmNoaXZlZFxcL3VuZmluaXNoZWRcXC9yb3dfYWN0aW9uX21lbnUuc2Nzc1wiO1xuLyogPT09PT09PT09PT09IEVORDogcnN4L3RoZW1lL2NvbXBvbmVudHMvX2FyY2hpdmVkL3VuZmluaXNoZWQvcm93X2FjdGlvbl9tZW51LnNjc3MgPT09PT09PT09PT09ICovXG5cbi8qID09PT09PT09PT09PSBTVEFSVDogcnN4L3RoZW1lL2NvbXBvbmVudHMvX2FyY2hpdmVkL3VuZmluaXNoZWQvc2VhcmNoX2Jhci5zY3NzID09PT09PT09PT09PSAqL1xuQGltcG9ydCBcIlxcL3ZhclxcL3d3d1xcL2h0bWxcXC9zeXN0ZW1cXC9yc3hcXC90aGVtZVxcL2NvbXBvbmVudHNcXC9fYXJjaGl2ZWRcXC91bmZpbmlzaGVkXFwvc2VhcmNoX2Jhci5zY3NzXCI7XG4vKiA9PT09PT09PT09PT0gRU5EOiByc3gvdGhlbWUvY29tcG9uZW50cy9fYXJjaGl2ZWQvdW5maW5pc2hlZC9zZWFyY2hfYmFyLnNjc3MgPT09PT09PT09PT09ICovXG5cbi8qID09PT09PT09PT09PSBTVEFSVDogcnN4L3RoZW1lL2NvbXBvbmVudHMvX2FyY2hpdmVkL3VuZmluaXNoZWQvc2VhcmNoYWJsZV9zZWxlY3Quc2NzcyA9PT09PT09PT09PT0gKi9cbkBpbXBvcnQgXCJcXC92YXJcXC93d3dcXC9odG1sXFwvc3lzdGVtXFwvcnN4XFwvdGhlbWVcXC9jb21wb25lbnRzXFwvX2FyY2hpdmVkXFwvdW5maW5pc2hlZFxcL3NlYXJjaGFibGVfc2VsZWN0LnNjc3NcIjtcbi8qID09PT09PT09PT09PSBFTkQ6IHJzeC90aGVtZS9jb21wb25lbnRzL19hcmNoaXZlZC91bmZpbmlzaGVkL3NlYXJjaGFibGVfc2VsZWN0LnNjc3MgPT09PT09PT09PT09ICovXG5cbi8qID09PT09PT09PT09PSBTVEFSVDogcnN4L3RoZW1lL2NvbXBvbmVudHMvX2FyY2hpdmVkL3VuZmluaXNoZWQvc2VsZWN0X2Ryb3Bkb3duLnNjc3MgPT09PT09PT09PT09ICovXG5AaW1wb3J0IFwiXFwvdmFyXFwvd3d3XFwvaHRtbFxcL3N5c3RlbVxcL3JzeFxcL3RoZW1lXFwvY29tcG9uZW50c1xcL19hcmNoaXZlZFxcL3VuZmluaXNoZWRcXC9zZWxlY3RfZHJvcGRvd24uc2Nzc1wiO1xuLyogPT09PT09PT09PT09IEVORDogcnN4L3RoZW1lL2NvbXBvbmVudHMvX2FyY2hpdmVkL3VuZmluaXNoZWQvc2VsZWN0X2Ryb3Bkb3duLnNjc3MgPT09PT09PT09PT09ICovXG5cbi8qID09PT09PT09PT09PSBTVEFSVDogcnN4L3RoZW1lL2NvbXBvbmVudHMvX2FyY2hpdmVkL3VuZmluaXNoZWQvc2lkZWJhcl9uYXYuc2NzcyA9PT09PT09PT09PT0gKi9cbkBpbXBvcnQgXCJcXC92YXJcXC93d3dcXC9odG1sXFwvc3lzdGVtXFwvcnN4XFwvdGhlbWVcXC9jb21wb25lbnRzXFwvX2FyY2hpdmVkXFwvdW5maW5pc2hlZFxcL3NpZGViYXJfbmF2LnNjc3NcIjtcbi8qID09PT09PT09PT09PSBFTkQ6IHJzeC90aGVtZS9jb21wb25lbnRzL19hcmNoaXZlZC91bmZpbmlzaGVkL3NpZGViYXJfbmF2LnNjc3MgPT09PT09PT09PT09ICovXG5cbi8qID09PT09PT09PT09PSBTVEFSVDogcnN4L3RoZW1lL2NvbXBvbmVudHMvX2FyY2hpdmVkL3VuZmluaXNoZWQvc29ydGFibGVfY29sdW1uX2hlYWRlci5zY3NzID09PT09PT09PT09PSAqL1xuQGltcG9ydCBcIlxcL3ZhclxcL3d3d1xcL2h0bWxcXC9zeXN0ZW1cXC9yc3hcXC90aGVtZVxcL2NvbXBvbmVudHNcXC9fYXJjaGl2ZWRcXC91bmZpbmlzaGVkXFwvc29ydGFibGVfY29sdW1uX2hlYWRlci5zY3NzXCI7XG4vKiA9PT09PT09PT09PT0gRU5EOiByc3gvdGhlbWUvY29tcG9uZW50cy9fYXJjaGl2ZWQvdW5maW5pc2hlZC9zb3J0YWJsZV9jb2x1bW5faGVhZGVyLnNjc3MgPT09PT09PT09PT09ICovXG5cbi8qID09PT09PT09PT09PSBTVEFSVDogcnN4L3RoZW1lL2NvbXBvbmVudHMvX2FyY2hpdmVkL3VuZmluaXNoZWQvc3Bpbm5lci5zY3NzID09PT09PT09PT09PSAqL1xuQGltcG9ydCBcIlxcL3ZhclxcL3d3d1xcL2h0bWxcXC9zeXN0ZW1cXC9yc3hcXC90aGVtZVxcL2NvbXBvbmVudHNcXC9fYXJjaGl2ZWRcXC91bmZpbmlzaGVkXFwvc3Bpbm5lci5zY3NzXCI7XG4vKiA9PT09PT09PT09PT0gRU5EOiByc3gvdGhlbWUvY29tcG9uZW50cy9fYXJjaGl2ZWQvdW5maW5pc2hlZC9zcGlubmVyLnNjc3MgPT09PT09PT09PT09ICovXG5cbi8qID09PT09PT09PT09PSBTVEFSVDogcnN4L3RoZW1lL2NvbXBvbmVudHMvX2FyY2hpdmVkL3VuZmluaXNoZWQvc3RhdF9jYXJkLnNjc3MgPT09PT09PT09PT09ICovXG5AaW1wb3J0IFwiXFwvdmFyXFwvd3d3XFwvaHRtbFxcL3N5c3RlbVxcL3JzeFxcL3RoZW1lXFwvY29tcG9uZW50c1xcL19hcmNoaXZlZFxcL3VuZmluaXNoZWRcXC9zdGF0X2NhcmQuc2Nzc1wiO1xuLyogPT09PT09PT09PT09IEVORDogcnN4L3RoZW1lL2NvbXBvbmVudHMvX2FyY2hpdmVkL3VuZmluaXNoZWQvc3RhdF9jYXJkLnNjc3MgPT09PT09PT09PT09ICovXG5cbi8qID09PT09PT09PT09PSBTVEFSVDogcnN4L3RoZW1lL2NvbXBvbmVudHMvX2FyY2hpdmVkL3VuZmluaXNoZWQvc3RhdHVzX2JhZGdlLnNjc3MgPT09PT09PT09PT09ICovXG5AaW1wb3J0IFwiXFwvdmFyXFwvd3d3XFwvaHRtbFxcL3N5c3RlbVxcL3JzeFxcL3RoZW1lXFwvY29tcG9uZW50c1xcL19hcmNoaXZlZFxcL3VuZmluaXNoZWRcXC9zdGF0dXNfYmFkZ2Uuc2Nzc1wiO1xuLyogPT09PT09PT09PT09IEVORDogcnN4L3RoZW1lL2NvbXBvbmVudHMvX2FyY2hpdmVkL3VuZmluaXNoZWQvc3RhdHVzX2JhZGdlLnNjc3MgPT09PT09PT09PT09ICovXG5cbi8qID09PT09PT09PT09PSBTVEFSVDogcnN4L3RoZW1lL2NvbXBvbmVudHMvX2FyY2hpdmVkL3VuZmluaXNoZWQvdGFiX2NvbnRlbnQuc2NzcyA9PT09PT09PT09PT0gKi9cbkBpbXBvcnQgXCJcXC92YXJcXC93d3dcXC9odG1sXFwvc3lzdGVtXFwvcnN4XFwvdGhlbWVcXC9jb21wb25lbnRzXFwvX2FyY2hpdmVkXFwvdW5maW5pc2hlZFxcL3RhYl9jb250ZW50LnNjc3NcIjtcbi8qID09PT09PT09PT09PSBFTkQ6IHJzeC90aGVtZS9jb21wb25lbnRzL19hcmNoaXZlZC91bmZpbmlzaGVkL3RhYl9jb250ZW50LnNjc3MgPT09PT09PT09PT09ICovXG5cbi8qID09PT09PT09PT09PSBTVEFSVDogcnN4L3RoZW1lL2NvbXBvbmVudHMvX2FyY2hpdmVkL3VuZmluaXNoZWQvdGFibGVfcGFnaW5hdGlvbi5zY3NzID09PT09PT09PT09PSAqL1xuQGltcG9ydCBcIlxcL3ZhclxcL3d3d1xcL2h0bWxcXC9zeXN0ZW1cXC9yc3hcXC90aGVtZVxcL2NvbXBvbmVudHNcXC9fYXJjaGl2ZWRcXC91bmZpbmlzaGVkXFwvdGFibGVfcGFnaW5hdGlvbi5zY3NzXCI7XG4vKiA9PT09PT09PT09PT0gRU5EOiByc3gvdGhlbWUvY29tcG9uZW50cy9fYXJjaGl2ZWQvdW5maW5pc2hlZC90YWJsZV9wYWdpbmF0aW9uLnNjc3MgPT09PT09PT09PT09ICovXG5cbi8qID09PT09PT09PT09PSBTVEFSVDogcnN4L3RoZW1lL2NvbXBvbmVudHMvX2FyY2hpdmVkL3VuZmluaXNoZWQvdGFibGUuc2NzcyA9PT09PT09PT09PT0gKi9cbkBpbXBvcnQgXCJcXC92YXJcXC93d3dcXC9odG1sXFwvc3lzdGVtXFwvcnN4XFwvdGhlbWVcXC9jb21wb25lbnRzXFwvX2FyY2hpdmVkXFwvdW5maW5pc2hlZFxcL3RhYmxlLnNjc3NcIjtcbi8qID09PT09PT09PT09PSBFTkQ6IHJzeC90aGVtZS9jb21wb25lbnRzL19hcmNoaXZlZC91bmZpbmlzaGVkL3RhYmxlLnNjc3MgPT09PT09PT09PT09ICovXG5cbi8qID09PT09PT09PT09PSBTVEFSVDogcnN4L3RoZW1lL2NvbXBvbmVudHMvX2FyY2hpdmVkL3VuZmluaXNoZWQvdGFicy5zY3NzID09PT09PT09PT09PSAqL1xuQGltcG9ydCBcIlxcL3ZhclxcL3d3d1xcL2h0bWxcXC9zeXN0ZW1cXC9yc3hcXC90aGVtZVxcL2NvbXBvbmVudHNcXC9fYXJjaGl2ZWRcXC91bmZpbmlzaGVkXFwvdGFicy5zY3NzXCI7XG4vKiA9PT09PT09PT09PT0gRU5EOiByc3gvdGhlbWUvY29tcG9uZW50cy9fYXJjaGl2ZWQvdW5maW5pc2hlZC90YWJzLnNjc3MgPT09PT09PT09PT09ICovXG5cbi8qID09PT09PT09PT09PSBTVEFSVDogcnN4L3RoZW1lL2NvbXBvbmVudHMvX2FyY2hpdmVkL3VuZmluaXNoZWQvdGFnX2dyb3VwLnNjc3MgPT09PT09PT09PT09ICovXG5AaW1wb3J0IFwiXFwvdmFyXFwvd3d3XFwvaHRtbFxcL3N5c3RlbVxcL3JzeFxcL3RoZW1lXFwvY29tcG9uZW50c1xcL19hcmNoaXZlZFxcL3VuZmluaXNoZWRcXC90YWdfZ3JvdXAuc2Nzc1wiO1xuLyogPT09PT09PT09PT09IEVORDogcnN4L3RoZW1lL2NvbXBvbmVudHMvX2FyY2hpdmVkL3VuZmluaXNoZWQvdGFnX2dyb3VwLnNjc3MgPT09PT09PT09PT09ICovXG5cbi8qID09PT09PT09PT09PSBTVEFSVDogcnN4L3RoZW1lL2NvbXBvbmVudHMvX2FyY2hpdmVkL3VuZmluaXNoZWQvdGFnLnNjc3MgPT09PT09PT09PT09ICovXG5AaW1wb3J0IFwiXFwvdmFyXFwvd3d3XFwvaHRtbFxcL3N5c3RlbVxcL3JzeFxcL3RoZW1lXFwvY29tcG9uZW50c1xcL19hcmNoaXZlZFxcL3VuZmluaXNoZWRcXC90YWcuc2Nzc1wiO1xuLyogPT09PT09PT09PT09IEVORDogcnN4L3RoZW1lL2NvbXBvbmVudHMvX2FyY2hpdmVkL3VuZmluaXNoZWQvdGFnLnNjc3MgPT09PT09PT09PT09ICovXG5cbi8qID09PT09PT09PT09PSBTVEFSVDogcnN4L3RoZW1lL2NvbXBvbmVudHMvX2FyY2hpdmVkL3VuZmluaXNoZWQvdGV4dF9kaXNwbGF5LnNjc3MgPT09PT09PT09PT09ICovXG5AaW1wb3J0IFwiXFwvdmFyXFwvd3d3XFwvaHRtbFxcL3N5c3RlbVxcL3JzeFxcL3RoZW1lXFwvY29tcG9uZW50c1xcL19hcmNoaXZlZFxcL3VuZmluaXNoZWRcXC90ZXh0X2Rpc3BsYXkuc2Nzc1wiO1xuLyogPT09PT09PT09PT09IEVORDogcnN4L3RoZW1lL2NvbXBvbmVudHMvX2FyY2hpdmVkL3VuZmluaXNoZWQvdGV4dF9kaXNwbGF5LnNjc3MgPT09PT09PT09PT09ICovXG5cbi8qID09PT09PT09PT09PSBTVEFSVDogcnN4L3RoZW1lL2NvbXBvbmVudHMvX2FyY2hpdmVkL3VuZmluaXNoZWQvdGV4dGFyZWEuc2NzcyA9PT09PT09PT09PT0gKi9cbkBpbXBvcnQgXCJcXC92YXJcXC93d3dcXC9odG1sXFwvc3lzdGVtXFwvcnN4XFwvdGhlbWVcXC9jb21wb25lbnRzXFwvX2FyY2hpdmVkXFwvdW5maW5pc2hlZFxcL3RleHRhcmVhLnNjc3NcIjtcbi8qID09PT09PT09PT09PSBFTkQ6IHJzeC90aGVtZS9jb21wb25lbnRzL19hcmNoaXZlZC91bmZpbmlzaGVkL3RleHRhcmVhLnNjc3MgPT09PT09PT09PT09ICovXG5cbi8qID09PT09PT09PT09PSBTVEFSVDogcnN4L3RoZW1lL2NvbXBvbmVudHMvX2FyY2hpdmVkL3VuZmluaXNoZWQvdGhyZWVfY29sdW1uX2xheW91dC5zY3NzID09PT09PT09PT09PSAqL1xuQGltcG9ydCBcIlxcL3ZhclxcL3d3d1xcL2h0bWxcXC9zeXN0ZW1cXC9yc3hcXC90aGVtZVxcL2NvbXBvbmVudHNcXC9fYXJjaGl2ZWRcXC91bmZpbmlzaGVkXFwvdGhyZWVfY29sdW1uX2xheW91dC5zY3NzXCI7XG4vKiA9PT09PT09PT09PT0gRU5EOiByc3gvdGhlbWUvY29tcG9uZW50cy9fYXJjaGl2ZWQvdW5maW5pc2hlZC90aHJlZV9jb2x1bW5fbGF5b3V0LnNjc3MgPT09PT09PT09PT09ICovXG5cbi8qID09PT09PT09PT09PSBTVEFSVDogcnN4L3RoZW1lL2NvbXBvbmVudHMvX2FyY2hpdmVkL3VuZmluaXNoZWQvdGltZV9waWNrZXIuc2NzcyA9PT09PT09PT09PT0gKi9cbkBpbXBvcnQgXCJcXC92YXJcXC93d3dcXC9odG1sXFwvc3lzdGVtXFwvcnN4XFwvdGhlbWVcXC9jb21wb25lbnRzXFwvX2FyY2hpdmVkXFwvdW5maW5pc2hlZFxcL3RpbWVfcGlja2VyLnNjc3NcIjtcbi8qID09PT09PT09PT09PSBFTkQ6IHJzeC90aGVtZS9jb21wb25lbnRzL19hcmNoaXZlZC91bmZpbmlzaGVkL3RpbWVfcGlja2VyLnNjc3MgPT09PT09PT09PT09ICovXG5cbi8qID09PT09PT09PT09PSBTVEFSVDogcnN4L3RoZW1lL2NvbXBvbmVudHMvX2FyY2hpdmVkL3VuZmluaXNoZWQvdGltZWxpbmUuc2NzcyA9PT09PT09PT09PT0gKi9cbkBpbXBvcnQgXCJcXC92YXJcXC93d3dcXC9odG1sXFwvc3lzdGVtXFwvcnN4XFwvdGhlbWVcXC9jb21wb25lbnRzXFwvX2FyY2hpdmVkXFwvdW5maW5pc2hlZFxcL3RpbWVsaW5lLnNjc3NcIjtcbi8qID09PT09PT09PT09PSBFTkQ6IHJzeC90aGVtZS9jb21wb25lbnRzL19hcmNoaXZlZC91bmZpbmlzaGVkL3RpbWVsaW5lLnNjc3MgPT09PT09PT09PT09ICovXG5cbi8qID09PT09PT09PT09PSBTVEFSVDogcnN4L3RoZW1lL2NvbXBvbmVudHMvX2FyY2hpdmVkL3VuZmluaXNoZWQvdGltZXN0YW1wX2Rpc3BsYXkuc2NzcyA9PT09PT09PT09PT0gKi9cbkBpbXBvcnQgXCJcXC92YXJcXC93d3dcXC9odG1sXFwvc3lzdGVtXFwvcnN4XFwvdGhlbWVcXC9jb21wb25lbnRzXFwvX2FyY2hpdmVkXFwvdW5maW5pc2hlZFxcL3RpbWVzdGFtcF9kaXNwbGF5LnNjc3NcIjtcbi8qID09PT09PT09PT09PSBFTkQ6IHJzeC90aGVtZS9jb21wb25lbnRzL19hcmNoaXZlZC91bmZpbmlzaGVkL3RpbWVzdGFtcF9kaXNwbGF5LnNjc3MgPT09PT09PT09PT09ICovXG5cbi8qID09PT09PT09PT09PSBTVEFSVDogcnN4L3RoZW1lL2NvbXBvbmVudHMvX2FyY2hpdmVkL3VuZmluaXNoZWQvdG9vbHRpcC5zY3NzID09PT09PT09PT09PSAqL1xuQGltcG9ydCBcIlxcL3ZhclxcL3d3d1xcL2h0bWxcXC9zeXN0ZW1cXC9yc3hcXC90aGVtZVxcL2NvbXBvbmVudHNcXC9fYXJjaGl2ZWRcXC91bmZpbmlzaGVkXFwvdG9vbHRpcC5zY3NzXCI7XG4vKiA9PT09PT09PT09PT0gRU5EOiByc3gvdGhlbWUvY29tcG9uZW50cy9fYXJjaGl2ZWQvdW5maW5pc2hlZC90b29sdGlwLnNjc3MgPT09PT09PT09PT09ICovXG5cbi8qID09PT09PT09PT09PSBTVEFSVDogcnN4L3RoZW1lL2NvbXBvbmVudHMvX2FyY2hpdmVkL3VuZmluaXNoZWQvdG9wX25hdi5zY3NzID09PT09PT09PT09PSAqL1xuQGltcG9ydCBcIlxcL3ZhclxcL3d3d1xcL2h0bWxcXC9zeXN0ZW1cXC9yc3hcXC90aGVtZVxcL2NvbXBvbmVudHNcXC9fYXJjaGl2ZWRcXC91bmZpbmlzaGVkXFwvdG9wX25hdi5zY3NzXCI7XG4vKiA9PT09PT09PT09PT0gRU5EOiByc3gvdGhlbWUvY29tcG9uZW50cy9fYXJjaGl2ZWQvdW5maW5pc2hlZC90b3BfbmF2LnNjc3MgPT09PT09PT09PT09ICovXG5cbi8qID09PT09PT09PT09PSBTVEFSVDogcnN4L3RoZW1lL2NvbXBvbmVudHMvX2FyY2hpdmVkL3VuZmluaXNoZWQvdHJlbmRfaW5kaWNhdG9yLnNjc3MgPT09PT09PT09PT09ICovXG5AaW1wb3J0IFwiXFwvdmFyXFwvd3d3XFwvaHRtbFxcL3N5c3RlbVxcL3JzeFxcL3RoZW1lXFwvY29tcG9uZW50c1xcL19hcmNoaXZlZFxcL3VuZmluaXNoZWRcXC90cmVuZF9pbmRpY2F0b3Iuc2Nzc1wiO1xuLyogPT09PT09PT09PT09IEVORDogcnN4L3RoZW1lL2NvbXBvbmVudHMvX2FyY2hpdmVkL3VuZmluaXNoZWQvdHJlbmRfaW5kaWNhdG9yLnNjc3MgPT09PT09PT09PT09ICovXG5cbi8qID09PT09PT09PT09PSBTVEFSVDogcnN4L3RoZW1lL2NvbXBvbmVudHMvX2FyY2hpdmVkL3VuZmluaXNoZWQvdHdvX2NvbHVtbl9sYXlvdXQuc2NzcyA9PT09PT09PT09PT0gKi9cbkBpbXBvcnQgXCJcXC92YXJcXC93d3dcXC9odG1sXFwvc3lzdGVtXFwvcnN4XFwvdGhlbWVcXC9jb21wb25lbnRzXFwvX2FyY2hpdmVkXFwvdW5maW5pc2hlZFxcL3R3b19jb2x1bW5fbGF5b3V0LnNjc3NcIjtcbi8qID09PT09PT09PT09PSBFTkQ6IHJzeC90aGVtZS9jb21wb25lbnRzL19hcmNoaXZlZC91bmZpbmlzaGVkL3R3b19jb2x1bW5fbGF5b3V0LnNjc3MgPT09PT09PT09PT09ICovXG5cbi8qID09PT09PT09PT09PSBTVEFSVDogcnN4L3RoZW1lL2NvbXBvbmVudHMvX2FyY2hpdmVkL3VuZmluaXNoZWQvdXNlcl9hdmF0YXJfZHJvcGRvd24uc2NzcyA9PT09PT09PT09PT0gKi9cbkBpbXBvcnQgXCJcXC92YXJcXC93d3dcXC9odG1sXFwvc3lzdGVtXFwvcnN4XFwvdGhlbWVcXC9jb21wb25lbnRzXFwvX2FyY2hpdmVkXFwvdW5maW5pc2hlZFxcL3VzZXJfYXZhdGFyX2Ryb3Bkb3duLnNjc3NcIjtcbi8qID09PT09PT09PT09PSBFTkQ6IHJzeC90aGVtZS9jb21wb25lbnRzL19hcmNoaXZlZC91bmZpbmlzaGVkL3VzZXJfYXZhdGFyX2Ryb3Bkb3duLnNjc3MgPT09PT09PT09PT09ICovXG5cbi8qID09PT09PT09PT09PSBTVEFSVDogcnN4L3RoZW1lL2NvbXBvbmVudHMvbW9kYWwvcnN4X21vZGFsLnNjc3MgPT09PT09PT09PT09ICovXG5AaW1wb3J0IFwiXFwvdmFyXFwvd3d3XFwvaHRtbFxcL3N5c3RlbVxcL3JzeFxcL3RoZW1lXFwvY29tcG9uZW50c1xcL21vZGFsXFwvcnN4X21vZGFsLnNjc3NcIjtcbi8qID09PT09PT09PT09PSBFTkQ6IHJzeC90aGVtZS9jb21wb25lbnRzL21vZGFsL3JzeF9tb2RhbC5zY3NzID09PT09PT09PT09PSAqL1xuXG4vKiA9PT09PT09PT09PT0gU1RBUlQ6IHJzeC90aGVtZS9jb21wb25lbnRzL2Zvcm1zL3Bpbl92ZXJpZmljYXRpb25fZm9ybS5zY3NzID09PT09PT09PT09PSAqL1xuQGltcG9ydCBcIlxcL3ZhclxcL3d3d1xcL2h0bWxcXC9zeXN0ZW1cXC9yc3hcXC90aGVtZVxcL2NvbXBvbmVudHNcXC9mb3Jtc1xcL3Bpbl92ZXJpZmljYXRpb25fZm9ybS5zY3NzXCI7XG4vKiA9PT09PT09PT09PT0gRU5EOiByc3gvdGhlbWUvY29tcG9uZW50cy9mb3Jtcy9waW5fdmVyaWZpY2F0aW9uX2Zvcm0uc2NzcyA9PT09PT09PT09PT0gKi9cblxuLyogPT09PT09PT09PT09IFNUQVJUOiByc3gvdGhlbWUvbGF5b3V0LnNjc3MgPT09PT09PT09PT09ICovXG5AaW1wb3J0IFwiXFwvdmFyXFwvd3d3XFwvaHRtbFxcL3N5c3RlbVxcL3JzeFxcL3RoZW1lXFwvbGF5b3V0LnNjc3NcIjtcbi8qID09PT09PT09PT09PSBFTkQ6IHJzeC90aGVtZS9sYXlvdXQuc2NzcyA9PT09PT09PT09PT0gKi9cblxuLyogPT09PT09PT09PT09IFNUQVJUOiByc3gvYXBwL2Zyb250ZW5kL2Rhc2hib2FyZC9mcm9udGVuZF9kYXNoYm9hcmQuc2NzcyA9PT09PT09PT09PT0gKi9cbkBpbXBvcnQgXCJcXC92YXJcXC93d3dcXC9odG1sXFwvc3lzdGVtXFwvcnN4XFwvYXBwXFwvZnJvbnRlbmRcXC9kYXNoYm9hcmRcXC9mcm9udGVuZF9kYXNoYm9hcmQuc2Nzc1wiO1xuLyogPT09PT09PT09PT09IEVORDogcnN4L2FwcC9mcm9udGVuZC9kYXNoYm9hcmQvZnJvbnRlbmRfZGFzaGJvYXJkLnNjc3MgPT09PT09PT09PT09ICovXG5cbi8qID09PT09PT09PT09PSBTVEFSVDogcnN4L2FwcC9mcm9udGVuZC9jbGllbnRzL2Zyb250ZW5kX2NsaWVudHMuc2NzcyA9PT09PT09PT09PT0gKi9cbkBpbXBvcnQgXCJcXC92YXJcXC93d3dcXC9odG1sXFwvc3lzdGVtXFwvcnN4XFwvYXBwXFwvZnJvbnRlbmRcXC9jbGllbnRzXFwvZnJvbnRlbmRfY2xpZW50cy5zY3NzXCI7XG4vKiA9PT09PT09PT09PT0gRU5EOiByc3gvYXBwL2Zyb250ZW5kL2NsaWVudHMvZnJvbnRlbmRfY2xpZW50cy5zY3NzID09PT09PT09PT09PSAqL1xuXG4vKiA9PT09PT09PT09PT0gU1RBUlQ6IHJzeC9hcHAvZnJvbnRlbmQvY2xpZW50cy9lZGl0L2Zyb250ZW5kX2NsaWVudHNfZWRpdC5zY3NzID09PT09PT09PT09PSAqL1xuQGltcG9ydCBcIlxcL3ZhclxcL3d3d1xcL2h0bWxcXC9zeXN0ZW1cXC9yc3hcXC9hcHBcXC9mcm9udGVuZFxcL2NsaWVudHNcXC9lZGl0XFwvZnJvbnRlbmRfY2xpZW50c19lZGl0LnNjc3NcIjtcbi8qID09PT09PT09PT09PSBFTkQ6IHJzeC9hcHAvZnJvbnRlbmQvY2xpZW50cy9lZGl0L2Zyb250ZW5kX2NsaWVudHNfZWRpdC5zY3NzID09PT09PT09PT09PSAqL1xuXG4vKiA9PT09PT09PT09PT0gU1RBUlQ6IHJzeC9hcHAvZnJvbnRlbmQvY2xpZW50cy92aWV3L2Zyb250ZW5kX2NsaWVudHNfdmlldy5zY3NzID09PT09PT09PT09PSAqL1xuQGltcG9ydCBcIlxcL3ZhclxcL3d3d1xcL2h0bWxcXC9zeXN0ZW1cXC9yc3hcXC9hcHBcXC9mcm9udGVuZFxcL2NsaWVudHNcXC92aWV3XFwvZnJvbnRlbmRfY2xpZW50c192aWV3LnNjc3NcIjtcbi8qID09PT09PT09PT09PSBFTkQ6IHJzeC9hcHAvZnJvbnRlbmQvY2xpZW50cy92aWV3L2Zyb250ZW5kX2NsaWVudHNfdmlldy5zY3NzID09PT09PT09PT09PSAqL1xuXG4vKiA9PT09PT09PT09PT0gU1RBUlQ6IHJzeC9hcHAvZnJvbnRlbmQvc2V0dGluZ3MvdGVhbS9mcm9udGVuZF9zZXR0aW5nc190ZWFtLnNjc3MgPT09PT09PT09PT09ICovXG5AaW1wb3J0IFwiXFwvdmFyXFwvd3d3XFwvaHRtbFxcL3N5c3RlbVxcL3JzeFxcL2FwcFxcL2Zyb250ZW5kXFwvc2V0dGluZ3NcXC90ZWFtXFwvZnJvbnRlbmRfc2V0dGluZ3NfdGVhbS5zY3NzXCI7XG4vKiA9PT09PT09PT09PT0gRU5EOiByc3gvYXBwL2Zyb250ZW5kL3NldHRpbmdzL3RlYW0vZnJvbnRlbmRfc2V0dGluZ3NfdGVhbS5zY3NzID09PT09PT09PT09PSAqL1xuXG4vKiA9PT09PT09PT09PT0gU1RBUlQ6IHJzeC9hcHAvZnJvbnRlbmQvc2V0dGluZ3Mvbm90aWZpY2F0aW9ucy9mcm9udGVuZF9zZXR0aW5nc19ub3RpZmljYXRpb25zLnNjc3MgPT09PT09PT09PT09ICovXG5AaW1wb3J0IFwiXFwvdmFyXFwvd3d3XFwvaHRtbFxcL3N5c3RlbVxcL3JzeFxcL2FwcFxcL2Zyb250ZW5kXFwvc2V0dGluZ3NcXC9ub3RpZmljYXRpb25zXFwvZnJvbnRlbmRfc2V0dGluZ3Nfbm90aWZpY2F0aW9ucy5zY3NzXCI7XG4vKiA9PT09PT09PT09PT0gRU5EOiByc3gvYXBwL2Zyb250ZW5kL3NldHRpbmdzL25vdGlmaWNhdGlvbnMvZnJvbnRlbmRfc2V0dGluZ3Nfbm90aWZpY2F0aW9ucy5zY3NzID09PT09PT09PT09PSAqL1xuXG4vKiA9PT09PT09PT09PT0gU1RBUlQ6IHJzeC9hcHAvZnJvbnRlbmQvc2V0dGluZ3MvYmlsbGluZy9mcm9udGVuZF9zZXR0aW5nc19iaWxsaW5nLnNjc3MgPT09PT09PT09PT09ICovXG5AaW1wb3J0IFwiXFwvdmFyXFwvd3d3XFwvaHRtbFxcL3N5c3RlbVxcL3JzeFxcL2FwcFxcL2Zyb250ZW5kXFwvc2V0dGluZ3NcXC9iaWxsaW5nXFwvZnJvbnRlbmRfc2V0dGluZ3NfYmlsbGluZy5zY3NzXCI7XG4vKiA9PT09PT09PT09PT0gRU5EOiByc3gvYXBwL2Zyb250ZW5kL3NldHRpbmdzL2JpbGxpbmcvZnJvbnRlbmRfc2V0dGluZ3NfYmlsbGluZy5zY3NzID09PT09PT09PT09PSAqL1xuXG4vKiA9PT09PT09PT09PT0gU1RBUlQ6IHJzeC9hcHAvZnJvbnRlbmQvc2V0dGluZ3MvaW1wb3J0L2Zyb250ZW5kX3NldHRpbmdzX2ltcG9ydC5zY3NzID09PT09PT09PT09PSAqL1xuQGltcG9ydCBcIlxcL3ZhclxcL3d3d1xcL2h0bWxcXC9zeXN0ZW1cXC9yc3hcXC9hcHBcXC9mcm9udGVuZFxcL3NldHRpbmdzXFwvaW1wb3J0XFwvZnJvbnRlbmRfc2V0dGluZ3NfaW1wb3J0LnNjc3NcIjtcbi8qID09PT09PT09PT09PSBFTkQ6IHJzeC9hcHAvZnJvbnRlbmQvc2V0dGluZ3MvaW1wb3J0L2Zyb250ZW5kX3NldHRpbmdzX2ltcG9ydC5zY3NzID09PT09PT09PT09PSAqL1xuXG4vKiA9PT09PT09PT09PT0gU1RBUlQ6IHJzeC9hcHAvZnJvbnRlbmQvc2V0dGluZ3MvYXBpL2Zyb250ZW5kX3NldHRpbmdzX2FwaS5zY3NzID09PT09PT09PT09PSAqL1xuQGltcG9ydCBcIlxcL3ZhclxcL3d3d1xcL2h0bWxcXC9zeXN0ZW1cXC9yc3hcXC9hcHBcXC9mcm9udGVuZFxcL3NldHRpbmdzXFwvYXBpXFwvZnJvbnRlbmRfc2V0dGluZ3NfYXBpLnNjc3NcIjtcbi8qID09PT09PT09PT09PSBFTkQ6IHJzeC9hcHAvZnJvbnRlbmQvc2V0dGluZ3MvYXBpL2Zyb250ZW5kX3NldHRpbmdzX2FwaS5zY3NzID09PT09PT09PT09PSAqL1xuXG4vKiA9PT09PT09PT09PT0gU1RBUlQ6IHJzeC9hcHAvZnJvbnRlbmQvc2V0dGluZ3MvdGVtcGxhdGVzL2Zyb250ZW5kX3NldHRpbmdzX3RlbXBsYXRlcy5zY3NzID09PT09PT09PT09PSAqL1xuQGltcG9ydCBcIlxcL3ZhclxcL3d3d1xcL2h0bWxcXC9zeXN0ZW1cXC9yc3hcXC9hcHBcXC9mcm9udGVuZFxcL3NldHRpbmdzXFwvdGVtcGxhdGVzXFwvZnJvbnRlbmRfc2V0dGluZ3NfdGVtcGxhdGVzLnNjc3NcIjtcbi8qID09PT09PT09PT09PSBFTkQ6IHJzeC9hcHAvZnJvbnRlbmQvc2V0dGluZ3MvdGVtcGxhdGVzL2Zyb250ZW5kX3NldHRpbmdzX3RlbXBsYXRlcy5zY3NzID09PT09PT09PT09PSAqL1xuXG4vKiA9PT09PT09PT09PT0gU1RBUlQ6IHJzeC9hcHAvZnJvbnRlbmQvc2V0dGluZ3MvYXVkaXQvZnJvbnRlbmRfc2V0dGluZ3NfYXVkaXQuc2NzcyA9PT09PT09PT09PT0gKi9cbkBpbXBvcnQgXCJcXC92YXJcXC93d3dcXC9odG1sXFwvc3lzdGVtXFwvcnN4XFwvYXBwXFwvZnJvbnRlbmRcXC9zZXR0aW5nc1xcL2F1ZGl0XFwvZnJvbnRlbmRfc2V0dGluZ3NfYXVkaXQuc2Nzc1wiO1xuLyogPT09PT09PT09PT09IEVORDogcnN4L2FwcC9mcm9udGVuZC9zZXR0aW5ncy9hdWRpdC9mcm9udGVuZF9zZXR0aW5nc19hdWRpdC5zY3NzID09PT09PT09PT09PSAqL1xuXG4vKiA9PT09PT09PT09PT0gU1RBUlQ6IHJzeC9hcHAvZnJvbnRlbmQvc2V0dGluZ3MvZnJvbnRlbmRfc2V0dGluZ3Muc2NzcyA9PT09PT09PT09PT0gKi9cbkBpbXBvcnQgXCJcXC92YXJcXC93d3dcXC9odG1sXFwvc3lzdGVtXFwvcnN4XFwvYXBwXFwvZnJvbnRlbmRcXC9zZXR0aW5nc1xcL2Zyb250ZW5kX3NldHRpbmdzLnNjc3NcIjtcbi8qID09PT09PT09PT09PSBFTkQ6IHJzeC9hcHAvZnJvbnRlbmQvc2V0dGluZ3MvZnJvbnRlbmRfc2V0dGluZ3Muc2NzcyA9PT09PT09PT09PT0gKi9cblxuLyogPT09PT09PT09PT09IFNUQVJUOiByc3gvYXBwL2Zyb250ZW5kL3NldHRpbmdzL3Byb2ZpbGVfZGlzcGxheS9mcm9udGVuZF9zZXR0aW5nc19wcm9maWxlX2Rpc3BsYXkuc2NzcyA9PT09PT09PT09PT0gKi9cbkBpbXBvcnQgXCJcXC92YXJcXC93d3dcXC9odG1sXFwvc3lzdGVtXFwvcnN4XFwvYXBwXFwvZnJvbnRlbmRcXC9zZXR0aW5nc1xcL3Byb2ZpbGVfZGlzcGxheVxcL2Zyb250ZW5kX3NldHRpbmdzX3Byb2ZpbGVfZGlzcGxheS5zY3NzXCI7XG4vKiA9PT09PT09PT09PT0gRU5EOiByc3gvYXBwL2Zyb250ZW5kL3NldHRpbmdzL3Byb2ZpbGVfZGlzcGxheS9mcm9udGVuZF9zZXR0aW5nc19wcm9maWxlX2Rpc3BsYXkuc2NzcyA9PT09PT09PT09PT0gKi9cblxuLyogPT09PT09PT09PT09IFNUQVJUOiByc3gvYXBwL2Zyb250ZW5kL3NldHRpbmdzL3Byb2ZpbGVfZWRpdC9mcm9udGVuZF9zZXR0aW5nc19wcm9maWxlX2VkaXQuc2NzcyA9PT09PT09PT09PT0gKi9cbkBpbXBvcnQgXCJcXC92YXJcXC93d3dcXC9odG1sXFwvc3lzdGVtXFwvcnN4XFwvYXBwXFwvZnJvbnRlbmRcXC9zZXR0aW5nc1xcL3Byb2ZpbGVfZWRpdFxcL2Zyb250ZW5kX3NldHRpbmdzX3Byb2ZpbGVfZWRpdC5zY3NzXCI7XG4vKiA9PT09PT09PT09PT0gRU5EOiByc3gvYXBwL2Zyb250ZW5kL3NldHRpbmdzL3Byb2ZpbGVfZWRpdC9mcm9udGVuZF9zZXR0aW5nc19wcm9maWxlX2VkaXQuc2NzcyA9PT09PT09PT09PT0gKi9cblxuLyogPT09PT09PT09PT09IFNUQVJUOiByc3gvYXBwL2Zyb250ZW5kL3NldHRpbmdzL3VzZXJfc2V0dGluZ3MvZnJvbnRlbmRfc2V0dGluZ3NfdXNlcl9zZXR0aW5ncy5zY3NzID09PT09PT09PT09PSAqL1xuQGltcG9ydCBcIlxcL3ZhclxcL3d3d1xcL2h0bWxcXC9zeXN0ZW1cXC9yc3hcXC9hcHBcXC9mcm9udGVuZFxcL3NldHRpbmdzXFwvdXNlcl9zZXR0aW5nc1xcL2Zyb250ZW5kX3NldHRpbmdzX3VzZXJfc2V0dGluZ3Muc2Nzc1wiO1xuLyogPT09PT09PT09PT09IEVORDogcnN4L2FwcC9mcm9udGVuZC9zZXR0aW5ncy91c2VyX3NldHRpbmdzL2Zyb250ZW5kX3NldHRpbmdzX3VzZXJfc2V0dGluZ3Muc2NzcyA9PT09PT09PT09PT0gKi9cblxuLyogPT09PT09PT09PT09IFNUQVJUOiByc3gvYXBwL2Zyb250ZW5kL3NldHRpbmdzL3Bhc3N3b3JkX3NlY3VyaXR5L2Zyb250ZW5kX3NldHRpbmdzX3Bhc3N3b3JkX3NlY3VyaXR5LnNjc3MgPT09PT09PT09PT09ICovXG5AaW1wb3J0IFwiXFwvdmFyXFwvd3d3XFwvaHRtbFxcL3N5c3RlbVxcL3JzeFxcL2FwcFxcL2Zyb250ZW5kXFwvc2V0dGluZ3NcXC9wYXNzd29yZF9zZWN1cml0eVxcL2Zyb250ZW5kX3NldHRpbmdzX3Bhc3N3b3JkX3NlY3VyaXR5LnNjc3NcIjtcbi8qID09PT09PT09PT09PSBFTkQ6IHJzeC9hcHAvZnJvbnRlbmQvc2V0dGluZ3MvcGFzc3dvcmRfc2VjdXJpdHkvZnJvbnRlbmRfc2V0dGluZ3NfcGFzc3dvcmRfc2VjdXJpdHkuc2NzcyA9PT09PT09PT09PT0gKi9cblxuLyogPT09PT09PT09PT09IFNUQVJUOiByc3gvYXBwL2Zyb250ZW5kL3NldHRpbmdzL2FwaV9rZXlzL2Zyb250ZW5kX3NldHRpbmdzX2FwaV9rZXlzLnNjc3MgPT09PT09PT09PT09ICovXG5AaW1wb3J0IFwiXFwvdmFyXFwvd3d3XFwvaHRtbFxcL3N5c3RlbVxcL3JzeFxcL2FwcFxcL2Zyb250ZW5kXFwvc2V0dGluZ3NcXC9hcGlfa2V5c1xcL2Zyb250ZW5kX3NldHRpbmdzX2FwaV9rZXlzLnNjc3NcIjtcbi8qID09PT09PT09PT09PSBFTkQ6IHJzeC9hcHAvZnJvbnRlbmQvc2V0dGluZ3MvYXBpX2tleXMvZnJvbnRlbmRfc2V0dGluZ3NfYXBpX2tleXMuc2NzcyA9PT09PT09PT09PT0gKi9cblxuLyogPT09PT09PT09PT09IFNUQVJUOiByc3gvYXBwL2Zyb250ZW5kL3NldHRpbmdzL3VzZXJfbWFuYWdlbWVudC9mcm9udGVuZF9zZXR0aW5nc191c2VyX21hbmFnZW1lbnQuc2NzcyA9PT09PT09PT09PT0gKi9cbkBpbXBvcnQgXCJcXC92YXJcXC93d3dcXC9odG1sXFwvc3lzdGVtXFwvcnN4XFwvYXBwXFwvZnJvbnRlbmRcXC9zZXR0aW5nc1xcL3VzZXJfbWFuYWdlbWVudFxcL2Zyb250ZW5kX3NldHRpbmdzX3VzZXJfbWFuYWdlbWVudC5zY3NzXCI7XG4vKiA9PT09PT09PT09PT0gRU5EOiByc3gvYXBwL2Zyb250ZW5kL3NldHRpbmdzL3VzZXJfbWFuYWdlbWVudC9mcm9udGVuZF9zZXR0aW5nc191c2VyX21hbmFnZW1lbnQuc2NzcyA9PT09PT09PT09PT0gKi9cblxuLyogPT09PT09PT09PT09IFNUQVJUOiByc3gvYXBwL2Zyb250ZW5kL3NldHRpbmdzL3NpdGVfc2V0dGluZ3MvZnJvbnRlbmRfc2V0dGluZ3Nfc2l0ZV9zZXR0aW5ncy5zY3NzID09PT09PT09PT09PSAqL1xuQGltcG9ydCBcIlxcL3ZhclxcL3d3d1xcL2h0bWxcXC9zeXN0ZW1cXC9yc3hcXC9hcHBcXC9mcm9udGVuZFxcL3NldHRpbmdzXFwvc2l0ZV9zZXR0aW5nc1xcL2Zyb250ZW5kX3NldHRpbmdzX3NpdGVfc2V0dGluZ3Muc2Nzc1wiO1xuLyogPT09PT09PT09PT09IEVORDogcnN4L2FwcC9mcm9udGVuZC9zZXR0aW5ncy9zaXRlX3NldHRpbmdzL2Zyb250ZW5kX3NldHRpbmdzX3NpdGVfc2V0dGluZ3Muc2NzcyA9PT09PT09PT09PT0gKi9cblxuLyogPT09PT09PT09PT09IFNUQVJUOiByc3gvYXBwL2Zyb250ZW5kL2NvbnRhY3RzL2Zyb250ZW5kX2NvbnRhY3RzLnNjc3MgPT09PT09PT09PT09ICovXG5AaW1wb3J0IFwiXFwvdmFyXFwvd3d3XFwvaHRtbFxcL3N5c3RlbVxcL3JzeFxcL2FwcFxcL2Zyb250ZW5kXFwvY29udGFjdHNcXC9mcm9udGVuZF9jb250YWN0cy5zY3NzXCI7XG4vKiA9PT09PT09PT09PT0gRU5EOiByc3gvYXBwL2Zyb250ZW5kL2NvbnRhY3RzL2Zyb250ZW5kX2NvbnRhY3RzLnNjc3MgPT09PT09PT09PT09ICovXG5cbi8qID09PT09PT09PT09PSBTVEFSVDogcnN4L2FwcC9mcm9udGVuZC9jb250YWN0cy9fZGF0YV90YWJsZV9xcS9kYXRhX3RhYmxlLnNjc3MgPT09PT09PT09PT09ICovXG5AaW1wb3J0IFwiXFwvdmFyXFwvd3d3XFwvaHRtbFxcL3N5c3RlbVxcL3JzeFxcL2FwcFxcL2Zyb250ZW5kXFwvY29udGFjdHNcXC9fZGF0YV90YWJsZV9xcVxcL2RhdGFfdGFibGUuc2Nzc1wiO1xuLyogPT09PT09PT09PT09IEVORDogcnN4L2FwcC9mcm9udGVuZC9jb250YWN0cy9fZGF0YV90YWJsZV9xcS9kYXRhX3RhYmxlLnNjc3MgPT09PT09PT09PT09ICovXG5cbi8qID09PT09PT09PT09PSBTVEFSVDogcnN4L2FwcC9mcm9udGVuZC9jb250YWN0cy92aWV3L2Zyb250ZW5kX2NvbnRhY3RzX3ZpZXcuc2NzcyA9PT09PT09PT09PT0gKi9cbkBpbXBvcnQgXCJcXC92YXJcXC93d3dcXC9odG1sXFwvc3lzdGVtXFwvcnN4XFwvYXBwXFwvZnJvbnRlbmRcXC9jb250YWN0c1xcL3ZpZXdcXC9mcm9udGVuZF9jb250YWN0c192aWV3LnNjc3NcIjtcbi8qID09PT09PT09PT09PSBFTkQ6IHJzeC9hcHAvZnJvbnRlbmQvY29udGFjdHMvdmlldy9mcm9udGVuZF9jb250YWN0c192aWV3LnNjc3MgPT09PT09PT09PT09ICovXG5cbi8qID09PT09PT09PT09PSBTVEFSVDogcnN4L2FwcC9mcm9udGVuZC9wcm9qZWN0cy9mcm9udGVuZF9wcm9qZWN0cy5zY3NzID09PT09PT09PT09PSAqL1xuQGltcG9ydCBcIlxcL3ZhclxcL3d3d1xcL2h0bWxcXC9zeXN0ZW1cXC9yc3hcXC9hcHBcXC9mcm9udGVuZFxcL3Byb2plY3RzXFwvZnJvbnRlbmRfcHJvamVjdHMuc2Nzc1wiO1xuLyogPT09PT09PT09PT09IEVORDogcnN4L2FwcC9mcm9udGVuZC9wcm9qZWN0cy9mcm9udGVuZF9wcm9qZWN0cy5zY3NzID09PT09PT09PT09PSAqL1xuXG4vKiA9PT09PT09PT09PT0gU1RBUlQ6IHJzeC9hcHAvZnJvbnRlbmQvcHJvamVjdHMvZnJvbnRlbmRfcHJvamVjdHNfbGlzdC5zY3NzID09PT09PT09PT09PSAqL1xuQGltcG9ydCBcIlxcL3ZhclxcL3d3d1xcL2h0bWxcXC9zeXN0ZW1cXC9yc3hcXC9hcHBcXC9mcm9udGVuZFxcL3Byb2plY3RzXFwvZnJvbnRlbmRfcHJvamVjdHNfbGlzdC5zY3NzXCI7XG4vKiA9PT09PT09PT09PT0gRU5EOiByc3gvYXBwL2Zyb250ZW5kL3Byb2plY3RzL2Zyb250ZW5kX3Byb2plY3RzX2xpc3Quc2NzcyA9PT09PT09PT09PT0gKi9cblxuLyogPT09PT09PT09PT09IFNUQVJUOiByc3gvYXBwL2Zyb250ZW5kL3Byb2plY3RzL2Zyb250ZW5kX3Byb2plY3RzX3ZpZXcuc2NzcyA9PT09PT09PT09PT0gKi9cbkBpbXBvcnQgXCJcXC92YXJcXC93d3dcXC9odG1sXFwvc3lzdGVtXFwvcnN4XFwvYXBwXFwvZnJvbnRlbmRcXC9wcm9qZWN0c1xcL2Zyb250ZW5kX3Byb2plY3RzX3ZpZXcuc2Nzc1wiO1xuLyogPT09PT09PT09PT09IEVORDogcnN4L2FwcC9mcm9udGVuZC9wcm9qZWN0cy9mcm9udGVuZF9wcm9qZWN0c192aWV3LnNjc3MgPT09PT09PT09PT09ICovXG5cbi8qID09PT09PT09PT09PSBTVEFSVDogcnN4L2FwcC9mcm9udGVuZC9wcm9qZWN0cy9mcm9udGVuZF9wcm9qZWN0c19hZGQuc2NzcyA9PT09PT09PT09PT0gKi9cbkBpbXBvcnQgXCJcXC92YXJcXC93d3dcXC9odG1sXFwvc3lzdGVtXFwvcnN4XFwvYXBwXFwvZnJvbnRlbmRcXC9wcm9qZWN0c1xcL2Zyb250ZW5kX3Byb2plY3RzX2FkZC5zY3NzXCI7XG4vKiA9PT09PT09PT09PT0gRU5EOiByc3gvYXBwL2Zyb250ZW5kL3Byb2plY3RzL2Zyb250ZW5kX3Byb2plY3RzX2FkZC5zY3NzID09PT09PT09PT09PSAqL1xuXG4vKiA9PT09PT09PT09PT0gU1RBUlQ6IHJzeC9hcHAvZnJvbnRlbmQvdGFza3MvZnJvbnRlbmRfdGFza3Muc2NzcyA9PT09PT09PT09PT0gKi9cbkBpbXBvcnQgXCJcXC92YXJcXC93d3dcXC9odG1sXFwvc3lzdGVtXFwvcnN4XFwvYXBwXFwvZnJvbnRlbmRcXC90YXNrc1xcL2Zyb250ZW5kX3Rhc2tzLnNjc3NcIjtcbi8qID09PT09PT09PT09PSBFTkQ6IHJzeC9hcHAvZnJvbnRlbmQvdGFza3MvZnJvbnRlbmRfdGFza3Muc2NzcyA9PT09PT09PT09PT0gKi9cblxuLyogPT09PT09PT09PT09IFNUQVJUOiByc3gvYXBwL2Zyb250ZW5kL3Rhc2tzL2Zyb250ZW5kX3Rhc2tzX3ZpZXcuc2NzcyA9PT09PT09PT09PT0gKi9cbkBpbXBvcnQgXCJcXC92YXJcXC93d3dcXC9odG1sXFwvc3lzdGVtXFwvcnN4XFwvYXBwXFwvZnJvbnRlbmRcXC90YXNrc1xcL2Zyb250ZW5kX3Rhc2tzX3ZpZXcuc2Nzc1wiO1xuLyogPT09PT09PT09PT09IEVORDogcnN4L2FwcC9mcm9udGVuZC90YXNrcy9mcm9udGVuZF90YXNrc192aWV3LnNjc3MgPT09PT09PT09PT09ICovXG5cbi8qID09PT09PT09PT09PSBTVEFSVDogcnN4L2FwcC9mcm9udGVuZC90YXNrcy9mcm9udGVuZF90YXNrc19hZGQuc2NzcyA9PT09PT09PT09PT0gKi9cbkBpbXBvcnQgXCJcXC92YXJcXC93d3dcXC9odG1sXFwvc3lzdGVtXFwvcnN4XFwvYXBwXFwvZnJvbnRlbmRcXC90YXNrc1xcL2Zyb250ZW5kX3Rhc2tzX2FkZC5zY3NzXCI7XG4vKiA9PT09PT09PT09PT0gRU5EOiByc3gvYXBwL2Zyb250ZW5kL3Rhc2tzL2Zyb250ZW5kX3Rhc2tzX2FkZC5zY3NzID09PT09PT09PT09PSAqL1xuXG4vKiA9PT09PT09PT09PT0gU1RBUlQ6IHJzeC9hcHAvZnJvbnRlbmQvY2FsZW5kYXIvZnJvbnRlbmRfY2FsZW5kYXIuc2NzcyA9PT09PT09PT09PT0gKi9cbkBpbXBvcnQgXCJcXC92YXJcXC93d3dcXC9odG1sXFwvc3lzdGVtXFwvcnN4XFwvYXBwXFwvZnJvbnRlbmRcXC9jYWxlbmRhclxcL2Zyb250ZW5kX2NhbGVuZGFyLnNjc3NcIjtcbi8qID09PT09PT09PT09PSBFTkQ6IHJzeC9hcHAvZnJvbnRlbmQvY2FsZW5kYXIvZnJvbnRlbmRfY2FsZW5kYXIuc2NzcyA9PT09PT09PT09PT0gKi9cblxuLyogPT09PT09PT09PT09IFNUQVJUOiByc3gvYXBwL2Zyb250ZW5kL2NhbGVuZGFyL2Zyb250ZW5kX2NhbGVuZGFyX2V2ZW50LnNjc3MgPT09PT09PT09PT09ICovXG5AaW1wb3J0IFwiXFwvdmFyXFwvd3d3XFwvaHRtbFxcL3N5c3RlbVxcL3JzeFxcL2FwcFxcL2Zyb250ZW5kXFwvY2FsZW5kYXJcXC9mcm9udGVuZF9jYWxlbmRhcl9ldmVudC5zY3NzXCI7XG4vKiA9PT09PT09PT09PT0gRU5EOiByc3gvYXBwL2Zyb250ZW5kL2NhbGVuZGFyL2Zyb250ZW5kX2NhbGVuZGFyX2V2ZW50LnNjc3MgPT09PT09PT09PT09ICovXG5cbi8qID09PT09PT09PT09PSBTVEFSVDogcnN4L2FwcC9mcm9udGVuZC9pbnZvaWNlcy9mcm9udGVuZF9pbnZvaWNlcy5zY3NzID09PT09PT09PT09PSAqL1xuQGltcG9ydCBcIlxcL3ZhclxcL3d3d1xcL2h0bWxcXC9zeXN0ZW1cXC9yc3hcXC9hcHBcXC9mcm9udGVuZFxcL2ludm9pY2VzXFwvZnJvbnRlbmRfaW52b2ljZXMuc2Nzc1wiO1xuLyogPT09PT09PT09PT09IEVORDogcnN4L2FwcC9mcm9udGVuZC9pbnZvaWNlcy9mcm9udGVuZF9pbnZvaWNlcy5zY3NzID09PT09PT09PT09PSAqL1xuXG4vKiA9PT09PT09PT09PT0gU1RBUlQ6IHJzeC9hcHAvZnJvbnRlbmQvaW52b2ljZXMvZnJvbnRlbmRfaW52b2ljZXNfdmlldy5zY3NzID09PT09PT09PT09PSAqL1xuQGltcG9ydCBcIlxcL3ZhclxcL3d3d1xcL2h0bWxcXC9zeXN0ZW1cXC9yc3hcXC9hcHBcXC9mcm9udGVuZFxcL2ludm9pY2VzXFwvZnJvbnRlbmRfaW52b2ljZXNfdmlldy5zY3NzXCI7XG4vKiA9PT09PT09PT09PT0gRU5EOiByc3gvYXBwL2Zyb250ZW5kL2ludm9pY2VzL2Zyb250ZW5kX2ludm9pY2VzX3ZpZXcuc2NzcyA9PT09PT09PT09PT0gKi9cblxuLyogPT09PT09PT09PT09IFNUQVJUOiByc3gvYXBwL2Zyb250ZW5kL2ludm9pY2VzL2Zyb250ZW5kX2ludm9pY2VzX2FkZC5zY3NzID09PT09PT09PT09PSAqL1xuQGltcG9ydCBcIlxcL3ZhclxcL3d3d1xcL2h0bWxcXC9zeXN0ZW1cXC9yc3hcXC9hcHBcXC9mcm9udGVuZFxcL2ludm9pY2VzXFwvZnJvbnRlbmRfaW52b2ljZXNfYWRkLnNjc3NcIjtcbi8qID09PT09PT09PT09PSBFTkQ6IHJzeC9hcHAvZnJvbnRlbmQvaW52b2ljZXMvZnJvbnRlbmRfaW52b2ljZXNfYWRkLnNjc3MgPT09PT09PT09PT09ICovXG5cbi8qID09PT09PT09PT09PSBTVEFSVDogcnN4L2FwcC9mcm9udGVuZC9yZXBvcnRzL2Zyb250ZW5kX3JlcG9ydHMuc2NzcyA9PT09PT09PT09PT0gKi9cbkBpbXBvcnQgXCJcXC92YXJcXC93d3dcXC9odG1sXFwvc3lzdGVtXFwvcnN4XFwvYXBwXFwvZnJvbnRlbmRcXC9yZXBvcnRzXFwvZnJvbnRlbmRfcmVwb3J0cy5zY3NzXCI7XG4vKiA9PT09PT09PT09PT0gRU5EOiByc3gvYXBwL2Zyb250ZW5kL3JlcG9ydHMvZnJvbnRlbmRfcmVwb3J0cy5zY3NzID09PT09PT09PT09PSAqL1xuXG4vKiA9PT09PT09PT09PT0gU1RBUlQ6IHJzeC9hcHAvZnJvbnRlbmQvcmVwb3J0cy9mcm9udGVuZF9yZXBvcnRzX3JldmVudWUuc2NzcyA9PT09PT09PT09PT0gKi9cbkBpbXBvcnQgXCJcXC92YXJcXC93d3dcXC9odG1sXFwvc3lzdGVtXFwvcnN4XFwvYXBwXFwvZnJvbnRlbmRcXC9yZXBvcnRzXFwvZnJvbnRlbmRfcmVwb3J0c19yZXZlbnVlLnNjc3NcIjtcbi8qID09PT09PT09PT09PSBFTkQ6IHJzeC9hcHAvZnJvbnRlbmQvcmVwb3J0cy9mcm9udGVuZF9yZXBvcnRzX3JldmVudWUuc2NzcyA9PT09PT09PT09PT0gKi9cblxuLyogPT09PT09PT09PT09IFNUQVJUOiByc3gvYXBwL2Zyb250ZW5kL3JlcG9ydHMvZnJvbnRlbmRfcmVwb3J0c19jbGllbnRzLnNjc3MgPT09PT09PT09PT09ICovXG5AaW1wb3J0IFwiXFwvdmFyXFwvd3d3XFwvaHRtbFxcL3N5c3RlbVxcL3JzeFxcL2FwcFxcL2Zyb250ZW5kXFwvcmVwb3J0c1xcL2Zyb250ZW5kX3JlcG9ydHNfY2xpZW50cy5zY3NzXCI7XG4vKiA9PT09PT09PT09PT0gRU5EOiByc3gvYXBwL2Zyb250ZW5kL3JlcG9ydHMvZnJvbnRlbmRfcmVwb3J0c19jbGllbnRzLnNjc3MgPT09PT09PT09PT09ICovXG5cbi8qID09PT09PT09PT09PSBTVEFSVDogcnN4L2FwcC9mcm9udGVuZC9yZXBvcnRzL2Zyb250ZW5kX3JlcG9ydHNfcHJvamVjdHMuc2NzcyA9PT09PT09PT09PT0gKi9cbkBpbXBvcnQgXCJcXC92YXJcXC93d3dcXC9odG1sXFwvc3lzdGVtXFwvcnN4XFwvYXBwXFwvZnJvbnRlbmRcXC9yZXBvcnRzXFwvZnJvbnRlbmRfcmVwb3J0c19wcm9qZWN0cy5zY3NzXCI7XG4vKiA9PT09PT09PT09PT0gRU5EOiByc3gvYXBwL2Zyb250ZW5kL3JlcG9ydHMvZnJvbnRlbmRfcmVwb3J0c19wcm9qZWN0cy5zY3NzID09PT09PT09PT09PSAqL1xuXG4vKiA9PT09PT09PT09PT0gU1RBUlQ6IHJzeC9hcHAvZnJvbnRlbmQvcmVwb3J0cy9mcm9udGVuZF9yZXBvcnRzX3RpbWUuc2NzcyA9PT09PT09PT09PT0gKi9cbkBpbXBvcnQgXCJcXC92YXJcXC93d3dcXC9odG1sXFwvc3lzdGVtXFwvcnN4XFwvYXBwXFwvZnJvbnRlbmRcXC9yZXBvcnRzXFwvZnJvbnRlbmRfcmVwb3J0c190aW1lLnNjc3NcIjtcbi8qID09PT09PT09PT09PSBFTkQ6IHJzeC9hcHAvZnJvbnRlbmQvcmVwb3J0cy9mcm9udGVuZF9yZXBvcnRzX3RpbWUuc2NzcyA9PT09PT09PT09PT0gKi9cblxuLyogPT09PT09PT09PT09IFNUQVJUOiByc3gvYXBwL2Zyb250ZW5kL2FjY291bnQvZnJvbnRlbmRfYWNjb3VudC5zY3NzID09PT09PT09PT09PSAqL1xuQGltcG9ydCBcIlxcL3ZhclxcL3d3d1xcL2h0bWxcXC9zeXN0ZW1cXC9yc3hcXC9hcHBcXC9mcm9udGVuZFxcL2FjY291bnRcXC9mcm9udGVuZF9hY2NvdW50LnNjc3NcIjtcbi8qID09PT09PT09PT09PSBFTkQ6IHJzeC9hcHAvZnJvbnRlbmQvYWNjb3VudC9mcm9udGVuZF9hY2NvdW50LnNjc3MgPT09PT09PT09PT09ICovXG5cbi8qID09PT09PT09PT09PSBTVEFSVDogcnN4L2FwcC9mcm9udGVuZC9mcm9udGVuZC5zY3NzID09PT09PT09PT09PSAqL1xuQGltcG9ydCBcIlxcL3ZhclxcL3d3d1xcL2h0bWxcXC9zeXN0ZW1cXC9yc3hcXC9hcHBcXC9mcm9udGVuZFxcL2Zyb250ZW5kLnNjc3NcIjtcbi8qID09PT09PT09PT09PSBFTkQ6IHJzeC9hcHAvZnJvbnRlbmQvZnJvbnRlbmQuc2NzcyA9PT09PT09PT09PT0gKi9cbiIsIi5KcWh0bWxfQ29tcG9uZW50X0luaXQge1xuICAgIGRpc3BsYXk6bm9uZTtcbn1cbiIsIi8qKlxuICogRGF0YUdyaWQgQ29tcG9uZW50IFN0eWxlcyAoUGhhc2UgMSlcbiAqXG4gKiAqKlJlc3BvbnNpdmUgU3RyYXRlZ3kqKjpcbiAqIC0gRGVza3RvcCAoPj0gNzY4cHgpOiBUYWJsZSBsYXlvdXRcbiAqIC0gTW9iaWxlICg8IDc2OHB4KTogQ2FyZCBsYXlvdXQgKFBoYXNlIDEgLSBiYXNpYywgd2lsbCBlbmhhbmNlIGluIGZ1dHVyZSlcbiAqXG4gKiAqKkRlc2lnbiBQaGlsb3NvcGh5Kio6XG4gKiAtIENsZWFuLCBtaW5pbWFsIHN0eWxpbmdcbiAqIC0gQm9vdHN0cmFwIDUgY29tcGF0aWJsZVxuICogLSBObyBzaGFkb3dzIG9yIGV4Y2Vzc2l2ZSBib3JkZXJzXG4gKiAtIFRvdWNoLWZyaWVuZGx5IHRhcCB0YXJnZXRzIG9uIG1vYmlsZVxuICovXG5cbi8vIENlbGwgcGFkZGluZyB2YWx1ZXMgKERSWSAtIGRlZmluZWQgb25jZSwgcmV1c2VkIHRocm91Z2hvdXQpXG4kZGF0YWdyaWQtY2VsbC1wYWRkaW5nLXk6IDAuNzVyZW07XG4kZGF0YWdyaWQtY2VsbC1wYWRkaW5nLXg6IDAuNzVyZW07XG5cbi5EYXRhR3JpZCB7XG4gICAgLyogQ29udGFpbmVyICovXG4gICAgJi5jYXJkLWJvZHkge1xuICAgICAgICAvLyBJbmhlcml0cyBCb290c3RyYXAgY2FyZC1ib2R5IHN0eWxlc1xuICAgIH1cblxuICAgIC8qIExvYWRpbmcgU3RhdGUgKi9cbiAgICAuZGF0YWdyaWQtbG9hZGluZyB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgcGFkZGluZzogNjBweCAyMHB4O1xuXG4gICAgICAgIC5zcGlubmVyLWJvcmRlciB7XG4gICAgICAgICAgICB3aWR0aDogM3JlbTtcbiAgICAgICAgICAgIGhlaWdodDogM3JlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qIERlc2t0b3A6IFRhYmxlIExheW91dCAqL1xuICAgIC8vIC5kYXRhZ3JpZC10YWJsZS13cmFwcGVyIHtcbiAgICAvLyBJbmhlcml0cyBCb290c3RyYXAgdGFibGUtcmVzcG9uc2l2ZVxuXG4gICAgdGFibGUge1xuICAgICAgICB0aGVhZCB0aCB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmOWZhO1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICNkZWUyZTY7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgICAgICBwYWRkaW5nOiAkZGF0YWdyaWQtY2VsbC1wYWRkaW5nLXkgJGRhdGFncmlkLWNlbGwtcGFkZGluZy14O1xuXG4gICAgICAgICAgICAvLyBTb3J0YWJsZSBjb2x1bW4gaGVhZGVyc1xuICAgICAgICAgICAgLnNvcnRhYmxlLWhlYWRlciB7XG4gICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgICAgIHVzZXItc2VsZWN0OiBub25lO1xuICAgICAgICAgICAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBpIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDVweDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAwLjhlbTtcbiAgICAgICAgICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICMwZDZlZmQ7IC8vIEJvb3RzdHJhcCBwcmltYXJ5XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgdGJvZHkge1xuICAgICAgICAgICAgLy8gRml4ZWQgbWluaW11bSBoZWlnaHQgZm9yIGNvbnNpc3RlbnQgbGF5b3V0IChzZXQgZHluYW1pY2FsbHkgdmlhIEpTKVxuICAgICAgICAgICAgLy8gUHJldmVudHMganVtcGluZyB3aGVuIHN3aXRjaGluZyBiZXR3ZWVuIGxvYWRpbmcvZW1wdHkvcmVzdWx0cyBzdGF0ZXNcbiAgICAgICAgICAgIGRpc3BsYXk6IHRhYmxlLXJvdy1ncm91cDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgICAgLy8gTG9hZGluZyBhbmQgZW1wdHkgc3RhdGVzXG4gICAgICAgICAgICAmLmlzLWxvYWRpbmcsXG4gICAgICAgICAgICAmLmlzLWVtcHR5IHtcbiAgICAgICAgICAgICAgICAvLyBDZW50ZXIgY29udGVudCB2ZXJ0aWNhbGx5IHdpdGhpbiBmaXhlZCBoZWlnaHRcbiAgICAgICAgICAgICAgICB0ci5sb2FkaW5nLXJvdyxcbiAgICAgICAgICAgICAgICB0ci5lbXB0eS1yb3cge1xuICAgICAgICAgICAgICAgICAgICB0ZCB7XG4gICAgICAgICAgICAgICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgdGJvZHkgdHIge1xuICAgICAgICAgICAgJjpob3Zlcjpub3QoLmxvYWRpbmctcm93KTpub3QoLmVtcHR5LXJvdykge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmOGY5ZmE7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHRkIHtcbiAgICAgICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgJGRhdGFncmlkLWNlbGwtcGFkZGluZy14O1xuXG4gICAgICAgICAgICAgICAgLy8gQ2VsbCBjb250ZW50cyB3cmFwcGVkIGluIGxpbmtzXG4gICAgICAgICAgICAgICAgLmRhdGFncmlkLXJvdy1saW5rIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG5cbiAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC8vIFRleHQtb25seSBjZWxscyBnZXQgdmVydGljYWwgcGFkZGluZ1xuICAgICAgICAgICAgICAgICYuaGFzLW9ubHktdGV4dCB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6ICRkYXRhZ3JpZC1jZWxsLXBhZGRpbmcteSAkZGF0YWdyaWQtY2VsbC1wYWRkaW5nLXg7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLy8gRnVsbC13aWR0aCBsaW5rIGNlbGxzOiB0cmFuc2ZlciBwYWRkaW5nIGZyb20gY2VsbCB0byBhbmNob3JcbiAgICAgICAgICAgICAgICAmLmhhcy1mdWxsLWxpbmsge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgICAgICAgICAgID4gYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6ICRkYXRhZ3JpZC1jZWxsLXBhZGRpbmcteSAkZGF0YWdyaWQtY2VsbC1wYWRkaW5nLXg7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gQ2hlY2tib3ggY29sdW1uXG4gICAgICAgIHRoOmZpcnN0LWNoaWxkLFxuICAgICAgICB0ZDpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICB3aWR0aDogNDBweDtcbiAgICAgICAgfVxuICAgIH1cbiAgICAvLyB9XG5cbiAgICAvKiBFbXB0eSBTdGF0ZSAqL1xuICAgIC5kYXRhZ3JpZC1lbXB0eSB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgcGFkZGluZzogNjBweCAyMHB4O1xuXG4gICAgICAgIGkge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyogTW9iaWxlIFJlc3BvbnNpdmUgKDwgNzY4cHgpIC0gUGhhc2UgMSBrZWVwcyB0YWJsZSwgd2lsbCBhZGQgY2FyZHMgbGF0ZXIgKi9cbiAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAgICAgdGFibGUge1xuICAgICAgICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTtcblxuICAgICAgICAgICAgdGhlYWQgdGgge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6ICgkZGF0YWdyaWQtY2VsbC1wYWRkaW5nLXkgKiAwLjY3KSAoJGRhdGFncmlkLWNlbGwtcGFkZGluZy14ICogMC42Nyk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHRib2R5IHRkIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwICgkZGF0YWdyaWQtY2VsbC1wYWRkaW5nLXggKiAwLjY3KTtcblxuICAgICAgICAgICAgICAgICYuaGFzLW9ubHktdGV4dCB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6ICgkZGF0YWdyaWQtY2VsbC1wYWRkaW5nLXkgKiAwLjY3KSAoJGRhdGFncmlkLWNlbGwtcGFkZGluZy14ICogMC42Nyk7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJi5oYXMtZnVsbC1saW5rID4gYSB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6ICgkZGF0YWdyaWQtY2VsbC1wYWRkaW5nLXkgKiAwLjY3KSAoJGRhdGFncmlkLWNlbGwtcGFkZGluZy14ICogMC42Nyk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyogUHJpbnQgU3R5bGVzICovXG4gICAgQG1lZGlhIHByaW50IHtcbiAgICAgICAgLy8gSGlkZSBjaGVja2JveGVzXG4gICAgICAgIGlucHV0W3R5cGU9J2NoZWNrYm94J10ge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gRXhwYW5kIHRhYmxlIHRvIGZ1bGwgd2lkdGhcbiAgICAgICAgLmRhdGFncmlkLXRhYmxlLXdyYXBwZXIge1xuICAgICAgICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBSZW1vdmUgaG92ZXIgZWZmZWN0c1xuICAgICAgICAuZGF0YWdyaWQtdGFibGUgdGJvZHkgdHI6aG92ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIuRnJvbnRlbmRfRGFzaGJvYXJkIHtcbiAgLmNoYXJ0LXBsYWNlaG9sZGVyIHtcbiAgICBtaW4taGVpZ2h0OiAzMDBweDtcbiAgfVxufVxuIiwiLy8gSWNvbiBidXR0b24gLSBpY29uLW9ubHkgYnV0dG9uIHdpdGggcGVyZmVjdCBjZW50ZXJpbmdcbi5JY29uX0J1dHRvbiB7XG4gIC8vIFNxdWFyZSBwYWRkaW5nIGZvciBpY29uLW9ubHkgYnV0dG9uc1xuICBwYWRkaW5nOiAwLjM3NXJlbTtcblxuICAvLyBQZXJmZWN0IGNlbnRlcmluZyB1c2luZyBmbGV4Ym94XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICAvLyBJY29uIGRpc3BsYXkgd2l0aGluIGJ1dHRvblxuICAuSWNvbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luOiAwOyAvLyBPdmVycmlkZSBhbnkgaWNvbiBtYXJnaW5zXG4gIH1cbn1cbiIsIi8vIEljb24gc2l6ZSB1dGlsaXRpZXMgLSBiYXNlZCBvbiBWb2x0IEJvb3RzdHJhcCA1IERhc2hib2FyZFxuLmljb24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAxLjVyZW07ICAvLyAyNHB4IC0gZGVmYXVsdCBzaXplXG4gIGhlaWdodDogMS41cmVtO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXG4gIC8vIFNpemUgdmFyaWFudHNcbiAgJi5pY29uLXhzIHtcbiAgICB3aWR0aDogMXJlbTsgICAgLy8gMTZweFxuICAgIGhlaWdodDogMXJlbTtcbiAgfVxuXG4gICYuaWNvbi1zbSB7XG4gICAgd2lkdGg6IDEuMjVyZW07IC8vIDIwcHhcbiAgICBoZWlnaHQ6IDEuMjVyZW07XG4gIH1cblxuICAmLmljb24tbGcge1xuICAgIHdpZHRoOiAycmVtOyAgICAvLyAzMnB4XG4gICAgaGVpZ2h0OiAycmVtO1xuICB9XG5cbiAgJi5pY29uLXhsIHtcbiAgICB3aWR0aDogM3JlbTsgICAgLy8gNDhweFxuICAgIGhlaWdodDogM3JlbTtcbiAgfVxuXG4gICYuaWNvbi14eHMge1xuICAgIHdpZHRoOiAwLjc1cmVtOyAvLyAxMnB4XG4gICAgaGVpZ2h0OiAwLjc1cmVtO1xuICB9XG59XG4iLCIvKipcbiAqIFJzeF9Nb2RhbCBTdHlsaW5nXG4gKlxuICogT3ZlcnJpZGVzIEJvb3RzdHJhcCBtb2RhbCBkZWZhdWx0cyB0byBpbXBsZW1lbnQgY3VzdG9tIHNpemluZyBhbmQgYmVoYXZpb3JcbiAqL1xuXG4vLyBAU0NTUy1BTklNLTAxLUVYQ0VQVElPTiAtIE1vZGFsIGZseS1pbiBhbmltYXRpb24gaXMgaW50ZW50aW9uYWwgVVhcblxuLnJzeC1tb2RhbCB7XG4gICAgLy8gRGlzcGxheSBhcyBmbGV4IGZvciBjZW50ZXJpbmdcbiAgICAmLm1vZGFsIHtcbiAgICAgICAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgb3BhY2l0eTogMDtcblxuICAgICAgICAmLnNob3cge1xuICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIFJlbW92ZSBkZWZhdWx0IG1hcmdpbiwgd2UgY29udHJvbCBwb3NpdGlvbmluZ1xuICAgIC5tb2RhbC1kaWFsb2cge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIG1heC13aWR0aDogbm9uZTtcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIG1pbi13aWR0aDogNDAwcHg7IC8vIE1pbmltdW0gd2lkdGggbGlrZSBzdGFuZGFyZCBPUyBhbGVydCBib3hlc1xuICAgIH1cblxuICAgIC8vIEVuc3VyZSBjb250ZW50IGRvZXNuJ3Qgb3ZlcmZsb3dcbiAgICAubW9kYWwtY29udGVudCB7XG4gICAgICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIG1pbi1oZWlnaHQ6IDI2MHB4OyAvLyBNaW5pbXVtIGhlaWdodCBmb3IgcmVhc29uYWJsZSBhcHBlYXJhbmNlXG4gICAgICAgIGJveC1zaGFkb3c6IDAgNHB4IDEycHggcmdiYSgwLCAwLCAwLCAwLjE1KTsgLy8gU3VidGxlIGRyb3Agc2hhZG93XG4gICAgfVxuXG4gICAgLy8gSGVhZGVyIHN0eWxpbmdcbiAgICAubW9kYWwtaGVhZGVyIHtcbiAgICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZGVlMmU2O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmOWZhOyAvLyBTbGlnaHQgZ3JheSBiYWNrZ3JvdW5kXG4gICAgICAgIHBhZGRpbmc6IDAuNzVyZW0gMXJlbTsgLy8gU2hvcnRlciBoZWlnaHRcblxuICAgICAgICAubW9kYWwtdGl0bGUge1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMXJlbTsgLy8gU21hbGxlciBmb250XG4gICAgICAgIH1cblxuICAgICAgICAuYnRuLWNsb3NlIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAuNXJlbTtcbiAgICAgICAgICAgIG1hcmdpbjogLTAuNXJlbSAtMC41cmVtIC0wLjVyZW0gYXV0bztcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIEJvZHkgY2FuIHNjcm9sbCBpZiBuZWVkZWRcbiAgICAubW9kYWwtYm9keSB7XG4gICAgICAgIGZsZXg6IDEgMSBhdXRvO1xuICAgICAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgICAgICBwYWRkaW5nOiAxLjVyZW07XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgICAgLy8gRm9ybXMgc2hvdWxkIGJlIGxlZnQtYWxpZ25lZFxuICAgICAgICBmb3JtIHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIFdoZW4gbW9kYWwgaGFzIGFuIGljb25cbiAgICAgICAgJi5oYXMtaWNvbiB7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuXG4gICAgICAgICAgICAubW9kYWwtaWNvbiB7XG4gICAgICAgICAgICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiA0MHB4O1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMXJlbTtcbiAgICAgICAgICAgICAgICBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0O1xuXG4gICAgICAgICAgICAgICAgLy8gRXJyb3IgaWNvbiBjb2xvclxuICAgICAgICAgICAgICAgICYuYmktZXhjbGFtYXRpb24tY2lyY2xlIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICNkYzM1NDU7IC8vIEJvb3RzdHJhcCBkYW5nZXIgcmVkXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAubW9kYWwtYm9keS1jb250ZW50IHtcbiAgICAgICAgICAgICAgICBmbGV4OiAxO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gRm9vdGVyIHdpdGggYnV0dG9uc1xuICAgIC5tb2RhbC1mb290ZXIge1xuICAgICAgICBmbGV4LXNocmluazogMDtcbiAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNkZWUyZTY7XG4gICAgICAgIHBhZGRpbmc6IDFyZW0gMS41cmVtO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBnYXA6IDAuNXJlbTtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cbiAgICAgICAgLmJ0biB7XG4gICAgICAgICAgICBtaW4td2lkdGg6IDgwcHg7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8vIE1vZGFsIGRpYWxvZyB3aXRoIG9wdGlvbmFsIGFuaW1hdGlvblxuLnJzeC1tb2RhbCB7XG4gICAgLm1vZGFsLWRpYWxvZyB7XG4gICAgICAgIC8vIEVuYWJsZSB0cmFuc2l0aW9ucyBmb3IgZmx5LWluIGFuaW1hdGlvblxuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMTUwbXMgZWFzZS1vdXQsIG9wYWNpdHkgMTUwbXMgZWFzZS1vdXQ7XG4gICAgfVxufVxuXG4vLyBCYWNrZHJvcCBzdHlsaW5nXG4ubW9kYWwtYmFja2Ryb3Age1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB6LWluZGV4OiAxMDQwO1xuICAgIHdpZHRoOiAxMDB2dztcbiAgICBoZWlnaHQ6IDEwMHZoO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC41KTtcblxuICAgIC8vIFJlbW92ZSBiYWNrZHJvcCBmYWRlIHRyYW5zaXRpb25cbiAgICAmLmZhZGUge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgIH1cbn1cblxuLy8gRW5zdXJlIG1vZGFsIGlzIGFib3ZlIGJhY2tkcm9wXG4ucnN4LW1vZGFsIHtcbiAgICB6LWluZGV4OiAxMDUwO1xufVxuXG4vLyBNb2JpbGUgc3BlY2lmaWMgc3R5bGVzXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgICAucnN4LW1vZGFsIHtcbiAgICAgICAgLm1vZGFsLWRpYWxvZyB7XG4gICAgICAgICAgICBtYXJnaW46IDUlO1xuICAgICAgICAgICAgbWF4LXdpZHRoOiA5MCU7XG4gICAgICAgICAgICBtaW4td2lkdGg6IDI4MHB4OyAvLyBTbWFsbGVyIG1pbmltdW0gZm9yIG1vYmlsZSBzY3JlZW5zXG4gICAgICAgIH1cblxuICAgICAgICAubW9kYWwtYm9keSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAxcmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgLm1vZGFsLWZvb3RlciB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwLjc1cmVtIDFyZW07XG5cbiAgICAgICAgICAgIC5idG4ge1xuICAgICAgICAgICAgICAgIG1pbi13aWR0aDogNjBweDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4vLyBGb3JtIGVycm9yIHN0eWxpbmcgd2l0aGluIG1vZGFsc1xuLnJzeC1tb2RhbCB7XG4gICAgLm1vZGFsLWJvZHkge1xuICAgICAgICAuaXMtaW52YWxpZCB7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6ICNkYzM1NDU7XG4gICAgICAgIH1cblxuICAgICAgICAuaW52YWxpZC1mZWVkYmFjayB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIGNvbG9yOiAjZGMzNTQ1O1xuICAgICAgICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDAuMjVyZW07XG4gICAgICAgIH1cblxuICAgICAgICAuYWxlcnQge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi5QaW5fVmVyaWZpY2F0aW9uX0Zvcm0ge1xuICAgIC5waW4taW5wdXRzIHtcbiAgICAgICAgLnBpbi1pbnB1dCB7XG4gICAgICAgICAgICB3aWR0aDogNTBweDtcbiAgICAgICAgICAgIGhlaWdodDogNjBweDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgYm9yZGVyOiAycHggc29saWQgI2RlZTJlNjtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2U7XG5cbiAgICAgICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogIzBkNmVmZDtcbiAgICAgICAgICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAwLjI1cmVtIHJnYmEoMTMsIDExMCwgMjUzLCAwLjI1KTtcbiAgICAgICAgICAgICAgICBvdXRsaW5lOiAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLmlzLWludmFsaWQge1xuICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogI2RjMzU0NTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC50ZXh0LW11dGVkIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICB9XG59XG4iLCIvLyBMYXlvdXQgQ29tcG9uZW50IFN0eWxlc1xuXG4vLyBQYWdlIGNvbnRlbnQgY29udGFpbmVyIHdpZHRoIGNvbnRyb2xcbi5wYWdlLWNvbnRlbnQge1xuICAgIC8vIENvbnN0cmFpbmVkIHdpZHRoIChkZWZhdWx0IGZvciBtb3N0IHBhZ2VzIC0gZm9ybXMsIGRldGFpbCB2aWV3cylcbiAgICAmLS1jb25zdHJhaW5lZCB7XG4gICAgICAgIG1heC13aWR0aDogMTYwMHB4O1xuICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICB9XG5cbiAgICAvLyBXaWRlciBjb25zdHJhaW5lZCB3aWR0aCAoZm9yIHBhZ2VzIG5lZWRpbmcgbW9yZSBob3Jpem9udGFsIHNwYWNlKVxuICAgICYtLWNvbnN0cmFpbmVkLXdpZGVyIHtcbiAgICAgICAgbWF4LXdpZHRoOiAxODAwcHg7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIH1cblxuICAgIC8vIEZ1bGwgd2lkdGggaXMgdGhlIGRlZmF1bHQgd2l0aG91dCB0aGUgbW9kaWZpZXIgY2xhc3NcbiAgICAvLyBEYXRhR3JpZCBwYWdlcywgZGFzaGJvYXJkcywgYW5kIG90aGVyIGRhdGEtZGVuc2UgcGFnZXMgdXNlIHRoaXNcbn1cbiIsIi8qKlxuICogRnJvbnRlbmQgU2V0dGluZ3MgLSBVbmlmaWVkIFN0eWxlc1xuICogU2hhcmVkIHN0eWxlcyBmb3IgYWxsIHNldHRpbmdzIHBhZ2VzIChnZW5lcmFsLCBwcm9maWxlLCBhY2NvdW50KVxuICovXG5cbi5mcm9udGVuZC1zZXR0aW5ncyB7XG4gICAgLy8gU2lkZWJhciBTdHlsZXNcbiAgICAuc2lkZWJhciB7XG4gICAgICAgIG1pbi1oZWlnaHQ6IGNhbGMoMTAwdmggLSA1NnB4KTtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgYm94LXNoYWRvdzogaW5zZXQgLTFweCAwIDAgcmdiYSgwLCAwLCAwLCAwLjEpO1xuXG4gICAgICAgIC5wb3NpdGlvbi1zdGlja3kge1xuICAgICAgICAgICAgdG9wOiAxcmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgLnNpZGViYXItaGVhZGluZyB7XG4gICAgICAgICAgICBmb250LXNpemU6IDAuNzVyZW07XG4gICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMDVlbTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5uYXYtbGluayB7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgY29sb3I6ICMzMzM7XG4gICAgICAgICAgICBwYWRkaW5nOiAwLjVyZW0gMS41cmVtO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjpcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yIDAuMnMsXG4gICAgICAgICAgICAgICAgY29sb3IgMC4ycztcblxuICAgICAgICAgICAgaSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwLjVyZW07XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4wNSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogIzBkNmVmZDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDEzLCAxMTAsIDI1MywgMC4xKTtcbiAgICAgICAgICAgICAgICBib3JkZXItbGVmdDogM3B4IHNvbGlkICMwZDZlZmQ7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiBjYWxjKDEuNXJlbSAtIDNweCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBNYWluIENvbnRlbnQgQXJlYVxuICAgIG1haW4ge1xuICAgICAgICBwYWRkaW5nLXRvcDogMXJlbTtcbiAgICB9XG5cbiAgICAvLyBQYWdlIEhlYWRlclxuICAgIC5wYWdlLWhlYWRlciB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZGVlMmU2O1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMXJlbTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcblxuICAgICAgICBoMSB7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gQ2FyZCBTdHlsZXNcbiAgICAuY2FyZCB7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4xMjUpO1xuICAgICAgICBib3gtc2hhZG93OiAwIDAuMTI1cmVtIDAuMjVyZW0gcmdiYSgwLCAwLCAwLCAwLjA3NSk7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcblxuICAgICAgICAuY2FyZC1oZWFkZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjlmYTtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMTI1KTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDFyZW0gMS4yNXJlbTtcblxuICAgICAgICAgICAgaDUsXG4gICAgICAgICAgICBoNiB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmNhcmQtYm9keSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAxLjI1cmVtO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gRm9ybSBTdHlsZXNcbiAgICAuZm9ybS1sYWJlbCB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgICB9XG5cbiAgICAuZm9ybS10ZXh0IHtcbiAgICAgICAgZm9udC1zaXplOiAwLjg3NWVtO1xuICAgICAgICBjb2xvcjogIzZjNzU3ZDtcbiAgICB9XG5cbiAgICAvLyBVc2FnZSBNZXRyaWNzXG4gICAgLnVzYWdlLW1ldHJpYyB7XG4gICAgICAgIC5wcm9ncmVzcyB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTllY2VmO1xuXG4gICAgICAgICAgICAucHJvZ3Jlc3MtYmFyIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGQ2ZWZkO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgc21hbGwge1xuICAgICAgICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIFByb2ZpbGUgU2VjdGlvbiBTcGVjaWZpYyBTdHlsZXNcbiAgICAucHJvZmlsZS1zZWN0aW9uIHtcbiAgICAgICAgLmF2YXRhci1sZyB7XG4gICAgICAgICAgICB3aWR0aDogMTIwcHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDEyMHB4O1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzBkNmVmZDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcblxuICAgICAgICAgICAgLmF2YXRhci1pbml0aWFscyB7XG4gICAgICAgICAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMi41cmVtO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBBY2NvdW50IFNlY3Rpb24gU3BlY2lmaWMgU3R5bGVzXG4gICAgLmFjY291bnQtc2VjdGlvbiB7XG4gICAgICAgIC5zdWJzY3JpcHRpb24tYmFkZ2Uge1xuICAgICAgICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAuMzVlbSAwLjY1ZW07XG4gICAgICAgIH1cblxuICAgICAgICAuYmlsbGluZy1pbmZvIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmOGY5ZmE7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwLjM3NXJlbTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDFyZW07XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxcmVtO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gQnV0dG9uIEdyb3VwcyBpbiBDYXJkc1xuICAgIC5jYXJkLWFjdGlvbnMge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBnYXA6IDAuNXJlbTtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICAgICAgcGFkZGluZy10b3A6IDFyZW07XG4gICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZGVlMmU2O1xuICAgICAgICBtYXJnaW4tdG9wOiAxcmVtO1xuICAgIH1cblxuICAgIC8vIFN0YXRzIFdpZGdldFxuICAgIC5zdGF0cy13aWRnZXQge1xuICAgICAgICAuc3RhdC1pdGVtIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAuNzVyZW0gMDtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZTllY2VmO1xuXG4gICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5zdGF0LWxhYmVsIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjNmM3NTdkO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuc3RhdC12YWx1ZSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjMjEyNTI5O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gUmVzcG9uc2l2ZSBhZGp1c3RtZW50c1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAgICAgICAuc2lkZWJhciB7XG4gICAgICAgICAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgICAgICAgICAgbWluLWhlaWdodDogYXV0bztcbiAgICAgICAgICAgIHBhZGRpbmc6IDFyZW07XG4gICAgICAgIH1cblxuICAgICAgICBtYWluIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDFyZW07XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8vIC8vIFNldHRpbmdzIHBhZ2Ugc3R5bGVzXG4vLyAuRnJvbnRlbmRfU2V0dGluZ3Mge1xuLy8gICAgIC8vIFNpZGViYXIgc3R5bGVzXG4vLyAgICAgLnNpZGViYXIge1xuLy8gICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XG4vLyAgICAgICAgIHRvcDogNTZweDsgLy8gQmVsb3cgbmF2YmFyXG4vLyAgICAgICAgIGJvdHRvbTogMDtcbi8vICAgICAgICAgbGVmdDogMDtcbi8vICAgICAgICAgei1pbmRleDogMTAwO1xuLy8gICAgICAgICBwYWRkaW5nOiA0OHB4IDAgMDtcbi8vICAgICAgICAgYm94LXNoYWRvdzogaW5zZXQgLTFweCAwIDAgcmdiYSgwLCAwLCAwLCAuMSk7XG4vLyAgICAgfVxuXG4vLyAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4vLyAgICAgICAgIC5zaWRlYmFyIHtcbi8vICAgICAgICAgICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4vLyAgICAgICAgICAgICBwYWRkaW5nLXRvcDogMXJlbTtcbi8vICAgICAgICAgfVxuLy8gICAgIH1cblxuLy8gICAgIC5zaWRlYmFyLXN0aWNreSB7XG4vLyAgICAgICAgIGhlaWdodDogY2FsYygxMDB2aCAtIDQ4cHgpO1xuLy8gICAgICAgICBvdmVyZmxvdy14OiBoaWRkZW47XG4vLyAgICAgICAgIG92ZXJmbG93LXk6IGF1dG87XG4vLyAgICAgfVxuXG4vLyAgICAgLnNpZGViYXIgLm5hdi1saW5rIHtcbi8vICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbi8vICAgICAgICAgY29sb3I6ICMzMzM7XG4vLyAgICAgICAgIHBhZGRpbmc6IC41cmVtIDFyZW07XG5cbi8vICAgICAgICAgaSB7XG4vLyAgICAgICAgICAgICB3aWR0aDogMjBweDtcbi8vICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogOHB4O1xuLy8gICAgICAgICB9XG5cbi8vICAgICAgICAgJjpob3ZlciB7XG4vLyAgICAgICAgICAgICBjb2xvcjogIzBkNmVmZDtcbi8vICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMTMsIDExMCwgMjUzLCAwLjA1KTtcbi8vICAgICAgICAgfVxuXG4vLyAgICAgICAgICYuYWN0aXZlIHtcbi8vICAgICAgICAgICAgIGNvbG9yOiAjMGQ2ZWZkO1xuLy8gICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxMywgMTEwLCAyNTMsIDAuMSk7XG4vLyAgICAgICAgICAgICBib3JkZXItbGVmdDogM3B4IHNvbGlkICMwZDZlZmQ7XG4vLyAgICAgICAgIH1cbi8vICAgICB9XG5cbi8vICAgICAuc2lkZWJhci1oZWFkaW5nIHtcbi8vICAgICAgICAgZm9udC1zaXplOiAuNzVyZW07XG4vLyAgICAgfVxuXG4vLyAgICAgLy8gTWFpbiBjb250ZW50IG9mZnNldCBmb3Igc2lkZWJhclxuLy8gICAgIG1haW4ge1xuLy8gICAgICAgICBtYXJnaW4tbGVmdDogMDtcbi8vICAgICB9XG5cbi8vICAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbi8vICAgICAgICAgbWFpbiB7XG4vLyAgICAgICAgICAgICBwYWRkaW5nLXRvcDogMDtcbi8vICAgICAgICAgfVxuLy8gICAgIH1cbi8vIH1cblxuLy8gLy8gTW9iaWxlIHNpZGViYXIgdG9nZ2xlIGJ1dHRvblxuLy8gLnNpZGViYXItdG9nZ2xlIHtcbi8vICAgICBwb3NpdGlvbjogZml4ZWQ7XG4vLyAgICAgYm90dG9tOiAyMHB4O1xuLy8gICAgIHJpZ2h0OiAyMHB4O1xuLy8gICAgIHotaW5kZXg6IDEwMTtcbi8vICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4vLyAgICAgd2lkdGg6IDUwcHg7XG4vLyAgICAgaGVpZ2h0OiA1MHB4O1xuLy8gICAgIGRpc3BsYXk6IGZsZXg7XG4vLyAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbi8vICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbi8vICAgICBib3gtc2hhZG93OiAwIDJweCAxMHB4IHJnYmEoMCwgMCwgMCwgMC4yKTtcblxuLy8gICAgIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuLy8gICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4vLyAgICAgfVxuLy8gfVxuIiwiLkZyb250ZW5kX0ludm9pY2VzX0FkZCB7XG4gICAgLy8gU2lkZWJhciBMYXlvdXQgKHNpbWlsYXIgdG8gY2xpZW50IGVkaXQpXG4gICAgLmludm9pY2UtZWRpdC13aXRoLXNpZGViYXIge1xuICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDI4MHB4IDFmcjtcbiAgICAgICAgZ2FwOiAxLjVyZW07XG4gICAgICAgIG1heC13aWR0aDogMTQwMHB4O1xuICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgcGFkZGluZzogMS41cmVtO1xuXG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA5OTJweCkge1xuICAgICAgICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnI7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuaW52b2ljZS1zaWRlYmFyIHtcbiAgICAgICAgcG9zaXRpb246IHN0aWNreTtcbiAgICAgICAgdG9wOiAxLjVyZW07XG4gICAgICAgIGhlaWdodDogZml0LWNvbnRlbnQ7XG4gICAgICAgIGJhY2tncm91bmQ6ICNmOGY5ZmE7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDAuNXJlbTtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogOTkycHgpIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5zaWRlYmFyLWhlYWRlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZGVlMmU2O1xuICAgICAgICAgICAgcGFkZGluZzogMXJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5zaWRlYmFyLWFjdGlvbnMge1xuICAgICAgICAgICAgbWF4LWhlaWdodDogY2FsYygxMDB2aCAtIDIwMHB4KTtcbiAgICAgICAgICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuaW52b2ljZS1tYWluIHtcbiAgICAgICAgbWluLXdpZHRoOiAwOyAvLyBQcmV2ZW50IGdyaWQgYmxvd291dFxuICAgIH1cblxuICAgIC8vIExpbmUgSXRlbXMgVGFibGVcbiAgICAjbGluZUl0ZW1zVGFibGUge1xuICAgICAgICAubGluZS1pdGVtIHtcbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmOGY5ZmE7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGlucHV0LmZvcm0tY29udHJvbCB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAjZGVlMmU2O1xuXG4gICAgICAgICAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogIzg2YjdmZTtcbiAgICAgICAgICAgICAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgMC4yNXJlbSByZ2JhKDEzLCAxMTAsIDI1MywgMC4yNSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuaXRlbS1hbW91bnQge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjMjEyNTI5O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAucmVtb3ZlLWl0ZW0ge1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjE1cyBlYXNlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmhvdmVyIC5yZW1vdmUtaXRlbSB7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIFRvdGFscyBUYWJsZVxuICAgIC50YWJsZS50YWJsZS1zbSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICAgICAgdGQge1xuICAgICAgICAgICAgYm9yZGVyLXRvcDogbm9uZTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAuNXJlbTtcblxuICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDYwJTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogNDAlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgdHIuYm9yZGVyLXRvcCB0ZCB7XG4gICAgICAgICAgICBib3JkZXItdG9wOiAycHggc29saWQgI2RlZTJlNiAhaW1wb3J0YW50O1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDAuNzVyZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBSZXNwb25zaXZlIGFkanVzdG1lbnRzXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gICAgICAgIC5pbnZvaWNlLWVkaXQtd2l0aC1zaWRlYmFyIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDFyZW07XG4gICAgICAgIH1cblxuICAgICAgICAjbGluZUl0ZW1zVGFibGUge1xuICAgICAgICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTtcblxuICAgICAgICAgICAgaW5wdXQuZm9ybS1jb250cm9sIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuIiwiLyoqXG4gKiBTdHlsZXMgZm9yIEZyb250ZW5kX0FjY291bnQgdmlld1xuICovXG4uYWNjb3VudC1tYW5hZ2VtZW50IHtcbiAgICBwYWRkaW5nOiAycmVtIDA7XG5cbiAgICAvLyBVc2FnZSBtZXRyaWNzXG4gICAgLnVzYWdlLW1ldHJpYyB7XG4gICAgICAgIC5wcm9ncmVzcyB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjBmMGYwO1xuXG4gICAgICAgICAgICAucHJvZ3Jlc3MtYmFyIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGQ2ZWZkO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gUGF5bWVudCBtZXRob2RzXG4gICAgLnBheW1lbnQtbWV0aG9kIHtcbiAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjJzO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2Y4ZjlmYTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIEF2YXRhciBpbml0aWFsc1xuICAgIC5hdmF0YXIge1xuICAgICAgICAmLmF2YXRhci1zbSB7XG4gICAgICAgICAgICB3aWR0aDogNDBweDtcbiAgICAgICAgICAgIGhlaWdodDogNDBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5hdmF0YXItaW5pdGlhbCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gSW52b2ljZSB0YWJsZVxuICAgIC50YWJsZSB7XG4gICAgICAgIHRoIHtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICBjb2xvcjogIzZjNzU3ZDtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDJweDtcbiAgICAgICAgfVxuXG4gICAgICAgIHRkIHtcbiAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBDYXJkc1xuICAgIC5jYXJkIHtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgI2RlZTJlNjtcbiAgICAgICAgYm94LXNoYWRvdzogMCAwLjEyNXJlbSAwLjI1cmVtIHJnYmEoMCwgMCwgMCwgMC4wNzUpO1xuXG4gICAgICAgIC5jYXJkLWhlYWRlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmOWZhO1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNkZWUyZTY7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gQnV0dG9uc1xuICAgIC5idG4tbGluayB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgcGFkZGluZzogMC4yNXJlbSAwLjVyZW07XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIFBhZ2luYXRpb25cbiAgICAucGFnaW5hdGlvbiB7XG4gICAgICAgIC5wYWdlLWxpbmsge1xuICAgICAgICAgICAgY29sb3I6ICM0OTUwNTc7XG5cbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlOWVjZWY7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAucGFnZS1pdGVtLmFjdGl2ZSAucGFnZS1saW5rIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwZDZlZmQ7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6ICMwZDZlZmQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBNb2RhbCBwcmljaW5nIGNhcmRzXG4gICAgI3VwZ3JhZGVNb2RhbCB7XG4gICAgICAgIC5jYXJkIHtcbiAgICAgICAgICAgIC8vIFJlbW92ZWQgdHJhbnNmb3JtIHRyYW5zaXRpb24gYXMgdHJhbnNmb3JtcyBpbiBob3ZlciBzdGF0ZXMgYXJlIHByb2hpYml0ZWRcblxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgLy8gVHJhbnNmb3JtIHJlbW92ZWQgLSBlbGVtZW50cyBtdXN0IG5vdCBtb3ZlIG9uIGludGVyYWN0aW9uXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYuYm9yZGVyLXByaW1hcnkge1xuICAgICAgICAgICAgICAgIGJvcmRlci13aWR0aDogMnB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gUmVzcG9uc2l2ZSBhZGp1c3RtZW50c1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xuICAgICAgICAuY2FyZC1oZWFkZXIge1xuICAgICAgICAgICAgLmJ0biB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC50YWJsZS1yZXNwb25zaXZlIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgICAgIH1cbiAgICB9XG59IiwiLy8gR2VuZXJhbCBzdHlsZXMgZm9yIHRoZSBmcm9udGVuZFxuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gTEFZT1VUIFZBUklBQkxFU1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIENvcmUgbGF5b3V0IGRpbWVuc2lvbnMgdGhhdCBkZWZpbmUgdGhlIGFwcGxpY2F0aW9uIHN0cnVjdHVyZVxuXG4vLyBTaWRlYmFyIGRpbWVuc2lvbnNcbiRzaWRlYmFyLXdpZHRoOiAyMTVweDsgLy8gRml4ZWQgc2lkZWJhciB3aWR0aCAoZGVza3RvcClcblxuLy8gSGVhZGVyIGRpbWVuc2lvbnNcbiRoZWFkZXItaGVpZ2h0OiA1N3B4OyAvLyBIZWlnaHQgb2YgdG9wIG5hdmlnYXRpb24gYmFyIGFuZCBzaWRlYmFyIGJyYW5kIGFyZWFcblxuLy8gUGFnZSBjb250ZW50IHNwYWNpbmdcbiRwYWdlLWNvbnRlbnQtcGFkZGluZy10b3A6IDMwcHg7IC8vIFRvcCBwYWRkaW5nIGZvciBtYWluIGNvbnRlbnQgYXJlYVxuJHBhZ2UtY29udGVudC1wYWRkaW5nLWhvcml6b250YWw6IDJyZW07IC8vIExlZnQvcmlnaHQgcGFkZGluZyBmb3IgbWFpbiBjb250ZW50IGFyZWFcbiRwYWdlLWNvbnRlbnQtcGFkZGluZy1ib3R0b206IDJyZW07IC8vIEJvdHRvbSBwYWRkaW5nIGZvciBtYWluIGNvbnRlbnQgYXJlYVxuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gVUkgQ09NUE9ORU5UIFZBUklBQkxFU1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIERpbWVuc2lvbnMgYW5kIHN0eWxpbmcgZm9yIHJldXNhYmxlIFVJIGVsZW1lbnRzXG5cbi8vIE5hdmlnYXRpb25cbiRuYXYtbGluay1ib3JkZXItcmFkaXVzOiAwLjM3NXJlbTsgLy8gUm91bmRlZCBjb3JuZXJzIGZvciBuYXZpZ2F0aW9uIGxpbmtzXG4kbmF2LWxpbmstdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4yczsgLy8gSG92ZXIvYWN0aXZlIHN0YXRlIHRyYW5zaXRpb24gc3BlZWRcbiRuYXYtaWNvbi13aWR0aDogMS41cmVtOyAvLyBGaXhlZCB3aWR0aCBmb3IgbmF2aWdhdGlvbiBpY29ucyAoZW5zdXJlcyBhbGlnbm1lbnQpXG5cbi8vIFVzZXIgcHJvZmlsZVxuJHVzZXItcHJvZmlsZS1pY29uLXNpemU6IDMycHg7IC8vIFByb2ZpbGUgcGhvdG8vYXZhdGFyIHNpemUgaW4gaGVhZGVyXG5cbi8vIERhc2hib2FyZCBhY3Rpdml0eVxuJGFjdGl2aXR5LWljb24tc2l6ZTogMzZweDsgLy8gSWNvbiBjb250YWluZXIgc2l6ZSBpbiBhY3Rpdml0eSBmZWVkXG5cbi8vIFByb2dyZXNzIGluZGljYXRvcnNcbiRwcm9ncmVzcy1iYXItaGVpZ2h0OiAwLjVyZW07IC8vIEhlaWdodCBvZiBwcm9ncmVzcyBiYXJzXG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBSRVNQT05TSVZFIEJSRUFLUE9JTlRTXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gU2NyZWVuIHNpemUgdGhyZXNob2xkcyBmb3IgbGF5b3V0IGNoYW5nZXNcblxuJG1vYmlsZS1icmVha3BvaW50OiA5OTEuOThweDsgLy8gQmVsb3cgdGhpczogbW9iaWxlIGxheW91dCwgYWJvdmU6IGRlc2t0b3AgbGF5b3V0XG5cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4vLyBMQVlPVVQgU1RSVUNUVVJFXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5ib2R5IHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbn1cblxuLy8gU2lkZWJhciBOYXZpZ2F0aW9uXG4uYXBwLXNpZGViYXIge1xuICAgIGJhY2tncm91bmQ6ICNmOGY5ZmE7XG4gICAgLy8gYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgdmFyKC0tYnMtYm9yZGVyLWNvbG9yKTtcbiAgICB3aWR0aDogJHNpZGViYXItd2lkdGg7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHRvcDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgei1pbmRleDogMTAwMDtcblxuICAgIC8vIEJyYW5kIGFyZWEgKGRlc2t0b3Agb25seSlcbiAgICAuc2lkZWJhci1icmFuZCB7XG4gICAgICAgIHBhZGRpbmc6IDAuNXJlbSAxLjVyZW07XG4gICAgICAgIGhlaWdodDogJGhlYWRlci1oZWlnaHQ7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1icy1ib3JkZXItY29sb3IpO1xuICAgICAgICBiYWNrZ3JvdW5kOiAjMjEyNTI5O1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgICAgIGEge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjI1cmVtO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICNlOWVjZWY7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBOYXZpZ2F0aW9uIGxpbmtzXG4gICAgLnNpZGViYXItbmF2IHtcbiAgICAgICAgZmxleDogMTtcbiAgICAgICAgcGFkZGluZzogMXJlbTtcbiAgICAgICAgb3ZlcmZsb3cteTogYXV0bztcblxuICAgICAgICAvLyBOYXZpZ2F0aW9uIHNlY3Rpb25zXG4gICAgICAgIC5uYXYtc2VjdGlvbiB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG5cbiAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5uYXYtc2VjdGlvbi10aXRsZSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDAuNzVyZW07XG4gICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAwLjVweDtcbiAgICAgICAgICAgIGNvbG9yOiAjNmM3NTdkO1xuICAgICAgICAgICAgcGFkZGluZzogMC41cmVtIDFyZW07XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwLjI1cmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgLm5hdi1saW5rIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgcGFkZGluZzogMC43NXJlbSAxcmVtO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMC4yNXJlbTtcbiAgICAgICAgICAgIGNvbG9yOiAjNDk1MDU3O1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogJG5hdi1saW5rLWJvcmRlci1yYWRpdXM7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOlxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3IgJG5hdi1saW5rLXRyYW5zaXRpb24tZHVyYXRpb24gZWFzZSxcbiAgICAgICAgICAgICAgICBjb2xvciAkbmF2LWxpbmstdHJhbnNpdGlvbi1kdXJhdGlvbiBlYXNlO1xuXG4gICAgICAgICAgICBpIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEuMXJlbTtcbiAgICAgICAgICAgICAgICB3aWR0aDogJG5hdi1pY29uLXdpZHRoO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMC41cmVtO1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogcmdiYSgxMywgMTEwLCAyNTMsIDAuMSk7XG4gICAgICAgICAgICAgICAgY29sb3I6ICMwZDZlZmQ7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAjMGQ2ZWZkO1xuICAgICAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuXG4gICAgICAgICAgICAgICAgaSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBCb3R0b20gbmF2aWdhdGlvblxuICAgIC5zaWRlYmFyLWJvdHRvbSB7XG4gICAgICAgIHBhZGRpbmc6IDFyZW07XG4gICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1icy1ib3JkZXItY29sb3IpO1xuICAgICAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcblxuICAgICAgICAubmF2LWxpbmsge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBwYWRkaW5nOiAwLjc1cmVtIDFyZW07XG4gICAgICAgICAgICBjb2xvcjogIzQ5NTA1NztcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6ICRuYXYtbGluay1ib3JkZXItcmFkaXVzO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjpcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yICRuYXYtbGluay10cmFuc2l0aW9uLWR1cmF0aW9uIGVhc2UsXG4gICAgICAgICAgICAgICAgY29sb3IgJG5hdi1saW5rLXRyYW5zaXRpb24tZHVyYXRpb24gZWFzZTtcblxuICAgICAgICAgICAgaSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjFyZW07XG4gICAgICAgICAgICAgICAgd2lkdGg6ICRuYXYtaWNvbi13aWR0aDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDAuNXJlbTtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMTMsIDExMCwgMjUzLCAwLjEpO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjMGQ2ZWZkO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy8gTW9iaWxlIGFkanVzdG1lbnRzXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtb2JpbGUtYnJlYWtwb2ludCkge1xuICAgICAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgYm9yZGVyLXJpZ2h0OiBub25lO1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYnMtYm9yZGVyLWNvbG9yKTtcbiAgICB9XG59XG5cbi8vIE1haW4gQ29udGVudCBBcmVhXG4uYXBwLWNvbnRlbnQge1xuICAgIG1hcmdpbi1sZWZ0OiAkc2lkZWJhci13aWR0aDtcbiAgICBiYWNrZ3JvdW5kOiByZ2IoMjQ4LCAyNDksIDI1MCk7IC8vIEdyYXkgYmFja2dyb3VuZCBmaWxscyBmdWxsIHdpZHRoXG4gICAgbWluLWhlaWdodDogY2FsYygxMDB2aCAtICRoZWFkZXItaGVpZ2h0KTsgLy8gQWNjb3VudCBmb3IgaGVhZGVyIGhlaWdodFxuXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRtb2JpbGUtYnJlYWtwb2ludCkge1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICB9XG59XG5cbi8vIFRvcCBIZWFkZXIgTmF2YmFyXG4uYXBwLWhlYWRlciB7XG4gICAgYmFja2dyb3VuZDogd2hpdGU7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWJzLWJvcmRlci1jb2xvcik7XG4gICAgaGVpZ2h0OiAkaGVhZGVyLWhlaWdodDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgcG9zaXRpb246IHN0aWNreTtcbiAgICB0b3A6IDA7XG4gICAgei1pbmRleDogOTk5O1xuXG4gICAgLnVzZXItcHJvZmlsZS1pY29uLWxpbmsge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cblxuICAgIC51c2VyLXByb2ZpbGUtaWNvbiB7XG4gICAgICAgIHdpZHRoOiAkdXNlci1wcm9maWxlLWljb24tc2l6ZTtcbiAgICAgICAgaGVpZ2h0OiAkdXNlci1wcm9maWxlLWljb24tc2l6ZTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICBiYWNrZ3JvdW5kOiAjZTllY2VmO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICAgICAgICBpIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgICAgICAgICAgIGNvbG9yOiAjNmM3NTdkO1xuICAgICAgICB9XG5cbiAgICAgICAgJi0taW1hZ2Uge1xuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgIzAwMDtcbiAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmZvcm0tY29udHJvbCB7XG4gICAgICAgIG1pbi13aWR0aDogMjAwcHg7XG4gICAgfVxufVxuXG4vLyBQYWdlIENvbnRlbnRcbi5wYWdlLWNvbnRlbnQge1xuICAgIC8vIEJhY2tncm91bmQgaXMgbm93IG9uIC5hcHAtY29udGVudCBzbyBpdCBmaWxscyBmdWxsIHdpZHRoXG4gICAgcGFkZGluZy10b3A6ICRwYWdlLWNvbnRlbnQtcGFkZGluZy10b3A7XG4gICAgcGFkZGluZy1sZWZ0OiAkcGFnZS1jb250ZW50LXBhZGRpbmctaG9yaXpvbnRhbDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAkcGFnZS1jb250ZW50LXBhZGRpbmctaG9yaXpvbnRhbDtcbiAgICBwYWRkaW5nLWJvdHRvbTogJHBhZ2UtY29udGVudC1wYWRkaW5nLWJvdHRvbTtcblxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkbW9iaWxlLWJyZWFrcG9pbnQpIHtcbiAgICAgICAgcGFkZGluZzogMXJlbTtcbiAgICB9XG59XG5cbi8vIENhcmQgc3R5bGluZ1xuLmNhcmQge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xufVxuXG4vLyBEYXNoYm9hcmQgQ29udGVudFxuLmRhc2hib2FyZC1jb250ZW50IHtcblxuICAgIC8vIEFjdGl2aXR5IGxpc3Qgc3R5bGluZ1xuICAgIC5hY3Rpdml0eS1pY29uIHtcbiAgICAgICAgd2lkdGg6ICRhY3Rpdml0eS1pY29uLXNpemU7XG4gICAgICAgIGhlaWdodDogJGFjdGl2aXR5LWljb24tc2l6ZTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIH1cblxuICAgIC8vIENvbG9yZWQgY2FyZHMgdGV4dCBhZGp1c3RtZW50c1xuICAgIC5jYXJkLmJnLXByaW1hcnksXG4gICAgLmNhcmQuYmctc3VjY2VzcyxcbiAgICAuY2FyZC5iZy13YXJuaW5nLFxuICAgIC5jYXJkLmJnLWluZm8sXG4gICAgLmNhcmQuYmctZGFuZ2VyIHtcbiAgICAgICAgLmNhcmQtdGl0bGUge1xuICAgICAgICAgICAgZm9udC1zaXplOiAwLjlyZW07XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuNXB4O1xuICAgICAgICAgICAgb3BhY2l0eTogMC45O1xuICAgICAgICB9XG5cbiAgICAgICAgaDIge1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8vIFByb2dyZXNzIGJhcnNcbiAgICAucHJvZ3Jlc3Mge1xuICAgICAgICBoZWlnaHQ6ICRwcm9ncmVzcy1iYXItaGVpZ2h0O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTllY2VmO1xuICAgIH1cbn0iXX0= */
|