UNPKG

@diplodoc/transform

Version:

A simple transformer of text in YFM (Yandex Flavored Markdown) to HTML

4 lines 82.5 kB
{ "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%20niG6ms%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 .mermaid svg[id*='mermaid'] {\n max-height: none;\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 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:last-child,\n ul ol:last-child,\n ol ol:last-child,\n ol ul:last-child {\n margin-top: 0;\n margin-bottom: 0;\n }\n\n li {\n word-wrap: break-word;\n }\n\n li:first-child,\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-of-type,\n > blockquote:only-of-type,\n > p:first-child:has(+ ul),\n > p:first-child:has(+ ol) {\n margin-block: var(--yfm-list-text-only-margin-block, 0);\n }\n\n > p:last-child {\n margin-block: var(--yfm-list-text-last-margin-block, 0);\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 a code {\n color: 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 .yfm-line-number {\n display: inline-block;\n padding-right: 1em;\n color: var(--yfm-color-line-numbers, #666);\n user-select: none;\n }\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-table-row-header-background-private: rgba(247, 247, 247, 1);\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-code-background-hovered-private: rgba(107, 132, 153, 0.2);\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-table-row-header-background: var(--yfm-color-table-row-header-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-code-hovered-background: var(--yfm-color-code-hovered-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 .mermaid svg[id*=mermaid] {\n max-height: none;\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 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:last-child,\n.yfm ul ol:last-child,\n.yfm ol ol:last-child,\n.yfm ol ul:last-child {\n margin-top: 0;\n margin-bottom: 0;\n}\n.yfm li {\n word-wrap: break-word;\n}\n.yfm li:first-child,\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-of-type,\n.yfm li > blockquote:only-of-type,\n.yfm li > p:first-child:has(+ ul),\n.yfm li > p:first-child:has(+ ol) {\n margin-block: var(--yfm-list-text-only-margin-block, 0);\n}\n.yfm li > p:last-child {\n margin-block: var(--yfm-list-text-last-margin-block, 0);\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 a code {\n color: 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 pre > code .yfm-line-number {\n display: inline-block;\n padding-right: 1em;\n color: var(--yfm-color-line-numbers, #666);\n user-select: none;\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-clipboard-anchor,\n.yfm h2 .yfm-clipboard-anchor,\n.yfm h3 .yfm-clipboard-anchor,\n.yfm h4 .yfm-clipboard-anchor,\n.yfm h5 .yfm-clipboard-anchor,\n.yfm h6 .yfm-clipboard-anchor {\n background: none;\n color: var(--yfm-color-link);\n border: none;\n padding: 0;\n font: inherit;\n cursor: pointer;\n}\n.yfm h1 .yfm-clipboard-anchor:hover,\n.yfm h2 .yfm-clipboard-anchor:hover,\n.yfm h3 .yfm-clipboard-anchor:hover,\n.yfm h4 .yfm-clipboard-anchor:hover,\n.yfm h5 .yfm-clipboard-anchor:hover,\n.yfm h6 .yfm-clipboard-anchor:hover {\n color: var(--yfm-color-link-hover);\n}\n.yfm h1 .yfm-anchor,\n.yfm h1 .yfm-clipboard-anchor,\n.yfm h2 .yfm-anchor,\n.yfm h2 .yfm-clipboard-anchor,\n.yfm h3 .yfm-anchor,\n.yfm h3 .yfm-clipboard-anchor,\n.yfm h4 .yfm-anchor,\n.yfm h4 .yfm-clipboard-anchor,\n.yfm h5 .yfm-anchor,\n.yfm h5 .yfm-clipboard-anchor,\n.yfm h6 .yfm-anchor,\n.yfm h6 .yfm-clipboard-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,\n.yfm h1 .yfm-clipboard-anchor:focus::before,\n.yfm h2 .yfm-anchor:focus::before,\n.yfm h2 .yfm-clipboard-anchor:focus::before,\n.yfm h3 .yfm-anchor:focus::before,\n.yfm h3 .yfm-clipboard-anchor:focus::before,\n.yfm h4 .yfm-anchor:focus::before,\n.yfm h4 .yfm-clipboard-anchor:focus::before,\n.yfm h5 .yfm-anchor:focus::before,\n.yfm h5 .yfm-clipboard-anchor:focus::before,\n.yfm h6 .yfm-anchor:focus::before,\n.yfm h6 .yfm-clipboard-anchor:focus::before {\n opacity: 1;\n}\n.yfm h1 .yfm-anchor::before,\n.yfm h1 .yfm-clipboard-anchor::before,\n.yfm h2 .yfm-anchor::before,\n.yfm h2 .yfm-clipboard-anchor::before,\n.yfm h3 .yfm-anchor::before,\n.yfm h3 .yfm-clipboard-anchor::before,\n.yfm h4 .yfm-anchor::before,\n.yfm h4 .yfm-clipboard-anchor::before,\n.yfm h5 .yfm-anchor::before,\n.yfm h5 .yfm-clipboard-anchor::before,\n.yfm h6 .yfm-anchor::before,\n.yfm h6 .yfm-clipboard-anchor::before {\n content: \"#\";\n opacity: 0;\n}\n.yfm h1:hover .yfm-anchor::before,\n.yfm h1:hover .yfm-clipboard-anchor::before,\n.yfm h2:hover .yfm-anchor::before,\n.yfm h2:hover .yfm-clipboard-anchor::before,\n.yfm h3:hover .yfm-anchor::before,\n.yfm h3:hover .yfm-clipboard-anchor::before,\n.yfm h4:hover .yfm-anchor::before,\n.yfm h4:hover .yfm-clipboard-anchor::before,\n.yfm h5:hover .yfm-anchor::before,\n.yfm h5:hover .yfm-clipboard-anchor::before,\n.yfm h6:hover .yfm-anchor::before,\n.yfm h6:hover .yfm-clipboard-anchor::before {\n opacity: 1;\n}\n.yfm table h1 .yfm-anchor,\n.yfm table h1 .yfm-clipboard-anchor,\n.yfm table h2 .yfm-anchor,\n.yfm table h2 .yfm-clipboard-anchor,\n.yfm table h3 .yfm-anchor,\n.yfm table h3 .yfm-clipboard-anchor,\n.yfm table h4 .yfm-anchor,\n.yfm table h4 .yfm-clipboard-anchor,\n.yfm table h5 .yfm-anchor,\n.yfm table h5 .yfm-clipboard-anchor,\n.yfm table h6 .yfm-anchor,\n.yfm table h6 .yfm-clipboard-anchor {\n width: 1em;\n margin-left: -1em;\n padding-right: 0;\n}\n.yfm .yfm-tabs .yfm-anchor::before,\n.yfm .yfm-tabs .yfm-clipboard-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.yfm-clipboard-inline-code {\n transition: 0.3s;\n}\n.yfm-clipboard-inline-code:hover {\n cursor: pointer;\n background-color: var(--yfm-color-code-background-hovered-private);\n}\n/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VSb290IjoiL2hvbWUvcnVubmVyL3dvcmsvdHJhbnNmb3JtL3RyYW5zZm9ybS9zcmMvc2NzcyIsInNvdXJjZXMiOlsiX2NvbW1vbi5zY3NzIiwiX2xpc3RzLnNjc3MiLCJwcml2YXRlLnNjc3MiLCJicmFuZC5zY3NzIiwiX2FuY2hvci5zY3NzIiwiX2hpZ2hsaWdodC5zY3NzIiwiX2NvZGUuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTtBQzZDUTtFQUNJO0VBQ0E7O0FBRUE7RUFDSSxtQkFSQTs7QUFVQTtFQUNJOztBQVJaO0VBQ0k7RUFDQTs7QUFFQTtFQUNJLG1CQVJBOztBQVVBO0VBQ0k7O0FBUlo7RUFDSTtFQUNBOztBQUVBO0VBQ0ksbUJBUkE7O0FBVUE7RUFDSTs7QUFSWjtFQUNJO0VBQ0E7O0FBRUE7RUFDSSxtQkFSQTs7QUFVQTtFQUNJOztBQVJaO0VBQ0k7RUFDQTs7QUFFQTtFQUNJLG1CQVJBOztBQVVBO0VBQ0k7O0FBUlo7RUFDSTtFQUNBOztBQUVBO0VBQ0ksbUJBUkE7O0FBVUE7RUFDSTs7QUFVaEI7QUFBQTtBQUFBO0VBR0k7O0FBRUE7QUFBQTtBQUFBO0VBQ0k7O0FBRUE7QUFBQTtBQUFBO0VBQ0k7OztBRHhEaEI7RUVmSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFDQTtFQzVDQTtFQUVBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUVBO0VBRUE7RUFFQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFDQTtFSDdCQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7QUE2V0E7QUFBQTs7QUFBQTtBQUFBO0FBQUE7RUEwQkE7QUFBQTtFQUVBO0FBQUE7O0FBdllBO0VBQ0k7O0FBR0o7RUFDSTs7QUFHSjtFQUNJOztBQUdKO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtFQU1JO0VBQ0E7O0FBR0o7RUFDSTtFQUNBOztBQUdKO0VBQ0k7RUFDQTs7QUFHSjtFQUNJO0VBQ0E7O0FBR0o7RUFDSTtFQUNBOztBQUdKO0VBQ0k7RUFDQTs7QUFHSjtFQUNJO0VBQ0E7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7O0FBRUE7RUFFSTs7QUFHSjtFQUNJOztBQUlSO0VBQ0k7O0FBR0o7QUFBQTtFQUVJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7QUFBQTtFQUNJOztBQUdKO0FBQUE7RUFDSTs7QUFJUjtFQUNJOztBQUdKO0VBQ0k7RUFDQTs7QUFHSjtFQUNJOztBQUdKO0VBQ0k7O0FBR0o7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7RUFPSTtFQUNBOztBQU1BO0FBQUE7QUFBQTtFQUNJOztBQUlSO0FBQUE7QUFBQTtFQUdJO0VBQ0E7RUFDQTs7QUFHSjtFQUNJO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTtFQUNBO0VBRUE7RUFDQTs7QUFJUjtFQUNJO0VBRUE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBRUE7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0FBQUE7RUFFSTs7QUFJQTtBQUFBO0VBRUk7O0FBS0o7QUFBQTtFQUVJOztBQUlSO0FBQUE7RUFFSTtFQUNBO0VBQ0E7RUFDQTs7QUFsTlI7QUFBQTtFQUNJOztBQUdKO0FBQUE7RUFDSTs7QUFrTkE7RUFDSTtFQUNBOztBQUdKO0VBQ0k7RUFDQTs7QUFHSjtBQUFBO0VBRUk7O0FBRUo7QUFBQTtFQUVJOztBQUlSO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUVBO0VBQ0E7O0FBRUE7RUFDSTtFQUNBOztBQUdKO0VBQ0k7RUFDQTtFQUNBOztBQUlSO0VBQ0k7RUFDQTtFQUNBOztBQXBRSjtFQUNJOztBQUdKO0VBQ0k7O0FBb1FKO0VBQ0k7O0FBMVFKO0VBQ0k7O0FBR0o7RUFDSTs7QUF5UUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7QUFHSjtFQUNJO0VBQ0E7O0FBSVI7RUFDSTs7QUFHSjtBQUFBO0VBRUk7O0FBR0o7QUFBQTtBQUFBO0FBQUE7RUFJSTtFQUNBOztBQUdKO0VBQ0k7O0FBR0o7QUFBQTtFQUVJOztBQUlBO0FBQUE7RUFFSTs7QUFHSjtBQUFBO0FBQUE7QUFBQTtFQUlJOztBQUdKO0VBQ0k7O0FBSVI7RUFDSTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFHSjtFQUNJOztBQUdKO0VBQ0k7O0FBR0o7RUFDSTs7QUFHSjtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBR0o7RUFDSTtFQUNBO0VBQ0E7RUFFQTtFQUNBO0VBRUE7O0FBRUE7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7QUFJUjtBQUFBO0VBRUk7O0FBU0o7RUFDSTtFQUVBO0VBQ0E7RUFFQTtFQUNBO0VBQ0E7RUFFQTtFQUVBO0VBRUE7RUFFQTtFQUNBOzs7QUl0WkE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0VBRUk7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBOztBQUVBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtFQUNJOztBQUlSO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtFQUVJO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFFQTtFQUNBOztBQUdJO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtFQUNJOztBQUlSO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtFQUNJO0VBQ0E7O0FBS0o7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0VBRUk7O0FBWUo7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0VBRUk7RUFDQTtFQUNBOztBQU1SO0FBQUE7RUFFSTtFQUNBOzs7QUN2RVI7RUFDSTtFQUNBO0VBQ0E7RUFDQTs7QUFHSjtBQUFBO0VBRUk7O0FBR0o7RUFDSTs7QUFHSjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7RUFNSTs7QUFHSjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0VBUUk7O0FBR0o7QUFBQTtFQUVJO0VBQ0E7O0FBR0o7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7RUFPSTs7QUFHSjtFQUNJOztBQUdKO0FBQUE7QUFBQTtBQUFBO0VBSUk7O0FBR0o7RUFDSTs7QUFHSjtFQUNJOztBQUdKO0VBQ0k7O0FBR0o7RUFDSTs7O0FDNUVKO0VBQ0k7O0FBR0k7RUFDSTtFQUNBO0VBQ0E7O0FBSVI7RUFDSTtFQUNBOztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUdBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTs7QUFFQTtFQUNJOztBQUlSO0VBQ0k7O0FBR0o7RUFDSTs7QUFFQTtFQUNJO0VBQ0EiLCJzb3VyY2VzQ29udGVudCI6WyIvKiBzdHlsZWxpbnQtZGlzYWJsZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnQgKi9cblxuQGltcG9ydCAncHJpdmF0ZSc7XG5AaW1wb3J0ICdicmFuZCc7XG5AaW1wb3J0ICdsaXN0cyc7XG5cbkBtaXhpbiByZW1vdmVNYXJnaW5Gb3JFZGdlQ2hpbGRyZW4ge1xuICAgICYgPiAqOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICB9XG5cbiAgICAmID4gKjpsYXN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG59XG5cbi55Zm0ge1xuICAgIEBpbmNsdWRlIHByaXZhdGUtYnJhbmQoKTtcbiAgICBAaW5jbHVkZSBicmFuZCgpO1xuXG4gICAgZm9udC1mYW1pbHk6IHZhcigtLXlmbS1mb250LWZhbWlseS1zYW5zKTtcbiAgICBmb250LXNpemU6IDE1cHg7XG4gICAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gICAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICAgIGNvbG9yOiB2YXIoLS15Zm0tY29sb3ItdGV4dCk7XG4gICAgdGFiLXNpemU6IHZhcigtLXlmbS10YWItc2l6ZSwgaW5oZXJpdCk7XG5cbiAgICAqIHtcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICB9XG5cbiAgICAmID4gKjpub3QoaDIpOm5vdChoMyk6bm90KGg0KTpub3QoaDUpOm5vdChoNik6Zmlyc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgJiA+ICo6bGFzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICBoMSxcbiAgICBoMixcbiAgICBoMyxcbiAgICBoNCxcbiAgICBoNSxcbiAgICBoNiB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgfVxuXG4gICAgaDEge1xuICAgICAgICBmb250LXNpemU6IDMycHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiA0MHB4O1xuICAgIH1cblxuICAgIGgyIHtcbiAgICAgICAgZm9udC1zaXplOiAyNHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMjhweDtcbiAgICB9XG5cbiAgICBoMyB7XG4gICAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDI0cHg7XG4gICAgfVxuXG4gICAgaDQge1xuICAgICAgICBmb250LXNpemU6IDE3cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICAgIH1cblxuICAgIGg1IHtcbiAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMjBweDtcbiAgICB9XG5cbiAgICBoNiB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE4cHg7XG4gICAgfVxuXG4gICAgYSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICBjb2xvcjogdmFyKC0teWZtLWNvbG9yLWxpbmspO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgICAgICAgJjpob3ZlcixcbiAgICAgICAgJjphY3RpdmUge1xuICAgICAgICAgICAgY29sb3I6IHZhcigtLXlmbS1jb2xvci1saW5rLWhvdmVyKTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6bm90KFtocmVmXSkge1xuICAgICAgICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBzdHJvbmcge1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgIH1cblxuICAgIGltZyxcbiAgICBzdmcge1xuICAgICAgICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICBtYXgtaGVpZ2h0OiBmaXQtY29udGVudDtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXG4gICAgICAgICZbYWxpZ249J3JpZ2h0J10ge1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgJlthbGlnbj0nbGVmdCddIHtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAubWVybWFpZCBzdmdbaWQqPSdtZXJtYWlkJ10ge1xuICAgICAgICBtYXgtaGVpZ2h0OiBub25lO1xuICAgIH1cblxuICAgIGltZyB7XG4gICAgICAgIG9iamVjdC1maXQ6IGNvbnRhaW47XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXlmbS1jb2xvci1iYXNlKTtcbiAgICB9XG5cbiAgICBzdmcge1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgfVxuXG4gICAgaW1nICsgc21hbGwge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICBwLFxuICAgIGJsb2NrcXVvdGUsXG4gICAgdWwsXG4gICAgb2wsXG4gICAgZGwsXG4gICAgdGFibGUsXG4gICAgcHJlIHtcbiAgICAgICAgbWFyZ2luLWJsb2NrOiB2YXIoLS15Zm0tdGV4dC1ibG9jay1tYXJnaW4tYmxvY2ssIDAgMTVweCk7XG4gICAgICAgIG1hcmdpbi1pbmxpbmU6IHZhcigtLXlmbS10ZXh0LWJsb2NrLW1hcmdpbi1pbmxpbmUsIDApO1xuICAgIH1cblxuICAgIHVsLFxuICAgIG9sLFxuICAgIGRsIHtcbiAgICAgICAgJiBwcmUge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMTVweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGNvZGUsXG4gICAga2JkLFxuICAgIHByZSB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiB2YXIoLS15Zm0tZm9udC1mYW1pbHktbW9ub3NwYWNlKTtcbiAgICAgICAgZm9udC1zaXplOiAxZW07XG4gICAgICAgIGZvbnQtZmVhdHVyZS1zZXR0aW5nczogbm9ybWFsO1xuICAgIH1cblxuICAgIGlucHV0IHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBvdmVyZmxvdzogdmlzaWJsZTtcblxuICAgICAgICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgICAgICAgZm9udC1zaXplOiBpbmhlcml0O1xuICAgICAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcblxuICAgICAgICAmW3R5cGU9J2NoZWNrYm94J10ge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgdG9wOiAxcHg7XG5cbiAgICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgdGFibGUge1xuICAgICAgICBjb2xvcjogdmFyKC0teWZtLWNvbG9yLXRhYmxlKTtcblxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIG92ZXJmbG93OiBhdXRvO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHotaW5kZXg6IDE7XG5cbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0teWZtLWNvbG9yLWJvcmRlcik7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgICAgICAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgICAgICAgYm9yZGVyLXNwYWNpbmc6IDA7XG4gICAgICAgIGJhY2tncm91bmQ6IHZhcigtLXlmbS1jb2xvci1iYXNlKTtcblxuICAgICAgICB0aGVhZCxcbiAgICAgICAgdHI6bnRoLWNoaWxkKDJuKSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS15Zm0tY29sb3ItdGFibGUtcm93LWJhY2tncm91bmQpO1xuICAgICAgICB9XG5cbiAgICAgICAgdHI6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgdGQsXG4gICAgICAgICAgICB0aCB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXRvcDogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHRyOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgdGQsXG4gICAgICAgICAgICB0aCB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHRoLFxuICAgICAgICB0ZCB7XG4gICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDIwcHg7XG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS15Zm0tY29sb3ItYm9yZGVyKTtcblxuICAgICAgICAgICAgQGluY2x1ZGUgcmVtb3ZlTWFyZ2luRm9yRWRnZUNoaWxkcmVuKCk7XG4gICAgICAgIH1cblxuICAgICAgICB0ZCB7XG4gICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoIHtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICB9XG5cbiAgICAgICAgdHIgdGQ6Zmlyc3QtY2hpbGQsXG4gICAgICAgIHRyIHRoOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgIGJvcmRlci1sZWZ0OiBub25lO1xuICAgICAgICB9XG4gICAgICAgIHRyIHRkOmxhc3QtY2hpbGQsXG4gICAgICAgIHRyIHRoOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiBub25lO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgaHIge1xuICAgICAgICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgICAgICAgaGVpZ2h0OiAwLjI1ZW07XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIG1hcmdpbjogMS41ZW0gMDtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS15Zm0tY29sb3ItYm9yZGVyKTtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgICB9XG5cbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgICAgICAgIGNsZWFyOiBib3RoO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgYmxvY2txdW90ZSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxMnB4O1xuICAgICAgICBib3JkZXItbGVmdDogM3B4IHNvbGlkIHZhcigtLXlmbS1jb2xvci1hY2NlbnQpO1xuXG4gICAgICAgIEBpbmNsdWRlIHJlbW92ZU1hcmdpbkZvckVkZ2VDaGlsZHJlbigpO1xuICAgIH1cblxuICAgIGRsIHtcbiAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICBAaW5jbHVkZSByZW1vdmVNYXJnaW5Gb3JFZGdlQ2hpbGRyZW4oKTtcblxuICAgICAgICBkdCB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gICAgICAgICAgICBmb250LXNpemU6IDFlbTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgICAgIH1cblxuICAgICAgICBkZCB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAgICAgICAgICAgcGFkZGluZzogMCAxNXB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgZGQge1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICB9XG5cbiAgICB1bCxcbiAgICBvbCB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMi4yZW07XG4gICAgfVxuXG4gICAgdWwgdWw6bGFzdC1jaGlsZCxcbiAgICB1bCBvbDpsYXN0LWNoaWxkLFxuICAgIG9sIG9sOmxhc3QtY2hpbGQsXG4gICAgb2wgdWw6bGFzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuXG4gICAgbGkge1xuICAgICAgICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gICAgfVxuXG4gICAgbGk6Zmlyc3QtY2hpbGQsXG4gICAgbGkgKyBsaSB7XG4gICAgICAgIG1hcmdpbi1ibG9jazogdmFyKC0teWZtLWxpc3QtaXRlbS1tYXJnaW4tYmxvY2ssIDAuMzNlbSAwKTtcbiAgICB9XG5cbiAgICBsaSB7XG4gICAgICAgIHAsXG4gICAgICAgIGJsb2NrcXVvdGUge1xuICAgICAgICAgICAgbWFyZ2luLWJsb2NrOiB2YXIoLS15Zm0tbGlzdC10ZXh0LW1hcmdpbi1ibG9jaywgMCAxNXB4KTtcbiAgICAgICAgfVxuXG4gICAgICAgID4gcDpvbmx5LW9mLXR5cGUsXG4gICAgICAgID4gYmxvY2txdW90ZTpvbmx5LW9mLXR5cGUsXG4gICAgICAgID4gcDpmaXJzdC1jaGlsZDpoYXMoKyB1bCksXG4gICAgICAgID4gcDpmaXJzdC1jaGlsZDpoYXMoKyBvbCkge1xuICAgICAgICAgICAgbWFyZ2luLWJsb2NrOiB2YXIoLS15Zm0tbGlzdC10ZXh0LW9ubHktbWFyZ2luLWJsb2NrLCAwKTtcbiAgICAgICAgfVxuXG4gICAgICAgID4gcDpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgIG1hcmdpbi1ibG9jazogdmFyKC0teWZtLWxpc3QtdGV4dC1sYXN0LW1hcmdpbi1ibG9jaywgMCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBjb2RlIHtcbiAgICAgICAgcGFkZGluZzogMC4xZW0gMC40ZW0gMC4xNWVtO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS15Zm0tY29sb3ItaW5saW5lLWNvZGUtYmFja2dyb3VuZCk7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICAgICAgZm9udC1zaXplOiAwLjg3NWVtO1xuICAgICAgICB3aGl0ZS1zcGFjZTogcHJlLXdyYXA7XG4gICAgICAgIGNvbG9yOiB2YXIoLS15Zm0tY29sb3ItaW5saW5lLWNvZGUpO1xuICAgICAgICB0YWItc2l6ZTogdmFyKC0teWZtLXRhYi1zaXplLWNvZGUsIGluaGVyaXQpO1xuICAgIH1cblxuICAgIGEgY29kZSB7XG4gICAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIH1cblxuICAgIHByZSB7XG4gICAgICAgIHdvcmQtd3JhcDogbm9ybWFsO1xuICAgIH1cblxuICAgIHRhYmxlIGNvZGUge1xuICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIH1cblxuICAgIHByZSAqIGNvZGUge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgICAgIHdvcmQtd3JhcDogbm9ybWFsO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICBjb2xvcjogdmFyKC0teWZtLWNvbG9yLXRleHQpO1xuICAgIH1cblxuICAgIHByZSA+IGNvZGUge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgcGFkZGluZzogMTZweDtcbiAgICAgICAgb3ZlcmZsb3c6IGF1dG87XG5cbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0teWZtLWNvbG9yLWNvZGUtYmFja2dyb3VuZCk7XG4gICAgICAgIGNvbG9yOiB2YXIoLS15Zm0tY29sb3ItdGV4dCk7XG5cbiAgICAgICAgd2hpdGUtc3BhY2U6IHByZTtcblxuICAgICAgICAueWZtLWxpbmUtbnVtYmVyIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDFlbTtcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS15Zm0tY29sb3ItbGluZS1udW1iZXJzLCAjNjY2KTtcbiAgICAgICAgICAgIHVzZXItc2VsZWN0OiBub25lO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgc3VwLFxuICAgIHN1YiB7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAwO1xuICAgIH1cblxuICAgIC8qXG4gICAgICAgIEhpZGVzIGVsZW1lbnQgdmlzdWFsbHksIGJ1dCBsZWF2ZXMgaXQgdmlzaWJsZSBmb3Igc2VhcmNoIGNyYXdsZXJzIGFuZCBzY3JlZW4gcmVhZGVyc1xuXG4gICAgICAgIGh0dHBzOi8vd3d3LmExMXlwcm9qZWN0LmNvbS9wb3N0cy8yMDEzLTAxLTExLWhvdy10by1oaWRlLWNvbnRlbnQvXG4gICAgICAgIGh0dHBzOi8vaHVnb2dpcmF1ZGVsLmNvbS8yMDE2LzEwLzEzL2Nzcy1oaWRlLWFuZC1zZWVrL1xuICAgICovXG4gICAgLnZpc3VhbGx5LWhpZGRlbiB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcblxuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBjbGlwOiByZWN0KDAgMCAwIDApO1xuXG4gICAgICAgIHdpZHRoOiAxcHg7XG4gICAgICAgIGhlaWdodDogMXB4O1xuICAgICAgICBtYXJnaW46IC0xcHg7XG5cbiAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG4gICAgICAgIGJvcmRlcjogMDtcblxuICAgICAgICBjbGlwLXBhdGg6IGluc2V0KDEwMCUpO1xuICAgICAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgICB9XG5cbiAgICAtLXlmbS1mb250LWZhbWlseS1tb25vc3BhY2U6ICdNZW5sbycsICdNb25hY28nLCAnQ29uc29sYXMnLCAnVWJ1bnR1IE1vbm8nLCAnTGliZXJhdGlvbiBNb25vJyxcbiAgICAgICAgJ0RlamFWdSBTYW5zIE1vbm8nLCAnQ291cmllciBOZXcnLCAnQ291cmllcicsIG1vbm9zcGFjZTtcbiAgICAtLXlmbS1mb250LWZhbWlseS1zYW5zOiAnU2Vnb2UgVUknLCBhcmlhbCwgaGVsdmV0aWNhLCBzYW5zLXNlcmlmLCAnQXBwbGUgQ29sb3IgRW1vamknLFxuICAgICAgICAnU2Vnb2UgVUkgRW1vamknLCAnU2Vnb2UgVUkgU3ltYm9sJztcbn1cbiIsIkB1c2UgJ3Nhc3M6bGlzdCc7XG5AdXNlICdzYXNzOnN0cmluZyc7XG5cbkBmdW5jdGlvbiBnZXQtY291bnRlci1pZGVudCgkZGVwdGgpIHtcbiAgICAkaWRlbnQ6IGhpZXItbGlzdC1pdGVtO1xuXG4gICAgQGZvciAkaSBmcm9tIDAgdG8gJGRlcHRoIHtcbiAgICAgICAgJGlkZW50OiBzdWItI3skaWRlbnR9O1xuICAgIH1cblxuICAgIEByZXR1cm4gJGlkZW50O1xufVxuXG5AZnVuY3Rpb24gZ2V0LXNlbGVjdG9yKCRkZXB0aCkge1xuICAgICRzZWxlY3Rvcjogb2w7XG5cbiAgICBAZm9yICRpIGZyb20gMCB0byAkZGVwdGgge1xuICAgICAgICAkc2VsZWN0b3I6ICcjeyRzZWxlY3Rvcn0gPiBsaSA+IG9sJztcbiAgICB9XG5cbiAgICBAcmV0dXJuICRzZWxlY3Rvcjtcbn1cblxuQGZ1bmN0aW9uIGdldC1tYXJrZXItY29udGVudCgkaWRlbnRzKSB7XG4gICAgJGxlbmd0aDogbGlzdC5sZW5ndGgoJGlkZW50cyk7XG4gICAgJGNvbnRlbnQ6ICcnO1xuXG4gICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkbGVuZ3RoIHtcbiAgICAgICAgQGlmICRpID4gMSB7XG4gICAgICAgICAgICAkY29udGVudDogJyN7JGNvbnRlbnR9IFwiLlwiJztcbiAgICAgICAgfVxuXG4gICAgICAgICRjb250ZW50OiAnI3skY29udGVudH0gY291bnRlcigje2xpc3QubnRoKCRpZGVudHMsICRpKX0pJztcbiAgICB9XG5cbiAgICBAcmV0dXJuICN7JGNvbnRlbnR9ICcuICc7XG59XG5cbkBtaXhpbiBoaWVyLWxpc3QoJG1heC1kZXB0aCkge1xuICAgICRpZGVudC1wYXRoOiAoKTtcblxuICAgIEBmb3IgJGkgZnJvbSAwIHRocm91Z2ggJG1heC1kZXB0aCB7XG4gICAgICAgICRpZGVudDogZ2V0LWNvdW50ZXItaWRlbnQoJGkpO1xuICAgICAgICAkaWRlbnQtcGF0aDogbGlzdC5hcHBlbmQoJGlkZW50LXBhdGgsICRpZGVudCk7XG5cbiAgICAgICAgJiAje2dldC1zZWxlY3RvcigkaSl9IHtcbiAgICAgICAgICAgIC0taGllci1saXN0LXN0YXJ0OiAwO1xuICAgICAgICAgICAgY291bnRlci1yZXNldDogI3skaWRlbnR9IHZhcigtLWhpZXItbGlzdC1zdGFydCk7XG5cbiAgICAgICAgICAgICYgPiBsaSB7XG4gICAgICAgICAgICAgICAgY291bnRlci1pbmNyZW1lbnQ6ICRpZGVudDtcblxuICAgICAgICAgICAgICAgICY6Om1hcmtlciB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IGdldC1tYXJrZXItY29udGVudCgkaWRlbnQtcGF0aCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG4ueWZtIHtcbiAgICBAaW5jbHVkZSBoaWVyLWxpc3QoNSk7XG5cbiAgICAmLnlmbV9uby1saXN0LXJlc2V0IG9sLFxuICAgIG9sLnlmbV9uby1saXN0LXJlc2V0LFxuICAgIC55Zm1fbm8tbGlzdC1yZXNldCBvbCB7XG4gICAgICAgIGNvdW50ZXItcmVzZXQ6IGxpc3QtaXRlbTtcblxuICAgICAgICAmIGxpIHtcbiAgICAgICAgICAgIGNvdW50ZXItaW5jcmVtZW50OiB1bnNldDtcblxuICAgICAgICAgICAgJjo6bWFya2VyIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiB1bnNldDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIkBtaXhpbiBwcml2YXRlLWJyYW5kIHtcbiAgICAtLXlmbS1jb2xvci10ZXh0LXByaXZhdGU6IHJnYmEoMCwgMCwgMCwgMC43KTtcbiAgICAtLXlmbS1jb2xvci1saW5rLXByaXZhdGU6ICMwMjdiZjM7XG4gICAgLS15Zm0tY29sb3ItbGluay1ob3Zlci1wcml2YXRlOiAjMDA0MDgwO1xuICAgIC0teWZtLWNvbG9yLWJhc2UtcHJpdmF0ZTogI2ZmZmZmZjtcbiAgICAtLXlmbS1jb2xvci10YWJsZS1wcml2YXRlOiAjMzMzO1xuICAgIC0teWZtLWNvbG9yLWJvcmRlci1wcml2YXRlOiByZ2JhKDAsIDAsIDAsIDAuMDcpO1xuICAgIC0teWZtLWNvbG9yLXRhYmxlLXJvdy1iYWNrZ3JvdW5kLXByaXZhdGU6IHJnYmEoMCwgMCwgMCwgMC4wMik7XG4gICAgLS15Zm0tY29sb3ItdGFibGUtcm93LWhlYWRlci1iYWNrZ3JvdW5kLXByaXZhdGU6IHJnYmEoMjQ3LCAyNDcsIDI0NywgMSk7XG4gICAgLS15Zm0tY29sb3ItYWNjZW50LXByaXZhdGU6ICMwMjdiZjM7XG5cbiAgICAtLXlmbS1jb2xvci1pbmxpbmUtY29kZS1wcml2YXRlOiByZ2JhKDU5LCA5NiwgMTI4LCAxKTtcbiAgICAtLXlmbS1jb2xvci1pbmxpbmUtY29kZS1iYWNrZ3JvdW5kLXByaXZhdGU6IHJnYmEoMTA3LCAxMzIsIDE1MywgMC4xMik7XG4gICAgLS15Zm0tY29sb3ItY29kZS1iYWNrZ3JvdW5kLXByaXZhdGU6IHJnYmEoMTA3LCAxMzIsIDE1MywgMC4xMik7XG4gICAgLS15Zm0tY29sb3ItY29kZS1iYWNrZ3JvdW5kLWhvdmVyZWQtcHJpdmF0ZTogcmdiYSgxMDcsIDEzMiwgMTUzLCAwLjIpO1xuXG4gICAgLS15Zm0tY29sb3ItaGxqcy1iYWNrZ3JvdW5kLXByaXZhdGU6IHJnYmEoMTA3LCAxMzIsIDE1MywgMC4xMik7XG4gICAgLS15Zm0tY29sb3ItaGxqcy1zdWJzdC1wcml2YXRlOiAjNDQ0O1xuICAgIC0teWZtLWNvbG9yLWhsanMtY29tbWVudC1wcml2YXRlOiAjODg4ODg4O1xuICAgIC0teWZtLWNvbG9yL