@diplodoc/transform
Version:
A simple transformer of text in YFM (Yandex Flavored Markdown) to HTML
4 lines • 75.3 kB
Source Map (JSON)
{
"version": 3,
"sources": ["../../src/scss/home/runner/work/transform/transform/src/scss/_common.scss", "../../src/scss/home/runner/work/transform/transform/src/scss/_lists.scss", "../../src/scss/%3Cinput%20css%20_MNthk%3E", "../../src/scss/home/runner/work/transform/transform/src/scss/private.scss", "../../src/scss/home/runner/work/transform/transform/src/scss/brand.scss", "../../src/scss/home/runner/work/transform/transform/src/scss/_anchor.scss", "../../src/scss/home/runner/work/transform/transform/src/scss/_highlight.scss", "../../src/scss/home/runner/work/transform/transform/src/scss/_code.scss"],
"sourcesContent": ["/* stylelint-disable declaration-no-important */\n\n@import 'private';\n@import 'brand';\n@import 'lists';\n\n@mixin removeMarginForEdgeChildren {\n & > *:first-child {\n margin-top: 0;\n }\n\n & > *:last-child {\n margin-bottom: 0;\n }\n}\n\n.yfm {\n @include private-brand();\n @include brand();\n\n font-family: var(--yfm-font-family-sans);\n font-size: 15px;\n line-height: 20px;\n word-wrap: break-word;\n color: var(--yfm-color-text);\n tab-size: var(--yfm-tab-size, inherit);\n\n * {\n box-sizing: border-box;\n }\n\n & > *:not(h2):not(h3):not(h4):not(h5):not(h6):first-child {\n margin-top: 0 !important;\n }\n\n & > *:last-child {\n margin-bottom: 0 !important;\n }\n\n h1,\n h2,\n h3,\n h4,\n h5,\n h6 {\n margin-bottom: 15px;\n font-weight: 500;\n }\n\n h1 {\n font-size: 32px;\n line-height: 40px;\n }\n\n h2 {\n font-size: 24px;\n line-height: 28px;\n }\n\n h3 {\n font-size: 20px;\n line-height: 24px;\n }\n\n h4 {\n font-size: 17px;\n line-height: 24px;\n }\n\n h5 {\n font-size: 15px;\n line-height: 20px;\n }\n\n h6 {\n font-size: 13px;\n line-height: 18px;\n }\n\n a {\n background-color: transparent;\n color: var(--yfm-color-link);\n text-decoration: none;\n\n &:hover,\n &:active {\n color: var(--yfm-color-link-hover);\n }\n\n &:not([href]) {\n color: inherit;\n }\n }\n\n strong {\n font-weight: 700;\n }\n\n img,\n svg {\n box-sizing: content-box;\n max-width: 100%;\n max-height: fit-content;\n border: none;\n vertical-align: middle;\n\n &[align='right'] {\n padding-left: 20px;\n }\n\n &[align='left'] {\n padding-right: 20px;\n }\n }\n\n img {\n object-fit: contain;\n background-color: var(--yfm-color-base);\n }\n\n svg {\n height: auto;\n }\n\n .katex svg {\n height: initial;\n }\n\n img + small {\n display: block;\n }\n\n p,\n blockquote,\n ul,\n ol,\n dl,\n table,\n pre {\n margin-block: var(--yfm-text-block-margin-block, 0 15px);\n margin-inline: var(--yfm-text-block-margin-inline, 0);\n }\n\n ul,\n ol,\n dl {\n & pre {\n margin-top: 15px;\n }\n }\n\n code,\n kbd,\n pre {\n font-family: var(--yfm-font-family-monospace);\n font-size: 1em;\n font-feature-settings: normal;\n }\n\n input {\n margin: 0;\n overflow: visible;\n\n font-family: inherit;\n font-size: inherit;\n line-height: inherit;\n\n &[type='checkbox'] {\n position: relative;\n top: 1px;\n\n box-sizing: border-box;\n padding: 0;\n }\n }\n\n table {\n color: var(--yfm-color-table);\n\n display: inline-block;\n max-width: 100%;\n width: auto;\n overflow: auto;\n position: relative;\n z-index: 1;\n\n box-sizing: border-box;\n border: 1px solid var(--yfm-color-border);\n border-radius: 8px;\n border-collapse: collapse;\n border-spacing: 0;\n background: var(--yfm-color-base);\n\n thead,\n tr:nth-child(2n) {\n background-color: var(--yfm-color-table-row-background);\n }\n\n tr:first-child {\n td,\n th {\n border-top: none;\n }\n }\n\n tr:last-child {\n td,\n th {\n border-bottom: none;\n }\n }\n\n th,\n td {\n padding: 10px 20px;\n overflow: hidden;\n text-overflow: ellipsis;\n border: 1px solid var(--yfm-color-border);\n\n @include removeMarginForEdgeChildren();\n }\n\n td {\n vertical-align: top;\n white-space: normal;\n }\n\n th {\n font-weight: 500;\n text-align: left;\n }\n\n tr td:first-child,\n tr th:first-child {\n border-left: none;\n }\n tr td:last-child,\n tr th:last-child {\n border-right: none;\n }\n }\n\n hr {\n box-sizing: content-box;\n height: 0.25em;\n padding: 0;\n margin: 1.5em 0;\n overflow: hidden;\n\n background-color: var(--yfm-color-border);\n border: none;\n\n &::before {\n content: '';\n display: table;\n }\n\n &::after {\n content: '';\n display: table;\n clear: both;\n }\n }\n\n blockquote {\n position: relative;\n padding-left: 12px;\n border-left: 3px solid var(--yfm-color-accent);\n\n @include removeMarginForEdgeChildren();\n }\n\n dl {\n padding: 0;\n\n @include removeMarginForEdgeChildren();\n\n dt {\n margin-bottom: 5px;\n font-size: 1em;\n font-weight: 500;\n font-style: italic;\n }\n\n dd {\n margin-bottom: 15px;\n padding: 0 15px;\n }\n }\n\n dd {\n margin-left: 0;\n }\n\n ul,\n ol {\n padding-left: 2.2em;\n }\n\n ul ul,\n ul ol,\n ol ol,\n ol ul {\n margin-top: 0;\n margin-bottom: 0;\n }\n\n li {\n word-wrap: break-word;\n }\n\n li + li {\n margin-block: var(--yfm-list-item-margin-block, 0.33em 0);\n }\n\n li {\n p,\n blockquote {\n margin-block: var(--yfm-list-text-margin-block, 0 15px);\n }\n\n > p:only-child,\n > blockquote:only-child {\n margin-block: var(--yfm-list-text-only-margin-block, 0);\n }\n\n @supports selector(:has(br)) {\n > p:only-child:has(br),\n > blockquote:only-child:has(br) {\n margin-block: var(--yfm-list-text-margin-block, 0 15px);\n }\n }\n }\n\n code {\n padding: 0.1em 0.4em 0.15em;\n background-color: var(--yfm-color-inline-code-background);\n border-radius: 4px;\n font-size: 0.875em;\n white-space: pre-wrap;\n color: var(--yfm-color-inline-code);\n tab-size: var(--yfm-tab-size-code, inherit);\n }\n\n pre {\n word-wrap: normal;\n }\n\n table code {\n white-space: nowrap;\n }\n\n pre * code {\n display: inline;\n padding: 0;\n margin: 0;\n overflow: visible;\n word-wrap: normal;\n background-color: transparent;\n border: 0;\n color: var(--yfm-color-text);\n }\n\n pre > code {\n display: block;\n padding: 16px;\n overflow: auto;\n\n background-color: var(--yfm-color-code-background);\n color: var(--yfm-color-text);\n\n white-space: pre;\n }\n\n sup,\n sub {\n line-height: 0;\n }\n\n /*\n Hides element visually, but leaves it visible for search crawlers and screen readers\n\n https://www.a11yproject.com/posts/2013-01-11-how-to-hide-content/\n https://hugogiraudel.com/2016/10/13/css-hide-and-seek/\n */\n .visually-hidden {\n position: absolute;\n\n overflow: hidden;\n clip: rect(0 0 0 0);\n\n width: 1px;\n height: 1px;\n margin: -1px;\n\n padding: 0;\n\n white-space: nowrap;\n\n border: 0;\n\n clip-path: inset(100%);\n user-select: none;\n }\n\n --yfm-font-family-monospace: 'Menlo', 'Monaco', 'Consolas', 'Ubuntu Mono', 'Liberation Mono',\n 'DejaVu Sans Mono', 'Courier New', 'Courier', monospace;\n --yfm-font-family-sans: 'Segoe UI', arial, helvetica, sans-serif, 'Apple Color Emoji',\n 'Segoe UI Emoji', 'Segoe UI Symbol';\n}\n", "@use 'sass:list';\n@use 'sass:string';\n\n@function get-counter-ident($depth) {\n $ident: hier-list-item;\n\n @for $i from 0 to $depth {\n $ident: sub-#{$ident};\n }\n\n @return $ident;\n}\n\n@function get-selector($depth) {\n $selector: ol;\n\n @for $i from 0 to $depth {\n $selector: '#{$selector} > li > ol';\n }\n\n @return $selector;\n}\n\n@function get-marker-content($idents) {\n $length: list.length($idents);\n $content: '';\n\n @for $i from 1 through $length {\n @if $i > 1 {\n $content: '#{$content} \".\"';\n }\n\n $content: '#{$content} counter(#{list.nth($idents, $i)})';\n }\n\n @return #{$content} '. ';\n}\n\n@mixin hier-list($max-depth) {\n $ident-path: ();\n\n @for $i from 0 through $max-depth {\n $ident: get-counter-ident($i);\n $ident-path: list.append($ident-path, $ident);\n\n & #{get-selector($i)} {\n --hier-list-start: 0;\n counter-reset: #{$ident} var(--hier-list-start);\n\n & > li {\n counter-increment: $ident;\n\n &::marker {\n content: get-marker-content($ident-path);\n }\n }\n }\n }\n}\n\n.yfm {\n @include hier-list(5);\n\n &.yfm_no-list-reset ol,\n ol.yfm_no-list-reset,\n .yfm_no-list-reset ol {\n counter-reset: list-item;\n\n & li {\n counter-increment: unset;\n\n &::marker {\n content: unset;\n }\n }\n }\n}\n", "/* stylelint-disable declaration-no-important */\n.yfm ol {\n --hier-list-start: 0;\n counter-reset: hier-list-item var(--hier-list-start);\n}\n.yfm ol > li {\n counter-increment: hier-list-item;\n}\n.yfm ol > li::marker {\n content: counter(hier-list-item) \". \";\n}\n.yfm ol > li > ol {\n --hier-list-start: 0;\n counter-reset: sub-hier-list-item var(--hier-list-start);\n}\n.yfm ol > li > ol > li {\n counter-increment: sub-hier-list-item;\n}\n.yfm ol > li > ol > li::marker {\n content: counter(hier-list-item) \".\" counter(sub-hier-list-item) \". \";\n}\n.yfm ol > li > ol > li > ol {\n --hier-list-start: 0;\n counter-reset: sub-sub-hier-list-item var(--hier-list-start);\n}\n.yfm ol > li > ol > li > ol > li {\n counter-increment: sub-sub-hier-list-item;\n}\n.yfm ol > li > ol > li > ol > li::marker {\n content: counter(hier-list-item) \".\" counter(sub-hier-list-item) \".\" counter(sub-sub-hier-list-item) \". \";\n}\n.yfm ol > li > ol > li > ol > li > ol {\n --hier-list-start: 0;\n counter-reset: sub-sub-sub-hier-list-item var(--hier-list-start);\n}\n.yfm ol > li > ol > li > ol > li > ol > li {\n counter-increment: sub-sub-sub-hier-list-item;\n}\n.yfm ol > li > ol > li > ol > li > ol > li::marker {\n content: counter(hier-list-item) \".\" counter(sub-hier-list-item) \".\" counter(sub-sub-hier-list-item) \".\" counter(sub-sub-sub-hier-list-item) \". \";\n}\n.yfm ol > li > ol > li > ol > li > ol > li > ol {\n --hier-list-start: 0;\n counter-reset: sub-sub-sub-sub-hier-list-item var(--hier-list-start);\n}\n.yfm ol > li > ol > li > ol > li > ol > li > ol > li {\n counter-increment: sub-sub-sub-sub-hier-list-item;\n}\n.yfm ol > li > ol > li > ol > li > ol > li > ol > li::marker {\n content: counter(hier-list-item) \".\" counter(sub-hier-list-item) \".\" counter(sub-sub-hier-list-item) \".\" counter(sub-sub-sub-hier-list-item) \".\" counter(sub-sub-sub-sub-hier-list-item) \". \";\n}\n.yfm ol > li > ol > li > ol > li > ol > li > ol > li > ol {\n --hier-list-start: 0;\n counter-reset: sub-sub-sub-sub-sub-hier-list-item var(--hier-list-start);\n}\n.yfm ol > li > ol > li > ol > li > ol > li > ol > li > ol > li {\n counter-increment: sub-sub-sub-sub-sub-hier-list-item;\n}\n.yfm ol > li > ol > li > ol > li > ol > li > ol > li > ol > li::marker {\n content: counter(hier-list-item) \".\" counter(sub-hier-list-item) \".\" counter(sub-sub-hier-list-item) \".\" counter(sub-sub-sub-hier-list-item) \".\" counter(sub-sub-sub-sub-hier-list-item) \".\" counter(sub-sub-sub-sub-sub-hier-list-item) \". \";\n}\n.yfm.yfm_no-list-reset ol,\n.yfm ol.yfm_no-list-reset,\n.yfm .yfm_no-list-reset ol {\n counter-reset: list-item;\n}\n.yfm.yfm_no-list-reset ol li,\n.yfm ol.yfm_no-list-reset li,\n.yfm .yfm_no-list-reset ol li {\n counter-increment: unset;\n}\n.yfm.yfm_no-list-reset ol li::marker,\n.yfm ol.yfm_no-list-reset li::marker,\n.yfm .yfm_no-list-reset ol li::marker {\n content: unset;\n}\n\n.yfm {\n --yfm-color-text-private: rgba(0, 0, 0, 0.7);\n --yfm-color-link-private: #027bf3;\n --yfm-color-link-hover-private: #004080;\n --yfm-color-base-private: #ffffff;\n --yfm-color-table-private: #333;\n --yfm-color-border-private: rgba(0, 0, 0, 0.07);\n --yfm-color-table-row-background-private: rgba(0, 0, 0, 0.02);\n --yfm-color-accent-private: #027bf3;\n --yfm-color-inline-code-private: rgba(59, 96, 128, 1);\n --yfm-color-inline-code-background-private: rgba(107, 132, 153, 0.12);\n --yfm-color-code-background-private: rgba(107, 132, 153, 0.12);\n --yfm-color-hljs-background-private: rgba(107, 132, 153, 0.12);\n --yfm-color-hljs-subst-private: #444;\n --yfm-color-hljs-comment-private: #888888;\n --yfm-color-hljs-deletion-private: #880000;\n --yfm-color-hljs-section-private: #880000;\n --yfm-color-hljs-pseudo-private: #bc6060;\n --yfm-color-hljs-literal-private: #78a960;\n --yfm-color-hljs-addition-private: #397300;\n --yfm-color-hljs-meta-private: #1f7199;\n --yfm-color-hljs-meta-string-private: #4d99bf;\n --yfm-color-note-tip-private: #56bd67;\n --yfm-color-note-tip-background-private: rgba(63, 201, 46, 0.1);\n --yfm-color-note-warning-private: #f19518;\n --yfm-color-note-warning-background-private: rgba(255, 136, 0, 0.15);\n --yfm-color-note-important-private: #ff4645;\n --yfm-color-note-important-background-private: rgba(235, 50, 38, 0.08);\n --yfm-color-note-info-private: #027bf3;\n --yfm-color-note-info-background-private: rgba(2, 123, 243, 0.08);\n --yfm-color-term-title-private: #027bf3;\n --yfm-color-term-title-hover-private: #004080;\n --yfm-color-term-dfn-background-private: rgb(255, 255, 255);\n --yfm-color-term-dfn-shadow-private: rgba(0, 0, 0, 0.15);\n --yfm-color-term-dfn-presudo-shadow-private: rgb(229, 229, 229);\n --yfm-color-modal-content-private: rgb(255, 255, 255);\n --yfm-color-modal-actions-hover-private: rgba(0, 0, 0, 0.05);\n --yfm-color-modal-wide-content-private: rgba(0, 0, 0, 0.85);\n --yfm-color-modal-wide-content-overlay-private: rgb(0, 0, 0);\n --yfm-color-base: var(--yfm-color-base-private);\n --yfm-color-text: var(--yfm-color-text-private);\n --yfm-color-link: var(--yfm-color-link-private);\n --yfm-color-link-hover: var(--yfm-color-link-hover-private);\n --yfm-color-table: var(--yfm-color-table-private);\n --yfm-color-table-row-background: var(--yfm-color-table-row-background-private);\n --yfm-color-border: var(--yfm-color-border-private);\n --yfm-color-accent: var(--yfm-color-accent-private);\n --yfm-color-inline-code: var(--yfm-color-inline-code-private);\n --yfm-color-inline-code-background: var(--yfm-color-inline-code-background-private);\n --yfm-color-code-background: var(--yfm-color-code-background-private);\n --yfm-color-hljs-background: var(--yfm-color-hljs-background-private);\n --yfm-color-hljs-subst: var(--yfm-color-hljs-subst-private);\n --yfm-color-hljs-comment: var(--yfm-color-hljs-comment-private);\n --yfm-color-hljs-deletion: var(--yfm-color-hljs-deletion-private);\n --yfm-color-hljs-section: var(--yfm-color-hljs-section-private);\n --yfm-color-hljs-pseudo: var(--yfm-color-hljs-pseudo-private);\n --yfm-color-hljs-literal: var(--yfm-color-hljs-literal-private);\n --yfm-color-hljs-addition: var(--yfm-color-hljs-addition-private);\n --yfm-color-hljs-meta: var(--yfm-color-hljs-meta-private);\n --yfm-color-hljs-meta-string: var(--yfm-color-hljs-meta-string-private);\n --yfm-color-note-tip: var(--yfm-color-note-tip-private);\n --yfm-color-note-tip-background: var(--yfm-color-note-tip-background-private);\n --yfm-color-note-warning: var(--yfm-color-note-warning-private);\n --yfm-color-note-warning-background: var(--yfm-color-note-warning-background-private);\n --yfm-color-note-important: var(--yfm-color-note-important-private);\n --yfm-color-note-important-background: var(--yfm-color-note-important-background-private);\n --yfm-color-note-info: var(--yfm-color-note-info-private);\n --yfm-color-note-info-background: var(--yfm-color-note-info-background-private);\n --yfm-color-term-title: var(--yfm-color-term-title-private);\n --yfm-color-term-title-hover: var(--yfm-color-term-title-hover-private);\n --yfm-color-term-dfn-background: var(--yfm-color-term-dfn-background-private);\n --yfm-color-term-dfn-shadow: var(--yfm-color-term-dfn-shadow-private);\n --yfm-color-term-dfn-pseudo-shadow: var(--yfm-color-term-dfn-presudo-shadow-private);\n --yfm-color-modal-content: var(--yfm-color-modal-content-private);\n --yfm-color-modal-actions-hover: var(--yfm-color-modal-actions-hover-private);\n --yfm-color-modal-wide-content: var(--yfm-color-modal-wide-content-private);\n --yfm-color-modal-wide-content-overlay: var(--yfm-color-modal-wide-content-overlay-private);\n font-family: var(--yfm-font-family-sans);\n font-size: 15px;\n line-height: 20px;\n word-wrap: break-word;\n color: var(--yfm-color-text);\n tab-size: var(--yfm-tab-size, inherit);\n /*\n Hides element visually, but leaves it visible for search crawlers and screen readers\n\n https://www.a11yproject.com/posts/2013-01-11-how-to-hide-content/\n https://hugogiraudel.com/2016/10/13/css-hide-and-seek/\n */\n --yfm-font-family-monospace: \"Menlo\", \"Monaco\", \"Consolas\", \"Ubuntu Mono\", \"Liberation Mono\",\n \"DejaVu Sans Mono\", \"Courier New\", \"Courier\", monospace;\n --yfm-font-family-sans: \"Segoe UI\", arial, helvetica, sans-serif, \"Apple Color Emoji\",\n \"Segoe UI Emoji\", \"Segoe UI Symbol\";\n}\n.yfm * {\n box-sizing: border-box;\n}\n.yfm > *:not(h2):not(h3):not(h4):not(h5):not(h6):first-child {\n margin-top: 0 !important;\n}\n.yfm > *:last-child {\n margin-bottom: 0 !important;\n}\n.yfm h1,\n.yfm h2,\n.yfm h3,\n.yfm h4,\n.yfm h5,\n.yfm h6 {\n margin-bottom: 15px;\n font-weight: 500;\n}\n.yfm h1 {\n font-size: 32px;\n line-height: 40px;\n}\n.yfm h2 {\n font-size: 24px;\n line-height: 28px;\n}\n.yfm h3 {\n font-size: 20px;\n line-height: 24px;\n}\n.yfm h4 {\n font-size: 17px;\n line-height: 24px;\n}\n.yfm h5 {\n font-size: 15px;\n line-height: 20px;\n}\n.yfm h6 {\n font-size: 13px;\n line-height: 18px;\n}\n.yfm a {\n background-color: transparent;\n color: var(--yfm-color-link);\n text-decoration: none;\n}\n.yfm a:hover, .yfm a:active {\n color: var(--yfm-color-link-hover);\n}\n.yfm a:not([href]) {\n color: inherit;\n}\n.yfm strong {\n font-weight: 700;\n}\n.yfm img,\n.yfm svg {\n box-sizing: content-box;\n max-width: 100%;\n max-height: fit-content;\n border: none;\n vertical-align: middle;\n}\n.yfm img[align=right],\n.yfm svg[align=right] {\n padding-left: 20px;\n}\n.yfm img[align=left],\n.yfm svg[align=left] {\n padding-right: 20px;\n}\n.yfm img {\n object-fit: contain;\n background-color: var(--yfm-color-base);\n}\n.yfm svg {\n height: auto;\n}\n.yfm .katex svg {\n height: initial;\n}\n.yfm img + small {\n display: block;\n}\n.yfm p,\n.yfm blockquote,\n.yfm ul,\n.yfm ol,\n.yfm dl,\n.yfm table,\n.yfm pre {\n margin-block: var(--yfm-text-block-margin-block, 0 15px);\n margin-inline: var(--yfm-text-block-margin-inline, 0);\n}\n.yfm ul pre,\n.yfm ol pre,\n.yfm dl pre {\n margin-top: 15px;\n}\n.yfm code,\n.yfm kbd,\n.yfm pre {\n font-family: var(--yfm-font-family-monospace);\n font-size: 1em;\n font-feature-settings: normal;\n}\n.yfm input {\n margin: 0;\n overflow: visible;\n font-family: inherit;\n font-size: inherit;\n line-height: inherit;\n}\n.yfm input[type=checkbox] {\n position: relative;\n top: 1px;\n box-sizing: border-box;\n padding: 0;\n}\n.yfm table {\n color: var(--yfm-color-table);\n display: inline-block;\n max-width: 100%;\n width: auto;\n overflow: auto;\n position: relative;\n z-index: 1;\n box-sizing: border-box;\n border: 1px solid var(--yfm-color-border);\n border-radius: 8px;\n border-collapse: collapse;\n border-spacing: 0;\n background: var(--yfm-color-base);\n}\n.yfm table thead,\n.yfm table tr:nth-child(2n) {\n background-color: var(--yfm-color-table-row-background);\n}\n.yfm table tr:first-child td,\n.yfm table tr:first-child th {\n border-top: none;\n}\n.yfm table tr:last-child td,\n.yfm table tr:last-child th {\n border-bottom: none;\n}\n.yfm table th,\n.yfm table td {\n padding: 10px 20px;\n overflow: hidden;\n text-overflow: ellipsis;\n border: 1px solid var(--yfm-color-border);\n}\n.yfm table th > *:first-child,\n.yfm table td > *:first-child {\n margin-top: 0;\n}\n.yfm table th > *:last-child,\n.yfm table td > *:last-child {\n margin-bottom: 0;\n}\n.yfm table td {\n vertical-align: top;\n white-space: normal;\n}\n.yfm table th {\n font-weight: 500;\n text-align: left;\n}\n.yfm table tr td:first-child,\n.yfm table tr th:first-child {\n border-left: none;\n}\n.yfm table tr td:last-child,\n.yfm table tr th:last-child {\n border-right: none;\n}\n.yfm hr {\n box-sizing: content-box;\n height: 0.25em;\n padding: 0;\n margin: 1.5em 0;\n overflow: hidden;\n background-color: var(--yfm-color-border);\n border: none;\n}\n.yfm hr::before {\n content: \"\";\n display: table;\n}\n.yfm hr::after {\n content: \"\";\n display: table;\n clear: both;\n}\n.yfm blockquote {\n position: relative;\n padding-left: 12px;\n border-left: 3px solid var(--yfm-color-accent);\n}\n.yfm blockquote > *:first-child {\n margin-top: 0;\n}\n.yfm blockquote > *:last-child {\n margin-bottom: 0;\n}\n.yfm dl {\n padding: 0;\n}\n.yfm dl > *:first-child {\n margin-top: 0;\n}\n.yfm dl > *:last-child {\n margin-bottom: 0;\n}\n.yfm dl dt {\n margin-bottom: 5px;\n font-size: 1em;\n font-weight: 500;\n font-style: italic;\n}\n.yfm dl dd {\n margin-bottom: 15px;\n padding: 0 15px;\n}\n.yfm dd {\n margin-left: 0;\n}\n.yfm ul,\n.yfm ol {\n padding-left: 2.2em;\n}\n.yfm ul ul,\n.yfm ul ol,\n.yfm ol ol,\n.yfm ol ul {\n margin-top: 0;\n margin-bottom: 0;\n}\n.yfm li {\n word-wrap: break-word;\n}\n.yfm li + li {\n margin-block: var(--yfm-list-item-margin-block, 0.33em 0);\n}\n.yfm li p,\n.yfm li blockquote {\n margin-block: var(--yfm-list-text-margin-block, 0 15px);\n}\n.yfm li > p:only-child,\n.yfm li > blockquote:only-child {\n margin-block: var(--yfm-list-text-only-margin-block, 0);\n}\n@supports selector(:has(br)) {\n .yfm li > p:only-child:has(br),\n .yfm li > blockquote:only-child:has(br) {\n margin-block: var(--yfm-list-text-margin-block, 0 15px);\n }\n}\n.yfm code {\n padding: 0.1em 0.4em 0.15em;\n background-color: var(--yfm-color-inline-code-background);\n border-radius: 4px;\n font-size: 0.875em;\n white-space: pre-wrap;\n color: var(--yfm-color-inline-code);\n tab-size: var(--yfm-tab-size-code, inherit);\n}\n.yfm pre {\n word-wrap: normal;\n}\n.yfm table code {\n white-space: nowrap;\n}\n.yfm pre * code {\n display: inline;\n padding: 0;\n margin: 0;\n overflow: visible;\n word-wrap: normal;\n background-color: transparent;\n border: 0;\n color: var(--yfm-color-text);\n}\n.yfm pre > code {\n display: block;\n padding: 16px;\n overflow: auto;\n background-color: var(--yfm-color-code-background);\n color: var(--yfm-color-text);\n white-space: pre;\n}\n.yfm sup,\n.yfm sub {\n line-height: 0;\n}\n.yfm .visually-hidden {\n position: absolute;\n overflow: hidden;\n clip: rect(0 0 0 0);\n width: 1px;\n height: 1px;\n margin: -1px;\n padding: 0;\n white-space: nowrap;\n border: 0;\n clip-path: inset(100%);\n user-select: none;\n}\n\n.yfm h1 .yfm-anchor, .yfm h2 .yfm-anchor, .yfm h3 .yfm-anchor, .yfm h4 .yfm-anchor, .yfm h5 .yfm-anchor, .yfm h6 .yfm-anchor {\n display: inline-block;\n width: 24px;\n padding-right: 4px;\n margin-left: -24px;\n float: left;\n text-align: center;\n font-size: 18px;\n}\n.yfm h1 .yfm-anchor:focus::before, .yfm h2 .yfm-anchor:focus::before, .yfm h3 .yfm-anchor:focus::before, .yfm h4 .yfm-anchor:focus::before, .yfm h5 .yfm-anchor:focus::before, .yfm h6 .yfm-anchor:focus::before {\n opacity: 1;\n}\n.yfm h1 .yfm-anchor::before, .yfm h2 .yfm-anchor::before, .yfm h3 .yfm-anchor::before, .yfm h4 .yfm-anchor::before, .yfm h5 .yfm-anchor::before, .yfm h6 .yfm-anchor::before {\n content: \"#\";\n opacity: 0;\n}\n.yfm h1:hover .yfm-anchor::before, .yfm h2:hover .yfm-anchor::before, .yfm h3:hover .yfm-anchor::before, .yfm h4:hover .yfm-anchor::before, .yfm h5:hover .yfm-anchor::before, .yfm h6:hover .yfm-anchor::before {\n opacity: 1;\n}\n.yfm table h1 .yfm-anchor, .yfm table h2 .yfm-anchor, .yfm table h3 .yfm-anchor, .yfm table h4 .yfm-anchor, .yfm table h5 .yfm-anchor, .yfm table h6 .yfm-anchor {\n width: 1em;\n margin-left: -1em;\n padding-right: 0;\n}\n.yfm .yfm-tabs .yfm-anchor::before {\n position: absolute;\n padding-right: 2px;\n}\n\n.yfm .hljs {\n display: block;\n overflow-x: auto;\n padding: 16px;\n background: var(--yfm-color-hljs-background);\n}\n.yfm .hljs,\n.yfm .hljs-subst {\n color: var(--yfm-color-hljs-subst);\n}\n.yfm .hljs-comment {\n color: var(--yfm-color-hljs-comment);\n}\n.yfm .hljs-keyword,\n.yfm .hljs-attribute,\n.yfm .hljs-selector-tag,\n.yfm .hljs-meta-keyword,\n.yfm .hljs-doctag,\n.yfm .hljs-name {\n font-weight: bold;\n}\n.yfm .hljs-type,\n.yfm .hljs-string,\n.yfm .hljs-number,\n.yfm .hljs-selector-id,\n.yfm .hljs-selector-class,\n.yfm .hljs-quote,\n.yfm .hljs-template-tag,\n.yfm .hljs-deletion {\n color: var(--yfm-color-hljs-deletion);\n}\n.yfm .hljs-title,\n.yfm .hljs-section {\n color: var(--yfm-color-hljs-section);\n font-weight: bold;\n}\n.yfm .hljs-regexp,\n.yfm .hljs-symbol,\n.yfm .hljs-variable,\n.yfm .hljs-template-variable,\n.yfm .hljs-link,\n.yfm .hljs-selector-attr,\n.yfm .hljs-selector-pseudo {\n color: var(--yfm-color-hljs-pseudo);\n}\n.yfm .hljs-literal {\n color: var(--yfm-color-hljs-literal);\n}\n.yfm .hljs-built_in,\n.yfm .hljs-bullet,\n.yfm .hljs-code,\n.yfm .hljs-addition {\n color: var(--yfm-color-hljs-addition);\n}\n.yfm .hljs-meta {\n color: var(--yfm-color-hljs-meta);\n}\n.yfm .hljs-meta-string {\n color: var(--yfm-color-hljs-meta-string);\n}\n.yfm .hljs-emphasis {\n font-style: italic;\n}\n.yfm .hljs-strong {\n font-weight: bold;\n}\n\n.yfm-clipboard {\n position: relative;\n}\n.yfm-clipboard:hover .yfm-clipboard-button {\n opacity: 1;\n min-height: 20px;\n min-width: 20px;\n}\n.yfm-clipboard > pre {\n border-radius: 10px;\n overflow: hidden;\n}\n.yfm-clipboard-button {\n position: absolute;\n top: 16px;\n right: 16px;\n z-index: 1;\n opacity: 0;\n background: none;\n color: inherit;\n border: none;\n padding: 0;\n font: inherit;\n cursor: pointer;\n}\n.yfm-clipboard-button:focus {\n opacity: 1;\n}\n.yfm-clipboard-icon {\n pointer-events: none;\n}\n/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VSb290IjoiL2hvbWUvcnVubmVyL3dvcmsvdHJhbnNmb3JtL3RyYW5zZm9ybS9zcmMvc2NzcyIsInNvdXJjZXMiOlsiX2NvbW1vbi5zY3NzIiwiX2xpc3RzLnNjc3MiLCJwcml2YXRlLnNjc3MiLCJicmFuZC5zY3NzIiwiX2FuY2hvci5zY3NzIiwiX2hpZ2hsaWdodC5zY3NzIiwiX2NvZGUuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtBQzZDUTtFQUNJO0VBQ0E7O0FBRUE7RUFDSSxtQkFSQTs7QUFVQTtFQUNJOztBQVJaO0VBQ0k7RUFDQTs7QUFFQTtFQUNJLG1CQVJBOztBQVVBO0VBQ0k7O0FBUlo7RUFDSTtFQUNBOztBQUVBO0VBQ0ksbUJBUkE7O0FBVUE7RUFDSTs7QUFSWjtFQUNJO0VBQ0E7O0FBRUE7RUFDSSxtQkFSQTs7QUFVQTtFQUNJOztBQVJaO0VBQ0k7RUFDQTs7QUFFQTtFQUNJLG1CQVJBOztBQVVBO0VBQ0k7O0FBUlo7RUFDSTtFQUNBOztBQUVBO0VBQ0ksbUJBUkE7O0FBVUE7RUFDSTs7QUFVaEI7QUFBQTtBQUFBO0VBR0k7O0FBRUE7QUFBQTtBQUFBO0VBQ0k7O0FBRUE7QUFBQTtBQUFBO0VBQ0k7OztBRHhEaEI7RUVmSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUNBO0VDMUNBO0VBRUE7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUVBO0VBRUE7RUFFQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBQ0E7RUgzQkE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0FBa1dBO0FBQUE7O0FBQUE7QUFBQTtBQUFBO0VBMEJBO0FBQUE7RUFFQTtBQUFBOztBQTVYQTtFQUNJOztBQUdKO0VBQ0k7O0FBR0o7RUFDSTs7QUFHSjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7RUFNSTtFQUNBOztBQUdKO0VBQ0k7RUFDQTs7QUFHSjtFQUNJO0VBQ0E7O0FBR0o7RUFDSTtFQUNBOztBQUdKO0VBQ0k7RUFDQTs7QUFHSjtFQUNJO0VBQ0E7O0FBR0o7RUFDSTtFQUNBOztBQUdKO0VBQ0k7RUFDQTtFQUNBOztBQUVBO0VBRUk7O0FBR0o7RUFDSTs7QUFJUjtFQUNJOztBQUdKO0FBQUE7RUFFSTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0FBQUE7RUFDSTs7QUFHSjtBQUFBO0VBQ0k7O0FBSVI7RUFDSTtFQUNBOztBQUdKO0VBQ0k7O0FBR0o7RUFDSTs7QUFHSjtFQUNJOztBQUdKO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0VBT0k7RUFDQTs7QUFNQTtBQUFBO0FBQUE7RUFDSTs7QUFJUjtBQUFBO0FBQUE7RUFHSTtFQUNBO0VBQ0E7O0FBR0o7RUFDSTtFQUNBO0VBRUE7RUFDQTtFQUNBOztBQUVBO0VBQ0k7RUFDQTtFQUVBO0VBQ0E7O0FBSVI7RUFDSTtFQUVBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtBQUFBO0VBRUk7O0FBSUE7QUFBQTtFQUVJOztBQUtKO0FBQUE7RUFFSTs7QUFJUjtBQUFBO0VBRUk7RUFDQTtFQUNBO0VBQ0E7O0FBbE5SO0FBQUE7RUFDSTs7QUFHSjtBQUFBO0VBQ0k7O0FBa05BO0VBQ0k7RUFDQTs7QUFHSjtFQUNJO0VBQ0E7O0FBR0o7QUFBQTtFQUVJOztBQUVKO0FBQUE7RUFFSTs7QUFJUjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBOztBQUVBO0VBQ0k7RUFDQTs7QUFHSjtFQUNJO0VBQ0E7RUFDQTs7QUFJUjtFQUNJO0VBQ0E7RUFDQTs7QUFwUUo7RUFDSTs7QUFHSjtFQUNJOztBQW9RSjtFQUNJOztBQTFRSjtFQUNJOztBQUdKO0VBQ0k7O0FBeVFBO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7O0FBR0o7RUFDSTtFQUNBOztBQUlSO0VBQ0k7O0FBR0o7QUFBQTtFQUVJOztBQUdKO0FBQUE7QUFBQTtBQUFBO0VBSUk7RUFDQTs7QUFHSjtFQUNJOztBQUdKO0VBQ0k7O0FBSUE7QUFBQTtFQUVJOztBQUdKO0FBQUE7RUFFSTs7QUFHSjtFQUNJO0FBQUE7SUFFSTs7O0FBS1o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHSjtFQUNJOztBQUdKO0VBQ0k7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUVBOztBQUdKO0FBQUE7RUFFSTs7QUFTSjtFQUNJO0VBRUE7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUVBO0VBRUE7RUFFQTtFQUVBO0VBQ0E7OztBSWhaQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBOztBQUdJO0VBQ0k7O0FBSVI7RUFDSTtFQUNBOztBQUlSO0VBQ0k7O0FBTUE7RUFDSTtFQUNBO0VBQ0E7O0FBTVI7RUFDSTtFQUNBOzs7QUN6Q1I7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7QUFHSjtBQUFBO0VBRUk7O0FBR0o7RUFDSTs7QUFHSjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7RUFNSTs7QUFHSjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0VBUUk7O0FBR0o7QUFBQTtFQUVJO0VBQ0E7O0FBR0o7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7RUFPSTs7QUFHSjtFQUNJOztBQUdKO0FBQUE7QUFBQTtBQUFBO0VBSUk7O0FBR0o7RUFDSTs7QUFHSjtFQUNJOztBQUdKO0VBQ0k7O0FBR0o7RUFDSTs7O0FDNUVKO0VBQ0k7O0FBR0k7RUFDSTtFQUNBO0VBQ0E7O0FBSVI7RUFDSTtFQUNBOztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUdBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtFQUNJOztBQUlSO0VBQ0kiLCJzb3VyY2VzQ29udGVudCI6WyIvKiBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnQgKi9cblxuQGltcG9ydCAncHJpdmF0ZSc7XG5AaW1wb3J0ICdicmFuZCc7XG5AaW1wb3J0ICdsaXN0cyc7XG5cbkBtaXhpbiByZW1vdmVNYXJnaW5Gb3JFZGdlQ2hpbGRyZW4ge1xuICAgICYgPiAqOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICB9XG5cbiAgICAmID4gKjpsYXN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG59XG5cbi55Zm0ge1xuICAgIEBpbmNsdWRlIHByaXZhdGUtYnJhbmQoKTtcbiAgICBAaW5jbHVkZSBicmFuZCgpO1xuXG4gICAgZm9udC1mYW1pbHk6IHZhcigtLXlmbS1mb250LWZhbWlseS1zYW5zKTtcbiAgICBmb250LXNpemU6IDE1cHg7XG4gICAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gICAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICAgIGNvbG9yOiB2YXIoLS15Zm0tY29sb3ItdGV4dCk7XG4gICAgdGFiLXNpemU6IHZhcigtLXlmbS10YWItc2l6ZSwgaW5oZXJpdCk7XG5cbiAgICAqIHtcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICB9XG5cbiAgICAmID4gKjpub3QoaDIpOm5vdChoMyk6bm90KGg0KTpub3QoaDUpOm5vdChoNik6Zmlyc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgJiA+ICo6bGFzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICBoMSxcbiAgICBoMixcbiAgICBoMyxcbiAgICBoNCxcbiAgICBoNSxcbiAgICBoNiB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgfVxuXG4gICAgaDEge1xuICAgICAgICBmb250LXNpemU6IDMycHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiA0MHB4O1xuICAgIH1cblxuICAgIGgyIHtcbiAgICAgICAgZm9udC1zaXplOiAyNHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMjhweDtcbiAgICB9XG5cbiAgICBoMyB7XG4gICAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDI0cHg7XG4gICAgfVxuXG4gICAgaDQge1xuICAgICAgICBmb250LXNpemU6IDE3cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICAgIH1cblxuICAgIGg1IHtcbiAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMjBweDtcbiAgICB9XG5cbiAgICBoNiB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE4cHg7XG4gICAgfVxuXG4gICAgYSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICBjb2xvcjogdmFyKC0teWZtLWNvbG9yLWxpbmspO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgICAgICAgJjpob3ZlcixcbiAgICAgICAgJjphY3RpdmUge1xuICAgICAgICAgICAgY29sb3I6IHZhcigtLXlmbS1jb2xvci1saW5rLWhvdmVyKTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6bm90KFtocmVmXSkge1xuICAgICAgICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBzdHJvbmcge1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgIH1cblxuICAgIGltZyxcbiAgICBzdmcge1xuICAgICAgICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICBtYXgtaGVpZ2h0OiBmaXQtY29udGVudDtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXG4gICAgICAgICZbYWxpZ249J3JpZ2h0J10ge1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgJlthbGlnbj0nbGVmdCddIHtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBpbWcge1xuICAgICAgICBvYmplY3QtZml0OiBjb250YWluO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS15Zm0tY29sb3ItYmFzZSk7XG4gICAgfVxuXG4gICAgc3ZnIHtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgIH1cblxuICAgIC5rYXRleCBzdmcge1xuICAgICAgICBoZWlnaHQ6IGluaXRpYWw7XG4gICAgfVxuXG4gICAgaW1nICsgc21hbGwge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICBwLFxuICAgIGJsb2NrcXVvdGUsXG4gICAgdWwsXG4gICAgb2wsXG4gICAgZGwsXG4gICAgdGFibGUsXG4gICAgcHJlIHtcbiAgICAgICAgbWFyZ2luLWJsb2NrOiB2YXIoLS15Zm0tdGV4dC1ibG9jay1tYXJnaW4tYmxvY2ssIDAgMTVweCk7XG4gICAgICAgIG1hcmdpbi1pbmxpbmU6IHZhcigtLXlmbS10ZXh0LWJsb2NrLW1hcmdpbi1pbmxpbmUsIDApO1xuICAgIH1cblxuICAgIHVsLFxuICAgIG9sLFxuICAgIGRsIHtcbiAgICAgICAgJiBwcmUge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMTVweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGNvZGUsXG4gICAga2JkLFxuICAgIHByZSB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiB2YXIoLS15Zm0tZm9udC1mYW1pbHktbW9ub3NwYWNlKTtcbiAgICAgICAgZm9udC1zaXplOiAxZW07XG4gICAgICAgIGZvbnQtZmVhdHVyZS1zZXR0aW5nczogbm9ybWFsO1xuICAgIH1cblxuICAgIGlucHV0IHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBvdmVyZmxvdzogdmlzaWJsZTtcblxuICAgICAgICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgICAgICAgZm9udC1zaXplOiBpbmhlcml0O1xuICAgICAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcblxuICAgICAgICAmW3R5cGU9J2NoZWNrYm94J10ge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgdG9wOiAxcHg7XG5cbiAgICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgdGFibGUge1xuICAgICAgICBjb2xvcjogdmFyKC0teWZtLWNvbG9yLXRhYmxlKTtcblxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIG92ZXJmbG93OiBhdXRvO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHotaW5kZXg6IDE7XG5cbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0teWZtLWNvbG9yLWJvcmRlcik7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgICAgICAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgICAgICAgYm9yZGVyLXNwYWNpbmc6IDA7XG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLXlmbS1jb2xvci1iYXNlKTtcblxuICAgICAgICB0aGVhZCxcbiAgICAgICAgdHI6bnRoLWNoaWxkKDJuKSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS15Zm0tY29sb3ItdGFibGUtcm93LWJhY2tncm91bmQpO1xuICAgICAgICB9XG5cbiAgICAgICAgdHI6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgdGQsXG4gICAgICAgICAgICB0aCB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXRvcDogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHRyOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgdGQsXG4gICAgICAgICAgICB0aCB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHRoLFxuICAgICAgICB0ZCB7XG4gICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDIwcHg7XG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS15Zm0tY29sb3ItYm9yZGVyKTtcblxuICAgICAgICAgICAgQGluY2x1ZGUgcmVtb3ZlTWFyZ2luRm9yRWRnZUNoaWxkcmVuKCk7XG4gICAgICAgIH1cblxuICAgICAgICB0ZCB7XG4gICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoIHtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICB9XG5cbiAgICAgICAgdHIgdGQ6Zmlyc3QtY2hpbGQsXG4gICAgICAgIHRyIHRoOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgIGJvcmRlci1sZWZ0OiBub25lO1xuICAgICAgICB9XG4gICAgICAgIHRyIHRkOmxhc3QtY2hpbGQsXG4gICAgICAgIHRyIHRoOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiBub25lO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgaHIge1xuICAgICAgICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgICAgICAgaGVpZ2h0OiAwLjI1ZW07XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIG1hcmdpbjogMS41ZW0gMDtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS15Zm0tY29sb3ItYm9yZGVyKTtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgICB9XG5cbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgICAgICAgIGNsZWFyOiBib3RoO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgYmxvY2txdW90ZSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxMnB4O1xuICAgICAgICBib3JkZXItbGVmdDogM3B4IHNvbGlkIHZhcigtLXlmbS1jb2xvci1hY2NlbnQpO1xuXG4gICAgICAgIEBpbmNsdWRlIHJlbW92ZU1hcmdpbkZvckVkZ2VDaGlsZHJlbigpO1xuICAgIH1cblxuICAgIGRsIHtcbiAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICBAaW5jbHVkZSByZW1vdmVNYXJnaW5Gb3JFZGdlQ2hpbGRyZW4oKTtcblxuICAgICAgICBkdCB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gICAgICAgICAgICBmb250LXNpemU6IDFlbTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgICAgIH1cblxuICAgICAgICBkZCB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAgICAgICAgICAgcGFkZGluZzogMCAxNXB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgZGQge1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICB9XG5cbiAgICB1bCxcbiAgICBvbCB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMi4yZW07XG4gICAgfVxuXG4gICAgdWwgdWwsXG4gICAgdWwgb2wsXG4gICAgb2wgb2wsXG4gICAgb2wgdWwge1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cblxuICAgIGxpIHtcbiAgICAgICAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICAgIH1cblxuICAgIGxpICsgbGkge1xuICAgICAgICBtYXJnaW4tYmxvY2s6IHZhcigtLXlmbS1saXN0LWl0ZW0tbWFyZ2luLWJsb2NrLCAwLjMzZW0gMCk7XG4gICAgfVxuXG4gICAgbGkge1xuICAgICAgICBwLFxuICAgICAgICBibG9ja3F1b3RlIHtcbiAgICAgICAgICAgIG1hcmdpbi1ibG9jazogdmFyKC0teWZtLWxpc3QtdGV4dC1tYXJnaW4tYmxvY2ssIDAgMTVweCk7XG4gICAgICAgIH1cblxuICAgICAgICA+IHA6b25seS1jaGlsZCxcbiAgICAgICAgPiBibG9ja3F1b3RlOm9ubHktY2hpbGQge1xuICAgICAgICAgICAgbWFyZ2luLWJsb2NrOiB2YXIoLS15Zm0tbGlzdC10ZXh0LW9ubHktbWFyZ2luLWJsb2NrLCAwKTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBzdXBwb3J0cyBzZWxlY3Rvcig6aGFzKGJyKSkge1xuICAgICAgICAgICAgPiBwOm9ubHktY2hpbGQ6aGFzKGJyKSxcbiAgICAgICAgICAgID4gYmxvY2txdW90ZTpvbmx5LWNoaWxkOmhhcyhicikge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ibG9jazogdmFyKC0teWZtLWxpc3QtdGV4dC1tYXJnaW4tYmxvY2ssIDAgMTVweCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBjb2RlIHtcbiAgICAgICAgcGFkZGluZzogMC4xZW0gMC40ZW0gMC4xNWVtO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS15Zm0tY29sb3ItaW5saW5lLWNvZGUtYmFja2dyb3VuZCk7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICAgICAgZm9udC1zaXplOiAwLjg3NWVtO1xuICAgICAgICB3aGl0ZS1zcGFjZTogcHJlLXdyYXA7XG4gICAgICAgIGNvbG9yOiB2YXIoLS15Zm0tY29sb3ItaW5saW5lLWNvZGUpO1xuICAgICAgICB0YWItc2l6ZTogdmFyKC0teWZtLXRhYi1zaXplLWNvZGUsIGluaGVyaXQpO1xuICAgIH1cblxuICAgIHByZSB7XG4gICAgICAgIHdvcmQtd3JhcDogbm9ybWFsO1xuICAgIH1cblxuICAgIHRhYmxlIGNvZGUge1xuICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIH1cblxuICAgIHByZSAqIGNvZGUge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgICAgIHdvcmQtd3JhcDogbm9ybWFsO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICBjb2xvcjogdmFyKC0teWZtLWNvbG9yLXRleHQpO1xuICAgIH1cblxuICAgIHByZSA+IGNvZGUge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgcGFkZGluZzogMTZweDtcbiAgICAgICAgb3ZlcmZsb3c6IGF1dG87XG5cbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0teWZtLWNvbG9yLWNvZGUtYmFja2dyb3VuZCk7XG4gICAgICAgIGNvbG9yOiB2YXIoLS15Zm0tY29sb3ItdGV4dCk7XG5cbiAgICAgICAgd2hpdGUtc3BhY2U6IHByZTtcbiAgICB9XG5cbiAgICBzdXAsXG4gICAgc3ViIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDA7XG4gICAgfVxuXG4gICAgLypcbiAgICAgICAgSGlkZXMgZWxlbWVudCB2aXN1YWxseSwgYnV0IGxlYXZlcyBpdCB2aXNpYmxlIGZvciBzZWFyY2ggY3Jhd2xlcnMgYW5kIHNjcmVlbiByZWFkZXJzXG5cbiAgICAgICAgaHR0cHM6Ly93d3cuYTExeXByb2plY3QuY29tL3Bvc3RzLzIwMTMtMDEtMTEtaG93LXRvLWhpZGUtY29udGVudC9cbiAgICAgICAgaHR0cHM6Ly9odWdvZ2lyYXVkZWwuY29tLzIwMTYvMTAvMTMvY3NzLWhpZGUtYW5kLXNlZWsvXG4gICAgKi9cbiAgICAudmlzdWFsbHktaGlkZGVuIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuXG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIGNsaXA6IHJlY3QoMCAwIDAgMCk7XG5cbiAgICAgICAgd2lkdGg6IDFweDtcbiAgICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgICAgIG1hcmdpbjogLTFweDtcblxuICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgICAgICAgYm9yZGVyOiAwO1xuXG4gICAgICAgIGNsaXAtcGF0aDogaW5zZXQoMTAwJSk7XG4gICAgICAgIHVzZXItc2VsZWN0OiBub25lO1xuICAgIH1cblxuICAgIC0teWZtLWZvbnQtZmFtaWx5LW1vbm9zcGFjZTogJ01lbmxvJywgJ01vbmFjbycsICdDb25zb2xhcycsICdVYnVudHUgTW9ubycsICdMaWJlcmF0aW9uIE1vbm8nLFxuICAgICAgICAnRGVqYVZ1IFNhbnMgTW9ubycsICdDb3VyaWVyIE5ldycsICdDb3VyaWVyJywgbW9ub3NwYWNlO1xuICAgIC0teWZtLWZvbnQtZmFtaWx5LXNhbnM6ICdTZWdvZSBVSScsIGFyaWFsLCBoZWx2ZXRpY2EsIHNhbnMtc2VyaWYsICdBcHBsZSBDb2xvciBFbW9qaScsXG4gICAgICAgICdTZWdvZSBVSSBFbW9qaScsICdTZWdvZSBVSSBTeW1ib2wnO1xufVxuIiwiQHVzZSAnc2FzczpsaXN0JztcbkB1c2UgJ3Nhc3M6c3RyaW5nJztcblxuQGZ1bmN0aW9uIGdldC1jb3VudGVyLWlkZW50KCRkZXB0aCkge1xuICAgICRpZGVudDogaGllci1saXN0LWl0ZW07XG5cbiAgICBAZm9yICRpIGZyb20gMCB0byAkZGVwdGgge1xuICAgICAgICAkaWRlbnQ6IHN1Yi0jeyRpZGVudH07XG4gICAgfVxuXG4gICAgQHJldHVybiAkaWRlbnQ7XG59XG5cbkBmdW5jdGlvbiBnZXQtc2VsZWN0b3IoJGRlcHRoKSB7XG4gICAgJHNlbGVjdG9yOiBvbDtcblxuICAgIEBmb3IgJGkgZnJvbSAwIHRvICRkZXB0aCB7XG4gICAgICAgICRzZWxlY3RvcjogJyN7JHNlbGVjdG9yfSA+IGxpID4gb2wnO1xuICAgIH1cblxuICAgIEByZXR1cm4gJHNlbGVjdG9yO1xufVxuXG5AZnVuY3Rpb24gZ2V0LW1hcmtlci1jb250ZW50KCRpZGVudHMpIHtcbiAgICAkbGVuZ3RoOiBsaXN0Lmxlbmd0aCgkaWRlbnRzKTtcbiAgICAkY29udGVudDogJyc7XG5cbiAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRsZW5ndGgge1xuICAgICAgICBAaWYgJGkgPiAxIHtcbiAgICAgICAgICAgICRjb250ZW50OiAnI3skY29udGVudH0gXCIuXCInO1xuICAgICAgICB9XG5cbiAgICAgICAgJGNvbnRlbnQ6ICcjeyRjb250ZW50fSBjb3VudGVyKCN7bGlzdC5udGgoJGlkZW50cywgJGkpfSknO1xuICAgIH1cblxuICAgIEByZXR1cm4gI3skY29udGVudH0gJy4gJztcbn1cblxuQG1peGluIGhpZXItbGlzdCgkbWF4LWRlcHRoKSB7XG4gICAgJGlkZW50LXBhdGg6ICgpO1xuXG4gICAgQGZvciAkaSBmcm9tIDAgdGhyb3VnaCAkbWF4LWRlcHRoIHtcbiAgICAgICAgJGlkZW50OiBnZXQtY291bnRlci1pZGVudCgkaSk7XG4gICAgICAgICRpZGVudC1wYXRoOiBsaXN0LmFwcGVuZCgkaWRlbnQtcGF0aCwgJGlkZW50KTtcblxuICAgICAgICAmICN7Z2V0LXNlbGVjdG9yKCRpKX0ge1xuICAgICAgICAgICAgLS1oaWVyLWxpc3Qtc3RhcnQ6IDA7XG4gICAgICAgICAgICBjb3VudGVyLXJlc2V0OiAjeyRpZGVudH0gdmFyKC0taGllci1saXN0LXN0YXJ0KTtcblxuICAgICAgICAgICAgJiA+IGxpIHtcbiAgICAgICAgICAgICAgICBjb3VudGVyLWluY3JlbWVudDogJGlkZW50O1xuXG4gICAgICAgICAgICAgICAgJjo6bWFya2VyIHtcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogZ2V0LW1hcmtlci1jb250ZW50KCRpZGVudC1wYXRoKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi55Zm0ge1xuICAgIEBpbmNsdWRlIGhpZXItbGlzdCg1KTtcblxuICAgICYueWZtX25vLWxpc3QtcmVzZXQgb2wsXG4gICAgb2wueWZtX25vLWxpc3QtcmVzZXQsXG4gICAgLnlmbV9uby1saXN0LXJlc2V0IG9sIHtcbiAgICAgICAgY291bnRlci1yZXNldDogbGlzdC1pdGVtO1xuXG4gICAgICAgICYgbGkge1xuICAgICAgICAgICAgY291bnRlci1pbmNyZW1lbnQ6IHVuc2V0O1xuXG4gICAgICAgICAgICAmOjptYXJrZXIge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IHVuc2V0O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuIiwiQG1peGluIHByaXZhdGUtYnJhbmQge1xuICAgIC0teWZtLWNvbG9yLXRleHQtcHJpdmF0ZTogcmdiYSgwLCAwLCAwLCAwLjcpO1xuICAgIC0teWZtLWNvbG9yLWxpbmstcHJpdmF0ZTogIzAyN2JmMztcbiAgICAtLXlmbS1jb2xvci1saW5rLWhvdmVyLXByaXZhdGU6ICMwMDQwODA7XG4gICAgLS15Zm0tY29sb3ItYmFzZS1wcml2YXRlOiAjZmZmZmZmO1xuICAgIC0teWZtLWNvbG9yLXRhYmxlLXByaXZhdGU6ICMzMzM7XG4gICAgLS15Zm0tY29sb3ItYm9yZGVyLXByaXZhdGU6IHJnYmEoMCwgMCwgMCwgMC4wNyk7XG4gICAgLS15Zm0tY29sb3ItdGFibGUtcm93LWJhY2tncm91bmQtcHJpdmF0ZTogcmdiYSgwLCAwLCAwLCAwLjAyKTtcbiAgICAtLXlmbS1jb2xvci1hY2NlbnQtcHJpdmF0ZTogIzAyN2JmMztcblxuICAgIC0teWZtLWNvbG9yLWlubGluZS1jb2RlLXByaXZhdGU6IHJnYmEoNTksIDk2LCAxMjgsIDEpO1xuICAgIC0teWZtLWNvbG9yLWlubGluZS1jb2RlLWJhY2tncm91bmQtcHJpdmF0ZTogcmdiYSgxMDcsIDEzMiwgMTUzLCAwLjEyKTtcbiAgICAtLXlmbS1jb2xvci1jb2RlLWJhY2tncm91bmQtcHJpdmF0ZTogcmdiYSgxMDcsIDEzMiwgMTUzLCAwLjEyKTtcblxuICAgIC0teWZtLWNvbG9yLWhsanMtYmFja2dyb3VuZC1wcml2YXRlOiByZ2JhKDEwNywgMTMyLCAxNTMsIDAuMTIpO1xuICAgIC0teWZtLWNvbG9yLWhsanMtc3Vic3QtcHJpdmF0ZTogIzQ0NDtcbiAgICAtLXlmbS1jb2xvci1obGpzLWNvbW1lbnQtcHJpdmF0ZTogIzg4ODg4ODtcbiAgICAtLXlmbS1jb2xvci1obGpzLWRlbGV0aW9uLXByaXZhdGU6ICM4ODAwMDA7XG4gICAgLS15Zm0tY29sb3ItaGxqcy1zZWN0aW9uLXByaXZhdGU6ICM4ODAwMDA7XG4gICAgLS15Zm0tY29sb3ItaGxqcy1wc2V1ZG8tcHJpdmF0ZTogI2JjNjA2MDtcbiAgICAtLXlmbS1jb2xvci1obGpzLWxpdGVyYWwtcHJpdmF0ZTogIzc4YTk2MDtcbiAgICAtLXlmbS1jb2xvci1obGpzLWFkZGl0aW9uLXByaXZhdGU6ICMzOTczMDA7XG4gICAgLS15Zm0tY29sb3ItaGxqcy1tZXRhLXByaXZhdGU6ICMxZjcxOTk7XG4gICAgLS15Zm0tY29sb3ItaGxqcy1tZXRhLXN0cmluZy1wcml2YXRlOiAjNGQ5OWJmO1xuXG4gICAgLS15Zm0tY29sb3Itbm90ZS10aXAtcHJpdmF0ZTogIzU2YmQ2NztcbiAgICAtLXlmbS1jb2xvci1ub3RlLXRpcC1iYWNrZ3JvdW5kLXByaXZhdGU6IHJnYmEoNjMsIDIwMSwgNDYsIDAuMSk7XG4gICAgLS15Zm0tY29sb3Itbm90ZS13YXJuaW5nLXByaXZhdGU6ICNmMTk1MTg7XG4gICAgLS15Zm0tY29sb3Itbm90ZS13YXJuaW5nLWJhY2tncm91bmQtcHJpdmF0ZTogcmdiYSgyNTUsIDEzNiwgMCwgMC4xNSk7XG4gICAgLS15Zm0tY29sb3Itbm90ZS1pbXBvcnRhbnQtcHJpdmF0ZTogI2ZmNDY0NTtcbiAgICAtLXlmbS1jb2xvci1ub3RlLWltcG9ydGFudC1iYWNrZ3JvdW5kLXByaXZhdGU6IHJnYmEoMjM1LCA1MCwgMzgsIDAuMDgpO1xuICAgIC0teWZtLWNvbG9yLW5vdGUtaW5mby1wcml2YXRlOiAjMDI3YmYzO1xuICAgIC0teWZtLWNvbG9yLW5vdGUtaW5mby1iYWNrZ3JvdW5kLXByaXZhdGU6IHJnYmEoMiwgMTIzLCAyNDMsIDAuMDgpO1xuXG4gICAgLS15Zm0tY29sb3ItdGVybS10aXRsZS1wcml2YXRlOiAjMDI3YmYzO1xuICAgIC0teWZtLWNvbG9yLXRlcm0tdGl0bGUtaG92ZXItcHJpdmF0ZTogIzAwNDA4MDtcbiAgICAtLXlmbS1jb2xvci10ZXJtLWRmbi1iYWNrZ3JvdW5kLXByaXZhdGU6IHJnYigyNTUsIDI1NSwgMjU1KTtcbiAgICAtLXlmbS1jb2xvci10ZXJtLWRmbi1zaGFkb3ctcHJpdmF0ZTogcmdiYSgwLCAwLCAwLCAwLjE1KTtcbiAgICAtLXlmbS1jb2xvci10ZXJtLWRmbi1wcmVzdWRvLXNoYWRvdy1wcml2YXRlOiByZ2IoMjI5LCAyMjksIDIyOSk7XG5cbiAgICAtLXlmbS1jb2xvci1tb2RhbC1jb250ZW50LXByaXZhdGU6IHJnYigyNTUsIDI1NSwgMjU1KTtcbiAgICAtLXlmbS1jb2xvci1tb2RhbC1hY3Rpb25zLWhvdmVyLXByaXZhdGU6IHJnYmEoMCwgMCwgMCwgMC4wNSk7XG4gICAgLS15Zm0tY29sb3ItbW9kYWwtd2lkZS1jb250ZW50LXByaXZhdGU6IHJnYmEoMCwgMCwgMCwgMC44NSk7XG4gICAgLS15Zm0tY29sb3ItbW9kYWwtd2lkZS1jb250ZW50LW92ZXJsYXktcHJpdmF0ZTogcmdiKDAsIDAsIDApO1xufVxuIiwiQG1peGluIGJyYW5kIHtcbiAgICAtLXlmbS1jb2xvci1iYXNlOiB2YXIoLS15Zm0tY29sb3ItYmFzZS1wcml2YXRlKTtcblxuICAgIC0teWZtLWNvbG9yLXRleHQ6IHZhcigtLXlmbS1jb2xvci10ZXh0LXByaXZhdGUpO1xuICAgIC0teWZtLWNvbG9yLWxpbms6IHZhcigtLXlmbS1jb2xvci1saW5rLXByaXZhdGUpO1xuICAgIC0teWZtLWNvbG9yLWxpbmstaG92ZXI6IHZhcigtLXlmbS1jb2xvci1saW5rLWhvdmVyLXByaXZhdGUpO1xuXG4gICAgLS15Zm0tY29sb3ItdGFibGU6IHZhcigtLXlmbS1jb2xvci10YWJsZS1wcml2YXRlKTtcbiAgICAtLXlmbS1jb2xvci10YWJsZS1yb3ctYmFja2dyb3VuZDogdmFyKC0teWZtLWNvbG9yLXRhYmxlLXJvdy1iYWNrZ3JvdW5kLXByaXZhdGUpO1xuXG4gICAgLS15Zm0tY29sb3ItYm9yZGVyOiB2YXIoLS15Zm0tY29sb3ItYm9yZGVyLXByaXZhdGUpO1xuXG4gICAgLS15Zm0tY29sb3ItYWNjZW50OiB2YXIoLS15Zm0tY29sb3ItYWNjZW50LXByaXZhdGUpO1xuXG4gICAgLS15Zm0tY29sb3ItaW5saW5lLWNvZGU6IHZhcigtLXlmbS1jb2xvci1pbmxpbmUtY29kZS1wcml2YXRlKTtcbiAgICAtLXlmbS1jb2xvci1pbmxpbmUtY29kZS1iYWNrZ3JvdW5kOiB2YXIoLS15Zm0tY29sb3ItaW5saW5lLWNvZGUtYmFja2dyb3VuZC1wcml2YXRlKTtcbiAgICAtLXlmbS1jb2xvci1jb2RlLWJhY2tncm91bmQ6IHZhcigtLXlmbS1jb2xvci1jb2RlLWJhY2tncm91bmQtcHJpdmF0ZSk7XG5cbiAgICAtLXlmbS1jb2xvci1obGpzLWJhY2tncm91bmQ6IHZhcigtLXlmbS1jb2xvci1obGpzLWJhY2tncm91bmQtcHJpdmF0ZSk7XG4gICAgLS15Zm0tY29sb3ItaGxqcy1zdWJzdDogdmFyKC0teWZtLWNvbG9yLWhsanMtc3Vic3QtcHJpdmF0ZSk7XG4gICAgLS15Zm0tY29sb3ItaGxqcy1jb21tZW50OiB2YXIoLS15Zm0tY29sb3ItaGxqcy1jb21tZW50LXByaXZhdGUpO1xuICAgIC0teWZtLWNvbG9yLWhsanMtZGVsZXRpb246IHZhcigtLXlmbS1jb2xvci1obGpzLWRlbGV0aW9uLXByaXZhdGUpO1xuICAgIC0teWZtLWNvbG9yLWhsanMtc2VjdGlvbjogdmFyKC0teWZtLWNvbG9yLWhsanMtc2VjdGlvbi1wcml2YXRlKTtcbiAgICAtLXlmbS1jb2xvci1obGpzLXBzZXVkbzogdmFyKC0teWZtLWNvbG9yLWhsanMtcHNldWRvLXByaXZhdGUpO1xuICAgIC0teWZtLWNvbG9yLWhsanMtbGl0ZXJhbDogdmFyKC0teWZtLWNvbG9yLWhsanMtbGl0ZXJhbC1wcml2YXRlKTtcbiAgICAtLXlmbS1jb2xvci1obGpzLWFkZGl0aW9uOiB2YXIoLS15Zm0tY29sb3ItaGxqcy1hZGRpdGlvbi1wcml2YXRlKTtcbiAgICAtLXlmbS1jb2xvci1obGpzLW1ldGE6IHZhcigtLXlmbS1jb2xvci1obGpzLW1ldGEtcHJpdmF0ZSk7XG4gICAgLS15Zm0tY29sb3ItaGxqcy1tZXRhLXN0cmluZzogdmFyKC0teWZtLWNvbG9yLWhsanMtbWV0YS1zdHJpbmctcHJpdmF0ZSk7XG5cbiAgICAtLXlmbS1jb2xvci1ub3RlLXRpcDogdmFyKC0teWZtLWNvbG9yLW5vdGUtdGlwLXByaXZhdGUpO1xuICAgIC0teWZtLWNvbG9yLW5vdGUtdGlwLWJhY2tncm91bmQ6IHZhcigtLXlmbS1jb2xvci1ub3RlLXRpcC1iYWNrZ3JvdW5kLXByaXZhdGUpO1xuICAgIC0teWZtLWNvbG9yLW5vdGUtd2FybmluZzogdmFyKC0teWZtLWNvbG9yLW5vdGUtd2FybmluZy1wcml2YXRlKTtcbiAgICAtLXlmbS1jb2xvci1ub3RlLXdhcm5pbmctYmFja2dyb3VuZDogdmFyKC0teWZtLWNvbG9yLW5vdGUtd2FybmluZy1iYW