diff --git a/manifest.json b/manifest.json index 253023c..b272b22 100644 --- a/manifest.json +++ b/manifest.json @@ -6,5 +6,5 @@ "author": "Aditya Amatya", "authorUrl": "https://github.com/amatya-aditya/", "isDesktopOnly": false, - "version": "1.2.0" + "version": "1.2.1" } diff --git a/package-lock.json b/package-lock.json index d1e7d86..87ad8fa 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { - "name": "obsidian-sample-plugin", - "version": "1.0.1-beta.1", + "name": "advanced-multi-column", + "version": "1.2.1", "lockfileVersion": 3, "requires": true, "packages": { "": { - "name": "obsidian-sample-plugin", - "version": "1.0.1-beta.1", + "name": "advanced-multi-column", + "version": "1.2.1", "license": "0-BSD", "dependencies": { "obsidian": "1.10.3" diff --git a/package.json b/package.json index 3783022..cf31685 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "advanced-multi-column", - "version": "1.1.1", + "version": "1.2.1", "description": "Allows you to create columns in Obsidian Markdown.", "main": "main.js", "type": "module", diff --git a/src/column/reading-view.ts b/src/column/reading-view.ts index af1cc18..dc378a0 100644 --- a/src/column/reading-view.ts +++ b/src/column/reading-view.ts @@ -93,39 +93,24 @@ function resolvePreviewElementForSizer(sizer: HTMLElement): HTMLElement | null { } function getWrapperHost(previewEl: HTMLElement): HTMLElement | null { - const host = previewEl.querySelector( - `:scope > .markdown-preview-sizer > .${RV_HOST_CLASS}, :scope > .${RV_HOST_CLASS}`, - ); + const host = previewEl.querySelector(`:scope > .${RV_HOST_CLASS}`); return host instanceof HTMLElement ? host : null; } -function placeWrapperHost(sizer: HTMLElement, host: HTMLElement): void { - const footer = sizer.querySelector(":scope > .mod-footer"); - if (footer instanceof HTMLElement) { - if (host.parentElement !== sizer || host.nextSibling !== footer) { - sizer.insertBefore(host, footer); - } - return; - } - - if (host.parentElement !== sizer) { - sizer.appendChild(host); - } -} - function ensureWrapperHost( previewEl: HTMLElement, sizer: HTMLElement, ): HTMLElement { const existing = getWrapperHost(previewEl); - if (existing) { - placeWrapperHost(sizer, existing); - return existing; - } + if (existing) return existing; const host = document.createElement("div"); host.className = RV_HOST_CLASS; - placeWrapperHost(sizer, host); + if (sizer.nextSibling) { + previewEl.insertBefore(host, sizer.nextSibling); + } else { + previewEl.appendChild(host); + } return host; } @@ -185,7 +170,7 @@ function restoreScrollSnapshotStable( }); } -/** Older versions moved .mod-footer out of the sizer; bring it back if found. */ +/** Move any legacy relocated .mod-footer back into Obsidian's sizer. */ function restoreFooter(previewEl: HTMLElement, sizer: HTMLElement): void { const footer = previewEl.querySelector(":scope > .mod-footer"); if (footer instanceof HTMLElement) { @@ -529,7 +514,7 @@ export function registerReadingView(plugin: ColumnsPlugin): () => void { hostChildren: host?.children.length ?? 0, wrapperConnected: state?.wrapper.isConnected ?? false, wrapperParentMatches: state ? state.wrapper.parentElement === state.host : false, - hostParentMatches: state ? state.host.parentElement === sizer : false, + hostParentMatches: state ? state.host.parentElement === state.previewEl : false, }; }; @@ -612,11 +597,6 @@ export function registerReadingView(plugin: ColumnsPlugin): () => void { } } } - if (!state.host.isConnected || state.host.parentElement !== sizer) { - handleWrapperDisappearance(sizer, state, "sizer-observer"); - return; - } - placeWrapperHost(sizer, state.host); }); sizerObserver.observe(sizer, {childList: true}); @@ -642,6 +622,7 @@ export function registerReadingView(plugin: ColumnsPlugin): () => void { if ( !state.host.isConnected + || state.host.parentElement !== state.previewEl || !state.wrapper.isConnected || state.wrapper.parentElement !== state.host ) { @@ -775,7 +756,6 @@ export function registerReadingView(plugin: ColumnsPlugin): () => void { return; } const view = resolveViewForSizer(sizer, plugin); - const scrollSnapshot = captureScrollSnapshot(previewEl); const shouldRestoreScroll = (): boolean => { if (!plugin.settings.enableReadingView) return false; if (!sizer.isConnected) return false; @@ -842,7 +822,7 @@ export function registerReadingView(plugin: ColumnsPlugin): () => void { && existing.fingerprint === fingerprint && existing.wrapper.isConnected && existing.host.isConnected - && existing.host.parentElement === sizer + && existing.host.parentElement === existing.previewEl && existing.wrapper.parentElement === existing.host ) { if (!existing.previewEl.classList.contains(RV_ACTIVE_CLASS)) { @@ -852,7 +832,6 @@ export function registerReadingView(plugin: ColumnsPlugin): () => void { } existing.previewEl.classList.add(RV_ACTIVE_CLASS); hideSizerContent(sizer); - restoreScrollSnapshotStable(scrollSnapshot, shouldRestoreScroll); rvWarn("render reused existing wrapper", sizerSnapshot(sizer, existing)); return; } @@ -865,42 +844,18 @@ export function registerReadingView(plugin: ColumnsPlugin): () => void { } const host = ensureWrapperHost(previewEl, sizer); + restoreFooter(previewEl, sizer); const component = new Component(); component.load(); const renderId = ++renderIdSeq; - - // Hide sizer content early and install a temporary observer to catch - // elements Obsidian adds during the async wrapper build (mode switch, - // scroll virtualization). This prevents flat content from flashing. - previewEl.classList.add(RV_ACTIVE_CLASS); - hideSizerContent(sizer); - - const earlySizerObserver = new MutationObserver((mutations) => { - for (const mutation of mutations) { - for (const node of Array.from(mutation.addedNodes)) { - if (!(node instanceof HTMLElement)) continue; - const cls = node.className; - const isElDiv = cls.startsWith("el-") || cls.includes(" el-"); - const isPusher = node.classList.contains("markdown-preview-pusher"); - if (isElDiv || isPusher) { - node.classList.add(RV_HIDDEN_CLASS); - } - } - } - }); - earlySizerObserver.observe(sizer, {childList: true}); + let scrollSnapshot: ScrollSnapshot[] = []; try { const wrapper = await buildWrapper(plugin, sourcePath, text, regions, component); - // Disconnect the early observer; the full lifecycle observer replaces it - earlySizerObserver.disconnect(); - if (!sizer.isConnected || renderTokens.get(sizer) !== token) { component.unload(); - previewEl.classList.remove(RV_ACTIVE_CLASS); - restoreSizerContent(sizer); rvWarn("render result dropped: stale after async build", { renderId, token, @@ -913,10 +868,11 @@ export function registerReadingView(plugin: ColumnsPlugin): () => void { host.removeChild(host.firstChild); } wrapper.dataset.columnsRenderId = String(renderId); + scrollSnapshot = captureScrollSnapshot(previewEl); + previewEl.classList.add(RV_ACTIVE_CLASS); host.appendChild(wrapper); // Re-hide in case anything was added between observer batches hideSizerContent(sizer); - placeWrapperHost(sizer, host); restoreScrollSnapshotStable(scrollSnapshot, shouldRestoreScroll); const state: RenderState = { sourcePath, @@ -939,11 +895,12 @@ export function registerReadingView(plugin: ColumnsPlugin): () => void { sizerChildren: sizer.children.length, }); } catch (error) { - earlySizerObserver.disconnect(); component.unload(); previewEl.classList.remove(RV_ACTIVE_CLASS); restoreSizerContent(sizer); - restoreScrollSnapshotStable(scrollSnapshot, shouldRestoreScroll); + if (scrollSnapshot.length > 0) { + restoreScrollSnapshotStable(scrollSnapshot, shouldRestoreScroll); + } rvError("render failed", { renderId, sourcePath, diff --git a/src/styles/layout.css b/src/styles/layout.css index ab9a197..45c0cea 100644 --- a/src/styles/layout.css +++ b/src/styles/layout.css @@ -17,7 +17,7 @@ } /* Collapse the sizer's own height/padding so it wraps tightly around - the remaining visible children (banner, metadata, title, columns, footer). */ + the remaining visible children (banner, metadata, title, backlinks). */ .markdown-preview-view.amc-reading-columns-active > .markdown-preview-sizer { min-height: 0 !important; height: auto !important; @@ -26,35 +26,29 @@ /* Host container: hidden by default, shown when columns are active. Inherit the sizer's readable-line-width constraints. */ -.markdown-preview-view > .markdown-preview-sizer > .amc-reading-columns-host, .markdown-preview-view > .amc-reading-columns-host { display: none; } -.markdown-preview-view.amc-reading-columns-active > .markdown-preview-sizer > .amc-reading-columns-host, .markdown-preview-view.amc-reading-columns-active > .amc-reading-columns-host { display: block; width: 100%; box-sizing: border-box; } -/* Keep the backlinks footer in Obsidian's sizer so core settings can update it. */ -.markdown-preview-view.amc-reading-columns-active > .markdown-preview-sizer > .mod-footer, +/* Clean up any footer left relocated by older versions. */ .markdown-preview-view.amc-reading-columns-active > .mod-footer { width: 100%; box-sizing: border-box; } /* When readable line width is on, cap host and footer to the file line width */ -.markdown-preview-view.amc-reading-columns-active.is-readable-line-width > .markdown-preview-sizer > .amc-reading-columns-host, -.markdown-preview-view.amc-reading-columns-active.is-readable-line-width > .markdown-preview-sizer > .mod-footer, .markdown-preview-view.amc-reading-columns-active.is-readable-line-width > .amc-reading-columns-host, .markdown-preview-view.amc-reading-columns-active.is-readable-line-width > .mod-footer { max-width: var(--file-line-width); margin: 0 auto; } -.markdown-preview-view.amc-reading-columns-active > .markdown-preview-sizer > .amc-reading-columns-host > .columns-rv-wrapper, .markdown-preview-view.amc-reading-columns-active > .amc-reading-columns-host > .columns-rv-wrapper { display: block; width: 100%; @@ -584,9 +578,9 @@ .el-h5, .el-h6 ) { - margin-top: 0.3rem !important; - margin-bottom: 0.16rem !important; - line-height: 0.8rem !important; + margin-top: 0.35rem !important; + margin-bottom: 0.2rem !important; + line-height: normal !important; } .columns-container.columns-ui:not(.columns-reading) :is(.column-preview, .column-inline-edit-preview) .markdown-rendered :is( @@ -597,9 +591,10 @@ h5, h6 ) { - margin-block-start: 0.3rem !important; - margin-block-end: 0.16rem !important; - line-height: 0.8rem !important; + margin-block-start: 0.35rem !important; + margin-block-end: 0.2rem !important; + line-height: 1.2 !important; + overflow-wrap: anywhere; } .columns-container.columns-ui:not(.columns-reading) :is(.column-preview, .column-inline-edit-preview) .markdown-rendered :is( diff --git a/styles.css b/styles.css index 44379e8..95e560e 100644 --- a/styles.css +++ b/styles.css @@ -1,1570 +1 @@ -/* src/styles/layout.css */ -:root { - --obsidian-columns-gap: 20px; - --obsidian-columns-padding: 0 20px; - --obsidian-columns-min-width: 100px; - --obsidian-columns-def-span: 1; -} -.markdown-preview-view.amc-reading-columns-active > .markdown-preview-sizer > .amc-rv-hidden { - display: none !important; -} -.markdown-preview-view.amc-reading-columns-active > .markdown-preview-sizer > .mod-footer { - display: none !important; -} -.markdown-preview-view.amc-reading-columns-active > .markdown-preview-sizer { - min-height: 0 !important; - height: auto !important; - padding-bottom: 0 !important; -} -.markdown-preview-view > .amc-reading-columns-host { - display: none; -} -.markdown-preview-view.amc-reading-columns-active > .amc-reading-columns-host { - display: block; - width: 100%; - box-sizing: border-box; -} -.markdown-preview-view.amc-reading-columns-active > .mod-footer { - width: 100%; - box-sizing: border-box; -} -.markdown-preview-view.amc-reading-columns-active.is-readable-line-width > .amc-reading-columns-host, -.markdown-preview-view.amc-reading-columns-active.is-readable-line-width > .mod-footer { - max-width: var(--file-line-width); - margin: 0 auto; -} -.markdown-preview-view.amc-reading-columns-active > .amc-reading-columns-host > .columns-rv-wrapper { - display: block; - width: 100%; -} -.columns-container { - --columns-block-default-border-width: 1px; - --columns-block-default-border-color: var(--background-modifier-border); - display: flex !important; - flex-direction: row !important; - flex-wrap: nowrap !important; - align-items: stretch !important; - width: 100%; - margin: 12px 0; - border-radius: 8px; - padding: 4px; - background: var(--background-primary); - position: relative; - box-sizing: border-box; -} -.columns-container.columns-resizing { - cursor: col-resize; -} -.columns-container.columns-nested { - margin: 8px 0; - min-height: 0; - padding: 3px; -} -.columns-container.columns-nested .column-item { - min-height: 32px; - padding: 8px 10px; -} -.columns-container.columns-nested .column-toolbar { - opacity: 1 !important; - display: flex !important; - pointer-events: none; -} -.columns-container.columns-nested :is(.column-drag-handle, .column-add-btn, .column-remove-btn) { - opacity: 0; - pointer-events: none; - transition: opacity 0.15s ease; -} -.columns-container.columns-nested .column-item:hover :is(.column-drag-handle, .column-add-btn, .column-remove-btn), -.columns-container.columns-nested .column-item.is-editing :is(.column-drag-handle, .column-add-btn, .column-remove-btn) { - opacity: 1; - pointer-events: auto; -} -.columns-container .column-item { - position: relative; - flex: 1 1 0%; - min-width: 0; - padding: 10px 14px; - border: 1px solid transparent; - border-radius: 6px; - transition: border-color 0.15s ease, background-color 0.15s ease; - box-sizing: border-box; - overflow: visible; -} -.columns-container .column-item:hover { - border-color: var(--background-modifier-border); - background: var(--columns-col-bg, transparent); -} -.columns-container .column-item.is-editing, -.columns-container .column-item.is-editing:hover { - border-color: transparent; - background: var(--columns-col-bg, transparent); -} -.columns-container .column-item.columns-custom-style { - background: var(--columns-col-bg, transparent); - color: var(--columns-col-text, inherit); - border-style: solid; - border-color: var(--columns-col-border-color, transparent); - border-width: var(--columns-col-border-width, 0px); - border-top-width: var( --columns-col-horizontal-width, var(--columns-col-border-width, 0px) ); - border-bottom-width: var( --columns-col-horizontal-width, var(--columns-col-border-width, 0px) ); -} -.columns-container .column-item.columns-custom-style[style*=--columns-col-text] :is(a, a.internal-link, a.external-link, a.tag, .cm-link, .cm-hmd-internal-link) { - color: inherit; -} -.columns-container .column-item.columns-custom-style:hover, -.columns-container .column-item.columns-custom-style.is-editing { - background: var(--columns-col-bg, transparent); - border-color: var(--columns-col-border-color, transparent); -} -.columns-container.columns-custom-style { - background: var(--columns-block-bg, var(--background-primary)) !important; - color: var(--columns-block-text, inherit) !important; - border-style: solid !important; - border-color: var( --columns-block-border-color, var(--columns-block-default-border-color) ) !important; - border-width: var( --columns-block-border-width, var(--columns-block-default-border-width) ) !important; - border-top-width: var( --columns-block-horizontal-width, var( --columns-block-border-width, var(--columns-block-default-border-width) ) ) !important; - border-bottom-width: var( --columns-block-horizontal-width, var( --columns-block-border-width, var(--columns-block-default-border-width) ) ) !important; -} -.columns-container .column-header { - display: flex; - align-items: center; - gap: 6px; - padding: 6px 10px; - margin: -10px -14px 6px !important; - border-radius: 4px 4px 0 0; - -webkit-user-select: none; - user-select: none; - line-height: 1.4; -} -.columns-container .column-item.columns-left-border > .column-header { - border-radius: 0 4px 0 0; -} -.columns-container .column-header-icon { - display: inline-flex; - align-items: center; - flex-shrink: 0; -} -.columns-container .column-header-icon .svg-icon { - width: 16px; - height: 16px; -} -.columns-container .column-header-title { - overflow: hidden; - text-overflow: ellipsis; - white-space: nowrap; -} -.columns-container .column-item.columns-left-border { - border-top: none !important; - border-right: none !important; - border-bottom: none !important; - border-left: 3px solid var(--columns-left-border-color, var(--columns-col-border-color, var(--interactive-accent))) !important; - border-radius: 0 6px 6px 0; -} -.columns-container .column-toolbar { - display: flex; - flex-direction: column; - align-items: center; - justify-content: flex-start; - position: absolute; - top: 2px; - right: 2px; - opacity: 0; - transition: opacity 0.15s ease; - z-index: 5; - pointer-events: none; -} -.columns-container .column-toolbar-actions { - display: flex; - flex-direction: column; - align-items: center; - gap: 0px; -} -.columns-container .column-item:hover .column-toolbar, -.columns-container .column-item.is-editing .column-toolbar { - opacity: 1; - pointer-events: auto; -} -.columns-container .column-drag-handle { - cursor: grab; - color: var(--text-faint); - padding: 2px 4px; - border-radius: 3px; - line-height: 1; - border: none; - background: none; - height: 20px; - display: inline-flex; - align-items: center; - justify-content: center; - transition: color 0.15s ease, background-color 0.15s ease; -} -.columns-container .column-drag-handle .svg-icon { - width: 14px; - height: 14px; -} -.columns-container .column-drag-handle:hover { - color: var(--interactive-accent); - background: var(--background-modifier-hover); -} -.columns-container .column-drag-handle:active { - cursor: grabbing; - color: var(--interactive-accent); -} -.columns-container .column-add-btn { - cursor: pointer; - color: var(--text-faint); - padding: 2px 4px; - border-radius: 3px; - line-height: 1; - border: none; - background: none; - height: 20px !important; - display: inline-flex; - align-items: center; - justify-content: center; - box-shadow: none; -} -.columns-container .column-add-btn .svg-icon { - width: 14px; - height: 14px; -} -.columns-container .column-add-btn:hover { - color: var(--text-normal); - background: var(--background-modifier-hover); -} -.columns-container .column-preview { - cursor: text; - -webkit-user-select: text; - user-select: text; - display: flow-root; -} -.columns-container .column-preview > *:first-child { - margin-top: 0; -} -.columns-container .column-preview > *:last-child { - margin-bottom: 0; -} -.columns-container .column-item .column-preview.markdown-rendered p, -.columns-container .column-item .column-preview.markdown-rendered h1, -.columns-container .column-item .column-preview.markdown-rendered h2, -.columns-container .column-item .column-preview.markdown-rendered h3, -.columns-container .column-item .column-preview.markdown-rendered h4, -.columns-container .column-item .column-preview.markdown-rendered h5, -.columns-container .column-item .column-preview.markdown-rendered h6, -.columns-container .column-item .column-preview.markdown-rendered div, -.columns-container .column-item .column-preview.markdown-rendered blockquote, -.columns-container .column-item .column-preview.markdown-rendered hr, -.columns-container .column-item .column-preview.markdown-rendered table, -.columns-container .column-item .column-preview.markdown-rendered pre { - margin: 0 !important; -} -.columns-container .column-item .column-preview.markdown-rendered ul, -.columns-container .column-item .column-preview.markdown-rendered ol { - margin: 0 !important; - padding: 0 0 0 1.5em !important; - list-style-position: outside; -} -.columns-container .column-item .column-preview.markdown-rendered ul { - list-style-type: disc !important; -} -.columns-container .column-item .column-preview.markdown-rendered li { - margin: 0 !important; - padding: 0 !important; -} -.columns-container.columns-ui:not(.columns-reading) :is(.column-preview, .column-inline-edit-preview) { - --list-spacing: 0.2rem; - --p-spacing: 0.35rem; - --heading-spacing: 0.2rem; - --line-height-tight: 1.18; - line-height: 1.24 !important; - white-space: normal !important; -} -.columns-container.columns-ui:not(.columns-reading) :is(.column-preview, .column-inline-edit-preview) > :first-child { - margin-top: 0 !important; -} -.columns-container.columns-ui:not(.columns-reading) :is(.column-preview, .column-inline-edit-preview) > :last-child { - margin-bottom: 0 !important; -} -.columns-container.columns-ui:not(.columns-reading) :is(.column-preview, .column-inline-edit-preview) :is(h1, h2, h3, h4, h5, h6) { - margin-top: 0.35rem !important; - margin-bottom: 0.2rem !important; -} -.columns-container.columns-ui:not(.columns-reading) :is(.column-preview, .column-inline-edit-preview) :is(p, blockquote, pre, table, hr) { - margin-top: 0.2rem !important; - margin-bottom: 0.2rem !important; - line-height: 1.4 !important; -} -.columns-container.columns-ui:not(.columns-reading) :is(.column-preview, .column-inline-edit-preview) :is(blockquote) { - display: flex !important; -} -.columns-container :is(.column-preview, .column-inline-edit-preview) .markdown-rendered .table-wrapper { - max-width: 100%; - overflow-x: auto; -} -.columns-container.columns-ui:not(.columns-reading) :is(.column-preview, .column-inline-edit-preview) table { - width: 100%; - border-collapse: collapse; - border-spacing: 0; - border: 1px solid var(--background-modifier-border) !important; -} -.columns-container.columns-ui:not(.columns-reading) :is(.column-preview, .column-inline-edit-preview) :is(th, td) { - border: 1px solid var(--background-modifier-border) !important; - padding: 0.28rem 0.6rem !important; -} -.columns-container.columns-ui:not(.columns-reading) :is(.column-preview, .column-inline-edit-preview) :is(ul, ol) { - margin-top: 0.08rem !important; - margin-bottom: 0.08rem !important; - margin-block-start: 0.08rem !important; - margin-block-end: 0.08rem !important; - padding-inline-start: 2em !important; - display: block !important; - white-space: normal !important; -} -.columns-container.columns-ui:not(.columns-reading) :is(.column-preview, .column-inline-edit-preview) li { - margin-top: 0.25em !important; - margin-bottom: 0.25em !important; - margin-block-start: 0.25em !important; - margin-block-end: 0.25em !important; - padding: 0 !important; - white-space: normal !important; - line-height: 1.4em !important; -} -.columns-container.columns-ui:not(.columns-reading) :is(.column-preview, .column-inline-edit-preview) li.amc-list-gap { - margin-top: 1.5em !important; - margin-block-start: 1.5em !important; -} -.columns-container.columns-ui:not(.columns-reading) :is(.column-preview, .column-inline-edit-preview) > .amc-block-gap { - margin-top: 1em !important; - margin-block-start: 1em !important; -} -.columns-container.columns-ui:not(.columns-reading) :is(.column-preview, .column-inline-edit-preview) ul > li.task-list-item { - list-style: none; -} -.columns-container.columns-ui:not(.columns-reading) :is(.column-preview, .column-inline-edit-preview) :is(ul, ol) :is(ul, ol) { - margin-top: 0 !important; - margin-bottom: 0 !important; - margin-block-start: 0 !important; - margin-block-end: 0 !important; - padding-inline-start: 1.15em !important; -} -.columns-container.columns-ui:not(.columns-reading) :is(.column-preview, .column-inline-edit-preview) .markdown-rendered li:last-child > :is(ul, ol) { - margin-bottom: 0 !important; -} -.columns-container.columns-ui:not(.columns-reading) :is(.column-preview, .column-inline-edit-preview) .markdown-rendered li > :is(ul, ol) + p:has(> a):not(:has(> :not(a, br))), -.columns-container.columns-ui:not(.columns-reading) :is(.column-preview, .column-inline-edit-preview) .markdown-rendered li > :is(ul, ol) + p:has(> a):not(:has(> :not(a, br))) ~ p:has(> a):not(:has(> :not(a, br))) { - margin-inline-start: -1.25em !important; - padding-inline-start: 0 !important; -} -.columns-container.columns-ui:not(.columns-reading) :is(.column-preview, .column-inline-edit-preview) .markdown-rendered p:has(> a:only-child) { - margin-block-start: 0 !important; - margin-block-end: 0 !important; - line-height: 1.2rem !important; -} -.columns-container.columns-ui:not(.columns-reading) :is(.column-preview, .column-inline-edit-preview) .markdown-rendered :is(ul, ol).contains-task-list { - margin-top: 0.04rem !important; - margin-bottom: 0.04rem !important; - padding-inline-start: 0.1em !important; - display: block !important; -} -.columns-container.columns-ui:not(.columns-reading) :is(.column-preview, .column-inline-edit-preview) .markdown-rendered li.task-list-item { - list-style: none !important; - display: grid !important; - grid-template-columns: auto 1fr !important; - column-gap: 0.35em !important; - row-gap: 0.02rem !important; - align-items: start !important; - margin-top: 0 !important; - margin-bottom: 0 !important; - padding-top: 0 !important; - padding-bottom: 0 !important; - min-height: 0 !important; -} -.columns-container.columns-ui:not(.columns-reading) :is(.column-preview, .column-inline-edit-preview) .markdown-rendered ul > li.task-list-item { - line-height: 1.18rem !important; -} -.columns-container.columns-ui:not(.columns-reading) :is(.column-preview, .column-inline-edit-preview) .markdown-rendered li.task-list-item::marker { - content: "" !important; -} -.columns-container.columns-ui:not(.columns-reading) :is(.column-preview, .column-inline-edit-preview) .markdown-rendered li.task-list-item > input[type=checkbox], -.columns-container.columns-ui:not(.columns-reading) :is(.column-preview, .column-inline-edit-preview) .markdown-rendered li.task-list-item > .task-list-item-checkbox { - grid-column: 1 !important; - grid-row: 1 !important; - margin: 0.12em 0 0 0 !important; -} -.columns-container.columns-ui:not(.columns-reading) :is(.column-preview, .column-inline-edit-preview) .markdown-rendered li.task-list-item > :is(p, div, label, span) { - grid-column: 2 !important; - margin-top: 0 !important; - margin-bottom: 0 !important; - padding-top: 0 !important; - padding-bottom: 0 !important; - line-height: 1.18rem !important; -} -.columns-container.columns-ui:not(.columns-reading) :is(.column-preview, .column-inline-edit-preview) .markdown-rendered li.task-list-item > :is(ul, ol) { - grid-column: 2 !important; - margin-top: 0.04rem !important; - margin-bottom: 0 !important; - padding-inline-start: 1.15em !important; -} -.columns-container.columns-ui:not(.columns-reading) :is(.column-preview, .column-inline-edit-preview) .markdown-rendered li.task-list-item :is(p, div, label, span) { - margin-block-start: 0 !important; - margin-block-end: 0 !important; -} -.columns-container.columns-ui:not(.columns-reading) :is(.column-preview, .column-inline-edit-preview) :is(.el-p, .el-h1, .el-h2, .el-h3, .el-h4, .el-h5, .el-h6, .el-blockquote, .el-pre, .el-table, .el-hr) { - margin-top: 0.1rem !important; - margin-bottom: 0.1rem !important; - line-height: 1.24rem !important; -} -.columns-container.columns-ui:not(.columns-reading) :is(.column-preview, .column-inline-edit-preview) :is(.el-ul, .el-ol, .el-li) { - margin-top: 0 !important; - margin-bottom: 0 !important; - line-height: inherit !important; -} -.columns-container.columns-ui:not(.columns-reading) :is(.column-preview, .column-inline-edit-preview) :is(.el-h1, .el-h2, .el-h3, .el-h4, .el-h5, .el-h6) { - margin-top: 0.3rem !important; - margin-bottom: 0.16rem !important; - line-height: 0.8rem !important; -} -.columns-container.columns-ui:not(.columns-reading) :is(.column-preview, .column-inline-edit-preview) .markdown-rendered :is(h1, h2, h3, h4, h5, h6) { - margin-block-start: 0.3rem !important; - margin-block-end: 0.16rem !important; - line-height: 0.8rem !important; -} -.columns-container.columns-ui:not(.columns-reading) :is(.column-preview, .column-inline-edit-preview) .markdown-rendered :is(p, blockquote, pre, table, hr) { - margin-block-start: 0.08rem !important; - margin-block-end: 0.08rem !important; - line-height: 1.24rem !important; -} -.columns-container.columns-ui:not(.columns-reading) :is(.column-preview, .column-inline-edit-preview) .markdown-rendered :is(blockquote) { - display: flex !important; -} -.columns-container .column-item.is-editing .column-preview { - display: none; -} -.columns-container .column-editor { - display: none; - width: 100%; - min-height: 60px; - height: var(--column-editor-height, auto); - border: none; - padding: 4px 0; - font-family: var(--font-monospace); - font-size: var(--font-text-size); - line-height: var(--line-height-normal); - background: transparent; - color: var(--text-normal); - resize: none; - outline: none; - box-shadow: none; - box-sizing: border-box; - -webkit-user-select: text; - user-select: text; - overflow: hidden; -} -.columns-container .column-item.is-editing .column-editor { - display: block; -} -.columns-container .column-editor:focus, -.columns-container .column-editor:focus-visible { - box-shadow: none; - outline: none; -} -.columns-container .column-inline-edit-block { - margin: 0 0 8px; -} -.columns-container .column-inline-edit-block:last-child { - margin-bottom: 0; -} -.columns-container .column-inline-edit-preview { - min-height: 18px; - cursor: text; - -webkit-user-select: text; - user-select: text; - display: flow-root; -} -.columns-container .column-inline-edit-preview > *:first-child { - margin-top: 0; -} -.columns-container .column-inline-edit-preview > *:last-child { - margin-bottom: 0; -} -.columns-container .column-inline-editor { - display: none; - width: 100%; - min-height: 60px; - height: var(--column-editor-height, auto); - border: none; - padding: 4px 0; - font-family: var(--font-monospace); - font-size: var(--font-text-size); - line-height: var(--line-height-normal); - background: transparent; - color: var(--text-normal); - resize: none; - outline: none; - box-shadow: none; - box-sizing: border-box; - -webkit-user-select: text; - user-select: text; - overflow: hidden; -} -.columns-container .column-inline-editor:focus, -.columns-container .column-inline-editor:focus-visible { - box-shadow: none; - outline: none; -} -.columns-container .column-inline-edit-block.is-editing .column-inline-edit-preview { - display: none; -} -.columns-container .column-inline-edit-block.is-editing .column-inline-editor { - display: block; -} -.columns-container .column-resize-handle { - width: 10px; - flex: 0 0 10px; - cursor: col-resize; - position: relative; - background: transparent; - margin: 0 -1px; - z-index: 2; -} -.columns-container .column-resize-handle.has-separator::before { - content: ""; - position: absolute; - left: 50%; - transform: translateX(-50%); - top: 8px; - bottom: 8px; - width: 0; - border-left: var(--sep-width, 1px) var(--sep-style, solid) var(--sep-color, var(--background-modifier-border)); - pointer-events: none; -} -.columns-container .column-resize-handle.has-separator-custom::before { - content: attr(data-sep-char); - border: none; - width: auto; - writing-mode: vertical-rl; - text-orientation: mixed; - color: var(--sep-color, var(--text-faint)); - font-size: calc(var(--sep-width, 1px) * 6 + 6px); - line-height: 1rem; - letter-spacing: 0.15em; - opacity: 0.7; - overflow: hidden; - -webkit-user-select: none; - user-select: none; -} -.columns-container .column-resize-handle::after { - content: ""; - position: absolute; - left: 4px; - top: 15%; - bottom: 15%; - width: 2px; - background: var(--interactive-accent); - opacity: 0; - border-radius: 1px; - transition: opacity 0.15s ease; -} -.columns-container .column-resize-handle:hover::after, -.columns-container .column-resize-handle.is-active::after { - opacity: 0.6; -} -.columns-container .column-resize-handle.is-active.has-separator::before { - opacity: 0; -} -.columns-container .column-dragging { - opacity: 0.35; - border: 1px dashed var(--text-faint) !important; -} -.columns-container .column-drag-over { - position: relative; -} -.columns-container .column-drag-over::before { - content: ""; - position: absolute; - top: 4px; - bottom: 4px; - width: 3px; - border-radius: 2px; - background: var(--interactive-accent); - z-index: 10; - pointer-events: none; -} -.columns-container .column-drop-before::before { - left: -7px; -} -.columns-container .column-drop-after::before { - right: -7px; -} -.amc-cursor-drop-indicator { - position: absolute; - height: 3px; - background: var(--interactive-accent); - border-radius: 2px; - pointer-events: none; - z-index: 100; - opacity: 0.85; - box-shadow: 0 0 6px color-mix(in srgb, var(--interactive-accent) 50%, transparent); -} -.columns-container.columns-reading { - --columns-block-default-border-width: 0px; - border: none; - padding: 0; - overflow: visible; -} -.columns-container.columns-reading .column-item { - border: none; - overflow-x: auto; - min-width: 0; - margin: 0 4px 0 4px !important; -} -.columns-container.columns-reading .column-header { - margin: 0 0 6px; - border-radius: 4px 4px 0 0; -} -.columns-container.columns-reading .column-item:hover { - border: none; - background: var(--background-modifier-active-hover) !important; -} -.columns-container.columns-reading .column-toolbar { - display: none; -} -.columns-container.columns-stacked { - flex-direction: column !important; -} -.columns-container.columns-stacked > .column-item { - flex: none !important; - width: 100%; -} -.columns-container.columns-stacked > .column-resize-handle { - display: none !important; -} -.columns-container.columns-stacked > .column-separator-visual { - width: 100%; - flex: 0 0 auto; - border-left: none; - border-top: var(--sep-width, 1px) var(--sep-style, solid) var(--sep-color, var(--background-modifier-border)); - margin: 2px 8px; -} -.columns-container.columns-stacked > .column-separator-custom { - writing-mode: horizontal-tb; - text-orientation: initial; - width: 100%; - margin: 2px 8px; -} -.columns-container.columns-stacked .column-drop-before::before { - left: 4px; - right: 4px; - top: -7px; - bottom: auto; - width: auto; - height: 3px; -} -.columns-container.columns-stacked .column-drop-after::before { - left: 4px; - right: 4px; - bottom: -7px; - top: auto; - width: auto; - height: 3px; -} -.columns-container .columns-stack-group { - display: flex; - flex-direction: column; - flex: 1 1 0%; - min-width: 0; - align-items: stretch; - gap: 4px; - padding: 0 4px; -} -.columns-container .columns-stack-group > .column-item { - flex: none !important; - width: 100%; -} -.columns-container .columns-stack-group > .column-resize-handle { - display: none !important; -} -.columns-container .columns-stack-group > .column-separator-visual { - width: 100%; - flex: 0 0 auto; - border-left: none; - border-top: var(--sep-width, 1px) var(--sep-style, solid) var(--sep-color, var(--background-modifier-border)); - margin: 2px 8px; -} -.columns-container .columns-stack-group > .column-separator-custom { - writing-mode: horizontal-tb; - text-orientation: initial; - width: 100%; - margin: 2px 8px; -} -.columns-container .columns-stack-group .column-drop-before::before { - left: 4px; - right: 4px; - top: -7px; - bottom: auto; - width: auto; - height: 3px; -} -.columns-container .columns-stack-group .column-drop-after::before { - left: 4px; - right: 4px; - bottom: -7px; - top: auto; - width: auto; - height: 3px; -} -.columns-container .column-item.column-selected { - outline: 2px solid var(--interactive-accent); - outline-offset: -2px; -} -.columns-container .column-separator-visual { - width: 0; - flex: 0 0 var(--sep-width, 1px); - background: none; - border-left: var(--sep-width, 1px) var(--sep-style, solid) var(--sep-color, var(--background-modifier-border)); - margin: 8px 2px; -} -.columns-container .column-separator-custom { - flex: 0 0 auto; - display: flex; - align-items: center; - justify-content: center; - writing-mode: vertical-rl; - text-orientation: mixed; - color: var(--sep-color, var(--text-faint)); - font-size: var(--sep-size, 12px); - line-height: 1rem; - margin: 4px 2px; - overflow: hidden; - -webkit-user-select: none; - user-select: none; - pointer-events: none; - letter-spacing: 0.15em; - opacity: 0.7; -} -.columns-container .column-empty-placeholder { - color: var(--text-faint); - font-style: italic; - padding: 8px 0; - font-size: var(--font-smallest); -} -.columns-cursor-mirror { - position: absolute; - visibility: hidden; - white-space: pre-wrap; - overflow-wrap: break-word; - overflow: hidden; - height: auto; - width: var(--mirror-width, auto); -} -.columns-suggest-popup { - position: fixed; - min-width: 220px; - max-width: 450px; - max-height: 340px; - overflow-y: auto; - background: var(--background-secondary); - border: 1px solid var(--background-modifier-border); - border-radius: 8px; - box-shadow: var(--shadow-s); - padding: 4px 0; - z-index: 1000; -} -.columns-suggest-item { - display: flex; - flex-direction: row; - padding: 5px 10px; - cursor: pointer; - gap: 0.5rem !important; -} -.columns-suggest-item:hover, -.columns-suggest-item.is-selected { - background: var(--background-modifier-hover); - border-radius: 4px; -} -.columns-suggest-title { - font-size: var(--font-text-size); - color: var(--text-normal); - font-weight: 500; - white-space: nowrap; - overflow: hidden; - text-overflow: ellipsis; -} -.columns-suggest-path { - font-size: var(--font-smallest); - color: var(--text-faint); - white-space: nowrap; - overflow: hidden; - text-overflow: ellipsis; -} -.columns-suggest-icon { - flex-shrink: 0; - width: 18px; - height: 18px; - color: var(--text-muted); - display: flex; - align-items: center; - justify-content: center; -} -.columns-suggest-icon svg { - width: 16px; - height: 16px; -} -.columns-suggest-text { - display: flex; - flex-direction: column; - gap: 1px; - overflow: hidden; -} -.columns-suggest-item:has(.columns-suggest-icon) { - flex-direction: row; - align-items: center; - gap: 8px; -} - -/* src/styles/legacy-callout.css */ -div[data-callout=col].callout, -div[data-callout^=col-md].callout { - background-color: rgba(0, 0, 0, 0); - padding: 0 0 0 0; - border-style: none; -} -.columnParent, -div[data-callout=col].callout > div.callout-content { - display: flex !important; - padding: var(--obsidian-columns-padding); - flex-wrap: nowrap; - gap: var(--obsidian-columns-gap); - white-space: normal; - overflow-x: auto; -} -div[data-callout=col].callout > div.callout-title, -div[data-callout^=col-md].callout > div.callout-title { - display: none; -} -.cm-preview-code-block .admonition-content .columnParent p { - white-space: pre-wrap; -} -.columnChild, -div[data-callout=col].callout > div.callout-content > * { - flex-grow: var(--obsidian-columns-def-span); - flex-basis: calc(var(--obsidian-columns-min-width) * var(--obsidian-columns-def-span)); - width: calc(var(--obsidian-columns-min-width) * var(--obsidian-columns-def-span)); -} -div[data-callout=col].callout > div.callout-content > div[data-callout^=col-md].callout { - flex-grow: var(--obsidian-columns-custom-span); - flex-basis: calc(var(--obsidian-columns-min-width) * var(--obsidian-columns-custom-span)); - width: calc(var(--obsidian-columns-min-width) * var(--obsidian-columns-custom-span)); - margin: 0; - background-color: rgba(0, 0, 0, 0); - padding: 0 0 0 0; - border-style: none; -} -div[data-callout=col].callout > div.callout-content > div[data-callout$="-0.5"].callout { - --obsidian-columns-custom-span: 0.5; -} -div[data-callout=col].callout > div.callout-content > div[data-callout$="-1"].callout, -div[data-callout=col].callout > div.callout-content > div[data-callout=col-md].callout { - --obsidian-columns-custom-span: 1; -} -div[data-callout=col].callout > div.callout-content > div[data-callout$="-1.5"].callout { - --obsidian-columns-custom-span: 1.5; -} -div[data-callout=col].callout > div.callout-content > div[data-callout$="-2"].callout { - --obsidian-columns-custom-span: 2; -} -div[data-callout=col].callout > div.callout-content > div[data-callout$="-2.5"].callout { - --obsidian-columns-custom-span: 2.5; -} -div[data-callout=col].callout > div.callout-content > div[data-callout$="-3"].callout { - --obsidian-columns-custom-span: 3; -} -div[data-callout=col].callout > div.callout-content > div[data-callout$="-3.5"].callout { - --obsidian-columns-custom-span: 3.5; -} -div[data-callout=col].callout > div.callout-content > div[data-callout$="-4"].callout { - --obsidian-columns-custom-span: 4; -} -div[data-callout=col].callout > div.callout-content > div[data-callout$="-4.5"].callout { - --obsidian-columns-custom-span: 4.5; -} -div[data-callout=col].callout > div.callout-content > div[data-callout$="-5"].callout { - --obsidian-columns-custom-span: 5; -} -div[data-callout=col].callout > div.callout-content > div[data-callout$="-5.5"].callout { - --obsidian-columns-custom-span: 5.5; -} -div[data-callout=col].callout > div.callout-content > div[data-callout$="-6"].callout { - --obsidian-columns-custom-span: 6; -} -div[data-callout=col].callout > div.callout-content > div[data-callout$="-6.5"].callout { - --obsidian-columns-custom-span: 6.5; -} -div[data-callout=col].callout > div.callout-content > div[data-callout$="-7"].callout { - --obsidian-columns-custom-span: 7; -} -div[data-callout=col].callout > div.callout-content > div[data-callout$="-7.5"].callout { - --obsidian-columns-custom-span: 7.5; -} -div[data-callout=col].callout > div.callout-content > div[data-callout$="-8"].callout { - --obsidian-columns-custom-span: 8; -} -div[data-callout=col].callout > div.callout-content > div[data-callout$="-8.5"].callout { - --obsidian-columns-custom-span: 8.5; -} -div[data-callout=col].callout > div.callout-content > div[data-callout$="-9"].callout { - --obsidian-columns-custom-span: 9; -} -div[data-callout=col].callout > div.callout-content > div[data-callout$="-9.5"].callout { - --obsidian-columns-custom-span: 9.5; -} -div[data-callout=col].callout > div.callout-content > div[data-callout$="-10"].callout { - --obsidian-columns-custom-span: 10; -} -div[data-callout=col].cm-callout, -div[data-callout^=col-md].cm-callout, -div[data-callout=col].cm-embed-block, -div[data-callout^=col-md].cm-embed-block { - background-color: rgba(0, 0, 0, 0); - padding: 0; - border-style: none; -} -div[data-callout=col].cm-callout > div.callout-content, -div[data-callout=col].cm-callout > div.cm-callout-content, -div[data-callout=col].cm-embed-block > div.callout-content, -div[data-callout=col].cm-embed-block > div.cm-callout-content { - display: flex !important; - padding: var(--obsidian-columns-padding); - flex-wrap: nowrap; - gap: var(--obsidian-columns-gap); - white-space: normal; - overflow-x: auto; -} -div[data-callout=col].cm-callout > div.callout-title, -div[data-callout=col].cm-callout > div.cm-callout-title, -div[data-callout^=col-md].cm-callout > div.callout-title, -div[data-callout^=col-md].cm-callout > div.cm-callout-title, -div[data-callout=col].cm-embed-block > div.callout-title, -div[data-callout=col].cm-embed-block > div.cm-callout-title, -div[data-callout^=col-md].cm-embed-block > div.callout-title, -div[data-callout^=col-md].cm-embed-block > div.cm-callout-title { - display: none; -} -div[data-callout=col].cm-callout > div.callout-content > *, -div[data-callout=col].cm-callout > div.cm-callout-content > *, -div[data-callout=col].cm-embed-block > div.callout-content > *, -div[data-callout=col].cm-embed-block > div.cm-callout-content > * { - flex-grow: var(--obsidian-columns-def-span); - flex-basis: calc(var(--obsidian-columns-min-width) * var(--obsidian-columns-def-span)); - width: calc(var(--obsidian-columns-min-width) * var(--obsidian-columns-def-span)); -} -div[data-callout=col].cm-callout > div.callout-content > div[data-callout^=col-md], -div[data-callout=col].cm-callout > div.cm-callout-content > div[data-callout^=col-md], -div[data-callout=col].cm-embed-block > div.callout-content > div[data-callout^=col-md], -div[data-callout=col].cm-embed-block > div.cm-callout-content > div[data-callout^=col-md] { - flex-grow: var(--obsidian-columns-custom-span); - flex-basis: calc(var(--obsidian-columns-min-width) * var(--obsidian-columns-custom-span)); - width: calc(var(--obsidian-columns-min-width) * var(--obsidian-columns-custom-span)); - margin: 0; - background-color: rgba(0, 0, 0, 0); - padding: 0; - border-style: none; -} -div[data-callout=col].cm-callout > div.callout-content > div[data-callout$="-0.5"], -div[data-callout=col].cm-callout > div.cm-callout-content > div[data-callout$="-0.5"], -div[data-callout=col].cm-embed-block > div.callout-content > div[data-callout$="-0.5"], -div[data-callout=col].cm-embed-block > div.cm-callout-content > div[data-callout$="-0.5"] { - --obsidian-columns-custom-span: 0.5; -} -div[data-callout=col].cm-callout > div.callout-content > div[data-callout$="-1"], -div[data-callout=col].cm-callout > div.cm-callout-content > div[data-callout$="-1"], -div[data-callout=col].cm-embed-block > div.callout-content > div[data-callout$="-1"], -div[data-callout=col].cm-embed-block > div.cm-callout-content > div[data-callout$="-1"], -div[data-callout=col].cm-callout > div.callout-content > div[data-callout=col-md], -div[data-callout=col].cm-callout > div.cm-callout-content > div[data-callout=col-md], -div[data-callout=col].cm-embed-block > div.callout-content > div[data-callout=col-md], -div[data-callout=col].cm-embed-block > div.cm-callout-content > div[data-callout=col-md] { - --obsidian-columns-custom-span: 1; -} -div[data-callout=col].cm-callout > div.callout-content > div[data-callout$="-1.5"], -div[data-callout=col].cm-callout > div.cm-callout-content > div[data-callout$="-1.5"], -div[data-callout=col].cm-embed-block > div.callout-content > div[data-callout$="-1.5"], -div[data-callout=col].cm-embed-block > div.cm-callout-content > div[data-callout$="-1.5"] { - --obsidian-columns-custom-span: 1.5; -} -div[data-callout=col].cm-callout > div.callout-content > div[data-callout$="-2"], -div[data-callout=col].cm-callout > div.cm-callout-content > div[data-callout$="-2"], -div[data-callout=col].cm-embed-block > div.callout-content > div[data-callout$="-2"], -div[data-callout=col].cm-embed-block > div.cm-callout-content > div[data-callout$="-2"] { - --obsidian-columns-custom-span: 2; -} -div[data-callout=col].cm-callout > div.callout-content > div[data-callout$="-2.5"], -div[data-callout=col].cm-callout > div.cm-callout-content > div[data-callout$="-2.5"], -div[data-callout=col].cm-embed-block > div.callout-content > div[data-callout$="-2.5"], -div[data-callout=col].cm-embed-block > div.cm-callout-content > div[data-callout$="-2.5"] { - --obsidian-columns-custom-span: 2.5; -} -div[data-callout=col].cm-callout > div.callout-content > div[data-callout$="-3"], -div[data-callout=col].cm-callout > div.cm-callout-content > div[data-callout$="-3"], -div[data-callout=col].cm-embed-block > div.callout-content > div[data-callout$="-3"], -div[data-callout=col].cm-embed-block > div.cm-callout-content > div[data-callout$="-3"] { - --obsidian-columns-custom-span: 3; -} -div[data-callout=col].cm-callout > div.callout-content > div[data-callout$="-3.5"], -div[data-callout=col].cm-callout > div.cm-callout-content > div[data-callout$="-3.5"], -div[data-callout=col].cm-embed-block > div.callout-content > div[data-callout$="-3.5"], -div[data-callout=col].cm-embed-block > div.cm-callout-content > div[data-callout$="-3.5"] { - --obsidian-columns-custom-span: 3.5; -} -div[data-callout=col].cm-callout > div.callout-content > div[data-callout$="-4"], -div[data-callout=col].cm-callout > div.cm-callout-content > div[data-callout$="-4"], -div[data-callout=col].cm-embed-block > div.callout-content > div[data-callout$="-4"], -div[data-callout=col].cm-embed-block > div.cm-callout-content > div[data-callout$="-4"] { - --obsidian-columns-custom-span: 4; -} -div[data-callout=col].cm-callout > div.callout-content > div[data-callout$="-4.5"], -div[data-callout=col].cm-callout > div.cm-callout-content > div[data-callout$="-4.5"], -div[data-callout=col].cm-embed-block > div.callout-content > div[data-callout$="-4.5"], -div[data-callout=col].cm-embed-block > div.cm-callout-content > div[data-callout$="-4.5"] { - --obsidian-columns-custom-span: 4.5; -} -div[data-callout=col].cm-callout > div.callout-content > div[data-callout$="-5"], -div[data-callout=col].cm-callout > div.cm-callout-content > div[data-callout$="-5"], -div[data-callout=col].cm-embed-block > div.callout-content > div[data-callout$="-5"], -div[data-callout=col].cm-embed-block > div.cm-callout-content > div[data-callout$="-5"] { - --obsidian-columns-custom-span: 5; -} -div[data-callout=col].cm-callout > div.callout-content > div[data-callout$="-5.5"], -div[data-callout=col].cm-callout > div.cm-callout-content > div[data-callout$="-5.5"], -div[data-callout=col].cm-embed-block > div.callout-content > div[data-callout$="-5.5"], -div[data-callout=col].cm-embed-block > div.cm-callout-content > div[data-callout$="-5.5"] { - --obsidian-columns-custom-span: 5.5; -} -div[data-callout=col].cm-callout > div.callout-content > div[data-callout$="-6"], -div[data-callout=col].cm-callout > div.cm-callout-content > div[data-callout$="-6"], -div[data-callout=col].cm-embed-block > div.callout-content > div[data-callout$="-6"], -div[data-callout=col].cm-embed-block > div.cm-callout-content > div[data-callout$="-6"] { - --obsidian-columns-custom-span: 6; -} -div[data-callout=col].cm-callout > div.callout-content > div[data-callout$="-6.5"], -div[data-callout=col].cm-callout > div.cm-callout-content > div[data-callout$="-6.5"], -div[data-callout=col].cm-embed-block > div.callout-content > div[data-callout$="-6.5"], -div[data-callout=col].cm-embed-block > div.cm-callout-content > div[data-callout$="-6.5"] { - --obsidian-columns-custom-span: 6.5; -} -div[data-callout=col].cm-callout > div.callout-content > div[data-callout$="-7"], -div[data-callout=col].cm-callout > div.cm-callout-content > div[data-callout$="-7"], -div[data-callout=col].cm-embed-block > div.callout-content > div[data-callout$="-7"], -div[data-callout=col].cm-embed-block > div.cm-callout-content > div[data-callout$="-7"] { - --obsidian-columns-custom-span: 7; -} -div[data-callout=col].cm-callout > div.callout-content > div[data-callout$="-7.5"], -div[data-callout=col].cm-callout > div.cm-callout-content > div[data-callout$="-7.5"], -div[data-callout=col].cm-embed-block > div.callout-content > div[data-callout$="-7.5"], -div[data-callout=col].cm-embed-block > div.cm-callout-content > div[data-callout$="-7.5"] { - --obsidian-columns-custom-span: 7.5; -} -div[data-callout=col].cm-callout > div.callout-content > div[data-callout$="-8"], -div[data-callout=col].cm-callout > div.cm-callout-content > div[data-callout$="-8"], -div[data-callout=col].cm-embed-block > div.callout-content > div[data-callout$="-8"], -div[data-callout=col].cm-embed-block > div.cm-callout-content > div[data-callout$="-8"] { - --obsidian-columns-custom-span: 8; -} -div[data-callout=col].cm-callout > div.callout-content > div[data-callout$="-8.5"], -div[data-callout=col].cm-callout > div.cm-callout-content > div[data-callout$="-8.5"], -div[data-callout=col].cm-embed-block > div.callout-content > div[data-callout$="-8.5"], -div[data-callout=col].cm-embed-block > div.cm-callout-content > div[data-callout$="-8.5"] { - --obsidian-columns-custom-span: 8.5; -} -div[data-callout=col].cm-callout > div.callout-content > div[data-callout$="-9"], -div[data-callout=col].cm-callout > div.cm-callout-content > div[data-callout$="-9"], -div[data-callout=col].cm-embed-block > div.callout-content > div[data-callout$="-9"], -div[data-callout=col].cm-embed-block > div.cm-callout-content > div[data-callout$="-9"] { - --obsidian-columns-custom-span: 9; -} -div[data-callout=col].cm-callout > div.callout-content > div[data-callout$="-9.5"], -div[data-callout=col].cm-callout > div.cm-callout-content > div[data-callout$="-9.5"], -div[data-callout=col].cm-embed-block > div.callout-content > div[data-callout$="-9.5"], -div[data-callout=col].cm-embed-block > div.cm-callout-content > div[data-callout$="-9.5"] { - --obsidian-columns-custom-span: 9.5; -} -div[data-callout=col].cm-callout > div.callout-content > div[data-callout$="-10"], -div[data-callout=col].cm-callout > div.cm-callout-content > div[data-callout$="-10"], -div[data-callout=col].cm-embed-block > div.callout-content > div[data-callout$="-10"], -div[data-callout=col].cm-embed-block > div.cm-callout-content > div[data-callout$="-10"] { - --obsidian-columns-custom-span: 10; -} - -/* src/styles/settings-tab.css */ -.columns-settings-root .columns-settings-tab-bar { - display: flex; - gap: 8px; - flex-wrap: wrap; - padding-bottom: 12px; - margin-bottom: 16px; - border-bottom: 1px solid var(--background-modifier-border); -} -.columns-settings-root .columns-settings-tab-btn { - border: 1px solid var(--background-modifier-border); - background: var(--background-secondary); - color: var(--text-muted); - border-radius: 8px; - padding: 6px 12px; - font-size: 0.85rem; - font-weight: 600; - line-height: 1; - cursor: pointer; -} -.columns-settings-root .columns-settings-tab-btn:hover { - background: var(--background-modifier-hover); - color: var(--text-normal); -} -.columns-settings-root .columns-settings-tab-btn.is-active { - border-color: var(--interactive-accent); - background: var(--interactive-accent); - color: var(--text-on-accent); -} -.columns-settings-root .columns-settings-panel { - display: none; -} -.columns-settings-root .columns-settings-panel.is-active { - display: block; -} -.columns-settings-root .columns-settings-section-title { - margin: 20px 0 8px; - font-size: 0.82rem; - font-weight: 700; - color: var(--text-muted); - text-transform: uppercase; - letter-spacing: 0.04em; -} -.columns-settings-root .columns-settings-section-title:first-child { - margin-top: 0; -} -.columns-settings-root .setting-item { - border: 1px solid var(--background-modifier-border); - background: var(--background-primary-alt); - border-radius: 10px; - padding: 10px 12px; - margin-bottom: 8px; -} -.columns-settings-root .setting-item-control .slider { - width: 130px; -} -.columns-settings-root .columns-settings-number-input { - width: 64px; - text-align: center; -} -.columns-settings-about { - display: flex; - flex-direction: column; - gap: 20px; -} -.columns-settings-about-info { - text-align: center; - padding: 16px 0 8px; -} -.columns-settings-about-name { - font-size: 1.1rem; - font-weight: 700; - color: var(--text-normal); -} -.columns-settings-about-version { - font-size: 0.82rem; - color: var(--text-muted); - margin-top: 2px; -} -.columns-settings-about-links { - display: flex; - flex-wrap: wrap; - gap: 8px; - justify-content: center; -} -.columns-settings-about-link { - display: inline-block; - padding: 5px 12px; - font-size: 0.82rem; - font-weight: 500; - color: var(--text-muted); - border: 1px solid var(--background-modifier-border); - border-radius: 6px; - text-decoration: none; - transition: color 0.15s ease, border-color 0.15s ease; -} -.columns-settings-about-link:hover { - color: var(--text-normal); - border-color: var(--interactive-accent); - text-decoration: none; -} -.columns-settings-about-support, -.columns-settings-about-others { - text-align: center; -} -.columns-settings-about-support-label { - font-size: 0.8rem; - font-weight: 600; - color: var(--text-faint); - text-transform: uppercase; - letter-spacing: 0.04em; - margin-bottom: 8px; -} -.columns-header-types-list { - display: flex; - flex-direction: column; - gap: 12px; -} -.columns-header-type-row { - border: 1px solid var(--background-modifier-border); - border-radius: 10px; - overflow: hidden; - display: grid; - align-items: stretch; -} -.columns-header-type-preview { - display: flex; - align-items: center; - gap: 6px; - padding: 6px 10px; - line-height: 1.4; - height: 100%; -} -.columns-header-type-preview-icon { - display: inline-flex; - align-items: center; - flex-shrink: 0; -} -.columns-header-type-preview-icon .svg-icon { - width: 16px; - height: 16px; -} -.columns-header-type-preview-id { - font-weight: inherit; -} -.columns-header-type-preview-badge { - margin-left: auto; - font-size: 0.72em; - font-weight: 500; - opacity: 0.6; - text-transform: uppercase; - letter-spacing: 0.04em; -} -.columns-header-type-delete-btn { - display: inline-flex; - align-items: center; - cursor: pointer; - opacity: 0.5; - margin-left: 6px; - color: var(--text-error); -} -.columns-header-type-delete-btn:hover { - opacity: 1; -} -.columns-header-type-delete-btn .svg-icon { - width: 14px; - height: 14px; -} -.columns-header-type-controls { - padding: 8px 12px; - display: grid; - grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); - gap: 0 16px; -} -.columns-header-type-controls .setting-item.columns-header-type-setting { - border: none; - background: none; - border-radius: 0; - padding: 6px 0; - margin-bottom: 0; - min-width: 0; -} -.columns-header-type-controls .setting-item.columns-header-type-setting .setting-item-info, -.columns-header-type-controls .setting-item.columns-header-type-setting .setting-item-control { - min-width: 0; -} -.columns-header-type-controls .columns-settings-number-input { - width: 96px; - text-align: left; -} -@media (max-width: 900px) { - .columns-header-type-row { - grid-template-columns: 1fr; - } -} -.columns-icon-suggest-item { - display: flex; - align-items: center; - gap: 8px; - padding: 2px 0; -} -.columns-icon-suggest-icon { - display: inline-flex; - align-items: center; - flex-shrink: 0; -} -.columns-icon-suggest-icon .svg-icon { - width: 16px; - height: 16px; -} - -/* src/styles/style-popover.css */ -.columns-style-popover { - position: fixed; - z-index: 2100; - min-width: 280px; - max-width: 320px; - max-height: min(78vh, 640px); - padding: 8px; - border-radius: 10px; - border: 1px solid var(--background-modifier-border); - background: var(--background-primary); - box-shadow: var(--shadow-s); - display: flex; - flex-direction: column; - gap: 2px; - overflow-y: auto; - overflow-x: hidden; - scrollbar-gutter: stable; -} -.columns-style-popover-section { - padding: 4px 8px 2px; - font-size: var(--font-ui-smaller); - color: var(--text-muted); -} -.columns-style-popover-section-inline { - display: flex; - align-items: center; - justify-content: space-between; - gap: 8px; -} -.columns-style-popover-section-inline .columns-style-popover-section { - padding-right: 0; -} -.columns-style-popover-mini-btn { - height: 22px; - padding: 0 8px; - border-radius: 6px; - border: 1px solid var(--background-modifier-border); - background: var(--background-secondary); - color: var(--text-normal); - font-size: var(--font-ui-smaller); - cursor: pointer; -} -.columns-style-popover-mini-btn:hover { - background: var(--background-modifier-hover); -} -.columns-style-popover-divider { - height: 1px; - margin: 4px 2px; - background: var(--background-modifier-border); -} -.columns-style-popover-row { - width: 100%; - background: transparent; - border-radius: 6px; - padding: 6px 8px; - display: flex; - align-items: center; - justify-content: space-between; - gap: 10px; - color: var(--text-normal); - cursor: pointer; - text-align: left; - font-size: var(--font-ui-small); -} -.columns-style-popover-row:hover { - background: var(--background-modifier-hover); -} -.columns-style-popover-checkbox { - width: 25px; - height: 25px; - border: 1px solid var(--background-modifier-border); - border-radius: 4px; - background: var(--background-secondary); - display: inline-flex; - align-items: center; - justify-content: center; - flex: 0 0 25px; - padding: 0 0 2px; -} -.columns-style-popover-checkbox-mark { - opacity: 0; - font-size: 13px; - line-height: 1; - color: var(--text-normal); -} -.columns-style-popover-row.is-checked .columns-style-popover-checkbox { - border-color: var(--interactive-accent); - background: var(--interactive-accent); -} -.columns-style-popover-row.is-checked .columns-style-popover-checkbox-mark { - opacity: 1; - color: var(--text-on-accent); -} -.columns-style-popover-row-label { - flex: 1 1 auto; -} -.columns-style-popover-inline-buttons { - display: flex; - align-items: center; - gap: 8px; - padding: 4px 8px; -} -.columns-style-popover-inline-btn { - flex: 1 1 0%; - min-height: 28px; - padding: 4px 8px; - border-radius: 6px; - border: 1px solid var(--background-modifier-border); - background: var(--background-secondary); - color: var(--text-normal); - font-size: var(--font-ui-small); - cursor: pointer; - display: inline-flex; - align-items: center; - justify-content: center; -} -.columns-style-popover-inline-btn .svg-icon { - width: 16px; - height: 16px; -} -.columns-style-popover-inline-btn:hover { - background: var(--background-modifier-hover); -} -.columns-style-popover-inline-btn-danger { - color: var(--text-error); - border-color: var(--text-error); -} -.columns-style-popover-inline-btn-danger:hover { - background: var(--text-error); - color: var(--text-on-accent); -} -.columns-style-popover-select-row { - display: flex; - align-items: center; - justify-content: space-between; - gap: 10px; - padding: 6px 8px; - border-radius: 6px; -} -.columns-style-popover-select-row:hover { - background: var(--background-modifier-hover); -} -.columns-style-popover-select-label { - font-size: var(--font-ui-small); - color: var(--text-normal); -} -.columns-style-popover-select { - min-width: 124px; - max-width: 156px; - height: 28px; -} -.columns-style-popover-collapsible { - display: flex; - flex-direction: column; - gap: 2px; -} -.columns-style-popover-collapsible-header { - display: flex; - align-items: center; - gap: 6px; - padding: 4px 8px 2px; - cursor: pointer; - border-radius: 6px; -} -.columns-style-popover-collapsible-header:hover { - background: var(--background-modifier-hover); -} -.columns-style-popover-chevron { - font-size: 8px; - color: var(--text-faint); - flex: 0 0 10px; - text-align: center; -} -.columns-style-popover-collapsible-label { - flex: 1 1 auto; - font-size: var(--font-ui-smaller); - color: var(--text-muted); - font-weight: 500; -} -.columns-style-popover-collapsible-header .columns-style-popover-mini-btn { - flex: 0 0 auto; -} -.columns-style-popover-collapsible-body { - display: flex; - flex-direction: column; - gap: 2px; - padding-left: 4px; -} -.columns-style-popover-collapsible-body.is-collapsed { - display: none; -} -.columns-style-popover-inline-toggle-select { - display: flex; - align-items: center; - gap: 8px; - padding: 6px 8px; - border-radius: 6px; -} -.columns-style-popover-inline-toggle-select:hover { - background: var(--background-modifier-hover); -} -.columns-style-popover-inline-toggle-select .columns-style-popover-select-label { - flex: 1 1 auto; -} -.columns-style-popover-inline-toggle-select .columns-style-popover-checkbox { - cursor: pointer; -} -.columns-style-popover-inline-toggle-select .columns-style-popover-checkbox.is-checked { - border-color: var(--interactive-accent); - background: var(--interactive-accent); -} -.columns-style-popover-inline-toggle-select .columns-style-popover-checkbox.is-checked .columns-style-popover-checkbox-mark { - opacity: 1; - color: var(--text-on-accent); -} -.columns-style-popover-inline-toggle-select .columns-style-popover-select { - min-width: 100px; - max-width: 120px; -} -.columns-style-popover-compact-row { - display: flex; - align-items: center; - gap: 8px; - padding: 6px 8px; - border-radius: 6px; -} -.columns-style-popover-compact-row:hover { - background: var(--background-modifier-hover); -} -.columns-style-popover-compact-row .columns-style-popover-select-label { - flex: 0 0 auto; -} -.columns-style-popover-compact-selects { - display: flex; - align-items: center; - gap: 4px; - flex: 1 1 auto; - justify-content: flex-end; -} -.columns-style-popover-compact-select { - height: 28px; - min-width: 0; - flex: 1 1 0%; - max-width: 80px; - font-size: var(--font-ui-smaller); -} -.columns-style-popover-text-input { - min-width: 60px; - max-width: 80px; - height: 28px; - padding: 2px 8px; - border-radius: 6px; - border: 1px solid var(--background-modifier-border); - background: var(--background-secondary); - color: var(--text-normal); - font-size: var(--font-ui-small); - text-align: center; -} - -/* src/styles/index.css */ -/*# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsic3JjL3N0eWxlcy9sYXlvdXQuY3NzIiwgInNyYy9zdHlsZXMvbGVnYWN5LWNhbGxvdXQuY3NzIiwgInNyYy9zdHlsZXMvc2V0dGluZ3MtdGFiLmNzcyIsICJzcmMvc3R5bGVzL3N0eWxlLXBvcG92ZXIuY3NzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyI6cm9vdCB7XHJcbiAgICAtLW9ic2lkaWFuLWNvbHVtbnMtZ2FwOiAyMHB4O1xyXG4gICAgLS1vYnNpZGlhbi1jb2x1bW5zLXBhZGRpbmc6IDAgMjBweDtcclxuICAgIC0tb2JzaWRpYW4tY29sdW1ucy1taW4td2lkdGg6IDEwMHB4O1xyXG4gICAgLS1vYnNpZGlhbi1jb2x1bW5zLWRlZi1zcGFuOiAxO1xyXG59XHJcblxyXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4gICBNYXJrZXItYmFzZWQgY29sdW1ucyBsYXlvdXQgc3R5bGVzIChMaXZlIFByZXZpZXcgKyBSZWFkaW5nIFZpZXcpXHJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4vKiBSZWFkaW5nLXZpZXcgd3JhcHBlciBtb2RlOiBjb250ZW50IGVsLSogZGl2cyBhbmQgdGhlIHB1c2hlciBhcmUgaGlkZGVuXHJcbiAgIGluZGl2aWR1YWxseSB2aWEgSlMgKGFtYy1ydi1oaWRkZW4gY2xhc3MpIHNvIHRoYXQgbWV0YWRhdGEgY29udGFpbmVycyxcclxuICAgYmFubmVyIHBsdWdpbiBlbGVtZW50cywgaW5saW5lIHRpdGxlcywgYW5kIG90aGVyIG5vbi1jb250ZW50IFVJIHN1cnZpdmUuICovXHJcbi5tYXJrZG93bi1wcmV2aWV3LXZpZXcuYW1jLXJlYWRpbmctY29sdW1ucy1hY3RpdmUgPiAubWFya2Rvd24tcHJldmlldy1zaXplciA+IC5hbWMtcnYtaGlkZGVuIHtcclxuXHRkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi8qIEhpZGUgYmFja2xpbmtzIGZvb3RlciBpbnNpZGUgc2l6ZXIgXHUyMDE0IGl0IGdldHMgcmVsb2NhdGVkIGFmdGVyIHRoZSBob3N0IHdyYXBwZXIgKi9cclxuLm1hcmtkb3duLXByZXZpZXctdmlldy5hbWMtcmVhZGluZy1jb2x1bW5zLWFjdGl2ZSA+IC5tYXJrZG93bi1wcmV2aWV3LXNpemVyID4gLm1vZC1mb290ZXIge1xyXG5cdGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcclxufVxyXG5cclxuLyogQ29sbGFwc2UgdGhlIHNpemVyJ3Mgb3duIGhlaWdodC9wYWRkaW5nIHNvIGl0IHdyYXBzIHRpZ2h0bHkgYXJvdW5kXHJcbiAgIHRoZSByZW1haW5pbmcgdmlzaWJsZSBjaGlsZHJlbiAoYmFubmVyLCBtZXRhZGF0YSwgdGl0bGUpLiAqL1xyXG4ubWFya2Rvd24tcHJldmlldy12aWV3LmFtYy1yZWFkaW5nLWNvbHVtbnMtYWN0aXZlID4gLm1hcmtkb3duLXByZXZpZXctc2l6ZXIge1xyXG5cdG1pbi1oZWlnaHQ6IDAgIWltcG9ydGFudDtcclxuXHRoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcclxuXHRwYWRkaW5nLWJvdHRvbTogMCAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4vKiBIb3N0IGNvbnRhaW5lcjogaGlkZGVuIGJ5IGRlZmF1bHQsIHNob3duIHdoZW4gY29sdW1ucyBhcmUgYWN0aXZlLlxyXG4gICBJbmhlcml0IHRoZSBzaXplcidzIHJlYWRhYmxlLWxpbmUtd2lkdGggY29uc3RyYWludHMuICovXHJcbi5tYXJrZG93bi1wcmV2aWV3LXZpZXcgPiAuYW1jLXJlYWRpbmctY29sdW1ucy1ob3N0IHtcclxuXHRkaXNwbGF5OiBub25lO1xyXG59XHJcblxyXG4ubWFya2Rvd24tcHJldmlldy12aWV3LmFtYy1yZWFkaW5nLWNvbHVtbnMtYWN0aXZlID4gLmFtYy1yZWFkaW5nLWNvbHVtbnMtaG9zdCB7XHJcblx0ZGlzcGxheTogYmxvY2s7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0Ym94LXNpemluZzogYm9yZGVyLWJveDtcclxufVxyXG5cclxuLyogQ29uc3RyYWluIHJlbG9jYXRlZCBiYWNrbGlua3MgZm9vdGVyIHRvIGZ1bGwgd2lkdGggYnkgZGVmYXVsdCAqL1xyXG4ubWFya2Rvd24tcHJldmlldy12aWV3LmFtYy1yZWFkaW5nLWNvbHVtbnMtYWN0aXZlID4gLm1vZC1mb290ZXIge1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cdGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbn1cclxuXHJcbi8qIFdoZW4gcmVhZGFibGUgbGluZSB3aWR0aCBpcyBvbiwgY2FwIGhvc3QgYW5kIGZvb3RlciB0byB0aGUgZmlsZSBsaW5lIHdpZHRoICovXHJcbi5tYXJrZG93bi1wcmV2aWV3LXZpZXcuYW1jLXJlYWRpbmctY29sdW1ucy1hY3RpdmUuaXMtcmVhZGFibGUtbGluZS13aWR0aCA+IC5hbWMtcmVhZGluZy1jb2x1bW5zLWhvc3QsXHJcbi5tYXJrZG93bi1wcmV2aWV3LXZpZXcuYW1jLXJlYWRpbmctY29sdW1ucy1hY3RpdmUuaXMtcmVhZGFibGUtbGluZS13aWR0aCA+IC5tb2QtZm9vdGVyIHtcclxuXHRtYXgtd2lkdGg6IHZhcigtLWZpbGUtbGluZS13aWR0aCk7XHJcblx0bWFyZ2luOiAwIGF1dG87XHJcbn1cclxuXHJcbi5tYXJrZG93bi1wcmV2aWV3LXZpZXcuYW1jLXJlYWRpbmctY29sdW1ucy1hY3RpdmUgPiAuYW1jLXJlYWRpbmctY29sdW1ucy1ob3N0ID4gLmNvbHVtbnMtcnYtd3JhcHBlciB7XHJcblx0ZGlzcGxheTogYmxvY2s7XHJcblx0d2lkdGg6IDEwMCU7XHJcbn1cclxuXHJcbi5jb2x1bW5zLWNvbnRhaW5lciB7XHJcblx0LS1jb2x1bW5zLWJsb2NrLWRlZmF1bHQtYm9yZGVyLXdpZHRoOiAxcHg7XHJcblx0LS1jb2x1bW5zLWJsb2NrLWRlZmF1bHQtYm9yZGVyLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0ZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiByb3cgIWltcG9ydGFudDtcclxuXHRmbGV4LXdyYXA6IG5vd3JhcCAhaW1wb3J0YW50O1xyXG5cdGFsaWduLWl0ZW1zOiBzdHJldGNoICFpbXBvcnRhbnQ7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0bWFyZ2luOiAxMnB4IDA7XHJcblx0LyogbWluLWhlaWdodDogNjBweDsgKi9cclxuXHQvKiBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7ICovXHJcblx0Ym9yZGVyLXJhZGl1czogOHB4O1xyXG5cdHBhZGRpbmc6IDRweDtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXByaW1hcnkpO1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG59XHJcblxyXG4uY29sdW1ucy1jb250YWluZXIuY29sdW1ucy1yZXNpemluZyB7XHJcblx0Y3Vyc29yOiBjb2wtcmVzaXplO1xyXG59XHJcblxyXG4uY29sdW1ucy1jb250YWluZXIuY29sdW1ucy1uZXN0ZWQge1xyXG5cdG1hcmdpbjogOHB4IDA7XHJcblx0bWluLWhlaWdodDogMDtcclxuXHRwYWRkaW5nOiAzcHg7XHJcbn1cclxuXHJcbi5jb2x1bW5zLWNvbnRhaW5lci5jb2x1bW5zLW5lc3RlZCAuY29sdW1uLWl0ZW0ge1xyXG5cdG1pbi1oZWlnaHQ6IDMycHg7XHJcblx0cGFkZGluZzogOHB4IDEwcHg7XHJcbn1cclxuXHJcbi5jb2x1bW5zLWNvbnRhaW5lci5jb2x1bW5zLW5lc3RlZCAuY29sdW1uLXRvb2xiYXIge1xyXG5cdG9wYWNpdHk6IDEgIWltcG9ydGFudDtcclxuXHRkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XHJcblx0cG9pbnRlci1ldmVudHM6IG5vbmU7XHJcbn1cclxuXHJcbi5jb2x1bW5zLWNvbnRhaW5lci5jb2x1bW5zLW5lc3RlZCA6aXMoLmNvbHVtbi1kcmFnLWhhbmRsZSwgLmNvbHVtbi1hZGQtYnRuLCAuY29sdW1uLXJlbW92ZS1idG4pIHtcclxuXHRvcGFjaXR5OiAwO1xyXG5cdHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG5cdHRyYW5zaXRpb246IG9wYWNpdHkgMC4xNXMgZWFzZTtcclxufVxyXG5cclxuLmNvbHVtbnMtY29udGFpbmVyLmNvbHVtbnMtbmVzdGVkIC5jb2x1bW4taXRlbTpob3ZlciA6aXMoLmNvbHVtbi1kcmFnLWhhbmRsZSwgLmNvbHVtbi1hZGQtYnRuLCAuY29sdW1uLXJlbW92ZS1idG4pLFxyXG4uY29sdW1ucy1jb250YWluZXIuY29sdW1ucy1uZXN0ZWQgLmNvbHVtbi1pdGVtLmlzLWVkaXRpbmcgOmlzKC5jb2x1bW4tZHJhZy1oYW5kbGUsIC5jb2x1bW4tYWRkLWJ0biwgLmNvbHVtbi1yZW1vdmUtYnRuKSB7XHJcblx0b3BhY2l0eTogMTtcclxuXHRwb2ludGVyLWV2ZW50czogYXV0bztcclxufVxyXG5cclxuLmNvbHVtbnMtY29udGFpbmVyIC5jb2x1bW4taXRlbSB7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdGZsZXg6IDEgMSAwJTtcclxuXHRtaW4td2lkdGg6IDA7XHJcblx0cGFkZGluZzogMTBweCAxNHB4O1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xyXG5cdGJvcmRlci1yYWRpdXM6IDZweDtcclxuXHR0cmFuc2l0aW9uOiBib3JkZXItY29sb3IgMC4xNXMgZWFzZSwgYmFja2dyb3VuZC1jb2xvciAwLjE1cyBlYXNlO1xyXG5cdC8qIG1pbi1oZWlnaHQ6IDQ4cHg7ICovXHJcblx0Ym94LXNpemluZzogYm9yZGVyLWJveDtcclxuXHRvdmVyZmxvdzogdmlzaWJsZTtcclxufVxyXG5cclxuLmNvbHVtbnMtY29udGFpbmVyIC5jb2x1bW4taXRlbTpob3ZlciB7XHJcblx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tY29sdW1ucy1jb2wtYmcsIHRyYW5zcGFyZW50KTtcclxufVxyXG5cclxuLmNvbHVtbnMtY29udGFpbmVyIC5jb2x1bW4taXRlbS5pcy1lZGl0aW5nLFxyXG4uY29sdW1ucy1jb250YWluZXIgLmNvbHVtbi1pdGVtLmlzLWVkaXRpbmc6aG92ZXIge1xyXG5cdGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tY29sdW1ucy1jb2wtYmcsIHRyYW5zcGFyZW50KTtcclxufVxyXG5cclxuLmNvbHVtbnMtY29udGFpbmVyIC5jb2x1bW4taXRlbS5jb2x1bW5zLWN1c3RvbS1zdHlsZSB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tY29sdW1ucy1jb2wtYmcsIHRyYW5zcGFyZW50KTtcclxuXHRjb2xvcjogdmFyKC0tY29sdW1ucy1jb2wtdGV4dCwgaW5oZXJpdCk7XHJcblx0Ym9yZGVyLXN0eWxlOiBzb2xpZDtcclxuXHRib3JkZXItY29sb3I6IHZhcigtLWNvbHVtbnMtY29sLWJvcmRlci1jb2xvciwgdHJhbnNwYXJlbnQpO1xyXG5cdGJvcmRlci13aWR0aDogdmFyKC0tY29sdW1ucy1jb2wtYm9yZGVyLXdpZHRoLCAwcHgpO1xyXG5cdGJvcmRlci10b3Atd2lkdGg6IHZhcihcclxuXHRcdC0tY29sdW1ucy1jb2wtaG9yaXpvbnRhbC13aWR0aCxcclxuXHRcdHZhcigtLWNvbHVtbnMtY29sLWJvcmRlci13aWR0aCwgMHB4KVxyXG5cdCk7XHJcblx0Ym9yZGVyLWJvdHRvbS13aWR0aDogdmFyKFxyXG5cdFx0LS1jb2x1bW5zLWNvbC1ob3Jpem9udGFsLXdpZHRoLFxyXG5cdFx0dmFyKC0tY29sdW1ucy1jb2wtYm9yZGVyLXdpZHRoLCAwcHgpXHJcblx0KTtcclxufVxyXG5cclxuLyogRm9yY2UgbGlua3MvdGFncyBpbnNpZGUgc3R5bGVkIGNvbHVtbnMgdG8gaW5oZXJpdCB0aGUgY3VzdG9tIHRleHQgY29sb3IgKi9cclxuLmNvbHVtbnMtY29udGFpbmVyIC5jb2x1bW4taXRlbS5jb2x1bW5zLWN1c3RvbS1zdHlsZVtzdHlsZSo9XCItLWNvbHVtbnMtY29sLXRleHRcIl0gOmlzKFxyXG5cdGEsXHJcblx0YS5pbnRlcm5hbC1saW5rLFxyXG5cdGEuZXh0ZXJuYWwtbGluayxcclxuXHRhLnRhZyxcclxuXHQuY20tbGluayxcclxuXHQuY20taG1kLWludGVybmFsLWxpbmtcclxuKSB7XHJcblx0Y29sb3I6IGluaGVyaXQ7XHJcbn1cclxuXHJcbi5jb2x1bW5zLWNvbnRhaW5lciAuY29sdW1uLWl0ZW0uY29sdW1ucy1jdXN0b20tc3R5bGU6aG92ZXIsXHJcbi5jb2x1bW5zLWNvbnRhaW5lciAuY29sdW1uLWl0ZW0uY29sdW1ucy1jdXN0b20tc3R5bGUuaXMtZWRpdGluZyB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tY29sdW1ucy1jb2wtYmcsIHRyYW5zcGFyZW50KTtcclxuXHRib3JkZXItY29sb3I6IHZhcigtLWNvbHVtbnMtY29sLWJvcmRlci1jb2xvciwgdHJhbnNwYXJlbnQpO1xyXG59XHJcblxyXG4uY29sdW1ucy1jb250YWluZXIuY29sdW1ucy1jdXN0b20tc3R5bGUge1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWNvbHVtbnMtYmxvY2stYmcsIHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSkpICFpbXBvcnRhbnQ7XHJcblx0Y29sb3I6IHZhcigtLWNvbHVtbnMtYmxvY2stdGV4dCwgaW5oZXJpdCkgIWltcG9ydGFudDtcclxuXHRib3JkZXItc3R5bGU6IHNvbGlkICFpbXBvcnRhbnQ7XHJcblx0Ym9yZGVyLWNvbG9yOiB2YXIoXHJcblx0XHQtLWNvbHVtbnMtYmxvY2stYm9yZGVyLWNvbG9yLFxyXG5cdFx0dmFyKC0tY29sdW1ucy1ibG9jay1kZWZhdWx0LWJvcmRlci1jb2xvcilcclxuXHQpICFpbXBvcnRhbnQ7XHJcblx0Ym9yZGVyLXdpZHRoOiB2YXIoXHJcblx0XHQtLWNvbHVtbnMtYmxvY2stYm9yZGVyLXdpZHRoLFxyXG5cdFx0dmFyKC0tY29sdW1ucy1ibG9jay1kZWZhdWx0LWJvcmRlci13aWR0aClcclxuXHQpICFpbXBvcnRhbnQ7XHJcblx0Ym9yZGVyLXRvcC13aWR0aDogdmFyKFxyXG5cdFx0LS1jb2x1bW5zLWJsb2NrLWhvcml6b250YWwtd2lkdGgsXHJcblx0XHR2YXIoXHJcblx0XHRcdC0tY29sdW1ucy1ibG9jay1ib3JkZXItd2lkdGgsXHJcblx0XHRcdHZhcigtLWNvbHVtbnMtYmxvY2stZGVmYXVsdC1ib3JkZXItd2lkdGgpXHJcblx0XHQpXHJcblx0KSAhaW1wb3J0YW50O1xyXG5cdGJvcmRlci1ib3R0b20td2lkdGg6IHZhcihcclxuXHRcdC0tY29sdW1ucy1ibG9jay1ob3Jpem9udGFsLXdpZHRoLFxyXG5cdFx0dmFyKFxyXG5cdFx0XHQtLWNvbHVtbnMtYmxvY2stYm9yZGVyLXdpZHRoLFxyXG5cdFx0XHR2YXIoLS1jb2x1bW5zLWJsb2NrLWRlZmF1bHQtYm9yZGVyLXdpZHRoKVxyXG5cdFx0KVxyXG5cdCkgIWltcG9ydGFudDtcclxufVxyXG5cclxuLyogXHUyNTAwXHUyNTAwIENvbHVtbiBoZWFkZXIgKGljb24gKyB0aXRsZSkgXHUyNTAwXHUyNTAwICovXHJcbi5jb2x1bW5zLWNvbnRhaW5lciAuY29sdW1uLWhlYWRlciB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGdhcDogNnB4O1xyXG5cdHBhZGRpbmc6IDZweCAxMHB4O1xyXG5cdG1hcmdpbjogLTEwcHggLTE0cHggNnB4ICFpbXBvcnRhbnQ7XHJcblx0Ym9yZGVyLXJhZGl1czogNHB4IDRweCAwIDA7XHJcblx0LXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcclxuXHR1c2VyLXNlbGVjdDogbm9uZTtcclxuXHRsaW5lLWhlaWdodDogMS40O1xyXG59XHJcblxyXG4vKiBXaGVuIGNvbHVtbiBoYXMgbGVmdC1ib3JkZXIgbW9kZSwgYWRqdXN0IGhlYWRlciBtYXJnaW4gdG8gYWNjb3VudCBmb3IgdGhlIGJvcmRlciAqL1xyXG4uY29sdW1ucy1jb250YWluZXIgLmNvbHVtbi1pdGVtLmNvbHVtbnMtbGVmdC1ib3JkZXIgPiAuY29sdW1uLWhlYWRlciB7XHJcblx0LyogbWFyZ2luLWxlZnQ6IC00cHg7ICovXHJcblx0Ym9yZGVyLXJhZGl1czogMCA0cHggMCAwO1xyXG59XHJcblxyXG4uY29sdW1ucy1jb250YWluZXIgLmNvbHVtbi1oZWFkZXItaWNvbiB7XHJcblx0ZGlzcGxheTogaW5saW5lLWZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRmbGV4LXNocmluazogMDtcclxufVxyXG5cclxuLmNvbHVtbnMtY29udGFpbmVyIC5jb2x1bW4taGVhZGVyLWljb24gLnN2Zy1pY29uIHtcclxuXHR3aWR0aDogMTZweDtcclxuXHRoZWlnaHQ6IDE2cHg7XHJcbn1cclxuXHJcbi5jb2x1bW5zLWNvbnRhaW5lciAuY29sdW1uLWhlYWRlci10aXRsZSB7XHJcblx0b3ZlcmZsb3c6IGhpZGRlbjtcclxuXHR0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcclxuXHR3aGl0ZS1zcGFjZTogbm93cmFwO1xyXG59XHJcblxyXG4vKiBcdTI1MDBcdTI1MDAgTGVmdCBib3JkZXIgbW9kZSAoY2FsbG91dC1zdHlsZSkgXHUyNTAwXHUyNTAwICovXHJcbi5jb2x1bW5zLWNvbnRhaW5lciAuY29sdW1uLWl0ZW0uY29sdW1ucy1sZWZ0LWJvcmRlciB7XHJcblx0Ym9yZGVyLXRvcDogbm9uZSAhaW1wb3J0YW50O1xyXG5cdGJvcmRlci1yaWdodDogbm9uZSAhaW1wb3J0YW50O1xyXG5cdGJvcmRlci1ib3R0b206IG5vbmUgIWltcG9ydGFudDtcclxuXHRib3JkZXItbGVmdDogM3B4IHNvbGlkIHZhcigtLWNvbHVtbnMtbGVmdC1ib3JkZXItY29sb3IsIHZhcigtLWNvbHVtbnMtY29sLWJvcmRlci1jb2xvciwgdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KSkpICFpbXBvcnRhbnQ7XHJcblx0Ym9yZGVyLXJhZGl1czogMCA2cHggNnB4IDA7XHJcbn1cclxuXHJcbi5jb2x1bW5zLWNvbnRhaW5lciAuY29sdW1uLXRvb2xiYXIge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0dG9wOiAycHg7XHJcblx0cmlnaHQ6IDJweDtcclxuXHRvcGFjaXR5OiAwO1xyXG5cdHRyYW5zaXRpb246IG9wYWNpdHkgMC4xNXMgZWFzZTtcclxuXHR6LWluZGV4OiA1O1xyXG5cdHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG59XHJcblxyXG4uY29sdW1ucy1jb250YWluZXIgLmNvbHVtbi10b29sYmFyLWFjdGlvbnMge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGdhcDogMHB4O1xyXG59XHJcblxyXG4uY29sdW1ucy1jb250YWluZXIgLmNvbHVtbi1pdGVtOmhvdmVyIC5jb2x1bW4tdG9vbGJhcixcclxuLmNvbHVtbnMtY29udGFpbmVyIC5jb2x1bW4taXRlbS5pcy1lZGl0aW5nIC5jb2x1bW4tdG9vbGJhciB7XHJcblx0b3BhY2l0eTogMTtcclxuXHRwb2ludGVyLWV2ZW50czogYXV0bztcclxufVxyXG5cclxuLmNvbHVtbnMtY29udGFpbmVyIC5jb2x1bW4tZHJhZy1oYW5kbGUge1xyXG5cdGN1cnNvcjogZ3JhYjtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1mYWludCk7XHJcblx0cGFkZGluZzogMnB4IDRweDtcclxuXHRib3JkZXItcmFkaXVzOiAzcHg7XHJcblx0bGluZS1oZWlnaHQ6IDE7XHJcblx0Ym9yZGVyOiBub25lO1xyXG5cdGJhY2tncm91bmQ6IG5vbmU7XHJcblx0aGVpZ2h0OiAyMHB4O1xyXG5cdGRpc3BsYXk6IGlubGluZS1mbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcblx0dHJhbnNpdGlvbjogY29sb3IgMC4xNXMgZWFzZSwgYmFja2dyb3VuZC1jb2xvciAwLjE1cyBlYXNlO1xyXG59XHJcblxyXG4uY29sdW1ucy1jb250YWluZXIgLmNvbHVtbi1kcmFnLWhhbmRsZSAuc3ZnLWljb24ge1xyXG5cdHdpZHRoOiAxNHB4O1xyXG5cdGhlaWdodDogMTRweDtcclxufVxyXG5cclxuLmNvbHVtbnMtY29udGFpbmVyIC5jb2x1bW4tZHJhZy1oYW5kbGU6aG92ZXIge1xyXG5cdGNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpO1xyXG59XHJcblxyXG4uY29sdW1ucy1jb250YWluZXIgLmNvbHVtbi1kcmFnLWhhbmRsZTphY3RpdmUge1xyXG5cdGN1cnNvcjogZ3JhYmJpbmc7XHJcblx0Y29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcbn1cclxuXHJcbi5jb2x1bW5zLWNvbnRhaW5lciAuY29sdW1uLWFkZC1idG4ge1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1mYWludCk7XHJcblx0cGFkZGluZzogMnB4IDRweDtcclxuXHRib3JkZXItcmFkaXVzOiAzcHg7XHJcblx0bGluZS1oZWlnaHQ6IDE7XHJcblx0Ym9yZGVyOiBub25lO1xyXG5cdGJhY2tncm91bmQ6IG5vbmU7XHJcblx0aGVpZ2h0OiAyMHB4ICFpbXBvcnRhbnQ7XHJcblx0ZGlzcGxheTogaW5saW5lLWZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHRib3gtc2hhZG93OiBub25lO1xyXG59XHJcblxyXG4uY29sdW1ucy1jb250YWluZXIgLmNvbHVtbi1hZGQtYnRuIC5zdmctaWNvbiB7XHJcblx0d2lkdGg6IDE0cHg7XHJcblx0aGVpZ2h0OiAxNHB4O1xyXG59XHJcblxyXG4uY29sdW1ucy1jb250YWluZXIgLmNvbHVtbi1hZGQtYnRuOmhvdmVyIHtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpO1xyXG59XHJcblxyXG4uY29sdW1ucy1jb250YWluZXIgLmNvbHVtbi1wcmV2aWV3IHtcclxuXHQvKiBtaW4taGVpZ2h0OiAzMHB4OyAqL1xyXG5cdGN1cnNvcjogdGV4dDtcclxuXHQtd2Via2l0LXVzZXItc2VsZWN0OiB0ZXh0O1xyXG5cdHVzZXItc2VsZWN0OiB0ZXh0O1xyXG5cdGRpc3BsYXk6IGZsb3ctcm9vdDtcclxufVxyXG5cclxuLmNvbHVtbnMtY29udGFpbmVyIC5jb2x1bW4tcHJldmlldyA+ICo6Zmlyc3QtY2hpbGQge1xyXG5cdG1hcmdpbi10b3A6IDA7XHJcbn1cclxuXHJcbi5jb2x1bW5zLWNvbnRhaW5lciAuY29sdW1uLXByZXZpZXcgPiAqOmxhc3QtY2hpbGQge1xyXG5cdG1hcmdpbi1ib3R0b206IDA7XHJcbn1cclxuXHJcbi5jb2x1bW5zLWNvbnRhaW5lciAuY29sdW1uLWl0ZW0gLmNvbHVtbi1wcmV2aWV3Lm1hcmtkb3duLXJlbmRlcmVkIHAsXHJcbi5jb2x1bW5zLWNvbnRhaW5lciAuY29sdW1uLWl0ZW0gLmNvbHVtbi1wcmV2aWV3Lm1hcmtkb3duLXJlbmRlcmVkIGgxLFxyXG4uY29sdW1ucy1jb250YWluZXIgLmNvbHVtbi1pdGVtIC5jb2x1bW4tcHJldmlldy5tYXJrZG93bi1yZW5kZXJlZCBoMixcclxuLmNvbHVtbnMtY29udGFpbmVyIC5jb2x1bW4taXRlbSAuY29sdW1uLXByZXZpZXcubWFya2Rvd24tcmVuZGVyZWQgaDMsXHJcbi5jb2x1bW5zLWNvbnRhaW5lciAuY29sdW1uLWl0ZW0gLmNvbHVtbi1wcmV2aWV3Lm1hcmtkb3duLXJlbmRlcmVkIGg0LFxyXG4uY29sdW1ucy1jb250YWluZXIgLmNvbHVtbi1pdGVtIC5jb2x1bW4tcHJldmlldy5tYXJrZG93bi1yZW5kZXJlZCBoNSxcclxuLmNvbHVtbnMtY29udGFpbmVyIC5jb2x1bW4taXRlbSAuY29sdW1uLXByZXZpZXcubWFya2Rvd24tcmVuZGVyZWQgaDYsXHJcbi5jb2x1bW5zLWNvbnRhaW5lciAuY29sdW1uLWl0ZW0gLmNvbHVtbi1wcmV2aWV3Lm1hcmtkb3duLXJlbmRlcmVkIGRpdixcclxuLmNvbHVtbnMtY29udGFpbmVyIC5jb2x1bW4taXRlbSAuY29sdW1uLXByZXZpZXcubWFya2Rvd24tcmVuZGVyZWQgYmxvY2txdW90ZSxcclxuLmNvbHVtbnMtY29udGFpbmVyIC5jb2x1bW4taXRlbSAuY29sdW1uLXByZXZpZXcubWFya2Rvd24tcmVuZGVyZWQgaHIsXHJcbi5jb2x1bW5zLWNvbnRhaW5lciAuY29sdW1uLWl0ZW0gLmNvbHVtbi1wcmV2aWV3Lm1hcmtkb3duLXJlbmRlcmVkIHRhYmxlLFxyXG4uY29sdW1ucy1jb250YWluZXIgLmNvbHVtbi1pdGVtIC5jb2x1bW4tcHJldmlldy5tYXJrZG93bi1yZW5kZXJlZCBwcmUge1xyXG5cdG1hcmdpbjogMCAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4uY29sdW1ucy1jb250YWluZXIgLmNvbHVtbi1pdGVtIC5jb2x1bW4tcHJldmlldy5tYXJrZG93bi1yZW5kZXJlZCB1bCxcclxuLmNvbHVtbnMtY29udGFpbmVyIC5jb2x1bW4taXRlbSAuY29sdW1uLXByZXZpZXcubWFya2Rvd24tcmVuZGVyZWQgb2wge1xyXG5cdG1hcmdpbjogMCAhaW1wb3J0YW50O1xyXG5cdHBhZGRpbmc6IDAgMCAwIDEuNWVtICFpbXBvcnRhbnQ7XHJcblx0bGlzdC1zdHlsZS1wb3NpdGlvbjogb3V0c2lkZTtcclxufVxyXG5cclxuLmNvbHVtbnMtY29udGFpbmVyIC5jb2x1bW4taXRlbSAuY29sdW1uLXByZXZpZXcubWFya2Rvd24tcmVuZGVyZWQgdWwge1xyXG5cdGxpc3Qtc3R5bGUtdHlwZTogZGlzYyAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4uY29sdW1ucy1jb250YWluZXIgLmNvbHVtbi1pdGVtIC5jb2x1bW4tcHJldmlldy5tYXJrZG93bi1yZW5kZXJlZCBsaSB7XHJcblx0bWFyZ2luOiAwICFpbXBvcnRhbnQ7XHJcblx0cGFkZGluZzogMCAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4vKiBMaXZlIHByZXZpZXcgc3BhY2luZyBub3JtYWxpemF0aW9uICovXHJcbi5jb2x1bW5zLWNvbnRhaW5lci5jb2x1bW5zLXVpOm5vdCguY29sdW1ucy1yZWFkaW5nKSA6aXMoLmNvbHVtbi1wcmV2aWV3LCAuY29sdW1uLWlubGluZS1lZGl0LXByZXZpZXcpIHtcclxuXHQtLWxpc3Qtc3BhY2luZzogMC4ycmVtO1xyXG5cdC0tcC1zcGFjaW5nOiAwLjM1cmVtO1xyXG5cdC0taGVhZGluZy1zcGFjaW5nOiAwLjJyZW07XHJcblx0LS1saW5lLWhlaWdodC10aWdodDogMS4xODtcclxuXHRsaW5lLWhlaWdodDogMS4yNCAhaW1wb3J0YW50O1xyXG5cdHdoaXRlLXNwYWNlOiBub3JtYWwgIWltcG9ydGFudDtcclxufVxyXG5cclxuLmNvbHVtbnMtY29udGFpbmVyLmNvbHVtbnMtdWk6bm90KC5jb2x1bW5zLXJlYWRpbmcpIDppcyguY29sdW1uLXByZXZpZXcsIC5jb2x1bW4taW5saW5lLWVkaXQtcHJldmlldykgPiA6Zmlyc3QtY2hpbGQge1xyXG5cdG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDtcclxufVxyXG5cclxuLmNvbHVtbnMtY29udGFpbmVyLmNvbHVtbnMtdWk6bm90KC5jb2x1bW5zLXJlYWRpbmcpIDppcyguY29sdW1uLXByZXZpZXcsIC5jb2x1bW4taW5saW5lLWVkaXQtcHJldmlldykgPiA6bGFzdC1jaGlsZCB7XHJcblx0bWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4uY29sdW1ucy1jb250YWluZXIuY29sdW1ucy11aTpub3QoLmNvbHVtbnMtcmVhZGluZykgOmlzKC5jb2x1bW4tcHJldmlldywgLmNvbHVtbi1pbmxpbmUtZWRpdC1wcmV2aWV3KSA6aXMoXHJcblx0aDEsXHJcblx0aDIsXHJcblx0aDMsXHJcblx0aDQsXHJcblx0aDUsXHJcblx0aDZcclxuKSB7XHJcblx0bWFyZ2luLXRvcDogMC4zNXJlbSAhaW1wb3J0YW50O1xyXG5cdG1hcmdpbi1ib3R0b206IDAuMnJlbSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4uY29sdW1ucy1jb250YWluZXIuY29sdW1ucy11aTpub3QoLmNvbHVtbnMtcmVhZGluZykgOmlzKC5jb2x1bW4tcHJldmlldywgLmNvbHVtbi1pbmxpbmUtZWRpdC1wcmV2aWV3KSA6aXMocCwgYmxvY2txdW90ZSwgcHJlLCB0YWJsZSwgaHIpIHtcclxuXHRtYXJnaW4tdG9wOiAwLjJyZW0gIWltcG9ydGFudDtcclxuXHRtYXJnaW4tYm90dG9tOiAwLjJyZW0gIWltcG9ydGFudDtcclxuXHRsaW5lLWhlaWdodDogMS40ICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5jb2x1bW5zLWNvbnRhaW5lci5jb2x1bW5zLXVpOm5vdCguY29sdW1ucy1yZWFkaW5nKSA6aXMoLmNvbHVtbi1wcmV2aWV3LCAuY29sdW1uLWlubGluZS1lZGl0LXByZXZpZXcpIDppcyhibG9ja3F1b3RlKSB7XHJcblx0ZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4vKiBFbnN1cmUgbWFya2Rvd24gdGFibGVzIHJlbmRlciB3aXRoIHZpc2libGUgZ3JpZCBsaW5lcyBpbnNpZGUgY29sdW1ucy4gKi9cclxuLmNvbHVtbnMtY29udGFpbmVyIDppcyguY29sdW1uLXByZXZpZXcsIC5jb2x1bW4taW5saW5lLWVkaXQtcHJldmlldykgLm1hcmtkb3duLXJlbmRlcmVkIC50YWJsZS13cmFwcGVyIHtcclxuXHRtYXgtd2lkdGg6IDEwMCU7XHJcblx0b3ZlcmZsb3cteDogYXV0bztcclxufVxyXG5cclxuLmNvbHVtbnMtY29udGFpbmVyLmNvbHVtbnMtdWk6bm90KC5jb2x1bW5zLXJlYWRpbmcpIDppcyguY29sdW1uLXByZXZpZXcsIC5jb2x1bW4taW5saW5lLWVkaXQtcHJldmlldykgdGFibGUge1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cdGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XHJcblx0Ym9yZGVyLXNwYWNpbmc6IDA7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5jb2x1bW5zLWNvbnRhaW5lci5jb2x1bW5zLXVpOm5vdCguY29sdW1ucy1yZWFkaW5nKSA6aXMoLmNvbHVtbi1wcmV2aWV3LCAuY29sdW1uLWlubGluZS1lZGl0LXByZXZpZXcpIDppcyh0aCwgdGQpIHtcclxuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcikgIWltcG9ydGFudDtcclxuXHRwYWRkaW5nOiAwLjI4cmVtIDAuNnJlbSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4uY29sdW1ucy1jb250YWluZXIuY29sdW1ucy11aTpub3QoLmNvbHVtbnMtcmVhZGluZykgOmlzKC5jb2x1bW4tcHJldmlldywgLmNvbHVtbi1pbmxpbmUtZWRpdC1wcmV2aWV3KSA6aXModWwsIG9sKSB7XHJcblx0bWFyZ2luLXRvcDogMC4wOHJlbSAhaW1wb3J0YW50O1xyXG5cdG1hcmdpbi1ib3R0b206IDAuMDhyZW0gIWltcG9ydGFudDtcclxuXHRtYXJnaW4tYmxvY2stc3RhcnQ6IDAuMDhyZW0gIWltcG9ydGFudDtcclxuXHRtYXJnaW4tYmxvY2stZW5kOiAwLjA4cmVtICFpbXBvcnRhbnQ7XHJcblx0cGFkZGluZy1pbmxpbmUtc3RhcnQ6IDJlbSAhaW1wb3J0YW50O1xyXG5cdGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XHJcblx0d2hpdGUtc3BhY2U6IG5vcm1hbCAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4uY29sdW1ucy1jb250YWluZXIuY29sdW1ucy11aTpub3QoLmNvbHVtbnMtcmVhZGluZykgOmlzKC5jb2x1bW4tcHJldmlldywgLmNvbHVtbi1pbmxpbmUtZWRpdC1wcmV2aWV3KSBsaSB7XHJcblx0bWFyZ2luLXRvcDogMC4yNWVtICFpbXBvcnRhbnQ7XHJcblx0bWFyZ2luLWJvdHRvbTogMC4yNWVtICFpbXBvcnRhbnQ7XHJcblx0bWFyZ2luLWJsb2NrLXN0YXJ0OiAwLjI1ZW0gIWltcG9ydGFudDtcclxuXHRtYXJnaW4tYmxvY2stZW5kOiAwLjI1ZW0gIWltcG9ydGFudDtcclxuXHRwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XHJcblx0d2hpdGUtc3BhY2U6IG5vcm1hbCAhaW1wb3J0YW50O1xyXG5cdGxpbmUtaGVpZ2h0OiAxLjRlbSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4vKiBCbGFuayBsaW5lIGdhcCBiZXR3ZWVuIGxpc3QgaXRlbXMgKGFkZGVkIGR5bmFtaWNhbGx5IHZpYSBKUykgKi9cclxuLmNvbHVtbnMtY29udGFpbmVyLmNvbHVtbnMtdWk6bm90KC5jb2x1bW5zLXJlYWRpbmcpIDppcyguY29sdW1uLXByZXZpZXcsIC5jb2x1bW4taW5saW5lLWVkaXQtcHJldmlldykgbGkuYW1jLWxpc3QtZ2FwIHtcclxuXHRtYXJnaW4tdG9wOiAxLjVlbSAhaW1wb3J0YW50O1xyXG5cdG1hcmdpbi1ibG9jay1zdGFydDogMS41ZW0gIWltcG9ydGFudDtcclxufVxyXG5cclxuLyogQmxhbmsgbGluZSBnYXAgYmV0d2VlbiB0b3AtbGV2ZWwgYmxvY2sgZWxlbWVudHMgKGFkZGVkIGR5bmFtaWNhbGx5IHZpYSBKUykgKi9cclxuLmNvbHVtbnMtY29udGFpbmVyLmNvbHVtbnMtdWk6bm90KC5jb2x1bW5zLXJlYWRpbmcpIDppcyguY29sdW1uLXByZXZpZXcsIC5jb2x1bW4taW5saW5lLWVkaXQtcHJldmlldykgPiAuYW1jLWJsb2NrLWdhcCB7XHJcblx0bWFyZ2luLXRvcDogMWVtICFpbXBvcnRhbnQ7XHJcblx0bWFyZ2luLWJsb2NrLXN0YXJ0OiAxZW0gIWltcG9ydGFudDtcclxufVxyXG5cclxuLmNvbHVtbnMtY29udGFpbmVyLmNvbHVtbnMtdWk6bm90KC5jb2x1bW5zLXJlYWRpbmcpIDppcyguY29sdW1uLXByZXZpZXcsIC5jb2x1bW4taW5saW5lLWVkaXQtcHJldmlldykgdWwgPiBsaS50YXNrLWxpc3QtaXRlbSB7XHJcblx0bGlzdC1zdHlsZTogbm9uZTtcclxufVxyXG5cclxuLmNvbHVtbnMtY29udGFpbmVyLmNvbHVtbnMtdWk6bm90KC5jb2x1bW5zLXJlYWRpbmcpIDppcyguY29sdW1uLXByZXZpZXcsIC5jb2x1bW4taW5saW5lLWVkaXQtcHJldmlldykgOmlzKHVsLCBvbCkgOmlzKHVsLCBvbCkge1xyXG5cdG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDtcclxuXHRtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7XHJcblx0bWFyZ2luLWJsb2NrLXN0YXJ0OiAwICFpbXBvcnRhbnQ7XHJcblx0bWFyZ2luLWJsb2NrLWVuZDogMCAhaW1wb3J0YW50O1xyXG5cdHBhZGRpbmctaW5saW5lLXN0YXJ0OiAxLjE1ZW0gIWltcG9ydGFudDtcclxufVxyXG5cclxuLmNvbHVtbnMtY29udGFpbmVyLmNvbHVtbnMtdWk6bm90KC5jb2x1bW5zLXJlYWRpbmcpIDppcyguY29sdW1uLXByZXZpZXcsIC5jb2x1bW4taW5saW5lLWVkaXQtcHJldmlldykgLm1hcmtkb3duLXJlbmRlcmVkIGxpOmxhc3QtY2hpbGQgPiA6aXModWwsIG9sKSB7XHJcblx0bWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4uY29sdW1ucy1jb250YWluZXIuY29sdW1ucy11aTpub3QoLmNvbHVtbnMtcmVhZGluZykgOmlzKC5jb2x1bW4tcHJldmlldywgLmNvbHVtbi1pbmxpbmUtZWRpdC1wcmV2aWV3KSAubWFya2Rvd24tcmVuZGVyZWQgbGkgPiA6aXModWwsIG9sKSArIHA6aGFzKD4gYSk6bm90KDpoYXMoPiA6bm90KGEsIGJyKSkpLFxyXG4uY29sdW1ucy1jb250YWluZXIuY29sdW1ucy11aTpub3QoLmNvbHVtbnMtcmVhZGluZykgOmlzKC5jb2x1bW4tcHJldmlldywgLmNvbHVtbi1pbmxpbmUtZWRpdC1wcmV2aWV3KSAubWFya2Rvd24tcmVuZGVyZWQgbGkgPiA6aXModWwsIG9sKSArIHA6aGFzKD4gYSk6bm90KDpoYXMoPiA6bm90KGEsIGJyKSkpIH4gcDpoYXMoPiBhKTpub3QoOmhhcyg+IDpub3QoYSwgYnIpKSkge1xyXG5cdG1hcmdpbi1pbmxpbmUtc3RhcnQ6IC0xLjI1ZW0gIWltcG9ydGFudDtcclxuXHRwYWRkaW5nLWlubGluZS1zdGFydDogMCAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4uY29sdW1ucy1jb250YWluZXIuY29sdW1ucy11aTpub3QoLmNvbHVtbnMtcmVhZGluZykgOmlzKC5jb2x1bW4tcHJldmlldywgLmNvbHVtbi1pbmxpbmUtZWRpdC1wcmV2aWV3KSAubWFya2Rvd24tcmVuZGVyZWQgcDpoYXMoPiBhOm9ubHktY2hpbGQpIHtcclxuXHRtYXJnaW4tYmxvY2stc3RhcnQ6IDAgIWltcG9ydGFudDtcclxuXHRtYXJnaW4tYmxvY2stZW5kOiAwICFpbXBvcnRhbnQ7XHJcblx0bGluZS1oZWlnaHQ6IDEuMnJlbSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4uY29sdW1ucy1jb250YWluZXIuY29sdW1ucy11aTpub3QoLmNvbHVtbnMtcmVhZGluZykgOmlzKC5jb2x1bW4tcHJldmlldywgLmNvbHVtbi1pbmxpbmUtZWRpdC1wcmV2aWV3KSAubWFya2Rvd24tcmVuZGVyZWQgOmlzKHVsLCBvbCkuY29udGFpbnMtdGFzay1saXN0IHtcclxuXHRtYXJnaW4tdG9wOiAwLjA0cmVtICFpbXBvcnRhbnQ7XHJcblx0bWFyZ2luLWJvdHRvbTogMC4wNHJlbSAhaW1wb3J0YW50O1xyXG5cdHBhZGRpbmctaW5saW5lLXN0YXJ0OiAwLjFlbSAhaW1wb3J0YW50O1xyXG5cdGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5jb2x1bW5zLWNvbnRhaW5lci5jb2x1bW5zLXVpOm5vdCguY29sdW1ucy1yZWFkaW5nKSA6aXMoLmNvbHVtbi1wcmV2aWV3LCAuY29sdW1uLWlubGluZS1lZGl0LXByZXZpZXcpIC5tYXJrZG93bi1yZW5kZXJlZCBsaS50YXNrLWxpc3QtaXRlbSB7XHJcblx0bGlzdC1zdHlsZTogbm9uZSAhaW1wb3J0YW50O1xyXG5cdGRpc3BsYXk6IGdyaWQgIWltcG9ydGFudDtcclxuXHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IGF1dG8gMWZyICFpbXBvcnRhbnQ7XHJcblx0Y29sdW1uLWdhcDogMC4zNWVtICFpbXBvcnRhbnQ7XHJcblx0cm93LWdhcDogMC4wMnJlbSAhaW1wb3J0YW50O1xyXG5cdGFsaWduLWl0ZW1zOiBzdGFydCAhaW1wb3J0YW50O1xyXG5cdG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDtcclxuXHRtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7XHJcblx0cGFkZGluZy10b3A6IDAgIWltcG9ydGFudDtcclxuXHRwYWRkaW5nLWJvdHRvbTogMCAhaW1wb3J0YW50O1xyXG5cdG1pbi1oZWlnaHQ6IDAgIWltcG9ydGFudDtcclxufVxyXG5cclxuLmNvbHVtbnMtY29udGFpbmVyLmNvbHVtbnMtdWk6bm90KC5jb2x1bW5zLXJlYWRpbmcpIDppcyguY29sdW1uLXByZXZpZXcsIC5jb2x1bW4taW5saW5lLWVkaXQtcHJldmlldykgLm1hcmtkb3duLXJlbmRlcmVkIHVsID4gbGkudGFzay1saXN0LWl0ZW0ge1xyXG5cdGxpbmUtaGVpZ2h0OiAxLjE4cmVtICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5jb2x1bW5zLWNvbnRhaW5lci5jb2x1bW5zLXVpOm5vdCguY29sdW1ucy1yZWFkaW5nKSA6aXMoLmNvbHVtbi1wcmV2aWV3LCAuY29sdW1uLWlubGluZS1lZGl0LXByZXZpZXcpIC5tYXJrZG93bi1yZW5kZXJlZCBsaS50YXNrLWxpc3QtaXRlbTo6bWFya2VyIHtcclxuXHRjb250ZW50OiBcIlwiICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5jb2x1bW5zLWNvbnRhaW5lci5jb2x1bW5zLXVpOm5vdCguY29sdW1ucy1yZWFkaW5nKSA6aXMoLmNvbHVtbi1wcmV2aWV3LCAuY29sdW1uLWlubGluZS1lZGl0LXByZXZpZXcpIC5tYXJrZG93bi1yZW5kZXJlZCBsaS50YXNrLWxpc3QtaXRlbSA+IGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSxcclxuLmNvbHVtbnMtY29udGFpbmVyLmNvbHVtbnMtdWk6bm90KC5jb2x1bW5zLXJlYWRpbmcpIDppcyguY29sdW1uLXByZXZpZXcsIC5jb2x1bW4taW5saW5lLWVkaXQtcHJldmlldykgLm1hcmtkb3duLXJlbmRlcmVkIGxpLnRhc2stbGlzdC1pdGVtID4gLnRhc2stbGlzdC1pdGVtLWNoZWNrYm94IHtcclxuXHRncmlkLWNvbHVtbjogMSAhaW1wb3J0YW50O1xyXG5cdGdyaWQtcm93OiAxICFpbXBvcnRhbnQ7XHJcblx0bWFyZ2luOiAwLjEyZW0gMCAwIDAgIWltcG9ydGFudDtcclxufVxyXG5cclxuLmNvbHVtbnMtY29udGFpbmVyLmNvbHVtbnMtdWk6bm90KC5jb2x1bW5zLXJlYWRpbmcpIDppcyguY29sdW1uLXByZXZpZXcsIC5jb2x1bW4taW5saW5lLWVkaXQtcHJldmlldykgLm1hcmtkb3duLXJlbmRlcmVkIGxpLnRhc2stbGlzdC1pdGVtID4gOmlzKHAsIGRpdiwgbGFiZWwsIHNwYW4pIHtcclxuXHRncmlkLWNvbHVtbjogMiAhaW1wb3J0YW50O1xyXG5cdG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDtcclxuXHRtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7XHJcblx0cGFkZGluZy10b3A6IDAgIWltcG9ydGFudDtcclxuXHRwYWRkaW5nLWJvdHRvbTogMCAhaW1wb3J0YW50O1xyXG5cdGxpbmUtaGVpZ2h0OiAxLjE4cmVtICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5jb2x1bW5zLWNvbnRhaW5lci5jb2x1bW5zLXVpOm5vdCguY29sdW1ucy1yZWFkaW5nKSA6aXMoLmNvbHVtbi1wcmV2aWV3LCAuY29sdW1uLWlubGluZS1lZGl0LXByZXZpZXcpIC5tYXJrZG93bi1yZW5kZXJlZCBsaS50YXNrLWxpc3QtaXRlbSA+IDppcyh1bCwgb2wpIHtcclxuXHRncmlkLWNvbHVtbjogMiAhaW1wb3J0YW50O1xyXG5cdG1hcmdpbi10b3A6IDAuMDRyZW0gIWltcG9ydGFudDtcclxuXHRtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7XHJcblx0cGFkZGluZy1pbmxpbmUtc3RhcnQ6IDEuMTVlbSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4uY29sdW1ucy1jb250YWluZXIuY29sdW1ucy11aTpub3QoLmNvbHVtbnMtcmVhZGluZykgOmlzKC5jb2x1bW4tcHJldmlldywgLmNvbHVtbi1pbmxpbmUtZWRpdC1wcmV2aWV3KSAubWFya2Rvd24tcmVuZGVyZWQgbGkudGFzay1saXN0LWl0ZW0gOmlzKHAsIGRpdiwgbGFiZWwsIHNwYW4pIHtcclxuXHRtYXJnaW4tYmxvY2stc3RhcnQ6IDAgIWltcG9ydGFudDtcclxuXHRtYXJnaW4tYmxvY2stZW5kOiAwICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi8qIE9ic2lkaWFuIE1hcmtkb3duUmVuZGVyZXIgd3JhcHBlciBibG9ja3MgaW4gTGl2ZSBQcmV2aWV3ICovXHJcbi5jb2x1bW5zLWNvbnRhaW5lci5jb2x1bW5zLXVpOm5vdCguY29sdW1ucy1yZWFkaW5nKSA6aXMoLmNvbHVtbi1wcmV2aWV3LCAuY29sdW1uLWlubGluZS1lZGl0LXByZXZpZXcpIDppcyhcclxuXHQuZWwtcCxcclxuXHQuZWwtaDEsXHJcblx0LmVsLWgyLFxyXG5cdC5lbC1oMyxcclxuXHQuZWwtaDQsXHJcblx0LmVsLWg1LFxyXG5cdC5lbC1oNixcclxuXHQuZWwtYmxvY2txdW90ZSxcclxuXHQuZWwtcHJlLFxyXG5cdC5lbC10YWJsZSxcclxuXHQuZWwtaHJcclxuKSB7XHJcblx0bWFyZ2luLXRvcDogMC4xcmVtICFpbXBvcnRhbnQ7XHJcblx0bWFyZ2luLWJvdHRvbTogMC4xcmVtICFpbXBvcnRhbnQ7XHJcblx0bGluZS1oZWlnaHQ6IDEuMjRyZW0gIWltcG9ydGFudDtcclxufVxyXG5cclxuLyogTGlzdCB3cmFwcGVyIGJsb2NrczogdGlnaHRlciBzcGFjaW5nICovXHJcbi5jb2x1bW5zLWNvbnRhaW5lci5jb2x1bW5zLXVpOm5vdCguY29sdW1ucy1yZWFkaW5nKSA6aXMoLmNvbHVtbi1wcmV2aWV3LCAuY29sdW1uLWlubGluZS1lZGl0LXByZXZpZXcpIDppcyhcclxuXHQuZWwtdWwsXHJcblx0LmVsLW9sLFxyXG5cdC5lbC1saVxyXG4pIHtcclxuXHRtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7XHJcblx0bWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xyXG5cdGxpbmUtaGVpZ2h0OiBpbmhlcml0ICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5jb2x1bW5zLWNvbnRhaW5lci5jb2x1bW5zLXVpOm5vdCguY29sdW1ucy1yZWFkaW5nKSA6aXMoLmNvbHVtbi1wcmV2aWV3LCAuY29sdW1uLWlubGluZS1lZGl0LXByZXZpZXcpIDppcyhcclxuXHQuZWwtaDEsXHJcblx0LmVsLWgyLFxyXG5cdC5lbC1oMyxcclxuXHQuZWwtaDQsXHJcblx0LmVsLWg1LFxyXG5cdC5lbC1oNlxyXG4pIHtcclxuXHRtYXJnaW4tdG9wOiAwLjNyZW0gIWltcG9ydGFudDtcclxuXHRtYXJnaW4tYm90dG9tOiAwLjE2cmVtICFpbXBvcnRhbnQ7XHJcblx0bGluZS1oZWlnaHQ6IDAuOHJlbSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4uY29sdW1ucy1jb250YWluZXIuY29sdW1ucy11aTpub3QoLmNvbHVtbnMtcmVhZGluZykgOmlzKC5jb2x1bW4tcHJldmlldywgLmNvbHVtbi1pbmxpbmUtZWRpdC1wcmV2aWV3KSAubWFya2Rvd24tcmVuZGVyZWQgOmlzKFxyXG5cdGgxLFxyXG5cdGgyLFxyXG5cdGgzLFxyXG5cdGg0LFxyXG5cdGg1LFxyXG5cdGg2XHJcbikge1xyXG5cdG1hcmdpbi1ibG9jay1zdGFydDogMC4zcmVtICFpbXBvcnRhbnQ7XHJcblx0bWFyZ2luLWJsb2NrLWVuZDogMC4xNnJlbSAhaW1wb3J0YW50O1xyXG5cdGxpbmUtaGVpZ2h0OiAwLjhyZW0gIWltcG9ydGFudDtcclxufVxyXG5cclxuLmNvbHVtbnMtY29udGFpbmVyLmNvbHVtbnMtdWk6bm90KC5jb2x1bW5zLXJlYWRpbmcpIDppcyguY29sdW1uLXByZXZpZXcsIC5jb2x1bW4taW5saW5lLWVkaXQtcHJldmlldykgLm1hcmtkb3duLXJlbmRlcmVkIDppcyhcclxuXHRwLFxyXG5cdGJsb2NrcXVvdGUsXHJcblx0cHJlLFxyXG5cdHRhYmxlLFxyXG5cdGhyXHJcbikge1xyXG5cdG1hcmdpbi1ibG9jay1zdGFydDogMC4wOHJlbSAhaW1wb3J0YW50O1xyXG5cdG1hcmdpbi1ibG9jay1lbmQ6IDAuMDhyZW0gIWltcG9ydGFudDtcclxuXHRsaW5lLWhlaWdodDogMS4yNHJlbSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG5cclxuLmNvbHVtbnMtY29udGFpbmVyLmNvbHVtbnMtdWk6bm90KC5jb2x1bW5zLXJlYWRpbmcpIDppcyguY29sdW1uLXByZXZpZXcsIC5jb2x1bW4taW5saW5lLWVkaXQtcHJldmlldykgLm1hcmtkb3duLXJlbmRlcmVkIDppcyhcclxuXHRibG9ja3F1b3RlXHJcblxyXG4pIHtcclxuXHRkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5jb2x1bW5zLWNvbnRhaW5lciAuY29sdW1uLWl0ZW0uaXMtZWRpdGluZyAuY29sdW1uLXByZXZpZXcge1xyXG5cdGRpc3BsYXk6IG5vbmU7XHJcbn1cclxuXHJcbi5jb2x1bW5zLWNvbnRhaW5lciAuY29sdW1uLWVkaXRvciB7XHJcblx0ZGlzcGxheTogbm9uZTtcclxuXHR3aWR0aDogMTAwJTtcclxuXHRtaW4taGVpZ2h0OiA2MHB4O1xyXG5cdGhlaWdodDogdmFyKC0tY29sdW1uLWVkaXRvci1oZWlnaHQsIGF1dG8pO1xyXG5cdGJvcmRlcjogbm9uZTtcclxuXHRwYWRkaW5nOiA0cHggMDtcclxuXHRmb250LWZhbWlseTogdmFyKC0tZm9udC1tb25vc3BhY2UpO1xyXG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC10ZXh0LXNpemUpO1xyXG5cdGxpbmUtaGVpZ2h0OiB2YXIoLS1saW5lLWhlaWdodC1ub3JtYWwpO1xyXG5cdGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcblx0cmVzaXplOiBub25lO1xyXG5cdG91dGxpbmU6IG5vbmU7XHJcblx0Ym94LXNoYWRvdzogbm9uZTtcclxuXHRib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG5cdC13ZWJraXQtdXNlci1zZWxlY3Q6IHRleHQ7XHJcblx0dXNlci1zZWxlY3Q6IHRleHQ7XHJcblx0b3ZlcmZsb3c6IGhpZGRlbjtcclxufVxyXG5cclxuLmNvbHVtbnMtY29udGFpbmVyIC5jb2x1bW4taXRlbS5pcy1lZGl0aW5nIC5jb2x1bW4tZWRpdG9yIHtcclxuXHRkaXNwbGF5OiBibG9jaztcclxufVxyXG5cclxuLmNvbHVtbnMtY29udGFpbmVyIC5jb2x1bW4tZWRpdG9yOmZvY3VzLFxyXG4uY29sdW1ucy1jb250YWluZXIgLmNvbHVtbi1lZGl0b3I6Zm9jdXMtdmlzaWJsZSB7XHJcblx0Ym94LXNoYWRvdzogbm9uZTtcclxuXHRvdXRsaW5lOiBub25lO1xyXG59XHJcblxyXG4uY29sdW1ucy1jb250YWluZXIgLmNvbHVtbi1pbmxpbmUtZWRpdC1ibG9jayB7XHJcblx0bWFyZ2luOiAwIDAgOHB4O1xyXG59XHJcblxyXG4uY29sdW1ucy1jb250YWluZXIgLmNvbHVtbi1pbmxpbmUtZWRpdC1ibG9jazpsYXN0LWNoaWxkIHtcclxuXHRtYXJnaW4tYm90dG9tOiAwO1xyXG59XHJcblxyXG4uY29sdW1ucy1jb250YWluZXIgLmNvbHVtbi1pbmxpbmUtZWRpdC1wcmV2aWV3IHtcclxuXHRtaW4taGVpZ2h0OiAxOHB4O1xyXG5cdGN1cnNvcjogdGV4dDtcclxuXHQtd2Via2l0LXVzZXItc2VsZWN0OiB0ZXh0O1xyXG5cdHVzZXItc2VsZWN0OiB0ZXh0O1xyXG5cdGRpc3BsYXk6IGZsb3ctcm9vdDtcclxufVxyXG5cclxuLmNvbHVtbnMtY29udGFpbmVyIC5jb2x1bW4taW5saW5lLWVkaXQtcHJldmlldyA+ICo6Zmlyc3QtY2hpbGQge1xyXG5cdG1hcmdpbi10b3A6IDA7XHJcbn1cclxuXHJcbi5jb2x1bW5zLWNvbnRhaW5lciAuY29sdW1uLWlubGluZS1lZGl0LXByZXZpZXcgPiAqOmxhc3QtY2hpbGQge1xyXG5cdG1hcmdpbi1ib3R0b206IDA7XHJcbn1cclxuXHJcbi5jb2x1bW5zLWNvbnRhaW5lciAuY29sdW1uLWlubGluZS1lZGl0b3Ige1xyXG5cdGRpc3BsYXk6IG5vbmU7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0bWluLWhlaWdodDogNjBweDtcclxuXHRoZWlnaHQ6IHZhcigtLWNvbHVtbi1lZGl0b3ItaGVpZ2h0LCBhdXRvKTtcclxuXHRib3JkZXI6IG5vbmU7XHJcblx0cGFkZGluZzogNHB4IDA7XHJcblx0Zm9udC1mYW1pbHk6IHZhcigtLWZvbnQtbW9ub3NwYWNlKTtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdGV4dC1zaXplKTtcclxuXHRsaW5lLWhlaWdodDogdmFyKC0tbGluZS1oZWlnaHQtbm9ybWFsKTtcclxuXHRiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG5cdHJlc2l6ZTogbm9uZTtcclxuXHRvdXRsaW5lOiBub25lO1xyXG5cdGJveC1zaGFkb3c6IG5vbmU7XHJcblx0Ym94LXNpemluZzogYm9yZGVyLWJveDtcclxuXHQtd2Via2l0LXVzZXItc2VsZWN0OiB0ZXh0O1xyXG5cdHVzZXItc2VsZWN0OiB0ZXh0O1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcbn1cclxuXHJcbi5jb2x1bW5zLWNvbnRhaW5lciAuY29sdW1uLWlubGluZS1lZGl0b3I6Zm9jdXMsXHJcbi5jb2x1bW5zLWNvbnRhaW5lciAuY29sdW1uLWlubGluZS1lZGl0b3I6Zm9jdXMtdmlzaWJsZSB7XHJcblx0Ym94LXNoYWRvdzogbm9uZTtcclxuXHRvdXRsaW5lOiBub25lO1xyXG59XHJcblxyXG4uY29sdW1ucy1jb250YWluZXIgLmNvbHVtbi1pbmxpbmUtZWRpdC1ibG9jay5pcy1lZGl0aW5nIC5jb2x1bW4taW5saW5lLWVkaXQtcHJldmlldyB7XHJcblx0ZGlzcGxheTogbm9uZTtcclxufVxyXG5cclxuLmNvbHVtbnMtY29udGFpbmVyIC5jb2x1bW4taW5saW5lLWVkaXQtYmxvY2suaXMtZWRpdGluZyAuY29sdW1uLWlubGluZS1lZGl0b3Ige1xyXG5cdGRpc3BsYXk6IGJsb2NrO1xyXG59XHJcblxyXG4uY29sdW1ucy1jb250YWluZXIgLmNvbHVtbi1yZXNpemUtaGFuZGxlIHtcclxuXHR3aWR0aDogMTBweDtcclxuXHRmbGV4OiAwIDAgMTBweDtcclxuXHRjdXJzb3I6IGNvbC1yZXNpemU7XHJcblx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG5cdG1hcmdpbjogMCAtMXB4O1xyXG5cdHotaW5kZXg6IDI7XHJcbn1cclxuXHJcbi8qIFNlcGFyYXRvciBsaW5lICg6OmJlZm9yZSkgXHUyMDE0IGFsd2F5cyB2aXNpYmxlIHdoZW4gLmhhcy1zZXBhcmF0b3IgKi9cclxuLmNvbHVtbnMtY29udGFpbmVyIC5jb2x1bW4tcmVzaXplLWhhbmRsZS5oYXMtc2VwYXJhdG9yOjpiZWZvcmUge1xyXG5cdGNvbnRlbnQ6IFwiXCI7XHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdGxlZnQ6IDUwJTtcclxuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XHJcblx0dG9wOiA4cHg7XHJcblx0Ym90dG9tOiA4cHg7XHJcblx0d2lkdGg6IDA7XHJcblx0Ym9yZGVyLWxlZnQ6IHZhcigtLXNlcC13aWR0aCwgMXB4KSB2YXIoLS1zZXAtc3R5bGUsIHNvbGlkKSB2YXIoLS1zZXAtY29sb3IsIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKSk7XHJcblx0cG9pbnRlci1ldmVudHM6IG5vbmU7XHJcbn1cclxuXHJcbi8qIEN1c3RvbSBjaGFyYWN0ZXIgc2VwYXJhdG9yICovXHJcbi5jb2x1bW5zLWNvbnRhaW5lciAuY29sdW1uLXJlc2l6ZS1oYW5kbGUuaGFzLXNlcGFyYXRvci1jdXN0b206OmJlZm9yZSB7XHJcblx0Y29udGVudDogYXR0cihkYXRhLXNlcC1jaGFyKTtcclxuXHRib3JkZXI6IG5vbmU7XHJcblx0d2lkdGg6IGF1dG87XHJcblx0d3JpdGluZy1tb2RlOiB2ZXJ0aWNhbC1ybDtcclxuXHR0ZXh0LW9yaWVudGF0aW9uOiBtaXhlZDtcclxuXHRjb2xvcjogdmFyKC0tc2VwLWNvbG9yLCB2YXIoLS10ZXh0LWZhaW50KSk7XHJcblx0Zm9udC1zaXplOiBjYWxjKHZhcigtLXNlcC13aWR0aCwgMXB4KSAqIDYgKyA2cHgpO1xyXG5cdGxpbmUtaGVpZ2h0OiAxcmVtO1xyXG5cdGxldHRlci1zcGFjaW5nOiAwLjE1ZW07XHJcblx0b3BhY2l0eTogMC43O1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcblx0LXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcclxuXHR1c2VyLXNlbGVjdDogbm9uZTtcclxufVxyXG5cclxuLyogSG92ZXIgYWNjZW50IGxpbmUgKDo6YWZ0ZXIpIFx1MjAxNCBzaG93biBvbiBob3Zlci9yZXNpemluZyAqL1xyXG4uY29sdW1ucy1jb250YWluZXIgLmNvbHVtbi1yZXNpemUtaGFuZGxlOjphZnRlciB7XHJcblx0Y29udGVudDogXCJcIjtcclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0bGVmdDogNHB4O1xyXG5cdHRvcDogMTUlO1xyXG5cdGJvdHRvbTogMTUlO1xyXG5cdHdpZHRoOiAycHg7XHJcblx0YmFja2dyb3VuZDogdmFyKC0taW50ZXJhY3RpdmUtYWNjZW50KTtcclxuXHRvcGFjaXR5OiAwO1xyXG5cdGJvcmRlci1yYWRpdXM6IDFweDtcclxuXHR0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMTVzIGVhc2U7XHJcbn1cclxuXHJcbi5jb2x1bW5zLWNvbnRhaW5lciAuY29sdW1uLXJlc2l6ZS1oYW5kbGU6aG92ZXI6OmFmdGVyLFxyXG4uY29sdW1ucy1jb250YWluZXIgLmNvbHVtbi1yZXNpemUtaGFuZGxlLmlzLWFjdGl2ZTo6YWZ0ZXIge1xyXG5cdG9wYWNpdHk6IDAuNjtcclxufVxyXG5cclxuLyogSGlkZSBzZXBhcmF0b3IgbGluZSB3aGlsZSBhY3RpdmVseSByZXNpemluZyAoc2hvdyBhY2NlbnQgaW5zdGVhZCkgKi9cclxuLmNvbHVtbnMtY29udGFpbmVyIC5jb2x1bW4tcmVzaXplLWhhbmRsZS5pcy1hY3RpdmUuaGFzLXNlcGFyYXRvcjo6YmVmb3JlIHtcclxuXHRvcGFjaXR5OiAwO1xyXG59XHJcblxyXG4uY29sdW1ucy1jb250YWluZXIgLmNvbHVtbi1kcmFnZ2luZyB7XHJcblx0b3BhY2l0eTogMC4zNTtcclxuXHRib3JkZXI6IDFweCBkYXNoZWQgdmFyKC0tdGV4dC1mYWludCkgIWltcG9ydGFudDtcclxufVxyXG5cclxuLyogRHJvcCBpbmRpY2F0b3I6IGEgdmVydGljYWwgYWNjZW50IGxpbmUgb24gdGhlIHNpZGUgd2hlcmUgdGhlIGNvbHVtbiB3aWxsIGxhbmQgKi9cclxuLmNvbHVtbnMtY29udGFpbmVyIC5jb2x1bW4tZHJhZy1vdmVyIHtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcbn1cclxuXHJcbi5jb2x1bW5zLWNvbnRhaW5lciAuY29sdW1uLWRyYWctb3Zlcjo6YmVmb3JlIHtcclxuXHRjb250ZW50OiBcIlwiO1xyXG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHR0b3A6IDRweDtcclxuXHRib3R0b206IDRweDtcclxuXHR3aWR0aDogM3B4O1xyXG5cdGJvcmRlci1yYWRpdXM6IDJweDtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdHotaW5kZXg6IDEwO1xyXG5cdHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG59XHJcblxyXG4uY29sdW1ucy1jb250YWluZXIgLmNvbHVtbi1kcm9wLWJlZm9yZTo6YmVmb3JlIHtcclxuXHRsZWZ0OiAtN3B4O1xyXG59XHJcblxyXG4uY29sdW1ucy1jb250YWluZXIgLmNvbHVtbi1kcm9wLWFmdGVyOjpiZWZvcmUge1xyXG5cdHJpZ2h0OiAtN3B4O1xyXG59XHJcblxyXG4vKiBDdXJzb3IgZHJvcCBpbmRpY2F0b3I6IGhvcml6b250YWwgbGluZSBzaG93aW5nIHdoZXJlIGEgZHJhZ2dlZCBjb2x1bW4gd2lsbCBiZSBwbGFjZWQgKi9cclxuLmFtYy1jdXJzb3ItZHJvcC1pbmRpY2F0b3Ige1xyXG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRoZWlnaHQ6IDNweDtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdGJvcmRlci1yYWRpdXM6IDJweDtcclxuXHRwb2ludGVyLWV2ZW50czogbm9uZTtcclxuXHR6LWluZGV4OiAxMDA7XHJcblx0b3BhY2l0eTogMC44NTtcclxuXHRib3gtc2hhZG93OiAwIDAgNnB4IGNvbG9yLW1peChpbiBzcmdiLCB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpIDUwJSwgdHJhbnNwYXJlbnQpO1xyXG59XHJcblxyXG5cclxuLmNvbHVtbnMtY29udGFpbmVyLmNvbHVtbnMtcmVhZGluZyB7XHJcblx0LS1jb2x1bW5zLWJsb2NrLWRlZmF1bHQtYm9yZGVyLXdpZHRoOiAwcHg7XHJcblx0Ym9yZGVyOiBub25lO1xyXG5cdHBhZGRpbmc6IDA7XHJcblx0b3ZlcmZsb3c6IHZpc2libGU7XHJcbn1cclxuXHJcbi5jb2x1bW5zLWNvbnRhaW5lci5jb2x1bW5zLXJlYWRpbmcgLmNvbHVtbi1pdGVtIHtcclxuXHRib3JkZXI6IG5vbmU7XHJcblx0b3ZlcmZsb3cteDogYXV0bztcclxuXHRtaW4td2lkdGg6IDA7XHJcblx0bWFyZ2luOiAwIDRweCAwIDRweCAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4vKiBSZXNldCBoZWFkZXIgbmVnYXRpdmUgbWFyZ2luIGluIHJlYWRpbmcgdmlldyBcdTIwMTQgdGhlIGNvbnRhaW5lciBoYXMgbm9cclxuICAgcGFkZGluZyBzbyBuZWdhdGl2ZSBtYXJnaW5zIHdvdWxkIGJsZWVkIGludG8gYWRqYWNlbnQgY29sdW1ucy4gKi9cclxuLmNvbHVtbnMtY29udGFpbmVyLmNvbHVtbnMtcmVhZGluZyAuY29sdW1uLWhlYWRlciB7XHJcblx0bWFyZ2luOiAwIDAgNnB4O1xyXG5cdGJvcmRlci1yYWRpdXM6IDRweCA0cHggMCAwO1xyXG59XHJcblxyXG4uY29sdW1ucy1jb250YWluZXIuY29sdW1ucy1yZWFkaW5nIC5jb2x1bW4taXRlbTpob3ZlciB7XHJcblx0Ym9yZGVyOiBub25lO1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYWN0aXZlLWhvdmVyKSFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5jb2x1bW5zLWNvbnRhaW5lci5jb2x1bW5zLXJlYWRpbmcgLmNvbHVtbi10b29sYmFyIHtcclxuXHRkaXNwbGF5OiBub25lO1xyXG59XHJcblxyXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxyXG4gICBTdGFja2VkICh2ZXJ0aWNhbCkgbGF5b3V0OiBjb2x1bW5zIGFycmFuZ2VkIHRvcC10by1ib3R0b21cclxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cclxuXHJcbi5jb2x1bW5zLWNvbnRhaW5lci5jb2x1bW5zLXN0YWNrZWQge1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4gIWltcG9ydGFudDtcclxufVxyXG5cclxuLmNvbHVtbnMtY29udGFpbmVyLmNvbHVtbnMtc3RhY2tlZCA+IC5jb2x1bW4taXRlbSB7XHJcblx0ZmxleDogbm9uZSAhaW1wb3J0YW50O1xyXG5cdHdpZHRoOiAxMDAlO1xyXG59XHJcblxyXG4vKiBIaWRlIGhvcml6b250YWwgcmVzaXplIGhhbmRsZXMgaW4gc3RhY2tlZCBtb2RlICovXHJcbi5jb2x1bW5zLWNvbnRhaW5lci5jb2x1bW5zLXN0YWNrZWQgPiAuY29sdW1uLXJlc2l6ZS1oYW5kbGUge1xyXG5cdGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcclxufVxyXG5cclxuLyogU2VwYXJhdG9ycyBiZWNvbWUgaG9yaXpvbnRhbCBsaW5lcyBpbiBzdGFja2VkIG1vZGUgKi9cclxuLmNvbHVtbnMtY29udGFpbmVyLmNvbHVtbnMtc3RhY2tlZCA+IC5jb2x1bW4tc2VwYXJhdG9yLXZpc3VhbCB7XHJcblx0d2lkdGg6IDEwMCU7XHJcblx0ZmxleDogMCAwIGF1dG87XHJcblx0Ym9yZGVyLWxlZnQ6IG5vbmU7XHJcblx0Ym9yZGVyLXRvcDogdmFyKC0tc2VwLXdpZHRoLCAxcHgpIHZhcigtLXNlcC1zdHlsZSwgc29saWQpIHZhcigtLXNlcC1jb2xvciwgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpKTtcclxuXHRtYXJnaW46IDJweCA4cHg7XHJcbn1cclxuXHJcbi5jb2x1bW5zLWNvbnRhaW5lci5jb2x1bW5zLXN0YWNrZWQgPiAuY29sdW1uLXNlcGFyYXRvci1jdXN0b20ge1xyXG5cdHdyaXRpbmctbW9kZTogaG9yaXpvbnRhbC10YjtcclxuXHR0ZXh0LW9yaWVudGF0aW9uOiBpbml0aWFsO1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cdG1hcmdpbjogMnB4IDhweDtcclxufVxyXG5cclxuLyogRHJvcCBpbmRpY2F0b3JzIHN3aXRjaCB0byB0b3AvYm90dG9tIGluIHN0YWNrZWQgbW9kZSAqL1xyXG4uY29sdW1ucy1jb250YWluZXIuY29sdW1ucy1zdGFja2VkIC5jb2x1bW4tZHJvcC1iZWZvcmU6OmJlZm9yZSB7XHJcblx0bGVmdDogNHB4O1xyXG5cdHJpZ2h0OiA0cHg7XHJcblx0dG9wOiAtN3B4O1xyXG5cdGJvdHRvbTogYXV0bztcclxuXHR3aWR0aDogYXV0bztcclxuXHRoZWlnaHQ6IDNweDtcclxufVxyXG5cclxuLmNvbHVtbnMtY29udGFpbmVyLmNvbHVtbnMtc3RhY2tlZCAuY29sdW1uLWRyb3AtYWZ0ZXI6OmJlZm9yZSB7XHJcblx0bGVmdDogNHB4O1xyXG5cdHJpZ2h0OiA0cHg7XHJcblx0Ym90dG9tOiAtN3B4O1xyXG5cdHRvcDogYXV0bztcclxuXHR3aWR0aDogYXV0bztcclxuXHRoZWlnaHQ6IDNweDtcclxufVxyXG5cclxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cclxuICAgUGVyLWNvbHVtbiBzdGFjayBncm91cHM6IGNvbnNlY3V0aXZlIHN0YWNrZWQgY29sdW1ucyB3aXRoaW4gYSByb3cgY29udGFpbmVyXHJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXHJcblxyXG4uY29sdW1ucy1jb250YWluZXIgLmNvbHVtbnMtc3RhY2stZ3JvdXAge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRmbGV4OiAxIDEgMCU7XHJcblx0bWluLXdpZHRoOiAwO1xyXG5cdGFsaWduLWl0ZW1zOiBzdHJldGNoO1xyXG5cdGdhcDogNHB4O1xyXG5cdHBhZGRpbmc6MCA0cHg7XHJcbn1cclxuXHJcbi5jb2x1bW5zLWNvbnRhaW5lciAuY29sdW1ucy1zdGFjay1ncm91cCA+IC5jb2x1bW4taXRlbSB7XHJcblx0ZmxleDogbm9uZSAhaW1wb3J0YW50O1xyXG5cdHdpZHRoOiAxMDAlO1xyXG59XHJcblxyXG4vKiBIaWRlIHZlcnRpY2FsIHJlc2l6ZSBoYW5kbGVzIGluc2lkZSBzdGFjayBncm91cHMgKi9cclxuLmNvbHVtbnMtY29udGFpbmVyIC5jb2x1bW5zLXN0YWNrLWdyb3VwID4gLmNvbHVtbi1yZXNpemUtaGFuZGxlIHtcclxuXHRkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi8qIFNlcGFyYXRvcnMgYmVjb21lIGhvcml6b250YWwgbGluZXMgaW5zaWRlIHN0YWNrIGdyb3VwcyAqL1xyXG4uY29sdW1ucy1jb250YWluZXIgLmNvbHVtbnMtc3RhY2stZ3JvdXAgPiAuY29sdW1uLXNlcGFyYXRvci12aXN1YWwge1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cdGZsZXg6IDAgMCBhdXRvO1xyXG5cdGJvcmRlci1sZWZ0OiBub25lO1xyXG5cdGJvcmRlci10b3A6IHZhcigtLXNlcC13aWR0aCwgMXB4KSB2YXIoLS1zZXAtc3R5bGUsIHNvbGlkKSB2YXIoLS1zZXAtY29sb3IsIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKSk7XHJcblx0bWFyZ2luOiAycHggOHB4O1xyXG59XHJcblxyXG4uY29sdW1ucy1jb250YWluZXIgLmNvbHVtbnMtc3RhY2stZ3JvdXAgPiAuY29sdW1uLXNlcGFyYXRvci1jdXN0b20ge1xyXG5cdHdyaXRpbmctbW9kZTogaG9yaXpvbnRhbC10YjtcclxuXHR0ZXh0LW9yaWVudGF0aW9uOiBpbml0aWFsO1xyXG5cdHdpZHRoOiAxMDAlO1xyXG5cdG1hcmdpbjogMnB4IDhweDtcclxufVxyXG5cclxuLyogRHJvcCBpbmRpY2F0b3JzIHN3aXRjaCB0byB0b3AvYm90dG9tIGluc2lkZSBzdGFjayBncm91cHMgKi9cclxuLmNvbHVtbnMtY29udGFpbmVyIC5jb2x1bW5zLXN0YWNrLWdyb3VwIC5jb2x1bW4tZHJvcC1iZWZvcmU6OmJlZm9yZSB7XHJcblx0bGVmdDogNHB4O1xyXG5cdHJpZ2h0OiA0cHg7XHJcblx0dG9wOiAtN3B4O1xyXG5cdGJvdHRvbTogYXV0bztcclxuXHR3aWR0aDogYXV0bztcclxuXHRoZWlnaHQ6IDNweDtcclxufVxyXG5cclxuLmNvbHVtbnMtY29udGFpbmVyIC5jb2x1bW5zLXN0YWNrLWdyb3VwIC5jb2x1bW4tZHJvcC1hZnRlcjo6YmVmb3JlIHtcclxuXHRsZWZ0OiA0cHg7XHJcblx0cmlnaHQ6IDRweDtcclxuXHRib3R0b206IC03cHg7XHJcblx0dG9wOiBhdXRvO1xyXG5cdHdpZHRoOiBhdXRvO1xyXG5cdGhlaWdodDogM3B4O1xyXG59XHJcblxyXG4vKiBDb2x1bW4gc2VsZWN0aW9uIGhpZ2hsaWdodCAqL1xyXG4uY29sdW1ucy1jb250YWluZXIgLmNvbHVtbi1pdGVtLmNvbHVtbi1zZWxlY3RlZCB7XHJcblx0b3V0bGluZTogMnB4IHNvbGlkIHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcblx0b3V0bGluZS1vZmZzZXQ6IC0ycHg7XHJcbn1cclxuXHJcbi5jb2x1bW5zLWNvbnRhaW5lciAuY29sdW1uLXNlcGFyYXRvci12aXN1YWwge1xyXG5cdHdpZHRoOiAwO1xyXG5cdGZsZXg6IDAgMCB2YXIoLS1zZXAtd2lkdGgsIDFweCk7XHJcblx0YmFja2dyb3VuZDogbm9uZTtcclxuXHRib3JkZXItbGVmdDogdmFyKC0tc2VwLXdpZHRoLCAxcHgpIHZhcigtLXNlcC1zdHlsZSwgc29saWQpIHZhcigtLXNlcC1jb2xvciwgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpKTtcclxuXHRtYXJnaW46IDhweCAycHg7XHJcbn1cclxuXHJcbi5jb2x1bW5zLWNvbnRhaW5lciAuY29sdW1uLXNlcGFyYXRvci1jdXN0b20ge1xyXG5cdGZsZXg6IDAgMCBhdXRvO1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxuXHR3cml0aW5nLW1vZGU6IHZlcnRpY2FsLXJsO1xyXG5cdHRleHQtb3JpZW50YXRpb246IG1peGVkO1xyXG5cdGNvbG9yOiB2YXIoLS1zZXAtY29sb3IsIHZhcigtLXRleHQtZmFpbnQpKTtcclxuXHRmb250LXNpemU6IHZhcigtLXNlcC1zaXplLCAxMnB4KTtcclxuXHRsaW5lLWhlaWdodDogMXJlbTtcclxuXHRtYXJnaW46IDRweCAycHg7XHJcblx0b3ZlcmZsb3c6IGhpZGRlbjtcclxuXHQtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xyXG5cdHVzZXItc2VsZWN0OiBub25lO1xyXG5cdHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG5cdGxldHRlci1zcGFjaW5nOiAwLjE1ZW07XHJcblx0b3BhY2l0eTogMC43O1xyXG59XHJcblxyXG4uY29sdW1ucy1jb250YWluZXIgLmNvbHVtbi1lbXB0eS1wbGFjZWhvbGRlciB7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtZmFpbnQpO1xyXG5cdGZvbnQtc3R5bGU6IGl0YWxpYztcclxuXHRwYWRkaW5nOiA4cHggMDtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtc21hbGxlc3QpO1xyXG59XHJcblxyXG4uY29sdW1ucy1jdXJzb3ItbWlycm9yIHtcclxuXHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0dmlzaWJpbGl0eTogaGlkZGVuO1xyXG5cdHdoaXRlLXNwYWNlOiBwcmUtd3JhcDtcclxuXHRvdmVyZmxvdy13cmFwOiBicmVhay13b3JkO1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcblx0aGVpZ2h0OiBhdXRvO1xyXG5cdHdpZHRoOiB2YXIoLS1taXJyb3Itd2lkdGgsIGF1dG8pO1xyXG59XHJcblxyXG4uY29sdW1ucy1zdWdnZXN0LXBvcHVwIHtcclxuXHRwb3NpdGlvbjogZml4ZWQ7XHJcblx0bWluLXdpZHRoOiAyMjBweDtcclxuXHRtYXgtd2lkdGg6IDQ1MHB4O1xyXG5cdG1heC1oZWlnaHQ6IDM0MHB4O1xyXG5cdG92ZXJmbG93LXk6IGF1dG87XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRib3JkZXItcmFkaXVzOiA4cHg7XHJcblx0Ym94LXNoYWRvdzogdmFyKC0tc2hhZG93LXMpO1xyXG5cdHBhZGRpbmc6IDRweCAwO1xyXG5cdHotaW5kZXg6IDEwMDA7XHJcbn1cclxuXHJcbi5jb2x1bW5zLXN1Z2dlc3QtaXRlbSB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LWRpcmVjdGlvbjogcm93O1xyXG5cdHBhZGRpbmc6IDVweCAxMHB4O1xyXG5cdGN1cnNvcjogcG9pbnRlcjtcclxuXHRnYXA6IDAuNXJlbSAhaW1wb3J0YW50O1xyXG59XHJcblxyXG4uY29sdW1ucy1zdWdnZXN0LWl0ZW06aG92ZXIsXHJcbi5jb2x1bW5zLXN1Z2dlc3QtaXRlbS5pcy1zZWxlY3RlZCB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3Zlcik7XHJcblx0Ym9yZGVyLXJhZGl1czogNHB4O1xyXG59XHJcblxyXG4uY29sdW1ucy1zdWdnZXN0LXRpdGxlIHtcclxuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdGV4dC1zaXplKTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xyXG5cdGZvbnQtd2VpZ2h0OiA1MDA7XHJcblx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG5cdHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xyXG59XHJcblxyXG4uY29sdW1ucy1zdWdnZXN0LXBhdGgge1xyXG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC1zbWFsbGVzdCk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtZmFpbnQpO1xyXG5cdHdoaXRlLXNwYWNlOiBub3dyYXA7XHJcblx0b3ZlcmZsb3c6IGhpZGRlbjtcclxuXHR0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcclxufVxyXG5cclxuLmNvbHVtbnMtc3VnZ2VzdC1pY29uIHtcclxuXHRmbGV4LXNocmluazogMDtcclxuXHR3aWR0aDogMThweDtcclxuXHRoZWlnaHQ6IDE4cHg7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxufVxyXG5cclxuLmNvbHVtbnMtc3VnZ2VzdC1pY29uIHN2ZyB7XHJcblx0d2lkdGg6IDE2cHg7XHJcblx0aGVpZ2h0OiAxNnB4O1xyXG59XHJcblxyXG4uY29sdW1ucy1zdWdnZXN0LXRleHQge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRnYXA6IDFweDtcclxuXHRvdmVyZmxvdzogaGlkZGVuO1xyXG59XHJcblxyXG4uY29sdW1ucy1zdWdnZXN0LWl0ZW06aGFzKC5jb2x1bW5zLXN1Z2dlc3QtaWNvbikge1xyXG5cdGZsZXgtZGlyZWN0aW9uOiByb3c7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRnYXA6IDhweDtcclxufVxyXG4iLCAiLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgIExlZ2FjeSBjYWxsb3V0IHN5bnRheCBzdXBwb3J0XG4gICBSZWFkaW5nIFZpZXcgKG9yaWdpbmFsIHNlbGVjdG9ycylcbiAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbmRpdltkYXRhLWNhbGxvdXQ9XCJjb2xcIl0uY2FsbG91dCxcbmRpdltkYXRhLWNhbGxvdXRePVwiY29sLW1kXCJdLmNhbGxvdXQge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDApO1xuXHRwYWRkaW5nOiAwIDAgMCAwO1xuXHRib3JkZXItc3R5bGU6IG5vbmU7XG59XG5cbi5jb2x1bW5QYXJlbnQsXG5kaXZbZGF0YS1jYWxsb3V0PVwiY29sXCJdLmNhbGxvdXQgPiBkaXYuY2FsbG91dC1jb250ZW50IHtcblx0ZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xuXHRwYWRkaW5nOiB2YXIoLS1vYnNpZGlhbi1jb2x1bW5zLXBhZGRpbmcpO1xuXHRmbGV4LXdyYXA6IG5vd3JhcDtcblx0Z2FwOiB2YXIoLS1vYnNpZGlhbi1jb2x1bW5zLWdhcCk7XG5cdHdoaXRlLXNwYWNlOiBub3JtYWw7XG5cdG92ZXJmbG93LXg6IGF1dG87XG59XG5cbmRpdltkYXRhLWNhbGxvdXQ9XCJjb2xcIl0uY2FsbG91dCA+IGRpdi5jYWxsb3V0LXRpdGxlLFxuZGl2W2RhdGEtY2FsbG91dF49XCJjb2wtbWRcIl0uY2FsbG91dCA+IGRpdi5jYWxsb3V0LXRpdGxlIHtcblx0ZGlzcGxheTogbm9uZTtcbn1cblxuLmNtLXByZXZpZXctY29kZS1ibG9jayAuYWRtb25pdGlvbi1jb250ZW50IC5jb2x1bW5QYXJlbnQgcCB7XG5cdHdoaXRlLXNwYWNlOiBwcmUtd3JhcDtcbn1cblxuLmNvbHVtbkNoaWxkLFxuZGl2W2RhdGEtY2FsbG91dD1cImNvbFwiXS5jYWxsb3V0ID4gZGl2LmNhbGxvdXQtY29udGVudCA+ICoge1xuXHRmbGV4LWdyb3c6IHZhcigtLW9ic2lkaWFuLWNvbHVtbnMtZGVmLXNwYW4pO1xuXHRmbGV4LWJhc2lzOiBjYWxjKHZhcigtLW9ic2lkaWFuLWNvbHVtbnMtbWluLXdpZHRoKSAqIHZhcigtLW9ic2lkaWFuLWNvbHVtbnMtZGVmLXNwYW4pKTtcblx0d2lkdGg6IGNhbGModmFyKC0tb2JzaWRpYW4tY29sdW1ucy1taW4td2lkdGgpICogdmFyKC0tb2JzaWRpYW4tY29sdW1ucy1kZWYtc3BhbikpO1xufVxuXG5kaXZbZGF0YS1jYWxsb3V0PVwiY29sXCJdLmNhbGxvdXQgPiBkaXYuY2FsbG91dC1jb250ZW50ID4gZGl2W2RhdGEtY2FsbG91dF49XCJjb2wtbWRcIl0uY2FsbG91dCB7XG5cdGZsZXgtZ3JvdzogdmFyKC0tb2JzaWRpYW4tY29sdW1ucy1jdXN0b20tc3Bhbik7XG5cdGZsZXgtYmFzaXM6IGNhbGModmFyKC0tb2JzaWRpYW4tY29sdW1ucy1taW4td2lkdGgpICogdmFyKC0tb2JzaWRpYW4tY29sdW1ucy1jdXN0b20tc3BhbikpO1xuXHR3aWR0aDogY2FsYyh2YXIoLS1vYnNpZGlhbi1jb2x1bW5zLW1pbi13aWR0aCkgKiB2YXIoLS1vYnNpZGlhbi1jb2x1bW5zLWN1c3RvbS1zcGFuKSk7XG5cdG1hcmdpbjogMDtcblx0YmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwKTtcblx0cGFkZGluZzogMCAwIDAgMDtcblx0Ym9yZGVyLXN0eWxlOiBub25lO1xufVxuXG5kaXZbZGF0YS1jYWxsb3V0PVwiY29sXCJdLmNhbGxvdXQgPiBkaXYuY2FsbG91dC1jb250ZW50ID4gZGl2W2RhdGEtY2FsbG91dCQ9XCItMC41XCJdLmNhbGxvdXQge1xuXHQtLW9ic2lkaWFuLWNvbHVtbnMtY3VzdG9tLXNwYW46IDAuNTtcbn1cblxuZGl2W2RhdGEtY2FsbG91dD1cImNvbFwiXS5jYWxsb3V0ID4gZGl2LmNhbGxvdXQtY29udGVudCA+IGRpdltkYXRhLWNhbGxvdXQkPVwiLTFcIl0uY2FsbG91dCxcbmRpdltkYXRhLWNhbGxvdXQ9XCJjb2xcIl0uY2FsbG91dCA+IGRpdi5jYWxsb3V0LWNvbnRlbnQgPiBkaXZbZGF0YS1jYWxsb3V0PVwiY29sLW1kXCJdLmNhbGxvdXQge1xuXHQtLW9ic2lkaWFuLWNvbHVtbnMtY3VzdG9tLXNwYW46IDE7XG59XG5cbmRpdltkYXRhLWNhbGxvdXQ9XCJjb2xcIl0uY2FsbG91dCA+IGRpdi5jYWxsb3V0LWNvbnRlbnQgPiBkaXZbZGF0YS1jYWxsb3V0JD1cIi0xLjVcIl0uY2FsbG91dCB7XG5cdC0tb2JzaWRpYW4tY29sdW1ucy1jdXN0b20tc3BhbjogMS41O1xufVxuXG5kaXZbZGF0YS1jYWxsb3V0PVwiY29sXCJdLmNhbGxvdXQgPiBkaXYuY2FsbG91dC1jb250ZW50ID4gZGl2W2RhdGEtY2FsbG91dCQ9XCItMlwiXS5jYWxsb3V0IHtcblx0LS1vYnNpZGlhbi1jb2x1bW5zLWN1c3RvbS1zcGFuOiAyO1xufVxuXG5kaXZbZGF0YS1jYWxsb3V0PVwiY29sXCJdLmNhbGxvdXQgPiBkaXYuY2FsbG91dC1jb250ZW50ID4gZGl2W2RhdGEtY2FsbG91dCQ9XCItMi41XCJdLmNhbGxvdXQge1xuXHQtLW9ic2lkaWFuLWNvbHVtbnMtY3VzdG9tLXNwYW46IDIuNTtcbn1cblxuZGl2W2RhdGEtY2FsbG91dD1cImNvbFwiXS5jYWxsb3V0ID4gZGl2LmNhbGxvdXQtY29udGVudCA+IGRpdltkYXRhLWNhbGxvdXQkPVwiLTNcIl0uY2FsbG91dCB7XG5cdC0tb2JzaWRpYW4tY29sdW1ucy1jdXN0b20tc3BhbjogMztcbn1cblxuZGl2W2RhdGEtY2FsbG91dD1cImNvbFwiXS5jYWxsb3V0ID4gZGl2LmNhbGxvdXQtY29udGVudCA+IGRpdltkYXRhLWNhbGxvdXQkPVwiLTMuNVwiXS5jYWxsb3V0IHtcblx0LS1vYnNpZGlhbi1jb2x1bW5zLWN1c3RvbS1zcGFuOiAzLjU7XG59XG5cbmRpdltkYXRhLWNhbGxvdXQ9XCJjb2xcIl0uY2FsbG91dCA+IGRpdi5jYWxsb3V0LWNvbnRlbnQgPiBkaXZbZGF0YS1jYWxsb3V0JD1cIi00XCJdLmNhbGxvdXQge1xuXHQtLW9ic2lkaWFuLWNvbHVtbnMtY3VzdG9tLXNwYW46IDQ7XG59XG5cbmRpdltkYXRhLWNhbGxvdXQ9XCJjb2xcIl0uY2FsbG91dCA+IGRpdi5jYWxsb3V0LWNvbnRlbnQgPiBkaXZbZGF0YS1jYWxsb3V0JD1cIi00LjVcIl0uY2FsbG91dCB7XG5cdC0tb2JzaWRpYW4tY29sdW1ucy1jdXN0b20tc3BhbjogNC41O1xufVxuXG5kaXZbZGF0YS1jYWxsb3V0PVwiY29sXCJdLmNhbGxvdXQgPiBkaXYuY2FsbG91dC1jb250ZW50ID4gZGl2W2RhdGEtY2FsbG91dCQ9XCItNVwiXS5jYWxsb3V0IHtcblx0LS1vYnNpZGlhbi1jb2x1bW5zLWN1c3RvbS1zcGFuOiA1O1xufVxuXG5kaXZbZGF0YS1jYWxsb3V0PVwiY29sXCJdLmNhbGxvdXQgPiBkaXYuY2FsbG91dC1jb250ZW50ID4gZGl2W2RhdGEtY2FsbG91dCQ9XCItNS41XCJdLmNhbGxvdXQge1xuXHQtLW9ic2lkaWFuLWNvbHVtbnMtY3VzdG9tLXNwYW46IDUuNTtcbn1cblxuZGl2W2RhdGEtY2FsbG91dD1cImNvbFwiXS5jYWxsb3V0ID4gZGl2LmNhbGxvdXQtY29udGVudCA+IGRpdltkYXRhLWNhbGxvdXQkPVwiLTZcIl0uY2FsbG91dCB7XG5cdC0tb2JzaWRpYW4tY29sdW1ucy1jdXN0b20tc3BhbjogNjtcbn1cblxuZGl2W2RhdGEtY2FsbG91dD1cImNvbFwiXS5jYWxsb3V0ID4gZGl2LmNhbGxvdXQtY29udGVudCA+IGRpdltkYXRhLWNhbGxvdXQkPVwiLTYuNVwiXS5jYWxsb3V0IHtcblx0LS1vYnNpZGlhbi1jb2x1bW5zLWN1c3RvbS1zcGFuOiA2LjU7XG59XG5cbmRpdltkYXRhLWNhbGxvdXQ9XCJjb2xcIl0uY2FsbG91dCA+IGRpdi5jYWxsb3V0LWNvbnRlbnQgPiBkaXZbZGF0YS1jYWxsb3V0JD1cIi03XCJdLmNhbGxvdXQge1xuXHQtLW9ic2lkaWFuLWNvbHVtbnMtY3VzdG9tLXNwYW46IDc7XG59XG5cbmRpdltkYXRhLWNhbGxvdXQ9XCJjb2xcIl0uY2FsbG91dCA+IGRpdi5jYWxsb3V0LWNvbnRlbnQgPiBkaXZbZGF0YS1jYWxsb3V0JD1cIi03LjVcIl0uY2FsbG91dCB7XG5cdC0tb2JzaWRpYW4tY29sdW1ucy1jdXN0b20tc3BhbjogNy41O1xufVxuXG5kaXZbZGF0YS1jYWxsb3V0PVwiY29sXCJdLmNhbGxvdXQgPiBkaXYuY2FsbG91dC1jb250ZW50ID4gZGl2W2RhdGEtY2FsbG91dCQ9XCItOFwiXS5jYWxsb3V0IHtcblx0LS1vYnNpZGlhbi1jb2x1bW5zLWN1c3RvbS1zcGFuOiA4O1xufVxuXG5kaXZbZGF0YS1jYWxsb3V0PVwiY29sXCJdLmNhbGxvdXQgPiBkaXYuY2FsbG91dC1jb250ZW50ID4gZGl2W2RhdGEtY2FsbG91dCQ9XCItOC41XCJdLmNhbGxvdXQge1xuXHQtLW9ic2lkaWFuLWNvbHVtbnMtY3VzdG9tLXNwYW46IDguNTtcbn1cblxuZGl2W2RhdGEtY2FsbG91dD1cImNvbFwiXS5jYWxsb3V0ID4gZGl2LmNhbGxvdXQtY29udGVudCA+IGRpdltkYXRhLWNhbGxvdXQkPVwiLTlcIl0uY2FsbG91dCB7XG5cdC0tb2JzaWRpYW4tY29sdW1ucy1jdXN0b20tc3BhbjogOTtcbn1cblxuZGl2W2RhdGEtY2FsbG91dD1cImNvbFwiXS5jYWxsb3V0ID4gZGl2LmNhbGxvdXQtY29udGVudCA+IGRpdltkYXRhLWNhbGxvdXQkPVwiLTkuNVwiXS5jYWxsb3V0IHtcblx0LS1vYnNpZGlhbi1jb2x1bW5zLWN1c3RvbS1zcGFuOiA5LjU7XG59XG5cbmRpdltkYXRhLWNhbGxvdXQ9XCJjb2xcIl0uY2FsbG91dCA+IGRpdi5jYWxsb3V0LWNvbnRlbnQgPiBkaXZbZGF0YS1jYWxsb3V0JD1cIi0xMFwiXS5jYWxsb3V0IHtcblx0LS1vYnNpZGlhbi1jb2x1bW5zLWN1c3RvbS1zcGFuOiAxMDtcbn1cblxuLyogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAgIExlZ2FjeSBjYWxsb3V0IHN5bnRheCBzdXBwb3J0XG4gICBMaXZlIFByZXZpZXcgLyBDTTYgY2FsbG91dHNcbiAgIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbmRpdltkYXRhLWNhbGxvdXQ9XCJjb2xcIl0uY20tY2FsbG91dCxcbmRpdltkYXRhLWNhbGxvdXRePVwiY29sLW1kXCJdLmNtLWNhbGxvdXQsXG5kaXZbZGF0YS1jYWxsb3V0PVwiY29sXCJdLmNtLWVtYmVkLWJsb2NrLFxuZGl2W2RhdGEtY2FsbG91dF49XCJjb2wtbWRcIl0uY20tZW1iZWQtYmxvY2sge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDApO1xuXHRwYWRkaW5nOiAwO1xuXHRib3JkZXItc3R5bGU6IG5vbmU7XG59XG5cbmRpdltkYXRhLWNhbGxvdXQ9XCJjb2xcIl0uY20tY2FsbG91dCA+IGRpdi5jYWxsb3V0LWNvbnRlbnQsXG5kaXZbZGF0YS1jYWxsb3V0PVwiY29sXCJdLmNtLWNhbGxvdXQgPiBkaXYuY20tY2FsbG91dC1jb250ZW50LFxuZGl2W2RhdGEtY2FsbG91dD1cImNvbFwiXS5jbS1lbWJlZC1ibG9jayA+IGRpdi5jYWxsb3V0LWNvbnRlbnQsXG5kaXZbZGF0YS1jYWxsb3V0PVwiY29sXCJdLmNtLWVtYmVkLWJsb2NrID4gZGl2LmNtLWNhbGxvdXQtY29udGVudCB7XG5cdGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcblx0cGFkZGluZzogdmFyKC0tb2JzaWRpYW4tY29sdW1ucy1wYWRkaW5nKTtcblx0ZmxleC13cmFwOiBub3dyYXA7XG5cdGdhcDogdmFyKC0tb2JzaWRpYW4tY29sdW1ucy1nYXApO1xuXHR3aGl0ZS1zcGFjZTogbm9ybWFsO1xuXHRvdmVyZmxvdy14OiBhdXRvO1xufVxuXG5kaXZbZGF0YS1jYWxsb3V0PVwiY29sXCJdLmNtLWNhbGxvdXQgPiBkaXYuY2FsbG91dC10aXRsZSxcbmRpdltkYXRhLWNhbGxvdXQ9XCJjb2xcIl0uY20tY2FsbG91dCA+IGRpdi5jbS1jYWxsb3V0LXRpdGxlLFxuZGl2W2RhdGEtY2FsbG91dF49XCJjb2wtbWRcIl0uY20tY2FsbG91dCA+IGRpdi5jYWxsb3V0LXRpdGxlLFxuZGl2W2RhdGEtY2FsbG91dF49XCJjb2wtbWRcIl0uY20tY2FsbG91dCA+IGRpdi5jbS1jYWxsb3V0LXRpdGxlLFxuZGl2W2RhdGEtY2FsbG91dD1cImNvbFwiXS5jbS1lbWJlZC1ibG9jayA+IGRpdi5jYWxsb3V0LXRpdGxlLFxuZGl2W2RhdGEtY2FsbG91dD1cImNvbFwiXS5jbS1lbWJlZC1ibG9jayA+IGRpdi5jbS1jYWxsb3V0LXRpdGxlLFxuZGl2W2RhdGEtY2FsbG91dF49XCJjb2wtbWRcIl0uY20tZW1iZWQtYmxvY2sgPiBkaXYuY2FsbG91dC10aXRsZSxcbmRpdltkYXRhLWNhbGxvdXRePVwiY29sLW1kXCJdLmNtLWVtYmVkLWJsb2NrID4gZGl2LmNtLWNhbGxvdXQtdGl0bGUge1xuXHRkaXNwbGF5OiBub25lO1xufVxuXG5kaXZbZGF0YS1jYWxsb3V0PVwiY29sXCJdLmNtLWNhbGxvdXQgPiBkaXYuY2FsbG91dC1jb250ZW50ID4gKixcbmRpdltkYXRhLWNhbGxvdXQ9XCJjb2xcIl0uY20tY2FsbG91dCA+IGRpdi5jbS1jYWxsb3V0LWNvbnRlbnQgPiAqLFxuZGl2W2RhdGEtY2FsbG91dD1cImNvbFwiXS5jbS1lbWJlZC1ibG9jayA+IGRpdi5jYWxsb3V0LWNvbnRlbnQgPiAqLFxuZGl2W2RhdGEtY2FsbG91dD1cImNvbFwiXS5jbS1lbWJlZC1ibG9jayA+IGRpdi5jbS1jYWxsb3V0LWNvbnRlbnQgPiAqIHtcblx0ZmxleC1ncm93OiB2YXIoLS1vYnNpZGlhbi1jb2x1bW5zLWRlZi1zcGFuKTtcblx0ZmxleC1iYXNpczogY2FsYyh2YXIoLS1vYnNpZGlhbi1jb2x1bW5zLW1pbi13aWR0aCkgKiB2YXIoLS1vYnNpZGlhbi1jb2x1bW5zLWRlZi1zcGFuKSk7XG5cdHdpZHRoOiBjYWxjKHZhcigtLW9ic2lkaWFuLWNvbHVtbnMtbWluLXdpZHRoKSAqIHZhcigtLW9ic2lkaWFuLWNvbHVtbnMtZGVmLXNwYW4pKTtcbn1cblxuZGl2W2RhdGEtY2FsbG91dD1cImNvbFwiXS5jbS1jYWxsb3V0ID4gZGl2LmNhbGxvdXQtY29udGVudCA+IGRpdltkYXRhLWNhbGxvdXRePVwiY29sLW1kXCJdLFxuZGl2W2RhdGEtY2FsbG91dD1cImNvbFwiXS5jbS1jYWxsb3V0ID4gZGl2LmNtLWNhbGxvdXQtY29udGVudCA+IGRpdltkYXRhLWNhbGxvdXRePVwiY29sLW1kXCJdLFxuZGl2W2RhdGEtY2FsbG91dD1cImNvbFwiXS5jbS1lbWJlZC1ibG9jayA+IGRpdi5jYWxsb3V0LWNvbnRlbnQgPiBkaXZbZGF0YS1jYWxsb3V0Xj1cImNvbC1tZFwiXSxcbmRpdltkYXRhLWNhbGxvdXQ9XCJjb2xcIl0uY20tZW1iZWQtYmxvY2sgPiBkaXYuY20tY2FsbG91dC1jb250ZW50ID4gZGl2W2RhdGEtY2FsbG91dF49XCJjb2wtbWRcIl0ge1xuXHRmbGV4LWdyb3c6IHZhcigtLW9ic2lkaWFuLWNvbHVtbnMtY3VzdG9tLXNwYW4pO1xuXHRmbGV4LWJhc2lzOiBjYWxjKHZhcigtLW9ic2lkaWFuLWNvbHVtbnMtbWluLXdpZHRoKSAqIHZhcigtLW9ic2lkaWFuLWNvbHVtbnMtY3VzdG9tLXNwYW4pKTtcblx0d2lkdGg6IGNhbGModmFyKC0tb2JzaWRpYW4tY29sdW1ucy1taW4td2lkdGgpICogdmFyKC0tb2JzaWRpYW4tY29sdW1ucy1jdXN0b20tc3BhbikpO1xuXHRtYXJnaW46IDA7XG5cdGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMCk7XG5cdHBhZGRpbmc6IDA7XG5cdGJvcmRlci1zdHlsZTogbm9uZTtcbn1cblxuZGl2W2RhdGEtY2FsbG91dD1cImNvbFwiXS5jbS1jYWxsb3V0ID4gZGl2LmNhbGxvdXQtY29udGVudCA+IGRpdltkYXRhLWNhbGxvdXQkPVwiLTAuNVwiXSxcbmRpdltkYXRhLWNhbGxvdXQ9XCJjb2xcIl0uY20tY2FsbG91dCA+IGRpdi5jbS1jYWxsb3V0LWNvbnRlbnQgPiBkaXZbZGF0YS1jYWxsb3V0JD1cIi0wLjVcIl0sXG5kaXZbZGF0YS1jYWxsb3V0PVwiY29sXCJdLmNtLWVtYmVkLWJsb2NrID4gZGl2LmNhbGxvdXQtY29udGVudCA+IGRpdltkYXRhLWNhbGxvdXQkPVwiLTAuNVwiXSxcbmRpdltkYXRhLWNhbGxvdXQ9XCJjb2xcIl0uY20tZW1iZWQtYmxvY2sgPiBkaXYuY20tY2FsbG91dC1jb250ZW50ID4gZGl2W2RhdGEtY2FsbG91dCQ9XCItMC41XCJdIHtcblx0LS1vYnNpZGlhbi1jb2x1bW5zLWN1c3RvbS1zcGFuOiAwLjU7XG59XG5cbmRpdltkYXRhLWNhbGxvdXQ9XCJjb2xcIl0uY20tY2FsbG91dCA+IGRpdi5jYWxsb3V0LWNvbnRlbnQgPiBkaXZbZGF0YS1jYWxsb3V0JD1cIi0xXCJdLFxuZGl2W2RhdGEtY2FsbG91dD1cImNvbFwiXS5jbS1jYWxsb3V0ID4gZGl2LmNtLWNhbGxvdXQtY29udGVudCA+IGRpdltkYXRhLWNhbGxvdXQkPVwiLTFcIl0sXG5kaXZbZGF0YS1jYWxsb3V0PVwiY29sXCJdLmNtLWVtYmVkLWJsb2NrID4gZGl2LmNhbGxvdXQtY29udGVudCA+IGRpdltkYXRhLWNhbGxvdXQkPVwiLTFcIl0sXG5kaXZbZGF0YS1jYWxsb3V0PVwiY29sXCJdLmNtLWVtYmVkLWJsb2NrID4gZGl2LmNtLWNhbGxvdXQtY29udGVudCA+IGRpdltkYXRhLWNhbGxvdXQkPVwiLTFcIl0sXG5kaXZbZGF0YS1jYWxsb3V0PVwiY29sXCJdLmNtLWNhbGxvdXQgPiBkaXYuY2FsbG91dC1jb250ZW50ID4gZGl2W2RhdGEtY2FsbG91dD1cImNvbC1tZFwiXSxcbmRpdltkYXRhLWNhbGxvdXQ9XCJjb2xcIl0uY20tY2FsbG91dCA+IGRpdi5jbS1jYWxsb3V0LWNvbnRlbnQgPiBkaXZbZGF0YS1jYWxsb3V0PVwiY29sLW1kXCJdLFxuZGl2W2RhdGEtY2FsbG91dD1cImNvbFwiXS5jbS1lbWJlZC1ibG9jayA+IGRpdi5jYWxsb3V0LWNvbnRlbnQgPiBkaXZbZGF0YS1jYWxsb3V0PVwiY29sLW1kXCJdLFxuZGl2W2RhdGEtY2FsbG91dD1cImNvbFwiXS5jbS1lbWJlZC1ibG9jayA+IGRpdi5jbS1jYWxsb3V0LWNvbnRlbnQgPiBkaXZbZGF0YS1jYWxsb3V0PVwiY29sLW1kXCJdIHtcblx0LS1vYnNpZGlhbi1jb2x1bW5zLWN1c3RvbS1zcGFuOiAxO1xufVxuXG5kaXZbZGF0YS1jYWxsb3V0PVwiY29sXCJdLmNtLWNhbGxvdXQgPiBkaXYuY2FsbG91dC1jb250ZW50ID4gZGl2W2RhdGEtY2FsbG91dCQ9XCItMS41XCJdLFxuZGl2W2RhdGEtY2FsbG91dD1cImNvbFwiXS5jbS1jYWxsb3V0ID4gZGl2LmNtLWNhbGxvdXQtY29udGVudCA+IGRpdltkYXRhLWNhbGxvdXQkPVwiLTEuNVwiXSxcbmRpdltkYXRhLWNhbGxvdXQ9XCJjb2xcIl0uY20tZW1iZWQtYmxvY2sgPiBkaXYuY2FsbG91dC1jb250ZW50ID4gZGl2W2RhdGEtY2FsbG91dCQ9XCItMS41XCJdLFxuZGl2W2RhdGEtY2FsbG91dD1cImNvbFwiXS5jbS1lbWJlZC1ibG9jayA+IGRpdi5jbS1jYWxsb3V0LWNvbnRlbnQgPiBkaXZbZGF0YS1jYWxsb3V0JD1cIi0xLjVcIl0ge1xuXHQtLW9ic2lkaWFuLWNvbHVtbnMtY3VzdG9tLXNwYW46IDEuNTtcbn1cblxuZGl2W2RhdGEtY2FsbG91dD1cImNvbFwiXS5jbS1jYWxsb3V0ID4gZGl2LmNhbGxvdXQtY29udGVudCA+IGRpdltkYXRhLWNhbGxvdXQkPVwiLTJcIl0sXG5kaXZbZGF0YS1jYWxsb3V0PVwiY29sXCJdLmNtLWNhbGxvdXQgPiBkaXYuY20tY2FsbG91dC1jb250ZW50ID4gZGl2W2RhdGEtY2FsbG91dCQ9XCItMlwiXSxcbmRpdltkYXRhLWNhbGxvdXQ9XCJjb2xcIl0uY20tZW1iZWQtYmxvY2sgPiBkaXYuY2FsbG91dC1jb250ZW50ID4gZGl2W2RhdGEtY2FsbG91dCQ9XCItMlwiXSxcbmRpdltkYXRhLWNhbGxvdXQ9XCJjb2xcIl0uY20tZW1iZWQtYmxvY2sgPiBkaXYuY20tY2FsbG91dC1jb250ZW50ID4gZGl2W2RhdGEtY2FsbG91dCQ9XCItMlwiXSB7XG5cdC0tb2JzaWRpYW4tY29sdW1ucy1jdXN0b20tc3BhbjogMjtcbn1cblxuZGl2W2RhdGEtY2FsbG91dD1cImNvbFwiXS5jbS1jYWxsb3V0ID4gZGl2LmNhbGxvdXQtY29udGVudCA+IGRpdltkYXRhLWNhbGxvdXQkPVwiLTIuNVwiXSxcbmRpdltkYXRhLWNhbGxvdXQ9XCJjb2xcIl0uY20tY2FsbG91dCA+IGRpdi5jbS1jYWxsb3V0LWNvbnRlbnQgPiBkaXZbZGF0YS1jYWxsb3V0JD1cIi0yLjVcIl0sXG5kaXZbZGF0YS1jYWxsb3V0PVwiY29sXCJdLmNtLWVtYmVkLWJsb2NrID4gZGl2LmNhbGxvdXQtY29udGVudCA+IGRpdltkYXRhLWNhbGxvdXQkPVwiLTIuNVwiXSxcbmRpdltkYXRhLWNhbGxvdXQ9XCJjb2xcIl0uY20tZW1iZWQtYmxvY2sgPiBkaXYuY20tY2FsbG91dC1jb250ZW50ID4gZGl2W2RhdGEtY2FsbG91dCQ9XCItMi41XCJdIHtcblx0LS1vYnNpZGlhbi1jb2x1bW5zLWN1c3RvbS1zcGFuOiAyLjU7XG59XG5cbmRpdltkYXRhLWNhbGxvdXQ9XCJjb2xcIl0uY20tY2FsbG91dCA+IGRpdi5jYWxsb3V0LWNvbnRlbnQgPiBkaXZbZGF0YS1jYWxsb3V0JD1cIi0zXCJdLFxuZGl2W2RhdGEtY2FsbG91dD1cImNvbFwiXS5jbS1jYWxsb3V0ID4gZGl2LmNtLWNhbGxvdXQtY29udGVudCA+IGRpdltkYXRhLWNhbGxvdXQkPVwiLTNcIl0sXG5kaXZbZGF0YS1jYWxsb3V0PVwiY29sXCJdLmNtLWVtYmVkLWJsb2NrID4gZGl2LmNhbGxvdXQtY29udGVudCA+IGRpdltkYXRhLWNhbGxvdXQkPVwiLTNcIl0sXG5kaXZbZGF0YS1jYWxsb3V0PVwiY29sXCJdLmNtLWVtYmVkLWJsb2NrID4gZGl2LmNtLWNhbGxvdXQtY29udGVudCA+IGRpdltkYXRhLWNhbGxvdXQkPVwiLTNcIl0ge1xuXHQtLW9ic2lkaWFuLWNvbHVtbnMtY3VzdG9tLXNwYW46IDM7XG59XG5cbmRpdltkYXRhLWNhbGxvdXQ9XCJjb2xcIl0uY20tY2FsbG91dCA+IGRpdi5jYWxsb3V0LWNvbnRlbnQgPiBkaXZbZGF0YS1jYWxsb3V0JD1cIi0zLjVcIl0sXG5kaXZbZGF0YS1jYWxsb3V0PVwiY29sXCJdLmNtLWNhbGxvdXQgPiBkaXYuY20tY2FsbG91dC1jb250ZW50ID4gZGl2W2RhdGEtY2FsbG91dCQ9XCItMy41XCJdLFxuZGl2W2RhdGEtY2FsbG91dD1cImNvbFwiXS5jbS1lbWJlZC1ibG9jayA+IGRpdi5jYWxsb3V0LWNvbnRlbnQgPiBkaXZbZGF0YS1jYWxsb3V0JD1cIi0zLjVcIl0sXG5kaXZbZGF0YS1jYWxsb3V0PVwiY29sXCJdLmNtLWVtYmVkLWJsb2NrID4gZGl2LmNtLWNhbGxvdXQtY29udGVudCA+IGRpdltkYXRhLWNhbGxvdXQkPVwiLTMuNVwiXSB7XG5cdC0tb2JzaWRpYW4tY29sdW1ucy1jdXN0b20tc3BhbjogMy41O1xufVxuXG5kaXZbZGF0YS1jYWxsb3V0PVwiY29sXCJdLmNtLWNhbGxvdXQgPiBkaXYuY2FsbG91dC1jb250ZW50ID4gZGl2W2RhdGEtY2FsbG91dCQ9XCItNFwiXSxcbmRpdltkYXRhLWNhbGxvdXQ9XCJjb2xcIl0uY20tY2FsbG91dCA+IGRpdi5jbS1jYWxsb3V0LWNvbnRlbnQgPiBkaXZbZGF0YS1jYWxsb3V0JD1cIi00XCJdLFxuZGl2W2RhdGEtY2FsbG91dD1cImNvbFwiXS5jbS1lbWJlZC1ibG9jayA+IGRpdi5jYWxsb3V0LWNvbnRlbnQgPiBkaXZbZGF0YS1jYWxsb3V0JD1cIi00XCJdLFxuZGl2W2RhdGEtY2FsbG91dD1cImNvbFwiXS5jbS1lbWJlZC1ibG9jayA+IGRpdi5jbS1jYWxsb3V0LWNvbnRlbnQgPiBkaXZbZGF0YS1jYWxsb3V0JD1cIi00XCJdIHtcblx0LS1vYnNpZGlhbi1jb2x1bW5zLWN1c3RvbS1zcGFuOiA0O1xufVxuXG5kaXZbZGF0YS1jYWxsb3V0PVwiY29sXCJdLmNtLWNhbGxvdXQgPiBkaXYuY2FsbG91dC1jb250ZW50ID4gZGl2W2RhdGEtY2FsbG91dCQ9XCItNC41XCJdLFxuZGl2W2RhdGEtY2FsbG91dD1cImNvbFwiXS5jbS1jYWxsb3V0ID4gZGl2LmNtLWNhbGxvdXQtY29udGVudCA+IGRpdltkYXRhLWNhbGxvdXQkPVwiLTQuNVwiXSxcbmRpdltkYXRhLWNhbGxvdXQ9XCJjb2xcIl0uY20tZW1iZWQtYmxvY2sgPiBkaXYuY2FsbG91dC1jb250ZW50ID4gZGl2W2RhdGEtY2FsbG91dCQ9XCItNC41XCJdLFxuZGl2W2RhdGEtY2FsbG91dD1cImNvbFwiXS5jbS1lbWJlZC1ibG9jayA+IGRpdi5jbS1jYWxsb3V0LWNvbnRlbnQgPiBkaXZbZGF0YS1jYWxsb3V0JD1cIi00LjVcIl0ge1xuXHQtLW9ic2lkaWFuLWNvbHVtbnMtY3VzdG9tLXNwYW46IDQuNTtcbn1cblxuZGl2W2RhdGEtY2FsbG91dD1cImNvbFwiXS5jbS1jYWxsb3V0ID4gZGl2LmNhbGxvdXQtY29udGVudCA+IGRpdltkYXRhLWNhbGxvdXQkPVwiLTVcIl0sXG5kaXZbZGF0YS1jYWxsb3V0PVwiY29sXCJdLmNtLWNhbGxvdXQgPiBkaXYuY20tY2FsbG91dC1jb250ZW50ID4gZGl2W2RhdGEtY2FsbG91dCQ9XCItNVwiXSxcbmRpdltkYXRhLWNhbGxvdXQ9XCJjb2xcIl0uY20tZW1iZWQtYmxvY2sgPiBkaXYuY2FsbG91dC1jb250ZW50ID4gZGl2W2RhdGEtY2FsbG91dCQ9XCItNVwiXSxcbmRpdltkYXRhLWNhbGxvdXQ9XCJjb2xcIl0uY20tZW1iZWQtYmxvY2sgPiBkaXYuY20tY2FsbG91dC1jb250ZW50ID4gZGl2W2RhdGEtY2FsbG91dCQ9XCItNVwiXSB7XG5cdC0tb2JzaWRpYW4tY29sdW1ucy1jdXN0b20tc3BhbjogNTtcbn1cblxuZGl2W2RhdGEtY2FsbG91dD1cImNvbFwiXS5jbS1jYWxsb3V0ID4gZGl2LmNhbGxvdXQtY29udGVudCA+IGRpdltkYXRhLWNhbGxvdXQkPVwiLTUuNVwiXSxcbmRpdltkYXRhLWNhbGxvdXQ9XCJjb2xcIl0uY20tY2FsbG91dCA+IGRpdi5jbS1jYWxsb3V0LWNvbnRlbnQgPiBkaXZbZGF0YS1jYWxsb3V0JD1cIi01LjVcIl0sXG5kaXZbZGF0YS1jYWxsb3V0PVwiY29sXCJdLmNtLWVtYmVkLWJsb2NrID4gZGl2LmNhbGxvdXQtY29udGVudCA+IGRpdltkYXRhLWNhbGxvdXQkPVwiLTUuNVwiXSxcbmRpdltkYXRhLWNhbGxvdXQ9XCJjb2xcIl0uY20tZW1iZWQtYmxvY2sgPiBkaXYuY20tY2FsbG91dC1jb250ZW50ID4gZGl2W2RhdGEtY2FsbG91dCQ9XCItNS41XCJdIHtcblx0LS1vYnNpZGlhbi1jb2x1bW5zLWN1c3RvbS1zcGFuOiA1LjU7XG59XG5cbmRpdltkYXRhLWNhbGxvdXQ9XCJjb2xcIl0uY20tY2FsbG91dCA+IGRpdi5jYWxsb3V0LWNvbnRlbnQgPiBkaXZbZGF0YS1jYWxsb3V0JD1cIi02XCJdLFxuZGl2W2RhdGEtY2FsbG91dD1cImNvbFwiXS5jbS1jYWxsb3V0ID4gZGl2LmNtLWNhbGxvdXQtY29udGVudCA+IGRpdltkYXRhLWNhbGxvdXQkPVwiLTZcIl0sXG5kaXZbZGF0YS1jYWxsb3V0PVwiY29sXCJdLmNtLWVtYmVkLWJsb2NrID4gZGl2LmNhbGxvdXQtY29udGVudCA+IGRpdltkYXRhLWNhbGxvdXQkPVwiLTZcIl0sXG5kaXZbZGF0YS1jYWxsb3V0PVwiY29sXCJdLmNtLWVtYmVkLWJsb2NrID4gZGl2LmNtLWNhbGxvdXQtY29udGVudCA+IGRpdltkYXRhLWNhbGxvdXQkPVwiLTZcIl0ge1xuXHQtLW9ic2lkaWFuLWNvbHVtbnMtY3VzdG9tLXNwYW46IDY7XG59XG5cbmRpdltkYXRhLWNhbGxvdXQ9XCJjb2xcIl0uY20tY2FsbG91dCA+IGRpdi5jYWxsb3V0LWNvbnRlbnQgPiBkaXZbZGF0YS1jYWxsb3V0JD1cIi02LjVcIl0sXG5kaXZbZGF0YS1jYWxsb3V0PVwiY29sXCJdLmNtLWNhbGxvdXQgPiBkaXYuY20tY2FsbG91dC1jb250ZW50ID4gZGl2W2RhdGEtY2FsbG91dCQ9XCItNi41XCJdLFxuZGl2W2RhdGEtY2FsbG91dD1cImNvbFwiXS5jbS1lbWJlZC1ibG9jayA+IGRpdi5jYWxsb3V0LWNvbnRlbnQgPiBkaXZbZGF0YS1jYWxsb3V0JD1cIi02LjVcIl0sXG5kaXZbZGF0YS1jYWxsb3V0PVwiY29sXCJdLmNtLWVtYmVkLWJsb2NrID4gZGl2LmNtLWNhbGxvdXQtY29udGVudCA+IGRpdltkYXRhLWNhbGxvdXQkPVwiLTYuNVwiXSB7XG5cdC0tb2JzaWRpYW4tY29sdW1ucy1jdXN0b20tc3BhbjogNi41O1xufVxuXG5kaXZbZGF0YS1jYWxsb3V0PVwiY29sXCJdLmNtLWNhbGxvdXQgPiBkaXYuY2FsbG91dC1jb250ZW50ID4gZGl2W2RhdGEtY2FsbG91dCQ9XCItN1wiXSxcbmRpdltkYXRhLWNhbGxvdXQ9XCJjb2xcIl0uY20tY2FsbG91dCA+IGRpdi5jbS1jYWxsb3V0LWNvbnRlbnQgPiBkaXZbZGF0YS1jYWxsb3V0JD1cIi03XCJdLFxuZGl2W2RhdGEtY2FsbG91dD1cImNvbFwiXS5jbS1lbWJlZC1ibG9jayA+IGRpdi5jYWxsb3V0LWNvbnRlbnQgPiBkaXZbZGF0YS1jYWxsb3V0JD1cIi03XCJdLFxuZGl2W2RhdGEtY2FsbG91dD1cImNvbFwiXS5jbS1lbWJlZC1ibG9jayA+IGRpdi5jbS1jYWxsb3V0LWNvbnRlbnQgPiBkaXZbZGF0YS1jYWxsb3V0JD1cIi03XCJdIHtcblx0LS1vYnNpZGlhbi1jb2x1bW5zLWN1c3RvbS1zcGFuOiA3O1xufVxuXG5kaXZbZGF0YS1jYWxsb3V0PVwiY29sXCJdLmNtLWNhbGxvdXQgPiBkaXYuY2FsbG91dC1jb250ZW50ID4gZGl2W2RhdGEtY2FsbG91dCQ9XCItNy41XCJdLFxuZGl2W2RhdGEtY2FsbG91dD1cImNvbFwiXS5jbS1jYWxsb3V0ID4gZGl2LmNtLWNhbGxvdXQtY29udGVudCA+IGRpdltkYXRhLWNhbGxvdXQkPVwiLTcuNVwiXSxcbmRpdltkYXRhLWNhbGxvdXQ9XCJjb2xcIl0uY20tZW1iZWQtYmxvY2sgPiBkaXYuY2FsbG91dC1jb250ZW50ID4gZGl2W2RhdGEtY2FsbG91dCQ9XCItNy41XCJdLFxuZGl2W2RhdGEtY2FsbG91dD1cImNvbFwiXS5jbS1lbWJlZC1ibG9jayA+IGRpdi5jbS1jYWxsb3V0LWNvbnRlbnQgPiBkaXZbZGF0YS1jYWxsb3V0JD1cIi03LjVcIl0ge1xuXHQtLW9ic2lkaWFuLWNvbHVtbnMtY3VzdG9tLXNwYW46IDcuNTtcbn1cblxuZGl2W2RhdGEtY2FsbG91dD1cImNvbFwiXS5jbS1jYWxsb3V0ID4gZGl2LmNhbGxvdXQtY29udGVudCA+IGRpdltkYXRhLWNhbGxvdXQkPVwiLThcIl0sXG5kaXZbZGF0YS1jYWxsb3V0PVwiY29sXCJdLmNtLWNhbGxvdXQgPiBkaXYuY20tY2FsbG91dC1jb250ZW50ID4gZGl2W2RhdGEtY2FsbG91dCQ9XCItOFwiXSxcbmRpdltkYXRhLWNhbGxvdXQ9XCJjb2xcIl0uY20tZW1iZWQtYmxvY2sgPiBkaXYuY2FsbG91dC1jb250ZW50ID4gZGl2W2RhdGEtY2FsbG91dCQ9XCItOFwiXSxcbmRpdltkYXRhLWNhbGxvdXQ9XCJjb2xcIl0uY20tZW1iZWQtYmxvY2sgPiBkaXYuY20tY2FsbG91dC1jb250ZW50ID4gZGl2W2RhdGEtY2FsbG91dCQ9XCItOFwiXSB7XG5cdC0tb2JzaWRpYW4tY29sdW1ucy1jdXN0b20tc3BhbjogODtcbn1cblxuZGl2W2RhdGEtY2FsbG91dD1cImNvbFwiXS5jbS1jYWxsb3V0ID4gZGl2LmNhbGxvdXQtY29udGVudCA+IGRpdltkYXRhLWNhbGxvdXQkPVwiLTguNVwiXSxcbmRpdltkYXRhLWNhbGxvdXQ9XCJjb2xcIl0uY20tY2FsbG91dCA+IGRpdi5jbS1jYWxsb3V0LWNvbnRlbnQgPiBkaXZbZGF0YS1jYWxsb3V0JD1cIi04LjVcIl0sXG5kaXZbZGF0YS1jYWxsb3V0PVwiY29sXCJdLmNtLWVtYmVkLWJsb2NrID4gZGl2LmNhbGxvdXQtY29udGVudCA+IGRpdltkYXRhLWNhbGxvdXQkPVwiLTguNVwiXSxcbmRpdltkYXRhLWNhbGxvdXQ9XCJjb2xcIl0uY20tZW1iZWQtYmxvY2sgPiBkaXYuY20tY2FsbG91dC1jb250ZW50ID4gZGl2W2RhdGEtY2FsbG91dCQ9XCItOC41XCJdIHtcblx0LS1vYnNpZGlhbi1jb2x1bW5zLWN1c3RvbS1zcGFuOiA4LjU7XG59XG5cbmRpdltkYXRhLWNhbGxvdXQ9XCJjb2xcIl0uY20tY2FsbG91dCA+IGRpdi5jYWxsb3V0LWNvbnRlbnQgPiBkaXZbZGF0YS1jYWxsb3V0JD1cIi05XCJdLFxuZGl2W2RhdGEtY2FsbG91dD1cImNvbFwiXS5jbS1jYWxsb3V0ID4gZGl2LmNtLWNhbGxvdXQtY29udGVudCA+IGRpdltkYXRhLWNhbGxvdXQkPVwiLTlcIl0sXG5kaXZbZGF0YS1jYWxsb3V0PVwiY29sXCJdLmNtLWVtYmVkLWJsb2NrID4gZGl2LmNhbGxvdXQtY29udGVudCA+IGRpdltkYXRhLWNhbGxvdXQkPVwiLTlcIl0sXG5kaXZbZGF0YS1jYWxsb3V0PVwiY29sXCJdLmNtLWVtYmVkLWJsb2NrID4gZGl2LmNtLWNhbGxvdXQtY29udGVudCA+IGRpdltkYXRhLWNhbGxvdXQkPVwiLTlcIl0ge1xuXHQtLW9ic2lkaWFuLWNvbHVtbnMtY3VzdG9tLXNwYW46IDk7XG59XG5cbmRpdltkYXRhLWNhbGxvdXQ9XCJjb2xcIl0uY20tY2FsbG91dCA+IGRpdi5jYWxsb3V0LWNvbnRlbnQgPiBkaXZbZGF0YS1jYWxsb3V0JD1cIi05LjVcIl0sXG5kaXZbZGF0YS1jYWxsb3V0PVwiY29sXCJdLmNtLWNhbGxvdXQgPiBkaXYuY20tY2FsbG91dC1jb250ZW50ID4gZGl2W2RhdGEtY2FsbG91dCQ9XCItOS41XCJdLFxuZGl2W2RhdGEtY2FsbG91dD1cImNvbFwiXS5jbS1lbWJlZC1ibG9jayA+IGRpdi5jYWxsb3V0LWNvbnRlbnQgPiBkaXZbZGF0YS1jYWxsb3V0JD1cIi05LjVcIl0sXG5kaXZbZGF0YS1jYWxsb3V0PVwiY29sXCJdLmNtLWVtYmVkLWJsb2NrID4gZGl2LmNtLWNhbGxvdXQtY29udGVudCA+IGRpdltkYXRhLWNhbGxvdXQkPVwiLTkuNVwiXSB7XG5cdC0tb2JzaWRpYW4tY29sdW1ucy1jdXN0b20tc3BhbjogOS41O1xufVxuXG5kaXZbZGF0YS1jYWxsb3V0PVwiY29sXCJdLmNtLWNhbGxvdXQgPiBkaXYuY2FsbG91dC1jb250ZW50ID4gZGl2W2RhdGEtY2FsbG91dCQ9XCItMTBcIl0sXG5kaXZbZGF0YS1jYWxsb3V0PVwiY29sXCJdLmNtLWNhbGxvdXQgPiBkaXYuY20tY2FsbG91dC1jb250ZW50ID4gZGl2W2RhdGEtY2FsbG91dCQ9XCItMTBcIl0sXG5kaXZbZGF0YS1jYWxsb3V0PVwiY29sXCJdLmNtLWVtYmVkLWJsb2NrID4gZGl2LmNhbGxvdXQtY29udGVudCA+IGRpdltkYXRhLWNhbGxvdXQkPVwiLTEwXCJdLFxuZGl2W2RhdGEtY2FsbG91dD1cImNvbFwiXS5jbS1lbWJlZC1ibG9jayA+IGRpdi5jbS1jYWxsb3V0LWNvbnRlbnQgPiBkaXZbZGF0YS1jYWxsb3V0JD1cIi0xMFwiXSB7XG5cdC0tb2JzaWRpYW4tY29sdW1ucy1jdXN0b20tc3BhbjogMTA7XG59XG4iLCAiLyogU2V0dGluZ3MgdGFiIFVJICovXHJcbi5jb2x1bW5zLXNldHRpbmdzLXJvb3QgLmNvbHVtbnMtc2V0dGluZ3MtdGFiLWJhciB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRnYXA6IDhweDtcclxuXHRmbGV4LXdyYXA6IHdyYXA7XHJcblx0cGFkZGluZy1ib3R0b206IDEycHg7XHJcblx0bWFyZ2luLWJvdHRvbTogMTZweDtcclxuXHRib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG59XHJcblxyXG4uY29sdW1ucy1zZXR0aW5ncy1yb290IC5jb2x1bW5zLXNldHRpbmdzLXRhYi1idG4ge1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbXV0ZWQpO1xyXG5cdGJvcmRlci1yYWRpdXM6IDhweDtcclxuXHRwYWRkaW5nOiA2cHggMTJweDtcclxuXHRmb250LXNpemU6IDAuODVyZW07XHJcblx0Zm9udC13ZWlnaHQ6IDYwMDtcclxuXHRsaW5lLWhlaWdodDogMTtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcbn1cclxuXHJcbi5jb2x1bW5zLXNldHRpbmdzLXJvb3QgLmNvbHVtbnMtc2V0dGluZ3MtdGFiLWJ0bjpob3ZlciB7XHJcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3Zlcik7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcclxufVxyXG5cclxuLmNvbHVtbnMtc2V0dGluZ3Mtcm9vdCAuY29sdW1ucy1zZXR0aW5ncy10YWItYnRuLmlzLWFjdGl2ZSB7XHJcblx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtb24tYWNjZW50KTtcclxufVxyXG5cclxuLmNvbHVtbnMtc2V0dGluZ3Mtcm9vdCAuY29sdW1ucy1zZXR0aW5ncy1wYW5lbCB7XHJcblx0ZGlzcGxheTogbm9uZTtcclxufVxyXG5cclxuLmNvbHVtbnMtc2V0dGluZ3Mtcm9vdCAuY29sdW1ucy1zZXR0aW5ncy1wYW5lbC5pcy1hY3RpdmUge1xyXG5cdGRpc3BsYXk6IGJsb2NrO1xyXG59XHJcblxyXG4uY29sdW1ucy1zZXR0aW5ncy1yb290IC5jb2x1bW5zLXNldHRpbmdzLXNlY3Rpb24tdGl0bGUge1xyXG5cdG1hcmdpbjogMjBweCAwIDhweDtcclxuXHRmb250LXNpemU6IDAuODJyZW07XHJcblx0Zm9udC13ZWlnaHQ6IDcwMDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuXHRsZXR0ZXItc3BhY2luZzogMC4wNGVtO1xyXG59XHJcblxyXG4uY29sdW1ucy1zZXR0aW5ncy1yb290IC5jb2x1bW5zLXNldHRpbmdzLXNlY3Rpb24tdGl0bGU6Zmlyc3QtY2hpbGQge1xyXG5cdG1hcmdpbi10b3A6IDA7XHJcbn1cclxuXHJcbi5jb2x1bW5zLXNldHRpbmdzLXJvb3QgLnNldHRpbmctaXRlbSB7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeS1hbHQpO1xyXG5cdGJvcmRlci1yYWRpdXM6IDEwcHg7XHJcblx0cGFkZGluZzogMTBweCAxMnB4O1xyXG5cdG1hcmdpbi1ib3R0b206IDhweDtcclxufVxyXG5cclxuLmNvbHVtbnMtc2V0dGluZ3Mtcm9vdCAuc2V0dGluZy1pdGVtLWNvbnRyb2wgLnNsaWRlciB7XHJcblx0d2lkdGg6IDEzMHB4O1xyXG59XHJcblxyXG4uY29sdW1ucy1zZXR0aW5ncy1yb290IC5jb2x1bW5zLXNldHRpbmdzLW51bWJlci1pbnB1dCB7XHJcblx0d2lkdGg6IDY0cHg7XHJcblx0dGV4dC1hbGlnbjogY2VudGVyO1xyXG59XHJcblxyXG4vKiBBYm91dCB0YWIgKi9cclxuLmNvbHVtbnMtc2V0dGluZ3MtYWJvdXQge1xyXG5cdGRpc3BsYXk6IGZsZXg7XHJcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHRnYXA6IDIwcHg7XHJcbn1cclxuXHJcbi5jb2x1bW5zLXNldHRpbmdzLWFib3V0LWluZm8ge1xyXG5cdHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHRwYWRkaW5nOiAxNnB4IDAgOHB4O1xyXG59XHJcblxyXG4uY29sdW1ucy1zZXR0aW5ncy1hYm91dC1uYW1lIHtcclxuXHRmb250LXNpemU6IDEuMXJlbTtcclxuXHRmb250LXdlaWdodDogNzAwO1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcbn1cclxuXHJcbi5jb2x1bW5zLXNldHRpbmdzLWFib3V0LXZlcnNpb24ge1xyXG5cdGZvbnQtc2l6ZTogMC44MnJlbTtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0bWFyZ2luLXRvcDogMnB4O1xyXG59XHJcblxyXG4uY29sdW1ucy1zZXR0aW5ncy1hYm91dC1saW5rcyB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRmbGV4LXdyYXA6IHdyYXA7XHJcblx0Z2FwOiA4cHg7XHJcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbn1cclxuXHJcbi5jb2x1bW5zLXNldHRpbmdzLWFib3V0LWxpbmsge1xyXG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuXHRwYWRkaW5nOiA1cHggMTJweDtcclxuXHRmb250LXNpemU6IDAuODJyZW07XHJcblx0Zm9udC13ZWlnaHQ6IDUwMDtcclxuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XHJcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xyXG5cdGJvcmRlci1yYWRpdXM6IDZweDtcclxuXHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcblx0dHJhbnNpdGlvbjogY29sb3IgMC4xNXMgZWFzZSwgYm9yZGVyLWNvbG9yIDAuMTVzIGVhc2U7XHJcbn1cclxuXHJcbi5jb2x1bW5zLXNldHRpbmdzLWFib3V0LWxpbms6aG92ZXIge1xyXG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XHJcblx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xyXG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxufVxyXG5cclxuLmNvbHVtbnMtc2V0dGluZ3MtYWJvdXQtc3VwcG9ydCxcclxuLmNvbHVtbnMtc2V0dGluZ3MtYWJvdXQtb3RoZXJzIHtcclxuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbn1cclxuXHJcbi5jb2x1bW5zLXNldHRpbmdzLWFib3V0LXN1cHBvcnQtbGFiZWwge1xyXG5cdGZvbnQtc2l6ZTogMC44cmVtO1xyXG5cdGZvbnQtd2VpZ2h0OiA2MDA7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtZmFpbnQpO1xyXG5cdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcblx0bGV0dGVyLXNwYWNpbmc6IDAuMDRlbTtcclxuXHRtYXJnaW4tYm90dG9tOiA4cHg7XHJcbn1cclxuXHJcbi8qIFx1MjUwMFx1MjUwMCBIZWFkZXIgdHlwZXMgbGlzdCBcdTI1MDBcdTI1MDAgKi9cclxuXHJcbi5jb2x1bW5zLWhlYWRlci10eXBlcy1saXN0IHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblx0Z2FwOiAxMnB4O1xyXG59XHJcblxyXG4uY29sdW1ucy1oZWFkZXItdHlwZS1yb3cge1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcclxuXHRib3JkZXItcmFkaXVzOiAxMHB4O1xyXG5cdG92ZXJmbG93OiBoaWRkZW47XHJcblx0ZGlzcGxheTogZ3JpZDtcclxuXHRhbGlnbi1pdGVtczogc3RyZXRjaDtcclxufVxyXG5cclxuLmNvbHVtbnMtaGVhZGVyLXR5cGUtcHJldmlldyB7XHJcblx0ZGlzcGxheTogZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGdhcDogNnB4O1xyXG5cdHBhZGRpbmc6IDZweCAxMHB4O1xyXG5cdGxpbmUtaGVpZ2h0OiAxLjQ7XHJcblx0aGVpZ2h0OiAxMDAlO1xyXG59XHJcblxyXG4uY29sdW1ucy1oZWFkZXItdHlwZS1wcmV2aWV3LWljb24ge1xyXG5cdGRpc3BsYXk6IGlubGluZS1mbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0ZmxleC1zaHJpbms6IDA7XHJcbn1cclxuXHJcbi5jb2x1bW5zLWhlYWRlci10eXBlLXByZXZpZXctaWNvbiAuc3ZnLWljb24ge1xyXG5cdHdpZHRoOiAxNnB4O1xyXG5cdGhlaWdodDogMTZweDtcclxufVxyXG5cclxuLmNvbHVtbnMtaGVhZGVyLXR5cGUtcHJldmlldy1pZCB7XHJcblx0Zm9udC13ZWlnaHQ6IGluaGVyaXQ7XHJcbn1cclxuXHJcbi5jb2x1bW5zLWhlYWRlci10eXBlLXByZXZpZXctYmFkZ2Uge1xyXG5cdG1hcmdpbi1sZWZ0OiBhdXRvO1xyXG5cdGZvbnQtc2l6ZTogMC43MmVtO1xyXG5cdGZvbnQtd2VpZ2h0OiA1MDA7XHJcblx0b3BhY2l0eTogMC42O1xyXG5cdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcblx0bGV0dGVyLXNwYWNpbmc6IDAuMDRlbTtcclxufVxyXG5cclxuLmNvbHVtbnMtaGVhZGVyLXR5cGUtZGVsZXRlLWJ0biB7XHJcblx0ZGlzcGxheTogaW5saW5lLWZsZXg7XHJcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcclxuXHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0b3BhY2l0eTogMC41O1xyXG5cdG1hcmdpbi1sZWZ0OiA2cHg7XHJcblx0Y29sb3I6IHZhcigtLXRleHQtZXJyb3IpO1xyXG59XHJcblxyXG4uY29sdW1ucy1oZWFkZXItdHlwZS1kZWxldGUtYnRuOmhvdmVyIHtcclxuXHRvcGFjaXR5OiAxO1xyXG59XHJcblxyXG4uY29sdW1ucy1oZWFkZXItdHlwZS1kZWxldGUtYnRuIC5zdmctaWNvbiB7XHJcblx0d2lkdGg6IDE0cHg7XHJcblx0aGVpZ2h0OiAxNHB4O1xyXG59XHJcblxyXG4uY29sdW1ucy1oZWFkZXItdHlwZS1jb250cm9scyB7XHJcblx0cGFkZGluZzogOHB4IDEycHg7XHJcblx0ZGlzcGxheTogZ3JpZDtcclxuXHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdChhdXRvLWZpdCwgbWlubWF4KDIyMHB4LCAxZnIpKTtcclxuXHRnYXA6IDAgMTZweDtcclxufVxyXG5cclxuLmNvbHVtbnMtaGVhZGVyLXR5cGUtY29udHJvbHMgLnNldHRpbmctaXRlbS5jb2x1bW5zLWhlYWRlci10eXBlLXNldHRpbmcge1xyXG5cdGJvcmRlcjogbm9uZTtcclxuXHRiYWNrZ3JvdW5kOiBub25lO1xyXG5cdGJvcmRlci1yYWRpdXM6IDA7XHJcblx0cGFkZGluZzogNnB4IDA7XHJcblx0bWFyZ2luLWJvdHRvbTogMDtcclxuXHRtaW4td2lkdGg6IDA7XHJcbn1cclxuXHJcbi5jb2x1bW5zLWhlYWRlci10eXBlLWNvbnRyb2xzIC5zZXR0aW5nLWl0ZW0uY29sdW1ucy1oZWFkZXItdHlwZS1zZXR0aW5nIC5zZXR0aW5nLWl0ZW0taW5mbyxcclxuLmNvbHVtbnMtaGVhZGVyLXR5cGUtY29udHJvbHMgLnNldHRpbmctaXRlbS5jb2x1bW5zLWhlYWRlci10eXBlLXNldHRpbmcgLnNldHRpbmctaXRlbS1jb250cm9sIHtcclxuXHRtaW4td2lkdGg6IDA7XHJcbn1cclxuXHJcbi5jb2x1bW5zLWhlYWRlci10eXBlLWNvbnRyb2xzIC5jb2x1bW5zLXNldHRpbmdzLW51bWJlci1pbnB1dCB7XHJcblx0d2lkdGg6IDk2cHg7XHJcblx0dGV4dC1hbGlnbjogbGVmdDtcclxufVxyXG5cclxuQG1lZGlhIChtYXgtd2lkdGg6IDkwMHB4KSB7XHJcblx0LmNvbHVtbnMtaGVhZGVyLXR5cGUtcm93IHtcclxuXHRcdGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xyXG5cdH1cclxufVxyXG5cclxuLyogXHUyNTAwXHUyNTAwIEljb24gc3VnZ2VzdCBkcm9wZG93biBcdTI1MDBcdTI1MDAgKi9cclxuXHJcbi5jb2x1bW5zLWljb24tc3VnZ2VzdC1pdGVtIHtcclxuXHRkaXNwbGF5OiBmbGV4O1xyXG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcblx0Z2FwOiA4cHg7XHJcblx0cGFkZGluZzogMnB4IDA7XHJcbn1cclxuXHJcbi5jb2x1bW5zLWljb24tc3VnZ2VzdC1pY29uIHtcclxuXHRkaXNwbGF5OiBpbmxpbmUtZmxleDtcclxuXHRhbGlnbi1pdGVtczogY2VudGVyO1xyXG5cdGZsZXgtc2hyaW5rOiAwO1xyXG59XHJcblxyXG4uY29sdW1ucy1pY29uLXN1Z2dlc3QtaWNvbiAuc3ZnLWljb24ge1xyXG5cdHdpZHRoOiAxNnB4O1xyXG5cdGhlaWdodDogMTZweDtcclxufVxyXG4iLCAiLyogSW5saW5lIHN0eWxlIHBvcG92ZXIgKGN1c3RvbSByaWdodC1jbGljayBtZW51KSAqL1xuLmNvbHVtbnMtc3R5bGUtcG9wb3ZlciB7XG5cdHBvc2l0aW9uOiBmaXhlZDtcblx0ei1pbmRleDogMjEwMDtcblx0bWluLXdpZHRoOiAyODBweDtcblx0bWF4LXdpZHRoOiAzMjBweDtcblx0bWF4LWhlaWdodDogbWluKDc4dmgsIDY0MHB4KTtcblx0cGFkZGluZzogOHB4O1xuXHRib3JkZXItcmFkaXVzOiAxMHB4O1xuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtcHJpbWFyeSk7XG5cdGJveC1zaGFkb3c6IHZhcigtLXNoYWRvdy1zKTtcblx0ZGlzcGxheTogZmxleDtcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0Z2FwOiAycHg7XG5cdG92ZXJmbG93LXk6IGF1dG87XG5cdG92ZXJmbG93LXg6IGhpZGRlbjtcblx0c2Nyb2xsYmFyLWd1dHRlcjogc3RhYmxlO1xufVxuXG4uY29sdW1ucy1zdHlsZS1wb3BvdmVyLXNlY3Rpb24ge1xuXHRwYWRkaW5nOiA0cHggOHB4IDJweDtcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsZXIpO1xuXHRjb2xvcjogdmFyKC0tdGV4dC1tdXRlZCk7XG59XG5cbi5jb2x1bW5zLXN0eWxlLXBvcG92ZXItc2VjdGlvbi1pbmxpbmUge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG5cdGdhcDogOHB4O1xufVxuXG4uY29sdW1ucy1zdHlsZS1wb3BvdmVyLXNlY3Rpb24taW5saW5lIC5jb2x1bW5zLXN0eWxlLXBvcG92ZXItc2VjdGlvbiB7XG5cdHBhZGRpbmctcmlnaHQ6IDA7XG59XG5cbi5jb2x1bW5zLXN0eWxlLXBvcG92ZXItbWluaS1idG4ge1xuXHRoZWlnaHQ6IDIycHg7XG5cdHBhZGRpbmc6IDAgOHB4O1xuXHRib3JkZXItcmFkaXVzOiA2cHg7XG5cdGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItYm9yZGVyKTtcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1zZWNvbmRhcnkpO1xuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGxlcik7XG5cdGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLmNvbHVtbnMtc3R5bGUtcG9wb3Zlci1taW5pLWJ0bjpob3ZlciB7XG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtbW9kaWZpZXItaG92ZXIpO1xufVxuXG4uY29sdW1ucy1zdHlsZS1wb3BvdmVyLWRpdmlkZXIge1xuXHRoZWlnaHQ6IDFweDtcblx0bWFyZ2luOiA0cHggMnB4O1xuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XG59XG5cbi5jb2x1bW5zLXN0eWxlLXBvcG92ZXItcm93IHtcblx0d2lkdGg6IDEwMCU7XG5cdGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuXHRib3JkZXItcmFkaXVzOiA2cHg7XG5cdHBhZGRpbmc6IDZweCA4cHg7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcblx0Z2FwOiAxMHB4O1xuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xuXHRjdXJzb3I6IHBvaW50ZXI7XG5cdHRleHQtYWxpZ246IGxlZnQ7XG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbCk7XG59XG5cbi5jb2x1bW5zLXN0eWxlLXBvcG92ZXItcm93OmhvdmVyIHtcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3Zlcik7XG59XG5cbi5jb2x1bW5zLXN0eWxlLXBvcG92ZXItY2hlY2tib3gge1xuXHR3aWR0aDogMjVweDtcbiAgICBoZWlnaHQ6IDI1cHg7XG4gICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xuICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBmbGV4OiAwIDAgMjVweDtcbiAgICBwYWRkaW5nOiAwIDAgMnB4O1xufVxuXG4uY29sdW1ucy1zdHlsZS1wb3BvdmVyLWNoZWNrYm94LW1hcmsge1xuXHRvcGFjaXR5OiAwO1xuXHRmb250LXNpemU6IDEzcHg7XG5cdGxpbmUtaGVpZ2h0OiAxO1xuXHRjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xufVxuXG4uY29sdW1ucy1zdHlsZS1wb3BvdmVyLXJvdy5pcy1jaGVja2VkIC5jb2x1bW5zLXN0eWxlLXBvcG92ZXItY2hlY2tib3gge1xuXHRib3JkZXItY29sb3I6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XG5cdGJhY2tncm91bmQ6IHZhcigtLWludGVyYWN0aXZlLWFjY2VudCk7XG59XG5cbi5jb2x1bW5zLXN0eWxlLXBvcG92ZXItcm93LmlzLWNoZWNrZWQgLmNvbHVtbnMtc3R5bGUtcG9wb3Zlci1jaGVja2JveC1tYXJrIHtcblx0b3BhY2l0eTogMTtcblx0Y29sb3I6IHZhcigtLXRleHQtb24tYWNjZW50KTtcbn1cblxuLmNvbHVtbnMtc3R5bGUtcG9wb3Zlci1yb3ctbGFiZWwge1xuXHRmbGV4OiAxIDEgYXV0bztcbn1cblxuLmNvbHVtbnMtc3R5bGUtcG9wb3Zlci1pbmxpbmUtYnV0dG9ucyB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdGdhcDogOHB4O1xuXHRwYWRkaW5nOiA0cHggOHB4O1xufVxuXG4uY29sdW1ucy1zdHlsZS1wb3BvdmVyLWlubGluZS1idG4ge1xuXHRmbGV4OiAxIDEgMCU7XG5cdG1pbi1oZWlnaHQ6IDI4cHg7XG5cdHBhZGRpbmc6IDRweCA4cHg7XG5cdGJvcmRlci1yYWRpdXM6IDZweDtcblx0Ym9yZGVyOiAxcHggc29saWQgdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ib3JkZXIpO1xuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLXNlY29uZGFyeSk7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LW5vcm1hbCk7XG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbCk7XG5cdGN1cnNvcjogcG9pbnRlcjtcblx0ZGlzcGxheTogaW5saW5lLWZsZXg7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuXG4uY29sdW1ucy1zdHlsZS1wb3BvdmVyLWlubGluZS1idG4gLnN2Zy1pY29uIHtcblx0d2lkdGg6IDE2cHg7XG5cdGhlaWdodDogMTZweDtcbn1cblxuLmNvbHVtbnMtc3R5bGUtcG9wb3Zlci1pbmxpbmUtYnRuOmhvdmVyIHtcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3Zlcik7XG59XG5cbi5jb2x1bW5zLXN0eWxlLXBvcG92ZXItaW5saW5lLWJ0bi1kYW5nZXIge1xuXHRjb2xvcjogdmFyKC0tdGV4dC1lcnJvcik7XG5cdGJvcmRlci1jb2xvcjogdmFyKC0tdGV4dC1lcnJvcik7XG59XG5cbi5jb2x1bW5zLXN0eWxlLXBvcG92ZXItaW5saW5lLWJ0bi1kYW5nZXI6aG92ZXIge1xuXHRiYWNrZ3JvdW5kOiB2YXIoLS10ZXh0LWVycm9yKTtcblx0Y29sb3I6IHZhcigtLXRleHQtb24tYWNjZW50KTtcbn1cblxuLmNvbHVtbnMtc3R5bGUtcG9wb3Zlci1zZWxlY3Qtcm93IHtcblx0ZGlzcGxheTogZmxleDtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXHRnYXA6IDEwcHg7XG5cdHBhZGRpbmc6IDZweCA4cHg7XG5cdGJvcmRlci1yYWRpdXM6IDZweDtcbn1cblxuLmNvbHVtbnMtc3R5bGUtcG9wb3Zlci1zZWxlY3Qtcm93OmhvdmVyIHtcblx0YmFja2dyb3VuZDogdmFyKC0tYmFja2dyb3VuZC1tb2RpZmllci1ob3Zlcik7XG59XG5cbi5jb2x1bW5zLXN0eWxlLXBvcG92ZXItc2VsZWN0LWxhYmVsIHtcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsKTtcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcbn1cblxuLmNvbHVtbnMtc3R5bGUtcG9wb3Zlci1zZWxlY3Qge1xuXHRtaW4td2lkdGg6IDEyNHB4O1xuXHRtYXgtd2lkdGg6IDE1NnB4O1xuXHRoZWlnaHQ6IDI4cHg7XG59XG5cbi8qIENvbGxhcHNpYmxlIHNlY3Rpb25zICovXG4uY29sdW1ucy1zdHlsZS1wb3BvdmVyLWNvbGxhcHNpYmxlIHtcblx0ZGlzcGxheTogZmxleDtcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0Z2FwOiAycHg7XG59XG5cbi5jb2x1bW5zLXN0eWxlLXBvcG92ZXItY29sbGFwc2libGUtaGVhZGVyIHtcblx0ZGlzcGxheTogZmxleDtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0Z2FwOiA2cHg7XG5cdHBhZGRpbmc6IDRweCA4cHggMnB4O1xuXHRjdXJzb3I6IHBvaW50ZXI7XG5cdGJvcmRlci1yYWRpdXM6IDZweDtcbn1cblxuLmNvbHVtbnMtc3R5bGUtcG9wb3Zlci1jb2xsYXBzaWJsZS1oZWFkZXI6aG92ZXIge1xuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyKTtcbn1cblxuLmNvbHVtbnMtc3R5bGUtcG9wb3Zlci1jaGV2cm9uIHtcblx0Zm9udC1zaXplOiA4cHg7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LWZhaW50KTtcblx0ZmxleDogMCAwIDEwcHg7XG5cdHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLmNvbHVtbnMtc3R5bGUtcG9wb3Zlci1jb2xsYXBzaWJsZS1sYWJlbCB7XG5cdGZsZXg6IDEgMSBhdXRvO1xuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGxlcik7XG5cdGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcblx0Zm9udC13ZWlnaHQ6IDUwMDtcbn1cblxuLmNvbHVtbnMtc3R5bGUtcG9wb3Zlci1jb2xsYXBzaWJsZS1oZWFkZXIgLmNvbHVtbnMtc3R5bGUtcG9wb3Zlci1taW5pLWJ0biB7XG5cdGZsZXg6IDAgMCBhdXRvO1xufVxuXG4uY29sdW1ucy1zdHlsZS1wb3BvdmVyLWNvbGxhcHNpYmxlLWJvZHkge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRnYXA6IDJweDtcblx0cGFkZGluZy1sZWZ0OiA0cHg7XG59XG5cbi5jb2x1bW5zLXN0eWxlLXBvcG92ZXItY29sbGFwc2libGUtYm9keS5pcy1jb2xsYXBzZWQge1xuXHRkaXNwbGF5OiBub25lO1xufVxuXG4vKiBJbmxpbmUgdG9nZ2xlICsgc2VsZWN0IHJvdyAqL1xuLmNvbHVtbnMtc3R5bGUtcG9wb3Zlci1pbmxpbmUtdG9nZ2xlLXNlbGVjdCB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdGdhcDogOHB4O1xuXHRwYWRkaW5nOiA2cHggOHB4O1xuXHRib3JkZXItcmFkaXVzOiA2cHg7XG59XG5cbi5jb2x1bW5zLXN0eWxlLXBvcG92ZXItaW5saW5lLXRvZ2dsZS1zZWxlY3Q6aG92ZXIge1xuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyKTtcbn1cblxuLmNvbHVtbnMtc3R5bGUtcG9wb3Zlci1pbmxpbmUtdG9nZ2xlLXNlbGVjdCAuY29sdW1ucy1zdHlsZS1wb3BvdmVyLXNlbGVjdC1sYWJlbCB7XG5cdGZsZXg6IDEgMSBhdXRvO1xufVxuXG4uY29sdW1ucy1zdHlsZS1wb3BvdmVyLWlubGluZS10b2dnbGUtc2VsZWN0IC5jb2x1bW5zLXN0eWxlLXBvcG92ZXItY2hlY2tib3gge1xuXHRjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi5jb2x1bW5zLXN0eWxlLXBvcG92ZXItaW5saW5lLXRvZ2dsZS1zZWxlY3QgLmNvbHVtbnMtc3R5bGUtcG9wb3Zlci1jaGVja2JveC5pcy1jaGVja2VkIHtcblx0Ym9yZGVyLWNvbG9yOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xuXHRiYWNrZ3JvdW5kOiB2YXIoLS1pbnRlcmFjdGl2ZS1hY2NlbnQpO1xufVxuXG4uY29sdW1ucy1zdHlsZS1wb3BvdmVyLWlubGluZS10b2dnbGUtc2VsZWN0IC5jb2x1bW5zLXN0eWxlLXBvcG92ZXItY2hlY2tib3guaXMtY2hlY2tlZCAuY29sdW1ucy1zdHlsZS1wb3BvdmVyLWNoZWNrYm94LW1hcmsge1xuXHRvcGFjaXR5OiAxO1xuXHRjb2xvcjogdmFyKC0tdGV4dC1vbi1hY2NlbnQpO1xufVxuXG4uY29sdW1ucy1zdHlsZS1wb3BvdmVyLWlubGluZS10b2dnbGUtc2VsZWN0IC5jb2x1bW5zLXN0eWxlLXBvcG92ZXItc2VsZWN0IHtcblx0bWluLXdpZHRoOiAxMDBweDtcblx0bWF4LXdpZHRoOiAxMjBweDtcbn1cblxuLyogQ29tcGFjdCBtdWx0aS1zZWxlY3Qgcm93IChzdHlsZSArIGNvbG9yICsgd2lkdGggaW5saW5lKSAqL1xuLmNvbHVtbnMtc3R5bGUtcG9wb3Zlci1jb21wYWN0LXJvdyB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdGdhcDogOHB4O1xuXHRwYWRkaW5nOiA2cHggOHB4O1xuXHRib3JkZXItcmFkaXVzOiA2cHg7XG59XG5cbi5jb2x1bW5zLXN0eWxlLXBvcG92ZXItY29tcGFjdC1yb3c6aG92ZXIge1xuXHRiYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWhvdmVyKTtcbn1cblxuLmNvbHVtbnMtc3R5bGUtcG9wb3Zlci1jb21wYWN0LXJvdyAuY29sdW1ucy1zdHlsZS1wb3BvdmVyLXNlbGVjdC1sYWJlbCB7XG5cdGZsZXg6IDAgMCBhdXRvO1xufVxuXG4uY29sdW1ucy1zdHlsZS1wb3BvdmVyLWNvbXBhY3Qtc2VsZWN0cyB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdGdhcDogNHB4O1xuXHRmbGV4OiAxIDEgYXV0bztcblx0anVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbn1cblxuLmNvbHVtbnMtc3R5bGUtcG9wb3Zlci1jb21wYWN0LXNlbGVjdCB7XG5cdGhlaWdodDogMjhweDtcblx0bWluLXdpZHRoOiAwO1xuXHRmbGV4OiAxIDEgMCU7XG5cdG1heC13aWR0aDogODBweDtcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsZXIpO1xufVxuXG4vKiBUZXh0IGlucHV0IGZvciBjdXN0b20gc2VwYXJhdG9yIGNoYXJhY3RlciAqL1xuLmNvbHVtbnMtc3R5bGUtcG9wb3Zlci10ZXh0LWlucHV0IHtcblx0bWluLXdpZHRoOiA2MHB4O1xuXHRtYXgtd2lkdGg6IDgwcHg7XG5cdGhlaWdodDogMjhweDtcblx0cGFkZGluZzogMnB4IDhweDtcblx0Ym9yZGVyLXJhZGl1czogNnB4O1xuXHRib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1iYWNrZ3JvdW5kLW1vZGlmaWVyLWJvcmRlcik7XG5cdGJhY2tncm91bmQ6IHZhcigtLWJhY2tncm91bmQtc2Vjb25kYXJ5KTtcblx0Y29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsKTtcblx0dGV4dC1hbGlnbjogY2VudGVyO1xufVxuIl0sCiAgIm1hcHBpbmdzIjogIjtBQUFBO0FBQ0ksMEJBQXdCO0FBQ3hCLDhCQUE0QixFQUFFO0FBQzlCLGdDQUE4QjtBQUM5QiwrQkFBNkI7QUFDakM7QUFTQSxDQUFDLHFCQUFxQixDQUFDLDJCQUEyQixFQUFFLENBQUMsdUJBQXVCLEVBQUUsQ0FBQztBQUM5RSxXQUFTO0FBQ1Y7QUFHQSxDQUxDLHFCQUtxQixDQUxDLDJCQUsyQixFQUFFLENBTEMsdUJBS3VCLEVBQUUsQ0FBQztB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 */ +:root{--obsidian-columns-gap: 20px;--obsidian-columns-padding: 0 20px;--obsidian-columns-min-width: 100px;--obsidian-columns-def-span: 1}.markdown-preview-view.amc-reading-columns-active>.markdown-preview-sizer>.amc-rv-hidden{display:none!important}.markdown-preview-view.amc-reading-columns-active>.markdown-preview-sizer{min-height:0!important;height:auto!important;padding-bottom:0!important}.markdown-preview-view>.amc-reading-columns-host{display:none}.markdown-preview-view.amc-reading-columns-active>.amc-reading-columns-host{display:block;width:100%;box-sizing:border-box}.markdown-preview-view.amc-reading-columns-active>.mod-footer{width:100%;box-sizing:border-box}.markdown-preview-view.amc-reading-columns-active.is-readable-line-width>.amc-reading-columns-host,.markdown-preview-view.amc-reading-columns-active.is-readable-line-width>.mod-footer{max-width:var(--file-line-width);margin:0 auto}.markdown-preview-view.amc-reading-columns-active>.amc-reading-columns-host>.columns-rv-wrapper{display:block;width:100%}.columns-container{--columns-block-default-border-width: 1px;--columns-block-default-border-color: var(--background-modifier-border);display:flex!important;flex-direction:row!important;flex-wrap:nowrap!important;align-items:stretch!important;width:100%;margin:12px 0;border-radius:8px;padding:4px;background:var(--background-primary);position:relative;box-sizing:border-box}.columns-container.columns-resizing{cursor:col-resize}.columns-container.columns-nested{margin:8px 0;min-height:0;padding:3px}.columns-container.columns-nested .column-item{min-height:32px;padding:8px 10px}.columns-container.columns-nested .column-toolbar{opacity:1!important;display:flex!important;pointer-events:none}.columns-container.columns-nested :is(.column-drag-handle,.column-add-btn,.column-remove-btn){opacity:0;pointer-events:none;transition:opacity .15s ease}.columns-container.columns-nested .column-item:hover :is(.column-drag-handle,.column-add-btn,.column-remove-btn),.columns-container.columns-nested .column-item.is-editing :is(.column-drag-handle,.column-add-btn,.column-remove-btn){opacity:1;pointer-events:auto}.columns-container .column-item{position:relative;flex:1 1 0%;min-width:0;padding:10px 14px;border:1px solid transparent;border-radius:6px;transition:border-color .15s ease,background-color .15s ease;box-sizing:border-box;overflow:visible}.columns-container .column-item:hover{border-color:var(--background-modifier-border);background:var(--columns-col-bg, transparent)}.columns-container .column-item.is-editing,.columns-container .column-item.is-editing:hover{border-color:transparent;background:var(--columns-col-bg, transparent)}.columns-container .column-item.columns-custom-style{background:var(--columns-col-bg, transparent);color:var(--columns-col-text, inherit);border-style:solid;border-color:var(--columns-col-border-color, transparent);border-width:var(--columns-col-border-width, 0px);border-top-width:var( --columns-col-horizontal-width, var(--columns-col-border-width, 0px) );border-bottom-width:var( --columns-col-horizontal-width, var(--columns-col-border-width, 0px) )}.columns-container .column-item.columns-custom-style[style*=--columns-col-text] :is(a,a.internal-link,a.external-link,a.tag,.cm-link,.cm-hmd-internal-link){color:inherit}.columns-container .column-item.columns-custom-style:hover,.columns-container .column-item.columns-custom-style.is-editing{background:var(--columns-col-bg, transparent);border-color:var(--columns-col-border-color, transparent)}.columns-container.columns-custom-style{background:var(--columns-block-bg, var(--background-primary))!important;color:var(--columns-block-text, inherit)!important;border-style:solid!important;border-color:var( --columns-block-border-color, var(--columns-block-default-border-color) )!important;border-width:var( --columns-block-border-width, var(--columns-block-default-border-width) )!important;border-top-width:var( --columns-block-horizontal-width, var( --columns-block-border-width, var(--columns-block-default-border-width) ) )!important;border-bottom-width:var( --columns-block-horizontal-width, var( --columns-block-border-width, var(--columns-block-default-border-width) ) )!important}.columns-container .column-header{display:flex;align-items:center;gap:6px;padding:6px 10px;margin:-10px -14px 6px!important;border-radius:4px 4px 0 0;-webkit-user-select:none;user-select:none;line-height:1.4}.columns-container .column-item.columns-left-border>.column-header{border-radius:0 4px 0 0}.columns-container .column-header-icon{display:inline-flex;align-items:center;flex-shrink:0}.columns-container .column-header-icon .svg-icon{width:16px;height:16px}.columns-container .column-header-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.columns-container .column-item.columns-left-border{border-top:none!important;border-right:none!important;border-bottom:none!important;border-left:3px solid var(--columns-left-border-color, var(--columns-col-border-color, var(--interactive-accent)))!important;border-radius:0 6px 6px 0}.columns-container .column-toolbar{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;position:absolute;top:2px;right:2px;opacity:0;transition:opacity .15s ease;z-index:5;pointer-events:none}.columns-container .column-toolbar-actions{display:flex;flex-direction:column;align-items:center;gap:0px}.columns-container .column-item:hover .column-toolbar,.columns-container .column-item.is-editing .column-toolbar{opacity:1;pointer-events:auto}.columns-container .column-drag-handle{cursor:grab;color:var(--text-faint);padding:2px 4px;border-radius:3px;line-height:1;border:none;background:none;height:20px;display:inline-flex;align-items:center;justify-content:center;transition:color .15s ease,background-color .15s ease}.columns-container .column-drag-handle .svg-icon{width:14px;height:14px}.columns-container .column-drag-handle:hover{color:var(--interactive-accent);background:var(--background-modifier-hover)}.columns-container .column-drag-handle:active{cursor:grabbing;color:var(--interactive-accent)}.columns-container .column-add-btn{cursor:pointer;color:var(--text-faint);padding:2px 4px;border-radius:3px;line-height:1;border:none;background:none;height:20px!important;display:inline-flex;align-items:center;justify-content:center;box-shadow:none}.columns-container .column-add-btn .svg-icon{width:14px;height:14px}.columns-container .column-add-btn:hover{color:var(--text-normal);background:var(--background-modifier-hover)}.columns-container .column-preview{cursor:text;-webkit-user-select:text;user-select:text;display:flow-root}.columns-container .column-preview>*:first-child{margin-top:0}.columns-container .column-preview>*:last-child{margin-bottom:0}.columns-container .column-item .column-preview.markdown-rendered p,.columns-container .column-item .column-preview.markdown-rendered h1,.columns-container .column-item .column-preview.markdown-rendered h2,.columns-container .column-item .column-preview.markdown-rendered h3,.columns-container .column-item .column-preview.markdown-rendered h4,.columns-container .column-item .column-preview.markdown-rendered h5,.columns-container .column-item .column-preview.markdown-rendered h6,.columns-container .column-item .column-preview.markdown-rendered div,.columns-container .column-item .column-preview.markdown-rendered blockquote,.columns-container .column-item .column-preview.markdown-rendered hr,.columns-container .column-item .column-preview.markdown-rendered table,.columns-container .column-item .column-preview.markdown-rendered pre{margin:0!important}.columns-container .column-item .column-preview.markdown-rendered ul,.columns-container .column-item .column-preview.markdown-rendered ol{margin:0!important;padding:0 0 0 1.5em!important;list-style-position:outside}.columns-container .column-item .column-preview.markdown-rendered ul{list-style-type:disc!important}.columns-container .column-item .column-preview.markdown-rendered li{margin:0!important;padding:0!important}.columns-container.columns-ui:not(.columns-reading) :is(.column-preview,.column-inline-edit-preview){--list-spacing: .2rem;--p-spacing: .35rem;--heading-spacing: .2rem;--line-height-tight: 1.18;line-height:1.24!important;white-space:normal!important}.columns-container.columns-ui:not(.columns-reading) :is(.column-preview,.column-inline-edit-preview)>:first-child{margin-top:0!important}.columns-container.columns-ui:not(.columns-reading) :is(.column-preview,.column-inline-edit-preview)>:last-child{margin-bottom:0!important}.columns-container.columns-ui:not(.columns-reading) :is(.column-preview,.column-inline-edit-preview) :is(h1,h2,h3,h4,h5,h6){margin-top:.35rem!important;margin-bottom:.2rem!important}.columns-container.columns-ui:not(.columns-reading) :is(.column-preview,.column-inline-edit-preview) :is(p,blockquote,pre,table,hr){margin-top:.2rem!important;margin-bottom:.2rem!important;line-height:1.4!important}.columns-container.columns-ui:not(.columns-reading) :is(.column-preview,.column-inline-edit-preview) :is(blockquote){display:flex!important}.columns-container :is(.column-preview,.column-inline-edit-preview) .markdown-rendered .table-wrapper{max-width:100%;overflow-x:auto}.columns-container.columns-ui:not(.columns-reading) :is(.column-preview,.column-inline-edit-preview) table{width:100%;border-collapse:collapse;border-spacing:0;border:1px solid var(--background-modifier-border)!important}.columns-container.columns-ui:not(.columns-reading) :is(.column-preview,.column-inline-edit-preview) :is(th,td){border:1px solid var(--background-modifier-border)!important;padding:.28rem .6rem!important}.columns-container.columns-ui:not(.columns-reading) :is(.column-preview,.column-inline-edit-preview) :is(ul,ol){margin-top:.08rem!important;margin-bottom:.08rem!important;margin-block-start:.08rem!important;margin-block-end:.08rem!important;padding-inline-start:2em!important;display:block!important;white-space:normal!important}.columns-container.columns-ui:not(.columns-reading) :is(.column-preview,.column-inline-edit-preview) li{margin-top:.25em!important;margin-bottom:.25em!important;margin-block-start:.25em!important;margin-block-end:.25em!important;padding:0!important;white-space:normal!important;line-height:1.4em!important}.columns-container.columns-ui:not(.columns-reading) :is(.column-preview,.column-inline-edit-preview) li.amc-list-gap{margin-top:1.5em!important;margin-block-start:1.5em!important}.columns-container.columns-ui:not(.columns-reading) :is(.column-preview,.column-inline-edit-preview)>.amc-block-gap{margin-top:1em!important;margin-block-start:1em!important}.columns-container.columns-ui:not(.columns-reading) :is(.column-preview,.column-inline-edit-preview) ul>li.task-list-item{list-style:none}.columns-container.columns-ui:not(.columns-reading) :is(.column-preview,.column-inline-edit-preview) :is(ul,ol) :is(ul,ol){margin-top:0!important;margin-bottom:0!important;margin-block-start:0!important;margin-block-end:0!important;padding-inline-start:1.15em!important}.columns-container.columns-ui:not(.columns-reading) :is(.column-preview,.column-inline-edit-preview) .markdown-rendered li:last-child>:is(ul,ol){margin-bottom:0!important}.columns-container.columns-ui:not(.columns-reading) :is(.column-preview,.column-inline-edit-preview) .markdown-rendered li>:is(ul,ol)+p:has(>a):not(:has(>:not(a,br))),.columns-container.columns-ui:not(.columns-reading) :is(.column-preview,.column-inline-edit-preview) .markdown-rendered li>:is(ul,ol)+p:has(>a):not(:has(>:not(a,br)))~p:has(>a):not(:has(>:not(a,br))){margin-inline-start:-1.25em!important;padding-inline-start:0!important}.columns-container.columns-ui:not(.columns-reading) :is(.column-preview,.column-inline-edit-preview) .markdown-rendered p:has(>a:only-child){margin-block-start:0!important;margin-block-end:0!important;line-height:1.2rem!important}.columns-container.columns-ui:not(.columns-reading) :is(.column-preview,.column-inline-edit-preview) .markdown-rendered :is(ul,ol).contains-task-list{margin-top:.04rem!important;margin-bottom:.04rem!important;padding-inline-start:.1em!important;display:block!important}.columns-container.columns-ui:not(.columns-reading) :is(.column-preview,.column-inline-edit-preview) .markdown-rendered li.task-list-item{list-style:none!important;display:grid!important;grid-template-columns:auto 1fr!important;column-gap:.35em!important;row-gap:.02rem!important;align-items:start!important;margin-top:0!important;margin-bottom:0!important;padding-top:0!important;padding-bottom:0!important;min-height:0!important}.columns-container.columns-ui:not(.columns-reading) :is(.column-preview,.column-inline-edit-preview) .markdown-rendered ul>li.task-list-item{line-height:1.18rem!important}.columns-container.columns-ui:not(.columns-reading) :is(.column-preview,.column-inline-edit-preview) .markdown-rendered li.task-list-item::marker{content:""!important}.columns-container.columns-ui:not(.columns-reading) :is(.column-preview,.column-inline-edit-preview) .markdown-rendered li.task-list-item>input[type=checkbox],.columns-container.columns-ui:not(.columns-reading) :is(.column-preview,.column-inline-edit-preview) .markdown-rendered li.task-list-item>.task-list-item-checkbox{grid-column:1!important;grid-row:1!important;margin:.12em 0 0!important}.columns-container.columns-ui:not(.columns-reading) :is(.column-preview,.column-inline-edit-preview) .markdown-rendered li.task-list-item>:is(p,div,label,span){grid-column:2!important;margin-top:0!important;margin-bottom:0!important;padding-top:0!important;padding-bottom:0!important;line-height:1.18rem!important}.columns-container.columns-ui:not(.columns-reading) :is(.column-preview,.column-inline-edit-preview) .markdown-rendered li.task-list-item>:is(ul,ol){grid-column:2!important;margin-top:.04rem!important;margin-bottom:0!important;padding-inline-start:1.15em!important}.columns-container.columns-ui:not(.columns-reading) :is(.column-preview,.column-inline-edit-preview) .markdown-rendered li.task-list-item :is(p,div,label,span){margin-block-start:0!important;margin-block-end:0!important}.columns-container.columns-ui:not(.columns-reading) :is(.column-preview,.column-inline-edit-preview) :is(.el-p,.el-h1,.el-h2,.el-h3,.el-h4,.el-h5,.el-h6,.el-blockquote,.el-pre,.el-table,.el-hr){margin-top:.1rem!important;margin-bottom:.1rem!important;line-height:1.24rem!important}.columns-container.columns-ui:not(.columns-reading) :is(.column-preview,.column-inline-edit-preview) :is(.el-ul,.el-ol,.el-li){margin-top:0!important;margin-bottom:0!important;line-height:inherit!important}.columns-container.columns-ui:not(.columns-reading) :is(.column-preview,.column-inline-edit-preview) :is(.el-h1,.el-h2,.el-h3,.el-h4,.el-h5,.el-h6){margin-top:.35rem!important;margin-bottom:.2rem!important;line-height:normal!important}.columns-container.columns-ui:not(.columns-reading) :is(.column-preview,.column-inline-edit-preview) .markdown-rendered :is(h1,h2,h3,h4,h5,h6){margin-block-start:.35rem!important;margin-block-end:.2rem!important;line-height:1.2!important;overflow-wrap:anywhere}.columns-container.columns-ui:not(.columns-reading) :is(.column-preview,.column-inline-edit-preview) .markdown-rendered :is(p,blockquote,pre,table,hr){margin-block-start:.08rem!important;margin-block-end:.08rem!important;line-height:1.24rem!important}.columns-container.columns-ui:not(.columns-reading) :is(.column-preview,.column-inline-edit-preview) .markdown-rendered :is(blockquote){display:flex!important}.columns-container .column-item.is-editing .column-preview{display:none}.columns-container .column-editor{display:none;width:100%;min-height:60px;height:var(--column-editor-height, auto);border:none;padding:4px 0;font-family:var(--font-monospace);font-size:var(--font-text-size);line-height:var(--line-height-normal);background:transparent;color:var(--text-normal);resize:none;outline:none;box-shadow:none;box-sizing:border-box;-webkit-user-select:text;user-select:text;overflow:hidden}.columns-container .column-item.is-editing .column-editor{display:block}.columns-container .column-editor:focus,.columns-container .column-editor:focus-visible{box-shadow:none;outline:none}.columns-container .column-inline-edit-block{margin:0 0 8px}.columns-container .column-inline-edit-block:last-child{margin-bottom:0}.columns-container .column-inline-edit-preview{min-height:18px;cursor:text;-webkit-user-select:text;user-select:text;display:flow-root}.columns-container .column-inline-edit-preview>*:first-child{margin-top:0}.columns-container .column-inline-edit-preview>*:last-child{margin-bottom:0}.columns-container .column-inline-editor{display:none;width:100%;min-height:60px;height:var(--column-editor-height, auto);border:none;padding:4px 0;font-family:var(--font-monospace);font-size:var(--font-text-size);line-height:var(--line-height-normal);background:transparent;color:var(--text-normal);resize:none;outline:none;box-shadow:none;box-sizing:border-box;-webkit-user-select:text;user-select:text;overflow:hidden}.columns-container .column-inline-editor:focus,.columns-container .column-inline-editor:focus-visible{box-shadow:none;outline:none}.columns-container .column-inline-edit-block.is-editing .column-inline-edit-preview{display:none}.columns-container .column-inline-edit-block.is-editing .column-inline-editor{display:block}.columns-container .column-resize-handle{width:10px;flex:0 0 10px;cursor:col-resize;position:relative;background:transparent;margin:0 -1px;z-index:2}.columns-container .column-resize-handle.has-separator:before{content:"";position:absolute;left:50%;transform:translate(-50%);top:8px;bottom:8px;width:0;border-left:var(--sep-width, 1px) var(--sep-style, solid) var(--sep-color, var(--background-modifier-border));pointer-events:none}.columns-container .column-resize-handle.has-separator-custom:before{content:attr(data-sep-char);border:none;width:auto;writing-mode:vertical-rl;text-orientation:mixed;color:var(--sep-color, var(--text-faint));font-size:calc(var(--sep-width, 1px) * 6 + 6px);line-height:1rem;letter-spacing:.15em;opacity:.7;overflow:hidden;-webkit-user-select:none;user-select:none}.columns-container .column-resize-handle:after{content:"";position:absolute;left:4px;top:15%;bottom:15%;width:2px;background:var(--interactive-accent);opacity:0;border-radius:1px;transition:opacity .15s ease}.columns-container .column-resize-handle:hover:after,.columns-container .column-resize-handle.is-active:after{opacity:.6}.columns-container .column-resize-handle.is-active.has-separator:before{opacity:0}.columns-container .column-dragging{opacity:.35;border:1px dashed var(--text-faint)!important}.columns-container .column-drag-over{position:relative}.columns-container .column-drag-over:before{content:"";position:absolute;top:4px;bottom:4px;width:3px;border-radius:2px;background:var(--interactive-accent);z-index:10;pointer-events:none}.columns-container .column-drop-before:before{left:-7px}.columns-container .column-drop-after:before{right:-7px}.amc-cursor-drop-indicator{position:absolute;height:3px;background:var(--interactive-accent);border-radius:2px;pointer-events:none;z-index:100;opacity:.85;box-shadow:0 0 6px color-mix(in srgb,var(--interactive-accent) 50%,transparent)}.columns-container.columns-reading{--columns-block-default-border-width: 0px;border:none;padding:0;overflow:visible}.columns-container.columns-reading .column-item{border:none;overflow-x:auto;min-width:0;margin:0 4px!important}.columns-container.columns-reading .column-header{margin:0 0 6px;border-radius:4px 4px 0 0}.columns-container.columns-reading .column-item:hover{border:none;background:var(--background-modifier-active-hover)!important}.columns-container.columns-reading .column-toolbar{display:none}.columns-container.columns-stacked{flex-direction:column!important}.columns-container.columns-stacked>.column-item{flex:none!important;width:100%}.columns-container.columns-stacked>.column-resize-handle{display:none!important}.columns-container.columns-stacked>.column-separator-visual{width:100%;flex:0 0 auto;border-left:none;border-top:var(--sep-width, 1px) var(--sep-style, solid) var(--sep-color, var(--background-modifier-border));margin:2px 8px}.columns-container.columns-stacked>.column-separator-custom{writing-mode:horizontal-tb;text-orientation:initial;width:100%;margin:2px 8px}.columns-container.columns-stacked .column-drop-before:before{inset:-7px 4px auto;width:auto;height:3px}.columns-container.columns-stacked .column-drop-after:before{inset:auto 4px -7px;width:auto;height:3px}.columns-container .columns-stack-group{display:flex;flex-direction:column;flex:1 1 0%;min-width:0;align-items:stretch;gap:4px;padding:0 4px}.columns-container .columns-stack-group>.column-item{flex:none!important;width:100%}.columns-container .columns-stack-group>.column-resize-handle{display:none!important}.columns-container .columns-stack-group>.column-separator-visual{width:100%;flex:0 0 auto;border-left:none;border-top:var(--sep-width, 1px) var(--sep-style, solid) var(--sep-color, var(--background-modifier-border));margin:2px 8px}.columns-container .columns-stack-group>.column-separator-custom{writing-mode:horizontal-tb;text-orientation:initial;width:100%;margin:2px 8px}.columns-container .columns-stack-group .column-drop-before:before{inset:-7px 4px auto;width:auto;height:3px}.columns-container .columns-stack-group .column-drop-after:before{inset:auto 4px -7px;width:auto;height:3px}.columns-container .column-item.column-selected{outline:2px solid var(--interactive-accent);outline-offset:-2px}.columns-container .column-separator-visual{width:0;flex:0 0 var(--sep-width, 1px);background:none;border-left:var(--sep-width, 1px) var(--sep-style, solid) var(--sep-color, var(--background-modifier-border));margin:8px 2px}.columns-container .column-separator-custom{flex:0 0 auto;display:flex;align-items:center;justify-content:center;writing-mode:vertical-rl;text-orientation:mixed;color:var(--sep-color, var(--text-faint));font-size:var(--sep-size, 12px);line-height:1rem;margin:4px 2px;overflow:hidden;-webkit-user-select:none;user-select:none;pointer-events:none;letter-spacing:.15em;opacity:.7}.columns-container .column-empty-placeholder{color:var(--text-faint);font-style:italic;padding:8px 0;font-size:var(--font-smallest)}.columns-cursor-mirror{position:absolute;visibility:hidden;white-space:pre-wrap;overflow-wrap:break-word;overflow:hidden;height:auto;width:var(--mirror-width, auto)}.columns-suggest-popup{position:fixed;min-width:220px;max-width:450px;max-height:340px;overflow-y:auto;background:var(--background-secondary);border:1px solid var(--background-modifier-border);border-radius:8px;box-shadow:var(--shadow-s);padding:4px 0;z-index:1000}.columns-suggest-item{display:flex;flex-direction:row;padding:5px 10px;cursor:pointer;gap:.5rem!important}.columns-suggest-item:hover,.columns-suggest-item.is-selected{background:var(--background-modifier-hover);border-radius:4px}.columns-suggest-title{font-size:var(--font-text-size);color:var(--text-normal);font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.columns-suggest-path{font-size:var(--font-smallest);color:var(--text-faint);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.columns-suggest-icon{flex-shrink:0;width:18px;height:18px;color:var(--text-muted);display:flex;align-items:center;justify-content:center}.columns-suggest-icon svg{width:16px;height:16px}.columns-suggest-text{display:flex;flex-direction:column;gap:1px;overflow:hidden}.columns-suggest-item:has(.columns-suggest-icon){flex-direction:row;align-items:center;gap:8px}div[data-callout=col].callout,div[data-callout^=col-md].callout{background-color:#0000;padding:0;border-style:none}.columnParent,div[data-callout=col].callout>div.callout-content{display:flex!important;padding:var(--obsidian-columns-padding);flex-wrap:nowrap;gap:var(--obsidian-columns-gap);white-space:normal;overflow-x:auto}div[data-callout=col].callout>div.callout-title,div[data-callout^=col-md].callout>div.callout-title{display:none}.cm-preview-code-block .admonition-content .columnParent p{white-space:pre-wrap}.columnChild,div[data-callout=col].callout>div.callout-content>*{flex-grow:var(--obsidian-columns-def-span);flex-basis:calc(var(--obsidian-columns-min-width) * var(--obsidian-columns-def-span));width:calc(var(--obsidian-columns-min-width) * var(--obsidian-columns-def-span))}div[data-callout=col].callout>div.callout-content>div[data-callout^=col-md].callout{flex-grow:var(--obsidian-columns-custom-span);flex-basis:calc(var(--obsidian-columns-min-width) * var(--obsidian-columns-custom-span));width:calc(var(--obsidian-columns-min-width) * var(--obsidian-columns-custom-span));margin:0;background-color:#0000;padding:0;border-style:none}div[data-callout=col].callout>div.callout-content>div[data-callout$="-0.5"].callout{--obsidian-columns-custom-span: .5}div[data-callout=col].callout>div.callout-content>div[data-callout$="-1"].callout,div[data-callout=col].callout>div.callout-content>div[data-callout=col-md].callout{--obsidian-columns-custom-span: 1}div[data-callout=col].callout>div.callout-content>div[data-callout$="-1.5"].callout{--obsidian-columns-custom-span: 1.5}div[data-callout=col].callout>div.callout-content>div[data-callout$="-2"].callout{--obsidian-columns-custom-span: 2}div[data-callout=col].callout>div.callout-content>div[data-callout$="-2.5"].callout{--obsidian-columns-custom-span: 2.5}div[data-callout=col].callout>div.callout-content>div[data-callout$="-3"].callout{--obsidian-columns-custom-span: 3}div[data-callout=col].callout>div.callout-content>div[data-callout$="-3.5"].callout{--obsidian-columns-custom-span: 3.5}div[data-callout=col].callout>div.callout-content>div[data-callout$="-4"].callout{--obsidian-columns-custom-span: 4}div[data-callout=col].callout>div.callout-content>div[data-callout$="-4.5"].callout{--obsidian-columns-custom-span: 4.5}div[data-callout=col].callout>div.callout-content>div[data-callout$="-5"].callout{--obsidian-columns-custom-span: 5}div[data-callout=col].callout>div.callout-content>div[data-callout$="-5.5"].callout{--obsidian-columns-custom-span: 5.5}div[data-callout=col].callout>div.callout-content>div[data-callout$="-6"].callout{--obsidian-columns-custom-span: 6}div[data-callout=col].callout>div.callout-content>div[data-callout$="-6.5"].callout{--obsidian-columns-custom-span: 6.5}div[data-callout=col].callout>div.callout-content>div[data-callout$="-7"].callout{--obsidian-columns-custom-span: 7}div[data-callout=col].callout>div.callout-content>div[data-callout$="-7.5"].callout{--obsidian-columns-custom-span: 7.5}div[data-callout=col].callout>div.callout-content>div[data-callout$="-8"].callout{--obsidian-columns-custom-span: 8}div[data-callout=col].callout>div.callout-content>div[data-callout$="-8.5"].callout{--obsidian-columns-custom-span: 8.5}div[data-callout=col].callout>div.callout-content>div[data-callout$="-9"].callout{--obsidian-columns-custom-span: 9}div[data-callout=col].callout>div.callout-content>div[data-callout$="-9.5"].callout{--obsidian-columns-custom-span: 9.5}div[data-callout=col].callout>div.callout-content>div[data-callout$="-10"].callout{--obsidian-columns-custom-span: 10}div[data-callout=col].cm-callout,div[data-callout^=col-md].cm-callout,div[data-callout=col].cm-embed-block,div[data-callout^=col-md].cm-embed-block{background-color:#0000;padding:0;border-style:none}div[data-callout=col].cm-callout>div.callout-content,div[data-callout=col].cm-callout>div.cm-callout-content,div[data-callout=col].cm-embed-block>div.callout-content,div[data-callout=col].cm-embed-block>div.cm-callout-content{display:flex!important;padding:var(--obsidian-columns-padding);flex-wrap:nowrap;gap:var(--obsidian-columns-gap);white-space:normal;overflow-x:auto}div[data-callout=col].cm-callout>div.callout-title,div[data-callout=col].cm-callout>div.cm-callout-title,div[data-callout^=col-md].cm-callout>div.callout-title,div[data-callout^=col-md].cm-callout>div.cm-callout-title,div[data-callout=col].cm-embed-block>div.callout-title,div[data-callout=col].cm-embed-block>div.cm-callout-title,div[data-callout^=col-md].cm-embed-block>div.callout-title,div[data-callout^=col-md].cm-embed-block>div.cm-callout-title{display:none}div[data-callout=col].cm-callout>div.callout-content>*,div[data-callout=col].cm-callout>div.cm-callout-content>*,div[data-callout=col].cm-embed-block>div.callout-content>*,div[data-callout=col].cm-embed-block>div.cm-callout-content>*{flex-grow:var(--obsidian-columns-def-span);flex-basis:calc(var(--obsidian-columns-min-width) * var(--obsidian-columns-def-span));width:calc(var(--obsidian-columns-min-width) * var(--obsidian-columns-def-span))}div[data-callout=col].cm-callout>div.callout-content>div[data-callout^=col-md],div[data-callout=col].cm-callout>div.cm-callout-content>div[data-callout^=col-md],div[data-callout=col].cm-embed-block>div.callout-content>div[data-callout^=col-md],div[data-callout=col].cm-embed-block>div.cm-callout-content>div[data-callout^=col-md]{flex-grow:var(--obsidian-columns-custom-span);flex-basis:calc(var(--obsidian-columns-min-width) * var(--obsidian-columns-custom-span));width:calc(var(--obsidian-columns-min-width) * var(--obsidian-columns-custom-span));margin:0;background-color:#0000;padding:0;border-style:none}div[data-callout=col].cm-callout>div.callout-content>div[data-callout$="-0.5"],div[data-callout=col].cm-callout>div.cm-callout-content>div[data-callout$="-0.5"],div[data-callout=col].cm-embed-block>div.callout-content>div[data-callout$="-0.5"],div[data-callout=col].cm-embed-block>div.cm-callout-content>div[data-callout$="-0.5"]{--obsidian-columns-custom-span: .5}div[data-callout=col].cm-callout>div.callout-content>div[data-callout$="-1"],div[data-callout=col].cm-callout>div.cm-callout-content>div[data-callout$="-1"],div[data-callout=col].cm-embed-block>div.callout-content>div[data-callout$="-1"],div[data-callout=col].cm-embed-block>div.cm-callout-content>div[data-callout$="-1"],div[data-callout=col].cm-callout>div.callout-content>div[data-callout=col-md],div[data-callout=col].cm-callout>div.cm-callout-content>div[data-callout=col-md],div[data-callout=col].cm-embed-block>div.callout-content>div[data-callout=col-md],div[data-callout=col].cm-embed-block>div.cm-callout-content>div[data-callout=col-md]{--obsidian-columns-custom-span: 1}div[data-callout=col].cm-callout>div.callout-content>div[data-callout$="-1.5"],div[data-callout=col].cm-callout>div.cm-callout-content>div[data-callout$="-1.5"],div[data-callout=col].cm-embed-block>div.callout-content>div[data-callout$="-1.5"],div[data-callout=col].cm-embed-block>div.cm-callout-content>div[data-callout$="-1.5"]{--obsidian-columns-custom-span: 1.5}div[data-callout=col].cm-callout>div.callout-content>div[data-callout$="-2"],div[data-callout=col].cm-callout>div.cm-callout-content>div[data-callout$="-2"],div[data-callout=col].cm-embed-block>div.callout-content>div[data-callout$="-2"],div[data-callout=col].cm-embed-block>div.cm-callout-content>div[data-callout$="-2"]{--obsidian-columns-custom-span: 2}div[data-callout=col].cm-callout>div.callout-content>div[data-callout$="-2.5"],div[data-callout=col].cm-callout>div.cm-callout-content>div[data-callout$="-2.5"],div[data-callout=col].cm-embed-block>div.callout-content>div[data-callout$="-2.5"],div[data-callout=col].cm-embed-block>div.cm-callout-content>div[data-callout$="-2.5"]{--obsidian-columns-custom-span: 2.5}div[data-callout=col].cm-callout>div.callout-content>div[data-callout$="-3"],div[data-callout=col].cm-callout>div.cm-callout-content>div[data-callout$="-3"],div[data-callout=col].cm-embed-block>div.callout-content>div[data-callout$="-3"],div[data-callout=col].cm-embed-block>div.cm-callout-content>div[data-callout$="-3"]{--obsidian-columns-custom-span: 3}div[data-callout=col].cm-callout>div.callout-content>div[data-callout$="-3.5"],div[data-callout=col].cm-callout>div.cm-callout-content>div[data-callout$="-3.5"],div[data-callout=col].cm-embed-block>div.callout-content>div[data-callout$="-3.5"],div[data-callout=col].cm-embed-block>div.cm-callout-content>div[data-callout$="-3.5"]{--obsidian-columns-custom-span: 3.5}div[data-callout=col].cm-callout>div.callout-content>div[data-callout$="-4"],div[data-callout=col].cm-callout>div.cm-callout-content>div[data-callout$="-4"],div[data-callout=col].cm-embed-block>div.callout-content>div[data-callout$="-4"],div[data-callout=col].cm-embed-block>div.cm-callout-content>div[data-callout$="-4"]{--obsidian-columns-custom-span: 4}div[data-callout=col].cm-callout>div.callout-content>div[data-callout$="-4.5"],div[data-callout=col].cm-callout>div.cm-callout-content>div[data-callout$="-4.5"],div[data-callout=col].cm-embed-block>div.callout-content>div[data-callout$="-4.5"],div[data-callout=col].cm-embed-block>div.cm-callout-content>div[data-callout$="-4.5"]{--obsidian-columns-custom-span: 4.5}div[data-callout=col].cm-callout>div.callout-content>div[data-callout$="-5"],div[data-callout=col].cm-callout>div.cm-callout-content>div[data-callout$="-5"],div[data-callout=col].cm-embed-block>div.callout-content>div[data-callout$="-5"],div[data-callout=col].cm-embed-block>div.cm-callout-content>div[data-callout$="-5"]{--obsidian-columns-custom-span: 5}div[data-callout=col].cm-callout>div.callout-content>div[data-callout$="-5.5"],div[data-callout=col].cm-callout>div.cm-callout-content>div[data-callout$="-5.5"],div[data-callout=col].cm-embed-block>div.callout-content>div[data-callout$="-5.5"],div[data-callout=col].cm-embed-block>div.cm-callout-content>div[data-callout$="-5.5"]{--obsidian-columns-custom-span: 5.5}div[data-callout=col].cm-callout>div.callout-content>div[data-callout$="-6"],div[data-callout=col].cm-callout>div.cm-callout-content>div[data-callout$="-6"],div[data-callout=col].cm-embed-block>div.callout-content>div[data-callout$="-6"],div[data-callout=col].cm-embed-block>div.cm-callout-content>div[data-callout$="-6"]{--obsidian-columns-custom-span: 6}div[data-callout=col].cm-callout>div.callout-content>div[data-callout$="-6.5"],div[data-callout=col].cm-callout>div.cm-callout-content>div[data-callout$="-6.5"],div[data-callout=col].cm-embed-block>div.callout-content>div[data-callout$="-6.5"],div[data-callout=col].cm-embed-block>div.cm-callout-content>div[data-callout$="-6.5"]{--obsidian-columns-custom-span: 6.5}div[data-callout=col].cm-callout>div.callout-content>div[data-callout$="-7"],div[data-callout=col].cm-callout>div.cm-callout-content>div[data-callout$="-7"],div[data-callout=col].cm-embed-block>div.callout-content>div[data-callout$="-7"],div[data-callout=col].cm-embed-block>div.cm-callout-content>div[data-callout$="-7"]{--obsidian-columns-custom-span: 7}div[data-callout=col].cm-callout>div.callout-content>div[data-callout$="-7.5"],div[data-callout=col].cm-callout>div.cm-callout-content>div[data-callout$="-7.5"],div[data-callout=col].cm-embed-block>div.callout-content>div[data-callout$="-7.5"],div[data-callout=col].cm-embed-block>div.cm-callout-content>div[data-callout$="-7.5"]{--obsidian-columns-custom-span: 7.5}div[data-callout=col].cm-callout>div.callout-content>div[data-callout$="-8"],div[data-callout=col].cm-callout>div.cm-callout-content>div[data-callout$="-8"],div[data-callout=col].cm-embed-block>div.callout-content>div[data-callout$="-8"],div[data-callout=col].cm-embed-block>div.cm-callout-content>div[data-callout$="-8"]{--obsidian-columns-custom-span: 8}div[data-callout=col].cm-callout>div.callout-content>div[data-callout$="-8.5"],div[data-callout=col].cm-callout>div.cm-callout-content>div[data-callout$="-8.5"],div[data-callout=col].cm-embed-block>div.callout-content>div[data-callout$="-8.5"],div[data-callout=col].cm-embed-block>div.cm-callout-content>div[data-callout$="-8.5"]{--obsidian-columns-custom-span: 8.5}div[data-callout=col].cm-callout>div.callout-content>div[data-callout$="-9"],div[data-callout=col].cm-callout>div.cm-callout-content>div[data-callout$="-9"],div[data-callout=col].cm-embed-block>div.callout-content>div[data-callout$="-9"],div[data-callout=col].cm-embed-block>div.cm-callout-content>div[data-callout$="-9"]{--obsidian-columns-custom-span: 9}div[data-callout=col].cm-callout>div.callout-content>div[data-callout$="-9.5"],div[data-callout=col].cm-callout>div.cm-callout-content>div[data-callout$="-9.5"],div[data-callout=col].cm-embed-block>div.callout-content>div[data-callout$="-9.5"],div[data-callout=col].cm-embed-block>div.cm-callout-content>div[data-callout$="-9.5"]{--obsidian-columns-custom-span: 9.5}div[data-callout=col].cm-callout>div.callout-content>div[data-callout$="-10"],div[data-callout=col].cm-callout>div.cm-callout-content>div[data-callout$="-10"],div[data-callout=col].cm-embed-block>div.callout-content>div[data-callout$="-10"],div[data-callout=col].cm-embed-block>div.cm-callout-content>div[data-callout$="-10"]{--obsidian-columns-custom-span: 10}.columns-settings-root .columns-settings-tab-bar{display:flex;gap:8px;flex-wrap:wrap;padding-bottom:12px;margin-bottom:16px;border-bottom:1px solid var(--background-modifier-border)}.columns-settings-root .columns-settings-tab-btn{border:1px solid var(--background-modifier-border);background:var(--background-secondary);color:var(--text-muted);border-radius:8px;padding:6px 12px;font-size:.85rem;font-weight:600;line-height:1;cursor:pointer}.columns-settings-root .columns-settings-tab-btn:hover{background:var(--background-modifier-hover);color:var(--text-normal)}.columns-settings-root .columns-settings-tab-btn.is-active{border-color:var(--interactive-accent);background:var(--interactive-accent);color:var(--text-on-accent)}.columns-settings-root .columns-settings-panel{display:none}.columns-settings-root .columns-settings-panel.is-active{display:block}.columns-settings-root .columns-settings-section-title{margin:20px 0 8px;font-size:.82rem;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em}.columns-settings-root .columns-settings-section-title:first-child{margin-top:0}.columns-settings-root .setting-item{border:1px solid var(--background-modifier-border);background:var(--background-primary-alt);border-radius:10px;padding:10px 12px;margin-bottom:8px}.columns-settings-root .setting-item-control .slider{width:130px}.columns-settings-root .columns-settings-number-input{width:64px;text-align:center}.columns-settings-about{display:flex;flex-direction:column;gap:20px}.columns-settings-about-info{text-align:center;padding:16px 0 8px}.columns-settings-about-name{font-size:1.1rem;font-weight:700;color:var(--text-normal)}.columns-settings-about-version{font-size:.82rem;color:var(--text-muted);margin-top:2px}.columns-settings-about-links{display:flex;flex-wrap:wrap;gap:8px;justify-content:center}.columns-settings-about-link{display:inline-block;padding:5px 12px;font-size:.82rem;font-weight:500;color:var(--text-muted);border:1px solid var(--background-modifier-border);border-radius:6px;text-decoration:none;transition:color .15s ease,border-color .15s ease}.columns-settings-about-link:hover{color:var(--text-normal);border-color:var(--interactive-accent);text-decoration:none}.columns-settings-about-support,.columns-settings-about-others{text-align:center}.columns-settings-about-support-label{font-size:.8rem;font-weight:600;color:var(--text-faint);text-transform:uppercase;letter-spacing:.04em;margin-bottom:8px}.columns-header-types-list{display:flex;flex-direction:column;gap:12px}.columns-header-type-row{border:1px solid var(--background-modifier-border);border-radius:10px;overflow:hidden;display:grid;align-items:stretch}.columns-header-type-preview{display:flex;align-items:center;gap:6px;padding:6px 10px;line-height:1.4;height:100%}.columns-header-type-preview-icon{display:inline-flex;align-items:center;flex-shrink:0}.columns-header-type-preview-icon .svg-icon{width:16px;height:16px}.columns-header-type-preview-id{font-weight:inherit}.columns-header-type-preview-badge{margin-left:auto;font-size:.72em;font-weight:500;opacity:.6;text-transform:uppercase;letter-spacing:.04em}.columns-header-type-delete-btn{display:inline-flex;align-items:center;cursor:pointer;opacity:.5;margin-left:6px;color:var(--text-error)}.columns-header-type-delete-btn:hover{opacity:1}.columns-header-type-delete-btn .svg-icon{width:14px;height:14px}.columns-header-type-controls{padding:8px 12px;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:0 16px}.columns-header-type-controls .setting-item.columns-header-type-setting{border:none;background:none;border-radius:0;padding:6px 0;margin-bottom:0;min-width:0}.columns-header-type-controls .setting-item.columns-header-type-setting .setting-item-info,.columns-header-type-controls .setting-item.columns-header-type-setting .setting-item-control{min-width:0}.columns-header-type-controls .columns-settings-number-input{width:96px;text-align:left}@media (max-width: 900px){.columns-header-type-row{grid-template-columns:1fr}}.columns-icon-suggest-item{display:flex;align-items:center;gap:8px;padding:2px 0}.columns-icon-suggest-icon{display:inline-flex;align-items:center;flex-shrink:0}.columns-icon-suggest-icon .svg-icon{width:16px;height:16px}.columns-style-popover{position:fixed;z-index:2100;min-width:280px;max-width:320px;max-height:min(78vh,640px);padding:8px;border-radius:10px;border:1px solid var(--background-modifier-border);background:var(--background-primary);box-shadow:var(--shadow-s);display:flex;flex-direction:column;gap:2px;overflow-y:auto;overflow-x:hidden;scrollbar-gutter:stable}.columns-style-popover-section{padding:4px 8px 2px;font-size:var(--font-ui-smaller);color:var(--text-muted)}.columns-style-popover-section-inline{display:flex;align-items:center;justify-content:space-between;gap:8px}.columns-style-popover-section-inline .columns-style-popover-section{padding-right:0}.columns-style-popover-mini-btn{height:22px;padding:0 8px;border-radius:6px;border:1px solid var(--background-modifier-border);background:var(--background-secondary);color:var(--text-normal);font-size:var(--font-ui-smaller);cursor:pointer}.columns-style-popover-mini-btn:hover{background:var(--background-modifier-hover)}.columns-style-popover-divider{height:1px;margin:4px 2px;background:var(--background-modifier-border)}.columns-style-popover-row{width:100%;background:transparent;border-radius:6px;padding:6px 8px;display:flex;align-items:center;justify-content:space-between;gap:10px;color:var(--text-normal);cursor:pointer;text-align:left;font-size:var(--font-ui-small)}.columns-style-popover-row:hover{background:var(--background-modifier-hover)}.columns-style-popover-checkbox{width:25px;height:25px;border:1px solid var(--background-modifier-border);border-radius:4px;background:var(--background-secondary);display:inline-flex;align-items:center;justify-content:center;flex:0 0 25px;padding:0 0 2px}.columns-style-popover-checkbox-mark{opacity:0;font-size:13px;line-height:1;color:var(--text-normal)}.columns-style-popover-row.is-checked .columns-style-popover-checkbox{border-color:var(--interactive-accent);background:var(--interactive-accent)}.columns-style-popover-row.is-checked .columns-style-popover-checkbox-mark{opacity:1;color:var(--text-on-accent)}.columns-style-popover-row-label{flex:1 1 auto}.columns-style-popover-inline-buttons{display:flex;align-items:center;gap:8px;padding:4px 8px}.columns-style-popover-inline-btn{flex:1 1 0%;min-height:28px;padding:4px 8px;border-radius:6px;border:1px solid var(--background-modifier-border);background:var(--background-secondary);color:var(--text-normal);font-size:var(--font-ui-small);cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.columns-style-popover-inline-btn .svg-icon{width:16px;height:16px}.columns-style-popover-inline-btn:hover{background:var(--background-modifier-hover)}.columns-style-popover-inline-btn-danger{color:var(--text-error);border-color:var(--text-error)}.columns-style-popover-inline-btn-danger:hover{background:var(--text-error);color:var(--text-on-accent)}.columns-style-popover-select-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:6px 8px;border-radius:6px}.columns-style-popover-select-row:hover{background:var(--background-modifier-hover)}.columns-style-popover-select-label{font-size:var(--font-ui-small);color:var(--text-normal)}.columns-style-popover-select{min-width:124px;max-width:156px;height:28px}.columns-style-popover-collapsible{display:flex;flex-direction:column;gap:2px}.columns-style-popover-collapsible-header{display:flex;align-items:center;gap:6px;padding:4px 8px 2px;cursor:pointer;border-radius:6px}.columns-style-popover-collapsible-header:hover{background:var(--background-modifier-hover)}.columns-style-popover-chevron{font-size:8px;color:var(--text-faint);flex:0 0 10px;text-align:center}.columns-style-popover-collapsible-label{flex:1 1 auto;font-size:var(--font-ui-smaller);color:var(--text-muted);font-weight:500}.columns-style-popover-collapsible-header .columns-style-popover-mini-btn{flex:0 0 auto}.columns-style-popover-collapsible-body{display:flex;flex-direction:column;gap:2px;padding-left:4px}.columns-style-popover-collapsible-body.is-collapsed{display:none}.columns-style-popover-inline-toggle-select{display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:6px}.columns-style-popover-inline-toggle-select:hover{background:var(--background-modifier-hover)}.columns-style-popover-inline-toggle-select .columns-style-popover-select-label{flex:1 1 auto}.columns-style-popover-inline-toggle-select .columns-style-popover-checkbox{cursor:pointer}.columns-style-popover-inline-toggle-select .columns-style-popover-checkbox.is-checked{border-color:var(--interactive-accent);background:var(--interactive-accent)}.columns-style-popover-inline-toggle-select .columns-style-popover-checkbox.is-checked .columns-style-popover-checkbox-mark{opacity:1;color:var(--text-on-accent)}.columns-style-popover-inline-toggle-select .columns-style-popover-select{min-width:100px;max-width:120px}.columns-style-popover-compact-row{display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:6px}.columns-style-popover-compact-row:hover{background:var(--background-modifier-hover)}.columns-style-popover-compact-row .columns-style-popover-select-label{flex:0 0 auto}.columns-style-popover-compact-selects{display:flex;align-items:center;gap:4px;flex:1 1 auto;justify-content:flex-end}.columns-style-popover-compact-select{height:28px;min-width:0;flex:1 1 0%;max-width:80px;font-size:var(--font-ui-smaller)}.columns-style-popover-text-input{min-width:60px;max-width:80px;height:28px;padding:2px 8px;border-radius:6px;border:1px solid var(--background-modifier-border);background:var(--background-secondary);color:var(--text-normal);font-size:var(--font-ui-small);text-align:center} diff --git a/versions.json b/versions.json index 6ed97e9..4096d61 100644 --- a/versions.json +++ b/versions.json @@ -12,5 +12,6 @@ "1.1.0-beta.4": "0.15.0", "1.1.0": "0.15.0", "1.1.1": "0.15.0", - "1.2.0": "0.15.0" + "1.2.0": "0.15.0", + "1.2.1": "0.15.0" } diff --git a/wiki/02-syntax-reference.md b/wiki/02-syntax-reference.md index eac5411..a0cdd78 100644 --- a/wiki/02-syntax-reference.md +++ b/wiki/02-syntax-reference.md @@ -51,6 +51,45 @@ You can attach width/stack/style tokens to each `col-break`. %% col-break:35,stk:1,b:blue-soft,bc:blue,t:text,sb:1,sep:1,sc:blue,ss:dashed,sw:2 %% ``` +## Column header syntax + +Use a header line as the first non-empty line inside a column: + +```md +%% col-start %% +%% col-break:b:blue-soft %% +!info: Project summary +Main content for this column. +%% col-break:b:green-soft %% +!tip: Next action +- Review the draft +- Send feedback +%% col-end %% +``` + +Format: + +```md +!type: Header title +``` + +Rules: + +1. The header line must be the first non-empty line in that column. +2. `type` must match a configured header type in **Settings -> Advanced multi column -> Headers**. +3. The header line is removed from the rendered body and shown as the styled column header. +4. If the type is not configured, the line remains normal column content. + +Built-in header types: + +| Type | Default icon | Default style | +|---|---|---| +| `note` | `pencil` | Blue tint | +| `info` | `info` | Cyan tint | +| `tip` | `lightbulb` | Green tint | +| `warning` | `triangle-alert` | Orange tint | +| `danger` | `zap` | Red tint | + ## Token reference | Token | Meaning | Values | @@ -79,4 +118,3 @@ Sidebar Main content %% col-end %% ``` - diff --git a/wiki/08-settings-guide.md b/wiki/08-settings-guide.md index 9a5163f..b8568e9 100644 --- a/wiki/08-settings-guide.md +++ b/wiki/08-settings-guide.md @@ -55,6 +55,62 @@ Practical note: 1. Per-block styling from right-click popover is the most direct way to style specific layouts. 2. If a global appearance option does not visibly change an existing block, style that block from the context menu. +## Headers tab + +### Enable column headers + +1. Turn on to parse `!type: title` as a styled header when it appears as the first non-empty line in a column. +2. Turn off to render those lines as normal column content. +3. Default: **On**. + +Example: + +```md +%% col-start %% +%% col-break %% +!warning: Migration notes +Check compatibility before updating. +%% col-end %% +``` + +### Header types + +Header types define which `!type:` IDs are recognized and how their rendered header looks. + +Built-in types: + +1. `note` +2. `info` +3. `tip` +4. `warning` +5. `danger` + +Each header type can be configured with: + +1. Name: the ID used after `!`, such as `info` in `!info: Details`. +2. Icon: any Obsidian/Lucide icon name, such as `info`, `hash`, or `triangle-alert`. +3. Background: the header background color. +4. Text color: the header text/icon color. +5. Font size: the rendered header text size. +6. Font weight: the rendered header text weight. + +### Add a custom header type + +1. Select **Add header type**. +2. Set a unique name, such as `quote`, `source`, or `todo`. +3. Pick an icon and colors. +4. Use it as the first non-empty line in a column: + +```md +!todo: Follow up +``` + +Notes: + +1. Header names are normalized for marker use. +2. Duplicate names are made unique automatically. +3. Built-in rows do not show the delete button while their original ID is unchanged. + ## About tab Contains: @@ -63,4 +119,3 @@ Contains: 2. GitHub and issue links. 3. Support links. 4. Other plugin links. -