mirror of
https://github.com/mayurankv/Obsidian-Code-Styler.git
synced 2026-07-22 08:10:29 +00:00
1188 lines
119 KiB
CSS
1188 lines
119 KiB
CSS
/* src/css/codeblocks.css */
|
|
.code-styler-pre-parent {
|
|
margin-bottom: 16px;
|
|
}
|
|
.code-styler pre.code-styler-pre {
|
|
background: var(--code-styler-codeblock-background-colour) !important;
|
|
border-radius: var(--border-radius) !important;
|
|
min-height: unset;
|
|
padding: 0px !important;
|
|
overflow: hidden !important;
|
|
}
|
|
.code-styler pre.code-styler-pre[class*=language-] {
|
|
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%) !important;
|
|
padding-left: var(--language-border-width) !important;
|
|
}
|
|
.code-styler code {
|
|
padding-top: var(--code-padding) !important;
|
|
padding-bottom: var(--code-padding) !important;
|
|
}
|
|
.code-styler pre.code-styler-pre > code {
|
|
display: grid;
|
|
grid-template-columns: min-content auto;
|
|
grid-template-rows: auto;
|
|
padding-top: var(--code-padding) !important;
|
|
padding-bottom: var(--code-padding) !important;
|
|
padding-left: 0px !important;
|
|
padding-right: 0px !important;
|
|
border-radius: 0px !important;
|
|
background: none !important;
|
|
transition-property:
|
|
max-height,
|
|
padding,
|
|
border-top;
|
|
transition-duration: var(--duration-button);
|
|
transition-timing-function: ease-in-out;
|
|
max-height: unset;
|
|
overflow-x: overlay;
|
|
}
|
|
.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-collapsed > code {
|
|
padding-top: 0 !important;
|
|
padding-bottom: 0 !important;
|
|
max-height: 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;
|
|
}
|
|
.code-styler .markdown-source-view [class*=code-styler-line].HyperMD-codeblock-begin {
|
|
border-top-left-radius: 0px !important;
|
|
border-top-right-radius: 0px !important;
|
|
border-top: none !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:not(.code-styler-show-langicons-always):not(.code-styler-show-langnames-always) .markdown-source-view :not(pre.code-styler-pre) > .code-styler-header-container + .HyperMD-codeblock-begin,
|
|
body:not(.code-styler-show-langnames-always) .markdown-source-view :not(pre.code-styler-pre) > .code-styler-header-container:not(:has(img.code-styler-icon)) + .HyperMD-codeblock-begin,
|
|
body .markdown-source-view :not(pre.code-styler-pre) > .code-styler-header-container:not(:has([class*="code-styler-header-language-tag-"])) + .HyperMD-codeblock-begin,
|
|
body .markdown-source-view :not([class^="code-styler-header-container"]) + [class*=code-styler-line].HyperMD-codeblock-begin,
|
|
body .markdown-source-view [class*=code-styler-line].HyperMD-codeblock-begin:nth-of-type(1) {
|
|
border-top-left-radius: var(--border-radius) !important;
|
|
border-top-right-radius: var(--border-radius) !important;
|
|
}
|
|
.code-styler .markdown-source-view .HyperMD-codeblock[class*=code-styler-line] {
|
|
background: linear-gradient(90deg, var(--gradient-background-colour) var(--gradient-highlights-colour-stop), transparent 100%), var(--code-styler-codeblock-background-colour) !important;
|
|
overflow: hidden;
|
|
padding: 0 !important;
|
|
padding-left: var(--size-4-4) !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-] [class^=code-styler-line-number] {
|
|
margin-left: var(--language-border-width);
|
|
}
|
|
body:not([class*="code-styler-show-langicons"]) .code-styler-header-container-specific div:has(> img.code-styler-icon),
|
|
body:not(.code-styler-show-langicons-always) .code-styler-header-container div:has(> img.code-styler-icon) {
|
|
display: none;
|
|
}
|
|
body:not([class*="code-styler-show-langnames"]) .code-styler-header-container-specific [class^=code-styler-header-language-tag],
|
|
body:not(.code-styler-show-langnames-always) .code-styler-header-container [class^=code-styler-header-language-tag] {
|
|
display: none;
|
|
}
|
|
body:not(.code-styler-show-langicons-always):not(.code-styler-show-langnames-always) .code-styler-header-container,
|
|
body:not(.code-styler-show-langnames-always) .code-styler-header-container:not(:has(img.code-styler-icon)) {
|
|
display: none !important;
|
|
}
|
|
body .markdown-source-view :not(pre.code-styler-pre) > .code-styler-header-container:not([class*="language-"]),
|
|
body pre.code-styler-pre:not([class*="language-"]) .code-styler-header-container {
|
|
display: none !important;
|
|
}
|
|
[class^=code-styler-header-container] {
|
|
font-size: var(--header-font-size);
|
|
user-select: none;
|
|
height: var(--container-height);
|
|
min-height: var(--container-min-height);
|
|
padding-top: var(--header-padding);
|
|
margin-top: 0px !important;
|
|
display: flex !important;
|
|
overflow: visible;
|
|
transition: border-bottom ease-in-out var(--duration-button);
|
|
box-sizing: content-box;
|
|
}
|
|
.markdown-source-view :not(pre.code-styler-pre) > [class^=code-styler-header-container] {
|
|
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;
|
|
padding-left: var(--language-border-width);
|
|
border-top-left-radius: var(--border-radius);
|
|
border-top-right-radius: var(--border-radius);
|
|
padding-bottom: var(--header-separator-width);
|
|
border-top: var(--code-styler-header-border);
|
|
border-left: var(--code-styler-header-border);
|
|
border-right: var(--code-styler-header-border);
|
|
}
|
|
pre.code-styler-pre [class^=code-styler-header-container] {
|
|
background-color: var(--code-styler-header-background-colour);
|
|
border-bottom: var(--header-separator-width) solid var(--code-styler-header-separator-colour);
|
|
}
|
|
.markdown-source-view :not(pre.code-styler-pre) > [class^=code-styler-header-container]:not(:has(+ .HyperMD-codeblock-begin)) {
|
|
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;
|
|
padding-bottom: var(--header-padding);
|
|
border-bottom-left-radius: var(--border-radius);
|
|
border-bottom-right-radius: var(--border-radius);
|
|
border-bottom: var(--code-styler-header-border);
|
|
border-bottom: var(--collapsed-bottom-border);
|
|
}
|
|
pre.code-styler-pre.code-styler-collapsed [class^=code-styler-header-container] {
|
|
border-bottom: var(--collapsed-bottom-border);
|
|
}
|
|
[class^=code-styler-header-container] [class^=code-styler-header-language-tag] {
|
|
display: flex;
|
|
justify-content: center;
|
|
align-content: center;
|
|
flex-direction: column;
|
|
height: 100%;
|
|
padding-left: var(--header-spacing);
|
|
padding-right: var(--header-spacing);
|
|
margin-right: var(--header-spacing);
|
|
padding-top: calc(1em * var(--header-inner-vertical-padding));
|
|
padding-bottom: calc(1em * var(--header-inner-vertical-padding));
|
|
font-size: inherit;
|
|
border-radius: var(--border-radius) var(--border-radius) 0px 0px;
|
|
background-color: var(--code-styler-header-language-tag-background-colour);
|
|
color: var(--code-styler-header-language-tag-text-colour);
|
|
font-weight: var(--code-styler-header-language-tag-text-bold, normal);
|
|
font-style: var(--code-styler-header-language-tag-text-italic, 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) > [class^=code-styler-header-container]:not(:has(+ .HyperMD-codeblock-begin)) [class^=code-styler-header-language-tag],
|
|
pre.code-styler-pre.code-styler-collapsed [class^=code-styler-header-container] [class^=code-styler-header-language-tag] {
|
|
border-radius: var(--border-radius);
|
|
}
|
|
.code-styler-header-text {
|
|
display: flex;
|
|
justify-content: center;
|
|
align-content: center;
|
|
flex-direction: column;
|
|
padding-left: 0px;
|
|
padding-top: calc(1em * var(--header-inner-vertical-padding));
|
|
padding-bottom: calc(1em * var(--header-inner-vertical-padding));
|
|
font-size: inherit;
|
|
color: var(--code-styler-header-text-colour);
|
|
font-weight: var(--code-styler-header-title-text-bold, normal);
|
|
font-style: var(--code-styler-header-title-text-italic, normal);
|
|
transition: padding ease-in-out var(--duration-button);
|
|
}
|
|
body:not([class*="code-styler-show-langicons"]) .code-styler-header-container-specific [class^=code-styler-header-language-tag],
|
|
body:not(.code-styler-show-langicons-always) .code-styler-header-container [class^=code-styler-header-language-tag],
|
|
body .code-styler-header-container-specific:not(:has(div > img.code-styler-icon)) [class^=code-styler-header-language-tag] {
|
|
border-top-left-radius: 0 !important;
|
|
border-bottom-left-radius: 0 !important;
|
|
}
|
|
body:not([class*="code-styler-show-langicons"]):not([class*="code-styler-show-langnames"]) .code-styler-header-container-specific .code-styler-header-text,
|
|
body:not(.code-styler-show-langicons-always):not(.code-styler-show-langnames) .code-styler-header-container .code-styler-header-text,
|
|
body .code-styler-header-container-specific:not(:has([class^="code-styler-header-language-tag-"])) .code-styler-header-text {
|
|
padding-left: var(--header-spacing);
|
|
}
|
|
div:has(> img.code-styler-icon) {
|
|
display: inline-flex;
|
|
justify-content: center;
|
|
align-content: center;
|
|
flex-direction: column;
|
|
padding-top: calc(1em * var(--header-inner-vertical-padding));
|
|
padding-bottom: calc(1em * var(--header-inner-vertical-padding));
|
|
padding-left: var(--header-spacing);
|
|
padding-right: var(--header-spacing);
|
|
transition: padding ease-in-out var(--duration-button);
|
|
}
|
|
.code-styler-icon {
|
|
width: var(--language-icon-size);
|
|
height: var(--language-icon-size);
|
|
filter: var(--language-icon-filter);
|
|
margin: 0 !important;
|
|
border: none !important;
|
|
}
|
|
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[class*=code-styler-line].cm-active,
|
|
.code-styler-active-line-highlight-codeblock .markdown-source-view .HyperMD-codeblock[class*=code-styler-line].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;
|
|
}
|
|
.code-styler:not(.code-styler-show-line-numbers) .code-styler-line-number,
|
|
.code-styler-line-number-hide {
|
|
display: none;
|
|
}
|
|
.code-styler code > div:first-child > [class^=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-collapsed > code > div:first-child > [class^=code-styler-line-number] {
|
|
box-shadow: 0px 0px var(--code-styler-gutter-background-colour);
|
|
}
|
|
.code-styler code > div:last-child > [class^=code-styler-line-number] {
|
|
box-shadow: 0px var(--code-padding) var(--code-styler-gutter-background-colour);
|
|
}
|
|
.code-styler code > div:only-child > [class^=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);
|
|
}
|
|
[class^=code-styler-line-number] {
|
|
padding-left: calc(4px + var(--language-border-width));
|
|
padding-right: 8px;
|
|
text-align: right;
|
|
min-width: var(--line-number-gutter-min-width);
|
|
background-color: var(--code-styler-gutter-background-colour);
|
|
font-size: var(--code-size);
|
|
font-family: var(--font-monospace);
|
|
color: var(--code-styler-gutter-text-colour);
|
|
user-select: none;
|
|
}
|
|
.markdown-source-view .HyperMD-codeblock .code-styler-line-number,
|
|
.markdown-source-view .HyperMD-codeblock .code-styler-line-number-specific {
|
|
padding-top: var(--line-number-height-correction);
|
|
position: absolute;
|
|
box-sizing: content-box;
|
|
display: inline-block;
|
|
height: 100%;
|
|
min-width: calc(var(--line-number-gutter-min-width) - 12px);
|
|
overflow-x: auto;
|
|
direction: rtl;
|
|
left: 0;
|
|
}
|
|
.markdown-source-view .HyperMD-codeblock-begin .code-styler-line-number,
|
|
.markdown-source-view .HyperMD-codeblock-begin .code-styler-line-number-specific,
|
|
.markdown-source-view .HyperMD-codeblock-end .code-styler-line-number,
|
|
.markdown-source-view .HyperMD-codeblock-end .code-styler-line-number-specific {
|
|
width: var(--line-number-gutter-width);
|
|
}
|
|
pre.code-styler-pre [class^=code-styler-line-number] {
|
|
white-space: nowrap;
|
|
grid-column: 1;
|
|
position: sticky;
|
|
top: -1px;
|
|
left: 0;
|
|
border-top: var(--line-number-height-correction) solid transparent;
|
|
}
|
|
pre.code-styler-pre div:last-child > [class^=code-styler-line-number] {
|
|
width: unset;
|
|
}
|
|
.code-styler-gutter-highlight pre.code-styler-pre [class*=code-styler-line-highlighted] [class^=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 [class^=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 [class^=code-styler-line-number],
|
|
.code-styler-gutter-highlight [class*=code-styler-line-highlighted] [class^=code-styler-line-number] {
|
|
background-color: rgba(0, 0, 0, 0);
|
|
}
|
|
.code-styler-gutter-active-line .cm-active [class^=code-styler-line-number] {
|
|
color: var(--code-styler-gutter-active-text-colour);
|
|
}
|
|
.code-styler.code-styler-show-line-numbers .markdown-source-view .HyperMD-codeblock:has(.code-styler-line-number),
|
|
.code-styler.code-styler-show-line-numbers .markdown-source-view .HyperMD-codeblock:has(.code-styler-line-number-specific) {
|
|
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::-webkit-scrollbar,
|
|
pre.code-styler-pre > code::-webkit-scrollbar {
|
|
width: var(--code-padding) !important;
|
|
height: var(--code-padding) !important;
|
|
}
|
|
pre.code-styler-pre.code-styler-collapsed::-webkit-scrollbar,
|
|
pre.code-styler-pre.code-styler-collapsed code::-webkit-scrollbar {
|
|
display: none;
|
|
}
|
|
@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);
|
|
}
|
|
}
|
|
.markdown-rendered pre.code-styler-pre button {
|
|
transition: visibility var(--duration-button), opacity var(--duration-button);
|
|
visibility: visible;
|
|
opacity: 1;
|
|
display: unset !important;
|
|
color: var(--code-styler-button-colour) !important;
|
|
background: transparent !important;
|
|
box-shadow: none;
|
|
font-family: var(--font-interface);
|
|
font-size: var(--font-ui-smaller);
|
|
margin: 0;
|
|
padding: 0 !important;
|
|
border: none !important;
|
|
margin-top: 0 !important;
|
|
margin-bottom: 0 !important;
|
|
}
|
|
pre.code-styler-pre:not(.code-styler-collapsed):not(:hover) button,
|
|
pre.code-styler-pre.code-styler-collapsed button,
|
|
pre.code-styler-pre:not(.code-styler-collapsed):not(:hover) [class^=code-styler-header-container]::after {
|
|
visibility: hidden;
|
|
opacity: 0;
|
|
}
|
|
[class^=code-styler-header-container]::after {
|
|
position: relative;
|
|
top: 0;
|
|
bottom: 0;
|
|
left: 0;
|
|
right: 0;
|
|
margin: auto;
|
|
margin-right: var(--header-button-spacing);
|
|
content: "\200b";
|
|
width: 20px;
|
|
height: 20px;
|
|
background-color: var(--code-styler-button-colour);
|
|
-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");
|
|
-webkit-mask-repeat: no-repeat;
|
|
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");
|
|
mask-repeat: no-repeat;
|
|
visibility: visible;
|
|
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);
|
|
}
|
|
pre.code-styler-pre.code-styler-collapsed [class^=code-styler-header-container]::after,
|
|
.markdown-source-view :not(pre.code-styler-pre) > [class^=code-styler-header-container]:not(:has(+ .HyperMD-codeblock-begin))::after {
|
|
transform: rotate(-90deg);
|
|
}
|
|
[class^=code-styler-header-container]:hover::after {
|
|
scale: 1;
|
|
}
|
|
body:not(.code-styler-show-langicons-always):not(.code-styler-show-langnames-always) pre.code-styler-pre:has(.code-styler-header-container) button.copy-code-button,
|
|
body:not(.code-styler-show-langnames-always) pre.code-styler-pre:not(:has(.code-styler-header-container-specific)):not(:has(.code-styler-header-container img.code-styler-icon)) button.copy-code-button,
|
|
body pre.code-styler-pre:not([class*="language-"]):has(.code-styler-header-container) button.copy-code-button {
|
|
top: calc(0.5 * var(--font-text-size) * 0.875 * var(--line-height-normal)) !important;
|
|
--copy-code-header-right-margin: 12px;
|
|
}
|
|
body:not(.code-styler-show-langicons-always):not(.code-styler-show-langnames-always) .markdown-source-view :not(pre.code-styler-pre) > .code-styler-header-container + .HyperMD-codeblock-begin,
|
|
body:not(.code-styler-show-langnames-always) .markdown-source-view :not(pre.code-styler-pre) > .code-styler-header-container:not(:has(img.code-styler-icon)) + .HyperMD-codeblock-begin,
|
|
body .markdown-source-view :not(pre.code-styler-pre) > .code-styler-header-container:not(:has([class*="code-styler-header-language-tag-"])) + .HyperMD-codeblock-begin {
|
|
overflow: hidden;
|
|
}
|
|
body:not(.code-styler-show-langicons-always):not(.code-styler-show-langnames-always) .markdown-source-view :not(pre.code-styler-pre) > .code-styler-header-container + .HyperMD-codeblock-begin span.code-block-flair,
|
|
body:not(.code-styler-show-langnames-always) .markdown-source-view :not(pre.code-styler-pre) > .code-styler-header-container:not(:has(img.code-styler-icon)) + .HyperMD-codeblock-begin span.code-block-flair,
|
|
body .markdown-source-view :not(pre.code-styler-pre) > .code-styler-header-container:not(:has([class*="code-styler-header-language-tag-"])) + .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;
|
|
}
|
|
pre.code-styler-pre button.copy-code-button {
|
|
transform: translateY(-50%);
|
|
top: max(calc(0.5 * var(--container-height) * 1), calc(0.5 * var(--container-min-height) * 1)) !important;
|
|
bottom: unset !important;
|
|
}
|
|
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));
|
|
will-change: margin-right, clip-path;
|
|
clip-path: var(--polygon-in);
|
|
}
|
|
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 {
|
|
background-color: transparent;
|
|
animation: outdent var(--duration-button);
|
|
margin-right: var(--copy-code-header-right-margin);
|
|
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 {
|
|
content: "\200b";
|
|
display: inline-block;
|
|
width: 14px;
|
|
height: 14px;
|
|
padding-right: 4px;
|
|
background-color: var(--code-styler-button-colour);
|
|
-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");
|
|
-webkit-mask-repeat: no-repeat;
|
|
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-repeat: no-repeat;
|
|
vertical-align: 1px;
|
|
}
|
|
.markdown-source-view.mod-cm6 .HyperMD-codeblock.code-styler-line span.code-block-flair {
|
|
transform: translateY(-50%);
|
|
font-size: 0;
|
|
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;
|
|
visibility: hidden;
|
|
padding: 0;
|
|
position: absolute;
|
|
line-height: initial !important;
|
|
margin-top: 0 !important;
|
|
margin-bottom: 0 !important;
|
|
}
|
|
.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 {
|
|
visibility: visible;
|
|
opacity: 1;
|
|
vertical-align: -1px;
|
|
font-size: var(--font-ui-smaller);
|
|
}
|
|
.markdown-source-view.mod-cm6 .HyperMD-codeblock.code-styler-line span.code-block-flair::after {
|
|
visibility: visible;
|
|
opacity: 1;
|
|
font-size: var(--font-ui-smaller);
|
|
content: "Copy";
|
|
color: var(--code-styler-button-colour);
|
|
}
|
|
.markdown-source-view.mod-cm6 .HyperMD-codeblock-begin.code-styler-line {
|
|
overflow: visible;
|
|
}
|
|
|
|
/* src/css/inlineCode.css */
|
|
.code-styler .cm-s-obsidian span.cm-inline-code,
|
|
.code-styler .markdown-rendered :not(pre) > code {
|
|
font-weight: var(--code-styler-inline-font-weight);
|
|
color: var(--code-styler-inline-colour);
|
|
background-color: var(--code-styler-inline-background-colour) !important;
|
|
border-radius: var(--code-styler-inline-border-radius) !important;
|
|
padding: var(--code-styler-inline-padding-vertical) var(--code-styler-inline-padding-horizontal) !important;
|
|
margin: 0px var(--code-styler-inline-margin-horizontal) !important;
|
|
}
|
|
.code-styler .cm-s-obsidian span.cm-formatting-code {
|
|
color: var(--code-styler-inline-colour-active);
|
|
display: inline !important;
|
|
}
|
|
.code-styler .cm-s-obsidian span.code-styler-inline-opener ~ span.cm-inline-code:not(.cm-formatting-code) {
|
|
margin-left: 0px !important;
|
|
padding-left: 0px !important;
|
|
border-radius: 0px var(--code-styler-inline-border-radius) var(--code-styler-inline-border-radius) 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)) {
|
|
color: var(--code-styler-inline-colour-active);
|
|
border-radius: var(--code-styler-inline-border-radius) 0px 0px var(--code-styler-inline-border-radius) !important;
|
|
padding-left: var(--code-styler-inline-padding-horizontal) !important;
|
|
padding-right: 0px !important;
|
|
margin-left: var(--code-styler-inline-margin-horizontal) !important;
|
|
margin-right: 0px !important;
|
|
}
|
|
.code-styler .cm-s-obsidian span.cm-formatting-code + span.cm-inline-code:not(.cm-formatting-code) {
|
|
color: var(--code-styler-inline-colour-active);
|
|
border-radius: 0px !important;
|
|
padding-left: 0px !important;
|
|
padding-right: 0px !important;
|
|
margin: 0px 0px !important;
|
|
}
|
|
.code-styler .cm-s-obsidian span.cm-inline-code:not(.cm-formatting-code) + span.cm-formatting-code {
|
|
color: var(--code-styler-inline-colour-active);
|
|
border-radius: 0px var(--code-styler-inline-border-radius) var(--code-styler-inline-border-radius) 0px !important;
|
|
padding-left: 0px !important;
|
|
padding-right: var(--code-styler-inline-padding-horizontal) !important;
|
|
margin-left: 0px !important;
|
|
margin-right: var(--code-styler-inline-margin-horizontal) !important;
|
|
}
|
|
body.code-styler span.code-styler-inline-opener > span > img.code-styler-inline-icon:not([class*="emoji"]) {
|
|
height: calc(var(--code-size) * 1.2);
|
|
margin-bottom: 2px !important;
|
|
vertical-align: middle;
|
|
display: inline !important;
|
|
}
|
|
.code-styler span.code-styler-inline-opener .code-styler-inline-title {
|
|
font-weight: var(--code-styler-inline-title-font-weight);
|
|
color: var(--code-styler-inline-title-colour);
|
|
}
|
|
.code-styler span.code-styler-inline-opener .code-styler-inline-title::after {
|
|
content: "\ff5c";
|
|
color: var(--code-styler-inline-title-color);
|
|
}
|
|
.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;
|
|
}
|
|
.code-styler div.print pre.code-styler-pre.code-styler-collapsed code {
|
|
display: none !important;
|
|
}
|
|
|
|
/* src/css/pickr.css */
|
|
.pickr {
|
|
position: relative;
|
|
overflow: visible;
|
|
transform: translateY(0);
|
|
}
|
|
.pickr * {
|
|
box-sizing: border-box;
|
|
outline: none;
|
|
border: none;
|
|
appearance: none;
|
|
-webkit-appearance: none;
|
|
}
|
|
.pickr .pcr-button {
|
|
position: relative;
|
|
height: 2em;
|
|
width: 2em;
|
|
padding: 0.5em;
|
|
cursor: pointer;
|
|
font-family:
|
|
-apple-system,
|
|
BlinkMacSystemFont,
|
|
"Segoe UI",
|
|
"Roboto",
|
|
"Helvetica Neue",
|
|
Arial,
|
|
sans-serif;
|
|
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;
|
|
transition: all 0.3s;
|
|
}
|
|
.pickr .pcr-button::before {
|
|
position: absolute;
|
|
content: "";
|
|
top: 0;
|
|
left: 0;
|
|
width: 100%;
|
|
height: 100%;
|
|
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;
|
|
border-radius: .15em;
|
|
z-index: -1;
|
|
}
|
|
.pickr .pcr-button::before {
|
|
z-index: initial;
|
|
}
|
|
.pickr .pcr-button::after {
|
|
position: absolute;
|
|
content: "";
|
|
top: 0;
|
|
left: 0;
|
|
height: 100%;
|
|
width: 100%;
|
|
transition: background 0.3s;
|
|
background: var(--pcr-color);
|
|
border-radius: .15em;
|
|
}
|
|
.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;
|
|
outline: none;
|
|
border: none;
|
|
appearance: none;
|
|
-webkit-appearance: 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;
|
|
display: flex;
|
|
flex-direction: column;
|
|
z-index: 10000;
|
|
border-radius: 0.1em;
|
|
background: #fff;
|
|
opacity: 0;
|
|
visibility: hidden;
|
|
transition: opacity 0.3s, visibility 0s 0.3s;
|
|
font-family:
|
|
-apple-system,
|
|
BlinkMacSystemFont,
|
|
"Segoe UI",
|
|
"Roboto",
|
|
"Helvetica Neue",
|
|
Arial,
|
|
sans-serif;
|
|
box-shadow: 0 0.15em 1.5em 0 rgba(0, 0, 0, 0.1), 0 0 1em 0 rgba(0, 0, 0, 0.03);
|
|
left: 0;
|
|
top: 0;
|
|
}
|
|
.pcr-app.visible {
|
|
transition: opacity 0.3s;
|
|
visibility: visible;
|
|
opacity: 1;
|
|
}
|
|
.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 {
|
|
font-size: 1em;
|
|
position: relative;
|
|
width: calc(1.75em - 10px);
|
|
height: calc(1.75em - 10px);
|
|
border-radius: 0.15em;
|
|
cursor: pointer;
|
|
margin: 2.5px;
|
|
flex-shrink: 0;
|
|
justify-self: center;
|
|
transition: all 0.15s;
|
|
overflow: hidden;
|
|
background: transparent;
|
|
z-index: 1;
|
|
}
|
|
.pcr-app .pcr-swatches > button::before {
|
|
position: absolute;
|
|
content: "";
|
|
top: 0;
|
|
left: 0;
|
|
width: 100%;
|
|
height: 100%;
|
|
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;
|
|
border-radius: .15em;
|
|
z-index: -1;
|
|
}
|
|
.pcr-app .pcr-swatches > button::after {
|
|
content: "";
|
|
position: absolute;
|
|
top: 0;
|
|
left: 0;
|
|
width: 100%;
|
|
height: 100%;
|
|
background: var(--pcr-color);
|
|
border: 1px solid rgba(0, 0, 0, 0.05);
|
|
border-radius: 0.15em;
|
|
box-sizing: border-box;
|
|
}
|
|
.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 {
|
|
letter-spacing: 0.07em;
|
|
font-size: 0.75em;
|
|
text-align: center;
|
|
cursor: pointer;
|
|
color: #75797e;
|
|
background: #f1f3f4;
|
|
border-radius: .15em;
|
|
transition: all 0.15s;
|
|
padding: 0.45em 0.5em;
|
|
margin-top: 0.75em;
|
|
}
|
|
.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 {
|
|
color: #75797e;
|
|
text-align: left;
|
|
flex: 1 1 8em;
|
|
min-width: 8em;
|
|
transition: all 0.2s;
|
|
border-radius: .15em;
|
|
background: #f1f3f4;
|
|
cursor: text;
|
|
}
|
|
.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 {
|
|
color: #fff;
|
|
background: #4285f4;
|
|
}
|
|
.pcr-app .pcr-interaction .pcr-save,
|
|
.pcr-app .pcr-interaction .pcr-cancel,
|
|
.pcr-app .pcr-interaction .pcr-clear {
|
|
color: #fff;
|
|
width: auto;
|
|
}
|
|
.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;
|
|
height: 18px;
|
|
width: 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;
|
|
-webkit-user-select: none;
|
|
-moz-user-select: none;
|
|
-ms-user-select: none;
|
|
user-select: none;
|
|
display: flex;
|
|
flex-direction: column;
|
|
cursor: grab;
|
|
cursor: -webkit-grab;
|
|
}
|
|
.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 {
|
|
margin-top: .6em;
|
|
padding: 0 .6em;
|
|
}
|
|
.pcr-app[data-theme=nano] .pcr-interaction {
|
|
padding: 0 .6em .6em .6em;
|
|
}
|
|
.pcr-app[data-theme=nano] .pcr-selection {
|
|
display: grid;
|
|
grid-gap: .6em;
|
|
grid-template-columns: 1fr 4fr;
|
|
grid-template-rows: 5fr auto auto;
|
|
align-items: center;
|
|
height: 10.5em;
|
|
width: 100%;
|
|
align-self: flex-start;
|
|
}
|
|
.pcr-app[data-theme=nano] .pcr-selection .pcr-color-preview {
|
|
grid-area: 2 / 1 / 4 / 1;
|
|
height: 100%;
|
|
width: 100%;
|
|
display: flex;
|
|
flex-direction: row;
|
|
justify-content: center;
|
|
margin-left: .6em;
|
|
}
|
|
.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;
|
|
background: var(--pcr-color);
|
|
width: 2em;
|
|
height: 2em;
|
|
border-radius: 50em;
|
|
overflow: hidden;
|
|
}
|
|
.pcr-app[data-theme=nano] .pcr-selection .pcr-color-preview .pcr-current-color::before {
|
|
position: absolute;
|
|
content: "";
|
|
top: 0;
|
|
left: 0;
|
|
width: 100%;
|
|
height: 100%;
|
|
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;
|
|
border-radius: .15em;
|
|
z-index: -1;
|
|
}
|
|
.pcr-app[data-theme=nano] .pcr-selection .pcr-color-palette {
|
|
grid-area: 1 / 1 / 2 / 3;
|
|
width: 100%;
|
|
height: 100%;
|
|
z-index: 1;
|
|
}
|
|
.pcr-app[data-theme=nano] .pcr-selection .pcr-color-palette .pcr-palette {
|
|
border-radius: .15em;
|
|
width: 100%;
|
|
height: 100%;
|
|
}
|
|
.pcr-app[data-theme=nano] .pcr-selection .pcr-color-palette .pcr-palette::before {
|
|
position: absolute;
|
|
content: "";
|
|
top: 0;
|
|
left: 0;
|
|
width: 100%;
|
|
height: 100%;
|
|
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;
|
|
border-radius: .15em;
|
|
z-index: -1;
|
|
}
|
|
.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/pluginCompatibility.css */
|
|
pre.code-styler-pre code ~ code.language-output {
|
|
display: block;
|
|
margin-bottom: 0;
|
|
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);
|
|
}
|
|
pre.code-styler-pre.code-styler-collapsed code ~ code.language-output {
|
|
border-top-color: transparent;
|
|
border-top-width: 0;
|
|
}
|
|
pre.code-styler-pre:hover code ~ code.language-output {
|
|
margin-bottom: 0;
|
|
}
|
|
pre.code-styler-pre code ~ code.language-output input.interactive-stdin {
|
|
color: var(--text-normal);
|
|
background-color: var(--code-styler-codeblock-background-colour);
|
|
padding: 2px 8px;
|
|
border-color: var(--code-comment);
|
|
border-style: solid;
|
|
border-radius: 5px;
|
|
border-width: 1px;
|
|
}
|
|
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-collapsed button.run-code-button {
|
|
top: 500px;
|
|
}
|
|
pre.code-styler-pre button.run-code-button::before {
|
|
content: "\200b";
|
|
display: inline-block;
|
|
width: 14px;
|
|
height: 14px;
|
|
padding-right: 4px;
|
|
background-color: var(--code-styler-button-colour);
|
|
-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");
|
|
-webkit-mask-repeat: no-repeat;
|
|
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-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);
|
|
will-change: margin-right, clip-path;
|
|
clip-path: var(--polygon-in);
|
|
}
|
|
pre.code-styler-pre button.clear-button::before {
|
|
content: "\200b";
|
|
display: inline-block;
|
|
width: 14px;
|
|
height: 14px;
|
|
padding-right: 4px;
|
|
background-color: var(--code-styler-button-colour);
|
|
-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");
|
|
-webkit-mask-repeat: no-repeat;
|
|
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-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 {
|
|
background-color: transparent;
|
|
animation: reverse-outdent var(--duration-button);
|
|
margin-right: var(--copy-code-header-right-margin);
|
|
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 {
|
|
color: none;
|
|
background: none;
|
|
z-index: 10;
|
|
}
|
|
.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 {
|
|
content: "Edit Block";
|
|
font-size: var(--font-ui-smaller);
|
|
padding-left: 4px;
|
|
}
|
|
.markdown-source-view.mod-cm6 .cm-embed-block:not(:hover) .code-styler-pre-parent + .edit-block-button {
|
|
visibility: hidden;
|
|
opacity: 0;
|
|
}
|
|
.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);
|
|
transition: visibility var(--duration-button), opacity var(--duration-button);
|
|
visibility: visible;
|
|
opacity: 1;
|
|
z-index: 10;
|
|
transform: translateY(-50%);
|
|
top: max(calc(0.5 * var(--container-height) * 1), calc(0.5 * var(--container-min-height) * 1));
|
|
margin: 0;
|
|
margin-right: calc(var(--copy-code-header-right-margin) - var(--dent-difference));
|
|
will-change: margin-right, clip-path;
|
|
clip-path: var(--polygon-in);
|
|
padding: 0;
|
|
}
|
|
body:not(.code-styler-show-langicons-always):not(.code-styler-show-langnames-always) .cm-embed-block .code-styler-pre-parent:has(pre.code-styler-pre .code-styler-header-container) + .edit-block-button,
|
|
body:not(.code-styler-show-langnames-always) .cm-embed-block .code-styler-pre-parent:not(:has(pre.code-styler-pre .code-styler-header-container-specific)):not(:has(pre.code-styler-pre .code-styler-header-container img.code-styler-icon)) + .edit-block-button,
|
|
body .cm-embed-block .code-styler-pre-parent:has(pre.code-styler-pre:not([class*="language-"]) .code-styler-header-container) + .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 {
|
|
background: transparent;
|
|
animation: reverse-outdent var(--duration-button);
|
|
margin-right: var(--copy-code-header-right-margin);
|
|
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 */
|
|
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;
|
|
--collapsed-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-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);
|
|
}
|
|
.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;
|
|
}
|
|
/*# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsic3JjL2Nzcy9jb2RlYmxvY2tzLmNzcyIsICJzcmMvY3NzL2lubGluZUNvZGUuY3NzIiwgInNyYy9jc3MvcGRmRXhwb3J0LmNzcyIsICJzcmMvY3NzL3BpY2tyLmNzcyIsICJzcmMvY3NzL3BsdWdpbkNvbXBhdGliaWxpdHkuY3NzIiwgInNyYy9zdHlsZXMuY3NzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyIvKiogUHJlIGVsZW1lbnRzICovXG4uY29kZS1zdHlsZXItcHJlLXBhcmVudHtcblx0bWFyZ2luLWJvdHRvbTogMTZweDtcbn1cbi5jb2RlLXN0eWxlciBwcmUuY29kZS1zdHlsZXItcHJlIHtcblx0YmFja2dyb3VuZDogdmFyKC0tY29kZS1zdHlsZXItY29kZWJsb2NrLWJhY2tncm91bmQtY29sb3VyKSAhaW1wb3J0YW50O1xuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKSAhaW1wb3J0YW50O1xuXHRtaW4taGVpZ2h0OiB1bnNldDtcblx0cGFkZGluZzogMHB4ICFpbXBvcnRhbnQ7XG5cdG92ZXJmbG93OiBoaWRkZW4gIWltcG9ydGFudDtcbn1cbi5jb2RlLXN0eWxlciBwcmUuY29kZS1zdHlsZXItcHJlW2NsYXNzKj0nbGFuZ3VhZ2UtJ10ge1xuXHRiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoOTBkZWcsIHZhcigtLWxhbmd1YWdlLWJvcmRlci1jb2xvdXIpLCB2YXIoLS1sYW5ndWFnZS1ib3JkZXItY29sb3VyKSB2YXIoLS1sYW5ndWFnZS1ib3JkZXItd2lkdGgpLCB2YXIoLS1jb2RlLXN0eWxlci1jb2RlYmxvY2stYmFja2dyb3VuZC1jb2xvdXIpIHZhcigtLWxhbmd1YWdlLWJvcmRlci13aWR0aCksIHZhcigtLWNvZGUtc3R5bGVyLWNvZGVibG9jay1iYWNrZ3JvdW5kLWNvbG91cikgMTAwJSkgIWltcG9ydGFudDtcblx0cGFkZGluZy1sZWZ0OiB2YXIoLS1sYW5ndWFnZS1ib3JkZXItd2lkdGgpICFpbXBvcnRhbnQ7XG59XG4uY29kZS1zdHlsZXIgY29kZSB7XG5cdHBhZGRpbmctdG9wOiB2YXIoLS1jb2RlLXBhZGRpbmcpICFpbXBvcnRhbnQ7XG5cdHBhZGRpbmctYm90dG9tOiB2YXIoLS1jb2RlLXBhZGRpbmcpICFpbXBvcnRhbnQ7XG59XG4uY29kZS1zdHlsZXIgcHJlLmNvZGUtc3R5bGVyLXByZSA+IGNvZGUge1xuXHRkaXNwbGF5OiBncmlkO1xuXHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IG1pbi1jb250ZW50IGF1dG87XG5cdGdyaWQtdGVtcGxhdGUtcm93czogYXV0bztcblx0cGFkZGluZy10b3A6IHZhcigtLWNvZGUtcGFkZGluZykgIWltcG9ydGFudDtcblx0cGFkZGluZy1ib3R0b206IHZhcigtLWNvZGUtcGFkZGluZykgIWltcG9ydGFudDtcblx0cGFkZGluZy1sZWZ0OiAwcHggIWltcG9ydGFudDtcblx0cGFkZGluZy1yaWdodDogMHB4ICFpbXBvcnRhbnQ7XG5cdGJvcmRlci1yYWRpdXM6IDBweCAhaW1wb3J0YW50O1xuXHRiYWNrZ3JvdW5kOiBub25lICFpbXBvcnRhbnQ7XG5cdHRyYW5zaXRpb24tcHJvcGVydHk6IG1heC1oZWlnaHQsIHBhZGRpbmcsIGJvcmRlci10b3A7XG5cdHRyYW5zaXRpb24tZHVyYXRpb246IHZhcigtLWR1cmF0aW9uLWJ1dHRvbik7XG5cdHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dDtcblx0bWF4LWhlaWdodDogdW5zZXQ7XG5cdG92ZXJmbG93LXg6IG92ZXJsYXk7XG59XG4uY29kZS1zdHlsZXIgcHJlLmNvZGUtc3R5bGVyLXByZSBjb2RlOm5vdCg6aGFzKCA+IGlucHV0W3N0eWxlKj1cImRpc3BsYXk6IGlubGluZTtcIl0pKTphY3RpdmUge1xuXHQtLWxpbmUtd3JhcHBpbmc6IHZhcigtLWxpbmUtYWN0aXZlLXdyYXBwaW5nKSAhaW1wb3J0YW50O1xufVxuLmNvZGUtc3R5bGVyIHByZS5jb2RlLXN0eWxlci1wcmUuY29kZS1zdHlsZXItY29sbGFwc2VkID4gY29kZSB7XG5cdHBhZGRpbmctdG9wOiAwICFpbXBvcnRhbnQ7XG5cdHBhZGRpbmctYm90dG9tOiAwICFpbXBvcnRhbnQ7XG5cdG1heC1oZWlnaHQ6IDAgIWltcG9ydGFudDtcbn1cbi5jb2RlLXN0eWxlciBwcmUuY29kZS1zdHlsZXItcHJlOjpiZWZvcmUsXG4uY29kZS1zdHlsZXIgcHJlLmNvZGUtc3R5bGVyLXByZTo6YWZ0ZXIge1xuXHRjb250ZW50OiBub25lICFpbXBvcnRhbnQ7XG59XG4ubWFya2Rvd24tc291cmNlLXZpZXcubW9kLWNtNiAuY20tZW1iZWQtYmxvY2sgcHJlLmNvZGUtc3R5bGVyLXByZSB7XG5cdG1hcmdpbjogMWVtIDBweDtcbn1cblxuLyoqIEVkaXRpbmcgTW9kZSBCb2R5ICovXG4uY29kZS1zdHlsZXIgLm1hcmtkb3duLXNvdXJjZS12aWV3IFtjbGFzcyo9XCJjb2RlLXN0eWxlci1saW5lXCJdLkh5cGVyTUQtY29kZWJsb2NrLWJlZ2luIHtcblx0Ym9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMHB4ICFpbXBvcnRhbnQ7XG5cdGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwcHggIWltcG9ydGFudDtcblx0Ym9yZGVyLXRvcDogbm9uZSAhaW1wb3J0YW50O1xufVxuLmNvZGUtc3R5bGVyIC5tYXJrZG93bi1zb3VyY2UtdmlldyBbY2xhc3MqPVwiY29kZS1zdHlsZXItbGluZVwiXS5IeXBlck1ELWNvZGVibG9jay1lbmQge1xuXHRib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtcblx0Ym9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpO1xufVxuYm9keTpub3QoLmNvZGUtc3R5bGVyLXNob3ctbGFuZ2ljb25zLWFsd2F5cyk6bm90KC5jb2RlLXN0eWxlci1zaG93LWxhbmduYW1lcy1hbHdheXMpIC5tYXJrZG93bi1zb3VyY2UtdmlldyA6bm90KHByZS5jb2RlLXN0eWxlci1wcmUpID4gLmNvZGUtc3R5bGVyLWhlYWRlci1jb250YWluZXIgKyAuSHlwZXJNRC1jb2RlYmxvY2stYmVnaW4sXG5ib2R5Om5vdCguY29kZS1zdHlsZXItc2hvdy1sYW5nbmFtZXMtYWx3YXlzKSAubWFya2Rvd24tc291cmNlLXZpZXcgOm5vdChwcmUuY29kZS1zdHlsZXItcHJlKSA+IC5jb2RlLXN0eWxlci1oZWFkZXItY29udGFpbmVyOm5vdCg6aGFzKCBpbWcuY29kZS1zdHlsZXItaWNvbikpICsgLkh5cGVyTUQtY29kZWJsb2NrLWJlZ2luLFxuYm9keSAubWFya2Rvd24tc291cmNlLXZpZXcgOm5vdChwcmUuY29kZS1zdHlsZXItcHJlKSA+IC5jb2RlLXN0eWxlci1oZWFkZXItY29udGFpbmVyOm5vdCg6aGFzKFtjbGFzcyo9J2NvZGUtc3R5bGVyLWhlYWRlci1sYW5ndWFnZS10YWctJ10pKSArIC5IeXBlck1ELWNvZGVibG9jay1iZWdpbixcbmJvZHkgLm1hcmtkb3duLXNvdXJjZS12aWV3IDpub3QoW2NsYXNzXj0nY29kZS1zdHlsZXItaGVhZGVyLWNvbnRhaW5lciddKSArIFtjbGFzcyo9XCJjb2RlLXN0eWxlci1saW5lXCJdLkh5cGVyTUQtY29kZWJsb2NrLWJlZ2luLFxuYm9keSAubWFya2Rvd24tc291cmNlLXZpZXcgW2NsYXNzKj1cImNvZGUtc3R5bGVyLWxpbmVcIl0uSHlwZXJNRC1jb2RlYmxvY2stYmVnaW46bnRoLW9mLXR5cGUoMSkgeyAvKj8gRGVwZW5kaW5nIG9uIGhlYWRlciB2aXNpYmlsaXR5ICovXG5cdGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpICFpbXBvcnRhbnQ7XG5cdGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKSAhaW1wb3J0YW50O1xufVxuLmNvZGUtc3R5bGVyIC5tYXJrZG93bi1zb3VyY2UtdmlldyAuSHlwZXJNRC1jb2RlYmxvY2tbY2xhc3MqPSdjb2RlLXN0eWxlci1saW5lJ10ge1xuXHRiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoOTBkZWcsIHZhcigtLWdyYWRpZW50LWJhY2tncm91bmQtY29sb3VyKSB2YXIoLS1ncmFkaWVudC1oaWdobGlnaHRzLWNvbG91ci1zdG9wKSwgdHJhbnNwYXJlbnQgMTAwJSksIHZhcigtLWNvZGUtc3R5bGVyLWNvZGVibG9jay1iYWNrZ3JvdW5kLWNvbG91cikgIWltcG9ydGFudDtcblx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0cGFkZGluZzogMCAhaW1wb3J0YW50O1xuXHRwYWRkaW5nLWxlZnQ6IHZhcigtLXNpemUtNC00KSAhaW1wb3J0YW50O1xufVxuLmNvZGUtc3R5bGVyIC5tYXJrZG93bi1zb3VyY2UtdmlldyAuSHlwZXJNRC1jb2RlYmxvY2tbY2xhc3MqPSdjb2RlLXN0eWxlci1saW5lJ11bY2xhc3MqPSdsYW5ndWFnZS0nXSB7XG5cdGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCg5MGRlZywgdmFyKC0tbGFuZ3VhZ2UtYm9yZGVyLWNvbG91ciksIHZhcigtLWxhbmd1YWdlLWJvcmRlci1jb2xvdXIpIHZhcigtLWxhbmd1YWdlLWJvcmRlci13aWR0aCksIHZhcigtLWdyYWRpZW50LWJhY2tncm91bmQtY29sb3VyKSB2YXIoLS1sYW5ndWFnZS1ib3JkZXItd2lkdGgpIHZhcigtLWdyYWRpZW50LWhpZ2hsaWdodHMtY29sb3VyLXN0b3ApLCB0cmFuc3BhcmVudCAxMDAlKSwgdmFyKC0tY29kZS1zdHlsZXItY29kZWJsb2NrLWJhY2tncm91bmQtY29sb3VyKSAhaW1wb3J0YW50O1xufVxuLmNvZGUtc3R5bGVyIC5tYXJrZG93bi1zb3VyY2UtdmlldyAuSHlwZXJNRC1jb2RlYmxvY2tbY2xhc3MqPSdjb2RlLXN0eWxlci1saW5lJ11bY2xhc3MqPSdsYW5ndWFnZS0nXSBbY2xhc3NePSdjb2RlLXN0eWxlci1saW5lLW51bWJlciddIHtcblx0bWFyZ2luLWxlZnQ6IHZhcigtLWxhbmd1YWdlLWJvcmRlci13aWR0aCk7XG59XG5cbi8qKiBIZWFkZXIgc3R5bGluZyAqL1xuYm9keTpub3QoW2NsYXNzKj0nY29kZS1zdHlsZXItc2hvdy1sYW5naWNvbnMnXSkgLmNvZGUtc3R5bGVyLWhlYWRlci1jb250YWluZXItc3BlY2lmaWMgZGl2Omhhcyg+IGltZy5jb2RlLXN0eWxlci1pY29uKSxcbmJvZHk6bm90KC5jb2RlLXN0eWxlci1zaG93LWxhbmdpY29ucy1hbHdheXMpIC5jb2RlLXN0eWxlci1oZWFkZXItY29udGFpbmVyIGRpdjpoYXMoPiBpbWcuY29kZS1zdHlsZXItaWNvbikge1xuXHRkaXNwbGF5OiBub25lO1xufVxuYm9keTpub3QoW2NsYXNzKj0nY29kZS1zdHlsZXItc2hvdy1sYW5nbmFtZXMnXSkgLmNvZGUtc3R5bGVyLWhlYWRlci1jb250YWluZXItc3BlY2lmaWMgW2NsYXNzXj1cImNvZGUtc3R5bGVyLWhlYWRlci1sYW5ndWFnZS10YWdcIl0sXG5ib2R5Om5vdCguY29kZS1zdHlsZXItc2hvdy1sYW5nbmFtZXMtYWx3YXlzKSAuY29kZS1zdHlsZXItaGVhZGVyLWNvbnRhaW5lciBbY2xhc3NePVwiY29kZS1zdHlsZXItaGVhZGVyLWxhbmd1YWdlLXRhZ1wiXSB7XG5cdGRpc3BsYXk6IG5vbmU7XG59XG5ib2R5Om5vdCguY29kZS1zdHlsZXItc2hvdy1sYW5naWNvbnMtYWx3YXlzKTpub3QoLmNvZGUtc3R5bGVyLXNob3ctbGFuZ25hbWVzLWFsd2F5cykgLmNvZGUtc3R5bGVyLWhlYWRlci1jb250YWluZXIsXG5ib2R5Om5vdCguY29kZS1zdHlsZXItc2hvdy1sYW5nbmFtZXMtYWx3YXlzKSAuY29kZS1zdHlsZXItaGVhZGVyLWNvbnRhaW5lcjpub3QoOmhhcyggaW1nLmNvZGUtc3R5bGVyLWljb24pKSB7XG5cdGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cbmJvZHkgLm1hcmtkb3duLXNvdXJjZS12aWV3IDpub3QocHJlLmNvZGUtc3R5bGVyLXByZSkgPiAuY29kZS1zdHlsZXItaGVhZGVyLWNvbnRhaW5lcjpub3QoW2NsYXNzKj0nbGFuZ3VhZ2UtJ10pLFxuYm9keSBwcmUuY29kZS1zdHlsZXItcHJlOm5vdChbY2xhc3MqPSdsYW5ndWFnZS0nXSkgLmNvZGUtc3R5bGVyLWhlYWRlci1jb250YWluZXIge1xuXHRkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5bY2xhc3NePSdjb2RlLXN0eWxlci1oZWFkZXItY29udGFpbmVyJ10ge1xuXHRmb250LXNpemU6IHZhcigtLWhlYWRlci1mb250LXNpemUpO1xuXHR1c2VyLXNlbGVjdDogbm9uZTtcblx0aGVpZ2h0OiB2YXIoLS1jb250YWluZXItaGVpZ2h0KTtcblx0bWluLWhlaWdodDogdmFyKC0tY29udGFpbmVyLW1pbi1oZWlnaHQpO1xuXHRwYWRkaW5nLXRvcDogdmFyKC0taGVhZGVyLXBhZGRpbmcpO1xuXHRtYXJnaW4tdG9wOiAwcHggIWltcG9ydGFudDsgIFxuXHRkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XG5cdG92ZXJmbG93OiB2aXNpYmxlO1xuXHR0cmFuc2l0aW9uOiBib3JkZXItYm90dG9tIGVhc2UtaW4tb3V0IHZhcigtLWR1cmF0aW9uLWJ1dHRvbik7XG5cdGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xufVxuLm1hcmtkb3duLXNvdXJjZS12aWV3IDpub3QocHJlLmNvZGUtc3R5bGVyLXByZSkgPiBbY2xhc3NePSdjb2RlLXN0eWxlci1oZWFkZXItY29udGFpbmVyJ10ge1xuXHRiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodmFyKC0tY29kZS1zdHlsZXItaGVhZGVyLWJhY2tncm91bmQtY29sb3VyKSAwJSx2YXIoLS1jb2RlLXN0eWxlci1oZWFkZXItYmFja2dyb3VuZC1jb2xvdXIpIGNhbGMoMTAwJSAtIHZhcigtLWhlYWRlci1zZXBhcmF0b3Itd2lkdGgpKSwgdmFyKC0tY29kZS1zdHlsZXItaGVhZGVyLXNlcGFyYXRvci1jb2xvdXIpIGNhbGMoMTAwJSAtIHZhcigtLWhlYWRlci1zZXBhcmF0b3Itd2lkdGgpKSwgdmFyKC0tY29kZS1zdHlsZXItaGVhZGVyLXNlcGFyYXRvci1jb2xvdXIpIDEwMCUpIHZhcigtLWxhbmd1YWdlLWJvcmRlci13aWR0aCkgYm90dG9tLzEwMCUgYm9yZGVyLWJveCBuby1yZXBlYXQsdmFyKC0tbGFuZ3VhZ2UtYm9yZGVyLWNvbG91cikgIWltcG9ydGFudDtcblx0cGFkZGluZy1sZWZ0OiB2YXIoLS1sYW5ndWFnZS1ib3JkZXItd2lkdGgpO1xuXHRib3JkZXItdG9wLWxlZnQtcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtcblx0Ym9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpO1xuXHRwYWRkaW5nLWJvdHRvbTogdmFyKC0taGVhZGVyLXNlcGFyYXRvci13aWR0aCk7XG5cdGJvcmRlci10b3A6IHZhcigtLWNvZGUtc3R5bGVyLWhlYWRlci1ib3JkZXIpO1xuXHRib3JkZXItbGVmdDogdmFyKC0tY29kZS1zdHlsZXItaGVhZGVyLWJvcmRlcik7XG5cdGJvcmRlci1yaWdodDogdmFyKC0tY29kZS1zdHlsZXItaGVhZGVyLWJvcmRlcik7XG59XG5wcmUuY29kZS1zdHlsZXItcHJlIFtjbGFzc149J2NvZGUtc3R5bGVyLWhlYWRlci1jb250YWluZXInXSB7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvZGUtc3R5bGVyLWhlYWRlci1iYWNrZ3JvdW5kLWNvbG91cik7XG5cdGJvcmRlci1ib3R0b206IHZhcigtLWhlYWRlci1zZXBhcmF0b3Itd2lkdGgpIHNvbGlkIHZhcigtLWNvZGUtc3R5bGVyLWhlYWRlci1zZXBhcmF0b3ItY29sb3VyKTtcbn1cbi5tYXJrZG93bi1zb3VyY2UtdmlldyA6bm90KHByZS5jb2RlLXN0eWxlci1wcmUpID4gW2NsYXNzXj0nY29kZS1zdHlsZXItaGVhZGVyLWNvbnRhaW5lciddOm5vdCg6aGFzKCsgLkh5cGVyTUQtY29kZWJsb2NrLWJlZ2luKSkge1xuXHRiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodmFyKC0tY29kZS1zdHlsZXItaGVhZGVyLWJhY2tncm91bmQtY29sb3VyKSAwJSx2YXIoLS1jb2RlLXN0eWxlci1oZWFkZXItYmFja2dyb3VuZC1jb2xvdXIpIDEwMCUpIHZhcigtLWxhbmd1YWdlLWJvcmRlci13aWR0aCkgYm90dG9tLzEwMCUgYm9yZGVyLWJveCBuby1yZXBlYXQsdmFyKC0tbGFuZ3VhZ2UtYm9yZGVyLWNvbG91cikgIWltcG9ydGFudDtcblx0cGFkZGluZy1ib3R0b206IHZhcigtLWhlYWRlci1wYWRkaW5nKTtcblx0Ym9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cyk7XG5cdGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiB2YXIoLS1ib3JkZXItcmFkaXVzKTtcblx0Ym9yZGVyLWJvdHRvbTogdmFyKC0tY29kZS1zdHlsZXItaGVhZGVyLWJvcmRlcik7XG5cdGJvcmRlci1ib3R0b206IHZhcigtLWNvbGxhcHNlZC1ib3R0b20tYm9yZGVyKTtcbn1cbnByZS5jb2RlLXN0eWxlci1wcmUuY29kZS1zdHlsZXItY29sbGFwc2VkIFtjbGFzc149J2NvZGUtc3R5bGVyLWhlYWRlci1jb250YWluZXInXSB7XG5cdGJvcmRlci1ib3R0b206IHZhcigtLWNvbGxhcHNlZC1ib3R0b20tYm9yZGVyKTtcbn1cbltjbGFzc149J2NvZGUtc3R5bGVyLWhlYWRlci1jb250YWluZXInXSBbY2xhc3NePVwiY29kZS1zdHlsZXItaGVhZGVyLWxhbmd1YWdlLXRhZ1wiXSB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXHRhbGlnbi1jb250ZW50OiBjZW50ZXI7XG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdGhlaWdodDogMTAwJTtcblx0cGFkZGluZy1sZWZ0OiB2YXIoLS1oZWFkZXItc3BhY2luZyk7XG5cdHBhZGRpbmctcmlnaHQ6IHZhcigtLWhlYWRlci1zcGFjaW5nKTtcblx0bWFyZ2luLXJpZ2h0OiB2YXIoLS1oZWFkZXItc3BhY2luZyk7XG5cdHBhZGRpbmctdG9wOiBjYWxjKDFlbSAqIHZhcigtLWhlYWRlci1pbm5lci12ZXJ0aWNhbC1wYWRkaW5nKSk7XG5cdHBhZGRpbmctYm90dG9tOiBjYWxjKDFlbSAqIHZhcigtLWhlYWRlci1pbm5lci12ZXJ0aWNhbC1wYWRkaW5nKSk7XG5cdGZvbnQtc2l6ZTogaW5oZXJpdDtcblx0Ym9yZGVyLXJhZGl1czogdmFyKC0tYm9yZGVyLXJhZGl1cykgdmFyKC0tYm9yZGVyLXJhZGl1cykgMHB4IDBweDtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29kZS1zdHlsZXItaGVhZGVyLWxhbmd1YWdlLXRhZy1iYWNrZ3JvdW5kLWNvbG91cik7XG5cdGNvbG9yOiB2YXIoLS1jb2RlLXN0eWxlci1oZWFkZXItbGFuZ3VhZ2UtdGFnLXRleHQtY29sb3VyKTtcblx0Zm9udC13ZWlnaHQ6IHZhcigtLWNvZGUtc3R5bGVyLWhlYWRlci1sYW5ndWFnZS10YWctdGV4dC1ib2xkLCBub3JtYWwpO1xuXHRmb250LXN0eWxlOiB2YXIoLS1jb2RlLXN0eWxlci1oZWFkZXItbGFuZ3VhZ2UtdGFnLXRleHQtaXRhbGljLCBub3JtYWwpO1xuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdHRyYW5zaXRpb246IGJvcmRlci1yYWRpdXMgZWFzZS1pbi1vdXQgdmFyKC0tZHVyYXRpb24tYnV0dG9uKSwgcGFkZGluZyBlYXNlLWluLW91dCB2YXIoLS1kdXJhdGlvbi1idXR0b24pO1xufVxuLm1hcmtkb3duLXNvdXJjZS12aWV3IDpub3QocHJlLmNvZGUtc3R5bGVyLXByZSkgPiBbY2xhc3NePSdjb2RlLXN0eWxlci1oZWFkZXItY29udGFpbmVyJ106bm90KDpoYXMoKyAuSHlwZXJNRC1jb2RlYmxvY2stYmVnaW4pKSBbY2xhc3NePVwiY29kZS1zdHlsZXItaGVhZGVyLWxhbmd1YWdlLXRhZ1wiXSxcbnByZS5jb2RlLXN0eWxlci1wcmUuY29kZS1zdHlsZXItY29sbGFwc2VkIFtjbGFzc149J2NvZGUtc3R5bGVyLWhlYWRlci1jb250YWluZXInXSBbY2xhc3NePVwiY29kZS1zdHlsZXItaGVhZGVyLWxhbmd1YWdlLXRhZ1wiXSB7XG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLWJvcmRlci1yYWRpdXMpO1xufVxuLmNvZGUtc3R5bGVyLWhlYWRlci10ZXh0IHtcblx0ZGlzcGxheTogZmxleDtcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdGFsaWduLWNvbnRlbnQ6IGNlbnRlcjtcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0cGFkZGluZy1sZWZ0OiAwcHg7XG5cdHBhZGRpbmctdG9wOiBjYWxjKDFlbSAqIHZhcigtLWhlYWRlci1pbm5lci12ZXJ0aWNhbC1wYWRkaW5nKSk7XG5cdHBhZGRpbmctYm90dG9tOiBjYWxjKDFlbSAqIHZhcigtLWhlYWRlci1pbm5lci12ZXJ0aWNhbC1wYWRkaW5nKSk7XG5cdGZvbnQtc2l6ZTogaW5oZXJpdDtcblx0Y29sb3I6IHZhcigtLWNvZGUtc3R5bGVyLWhlYWRlci10ZXh0LWNvbG91cik7XG5cdGZvbnQtd2VpZ2h0OiB2YXIoLS1jb2RlLXN0eWxlci1oZWFkZXItdGl0bGUtdGV4dC1ib2xkLCBub3JtYWwpO1xuXHRmb250LXN0eWxlOiB2YXIoLS1jb2RlLXN0eWxlci1oZWFkZXItdGl0bGUtdGV4dC1pdGFsaWMsIG5vcm1hbCk7XG5cdHRyYW5zaXRpb246IHBhZGRpbmcgZWFzZS1pbi1vdXQgdmFyKC0tZHVyYXRpb24tYnV0dG9uKTtcbn1cbmJvZHk6bm90KFtjbGFzcyo9J2NvZGUtc3R5bGVyLXNob3ctbGFuZ2ljb25zJ10pIC5jb2RlLXN0eWxlci1oZWFkZXItY29udGFpbmVyLXNwZWNpZmljIFtjbGFzc149XCJjb2RlLXN0eWxlci1oZWFkZXItbGFuZ3VhZ2UtdGFnXCJdLFxuYm9keTpub3QoLmNvZGUtc3R5bGVyLXNob3ctbGFuZ2ljb25zLWFsd2F5cykgLmNvZGUtc3R5bGVyLWhlYWRlci1jb250YWluZXIgW2NsYXNzXj1cImNvZGUtc3R5bGVyLWhlYWRlci1sYW5ndWFnZS10YWdcIl0sXG5ib2R5IC5jb2RlLXN0eWxlci1oZWFkZXItY29udGFpbmVyLXNwZWNpZmljOm5vdCg6aGFzKCBkaXYgPiBpbWcuY29kZS1zdHlsZXItaWNvbikpIFtjbGFzc149XCJjb2RlLXN0eWxlci1oZWFkZXItbGFuZ3VhZ2UtdGFnXCJdIHsgLyo/IERlcGVuZGluZyBvbiBoZWFkZXIgdmlzaWJpbGl0eSAqL1xuXHRib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG5cdGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDAgIWltcG9ydGFudDtcbn1cbmJvZHk6bm90KFtjbGFzcyo9J2NvZGUtc3R5bGVyLXNob3ctbGFuZ2ljb25zJ10pOm5vdChbY2xhc3MqPSdjb2RlLXN0eWxlci1zaG93LWxhbmduYW1lcyddKSAuY29kZS1zdHlsZXItaGVhZGVyLWNvbnRhaW5lci1zcGVjaWZpYyAuY29kZS1zdHlsZXItaGVhZGVyLXRleHQsXG5ib2R5Om5vdCguY29kZS1zdHlsZXItc2hvdy1sYW5naWNvbnMtYWx3YXlzKTpub3QoLmNvZGUtc3R5bGVyLXNob3ctbGFuZ25hbWVzKSAuY29kZS1zdHlsZXItaGVhZGVyLWNvbnRhaW5lciAuY29kZS1zdHlsZXItaGVhZGVyLXRleHQsXG5ib2R5IC5jb2RlLXN0eWxlci1oZWFkZXItY29udGFpbmVyLXNwZWNpZmljOm5vdCg6aGFzKCBbY2xhc3NePVwiY29kZS1zdHlsZXItaGVhZGVyLWxhbmd1YWdlLXRhZy1cIl0pKSAuY29kZS1zdHlsZXItaGVhZGVyLXRleHQgeyAvKj8gRGVwZW5kaW5nIG9uIGhlYWRlciB2aXNpYmlsaXR5ICovXG5cdHBhZGRpbmctbGVmdDogdmFyKC0taGVhZGVyLXNwYWNpbmcpO1xufVxuZGl2Omhhcyg+IGltZy5jb2RlLXN0eWxlci1pY29uKSB7XG5cdGRpc3BsYXk6IGlubGluZS1mbGV4O1xuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0YWxpZ24tY29udGVudDogY2VudGVyO1xuXHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRwYWRkaW5nLXRvcDogY2FsYygxZW0gKiB2YXIoLS1oZWFkZXItaW5uZXItdmVydGljYWwtcGFkZGluZykpO1xuXHRwYWRkaW5nLWJvdHRvbTogY2FsYygxZW0gKiB2YXIoLS1oZWFkZXItaW5uZXItdmVydGljYWwtcGFkZGluZykpO1xuXHRwYWRkaW5nLWxlZnQ6IHZhcigtLWhlYWRlci1zcGFjaW5nKTtcblx0cGFkZGluZy1yaWdodDogdmFyKC0taGVhZGVyLXNwYWNpbmcpO1xuXHR0cmFuc2l0aW9uOiBwYWRkaW5nIGVhc2UtaW4tb3V0IHZhcigtLWR1cmF0aW9uLWJ1dHRvbik7XG59XG4uY29kZS1zdHlsZXItaWNvbiB7XG5cdHdpZHRoOiB2YXIoLS1sYW5ndWFnZS1pY29uLXNpemUpO1xuXHRoZWlnaHQ6IHZhcigtLWxhbmd1YWdlLWljb24tc2l6ZSk7XG5cdGZpbHRlcjogdmFyKC0tbGFuZ3VhZ2UtaWNvbi1maWx0ZXIpO1xuXHRtYXJnaW46IDAgIWltcG9ydGFudDtcblx0Ym9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi8qKiBMaW5lcyAqL1xucHJlLmNvZGUtc3R5bGVyLXByZSBbY2xhc3NePSdjb2RlLXN0eWxlci1saW5lLWhpZ2hsaWdodGVkJ10gPiAuY29kZS1zdHlsZXItbGluZS10ZXh0IHtcblx0YmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KDkwZGVnLCB2YXIoLS1ncmFkaWVudC1iYWNrZ3JvdW5kLWNvbG91cikgMCUgdmFyKC0tZ3JhZGllbnQtaGlnaGxpZ2h0cy1jb2xvdXItc3RvcCksIHZhcigtLWNvZGUtc3R5bGVyLWNvZGVibG9jay1iYWNrZ3JvdW5kLWNvbG91cikgMTAwJSk7XG59XG4uY29kZS1zdHlsZXItbGluZS1oaWdobGlnaHRlZCB7XG5cdC0tZ3JhZGllbnQtYmFja2dyb3VuZC1jb2xvdXI6IHZhcigtLWNvZGUtc3R5bGVyLWRlZmF1bHQtaGlnaGxpZ2h0LWNvbG91cikgIWltcG9ydGFudDtcbn1cbi5jb2RlLXN0eWxlci1hY3RpdmUtbGluZS1oaWdobGlnaHQgLmNtLWFjdGl2ZSxcbi5jb2RlLXN0eWxlci1hY3RpdmUtbGluZS1oaWdobGlnaHQtZWRpdG9yIC5jbS1hY3RpdmUge1xuXHRiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHZhcigtLWNvZGUtc3R5bGVyLWFjdGl2ZS1lZGl0b3ItbGluZS1jb2xvdXIpLCB2YXIoLS1ncmFkaWVudC1oaWdobGlnaHRzLWNvbG91ci1zdG9wKSwgdHJhbnNwYXJlbnQpICFpbXBvcnRhbnQ7XG59XG4uY29kZS1zdHlsZXItYWN0aXZlLWxpbmUtaGlnaGxpZ2h0IC5tYXJrZG93bi1zb3VyY2UtdmlldyAuSHlwZXJNRC1jb2RlYmxvY2tbY2xhc3MqPVwiY29kZS1zdHlsZXItbGluZVwiXS5jbS1hY3RpdmUsXG4uY29kZS1zdHlsZXItYWN0aXZlLWxpbmUtaGlnaGxpZ2h0LWNvZGVibG9jayAubWFya2Rvd24tc291cmNlLXZpZXcgLkh5cGVyTUQtY29kZWJsb2NrW2NsYXNzKj1cImNvZGUtc3R5bGVyLWxpbmVcIl0uY20tYWN0aXZlIHtcblx0YmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCB2YXIoLS1jb2RlLXN0eWxlci1hY3RpdmUtY29kZWJsb2NrLWxpbmUtY29sb3VyKSwgdmFyKC0tZ3JhZGllbnQtaGlnaGxpZ2h0cy1jb2xvdXItc3RvcCksIHZhcigtLWNvZGUtc3R5bGVyLWNvZGVibG9jay1iYWNrZ3JvdW5kLWNvbG91cikpICFpbXBvcnRhbnQ7XG59XG5cbi8qKiBMaW5lIG51bWJlcnMgKi9cbi5jb2RlLXN0eWxlcjpub3QoLmNvZGUtc3R5bGVyLXNob3ctbGluZS1udW1iZXJzKSAuY29kZS1zdHlsZXItbGluZS1udW1iZXIsXG4uY29kZS1zdHlsZXItbGluZS1udW1iZXItaGlkZSB7XG5cdGRpc3BsYXk6IG5vbmU7XG59XG4uY29kZS1zdHlsZXIgY29kZSA+IGRpdjpmaXJzdC1jaGlsZCA+IFtjbGFzc149J2NvZGUtc3R5bGVyLWxpbmUtbnVtYmVyJ10geyAvKj8gTWFpbnRhaW4gZ3V0dGVyIGNvbG91ciB3aGVuIHBhZGRlZCAqL1xuXHRib3gtc2hhZG93OiAwcHggY2FsYygtMSAqIHZhcigtLWNvZGUtcGFkZGluZykpIHZhcigtLWNvZGUtc3R5bGVyLWd1dHRlci1iYWNrZ3JvdW5kLWNvbG91cik7XG5cdHRyYW5zaXRpb246IGJveC1zaGFkb3cgZWFzZS1pbi1vdXQgdmFyKC0tZHVyYXRpb24tYnV0dG9uKTtcbn1cbi5jb2RlLXN0eWxlciAuY29kZS1zdHlsZXItY29sbGFwc2VkID4gY29kZSA+IGRpdjpmaXJzdC1jaGlsZCA+IFtjbGFzc149J2NvZGUtc3R5bGVyLWxpbmUtbnVtYmVyJ10geyAvKj8gTWFpbnRhaW4gZ3V0dGVyIGNvbG91ciB3aGVuIHBhZGRlZCAqL1xuXHRib3gtc2hhZG93OiAwcHggMHB4IHZhcigtLWNvZGUtc3R5bGVyLWd1dHRlci1iYWNrZ3JvdW5kLWNvbG91cik7XG59XG4uY29kZS1zdHlsZXIgY29kZSA+IGRpdjpsYXN0LWNoaWxkID4gW2NsYXNzXj0nY29kZS1zdHlsZXItbGluZS1udW1iZXInXSB7IC8qPyBNYWludGFpbiBndXR0ZXIgY29sb3VyIHdoZW4gcGFkZGVkICovXG5cdGJveC1zaGFkb3c6IDBweCB2YXIoLS1jb2RlLXBhZGRpbmcpIHZhcigtLWNvZGUtc3R5bGVyLWd1dHRlci1iYWNrZ3JvdW5kLWNvbG91cik7XG59XG4uY29kZS1zdHlsZXIgY29kZSA+IGRpdjpvbmx5LWNoaWxkID4gW2NsYXNzXj0nY29kZS1zdHlsZXItbGluZS1udW1iZXInXSB7IC8qPyBNYWludGFpbiBndXR0ZXIgY29sb3VyIHdoZW4gcGFkZGVkICovXG5cdGJveC1zaGFkb3c6IDBweCBjYWxjKC0xICogdmFyKC0tY29kZS1wYWRkaW5nKSkgdmFyKC0tY29kZS1zdHlsZXItZ3V0dGVyLWJhY2tncm91bmQtY29sb3VyKSwwcHggdmFyKC0tY29kZS1wYWRkaW5nKSB2YXIoLS1jb2RlLXN0eWxlci1ndXR0ZXItYmFja2dyb3VuZC1jb2xvdXIpO1xufVxuW2NsYXNzXj0nY29kZS1zdHlsZXItbGluZS1udW1iZXInXSB7XG5cdHBhZGRpbmctbGVmdDogY2FsYyg0cHggKyB2YXIoLS1sYW5ndWFnZS1ib3JkZXItd2lkdGgpKTtcblx0cGFkZGluZy1yaWdodDogOHB4O1xuXHR0ZXh0LWFsaWduOiByaWdodDtcblx0bWluLXdpZHRoOiB2YXIoLS1saW5lLW51bWJlci1ndXR0ZXItbWluLXdpZHRoKTtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29kZS1zdHlsZXItZ3V0dGVyLWJhY2tncm91bmQtY29sb3VyKTtcblx0Zm9udC1zaXplOiB2YXIoLS1jb2RlLXNpemUpO1xuXHRmb250LWZhbWlseTogdmFyKC0tZm9udC1tb25vc3BhY2UpO1xuXHRjb2xvcjogdmFyKC0tY29kZS1zdHlsZXItZ3V0dGVyLXRleHQtY29sb3VyKTtcblx0dXNlci1zZWxlY3Q6IG5vbmU7XG59XG4ubWFya2Rvd24tc291cmNlLXZpZXcgLkh5cGVyTUQtY29kZWJsb2NrIC5jb2RlLXN0eWxlci1saW5lLW51bWJlcixcbi5tYXJrZG93bi1zb3VyY2UtdmlldyAuSHlwZXJNRC1jb2RlYmxvY2sgLmNvZGUtc3R5bGVyLWxpbmUtbnVtYmVyLXNwZWNpZmljIHtcblx0cGFkZGluZy10b3A6IHZhcigtLWxpbmUtbnVtYmVyLWhlaWdodC1jb3JyZWN0aW9uKTtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHRib3gtc2l6aW5nOiBjb250ZW50LWJveDtcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRoZWlnaHQ6IDEwMCU7XG5cdG1pbi13aWR0aDogY2FsYyh2YXIoLS1saW5lLW51bWJlci1ndXR0ZXItbWluLXdpZHRoKSAtIDEycHgpO1xuXHRvdmVyZmxvdy14OiBhdXRvO1xuXHRkaXJlY3Rpb246IHJ0bDtcblx0bGVmdDogMDtcbn1cbi5tYXJrZG93bi1zb3VyY2UtdmlldyAuSHlwZXJNRC1jb2RlYmxvY2stYmVnaW4gLmNvZGUtc3R5bGVyLWxpbmUtbnVtYmVyLFxuLm1hcmtkb3duLXNvdXJjZS12aWV3IC5IeXBlck1ELWNvZGVibG9jay1iZWdpbiAuY29kZS1zdHlsZXItbGluZS1udW1iZXItc3BlY2lmaWMsXG4ubWFya2Rvd24tc291cmNlLXZpZXcgLkh5cGVyTUQtY29kZWJsb2NrLWVuZCAuY29kZS1zdHlsZXItbGluZS1udW1iZXIsXG4ubWFya2Rvd24tc291cmNlLXZpZXcgLkh5cGVyTUQtY29kZWJsb2NrLWVuZCAuY29kZS1zdHlsZXItbGluZS1udW1iZXItc3BlY2lmaWMge1xuXHR3aWR0aDogdmFyKC0tbGluZS1udW1iZXItZ3V0dGVyLXdpZHRoKTtcbn1cbnByZS5jb2RlLXN0eWxlci1wcmUgW2NsYXNzXj0nY29kZS1zdHlsZXItbGluZS1udW1iZXInXSB7XG5cdHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cdGdyaWQtY29sdW1uOiAxO1xuXHRwb3NpdGlvbjogc3RpY2t5O1xuXHR0b3A6IC0xcHg7XG5cdGxlZnQ6IDA7XG5cdGJvcmRlci10b3A6IHZhcigtLWxpbmUtbnVtYmVyLWhlaWdodC1jb3JyZWN0aW9uKSBzb2xpZCB0cmFuc3BhcmVudDtcbn1cbnByZS5jb2RlLXN0eWxlci1wcmUgZGl2Omxhc3QtY2hpbGQgPiBbY2xhc3NePSdjb2RlLXN0eWxlci1saW5lLW51bWJlciddIHtcblx0d2lkdGg6IHVuc2V0O1xufVxuLmNvZGUtc3R5bGVyLWd1dHRlci1oaWdobGlnaHQgcHJlLmNvZGUtc3R5bGVyLXByZSBbY2xhc3MqPVwiY29kZS1zdHlsZXItbGluZS1oaWdobGlnaHRlZFwiXSBbY2xhc3NePSdjb2RlLXN0eWxlci1saW5lLW51bWJlciddIHtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ3JhZGllbnQtYmFja2dyb3VuZC1jb2xvdXIpO1xufVxuLmNvZGUtc3R5bGVyLWFjdGl2ZS1saW5lLWhpZ2hsaWdodC5jb2RlLXN0eWxlci1ndXR0ZXItaGlnaGxpZ2h0IC5tYXJrZG93bi1zb3VyY2UtdmlldyAuSHlwZXJNRC1jb2RlYmxvY2tbY2xhc3MqPVwiY29kZS1zdHlsZXItbGluZVwiXS5jbS1hY3RpdmUgW2NsYXNzXj0nY29kZS1zdHlsZXItbGluZS1udW1iZXInXSxcbi5jb2RlLXN0eWxlci1hY3RpdmUtbGluZS1oaWdobGlnaHQtY29kZWJsb2NrLmNvZGUtc3R5bGVyLWd1dHRlci1oaWdobGlnaHQgLm1hcmtkb3duLXNvdXJjZS12aWV3IC5IeXBlck1ELWNvZGVibG9ja1tjbGFzcyo9XCJjb2RlLXN0eWxlci1saW5lXCJdLmNtLWFjdGl2ZSBbY2xhc3NePSdjb2RlLXN0eWxlci1saW5lLW51bWJlciddLFxuLmNvZGUtc3R5bGVyLWd1dHRlci1oaWdobGlnaHQgW2NsYXNzKj1cImNvZGUtc3R5bGVyLWxpbmUtaGlnaGxpZ2h0ZWRcIl0gW2NsYXNzXj0nY29kZS1zdHlsZXItbGluZS1udW1iZXInXSB7XG5cdGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwwLDAsMCk7XG59XG4uY29kZS1zdHlsZXItZ3V0dGVyLWFjdGl2ZS1saW5lIC5jbS1hY3RpdmUgW2NsYXNzXj0nY29kZS1zdHlsZXItbGluZS1udW1iZXInXXtcblx0Y29sb3I6IHZhcigtLWNvZGUtc3R5bGVyLWd1dHRlci1hY3RpdmUtdGV4dC1jb2xvdXIpO1xufVxuLmNvZGUtc3R5bGVyLmNvZGUtc3R5bGVyLXNob3ctbGluZS1udW1iZXJzIC5tYXJrZG93bi1zb3VyY2UtdmlldyAuSHlwZXJNRC1jb2RlYmxvY2s6aGFzKC5jb2RlLXN0eWxlci1saW5lLW51bWJlciksXG4uY29kZS1zdHlsZXIuY29kZS1zdHlsZXItc2hvdy1saW5lLW51bWJlcnMgLm1hcmtkb3duLXNvdXJjZS12aWV3IC5IeXBlck1ELWNvZGVibG9jazpoYXMoLmNvZGUtc3R5bGVyLWxpbmUtbnVtYmVyLXNwZWNpZmljKSB7XG5cdHBhZGRpbmctbGVmdDogY2FsYygxMnB4ICsgdmFyKC0tbGFuZ3VhZ2UtYm9yZGVyLXdpZHRoKSArIHZhcigtLWxpbmUtbnVtYmVyLWd1dHRlci13aWR0aCkgKyB2YXIoLS1saW5lLW51bWJlci1ndXR0ZXItcGFkZGluZykpICFpbXBvcnRhbnQ7XG59XG4uY29kZS1zdHlsZXIgLm1hcmtkb3duLXNvdXJjZS12aWV3IC5IeXBlck1ELWNvZGVibG9ja1tjbGFzcyo9J2NvZGUtc3R5bGVyLWxpbmUnXTo6YmVmb3JlIHtcblx0Y29udGVudDogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4vKiogTGluZSB0ZXh0ICovXG5wcmUuY29kZS1zdHlsZXItcHJlID4gY29kZSA+IGRpdltjbGFzcyo9J2NvZGUtc3R5bGVyLWxpbmUnXSB7XG5cdGRpc3BsYXk6IGNvbnRlbnRzICFpbXBvcnRhbnQ7XG59XG5wcmUuY29kZS1zdHlsZXItcHJlIC5jb2RlLXN0eWxlci1saW5lLXRleHQge1xuXHRmbGV4LWJhc2lzOiAxMDAlO1xuXHRwYWRkaW5nLWxlZnQ6IHZhcigtLWxpbmUtbnVtYmVyLWd1dHRlci1wYWRkaW5nKTtcblx0Z3JpZC1jb2x1bW46IDI7XG59XG4uSHlwZXJNRC1jb2RlYmxvY2s6aGFzKD4gLmNtLXdpZGdldEJ1ZmZlcikgeyAvKj8gUHJldmVudCBMaW5lIFdyYXBzICovXG5cdHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG4uSHlwZXJNRC1jb2RlYmxvY2s6aGFzKD4gLmNtLXdpZGdldEJ1ZmZlcikgPiAuY20taG1kLWNvZGVibG9jayB7IC8qPyBQcmV2ZW50IExpbmUgV3JhcHMgKi9cblx0d2hpdGUtc3BhY2U6IGJyZWFrLXNwYWNlcztcbn1cblxuLyoqIFNjcm9sbCBCYXIgKi9cbnByZS5jb2RlLXN0eWxlci1wcmU6Oi13ZWJraXQtc2Nyb2xsYmFyLFxucHJlLmNvZGUtc3R5bGVyLXByZSA+IGNvZGU6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcblx0d2lkdGg6IHZhcigtLWNvZGUtcGFkZGluZykgIWltcG9ydGFudDtcblx0aGVpZ2h0OiB2YXIoLS1jb2RlLXBhZGRpbmcpICFpbXBvcnRhbnQ7XG59XG5cbnByZS5jb2RlLXN0eWxlci1wcmUuY29kZS1zdHlsZXItY29sbGFwc2VkOjotd2Via2l0LXNjcm9sbGJhcixcbnByZS5jb2RlLXN0eWxlci1wcmUuY29kZS1zdHlsZXItY29sbGFwc2VkIGNvZGU6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcblx0ZGlzcGxheTogbm9uZTtcbn1cblxuLyoqIEJ1dHRvbnMgKi9cbkBrZXlmcmFtZXMgb3V0ZGVudCB7XG5cdGZyb20ge1xuXHRcdG1hcmdpbi1yaWdodDogY2FsYyh2YXIoLS1jb3B5LWNvZGUtaGVhZGVyLXJpZ2h0LW1hcmdpbikgLSB2YXIoLS1kZW50LWRpZmZlcmVuY2UpKTtcblx0XHRjbGlwLXBhdGg6IHZhcigtLXBvbHlnb24taW4pO1xuXHR9XG5cdHRvIHtcblx0XHRtYXJnaW4tcmlnaHQ6IHZhcigtLWNvcHktY29kZS1oZWFkZXItcmlnaHQtbWFyZ2luKTtcblx0XHRjbGlwLXBhdGg6IHZhcigtLXBvbHlnb24tb3V0KTtcblx0fVxufVxuQGtleWZyYW1lcyBpbmRlbnQge1xuXHRmcm9tIHtcblx0XHRtYXJnaW4tcmlnaHQ6IHZhcigtLWNvcHktY29kZS1oZWFkZXItcmlnaHQtbWFyZ2luKTtcblx0XHRjbGlwLXBhdGg6IHZhcigtLXBvbHlnb24tb3V0KTtcblx0fVxuXHR0byB7XG5cdFx0bWFyZ2luLXJpZ2h0OiBjYWxjKHZhcigtLWNvcHktY29kZS1oZWFkZXItcmlnaHQtbWFyZ2luKSAtIHZhcigtLWRlbnQtZGlmZmVyZW5jZSkpO1xuXHRcdGNsaXAtcGF0aDogdmFyKC0tcG9seWdvbi1pbik7XG5cdH1cbn1cbkBrZXlmcmFtZXMgcmV2ZXJzZS1vdXRkZW50IHtcblx0ZnJvbSB7XG5cdFx0Y2xpcC1wYXRoOiB2YXIoLS1wb2x5Z29uLWluKTtcblx0fVxuXHR0byB7XG5cdFx0Y2xpcC1wYXRoOiB2YXIoLS1wb2x5Z29uLW91dCk7XG5cdH1cbn1cbkBrZXlmcmFtZXMgcmV2ZXJzZS1pbmRlbnQge1xuXHRmcm9tIHtcblx0XHRjbGlwLXBhdGg6IHZhcigtLXBvbHlnb24tb3V0KTtcblx0fVxuXHR0byB7XG5cdFx0Y2xpcC1wYXRoOiB2YXIoLS1wb2x5Z29uLWluKTtcblx0fVxufVxuLm1hcmtkb3duLXJlbmRlcmVkIHByZS5jb2RlLXN0eWxlci1wcmUgYnV0dG9uIHtcbiAgICB0cmFuc2l0aW9uOiB2aXNpYmlsaXR5IHZhcigtLWR1cmF0aW9uLWJ1dHRvbiksIG9wYWNpdHkgdmFyKC0tZHVyYXRpb24tYnV0dG9uKTtcblx0dmlzaWJpbGl0eTogdmlzaWJsZTtcblx0b3BhY2l0eTogMTtcblx0ZGlzcGxheTogdW5zZXQgIWltcG9ydGFudDtcblx0Y29sb3I6IHZhcigtLWNvZGUtc3R5bGVyLWJ1dHRvbi1jb2xvdXIpICFpbXBvcnRhbnQ7XG5cdGJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG5cdGJveC1zaGFkb3c6IG5vbmU7XG5cdGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWludGVyZmFjZSk7XG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbGVyKTtcblx0bWFyZ2luOiAwO1xuXHRwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG5cdGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuXHRtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7XG5cdG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcbn1cbnByZS5jb2RlLXN0eWxlci1wcmU6bm90KC5jb2RlLXN0eWxlci1jb2xsYXBzZWQpOm5vdCg6aG92ZXIpIGJ1dHRvbixcbnByZS5jb2RlLXN0eWxlci1wcmUuY29kZS1zdHlsZXItY29sbGFwc2VkIGJ1dHRvbixcbnByZS5jb2RlLXN0eWxlci1wcmU6bm90KC5jb2RlLXN0eWxlci1jb2xsYXBzZWQpOm5vdCg6aG92ZXIpIFtjbGFzc149J2NvZGUtc3R5bGVyLWhlYWRlci1jb250YWluZXInXTo6YWZ0ZXIge1xuXHR2aXNpYmlsaXR5OiBoaWRkZW47XG5cdG9wYWNpdHk6IDBcbn1cbltjbGFzc149J2NvZGUtc3R5bGVyLWhlYWRlci1jb250YWluZXInXTo6YWZ0ZXIge1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdHRvcDogMDtcblx0Ym90dG9tOiAwO1xuXHRsZWZ0OiAwO1xuXHRyaWdodDogMDtcblx0bWFyZ2luOiBhdXRvO1xuXHRtYXJnaW4tcmlnaHQ6IHZhcigtLWhlYWRlci1idXR0b24tc3BhY2luZyk7XG5cdGNvbnRlbnQ6IFwiXFwyMDBiXCI7XG5cdHdpZHRoOiAyMHB4O1xuXHRoZWlnaHQ6IDIwcHg7XG5cdGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvZGUtc3R5bGVyLWJ1dHRvbi1jb2xvdXIpO1xuXHQtd2Via2l0LW1hc2staW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMzIgMzInIHhtbDpzcGFjZT0ncHJlc2VydmUnJTNFJTNDcGF0aCBkPSdNMTYgMjIgNiAxMmwxLjQtMS40IDguNiA4LjYgOC42LTguNkwyNiAxMnonLyUzRSUzQ3BhdGggZmlsbD0nbm9uZScgZD0nTTAgMGgzMnYzMkgweicvJTNFJTNDL3N2ZyUzRVwiKTtcblx0LXdlYmtpdC1tYXNrLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRtYXNrLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNDc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDMyIDMyJyBmaWxsPSdub25lJyBzdHJva2U9J2N1cnJlbnRDb2xvcicgc3Ryb2tlLXdpZHRoPScyJyBzdHJva2UtbGluZWNhcD0ncm91bmQnIHN0cm9rZS1saW5lam9pbj0ncm91bmQnICUzRSUzQ3BvbHlsaW5lIHBvaW50cz0nNiA5IDEyIDE1IDE4IDknLyUzRSUzQy9zdmclM0VcIik7XG5cdG1hc2stcmVwZWF0OiBuby1yZXBlYXQ7XG5cdHZpc2liaWxpdHk6IHZpc2libGU7XG5cdG9wYWNpdHk6IDE7XG5cdHNjYWxlOiAwLjg7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIHZhcigtLWR1cmF0aW9uLWJ1dHRvbikgZWFzZS1vdXQsIHZpc2liaWxpdHkgdmFyKC0tZHVyYXRpb24tYnV0dG9uKSwgb3BhY2l0eSB2YXIoLS1kdXJhdGlvbi1idXR0b24pLCBzY2FsZSB2YXIoLS1kdXJhdGlvbi1idXR0b24pIGN1YmljLWJlemllcigwLjQsIDAuMTQsIDAuMywgMSk7XG59XG5wcmUuY29kZS1zdHlsZXItcHJlLmNvZGUtc3R5bGVyLWNvbGxhcHNlZCBbY2xhc3NePSdjb2RlLXN0eWxlci1oZWFkZXItY29udGFpbmVyJ106OmFmdGVyLFxuLm1hcmtkb3duLXNvdXJjZS12aWV3IDpub3QocHJlLmNvZGUtc3R5bGVyLXByZSkgPiBbY2xhc3NePSdjb2RlLXN0eWxlci1oZWFkZXItY29udGFpbmVyJ106bm90KDpoYXMoKyAuSHlwZXJNRC1jb2RlYmxvY2stYmVnaW4pKTo6YWZ0ZXIge1xuXHR0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xufVxuW2NsYXNzXj0nY29kZS1zdHlsZXItaGVhZGVyLWNvbnRhaW5lciddOmhvdmVyOjphZnRlciB7XG5cdHNjYWxlOiAxO1xufVxuYm9keTpub3QoLmNvZGUtc3R5bGVyLXNob3ctbGFuZ2ljb25zLWFsd2F5cyk6bm90KC5jb2RlLXN0eWxlci1zaG93LWxhbmduYW1lcy1hbHdheXMpIHByZS5jb2RlLXN0eWxlci1wcmU6aGFzKCAuY29kZS1zdHlsZXItaGVhZGVyLWNvbnRhaW5lcikgYnV0dG9uLmNvcHktY29kZS1idXR0b24sXG5ib2R5Om5vdCguY29kZS1zdHlsZXItc2hvdy1sYW5nbmFtZXMtYWx3YXlzKSBwcmUuY29kZS1zdHlsZXItcHJlOm5vdCg6aGFzKCAuY29kZS1zdHlsZXItaGVhZGVyLWNvbnRhaW5lci1zcGVjaWZpYykpOm5vdCg6aGFzKCAuY29kZS1zdHlsZXItaGVhZGVyLWNvbnRhaW5lciBpbWcuY29kZS1zdHlsZXItaWNvbikpIGJ1dHRvbi5jb3B5LWNvZGUtYnV0dG9uLFxuYm9keSBwcmUuY29kZS1zdHlsZXItcHJlOm5vdChbY2xhc3MqPSdsYW5ndWFnZS0nXSk6aGFzKC5jb2RlLXN0eWxlci1oZWFkZXItY29udGFpbmVyKSBidXR0b24uY29weS1jb2RlLWJ1dHRvbiB7IC8qPyBEZXBlbmRpbmcgb24gaGVhZGVyIHZpc2liaWxpdHkgKi9cblx0dG9wOiBjYWxjKDAuNSAqIHZhcigtLWZvbnQtdGV4dC1zaXplKSAqIDAuODc1ICogdmFyKC0tbGluZS1oZWlnaHQtbm9ybWFsKSkgIWltcG9ydGFudDtcblx0LS1jb3B5LWNvZGUtaGVhZGVyLXJpZ2h0LW1hcmdpbjogMTJweDtcbn1cbmJvZHk6bm90KC5jb2RlLXN0eWxlci1zaG93LWxhbmdpY29ucy1hbHdheXMpOm5vdCguY29kZS1zdHlsZXItc2hvdy1sYW5nbmFtZXMtYWx3YXlzKSAubWFya2Rvd24tc291cmNlLXZpZXcgOm5vdChwcmUuY29kZS1zdHlsZXItcHJlKSA+IC5jb2RlLXN0eWxlci1oZWFkZXItY29udGFpbmVyICsgLkh5cGVyTUQtY29kZWJsb2NrLWJlZ2luLFxuYm9keTpub3QoLmNvZGUtc3R5bGVyLXNob3ctbGFuZ25hbWVzLWFsd2F5cykgLm1hcmtkb3duLXNvdXJjZS12aWV3IDpub3QocHJlLmNvZGUtc3R5bGVyLXByZSkgPiAuY29kZS1zdHlsZXItaGVhZGVyLWNvbnRhaW5lcjpub3QoOmhhcyggaW1nLmNvZGUtc3R5bGVyLWljb24pKSArIC5IeXBlck1ELWNvZGVibG9jay1iZWdpbixcbmJvZHkgLm1hcmtkb3duLXNvdXJjZS12aWV3IDpub3QocHJlLmNvZGUtc3R5bGVyLXByZSkgPiAuY29kZS1zdHlsZXItaGVhZGVyLWNvbnRhaW5lcjpub3QoOmhhcyhbY2xhc3MqPSdjb2RlLXN0eWxlci1oZWFkZXItbGFuZ3VhZ2UtdGFnLSddKSkgKyAuSHlwZXJNRC1jb2RlYmxvY2stYmVnaW4geyAvKj8gRGVwZW5kaW5nIG9uIGhlYWRlciB2aXNpYmlsaXR5ICovXG5cdG92ZXJmbG93OiBoaWRkZW47XG59XG5ib2R5Om5vdCguY29kZS1zdHlsZXItc2hvdy1sYW5naWNvbnMtYWx3YXlzKTpub3QoLmNvZGUtc3R5bGVyLXNob3ctbGFuZ25hbWVzLWFsd2F5cykgLm1hcmtkb3duLXNvdXJjZS12aWV3IDpub3QocHJlLmNvZGUtc3R5bGVyLXByZSkgPiAuY29kZS1zdHlsZXItaGVhZGVyLWNvbnRhaW5lciArIC5IeXBlck1ELWNvZGVibG9jay1iZWdpbiBzcGFuLmNvZGUtYmxvY2stZmxhaXIsXG5ib2R5Om5vdCguY29kZS1zdHlsZXItc2hvdy1sYW5nbmFtZXMtYWx3YXlzKSAubWFya2Rvd24tc291cmNlLXZpZXcgOm5vdChwcmUuY29kZS1zdHlsZXItcHJlKSA+IC5jb2RlLXN0eWxlci1oZWFkZXItY29udGFpbmVyOm5vdCg6aGFzKCBpbWcuY29kZS1zdHlsZXItaWNvbikpICsgLkh5cGVyTUQtY29kZWJsb2NrLWJlZ2luIHNwYW4uY29kZS1ibG9jay1mbGFpcixcbmJvZHkgLm1hcmtkb3duLXNvdXJjZS12aWV3IDpub3QocHJlLmNvZGUtc3R5bGVyLXByZSkgPiAuY29kZS1zdHlsZXItaGVhZGVyLWNvbnRhaW5lcjpub3QoOmhhcyhbY2xhc3MqPSdjb2RlLXN0eWxlci1oZWFkZXItbGFuZ3VhZ2UtdGFnLSddKSkgKyAuSHlwZXJNRC1jb2RlYmxvY2stYmVnaW4gc3Bhbi5jb2RlLWJsb2NrLWZsYWlyIHsgLyo/IERlcGVuZGluZyBvbiBoZWFkZXIgdmlzaWJpbGl0eSAqL1xuXHR0b3A6IGNhbGMoMC41ICogdmFyKC0tZm9udC10ZXh0LXNpemUpICogMC44NzUgKiB2YXIoLS1saW5lLWhlaWdodC1ub3JtYWwpKSAhaW1wb3J0YW50O1xuXHQtLWNvcHktY29kZS1oZWFkZXItcmlnaHQtbWFyZ2luOiAxMnB4O1xufVxucHJlLmNvZGUtc3R5bGVyLXByZSBidXR0b24uY29weS1jb2RlLWJ1dHRvbiB7XG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcblx0dG9wOiBtYXgoY2FsYygwLjUgKiB2YXIoLS1jb250YWluZXItaGVpZ2h0KSAqIDEpLGNhbGMoMC41ICogdmFyKC0tY29udGFpbmVyLW1pbi1oZWlnaHQpICogMSkpICFpbXBvcnRhbnQ7XG5cdGJvdHRvbTogdW5zZXQgIWltcG9ydGFudDtcbn1cbnByZS5jb2RlLXN0eWxlci1wcmUgYnV0dG9uLmNvcHktY29kZS1idXR0b24sXG5wcmUuY29kZS1zdHlsZXItcHJlIGJ1dHRvbi5ydW4tY29kZS1idXR0b24sIC8qPyBFeGVjdXRlIENvZGUgUGx1Z2luIENvbXBhdGliaWxpdHkgKi9cbi5tYXJrZG93bi1zb3VyY2Utdmlldy5tb2QtY202IC5IeXBlck1ELWNvZGVibG9jay5jb2RlLXN0eWxlci1saW5lIHNwYW4uY29kZS1ibG9jay1mbGFpciB7XG5cdG1hcmdpbi1yaWdodDogY2FsYyh2YXIoLS1jb3B5LWNvZGUtaGVhZGVyLXJpZ2h0LW1hcmdpbikgLSB2YXIoLS1kZW50LWRpZmZlcmVuY2UpKTtcblx0d2lsbC1jaGFuZ2U6IG1hcmdpbi1yaWdodCwgY2xpcC1wYXRoO1xuXHRjbGlwLXBhdGg6IHZhcigtLXBvbHlnb24taW4pO1xufVxucHJlLmNvZGUtc3R5bGVyLXByZSBidXR0b24uY29weS1jb2RlLWJ1dHRvbjpub3QoOmFjdGl2ZSksXG5wcmUuY29kZS1zdHlsZXItcHJlIGJ1dHRvbi5ydW4tY29kZS1idXR0b246bm90KDphY3RpdmUpLCAvKj8gRXhlY3V0ZSBDb2RlIFBsdWdpbiBDb21wYXRpYmlsaXR5ICovXG4ubWFya2Rvd24tc291cmNlLXZpZXcubW9kLWNtNiAuSHlwZXJNRC1jb2RlYmxvY2suY29kZS1zdHlsZXItbGluZSBzcGFuLmNvZGUtYmxvY2stZmxhaXI6bm90KDphY3RpdmUpIHtcblx0YW5pbWF0aW9uOiBpbmRlbnQgdmFyKC0tZHVyYXRpb24tYnV0dG9uKTtcbn1cbnByZS5jb2RlLXN0eWxlci1wcmUgYnV0dG9uLmNvcHktY29kZS1idXR0b246aG92ZXIsXG5wcmUuY29kZS1zdHlsZXItcHJlIGJ1dHRvbi5ydW4tY29kZS1idXR0b246aG92ZXIsIC8qPyBFeGVjdXRlIENvZGUgUGx1Z2luIENvbXBhdGliaWxpdHkgKi9cbi5tYXJrZG93bi1zb3VyY2Utdmlldy5tb2QtY202IC5IeXBlck1ELWNvZGVibG9jay5jb2RlLXN0eWxlci1saW5lIHNwYW4uY29kZS1ibG9jay1mbGFpcjpob3Zlcntcblx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cdGFuaW1hdGlvbjogb3V0ZGVudCB2YXIoLS1kdXJhdGlvbi1idXR0b24pO1xuXHRtYXJnaW4tcmlnaHQ6IHZhcigtLWNvcHktY29kZS1oZWFkZXItcmlnaHQtbWFyZ2luKTtcblx0Y2xpcC1wYXRoOiB2YXIoLS1wb2x5Z29uLW91dCk7XG59XG5wcmUuY29kZS1zdHlsZXItcHJlIGJ1dHRvbi5jb3B5LWNvZGUtYnV0dG9uOmFjdGl2ZSxcbnByZS5jb2RlLXN0eWxlci1wcmUgYnV0dG9uLnJ1bi1jb2RlLWJ1dHRvbjphY3RpdmUsIC8qPyBFeGVjdXRlIENvZGUgUGx1Z2luIENvbXBhdGliaWxpdHkgKi9cbi5tYXJrZG93bi1zb3VyY2Utdmlldy5tb2QtY202IC5IeXBlck1ELWNvZGVibG9jay5jb2RlLXN0eWxlci1saW5lIHNwYW4uY29kZS1ibG9jay1mbGFpcjphY3RpdmUge1xuXHRzY2FsZTogMC45NTtcblx0dHJhbnNpdGlvbjogc2NhbGUgdmFyKC0tZHVyYXRpb24tYnV0dG9uKSBjdWJpYy1iZXppZXIoMC40LCAwLjE0LCAwLjMsIDEpO1xufVxucHJlLmNvZGUtc3R5bGVyLXByZSBidXR0b24uY29weS1jb2RlLWJ1dHRvbjo6YmVmb3JlLFxuLm1hcmtkb3duLXNvdXJjZS12aWV3Lm1vZC1jbTYgLkh5cGVyTUQtY29kZWJsb2NrLmNvZGUtc3R5bGVyLWxpbmUgc3Bhbi5jb2RlLWJsb2NrLWZsYWlyOjpiZWZvcmUge1xuXHRjb250ZW50OiBcIlxcMjAwYlwiO1xuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdHdpZHRoOiAxNHB4O1xuXHRoZWlnaHQ6IDE0cHg7XG5cdHBhZGRpbmctcmlnaHQ6IDRweDtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29kZS1zdHlsZXItYnV0dG9uLWNvbG91cik7XG5cdC13ZWJraXQtbWFzay1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAzMiAzMiclM0UlM0NwYXRoIGQ9J00yOCAxMHYxOEgxMFYxMGgxOG0wLTJIMTBhMiAyIDAgMCAwLTIgMnYxOGEyIDIgMCAwIDAgMiAyaDE4YTIgMiAwIDAgMCAyLTJWMTBhMiAyIDAgMCAwLTItMlonLyUzRSUzQ3BhdGggZD0nTTQgMThIMlY0YTIgMiAwIDAgMSAyLTJoMTR2Mkg0WicvJTNFJTNDcGF0aCBmaWxsPSdub25lJyBkPSdNMCAwaDMydjMySDB6JyBkYXRhLW5hbWU9JyZsdDtUcmFuc3BhcmVudCBSZWN0YW5nbGUmZ3Q7Jy8lM0UlM0Mvc3ZnJTNFXCIpO1xuXHQtd2Via2l0LW1hc2stcmVwZWF0OiBuby1yZXBlYXQ7XG5cdG1hc2staW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM0NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB2aWV3Qm94PScwIDAgMzIgMzInJTNFJTNDcGF0aCBkPSdNMjggMTB2MThIMTBWMTBoMThtMC0ySDEwYTIgMiAwIDAgMC0yIDJ2MThhMiAyIDAgMCAwIDIgMmgxOGEyIDIgMCAwIDAgMi0yVjEwYTIgMiAwIDAgMC0yLTJaJy8lM0UlM0NwYXRoIGQ9J000IDE4SDJWNGEyIDIgMCAwIDEgMi0yaDE0djJINFonLyUzRSUzQ3BhdGggZmlsbD0nbm9uZScgZD0nTTAgMGgzMnYzMkgweicgZGF0YS1uYW1lPScmbHQ7VHJhbnNwYXJlbnQgUmVjdGFuZ2xlJmd0OycvJTNFJTNDL3N2ZyUzRVwiKTtcblx0bWFzay1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0dmVydGljYWwtYWxpZ246IDFweDtcbn1cbi5tYXJrZG93bi1zb3VyY2Utdmlldy5tb2QtY202IC5IeXBlck1ELWNvZGVibG9jay5jb2RlLXN0eWxlci1saW5lIHNwYW4uY29kZS1ibG9jay1mbGFpciB7XG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcblx0Zm9udC1zaXplOiAwO1xuXHR0b3A6IG1pbihjYWxjKC0wLjUgKiB2YXIoLS1jb250YWluZXItaGVpZ2h0KSAqIDEuMSAtIHZhcigtLWhlYWRlci1zZXBhcmF0b3Itd2lkdGgpKSxjYWxjKC0wLjUgKiB2YXIoLS1jb250YWluZXItbWluLWhlaWdodCkgKiAxLjEgLSB2YXIoLS1oZWFkZXItc2VwYXJhdG9yLXdpZHRoKSkpICFpbXBvcnRhbnQ7XG5cdHJpZ2h0OiAwO1xuXHR2aXNpYmlsaXR5OiBoaWRkZW47XG5cdHBhZGRpbmc6IDA7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0bGluZS1oZWlnaHQ6IGluaXRpYWwgIWltcG9ydGFudDtcblx0bWFyZ2luLXRvcDogMCAhaW1wb3J0YW50O1xuXHRtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7XG59XG4ubWFya2Rvd24tc291cmNlLXZpZXcubW9kLWNtNiAuSHlwZXJNRC1jb2RlYmxvY2suY29kZS1zdHlsZXItbGluZSBzcGFuLmNvZGUtYmxvY2stZmxhaXIgPiAqIHtcblx0d2lkdGg6IDBweDtcbn1cbi5tYXJrZG93bi1zb3VyY2Utdmlldy5tb2QtY202IC5IeXBlck1ELWNvZGVibG9jay5jb2RlLXN0eWxlci1saW5lIHNwYW4uY29kZS1ibG9jay1mbGFpcjo6YmVmb3JlIHtcblx0dmlzaWJpbGl0eTogdmlzaWJsZTtcblx0b3BhY2l0eTogMTtcblx0dmVydGljYWwtYWxpZ246IC0xcHg7XG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbGVyKTtcbn1cbi5tYXJrZG93bi1zb3VyY2Utdmlldy5tb2QtY202IC5IeXBlck1ELWNvZGVibG9jay5jb2RlLXN0eWxlci1saW5lIHNwYW4uY29kZS1ibG9jay1mbGFpcjo6YWZ0ZXIge1xuXHR2aXNpYmlsaXR5OiB2aXNpYmxlO1xuXHRvcGFjaXR5OiAxO1xuXHRmb250LXNpemU6IHZhcigtLWZvbnQtdWktc21hbGxlcik7XG5cdGNvbnRlbnQ6ICdDb3B5Jztcblx0Y29sb3I6IHZhcigtLWNvZGUtc3R5bGVyLWJ1dHRvbi1jb2xvdXIpO1xufVxuLm1hcmtkb3duLXNvdXJjZS12aWV3Lm1vZC1jbTYgLkh5cGVyTUQtY29kZWJsb2NrLWJlZ2luLmNvZGUtc3R5bGVyLWxpbmUge1xuXHRvdmVyZmxvdzogdmlzaWJsZTtcbn1cbiIsICIvKiogSW5saW5lIENvZGUgKi9cbi5jb2RlLXN0eWxlciAuY20tcy1vYnNpZGlhbiBzcGFuLmNtLWlubGluZS1jb2RlLFxuLmNvZGUtc3R5bGVyIC5tYXJrZG93bi1yZW5kZXJlZCA6bm90KHByZSkgPiBjb2RlIHtcblx0Zm9udC13ZWlnaHQ6IHZhcigtLWNvZGUtc3R5bGVyLWlubGluZS1mb250LXdlaWdodCk7XG5cdGNvbG9yOiB2YXIoLS1jb2RlLXN0eWxlci1pbmxpbmUtY29sb3VyKTtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29kZS1zdHlsZXItaW5saW5lLWJhY2tncm91bmQtY29sb3VyKSAhaW1wb3J0YW50O1xuXHRib3JkZXItcmFkaXVzOiB2YXIoLS1jb2RlLXN0eWxlci1pbmxpbmUtYm9yZGVyLXJhZGl1cykgIWltcG9ydGFudDtcblx0cGFkZGluZzogdmFyKC0tY29kZS1zdHlsZXItaW5saW5lLXBhZGRpbmctdmVydGljYWwpIHZhcigtLWNvZGUtc3R5bGVyLWlubGluZS1wYWRkaW5nLWhvcml6b250YWwpICFpbXBvcnRhbnQ7XG5cdG1hcmdpbjogMHB4IHZhcigtLWNvZGUtc3R5bGVyLWlubGluZS1tYXJnaW4taG9yaXpvbnRhbCkgIWltcG9ydGFudDtcbn1cbi5jb2RlLXN0eWxlciAuY20tcy1vYnNpZGlhbiBzcGFuLmNtLWZvcm1hdHRpbmctY29kZSB7IC8qPyBTdGFuZGFsb25lIGJhY2t0aWNrcyAqL1xuXHRjb2xvcjogdmFyKC0tY29kZS1zdHlsZXItaW5saW5lLWNvbG91ci1hY3RpdmUpO1xuXHRkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDtcbn1cbi5jb2RlLXN0eWxlciAuY20tcy1vYnNpZGlhbiBzcGFuLmNvZGUtc3R5bGVyLWlubGluZS1vcGVuZXIgfiBzcGFuLmNtLWlubGluZS1jb2RlOm5vdCguY20tZm9ybWF0dGluZy1jb2RlKSB7XG5cdG1hcmdpbi1sZWZ0OiAwcHggIWltcG9ydGFudDtcblx0cGFkZGluZy1sZWZ0OiAwcHggIWltcG9ydGFudDtcblx0Ym9yZGVyLXJhZGl1czogMHB4IHZhcigtLWNvZGUtc3R5bGVyLWlubGluZS1ib3JkZXItcmFkaXVzKSB2YXIoLS1jb2RlLXN0eWxlci1pbmxpbmUtYm9yZGVyLXJhZGl1cykgMHB4ICFpbXBvcnRhbnQ7XG59XG4uY29kZS1zdHlsZXIgLmNtLXMtb2JzaWRpYW4gc3Bhbi5jb2RlLXN0eWxlci1pbmxpbmUtb3BlbmVyLFxuLmNvZGUtc3R5bGVyIC5jbS1zLW9ic2lkaWFuIHNwYW4uY20tZm9ybWF0dGluZy1jb2RlOmhhcygrIHNwYW4uY20taW5saW5lLWNvZGU6bm90KC5jbS1mb3JtYXR0aW5nLWNvZGUpKSB7Lyo/IEZpcnN0IGJhY2t0aWNrICovXG5cdGNvbG9yOiB2YXIoLS1jb2RlLXN0eWxlci1pbmxpbmUtY29sb3VyLWFjdGl2ZSk7XG5cdGJvcmRlci1yYWRpdXM6IHZhcigtLWNvZGUtc3R5bGVyLWlubGluZS1ib3JkZXItcmFkaXVzKSAwcHggMHB4IHZhcigtLWNvZGUtc3R5bGVyLWlubGluZS1ib3JkZXItcmFkaXVzKSAhaW1wb3J0YW50O1xuXHRwYWRkaW5nLWxlZnQ6IHZhcigtLWNvZGUtc3R5bGVyLWlubGluZS1wYWRkaW5nLWhvcml6b250YWwpICFpbXBvcnRhbnQ7XG5cdHBhZGRpbmctcmlnaHQ6IDBweCAhaW1wb3J0YW50O1xuXHRtYXJnaW4tbGVmdDogdmFyKC0tY29kZS1zdHlsZXItaW5saW5lLW1hcmdpbi1ob3Jpem9udGFsKSAhaW1wb3J0YW50O1xuXHRtYXJnaW4tcmlnaHQ6IDBweCAhaW1wb3J0YW50O1xufVxuLmNvZGUtc3R5bGVyIC5jbS1zLW9ic2lkaWFuIHNwYW4uY20tZm9ybWF0dGluZy1jb2RlICsgc3Bhbi5jbS1pbmxpbmUtY29kZTpub3QoLmNtLWZvcm1hdHRpbmctY29kZSkgeyAvKj8gSW5uZXIgY29kZSB3aXRoIGJhY2t0aWNrcyAqL1xuXHRjb2xvcjogdmFyKC0tY29kZS1zdHlsZXItaW5saW5lLWNvbG91ci1hY3RpdmUpO1xuXHRib3JkZXItcmFkaXVzOiAwcHggIWltcG9ydGFudDtcblx0cGFkZGluZy1sZWZ0OiAwcHggIWltcG9ydGFudDtcblx0cGFkZGluZy1yaWdodDogMHB4ICFpbXBvcnRhbnQ7XG5cdG1hcmdpbjogMHB4IDBweCAhaW1wb3J0YW50O1xufVxuLmNvZGUtc3R5bGVyIC5jbS1zLW9ic2lkaWFuIHNwYW4uY20taW5saW5lLWNvZGU6bm90KC5jbS1mb3JtYXR0aW5nLWNvZGUpICsgc3Bhbi5jbS1mb3JtYXR0aW5nLWNvZGUgey8qPyBMYXN0IGJhY2t0aWNrICovXG5cdGNvbG9yOiB2YXIoLS1jb2RlLXN0eWxlci1pbmxpbmUtY29sb3VyLWFjdGl2ZSk7XG5cdGJvcmRlci1yYWRpdXM6IDBweCB2YXIoLS1jb2RlLXN0eWxlci1pbmxpbmUtYm9yZGVyLXJhZGl1cykgdmFyKC0tY29kZS1zdHlsZXItaW5saW5lLWJvcmRlci1yYWRpdXMpIDBweCAhaW1wb3J0YW50O1xuXHRwYWRkaW5nLWxlZnQ6IDBweCAhaW1wb3J0YW50O1xuXHRwYWRkaW5nLXJpZ2h0OiB2YXIoLS1jb2RlLXN0eWxlci1pbmxpbmUtcGFkZGluZy1ob3Jpem9udGFsKSAhaW1wb3J0YW50O1xuXHRtYXJnaW4tbGVmdDogMHB4ICFpbXBvcnRhbnQ7XG5cdG1hcmdpbi1yaWdodDogdmFyKC0tY29kZS1zdHlsZXItaW5saW5lLW1hcmdpbi1ob3Jpem9udGFsKSAhaW1wb3J0YW50O1xufVxuYm9keS5jb2RlLXN0eWxlciBzcGFuLmNvZGUtc3R5bGVyLWlubGluZS1vcGVuZXIgPiBzcGFuID4gaW1nLmNvZGUtc3R5bGVyLWlubGluZS1pY29uOm5vdChbY2xhc3MqPVwiZW1vamlcIl0pIHtcblx0aGVpZ2h0OiBjYWxjKHZhcigtLWNvZGUtc2l6ZSkgKiAxLjIpO1xuXHRtYXJnaW4tYm90dG9tOiAycHggIWltcG9ydGFudDtcblx0dmVydGljYWwtYWxpZ246IG1pZGRsZTtcblx0ZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQ7XG59XG4uY29kZS1zdHlsZXIgc3Bhbi5jb2RlLXN0eWxlci1pbmxpbmUtb3BlbmVyIC5jb2RlLXN0eWxlci1pbmxpbmUtdGl0bGUge1xuXHRmb250LXdlaWdodDogdmFyKC0tY29kZS1zdHlsZXItaW5saW5lLXRpdGxlLWZvbnQtd2VpZ2h0KTtcblx0Y29sb3I6IHZhcigtLWNvZGUtc3R5bGVyLWlubGluZS10aXRsZS1jb2xvdXIpO1xufVxuLmNvZGUtc3R5bGVyIHNwYW4uY29kZS1zdHlsZXItaW5saW5lLW9wZW5lciAuY29kZS1zdHlsZXItaW5saW5lLXRpdGxlOjphZnRlciB7XG5cdGNvbnRlbnQ6ICdcXEZGNUMnO1xuXHRjb2xvcjogdmFyKC0tY29kZS1zdHlsZXItaW5saW5lLXRpdGxlLWNvbG9yKTtcbn1cbi5jb2RlLXN0eWxlciBzcGFuLmNvZGUtc3R5bGVyLWlubGluZS1vcGVuZXIgc3BhbjpoYXMoID4gaW1nLmNvZGUtc3R5bGVyLWlubGluZS1pY29uKSB7XG5cdHBhZGRpbmctcmlnaHQ6IDhweDtcbn1cbi5jb2RlLXN0eWxlciAuY20tcy1vYnNpZGlhbiBzcGFuLmNtLWlubGluZS1jb2RlIC5jb2RlLXN0eWxlci1pbmxpbmUtcGFyYW1ldGVycyB7XG5cdGNvbG9yOiB2YXIoLS1jb2RlLWNvbW1lbnQpO1xufVxuIiwgImRpdi5wcmludCB7XG5cdC0tbGluZS13cmFwcGluZzogcHJlLXdyYXAgIWltcG9ydGFudDtcbn1cbi5jb2RlLXN0eWxlciBkaXYucHJpbnQgcHJlLmNvZGUtc3R5bGVyLXByZSBjb2RlIHtcblx0bWF4LWhlaWdodDogdW5zZXQ7XG59XG4uY29kZS1zdHlsZXIgZGl2LnByaW50IHByZS5jb2RlLXN0eWxlci1wcmUuY29kZS1zdHlsZXItY29sbGFwc2VkIGNvZGUge1xuXHRkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG4iLCAiLyoqIFBpY2tyIDEuOC4yIE1JVCB8IGh0dHBzOi8vZ2l0aHViLmNvbS9TaW1vbndlcC9waWNrciAqL1xuLnBpY2tyIHtwb3NpdGlvbjogcmVsYXRpdmU7b3ZlcmZsb3c6IHZpc2libGU7dHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApfSAgLnBpY2tyICoge2JveC1zaXppbmc6IGJvcmRlci1ib3g7b3V0bGluZTogbm9uZTtib3JkZXI6IG5vbmU7YXBwZWFyYW5jZTogbm9uZTstd2Via2l0LWFwcGVhcmFuY2U6IG5vbmV9ICAucGlja3IgLnBjci1idXR0b24ge3Bvc2l0aW9uOiByZWxhdGl2ZTtoZWlnaHQ6IDJlbTt3aWR0aDogMmVtO3BhZGRpbmc6IDAuNWVtO2N1cnNvcjogcG9pbnRlcjtmb250LWZhbWlseTogLWFwcGxlLXN5c3RlbSwgQmxpbmtNYWNTeXN0ZW1Gb250LCBcIlNlZ29lIFVJXCIsIFwiUm9ib3RvXCIsIFwiSGVsdmV0aWNhIE5ldWVcIiwgQXJpYWwsIHNhbnMtc2VyaWY7Ym9yZGVyLXJhZGl1czogLjE1ZW07YmFja2dyb3VuZDogdXJsKCdkYXRhOmltYWdlL3N2Zyt4bWw7dXRmOCwgPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmlld0JveD1cIjAgMCA1MCA1MFwiIHN0cm9rZT1cIiUyMzQyNDQ1QVwiIHN0cm9rZS13aWR0aD1cIjVweFwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIj48cGF0aCBkPVwiTTQ1LDQ1TDUsNVwiPjwvcGF0aD48cGF0aCBkPVwiTTQ1LDVMNSw0NVwiPjwvcGF0aD48L3N2Zz4nKSBuby1yZXBlYXQgY2VudGVyO2JhY2tncm91bmQtc2l6ZTogMDt0cmFuc2l0aW9uOiBhbGwgMC4zc30gIC5waWNrciAucGNyLWJ1dHRvbjo6YmVmb3JlIHtwb3NpdGlvbjogYWJzb2x1dGU7Y29udGVudDogJyc7dG9wOiAwO2xlZnQ6IDA7d2lkdGg6IDEwMCU7aGVpZ2h0OiAxMDAlO2JhY2tncm91bmQ6IHVybCgnZGF0YTppbWFnZS9zdmcreG1sO3V0ZjgsIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHZpZXdCb3g9XCIwIDAgMiAyXCI+PHBhdGggZmlsbD1cIndoaXRlXCIgZD1cIk0xLDBIMlYxSDFWMFpNMCwxSDFWMkgwVjFaXCIvPjxwYXRoIGZpbGw9XCJncmF5XCIgZD1cIk0wLDBIMVYxSDBWMFpNMSwxSDJWMkgxVjFaXCIvPjwvc3ZnPicpO2JhY2tncm91bmQtc2l6ZTogLjVlbTtib3JkZXItcmFkaXVzOiAuMTVlbTt6LWluZGV4OiAtMX0gIC5waWNrciAucGNyLWJ1dHRvbjo6YmVmb3JlIHt6LWluZGV4OiBpbml0aWFsfSAgLnBpY2tyIC5wY3ItYnV0dG9uOjphZnRlciB7cG9zaXRpb246IGFic29sdXRlO2NvbnRlbnQ6ICcnO3RvcDogMDtsZWZ0OiAwO2hlaWdodDogMTAwJTt3aWR0aDogMTAwJTt0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuM3M7YmFja2dyb3VuZDogdmFyKC0tcGNyLWNvbG9yKTtib3JkZXItcmFkaXVzOiAuMTVlbX0gIC5waWNrciAucGNyLWJ1dHRvbi5jbGVhciB7YmFja2dyb3VuZC1zaXplOiA3MCV9ICAucGlja3IgLnBjci1idXR0b24uY2xlYXI6OmJlZm9yZSB7b3BhY2l0eTogMH0gIC5waWNrciAucGNyLWJ1dHRvbi5jbGVhcjpmb2N1cyB7Ym94LXNoYWRvdzogMCAwIDAgMXB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44NSksIDAgMCAwIDNweCB2YXIoLS1wY3ItY29sb3IpfSAgLnBpY2tyIC5wY3ItYnV0dG9uLmRpc2FibGVkIHtjdXJzb3I6IG5vdC1hbGxvd2VkfSAgLnBpY2tyICosIC5wY3ItYXBwICoge2JveC1zaXppbmc6IGJvcmRlci1ib3g7b3V0bGluZTogbm9uZTtib3JkZXI6IG5vbmU7YXBwZWFyYW5jZTogbm9uZTstd2Via2l0LWFwcGVhcmFuY2U6IG5vbmV9ICAucGlja3IgaW5wdXQ6Zm9jdXMsIC5waWNrciBpbnB1dC5wY3ItYWN0aXZlLCAucGlja3IgYnV0dG9uOmZvY3VzLCAucGlja3IgYnV0dG9uLnBjci1hY3RpdmUsIC5wY3ItYXBwIGlucHV0OmZvY3VzLCAucGNyLWFwcCBpbnB1dC5wY3ItYWN0aXZlLCAucGNyLWFwcCBidXR0b246Zm9jdXMsIC5wY3ItYXBwIGJ1dHRvbi5wY3ItYWN0aXZlIHtib3gtc2hhZG93OiAwIDAgMCAxcHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjg1KSwgMCAwIDAgM3B4IHZhcigtLXBjci1jb2xvcil9ICAucGlja3IgLnBjci1wYWxldHRlLCAucGlja3IgLnBjci1zbGlkZXIsIC5wY3ItYXBwIC5wY3ItcGFsZXR0ZSwgLnBjci1hcHAgLnBjci1zbGlkZXIge3RyYW5zaXRpb246IGJveC1zaGFkb3cgMC4zc30gIC5waWNrciAucGNyLXBhbGV0dGU6Zm9jdXMsIC5waWNrciAucGNyLXNsaWRlcjpmb2N1cywgLnBjci1hcHAgLnBjci1wYWxldHRlOmZvY3VzLCAucGNyLWFwcCAucGNyLXNsaWRlcjpmb2N1cyB7Ym94LXNoYWRvdzogMCAwIDAgMXB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44NSksIDAgMCAwIDNweCByZ2JhKDAsIDAsIDAsIDAuMjUpfSAgLnBjci1hcHAge3Bvc2l0aW9uOiBmaXhlZDtkaXNwbGF5OiBmbGV4O2ZsZXgtZGlyZWN0aW9uOiBjb2x1bW47ei1pbmRleDogMTAwMDA7Ym9yZGVyLXJhZGl1czogMC4xZW07YmFja2dyb3VuZDogI2ZmZjtvcGFjaXR5OiAwO3Zpc2liaWxpdHk6IGhpZGRlbjt0cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3MsIHZpc2liaWxpdHkgMHMgMC4zcztmb250LWZhbWlseTogLWFwcGxlLXN5c3RlbSwgQmxpbmtNYWNTeXN0ZW1Gb250LCBcIlNlZ29lIFVJXCIsIFwiUm9ib3RvXCIsIFwiSGVsdmV0aWNhIE5ldWVcIiwgQXJpYWwsIHNhbnMtc2VyaWY7Ym94LXNoYWRvdzogMCAwLjE1ZW0gMS41ZW0gMCByZ2JhKDAsIDAsIDAsIDAuMSksIDAgMCAxZW0gMCByZ2JhKDAsIDAsIDAsIDAuMDMpO2xlZnQ6IDA7dG9wOiAwfSAgLnBjci1hcHAudmlzaWJsZSB7dHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzO3Zpc2liaWxpdHk6IHZpc2libGU7b3BhY2l0eTogMX0gIC5wY3ItYXBwIC5wY3Itc3dhdGNoZXMge2Rpc3BsYXk6IGZsZXg7ZmxleC13cmFwOiB3cmFwO21hcmdpbi10b3A6IDAuNzVlbX0gIC5wY3ItYXBwIC5wY3Itc3dhdGNoZXMucGNyLWxhc3Qge21hcmdpbjogMH0gIEBzdXBwb3J0cyAoZGlzcGxheTogZ3JpZCkgeyAgLnBjci1hcHAgLnBjci1zd2F0Y2hlcyB7ZGlzcGxheTogZ3JpZDthbGlnbi1pdGVtczogY2VudGVyO2dyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KGF1dG8tZml0LCAxLjc1ZW0pfSAgfSAgLnBjci1hcHAgLnBjci1zd2F0Y2hlcyA+IGJ1dHRvbiB7Zm9udC1zaXplOiAxZW07cG9zaXRpb246IHJlbGF0aXZlO3dpZHRoOiBjYWxjKDEuNzVlbSAtIDEwcHgpO2hlaWdodDogY2FsYygxLjc1ZW0gLSAxMHB4KTtib3JkZXItcmFkaXVzOiAwLjE1ZW07Y3Vyc29yOiBwb2ludGVyO21hcmdpbjogMi41cHg7ZmxleC1zaHJpbms6IDA7anVzdGlmeS1zZWxmOiBjZW50ZXI7dHJhbnNpdGlvbjogYWxsIDAuMTVzO292ZXJmbG93OiBoaWRkZW47YmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7ei1pbmRleDogMX0gIC5wY3ItYXBwIC5wY3Itc3dhdGNoZXMgPiBidXR0b246OmJlZm9yZSB7cG9zaXRpb246IGFic29sdXRlO2NvbnRlbnQ6ICcnO3RvcDogMDtsZWZ0OiAwO3dpZHRoOiAxMDAlO2hlaWdodDogMTAwJTtiYWNrZ3JvdW5kOiB1cmwoJ2RhdGE6aW1hZ2Uvc3ZnK3htbDt1dGY4LCA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2aWV3Qm94PVwiMCAwIDIgMlwiPjxwYXRoIGZpbGw9XCJ3aGl0ZVwiIGQ9XCJNMSwwSDJWMUgxVjBaTTAsMUgxVjJIMFYxWlwiLz48cGF0aCBmaWxsPVwiZ3JheVwiIGQ9XCJNMCwwSDFWMUgwVjBaTTEsMUgyVjJIMVYxWlwiLz48L3N2Zz4nKTtiYWNrZ3JvdW5kLXNpemU6IDZweDtib3JkZXItcmFkaXVzOiAuMTVlbTt6LWluZGV4OiAtMX0gIC5wY3ItYXBwIC5wY3Itc3dhdGNoZXMgPiBidXR0b246OmFmdGVyIHtjb250ZW50OiAnJztwb3NpdGlvbjogYWJzb2x1dGU7dG9wOiAwO2xlZnQ6IDA7d2lkdGg6IDEwMCU7aGVpZ2h0OiAxMDAlO2JhY2tncm91bmQ6IHZhcigtLXBjci1jb2xvcik7Ym9yZGVyOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjA1KTtib3JkZXItcmFkaXVzOiAwLjE1ZW07Ym94LXNpemluZzogYm9yZGVyLWJveH0gIC5wY3ItYXBwIC5wY3Itc3dhdGNoZXMgPiBidXR0b246aG92ZXIge2ZpbHRlcjogYnJpZ2h0bmVzcygxLjA1KX0gIC5wY3ItYXBwIC5wY3Itc3dhdGNoZXMgPiBidXR0b246bm90KC5wY3ItYWN0aXZlKSB7Ym94LXNoYWRvdzogbm9uZX0gIC5wY3ItYXBwIC5wY3ItaW50ZXJhY3Rpb24ge2Rpc3BsYXk6IGZsZXg7ZmxleC13cmFwOiB3cmFwO2FsaWduLWl0ZW1zOiBjZW50ZXI7bWFyZ2luOiAwIC0wLjJlbSAwIC0wLjJlbX0gIC5wY3ItYXBwIC5wY3ItaW50ZXJhY3Rpb24gPiAqIHttYXJnaW46IDAgMC4yZW19ICAucGNyLWFwcCAucGNyLWludGVyYWN0aW9uIGlucHV0IHtsZXR0ZXItc3BhY2luZzogMC4wN2VtO2ZvbnQtc2l6ZTogMC43NWVtO3RleHQtYWxpZ246IGNlbnRlcjtjdXJzb3I6IHBvaW50ZXI7Y29sb3I6ICM3NTc5N2U7YmFja2dyb3VuZDogI2YxZjNmNDtib3JkZXItcmFkaXVzOiAuMTVlbTt0cmFuc2l0aW9uOiBhbGwgMC4xNXM7cGFkZGluZzogMC40NWVtIDAuNWVtO21hcmdpbi10b3A6IDAuNzVlbX0gIC5wY3ItYXBwIC5wY3ItaW50ZXJhY3Rpb24gaW5wdXQ6aG92ZXIge2ZpbHRlcjogYnJpZ2h0bmVzcygwLjk3NSl9ICAucGNyLWFwcCAucGNyLWludGVyYWN0aW9uIGlucHV0OmZvY3VzIHtib3gtc2hhZG93OiAwIDAgMCAxcHggcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjg1KSwgMCAwIDAgM3B4IHJnYmEoNjYsIDEzMywgMjQ0LCAwLjc1KX0gIC5wY3ItYXBwIC5wY3ItaW50ZXJhY3Rpb24gLnBjci1yZXN1bHQge2NvbG9yOiAjNzU3OTdlO3RleHQtYWxpZ246IGxlZnQ7ZmxleDogMSAxIDhlbTttaW4td2lkdGg6IDhlbTt0cmFuc2l0aW9uOiBhbGwgMC4ycztib3JkZXItcmFkaXVzOiAuMTVlbTtiYWNrZ3JvdW5kOiAjZjFmM2Y0O2N1cnNvcjogdGV4dH0gIC5wY3ItYXBwIC5wY3ItaW50ZXJhY3Rpb24gLnBjci1yZXN1bHQ6Oi1tb3otc2VsZWN0aW9uIHtiYWNrZ3JvdW5kOiAjNDI4NWY0O2NvbG9yOiAjZmZmfSAgLnBjci1hcHAgLnBjci1pbnRlcmFjdGlvbiAucGNyLXJlc3VsdDo6c2VsZWN0aW9uIHtiYWNrZ3JvdW5kOiAjNDI4NWY0O2NvbG9yOiAjZmZmfSAgLnBjci1hcHAgLnBjci1pbnRlcmFjdGlvbiAucGNyLXR5cGUuYWN0aXZlIHtjb2xvcjogI2ZmZjtiYWNrZ3JvdW5kOiAjNDI4NWY0fSAgLnBjci1hcHAgLnBjci1pbnRlcmFjdGlvbiAucGNyLXNhdmUsIC5wY3ItYXBwIC5wY3ItaW50ZXJhY3Rpb24gLnBjci1jYW5jZWwsIC5wY3ItYXBwIC5wY3ItaW50ZXJhY3Rpb24gLnBjci1jbGVhciB7Y29sb3I6ICNmZmY7d2lkdGg6IGF1dG99ICAucGNyLWFwcCAucGNyLWludGVyYWN0aW9uIC5wY3Itc2F2ZSwgLnBjci1hcHAgLnBjci1pbnRlcmFjdGlvbiAucGNyLWNhbmNlbCwgLnBjci1hcHAgLnBjci1pbnRlcmFjdGlvbiAucGNyLWNsZWFyIHtjb2xvcjogI2ZmZn0gIC5wY3ItYXBwIC5wY3ItaW50ZXJhY3Rpb24gLnBjci1zYXZlOmhvdmVyLCAucGNyLWFwcCAucGNyLWludGVyYWN0aW9uIC5wY3ItY2FuY2VsOmhvdmVyLCAucGNyLWFwcCAucGNyLWludGVyYWN0aW9uIC5wY3ItY2xlYXI6aG92ZXIge2ZpbHRlcjogYnJpZ2h0bmVzcygwLjkyNSl9ICAucGNyLWFwcCAucGNyLWludGVyYWN0aW9uIC5wY3Itc2F2ZSB7YmFja2dyb3VuZDogIzQyODVmNH0gIC5wY3ItYXBwIC5wY3ItaW50ZXJhY3Rpb24gLnBjci1jbGVhciwgLnBjci1hcHAgLnBjci1pbnRlcmFjdGlvbiAucGNyLWNhbmNlbCB7YmFja2dyb3VuZDogI2Y0NDI1MH0gIC5wY3ItYXBwIC5wY3ItaW50ZXJhY3Rpb24gLnBjci1jbGVhcjpmb2N1cywgLnBjci1hcHAgLnBjci1pbnRlcmFjdGlvbiAucGNyLWNhbmNlbDpmb2N1cyB7Ym94LXNoYWRvdzogMCAwIDAgMXB4IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44NSksIDAgMCAwIDNweCByZ2JhKDI0NCwgNjYsIDgwLCAwLjc1KX0gIC5wY3ItYXBwIC5wY3Itc2VsZWN0aW9uIC5wY3ItcGlja2VyIHtwb3NpdGlvbjogYWJzb2x1dGU7aGVpZ2h0OiAxOHB4O3dpZHRoOiAxOHB4O2JvcmRlcjogMnB4IHNvbGlkICNmZmY7Ym9yZGVyLXJhZGl1czogMTAwJTstd2Via2l0LXVzZXItc2VsZWN0OiBub25lOy1tb3otdXNlci1zZWxlY3Q6IG5vbmU7LW1zLXVzZXItc2VsZWN0OiBub25lO3VzZXItc2VsZWN0OiBub25lfSAgLnBjci1hcHAgLnBjci1zZWxlY3Rpb24gLnBjci1jb2xvci1wYWxldHRlLCAucGNyLWFwcCAucGNyLXNlbGVjdGlvbiAucGNyLWNvbG9yLWNob29zZXIsIC5wY3ItYXBwIC5wY3Itc2VsZWN0aW9uIC5wY3ItY29sb3Itb3BhY2l0eSB7cG9zaXRpb246IHJlbGF0aXZlOy13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7LW1vei11c2VyLXNlbGVjdDogbm9uZTstbXMtdXNlci1zZWxlY3Q6IG5vbmU7dXNlci1zZWxlY3Q6IG5vbmU7ZGlzcGxheTogZmxleDtmbGV4LWRpcmVjdGlvbjogY29sdW1uO2N1cnNvcjogZ3JhYjtjdXJzb3I6IC13ZWJraXQtZ3JhYn0gIC5wY3ItYXBwIC5wY3Itc2VsZWN0aW9uIC5wY3ItY29sb3ItcGFsZXR0ZTphY3RpdmUsIC5wY3ItYXBwIC5wY3Itc2VsZWN0aW9uIC5wY3ItY29sb3ItY2hvb3NlcjphY3RpdmUsIC5wY3ItYXBwIC5wY3Itc2VsZWN0aW9uIC5wY3ItY29sb3Itb3BhY2l0eTphY3RpdmUge2N1cnNvcjogZ3JhYmJpbmc7Y3Vyc29yOiAtd2Via2l0LWdyYWJiaW5nfSAgLnBjci1hcHBbZGF0YS10aGVtZT0nbmFubyddIHt3aWR0aDogMTQuMjVlbTttYXgtd2lkdGg6IDk1dnd9ICAucGNyLWFwcFtkYXRhLXRoZW1lPSduYW5vJ10gLnBjci1zd2F0Y2hlcyB7bWFyZ2luLXRvcDogLjZlbTtwYWRkaW5nOiAwIC42ZW19ICAucGNyLWFwcFtkYXRhLXRoZW1lPSduYW5vJ10gLnBjci1pbnRlcmFjdGlvbiB7cGFkZGluZzogMCAuNmVtIC42ZW0gLjZlbX0gIC5wY3ItYXBwW2RhdGEtdGhlbWU9J25hbm8nXSAucGNyLXNlbGVjdGlvbiB7ZGlzcGxheTogZ3JpZDtncmlkLWdhcDogLjZlbTtncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciA0ZnI7Z3JpZC10ZW1wbGF0ZS1yb3dzOiA1ZnIgYXV0byBhdXRvO2FsaWduLWl0ZW1zOiBjZW50ZXI7aGVpZ2h0OiAxMC41ZW07d2lkdGg6IDEwMCU7YWxpZ24tc2VsZjogZmxleC1zdGFydH0gIC5wY3ItYXBwW2RhdGEtdGhlbWU9J25hbm8nXSAucGNyLXNlbGVjdGlvbiAucGNyLWNvbG9yLXByZXZpZXcge2dyaWQtYXJlYTogMiAvIDEgLyA0IC8gMTtoZWlnaHQ6IDEwMCU7d2lkdGg6IDEwMCU7ZGlzcGxheTogZmxleDtmbGV4LWRpcmVjdGlvbjogcm93O2p1c3RpZnktY29udGVudDogY2VudGVyO21hcmdpbi1sZWZ0OiAuNmVtfSAgLnBjci1hcHBbZGF0YS10aGVtZT0nbmFubyddIC5wY3Itc2VsZWN0aW9uIC5wY3ItY29sb3ItcHJldmlldyAucGNyLWxhc3QtY29sb3Ige2Rpc3BsYXk6IG5vbmV9ICAucGNyLWFwcFtkYXRhLXRoZW1lPSduYW5vJ10gLnBjci1zZWxlY3Rpb24gLnBjci1jb2xvci1wcmV2aWV3IC5wY3ItY3VycmVudC1jb2xvciB7cG9zaXRpb246IHJlbGF0aXZlO2JhY2tncm91bmQ6IHZhcigtLXBjci1jb2xvcik7d2lkdGg6IDJlbTtoZWlnaHQ6IDJlbTtib3JkZXItcmFkaXVzOiA1MGVtO292ZXJmbG93OiBoaWRkZW59ICAucGNyLWFwcFtkYXRhLXRoZW1lPSduYW5vJ10gLnBjci1zZWxlY3Rpb24gLnBjci1jb2xvci1wcmV2aWV3IC5wY3ItY3VycmVudC1jb2xvcjo6YmVmb3JlIHtwb3NpdGlvbjogYWJzb2x1dGU7Y29udGVudDogJyc7dG9wOiAwO2xlZnQ6IDA7d2lkdGg6IDEwMCU7aGVpZ2h0OiAxMDAlO2JhY2tncm91bmQ6IHVybCgnZGF0YTppbWFnZS9zdmcreG1sO3V0ZjgsIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHZpZXdCb3g9XCIwIDAgMiAyXCI+PHBhdGggZmlsbD1cIndoaXRlXCIgZD1cIk0xLDBIMlYxSDFWMFpNMCwxSDFWMkgwVjFaXCIvPjxwYXRoIGZpbGw9XCJncmF5XCIgZD1cIk0wLDBIMVYxSDBWMFpNMSwxSDJWMkgxVjFaXCIvPjwvc3ZnPicpO2JhY2tncm91bmQtc2l6ZTogLjVlbTtib3JkZXItcmFkaXVzOiAuMTVlbTt6LWluZGV4OiAtMX0gIC5wY3ItYXBwW2RhdGEtdGhlbWU9J25hbm8nXSAucGNyLXNlbGVjdGlvbiAucGNyLWNvbG9yLXBhbGV0dGUge2dyaWQtYXJlYTogMSAvIDEgLyAyIC8gMzt3aWR0aDogMTAwJTtoZWlnaHQ6IDEwMCU7ei1pbmRleDogMX0gIC5wY3ItYXBwW2RhdGEtdGhlbWU9J25hbm8nXSAucGNyLXNlbGVjdGlvbiAucGNyLWNvbG9yLXBhbGV0dGUgLnBjci1wYWxldHRlIHtib3JkZXItcmFkaXVzOiAuMTVlbTt3aWR0aDogMTAwJTtoZWlnaHQ6IDEwMCV9ICAucGNyLWFwcFtkYXRhLXRoZW1lPSduYW5vJ10gLnBjci1zZWxlY3Rpb24gLnBjci1jb2xvci1wYWxldHRlIC5wY3ItcGFsZXR0ZTo6YmVmb3JlIHtwb3NpdGlvbjogYWJzb2x1dGU7Y29udGVudDogJyc7dG9wOiAwO2xlZnQ6IDA7d2lkdGg6IDEwMCU7aGVpZ2h0OiAxMDAlO2JhY2tncm91bmQ6IHVybCgnZGF0YTppbWFnZS9zdmcreG1sO3V0ZjgsIDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHZpZXdCb3g9XCIwIDAgMiAyXCI+PHBhdGggZmlsbD1cIndoaXRlXCIgZD1cIk0xLDBIMlYxSDFWMFpNMCwxSDFWMkgwVjFaXCIvPjxwYXRoIGZpbGw9XCJncmF5XCIgZD1cIk0wLDBIMVYxSDBWMFpNMSwxSDJWMkgxVjFaXCIvPjwvc3ZnPicpO2JhY2tncm91bmQtc2l6ZTogLjVlbTtib3JkZXItcmFkaXVzOiAuMTVlbTt6LWluZGV4OiAtMX0gIC5wY3ItYXBwW2RhdGEtdGhlbWU9J25hbm8nXSAucGNyLXNlbGVjdGlvbiAucGNyLWNvbG9yLWNob29zZXIge2dyaWQtYXJlYTogMiAvIDIgLyAyIC8gMn0gIC5wY3ItYXBwW2RhdGEtdGhlbWU9J25hbm8nXSAucGNyLXNlbGVjdGlvbiAucGNyLWNvbG9yLW9wYWNpdHkge2dyaWQtYXJlYTogMyAvIDIgLyAzIC8gMn0gIC5wY3ItYXBwW2RhdGEtdGhlbWU9J25hbm8nXSAucGNyLXNlbGVjdGlvbiAucGNyLWNvbG9yLWNob29zZXIsIC5wY3ItYXBwW2RhdGEtdGhlbWU9J25hbm8nXSAucGNyLXNlbGVjdGlvbiAucGNyLWNvbG9yLW9wYWNpdHkge2hlaWdodDogMC41ZW07bWFyZ2luOiAwIC42ZW19ICAucGNyLWFwcFtkYXRhLXRoZW1lPSduYW5vJ10gLnBjci1zZWxlY3Rpb24gLnBjci1jb2xvci1jaG9vc2VyIC5wY3ItcGlja2VyLCAucGNyLWFwcFtkYXRhLXRoZW1lPSduYW5vJ10gLnBjci1zZWxlY3Rpb24gLnBjci1jb2xvci1vcGFjaXR5IC5wY3ItcGlja2VyIHt0b3A6IDUwJTt0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSl9ICAucGNyLWFwcFtkYXRhLXRoZW1lPSduYW5vJ10gLnBjci1zZWxlY3Rpb24gLnBjci1jb2xvci1jaG9vc2VyIC5wY3Itc2xpZGVyLCAucGNyLWFwcFtkYXRhLXRoZW1lPSduYW5vJ10gLnBjci1zZWxlY3Rpb24gLnBjci1jb2xvci1vcGFjaXR5IC5wY3Itc2xpZGVyIHtmbGV4LWdyb3c6IDE7Ym9yZGVyLXJhZGl1czogNTBlbX0gIC5wY3ItYXBwW2RhdGEtdGhlbWU9J25hbm8nXSAucGNyLXNlbGVjdGlvbiAucGNyLWNvbG9yLWNob29zZXIgLnBjci1zbGlkZXIge2JhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgcmVkLCAjZmYwLCBsaW1lLCBjeWFuLCBibHVlLCAjZjBmLCByZWQpfSAgLnBjci1hcHBbZGF0YS10aGVtZT0nbmFubyddIC5wY3Itc2VsZWN0aW9uIC5wY3ItY29sb3Itb3BhY2l0eSAucGNyLXNsaWRlciB7YmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCB0cmFuc3BhcmVudCwgYmxhY2spLCB1cmwoJ2RhdGE6aW1hZ2Uvc3ZnK3htbDt1dGY4LCA8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2aWV3Qm94PVwiMCAwIDIgMlwiPjxwYXRoIGZpbGw9XCJ3aGl0ZVwiIGQ9XCJNMSwwSDJWMUgxVjBaTTAsMUgxVjJIMFYxWlwiLz48cGF0aCBmaWxsPVwiZ3JheVwiIGQ9XCJNMCwwSDFWMUgwVjBaTTEsMUgyVjJIMVYxWlwiLz48L3N2Zz4nKTtiYWNrZ3JvdW5kLXNpemU6IDEwMCUsIDAuMjVlbX1cbi5wY3ItYXBwIC5wY3Itc3dhdGNoZXMgPiBidXR0b24ge1xuXHRwYWRkaW5nOiAwO1xufVxuIiwgIi8qKiBFeGVjdXRlIENvZGUgUGx1Z2luICovXG5wcmUuY29kZS1zdHlsZXItcHJlIGNvZGUgfiBjb2RlLmxhbmd1YWdlLW91dHB1dCB7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHRtYXJnaW4tYm90dG9tOiAwO1xuXHRwYWRkaW5nLWJvdHRvbTogY2FsYygyLjUgKiB2YXIoLS1jb2RlLXBhZGRpbmcpKSAhaW1wb3J0YW50O1xuXHRwYWRkaW5nLWxlZnQ6IGNhbGModmFyKC0tbGluZS1udW1iZXItZ3V0dGVyLXBhZGRpbmcpKSAhaW1wb3J0YW50O1xuXHRib3JkZXItdG9wOiB2YXIoLS1oZWFkZXItc2VwYXJhdG9yLXdpZHRoKSBzb2xpZCB2YXIoLS1jb2RlLXN0eWxlci1oZWFkZXItc2VwYXJhdG9yLWNvbG91cik7XG59XG5wcmUuY29kZS1zdHlsZXItcHJlLmNvZGUtc3R5bGVyLWNvbGxhcHNlZCBjb2RlIH4gY29kZS5sYW5ndWFnZS1vdXRwdXQge1xuXHRib3JkZXItdG9wLWNvbG9yOiB0cmFuc3BhcmVudDtcblx0Ym9yZGVyLXRvcC13aWR0aDogMDtcbn1cbnByZS5jb2RlLXN0eWxlci1wcmU6aG92ZXIgY29kZSB+IGNvZGUubGFuZ3VhZ2Utb3V0cHV0IHtcblx0bWFyZ2luLWJvdHRvbTogMDtcbn1cbnByZS5jb2RlLXN0eWxlci1wcmUgY29kZSB+IGNvZGUubGFuZ3VhZ2Utb3V0cHV0IGlucHV0LmludGVyYWN0aXZlLXN0ZGluIHtcbiAgICBjb2xvcjogdmFyKC0tdGV4dC1ub3JtYWwpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvZGUtc3R5bGVyLWNvZGVibG9jay1iYWNrZ3JvdW5kLWNvbG91cik7XG4gICAgcGFkZGluZzogMnB4IDhweDtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWNvZGUtY29tbWVudCk7XG5cdGJvcmRlci1zdHlsZTogc29saWQ7XG5cdGJvcmRlci1yYWRpdXM6IDVweDtcblx0Ym9yZGVyLXdpZHRoOiAxcHg7XG59XG5wcmUuY29kZS1zdHlsZXItcHJlIGNvZGUgfiBjb2RlLmxhbmd1YWdlLW91dHB1dCBociB7XG5cdGRpc3BsYXk6IG5vbmU7XG59XG5wcmUuY29kZS1zdHlsZXItcHJlIGJ1dHRvbi5ydW4tY29kZS1idXR0b24ge1xuXHQtLWNvcHktY29kZS1oZWFkZXItcmlnaHQtbWFyZ2luOiAxMnB4O1xuXHQtLWRlbnQtZGlmZmVyZW5jZTogMjRweDtcblx0aGVpZ2h0OiAxNHB4O1xuXHRtYXJnaW4tYm90dG9tOiA2cHggIWltcG9ydGFudDtcbn1cbnByZS5jb2RlLXN0eWxlci1wcmUuY29kZS1zdHlsZXItY29sbGFwc2VkIGJ1dHRvbi5ydW4tY29kZS1idXR0b24ge1xuXHR0b3A6IDUwMHB4O1xufVxucHJlLmNvZGUtc3R5bGVyLXByZSBidXR0b24ucnVuLWNvZGUtYnV0dG9uOjpiZWZvcmUge1xuXHRjb250ZW50OiBcIlxcMjAwYlwiO1xuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdHdpZHRoOiAxNHB4O1xuXHRoZWlnaHQ6IDE0cHg7XG5cdHBhZGRpbmctcmlnaHQ6IDRweDtcblx0YmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29kZS1zdHlsZXItYnV0dG9uLWNvbG91cik7XG5cdC13ZWJraXQtbWFzay1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAzMiAzMiclM0UlM0NwYXRoIGQ9J003IDI4YTEgMSAwIDAgMS0xLTFWNWExIDEgMCAwIDEgMS40ODItLjg3NmwyMCAxMWExIDEgMCAwIDEgMCAxLjc1MmwtMjAgMTFBMSAxIDAgMCAxIDcgMjhaJy8lM0UlM0NwYXRoIGZpbGw9J25vbmUnIGQ9J00wIDBoMzJ2MzJIMHonIGRhdGEtbmFtZT0nJmx0O1RyYW5zcGFyZW50IFJlY3RhbmdsZSZndDsnLyUzRSUzQy9zdmclM0VcIik7XG5cdC13ZWJraXQtbWFzay1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0bWFzay1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAzMiAzMiclM0UlM0NwYXRoIGQ9J003IDI4YTEgMSAwIDAgMS0xLTFWNWExIDEgMCAwIDEgMS40ODItLjg3NmwyMCAxMWExIDEgMCAwIDEgMCAxLjc1MmwtMjAgMTFBMSAxIDAgMCAxIDcgMjhaJy8lM0UlM0NwYXRoIGZpbGw9J25vbmUnIGQ9J00wIDBoMzJ2MzJIMHonIGRhdGEtbmFtZT0nJmx0O1RyYW5zcGFyZW50IFJlY3RhbmdsZSZndDsnLyUzRSUzQy9zdmclM0VcIik7XG5cdG1hc2stcmVwZWF0OiBuby1yZXBlYXQ7XG5cdHZlcnRpY2FsLWFsaWduOiAwcHg7XG59XG5wcmUuY29kZS1zdHlsZXItcHJlIGJ1dHRvbi5jbGVhci1idXR0b24tZGlzYWJsZWQsXG5wcmUuY29kZS1zdHlsZXItcHJlIGJ1dHRvbi5ydW4tYnV0dG9uLWRpc2FibGVkIHtcblx0ZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxucHJlLmNvZGUtc3R5bGVyLXByZSBidXR0b24uY2xlYXItYnV0dG9uIHtcblx0aGVpZ2h0OiAxNHB4O1xuXHRtYXJnaW4tYm90dG9tOiA2cHggIWltcG9ydGFudDtcblx0bWFyZ2luLWxlZnQ6IGNhbGModmFyKC0tbGFuZ3VhZ2UtYm9yZGVyLXdpZHRoKSArIDEycHgpO1xuXHR3aWxsLWNoYW5nZTogbWFyZ2luLXJpZ2h0LCBjbGlwLXBhdGg7XG5cdGNsaXAtcGF0aDogdmFyKC0tcG9seWdvbi1pbik7XG59XG5wcmUuY29kZS1zdHlsZXItcHJlIGJ1dHRvbi5jbGVhci1idXR0b246OmJlZm9yZSB7XG5cdGNvbnRlbnQ6IFwiXFwyMDBiXCI7XG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0d2lkdGg6IDE0cHg7XG5cdGhlaWdodDogMTRweDtcblx0cGFkZGluZy1yaWdodDogNHB4O1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2RlLXN0eWxlci1idXR0b24tY29sb3VyKTtcblx0LXdlYmtpdC1tYXNrLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNDc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgdmlld0JveD0nMCAwIDMyIDMyJyUzRSUzQ3BhdGggZD0nTTE2IDQgNiAxNGwxLjQxIDEuNDFMMTUgNy44M1YyOGgyVjcuODNsNy41OSA3LjU4TDI2IDE0IDE2IDR6Jy8lM0UlM0NwYXRoIGZpbGw9J25vbmUnIGQ9J00wIDBoMzJ2MzJIMHonIGRhdGEtbmFtZT0nJmx0O1RyYW5zcGFyZW50IFJlY3RhbmdsZSZndDsnLyUzRSUzQy9zdmclM0VcIik7XG5cdC13ZWJraXQtbWFzay1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0bWFzay1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCAzMiAzMiclM0UlM0NwYXRoIGQ9J00xNiA0IDYgMTRsMS40MSAxLjQxTDE1IDcuODNWMjhoMlY3LjgzbDcuNTkgNy41OEwyNiAxNCAxNiA0eicvJTNFJTNDcGF0aCBmaWxsPSdub25lJyBkPSdNMCAwaDMydjMySDB6JyBkYXRhLW5hbWU9JyZsdDtUcmFuc3BhcmVudCBSZWN0YW5nbGUmZ3Q7Jy8lM0UlM0Mvc3ZnJTNFXCIpO1xuXHRtYXNrLXJlcGVhdDogbm8tcmVwZWF0O1xuXHR2ZXJ0aWNhbC1hbGlnbjogMHB4O1xufVxucHJlLmNvZGUtc3R5bGVyLXByZSBidXR0b24uY2xlYXItYnV0dG9uOm5vdCg6YWN0aXZlKSB7XG5cdGFuaW1hdGlvbjogcmV2ZXJzZS1pbmRlbnQgdmFyKC0tZHVyYXRpb24tYnV0dG9uKTtcbn1cbnByZS5jb2RlLXN0eWxlci1wcmUgYnV0dG9uLmNsZWFyLWJ1dHRvbjpob3Zlcntcblx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cdGFuaW1hdGlvbjogcmV2ZXJzZS1vdXRkZW50IHZhcigtLWR1cmF0aW9uLWJ1dHRvbik7XG5cdG1hcmdpbi1yaWdodDogdmFyKC0tY29weS1jb2RlLWhlYWRlci1yaWdodC1tYXJnaW4pO1xuXHRjbGlwLXBhdGg6IHZhcigtLXBvbHlnb24tb3V0KTtcbn1cbnByZS5jb2RlLXN0eWxlci1wcmUgYnV0dG9uLmNsZWFyLWJ1dHRvbjphY3RpdmUge1xuXHRzY2FsZTogMC45NTtcblx0dHJhbnNpdGlvbjogc2NhbGUgdmFyKC0tZHVyYXRpb24tYnV0dG9uKSBjdWJpYy1iZXppZXIoMC40LCAwLjE0LCAwLjMsIDEpO1xufVxuLmNvZGUtc3R5bGVyLXByZS1wYXJlbnQuaGFzLXJ1bi1jb2RlLWJ1dHRvbiAubG9hZC1zdGF0ZS1pbmRpY2F0b3Ige1xuXHRjb2xvcjogbm9uZTtcblx0YmFja2dyb3VuZDogbm9uZTtcblx0ei1pbmRleDogMTA7XG59XG4uY29kZS1zdHlsZXItcHJlLXBhcmVudC5oYXMtcnVuLWNvZGUtYnV0dG9uIC5sb2FkLXN0YXRlLWluZGljYXRvcjo6YmVmb3JlIHtcblx0Ym94LXNoYWRvdzogbm9uZTtcbn1cbi5jb2RlLXN0eWxlci1wcmUtcGFyZW50Lmhhcy1ydW4tY29kZS1idXR0b24gLmxvYWQtc3RhdGUtaW5kaWNhdG9yIHN2ZyB7XG5cdGNvbG9yOiB2YXIoLS1jb2RlLXN0eWxlci1idXR0b24tY29sb3VyKTtcbn1cbi5jb2RlLXN0eWxlci1wcmUtcGFyZW50Lmhhcy1ydW4tY29kZS1idXR0b24gLmxvYWQtc3RhdGUtaW5kaWNhdG9yIHN2Zzpob3ZlciB7XG5cdGNvbG9yOiB2YXIoLS1jb2RlLXN0eWxlci1idXR0b24tYWN0aXZlLWNvbG91cik7XG59XG4uY29kZS1zdHlsZXItcHJlLXBhcmVudC5oYXMtcnVuLWNvZGUtYnV0dG9uIC5sb2FkLXN0YXRlLWluZGljYXRvci52aXNpYmxlIHtcblx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xufVxuXG4vKiogRW1iZWQgQ29kZSBQbHVnaW4gKi9cbi5ibG9jay1sYW5ndWFnZS1wcmV2aWV3IHByZS5jb2RlLXN0eWxlci1wcmUgY29kZSB7XG5cdHdoaXRlLXNwYWNlOiB1bnNldDtcbn1cbnByZS5jb2RlLXN0eWxlci1wcmUgc3Bhbi5jb2RlLWJsb2NrLWxpbmVfbnVtLXdyYXAsXG5wcmUuY29kZS1zdHlsZXItcHJlIGRpdi5jb2RlLWJsb2NrLWhpZ2hsaWdodC13cmFwIHtcblx0ZGlzcGxheTogbm9uZTtcbn1cbi5tYXJrZG93bi1zb3VyY2Utdmlldy5tb2QtY202IC5jbS1lbWJlZC1ibG9jayAuY29kZS1zdHlsZXItcHJlLXBhcmVudCArIC5lZGl0LWJsb2NrLWJ1dHRvbjo6YWZ0ZXIge1xuXHRjb250ZW50OiAnRWRpdCBCbG9jayc7XG5cdGZvbnQtc2l6ZTogdmFyKC0tZm9udC11aS1zbWFsbGVyKTtcblx0cGFkZGluZy1sZWZ0OiA0cHg7XG59XG4ubWFya2Rvd24tc291cmNlLXZpZXcubW9kLWNtNiAuY20tZW1iZWQtYmxvY2s6bm90KDpob3ZlcikgLmNvZGUtc3R5bGVyLXByZS1wYXJlbnQgKyAuZWRpdC1ibG9jay1idXR0b24ge1xuXHR2aXNpYmlsaXR5OiBoaWRkZW47XG5cdG9wYWNpdHk6IDBcbn1cbi5tYXJrZG93bi1zb3VyY2Utdmlldy5tb2QtY202IC5jbS1lbWJlZC1ibG9jayAuY29kZS1zdHlsZXItcHJlLXBhcmVudCArIC5lZGl0LWJsb2NrLWJ1dHRvbiB7XG5cdC0tY29weS1jb2RlLWhlYWRlci1yaWdodC1tYXJnaW46IGNhbGMoMi4yICogdmFyKC0taGVhZGVyLWJ1dHRvbi1zcGFjaW5nKSk7XG5cdC0tZGVudC1kaWZmZXJlbmNlOiAwcHg7XG5cdC0tcG9seWdvbi1pbjogcG9seWdvbigwIDAsIDE4cHggMCwgMThweCAzNnB4LCAwIDM2cHgpO1xuICAgIHRyYW5zaXRpb246IHZpc2liaWxpdHkgdmFyKC0tZHVyYXRpb24tYnV0dG9uKSwgb3BhY2l0eSB2YXIoLS1kdXJhdGlvbi1idXR0b24pO1xuXHR2aXNpYmlsaXR5OiB2aXNpYmxlO1xuXHRvcGFjaXR5OiAxO1xuXHR6LWluZGV4OiAxMDtcblx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuXHR0b3A6IG1heChjYWxjKDAuNSAqIHZhcigtLWNvbnRhaW5lci1oZWlnaHQpICogMSksY2FsYygwLjUgKiB2YXIoLS1jb250YWluZXItbWluLWhlaWdodCkgKiAxKSk7XG5cdG1hcmdpbjogMDtcblx0bWFyZ2luLXJpZ2h0OiBjYWxjKHZhcigtLWNvcHktY29kZS1oZWFkZXItcmlnaHQtbWFyZ2luKSAtIHZhcigtLWRlbnQtZGlmZmVyZW5jZSkpO1xuXHR3aWxsLWNoYW5nZTogbWFyZ2luLXJpZ2h0LCBjbGlwLXBhdGg7XG5cdGNsaXAtcGF0aDogdmFyKC0tcG9seWdvbi1pbik7XG5cdHBhZGRpbmc6IDA7XG59XG5ib2R5Om5vdCguY29kZS1zdHlsZXItc2hvdy1sYW5naWNvbnMtYWx3YXlzKTpub3QoLmNvZGUtc3R5bGVyLXNob3ctbGFuZ25hbWVzLWFsd2F5cykgLmNtLWVtYmVkLWJsb2NrIC5jb2RlLXN0eWxlci1wcmUtcGFyZW50OmhhcyggcHJlLmNvZGUtc3R5bGVyLXByZSAuY29kZS1zdHlsZXItaGVhZGVyLWNvbnRhaW5lcikgKyAuZWRpdC1ibG9jay1idXR0b24sXG5ib2R5Om5vdCguY29kZS1zdHlsZXItc2hvdy1sYW5nbmFtZXMtYWx3YXlzKSAuY20tZW1iZWQtYmxvY2sgLmNvZGUtc3R5bGVyLXByZS1wYXJlbnQ6bm90KDpoYXMoIHByZS5jb2RlLXN0eWxlci1wcmUgLmNvZGUtc3R5bGVyLWhlYWRlci1jb250YWluZXItc3BlY2lmaWMpKTpub3QoOmhhcyggcHJlLmNvZGUtc3R5bGVyLXByZSAuY29kZS1zdHlsZXItaGVhZGVyLWNvbnRhaW5lciBpbWcuY29kZS1zdHlsZXItaWNvbikpICsgLmVkaXQtYmxvY2stYnV0dG9uLFxuYm9keSAuY20tZW1iZWQtYmxvY2sgLmNvZGUtc3R5bGVyLXByZS1wYXJlbnQ6aGFzKCBwcmUuY29kZS1zdHlsZXItcHJlOm5vdChbY2xhc3MqPSdsYW5ndWFnZS0nXSkgLmNvZGUtc3R5bGVyLWhlYWRlci1jb250YWluZXIpICsgLmVkaXQtYmxvY2stYnV0dG9uIHsgLyo/IERlcGVuZGluZyBvbiBoZWFkZXIgdmlzaWJpbGl0eSAqL1xuXHQtLWNvcHktY29kZS1oZWFkZXItcmlnaHQtbWFyZ2luOiA0cHg7XG5cdHRvcDogY2FsYygwLjUgKiB2YXIoLS1mb250LXRleHQtc2l6ZSkgKiAwLjg3NSAqIHZhcigtLWxpbmUtaGVpZ2h0LW5vcm1hbCkpO1xufVxuLm1hcmtkb3duLXNvdXJjZS12aWV3Lm1vZC1jbTYgLmNtLWVtYmVkLWJsb2NrOmhvdmVyIC5jb2RlLXN0eWxlci1wcmUtcGFyZW50ICsgLmVkaXQtYmxvY2stYnV0dG9uOmhvdmVyIHtcblx0YmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG5cdGFuaW1hdGlvbjogcmV2ZXJzZS1vdXRkZW50IHZhcigtLWR1cmF0aW9uLWJ1dHRvbik7XG5cdG1hcmdpbi1yaWdodDogdmFyKC0tY29weS1jb2RlLWhlYWRlci1yaWdodC1tYXJnaW4pO1xuXHRjbGlwLXBhdGg6IHZhcigtLXBvbHlnb24tb3V0KTtcbn1cbi5tYXJrZG93bi1zb3VyY2Utdmlldy5tb2QtY202IC5jbS1lbWJlZC1ibG9jazpob3ZlciAuY29kZS1zdHlsZXItcHJlLXBhcmVudCArIC5lZGl0LWJsb2NrLWJ1dHRvbjphY3RpdmUge1xuXHRzY2FsZTogMC45NTtcblx0dHJhbnNpdGlvbjogc2NhbGUgdmFyKC0tZHVyYXRpb24tYnV0dG9uKSBjdWJpYy1iZXppZXIoMC40LCAwLjE0LCAwLjMsIDEpO1xufVxuXG4vKiogRmlsZSBJbmNsdWRlIFBsdWdpbiAqL1xuZGl2LmJsb2NrLWxhbmd1YWdlLWluY2x1ZGUgcHJlLmNvZGUtc3R5bGVyLXByZSBidXR0b24uY29weS1jb2RlLWJ1dHRvbiB7XG5cdG1hcmdpbjogMDtcblx0bWFyZ2luLXJpZ2h0OiBjYWxjKHZhcigtLWNvcHktY29kZS1oZWFkZXItcmlnaHQtbWFyZ2luKSAtIHZhcigtLWRlbnQtZGlmZmVyZW5jZSkpO1xufVxuZGl2LmJsb2NrLWxhbmd1YWdlLWluY2x1ZGUgcHJlLmNvZGUtc3R5bGVyLXByZSBidXR0b24uY29weS1jb2RlLWJ1dHRvbjpob3ZlciB7XG5cdG1hcmdpbi1yaWdodDogdmFyKC0tY29weS1jb2RlLWhlYWRlci1yaWdodC1tYXJnaW4pO1xufVxuIiwgIi8qKiBEZWZpbmUgQ1NTIHZhcmlhYmxlcyAqL1xuQGltcG9ydCBcIi4vY3NzL2NvZGVibG9ja3MuY3NzXCI7XG5AaW1wb3J0IFwiLi9jc3MvaW5saW5lQ29kZS5jc3NcIjtcbkBpbXBvcnQgXCIuL2Nzcy9wZGZFeHBvcnQuY3NzXCI7XG5AaW1wb3J0IFwiLi9jc3MvcGlja3IuY3NzXCI7XG5AaW1wb3J0IFwiLi9jc3MvcGx1Z2luQ29tcGF0aWJpbGl0eS5jc3NcIjtcblxuYm9keSB7XG5cdC8qIENvZGVibG9jayBCb2R5ICovXG5cdC0tYm9yZGVyLXJhZGl1czogMTBweDtcblx0LS1ncmFkaWVudC1iYWNrZ3JvdW5kLWNvbG91cjogdHJhbnNwYXJlbnQ7XG5cdC0tY29kZS1wYWRkaW5nOiA4cHg7XG5cdC0tY29udGFpbmVyLWhlaWdodDogY2FsYyh2YXIoLS1sYW5ndWFnZS1pY29uLXNpemUpICsgMiAqIHZhcigtLWhlYWRlci1pbm5lci12ZXJ0aWNhbC1wYWRkaW5nKSAqIHZhcigtLWhlYWRlci1mb250LXNpemUpKTtcblx0LS1jb250YWluZXItbWluLWhlaWdodDogY2FsYygodmFyKC0taGVhZGVyLWZvbnQtc2l6ZSkgKyAyICogdmFyKC0taGVhZGVyLWlubmVyLXZlcnRpY2FsLXBhZGRpbmcpICogdmFyKC0taGVhZGVyLWZvbnQtc2l6ZSkpICogdmFyKC0tbGluZS1oZWlnaHQtbm9ybWFsKSk7XG5cdC0tbGFuZ3VhZ2UtYm9yZGVyLWNvbG91cjogdmFyKC0tY29kZS1zdHlsZXItY29kZWJsb2NrLWJhY2tncm91bmQtY29sb3VyKTtcblx0LS1sYW5ndWFnZS1ib3JkZXItd2lkdGg6IDBweDtcblxuXHQvKiBIZWFkZXIgKi9cblx0LS1oZWFkZXItZm9udC1zaXplOiB2YXIoLS1jb2RlLXNpemUpO1xuXHQtLWhlYWRlci1wYWRkaW5nOiAwcHg7XG5cdC0taGVhZGVyLWlubmVyLXZlcnRpY2FsLXBhZGRpbmc6IDAuMztcblx0LS1oZWFkZXItc3BhY2luZzogMTVweDtcblx0LS1oZWFkZXItYnV0dG9uLXNwYWNpbmc6IDE0cHg7XG5cdC0taGVhZGVyLXNlcGFyYXRvci13aWR0aDogMnB4O1xuXHQtLWhlYWRlci1zZXBhcmF0b3Itd2lkdGgtcGFkZGluZzogdmFyKC0taGVhZGVyLXNlcGFyYXRvci13aWR0aCk7XG5cdC0tY29kZS1zdHlsZXItaGVhZGVyLWJvcmRlcjogbm9uZTtcblx0LS1jb2xsYXBzZWQtYm90dG9tLWJvcmRlcjogMCBzb2xpZCB0cmFuc3BhcmVudDtcblx0LS1sYW5ndWFnZS1pY29uLXNpemU6IDI4cHg7XG5cdC0tbGFuZ3VhZ2UtaWNvbi1maWx0ZXI6IG5vbmU7XG5cblx0LyogTGluZXMgKi9cblx0LS1ncmFkaWVudC1oaWdobGlnaHRzLWNvbG91ci1zdG9wOiAxMDAlO1xuXG5cdC8qIExpbmUgTnVtYmVycyAqL1xuXHQtLWxpbmUtbnVtYmVyLWhlaWdodC1jb3JyZWN0aW9uOiAycHg7XG5cdC0tbGluZS1udW1iZXItZ3V0dGVyLXBhZGRpbmc6IDE2cHg7XG5cdC0tbGluZS1udW1iZXItZ3V0dGVyLW1pbi13aWR0aDogMzIuNjdweDtcblxuXHQvKiBMaW5lIFRleHQgKi9cblx0LS1saW5lLXdyYXBwaW5nOiBwcmUtd3JhcDtcblx0LS1saW5lLWFjdGl2ZS13cmFwcGluZzogdmFyKC0tbGluZS13cmFwcGluZyk7XG5cblx0LyogQnV0dG9ucyAqL1xuXHQtLWNvZGUtc3R5bGVyLWJ1dHRvbi1jb2xvdXI6IHZhcigtLXRleHQtbXV0ZWQpO1xuXHQtLWNvZGUtc3R5bGVyLWJ1dHRvbi1hY3RpdmUtY29sb3VyOiB3aGl0ZTtcblx0LS1kdXJhdGlvbi1idXR0b246IDI0MG1zO1xuXHQtLWRlbnQtZGlmZmVyZW5jZTogMzBweDtcblx0LS1wb2x5Z29uLWluOiBwb2x5Z29uKDAgMCwgMTZweCAwLCAxNnB4IDM2cHgsIDAgMzZweCk7XG5cdC0tcG9seWdvbi1vdXQ6IHBvbHlnb24oMCAwLCAxMDAlIDAsIDEwMCUgMTAwJSwgMCAxMDAlKTtcblx0LS1jb3B5LWNvZGUtaGVhZGVyLXJpZ2h0LW1hcmdpbjogY2FsYygzICogdmFyKC0taGVhZGVyLWJ1dHRvbi1zcGFjaW5nKSk7XG5cblx0LyogSW5saW5lIENvZGUgKi9cblx0LS1jb2RlLXN0eWxlci1pbmxpbmUtZm9udC13ZWlnaHQ6IDQwMDtcblx0LS1jb2RlLXN0eWxlci1pbmxpbmUtYm9yZGVyLXJhZGl1czogNnB4O1xuXHQtLWNvZGUtc3R5bGVyLWlubGluZS1wYWRkaW5nLXZlcnRpY2FsOiA1cHg7XG5cdC0tY29kZS1zdHlsZXItaW5saW5lLXBhZGRpbmctaG9yaXpvbnRhbDogNXB4O1xuXHQtLWNvZGUtc3R5bGVyLWlubGluZS1tYXJnaW4taG9yaXpvbnRhbDogMHB4O1xuXHQtLWNvZGUtc3R5bGVyLWlubGluZS1jb2xvdXI6IHZhcigtLWNvZGUtbm9ybWFsKTtcblx0LS1jb2RlLXN0eWxlci1pbmxpbmUtY29sb3VyLWFjdGl2ZTogdmFyKC0tY29kZS1ub3JtYWwpO1xuXHQtLWNvZGUtc3R5bGVyLWlubGluZS1iYWNrZ3JvdW5kLWNvbG91cjogdmFyKC0tY29kZS1iYWNrZ3JvdW5kKTtcbn1cblxuLyoqIFNldHRpbmdzICovXG4uc2V0dGluZy1pdGVtLmNvZGUtc3R5bGVyLXNwYWNlZCAuY2hlY2tib3gtY29udGFpbmVyICsgLnBpY2tyIHtcblx0cGFkZGluZy1sZWZ0OiAxMHB4O1xufVxuLmNvZGUtc3R5bGVyLWRvbmF0aW9uIHtcblx0d2lkdGg6IDcwJTtcblx0bWFyZ2luOiAwIGF1dG87XG5cdHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbi5jb2RlLXN0eWxlci1zZXR0aW5nLXRleHQtYXJlYSB0ZXh0YXJlYSB7XG5cdHdpZHRoOiA0MDBweDtcblx0aGVpZ2h0OiAyMjBweDtcbn1cbiJdLAogICJtYXBwaW5ncyI6ICI7QUFDQTtBQUNDO0FBQUE7QUFFRDtBQUNDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFBQTtBQUVEO0FBQ0M7QUFDQTtBQUFBO0FBRUQ7QUFDQztBQUNBO0FBQUE7QUFFRDtBQUNDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQUE7QUFBQTtBQUFBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFBQTtBQUVEO0FBQ0M7QUFBQTtBQUVEO0FBQ0M7QUFDQTtBQUNBO0FBQUE7QUFFRDtBQUFBO0FBRUM7QUFBQTtBQUVEO0FBQ0M7QUFBQTtBQUlEO0FBQ0M7QUFDQTtBQUNBO0FBQUE7QUFFRDtBQUNDO0FBQ0E7QUFBQTtBQUVEO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFLQztBQUNBO0FBQUE7QUFFRDtBQUNDO0FBQ0E7QUFDQTtBQUNBO0FBQUE7QUFFRDtBQUNDO0FBQUE7QUFFRDtBQUNDO0FBQUE7QUFJRDtBQUFBO0FBRUM7QUFBQTtBQUVEO0FBQUE7QUFFQztBQUFBO0FBRUQ7QUFBQTtBQUVDO0FBQUE7QUFFRDtBQUFBO0FBRUM7QUFBQTtBQUVEO0FBQ0M7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFBQTtBQUVEO0FBQ0M7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUFBO0FBRUQ7QUFDQztBQUNBO0FBQUE7QUFFRDtBQUNDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUFBO0FBRUQ7QUFDQztBQUFBO0FBRUQ7QUFDQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFBQTtBQUVEO0FBQUE7QUFFQztBQUFBO0FBRUQ7QUFDQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFBQTtBQUVEO0FBQUE7QUFBQTtBQUdDO0FBQ0E7QUFBQTtBQUVEO0FBQUE7QUFBQTtBQUdDO0FBQUE7QUFFRDtBQUNDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUFBO0FBRUQ7QUFDQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQUE7QUFJRDtBQUNDO0FBQUE7QUFFRDtBQUNDO0FBQUE7QUFFRDtBQUFBO0FBRUM7QUFBQTtBQUVEO0FBQUE7QUFFQztBQUFBO0FBSUQ7QUFBQTtBQUVDO0FBQUE7QUFFRDtBQUNDO0FBQ0E7QUFBQTtBQUVEO0FBQ0M7QUFBQTtBQUVEO0FBQ0M7QUFBQTtBQUVEO0FBQ0M7QUFBQTtBQUVEO0FBQ0M7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQUE7QUFFRDtBQUFBO0FBRUM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQUE7QUFFRDtBQUFBO0FBQUE7QUFBQTtBQUlDO0FBQUE7QUFFRDtBQUNDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUFBO0FBRUQ7QUFDQztBQUFBO0FBRUQ7QUFDQztBQUFBO0FBRUQ7QUFBQTtBQUFBO0FBR0M7QUFBQTtBQUVEO0FBQ0M7QUFBQTtBQUVEO0FBQUE7QUFFQztBQUFBO0FBRUQ7QUFDQztBQUFBO0FBSUQ7QUFDQztBQUFBO0FBRUQ7QUFDQztBQUNBO0FBQ0E7QUFBQTtBQUVEO0FBQ0M7QUFBQTtBQUVEO0FBQ0M7QUFBQTtBQUlEO0FBQUE7QUFFQztBQUNBO0FBQUE7QUFHRDtBQUFBO0FBRUM7QUFBQTtBQUlEO0FBQUE7QUFFRTtBQUNBO0FBQUE7QUFBQTtBQUdBO0FBQ0E7QUFBQTtBQUFBO0FBR0Y7QUFBQTtBQUVFO0FBQ0E7QUFBQTtBQUFBO0FBR0E7QUFDQTtBQUFBO0FBQUE7QUFHRjtBQUFBO0FBRUU7QUFBQTtBQUFBO0FBR0E7QUFBQTtBQUFBO0FBR0Y7QUFBQTtBQUVFO0FBQUE7QUFBQTtBQUdBO0FBQUE7QUFBQTtBQUdGO0FBQ0k7QUFDSDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUFBO0FBRUQ7QUFBQTtBQUFBO0FBR0M7QUFDQTtBQUFBO0FBRUQ7QUFDQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDRztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFFSjtBQUFBO0FBRUM7QUFBQTtBQUVEO0FBQ0M7QUFBQTtBQUVEO0FBQUE7QUFBQTtBQUdDO0FBQ0E7QUFBQTtBQUVEO0FBQUE7QUFBQTtBQUdDO0FBQUE7QUFFRDtBQUFBO0FBQUE7QUFHQztBQUNBO0FBQUE7QUFFRDtBQUNDO0FBQ0E7QUFDQTtBQUFBO0FBRUQ7QUFBQTtBQUFBO0FBR0M7QUFDQTtBQUNBO0FBQUE7QUFFRDtBQUFBO0FBQUE7QUFHQztBQUFBO0FBRUQ7QUFBQTtBQUFBO0FBR0M7QUFDQTtBQUNBO0FBQ0E7QUFBQTtBQUVEO0FBQUE7QUFBQTtBQUdDO0FBQ0E7QUFBQTtBQUVEO0FBQUE7QUFFQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQUE7QUFFRDtBQUNDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQUE7QUFFRDtBQUNDO0FBQUE7QUFFRDtBQUNDO0FBQ0E7QUFDQTtBQUNBO0FBQUE7QUFFRDtBQUNDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFBQTtBQUVEO0FBQ0M7QUFBQTs7O0FDdGZEO0FBQUE7QUFFQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFBQTtBQUVEO0FBQ0M7QUFDQTtBQUFBO0FBRUQ7QUFDQztBQUNBO0FBQ0E7QUFBQTtBQUVEO0FBQUE7QUFFQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFBQTtBQUVEO0FBQ0M7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUFBO0FBRUQ7QUFDQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFBQTtBQUVEO0FBQ0M7QUFDQTtBQUNBO0FBQ0E7QUFBQTtBQUVEO0FBQ0M7QUFDQTtBQUFBO0FBRUQ7QUFDQztBQUNBO0FBQUE7QUFFRDtBQUNDO0FBQUE7QUFFRDtBQUNDO0FBQUE7OztBQzdERDtBQUNDO0FBQUE7QUFFRDtBQUNDO0FBQUE7QUFFRDtBQUNDO0FBQUE7OztBQ05EO0FBQVE7QUFBbUI7QUFBa0I7QUFBQTtBQUEyQjtBQUFVO0FBQXVCO0FBQWM7QUFBYTtBQUFpQjtBQUFBO0FBQTJCO0FBQW9CO0FBQW1CO0FBQVk7QUFBVztBQUFlO0FBQWdCO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBMEc7QUFBcUI7QUFBcVA7QUFBbUI7QUFBQTtBQUF1QjtBQUE0QjtBQUFtQjtBQUFZO0FBQU87QUFBUTtBQUFZO0FBQWE7QUFBa047QUFBc0I7QUFBcUI7QUFBQTtBQUFjO0FBQTRCO0FBQUE7QUFBbUI7QUFBMkI7QUFBbUI7QUFBWTtBQUFPO0FBQVE7QUFBYTtBQUFZO0FBQTRCO0FBQTZCO0FBQUE7QUFBdUI7QUFBMEI7QUFBQTtBQUF1QjtBQUFrQztBQUFBO0FBQWE7QUFBZ0M7QUFBQTtBQUE4RTtBQUE2QjtBQUFBO0FBQXNCO0FBQUE7QUFBc0I7QUFBdUI7QUFBYztBQUFhO0FBQWlCO0FBQUE7QUFBMkI7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFnTTtBQUFBO0FBQThFO0FBQUE7QUFBQTtBQUFBO0FBQXNGO0FBQUE7QUFBOEI7QUFBQTtBQUFBO0FBQUE7QUFBOEc7QUFBQTtBQUFpRjtBQUFVO0FBQWdCO0FBQWM7QUFBdUI7QUFBZTtBQUFxQjtBQUFpQjtBQUFXO0FBQW1CO0FBQTZDO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBMEc7QUFBK0U7QUFBUTtBQUFBO0FBQVM7QUFBa0I7QUFBeUI7QUFBb0I7QUFBQTtBQUFhO0FBQXdCO0FBQWM7QUFBZ0I7QUFBQTtBQUFxQjtBQUFpQztBQUFBO0FBQVk7QUFBNkI7QUFBd0I7QUFBYztBQUFvQjtBQUFBO0FBQUE7QUFBcUQ7QUFBaUM7QUFBZTtBQUFtQjtBQUEyQjtBQUE0QjtBQUFzQjtBQUFnQjtBQUFjO0FBQWU7QUFBcUI7QUFBc0I7QUFBaUI7QUFBd0I7QUFBQTtBQUFhO0FBQXlDO0FBQW1CO0FBQVk7QUFBTztBQUFRO0FBQVk7QUFBYTtBQUFrTjtBQUFxQjtBQUFxQjtBQUFBO0FBQWM7QUFBd0M7QUFBWTtBQUFtQjtBQUFPO0FBQVE7QUFBWTtBQUFhO0FBQTZCO0FBQXNDO0FBQXNCO0FBQUE7QUFBeUI7QUFBdUM7QUFBQTtBQUEyQjtBQUFrRDtBQUFBO0FBQW1CO0FBQTJCO0FBQWM7QUFBZ0I7QUFBb0I7QUFBQTtBQUE0QjtBQUErQjtBQUFBO0FBQWtCO0FBQWlDO0FBQXVCO0FBQWtCO0FBQW1CO0FBQWdCO0FBQWU7QUFBb0I7QUFBcUI7QUFBc0I7QUFBc0I7QUFBQTtBQUFxQjtBQUF1QztBQUFBO0FBQTRCO0FBQXVDO0FBQUE7QUFBc0Y7QUFBdUM7QUFBZTtBQUFpQjtBQUFjO0FBQWU7QUFBcUI7QUFBcUI7QUFBb0I7QUFBQTtBQUFlO0FBQXVEO0FBQW9CO0FBQUE7QUFBYztBQUFrRDtBQUFvQjtBQUFBO0FBQWM7QUFBNEM7QUFBWTtBQUFBO0FBQXNCO0FBQUE7QUFBQTtBQUFrSDtBQUFZO0FBQUE7QUFBYztBQUFBO0FBQUE7QUFBa0g7QUFBQTtBQUFjO0FBQUE7QUFBQTtBQUFvSTtBQUFBO0FBQTRCO0FBQXFDO0FBQUE7QUFBc0I7QUFBQTtBQUE2RTtBQUFBO0FBQXNCO0FBQUE7QUFBeUY7QUFBQTtBQUFxRjtBQUFxQztBQUFtQjtBQUFhO0FBQVk7QUFBdUI7QUFBb0I7QUFBMEI7QUFBdUI7QUFBc0I7QUFBQTtBQUFvQjtBQUFBO0FBQUE7QUFBb0k7QUFBbUI7QUFBMEI7QUFBdUI7QUFBc0I7QUFBa0I7QUFBYztBQUF1QjtBQUFhO0FBQUE7QUFBdUI7QUFBQTtBQUFBO0FBQXlKO0FBQWlCO0FBQUE7QUFBMkI7QUFBNkI7QUFBZTtBQUFBO0FBQWtCO0FBQTJDO0FBQWlCO0FBQUE7QUFBa0I7QUFBOEM7QUFBQTtBQUE0QjtBQUE0QztBQUFjO0FBQWU7QUFBK0I7QUFBa0M7QUFBb0I7QUFBZTtBQUFZO0FBQUE7QUFBeUI7QUFBK0Q7QUFBeUI7QUFBYTtBQUFZO0FBQWM7QUFBb0I7QUFBd0I7QUFBQTtBQUFvQjtBQUErRTtBQUFBO0FBQWdCO0FBQWtGO0FBQW1CO0FBQTZCO0FBQVc7QUFBWTtBQUFvQjtBQUFBO0FBQW1CO0FBQTBGO0FBQW1CO0FBQVk7QUFBTztBQUFRO0FBQVk7QUFBYTtBQUFrTjtBQUFzQjtBQUFxQjtBQUFBO0FBQWM7QUFBK0Q7QUFBeUI7QUFBWTtBQUFhO0FBQUE7QUFBYTtBQUE0RTtBQUFxQjtBQUFZO0FBQUE7QUFBZTtBQUFvRjtBQUFtQjtBQUFZO0FBQU87QUFBUTtBQUFZO0FBQWE7QUFBa047QUFBc0I7QUFBcUI7QUFBQTtBQUFjO0FBQStEO0FBQUE7QUFBMkI7QUFBK0Q7QUFBQTtBQUEyQjtBQUFBO0FBQThIO0FBQWM7QUFBQTtBQUFpQjtBQUFBO0FBQXNKO0FBQVM7QUFBQTtBQUE4QjtBQUFBO0FBQXNKO0FBQWE7QUFBQTtBQUFzQjtBQUEyRTtBQUFBO0FBQWdGO0FBQTJFO0FBQWlRO0FBQUE7QUFDbDhTO0FBQ0M7QUFBQTs7O0FDRkQ7QUFDQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQUE7QUFFRDtBQUNDO0FBQ0E7QUFBQTtBQUVEO0FBQ0M7QUFBQTtBQUVEO0FBQ0k7QUFDQTtBQUNBO0FBQ0E7QUFDSDtBQUNBO0FBQ0E7QUFBQTtBQUVEO0FBQ0M7QUFBQTtBQUVEO0FBQ0M7QUFDQTtBQUNBO0FBQ0E7QUFBQTtBQUVEO0FBQ0M7QUFBQTtBQUVEO0FBQ0M7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUFBO0FBRUQ7QUFBQTtBQUVDO0FBQUE7QUFFRDtBQUNDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFBQTtBQUVEO0FBQ0M7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUFBO0FBRUQ7QUFDQztBQUFBO0FBRUQ7QUFDQztBQUNBO0FBQ0E7QUFDQTtBQUFBO0FBRUQ7QUFDQztBQUNBO0FBQUE7QUFFRDtBQUNDO0FBQ0E7QUFDQTtBQUFBO0FBRUQ7QUFDQztBQUFBO0FBRUQ7QUFDQztBQUFBO0FBRUQ7QUFDQztBQUFBO0FBRUQ7QUFDQztBQUFBO0FBSUQ7QUFDQztBQUFBO0FBRUQ7QUFBQTtBQUVDO0FBQUE7QUFFRDtBQUNDO0FBQ0E7QUFDQTtBQUFBO0FBRUQ7QUFDQztBQUNBO0FBQUE7QUFFRDtBQUNDO0FBQ0E7QUFDQTtBQUNHO0FBQ0g7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFBQTtBQUVEO0FBQUE7QUFBQTtBQUdDO0FBQ0E7QUFBQTtBQUVEO0FBQ0M7QUFDQTtBQUNBO0FBQ0E7QUFBQTtBQUVEO0FBQ0M7QUFDQTtBQUFBO0FBSUQ7QUFDQztBQUNBO0FBQUE7QUFFRDtBQUNDO0FBQUE7OztBQ3pKRDtBQUVDO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBR0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUdBO0FBR0E7QUFDQTtBQUNBO0FBR0E7QUFDQTtBQUdBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBR0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUFBO0FBSUQ7QUFDQztBQUFBO0FBRUQ7QUFDQztBQUNBO0FBQ0E7QUFBQTtBQUVEO0FBQ0M7QUFDQTtBQUFBOyIsCiAgIm5hbWVzIjogW10KfQo= */
|