mirror of
https://github.com/mayurankv/Obsidian-Code-Styler.git
synced 2026-07-22 08:10:29 +00:00
1175 lines
134 KiB
CSS
1175 lines
134 KiB
CSS
/* src/css/codeblocks.css */
|
|
body {
|
|
--border-radius: 10px;
|
|
--gradient-background-colour: transparent;
|
|
--code-padding: 8px;
|
|
--container-height: calc(var(--language-icon-size) + 2 * var(--header-inner-vertical-padding) * var(--header-font-size));
|
|
--container-min-height: calc((var(--header-font-size) + 2 * var(--header-inner-vertical-padding) * var(--header-font-size)) * var(--line-height-normal));
|
|
--language-border-colour: var(--code-styler-codeblock-background-colour);
|
|
--language-border-width: 0px;
|
|
--header-font-size: var(--code-size);
|
|
--header-padding: 0px;
|
|
--header-inner-vertical-padding: 0.3;
|
|
--header-spacing: 15px;
|
|
--header-button-spacing: 14px;
|
|
--header-separator-width: 2px;
|
|
--header-separator-width-padding: var(--header-separator-width);
|
|
--code-styler-header-border: none;
|
|
--folded-bottom-border: 0 solid transparent;
|
|
--language-icon-size: 28px;
|
|
--language-icon-filter: none;
|
|
--gradient-highlights-colour-stop: 100%;
|
|
--line-number-height-correction: 2px;
|
|
--line-number-gutter-padding: 16px;
|
|
--line-number-gutter-min-width: 32.67px;
|
|
--line-wrapping: pre-wrap;
|
|
--line-active-wrapping: var(--line-wrapping);
|
|
--code-styler-button-colour: var(--text-muted);
|
|
--code-styler-button-active-colour: white;
|
|
--duration-button: 240ms;
|
|
--dent-difference: 30px;
|
|
--polygon-in: polygon(0 0, 16px 0, 16px 36px, 0 36px);
|
|
--polygon-out: polygon(0 0, 100% 0, 100% 100%, 0 100%);
|
|
--copy-code-header-right-margin: calc(3 * var(--header-button-spacing));
|
|
}
|
|
.code-styler-pre-parent {
|
|
margin-bottom: 16px;
|
|
}
|
|
.code-styler pre.code-styler-pre {
|
|
overflow: hidden !important;
|
|
min-height: unset;
|
|
padding: 0px !important;
|
|
border-radius: var(--border-radius) !important;
|
|
background: var(--code-styler-codeblock-background-colour) !important;
|
|
}
|
|
.code-styler pre.code-styler-pre[class*=language-] {
|
|
padding-left: var(--language-border-width) !important;
|
|
background: linear-gradient(90deg, var(--language-border-colour), var(--language-border-colour) var(--language-border-width), var(--code-styler-codeblock-background-colour) var(--language-border-width), var(--code-styler-codeblock-background-colour) 100%), var(--code-styler-codeblock-background-colour) !important;
|
|
}
|
|
.code-styler pre > code {
|
|
padding-top: var(--code-padding) !important;
|
|
padding-bottom: var(--code-padding) !important;
|
|
}
|
|
.code-styler pre.code-styler-pre > code {
|
|
display: grid;
|
|
max-height: unset;
|
|
padding-top: var(--code-padding) !important;
|
|
padding-right: 0px !important;
|
|
padding-bottom: var(--code-padding) !important;
|
|
padding-left: 0px !important;
|
|
border-radius: 0px !important;
|
|
background: none !important;
|
|
grid-template-columns: min-content auto;
|
|
grid-template-rows: auto;
|
|
overflow-x: overlay;
|
|
transition-duration: var(--duration-button);
|
|
transition-property:
|
|
max-height,
|
|
padding,
|
|
border-top;
|
|
transition-timing-function: ease-in-out;
|
|
white-space: var(--line-wrapping) !important;
|
|
}
|
|
.code-styler pre.code-styler-pre.wrapped > code {
|
|
--line-wrapping: pre-wrap;
|
|
--line-active-wrapping: pre-wrap;
|
|
}
|
|
.code-styler pre.code-styler-pre.unwrapped > code {
|
|
--line-wrapping: pre;
|
|
--line-active-wrapping: pre;
|
|
}
|
|
.code-styler pre.code-styler-pre.unwrapped-inactive > code {
|
|
--line-wrapping: pre;
|
|
--line-active-wrapping: pre-wrap;
|
|
}
|
|
.code-styler pre.code-styler-pre code:not(:has(> input[style*="display: inline;"])):active {
|
|
--line-wrapping: var(--line-active-wrapping) !important;
|
|
}
|
|
.code-styler pre.code-styler-pre.code-styler-folded > code {
|
|
max-height: 0 !important;
|
|
padding-top: 0 !important;
|
|
padding-bottom: 0 !important;
|
|
}
|
|
.code-styler pre.code-styler-pre::before,
|
|
.code-styler pre.code-styler-pre::after {
|
|
content: none !important;
|
|
}
|
|
.markdown-source-view.mod-cm6 .cm-embed-block pre.code-styler-pre {
|
|
margin: 1em 0px;
|
|
}
|
|
body.code-styler .markdown-source-view :not(pre.code-styler-pre) > .code-styler-header-container + [class*=code-styler-line].HyperMD-codeblock-begin {
|
|
border-top: none !important;
|
|
border-top-left-radius: 0px !important;
|
|
border-top-right-radius: 0px !important;
|
|
}
|
|
.code-styler .markdown-source-view [class*=code-styler-line].HyperMD-codeblock-end {
|
|
border-bottom-left-radius: var(--border-radius);
|
|
border-bottom-right-radius: var(--border-radius);
|
|
}
|
|
body.code-styler .markdown-source-view :not(pre.code-styler-pre) > .code-styler-header-container-hidden + [class*=code-styler-line].HyperMD-codeblock-begin {
|
|
border-top-left-radius: var(--border-radius) !important;
|
|
border-top-right-radius: var(--border-radius) !important;
|
|
}
|
|
body.code-styler .markdown-source-view :not(pre.code-styler-pre) > .code-styler-header-container-hidden + [class*=code-styler-line].HyperMD-codeblock-begin .code-styler-line-number {
|
|
border-top-left-radius: var(--border-radius) !important;
|
|
}
|
|
.code-styler .markdown-source-view .HyperMD-codeblock[class*=code-styler-line] {
|
|
overflow: hidden;
|
|
padding: 0 !important;
|
|
padding-left: var(--size-4-4) !important;
|
|
background: linear-gradient(90deg, var(--gradient-background-colour) var(--gradient-highlights-colour-stop), transparent 100%), var(--code-styler-codeblock-background-colour) !important;
|
|
}
|
|
.code-styler .markdown-source-view .HyperMD-codeblock[class*=code-styler-line][class*=language-] {
|
|
background: linear-gradient(90deg, var(--language-border-colour), var(--language-border-colour) var(--language-border-width), var(--gradient-background-colour) var(--language-border-width) var(--gradient-highlights-colour-stop), transparent 100%), var(--code-styler-codeblock-background-colour) !important;
|
|
}
|
|
.code-styler .markdown-source-view .HyperMD-codeblock[class*=code-styler-line][class*=language-] .code-styler-line-number {
|
|
margin-left: var(--language-border-width);
|
|
}
|
|
body .code-styler-header-container-hidden {
|
|
display: none !important;
|
|
}
|
|
.code-styler-header-container {
|
|
display: flex !important;
|
|
overflow: visible;
|
|
height: var(--container-height);
|
|
min-height: var(--container-min-height);
|
|
box-sizing: content-box;
|
|
padding-top: var(--header-padding);
|
|
margin-top: 0px !important;
|
|
font-size: var(--header-font-size);
|
|
transition: border-bottom ease-in-out var(--duration-button);
|
|
user-select: none;
|
|
}
|
|
.markdown-source-view :not(pre.code-styler-pre) > .code-styler-header-container {
|
|
padding-bottom: var(--header-separator-width);
|
|
padding-left: var(--language-border-width);
|
|
border-top: var(--code-styler-header-border);
|
|
border-right: var(--code-styler-header-border);
|
|
border-left: var(--code-styler-header-border);
|
|
background: linear-gradient(var(--code-styler-header-background-colour) 0%, var(--code-styler-header-background-colour) calc(100% - var(--header-separator-width)), var(--code-styler-header-separator-colour) calc(100% - var(--header-separator-width)), var(--code-styler-header-separator-colour) 100%) var(--language-border-width) bottom/100% border-box no-repeat, var(--language-border-colour) !important;
|
|
border-top-left-radius: var(--border-radius);
|
|
border-top-right-radius: var(--border-radius);
|
|
}
|
|
pre.code-styler-pre .code-styler-header-container {
|
|
border-bottom: var(--header-separator-width) solid var(--code-styler-header-separator-colour);
|
|
background-color: var(--code-styler-header-background-colour);
|
|
}
|
|
.markdown-source-view :not(pre.code-styler-pre) > .code-styler-header-container.code-styler-header-folded {
|
|
padding-bottom: var(--header-padding);
|
|
border-bottom: var(--code-styler-header-border);
|
|
border-bottom: var(--folded-bottom-border);
|
|
background: linear-gradient(var(--code-styler-header-background-colour) 0%, var(--code-styler-header-background-colour) 100%) var(--language-border-width) bottom/100% border-box no-repeat, var(--language-border-colour) !important;
|
|
border-bottom-left-radius: var(--border-radius);
|
|
border-bottom-right-radius: var(--border-radius);
|
|
}
|
|
pre.code-styler-pre.code-styler-folded .code-styler-header-container {
|
|
border-bottom: var(--folded-bottom-border);
|
|
}
|
|
.code-styler-header-container .code-styler-header-language-tag {
|
|
display: flex;
|
|
height: 100%;
|
|
flex-direction: column;
|
|
align-content: center;
|
|
justify-content: center;
|
|
padding-top: calc(1em * var(--header-inner-vertical-padding));
|
|
padding-right: var(--header-spacing);
|
|
padding-bottom: calc(1em * var(--header-inner-vertical-padding));
|
|
padding-left: var(--header-spacing);
|
|
border-radius: var(--border-radius) var(--border-radius) 0px 0px;
|
|
margin-right: var(--header-spacing);
|
|
background-color: var(--code-styler-header-language-tag-background-colour);
|
|
color: var(--code-styler-header-language-tag-text-colour);
|
|
font-size: inherit;
|
|
font-style: var(--code-styler-header-language-tag-text-italic, normal);
|
|
font-weight: var(--code-styler-header-language-tag-text-bold, normal);
|
|
text-align: center;
|
|
transition: border-radius ease-in-out var(--duration-button), padding ease-in-out var(--duration-button);
|
|
}
|
|
.markdown-source-view :not(pre.code-styler-pre) > .code-styler-header-container.code-styler-header-folded .code-styler-header-language-tag,
|
|
pre.code-styler-pre.code-styler-folded .code-styler-header-container .code-styler-header-language-tag {
|
|
border-radius: var(--border-radius);
|
|
}
|
|
.code-styler-header-text {
|
|
display: flex;
|
|
flex-direction: column;
|
|
align-content: center;
|
|
justify-content: center;
|
|
padding-top: calc(1em * var(--header-inner-vertical-padding));
|
|
padding-bottom: calc(1em * var(--header-inner-vertical-padding));
|
|
padding-left: 0px;
|
|
color: var(--code-styler-header-text-colour);
|
|
font-size: inherit;
|
|
font-style: var(--code-styler-header-title-text-italic, normal);
|
|
font-weight: var(--code-styler-header-title-text-bold, normal);
|
|
transition: padding ease-in-out var(--duration-button);
|
|
}
|
|
body .code-styler-header-container:not(:has(div > img.code-styler-icon)) .code-styler-header-language-tag {
|
|
border-bottom-left-radius: 0 !important;
|
|
border-top-left-radius: 0 !important;
|
|
}
|
|
body .code-styler-header-container:not(:has(.code-styler-header-language-tag)) .code-styler-header-text {
|
|
padding-left: var(--header-spacing);
|
|
}
|
|
div:has(> img.code-styler-icon) {
|
|
display: inline-flex;
|
|
flex-direction: column;
|
|
align-content: center;
|
|
justify-content: center;
|
|
padding-top: calc(1em * var(--header-inner-vertical-padding));
|
|
padding-right: var(--header-spacing);
|
|
padding-bottom: calc(1em * var(--header-inner-vertical-padding));
|
|
padding-left: var(--header-spacing);
|
|
transition: padding ease-in-out var(--duration-button);
|
|
}
|
|
.code-styler-icon {
|
|
width: var(--language-icon-size);
|
|
height: var(--language-icon-size);
|
|
border: none !important;
|
|
margin: 0 !important;
|
|
filter: var(--language-icon-filter);
|
|
}
|
|
pre.code-styler-pre [class^=code-styler-line-highlighted] > .code-styler-line-text {
|
|
background-image: linear-gradient(90deg, var(--gradient-background-colour) 0% var(--gradient-highlights-colour-stop), var(--code-styler-codeblock-background-colour) 100%);
|
|
}
|
|
.code-styler-line-highlighted {
|
|
--gradient-background-colour: var(--code-styler-default-highlight-colour) !important;
|
|
}
|
|
.code-styler-active-line-highlight .cm-active,
|
|
.code-styler-active-line-highlight-editor .cm-active {
|
|
background: linear-gradient(to right, var(--code-styler-active-editor-line-colour), var(--gradient-highlights-colour-stop), transparent) !important;
|
|
}
|
|
.code-styler-active-line-highlight .markdown-source-view .HyperMD-codeblock.cm-active,
|
|
.code-styler-active-line-highlight-codeblock .markdown-source-view .HyperMD-codeblock.cm-active {
|
|
background: linear-gradient(to right, var(--code-styler-active-codeblock-line-colour), var(--gradient-highlights-colour-stop), var(--code-styler-codeblock-background-colour)) !important;
|
|
}
|
|
.markdown-source-view :not(div):not([class*=HyperMD-codeblock]) > .code-styler-line-number {
|
|
display: none;
|
|
}
|
|
.code-styler code > div:first-child > .code-styler-line-number {
|
|
box-shadow: 0px calc(-1 * var(--code-padding)) var(--code-styler-gutter-background-colour);
|
|
transition: box-shadow ease-in-out var(--duration-button);
|
|
}
|
|
.code-styler .code-styler-folded > code > div:first-child > .code-styler-line-number {
|
|
box-shadow: 0px 0px var(--code-styler-gutter-background-colour);
|
|
}
|
|
.code-styler code > div:last-child > .code-styler-line-number {
|
|
box-shadow: 0px var(--code-padding) var(--code-styler-gutter-background-colour);
|
|
}
|
|
.code-styler code > div:only-child > .code-styler-line-number {
|
|
box-shadow: 0px calc(-1 * var(--code-padding)) var(--code-styler-gutter-background-colour), 0px var(--code-padding) var(--code-styler-gutter-background-colour);
|
|
}
|
|
pre.code-styler-pre div > [class*=code-styler-line-number],
|
|
.markdown-source-view div[class*=HyperMD-codeblock] > [class*=code-styler-line-number] {
|
|
min-width: var(--line-number-gutter-min-width);
|
|
padding-right: 8px;
|
|
padding-left: calc(4px + var(--language-border-width));
|
|
background-color: var(--code-styler-gutter-background-colour);
|
|
color: var(--code-styler-gutter-text-colour);
|
|
font-family: var(--font-monospace);
|
|
font-size: var(--code-size);
|
|
text-align: right;
|
|
user-select: none;
|
|
}
|
|
.markdown-source-view [class*=HyperMD-codeblock] > .code-styler-line-number {
|
|
position: absolute;
|
|
left: 0;
|
|
display: inline-block;
|
|
min-width: calc(var(--line-number-gutter-min-width) - 12px);
|
|
height: 100%;
|
|
box-sizing: content-box;
|
|
padding-top: var(--line-number-height-correction);
|
|
direction: rtl;
|
|
overflow-x: auto;
|
|
}
|
|
.markdown-source-view .HyperMD-codeblock-begin .code-styler-line-number,
|
|
.markdown-source-view .HyperMD-codeblock-end .code-styler-line-number {
|
|
width: var(--line-number-gutter-width);
|
|
}
|
|
pre.code-styler-pre .code-styler-line-number {
|
|
position: sticky;
|
|
top: -1px;
|
|
left: 0;
|
|
border-top: var(--line-number-height-correction) solid transparent;
|
|
grid-column: 1;
|
|
white-space: nowrap;
|
|
}
|
|
pre.code-styler-pre div:last-child > .code-styler-line-number {
|
|
width: unset;
|
|
}
|
|
.code-styler-gutter-highlight pre.code-styler-pre [class*=code-styler-line-highlighted] .code-styler-line-number {
|
|
background-color: var(--gradient-background-colour);
|
|
}
|
|
.code-styler-active-line-highlight.code-styler-gutter-highlight .markdown-source-view .HyperMD-codeblock[class*=code-styler-line].cm-active .code-styler-line-number,
|
|
.code-styler-active-line-highlight-codeblock.code-styler-gutter-highlight .markdown-source-view .HyperMD-codeblock[class*=code-styler-line].cm-active .code-styler-line-number,
|
|
.code-styler-gutter-highlight [class*=code-styler-line-highlighted] .code-styler-line-number {
|
|
background-color: rgba(0, 0, 0, 0);
|
|
}
|
|
.code-styler-gutter-active-line .cm-active .code-styler-line-number {
|
|
color: var(--code-styler-gutter-active-text-colour);
|
|
}
|
|
.code-styler .markdown-source-view .HyperMD-codeblock:has(.code-styler-line-number) {
|
|
padding-left: calc(12px + var(--language-border-width) + var(--line-number-gutter-width) + var(--line-number-gutter-padding)) !important;
|
|
}
|
|
.code-styler .markdown-source-view .HyperMD-codeblock[class*=code-styler-line]::before {
|
|
content: none !important;
|
|
}
|
|
pre.code-styler-pre > code > div[class*=code-styler-line] {
|
|
display: contents !important;
|
|
}
|
|
pre.code-styler-pre .code-styler-line-text {
|
|
flex-basis: 100%;
|
|
padding-left: var(--line-number-gutter-padding);
|
|
grid-column: 2;
|
|
}
|
|
.HyperMD-codeblock:has(> .cm-widgetBuffer) {
|
|
white-space: nowrap;
|
|
}
|
|
.HyperMD-codeblock:has(> .cm-widgetBuffer) > .cm-hmd-codeblock {
|
|
white-space: break-spaces;
|
|
}
|
|
pre.code-styler-pre.code-styler-folded::-webkit-scrollbar,
|
|
pre.code-styler-pre.code-styler-folded code::-webkit-scrollbar,
|
|
pre.code-styler-pre.hide-scroll::-webkit-scrollbar,
|
|
pre.code-styler-pre.hide-scroll code::-webkit-scrollbar {
|
|
display: none !important;
|
|
}
|
|
@keyframes outdent {
|
|
from {
|
|
margin-right: calc(var(--copy-code-header-right-margin) - var(--dent-difference));
|
|
clip-path: var(--polygon-in);
|
|
}
|
|
to {
|
|
margin-right: var(--copy-code-header-right-margin);
|
|
clip-path: var(--polygon-out);
|
|
}
|
|
}
|
|
@keyframes indent {
|
|
from {
|
|
margin-right: var(--copy-code-header-right-margin);
|
|
clip-path: var(--polygon-out);
|
|
}
|
|
to {
|
|
margin-right: calc(var(--copy-code-header-right-margin) - var(--dent-difference));
|
|
clip-path: var(--polygon-in);
|
|
}
|
|
}
|
|
@keyframes reverse-outdent {
|
|
from {
|
|
clip-path: var(--polygon-in);
|
|
}
|
|
to {
|
|
clip-path: var(--polygon-out);
|
|
}
|
|
}
|
|
@keyframes reverse-indent {
|
|
from {
|
|
clip-path: var(--polygon-out);
|
|
}
|
|
to {
|
|
clip-path: var(--polygon-in);
|
|
}
|
|
}
|
|
pre.code-styler-pre button {
|
|
display: unset !important;
|
|
padding: 0 !important;
|
|
border: none !important;
|
|
margin: 0;
|
|
margin-top: 0 !important;
|
|
margin-bottom: 0 !important;
|
|
background: transparent !important;
|
|
box-shadow: none;
|
|
color: var(--code-styler-button-colour) !important;
|
|
font-family: var(--font-interface);
|
|
font-size: var(--font-ui-smaller);
|
|
opacity: 1;
|
|
transition: visibility var(--duration-button), opacity var(--duration-button);
|
|
visibility: visible;
|
|
}
|
|
pre.code-styler-pre.code-styler-folded button,
|
|
pre.code-styler-pre:not(.code-styler-folded):not(:hover) button,
|
|
pre.code-styler-pre:not(.code-styler-folded):not(:hover) .code-styler-header-container::after {
|
|
opacity: 0;
|
|
visibility: hidden;
|
|
}
|
|
.code-styler-header-container::after {
|
|
position: relative;
|
|
top: 0;
|
|
right: 0;
|
|
bottom: 0;
|
|
left: 0;
|
|
width: 20px;
|
|
height: 20px;
|
|
margin: auto;
|
|
margin-right: var(--header-button-spacing);
|
|
background-color: var(--code-styler-button-colour);
|
|
content: "\200b";
|
|
-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32' xml:space='preserve'%3E%3Cpath d='M16 22 6 12l1.4-1.4 8.6 8.6 8.6-8.6L26 12z'/%3E%3Cpath fill='none' d='M0 0h32v32H0z'/%3E%3C/svg%3E");
|
|
mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' %3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");
|
|
-webkit-mask-repeat: no-repeat;
|
|
mask-repeat: no-repeat;
|
|
opacity: 1;
|
|
scale: 0.8;
|
|
transition:
|
|
transform var(--duration-button) ease-out,
|
|
visibility var(--duration-button),
|
|
opacity var(--duration-button),
|
|
scale var(--duration-button) cubic-bezier(0.4, 0.14, 0.3, 1);
|
|
visibility: visible;
|
|
}
|
|
pre.code-styler-pre.code-styler-folded .code-styler-header-container::after,
|
|
.markdown-source-view :not(pre.code-styler-pre) > .code-styler-header-container:not(:has(+ .HyperMD-codeblock-begin))::after {
|
|
transform: rotate(-90deg);
|
|
}
|
|
.code-styler-header-container:hover::after {
|
|
scale: 1;
|
|
}
|
|
body pre.code-styler-pre:has(.code-styler-header-container-hidden) button.copy-code-button,
|
|
body .markdown-source-view :not(pre.code-styler-pre) > .code-styler-header-container-hidden + .HyperMD-codeblock-begin span.code-block-flair {
|
|
top: calc(0.5 * var(--font-text-size) * 0.875 * var(--line-height-normal)) !important;
|
|
--copy-code-header-right-margin: 12px;
|
|
}
|
|
body .markdown-source-view :not(pre.code-styler-pre) > .code-styler-header-container.hidden + .HyperMD-codeblock-begin {
|
|
overflow: hidden;
|
|
}
|
|
pre.code-styler-pre button.copy-code-button {
|
|
top: max(calc(0.5 * var(--container-height) * 1), calc(0.5 * var(--container-min-height) * 1)) !important;
|
|
bottom: unset !important;
|
|
transform: translateY(-50%);
|
|
}
|
|
pre.code-styler-pre button.copy-code-button,
|
|
pre.code-styler-pre button.run-code-button,
|
|
.markdown-source-view.mod-cm6 .HyperMD-codeblock.code-styler-line span.code-block-flair {
|
|
margin-right: calc(var(--copy-code-header-right-margin) - var(--dent-difference));
|
|
clip-path: var(--polygon-in);
|
|
will-change: margin-right, clip-path;
|
|
}
|
|
pre.code-styler-pre button.copy-code-button:not(:active),
|
|
pre.code-styler-pre button.run-code-button:not(:active),
|
|
.markdown-source-view.mod-cm6 .HyperMD-codeblock.code-styler-line span.code-block-flair:not(:active) {
|
|
animation: indent var(--duration-button);
|
|
}
|
|
pre.code-styler-pre button.copy-code-button:hover,
|
|
pre.code-styler-pre button.run-code-button:hover,
|
|
.markdown-source-view.mod-cm6 .HyperMD-codeblock.code-styler-line span.code-block-flair:hover {
|
|
margin-right: var(--copy-code-header-right-margin);
|
|
animation: outdent var(--duration-button);
|
|
background-color: transparent;
|
|
clip-path: var(--polygon-out);
|
|
}
|
|
pre.code-styler-pre button.copy-code-button:active,
|
|
pre.code-styler-pre button.run-code-button:active,
|
|
.markdown-source-view.mod-cm6 .HyperMD-codeblock.code-styler-line span.code-block-flair:active {
|
|
scale: 0.95;
|
|
transition: scale var(--duration-button) cubic-bezier(0.4, 0.14, 0.3, 1);
|
|
}
|
|
pre.code-styler-pre button.copy-code-button::before,
|
|
.markdown-source-view.mod-cm6 .HyperMD-codeblock.code-styler-line span.code-block-flair::before {
|
|
display: inline-block;
|
|
width: 14px;
|
|
height: 14px;
|
|
padding-right: 4px;
|
|
background-color: var(--code-styler-button-colour);
|
|
content: "\200b";
|
|
-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Cpath d='M28 10v18H10V10h18m0-2H10a2 2 0 0 0-2 2v18a2 2 0 0 0 2 2h18a2 2 0 0 0 2-2V10a2 2 0 0 0-2-2Z'/%3E%3Cpath d='M4 18H2V4a2 2 0 0 1 2-2h14v2H4Z'/%3E%3Cpath fill='none' d='M0 0h32v32H0z' data-name='<Transparent Rectangle>'/%3E%3C/svg%3E");
|
|
mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Cpath d='M28 10v18H10V10h18m0-2H10a2 2 0 0 0-2 2v18a2 2 0 0 0 2 2h18a2 2 0 0 0 2-2V10a2 2 0 0 0-2-2Z'/%3E%3Cpath d='M4 18H2V4a2 2 0 0 1 2-2h14v2H4Z'/%3E%3Cpath fill='none' d='M0 0h32v32H0z' data-name='<Transparent Rectangle>'/%3E%3C/svg%3E");
|
|
-webkit-mask-repeat: no-repeat;
|
|
mask-repeat: no-repeat;
|
|
vertical-align: 1px;
|
|
}
|
|
.markdown-source-view.mod-cm6 .HyperMD-codeblock.code-styler-line span.code-block-flair {
|
|
position: absolute;
|
|
top: min(calc(-0.5 * var(--container-height) * 1.1 - var(--header-separator-width)), calc(-0.5 * var(--container-min-height) * 1.1 - var(--header-separator-width))) !important;
|
|
right: 0;
|
|
padding: 0;
|
|
margin-top: 0 !important;
|
|
margin-bottom: 0 !important;
|
|
font-size: 0;
|
|
line-height: initial !important;
|
|
transform: translateY(-50%);
|
|
visibility: hidden;
|
|
}
|
|
.markdown-source-view.mod-cm6 .HyperMD-codeblock.code-styler-line span.code-block-flair > * {
|
|
width: 0px;
|
|
}
|
|
.markdown-source-view.mod-cm6 .HyperMD-codeblock.code-styler-line span.code-block-flair::before {
|
|
font-size: var(--font-ui-smaller);
|
|
opacity: 1;
|
|
vertical-align: -1px;
|
|
visibility: visible;
|
|
}
|
|
.markdown-source-view.mod-cm6 .HyperMD-codeblock.code-styler-line span.code-block-flair::after {
|
|
color: var(--code-styler-button-colour);
|
|
content: "Copy";
|
|
font-size: var(--font-ui-smaller);
|
|
opacity: 1;
|
|
visibility: visible;
|
|
}
|
|
.markdown-source-view.mod-cm6 .HyperMD-codeblock-begin.code-styler-line {
|
|
overflow: visible;
|
|
}
|
|
|
|
/* src/css/inlineCode.css */
|
|
body {
|
|
--code-styler-inline-font-weight: 400;
|
|
--code-styler-inline-border-radius: 6px;
|
|
--code-styler-inline-padding-vertical: 5px;
|
|
--code-styler-inline-padding-horizontal: 5px;
|
|
--code-styler-inline-margin-horizontal: 0px;
|
|
--code-styler-inline-colour: var(--code-normal);
|
|
--code-styler-inline-colour-active: var(--code-normal);
|
|
--code-styler-inline-background-colour: var(--code-background);
|
|
}
|
|
.code-styler .cm-s-obsidian span.cm-inline-code,
|
|
.code-styler .markdown-rendered :not(pre) > code:not([class*=blur]) {
|
|
padding: var(--code-styler-inline-padding-vertical) var(--code-styler-inline-padding-horizontal) !important;
|
|
border-radius: var(--code-styler-inline-border-radius) !important;
|
|
margin: 0px var(--code-styler-inline-margin-horizontal) !important;
|
|
background-color: var(--code-styler-inline-background-colour) !important;
|
|
color: var(--code-styler-inline-colour);
|
|
font-weight: var(--code-styler-inline-font-weight);
|
|
}
|
|
.code-styler .cm-s-obsidian span.cm-formatting-code {
|
|
display: inline !important;
|
|
color: var(--code-styler-inline-colour-active);
|
|
}
|
|
.code-styler .cm-s-obsidian span.code-styler-inline-opener ~ span.cm-inline-code:not(.cm-formatting-code) {
|
|
padding-left: 0px !important;
|
|
border-radius: 0px var(--code-styler-inline-border-radius) var(--code-styler-inline-border-radius) 0px !important;
|
|
margin-left: 0px !important;
|
|
}
|
|
.code-styler .cm-s-obsidian span.code-styler-inline-opener,
|
|
.code-styler .cm-s-obsidian span.cm-formatting-code:has(+ span.cm-inline-code:not(.cm-formatting-code)) {
|
|
padding-right: 0px !important;
|
|
padding-left: var(--code-styler-inline-padding-horizontal) !important;
|
|
border-radius: var(--code-styler-inline-border-radius) 0px 0px var(--code-styler-inline-border-radius) !important;
|
|
margin-right: 0px !important;
|
|
margin-left: var(--code-styler-inline-margin-horizontal) !important;
|
|
color: var(--code-styler-inline-colour-active);
|
|
}
|
|
.code-styler .cm-s-obsidian span.cm-formatting-code + span.cm-inline-code:not(.cm-formatting-code) {
|
|
padding-right: 0px !important;
|
|
padding-left: 0px !important;
|
|
border-radius: 0px !important;
|
|
margin: 0px 0px !important;
|
|
color: var(--code-styler-inline-colour-active);
|
|
}
|
|
.code-styler .cm-s-obsidian span.cm-inline-code:not(.cm-formatting-code) + span.cm-formatting-code {
|
|
padding-right: var(--code-styler-inline-padding-horizontal) !important;
|
|
padding-left: 0px !important;
|
|
border-radius: 0px var(--code-styler-inline-border-radius) var(--code-styler-inline-border-radius) 0px !important;
|
|
margin-right: var(--code-styler-inline-margin-horizontal) !important;
|
|
margin-left: 0px !important;
|
|
color: var(--code-styler-inline-colour-active);
|
|
}
|
|
body.code-styler span.code-styler-inline-opener > span > img.code-styler-inline-icon:not([class*=emoji]) {
|
|
display: inline !important;
|
|
height: calc(var(--code-size) * 1.2);
|
|
margin-bottom: 2px !important;
|
|
vertical-align: middle;
|
|
}
|
|
.code-styler span.code-styler-inline-opener .code-styler-inline-title {
|
|
color: var(--code-styler-inline-title-colour);
|
|
font-weight: var(--code-styler-inline-title-font-weight);
|
|
}
|
|
.code-styler span.code-styler-inline-opener .code-styler-inline-title::after {
|
|
color: var(--code-styler-inline-title-color);
|
|
content: "\ff5c";
|
|
}
|
|
.code-styler span.code-styler-inline-opener span:has(> img.code-styler-inline-icon) {
|
|
padding-right: 8px;
|
|
}
|
|
.code-styler .cm-s-obsidian span.cm-inline-code .code-styler-inline-parameters {
|
|
color: var(--code-comment);
|
|
}
|
|
|
|
/* src/css/pdfExport.css */
|
|
div.print {
|
|
--line-wrapping: pre-wrap !important;
|
|
}
|
|
.code-styler div.print pre.code-styler-pre code {
|
|
max-height: unset !important;
|
|
}
|
|
.code-styler div.print pre.code-styler-pre.code-styler-folded code {
|
|
display: none !important;
|
|
}
|
|
|
|
/* src/css/pickr.css */
|
|
.pickr {
|
|
position: relative;
|
|
overflow: visible;
|
|
transform: translateY(0);
|
|
}
|
|
.pickr * {
|
|
box-sizing: border-box;
|
|
border: none;
|
|
-webkit-appearance: none;
|
|
appearance: none;
|
|
outline: none;
|
|
}
|
|
.pickr .pcr-button {
|
|
position: relative;
|
|
width: 2em;
|
|
height: 2em;
|
|
padding: 0.5em;
|
|
border-radius: .15em;
|
|
background: url('data:image/svg+xml;utf8, <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 50 50" stroke="%2342445A" stroke-width="5px" stroke-linecap="round"><path d="M45,45L5,5"></path><path d="M45,5L5,45"></path></svg>') no-repeat center;
|
|
background-size: 0;
|
|
cursor: pointer;
|
|
font-family:
|
|
-apple-system,
|
|
BlinkMacSystemFont,
|
|
"Segoe UI",
|
|
"Roboto",
|
|
"Helvetica Neue",
|
|
Arial,
|
|
sans-serif;
|
|
transition: all 0.3s;
|
|
}
|
|
.pickr .pcr-button::before {
|
|
position: absolute;
|
|
z-index: -1;
|
|
top: 0;
|
|
left: 0;
|
|
width: 100%;
|
|
height: 100%;
|
|
border-radius: .15em;
|
|
background: url('data:image/svg+xml;utf8, <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 2 2"><path fill="white" d="M1,0H2V1H1V0ZM0,1H1V2H0V1Z"/><path fill="gray" d="M0,0H1V1H0V0ZM1,1H2V2H1V1Z"/></svg>');
|
|
background-size: .5em;
|
|
content: "";
|
|
}
|
|
.pickr .pcr-button::before {
|
|
z-index: initial;
|
|
}
|
|
.pickr .pcr-button::after {
|
|
position: absolute;
|
|
top: 0;
|
|
left: 0;
|
|
width: 100%;
|
|
height: 100%;
|
|
border-radius: .15em;
|
|
background: var(--pcr-color);
|
|
content: "";
|
|
transition: background 0.3s;
|
|
}
|
|
.pickr .pcr-button.clear {
|
|
background-size: 70%;
|
|
}
|
|
.pickr .pcr-button.clear::before {
|
|
opacity: 0;
|
|
}
|
|
.pickr .pcr-button.clear:focus {
|
|
box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.85), 0 0 0 3px var(--pcr-color);
|
|
}
|
|
.pickr .pcr-button.disabled {
|
|
cursor: not-allowed;
|
|
}
|
|
.pickr *,
|
|
.pcr-app * {
|
|
box-sizing: border-box;
|
|
border: none;
|
|
-webkit-appearance: none;
|
|
appearance: none;
|
|
outline: none;
|
|
}
|
|
.pickr input:focus,
|
|
.pickr input.pcr-active,
|
|
.pickr button:focus,
|
|
.pickr button.pcr-active,
|
|
.pcr-app input:focus,
|
|
.pcr-app input.pcr-active,
|
|
.pcr-app button:focus,
|
|
.pcr-app button.pcr-active {
|
|
box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.85), 0 0 0 3px var(--pcr-color);
|
|
}
|
|
.pickr .pcr-palette,
|
|
.pickr .pcr-slider,
|
|
.pcr-app .pcr-palette,
|
|
.pcr-app .pcr-slider {
|
|
transition: box-shadow 0.3s;
|
|
}
|
|
.pickr .pcr-palette:focus,
|
|
.pickr .pcr-slider:focus,
|
|
.pcr-app .pcr-palette:focus,
|
|
.pcr-app .pcr-slider:focus {
|
|
box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.85), 0 0 0 3px rgba(0, 0, 0, 0.25);
|
|
}
|
|
.pcr-app {
|
|
position: fixed;
|
|
z-index: 10000;
|
|
top: 0;
|
|
left: 0;
|
|
display: flex;
|
|
flex-direction: column;
|
|
border-radius: 0.1em;
|
|
background: #fff;
|
|
box-shadow: 0 0.15em 1.5em 0 rgba(0, 0, 0, 0.1), 0 0 1em 0 rgba(0, 0, 0, 0.03);
|
|
font-family:
|
|
-apple-system,
|
|
BlinkMacSystemFont,
|
|
"Segoe UI",
|
|
"Roboto",
|
|
"Helvetica Neue",
|
|
Arial,
|
|
sans-serif;
|
|
opacity: 0;
|
|
transition: opacity 0.3s, visibility 0s 0.3s;
|
|
visibility: hidden;
|
|
}
|
|
.pcr-app.visible {
|
|
opacity: 1;
|
|
transition: opacity 0.3s;
|
|
visibility: visible;
|
|
}
|
|
.pcr-app .pcr-swatches {
|
|
display: flex;
|
|
flex-wrap: wrap;
|
|
margin-top: 0.75em;
|
|
}
|
|
.pcr-app .pcr-swatches.pcr-last {
|
|
margin: 0;
|
|
}
|
|
@supports (display: grid) {
|
|
.pcr-app .pcr-swatches {
|
|
display: grid;
|
|
align-items: center;
|
|
grid-template-columns: repeat(auto-fit, 1.75em);
|
|
}
|
|
}
|
|
.pcr-app .pcr-swatches > button {
|
|
position: relative;
|
|
z-index: 1;
|
|
overflow: hidden;
|
|
width: calc(1.75em - 10px);
|
|
height: calc(1.75em - 10px);
|
|
flex-shrink: 0;
|
|
border-radius: 0.15em;
|
|
margin: 2.5px;
|
|
background: transparent;
|
|
cursor: pointer;
|
|
font-size: 1em;
|
|
justify-self: center;
|
|
transition: all 0.15s;
|
|
}
|
|
.pcr-app .pcr-swatches > button::before {
|
|
position: absolute;
|
|
z-index: -1;
|
|
top: 0;
|
|
left: 0;
|
|
width: 100%;
|
|
height: 100%;
|
|
border-radius: .15em;
|
|
background: url('data:image/svg+xml;utf8, <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 2 2"><path fill="white" d="M1,0H2V1H1V0ZM0,1H1V2H0V1Z"/><path fill="gray" d="M0,0H1V1H0V0ZM1,1H2V2H1V1Z"/></svg>');
|
|
background-size: 6px;
|
|
content: "";
|
|
}
|
|
.pcr-app .pcr-swatches > button::after {
|
|
position: absolute;
|
|
top: 0;
|
|
left: 0;
|
|
width: 100%;
|
|
height: 100%;
|
|
box-sizing: border-box;
|
|
border: 1px solid rgba(0, 0, 0, 0.05);
|
|
border-radius: 0.15em;
|
|
background: var(--pcr-color);
|
|
content: "";
|
|
}
|
|
.pcr-app .pcr-swatches > button:hover {
|
|
filter: brightness(1.05);
|
|
}
|
|
.pcr-app .pcr-swatches > button:not(.pcr-active) {
|
|
box-shadow: none;
|
|
}
|
|
.pcr-app .pcr-interaction {
|
|
display: flex;
|
|
flex-wrap: wrap;
|
|
align-items: center;
|
|
margin: 0 -0.2em 0 -0.2em;
|
|
}
|
|
.pcr-app .pcr-interaction > * {
|
|
margin: 0 0.2em;
|
|
}
|
|
.pcr-app .pcr-interaction input {
|
|
padding: 0.45em 0.5em;
|
|
border-radius: .15em;
|
|
margin-top: 0.75em;
|
|
background: #f1f3f4;
|
|
color: #75797e;
|
|
cursor: pointer;
|
|
font-size: 0.75em;
|
|
letter-spacing: 0.07em;
|
|
text-align: center;
|
|
transition: all 0.15s;
|
|
}
|
|
.pcr-app .pcr-interaction input:hover {
|
|
filter: brightness(0.975);
|
|
}
|
|
.pcr-app .pcr-interaction input:focus {
|
|
box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.85), 0 0 0 3px rgba(66, 133, 244, 0.75);
|
|
}
|
|
.pcr-app .pcr-interaction .pcr-result {
|
|
min-width: 8em;
|
|
flex: 1 1 8em;
|
|
border-radius: .15em;
|
|
background: #f1f3f4;
|
|
color: #75797e;
|
|
cursor: text;
|
|
text-align: left;
|
|
transition: all 0.2s;
|
|
}
|
|
.pcr-app .pcr-interaction .pcr-result::-moz-selection {
|
|
background: #4285f4;
|
|
color: #fff;
|
|
}
|
|
.pcr-app .pcr-interaction .pcr-result::selection {
|
|
background: #4285f4;
|
|
color: #fff;
|
|
}
|
|
.pcr-app .pcr-interaction .pcr-type.active {
|
|
background: #4285f4;
|
|
color: #fff;
|
|
}
|
|
.pcr-app .pcr-interaction .pcr-save,
|
|
.pcr-app .pcr-interaction .pcr-cancel,
|
|
.pcr-app .pcr-interaction .pcr-clear {
|
|
width: auto;
|
|
color: #fff;
|
|
}
|
|
.pcr-app .pcr-interaction .pcr-save,
|
|
.pcr-app .pcr-interaction .pcr-cancel,
|
|
.pcr-app .pcr-interaction .pcr-clear {
|
|
color: #fff;
|
|
}
|
|
.pcr-app .pcr-interaction .pcr-save:hover,
|
|
.pcr-app .pcr-interaction .pcr-cancel:hover,
|
|
.pcr-app .pcr-interaction .pcr-clear:hover {
|
|
filter: brightness(0.925);
|
|
}
|
|
.pcr-app .pcr-interaction .pcr-save {
|
|
background: #4285f4;
|
|
}
|
|
.pcr-app .pcr-interaction .pcr-clear,
|
|
.pcr-app .pcr-interaction .pcr-cancel {
|
|
background: #f44250;
|
|
}
|
|
.pcr-app .pcr-interaction .pcr-clear:focus,
|
|
.pcr-app .pcr-interaction .pcr-cancel:focus {
|
|
box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.85), 0 0 0 3px rgba(244, 66, 80, 0.75);
|
|
}
|
|
.pcr-app .pcr-selection .pcr-picker {
|
|
position: absolute;
|
|
width: 18px;
|
|
height: 18px;
|
|
border: 2px solid #fff;
|
|
border-radius: 100%;
|
|
-webkit-user-select: none;
|
|
-moz-user-select: none;
|
|
-ms-user-select: none;
|
|
user-select: none;
|
|
}
|
|
.pcr-app .pcr-selection .pcr-color-palette,
|
|
.pcr-app .pcr-selection .pcr-color-chooser,
|
|
.pcr-app .pcr-selection .pcr-color-opacity {
|
|
position: relative;
|
|
display: flex;
|
|
flex-direction: column;
|
|
cursor: grab;
|
|
cursor: -webkit-grab;
|
|
-webkit-user-select: none;
|
|
-moz-user-select: none;
|
|
-ms-user-select: none;
|
|
user-select: none;
|
|
}
|
|
.pcr-app .pcr-selection .pcr-color-palette:active,
|
|
.pcr-app .pcr-selection .pcr-color-chooser:active,
|
|
.pcr-app .pcr-selection .pcr-color-opacity:active {
|
|
cursor: grabbing;
|
|
cursor: -webkit-grabbing;
|
|
}
|
|
.pcr-app[data-theme=nano] {
|
|
width: 14.25em;
|
|
max-width: 95vw;
|
|
}
|
|
.pcr-app[data-theme=nano] .pcr-swatches {
|
|
padding: 0 .6em;
|
|
margin-top: .6em;
|
|
}
|
|
.pcr-app[data-theme=nano] .pcr-interaction {
|
|
padding: 0 .6em .6em .6em;
|
|
}
|
|
.pcr-app[data-theme=nano] .pcr-selection {
|
|
display: grid;
|
|
width: 100%;
|
|
height: 10.5em;
|
|
align-items: center;
|
|
align-self: flex-start;
|
|
grid-gap: .6em;
|
|
grid-template-columns: 1fr 4fr;
|
|
grid-template-rows: 5fr auto auto;
|
|
}
|
|
.pcr-app[data-theme=nano] .pcr-selection .pcr-color-preview {
|
|
display: flex;
|
|
width: 100%;
|
|
height: 100%;
|
|
flex-direction: row;
|
|
justify-content: center;
|
|
margin-left: .6em;
|
|
grid-area: 2 / 1 / 4 / 1;
|
|
}
|
|
.pcr-app[data-theme=nano] .pcr-selection .pcr-color-preview .pcr-last-color {
|
|
display: none;
|
|
}
|
|
.pcr-app[data-theme=nano] .pcr-selection .pcr-color-preview .pcr-current-color {
|
|
position: relative;
|
|
overflow: hidden;
|
|
width: 2em;
|
|
height: 2em;
|
|
border-radius: 50em;
|
|
background: var(--pcr-color);
|
|
}
|
|
.pcr-app[data-theme=nano] .pcr-selection .pcr-color-preview .pcr-current-color::before {
|
|
position: absolute;
|
|
z-index: -1;
|
|
top: 0;
|
|
left: 0;
|
|
width: 100%;
|
|
height: 100%;
|
|
border-radius: .15em;
|
|
background: url('data:image/svg+xml;utf8, <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 2 2"><path fill="white" d="M1,0H2V1H1V0ZM0,1H1V2H0V1Z"/><path fill="gray" d="M0,0H1V1H0V0ZM1,1H2V2H1V1Z"/></svg>');
|
|
background-size: .5em;
|
|
content: "";
|
|
}
|
|
.pcr-app[data-theme=nano] .pcr-selection .pcr-color-palette {
|
|
z-index: 1;
|
|
width: 100%;
|
|
height: 100%;
|
|
grid-area: 1 / 1 / 2 / 3;
|
|
}
|
|
.pcr-app[data-theme=nano] .pcr-selection .pcr-color-palette .pcr-palette {
|
|
width: 100%;
|
|
height: 100%;
|
|
border-radius: .15em;
|
|
}
|
|
.pcr-app[data-theme=nano] .pcr-selection .pcr-color-palette .pcr-palette::before {
|
|
position: absolute;
|
|
z-index: -1;
|
|
top: 0;
|
|
left: 0;
|
|
width: 100%;
|
|
height: 100%;
|
|
border-radius: .15em;
|
|
background: url('data:image/svg+xml;utf8, <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 2 2"><path fill="white" d="M1,0H2V1H1V0ZM0,1H1V2H0V1Z"/><path fill="gray" d="M0,0H1V1H0V0ZM1,1H2V2H1V1Z"/></svg>');
|
|
background-size: .5em;
|
|
content: "";
|
|
}
|
|
.pcr-app[data-theme=nano] .pcr-selection .pcr-color-chooser {
|
|
grid-area: 2 / 2 / 2 / 2;
|
|
}
|
|
.pcr-app[data-theme=nano] .pcr-selection .pcr-color-opacity {
|
|
grid-area: 3 / 2 / 3 / 2;
|
|
}
|
|
.pcr-app[data-theme=nano] .pcr-selection .pcr-color-chooser,
|
|
.pcr-app[data-theme=nano] .pcr-selection .pcr-color-opacity {
|
|
height: 0.5em;
|
|
margin: 0 .6em;
|
|
}
|
|
.pcr-app[data-theme=nano] .pcr-selection .pcr-color-chooser .pcr-picker,
|
|
.pcr-app[data-theme=nano] .pcr-selection .pcr-color-opacity .pcr-picker {
|
|
top: 50%;
|
|
transform: translateY(-50%);
|
|
}
|
|
.pcr-app[data-theme=nano] .pcr-selection .pcr-color-chooser .pcr-slider,
|
|
.pcr-app[data-theme=nano] .pcr-selection .pcr-color-opacity .pcr-slider {
|
|
flex-grow: 1;
|
|
border-radius: 50em;
|
|
}
|
|
.pcr-app[data-theme=nano] .pcr-selection .pcr-color-chooser .pcr-slider {
|
|
background: linear-gradient(to right, red, #ff0, lime, cyan, blue, #f0f, red);
|
|
}
|
|
.pcr-app[data-theme=nano] .pcr-selection .pcr-color-opacity .pcr-slider {
|
|
background: linear-gradient(to right, transparent, black), url('data:image/svg+xml;utf8, <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 2 2"><path fill="white" d="M1,0H2V1H1V0ZM0,1H1V2H0V1Z"/><path fill="gray" d="M0,0H1V1H0V0ZM1,1H2V2H1V1Z"/></svg>');
|
|
background-size: 100%, 0.25em;
|
|
}
|
|
.pcr-app .pcr-swatches > button {
|
|
padding: 0;
|
|
}
|
|
|
|
/* src/css/settings.css */
|
|
.setting-item.code-styler-spaced .checkbox-container + .pickr {
|
|
padding-left: 10px;
|
|
}
|
|
.code-styler-donation {
|
|
width: 70%;
|
|
margin: 0 auto;
|
|
text-align: center;
|
|
}
|
|
.code-styler-setting-text-area textarea {
|
|
width: 400px;
|
|
height: 220px;
|
|
}
|
|
button.code-styler-settings-button.copy-code-button {
|
|
position: absolute;
|
|
right: 0;
|
|
height: auto;
|
|
}
|
|
|
|
/* src/css/pluginCompatibility.css */
|
|
pre.code-styler-pre code ~ code.language-output {
|
|
display: block;
|
|
padding-bottom: calc(2.5 * var(--code-padding)) !important;
|
|
padding-left: calc(var(--line-number-gutter-padding)) !important;
|
|
border-top: var(--header-separator-width) solid var(--code-styler-header-separator-colour);
|
|
margin-bottom: 0;
|
|
}
|
|
pre.code-styler-pre.code-styler-folded code ~ code.language-output {
|
|
border-top-width: 0;
|
|
border-top-color: transparent;
|
|
}
|
|
pre.code-styler-pre:hover code ~ code.language-output {
|
|
margin-bottom: 0;
|
|
}
|
|
pre.code-styler-pre code ~ code.language-output input.interactive-stdin {
|
|
padding: 2px 8px;
|
|
border-width: 1px;
|
|
border-style: solid;
|
|
border-color: var(--code-comment);
|
|
border-radius: 5px;
|
|
background-color: var(--code-styler-codeblock-background-colour);
|
|
color: var(--text-normal);
|
|
}
|
|
pre.code-styler-pre code ~ code.language-output hr {
|
|
display: none;
|
|
}
|
|
pre.code-styler-pre button.run-code-button {
|
|
--copy-code-header-right-margin: 12px;
|
|
--dent-difference: 24px;
|
|
height: 14px;
|
|
margin-bottom: 6px !important;
|
|
}
|
|
pre.code-styler-pre.code-styler-folded button.run-code-button {
|
|
top: 500px;
|
|
}
|
|
pre.code-styler-pre button.run-code-button::before {
|
|
display: inline-block;
|
|
width: 14px;
|
|
height: 14px;
|
|
padding-right: 4px;
|
|
background-color: var(--code-styler-button-colour);
|
|
content: "\200b";
|
|
-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Cpath d='M7 28a1 1 0 0 1-1-1V5a1 1 0 0 1 1.482-.876l20 11a1 1 0 0 1 0 1.752l-20 11A1 1 0 0 1 7 28Z'/%3E%3Cpath fill='none' d='M0 0h32v32H0z' data-name='<Transparent Rectangle>'/%3E%3C/svg%3E");
|
|
mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Cpath d='M7 28a1 1 0 0 1-1-1V5a1 1 0 0 1 1.482-.876l20 11a1 1 0 0 1 0 1.752l-20 11A1 1 0 0 1 7 28Z'/%3E%3Cpath fill='none' d='M0 0h32v32H0z' data-name='<Transparent Rectangle>'/%3E%3C/svg%3E");
|
|
-webkit-mask-repeat: no-repeat;
|
|
mask-repeat: no-repeat;
|
|
vertical-align: 0px;
|
|
}
|
|
pre.code-styler-pre button.clear-button-disabled,
|
|
pre.code-styler-pre button.run-button-disabled {
|
|
display: none !important;
|
|
}
|
|
pre.code-styler-pre button.clear-button {
|
|
height: 14px;
|
|
margin-bottom: 6px !important;
|
|
margin-left: calc(var(--language-border-width) + 12px);
|
|
clip-path: var(--polygon-in);
|
|
will-change: margin-right, clip-path;
|
|
}
|
|
pre.code-styler-pre button.clear-button::before {
|
|
display: inline-block;
|
|
width: 14px;
|
|
height: 14px;
|
|
padding-right: 4px;
|
|
background-color: var(--code-styler-button-colour);
|
|
content: "\200b";
|
|
-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Cpath d='M16 4 6 14l1.41 1.41L15 7.83V28h2V7.83l7.59 7.58L26 14 16 4z'/%3E%3Cpath fill='none' d='M0 0h32v32H0z' data-name='<Transparent Rectangle>'/%3E%3C/svg%3E");
|
|
mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Cpath d='M16 4 6 14l1.41 1.41L15 7.83V28h2V7.83l7.59 7.58L26 14 16 4z'/%3E%3Cpath fill='none' d='M0 0h32v32H0z' data-name='<Transparent Rectangle>'/%3E%3C/svg%3E");
|
|
-webkit-mask-repeat: no-repeat;
|
|
mask-repeat: no-repeat;
|
|
vertical-align: 0px;
|
|
}
|
|
pre.code-styler-pre button.clear-button:not(:active) {
|
|
animation: reverse-indent var(--duration-button);
|
|
}
|
|
pre.code-styler-pre button.clear-button:hover {
|
|
margin-right: var(--copy-code-header-right-margin);
|
|
animation: reverse-outdent var(--duration-button);
|
|
background-color: transparent;
|
|
clip-path: var(--polygon-out);
|
|
}
|
|
pre.code-styler-pre button.clear-button:active {
|
|
scale: 0.95;
|
|
transition: scale var(--duration-button) cubic-bezier(0.4, 0.14, 0.3, 1);
|
|
}
|
|
.code-styler-pre-parent.has-run-code-button .load-state-indicator {
|
|
z-index: 10;
|
|
background: none;
|
|
color: none;
|
|
}
|
|
.code-styler-pre-parent.has-run-code-button .load-state-indicator::before {
|
|
box-shadow: none;
|
|
}
|
|
.code-styler-pre-parent.has-run-code-button .load-state-indicator svg {
|
|
color: var(--code-styler-button-colour);
|
|
}
|
|
.code-styler-pre-parent.has-run-code-button .load-state-indicator svg:hover {
|
|
color: var(--code-styler-button-active-colour);
|
|
}
|
|
.code-styler-pre-parent.has-run-code-button .load-state-indicator.visible {
|
|
transform: translateX(0);
|
|
}
|
|
.block-language-preview pre.code-styler-pre code {
|
|
white-space: unset;
|
|
}
|
|
pre.code-styler-pre span.code-block-line_num-wrap,
|
|
pre.code-styler-pre div.code-block-highlight-wrap {
|
|
display: none;
|
|
}
|
|
.markdown-source-view.mod-cm6 .cm-embed-block .code-styler-pre-parent + .edit-block-button::after {
|
|
padding-left: 4px;
|
|
content: "Edit Block";
|
|
font-size: var(--font-ui-smaller);
|
|
}
|
|
.markdown-source-view.mod-cm6 .cm-embed-block:not(:hover) .code-styler-pre-parent + .edit-block-button {
|
|
opacity: 0;
|
|
visibility: hidden;
|
|
}
|
|
.markdown-source-view.mod-cm6 .cm-embed-block .code-styler-pre-parent + .edit-block-button {
|
|
--copy-code-header-right-margin: calc(2.2 * var(--header-button-spacing));
|
|
--dent-difference: 0px;
|
|
--polygon-in: polygon(0 0, 18px 0, 18px 36px, 0 36px);
|
|
z-index: 10;
|
|
top: max(calc(0.5 * var(--container-height) * 1), calc(0.5 * var(--container-min-height) * 1));
|
|
padding: 0;
|
|
margin: 0;
|
|
margin-right: calc(var(--copy-code-header-right-margin) - var(--dent-difference));
|
|
clip-path: var(--polygon-in);
|
|
opacity: 1;
|
|
transform: translateY(-50%);
|
|
transition: visibility var(--duration-button), opacity var(--duration-button);
|
|
visibility: visible;
|
|
will-change: margin-right, clip-path;
|
|
}
|
|
body .cm-embed-block .code-styler-pre-parent:has(pre.code-styler-pre .code-styler-header-container-hidden) + .edit-block-button {
|
|
--copy-code-header-right-margin: 4px;
|
|
top: calc(0.5 * var(--font-text-size) * 0.875 * var(--line-height-normal));
|
|
}
|
|
.markdown-source-view.mod-cm6 .cm-embed-block:hover .code-styler-pre-parent + .edit-block-button:hover {
|
|
margin-right: var(--copy-code-header-right-margin);
|
|
animation: reverse-outdent var(--duration-button);
|
|
background: transparent;
|
|
clip-path: var(--polygon-out);
|
|
}
|
|
.markdown-source-view.mod-cm6 .cm-embed-block:hover .code-styler-pre-parent + .edit-block-button:active {
|
|
scale: 0.95;
|
|
transition: scale var(--duration-button) cubic-bezier(0.4, 0.14, 0.3, 1);
|
|
}
|
|
div.block-language-include pre.code-styler-pre button.copy-code-button {
|
|
margin: 0;
|
|
margin-right: calc(var(--copy-code-header-right-margin) - var(--dent-difference));
|
|
}
|
|
div.block-language-include pre.code-styler-pre button.copy-code-button:hover {
|
|
margin-right: var(--copy-code-header-right-margin);
|
|
}
|
|
|
|
/* src/styles.css */
|
|
/*! Complicated */
|
|
/*# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsic3JjL2Nzcy9jb2RlYmxvY2tzLmNzcyIsICJzcmMvY3NzL2lubGluZUNvZGUuY3NzIiwgInNyYy9jc3MvcGRmRXhwb3J0LmNzcyIsICJzcmMvY3NzL3BpY2tyLmNzcyIsICJzcmMvY3NzL3NldHRpbmdzLmNzcyIsICJzcmMvY3NzL3BsdWdpbkNvbXBhdGliaWxpdHkuY3NzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyIvKiogRGVmaW5lIENTUyBWYXJpYWJsZXMgKi9cbmJvZHkge1xuXHQvKiBDb2RlYmxvY2sgQm9keSAqL1xuXHQtLWJvcmRlci1yYWRpdXM6IDEwcHg7XG5cdC0tZ3JhZGllbnQtYmFja2dyb3VuZC1jb2xvdXI6IHRyYW5zcGFyZW50O1xuXHQtLWNvZGUtcGFkZGluZzogOHB4O1xuXHQtLWNvbnRhaW5lci1oZWlnaHQ6IGNhbGModmFyKC0tbGFuZ3VhZ2UtaWNvbi1zaXplKSArIDIgKiB2YXIoLS1oZWFkZXItaW5uZXItdmVydGljYWwtcGFkZGluZykgKiB2YXIoLS1oZWFkZXItZm9udC1zaXplKSk7XG5cdC0tY29udGFpbmVyLW1pbi1oZWlnaHQ6IGNhbGMoKHZhcigtLWhlYWRlci1mb250LXNpemUpICsgMiAqIHZhcigtLWhlYWRlci1pbm5lci12ZXJ0aWNhbC1wYWRkaW5nKSAqIHZhcigtLWhlYWRlci1mb250LXNpemUpKSAqIHZhcigtLWxpbmUtaGVpZ2h0LW5vcm1hbCkpO1xuXHQtLWxhbmd1YWdlLWJvcmRlci1jb2xvdXI6IHZhcigtLWNvZGUtc3R5bGVyLWNvZGVibG9jay1iYWNrZ3JvdW5kLWNvbG91cik7XG5cdC0tbGFuZ3VhZ2UtYm9yZGVyLXdpZHRoOiAwcHg7XG5cblx0LyogSGVhZGVyICovXG5cdC0taGVhZGVyLWZvbnQtc2l6ZTogdmFyKC0tY29kZS1zaXplKTtcblx0LS1oZWFkZXItcGFkZGluZzogMHB4O1xuXHQtLWhlYWRlci1pbm5lci12ZXJ0aWNhbC1wYWRkaW5nOiAwLjM7XG5cdC0taGVhZGVyLXNwYWNpbmc6IDE1cHg7XG5cdC0taGVhZGVyLWJ1dHRvbi1zcGFjaW5nOiAxNHB4O1xuXHQtLWhlYWRlci1zZXBhcmF0b3Itd2lkdGg6IDJweDtcblx0LS1oZWFkZXItc2VwYXJhdG9yLXdpZHRoLXBhZGRpbmc6IHZhcigtLWhlYWRlci1zZXBhcmF0b3Itd2lkdGgpO1xuXHQtLWNvZGUtc3R5bGVyLWhlYWRlci1ib3JkZXI6IG5vbmU7XG5cdC0tZm9sZGVkLWJvdHRvbS1ib3JkZXI6IDAgc29saWQgdHJhbnNwYXJlbnQ7XG5cdC0tbGFuZ3VhZ2UtaWNvbi1zaXplOiAyOHB4O1xuXHQtLWxhbmd1YWdlLWljb24tZmlsdGVyOiBub25lO1xuXG5cdC8qIExpbmVzICovXG5cdC0tZ3JhZGllbnQtaGlnaGxpZ2h0cy1jb2xvdXItc3RvcDogMTAwJTtcblxuXHQvKiBMaW5lIE51bWJlcnMgKi9cblx0LS1saW5lLW51bWJlci1oZWlnaHQtY29ycmVjdGlvbjogMnB4O1xuXHQtLWxpbmUtbnVtYmVyLWd1dHRlci1wYWRkaW5nOiAxNnB4O1xuXHQtLWxpbmUtbnVtYmVyLWd1dHRlci1taW4td2lkdGg6IDMyLjY3cHg7XG5cblx0LyogTGluZSBUZXh0ICovXG5cdC0tbGluZS13cmFwcGluZzogcHJlLXdyYXA7XG5cdC0tbGluZS1hY3RpdmUtd3JhcHBpbmc6IHZhcigtLWxpbmUtd3JhcHBpbmcpO1xuXG5cdC8qIEJ1dHRvbnMgKi9cblx0LS1jb2RlLXN0eWxlci1idXR0b24tY29sb3VyOiB2YXIoLS10ZXh0LW11dGVkKTtcblx0LS1jb2RlLXN0eWxlci1idXR0b24tYWN0aXZlLWNvbG91cjogd2hpdGU7XG5cdC0tZHVyYXRpb24tYnV0dG9uOiAyNDBtcztcblx0LS1kZW50LWRpZmZlcmVuY2U6IDMwcHg7XG5cdC0tcG9seWdvbi1pbjogcG9seWdvbigwIDAsIDE2cHggMCwgMTZweCAzNnB4LCAwIDM2cHgpO1xuXHQtLXBvbHlnb24tb3V0OiBwb2x5Z29uKDAgMCwgMTAwJSAwLCAxMDAlIDEwMCUsIDAgMTAwJSk7XG5cdC0tY29weS1jb2RlLWhlYWRlci1yaWdodC1tYXJnaW46IGNhbGMoMyAqIHZhcigtLWhlYWRlci1idXR0b24tc3BhY2luZykpO1xufVxuXG4vKiogUHJlIGVsZW1lbnRzICovXG4uY29kZS1zdHlsZXItcHJlLXBhcmVudHtcblx0bWFyZ2luLWJvdHRvbTogMTZweDtcbn1cbi5jb2RlLXN0eWxlciBwcmUuY29kZS1zdHlsZXItcHJlIHtcblx0b3ZlcmZsb3c6IGhpZGRlbiAhaW1wb3J0YW50O1xuXHRtaW4taGVpZ2h0OiB1bnNldDtcblx0cGFkZGluZzogMHB4ICFpbXBvcnRhbnQ7XG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpICFpbXBvcnRhbnQ7XG5cdGJhY2tncm91bmQ6IHZhcigtLWNvZGUtc3R5bGVyLWNvZGVibG9jay1iYWNrZ3JvdW5kLWNvbG91cikgIWltcG9ydGFudDtcbn1cbi5jb2RlLXN0eWxlciBwcmUuY29kZS1zdHlsZXItcHJlW2NsYXNzKj0nbGFuZ3VhZ2UtJ10ge1xuXHRwYWRkaW5nLWxlZnQ6IHZhcigtLWxhbmd1YWdlLWJvcmRlci13aWR0aCkgIWltcG9ydGFudDtcblx0YmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDkwZGVnLCB2YXIoLS1sYW5ndWFnZS1ib3JkZXItY29sb3VyKSwgdmFyKC0tbGFuZ3VhZ2UtYm9yZGVyLWNvbG91cikgdmFyKC0tbGFuZ3VhZ2UtYm9yZGVyLXdpZHRoKSwgdmFyKC0tY29kZS1zdHlsZXItY29kZWJsb2NrLWJhY2tncm91bmQtY29sb3VyKSB2YXIoLS1sYW5ndWFnZS1ib3JkZXItd2lkdGgpLCB2YXIoLS1jb2RlLXN0eWxlci1jb2RlYmxvY2stYmFja2dyb3VuZC1jb2xvdXIpIDEwMCUpLCB2YXIoLS1jb2RlLXN0eWxlci1jb2RlYmxvY2stYmFja2dyb3VuZC1jb2xvdXIpICFpbXBvcnRhbnQ7XG59XG4uY29kZS1zdHlsZXIgcHJlID4gY29kZSB7XG5cdHBhZGRpbmctdG9wOiB2YXIoLS1jb2RlLXBhZGRpbmcpICFpbXBvcnRhbnQ7XG5cdHBhZGRpbmctYm90dG9tOiB2YXIoLS1jb2RlLXBhZGRpbmcpICFpbXBvcnRhbnQ7XG59XG4uY29kZS1zdHlsZXIgcHJlLmNvZGUtc3R5bGVyLXByZSA+IGNvZGUge1xuXHRkaXNwbGF5OiBncmlkO1xuXHRtYXgtaGVpZ2h0OiB1bnNldDtcblx0cGFkZGluZy10b3A6IHZhcigtLWNvZGUtcGFkZGluZykgIWltcG9ydGFudDtcblx0cGFkZGluZy1yaWdodDogMHB4ICFpbXBvcnRhbnQ7XG5cdHBhZGRpbmctYm90dG9tOiB2YXIoLS1jb2RlLXBhZGRpbmcpICFpbXBvcnRhbnQ7XG5cdHBhZGRpbmctbGVmdDogMHB4ICFpbXBvcnRhbnQ7XG5cdGJvcmRlci1yYWRpdXM6IDBweCAhaW1wb3J0YW50O1xuXHRiYWNrZ3JvdW5kOiBub25lICFpbXBvcnRhbnQ7XG5cdGdyaWQtdGVtcGxhdGUtY29sdW1uczogbWluLWNvbnRlbnQgYXV0bztcblx0Z3JpZC10ZW1wbGF0ZS1yb3dzOiBhdXRvO1xuXHRvdmVyZmxvdy14OiBvdmVybGF5O1xuXHR0cmFuc2l0aW9uLWR1cmF0aW9uOiB2YXIoLS1kdXJhdGlvbi1idXR0b24pO1xuXHR0cmFuc2l0aW9uLXByb3BlcnR5OiBtYXgtaGVpZ2h0LCBwYWRkaW5nLCBib3JkZXItdG9wO1xuXHR0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7XG5cdHdoaXRlLXNwYWNlOiB2YXIoLS1saW5lLXdyYXBwaW5nKSAhaW1wb3J0YW50O1xufVxuLmNvZGUtc3R5bGVyIHByZS5jb2RlLXN0eWxlci1wcmUud3JhcHBlZCA+IGNvZGUge1xuXHQtLWxpbmUtd3JhcHBpbmc6IHByZS13cmFwO1xuXHQtLWxpbmUtYWN0aXZlLXdyYXBwaW5nOiBwcmUtd3JhcDtcbn1cbi5jb2RlLXN0eWxlciBwcmUuY29kZS1zdHlsZXItcHJlLnVud3JhcHBlZCA+IGNvZGUge1xuXHQtLWxpbmUtd3JhcHBpbmc6IHByZTtcblx0LS1saW5lLWFjdGl2ZS13cmFwcGluZzogcHJlO1xufVxuLmNvZGUtc3R5bGVyIHByZS5jb2RlLXN0eWxlci1wcmUudW53cmFwcGVkLWluYWN0aXZlID4gY29kZSB7XG5cdC0tbGluZS13cmFwcGluZzogcHJlO1xuXHQtLWxpbmUtYWN0aXZlLXdyYXBwaW5nOiBwcmUtd3JhcDtcbn1cbi5jb2RlLXN0eWxlciBwcmUuY29kZS1zdHlsZXItcHJlIGNvZGU6bm90KDpoYXMoID4gaW5wdXRbc3R5bGUqPVwiZGlzcGxheTogaW5saW5lO1wiXSkpOmFjdGl2ZSB7XG5cdC0tbGluZS13cmFwcGluZzogdmFyKC0tbGluZS1hY3RpdmUtd3JhcHBpbmcpICFpbXBvcnRhbnQ7XG59XG4uY29kZS1zdHlsZXIgcHJlLmNvZGUtc3R5bGVyLXByZS5jb2RlLXN0eWxlci1mb2xkZWQgPiBjb2RlIHtcblx0bWF4LWhlaWdodDogMCAhaW1wb3J0YW50O1xuXHRwYWRkaW5nLXRvcDogMCAhaW1wb3J0YW50O1xuXHRwYWRkaW5nLWJvdHRvbTogMCAhaW1wb3J0YW50O1xufVxuLmNvZGUtc3R5bGVyIHByZS5jb2RlLXN0eWxlci1wcmU6OmJlZm9yZSxcbi5jb2RlLXN0eWxlciBwcmUuY29kZS1zdHlsZXItcHJlOjphZnRlciB7XG5cdGNvbnRlbnQ6IG5vbmUgIWltcG9ydGFudDtcbn1cbi5tYXJrZG93bi1zb3VyY2Utdmlldy5tb2QtY202IC5jbS1lbWJlZC1ibG9jayBwcmUuY29kZS1zdHlsZXItcHJlIHtcblx0bWFyZ2luOiAxZW0gMHB4O1xufVxuXG4vKiogRWRpdGluZyBNb2RlIEJvZHkgKi9cbmJvZHkuY29kZS1zdHlsZXIgLm1hcmtkb3duLXNvdXJjZS12aWV3IDpub3QocHJlLmNvZGUtc3R5bGVyLXByZSkgPiAuY29kZS1zdHlsZXItaGVhZGVyLWNvbnRhaW5lciArIFtjbGFzcyo9XCJjb2RlLXN0eWxlci1saW5lXCJdLkh5cGVyTUQtY29kZWJsb2NrLWJlZ2luIHtcblx0Ym9yZGVyLXRvcDogbm9uZSAhaW1wb3J0YW50O1xuXHRib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwcHggIWltcG9ydGFudDtcblx0Ym9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDBweCAhaW1wb3J0YW50O1xufVxuLmNvZGUtc3R5bGVyIC5tYXJrZG93bi1zb3VyY2UtdmlldyBbY2xhc3MqPVwiY29kZS1zdHlsZXItbGluZVwiXS5IeXBlck1ELWNvZGVibG9jay1lbmQge1xuXHRib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtcblx0Ym9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpO1xufVxuYm9keS5jb2RlLXN0eWxlciAubWFya2Rvd24tc291cmNlLXZpZXcgOm5vdChwcmUuY29kZS1zdHlsZXItcHJlKSA+IC5jb2RlLXN0eWxlci1oZWFkZXItY29udGFpbmVyLWhpZGRlbiArIFtjbGFzcyo9XCJjb2RlLXN0eWxlci1saW5lXCJdLkh5cGVyTUQtY29kZWJsb2NrLWJlZ2luIHtcblx0Ym9yZGVyLXRvcC1sZWZ0LXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cykgIWltcG9ydGFudDtcblx0Ym9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpICFpbXBvcnRhbnRcbn1cbmJvZHkuY29kZS1zdHlsZXIgLm1hcmtkb3duLXNvdXJjZS12aWV3IDpub3QocHJlLmNvZGUtc3R5bGVyLXByZSkgPiAuY29kZS1zdHlsZXItaGVhZGVyLWNvbnRhaW5lci1oaWRkZW4gKyBbY2xhc3MqPVwiY29kZS1zdHlsZXItbGluZVwiXS5IeXBlck1ELWNvZGVibG9jay1iZWdpbiAuY29kZS1zdHlsZXItbGluZS1udW1iZXIge1xuXHRib3JkZXItdG9wLWxlZnQtcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKSAhaW1wb3J0YW50O1xufVxuLmNvZGUtc3R5bGVyIC5tYXJrZG93bi1zb3VyY2UtdmlldyAuSHlwZXJNRC1jb2RlYmxvY2tbY2xhc3MqPSdjb2RlLXN0eWxlci1saW5lJ10ge1xuXHRvdmVyZmxvdzogaGlkZGVuO1xuXHRwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG5cdHBhZGRpbmctbGVmdDogdmFyKC0tc2l6ZS00LTQpICFpbXBvcnRhbnQ7XG5cdGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCg5MGRlZywgdmFyKC0tZ3JhZGllbnQtYmFja2dyb3VuZC1jb2xvdXIpIHZhcigtLWdyYWRpZW50LWhpZ2hsaWdodHMtY29sb3VyLXN0b3ApLCB0cmFuc3BhcmVudCAxMDAlKSwgdmFyKC0tY29kZS1zdHlsZXItY29kZWJsb2NrLWJhY2tncm91bmQtY29sb3VyKSAhaW1wb3J0YW50O1xufVxuLmNvZGUtc3R5bGVyIC5tYXJrZG93bi1zb3VyY2UtdmlldyAuSHlwZXJNRC1jb2RlYmxvY2tbY2xhc3MqPSdjb2RlLXN0eWxlci1saW5lJ11bY2xhc3MqPSdsYW5ndWFnZS0nXSB7XG5cdGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCg5MGRlZywgdmFyKC0tbGFuZ3VhZ2UtYm9yZGVyLWNvbG91ciksIHZhcigtLWxhbmd1YWdlLWJvcmRlci1jb2xvdXIpIHZhcigtLWxhbmd1YWdlLWJvcmRlci13aWR0aCksIHZhcigtLWdyYWRpZW50LWJhY2tncm91bmQtY29sb3VyKSB2YXIoLS1sYW5ndWFnZS1ib3JkZXItd2lkdGgpIHZhcigtLWdyYWRpZW50LWhpZ2hsaWdodHMtY29sb3VyLXN0b3ApLCB0cmFuc3BhcmVudCAxMDAlKSwgdmFyKC0tY29kZS1zdHlsZXItY29kZWJsb2NrLWJhY2tncm91bmQtY29sb3VyKSAhaW1wb3J0YW50O1xufVxuLmNvZGUtc3R5bGVyIC5tYXJrZG93bi1zb3VyY2UtdmlldyAuSHlwZXJNRC1jb2RlYmxvY2tbY2xhc3MqPSdjb2RlLXN0eWxlci1saW5lJ11bY2xhc3MqPSdsYW5ndWFnZS0nXSAuY29kZS1zdHlsZXItbGluZS1udW1iZXIge1xuXHRtYXJnaW4tbGVmdDogdmFyKC0tbGFuZ3VhZ2UtYm9yZGVyLXdpZHRoKTtcbn1cblxuLyoqIEhlYWRlciBzdHlsaW5nICovXG5ib2R5IC5jb2RlLXN0eWxlci1oZWFkZXItY29udGFpbmVyLWhpZGRlbiB7XG5cdGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cbi5jb2RlLXN0eWxlci1oZWFkZXItY29udGFpbmVyIHsgIFxuXHRkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XG5cdG92ZXJmbG93OiB2aXNpYmxlO1xuXHRoZWlnaHQ6IHZhcigtLWNvbnRhaW5lci1oZWlnaHQpO1xuXHRtaW4taGVpZ2h0OiB2YXIoLS1jb250YWluZXItbWluLWhlaWdodCk7XG5cdGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuXHRwYWRkaW5nLXRvcDogdmFyKC0taGVhZGVyLXBhZGRpbmcpO1xuXHRtYXJnaW4tdG9wOiAwcHggIWltcG9ydGFudDtcblx0Zm9udC1zaXplOiB2YXIoLS1oZWFkZXItZm9udC1zaXplKTtcblx0dHJhbnNpdGlvbjogYm9yZGVyLWJvdHRvbSBlYXNlLWluLW91dCB2YXIoLS1kdXJhdGlvbi1idXR0b24pO1xuXHR1c2VyLXNlbGVjdDogbm9uZTtcbn1cbi5tYXJrZG93bi1zb3VyY2UtdmlldyA6bm90KHByZS5jb2RlLXN0eWxlci1wcmUpID4gLmNvZGUtc3R5bGVyLWhlYWRlci1jb250YWluZXIge1xuXHRwYWRkaW5nLWJvdHRvbTogdmFyKC0taGVhZGVyLXNlcGFyYXRvci13aWR0aCk7XG5cdHBhZGRpbmctbGVmdDogdmFyKC0tbGFuZ3VhZ2UtYm9yZGVyLXdpZHRoKTtcblx0Ym9yZGVyLXRvcDogdmFyKC0tY29kZS1zdHlsZXItaGVhZGVyLWJvcmRlcik7XG5cdGJvcmRlci1yaWdodDogdmFyKC0tY29kZS1zdHlsZXItaGVhZGVyLWJvcmRlcik7XG5cdGJvcmRlci1sZWZ0OiB2YXIoLS1jb2RlLXN0eWxlci1oZWFkZXItYm9yZGVyKTtcblx0YmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHZhcigtLWNvZGUtc3R5bGVyLWhlYWRlci1iYWNrZ3JvdW5kLWNvbG91cikgMCUsdmFyKC0tY29kZS1zdHlsZXItaGVhZGVyLWJhY2tncm91bmQtY29sb3VyKSBjYWxjKDEwMCUgLSB2YXIoLS1oZWFkZXItc2VwYXJhdG9yLXdpZHRoKSksIHZhcigtLWNvZGUtc3R5bGVyLWhlYWRlci1zZXBhcmF0b3ItY29sb3VyKSBjYWxjKDEwMCUgLSB2YXIoLS1oZWFkZXItc2VwYXJhdG9yLXdpZHRoKSksIHZhcigtLWNvZGUtc3R5bGVyLWhlYWRlci1zZXBhcmF0b3ItY29sb3VyKSAxMDAlKSB2YXIoLS1sYW5ndWFnZS1ib3JkZXItd2lkdGgpIGJvdHRvbS8xMDAlIGJvcmRlci1ib3ggbm8tcmVwZWF0LHZhcigtLWxhbmd1YWdlLWJvcmRlci1jb2xvdXIpICFpbXBvcnRhbnQ7XG5cdGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpO1xuXHRib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7XG59XG5wcmUuY29kZS1zdHlsZXItcHJlIC5jb2RlLXN0eWxlci1oZWFkZXItY29udGFpbmVyIHtcblx0Ym9yZGVyLWJvdHRvbTogdmFyKC0taGVhZGVyLXNlcGFyYXRvci13aWR0aCkgc29saWQgdmFyKC0tY29kZS1zdHlsZXItaGVhZGVyLXNlcGFyYXRvci1jb2xvdXIpO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2RlLXN0eWxlci1oZWFkZXItYmFja2dyb3VuZC1jb2xvdXIpO1xufVxuLm1hcmtkb3duLXNvdXJjZS12aWV3IDpub3QocHJlLmNvZGUtc3R5bGVyLXByZSkgPiAuY29kZS1zdHlsZXItaGVhZGVyLWNvbnRhaW5lci5jb2RlLXN0eWxlci1oZWFkZXItZm9sZGVkIHtcblx0cGFkZGluZy1ib3R0b206IHZhcigtLWhlYWRlci1wYWRkaW5nKTtcblx0Ym9yZGVyLWJvdHRvbTogdmFyKC0tY29kZS1zdHlsZXItaGVhZGVyLWJvcmRlcik7XG5cdGJvcmRlci1ib3R0b206IHZhcigtLWZvbGRlZC1ib3R0b20tYm9yZGVyKTtcblx0YmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHZhcigtLWNvZGUtc3R5bGVyLWhlYWRlci1iYWNrZ3JvdW5kLWNvbG91cikgMCUsdmFyKC0tY29kZS1zdHlsZXItaGVhZGVyLWJhY2tncm91bmQtY29sb3VyKSAxMDAlKSB2YXIoLS1sYW5ndWFnZS1ib3JkZXItd2lkdGgpIGJvdHRvbS8xMDAlIGJvcmRlci1ib3ggbm8tcmVwZWF0LHZhcigtLWxhbmd1YWdlLWJvcmRlci1jb2xvdXIpICFpbXBvcnRhbnQ7XG5cdGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpO1xuXHRib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7XG59XG5wcmUuY29kZS1zdHlsZXItcHJlLmNvZGUtc3R5bGVyLWZvbGRlZCAuY29kZS1zdHlsZXItaGVhZGVyLWNvbnRhaW5lciB7XG5cdGJvcmRlci1ib3R0b206IHZhcigtLWZvbGRlZC1ib3R0b20tYm9yZGVyKTtcbn1cbi5jb2RlLXN0eWxlci1oZWFkZXItY29udGFpbmVyIC5jb2RlLXN0eWxlci1oZWFkZXItbGFuZ3VhZ2UtdGFnIHtcblx0ZGlzcGxheTogZmxleDtcblx0aGVpZ2h0OiAxMDAlO1xuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRhbGlnbi1jb250ZW50OiBjZW50ZXI7XG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXHRwYWRkaW5nLXRvcDogY2FsYygxZW0gKiB2YXIoLS1oZWFkZXItaW5uZXItdmVydGljYWwtcGFkZGluZykpO1xuXHRwYWRkaW5nLXJpZ2h0OiB2YXIoLS1oZWFkZXItc3BhY2luZyk7XG5cdHBhZGRpbmctYm90dG9tOiBjYWxjKDFlbSAqIHZhcigtLWhlYWRlci1pbm5lci12ZXJ0aWNhbC1wYWRkaW5nKSk7XG5cdHBhZGRpbmctbGVmdDogdmFyKC0taGVhZGVyLXNwYWNpbmcpO1xuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKSB2YXIoLS1ib3JkZXItcmFkaXVzKSAwcHggMHB4O1xuXHRtYXJnaW4tcmlnaHQ6IHZhcigtLWhlYWRlci1zcGFjaW5nKTtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29kZS1zdHlsZXItaGVhZGVyLWxhbmd1YWdlLXRhZy1iYWNrZ3JvdW5kLWNvbG91cik7XG5cdGNvbG9yOiB2YXIoLS1jb2RlLXN0eWxlci1oZWFkZXItbGFuZ3VhZ2UtdGFnLXRleHQtY29sb3VyKTtcblx0Zm9udC1zaXplOiBpbmhlcml0O1xuXHRmb250LXN0eWxlOiB2YXIoLS1jb2RlLXN0eWxlci1oZWFkZXItbGFuZ3VhZ2UtdGFnLXRleHQtaXRhbGljLCBub3JtYWwpO1xuXHRmb250LXdlaWdodDogdmFyKC0tY29kZS1zdHlsZXItaGVhZGVyLWxhbmd1YWdlLXRhZy10ZXh0LWJvbGQsIG5vcm1hbCk7XG5cdHRleHQtYWxpZ246IGNlbnRlcjtcblx0dHJhbnNpdGlvbjogYm9yZGVyLXJhZGl1cyBlYXNlLWluLW91dCB2YXIoLS1kdXJhdGlvbi1idXR0b24pLCBwYWRkaW5nIGVhc2UtaW4tb3V0IHZhcigtLWR1cmF0aW9uLWJ1dHRvbik7XG59XG4ubWFya2Rvd24tc291cmNlLXZpZXcgOm5vdChwcmUuY29kZS1zdHlsZXItcHJlKSA+IC5jb2RlLXN0eWxlci1oZWFkZXItY29udGFpbmVyLmNvZGUtc3R5bGVyLWhlYWRlci1mb2xkZWQgLmNvZGUtc3R5bGVyLWhlYWRlci1sYW5ndWFnZS10YWcsXG5wcmUuY29kZS1zdHlsZXItcHJlLmNvZGUtc3R5bGVyLWZvbGRlZCAuY29kZS1zdHlsZXItaGVhZGVyLWNvbnRhaW5lciAuY29kZS1zdHlsZXItaGVhZGVyLWxhbmd1YWdlLXRhZyB7XG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpO1xufVxuLmNvZGUtc3R5bGVyLWhlYWRlci10ZXh0IHtcblx0ZGlzcGxheTogZmxleDtcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0YWxpZ24tY29udGVudDogY2VudGVyO1xuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0cGFkZGluZy10b3A6IGNhbGMoMWVtICogdmFyKC0taGVhZGVyLWlubmVyLXZlcnRpY2FsLXBhZGRpbmcpKTtcblx0cGFkZGluZy1ib3R0b206IGNhbGMoMWVtICogdmFyKC0taGVhZGVyLWlubmVyLXZlcnRpY2FsLXBhZGRpbmcpKTtcblx0cGFkZGluZy1sZWZ0OiAwcHg7XG5cdGNvbG9yOiB2YXIoLS1jb2RlLXN0eWxlci1oZWFkZXItdGV4dC1jb2xvdXIpO1xuXHRmb250LXNpemU6IGluaGVyaXQ7XG5cdGZvbnQtc3R5bGU6IHZhcigtLWNvZGUtc3R5bGVyLWhlYWRlci10aXRsZS10ZXh0LWl0YWxpYywgbm9ybWFsKTtcblx0Zm9udC13ZWlnaHQ6IHZhcigtLWNvZGUtc3R5bGVyLWhlYWRlci10aXRsZS10ZXh0LWJvbGQsIG5vcm1hbCk7XG5cdHRyYW5zaXRpb246IHBhZGRpbmcgZWFzZS1pbi1vdXQgdmFyKC0tZHVyYXRpb24tYnV0dG9uKTtcbn1cbmJvZHkgLmNvZGUtc3R5bGVyLWhlYWRlci1jb250YWluZXI6bm90KDpoYXMoIGRpdiA+IGltZy5jb2RlLXN0eWxlci1pY29uKSkgLmNvZGUtc3R5bGVyLWhlYWRlci1sYW5ndWFnZS10YWcge1xuXHRib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG5cdGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDAgIWltcG9ydGFudDtcbn1cbmJvZHkgLmNvZGUtc3R5bGVyLWhlYWRlci1jb250YWluZXI6bm90KDpoYXMoIC5jb2RlLXN0eWxlci1oZWFkZXItbGFuZ3VhZ2UtdGFnKSkgLmNvZGUtc3R5bGVyLWhlYWRlci10ZXh0IHtcblx0cGFkZGluZy1sZWZ0OiB2YXIoLS1oZWFkZXItc3BhY2luZyk7XG59XG5kaXY6aGFzKD4gaW1nLmNvZGUtc3R5bGVyLWljb24pIHtcblx0ZGlzcGxheTogaW5saW5lLWZsZXg7XG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdGFsaWduLWNvbnRlbnQ6IGNlbnRlcjtcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdHBhZGRpbmctdG9wOiBjYWxjKDFlbSAqIHZhcigtLWhlYWRlci1pbm5lci12ZXJ0aWNhbC1wYWRkaW5nKSk7XG5cdHBhZGRpbmctcmlnaHQ6IHZhcigtLWhlYWRlci1zcGFjaW5nKTtcblx0cGFkZGluZy1ib3R0b206IGNhbGMoMWVtICogdmFyKC0taGVhZGVyLWlubmVyLXZlcnRpY2FsLXBhZGRpbmcpKTtcblx0cGFkZGluZy1sZWZ0OiB2YXIoLS1oZWFkZXItc3BhY2luZyk7XG5cdHRyYW5zaXRpb246IHBhZGRpbmcgZWFzZS1pbi1vdXQgdmFyKC0tZHVyYXRpb24tYnV0dG9uKTtcbn1cbi5jb2RlLXN0eWxlci1pY29uIHtcblx0d2lkdGg6IHZhcigtLWxhbmd1YWdlLWljb24tc2l6ZSk7XG5cdGhlaWdodDogdmFyKC0tbGFuZ3VhZ2UtaWNvbi1zaXplKTtcblx0Ym9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG5cdG1hcmdpbjogMCAhaW1wb3J0YW50O1xuXHRmaWx0ZXI6IHZhcigtLWxhbmd1YWdlLWljb24tZmlsdGVyKTtcbn1cblxuLyoqIExpbmVzICovXG5wcmUuY29kZS1zdHlsZXItcHJlIFtjbGFzc149J2NvZGUtc3R5bGVyLWxpbmUtaGlnaGxpZ2h0ZWQnXSA+IC5jb2RlLXN0eWxlci1saW5lLXRleHQge1xuXHRiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoOTBkZWcsIHZhcigtLWdyYWRpZW50LWJhY2tncm91bmQtY29sb3VyKSAwJSB2YXIoLS1ncmFkaWVudC1oaWdobGlnaHRzLWNvbG91ci1zdG9wKSwgdmFyKC0tY29kZS1zdHlsZXItY29kZWJsb2NrLWJhY2tncm91bmQtY29sb3VyKSAxMDAlKTtcbn1cbi5jb2RlLXN0eWxlci1saW5lLWhpZ2hsaWdodGVkIHtcblx0LS1ncmFkaWVudC1iYWNrZ3JvdW5kLWNvbG91cjogdmFyKC0tY29kZS1zdHlsZXItZGVmYXVsdC1oaWdobGlnaHQtY29sb3VyKSAhaW1wb3J0YW50O1xufVxuLyohIENvbXBsaWNhdGVkICovXG4uY29kZS1zdHlsZXItYWN0aXZlLWxpbmUtaGlnaGxpZ2h0IC5jbS1hY3RpdmUsXG4uY29kZS1zdHlsZXItYWN0aXZlLWxpbmUtaGlnaGxpZ2h0LWVkaXRvciAuY20tYWN0aXZlIHtcblx0YmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCB2YXIoLS1jb2RlLXN0eWxlci1hY3RpdmUtZWRpdG9yLWxpbmUtY29sb3VyKSwgdmFyKC0tZ3JhZGllbnQtaGlnaGxpZ2h0cy1jb2xvdXItc3RvcCksIHRyYW5zcGFyZW50KSAhaW1wb3J0YW50O1xufVxuLyohIENvbXBsaWNhdGVkICovXG4uY29kZS1zdHlsZXItYWN0aXZlLWxpbmUtaGlnaGxpZ2h0IC5tYXJrZG93bi1zb3VyY2UtdmlldyAuSHlwZXJNRC1jb2RlYmxvY2suY20tYWN0aXZlLFxuLmNvZGUtc3R5bGVyLWFjdGl2ZS1saW5lLWhpZ2hsaWdodC1jb2RlYmxvY2sgLm1hcmtkb3duLXNvdXJjZS12aWV3IC5IeXBlck1ELWNvZGVibG9jay5jbS1hY3RpdmUge1xuXHRiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHZhcigtLWNvZGUtc3R5bGVyLWFjdGl2ZS1jb2RlYmxvY2stbGluZS1jb2xvdXIpLCB2YXIoLS1ncmFkaWVudC1oaWdobGlnaHRzLWNvbG91ci1zdG9wKSwgdmFyKC0tY29kZS1zdHlsZXItY29kZWJsb2NrLWJhY2tncm91bmQtY29sb3VyKSkgIWltcG9ydGFudDtcbn1cblxuLyoqIExpbmUgbnVtYmVycyAqL1xuLm1hcmtkb3duLXNvdXJjZS12aWV3IDpub3QoZGl2KTpub3QoW2NsYXNzKj1cIkh5cGVyTUQtY29kZWJsb2NrXCJdKSA+IC5jb2RlLXN0eWxlci1saW5lLW51bWJlciB7XG5cdGRpc3BsYXk6IG5vbmU7XG59XG4uY29kZS1zdHlsZXIgY29kZSA+IGRpdjpmaXJzdC1jaGlsZCA+IC5jb2RlLXN0eWxlci1saW5lLW51bWJlciB7IC8qPyBNYWludGFpbiBndXR0ZXIgY29sb3VyIHdoZW4gcGFkZGVkICovXG5cdGJveC1zaGFkb3c6IDBweCBjYWxjKC0xICogdmFyKC0tY29kZS1wYWRkaW5nKSkgdmFyKC0tY29kZS1zdHlsZXItZ3V0dGVyLWJhY2tncm91bmQtY29sb3VyKTtcblx0dHJhbnNpdGlvbjogYm94LXNoYWRvdyBlYXNlLWluLW91dCB2YXIoLS1kdXJhdGlvbi1idXR0b24pO1xufVxuLmNvZGUtc3R5bGVyIC5jb2RlLXN0eWxlci1mb2xkZWQgPiBjb2RlID4gZGl2OmZpcnN0LWNoaWxkID4gLmNvZGUtc3R5bGVyLWxpbmUtbnVtYmVyIHsgLyo/IE1haW50YWluIGd1dHRlciBjb2xvdXIgd2hlbiBwYWRkZWQgKi9cblx0Ym94LXNoYWRvdzogMHB4IDBweCB2YXIoLS1jb2RlLXN0eWxlci1ndXR0ZXItYmFja2dyb3VuZC1jb2xvdXIpO1xufVxuLmNvZGUtc3R5bGVyIGNvZGUgPiBkaXY6bGFzdC1jaGlsZCA+IC5jb2RlLXN0eWxlci1saW5lLW51bWJlciB7IC8qPyBNYWludGFpbiBndXR0ZXIgY29sb3VyIHdoZW4gcGFkZGVkICovXG5cdGJveC1zaGFkb3c6IDBweCB2YXIoLS1jb2RlLXBhZGRpbmcpIHZhcigtLWNvZGUtc3R5bGVyLWd1dHRlci1iYWNrZ3JvdW5kLWNvbG91cik7XG59XG4uY29kZS1zdHlsZXIgY29kZSA+IGRpdjpvbmx5LWNoaWxkID4gLmNvZGUtc3R5bGVyLWxpbmUtbnVtYmVyIHsgLyo/IE1haW50YWluIGd1dHRlciBjb2xvdXIgd2hlbiBwYWRkZWQgKi9cblx0Ym94LXNoYWRvdzogMHB4IGNhbGMoLTEgKiB2YXIoLS1jb2RlLXBhZGRpbmcpKSB2YXIoLS1jb2RlLXN0eWxlci1ndXR0ZXItYmFja2dyb3VuZC1jb2xvdXIpLDBweCB2YXIoLS1jb2RlLXBhZGRpbmcpIHZhcigtLWNvZGUtc3R5bGVyLWd1dHRlci1iYWNrZ3JvdW5kLWNvbG91cik7XG59XG5wcmUuY29kZS1zdHlsZXItcHJlIGRpdiA+IFtjbGFzcyo9J2NvZGUtc3R5bGVyLWxpbmUtbnVtYmVyJ10sXG4ubWFya2Rvd24tc291cmNlLXZpZXcgZGl2W2NsYXNzKj1cIkh5cGVyTUQtY29kZWJsb2NrXCJdID4gW2NsYXNzKj0nY29kZS1zdHlsZXItbGluZS1udW1iZXInXSB7XG5cdG1pbi13aWR0aDogdmFyKC0tbGluZS1udW1iZXItZ3V0dGVyLW1pbi13aWR0aCk7XG5cdHBhZGRpbmctcmlnaHQ6IDhweDtcblx0cGFkZGluZy1sZWZ0OiBjYWxjKDRweCArIHZhcigtLWxhbmd1YWdlLWJvcmRlci13aWR0aCkpO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2RlLXN0eWxlci1ndXR0ZXItYmFja2dyb3VuZC1jb2xvdXIpO1xuXHRjb2xvcjogdmFyKC0tY29kZS1zdHlsZXItZ3V0dGVyLXRleHQtY29sb3VyKTtcblx0Zm9udC1mYW1pbHk6IHZhcigtLWZvbnQtbW9ub3NwYWNlKTtcblx0Zm9udC1zaXplOiB2YXIoLS1jb2RlLXNpemUpO1xuXHR0ZXh0LWFsaWduOiByaWdodDtcblx0dXNlci1zZWxlY3Q6IG5vbmU7XG59XG4ubWFya2Rvd24tc291cmNlLXZpZXcgW2NsYXNzKj1cIkh5cGVyTUQtY29kZWJsb2NrXCJdID4gLmNvZGUtc3R5bGVyLWxpbmUtbnVtYmVyIHtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHRsZWZ0OiAwO1xuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdG1pbi13aWR0aDogY2FsYyh2YXIoLS1saW5lLW51bWJlci1ndXR0ZXItbWluLXdpZHRoKSAtIDEycHgpO1xuXHRoZWlnaHQ6IDEwMCU7XG5cdGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuXHRwYWRkaW5nLXRvcDogdmFyKC0tbGluZS1udW1iZXItaGVpZ2h0LWNvcnJlY3Rpb24pO1xuXHRkaXJlY3Rpb246IHJ0bDtcblx0b3ZlcmZsb3cteDogYXV0bztcbn1cbi5tYXJrZG93bi1zb3VyY2UtdmlldyAuSHlwZXJNRC1jb2RlYmxvY2stYmVnaW4gLmNvZGUtc3R5bGVyLWxpbmUtbnVtYmVyLFxuLm1hcmtkb3duLXNvdXJjZS12aWV3IC5IeXBlck1ELWNvZGVibG9jay1lbmQgLmNvZGUtc3R5bGVyLWxpbmUtbnVtYmVyIHtcblx0d2lkdGg6IHZhcigtLWxpbmUtbnVtYmVyLWd1dHRlci13aWR0aCk7XG59XG5wcmUuY29kZS1zdHlsZXItcHJlIC5jb2RlLXN0eWxlci1saW5lLW51bWJlciB7XG5cdHBvc2l0aW9uOiBzdGlja3k7XG5cdHRvcDogLTFweDtcblx0bGVmdDogMDtcblx0Ym9yZGVyLXRvcDogdmFyKC0tbGluZS1udW1iZXItaGVpZ2h0LWNvcnJlY3Rpb24pIHNvbGlkIHRyYW5zcGFyZW50O1xuXHRncmlkLWNvbHVtbjogMTtcblx0d2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cbnByZS5jb2RlLXN0eWxlci1wcmUgZGl2Omxhc3QtY2hpbGQgPiAuY29kZS1zdHlsZXItbGluZS1udW1iZXIge1xuXHR3aWR0aDogdW5zZXQ7XG59XG4uY29kZS1zdHlsZXItZ3V0dGVyLWhpZ2hsaWdodCBwcmUuY29kZS1zdHlsZXItcHJlIFtjbGFzcyo9XCJjb2RlLXN0eWxlci1saW5lLWhpZ2hsaWdodGVkXCJdIC5jb2RlLXN0eWxlci1saW5lLW51bWJlciB7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdyYWRpZW50LWJhY2tncm91bmQtY29sb3VyKTtcbn1cbi5jb2RlLXN0eWxlci1hY3RpdmUtbGluZS1oaWdobGlnaHQuY29kZS1zdHlsZXItZ3V0dGVyLWhpZ2hsaWdodCAubWFya2Rvd24tc291cmNlLXZpZXcgLkh5cGVyTUQtY29kZWJsb2NrW2NsYXNzKj1cImNvZGUtc3R5bGVyLWxpbmVcIl0uY20tYWN0aXZlIC5jb2RlLXN0eWxlci1saW5lLW51bWJlcixcbi5jb2RlLXN0eWxlci1hY3RpdmUtbGluZS1oaWdobGlnaHQtY29kZWJsb2NrLmNvZGUtc3R5bGVyLWd1dHRlci1oaWdobGlnaHQgLm1hcmtkb3duLXNvdXJjZS12aWV3IC5IeXBlck1ELWNvZGVibG9ja1tjbGFzcyo9XCJjb2RlLXN0eWxlci1saW5lXCJdLmNtLWFjdGl2ZSAuY29kZS1zdHlsZXItbGluZS1udW1iZXIsXG4uY29kZS1zdHlsZXItZ3V0dGVyLWhpZ2hsaWdodCBbY2xhc3MqPVwiY29kZS1zdHlsZXItbGluZS1oaWdobGlnaHRlZFwiXSAuY29kZS1zdHlsZXItbGluZS1udW1iZXIge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsMCwwLDApO1xufVxuLmNvZGUtc3R5bGVyLWd1dHRlci1hY3RpdmUtbGluZSAuY20tYWN0aXZlIC5jb2RlLXN0eWxlci1saW5lLW51bWJlcntcblx0Y29sb3I6IHZhcigtLWNvZGUtc3R5bGVyLWd1dHRlci1hY3RpdmUtdGV4dC1jb2xvdXIpO1xufVxuLmNvZGUtc3R5bGVyIC5tYXJrZG93bi1zb3VyY2UtdmlldyAuSHlwZXJNRC1jb2RlYmxvY2s6aGFzKC5jb2RlLXN0eWxlci1saW5lLW51bWJlcikge1xuXHRwYWRkaW5nLWxlZnQ6IGNhbGMoMTJweCArIHZhcigtLWxhbmd1YWdlLWJvcmRlci13aWR0aCkgKyB2YXIoLS1saW5lLW51bWJlci1ndXR0ZXItd2lkdGgpICsgdmFyKC0tbGluZS1udW1iZXItZ3V0dGVyLXBhZGRpbmcpKSAhaW1wb3J0YW50O1xufVxuLmNvZGUtc3R5bGVyIC5tYXJrZG93bi1zb3VyY2UtdmlldyAuSHlwZXJNRC1jb2RlYmxvY2tbY2xhc3MqPSdjb2RlLXN0eWxlci1saW5lJ106OmJlZm9yZSB7XG5cdGNvbnRlbnQ6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLyoqIExpbmUgdGV4dCAqL1xucHJlLmNvZGUtc3R5bGVyLXByZSA+IGNvZGUgPiBkaXZbY2xhc3MqPSdjb2RlLXN0eWxlci1saW5lJ10ge1xuXHRkaXNwbGF5OiBjb250ZW50cyAhaW1wb3J0YW50O1xufVxucHJlLmNvZGUtc3R5bGVyLXByZSAuY29kZS1zdHlsZXItbGluZS10ZXh0IHtcblx0ZmxleC1iYXNpczogMTAwJTtcblx0cGFkZGluZy1sZWZ0OiB2YXIoLS1saW5lLW51bWJlci1ndXR0ZXItcGFkZGluZyk7XG5cdGdyaWQtY29sdW1uOiAyO1xufVxuLkh5cGVyTUQtY29kZWJsb2NrOmhhcyg+IC5jbS13aWRnZXRCdWZmZXIpIHsgLyo/IFByZXZlbnQgTGluZSBXcmFwcyAqL1xuXHR3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuLkh5cGVyTUQtY29kZWJsb2NrOmhhcyg+IC5jbS13aWRnZXRCdWZmZXIpID4gLmNtLWhtZC1jb2RlYmxvY2sgeyAvKj8gUHJldmVudCBMaW5lIFdyYXBzICovXG5cdHdoaXRlLXNwYWNlOiBicmVhay1zcGFjZXM7XG59XG5cbi8qKiBTY3JvbGwgQmFyICovXG5wcmUuY29kZS1zdHlsZXItcHJlLmNvZGUtc3R5bGVyLWZvbGRlZDo6LXdlYmtpdC1zY3JvbGxiYXIsXG5wcmUuY29kZS1zdHlsZXItcHJlLmNvZGUtc3R5bGVyLWZvbGRlZCBjb2RlOjotd2Via2l0LXNjcm9sbGJhcixcbnByZS5jb2RlLXN0eWxlci1wcmUuaGlkZS1zY3JvbGw6Oi13ZWJraXQtc2Nyb2xsYmFyLFxucHJlLmNvZGUtc3R5bGVyLXByZS5oaWRlLXNjcm9sbCBjb2RlOjotd2Via2l0LXNjcm9sbGJhciB7XG5cdGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLyoqIEJ1dHRvbnMgKi9cbkBrZXlmcmFtZXMgb3V0ZGVudCB7XG5cdGZyb20ge1xuXHRcdG1hcmdpbi1yaWdodDogY2FsYyh2YXIoLS1jb3B5LWNvZGUtaGVhZGVyLXJpZ2h0LW1hcmdpbikgLSB2YXIoLS1kZW50LWRpZmZlcmVuY2UpKTtcblx0XHRjbGlwLXBhdGg6IHZhcigtLXBvbHlnb24taW4pO1xuXHR9XG5cdHRvIHtcblx0XHRtYXJnaW4tcmlnaHQ6IHZhcigtLWNvcHktY29kZS1oZWFkZXItcmlnaHQtbWFyZ2luKTtcblx0XHRjbGlwLXBhdGg6IHZhcigtLXBvbHlnb24tb3V0KTtcblx0fVxufVxuQGtleWZyYW1lcyBpbmRlbnQge1xuXHRmcm9tIHtcblx0XHRtYXJnaW4tcmlnaHQ6IHZhcigtLWNvcHktY29kZS1oZWFkZXItcmlnaHQtbWFyZ2luKTtcblx0XHRjbGlwLXBhdGg6IHZhcigtLXBvbHlnb24tb3V0KTtcblx0fVxuXHR0byB7XG5cdFx0bWFyZ2luLXJpZ2h0OiBjYWxjKHZhcigtLWNvcHktY29kZS1oZWFkZXItcmlnaHQtbWFyZ2luKSAtIHZhcigtLWRlbnQtZGlmZmVyZW5jZSkpO1xuXHRcdGNsaXAtcGF0aDogdmFyKC0tcG9seWdvbi1pbik7XG5cdH1cbn1cbkBrZXlmcmFtZXMgcmV2ZXJzZS1vdXRkZW50IHtcblx0ZnJvbSB7XG5cdFx0Y2xpcC1wYXRoOiB2YXIoLS1wb2x5Z29uLWluKTtcblx0fVxuXHR0byB7XG5cdFx0Y2xpcC1wYXRoOiB2YXIoLS1wb2x5Z29uLW91dCk7XG5cdH1cbn1cbkBrZXlmcmFtZXMgcmV2ZXJzZS1pbmRlbnQge1xuXHRmcm9tIHtcblx0XHRjbGlwLXBhdGg6IHZhcigtLXBvbHlnb24tb3V0KTtcblx0fVxuXHR0byB7XG5cdFx0Y2xpcC1wYXRoOiB2YXIoLS1wb2x5Z29uLWluKTtcblx0fVxufVxucHJlLmNvZGUtc3R5bGVyLXByZSBidXR0b24ge1xuXHRkaXNwbGF5OiB1bnNldCAhaW1wb3J0YW50O1xuXHRwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG5cdGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuXHRtYXJnaW46IDA7XG5cdG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDtcblx0bWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xuXHRiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuXHRib3gtc2hhZG93OiBub25lO1xuXHRjb2xvcjogdmFyKC0tY29kZS1zdHlsZXItYnV0dG9uLWNvbG91cikgIWltcG9ydGFudDtcblx0Zm9udC1mYW1pbHk6IHZhcigtLWZvbnQtaW50ZXJmYWNlKTtcblx0Zm9udC1zaXplOiB2YXIoLS1mb250LXVpLXNtYWxsZXIpO1xuXHRvcGFjaXR5OiAxO1xuICAgIHRyYW5zaXRpb246IHZpc2liaWxpdHkgdmFyKC0tZHVyYXRpb24tYnV0dG9uKSwgb3BhY2l0eSB2YXIoLS1kdXJhdGlvbi1idXR0b24pO1xuXHR2aXNpYmlsaXR5OiB2aXNpYmxlO1xufVxucHJlLmNvZGUtc3R5bGVyLXByZS5jb2RlLXN0eWxlci1mb2xkZWQgYnV0dG9uLFxucHJlLmNvZGUtc3R5bGVyLXByZTpub3QoLmNvZGUtc3R5bGVyLWZvbGRlZCk6bm90KDpob3ZlcikgYnV0dG9uLFxucHJlLmNvZGUtc3R5bGVyLXByZTpub3QoLmNvZGUtc3R5bGVyLWZvbGRlZCk6bm90KDpob3ZlcikgLmNvZGUtc3R5bGVyLWhlYWRlci1jb250YWluZXI6OmFmdGVyIHtcblx0b3BhY2l0eTogMDtcblx0dmlzaWJpbGl0eTogaGlkZGVuXG59XG4uY29kZS1zdHlsZXItaGVhZGVyLWNvbnRhaW5lcjo6YWZ0ZXIge1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdHRvcDogMDtcblx0cmlnaHQ6IDA7XG5cdGJvdHRvbTogMDtcblx0bGVmdDogMDtcblx0d2lkdGg6IDIwcHg7XG5cdGhlaWdodDogMjBweDtcblx0bWFyZ2luOiBhdXRvO1xuXHRtYXJnaW4tcmlnaHQ6IHZhcigtLWhlYWRlci1idXR0b24tc3BhY2luZyk7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvZGUtc3R5bGVyLWJ1dHRvbi1jb2xvdXIpO1xuXHRjb250ZW50OiBcIlxcMjAwYlwiO1xuXHQtd2Via2l0LW1hc2staW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMzIgMzInIHhtbDpzcGFjZT0ncHJlc2VydmUnJTNFJTNDcGF0aCBkPSdNMTYgMjIgNiAxMmwxLjQtMS40IDguNiA4LjYgOC42LTguNkwyNiAxMnonLyUzRSUzQ3BhdGggZmlsbD0nbm9uZScgZD0nTTAgMGgzMnYzMkgweicvJTNFJTNDL3N2ZyUzRVwiKTtcblx0bWFzay1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAzMiAzMicgZmlsbD0nbm9uZScgc3Ryb2tlPSdjdXJyZW50Q29sb3InIHN0cm9rZS13aWR0aD0nMicgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbGluZWpvaW49J3JvdW5kJyAlM0UlM0Nwb2x5bGluZSBwb2ludHM9JzYgOSAxMiAxNSAxOCA5Jy8lM0UlM0Mvc3ZnJTNFXCIpO1xuXHQtd2Via2l0LW1hc2stcmVwZWF0OiBuby1yZXBlYXQ7XG5cdG1hc2stcmVwZWF0OiBuby1yZXBlYXQ7XG5cdG9wYWNpdHk6IDE7XG5cdHNjYWxlOiAwLjg7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLWR1cmF0aW9uLWJ1dHRvbikgZWFzZS1vdXQsIHZpc2liaWxpdHkgdmFyKC0tZHVyYXRpb24tYnV0dG9uKSwgb3BhY2l0eSB2YXIoLS1kdXJhdGlvbi1idXR0b24pLCBzY2FsZSB2YXIoLS1kdXJhdGlvbi1idXR0b24pIGN1YmljLWJlemllcigwLjQsIDAuMTQsIDAuMywgMSk7XG5cdHZpc2liaWxpdHk6IHZpc2libGU7XG59XG5wcmUuY29kZS1zdHlsZXItcHJlLmNvZGUtc3R5bGVyLWZvbGRlZCAuY29kZS1zdHlsZXItaGVhZGVyLWNvbnRhaW5lcjo6YWZ0ZXIsXG4ubWFya2Rvd24tc291cmNlLXZpZXcgOm5vdChwcmUuY29kZS1zdHlsZXItcHJlKSA+IC5jb2RlLXN0eWxlci1oZWFkZXItY29udGFpbmVyOm5vdCg6aGFzKCsgLkh5cGVyTUQtY29kZWJsb2NrLWJlZ2luKSk6OmFmdGVyIHtcblx0dHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbn1cbi5jb2RlLXN0eWxlci1oZWFkZXItY29udGFpbmVyOmhvdmVyOjphZnRlciB7XG5cdHNjYWxlOiAxO1xufVxuYm9keSBwcmUuY29kZS1zdHlsZXItcHJlOmhhcyguY29kZS1zdHlsZXItaGVhZGVyLWNvbnRhaW5lci1oaWRkZW4pIGJ1dHRvbi5jb3B5LWNvZGUtYnV0dG9uLFxuYm9keSAubWFya2Rvd24tc291cmNlLXZpZXcgOm5vdChwcmUuY29kZS1zdHlsZXItcHJlKSA+IC5jb2RlLXN0eWxlci1oZWFkZXItY29udGFpbmVyLWhpZGRlbiArIC5IeXBlck1ELWNvZGVibG9jay1iZWdpbiBzcGFuLmNvZGUtYmxvY2stZmxhaXIge1xuXHR0b3A6IGNhbGMoMC41ICogdmFyKC0tZm9udC10ZXh0LXNpemUpICogMC44NzUgKiB2YXIoLS1saW5lLWhlaWdodC1ub3JtYWwpKSAhaW1wb3J0YW50O1xuXHQtLWNvcHktY29kZS1oZWFkZXItcmlnaHQtbWFyZ2luOiAxMnB4O1xufVxuYm9keSAubWFya2Rvd24tc291cmNlLXZpZXcgOm5vdChwcmUuY29kZS1zdHlsZXItcHJlKSA+IC5jb2RlLXN0eWxlci1oZWFkZXItY29udGFpbmVyLmhpZGRlbiArIC5IeXBlck1ELWNvZGVibG9jay1iZWdpbiB7XG5cdG92ZXJmbG93OiBoaWRkZW47XG59XG5wcmUuY29kZS1zdHlsZXItcHJlIGJ1dHRvbi5jb3B5LWNvZGUtYnV0dG9uIHtcblx0dG9wOiBtYXgoY2FsYygwLjUgKiB2YXIoLS1jb250YWluZXItaGVpZ2h0KSAqIDEpLGNhbGMoMC41ICogdmFyKC0tY29udGFpbmVyLW1pbi1oZWlnaHQpICogMSkpICFpbXBvcnRhbnQ7XG5cdGJvdHRvbTogdW5zZXQgIWltcG9ydGFudDtcblx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xufVxucHJlLmNvZGUtc3R5bGVyLXByZSBidXR0b24uY29weS1jb2RlLWJ1dHRvbixcbnByZS5jb2RlLXN0eWxlci1wcmUgYnV0dG9uLnJ1bi1jb2RlLWJ1dHRvbiwgLyo/IEV4ZWN1dGUgQ29kZSBQbHVnaW4gQ29tcGF0aWJpbGl0eSAqL1xuLm1hcmtkb3duLXNvdXJjZS12aWV3Lm1vZC1jbTYgLkh5cGVyTUQtY29kZWJsb2NrLmNvZGUtc3R5bGVyLWxpbmUgc3Bhbi5jb2RlLWJsb2NrLWZsYWlyIHtcblx0bWFyZ2luLXJpZ2h0OiBjYWxjKHZhcigtLWNvcHktY29kZS1oZWFkZXItcmlnaHQtbWFyZ2luKSAtIHZhcigtLWRlbnQtZGlmZmVyZW5jZSkpO1xuXHRjbGlwLXBhdGg6IHZhcigtLXBvbHlnb24taW4pO1xuXHR3aWxsLWNoYW5nZTogbWFyZ2luLXJpZ2h0LCBjbGlwLXBhdGg7XG59XG5wcmUuY29kZS1zdHlsZXItcHJlIGJ1dHRvbi5jb3B5LWNvZGUtYnV0dG9uOm5vdCg6YWN0aXZlKSxcbnByZS5jb2RlLXN0eWxlci1wcmUgYnV0dG9uLnJ1bi1jb2RlLWJ1dHRvbjpub3QoOmFjdGl2ZSksIC8qPyBFeGVjdXRlIENvZGUgUGx1Z2luIENvbXBhdGliaWxpdHkgKi9cbi5tYXJrZG93bi1zb3VyY2Utdmlldy5tb2QtY202IC5IeXBlck1ELWNvZGVibG9jay5jb2RlLXN0eWxlci1saW5lIHNwYW4uY29kZS1ibG9jay1mbGFpcjpub3QoOmFjdGl2ZSkge1xuXHRhbmltYXRpb246IGluZGVudCB2YXIoLS1kdXJhdGlvbi1idXR0b24pO1xufVxucHJlLmNvZGUtc3R5bGVyLXByZSBidXR0b24uY29weS1jb2RlLWJ1dHRvbjpob3ZlcixcbnByZS5jb2RlLXN0eWxlci1wcmUgYnV0dG9uLnJ1bi1jb2RlLWJ1dHRvbjpob3ZlciwgLyo/IEV4ZWN1dGUgQ29kZSBQbHVnaW4gQ29tcGF0aWJpbGl0eSAqL1xuLm1hcmtkb3duLXNvdXJjZS12aWV3Lm1vZC1jbTYgLkh5cGVyTUQtY29kZWJsb2NrLmNvZGUtc3R5bGVyLWxpbmUgc3Bhbi5jb2RlLWJsb2NrLWZsYWlyOmhvdmVye1xuXHRtYXJnaW4tcmlnaHQ6IHZhcigtLWNvcHktY29kZS1oZWFkZXItcmlnaHQtbWFyZ2luKTtcblx0YW5pbWF0aW9uOiBvdXRkZW50IHZhcigtLWR1cmF0aW9uLWJ1dHRvbik7XG5cdGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuXHRjbGlwLXBhdGg6IHZhcigtLXBvbHlnb24tb3V0KTtcbn1cbnByZS5jb2RlLXN0eWxlci1wcmUgYnV0dG9uLmNvcHktY29kZS1idXR0b246YWN0aXZlLFxucHJlLmNvZGUtc3R5bGVyLXByZSBidXR0b24ucnVuLWNvZGUtYnV0dG9uOmFjdGl2ZSwgLyo/IEV4ZWN1dGUgQ29kZSBQbHVnaW4gQ29tcGF0aWJpbGl0eSAqL1xuLm1hcmtkb3duLXNvdXJjZS12aWV3Lm1vZC1jbTYgLkh5cGVyTUQtY29kZWJsb2NrLmNvZGUtc3R5bGVyLWxpbmUgc3Bhbi5jb2RlLWJsb2NrLWZsYWlyOmFjdGl2ZSB7XG5cdHNjYWxlOiAwLjk1O1xuXHR0cmFuc2l0aW9uOiBzY2FsZSB2YXIoLS1kdXJhdGlvbi1idXR0b24pIGN1YmljLWJlemllcigwLjQsIDAuMTQsIDAuMywgMSk7XG59XG5wcmUuY29kZS1zdHlsZXItcHJlIGJ1dHRvbi5jb3B5LWNvZGUtYnV0dG9uOjpiZWZvcmUsXG4ubWFya2Rvd24tc291cmNlLXZpZXcubW9kLWNtNiAuSHlwZXJNRC1jb2RlYmxvY2suY29kZS1zdHlsZXItbGluZSBzcGFuLmNvZGUtYmxvY2stZmxhaXI6OmJlZm9yZSB7XG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0d2lkdGg6IDE0cHg7XG5cdGhlaWdodDogMTRweDtcblx0cGFkZGluZy1yaWdodDogNHB4O1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2RlLXN0eWxlci1idXR0b24tY29sb3VyKTtcblx0Y29udGVudDogXCJcXDIwMGJcIjtcblx0LXdlYmtpdC1tYXNrLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNDc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDMyIDMyJyUzRSUzQ3BhdGggZD0nTTI4IDEwdjE4SDEwVjEwaDE4bTAtMkgxMGEyIDIgMCAwIDAtMiAydjE4YTIgMiAwIDAgMCAyIDJoMThhMiAyIDAgMCAwIDItMlYxMGEyIDIgMCAwIDAtMi0yWicvJTNFJTNDcGF0aCBkPSdNNCAxOEgyVjRhMiAyIDAgMCAxIDItMmgxNHYySDRaJy8lM0UlM0NwYXRoIGZpbGw9J25vbmUnIGQ9J00wIDBoMzJ2MzJIMHonIGRhdGEtbmFtZT0nJmx0O1RyYW5zcGFyZW50IFJlY3RhbmdsZSZndDsnLyUzRSUzQy9zdmclM0VcIik7XG5cdG1hc2staW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMzIgMzInJTNFJTNDcGF0aCBkPSdNMjggMTB2MThIMTBWMTBoMThtMC0ySDEwYTIgMiAwIDAgMC0yIDJ2MThhMiAyIDAgMCAwIDIgMmgxOGEyIDIgMCAwIDAgMi0yVjEwYTIgMiAwIDAgMC0yLTJaJy8lM0UlM0NwYXRoIGQ9J000IDE4SDJWNGEyIDIgMCAwIDEgMi0yaDE0djJINFonLyUzRSUzQ3BhdGggZmlsbD0nbm9uZScgZD0nTTAgMGgzMnYzMkgweicgZGF0YS1uYW1lPScmbHQ7VHJhbnNwYXJlbnQgUmVjdGFuZ2xlJmd0OycvJTNFJTNDL3N2ZyUzRVwiKTtcblx0LXdlYmtpdC1tYXNrLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRtYXNrLXJlcGVhdDogbm8tcmVwZWF0O1xuXHR2ZXJ0aWNhbC1hbGlnbjogMXB4O1xufVxuLm1hcmtkb3duLXNvdXJjZS12aWV3Lm1vZC1jbTYgLkh5cGVyTUQtY29kZWJsb2NrLmNvZGUtc3R5bGVyLWxpbmUgc3Bhbi5jb2RlLWJsb2NrLWZsYWlyIHtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHR0b3A6IG1pbihjYWxjKC0wLjUgKiB2YXIoLS1jb250YWluZXItaGVpZ2h0KSAqIDEuMSAtIHZhcigtLWhlYWRlci1zZXBhcmF0b3Itd2lkdGgpKSxjYWxjKC0wLjUgKiB2YXIoLS1jb250YWluZXItbWluLWhlaWdodCkgKiAxLjEgLSB2YXIoLS1oZWFkZXItc2VwYXJhdG9yLXdpZHRoKSkpICFpbXBvcnRhbnQ7XG5cdHJpZ2h0OiAwO1xuXHRwYWRkaW5nOiAwO1xuXHRtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7XG5cdG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcblx0Zm9udC1zaXplOiAwO1xuXHRsaW5lLWhlaWdodDogaW5pdGlhbCAhaW1wb3J0YW50O1xuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG5cdHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cbi5tYXJrZG93bi1zb3VyY2Utdmlldy5tb2QtY202IC5IeXBlck1ELWNvZGVibG9jay5jb2RlLXN0eWxlci1saW5lIHNwYW4uY29kZS1ibG9jay1mbGFpciA+ICoge1xuXHR3aWR0aDogMHB4O1xufVxuLm1hcmtkb3duLXNvdXJjZS12aWV3Lm1vZC1jbTYgLkh5cGVyTUQtY29kZWJsb2NrLmNvZGUtc3R5bGVyLWxpbmUgc3Bhbi5jb2RlLWJsb2NrLWZsYWlyOjpiZWZvcmUge1xuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGxlcik7XG5cdG9wYWNpdHk6IDE7XG5cdHZlcnRpY2FsLWFsaWduOiAtMXB4O1xuXHR2aXNpYmlsaXR5OiB2aXNpYmxlO1xufVxuLm1hcmtkb3duLXNvdXJjZS12aWV3Lm1vZC1jbTYgLkh5cGVyTUQtY29kZWJsb2NrLmNvZGUtc3R5bGVyLWxpbmUgc3Bhbi5jb2RlLWJsb2NrLWZsYWlyOjphZnRlciB7XG5cdGNvbG9yOiB2YXIoLS1jb2RlLXN0eWxlci1idXR0b24tY29sb3VyKTtcblx0Y29udGVudDogJ0NvcHknO1xuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGxlcik7XG5cdG9wYWNpdHk6IDE7XG5cdHZpc2liaWxpdHk6IHZpc2libGU7XG59XG4ubWFya2Rvd24tc291cmNlLXZpZXcubW9kLWNtNiAuSHlwZXJNRC1jb2RlYmxvY2stYmVnaW4uY29kZS1zdHlsZXItbGluZSB7XG5cdG92ZXJmbG93OiB2aXNpYmxlO1xufVxuIiwgIi8qKiBEZWZpbmUgQ1NTIFZhcmlhYmxlcyAqL1xuYm9keSB7XG5cdC0tY29kZS1zdHlsZXItaW5saW5lLWZvbnQtd2VpZ2h0OiA0MDA7XG5cdC0tY29kZS1zdHlsZXItaW5saW5lLWJvcmRlci1yYWRpdXM6IDZweDtcblx0LS1jb2RlLXN0eWxlci1pbmxpbmUtcGFkZGluZy12ZXJ0aWNhbDogNXB4O1xuXHQtLWNvZGUtc3R5bGVyLWlubGluZS1wYWRkaW5nLWhvcml6b250YWw6IDVweDtcblx0LS1jb2RlLXN0eWxlci1pbmxpbmUtbWFyZ2luLWhvcml6b250YWw6IDBweDtcblx0LS1jb2RlLXN0eWxlci1pbmxpbmUtY29sb3VyOiB2YXIoLS1jb2RlLW5vcm1hbCk7XG5cdC0tY29kZS1zdHlsZXItaW5saW5lLWNvbG91ci1hY3RpdmU6IHZhcigtLWNvZGUtbm9ybWFsKTtcblx0LS1jb2RlLXN0eWxlci1pbmxpbmUtYmFja2dyb3VuZC1jb2xvdXI6IHZhcigtLWNvZGUtYmFja2dyb3VuZCk7XG59XG5cbi5jb2RlLXN0eWxlciAuY20tcy1vYnNpZGlhbiBzcGFuLmNtLWlubGluZS1jb2RlLFxuLmNvZGUtc3R5bGVyIC5tYXJrZG93bi1yZW5kZXJlZCA6bm90KHByZSkgPiBjb2RlOm5vdChbY2xhc3MqPVwiYmx1clwiXSkge1xuXHRwYWRkaW5nOiB2YXIoLS1jb2RlLXN0eWxlci1pbmxpbmUtcGFkZGluZy12ZXJ0aWNhbCkgdmFyKC0tY29kZS1zdHlsZXItaW5saW5lLXBhZGRpbmctaG9yaXpvbnRhbCkgIWltcG9ydGFudDtcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tY29kZS1zdHlsZXItaW5saW5lLWJvcmRlci1yYWRpdXMpICFpbXBvcnRhbnQ7XG5cdG1hcmdpbjogMHB4IHZhcigtLWNvZGUtc3R5bGVyLWlubGluZS1tYXJnaW4taG9yaXpvbnRhbCkgIWltcG9ydGFudDtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29kZS1zdHlsZXItaW5saW5lLWJhY2tncm91bmQtY29sb3VyKSAhaW1wb3J0YW50O1xuXHRjb2xvcjogdmFyKC0tY29kZS1zdHlsZXItaW5saW5lLWNvbG91cik7XG5cdGZvbnQtd2VpZ2h0OiB2YXIoLS1jb2RlLXN0eWxlci1pbmxpbmUtZm9udC13ZWlnaHQpO1xufVxuLmNvZGUtc3R5bGVyIC5jbS1zLW9ic2lkaWFuIHNwYW4uY20tZm9ybWF0dGluZy1jb2RlIHsgLyo/IFN0YW5kYWxvbmUgYmFja3RpY2tzICovXG5cdGRpc3BsYXk6IGlubGluZSAhaW1wb3J0YW50O1xuXHRjb2xvcjogdmFyKC0tY29kZS1zdHlsZXItaW5saW5lLWNvbG91ci1hY3RpdmUpO1xufVxuLmNvZGUtc3R5bGVyIC5jbS1zLW9ic2lkaWFuIHNwYW4uY29kZS1zdHlsZXItaW5saW5lLW9wZW5lciB+IHNwYW4uY20taW5saW5lLWNvZGU6bm90KC5jbS1mb3JtYXR0aW5nLWNvZGUpIHtcblx0cGFkZGluZy1sZWZ0OiAwcHggIWltcG9ydGFudDtcblx0Ym9yZGVyLXJhZGl1czogMHB4IHZhcigtLWNvZGUtc3R5bGVyLWlubGluZS1ib3JkZXItcmFkaXVzKSB2YXIoLS1jb2RlLXN0eWxlci1pbmxpbmUtYm9yZGVyLXJhZGl1cykgMHB4ICFpbXBvcnRhbnQ7XG5cdG1hcmdpbi1sZWZ0OiAwcHggIWltcG9ydGFudDtcbn1cbi5jb2RlLXN0eWxlciAuY20tcy1vYnNpZGlhbiBzcGFuLmNvZGUtc3R5bGVyLWlubGluZS1vcGVuZXIsXG4uY29kZS1zdHlsZXIgLmNtLXMtb2JzaWRpYW4gc3Bhbi5jbS1mb3JtYXR0aW5nLWNvZGU6aGFzKCsgc3Bhbi5jbS1pbmxpbmUtY29kZTpub3QoLmNtLWZvcm1hdHRpbmctY29kZSkpIHsvKj8gRmlyc3QgYmFja3RpY2sgKi9cblx0cGFkZGluZy1yaWdodDogMHB4ICFpbXBvcnRhbnQ7XG5cdHBhZGRpbmctbGVmdDogdmFyKC0tY29kZS1zdHlsZXItaW5saW5lLXBhZGRpbmctaG9yaXpvbnRhbCkgIWltcG9ydGFudDtcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tY29kZS1zdHlsZXItaW5saW5lLWJvcmRlci1yYWRpdXMpIDBweCAwcHggdmFyKC0tY29kZS1zdHlsZXItaW5saW5lLWJvcmRlci1yYWRpdXMpICFpbXBvcnRhbnQ7XG5cdG1hcmdpbi1yaWdodDogMHB4ICFpbXBvcnRhbnQ7XG5cdG1hcmdpbi1sZWZ0OiB2YXIoLS1jb2RlLXN0eWxlci1pbmxpbmUtbWFyZ2luLWhvcml6b250YWwpICFpbXBvcnRhbnQ7XG5cdGNvbG9yOiB2YXIoLS1jb2RlLXN0eWxlci1pbmxpbmUtY29sb3VyLWFjdGl2ZSk7XG59XG4uY29kZS1zdHlsZXIgLmNtLXMtb2JzaWRpYW4gc3Bhbi5jbS1mb3JtYXR0aW5nLWNvZGUgKyBzcGFuLmNtLWlubGluZS1jb2RlOm5vdCguY20tZm9ybWF0dGluZy1jb2RlKSB7IC8qPyBJbm5lciBjb2RlIHdpdGggYmFja3RpY2tzICovXG5cdHBhZGRpbmctcmlnaHQ6IDBweCAhaW1wb3J0YW50O1xuXHRwYWRkaW5nLWxlZnQ6IDBweCAhaW1wb3J0YW50O1xuXHRib3JkZXItcmFkaXVzOiAwcHggIWltcG9ydGFudDtcblx0bWFyZ2luOiAwcHggMHB4ICFpbXBvcnRhbnQ7XG5cdGNvbG9yOiB2YXIoLS1jb2RlLXN0eWxlci1pbmxpbmUtY29sb3VyLWFjdGl2ZSk7XG59XG4uY29kZS1zdHlsZXIgLmNtLXMtb2JzaWRpYW4gc3Bhbi5jbS1pbmxpbmUtY29kZTpub3QoLmNtLWZvcm1hdHRpbmctY29kZSkgKyBzcGFuLmNtLWZvcm1hdHRpbmctY29kZSB7Lyo/IExhc3QgYmFja3RpY2sgKi9cblx0cGFkZGluZy1yaWdodDogdmFyKC0tY29kZS1zdHlsZXItaW5saW5lLXBhZGRpbmctaG9yaXpvbnRhbCkgIWltcG9ydGFudDtcblx0cGFkZGluZy1sZWZ0OiAwcHggIWltcG9ydGFudDtcblx0Ym9yZGVyLXJhZGl1czogMHB4IHZhcigtLWNvZGUtc3R5bGVyLWlubGluZS1ib3JkZXItcmFkaXVzKSB2YXIoLS1jb2RlLXN0eWxlci1pbmxpbmUtYm9yZGVyLXJhZGl1cykgMHB4ICFpbXBvcnRhbnQ7XG5cdG1hcmdpbi1yaWdodDogdmFyKC0tY29kZS1zdHlsZXItaW5saW5lLW1hcmdpbi1ob3Jpem9udGFsKSAhaW1wb3J0YW50O1xuXHRtYXJnaW4tbGVmdDogMHB4ICFpbXBvcnRhbnQ7XG5cdGNvbG9yOiB2YXIoLS1jb2RlLXN0eWxlci1pbmxpbmUtY29sb3VyLWFjdGl2ZSk7XG59XG5ib2R5LmNvZGUtc3R5bGVyIHNwYW4uY29kZS1zdHlsZXItaW5saW5lLW9wZW5lciA+IHNwYW4gPiBpbWcuY29kZS1zdHlsZXItaW5saW5lLWljb246bm90KFtjbGFzcyo9XCJlbW9qaVwiXSkge1xuXHRkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDtcblx0aGVpZ2h0OiBjYWxjKHZhcigtLWNvZGUtc2l6ZSkgKiAxLjIpO1xuXHRtYXJnaW4tYm90dG9tOiAycHggIWltcG9ydGFudDtcblx0dmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cbi5jb2RlLXN0eWxlciBzcGFuLmNvZGUtc3R5bGVyLWlubGluZS1vcGVuZXIgLmNvZGUtc3R5bGVyLWlubGluZS10aXRsZSB7XG5cdGNvbG9yOiB2YXIoLS1jb2RlLXN0eWxlci1pbmxpbmUtdGl0bGUtY29sb3VyKTtcblx0Zm9udC13ZWlnaHQ6IHZhcigtLWNvZGUtc3R5bGVyLWlubGluZS10aXRsZS1mb250LXdlaWdodCk7XG59XG4uY29kZS1zdHlsZXIgc3Bhbi5jb2RlLXN0eWxlci1pbmxpbmUtb3BlbmVyIC5jb2RlLXN0eWxlci1pbmxpbmUtdGl0bGU6OmFmdGVyIHtcblx0Y29sb3I6IHZhcigtLWNvZGUtc3R5bGVyLWlubGluZS10aXRsZS1jb2xvcik7XG5cdGNvbnRlbnQ6ICdcXEZGNUMnO1xufVxuLmNvZGUtc3R5bGVyIHNwYW4uY29kZS1zdHlsZXItaW5saW5lLW9wZW5lciBzcGFuOmhhcyggPiBpbWcuY29kZS1zdHlsZXItaW5saW5lLWljb24pIHtcblx0cGFkZGluZy1yaWdodDogOHB4O1xufVxuLmNvZGUtc3R5bGVyIC5jbS1zLW9ic2lkaWFuIHNwYW4uY20taW5saW5lLWNvZGUgLmNvZGUtc3R5bGVyLWlubGluZS1wYXJhbWV0ZXJzIHtcblx0Y29sb3I6IHZhcigtLWNvZGUtY29tbWVudCk7XG59XG4iLCAiZGl2LnByaW50IHtcblx0LS1saW5lLXdyYXBwaW5nOiBwcmUtd3JhcCAhaW1wb3J0YW50O1xufVxuLmNvZGUtc3R5bGVyIGRpdi5wcmludCBwcmUuY29kZS1zdHlsZXItcHJlIGNvZGUge1xuXHRtYXgtaGVpZ2h0OiB1bnNldCAhaW1wb3J0YW50O1xufVxuLmNvZGUtc3R5bGVyIGRpdi5wcmludCBwcmUuY29kZS1zdHlsZXItcHJlLmNvZGUtc3R5bGVyLWZvbGRlZCBjb2RlIHtcblx0ZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuIiwgIi8qKiBQaWNrciAxLjguMiBNSVQgfCBodHRwczovL2dpdGh1Yi5jb20vU2ltb253ZXAvcGlja3IgKi9cbi5waWNrciB7cG9zaXRpb246IHJlbGF0aXZlO292ZXJmbG93OiB2aXNpYmxlO3RyYW5zZm9ybTogdHJhbnNsYXRlWSgwKX0gIC5waWNrciAqIHtib3gtc2l6aW5nOiBib3JkZXItYm94O2JvcmRlcjogbm9uZTstd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7YXBwZWFyYW5jZTogbm9uZTtvdXRsaW5lOiBub25lfSAgLnBpY2tyIC5wY3ItYnV0dG9uIHtwb3NpdGlvbjogcmVsYXRpdmU7d2lkdGg6IDJlbTtoZWlnaHQ6IDJlbTtwYWRkaW5nOiAwLjVlbTtib3JkZXItcmFkaXVzOiAuMTVlbTtiYWNrZ3JvdW5kOiB1cmwoJ2RhdGE6aW1hZ2Uvc3ZnK3htbDt1dGY4LCA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2aWV3Qm94PVwiMCAwIDUwIDUwXCIgc3Ryb2tlPVwiJTIzNDI0NDVBXCIgc3Ryb2tlLXdpZHRoPVwiNXB4XCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiPjxwYXRoIGQ9XCJNNDUsNDVMNSw1XCI+PC9wYXRoPjxwYXRoIGQ9XCJNNDUsNUw1LDQ1XCI+PC9wYXRoPjwvc3ZnPicpIG5vLXJlcGVhdCBjZW50ZXI7YmFja2dyb3VuZC1zaXplOiAwO2N1cnNvcjogcG9pbnRlcjtmb250LWZhbWlseTogLWFwcGxlLXN5c3RlbSwgQmxpbmtNYWNTeXN0ZW1Gb250LCBcIlNlZ29lIFVJXCIsIFwiUm9ib3RvXCIsIFwiSGVsdmV0aWNhIE5ldWVcIiwgQXJpYWwsIHNhbnMtc2VyaWY7dHJhbnNpdGlvbjogYWxsIDAuM3N9ICAucGlja3IgLnBjci1idXR0b246OmJlZm9yZSB7cG9zaXRpb246IGFic29sdXRlO3otaW5kZXg6IC0xO3RvcDogMDtsZWZ0OiAwO3dpZHRoOiAxMDAlO2hlaWdodDogMTAwJTtib3JkZXItcmFkaXVzOiAuMTVlbTtiYWNrZ3JvdW5kOiB1cmwoJ2RhdGE6aW1hZ2Uvc3ZnK3htbDt1dGY4LCA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2aWV3Qm94PVwiMCAwIDIgMlwiPjxwYXRoIGZpbGw9XCJ3aGl0ZVwiIGQ9XCJNMSwwSDJWMUgxVjBaTTAsMUgxVjJIMFYxWlwiLz48cGF0aCBmaWxsPVwiZ3JheVwiIGQ9XCJNMCwwSDFWMUgwVjBaTTEsMUgyVjJIMVYxWlwiLz48L3N2Zz4nKTtiYWNrZ3JvdW5kLXNpemU6IC41ZW07Y29udGVudDogJyd9ICAucGlja3IgLnBjci1idXR0b246OmJlZm9yZSB7ei1pbmRleDogaW5pdGlhbH0gIC5waWNrciAucGNyLWJ1dHRvbjo6YWZ0ZXIge3Bvc2l0aW9uOiBhYnNvbHV0ZTt0b3A6IDA7bGVmdDogMDt3aWR0aDogMTAwJTtoZWlnaHQ6IDEwMCU7Ym9yZGVyLXJhZGl1czogLjE1ZW07YmFja2dyb3VuZDogdmFyKC0tcGNyLWNvbG9yKTtjb250ZW50OiAnJzt0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuM3N9ICAucGlja3IgLnBjci1idXR0b24uY2xlYXIge2JhY2tncm91bmQtc2l6ZTogNzAlfSAgLnBpY2tyIC5wY3ItYnV0dG9uLmNsZWFyOjpiZWZvcmUge29wYWNpdHk6IDB9ICAucGlja3IgLnBjci1idXR0b24uY2xlYXI6Zm9jdXMge2JveC1zaGFkb3c6IDAgMCAwIDFweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuODUpLCAwIDAgMCAzcHggdmFyKC0tcGNyLWNvbG9yKX0gIC5waWNrciAucGNyLWJ1dHRvbi5kaXNhYmxlZCB7Y3Vyc29yOiBub3QtYWxsb3dlZH0gIC5waWNrciAqLCAucGNyLWFwcCAqIHtib3gtc2l6aW5nOiBib3JkZXItYm94O2JvcmRlcjogbm9uZTstd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7YXBwZWFyYW5jZTogbm9uZTtvdXRsaW5lOiBub25lfSAgLnBpY2tyIGlucHV0OmZvY3VzLCAucGlja3IgaW5wdXQucGNyLWFjdGl2ZSwgLnBpY2tyIGJ1dHRvbjpmb2N1cywgLnBpY2tyIGJ1dHRvbi5wY3ItYWN0aXZlLCAucGNyLWFwcCBpbnB1dDpmb2N1cywgLnBjci1hcHAgaW5wdXQucGNyLWFjdGl2ZSwgLnBjci1hcHAgYnV0dG9uOmZvY3VzLCAucGNyLWFwcCBidXR0b24ucGNyLWFjdGl2ZSB7Ym94LXNoYWRvdzogMCAwIDAgMXB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44NSksIDAgMCAwIDNweCB2YXIoLS1wY3ItY29sb3IpfSAgLnBpY2tyIC5wY3ItcGFsZXR0ZSwgLnBpY2tyIC5wY3Itc2xpZGVyLCAucGNyLWFwcCAucGNyLXBhbGV0dGUsIC5wY3ItYXBwIC5wY3Itc2xpZGVyIHt0cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuM3N9ICAucGlja3IgLnBjci1wYWxldHRlOmZvY3VzLCAucGlja3IgLnBjci1zbGlkZXI6Zm9jdXMsIC5wY3ItYXBwIC5wY3ItcGFsZXR0ZTpmb2N1cywgLnBjci1hcHAgLnBjci1zbGlkZXI6Zm9jdXMge2JveC1zaGFkb3c6IDAgMCAwIDFweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuODUpLCAwIDAgMCAzcHggcmdiYSgwLCAwLCAwLCAwLjI1KX0gIC5wY3ItYXBwIHtwb3NpdGlvbjogZml4ZWQ7ei1pbmRleDogMTAwMDA7dG9wOiAwO2xlZnQ6IDA7ZGlzcGxheTogZmxleDtmbGV4LWRpcmVjdGlvbjogY29sdW1uO2JvcmRlci1yYWRpdXM6IDAuMWVtO2JhY2tncm91bmQ6ICNmZmY7Ym94LXNoYWRvdzogMCAwLjE1ZW0gMS41ZW0gMCByZ2JhKDAsIDAsIDAsIDAuMSksIDAgMCAxZW0gMCByZ2JhKDAsIDAsIDAsIDAuMDMpO2ZvbnQtZmFtaWx5OiAtYXBwbGUtc3lzdGVtLCBCbGlua01hY1N5c3RlbUZvbnQsIFwiU2Vnb2UgVUlcIiwgXCJSb2JvdG9cIiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBBcmlhbCwgc2Fucy1zZXJpZjtvcGFjaXR5OiAwO3RyYW5zaXRpb246IG9wYWNpdHkgMC4zcywgdmlzaWJpbGl0eSAwcyAwLjNzO3Zpc2liaWxpdHk6IGhpZGRlbn0gIC5wY3ItYXBwLnZpc2libGUge29wYWNpdHk6IDE7dHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzO3Zpc2liaWxpdHk6IHZpc2libGV9ICAucGNyLWFwcCAucGNyLXN3YXRjaGVzIHtkaXNwbGF5OiBmbGV4O2ZsZXgtd3JhcDogd3JhcDttYXJnaW4tdG9wOiAwLjc1ZW19ICAucGNyLWFwcCAucGNyLXN3YXRjaGVzLnBjci1sYXN0IHttYXJnaW46IDB9ICBAc3VwcG9ydHMgKGRpc3BsYXk6IGdyaWQpIHsgIC5wY3ItYXBwIC5wY3Itc3dhdGNoZXMge2Rpc3BsYXk6IGdyaWQ7YWxpZ24taXRlbXM6IGNlbnRlcjtncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdChhdXRvLWZpdCwgMS43NWVtKX0gIH0gIC5wY3ItYXBwIC5wY3Itc3dhdGNoZXMgPiBidXR0b24ge3Bvc2l0aW9uOiByZWxhdGl2ZTt6LWluZGV4OiAxO292ZXJmbG93OiBoaWRkZW47d2lkdGg6IGNhbGMoMS43NWVtIC0gMTBweCk7aGVpZ2h0OiBjYWxjKDEuNzVlbSAtIDEwcHgpO2ZsZXgtc2hyaW5rOiAwO2JvcmRlci1yYWRpdXM6IDAuMTVlbTttYXJnaW46IDIuNXB4O2JhY2tncm91bmQ6IHRyYW5zcGFyZW50O2N1cnNvcjogcG9pbnRlcjtmb250LXNpemU6IDFlbTtqdXN0aWZ5LXNlbGY6IGNlbnRlcjt0cmFuc2l0aW9uOiBhbGwgMC4xNXN9ICAucGNyLWFwcCAucGNyLXN3YXRjaGVzID4gYnV0dG9uOjpiZWZvcmUge3Bvc2l0aW9uOiBhYnNvbHV0ZTt6LWluZGV4OiAtMTt0b3A6IDA7bGVmdDogMDt3aWR0aDogMTAwJTtoZWlnaHQ6IDEwMCU7Ym9yZGVyLXJhZGl1czogLjE1ZW07YmFja2dyb3VuZDogdXJsKCdkYXRhOmltYWdlL3N2Zyt4bWw7dXRmOCwgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmlld0JveD1cIjAgMCAyIDJcIj48cGF0aCBmaWxsPVwid2hpdGVcIiBkPVwiTTEsMEgyVjFIMVYwWk0wLDFIMVYySDBWMVpcIi8+PHBhdGggZmlsbD1cImdyYXlcIiBkPVwiTTAsMEgxVjFIMFYwWk0xLDFIMlYySDFWMVpcIi8+PC9zdmc+Jyk7YmFja2dyb3VuZC1zaXplOiA2cHg7Y29udGVudDogJyd9ICAucGNyLWFwcCAucGNyLXN3YXRjaGVzID4gYnV0dG9uOjphZnRlciB7cG9zaXRpb246IGFic29sdXRlO3RvcDogMDtsZWZ0OiAwO3dpZHRoOiAxMDAlO2hlaWdodDogMTAwJTtib3gtc2l6aW5nOiBib3JkZXItYm94O2JvcmRlcjogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4wNSk7Ym9yZGVyLXJhZGl1czogMC4xNWVtO2JhY2tncm91bmQ6IHZhcigtLXBjci1jb2xvcik7Y29udGVudDogJyd9ICAucGNyLWFwcCAucGNyLXN3YXRjaGVzID4gYnV0dG9uOmhvdmVyIHtmaWx0ZXI6IGJyaWdodG5lc3MoMS4wNSl9ICAucGNyLWFwcCAucGNyLXN3YXRjaGVzID4gYnV0dG9uOm5vdCgucGNyLWFjdGl2ZSkge2JveC1zaGFkb3c6IG5vbmV9ICAucGNyLWFwcCAucGNyLWludGVyYWN0aW9uIHtkaXNwbGF5OiBmbGV4O2ZsZXgtd3JhcDogd3JhcDthbGlnbi1pdGVtczogY2VudGVyO21hcmdpbjogMCAtMC4yZW0gMCAtMC4yZW19ICAucGNyLWFwcCAucGNyLWludGVyYWN0aW9uID4gKiB7bWFyZ2luOiAwIDAuMmVtfSAgLnBjci1hcHAgLnBjci1pbnRlcmFjdGlvbiBpbnB1dCB7cGFkZGluZzogMC40NWVtIDAuNWVtO2JvcmRlci1yYWRpdXM6IC4xNWVtO21hcmdpbi10b3A6IDAuNzVlbTtiYWNrZ3JvdW5kOiAjZjFmM2Y0O2NvbG9yOiAjNzU3OTdlO2N1cnNvcjogcG9pbnRlcjtmb250LXNpemU6IDAuNzVlbTtsZXR0ZXItc3BhY2luZzogMC4wN2VtO3RleHQtYWxpZ246IGNlbnRlcjt0cmFuc2l0aW9uOiBhbGwgMC4xNXN9ICAucGNyLWFwcCAucGNyLWludGVyYWN0aW9uIGlucHV0OmhvdmVyIHtmaWx0ZXI6IGJyaWdodG5lc3MoMC45NzUpfSAgLnBjci1hcHAgLnBjci1pbnRlcmFjdGlvbiBpbnB1dDpmb2N1cyB7Ym94LXNoYWRvdzogMCAwIDAgMXB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44NSksIDAgMCAwIDNweCByZ2JhKDY2LCAxMzMsIDI0NCwgMC43NSl9ICAucGNyLWFwcCAucGNyLWludGVyYWN0aW9uIC5wY3ItcmVzdWx0IHttaW4td2lkdGg6IDhlbTtmbGV4OiAxIDEgOGVtO2JvcmRlci1yYWRpdXM6IC4xNWVtO2JhY2tncm91bmQ6ICNmMWYzZjQ7Y29sb3I6ICM3NTc5N2U7Y3Vyc29yOiB0ZXh0O3RleHQtYWxpZ246IGxlZnQ7dHJhbnNpdGlvbjogYWxsIDAuMnN9ICAucGNyLWFwcCAucGNyLWludGVyYWN0aW9uIC5wY3ItcmVzdWx0OjotbW96LXNlbGVjdGlvbiB7YmFja2dyb3VuZDogIzQyODVmNDtjb2xvcjogI2ZmZn0gIC5wY3ItYXBwIC5wY3ItaW50ZXJhY3Rpb24gLnBjci1yZXN1bHQ6OnNlbGVjdGlvbiB7YmFja2dyb3VuZDogIzQyODVmNDtjb2xvcjogI2ZmZn0gIC5wY3ItYXBwIC5wY3ItaW50ZXJhY3Rpb24gLnBjci10eXBlLmFjdGl2ZSB7YmFja2dyb3VuZDogIzQyODVmNDtjb2xvcjogI2ZmZn0gIC5wY3ItYXBwIC5wY3ItaW50ZXJhY3Rpb24gLnBjci1zYXZlLCAucGNyLWFwcCAucGNyLWludGVyYWN0aW9uIC5wY3ItY2FuY2VsLCAucGNyLWFwcCAucGNyLWludGVyYWN0aW9uIC5wY3ItY2xlYXIge3dpZHRoOiBhdXRvO2NvbG9yOiAjZmZmfSAgLnBjci1hcHAgLnBjci1pbnRlcmFjdGlvbiAucGNyLXNhdmUsIC5wY3ItYXBwIC5wY3ItaW50ZXJhY3Rpb24gLnBjci1jYW5jZWwsIC5wY3ItYXBwIC5wY3ItaW50ZXJhY3Rpb24gLnBjci1jbGVhciB7Y29sb3I6ICNmZmZ9ICAucGNyLWFwcCAucGNyLWludGVyYWN0aW9uIC5wY3Itc2F2ZTpob3ZlciwgLnBjci1hcHAgLnBjci1pbnRlcmFjdGlvbiAucGNyLWNhbmNlbDpob3ZlciwgLnBjci1hcHAgLnBjci1pbnRlcmFjdGlvbiAucGNyLWNsZWFyOmhvdmVyIHtmaWx0ZXI6IGJyaWdodG5lc3MoMC45MjUpfSAgLnBjci1hcHAgLnBjci1pbnRlcmFjdGlvbiAucGNyLXNhdmUge2JhY2tncm91bmQ6ICM0Mjg1ZjR9ICAucGNyLWFwcCAucGNyLWludGVyYWN0aW9uIC5wY3ItY2xlYXIsIC5wY3ItYXBwIC5wY3ItaW50ZXJhY3Rpb24gLnBjci1jYW5jZWwge2JhY2tncm91bmQ6ICNmNDQyNTB9ICAucGNyLWFwcCAucGNyLWludGVyYWN0aW9uIC5wY3ItY2xlYXI6Zm9jdXMsIC5wY3ItYXBwIC5wY3ItaW50ZXJhY3Rpb24gLnBjci1jYW5jZWw6Zm9jdXMge2JveC1zaGFkb3c6IDAgMCAwIDFweCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuODUpLCAwIDAgMCAzcHggcmdiYSgyNDQsIDY2LCA4MCwgMC43NSl9ICAucGNyLWFwcCAucGNyLXNlbGVjdGlvbiAucGNyLXBpY2tlciB7cG9zaXRpb246IGFic29sdXRlO3dpZHRoOiAxOHB4O2hlaWdodDogMThweDtib3JkZXI6IDJweCBzb2xpZCAjZmZmO2JvcmRlci1yYWRpdXM6IDEwMCU7LXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTstbW96LXVzZXItc2VsZWN0OiBub25lOy1tcy11c2VyLXNlbGVjdDogbm9uZTt1c2VyLXNlbGVjdDogbm9uZX0gIC5wY3ItYXBwIC5wY3Itc2VsZWN0aW9uIC5wY3ItY29sb3ItcGFsZXR0ZSwgLnBjci1hcHAgLnBjci1zZWxlY3Rpb24gLnBjci1jb2xvci1jaG9vc2VyLCAucGNyLWFwcCAucGNyLXNlbGVjdGlvbiAucGNyLWNvbG9yLW9wYWNpdHkge3Bvc2l0aW9uOiByZWxhdGl2ZTtkaXNwbGF5OiBmbGV4O2ZsZXgtZGlyZWN0aW9uOiBjb2x1bW47Y3Vyc29yOiBncmFiO2N1cnNvcjogLXdlYmtpdC1ncmFiOy13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7LW1vei11c2VyLXNlbGVjdDogbm9uZTstbXMtdXNlci1zZWxlY3Q6IG5vbmU7dXNlci1zZWxlY3Q6IG5vbmV9ICAucGNyLWFwcCAucGNyLXNlbGVjdGlvbiAucGNyLWNvbG9yLXBhbGV0dGU6YWN0aXZlLCAucGNyLWFwcCAucGNyLXNlbGVjdGlvbiAucGNyLWNvbG9yLWNob29zZXI6YWN0aXZlLCAucGNyLWFwcCAucGNyLXNlbGVjdGlvbiAucGNyLWNvbG9yLW9wYWNpdHk6YWN0aXZlIHtjdXJzb3I6IGdyYWJiaW5nO2N1cnNvcjogLXdlYmtpdC1ncmFiYmluZ30gIC5wY3ItYXBwW2RhdGEtdGhlbWU9J25hbm8nXSB7d2lkdGg6IDE0LjI1ZW07bWF4LXdpZHRoOiA5NXZ3fSAgLnBjci1hcHBbZGF0YS10aGVtZT0nbmFubyddIC5wY3Itc3dhdGNoZXMge3BhZGRpbmc6IDAgLjZlbTttYXJnaW4tdG9wOiAuNmVtfSAgLnBjci1hcHBbZGF0YS10aGVtZT0nbmFubyddIC5wY3ItaW50ZXJhY3Rpb24ge3BhZGRpbmc6IDAgLjZlbSAuNmVtIC42ZW19ICAucGNyLWFwcFtkYXRhLXRoZW1lPSduYW5vJ10gLnBjci1zZWxlY3Rpb24ge2Rpc3BsYXk6IGdyaWQ7d2lkdGg6IDEwMCU7aGVpZ2h0OiAxMC41ZW07YWxpZ24taXRlbXM6IGNlbnRlcjthbGlnbi1zZWxmOiBmbGV4LXN0YXJ0O2dyaWQtZ2FwOiAuNmVtO2dyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDRmcjtncmlkLXRlbXBsYXRlLXJvd3M6IDVmciBhdXRvIGF1dG99ICAucGNyLWFwcFtkYXRhLXRoZW1lPSduYW5vJ10gLnBjci1zZWxlY3Rpb24gLnBjci1jb2xvci1wcmV2aWV3IHtkaXNwbGF5OiBmbGV4O3dpZHRoOiAxMDAlO2hlaWdodDogMTAwJTtmbGV4LWRpcmVjdGlvbjogcm93O2p1c3RpZnktY29udGVudDogY2VudGVyO21hcmdpbi1sZWZ0OiAuNmVtO2dyaWQtYXJlYTogMiAvIDEgLyA0IC8gMX0gIC5wY3ItYXBwW2RhdGEtdGhlbWU9J25hbm8nXSAucGNyLXNlbGVjdGlvbiAucGNyLWNvbG9yLXByZXZpZXcgLnBjci1sYXN0LWNvbG9yIHtkaXNwbGF5OiBub25lfSAgLnBjci1hcHBbZGF0YS10aGVtZT0nbmFubyddIC5wY3Itc2VsZWN0aW9uIC5wY3ItY29sb3ItcHJldmlldyAucGNyLWN1cnJlbnQtY29sb3Ige3Bvc2l0aW9uOiByZWxhdGl2ZTtvdmVyZmxvdzogaGlkZGVuO3dpZHRoOiAyZW07aGVpZ2h0OiAyZW07Ym9yZGVyLXJhZGl1czogNTBlbTtiYWNrZ3JvdW5kOiB2YXIoLS1wY3ItY29sb3IpfSAgLnBjci1hcHBbZGF0YS10aGVtZT0nbmFubyddIC5wY3Itc2VsZWN0aW9uIC5wY3ItY29sb3ItcHJldmlldyAucGNyLWN1cnJlbnQtY29sb3I6OmJlZm9yZSB7cG9zaXRpb246IGFic29sdXRlO3otaW5kZXg6IC0xO3RvcDogMDtsZWZ0OiAwO3dpZHRoOiAxMDAlO2hlaWdodDogMTAwJTtib3JkZXItcmFkaXVzOiAuMTVlbTtiYWNrZ3JvdW5kOiB1cmwoJ2RhdGE6aW1hZ2Uvc3ZnK3htbDt1dGY4LCA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2aWV3Qm94PVwiMCAwIDIgMlwiPjxwYXRoIGZpbGw9XCJ3aGl0ZVwiIGQ9XCJNMSwwSDJWMUgxVjBaTTAsMUgxVjJIMFYxWlwiLz48cGF0aCBmaWxsPVwiZ3JheVwiIGQ9XCJNMCwwSDFWMUgwVjBaTTEsMUgyVjJIMVYxWlwiLz48L3N2Zz4nKTtiYWNrZ3JvdW5kLXNpemU6IC41ZW07Y29udGVudDogJyd9ICAucGNyLWFwcFtkYXRhLXRoZW1lPSduYW5vJ10gLnBjci1zZWxlY3Rpb24gLnBjci1jb2xvci1wYWxldHRlIHt6LWluZGV4OiAxO3dpZHRoOiAxMDAlO2hlaWdodDogMTAwJTtncmlkLWFyZWE6IDEgLyAxIC8gMiAvIDN9ICAucGNyLWFwcFtkYXRhLXRoZW1lPSduYW5vJ10gLnBjci1zZWxlY3Rpb24gLnBjci1jb2xvci1wYWxldHRlIC5wY3ItcGFsZXR0ZSB7d2lkdGg6IDEwMCU7aGVpZ2h0OiAxMDAlO2JvcmRlci1yYWRpdXM6IC4xNWVtfSAgLnBjci1hcHBbZGF0YS10aGVtZT0nbmFubyddIC5wY3Itc2VsZWN0aW9uIC5wY3ItY29sb3ItcGFsZXR0ZSAucGNyLXBhbGV0dGU6OmJlZm9yZSB7cG9zaXRpb246IGFic29sdXRlO3otaW5kZXg6IC0xO3RvcDogMDtsZWZ0OiAwO3dpZHRoOiAxMDAlO2hlaWdodDogMTAwJTtib3JkZXItcmFkaXVzOiAuMTVlbTtiYWNrZ3JvdW5kOiB1cmwoJ2RhdGE6aW1hZ2Uvc3ZnK3htbDt1dGY4LCA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2aWV3Qm94PVwiMCAwIDIgMlwiPjxwYXRoIGZpbGw9XCJ3aGl0ZVwiIGQ9XCJNMSwwSDJWMUgxVjBaTTAsMUgxVjJIMFYxWlwiLz48cGF0aCBmaWxsPVwiZ3JheVwiIGQ9XCJNMCwwSDFWMUgwVjBaTTEsMUgyVjJIMVYxWlwiLz48L3N2Zz4nKTtiYWNrZ3JvdW5kLXNpemU6IC41ZW07Y29udGVudDogJyd9ICAucGNyLWFwcFtkYXRhLXRoZW1lPSduYW5vJ10gLnBjci1zZWxlY3Rpb24gLnBjci1jb2xvci1jaG9vc2VyIHtncmlkLWFyZWE6IDIgLyAyIC8gMiAvIDJ9ICAucGNyLWFwcFtkYXRhLXRoZW1lPSduYW5vJ10gLnBjci1zZWxlY3Rpb24gLnBjci1jb2xvci1vcGFjaXR5IHtncmlkLWFyZWE6IDMgLyAyIC8gMyAvIDJ9ICAucGNyLWFwcFtkYXRhLXRoZW1lPSduYW5vJ10gLnBjci1zZWxlY3Rpb24gLnBjci1jb2xvci1jaG9vc2VyLCAucGNyLWFwcFtkYXRhLXRoZW1lPSduYW5vJ10gLnBjci1zZWxlY3Rpb24gLnBjci1jb2xvci1vcGFjaXR5IHtoZWlnaHQ6IDAuNWVtO21hcmdpbjogMCAuNmVtfSAgLnBjci1hcHBbZGF0YS10aGVtZT0nbmFubyddIC5wY3Itc2VsZWN0aW9uIC5wY3ItY29sb3ItY2hvb3NlciAucGNyLXBpY2tlciwgLnBjci1hcHBbZGF0YS10aGVtZT0nbmFubyddIC5wY3Itc2VsZWN0aW9uIC5wY3ItY29sb3Itb3BhY2l0eSAucGNyLXBpY2tlciB7dG9wOiA1MCU7dHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpfSAgLnBjci1hcHBbZGF0YS10aGVtZT0nbmFubyddIC5wY3Itc2VsZWN0aW9uIC5wY3ItY29sb3ItY2hvb3NlciAucGNyLXNsaWRlciwgLnBjci1hcHBbZGF0YS10aGVtZT0nbmFubyddIC5wY3Itc2VsZWN0aW9uIC5wY3ItY29sb3Itb3BhY2l0eSAucGNyLXNsaWRlciB7ZmxleC1ncm93OiAxO2JvcmRlci1yYWRpdXM6IDUwZW19ICAucGNyLWFwcFtkYXRhLXRoZW1lPSduYW5vJ10gLnBjci1zZWxlY3Rpb24gLnBjci1jb2xvci1jaG9vc2VyIC5wY3Itc2xpZGVyIHtiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHJlZCwgI2ZmMCwgbGltZSwgY3lhbiwgYmx1ZSwgI2YwZiwgcmVkKX0gIC5wY3ItYXBwW2RhdGEtdGhlbWU9J25hbm8nXSAucGNyLXNlbGVjdGlvbiAucGNyLWNvbG9yLW9wYWNpdHkgLnBjci1zbGlkZXIge2JhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgdHJhbnNwYXJlbnQsIGJsYWNrKSwgdXJsKCdkYXRhOmltYWdlL3N2Zyt4bWw7dXRmOCwgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmlld0JveD1cIjAgMCAyIDJcIj48cGF0aCBmaWxsPVwid2hpdGVcIiBkPVwiTTEsMEgyVjFIMVYwWk0wLDFIMVYySDBWMVpcIi8+PHBhdGggZmlsbD1cImdyYXlcIiBkPVwiTTAsMEgxVjFIMFYwWk0xLDFIMlYySDFWMVpcIi8+PC9zdmc+Jyk7YmFja2dyb3VuZC1zaXplOiAxMDAlLCAwLjI1ZW19XG4ucGNyLWFwcCAucGNyLXN3YXRjaGVzID4gYnV0dG9uIHtcblx0cGFkZGluZzogMDtcbn1cbiIsICIuc2V0dGluZy1pdGVtLmNvZGUtc3R5bGVyLXNwYWNlZCAuY2hlY2tib3gtY29udGFpbmVyICsgLnBpY2tyIHtcblx0cGFkZGluZy1sZWZ0OiAxMHB4O1xufVxuLmNvZGUtc3R5bGVyLWRvbmF0aW9uIHtcblx0d2lkdGg6IDcwJTtcblx0bWFyZ2luOiAwIGF1dG87XG5cdHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbi5jb2RlLXN0eWxlci1zZXR0aW5nLXRleHQtYXJlYSB0ZXh0YXJlYSB7XG5cdHdpZHRoOiA0MDBweDtcblx0aGVpZ2h0OiAyMjBweDtcbn1cbmJ1dHRvbi5jb2RlLXN0eWxlci1zZXR0aW5ncy1idXR0b24uY29weS1jb2RlLWJ1dHRvbiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuXHRyaWdodDogMDtcbiAgICBoZWlnaHQ6IGF1dG87XG59XG4iLCAiLyoqIEV4ZWN1dGUgQ29kZSBQbHVnaW4gKi9cbnByZS5jb2RlLXN0eWxlci1wcmUgY29kZSB+IGNvZGUubGFuZ3VhZ2Utb3V0cHV0IHtcblx0ZGlzcGxheTogYmxvY2s7XG5cdHBhZGRpbmctYm90dG9tOiBjYWxjKDIuNSAqIHZhcigtLWNvZGUtcGFkZGluZykpICFpbXBvcnRhbnQ7XG5cdHBhZGRpbmctbGVmdDogY2FsYyh2YXIoLS1saW5lLW51bWJlci1ndXR0ZXItcGFkZGluZykpICFpbXBvcnRhbnQ7XG5cdGJvcmRlci10b3A6IHZhcigtLWhlYWRlci1zZXBhcmF0b3Itd2lkdGgpIHNvbGlkIHZhcigtLWNvZGUtc3R5bGVyLWhlYWRlci1zZXBhcmF0b3ItY29sb3VyKTtcblx0bWFyZ2luLWJvdHRvbTogMDtcbn1cbnByZS5jb2RlLXN0eWxlci1wcmUuY29kZS1zdHlsZXItZm9sZGVkIGNvZGUgfiBjb2RlLmxhbmd1YWdlLW91dHB1dCB7XG5cdGJvcmRlci10b3Atd2lkdGg6IDA7XG5cdGJvcmRlci10b3AtY29sb3I6IHRyYW5zcGFyZW50O1xufVxucHJlLmNvZGUtc3R5bGVyLXByZTpob3ZlciBjb2RlIH4gY29kZS5sYW5ndWFnZS1vdXRwdXQge1xuXHRtYXJnaW4tYm90dG9tOiAwO1xufVxucHJlLmNvZGUtc3R5bGVyLXByZSBjb2RlIH4gY29kZS5sYW5ndWFnZS1vdXRwdXQgaW5wdXQuaW50ZXJhY3RpdmUtc3RkaW4ge1xuICAgIHBhZGRpbmc6IDJweCA4cHg7XG5cdGJvcmRlci13aWR0aDogMXB4O1xuXHRib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tY29kZS1jb21tZW50KTtcblx0Ym9yZGVyLXJhZGl1czogNXB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvZGUtc3R5bGVyLWNvZGVibG9jay1iYWNrZ3JvdW5kLWNvbG91cik7XG4gICAgY29sb3I6IHZhcigtLXRleHQtbm9ybWFsKTtcbn1cbnByZS5jb2RlLXN0eWxlci1wcmUgY29kZSB+IGNvZGUubGFuZ3VhZ2Utb3V0cHV0IGhyIHtcblx0ZGlzcGxheTogbm9uZTtcbn1cbnByZS5jb2RlLXN0eWxlci1wcmUgYnV0dG9uLnJ1bi1jb2RlLWJ1dHRvbiB7XG5cdC0tY29weS1jb2RlLWhlYWRlci1yaWdodC1tYXJnaW46IDEycHg7XG5cdC0tZGVudC1kaWZmZXJlbmNlOiAyNHB4O1xuXHRoZWlnaHQ6IDE0cHg7XG5cdG1hcmdpbi1ib3R0b206IDZweCAhaW1wb3J0YW50O1xufVxucHJlLmNvZGUtc3R5bGVyLXByZS5jb2RlLXN0eWxlci1mb2xkZWQgYnV0dG9uLnJ1bi1jb2RlLWJ1dHRvbiB7XG5cdHRvcDogNTAwcHg7XG59XG5wcmUuY29kZS1zdHlsZXItcHJlIGJ1dHRvbi5ydW4tY29kZS1idXR0b246OmJlZm9yZSB7XG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0d2lkdGg6IDE0cHg7XG5cdGhlaWdodDogMTRweDtcblx0cGFkZGluZy1yaWdodDogNHB4O1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2RlLXN0eWxlci1idXR0b24tY29sb3VyKTtcblx0Y29udGVudDogXCJcXDIwMGJcIjtcblx0LXdlYmtpdC1tYXNrLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNDc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDMyIDMyJyUzRSUzQ3BhdGggZD0nTTcgMjhhMSAxIDAgMCAxLTEtMVY1YTEgMSAwIDAgMSAxLjQ4Mi0uODc2bDIwIDExYTEgMSAwIDAgMSAwIDEuNzUybC0yMCAxMUExIDEgMCAwIDEgNyAyOFonLyUzRSUzQ3BhdGggZmlsbD0nbm9uZScgZD0nTTAgMGgzMnYzMkgweicgZGF0YS1uYW1lPScmbHQ7VHJhbnNwYXJlbnQgUmVjdGFuZ2xlJmd0OycvJTNFJTNDL3N2ZyUzRVwiKTtcblx0bWFzay1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAzMiAzMiclM0UlM0NwYXRoIGQ9J003IDI4YTEgMSAwIDAgMS0xLTFWNWExIDEgMCAwIDEgMS40ODItLjg3NmwyMCAxMWExIDEgMCAwIDEgMCAxLjc1MmwtMjAgMTFBMSAxIDAgMCAxIDcgMjhaJy8lM0UlM0NwYXRoIGZpbGw9J25vbmUnIGQ9J00wIDBoMzJ2MzJIMHonIGRhdGEtbmFtZT0nJmx0O1RyYW5zcGFyZW50IFJlY3RhbmdsZSZndDsnLyUzRSUzQy9zdmclM0VcIik7XG5cdC13ZWJraXQtbWFzay1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0bWFzay1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0dmVydGljYWwtYWxpZ246IDBweDtcbn1cbnByZS5jb2RlLXN0eWxlci1wcmUgYnV0dG9uLmNsZWFyLWJ1dHRvbi1kaXNhYmxlZCxcbnByZS5jb2RlLXN0eWxlci1wcmUgYnV0dG9uLnJ1bi1idXR0b24tZGlzYWJsZWQge1xuXHRkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5wcmUuY29kZS1zdHlsZXItcHJlIGJ1dHRvbi5jbGVhci1idXR0b24ge1xuXHRoZWlnaHQ6IDE0cHg7XG5cdG1hcmdpbi1ib3R0b206IDZweCAhaW1wb3J0YW50O1xuXHRtYXJnaW4tbGVmdDogY2FsYyh2YXIoLS1sYW5ndWFnZS1ib3JkZXItd2lkdGgpICsgMTJweCk7XG5cdGNsaXAtcGF0aDogdmFyKC0tcG9seWdvbi1pbik7XG5cdHdpbGwtY2hhbmdlOiBtYXJnaW4tcmlnaHQsIGNsaXAtcGF0aDtcbn1cbnByZS5jb2RlLXN0eWxlci1wcmUgYnV0dG9uLmNsZWFyLWJ1dHRvbjo6YmVmb3JlIHtcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHR3aWR0aDogMTRweDtcblx0aGVpZ2h0OiAxNHB4O1xuXHRwYWRkaW5nLXJpZ2h0OiA0cHg7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvZGUtc3R5bGVyLWJ1dHRvbi1jb2xvdXIpO1xuXHRjb250ZW50OiBcIlxcMjAwYlwiO1xuXHQtd2Via2l0LW1hc2staW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMzIgMzInJTNFJTNDcGF0aCBkPSdNMTYgNCA2IDE0bDEuNDEgMS40MUwxNSA3LjgzVjI4aDJWNy44M2w3LjU5IDcuNThMMjYgMTQgMTYgNHonLyUzRSUzQ3BhdGggZmlsbD0nbm9uZScgZD0nTTAgMGgzMnYzMkgweicgZGF0YS1uYW1lPScmbHQ7VHJhbnNwYXJlbnQgUmVjdGFuZ2xlJmd0OycvJTNFJTNDL3N2ZyUzRVwiKTtcblx0bWFzay1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAzMiAzMiclM0UlM0NwYXRoIGQ9J00xNiA0IDYgMTRsMS40MSAxLjQxTDE1IDcuODNWMjhoMlY3LjgzbDcuNTkgNy41OEwyNiAxNCAxNiA0eicvJTNFJTNDcGF0aCBmaWxsPSdub25lJyBkPSdNMCAwaDMydjMySDB6JyBkYXRhLW5hbWU9JyZsdDtUcmFuc3BhcmVudCBSZWN0YW5nbGUmZ3Q7Jy8lM0UlM0Mvc3ZnJTNFXCIpO1xuXHQtd2Via2l0LW1hc2stcmVwZWF0OiBuby1yZXBlYXQ7XG5cdG1hc2stcmVwZWF0OiBuby1yZXBlYXQ7XG5cdHZlcnRpY2FsLWFsaWduOiAwcHg7XG59XG5wcmUuY29kZS1zdHlsZXItcHJlIGJ1dHRvbi5jbGVhci1idXR0b246bm90KDphY3RpdmUpIHtcblx0YW5pbWF0aW9uOiByZXZlcnNlLWluZGVudCB2YXIoLS1kdXJhdGlvbi1idXR0b24pO1xufVxucHJlLmNvZGUtc3R5bGVyLXByZSBidXR0b24uY2xlYXItYnV0dG9uOmhvdmVye1xuXHRtYXJnaW4tcmlnaHQ6IHZhcigtLWNvcHktY29kZS1oZWFkZXItcmlnaHQtbWFyZ2luKTtcblx0YW5pbWF0aW9uOiByZXZlcnNlLW91dGRlbnQgdmFyKC0tZHVyYXRpb24tYnV0dG9uKTtcblx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cdGNsaXAtcGF0aDogdmFyKC0tcG9seWdvbi1vdXQpO1xufVxucHJlLmNvZGUtc3R5bGVyLXByZSBidXR0b24uY2xlYXItYnV0dG9uOmFjdGl2ZSB7XG5cdHNjYWxlOiAwLjk1O1xuXHR0cmFuc2l0aW9uOiBzY2FsZSB2YXIoLS1kdXJhdGlvbi1idXR0b24pIGN1YmljLWJlemllcigwLjQsIDAuMTQsIDAuMywgMSk7XG59XG4uY29kZS1zdHlsZXItcHJlLXBhcmVudC5oYXMtcnVuLWNvZGUtYnV0dG9uIC5sb2FkLXN0YXRlLWluZGljYXRvciB7XG5cdHotaW5kZXg6IDEwO1xuXHRiYWNrZ3JvdW5kOiBub25lO1xuXHRjb2xvcjogbm9uZTtcbn1cbi5jb2RlLXN0eWxlci1wcmUtcGFyZW50Lmhhcy1ydW4tY29kZS1idXR0b24gLmxvYWQtc3RhdGUtaW5kaWNhdG9yOjpiZWZvcmUge1xuXHRib3gtc2hhZG93OiBub25lO1xufVxuLmNvZGUtc3R5bGVyLXByZS1wYXJlbnQuaGFzLXJ1bi1jb2RlLWJ1dHRvbiAubG9hZC1zdGF0ZS1pbmRpY2F0b3Igc3ZnIHtcblx0Y29sb3I6IHZhcigtLWNvZGUtc3R5bGVyLWJ1dHRvbi1jb2xvdXIpO1xufVxuLmNvZGUtc3R5bGVyLXByZS1wYXJlbnQuaGFzLXJ1bi1jb2RlLWJ1dHRvbiAubG9hZC1zdGF0ZS1pbmRpY2F0b3Igc3ZnOmhvdmVyIHtcblx0Y29sb3I6IHZhcigtLWNvZGUtc3R5bGVyLWJ1dHRvbi1hY3RpdmUtY29sb3VyKTtcbn1cbi5jb2RlLXN0eWxlci1wcmUtcGFyZW50Lmhhcy1ydW4tY29kZS1idXR0b24gLmxvYWQtc3RhdGUtaW5kaWNhdG9yLnZpc2libGUge1xuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG59XG5cbi8qKiBFbWJlZCBDb2RlIFBsdWdpbiAqL1xuLmJsb2NrLWxhbmd1YWdlLXByZXZpZXcgcHJlLmNvZGUtc3R5bGVyLXByZSBjb2RlIHtcblx0d2hpdGUtc3BhY2U6IHVuc2V0O1xufVxucHJlLmNvZGUtc3R5bGVyLXByZSBzcGFuLmNvZGUtYmxvY2stbGluZV9udW0td3JhcCxcbnByZS5jb2RlLXN0eWxlci1wcmUgZGl2LmNvZGUtYmxvY2staGlnaGxpZ2h0LXdyYXAge1xuXHRkaXNwbGF5OiBub25lO1xufVxuLm1hcmtkb3duLXNvdXJjZS12aWV3Lm1vZC1jbTYgLmNtLWVtYmVkLWJsb2NrIC5jb2RlLXN0eWxlci1wcmUtcGFyZW50ICsgLmVkaXQtYmxvY2stYnV0dG9uOjphZnRlciB7XG5cdHBhZGRpbmctbGVmdDogNHB4O1xuXHRjb250ZW50OiAnRWRpdCBCbG9jayc7XG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbGVyKTtcbn1cbi5tYXJrZG93bi1zb3VyY2Utdmlldy5tb2QtY202IC5jbS1lbWJlZC1ibG9jazpub3QoOmhvdmVyKSAuY29kZS1zdHlsZXItcHJlLXBhcmVudCArIC5lZGl0LWJsb2NrLWJ1dHRvbiB7XG5cdG9wYWNpdHk6IDA7XG5cdHZpc2liaWxpdHk6IGhpZGRlblxufVxuLm1hcmtkb3duLXNvdXJjZS12aWV3Lm1vZC1jbTYgLmNtLWVtYmVkLWJsb2NrIC5jb2RlLXN0eWxlci1wcmUtcGFyZW50ICsgLmVkaXQtYmxvY2stYnV0dG9uIHtcblx0LS1jb3B5LWNvZGUtaGVhZGVyLXJpZ2h0LW1hcmdpbjogY2FsYygyLjIgKiB2YXIoLS1oZWFkZXItYnV0dG9uLXNwYWNpbmcpKTtcblx0LS1kZW50LWRpZmZlcmVuY2U6IDBweDtcblx0LS1wb2x5Z29uLWluOiBwb2x5Z29uKDAgMCwgMThweCAwLCAxOHB4IDM2cHgsIDAgMzZweCk7XG5cdHotaW5kZXg6IDEwO1xuXHR0b3A6IG1heChjYWxjKDAuNSAqIHZhcigtLWNvbnRhaW5lci1oZWlnaHQpICogMSksY2FsYygwLjUgKiB2YXIoLS1jb250YWluZXItbWluLWhlaWdodCkgKiAxKSk7XG5cdHBhZGRpbmc6IDA7XG5cdG1hcmdpbjogMDtcblx0bWFyZ2luLXJpZ2h0OiBjYWxjKHZhcigtLWNvcHktY29kZS1oZWFkZXItcmlnaHQtbWFyZ2luKSAtIHZhcigtLWRlbnQtZGlmZmVyZW5jZSkpO1xuXHRjbGlwLXBhdGg6IHZhcigtLXBvbHlnb24taW4pO1xuXHRvcGFjaXR5OiAxO1xuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgdHJhbnNpdGlvbjogdmlzaWJpbGl0eSB2YXIoLS1kdXJhdGlvbi1idXR0b24pLCBvcGFjaXR5IHZhcigtLWR1cmF0aW9uLWJ1dHRvbik7XG5cdHZpc2liaWxpdHk6IHZpc2libGU7XG5cdHdpbGwtY2hhbmdlOiBtYXJnaW4tcmlnaHQsIGNsaXAtcGF0aDtcbn1cbmJvZHkgLmNtLWVtYmVkLWJsb2NrIC5jb2RlLXN0eWxlci1wcmUtcGFyZW50OmhhcyggcHJlLmNvZGUtc3R5bGVyLXByZSAuY29kZS1zdHlsZXItaGVhZGVyLWNvbnRhaW5lci1oaWRkZW4pICsgLmVkaXQtYmxvY2stYnV0dG9uIHtcblx0LS1jb3B5LWNvZGUtaGVhZGVyLXJpZ2h0LW1hcmdpbjogNHB4O1xuXHR0b3A6IGNhbGMoMC41ICogdmFyKC0tZm9udC10ZXh0LXNpemUpICogMC44NzUgKiB2YXIoLS1saW5lLWhlaWdodC1ub3JtYWwpKTtcbn1cbi5tYXJrZG93bi1zb3VyY2Utdmlldy5tb2QtY202IC5jbS1lbWJlZC1ibG9jazpob3ZlciAuY29kZS1zdHlsZXItcHJlLXBhcmVudCArIC5lZGl0LWJsb2NrLWJ1dHRvbjpob3ZlciB7XG5cdG1hcmdpbi1yaWdodDogdmFyKC0tY29weS1jb2RlLWhlYWRlci1yaWdodC1tYXJnaW4pO1xuXHRhbmltYXRpb246IHJldmVyc2Utb3V0ZGVudCB2YXIoLS1kdXJhdGlvbi1idXR0b24pO1xuXHRiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcblx0Y2xpcC1wYXRoOiB2YXIoLS1wb2x5Z29uLW91dCk7XG59XG4ubWFya2Rvd24tc291cmNlLXZpZXcubW9kLWNtNiAuY20tZW1iZWQtYmxvY2s6aG92ZXIgLmNvZGUtc3R5bGVyLXByZS1wYXJlbnQgKyAuZWRpdC1ibG9jay1idXR0b246YWN0aXZlIHtcblx0c2NhbGU6IDAuOTU7XG5cdHRyYW5zaXRpb246IHNjYWxlIHZhcigtLWR1cmF0aW9uLWJ1dHRvbikgY3ViaWMtYmV6aWVyKDAuNCwgMC4xNCwgMC4zLCAxKTtcbn1cblxuLyoqIEZpbGUgSW5jbHVkZSBQbHVnaW4gKi9cbmRpdi5ibG9jay1sYW5ndWFnZS1pbmNsdWRlIHByZS5jb2RlLXN0eWxlci1wcmUgYnV0dG9uLmNvcHktY29kZS1idXR0b24ge1xuXHRtYXJnaW46IDA7XG5cdG1hcmdpbi1yaWdodDogY2FsYyh2YXIoLS1jb3B5LWNvZGUtaGVhZGVyLXJpZ2h0LW1hcmdpbikgLSB2YXIoLS1kZW50LWRpZmZlcmVuY2UpKTtcbn1cbmRpdi5ibG9jay1sYW5ndWFnZS1pbmNsdWRlIHByZS5jb2RlLXN0eWxlci1wcmUgYnV0dG9uLmNvcHktY29kZS1idXR0b246aG92ZXIge1xuXHRtYXJnaW4tcmlnaHQ6IHZhcigtLWNvcHktY29kZS1oZWFkZXItcmlnaHQtbWFyZ2luKTtcbn1cbiJdLAogICJtYXBwaW5ncyI6ICI7QUFDQTtBQUVDLG1CQUFpQjtBQUNqQixnQ0FBOEI7QUFDOUIsa0JBQWdCO0FBQ2hCLHNCQUFvQixLQUFLLElBQUksc0JBQXNCLEVBQUUsRUFBRSxFQUFFLElBQUksaUNBQWlDLEVBQUUsSUFBSTtBQUNwRywwQkFBd0IsS0FBSyxDQUFDLElBQUksb0JBQW9CLEVBQUUsRUFBRSxFQUFFLElBQUksaUNBQWlDLEVBQUUsSUFBSSxxQkFBcUIsRUFBRSxJQUFJO0FBQ2xJLDRCQUEwQixJQUFJO0FBQzlCLDJCQUF5QjtBQUd6QixzQkFBb0IsSUFBSTtBQUN4QixvQkFBa0I7QUFDbEIsbUNBQWlDO0FBQ2pDLG9CQUFrQjtBQUNsQiwyQkFBeUI7QUFDekIsNEJBQTBCO0FBQzFCLG9DQUFrQyxJQUFJO0FBQ3RDLCtCQUE2QjtBQUM3QiwwQkFBd0IsRUFBRSxNQUFNO0FBQ2hDLHdCQUFzQjtBQUN0QiwwQkFBd0I7QUFHeEIscUNBQW1DO0FBR25DLG1DQUFpQztBQUNqQyxnQ0FBOEI7QUFDOUIsa0NBQWdDO0FBR2hDLG1CQUFpQjtBQUNqQiwwQkFBd0IsSUFBSTtBQUc1QiwrQkFBNkIsSUFBSTtBQUNqQyxzQ0FBb0M7QUFDcEMscUJBQW1CO0FBQ25CLHFCQUFtQjtBQUNuQixnQkFBYyxRQUFRLEVBQUUsQ0FBQyxFQUFFLEtBQUssQ0FBQyxFQUFFLEtBQUssSUFBSSxFQUFFLEVBQUU7QUFDaEQsaUJBQWUsUUFBUSxFQUFFLENBQUMsRUFBRSxLQUFLLENBQUMsRUFBRSxLQUFLLElBQUksRUFBRSxFQUFF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 */
|