@diplodoc/transform 4.29.0 → 4.30.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (147) hide show
  1. package/dist/css/print.css.map +1 -1
  2. package/dist/css/yfm.css +0 -1
  3. package/dist/css/yfm.css.map +2 -2
  4. package/dist/css/yfm.min.css +1 -1
  5. package/dist/css/yfm.min.css.map +2 -2
  6. package/dist/js/yfm.js.map +2 -2
  7. package/dist/js/yfm.min.js.map +2 -2
  8. package/lib/headings.js.map +1 -1
  9. package/lib/highlight.js.map +1 -1
  10. package/lib/index.js.map +1 -1
  11. package/lib/liquid/conditions.js +1 -1
  12. package/lib/liquid/conditions.js.map +1 -1
  13. package/lib/liquid/cycles.js +1 -1
  14. package/lib/liquid/cycles.js.map +1 -1
  15. package/lib/liquid/evaluation.js +1 -1
  16. package/lib/liquid/evaluation.js.map +1 -1
  17. package/lib/liquid/index.d.ts +1 -1
  18. package/lib/liquid/index.js.map +1 -1
  19. package/lib/liquid/substitutions.js +2 -2
  20. package/lib/liquid/substitutions.js.map +1 -1
  21. package/lib/md.js +30 -9
  22. package/lib/md.js.map +1 -1
  23. package/lib/plugins/anchors/collect.js +1 -1
  24. package/lib/plugins/anchors/collect.js.map +1 -1
  25. package/lib/plugins/anchors/index.js +4 -4
  26. package/lib/plugins/anchors/index.js.map +1 -1
  27. package/lib/plugins/block-anchor/index.js.map +1 -1
  28. package/lib/plugins/changelog/collect.d.ts +1 -1
  29. package/lib/plugins/changelog/collect.js +1 -1
  30. package/lib/plugins/changelog/collect.js.map +1 -1
  31. package/lib/plugins/changelog/index.js.map +1 -1
  32. package/lib/plugins/checkbox/index.js.map +1 -1
  33. package/lib/plugins/deflist.js.map +1 -1
  34. package/lib/plugins/file/index.js.map +1 -1
  35. package/lib/plugins/images/index.js +1 -1
  36. package/lib/plugins/images/index.js.map +1 -1
  37. package/lib/plugins/imsize/index.js.map +1 -1
  38. package/lib/plugins/imsize/plugin.js.map +1 -1
  39. package/lib/plugins/includes/collect.d.ts +4 -2
  40. package/lib/plugins/includes/collect.js +20 -3
  41. package/lib/plugins/includes/collect.js.map +1 -1
  42. package/lib/plugins/includes/index.js +8 -5
  43. package/lib/plugins/includes/index.js.map +1 -1
  44. package/lib/plugins/includes/types.d.ts +6 -0
  45. package/lib/plugins/includes/types.js +3 -0
  46. package/lib/plugins/includes/types.js.map +1 -0
  47. package/lib/plugins/links/collect.js.map +1 -1
  48. package/lib/plugins/links/index.js +1 -1
  49. package/lib/plugins/links/index.js.map +1 -1
  50. package/lib/plugins/meta.js.map +1 -1
  51. package/lib/plugins/monospace.js +0 -1
  52. package/lib/plugins/monospace.js.map +1 -1
  53. package/lib/plugins/notes/index.js +0 -2
  54. package/lib/plugins/notes/index.js.map +1 -1
  55. package/lib/plugins/sup.js.map +1 -1
  56. package/lib/plugins/table/index.js.map +1 -1
  57. package/lib/plugins/term/index.js.map +1 -1
  58. package/lib/plugins/term/termDefinitions.js.map +1 -1
  59. package/lib/plugins/typings.d.ts +1 -14
  60. package/lib/plugins/typings.js +15 -0
  61. package/lib/plugins/typings.js.map +1 -1
  62. package/lib/plugins/utils.d.ts +1 -1
  63. package/lib/plugins/utils.js.map +1 -1
  64. package/lib/plugins/video/const.d.ts +3 -1
  65. package/lib/plugins/video/const.js +4 -0
  66. package/lib/plugins/video/const.js.map +1 -1
  67. package/lib/plugins/video/index.js +7 -9
  68. package/lib/plugins/video/index.js.map +1 -1
  69. package/lib/plugins/video/parsers.d.ts +2 -0
  70. package/lib/plugins/video/parsers.js +19 -1
  71. package/lib/plugins/video/parsers.js.map +1 -1
  72. package/lib/plugins/video/types.d.ts +8 -0
  73. package/lib/plugins/video/utils.js +9 -6
  74. package/lib/plugins/video/utils.js.map +1 -1
  75. package/lib/preprocessors/included/index.d.ts +5 -0
  76. package/lib/preprocessors/included/index.js +71 -0
  77. package/lib/preprocessors/included/index.js.map +1 -0
  78. package/lib/preprocessors.d.ts +3 -0
  79. package/lib/preprocessors.js +8 -0
  80. package/lib/preprocessors.js.map +1 -0
  81. package/lib/sanitize.js +1 -1
  82. package/lib/sanitize.js.map +1 -1
  83. package/lib/typings.d.ts +22 -2
  84. package/lib/utilsFS.d.ts +2 -0
  85. package/lib/utilsFS.js +18 -8
  86. package/lib/utilsFS.js.map +1 -1
  87. package/lib/yfmlint/index.d.ts +2 -2
  88. package/lib/yfmlint/index.js +6 -1
  89. package/lib/yfmlint/index.js.map +1 -1
  90. package/lib/yfmlint/markdownlint-custom-rule/yfm001.js.map +1 -1
  91. package/lib/yfmlint/typings.d.ts +2 -0
  92. package/lib/yfmlint/utils.d.ts +2 -2
  93. package/lib/yfmlint/utils.js.map +1 -1
  94. package/lib/yfmlint/yfmlint.js.map +1 -1
  95. package/package.json +12 -10
  96. package/src/.eslintrc.js +1 -23
  97. package/src/js/index.ts +0 -1
  98. package/src/js/term/index.ts +1 -0
  99. package/src/transform/headings.ts +1 -0
  100. package/src/transform/highlight.ts +1 -0
  101. package/src/transform/index.ts +2 -0
  102. package/src/transform/liquid/conditions.ts +3 -1
  103. package/src/transform/liquid/cycles.ts +3 -1
  104. package/src/transform/liquid/evaluation.ts +2 -1
  105. package/src/transform/liquid/index.ts +2 -3
  106. package/src/transform/liquid/substitutions.ts +3 -2
  107. package/src/transform/md.ts +55 -14
  108. package/src/transform/plugins/anchors/collect.ts +2 -1
  109. package/src/transform/plugins/anchors/index.ts +4 -3
  110. package/src/transform/plugins/block-anchor/index.ts +1 -0
  111. package/src/transform/plugins/changelog/collect.ts +5 -2
  112. package/src/transform/plugins/changelog/index.ts +2 -1
  113. package/src/transform/plugins/checkbox/index.ts +1 -0
  114. package/src/transform/plugins/deflist.ts +1 -0
  115. package/src/transform/plugins/file/index.ts +1 -0
  116. package/src/transform/plugins/images/index.ts +2 -2
  117. package/src/transform/plugins/imsize/index.ts +1 -0
  118. package/src/transform/plugins/imsize/plugin.ts +1 -0
  119. package/src/transform/plugins/includes/collect.ts +45 -5
  120. package/src/transform/plugins/includes/index.ts +23 -7
  121. package/src/transform/plugins/includes/types.ts +7 -0
  122. package/src/transform/plugins/links/collect.ts +2 -0
  123. package/src/transform/plugins/links/index.ts +5 -3
  124. package/src/transform/plugins/meta.ts +1 -0
  125. package/src/transform/plugins/monospace.ts +1 -1
  126. package/src/transform/plugins/notes/index.ts +2 -2
  127. package/src/transform/plugins/sup.ts +1 -0
  128. package/src/transform/plugins/table/index.ts +3 -1
  129. package/src/transform/plugins/term/index.ts +1 -0
  130. package/src/transform/plugins/term/termDefinitions.ts +2 -0
  131. package/src/transform/plugins/typings.ts +1 -16
  132. package/src/transform/plugins/utils.ts +2 -1
  133. package/src/transform/plugins/video/const.ts +5 -0
  134. package/src/transform/plugins/video/index.ts +8 -10
  135. package/src/transform/plugins/video/parsers.ts +18 -0
  136. package/src/transform/plugins/video/types.ts +2 -0
  137. package/src/transform/plugins/video/utils.ts +9 -6
  138. package/src/transform/preprocessors/included/index.ts +101 -0
  139. package/src/transform/preprocessors.ts +7 -0
  140. package/src/transform/sanitize.ts +2 -2
  141. package/src/transform/typings.ts +27 -2
  142. package/src/transform/utilsFS.ts +19 -7
  143. package/src/transform/yfmlint/index.ts +18 -5
  144. package/src/transform/yfmlint/markdownlint-custom-rule/yfm001.ts +0 -1
  145. package/src/transform/yfmlint/typings.ts +5 -0
  146. package/src/transform/yfmlint/utils.ts +4 -2
  147. package/src/transform/yfmlint/yfmlint.ts +2 -1
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
- "sources": ["../../src/scss/%3Cinput%20css%20LJXtVV%3E", "../../src/scss/home/runner/work/transform/transform/src/scss/_common.scss", "../../src/scss/home/runner/work/transform/transform/src/scss/_variables.scss", "../../src/scss/home/runner/work/transform/transform/src/scss/_note.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", "../../src/scss/home/runner/work/transform/transform/src/scss/_file.scss", "../../src/scss/home/runner/work/transform/transform/src/scss/_term.scss", "../../src/scss/home/runner/work/transform/transform/src/scss/_table.scss", "../../src/scss/home/runner/work/transform/transform/src/scss/_modal.scss", "../../src/scss/home/runner/work/transform/transform/node_modules/@diplodoc/cut-extension/runtime/index.css", "../../src/scss/home/runner/work/transform/transform/node_modules/@diplodoc/tabs-extension/runtime/index.css"],
3
+ "sources": ["../../src/scss/%3Cinput%20css%20SmmYQZ%3E", "../../src/scss/home/runner/work/transform/transform/src/scss/_common.scss", "../../src/scss/home/runner/work/transform/transform/src/scss/_variables.scss", "../../src/scss/home/runner/work/transform/transform/src/scss/_note.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", "../../src/scss/home/runner/work/transform/transform/src/scss/_file.scss", "../../src/scss/home/runner/work/transform/transform/src/scss/_term.scss", "../../src/scss/home/runner/work/transform/transform/src/scss/_table.scss", "../../src/scss/home/runner/work/transform/transform/src/scss/_modal.scss", "../../src/scss/home/runner/work/transform/transform/node_modules/@diplodoc/cut-extension/runtime/index.css", "../../src/scss/home/runner/work/transform/transform/node_modules/@diplodoc/tabs-extension/runtime/index.css"],
4
4
  "sourcesContent": ["@charset \"UTF-8\";\n.yfm {\n font-family: var(--yfm-font-family-sans);\n font-size: 15px;\n line-height: 20px;\n word-wrap: break-word;\n color: rgba(0, 0, 0, 0.7);\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-color-hljs-background: rgba(107, 132, 153, 0.12);\n --yfm-color-hljs-subst: #444;\n --yfm-color-hljs-comment: #888888;\n --yfm-color-hljs-deletion: #880000;\n --yfm-color-hljs-section: #880000;\n --yfm-color-hljs-pseudo: #BC6060;\n --yfm-color-hljs-literal: #78A960;\n --yfm-color-hljs-addition: #397300;\n --yfm-color-hljs-meta: #1f7199;\n --yfm-color-hljs-meta-string: #4d99bf;\n --yfm-font-family-monospace: \"Menlo\", \"Monaco\", \"Consolas\", \"Ubuntu Mono\", \"Liberation Mono\", \"DejaVu Sans Mono\", \"Courier New\", \"Courier\", monospace;\n --yfm-font-family-sans: \"Segoe UI\", Arial, Helvetica, sans-serif, \"Apple Color Emoji\", \"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, .yfm h2, .yfm h3, .yfm h4, .yfm h5, .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: #027bf3;\n text-decoration: none;\n}\n.yfm a:hover, .yfm a:active {\n color: #004080;\n}\n.yfm a:not([href]) {\n color: inherit;\n}\n.yfm strong {\n font-weight: 700;\n}\n.yfm img, .yfm svg {\n box-sizing: content-box;\n max-width: 100%;\n border: none;\n vertical-align: middle;\n}\n.yfm img[align=right], .yfm svg[align=right] {\n padding-left: 20px;\n}\n.yfm img[align=left], .yfm svg[align=left] {\n padding-right: 20px;\n}\n.yfm img {\n object-fit: contain;\n background-color: #ffffff;\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: 0 0 15px 0;\n}\n.yfm ul pre, .yfm ol pre, .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: #333;\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 rgba(0, 0, 0, 0.07);\n border-radius: 8px;\n border-collapse: collapse;\n border-spacing: 0;\n background: #ffffff;\n}\n.yfm table thead, .yfm table tr:nth-child(2n) {\n background-color: rgba(0, 0, 0, 0.02);\n}\n.yfm table tr:first-child td, .yfm table tr:first-child th {\n border-top: none;\n}\n.yfm table tr:last-child td, .yfm table tr:last-child th {\n border-bottom: none;\n}\n.yfm table th, .yfm table td {\n padding: 10px 20px;\n overflow: hidden;\n text-overflow: ellipsis;\n border: 1px solid rgba(0, 0, 0, 0.07);\n}\n.yfm table th > *:first-child, .yfm table td > *:first-child {\n margin-top: 0;\n}\n.yfm table th > *:last-child, .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, .yfm table tr th:first-child {\n border-left: none;\n}\n.yfm table tr td:last-child, .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: rgba(0, 0, 0, 0.07);\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 #027bf3;\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 dd > ol:first-child, .yfm dd > ul:first-child, .yfm dd > dd:first-child {\n padding-left: 0;\n}\n.yfm ul, .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:not(.yfm_no-list-reset) ol {\n list-style-type: none;\n counter-reset: list;\n}\n.yfm:not(.yfm_no-list-reset) ol > li {\n position: relative;\n counter-increment: list;\n}\n.yfm:not(.yfm_no-list-reset) ol > li::before {\n position: absolute;\n right: 100%;\n margin-right: 4px;\n content: counters(list, \".\") \". \";\n}\n.yfm li {\n word-wrap: break-word;\n}\n.yfm li + li {\n margin-top: 0.33em;\n}\n.yfm li p,\n.yfm li blockquote {\n margin-top: 15px;\n}\n.yfm code {\n padding: 0.1em 0.4em 0.15em;\n background-color: rgba(107, 132, 153, 0.12);\n border-radius: 4px;\n font-size: 0.875em;\n white-space: normal;\n color: rgb(59, 96, 128);\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: rgba(0, 0, 0, 0.7);\n}\n.yfm pre > code {\n display: block;\n padding: 16px;\n overflow: auto;\n background-color: rgba(107, 132, 153, 0.12);\n color: rgba(0, 0, 0, 0.7);\n white-space: pre;\n}\n.yfm sup, .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 .yfm-note {\n max-width: 1296px;\n margin: 20px 0;\n padding: 20px 20px 20px 64px;\n border-radius: 10px;\n}\n.yfm .yfm-note .yfm-note-title {\n font-weight: 700;\n}\n.yfm .yfm-note > p {\n margin: 0 0 10px 0;\n}\n.yfm .yfm-note > p:first-child::before {\n box-sizing: content-box;\n display: block;\n width: 24px;\n height: 24px;\n margin-top: -2px;\n margin-left: -44px;\n padding-right: 20px;\n float: left;\n}\n.yfm .yfm-note > p:last-child {\n margin-bottom: 0;\n}\n.yfm .yfm-note.yfm-accent-info > p:first-child::before {\n content: url('data:image/svg+xml,%3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 16 16\"%3E%3Ccircle cx=\"8\" cy=\"8\" r=\"8\" fill=\"rgb(2,123,243)\"/%3E%3Crect width=\"1\" height=\"5\" x=\"7.5\" y=\"6.5\" stroke=\"%23fff\" rx=\".5\"/%3E%3Ccircle cx=\"8\" cy=\"4\" r=\"1\" fill=\"%23fff\"/%3E%3C/svg%3E');\n}\n.yfm .yfm-note.yfm-accent-tip > p:first-child::before {\n content: url('data:image/svg+xml,%3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 16 16\"%3E%3Ccircle cx=\"8\" cy=\"8\" r=\"8\" fill=\"rgb(86,189,103)\"/%3E%3Crect width=\"1\" height=\"5\" x=\"7.5\" y=\"6.5\" stroke=\"%23fff\" rx=\".5\"/%3E%3Ccircle cx=\"8\" cy=\"4\" r=\"1\" fill=\"%23fff\"/%3E%3C/svg%3E');\n}\n.yfm .yfm-note.yfm-accent-alert > p:first-child::before {\n content: url('data:image/svg+xml,%3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 16 16\"%3E%3Ccircle cx=\"8\" cy=\"8\" r=\"8\" fill=\"rgb(255,70,69)\"/%3E%3Crect width=\"1\" height=\"5\" x=\"7.5\" y=\"6.5\" stroke=\"%23fff\" rx=\".5\"/%3E%3Ccircle cx=\"8\" cy=\"4\" r=\"1\" fill=\"%23fff\"/%3E%3C/svg%3E');\n}\n.yfm .yfm-note.yfm-accent-warning > p:first-child::before {\n content: url('data:image/svg+xml,%3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 16 16\"%3E%3Ccircle cx=\"8\" cy=\"8\" r=\"8\" fill=\"rgb(241,149,24)\"/%3E%3Crect width=\"1\" height=\"5\" x=\"7.5\" y=\"6.5\" stroke=\"%23fff\" rx=\".5\"/%3E%3Ccircle cx=\"8\" cy=\"4\" r=\"1\" fill=\"%23fff\"/%3E%3C/svg%3E');\n}\n.yfm .yfm-note.yfm-accent-info {\n background: rgba(2, 123, 243, 0.08);\n}\n.yfm .yfm-note.yfm-accent-tip {\n background: rgba(63, 201, 46, 0.1);\n}\n.yfm .yfm-note.yfm-accent-alert {\n background: rgba(235, 50, 38, 0.08);\n}\n.yfm .yfm-note.yfm-accent-warning {\n background: rgba(255, 136, 0, 0.15);\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: rgba(107, 132, 153, 0.12);\n background: var(--yfm-color-hljs-background);\n}\n.yfm .hljs,\n.yfm .hljs-subst {\n color: #444;\n color: var(--yfm-color-hljs-subst);\n}\n.yfm .hljs-comment {\n color: #888888;\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: #880000;\n color: var(--yfm-color-hljs-deletion);\n}\n.yfm .hljs-title,\n.yfm .hljs-section {\n color: #880000;\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: #BC6060;\n color: var(--yfm-color-hljs-pseudo);\n}\n.yfm .hljs-literal {\n color: #78A960;\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: #397300;\n color: var(--yfm-color-hljs-addition);\n}\n.yfm .hljs-meta {\n color: #1f7199;\n color: var(--yfm-color-hljs-meta);\n}\n.yfm .hljs-meta-string {\n color: #4d99bf;\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}\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\n/**\n Public CSS variables:\n --yfm-file-icon sets file icon image\n --yfm-file-icon-color sets file icon color\n*/\n.yfm-file__icon {\n ---yfm-file-icon-img: var(--yfm-file-icon, url(\"data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAzODQgNTEyIj48cGF0aCBmaWxsPSJjdXJyZW50Q29sb3IiIGQ9Ik0zNjkuOSA5Ny45TDI4NiAxNEMyNzcgNSAyNjQuOC0uMSAyNTIuMS0uMUg0OEMyMS41IDAgMCAyMS41IDAgNDh2NDE2YzAgMjYuNSAyMS41IDQ4IDQ4IDQ4aDI4OGMyNi41IDAgNDgtMjEuNSA0OC00OFYxMzEuOWMwLTEyLjctNS4xLTI1LTE0LjEtMzR6bS0yMi42IDIyLjdjMi4xIDIuMSAzLjUgNC42IDQuMiA3LjRIMjU2VjMyLjVjMi44LjcgNS4zIDIuMSA3LjQgNC4ybDgzLjkgODMuOXpNMzM2IDQ4MEg0OGMtOC44IDAtMTYtNy4yLTE2LTE2VjQ4YzAtOC44IDcuMi0xNiAxNi0xNmgxNzZ2MTA0YzAgMTMuMyAxMC43IDI0IDI0IDI0aDEwNHYzMDRjMCA4LjgtNy4yIDE2LTE2IDE2em0tNDgtMjQ0djhjMCA2LjYtNS40IDEyLTEyIDEySDEwOGMtNi42IDAtMTItNS40LTEyLTEydi04YzAtNi42IDUuNC0xMiAxMi0xMmgxNjhjNi42IDAgMTIgNS40IDEyIDEyem0wIDY0djhjMCA2LjYtNS40IDEyLTEyIDEySDEwOGMtNi42IDAtMTItNS40LTEyLTEydi04YzAtNi42IDUuNC0xMiAxMi0xMmgxNjhjNi42IDAgMTIgNS40IDEyIDEyem0wIDY0djhjMCA2LjYtNS40IDEyLTEyIDEySDEwOGMtNi42IDAtMTItNS40LTEyLTEydi04YzAtNi42IDUuNC0xMiAxMi0xMmgxNjhjNi42IDAgMTIgNS40IDEyIDEyeiIvPjwvc3ZnPg==\"));\n display: inline-block;\n user-select: none;\n width: 16px;\n margin: 0 2px;\n color: var(--yfm-file-icon-color, rgba(0, 0, 0, 0.7));\n background-color: currentColor;\n background-repeat: no-repeat;\n background-position: 50%;\n background-size: 100%;\n mask-image: var(---yfm-file-icon-img);\n mask-position: center;\n mask-repeat: no-repeat;\n}\n.yfm-file__icon::before {\n content: \" \";\n}\n\n.yfm-term_title {\n color: #027bf3;\n cursor: pointer;\n border-bottom: 1px dotted;\n font-size: inherit;\n line-height: inherit;\n font-style: normal;\n}\n.yfm-term_title:hover {\n color: #004080;\n}\n.yfm-term_dfn {\n position: absolute;\n z-index: 100;\n width: fit-content;\n max-width: 450px;\n visibility: hidden;\n opacity: 0;\n padding: 10px;\n background-color: rgb(255, 255, 255);\n font-size: inherit;\n line-height: inherit;\n font-style: normal;\n border-radius: 4px;\n box-shadow: 0 8px 20px rgba(0, 0, 0, 0.15);\n outline: none;\n}\n@media screen and (max-width: 600px) {\n .yfm-term_dfn {\n max-width: 80%;\n }\n}\n.yfm-term_dfn::before {\n content: \"\";\n position: absolute;\n z-index: -1;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n border-radius: inherit;\n box-shadow: 0 0 0 1px rgb(229, 229, 229);\n}\n.yfm-term_dfn.open {\n visibility: visible;\n animation-name: popup;\n animation-duration: 0.1s;\n animation-timing-function: ease-out;\n animation-fill-mode: forwards;\n}\n@keyframes popup {\n 0% {\n opacity: 0;\n transform: translateY(10px);\n }\n 100% {\n opacity: 1;\n transform: translateY(0);\n }\n}\n\n.yfm table td.cell-align-top-left, .yfm table td.cell-align-bottom-left {\n text-align: start;\n}\n.yfm table td.cell-align-top-center, .yfm table td.cell-align-center {\n text-align: center;\n}\n.yfm table td.cell-align-top-right, .yfm table td.cell-align-bottom-right {\n text-align: end;\n}\n.yfm table td.cell-align-top-left, .yfm table td.cell-align-top-center, .yfm table td.cell-align-top-right {\n vertical-align: top;\n}\n.yfm table td.cell-align-center {\n vertical-align: middle;\n}\n.yfm table td.cell-align-bottom-left, .yfm table td.cell-align-bottom-right {\n vertical-align: bottom;\n}\n\n.wide-container {\n position: fixed;\n width: 100vw;\n height: 100vh;\n display: flex;\n justify-content: center;\n align-items: center;\n top: 0px;\n left: 0px;\n z-index: 200;\n}\n.wide-container.dc-doc-page {\n max-width: 100% !important;\n}\n.wide-container .wide-content-viewer {\n visibility: hidden;\n}\n.wide-container .wide-content-wrapper {\n z-index: 200;\n background-color: var(--g-color-base-background);\n height: 90vh;\n width: 70vw;\n border-radius: 10px;\n display: flex;\n flex-direction: column;\n}\n.wide-container .wide-content-wrapper .wide-content {\n height: 95%;\n width: 100%;\n}\n.wide-container .wide-content-wrapper .wide-content .wide-inner-element {\n max-width: 100%;\n width: 100%;\n height: 100%;\n}\n.wide-container .wide-content-wrapper .wide-content table {\n border-radius: 0px;\n}\n.wide-container .wide-content-wrapper .wide-content .wide-thead-content {\n display: table;\n width: 100%;\n}\n.wide-container .wide-content-wrapper .wide-toolbar {\n display: flex;\n flex-direction: row;\n width: 100%;\n justify-content: space-between;\n align-items: center;\n padding: 10px 12px;\n}\n.wide-container .wide-content-wrapper .wide-entity-name {\n margin: 0;\n font-size: 18px;\n}\n.wide-container .wide-content-wrapper .wide-actions {\n align-self: flex-end;\n}\n.wide-container .wide-content-wrapper .wide-actions .close-action {\n cursor: pointer;\n border-radius: 3px;\n transition: background 300ms;\n}\n.wide-container .wide-content-wrapper .wide-actions .close-action:hover {\n background: var(--g-color-base-simple-hover);\n}\n\n.wide-element-wrapper {\n display: flex;\n gap: 30px;\n position: relative;\n}\n.wide-element-wrapper:hover > .wide-content-viewer {\n visibility: visible;\n}\n.wide-element-wrapper .wide-inner-element {\n max-width: 700px;\n}\n\n.wide-content-viewer {\n visibility: hidden;\n width: 30px;\n height: 30px;\n z-index: 100;\n padding: 6px;\n box-sizing: content-box;\n color: var(--g-color-text-primary);\n cursor: pointer;\n}\n.wide-content-viewer > svg {\n width: 20px;\n height: 20px;\n}\n\n.wide-content-overlay {\n z-index: 100;\n width: 100vw;\n height: 100vh;\n position: fixed;\n top: 0;\n left: 0;\n background-color: black;\n opacity: 0.6;\n}\n\n.yfm-cut {\n transition: all 0.15s;\n margin-bottom: 15px;\n}\n\n.yfm-cut.cut-highlight {\n background-clip: content-box;\n box-shadow: 0 3px 0 7px var(--g-color-base-simple-hover);\n background-color: var(--g-color-base-simple-hover);\n border-radius: 3px;\n}\n\n.yfm-cut-title {\n list-style: none;\n cursor: pointer;\n position: relative;\n user-select: none;\n padding: 5px 0 5px 30px;\n}\n\n.yfm-cut-title::-webkit-details-marker {\n display: none;\n}\n\n.yfm-cut-title:focus {\n outline-color: red;\n}\n\n.yfm-cut-title:before {\n content: \"\";\n z-index: 1;\n left: 0;\n top: 50%;\n background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxNiAxNiI+CiAgICA8cGF0aCBzdHJva2U9ImN1cnJlbnRDb2xvciIgZmlsbD0ibm9uZSIgZD0iTTMgNmw1IDUgNS01Ii8+Cjwvc3ZnPgo=);\n transform: translateY(-50%) rotate(-90deg);\n transition: transform 0.3s ease;\n height: 20px;\n width: 20px;\n position: absolute;\n}\n\n.yfm-cut-content {\n padding: 5px 0 15px 30px;\n}\n\n.yfm-cut.open > .yfm-cut-title:before {\n transform: translateY(-50%);\n}\n\n.yfm:not(.yfm_no-list-reset) .yfm-cut ol {\n counter-reset: cut-list;\n}\n\n.yfm:not(.yfm_no-list-reset) .yfm-cut ol > li {\n counter-increment: cut-list;\n}\n\n.yfm:not(.yfm_no-list-reset) .yfm-cut ol > li:before {\n content: counters(cut-list, \".\") \". \";\n}\n\n\n.yfm-tabs {\n margin-bottom: 15px;\n}\n\n.yfm:not(.yfm_no-list-reset) .yfm-tabs ol {\n counter-reset: tabs-list;\n}\n\n.yfm:not(.yfm_no-list-reset) .yfm-tabs ol > li {\n counter-increment: tabs-list;\n}\n\n.yfm:not(.yfm_no-list-reset) .yfm-tabs ol > li:before {\n content: counters(tabs-list, \".\") \". \";\n}\n\n.yfm-tab-list {\n display: flex;\n flex-wrap: wrap;\n margin-bottom: 15px;\n border-bottom: 1px solid rgba(0, 0, 0, 0.07);\n}\n\n.yfm-tabs-vertical > .yfm-tab-list {\n flex-direction: column;\n border-bottom: unset;\n}\n\n.yfm-tabs-vertical > .yfm-tab-panel {\n margin-left: 30px;\n}\n\n.yfm-tabs-vertical > .yfm-tab-group {\n display: flex;\n flex-direction: row;\n margin-bottom: 5px;\n}\n\n.yfm-tabs-vertical .yfm-vertical-tab > input[type=radio] {\n visibility: hidden;\n width: 0;\n height: 0;\n}\n\n.yfm-tabs-vertical .yfm-vertical-tab > label {\n display: inline-block;\n cursor: pointer;\n position: relative;\n padding-left: 25px;\n margin-right: 0;\n line-height: 18px;\n user-select: none;\n}\n\n.yfm-tabs-vertical .yfm-vertical-tab > label:before {\n font-family: initial !important;\n content: \"\";\n position: absolute;\n left: 0;\n bottom: 1px;\n border-radius: 50%;\n width: 18px;\n height: 18px;\n border: #dfdfdf 1px solid;\n background-color: #fff;\n}\n\n.yfm-tabs-vertical .yfm-vertical-tab input[type=radio]:checked + label:before {\n content: \"•\";\n background-color: #5282ff;\n text-align: center;\n vertical-align: middle;\n font-size: 20px;\n white-space: pre;\n display: inline-flex;\n justify-content: center;\n align-items: center;\n color: #fff;\n}\n\n.yfm-tabs-vertical .yfm-vertical-tab {\n border-bottom: unset !important;\n}\n\n.yfm-tab {\n margin-bottom: -1px;\n margin-right: 20px;\n border-bottom: 2px solid transparent;\n padding: 6px 0 7px;\n font-weight: 700;\n outline: none;\n cursor: pointer;\n user-select: none;\n white-space: break-spaces;\n}\n\n.yfm-tab:last-child {\n margin-right: 0;\n}\n\n.yfm-tab:hover, .yfm-tab:active {\n color: #004080;\n}\n\n.yfm-tab.active {\n border-bottom-color: #027bf3;\n}\n\n.yfm-tab:focus {\n outline: 2px solid #4d90fe;\n border-radius: 2px;\n}\n\n.yfm-tab:focus:not(:focus-visible) {\n outline: 0;\n}\n\n.yfm-tab-panel {\n position: relative;\n visibility: hidden;\n overflow: hidden;\n height: 0;\n}\n\n.yfm-tab-panel:first-child {\n margin-top: 0 !important;\n}\n\n.yfm-tab-panel:last-child {\n margin-bottom: 0 !important;\n}\n\n.yfm-tab-panel.active {\n visibility: visible;\n height: auto;\n}\n\n\n/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VSb290IjoiL2hvbWUvcnVubmVyL3dvcmsvdHJhbnNmb3JtL3RyYW5zZm9ybS9zcmMvc2NzcyIsInNvdXJjZXMiOlsiX2NvbW1vbi5zY3NzIiwiX3ZhcmlhYmxlcy5zY3NzIiwiX25vdGUuc2NzcyIsIl9hbmNob3Iuc2NzcyIsIl9oaWdobGlnaHQuc2NzcyIsIl9jb2RlLnNjc3MiLCJfZmlsZS5zY3NzIiwiX3Rlcm0uc2NzcyIsIl90YWJsZS5zY3NzIiwiX21vZGFsLnNjc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvQGRpcGxvZG9jL2N1dC1leHRlbnNpb24vcnVudGltZS9pbmRleC5jc3MiLCIuLi8uLi9ub2RlX21vZHVsZXMvQGRpcGxvZG9jL3RhYnMtZXh0ZW5zaW9uL3J1bnRpbWUvaW5kZXguY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFZQTtFQUNJO0VBQ0E7RUFDQTtFQUNBO0VBQ0EsT0NkUTtBRHlXUjtBQUFBOztBQUFBO0FBQUE7QUFBQTtFQTJCQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7RUFDQTtFQUNBO0VBQ0E7O0FBL1hBO0VBQ0k7O0FBR0o7RUFDSTs7QUFHSjtFQUNJOztBQUdKO0VBQ0k7RUFDQTs7QUFHSjtFQUNJO0VBQ0E7O0FBR0o7RUFDSTtFQUNBOztBQUdKO0VBQ0k7RUFDQTs7QUFHSjtFQUNJO0VBQ0E7O0FBR0o7RUFDSTtFQUNBOztBQUdKO0VBQ0k7RUFDQTs7QUFHSjtFQUNJO0VBQ0EsT0NuRU07RURvRU47O0FBRUE7RUFDSSxPQ3pESzs7QUQ0RFQ7RUFDSTs7QUFLUjtFQUNJOztBQUdKO0VBQ0k7RUFDQTtFQUNBO0VBQ0E7O0FBRUE7RUFDSTs7QUFHSjtFQUNJOztBQUlSO0VBQ0k7RUFDQSxrQkN0R0k7O0FEeUdSO0VBQ0k7O0FBR0o7RUFDSTs7QUFHSjtFQUNJOztBQUdKO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0VBT0k7O0FBSUE7RUFDSTs7QUFJUjtBQUFBO0FBQUE7RUFHSTtF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RUFBVztFQUFVO0VBQU87RUFBUTtFQUFpTztFQUEwQztFQUE4QjtFQUFZO0VBQVc7OztBQUFrQjtFQUFpQjs7O0FBQXdCO0VBQW9DOzs7QUFBMkI7RUFBeUM7OztBQUF1QjtFQUE0Qzs7O0FBQTJCO0VBQW1EOzs7O0FDQS9qQztFQUFVOzs7QUFBbUI7RUFBMEM7OztBQUF3QjtFQUE2Qzs7O0FBQTRCO0VBQW9EOzs7QUFBcUM7RUFBYztFQUFhO0VBQWU7RUFBbUI7OztBQUF3QztFQUFpQztFQUFzQjs7O0FBQW9CO0VBQWtDOzs7QUFBaUI7RUFBa0M7RUFBYTtFQUFtQjs7O0FBQWtCO0VBQXVEO0VBQWtCO0VBQVE7OztBQUFTO0VBQTJDO0VBQXFCO0VBQWU7RUFBa0I7RUFBa0I7RUFBZTtFQUFpQjs7O0FBQWlCO0VBQWtEO0VBQThCO0VBQVc7RUFBa0I7RUFBTztFQUFXO0VBQWtCO0VBQVc7RUFBWTtFQUF5Qjs7O0FBQXNCO0VBQTRFO0VBQWdCO0VBQXlCO0VBQWtCO0VBQXNCO0VBQWU7RUFBZ0I7RUFBb0I7RUFBdUI7RUFBbUI7OztBQUFXO0VBQXFDOzs7QUFBOEI7RUFBUztFQUFtQjtFQUFrQjtFQUFvQztFQUFrQjtFQUFnQjtFQUFhO0VBQWU7RUFBaUI7OztBQUF5QjtFQUFvQjs7O0FBQWU7RUFBK0I7OztBQUFjO0VBQWdCOzs7QUFBNEI7RUFBZTtFQUEwQjs7O0FBQWtCO0VBQW1DOzs7QUFBVTtFQUFlO0VBQWtCO0VBQWtCO0VBQWdCOzs7QUFBUztFQUEyQjs7O0FBQXVCO0VBQTBCOzs7QUFBMEI7RUFBc0I7RUFBbUI7OztBQUMvOUQiLCJzb3VyY2VzQ29udGVudCI6WyJAaW1wb3J0ICd2YXJpYWJsZXMnO1xuXG5AbWl4aW4gcmVtb3ZlTWFyZ2luRm9yRWRnZUNoaWxkcmVuIHtcbiAgICAmID4gKjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgfVxuXG4gICAgJiA+ICo6bGFzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxufVxuXG4ueWZtIHtcbiAgICBmb250LWZhbWlseTogdmFyKC0teWZtLWZvbnQtZmFtaWx5LXNhbnMpO1xuICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICBsaW5lLWhlaWdodDogMjBweDtcbiAgICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gICAgY29sb3I6ICR0ZXh0Q29sb3I7XG5cbiAgICAqIHtcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICB9XG5cbiAgICAmID4gKjpub3QoaDIpOm5vdChoMyk6bm90KGg0KTpub3QoaDUpOm5vdChoNik6Zmlyc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgJiA+ICo6bGFzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICBoMSwgaDIsIGgzLCBoNCwgaDUsIGg2IHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICB9XG5cbiAgICBoMSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMzJweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDQwcHg7XG4gICAgfVxuXG4gICAgaDIge1xuICAgICAgICBmb250LXNpemU6IDI0cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyOHB4O1xuICAgIH1cblxuICAgIGgzIHtcbiAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMjRweDtcbiAgICB9XG5cbiAgICBoNCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTdweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDI0cHg7XG4gICAgfVxuXG4gICAgaDUge1xuICAgICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICAgIH1cblxuICAgIGg2IHtcbiAgICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgICBsaW5lLWhlaWdodDogMThweDtcbiAgICB9XG5cbiAgICBhIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGNvbG9yOiAkbGlua0NvbG9yO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgICAgICAgJjpob3ZlciwgJjphY3RpdmUge1xuICAgICAgICAgICAgY29sb3I6ICRsaW5rSG92ZXJDb2xvcjtcbiAgICAgICAgfVxuXG4gICAgICAgICY6bm90KFtocmVmXSkge1xuICAgICAgICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICAgIH1cblxuICAgIH1cblxuICAgIHN0cm9uZyB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgfVxuXG4gICAgaW1nLCBzdmcge1xuICAgICAgICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cbiAgICAgICAgJlthbGlnbj1yaWdodF0ge1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgJlthbGlnbj1sZWZ0XSB7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgaW1nIHtcbiAgICAgICAgb2JqZWN0LWZpdDogY29udGFpbjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJhc2VDb2xvcjtcbiAgICB9XG5cbiAgICBzdmcge1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgfVxuXG4gICAgLmthdGV4IHN2ZyB7XG4gICAgICAgIGhlaWdodDogaW5pdGlhbDtcbiAgICB9XG5cbiAgICBpbWcgKyBzbWFsbCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cblxuICAgIHAsXG4gICAgYmxvY2txdW90ZSxcbiAgICB1bCxcbiAgICBvbCxcbiAgICBkbCxcbiAgICB0YWJsZSxcbiAgICBwcmUge1xuICAgICAgICBtYXJnaW46IDAgMCAxNXB4IDA7XG4gICAgfVxuXG4gICAgdWwsIG9sLCBkbCB7XG4gICAgICAgICYgcHJlIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDE1cHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBjb2RlLFxuICAgIGtiZCxcbiAgICBwcmUge1xuICAgICAgICBmb250LWZhbWlseTogdmFyKC0teWZtLWZvbnQtZmFtaWx5LW1vbm9zcGFjZSk7XG4gICAgICAgIGZvbnQtc2l6ZTogMWVtO1xuICAgICAgICBmb250LWZlYXR1cmUtc2V0dGluZ3M6IG5vcm1hbDtcbiAgICB9XG5cbiAgICBpbnB1dCB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG5cbiAgICAgICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gICAgICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG5cbiAgICAgICAgJlt0eXBlPSdjaGVja2JveCddIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIHRvcDogMXB4O1xuXG4gICAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHRhYmxlIHtcbiAgICAgICAgY29sb3I6ICMzMzM7XG5cbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICBvdmVyZmxvdzogYXV0bztcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB6LWluZGV4OiAxO1xuXG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRib3JkZXJDb2xvcjtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogOHB4O1xuICAgICAgICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuICAgICAgICBib3JkZXItc3BhY2luZzogMDtcbiAgICAgICAgYmFja2dyb3VuZDogJGJhc2VDb2xvcjtcblxuICAgICAgICB0aGVhZCwgdHI6bnRoLWNoaWxkKDJuKSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGVSb3dCYWNrZ3JvdW5kQ29sb3I7XG4gICAgICAgIH1cblxuICAgICAgICB0cjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICB0ZCwgdGgge1xuICAgICAgICAgICAgICAgIGJvcmRlci10b3A6IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICB0cjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgIHRkLCB0aCB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG5cbiAgICAgICAgdGgsIHRkIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggMjBweDtcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRib3JkZXJDb2xvcjtcblxuICAgICAgICAgICAgQGluY2x1ZGUgcmVtb3ZlTWFyZ2luRm9yRWRnZUNoaWxkcmVuKCk7XG4gICAgICAgIH1cblxuICAgICAgICB0ZCB7XG4gICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoIHtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICB9XG5cbiAgICAgICAgdHIgdGQ6Zmlyc3QtY2hpbGQsIHRyIHRoOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgIGJvcmRlci1sZWZ0OiBub25lO1xuICAgICAgICB9XG4gICAgICAgIHRyIHRkOmxhc3QtY2hpbGQsIHRyIHRoOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiBub25lO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgaHIge1xuICAgICAgICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgICAgICAgaGVpZ2h0OiAwLjI1ZW07XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIG1hcmdpbjogMS41ZW0gMDtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYm9yZGVyQ29sb3I7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICAgICAgICBjbGVhcjogYm90aDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGJsb2NrcXVvdGUge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMTJweDtcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDNweCBzb2xpZCAkYWNjZW50Q29sb3I7XG5cbiAgICAgICAgQGluY2x1ZGUgcmVtb3ZlTWFyZ2luRm9yRWRnZUNoaWxkcmVuKCk7XG4gICAgfVxuXG4gICAgZGwge1xuICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgIEBpbmNsdWRlIHJlbW92ZU1hcmdpbkZvckVkZ2VDaGlsZHJlbigpO1xuXG4gICAgICAgIGR0IHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMWVtO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICAgICAgfVxuXG4gICAgICAgIGRkIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgICAgICAgICBwYWRkaW5nOiAwIDE1cHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBkZCB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuXG4gICAgICAgICYgPiBvbDpmaXJzdC1jaGlsZCxcbiAgICAgICAgJiA+IHVsOmZpcnN0LWNoaWxkLFxuICAgICAgICAmID4gZGQ6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgdWwsIG9sIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAyLjJlbTtcbiAgICB9XG5cbiAgICB1bCB1bCxcbiAgICB1bCBvbCxcbiAgICBvbCBvbCxcbiAgICBvbCB1bCB7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuXG4gICAgJjpub3QoLnlmbV9uby1saXN0LXJlc2V0KSB7XG4gICAgICAgIG9sIHtcbiAgICAgICAgICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgICAgICAgICAgIGNvdW50ZXItcmVzZXQ6IGxpc3Q7XG5cbiAgICAgICAgICAgICYgPiBsaSB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgIGNvdW50ZXItaW5jcmVtZW50OiBsaXN0O1xuXG4gICAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICByaWdodDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA0cHg7XG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IGNvdW50ZXJzKGxpc3QsICcuJykgJy4gJztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBsaSB7XG4gICAgICAgIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgICB9XG5cbiAgICBsaSArIGxpIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMC4zM2VtO1xuICAgIH1cblxuICAgIGxpIHAsXG4gICAgbGkgYmxvY2txdW90ZSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDE1cHg7XG4gICAgfVxuXG4gICAgY29kZSB7XG4gICAgICAgIHBhZGRpbmc6IDAuMWVtIDAuNGVtIDAuMTVlbTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGlubGluZUNvZGVCYWNrZ3JvdW5kQ29sb3I7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICAgICAgZm9udC1zaXplOiAwLjg3NWVtO1xuICAgICAgICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICAgICAgICBjb2xvcjogJGlubGluZUNvZGVDb2xvcjtcbiAgICB9XG5cbiAgICBwcmUge1xuICAgICAgICB3b3JkLXdyYXA6IG5vcm1hbDtcbiAgICB9XG5cbiAgICB0YWJsZSBjb2RlIHtcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICB9XG5cbiAgICBwcmUgKiBjb2RlIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgICAgICB3b3JkLXdyYXA6IG5vcm1hbDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgY29sb3I6ICR0ZXh0Q29sb3I7XG4gICAgfVxuXG4gICAgcHJlID4gY29kZSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBwYWRkaW5nOiAxNnB4O1xuICAgICAgICBvdmVyZmxvdzogYXV0bztcblxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29kZUJhY2tncm91bmRDb2xvcjtcbiAgICAgICAgY29sb3I6ICR0ZXh0Q29sb3I7XG5cbiAgICAgICAgd2hpdGUtc3BhY2U6IHByZTtcbiAgICB9XG5cbiAgICBzdXAsIHN1YiB7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAwO1xuICAgIH1cblxuICAgIC8qXG4gICAgICAgIEhpZGVzIGVsZW1lbnQgdmlzdWFsbHksIGJ1dCBsZWF2ZXMgaXQgdmlzaWJsZSBmb3Igc2VhcmNoIGNyYXdsZXJzIGFuZCBzY3JlZW4gcmVhZGVyc1xuXG4gICAgICAgIGh0dHBzOi8vd3d3LmExMXlwcm9qZWN0LmNvbS9wb3N0cy8yMDEzLTAxLTExLWhvdy10by1oaWRlLWNvbnRlbnQvXG4gICAgICAgIGh0dHBzOi8vaHVnb2dpcmF1ZGVsLmNvbS8yMDE2LzEwLzEzL2Nzcy1oaWRlLWFuZC1zZWVrL1xuICAgICovXG4gICAgLnZpc3VhbGx5LWhpZGRlbiB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcblxuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBjbGlwOiByZWN0KDAgMCAwIDApO1xuXG4gICAgICAgIHdpZHRoOiAxcHg7XG4gICAgICAgIGhlaWdodDogMXB4O1xuICAgICAgICBtYXJnaW46IC0xcHg7XG5cbiAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG4gICAgICAgIGJvcmRlcjogMDtcblxuICAgICAgICBjbGlwLXBhdGg6IGluc2V0KDEwMCUpO1xuICAgICAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgICB9XG5cbiAgICAvLyBoaWdobGlnaHQuanMgY29sb3JzXG4gICAgLS15Zm0tY29sb3ItaGxqcy1iYWNrZ3JvdW5kOiAjeyRjb2RlQmFja2dyb3VuZENvbG9yfTtcbiAgICAtLXlmbS1jb2xvci1obGpzLXN1YnN0OiAjNDQ0O1xuICAgIC0teWZtLWNvbG9yLWhsanMtY29tbWVudDogIzg4ODg4ODtcbiAgICAtLXlmbS1jb2xvci1obGpzLWRlbGV0aW9uOiAjODgwMDAwO1xuICAgIC0teWZtLWNvbG9yLWhsanMtc2VjdGlvbjogIzg4MDAwMDtcbiAgICAtLXlmbS1jb2xvci1obGpzLXBzZXVkbzogI0JDNjA2MDtcbiAgICAtLXlmbS1jb2xvci1obGpzLWxpdGVyYWw6ICM3OEE5NjA7XG4gICAgLS15Zm0tY29sb3ItaGxqcy1hZGRpdGlvbjogIzM5NzMwMDtcbiAgICAtLXlmbS1jb2xvci1obGpzLW1ldGE6ICMxZjcxOTk7XG4gICAgLS15Zm0tY29sb3ItaGxqcy1tZXRhLXN0cmluZzogIzRkOTliZjtcbiAgICAtLXlmbS1mb250LWZhbWlseS1tb25vc3BhY2U6IFwiTWVubG9cIiwgXCJNb25hY29cIiwgXCJDb25zb2xhc1wiLCBcIlVidW50dSBNb25vXCIsIFwiTGliZXJhdGlvbiBNb25vXCIsIFwiRGVqYVZ1IFNhbnMgTW9ub1wiLCBcIkNvdXJpZXIgTmV3XCIsIFwiQ291cmllclwiLCBtb25vc3BhY2U7XG4gICAgLS15Zm0tZm9udC1mYW1pbHktc2FuczogJ1NlZ29lIFVJJywgQXJpYWwsIEhlbHZldGljYSwgc2Fucy1zZXJpZiwgJ0FwcGxlIENvbG9yIEVtb2ppJywgJ1NlZ29lIFVJIEVtb2ppJywgJ1NlZ29lIFVJIFN5bWJvbCc7XG59XG4iLCIkYmFzZUNvbG9yOiAjZmZmZmZmO1xuJGFjY2VudENvbG9yOiAjMDI3YmYzO1xuXG4kdGV4dENvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNyk7XG4kYm9yZGVyQ29sb3I6IHJnYmEoMCwgMCwgMCwgMC4wNyk7XG4kYmFja2dyb3VuZENvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMDIpO1xuXG4kaW5saW5lQ29kZUNvbG9yOiByZ2JhKDU5LCA5NiwgMTI4LCAxKTtcbiRpbmxpbmVDb2RlQmFja2dyb3VuZENvbG9yOiByZ2JhKDEwNywgMTMyLCAxNTMsIDAuMTIpO1xuXG4kY29kZUJhY2tncm91bmRDb2xvcjogcmdiYSgxMDcsIDEzMiwgMTUzLCAwLjEyKTtcblxuJHRhYmxlUm93QmFja2dyb3VuZENvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMDIpO1xuXG4kbGlua0NvbG9yOiAkYWNjZW50Q29sb3I7XG4kbGlua0hvdmVyQ29sb3I6ICMwMDQwODA7XG4iLCJAaW1wb3J0ICd2YXJpYWJsZXMnO1xuXG4kaW5mb0NvbG9yOiAkYWNjZW50Q29sb3I7XG4kdGlwQ29sb3I6ICM1NmJkNjc7XG4kd2FybmluZ0NvbG9yOiAjZjE5NTE4O1xuJGltcG9ydGFudENvbG9yOiAjZmY0NjQ1O1xuXG4kaW5mb0JhY2tncm91bmRDb2xvcjogcmdiYSgyLCAxMjMsIDI0MywgMC4wOCk7XG4kdGlwQmFja2dyb3VuZENvbG9yOiByZ2JhKDYzLCAyMDEsIDQ2LCAwLjEpO1xuJHdhcm5pbmdCYWNrZ3JvdW5kQ29sb3I6IHJnYmEoMjU1LCAxMzYsIDAsIDAuMTUpO1xuJGltcG9ydGFudEJhY2tncm91bmRDb2xvcjogcmdiYSgyMzUsIDUwLCAzOCwgMC4wOCk7XG5cbi55Zm0gLnlmbS1ub3RlIHtcbiAgICBtYXgtd2lkdGg6IDEyOTZweDtcbiAgICBtYXJnaW46IDIwcHggMDtcbiAgICBwYWRkaW5nOiAyMHB4IDIwcHggMjBweCA2NHB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XG5cbiAgICAueWZtLW5vdGUtdGl0bGUge1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgIH1cblxuICAgICYgPiBwIHtcbiAgICAgICAgbWFyZ2luOiAwIDAgMTBweCAwO1xuXG4gICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICB3aWR0aDogMjRweDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDI0cHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLTJweDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogLTQ0cHg7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMjBweDtcbiAgICAgICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJGNvbG9yczogKFxuICAgICAgICB5Zm0tYWNjZW50LWluZm86ICRpbmZvQ29sb3IsXG4gICAgICAgIHlmbS1hY2NlbnQtdGlwOiAkdGlwQ29sb3IsXG4gICAgICAgIHlmbS1hY2NlbnQtYWxlcnQ6ICRpbXBvcnRhbnRDb2xvcixcbiAgICAgICAgeWZtLWFjY2VudC13YXJuaW5nOiAkd2FybmluZ0NvbG9yXG4gICAgKTtcblxuICAgIEBlYWNoICR0eXBlLCAkY29sb3IgaW4gJGNvbG9ycyB7XG4gICAgICAgICYuI3skdHlwZX0gPiBwOmZpcnN0LWNoaWxkOjpiZWZvcmUge1xuICAgICAgICAgICAgJHI6IHJlZCgkY29sb3IpO1xuICAgICAgICAgICAgJGc6IGdyZWVuKCRjb2xvcik7XG4gICAgICAgICAgICAkYjogYmx1ZSgkY29sb3IpO1xuICAgICAgICAgICAgJHJnYkNvbG9yOiAncmdiKCcgKyAkciArICcsJyArICRnICsgJywnICsgJGIgKyAnKSc7XG4gICAgICAgICAgICBjb250ZW50OiB1cmwoJ2RhdGE6aW1hZ2Uvc3ZnK3htbCwlM0NzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHdpZHRoPVwiMjRcIiBoZWlnaHQ9XCIyNFwiIHZpZXdCb3g9XCIwIDAgMTYgMTZcIiUzRSUzQ2NpcmNsZSBjeD1cIjhcIiBjeT1cIjhcIiByPVwiOFwiIGZpbGw9XCInICsgJHJnYkNvbG9yICsgJ1wiLyUzRSUzQ3JlY3Qgd2lkdGg9XCIxXCIgaGVpZ2h0PVwiNVwiIHg9XCI3LjVcIiB5PVwiNi41XCIgc3Ryb2tlPVwiJTIzZmZmXCIgcng9XCIuNVwiLyUzRSUzQ2NpcmNsZSBjeD1cIjhcIiBjeT1cIjRcIiByPVwiMVwiIGZpbGw9XCIlMjNmZmZcIi8lM0UlM0Mvc3ZnJTNFJyk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAkYmFja2dyb3VuZENvbG9yczogKFxuICAgICAgICB5Zm0tYWNjZW50LWluZm86ICRpbmZvQmFja2dyb3VuZENvbG9yLFxuICAgICAgICB5Zm0tYWNjZW50LXRpcDogJHRpcEJhY2tncm91bmRDb2xvcixcbiAgICAgICAgeWZtLWFjY2VudC1hbGVydDogJGltcG9ydGFudEJhY2tncm91bmRDb2xvcixcbiAgICAgICAgeWZtLWFjY2VudC13YXJuaW5nOiAkd2FybmluZ0JhY2tncm91bmRDb2xvclxuICAgICk7XG5cbiAgICBAZWFjaCAkdHlwZSwgJGNvbG9yIGluICRiYWNrZ3JvdW5kQ29sb3JzIHtcbiAgICAgICAgJi4jeyR0eXBlfSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkY29sb3I7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIueWZtIHtcbiAgICBoMSwgaDIsIGgzLCBoNCwgaDUsIGg2IHtcbiAgICAgICAgLnlmbS1hbmNob3Ige1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgd2lkdGg6IDI0cHg7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiA0cHg7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogLTI0cHg7XG4gICAgICAgICAgICBmbG9hdDogbGVmdDtcblxuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuXG4gICAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiAnIyc7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICY6aG92ZXIgLnlmbS1hbmNob3I6OmJlZm9yZSB7XG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgdGFibGUge1xuICAgICAgICBoMSwgaDIsIGgzLCBoNCwgaDUsIGg2IHtcbiAgICAgICAgICAgIC55Zm0tYW5jaG9yIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMWVtO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtMWVtO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9O1xuXG4gICAgLnlmbS10YWJzIHtcbiAgICAgICAgLnlmbS1hbmNob3I6OmJlZm9yZSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAycHg7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCJAaW1wb3J0ICd2YXJpYWJsZXMnO1xuXG4ueWZtIHtcbiAgICAuaGxqcyB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBvdmVyZmxvdy14OiBhdXRvO1xuICAgICAgICBwYWRkaW5nOiAxNnB4O1xuICAgICAgICBiYWNrZ3JvdW5kOiAkY29kZUJhY2tncm91bmRDb2xvcjtcbiAgICAgICAgYmFja2dyb3VuZDogdmFyKC0teWZtLWNvbG9yLWhsanMtYmFja2dyb3VuZCk7XG4gICAgfVxuXG4gICAgLmhsanMsXG4gICAgLmhsanMtc3Vic3Qge1xuICAgICAgICBjb2xvcjogIzQ0NDtcbiAgICAgICAgY29sb3I6IHZhcigtLXlmbS1jb2xvci1obGpzLXN1YnN0KTtcbiAgICB9XG5cbiAgICAuaGxqcy1jb21tZW50IHtcbiAgICAgICAgY29sb3I6ICM4ODg4ODg7XG4gICAgICAgIGNvbG9yOiB2YXIoLS15Zm0tY29sb3ItaGxqcy1jb21tZW50KTtcbiAgICB9XG5cblxuICAgIC5obGpzLWtleXdvcmQsXG4gICAgLmhsanMtYXR0cmlidXRlLFxuICAgIC5obGpzLXNlbGVjdG9yLXRhZyxcbiAgICAuaGxqcy1tZXRhLWtleXdvcmQsXG4gICAgLmhsanMtZG9jdGFnLFxuICAgIC5obGpzLW5hbWUge1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICB9XG5cbiAgICAuaGxqcy10eXBlLFxuICAgIC5obGpzLXN0cmluZyxcbiAgICAuaGxqcy1udW1iZXIsXG4gICAgLmhsanMtc2VsZWN0b3ItaWQsXG4gICAgLmhsanMtc2VsZWN0b3ItY2xhc3MsXG4gICAgLmhsanMtcXVvdGUsXG4gICAgLmhsanMtdGVtcGxhdGUtdGFnLFxuICAgIC5obGpzLWRlbGV0aW9uIHtcbiAgICAgICAgY29sb3I6ICM4ODAwMDA7XG4gICAgICAgIGNvbG9yOiB2YXIoLS15Zm0tY29sb3ItaGxqcy1kZWxldGlvbik7XG4gICAgfVxuXG4gICAgLmhsanMtdGl0bGUsXG4gICAgLmhsanMtc2VjdGlvbiB7XG4gICAgICAgIGNvbG9yOiAjODgwMDAwO1xuICAgICAgICBjb2xvcjogdmFyKC0teWZtLWNvbG9yLWhsanMtc2VjdGlvbik7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIH1cblxuICAgIC5obGpzLXJlZ2V4cCxcbiAgICAuaGxqcy1zeW1ib2wsXG4gICAgLmhsanMtdmFyaWFibGUsXG4gICAgLmhsanMtdGVtcGxhdGUtdmFyaWFibGUsXG4gICAgLmhsanMtbGluayxcbiAgICAuaGxqcy1zZWxlY3Rvci1hdHRyLFxuICAgIC5obGpzLXNlbGVjdG9yLXBzZXVkbyB7XG4gICAgICAgIGNvbG9yOiAjQkM2MDYwO1xuICAgICAgICBjb2xvcjogdmFyKC0teWZtLWNvbG9yLWhsanMtcHNldWRvKTtcbiAgICB9XG5cblxuICAgIC5obGpzLWxpdGVyYWwge1xuICAgICAgICBjb2xvcjogIzc4QTk2MDtcbiAgICAgICAgY29sb3I6IHZhcigtLXlmbS1jb2xvci1obGpzLWxpdGVyYWwpO1xuICAgIH1cblxuICAgIC5obGpzLWJ1aWx0X2luLFxuICAgIC5obGpzLWJ1bGxldCxcbiAgICAuaGxqcy1jb2RlLFxuICAgIC5obGpzLWFkZGl0aW9uIHtcbiAgICAgICAgY29sb3I6ICMzOTczMDA7XG4gICAgICAgIGNvbG9yOiB2YXIoLS15Zm0tY29sb3ItaGxqcy1hZGRpdGlvbik7XG4gICAgfVxuXG5cbiAgICAuaGxqcy1tZXRhIHtcbiAgICAgICAgY29sb3I6ICMxZjcxOTk7XG4gICAgICAgIGNvbG9yOiB2YXIoLS15Zm0tY29sb3ItaGxqcy1tZXRhKTtcbiAgICB9XG5cbiAgICAuaGxqcy1tZXRhLXN0cmluZyB7XG4gICAgICAgIGNvbG9yOiAjNGQ5OWJmO1xuICAgICAgICBjb2xvcjogdmFyKC0teWZtLWNvbG9yLWhsanMtbWV0YS1zdHJpbmcpO1xuICAgIH1cblxuXG4gICAgLmhsanMtZW1waGFzaXMge1xuICAgICAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgfVxuXG4gICAgLmhsanMtc3Ryb25nIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgfVxufVxuIiwiLnlmbSB7XG4gICAgJi1jbGlwYm9hcmQge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAueWZtLWNsaXBib2FyZC1idXR0b24ge1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmID4gcHJlIHtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICB9XG5cbiAgICAgICAgJi1idXR0b24ge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAxNnB4O1xuICAgICAgICAgICAgcmlnaHQ6IDE2cHg7XG4gICAgICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICAgICAgb3BhY2l0eTogMDtcblxuICAgICAgICAgICAgLy9yZXNldCBkZWZhdWx0IGJ1dHRvbiBzdHlsZVxuICAgICAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIGZvbnQ6IGluaGVyaXQ7XG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAgICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLWljb24ge1xuICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCJAaW1wb3J0ICd2YXJpYWJsZXMnO1xuXG4kZGVmYXVsdEljb246IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjRiV3h1Y3owaWFIUjBjRG92TDNkM2R5NTNNeTV2Y21jdk1qQXdNQzl6ZG1jaUlIWnBaWGRDYjNnOUlqQWdNQ0F6T0RRZ05URXlJajQ4Y0dGMGFDQm1hV3hzUFNKamRYSnlaVzUwUTI5c2IzSWlJR1E5SWswek5qa3VPU0E1Tnk0NVRESTROaUF4TkVNeU56Y2dOU0F5TmpRdU9DMHVNU0F5TlRJdU1TMHVNVWcwT0VNeU1TNDFJREFnTUNBeU1TNDFJREFnTkRoMk5ERTJZekFnTWpZdU5TQXlNUzQxSURRNElEUTRJRFE0YURJNE9HTXlOaTQxSURBZ05EZ3RNakV1TlNBME9DMDBPRll4TXpFdU9XTXdMVEV5TGpjdE5TNHhMVEkxTFRFMExqRXRNelI2YlMweU1pNDJJREl5TGpkak1pNHhJREl1TVNBekxqVWdOQzQySURRdU1pQTNMalJJTWpVMlZqTXlMalZqTWk0NExqY2dOUzR6SURJdU1TQTNMalFnTkM0eWJEZ3pMamtnT0RNdU9YcE5Nek0ySURRNE1FZzBPR010T0M0NElEQXRNVFl0Tnk0eUxURTJMVEUyVmpRNFl6QXRPQzQ0SURjdU1pMHhOaUF4TmkweE5tZ3hOeloyTVRBMFl6QWdNVE11TXlBeE1DNDNJREkwSURJMElESTBhREV3TkhZek1EUmpNQ0E0TGpndE55NHlJREUyTFRFMklERTJlbTB0TkRndE1qUTBkamhqTUNBMkxqWXROUzQwSURFeUxURXlJREV5U0RFd09HTXROaTQySURBdE1USXROUzQwTFRFeUxURXlkaTA0WXpBdE5pNDJJRFV1TkMweE1pQXhNaTB4TW1neE5qaGpOaTQySURBZ01USWdOUzQwSURFeUlERXllbTB3SURZMGRqaGpNQ0EyTGpZdE5TNDBJREV5TFRFeUlERXlTREV3T0dNdE5pNDJJREF0TVRJdE5TNDBMVEV5TFRFeWRpMDRZekF0Tmk0MklEVXVOQzB4TWlBeE1pMHhNbWd4Tmpoak5pNDJJREFnTVRJZ05TNDBJREV5SURFeWVtMHdJRFkwZGpoak1DQTJMall0TlM0MElERXlMVEV5SURFeVNERXdPR010Tmk0MklEQXRNVEl0TlM0MExURXlMVEV5ZGkwNFl6QXROaTQySURVdU5DMHhNaUF4TWkweE1tZ3hOamhqTmk0MklEQWdNVElnTlM0MElERXlJREV5ZWlJdlBqd3ZjM1puUGc9PVwiKTtcblxuLyoqXG4gICAgUHVibGljIENTUyB2YXJpYWJsZXM6XG4gICAgLS15Zm0tZmlsZS1pY29uICAgICAgICAgICAgIHNldHMgZmlsZSBpY29uIGltYWdlXG4gICAgLS15Zm0tZmlsZS1pY29uLWNvbG9yICAgICAgIHNldHMgZmlsZSBpY29uIGNvbG9yXG4qL1xuXG4ueWZtLWZpbGUge1xuICAgICZfX2ljb24ge1xuICAgICAgICAtLS15Zm0tZmlsZS1pY29uLWltZzogdmFyKC0teWZtLWZpbGUtaWNvbiwgI3skZGVmYXVsdEljb259KTtcblxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHVzZXItc2VsZWN0OiBub25lO1xuXG4gICAgICAgIHdpZHRoOiAxNnB4O1xuICAgICAgICBtYXJnaW46IDAgMnB4O1xuXG4gICAgICAgIGNvbG9yOiB2YXIoLS15Zm0tZmlsZS1pY29uLWNvbG9yLCAjeyR0ZXh0Q29sb3J9KTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogY3VycmVudENvbG9yO1xuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCU7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJTtcblxuICAgICAgICBtYXNrLWltYWdlOiB2YXIoLS0teWZtLWZpbGUtaWNvbi1pbWcpO1xuICAgICAgICBtYXNrLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgICAgIG1hc2stcmVwZWF0OiBuby1yZXBlYXQ7XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICdcXGEwJztcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIi55Zm0tdGVybSB7XG4gICAgJl90aXRsZSB7XG4gICAgICAgIGNvbG9yOiAjMDI3YmYzO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IGRvdHRlZDtcblxuICAgICAgICBmb250LXNpemU6IGluaGVyaXQ7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBjb2xvcjogIzAwNDA4MDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfZGZuIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB6LWluZGV4OiAxMDA7XG5cbiAgICAgICAgd2lkdGg6IGZpdC1jb250ZW50O1xuICAgICAgICBtYXgtd2lkdGg6IDQ1MHB4O1xuXG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYwMHB4KSB7XG4gICAgICAgICAgICAmIHtcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDgwJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgICAgb3BhY2l0eTogMDtcblxuICAgICAgICBwYWRkaW5nOiAxMHB4O1xuXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYigyNTUsIDI1NSwgMjU1KTtcblxuICAgICAgICBmb250LXNpemU6IGluaGVyaXQ7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XG5cbiAgICAgICAgYm9yZGVyLXJhZGl1czogNHB4O1xuXG4gICAgICAgIGJveC1zaGFkb3c6IDAgOHB4IDIwcHggcmdiYSgwLCAwLCAwLCAwLjE1KTtcbiAgICAgICAgb3V0bGluZTogbm9uZTtcblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB6LWluZGV4OiAtMTtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgbGVmdDogMDtcblxuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogaW5oZXJpdDtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCAwIDFweCByZ2IoMjI5LCAyMjksIDIyOSk7XG4gICAgICAgIH1cblxuICAgICAgICAmLm9wZW4ge1xuICAgICAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcblxuICAgICAgICAgICAgYW5pbWF0aW9uLW5hbWU6IHBvcHVwO1xuICAgICAgICAgICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAwLjFzO1xuICAgICAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XG4gICAgICAgICAgICBhbmltYXRpb24tZmlsbC1tb2RlOiBmb3J3YXJkcztcblxuICAgICAgICAgICAgQGtleWZyYW1lcyBwb3B1cCB7XG4gICAgICAgICAgICAgICAgMCUge1xuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTBweCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIDEwMCUge1xuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuIiwiLnlmbSB0YWJsZSB0ZCB7XG4gICAgJi5jZWxsLWFsaWduLXRvcC1sZWZ0LFxuICAgICYuY2VsbC1hbGlnbi1ib3R0b20tbGVmdCB7XG4gICAgICAgIHRleHQtYWxpZ246IHN0YXJ0O1xuICAgIH1cblxuICAgICYuY2VsbC1hbGlnbi10b3AtY2VudGVyLFxuICAgICYuY2VsbC1hbGlnbi1jZW50ZXIge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxuXG4gICAgJi5jZWxsLWFsaWduLXRvcC1yaWdodCxcbiAgICAmLmNlbGwtYWxpZ24tYm90dG9tLXJpZ2h0IHtcbiAgICAgICAgdGV4dC1hbGlnbjogZW5kO1xuICAgIH1cblxuICAgICYuY2VsbC1hbGlnbi10b3AtbGVmdCxcbiAgICAmLmNlbGwtYWxpZ24tdG9wLWNlbnRlcixcbiAgICAmLmNlbGwtYWxpZ24tdG9wLXJpZ2h0IHtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICB9XG5cbiAgICAmLmNlbGwtYWxpZ24tY2VudGVyIHtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICB9XG5cbiAgICAmLmNlbGwtYWxpZ24tYm90dG9tLWxlZnQsXG4gICAgJi5jZWxsLWFsaWduLWJvdHRvbS1yaWdodCB7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBib3R0b207XG4gICAgfVxufVxuXG4iLCIud2lkZS1jb250YWluZXIge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB3aWR0aDogMTAwdnc7XG4gICAgaGVpZ2h0OiAxMDB2aDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgdG9wOiAwcHg7XG4gICAgbGVmdDogMHB4O1xuICAgIHotaW5kZXg6IDIwMDtcblxuICAgICYuZGMtZG9jLXBhZ2Uge1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAud2lkZS1jb250ZW50LXZpZXdlciB7XG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICB9XG5cbiAgICAud2lkZS1jb250ZW50LXdyYXBwZXIge1xuICAgICAgICB6LWluZGV4OiAyMDA7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWctY29sb3ItYmFzZS1iYWNrZ3JvdW5kKTsgICBcbiAgICAgICAgaGVpZ2h0OiA5MHZoO1xuICAgICAgICB3aWR0aDogNzB2dztcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblxuICAgICAgIC53aWRlLWNvbnRlbnQge1xuICAgICAgICAgICAgaGVpZ2h0OiA5NSU7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgICAgICAgLndpZGUtaW5uZXItZWxlbWVudCB7XG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgdGFibGUge1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDBweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLndpZGUtdGhlYWQtY29udGVudCB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICB9XG4gICAgICAgfVxuXG4gICAgICAgLndpZGUtdG9vbGJhciB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggMTJweDtcbiAgICAgICB9XG5cbiAgICAgICAud2lkZS1lbnRpdHktbmFtZSB7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgfVxuXG4gICAgICAgLndpZGUtYWN0aW9ucyB7XG4gICAgICAgICAgICBhbGlnbi1zZWxmOiBmbGV4LWVuZDtcblxuICAgICAgICAgICAgLmNsb3NlLWFjdGlvbiB7XG4gICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDNweDtcblxuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQgMzAwbXM7XG5cbiAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogdmFyKC0tZy1jb2xvci1iYXNlLXNpbXBsZS1ob3Zlcik7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgIH1cbiAgICB9XG59ICAgXG5cbi53aWRlLWVsZW1lbnQtd3JhcHBlciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBnYXA6IDMwcHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgJjpob3ZlciA+IC53aWRlLWNvbnRlbnQtdmlld2VyIHtcbiAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICB9XG5cbiAgICAud2lkZS1pbm5lci1lbGVtZW50IHtcbiAgICAgICAgbWF4LXdpZHRoOiA3MDBweDtcbiAgICB9XG59XG5cbi53aWRlLWNvbnRlbnQtdmlld2VyIHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgd2lkdGg6IDMwcHg7XG4gICAgaGVpZ2h0OiAzMHB4O1xuICAgIHotaW5kZXg6IDEwMDtcbiAgICBwYWRkaW5nOiA2cHg7XG4gICAgYm94LXNpemluZzogY29udGVudC1ib3g7XG4gICAgY29sb3I6IHZhcigtLWctY29sb3ItdGV4dC1wcmltYXJ5KTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAmID4gc3ZnIHtcbiAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgIGhlaWdodDogMjBweDtcbiAgICB9XG59XG5cbi53aWRlLWNvbnRlbnQtb3ZlcmxheSB7XG4gICAgei1pbmRleDogMTAwO1xuICAgIHdpZHRoOiAxMDB2dztcbiAgICBoZWlnaHQ6IDEwMHZoO1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBibGFjaztcbiAgICBvcGFjaXR5OiAwLjY7XG59XG4iLCIueWZtLWN1dHt0cmFuc2l0aW9uOmFsbCAuMTVzO21hcmdpbi1ib3R0b206MTVweH0ueWZtLWN1dC5jdXQtaGlnaGxpZ2h0e2JhY2tncm91bmQtY2xpcDpjb250ZW50LWJveDtib3gtc2hhZG93OjAgM3B4IDAgN3B4IHZhcigtLWctY29sb3ItYmFzZS1zaW1wbGUtaG92ZXIpO2JhY2tncm91bmQtY29sb3I6dmFyKC0tZy1jb2xvci1iYXNlLXNpbXBsZS1ob3Zlcik7Ym9yZGVyLXJhZGl1czozcHh9LnlmbS1jdXQtdGl0bGV7bGlzdC1zdHlsZTpub25lO2N1cnNvcjpwb2ludGVyO3Bvc2l0aW9uOnJlbGF0aXZlO3VzZXItc2VsZWN0Om5vbmU7cGFkZGluZzo1cHggMCA1cHggMzBweH0ueWZtLWN1dC10aXRsZTo6LXdlYmtpdC1kZXRhaWxzLW1hcmtlcntkaXNwbGF5Om5vbmV9LnlmbS1jdXQtdGl0bGU6Zm9jdXN7b3V0bGluZS1jb2xvcjpyZWR9LnlmbS1jdXQtdGl0bGU6YmVmb3Jle2NvbnRlbnQ6XCJcIjt6LWluZGV4OjE7bGVmdDowO3RvcDo1MCU7YmFja2dyb3VuZC1pbWFnZTp1cmwoZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxQSE4yWnlCNGJXeHVjejBpYUhSMGNEb3ZMM2QzZHk1M015NXZjbWN2TWpBd01DOXpkbWNpSUhacFpYZENiM2c5SWpBZ01DQXhOaUF4TmlJK0NpQWdJQ0E4Y0dGMGFDQnpkSEp2YTJVOUltTjFjbkpsYm5SRGIyeHZjaUlnWm1sc2JEMGlibTl1WlNJZ1pEMGlUVE1nTm13MUlEVWdOUzAxSWk4K0Nqd3ZjM1puUGdvPSk7dHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTUwJSkgcm90YXRlKC05MGRlZyk7dHJhbnNpdGlvbjp0cmFuc2Zvcm0gLjNzIGVhc2U7aGVpZ2h0OjIwcHg7d2lkdGg6MjBweDtwb3NpdGlvbjphYnNvbHV0ZX0ueWZtLWN1dC1jb250ZW50e3BhZGRpbmc6NXB4IDAgMTVweCAzMHB4fS55Zm0tY3V0Lm9wZW4+LnlmbS1jdXQtdGl0bGU6YmVmb3Jle3RyYW5zZm9ybTp0cmFuc2xhdGVZKC01MCUpfS55Zm06bm90KC55Zm1fbm8tbGlzdC1yZXNldCkgLnlmbS1jdXQgb2x7Y291bnRlci1yZXNldDpjdXQtbGlzdH0ueWZtOm5vdCgueWZtX25vLWxpc3QtcmVzZXQpIC55Zm0tY3V0IG9sPmxpe2NvdW50ZXItaW5jcmVtZW50OmN1dC1saXN0fS55Zm06bm90KC55Zm1fbm8tbGlzdC1yZXNldCkgLnlmbS1jdXQgb2w+bGk6YmVmb3Jle2NvbnRlbnQ6Y291bnRlcnMoY3V0LWxpc3QsXCIuXCIpIFwiLiBcIn1cbi8qIyBzb3VyY2VNYXBwaW5nVVJMPWluZGV4LmNzcy5tYXAgKi9cbiIsIkBjaGFyc2V0IFwiVVRGLThcIjsueWZtLXRhYnN7bWFyZ2luLWJvdHRvbToxNXB4fS55Zm06bm90KC55Zm1fbm8tbGlzdC1yZXNldCkgLnlmbS10YWJzIG9se2NvdW50ZXItcmVzZXQ6dGFicy1saXN0fS55Zm06bm90KC55Zm1fbm8tbGlzdC1yZXNldCkgLnlmbS10YWJzIG9sPmxpe2NvdW50ZXItaW5jcmVtZW50OnRhYnMtbGlzdH0ueWZtOm5vdCgueWZtX25vLWxpc3QtcmVzZXQpIC55Zm0tdGFicyBvbD5saTpiZWZvcmV7Y29udGVudDpjb3VudGVycyh0YWJzLWxpc3QsXCIuXCIpIFwiLiBcIn0ueWZtLXRhYi1saXN0e2Rpc3BsYXk6ZmxleDtmbGV4LXdyYXA6d3JhcDttYXJnaW4tYm90dG9tOjE1cHg7Ym9yZGVyLWJvdHRvbToxcHggc29saWQgcmdiYSgwLDAsMCwuMDcpfS55Zm0tdGFicy12ZXJ0aWNhbD4ueWZtLXRhYi1saXN0e2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtib3JkZXItYm90dG9tOnVuc2V0fS55Zm0tdGFicy12ZXJ0aWNhbD4ueWZtLXRhYi1wYW5lbHttYXJnaW4tbGVmdDozMHB4fS55Zm0tdGFicy12ZXJ0aWNhbD4ueWZtLXRhYi1ncm91cHtkaXNwbGF5OmZsZXg7ZmxleC1kaXJlY3Rpb246cm93O21hcmdpbi1ib3R0b206NXB4fS55Zm0tdGFicy12ZXJ0aWNhbCAueWZtLXZlcnRpY2FsLXRhYj5pbnB1dFt0eXBlPXJhZGlvXXt2aXNpYmlsaXR5OmhpZGRlbjt3aWR0aDowO2hlaWdodDowfS55Zm0tdGFicy12ZXJ0aWNhbCAueWZtLXZlcnRpY2FsLXRhYj5sYWJlbHtkaXNwbGF5OmlubGluZS1ibG9jaztjdXJzb3I6cG9pbnRlcjtwb3NpdGlvbjpyZWxhdGl2ZTtwYWRkaW5nLWxlZnQ6MjVweDttYXJnaW4tcmlnaHQ6MDtsaW5lLWhlaWdodDoxOHB4O3VzZXItc2VsZWN0Om5vbmV9LnlmbS10YWJzLXZlcnRpY2FsIC55Zm0tdmVydGljYWwtdGFiPmxhYmVsOmJlZm9yZXtmb250LWZhbWlseTppbml0aWFsIWltcG9ydGFudDtjb250ZW50OlwiXCI7cG9zaXRpb246YWJzb2x1dGU7bGVmdDowO2JvdHRvbToxcHg7Ym9yZGVyLXJhZGl1czo1MCU7d2lkdGg6MThweDtoZWlnaHQ6MThweDtib3JkZXI6I2RmZGZkZiAxcHggc29saWQ7YmFja2dyb3VuZC1jb2xvcjojZmZmfS55Zm0tdGFicy12ZXJ0aWNhbCAueWZtLXZlcnRpY2FsLXRhYiBpbnB1dFt0eXBlPXJhZGlvXTpjaGVja2VkK2xhYmVsOmJlZm9yZXtjb250ZW50OlwiXFwyMDIyXCI7YmFja2dyb3VuZC1jb2xvcjojNTI4MmZmO3RleHQtYWxpZ246Y2VudGVyO3ZlcnRpY2FsLWFsaWduOm1pZGRsZTtmb250LXNpemU6MjBweDt3aGl0ZS1zcGFjZTpwcmU7ZGlzcGxheTppbmxpbmUtZmxleDtqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO2FsaWduLWl0ZW1zOmNlbnRlcjtjb2xvcjojZmZmfS55Zm0tdGFicy12ZXJ0aWNhbCAueWZtLXZlcnRpY2FsLXRhYntib3JkZXItYm90dG9tOnVuc2V0IWltcG9ydGFudH0ueWZtLXRhYnttYXJnaW4tYm90dG9tOi0xcHg7bWFyZ2luLXJpZ2h0OjIwcHg7Ym9yZGVyLWJvdHRvbToycHggc29saWQgdHJhbnNwYXJlbnQ7cGFkZGluZzo2cHggMCA3cHg7Zm9udC13ZWlnaHQ6NzAwO291dGxpbmU6bm9uZTtjdXJzb3I6cG9pbnRlcjt1c2VyLXNlbGVjdDpub25lO3doaXRlLXNwYWNlOmJyZWFrLXNwYWNlc30ueWZtLXRhYjpsYXN0LWNoaWxke21hcmdpbi1yaWdodDowfS55Zm0tdGFiOmhvdmVyLC55Zm0tdGFiOmFjdGl2ZXtjb2xvcjojMDA0MDgwfS55Zm0tdGFiLmFjdGl2ZXtib3JkZXItYm90dG9tLWNvbG9yOiMwMjdiZjN9LnlmbS10YWI6Zm9jdXN7b3V0bGluZToycHggc29saWQgIzRkOTBmZTtib3JkZXItcmFkaXVzOjJweH0ueWZtLXRhYjpmb2N1czpub3QoOmZvY3VzLXZpc2libGUpe291dGxpbmU6MH0ueWZtLXRhYi1wYW5lbHtwb3NpdGlvbjpyZWxhdGl2ZTt2aXNpYmlsaXR5OmhpZGRlbjtvdmVyZmxvdzpoaWRkZW47aGVpZ2h0OjB9LnlmbS10YWItcGFuZWw6Zmlyc3QtY2hpbGR7bWFyZ2luLXRvcDowIWltcG9ydGFudH0ueWZtLXRhYi1wYW5lbDpsYXN0LWNoaWxke21hcmdpbi1ib3R0b206MCFpbXBvcnRhbnR9LnlmbS10YWItcGFuZWwuYWN0aXZle3Zpc2liaWxpdHk6dmlzaWJsZTtoZWlnaHQ6YXV0b31cbi8qIyBzb3VyY2VNYXBwaW5nVVJMPWluZGV4LmNzcy5tYXAgKi9cbiJdfQ== */", "@import 'variables';\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 font-family: var(--yfm-font-family-sans);\n font-size: 15px;\n line-height: 20px;\n word-wrap: break-word;\n color: $textColor;\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, h2, h3, h4, h5, 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: $linkColor;\n text-decoration: none;\n\n &:hover, &:active {\n color: $linkHoverColor;\n }\n\n &:not([href]) {\n color: inherit;\n }\n\n }\n\n strong {\n font-weight: 700;\n }\n\n img, svg {\n box-sizing: content-box;\n max-width: 100%;\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: $baseColor;\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: 0 0 15px 0;\n }\n\n ul, ol, 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: #333;\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 $borderColor;\n border-radius: 8px;\n border-collapse: collapse;\n border-spacing: 0;\n background: $baseColor;\n\n thead, tr:nth-child(2n) {\n background-color: $tableRowBackgroundColor;\n }\n\n tr:first-child {\n td, th {\n border-top: none;\n }\n }\n\n tr:last-child {\n td, th {\n border-bottom: none;\n }\n }\n\n\n th, td {\n padding: 10px 20px;\n overflow: hidden;\n text-overflow: ellipsis;\n border: 1px solid $borderColor;\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, tr th:first-child {\n border-left: none;\n }\n tr td:last-child, 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: $borderColor;\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 $accentColor;\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 & > ol:first-child,\n & > ul:first-child,\n & > dd:first-child {\n padding-left: 0;\n }\n }\n\n ul, 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 &:not(.yfm_no-list-reset) {\n ol {\n list-style-type: none;\n counter-reset: list;\n\n & > li {\n position: relative;\n counter-increment: list;\n\n &::before {\n position: absolute;\n right: 100%;\n margin-right: 4px;\n content: counters(list, '.') '. ';\n }\n }\n }\n }\n\n li {\n word-wrap: break-word;\n }\n\n li + li {\n margin-top: 0.33em;\n }\n\n li p,\n li blockquote {\n margin-top: 15px;\n }\n\n code {\n padding: 0.1em 0.4em 0.15em;\n background-color: $inlineCodeBackgroundColor;\n border-radius: 4px;\n font-size: 0.875em;\n white-space: normal;\n color: $inlineCodeColor;\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: $textColor;\n }\n\n pre > code {\n display: block;\n padding: 16px;\n overflow: auto;\n\n background-color: $codeBackgroundColor;\n color: $textColor;\n\n white-space: pre;\n }\n\n sup, 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 // highlight.js colors\n --yfm-color-hljs-background: #{$codeBackgroundColor};\n --yfm-color-hljs-subst: #444;\n --yfm-color-hljs-comment: #888888;\n --yfm-color-hljs-deletion: #880000;\n --yfm-color-hljs-section: #880000;\n --yfm-color-hljs-pseudo: #BC6060;\n --yfm-color-hljs-literal: #78A960;\n --yfm-color-hljs-addition: #397300;\n --yfm-color-hljs-meta: #1f7199;\n --yfm-color-hljs-meta-string: #4d99bf;\n --yfm-font-family-monospace: \"Menlo\", \"Monaco\", \"Consolas\", \"Ubuntu Mono\", \"Liberation Mono\", \"DejaVu Sans Mono\", \"Courier New\", \"Courier\", monospace;\n --yfm-font-family-sans: 'Segoe UI', Arial, Helvetica, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol';\n}\n", "$baseColor: #ffffff;\n$accentColor: #027bf3;\n\n$textColor: rgba(0, 0, 0, 0.7);\n$borderColor: rgba(0, 0, 0, 0.07);\n$backgroundColor: rgba(0, 0, 0, 0.02);\n\n$inlineCodeColor: rgba(59, 96, 128, 1);\n$inlineCodeBackgroundColor: rgba(107, 132, 153, 0.12);\n\n$codeBackgroundColor: rgba(107, 132, 153, 0.12);\n\n$tableRowBackgroundColor: rgba(0, 0, 0, 0.02);\n\n$linkColor: $accentColor;\n$linkHoverColor: #004080;\n", "@import 'variables';\n\n$infoColor: $accentColor;\n$tipColor: #56bd67;\n$warningColor: #f19518;\n$importantColor: #ff4645;\n\n$infoBackgroundColor: rgba(2, 123, 243, 0.08);\n$tipBackgroundColor: rgba(63, 201, 46, 0.1);\n$warningBackgroundColor: rgba(255, 136, 0, 0.15);\n$importantBackgroundColor: rgba(235, 50, 38, 0.08);\n\n.yfm .yfm-note {\n max-width: 1296px;\n margin: 20px 0;\n padding: 20px 20px 20px 64px;\n border-radius: 10px;\n\n .yfm-note-title {\n font-weight: 700;\n }\n\n & > p {\n margin: 0 0 10px 0;\n\n &:first-child {\n &::before {\n box-sizing: content-box;\n display: block;\n width: 24px;\n height: 24px;\n margin-top: -2px;\n margin-left: -44px;\n padding-right: 20px;\n float: left;\n }\n }\n\n &:last-child {\n margin-bottom: 0;\n }\n }\n\n $colors: (\n yfm-accent-info: $infoColor,\n yfm-accent-tip: $tipColor,\n yfm-accent-alert: $importantColor,\n yfm-accent-warning: $warningColor\n );\n\n @each $type, $color in $colors {\n &.#{$type} > p:first-child::before {\n $r: red($color);\n $g: green($color);\n $b: blue($color);\n $rgbColor: 'rgb(' + $r + ',' + $g + ',' + $b + ')';\n content: url('data:image/svg+xml,%3Csvg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 16 16\"%3E%3Ccircle cx=\"8\" cy=\"8\" r=\"8\" fill=\"' + $rgbColor + '\"/%3E%3Crect width=\"1\" height=\"5\" x=\"7.5\" y=\"6.5\" stroke=\"%23fff\" rx=\".5\"/%3E%3Ccircle cx=\"8\" cy=\"4\" r=\"1\" fill=\"%23fff\"/%3E%3C/svg%3E');\n }\n }\n\n $backgroundColors: (\n yfm-accent-info: $infoBackgroundColor,\n yfm-accent-tip: $tipBackgroundColor,\n yfm-accent-alert: $importantBackgroundColor,\n yfm-accent-warning: $warningBackgroundColor\n );\n\n @each $type, $color in $backgroundColors {\n &.#{$type} {\n background: $color;\n }\n }\n}\n", ".yfm {\n h1, h2, h3, h4, h5, h6 {\n .yfm-anchor {\n display: inline-block;\n width: 24px;\n padding-right: 4px;\n margin-left: -24px;\n float: left;\n\n text-align: center;\n font-size: 18px;\n\n &:focus {\n &::before {\n opacity: 1;\n }\n }\n\n &::before {\n content: '#';\n opacity: 0;\n }\n }\n\n &:hover .yfm-anchor::before {\n opacity: 1;\n }\n }\n\n table {\n h1, h2, h3, h4, h5, h6 {\n .yfm-anchor {\n width: 1em;\n margin-left: -1em;\n padding-right: 0;\n }\n }\n };\n\n .yfm-tabs {\n .yfm-anchor::before {\n position: absolute;\n padding-right: 2px;\n }\n }\n}\n", "@import 'variables';\n\n.yfm {\n .hljs {\n display: block;\n overflow-x: auto;\n padding: 16px;\n background: $codeBackgroundColor;\n background: var(--yfm-color-hljs-background);\n }\n\n .hljs,\n .hljs-subst {\n color: #444;\n color: var(--yfm-color-hljs-subst);\n }\n\n .hljs-comment {\n color: #888888;\n color: var(--yfm-color-hljs-comment);\n }\n\n\n .hljs-keyword,\n .hljs-attribute,\n .hljs-selector-tag,\n .hljs-meta-keyword,\n .hljs-doctag,\n .hljs-name {\n font-weight: bold;\n }\n\n .hljs-type,\n .hljs-string,\n .hljs-number,\n .hljs-selector-id,\n .hljs-selector-class,\n .hljs-quote,\n .hljs-template-tag,\n .hljs-deletion {\n color: #880000;\n color: var(--yfm-color-hljs-deletion);\n }\n\n .hljs-title,\n .hljs-section {\n color: #880000;\n color: var(--yfm-color-hljs-section);\n font-weight: bold;\n }\n\n .hljs-regexp,\n .hljs-symbol,\n .hljs-variable,\n .hljs-template-variable,\n .hljs-link,\n .hljs-selector-attr,\n .hljs-selector-pseudo {\n color: #BC6060;\n color: var(--yfm-color-hljs-pseudo);\n }\n\n\n .hljs-literal {\n color: #78A960;\n color: var(--yfm-color-hljs-literal);\n }\n\n .hljs-built_in,\n .hljs-bullet,\n .hljs-code,\n .hljs-addition {\n color: #397300;\n color: var(--yfm-color-hljs-addition);\n }\n\n\n .hljs-meta {\n color: #1f7199;\n color: var(--yfm-color-hljs-meta);\n }\n\n .hljs-meta-string {\n color: #4d99bf;\n color: var(--yfm-color-hljs-meta-string);\n }\n\n\n .hljs-emphasis {\n font-style: italic;\n }\n\n .hljs-strong {\n font-weight: bold;\n }\n}\n", ".yfm {\n &-clipboard {\n position: relative;\n\n &:hover {\n .yfm-clipboard-button {\n opacity: 1;\n }\n }\n\n & > pre {\n border-radius: 10px;\n overflow: hidden;\n }\n\n &-button {\n position: absolute;\n top: 16px;\n right: 16px;\n z-index: 1;\n opacity: 0;\n\n //reset default button style\n background: none;\n color: inherit;\n border: none;\n padding: 0;\n font: inherit;\n cursor: pointer;\n\n &:focus {\n opacity: 1;\n }\n }\n\n &-icon {\n pointer-events: none;\n }\n }\n}\n", "@import 'variables';\n\n$defaultIcon: url(\"data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAzODQgNTEyIj48cGF0aCBmaWxsPSJjdXJyZW50Q29sb3IiIGQ9Ik0zNjkuOSA5Ny45TDI4NiAxNEMyNzcgNSAyNjQuOC0uMSAyNTIuMS0uMUg0OEMyMS41IDAgMCAyMS41IDAgNDh2NDE2YzAgMjYuNSAyMS41IDQ4IDQ4IDQ4aDI4OGMyNi41IDAgNDgtMjEuNSA0OC00OFYxMzEuOWMwLTEyLjctNS4xLTI1LTE0LjEtMzR6bS0yMi42IDIyLjdjMi4xIDIuMSAzLjUgNC42IDQuMiA3LjRIMjU2VjMyLjVjMi44LjcgNS4zIDIuMSA3LjQgNC4ybDgzLjkgODMuOXpNMzM2IDQ4MEg0OGMtOC44IDAtMTYtNy4yLTE2LTE2VjQ4YzAtOC44IDcuMi0xNiAxNi0xNmgxNzZ2MTA0YzAgMTMuMyAxMC43IDI0IDI0IDI0aDEwNHYzMDRjMCA4LjgtNy4yIDE2LTE2IDE2em0tNDgtMjQ0djhjMCA2LjYtNS40IDEyLTEyIDEySDEwOGMtNi42IDAtMTItNS40LTEyLTEydi04YzAtNi42IDUuNC0xMiAxMi0xMmgxNjhjNi42IDAgMTIgNS40IDEyIDEyem0wIDY0djhjMCA2LjYtNS40IDEyLTEyIDEySDEwOGMtNi42IDAtMTItNS40LTEyLTEydi04YzAtNi42IDUuNC0xMiAxMi0xMmgxNjhjNi42IDAgMTIgNS40IDEyIDEyem0wIDY0djhjMCA2LjYtNS40IDEyLTEyIDEySDEwOGMtNi42IDAtMTItNS40LTEyLTEydi04YzAtNi42IDUuNC0xMiAxMi0xMmgxNjhjNi42IDAgMTIgNS40IDEyIDEyeiIvPjwvc3ZnPg==\");\n\n/**\n Public CSS variables:\n --yfm-file-icon sets file icon image\n --yfm-file-icon-color sets file icon color\n*/\n\n.yfm-file {\n &__icon {\n ---yfm-file-icon-img: var(--yfm-file-icon, #{$defaultIcon});\n\n display: inline-block;\n user-select: none;\n\n width: 16px;\n margin: 0 2px;\n\n color: var(--yfm-file-icon-color, #{$textColor});\n background-color: currentColor;\n background-repeat: no-repeat;\n background-position: 50%;\n background-size: 100%;\n\n mask-image: var(---yfm-file-icon-img);\n mask-position: center;\n mask-repeat: no-repeat;\n\n &::before {\n content: '\\a0';\n }\n }\n}\n", ".yfm-term {\n &_title {\n color: #027bf3;\n cursor: pointer;\n\n border-bottom: 1px dotted;\n\n font-size: inherit;\n line-height: inherit;\n font-style: normal;\n\n &:hover {\n color: #004080;\n }\n }\n\n &_dfn {\n position: absolute;\n z-index: 100;\n\n width: fit-content;\n max-width: 450px;\n\n @media screen and (max-width: 600px) {\n & {\n max-width: 80%;\n }\n }\n\n visibility: hidden;\n opacity: 0;\n\n padding: 10px;\n\n background-color: rgb(255, 255, 255);\n\n font-size: inherit;\n line-height: inherit;\n font-style: normal;\n\n border-radius: 4px;\n\n box-shadow: 0 8px 20px rgba(0, 0, 0, 0.15);\n outline: none;\n\n &::before {\n content: '';\n position: absolute;\n z-index: -1;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n\n border-radius: inherit;\n box-shadow: 0 0 0 1px rgb(229, 229, 229);\n }\n\n &.open {\n visibility: visible;\n\n animation-name: popup;\n animation-duration: 0.1s;\n animation-timing-function: ease-out;\n animation-fill-mode: forwards;\n\n @keyframes popup {\n 0% {\n opacity: 0;\n transform: translateY(10px);\n }\n 100% {\n opacity: 1;\n transform: translateY(0);\n }\n }\n }\n }\n}\n", ".yfm table td {\n &.cell-align-top-left,\n &.cell-align-bottom-left {\n text-align: start;\n }\n\n &.cell-align-top-center,\n &.cell-align-center {\n text-align: center;\n }\n\n &.cell-align-top-right,\n &.cell-align-bottom-right {\n text-align: end;\n }\n\n &.cell-align-top-left,\n &.cell-align-top-center,\n &.cell-align-top-right {\n vertical-align: top;\n }\n\n &.cell-align-center {\n vertical-align: middle;\n }\n\n &.cell-align-bottom-left,\n &.cell-align-bottom-right {\n vertical-align: bottom;\n }\n}\n\n", ".wide-container {\n position: fixed;\n width: 100vw;\n height: 100vh;\n display: flex;\n justify-content: center;\n align-items: center;\n top: 0px;\n left: 0px;\n z-index: 200;\n\n &.dc-doc-page {\n max-width: 100% !important;\n }\n\n .wide-content-viewer {\n visibility: hidden;\n }\n\n .wide-content-wrapper {\n z-index: 200;\n background-color: var(--g-color-base-background); \n height: 90vh;\n width: 70vw;\n border-radius: 10px;\n display: flex;\n flex-direction: column;\n\n .wide-content {\n height: 95%;\n width: 100%;\n\n .wide-inner-element {\n max-width: 100%;\n width: 100%;\n height: 100%;\n }\n\n table {\n border-radius: 0px;\n }\n\n .wide-thead-content {\n display: table;\n width: 100%;\n }\n }\n\n .wide-toolbar {\n display: flex;\n flex-direction: row;\n width: 100%;\n justify-content: space-between;\n align-items: center;\n padding: 10px 12px;\n }\n\n .wide-entity-name {\n margin: 0;\n font-size: 18px;\n }\n\n .wide-actions {\n align-self: flex-end;\n\n .close-action {\n cursor: pointer;\n border-radius: 3px;\n\n transition: background 300ms;\n\n &:hover {\n background: var(--g-color-base-simple-hover);\n }\n }\n }\n }\n} \n\n.wide-element-wrapper {\n display: flex;\n gap: 30px;\n position: relative;\n\n &:hover > .wide-content-viewer {\n visibility: visible;\n }\n\n .wide-inner-element {\n max-width: 700px;\n }\n}\n\n.wide-content-viewer {\n visibility: hidden;\n width: 30px;\n height: 30px;\n z-index: 100;\n padding: 6px;\n box-sizing: content-box;\n color: var(--g-color-text-primary);\n cursor: pointer;\n\n & > svg {\n width: 20px;\n height: 20px;\n }\n}\n\n.wide-content-overlay {\n z-index: 100;\n width: 100vw;\n height: 100vh;\n position: fixed;\n top: 0;\n left: 0;\n background-color: black;\n opacity: 0.6;\n}\n", ".yfm-cut{transition:all .15s;margin-bottom:15px}.yfm-cut.cut-highlight{background-clip:content-box;box-shadow:0 3px 0 7px var(--g-color-base-simple-hover);background-color:var(--g-color-base-simple-hover);border-radius:3px}.yfm-cut-title{list-style:none;cursor:pointer;position:relative;user-select:none;padding:5px 0 5px 30px}.yfm-cut-title::-webkit-details-marker{display:none}.yfm-cut-title:focus{outline-color:red}.yfm-cut-title:before{content:\"\";z-index:1;left:0;top:50%;background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxNiAxNiI+CiAgICA8cGF0aCBzdHJva2U9ImN1cnJlbnRDb2xvciIgZmlsbD0ibm9uZSIgZD0iTTMgNmw1IDUgNS01Ii8+Cjwvc3ZnPgo=);transform:translateY(-50%) rotate(-90deg);transition:transform .3s ease;height:20px;width:20px;position:absolute}.yfm-cut-content{padding:5px 0 15px 30px}.yfm-cut.open>.yfm-cut-title:before{transform:translateY(-50%)}.yfm:not(.yfm_no-list-reset) .yfm-cut ol{counter-reset:cut-list}.yfm:not(.yfm_no-list-reset) .yfm-cut ol>li{counter-increment:cut-list}.yfm:not(.yfm_no-list-reset) .yfm-cut ol>li:before{content:counters(cut-list,\".\") \". \"}\n/*# sourceMappingURL=index.css.map */\n", "@charset \"UTF-8\";.yfm-tabs{margin-bottom:15px}.yfm:not(.yfm_no-list-reset) .yfm-tabs ol{counter-reset:tabs-list}.yfm:not(.yfm_no-list-reset) .yfm-tabs ol>li{counter-increment:tabs-list}.yfm:not(.yfm_no-list-reset) .yfm-tabs ol>li:before{content:counters(tabs-list,\".\") \". \"}.yfm-tab-list{display:flex;flex-wrap:wrap;margin-bottom:15px;border-bottom:1px solid rgba(0,0,0,.07)}.yfm-tabs-vertical>.yfm-tab-list{flex-direction:column;border-bottom:unset}.yfm-tabs-vertical>.yfm-tab-panel{margin-left:30px}.yfm-tabs-vertical>.yfm-tab-group{display:flex;flex-direction:row;margin-bottom:5px}.yfm-tabs-vertical .yfm-vertical-tab>input[type=radio]{visibility:hidden;width:0;height:0}.yfm-tabs-vertical .yfm-vertical-tab>label{display:inline-block;cursor:pointer;position:relative;padding-left:25px;margin-right:0;line-height:18px;user-select:none}.yfm-tabs-vertical .yfm-vertical-tab>label:before{font-family:initial!important;content:\"\";position:absolute;left:0;bottom:1px;border-radius:50%;width:18px;height:18px;border:#dfdfdf 1px solid;background-color:#fff}.yfm-tabs-vertical .yfm-vertical-tab input[type=radio]:checked+label:before{content:\"\\2022\";background-color:#5282ff;text-align:center;vertical-align:middle;font-size:20px;white-space:pre;display:inline-flex;justify-content:center;align-items:center;color:#fff}.yfm-tabs-vertical .yfm-vertical-tab{border-bottom:unset!important}.yfm-tab{margin-bottom:-1px;margin-right:20px;border-bottom:2px solid transparent;padding:6px 0 7px;font-weight:700;outline:none;cursor:pointer;user-select:none;white-space:break-spaces}.yfm-tab:last-child{margin-right:0}.yfm-tab:hover,.yfm-tab:active{color:#004080}.yfm-tab.active{border-bottom-color:#027bf3}.yfm-tab:focus{outline:2px solid #4d90fe;border-radius:2px}.yfm-tab:focus:not(:focus-visible){outline:0}.yfm-tab-panel{position:relative;visibility:hidden;overflow:hidden;height:0}.yfm-tab-panel:first-child{margin-top:0!important}.yfm-tab-panel:last-child{margin-bottom:0!important}.yfm-tab-panel.active{visibility:visible;height:auto}\n/*# sourceMappingURL=index.css.map */\n"],
5
- "mappings": "iBCYA,CAAA,IACI,YAAA,QAAA,CAAA,KAAA,CAAA,SAAA,CAAA,UAAA,CAAA,mBAAA,CAAA,gBAAA,CAAA,gBAAA,YAAA,IAAA,wBACA,UAAA,KACA,YAAA,KACA,UAAA,WACA,MAAA,UAsXA,6BAAA,KAAA,GAAA,EAAA,GAAA,EAAA,GAAA,EAAA,KACA,wBAAA,KACA,0BAAA,QACA,2BAAA,QACA,0BAAA,QACA,yBAAA,QACA,0BAAA,QACA,2BAAA,QACA,uBAAA,QACA,8BAAA,QACA,6BAAA,OAAA,EAAA,QAAA,EAAA,UAAA,EAAA,aAAA,EAAA,iBAAA,EAAA,kBAAA,EAAA,aAAA,EAAA,SAAA,EAAA,UACA,wBAAA,UAAA,EAAA,KAAA,EAAA,SAAA,EAAA,UAAA,EAAA,mBAAA,EAAA,gBAAA,EAAA,iBDzXJ,CCNI,CAPJ,IAOI,EACI,WAAA,UDQR,CCLI,CAXJ,GAWI,CAAA,CAAA,KAAA,GAAA,KAAA,GAAA,KAAA,GAAA,KAAA,GAAA,KAAA,GAAA,aACI,WAAA,WDOR,CCJI,CAfJ,GAeI,CAAA,CAAA,YACI,cAAA,WDMR,CCHI,CAnBJ,IAmBI,GAAA,CAnBJ,IAmBI,GAAA,CAnBJ,IAmBI,GAAA,CAnBJ,IAmBI,GAAA,CAnBJ,IAmBI,GAAA,CAnBJ,IAmBI,GACI,cAAA,KACA,YAAA,GDKR,CCFI,CAxBJ,IAwBI,GACI,UAAA,KACA,YAAA,IDIR,CCDI,CA7BJ,IA6BI,GACI,UAAA,KACA,YAAA,IDGR,CCAI,CAlCJ,IAkCI,GACI,UAAA,KACA,YAAA,IDER,CCCI,CAvCJ,IAuCI,GACI,UAAA,KACA,YAAA,IDCR,CCEI,CA5CJ,IA4CI,GACI,UAAA,KACA,YAAA,IDAR,CCGI,CAjDJ,IAiDI,GACI,UAAA,KACA,YAAA,IDDR,CCII,CAtDJ,IAsDI,EACI,iBAAA,YACA,MAAA,QACA,wBAAA,KAAA,gBAAA,IDFR,CCIQ,CA3DR,IA2DQ,CAAA,OAAA,CA3DR,IA2DQ,CAAA,QACI,MAAA,ODFZ,CCKQ,CA/DR,IA+DQ,CAAA,KAAA,CAAA,OACI,MAAA,ODHZ,CCQI,CArEJ,IAqEI,OACI,YAAA,GDNR,CCSI,CAzEJ,IAyEI,IAAA,CAzEJ,IAyEI,IACI,WAAA,YACA,UAAA,KACA,OAAA,KACA,eAAA,MDPR,CCSQ,CA/ER,IA+EQ,GAAA,CAAA,aAAA,CA/ER,IA+EQ,GAAA,CAAA,aACI,aAAA,IDPZ,CCUQ,CAnFR,IAmFQ,GAAA,CAAA,YAAA,CAnFR,IAmFQ,GAAA,CAAA,YACI,cAAA,IDRZ,CCYI,CAxFJ,IAwFI,IACI,cAAA,QAAA,WAAA,QACA,iBAAA,IDVR,CCaI,CA7FJ,IA6FI,IACI,OAAA,IDXR,CCcI,CAjGJ,IAiGI,CAAA,MAAA,IACI,OAAA,KAAA,OAAA,ODZR,CCeI,CArGJ,IAqGI,GAAA,CAAA,MACI,QAAA,KDbR,CCgBI,CAzGJ,IAyGI,GAzGJ,IAAA,YAAA,IAAA,IAAA,IAAA,IAAA,IAAA,IAAA,IAAA,OAAA,IAAA,WAgHQ,EAAA,EAAA,IDdR,CCkBQ,CApHR,IAoHQ,GAAA,IAAA,CApHR,IAoHQ,GAAA,IAAA,CApHR,IAoHQ,GAAA,IACI,WAAA,IDhBZ,CCoBI,CAzHJ,IAyHI,MAzHJ,IAAA,KAAA,IAAA,IA4HQ,YAAA,IAAA,6BACA,UAAA,IACA,sBAAA,MDlBR,CCqBI,CAjIJ,IAiII,aACI,EACA,SAAA,QAEA,YAAA,QACA,UAAA,QACA,YAAA,ODpBR,CCsBQ,CAzIR,IAyIQ,KAAA,CAAA,eACI,SAAA,SACA,IAAA,IAEA,WAAA,mBACA,CDrBZ,CCyBI,CAlJJ,IAkJI,MACI,MAAA,KAEA,QAAA,aACA,UAAA,KACA,MAAA,KACA,SAAA,KACA,SAAA,SACA,QAAA,EAEA,WAAA,WACA,OAAA,IAAA,MAAA,KAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,mBACA,IACA,gBAAA,SACA,eAAA,EACA,WAAA,IDzBR,CC2BQ,CAnKR,IAmKQ,MAAA,MAAA,CAnKR,IAmKQ,MAAA,EAAA,eACI,iBAAA,SDzBZ,CC6BY,CAxKZ,IAwKY,MAAA,EAAA,aAAA,GAAA,CAxKZ,IAwKY,MAAA,EAAA,aAAA,GACI,WAAA,ID3BhB,CCgCY,CA9KZ,IA8KY,MAAA,EAAA,YAAA,GAAA,CA9KZ,IA8KY,MAAA,EAAA,YAAA,GACI,cAAA,ID9BhB,CCmCQ,CApLR,IAoLQ,MAAA,GAAA,CApLR,IAoLQ,MAAA,WACI,KAAA,KACA,SAAA,OACA,cAAA,SACA,OAAA,IAAA,MAAA,KAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,IDjCZ,CChKI,CASJ,IATI,MAAA,EAAA,CAAA,CAAA,aAAA,CASJ,IATI,MAAA,EAAA,CAAA,CAAA,aACI,WAAA,CDkKR,CC/JI,CAKJ,IALI,MAAA,EAAA,CAAA,CAAA,YAAA,CAKJ,IALI,MAAA,EAAA,CAAA,CAAA,YACI,cAAA,CDiKR,CCgCQ,CA7LR,IA6LQ,MAAA,GACI,eAAA,IACA,YAAA,MD9BZ,CCiCQ,CAlMR,IAkMQ,MAAA,GACI,YAAA,IACA,WAAA,ID/BZ,CCkCQ,CAvMR,IAuMQ,MAAA,GAAA,EAAA,aAAA,CAvMR,IAuMQ,MAAA,GAAA,EAAA,aACI,YAAA,IDhCZ,CCkCQ,CA1MR,IA0MQ,MAAA,GAAA,EAAA,YAAA,CA1MR,IA0MQ,MAAA,GAAA,EAAA,YACI,aAAA,IDhCZ,CCoCI,CA/MJ,IA+MI,GACI,WAAA,YACA,OAAA,cACA,SACA,MAAA,EACA,SAAA,OAEA,iBAAA,UACA,OAAA,IDnCR,CCqCQ,CAzNR,IAyNQ,EAAA,QACI,QAAA,GACA,QAAA,KDnCZ,CCsCQ,CA9NR,IA8NQ,EAAA,OACI,QAAA,GACA,QAAA,MACA,MAAA,IDpCZ,CCwCI,CArOJ,IAqOI,WACI,SAAA,SACA,aAAA,KACA,YAAA,IAAA,MAAA,ODtCR,CC3MI,CASJ,IATI,UAAA,CAAA,CAAA,aACI,WAAA,CD6MR,CC1MI,CAKJ,IALI,UAAA,CAAA,CAAA,YACI,cAAA,CD4MR,CCqCI,CA7OJ,IA6OI,WACI,CDnCR,CCpNI,CASJ,IATI,EAAA,CAAA,CAAA,aACI,WAAA,CDsNR,CCnNI,CAKJ,IALI,EAAA,CAAA,CAAA,YACI,cAAA,CDqNR,CCiCQ,CAlPR,IAkPQ,GAAA,GACI,cAAA,IACA,UAAA,IACA,YAAA,IACA,WAAA,MD/BZ,CCkCQ,CAzPR,IAyPQ,GAAA,GACI,cAAA,aACA,EAAA,IDhCZ,CCoCI,CA/PJ,IA+PI,GACI,YAAA,CDlCR,CCoCQ,CAlQR,IAkQQ,EAAA,CAAA,EAAA,aAAA,CAlQR,IAkQQ,EAAA,CAAA,EAAA,aAAA,CAlQR,IAkQQ,EAAA,CAAA,EAAA,aAGI,aAAA,CDpCZ,CCwCI,CAzQJ,IAyQI,GAAA,CAzQJ,IAyQI,GACI,aAAA,KDtCR,CCyCI,CA7QJ,IA6QI,GAAA,IA7QJ,IAAA,GAAA,IAAA,IAAA,GAAA,IAAA,IAAA,GAAA,GAiRQ,WAAA,EACA,cAAA,CDvCR,CC2CQ,CAtRR,GAsRQ,KAAA,CAAA,mBAAA,GACI,gBAAA,KACA,cAAA,IDzCZ,CC2CY,CA1RZ,GA0RY,KAAA,CAJJ,mBAII,EAAA,CAAA,GACI,SAAA,SACA,kBAAA,IDzChB,CC2CgB,CA9RhB,GA8RgB,KAAA,CARR,mBAQQ,EAAA,CAAA,EAAA,QACI,SAAA,SACA,MAAA,KACA,aAAA,IACA,QAAA,SAAA,IAAA,CAAA,KAAA,IDzCpB,CC+CI,CAxSJ,IAwSI,GACI,UAAA,UD7CR,CCgDI,CA5SJ,IA4SI,EAAA,CAAA,GACI,WAAA,KD9CR,CCiDI,CAhTJ,IAgTI,GAAA,GAhTJ,IAAA,GAAA,WAkTQ,WAAA,ID/CR,CCkDI,CArTJ,IAqTI,aACI,KAAA,KAAA,MACA,iBAAA,wBACA,IACA,UAAA,OACA,YAAA,OACA,MAAA,ODhDR,CCmDI,CA9TJ,IA8TI,IACI,UAAA,MDjDR,CCoDI,CAlUJ,IAkUI,MAAA,KACI,YAAA,MDlDR,CCqDI,CAtUJ,IAsUI,IAAA,EAAA,KACI,QAAA,eACA,SACA,EACA,SAAA,QACA,UAAA,OACA,iBAAA,YACA,OAAA,EACA,MAAA,SDnDR,CCsDI,CAjVJ,IAiVI,GAAA,CAAA,KACI,QAAA,cACA,KACA,SAAA,KAEA,iBAAA,UACA,MAAA,UAEA,YAAA,GDtDR,CCyDI,CA5VJ,IA4VI,IAAA,CA5VJ,IA4VI,IACI,YAAA,CDvDR,CCgEI,CAtWJ,IAsWI,CAAA,gBACI,SAAA,SAEA,SAAA,OACA,KAAA,KAAA,EAAA,EAAA,EAAA,GAEA,MAAA,IACA,OAAA,WACA,aAEA,EAEA,YAAA,OAEA,OAAA,EAEA,kBAAA,MAAA,MAAA,UAAA,MAAA,MACA,oBAAA,KAAA,iBAAA,KAAA,YAAA,IDpER,CGnTA,CFAA,IEAA,CAAA,SACI,UAAA,cACA,KAAA,UACA,KAAA,KAAA,KAAA,mBACA,IHsTJ,CGpTI,CFNJ,IEMI,CANJ,SAMI,CAAA,eACI,YAAA,GHsTR,CGnTI,CFVJ,IEUI,CAVJ,QAUI,CAAA,SACI,EAAA,EAAA,IHqTR,CGlTY,CFdZ,IEcY,CAdZ,QAcY,CAAA,CAAA,YAAA,QACI,WAAA,YACA,QAAA,MACA,MAAA,KACA,OAAA,KACA,WAAA,KACA,YAAA,MACA,cAAA,KACA,MAAA,IHoThB,CGhTQ,CF1BR,IE0BQ,CA1BR,QA0BQ,CAAA,CAAA,YACI,cAAA,CHkTZ,CGtSQ,CFvCR,IEuCQ,CAvCR,QAuCQ,CAAA,eAAA,CAAA,CAAA,YAAA,QAKI,QAAA,ySHoSZ,CGzSQ,CFvCR,IEuCQ,CAvCR,QAuCQ,CAAA,cAAA,CAAA,CAAA,YAAA,QAKI,QAAA,0SHuSZ,CG5SQ,CFvCR,IEuCQ,CAvCR,QAuCQ,CAAA,gBAAA,CAAA,CAAA,YAAA,QAKI,QAAA,ySH0SZ,CG/SQ,CFvCR,IEuCQ,CAvCR,QAuCQ,CAAA,kBAAA,CAAA,CAAA,YAAA,QAKI,QAAA,0SH6SZ,CGjSQ,CFxDR,IEwDQ,CAxDR,QAwDQ,CAjBA,gBAkBI,WAAA,SHmSZ,CGpSQ,CFxDR,IEwDQ,CAxDR,QAwDQ,CAjBA,eAkBI,WAAA,SHsSZ,CGvSQ,CFxDR,IEwDQ,CAxDR,QAwDQ,CAjBA,iBAkBI,WAAA,SHySZ,CG1SQ,CFxDR,IEwDQ,CAxDR,QAwDQ,CAjBA,mBAkBI,WAAA,SH4SZ,CI/WQ,CHUR,IGVQ,GAAA,CAAA,WAAA,CHUR,IGVQ,GAAA,CAAA,WAAA,CHUR,IGVQ,GAAA,CAAA,WAAA,CHUR,IGVQ,GAAA,CAAA,WAAA,CHUR,IGVQ,GAAA,CAAA,WAAA,CHUR,IGVQ,GAAA,CAAA,WACI,QAAA,aACA,MAAA,KACA,cAAA,IACA,YAAA,MACA,MAAA,KAEA,WAAA,OACA,UAAA,IJiXZ,CI9WgB,CHDhB,IGCgB,GAAA,CAXR,UAWQ,MAAA,QAAA,CHDhB,IGCgB,GAAA,CAXR,UAWQ,MAAA,QAAA,CHDhB,IGCgB,GAAA,CAXR,UAWQ,MAAA,QAAA,CHDhB,IGCgB,GAAA,CAXR,UAWQ,MAAA,QAAA,CHDhB,IGCgB,GAAA,CAXR,UAWQ,MAAA,QAAA,CHDhB,IGCgB,GAAA,CAXR,UAWQ,MAAA,QACI,QAAA,CJgXpB,CI5WY,CHNZ,IGMY,GAAA,CAhBJ,UAgBI,QAAA,CHNZ,IGMY,GAAA,CAhBJ,UAgBI,QAAA,CHNZ,IGMY,GAAA,CAhBJ,UAgBI,QAAA,CHNZ,IGMY,GAAA,CAhBJ,UAgBI,QAAA,CHNZ,IGMY,GAAA,CAhBJ,UAgBI,QAAA,CHNZ,IGMY,GAAA,CAhBJ,UAgBI,QACI,QAAA,IACA,QAAA,CJ8WhB,CI1WQ,CHZR,IGYQ,EAAA,OAAA,CAtBA,UAsBA,QAAA,CHZR,IGYQ,EAAA,OAAA,CAtBA,UAsBA,QAAA,CHZR,IGYQ,EAAA,OAAA,CAtBA,UAsBA,QAAA,CHZR,IGYQ,EAAA,OAAA,CAtBA,UAsBA,QAAA,CHZR,IGYQ,EAAA,OAAA,CAtBA,UAsBA,QAAA,CHZR,IGYQ,EAAA,OAAA,CAtBA,UAsBA,QACI,QAAA,CJ4WZ,CItWY,CHnBZ,IGmBY,MAAA,GAAA,CA7BJ,WA6BI,CHnBZ,IGmBY,MAAA,GAAA,CA7BJ,WA6BI,CHnBZ,IGmBY,MAAA,GAAA,CA7BJ,WA6BI,CHnBZ,IGmBY,MAAA,GAAA,CA7BJ,WA6BI,CHnBZ,IGmBY,MAAA,GAAA,CA7BJ,WA6BI,CHnBZ,IGmBY,MAAA,GAAA,CA7BJ,WA8BQ,MAAA,IACA,YAAA,KACA,cAAA,CJwWhB,CIlWQ,CH5BR,IG4BQ,CAAA,SAAA,CAtCA,UAsCA,QACI,SAAA,SACA,cAAA,GJoWZ,CK3YI,CJSJ,IITI,CAAA,KACI,QAAA,MACA,WAAA,aACA,KACA,WAAA,UACA,WAAA,IAAA,4BL8YR,CK3YI,CJCJ,IIDI,CARA,MJSJ,IAAA,CAAA,WICQ,MAAA,KACA,MAAA,IAAA,uBL6YR,CK1YI,CJLJ,IIKI,CAAA,aACI,MAAA,KACA,MAAA,IAAA,yBL4YR,CKxYI,CJXJ,IIWI,CAAA,cJXJ,IAAA,CAAA,gBAAA,IAAA,CAAA,mBAAA,IAAA,CAAA,mBAAA,IAAA,CAAA,aAAA,IAAA,CAAA,UIiBQ,YAAA,GL0YR,CKvYI,CJpBJ,IIoBI,CAAA,WJpBJ,IAAA,CAAA,aAAA,IAAA,CAAA,aAAA,IAAA,CAAA,kBAAA,IAAA,CAAA,qBAAA,IAAA,CAAA,YAAA,IAAA,CAAA,mBAAA,IAAA,CAAA,cI4BQ,MAAA,KACA,MAAA,IAAA,0BLyYR,CKtYI,CJhCJ,IIgCI,CAAA,YJhCJ,IAAA,CAAA,aIkCQ,MAAA,KACA,MAAA,IAAA,0BACA,YAAA,GLwYR,CKrYI,CJvCJ,IIuCI,CAAA,aJvCJ,IAAA,CAAA,aAAA,IAAA,CAAA,eAAA,IAAA,CAAA,wBAAA,IAAA,CAAA,WAAA,IAAA,CAAA,oBAAA,IAAA,CAAA,qBI8CQ,MAAA,QACA,MAAA,IAAA,wBLuYR,CKnYI,CJnDJ,IImDI,CAAA,aACI,MAAA,QACA,MAAA,IAAA,yBLqYR,CKlYI,CJxDJ,IIwDI,CAAA,eJxDJ,IAAA,CAAA,aAAA,IAAA,CAAA,WAAA,IAAA,CAAA,cI4DQ,MAAA,QACA,MAAA,IAAA,0BLoYR,CKhYI,CJjEJ,IIiEI,CAAA,UACI,MAAA,QACA,MAAA,IAAA,sBLkYR,CK/XI,CJtEJ,IIsEI,CAAA,iBACI,MAAA,QACA,MAAA,IAAA,6BLiYR,CK7XI,CJ5EJ,II4EI,CAAA,cACI,WAAA,ML+XR,CK5XI,CJhFJ,IIgFI,CAAA,YACI,YAAA,GL8XR,CM1dI,CAAA,cACI,SAAA,QN6dR,CM1dY,CAJR,aAIQ,OAAA,CAAA,qBACI,QAAA,CN4dhB,CMxdQ,CATJ,aASI,CAAA,kBACI,KACA,SAAA,MN0dZ,CMvdQ,CAVI,qBAWA,SAAA,SACA,IAAA,KACA,MAAA,KACA,QAAA,EACA,QAAA,EAGA,WAAA,KACA,MAAA,QACA,OAAA,aACA,EACA,KAAA,QACA,OAAA,ONudZ,CMrdY,CAzBA,oBAyBA,OACI,QAAA,CNudhB,CMndQ,CAAA,mBACI,eAAA,INqdZ,CO9eI,CAAA,eACI,sBAAA,IAAA,eAAA,EAAA,q+BAEA,QAAA,aACA,oBAAA,KAAA,iBAAA,KAAA,YAAA,KAEA,MAAA,YACA,EAAA,IAEA,MAAA,UAAA,MAAA,IAAA,qBAAA,EAAA,KAAA,CAAA,EAAA,CAAA,EAAA,CAAA,EAAA,KACA,iBAAA,aACA,kBAAA,UACA,oBAAA,IACA,gBAAA,KAEA,mBAAA,o+BAAA,WAAA,o+BAAA,mBAAA,IAAA,sBAAA,WAAA,IAAA,sBACA,sBAAA,OAAA,cAAA,OACA,oBAAA,UAAA,YAAA,SPkfR,COhfQ,CAnBJ,cAmBI,QACI,QAAA,KPkfZ,CQhhBI,CAAA,eACI,MAAA,QACA,OAAA,QAEA,cAAA,IAAA,OAEA,UAAA,QACA,YAAA,QACA,WAAA,MRihBR,CQ/gBQ,CAVJ,cAUI,OACI,MAAA,ORihBZ,CQ7gBI,CAAA,aACI,SAAA,SACA,QAAA,IAEA,MAAA,iBAAA,MAAA,YACA,UAAA,MAQA,WAAA,OACA,QAAA,UAEA,KAEA,iBAAA,KAEA,UAAA,QACA,YAAA,QACA,WAAA,qBAEA,IAEA,WAAA,EAAA,IAAA,KAAA,UACA,QAAA,IRkgBR,CQthBQ,OAAA,OAAA,IAAA,CAAA,SAAA,EAAA,OACI,CARR,aASY,UAAA,GRwhBd,CACF,CQrgBQ,CA7BJ,YA6BI,QACI,QAAA,GACA,SAAA,SACA,QAAA,GACA,MAAA,EAKA,cAAA,QACA,WAAA,EAAA,EAAA,EAAA,IAAA,ORsgBZ,CQngBQ,CA1CJ,YA0CI,CAAA,KACI,WAAA,QAEA,eAAA,MACA,mBAAA,IACA,0BAAA,SACA,oBAAA,QRogBZ,CQlgBY,WALA,MAMI,GACI,QAAA,EACA,UAAA,WAAA,KRogBlB,CQlgBc,GACI,QAAA,EACA,UAAA,WAAA,ERogBlB,CACF,CS7kBI,CRWJ,IQXI,MAAA,EAAA,CAAA,oBAAA,CRWJ,IQXI,MAAA,EAAA,CAAA,uBAEI,WAAA,IT+kBR,CS5kBI,CRMJ,IQNI,MAAA,EAAA,CAAA,sBAAA,CRMJ,IQNI,MAAA,EAAA,CAAA,kBAEI,WAAA,MT6kBR,CS1kBI,CRCJ,IQDI,MAAA,EAAA,CAAA,qBAAA,CRCJ,IQDI,MAAA,EAAA,CAAA,wBAEI,WAAA,KT2kBR,CSxkBI,CRJJ,IQII,MAAA,EAAA,CAfA,oBAeA,CRJJ,IQII,MAAA,EAAA,CAVA,sBAUA,CRJJ,IQII,MAAA,EAAA,CALA,qBAQI,eAAA,GTwkBR,CSrkBI,CRVJ,IQUI,MAAA,EAAA,CAhBA,kBAiBI,eAAA,MTukBR,CSpkBI,CRdJ,IQcI,MAAA,EAAA,CAzBA,uBAyBA,CRdJ,IQcI,MAAA,EAAA,CAfA,wBAiBI,eAAA,MTqkBR,CUjmBA,CAAA,eACI,SAAA,MACA,MAAA,MACA,OAAA,MACA,QAAA,KACA,gBAAA,OACA,YAAA,OACA,IAAA,EACA,KAAA,EACA,QAAA,GVomBJ,CUlmBI,CAXJ,cAWI,CAAA,YACI,UAAA,cVomBR,CUjmBI,CAfJ,eAeI,CAAA,oBACI,WAAA,MVmmBR,CUhmBI,CAnBJ,eAmBI,CAAA,qBACI,QAAA,IACA,iBAAA,IAAA,2BACA,OAAA,KACA,MAAA,mBACA,KACA,QAAA,KACA,eAAA,MVkmBR,CUhmBO,CA5BP,eA4BO,CATH,qBASG,CAAA,aACK,OAAA,IACA,MAAA,IVkmBZ,CUhmBY,CAhCZ,eAgCY,CAbR,qBAaQ,CAJL,aAIK,CAAA,mBACI,UAAA,KACA,MAAA,KACA,OAAA,IVkmBhB,CU/lBY,CAtCZ,eAsCY,CAnBR,qBAmBQ,CAVL,aAUK,oBACI,CVimBhB,CU9lBY,CA1CZ,eA0CY,CAvBR,qBAuBQ,CAdL,aAcK,CAAA,mBACI,QAAA,MACA,MAAA,IVgmBhB,CU5lBO,CAhDP,eAgDO,CA7BH,qBA6BG,CAAA,aACK,QAAA,KACA,eAAA,IACA,MAAA,KACA,gBAAA,cACA,YAAA,eACA,KAAA,IV8lBZ,CU3lBO,CAzDP,eAyDO,CAtCH,qBAsCG,CAAA,wBACK,EACA,UAAA,IV6lBZ,CU1lBO,CA9DP,eA8DO,CA3CH,qBA2CG,CAAA,aACK,WAAA,QV4lBZ,CU1lBY,CAjEZ,eAiEY,CA9CR,qBA8CQ,CAHL,aAGK,CAAA,aACI,OAAA,sBACA,IAEA,WAAA,WAAA,GV2lBhB,CUzlBgB,CAvEhB,eAuEgB,CApDZ,qBAoDY,CATT,aASS,CANJ,YAMI,OACI,WAAA,IAAA,4BV2lBpB,CUplBA,CAAA,qBACI,QAAA,KACA,IAAA,KACA,SAAA,QVulBJ,CUrlBI,CALJ,oBAKI,MAAA,CAAA,CArEA,oBAsEI,WAAA,OVulBR,CUplBI,CATJ,qBASI,CAxDQ,mBAyDJ,UAAA,KVslBR,CUllBA,CA9EI,oBA+EA,WAAA,OACA,MAAA,KACA,OAAA,KACA,QAAA,YACA,IACA,WAAA,YACA,MAAA,IAAA,wBACA,OAAA,OVqlBJ,CUnlBI,CAxFA,mBAwFA,CAAA,IACI,MAAA,KACA,OAAA,IVqlBR,CUjlBA,CAAA,qBACI,QAAA,IACA,MAAA,MACA,OAAA,MACA,SAAA,MACA,IAAA,EACA,KAAA,EACA,iBAAA,KACA,QAAA,EVolBJ,CWzsBA,CAAA,QAAS,WAAA,IAAA,KAAoB,cAAA,IX8sB7B,CW9sBgD,CAAhD,OAAgD,CAAA,cAAuB,gBAAA,YAA4B,WAAA,EAAA,IAAA,EAAA,IAAA,IAAA,6BAAwD,iBAAA,IAAA,2CAAkD,GXqtB7M,CWrtB+N,CAAA,cAAe,WAAA,KAAgB,OAAA,QAAe,SAAA,SAAkB,oBAAA,KAAA,iBAAA,KAAA,YAAA,aAAiB,IAAA,EAAA,IAAA,IX6tBhT,CW7tBuU,CAAxG,aAAwG,yBAAuC,QAAA,IXiuB9W,CWjuB2X,CAA5J,aAA4J,OAAqB,cAAA,GXquBhZ,CWruBka,CAAnM,aAAmM,QAAsB,QAAA,GAAW,QAAA,EAAU,KAAA,EAAO,IAAA,IAAQ,iBAAA,gNAAiO,UAAA,WAAA,MAAA,OAAA,QAA0C,WAAA,UAAA,IAAA,KAA8B,OAAA,KAAY,MAAA,KAAW,SAAA,QXkvB5xB,CWlvB8yB,CAAA,wBAAiB,IAAA,EAAA,KAAA,IXsvB/zB,CWtvBu1B,CAAv1B,OAAu1B,CH0D/0B,IG1D+0B,CAAA,CAAxnB,aAAwnB,QAAoC,UAAA,WAAA,KX0vB33B,CW1vBs5B,CVYt5B,GUZs5B,KAAA,CVkS94B,mBUlS84B,CAAt5B,QAAs5B,GAAyC,cAAA,QX8vB/7B,CW9vBs9B,CVYt9B,GUZs9B,KAAA,CVkS98B,mBUlS88B,CAAt9B,QAAs9B,EAAA,CAAA,GAA4C,kBAAA,QXkwBlgC,CWlwB6hC,CVY7hC,GUZ6hC,KAAA,CVkSrhC,mBUlSqhC,CAA7hC,QAA6hC,EAAA,CAAA,EAAA,QAAmD,QAAA,SAAA,QAAA,CAAA,KAAA,IXswBhlC,CYtwBiB,CRwCT,SQxCmB,cAAA,IZ2wB3B,CY3wB8C,CXY9C,GWZ8C,KAAA,CXkStC,mBWlSsC,CRwCtC,SQxCsC,GAA0C,cAAA,SZ+wBxF,CY/wBgH,CXYhH,GWZgH,KAAA,CXkSxG,mBWlSwG,CRwCxG,SQxCwG,EAAA,CAAA,GAA6C,kBAAA,SZmxB7J,CYnxByL,CXYzL,GWZyL,KAAA,CXkSjL,mBWlSiL,CRwCjL,SQxCiL,EAAA,CAAA,EAAA,QAAoD,QAAA,SAAA,SAAA,CAAA,KAAA,IZuxB7O,CYvxBkR,CAAA,aAAc,QAAA,KAAa,UAAA,KAAe,cAAA,KAAmB,cAAA,IAAA,MAAA,KAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,IZ8xB/U,CY9xBuX,CAAA,iBAAA,CAAA,CAArG,aAAsI,eAAA,OAAsB,cAAA,EAAA,cAAA,OZmyB9a,CYnyBkc,CAA3E,iBAA2E,CAAA,CAAA,cAAkC,YAAA,IZuyBpe,CYvyBqf,CAA9H,iBAA8H,CAAA,CAAA,cAAkC,QAAA,KAAa,eAAA,IAAmB,cAAA,GZ6yBvjB,CY7yBykB,CAAlN,kBAAkN,CAAA,gBAAA,CAAA,KAAA,CAAA,YAAuD,WAAA,OAAkB,MAAA,EAAQ,OAAA,CZmzB1pB,CYnzBmqB,CAA5S,kBAA4S,CAA1F,gBAA0F,CAAA,MAA2C,QAAA,aAAqB,OAAA,QAAe,SAAA,SAAkB,aAAA,KAAkB,aAAA,EAAe,YAAA,KAAiB,oBAAA,KAAA,iBAAA,KAAA,YAAA,IZ6zBtzB,CY7zBu0B,CAAhd,kBAAgd,CAA9P,gBAA8P,CAAA,KAAA,QAAkD,YAAA,gBAAA,YAAA,kBAA8B,QAAA,GAAW,SAAA,SAAkB,KAAA,EAAO,OAAA,kBAAW,IAAkB,MAAA,KAAW,OAAA,KAAY,OAAA,QAAA,IAAA,MAAyB,iBAAA,IZ00BxgC,CY10B8hC,CAAvqB,kBAAuqB,CAArd,iBAAqd,KAAA,CAAA,WAAA,QAAA,CAAA,KAAA,QAA4E,QAAA,QAAgB,iBAAA,QAAyB,WAAA,OAAkB,eAAA,OAAsB,UAAA,KAAe,YAAA,IAAgB,QAAA,YAAoB,gBAAA,OAAuB,YAAA,OAAmB,MAAA,IZu1BxxC,CYv1BmyC,CAA56B,kBAA46B,CAA1tB,iBAA+vB,cAAA,YAAA,cAAA,iBZ21Bx0C,CY31Bs2C,CAAA,QAAS,cAAA,KAAmB,aAAA,KAAkB,cAAA,IAAA,MAAA,oBAAoC,IAAA,EAAA,IAAkB,YAAA,IAAgB,QAAA,KAAa,OAAA,QAAe,oBAAA,KAAA,iBAAA,KAAA,YAAA,KAAiB,YAAA,YZu2BvgD,CYv2BgiD,CAA1L,OAA0L,YAAoB,aAAA,CZ22BpjD,CY32BmkD,CAA7N,OAA6N,OAAA,CAA7N,OAA6N,QAA+B,MAAA,OZ+2BlmD,CY/2BgnD,CAA1Q,OAA0Q,CAAA,OAAgB,oBAAA,OZm3BhoD,CYn3B4pD,CAAtT,OAAsT,OAAe,QAAA,IAAA,MAAA,sBAA0B,GZw3BrsD,CYx3ButD,CAAjX,OAAiX,MAAA,KAAA,gBAAmC,QAAA,CZ43B1vD,CY53BowD,CAAl0C,cAAi1C,SAAA,SAAkB,WAAA,OAAkB,SAAA,OAAgB,OAAA,CZm4Bv0D,CYn4Bg1D,CAA94C,aAA84C,aAA2B,WAAA,WZu4B32D,CYv4Bk4D,CAAh8C,aAAg8C,YAA0B,cAAA,WZ24B55D,CY34Bs7D,CAAp/C,aAAo/C,CAAtU,OAA4V,WAAA,QAAmB,OAAA,IZg5B/9D",
5
+ "mappings": "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",
6
6
  "names": []
7
7
  }
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../node_modules/get-root-node-polyfill/index.js", "../../node_modules/@diplodoc/cut-extension/src/runtime/const.ts", "../../node_modules/@diplodoc/cut-extension/src/runtime/utils.ts", "../../node_modules/@diplodoc/cut-extension/src/runtime/controller.ts", "../../node_modules/@diplodoc/cut-extension/src/runtime/index.ts", "../../node_modules/@diplodoc/tabs-extension/src/common.ts", "../../node_modules/@diplodoc/tabs-extension/src/runtime/utils.ts", "../../node_modules/@diplodoc/tabs-extension/src/runtime/TabsController.ts", "../../node_modules/@diplodoc/tabs-extension/src/runtime/index.ts", "../../src/js/polyfill.js", "../../src/js/utils.ts", "../../src/js/code.ts", "../../src/js/term/utils.ts", "../../src/js/term/index.ts", "../../src/js/wide-mode/constants.ts", "../../src/js/wide-mode/icons/expand.ts", "../../src/js/wide-mode/icons/close.ts", "../../src/js/wide-mode/modal.ts", "../../src/js/wide-mode/apply.ts", "../../src/js/wide-mode/index.ts", "../../src/js/patch.ts"],
4
- "sourcesContent": ["'use strict';\n\n// Node getRootNode(optional GetRootNodeOptions options);\n\n/**\n * Returns the context object\u2019s shadow-including root if options\u2019s composed is true.\n * Returns the context object\u2019s root otherwise.\n *\n * The root of an object is itself, if its parent is null, or else it is the root of its parent.\n *\n * The shadow-including root of an object is its root\u2019s host\u2019s shadow-including root,\n * if the object\u2019s root is a shadow root, and its root otherwise.\n *\n * https://dom.spec.whatwg.org/#dom-node-getrootnode\n *\n * @memberof Node.prototype\n * @param {!Object} [opt = {}] - Options.\n * @param {!boolean} [opt.composed] - See above description.\n * @returns {!Node} The root node.\n */\nfunction getRootNode(opt) {\n var composed = typeof opt === 'object' && Boolean(opt.composed);\n\n return composed ? getShadowIncludingRoot(this) : getRoot(this);\n}\n\nfunction getShadowIncludingRoot(node) {\n var root = getRoot(node);\n\n if (isShadowRoot(root)) {\n return getShadowIncludingRoot(root.host);\n }\n\n return root;\n}\n\nfunction getRoot(node) {\n if (node.parentNode != null) {\n return getRoot(node.parentNode);\n }\n\n return node;\n}\n\nfunction isShadowRoot(node) {\n return node.nodeName === '#document-fragment' && node.constructor.name === 'ShadowRoot';\n}\n\nif (typeof module === 'object' && module.exports) {\n module.exports = getRootNode;\n}\n", "export const GLOBAL_KEY = 'yfm_cut';\n\nexport const Selector = {\n CUT: '.yfm .yfm-cut',\n TITLE: '.yfm .yfm-cut-title',\n CONTENT: '.yfm .yfm-cut-content',\n};\n\nexport const ClassName = {\n OPEN: 'open',\n};\n", "export const getEventTarget = (event: Event) => {\n const path = event.composedPath();\n return Array.isArray(path) && path.length > 0 ? path[0] : event.target;\n};\n\nexport const isCustom = (event: Event) => {\n const target = getEventTarget(event);\n return !target || !(target as HTMLElement).matches;\n};\n", "import {ClassName, Selector} from './const';\nimport {getEventTarget, isCustom} from './utils';\n\nexport class YfmCutController {\n private readonly __doc: Document;\n\n constructor(doc: Document) {\n this.__doc = doc;\n this.__doc.addEventListener('click', this._onDocClick);\n }\n\n destroy() {\n this.__doc.removeEventListener('click', this._onDocClick);\n }\n\n private _onDocClick = (event: MouseEvent) => {\n if (isCustom(event)) {\n return;\n }\n\n const title = this._findTitleInPath(event);\n if (title) {\n this._toggleCut(title);\n }\n };\n\n private _findTitleInPath(event: MouseEvent): HTMLElement | undefined {\n const target = getEventTarget(event);\n if (this._matchTitle(target)) {\n return target as HTMLElement;\n }\n\n const path = event.composedPath?.();\n return path?.find(this._matchTitle) as HTMLElement | undefined;\n }\n\n private _matchTitle = (target: EventTarget | null) => {\n if (target instanceof HTMLElement) {\n return target?.matches?.(Selector.TITLE);\n }\n return false;\n };\n\n private _toggleCut(element: HTMLElement) {\n const cutNode = element.parentElement;\n cutNode?.classList.toggle(ClassName.OPEN);\n }\n}\n", "import {GLOBAL_KEY} from './const';\nimport {YfmCutController} from './controller';\n\nimport './styles/cut.scss';\n\nif (typeof window !== 'undefined' && typeof document !== 'undefined' && !window[GLOBAL_KEY]) {\n window[GLOBAL_KEY] = new YfmCutController(document);\n}\n\ndeclare global {\n interface Window {\n [GLOBAL_KEY]: YfmCutController;\n }\n}\n", "import type {TabsOrientation} from './plugin/transform';\nimport type {TabsController} from './runtime/TabsController';\n\nexport const TABS_CLASSNAME = 'yfm-tabs';\nexport const TABS_VERTICAL_CLASSNAME = 'yfm-tabs-vertical';\nexport const TABS_LIST_CLASSNAME = 'yfm-tab-list';\nexport const TAB_CLASSNAME = 'yfm-tab';\nexport const TAB_PANEL_CLASSNAME = 'yfm-tab-panel';\nexport const ACTIVE_CLASSNAME = 'active';\nexport const VERTICAL_TAB_CLASSNAME = 'yfm-vertical-tab';\nexport const VERTICAL_TAB_FORCED_OPEN = 'data-diplodoc-radio-forced';\n\nexport const GROUP_DATA_KEY = 'data-diplodoc-group';\nexport const TAB_DATA_KEY = 'data-diplodoc-key';\nexport const TAB_DATA_ID = 'data-diplodoc-id';\nexport const TAB_DATA_VERTICAL_TAB = 'data-diplodoc-vertical-tab';\nexport const TAB_ACTIVE_KEY = 'data-diplodoc-is-active';\nexport const TAB_RADIO_KEY = 'data-diplodoc-input';\n\nexport const DEFAULT_TABS_GROUP_PREFIX = 'defaultTabsGroup-';\nexport const ACTIVE_TAB_TEXT = '{selected}';\n\nexport interface Tab {\n group?: string;\n key: string;\n align: TabsOrientation;\n}\n\nexport interface SelectedTabEvent {\n tab: Tab;\n currentTabId?: string;\n}\n\nexport const GLOBAL_SYMBOL: unique symbol = Symbol.for('diplodocTabs');\n\ndeclare global {\n interface Window {\n [GLOBAL_SYMBOL]: TabsController;\n }\n}\n", "export const getEventTarget = (event: Event) => {\n const path = event.composedPath();\n return Array.isArray(path) && path.length > 0 ? path[0] : event.target;\n};\n\nexport const isCustom = (event: Event) => {\n const target = getEventTarget(event);\n return !target || !(target as HTMLElement).matches;\n};\n\nexport const getClosestScrollableParent = (element: HTMLElement): HTMLElement | undefined => {\n if (Math.abs(element.scrollHeight - element.clientHeight) > 1) {\n return element;\n }\n\n return element.parentElement ? getClosestScrollableParent(element.parentElement) : undefined;\n};\n\nexport interface ElementOffset {\n top: number;\n left: number;\n scrollTop: number;\n scrollLeft: number;\n}\n\nexport const getOffsetByScrollableParent = (\n element: HTMLElement,\n scrollableParent: HTMLElement,\n): ElementOffset => {\n const elementBounds = element.getBoundingClientRect();\n const scrollableParentBounds = scrollableParent.getBoundingClientRect();\n return {\n top: elementBounds.top - scrollableParentBounds.top,\n left: elementBounds.left - scrollableParentBounds.left,\n scrollTop: scrollableParent.scrollTop,\n scrollLeft: scrollableParent.scrollLeft,\n };\n};\n", "import {\n ACTIVE_CLASSNAME,\n DEFAULT_TABS_GROUP_PREFIX,\n GROUP_DATA_KEY,\n SelectedTabEvent,\n TABS_CLASSNAME,\n TABS_LIST_CLASSNAME,\n TABS_VERTICAL_CLASSNAME,\n TAB_CLASSNAME,\n TAB_DATA_ID,\n TAB_DATA_KEY,\n TAB_PANEL_CLASSNAME,\n Tab,\n VERTICAL_TAB_FORCED_OPEN,\n} from '../common';\nimport type {TabsOrientation} from '../plugin/transform';\nimport {\n ElementOffset,\n getClosestScrollableParent,\n getEventTarget,\n getOffsetByScrollableParent,\n isCustom,\n} from './utils';\n\nconst Selector = {\n TABS: `.${TABS_CLASSNAME}`,\n TAB_LIST: `.${TABS_LIST_CLASSNAME}`,\n TAB: `.${TAB_CLASSNAME}`,\n TAB_PANEL: `.${TAB_PANEL_CLASSNAME}`,\n VERTICAL_TABS: `.${TABS_VERTICAL_CLASSNAME}`,\n};\n\nexport interface ISelectTabByIdOptions {\n scrollToElement: boolean;\n}\n\ntype Handler = (data: SelectedTabEvent) => void;\n\ntype TabSwitchDirection = 'left' | 'right';\n\nexport class TabsController {\n private _document: Document;\n\n private _onSelectTabHandlers: Set<Handler> = new Set();\n\n constructor(document: Document) {\n this._document = document;\n this._document.addEventListener('click', (event) => {\n const target = getEventTarget(event) as HTMLElement;\n const areVertical = this.areTabsVertical(target);\n\n if (isCustom(event)) {\n return;\n }\n\n if (!(this.isValidTabElement(target) || areVertical)) {\n return;\n }\n\n const tab = this.getTabDataFromHTMLElement(target);\n\n if (tab) {\n this._selectTab(tab, target);\n }\n });\n this._document.addEventListener('keydown', (event) => {\n let direction: TabSwitchDirection | null = null;\n switch (event.key) {\n case 'ArrowLeft': {\n direction = 'left';\n break;\n }\n case 'ArrowRight': {\n direction = 'right';\n break;\n }\n case 'ArrowUp': {\n direction = 'left';\n break;\n }\n case 'ArrowDown': {\n direction = 'right';\n break;\n }\n }\n if (!direction) {\n return;\n }\n\n const target = getEventTarget(event) as HTMLElement;\n\n if (isCustom(event) || !this.isValidTabElement(target)) {\n return;\n }\n\n const {tabs, nodes} = this.getTabs(target);\n const currentTab = this.getTabDataFromHTMLElement(target);\n const currentTabIndex = tabs.findIndex(\n ({key}) => currentTab?.key && key === currentTab.key,\n );\n if (!currentTab || tabs.length <= 1 || currentTabIndex === -1) {\n return;\n }\n\n const newIndex =\n (currentTabIndex + (direction === 'left' ? -1 : 1) + tabs.length) % tabs.length;\n\n this.selectTab(tabs[newIndex]);\n nodes[newIndex].focus();\n });\n }\n\n onSelectTab(handler: Handler) {\n this._onSelectTabHandlers.add(handler);\n\n return () => {\n this._onSelectTabHandlers.delete(handler);\n };\n }\n\n selectTabById(id: string, options?: ISelectTabByIdOptions) {\n const target = this._document.querySelector(\n `${Selector.TAB}[${TAB_DATA_ID}=\"${id}\"]`,\n ) as HTMLElement;\n\n if (!target || !this.isValidTabElement(target)) {\n return;\n }\n\n const tab = this.getTabDataFromHTMLElement(target);\n\n if (tab) {\n this._selectTab(tab, target);\n }\n\n if (options?.scrollToElement) {\n target.scrollIntoView();\n }\n }\n\n selectTab(tab: Tab) {\n this._selectTab(tab);\n }\n\n private _selectTab(tab: Tab, targetTab?: HTMLElement) {\n const {group, key, align} = tab;\n\n if (!group) {\n return;\n }\n\n const scrollableParent = targetTab && getClosestScrollableParent(targetTab);\n const previousTargetOffset =\n scrollableParent && getOffsetByScrollableParent(targetTab, scrollableParent);\n\n const updatedTabs = this.updateHTML({group, key, align}, targetTab, align);\n\n if (updatedTabs > 0) {\n this.fireSelectTabEvent({group, key, align}, targetTab?.dataset.diplodocId);\n\n if (previousTargetOffset) {\n this.resetScroll(targetTab, scrollableParent, previousTargetOffset);\n }\n }\n }\n\n private updateHTML(\n tab: Required<Tab>,\n target: HTMLElement | undefined,\n align: TabsOrientation,\n ) {\n switch (align) {\n case 'radio': {\n return this.updateHTMLVertical(tab, target);\n }\n case 'horizontal': {\n return this.updateHTMLHorizontal(tab);\n }\n }\n\n return 0;\n }\n\n private updateHTMLVertical(tab: Required<Tab>, target: HTMLElement | undefined) {\n const {group, key} = tab;\n\n const {isForced, root} = this.didTabOpenForce(target);\n\n const singleTabSelector = isForced\n ? `.yfm-vertical-tab[${VERTICAL_TAB_FORCED_OPEN}=\"true\"]`\n : '';\n\n const tabs = this._document.querySelectorAll(\n `${Selector.TABS}[${GROUP_DATA_KEY}=\"${group}\"] ${Selector.TAB}[${TAB_DATA_KEY}=\"${key}\"]${singleTabSelector}`,\n );\n\n if (isForced) {\n root?.removeAttribute(VERTICAL_TAB_FORCED_OPEN);\n }\n\n let updated = 0;\n\n tabs.forEach((tab) => {\n const root = tab.parentNode!;\n const elements = root.children;\n\n for (let i = 0; i < elements.length; i += 2) {\n const [title, content] = [elements.item(i), elements.item(i + 1)] as HTMLElement[];\n\n const input = title.children.item(0) as HTMLInputElement;\n\n if (title === tab) {\n const checked = input.checked;\n\n if (checked) {\n title.classList.remove('active');\n content?.classList.remove('active');\n\n input.removeAttribute('checked');\n } else {\n title.classList.add('active');\n content?.classList.add('active');\n\n input.setAttribute('checked', 'true');\n }\n\n continue;\n }\n\n if (input.hasAttribute('checked')) {\n title.classList.remove('active');\n content?.classList.remove('active');\n\n input.removeAttribute('checked');\n }\n\n updated++;\n }\n });\n\n return updated;\n }\n\n private updateHTMLHorizontal(tab: Required<Tab>) {\n const {group, key} = tab;\n\n const tabs = this._document.querySelectorAll(\n `${Selector.TABS}[${GROUP_DATA_KEY}=\"${group}\"] ${Selector.TAB}[${TAB_DATA_KEY}=\"${key}\"]`,\n );\n\n let updated = 0;\n\n tabs.forEach((element) => {\n const htmlElem = element as HTMLElement;\n if (!this.isValidTabElement(htmlElem) || htmlElem.dataset.diplodocIsActive === 'true') {\n return;\n }\n\n updated++;\n\n const tab = element;\n const tabList = tab.parentNode;\n const tabsContainer = tabList?.parentNode;\n const allTabs = Array.from(tabList?.querySelectorAll(Selector.TAB) || []);\n const allPanels = Array.from(tabsContainer?.children || []).filter((node) =>\n node.classList.contains(TAB_PANEL_CLASSNAME),\n );\n const targetIndex = allTabs.indexOf(tab);\n\n allTabs.forEach((tab, i) => {\n const panel = allPanels[i];\n const isTargetTab = i === targetIndex;\n const htmlElem = tab as HTMLElement;\n\n htmlElem.dataset.diplodocIsActive = isTargetTab ? 'true' : 'false';\n\n tab.classList.toggle(ACTIVE_CLASSNAME, isTargetTab);\n tab.setAttribute('aria-selected', isTargetTab.toString());\n tab.setAttribute('tabindex', isTargetTab ? '0' : '-1');\n panel.classList.toggle(ACTIVE_CLASSNAME, isTargetTab);\n });\n });\n\n return updated;\n }\n\n private resetScroll(\n target: HTMLElement,\n scrollableParent: HTMLElement,\n previousTargetOffset: ElementOffset,\n ) {\n const targetOffset = getOffsetByScrollableParent(target, scrollableParent);\n const topDelta = targetOffset.top - previousTargetOffset.top;\n const leftDelta = targetOffset.left - previousTargetOffset.left;\n const scrollTopDelta = targetOffset.scrollTop - previousTargetOffset.scrollTop;\n const scrollLeftDelta = targetOffset.scrollLeft - previousTargetOffset.scrollLeft;\n scrollableParent.scrollTo(\n scrollableParent.scrollLeft + leftDelta - scrollLeftDelta,\n scrollableParent.scrollTop + topDelta - scrollTopDelta,\n );\n }\n\n private didTabOpenForce(target?: HTMLElement) {\n if (!target) {\n return {};\n }\n\n const root = target.dataset.diplodocVerticalTab ? target : target.parentElement;\n\n const isForced = typeof root?.dataset.diplodocRadioForced !== 'undefined';\n\n return {root, isForced};\n }\n\n private fireSelectTabEvent(tab: Required<Tab>, diplodocId?: string) {\n const {group, key, align} = tab;\n\n const eventTab: Tab = group.startsWith(DEFAULT_TABS_GROUP_PREFIX) ? {key, align} : tab;\n\n this._onSelectTabHandlers.forEach((handler) => {\n handler({tab: eventTab, currentTabId: diplodocId});\n });\n }\n\n private isValidTabElement(element: HTMLElement) {\n const tabList =\n element.matches(Selector.TAB) && element.dataset.diplodocId\n ? element.closest(Selector.TAB_LIST)\n : null;\n\n return tabList?.closest(Selector.TABS);\n }\n\n private areTabsVertical(target: HTMLElement) {\n const parent = target.parentElement;\n\n return target.dataset.diplodocVerticalTab || Boolean(parent?.dataset.diplodocVerticalTab);\n }\n\n private getTabDataFromHTMLElement(target: HTMLElement): Tab | null {\n if (this.areTabsVertical(target)) {\n const tab = target.dataset.diplodocVerticalTab ? target : target.parentElement!;\n\n const key = tab.dataset.diplodocKey;\n const group = (tab.closest(Selector.TABS) as HTMLElement)?.dataset.diplodocGroup;\n return key && group ? {group, key, align: 'radio'} : null;\n }\n\n const key = target.dataset.diplodocKey;\n const group = (target.closest(Selector.TABS) as HTMLElement)?.dataset.diplodocGroup;\n return key && group ? {group, key, align: 'horizontal'} : null;\n }\n\n private getTabs(target: HTMLElement): {tabs: Tab[]; nodes: NodeListOf<HTMLElement>} {\n const group = (target.closest(Selector.TABS) as HTMLElement)?.dataset.diplodocGroup;\n const nodes = (\n target.closest(Selector.TAB_LIST) as HTMLElement\n )?.querySelectorAll<HTMLElement>(Selector.TAB);\n\n const tabs: Tab[] = [];\n nodes.forEach((tabEl) => {\n const key = tabEl?.dataset.diplodocKey;\n if (!key) {\n return;\n }\n\n /** horizontal-only supported feature (used in left/right button click) */\n tabs.push({\n group,\n key,\n align: 'horizontal',\n });\n });\n\n return {tabs, nodes};\n }\n}\n", "import {GLOBAL_SYMBOL} from '../common';\nimport {TabsController} from './TabsController';\nimport './scss/tabs.scss';\n\nif (typeof window !== 'undefined' && typeof document !== 'undefined' && !window[GLOBAL_SYMBOL]) {\n window[GLOBAL_SYMBOL] = new TabsController(document);\n}\n", "import getRootNode from 'get-root-node-polyfill';\n\nif (typeof document !== 'undefined') {\n // matches polyfill for old edge\n (function (e) {\n const matches =\n e.matches ||\n e.matchesSelector ||\n e.webkitMatchesSelector ||\n e.mozMatchesSelector ||\n e.msMatchesSelector ||\n e.oMatchesSelector;\n\n if (matches) {\n e.matches = e.matchesSelector = matches;\n } else {\n e.matches = e.matchesSelector = function matches(selector) {\n const rootNode = e.getRootNode ? e.getRootNode() : getRootNode.call(e);\n const matches = rootNode.querySelectorAll(selector);\n const th = this;\n return Array.prototype.some.call(matches, (e) => {\n return e === th;\n });\n };\n }\n })(Element.prototype);\n}\n", "export const getEventTarget = (event: Event) => {\n const path = event.composedPath();\n return Array.isArray(path) && path.length > 0 ? path[0] : event.target;\n};\n\nexport const isCustom = (event: Event) => {\n const target = getEventTarget(event);\n return !target || !(target as HTMLElement).matches;\n};\n", "import {getEventTarget, isCustom} from './utils';\n\nconst BUTTON_SELECTOR = '.yfm-clipboard-button';\n\nfunction copyToClipboard(text: string) {\n if (!text) {\n return Promise.resolve();\n }\n\n if (navigator.clipboard && typeof navigator.clipboard.writeText) {\n return navigator.clipboard.writeText(text);\n }\n const textarea = document.createElement('textarea');\n textarea.setAttribute('style', 'position: absolute; left: 1000%');\n textarea.textContent = text;\n document.body.append(textarea);\n\n textarea.select();\n document.execCommand('copy');\n\n document.body.removeChild(textarea);\n\n return Promise.resolve();\n}\n\nfunction notifySuccess(svgButton: HTMLElement | null) {\n if (!svgButton) {\n return;\n }\n\n const id = svgButton.getAttribute('data-animation');\n // @ts-expect-error\n const icon = svgButton.getRootNode().getElementById(`visibileAnimation-${id}`);\n\n if (!icon) {\n return;\n }\n\n icon.beginElement();\n}\n\nif (typeof document !== 'undefined') {\n document.addEventListener('click', (event) => {\n const target = getEventTarget(event) as HTMLElement;\n\n if (isCustom(event) || !target.matches(BUTTON_SELECTOR)) {\n return;\n }\n\n const parent = target.parentNode;\n\n if (!parent) {\n return;\n }\n\n const code = parent.querySelector<HTMLElement>('pre code');\n if (!code) {\n return;\n }\n\n copyToClipboard(code.innerText).then(() => {\n notifySuccess(parent.querySelector('.yfm-clipboard-icon'));\n });\n });\n}\n", "export const Selector = {\n TITLE: '.yfm .yfm-term_title',\n CONTENT: '.yfm .yfm-term_dfn',\n};\nexport const openClass = 'open';\nexport const openDefinitionClass = Selector.CONTENT.replace(/\\./g, '') + ' ' + openClass;\nlet isListenerNeeded = true;\n\nexport function createDefinitionElement(termElement: HTMLElement) {\n const termKey = termElement.getAttribute('term-key');\n const definitionTemplate = document.getElementById(\n `${termKey}_template`,\n ) as HTMLTemplateElement;\n const definitionElement = definitionTemplate?.content.cloneNode(true).firstChild as HTMLElement;\n\n definitionTemplate?.parentElement?.appendChild(definitionElement);\n definitionTemplate.remove();\n\n return definitionElement;\n}\n\nexport function setDefinitionId(definitionElement: HTMLElement, termElement: HTMLElement): void {\n const termId = termElement.getAttribute('id') || Math.random().toString(36).substr(2, 8);\n definitionElement?.setAttribute('term-id', termId);\n}\n\nexport function setDefinitonAriaAttributes(\n definitionElement: HTMLElement,\n termElement: HTMLElement,\n): void {\n const ariaLive = termElement.getAttribute('aria-live') || 'polite';\n definitionElement?.setAttribute('aria-live', ariaLive);\n definitionElement?.setAttribute('aria-modal', 'true');\n}\n\nexport function setDefinitionPosition(\n definitionElement: HTMLElement,\n termElement: HTMLElement,\n): void {\n const {\n x: termX,\n y: termY,\n right: termRight,\n left: termLeft,\n width: termWidth,\n height: termHeight,\n } = termElement.getBoundingClientRect();\n\n const termParent = termParentElement(termElement);\n\n if (!termParent) {\n return;\n }\n\n const {right: termParentRight, left: termParentLeft} = termParent.getBoundingClientRect();\n\n if ((termParentRight < termLeft || termParentLeft > termRight) && !isListenerNeeded) {\n closeDefinition(definitionElement);\n return;\n }\n\n if (isListenerNeeded && termParent) {\n termParent.addEventListener('scroll', termOnResize);\n isListenerNeeded = false;\n }\n\n const relativeX = Number(definitionElement.getAttribute('relativeX'));\n const relativeY = Number(definitionElement.getAttribute('relativeY'));\n\n if (relativeX === termX && relativeY === termY) {\n return;\n }\n\n definitionElement.setAttribute('relativeX', String(termX));\n definitionElement.setAttribute('relativeY', String(termY));\n\n const offsetTop = termHeight + 5;\n const definitionParent = definitionElement.parentElement;\n\n if (!definitionParent) {\n return;\n }\n\n const {width: definitionWidth} = definitionElement.getBoundingClientRect();\n const {left: definitionParentLeft} = definitionParent.getBoundingClientRect();\n\n // If definition not fit document change base alignment\n const definitionLeftCoordinate = Number(getCoords(termElement).left);\n const definitionRightCoordinate = definitionWidth + definitionLeftCoordinate;\n\n const definitionOutOfScreenOnLeft = definitionLeftCoordinate - definitionWidth < 0;\n const definitionOutOfScreenOnRight = definitionRightCoordinate > document.body.clientWidth;\n\n const isAlignSwapped = definitionOutOfScreenOnRight || document.dir === 'rtl';\n const fitDefinitionDocument =\n isAlignSwapped && !definitionOutOfScreenOnLeft ? definitionWidth - termWidth : 0;\n const customHeaderTop = getCoords(definitionParent).top - definitionParent.offsetTop;\n const offsetRight = 5;\n const shiftLeft = definitionOutOfScreenOnRight\n ? definitionRightCoordinate - document.body.clientWidth + offsetRight\n : 0;\n const offsetLeft =\n getCoords(termElement).left -\n definitionParentLeft +\n definitionParent.offsetLeft -\n fitDefinitionDocument;\n\n const isShiftLeftNeeded = offsetLeft + definitionWidth >= document.body.clientWidth;\n\n definitionElement.style.top =\n Number(getCoords(termElement).top + offsetTop - customHeaderTop) + 'px';\n definitionElement.style.left = Number(offsetLeft - (isShiftLeftNeeded ? shiftLeft : 0)) + 'px';\n}\n\nfunction termOnResize() {\n const openedDefinition = document.getElementsByClassName(openDefinitionClass)[0] as HTMLElement;\n\n if (!openedDefinition) {\n return;\n }\n const termId = openedDefinition.getAttribute('term-id') || '';\n const termElement = document.getElementById(termId);\n\n if (!termElement) {\n return;\n }\n\n setDefinitionPosition(openedDefinition, termElement);\n}\n\nfunction termParentElement(term: HTMLElement | null) {\n if (!term) {\n return null;\n }\n\n const closestScrollableParent = term.closest('table') || term.closest('code');\n\n return closestScrollableParent || term.parentElement;\n}\n\nexport function openDefinition(target: HTMLElement) {\n const openedDefinition = document.getElementsByClassName(openDefinitionClass)[0] as HTMLElement;\n\n const termId = target.getAttribute('id');\n const termKey = target.getAttribute('term-key');\n let definitionElement = document.getElementById(termKey + '_element');\n\n if (termKey && !definitionElement) {\n definitionElement = createDefinitionElement(target);\n }\n\n const isSameTerm = openedDefinition && termId === openedDefinition.getAttribute('term-id');\n if (isSameTerm) {\n closeDefinition(openedDefinition);\n return;\n }\n\n const isTargetDefinitionContent = target.closest(\n [Selector.CONTENT.replace(' ', ''), openClass].join('.'),\n );\n\n if (openedDefinition && !isTargetDefinitionContent) {\n closeDefinition(openedDefinition);\n }\n\n if (!target.matches(Selector.TITLE) || !definitionElement) {\n return;\n }\n\n setDefinitionId(definitionElement, target);\n setDefinitonAriaAttributes(definitionElement, target);\n setDefinitionPosition(definitionElement, target);\n\n definitionElement.classList.toggle(openClass);\n\n trapFocus(definitionElement);\n}\n\nexport function closeDefinition(definition: HTMLElement) {\n definition.classList.remove(openClass);\n const termId = definition.getAttribute('term-id') || '';\n const term = document.getElementById(termId);\n const termParent = termParentElement(term);\n\n if (!termParent) {\n return;\n }\n\n termParent.removeEventListener('scroll', termOnResize);\n term?.focus(); // Set focus back to open button after closing popup\n\n isListenerNeeded = true;\n}\n\nfunction getCoords(elem: HTMLElement) {\n const box = elem.getBoundingClientRect();\n\n const body = document.body;\n const docEl = document.documentElement;\n\n const scrollTop = window.pageYOffset || docEl.scrollTop || body.scrollTop;\n const scrollLeft = window.pageXOffset || docEl.scrollLeft || body.scrollLeft;\n\n const clientTop = docEl.clientTop || body.clientTop || 0;\n const clientLeft = docEl.clientLeft || body.clientLeft || 0;\n\n const top = box.top + scrollTop - clientTop;\n const left = box.left + scrollLeft - clientLeft;\n\n return {top: Math.round(top), left: Math.round(left)};\n}\n\nexport function trapFocus(element: HTMLElement) {\n const focusableElements = element.querySelectorAll(\n 'button, [href], input, select, textarea, [tabindex]:not([tabindex=\"-1\"])',\n );\n const firstFocusableElement = focusableElements[0] as HTMLElement;\n const lastFocusableElement = focusableElements[focusableElements.length - 1] as HTMLElement;\n\n if (firstFocusableElement) {\n firstFocusableElement.focus();\n }\n\n element.addEventListener('keydown', function (e) {\n const isTabPressed = e.key === 'Tab' || e.keyCode === 9;\n if (!isTabPressed) {\n return;\n }\n\n if (e.shiftKey) {\n if (document.activeElement === firstFocusableElement) {\n lastFocusableElement.focus();\n e.preventDefault();\n }\n } else if (document.activeElement === lastFocusableElement) {\n firstFocusableElement.focus();\n e.preventDefault();\n }\n });\n}\n", "import {getEventTarget, isCustom} from '../utils';\nimport {\n closeDefinition,\n openClass,\n openDefinition,\n openDefinitionClass,\n setDefinitionPosition,\n} from './utils';\n\nif (typeof document !== 'undefined') {\n document.addEventListener('click', (event) => {\n if (getEventTarget(event) || !isCustom(event)) {\n openDefinition(getEventTarget(event) as HTMLElement);\n }\n });\n\n document.addEventListener('keydown', (event) => {\n const openedDefinition = document.getElementsByClassName(\n openDefinitionClass,\n )[0] as HTMLElement;\n\n if (event.key === 'Enter' && document.activeElement) {\n openDefinition(document.activeElement as HTMLElement);\n }\n\n if (event.key === 'Escape' && openedDefinition) {\n closeDefinition(openedDefinition);\n }\n });\n\n window.addEventListener('resize', () => {\n const openedDefinition = document.getElementsByClassName(\n openDefinitionClass,\n )[0] as HTMLElement;\n\n if (!openedDefinition) {\n return;\n }\n\n const termId = openedDefinition.getAttribute('term-id') || '';\n const termElement = document.getElementById(termId);\n\n if (!termElement) {\n openedDefinition.classList.toggle(openClass);\n return;\n }\n\n setDefinitionPosition(openedDefinition, termElement);\n });\n}\n", "export const WIDE_ELEMENTS_SELECTOR = '[wide-content]';\n", "export default `<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"16\" height=\"16\" fill=\"none\" viewBox=\"0 0 16 16\"><path fill=\"currentColor\" fill-rule=\"evenodd\" d=\"M7.754 2.004a.75.75 0 0 0 0 1.5h4.75v4.742a.75.75 0 0 0 1.5 0V2.754a.75.75 0 0 0-.75-.75zm.492 11.992a.75.75 0 0 0 0-1.5h-4.75V7.754a.75.75 0 0 0-1.5 0v5.492a.75.75 0 0 0 .75.75z\" clip-rule=\"evenodd\"/></svg>`;\n", "export default `<svg width=\"28\" height=\"28\" viewBox=\"0 0 28 28\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" class=\"close-action\"><path fillRule=\"evenodd\" clipRule=\"evenodd\" d=\"M9.46967 9.46967C9.76256 9.17678 10.2374 9.17678 10.5303 9.46967L14 12.9393L17.4697 9.46967C17.7626 9.17678 18.2374 9.17678 18.5303 9.46967C18.8232 9.76256 18.8232 10.2374 18.5303 10.5303L15.0607 14L18.5303 17.4697C18.8232 17.7626 18.8232 18.2374 18.5303 18.5303C18.2374 18.8232 17.7626 18.8232 17.4697 18.5303L14 15.0607L10.5303 18.5303C10.2374 18.8232 9.76256 18.8232 9.46967 18.5303C9.17678 18.2374 9.17678 17.7626 9.46967 17.4697L12.9393 14L9.46967 10.5303C9.17678 10.2374 9.17678 9.76256 9.46967 9.46967Z\" fill=\"var(--g-color-text-primary)\" fillOpacity=\"0.85\"/></svg>`;\n", "import closeIcon from './icons/close';\n\nconst remove = () => {\n if (!window.wideTemplate) {\n return;\n }\n\n window.wideTemplate.style.display = 'none';\n window.wideTemplate.content(undefined);\n};\n\nconst tbodyOf = (node: HTMLElement) => {\n if (node.tagName !== 'TABLE') {\n return undefined;\n }\n\n const elements = Array.from(node.children);\n\n const thead = elements.find((child) => child.tagName === 'THEAD');\n\n if (thead) {\n return undefined;\n }\n\n const tbody = elements.find((child) => child.tagName === 'TBODY');\n\n return tbody;\n};\n\ntype ModalContainer = NonNullable<typeof window.wideTemplate>;\n\n/* @todo refactor to markup with innerHTML @v8tenko */\n\nconst container = () => {\n if (window.wideTemplate) {\n return window.wideTemplate;\n }\n\n const template = document.createElement('div') as ModalContainer;\n template.classList.add('dc-doc-page', 'wide-container');\n\n const overlay = document.createElement('div');\n overlay.classList.add('wide-content-overlay');\n overlay.addEventListener('click', remove);\n\n const wrapper = document.createElement('div');\n wrapper.classList.add('yfm', 'wide-content-wrapper');\n\n const toolbar = document.createElement('div');\n toolbar.classList.add('wide-toolbar');\n\n const close = document.createElement('div');\n close.classList.add('wide-actions');\n close.addEventListener('click', remove);\n close.innerHTML = closeIcon;\n\n const title = document.createElement('p');\n title.classList.add('wide-entity-name');\n\n template.label = (content?: string) => {\n title.innerHTML = content || '';\n };\n\n const content = document.createElement('div');\n content.classList.add('wide-content');\n\n template.content = (target?: Element) => {\n if (typeof target === 'undefined') {\n content.innerHTML = '';\n\n return;\n }\n\n const cloned = target.cloneNode(true) as HTMLElement;\n\n const tbody = tbodyOf(cloned);\n\n /* used to stretch single tbody to 100% */\n tbody?.classList?.add('wide-thead-content');\n\n content.replaceChildren(cloned);\n };\n\n toolbar.append(title, close);\n wrapper.append(toolbar, content);\n template.append(overlay, wrapper);\n\n template.style.display = 'none';\n document.body.appendChild(template);\n\n window.wideTemplate = template;\n\n return template;\n};\n\nconst render = (content: HTMLElement) => {\n const template = container();\n\n template.label(content.title);\n template.content(content);\n\n template.style.display = 'flex';\n};\n\nexport const modal = {\n render,\n remove,\n};\n", "import {WIDE_ELEMENTS_SELECTOR} from './constants';\nimport expand from './icons/expand';\nimport {modal} from './modal';\n\nconst wrap = (target: HTMLElement) => {\n if (target.parentElement?.classList.contains('wide-element-wrapper')) {\n return;\n }\n\n target.classList.add('wide-inner-element');\n\n const handler = document.createElement('div');\n\n handler.innerHTML = expand;\n handler.classList.add('wide-content-viewer');\n handler.addEventListener('click', () => modal.render(target));\n\n const container = document.createElement('div');\n\n container.classList.add('wide-element-wrapper');\n\n target.before(container);\n\n container.appendChild(target);\n container.appendChild(handler);\n};\n\nexport const applyWideMode = () => {\n const allWideElements = Array.from(\n document.querySelectorAll(WIDE_ELEMENTS_SELECTOR),\n ) as HTMLElement[];\n\n allWideElements.forEach(wrap);\n};\n", "import {applyWideMode} from './apply';\n\nif (typeof window !== 'undefined' && typeof document !== 'undefined') {\n window.addEventListener('load', applyWideMode);\n}\n", "import {applyWideMode} from './wide-mode/apply';\n\nconst patch = () => {\n applyWideMode();\n};\n\nif (typeof window !== 'undefined') {\n window.patchAfterRender = patch;\n}\n"],
5
- "mappings": "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",
4
+ "sourcesContent": ["'use strict';\n\n// Node getRootNode(optional GetRootNodeOptions options);\n\n/**\n * Returns the context object\u2019s shadow-including root if options\u2019s composed is true.\n * Returns the context object\u2019s root otherwise.\n *\n * The root of an object is itself, if its parent is null, or else it is the root of its parent.\n *\n * The shadow-including root of an object is its root\u2019s host\u2019s shadow-including root,\n * if the object\u2019s root is a shadow root, and its root otherwise.\n *\n * https://dom.spec.whatwg.org/#dom-node-getrootnode\n *\n * @memberof Node.prototype\n * @param {!Object} [opt = {}] - Options.\n * @param {!boolean} [opt.composed] - See above description.\n * @returns {!Node} The root node.\n */\nfunction getRootNode(opt) {\n var composed = typeof opt === 'object' && Boolean(opt.composed);\n\n return composed ? getShadowIncludingRoot(this) : getRoot(this);\n}\n\nfunction getShadowIncludingRoot(node) {\n var root = getRoot(node);\n\n if (isShadowRoot(root)) {\n return getShadowIncludingRoot(root.host);\n }\n\n return root;\n}\n\nfunction getRoot(node) {\n if (node.parentNode != null) {\n return getRoot(node.parentNode);\n }\n\n return node;\n}\n\nfunction isShadowRoot(node) {\n return node.nodeName === '#document-fragment' && node.constructor.name === 'ShadowRoot';\n}\n\nif (typeof module === 'object' && module.exports) {\n module.exports = getRootNode;\n}\n", "export const GLOBAL_KEY = 'yfm_cut';\n\nexport const Selector = {\n CUT: '.yfm .yfm-cut',\n TITLE: '.yfm .yfm-cut-title',\n CONTENT: '.yfm .yfm-cut-content',\n};\n\nexport const ClassName = {\n OPEN: 'open',\n};\n", "export const getEventTarget = (event: Event) => {\n const path = event.composedPath();\n return Array.isArray(path) && path.length > 0 ? path[0] : event.target;\n};\n\nexport const isCustom = (event: Event) => {\n const target = getEventTarget(event);\n return !target || !(target as HTMLElement).matches;\n};\n", "import {ClassName, Selector} from './const';\nimport {getEventTarget, isCustom} from './utils';\n\nexport class YfmCutController {\n private readonly __doc: Document;\n\n constructor(doc: Document) {\n this.__doc = doc;\n this.__doc.addEventListener('click', this._onDocClick);\n }\n\n destroy() {\n this.__doc.removeEventListener('click', this._onDocClick);\n }\n\n private _onDocClick = (event: MouseEvent) => {\n if (isCustom(event)) {\n return;\n }\n\n const title = this._findTitleInPath(event);\n if (title) {\n this._toggleCut(title);\n }\n };\n\n private _findTitleInPath(event: MouseEvent): HTMLElement | undefined {\n const target = getEventTarget(event);\n if (this._matchTitle(target)) {\n return target as HTMLElement;\n }\n\n const path = event.composedPath?.();\n return path?.find(this._matchTitle) as HTMLElement | undefined;\n }\n\n private _matchTitle = (target: EventTarget | null) => {\n if (target instanceof HTMLElement) {\n return target?.matches?.(Selector.TITLE);\n }\n return false;\n };\n\n private _toggleCut(element: HTMLElement) {\n const cutNode = element.parentElement;\n cutNode?.classList.toggle(ClassName.OPEN);\n }\n}\n", "import {GLOBAL_KEY} from './const';\nimport {YfmCutController} from './controller';\n\nimport './styles/cut.scss';\n\nif (typeof window !== 'undefined' && typeof document !== 'undefined' && !window[GLOBAL_KEY]) {\n window[GLOBAL_KEY] = new YfmCutController(document);\n}\n\ndeclare global {\n interface Window {\n [GLOBAL_KEY]: YfmCutController;\n }\n}\n", "import type {TabsOrientation} from './plugin/transform';\nimport type {TabsController} from './runtime/TabsController';\n\nexport const TABS_CLASSNAME = 'yfm-tabs';\nexport const TABS_VERTICAL_CLASSNAME = 'yfm-tabs-vertical';\nexport const TABS_LIST_CLASSNAME = 'yfm-tab-list';\nexport const TAB_CLASSNAME = 'yfm-tab';\nexport const TAB_PANEL_CLASSNAME = 'yfm-tab-panel';\nexport const ACTIVE_CLASSNAME = 'active';\nexport const VERTICAL_TAB_CLASSNAME = 'yfm-vertical-tab';\nexport const VERTICAL_TAB_FORCED_OPEN = 'data-diplodoc-radio-forced';\n\nexport const GROUP_DATA_KEY = 'data-diplodoc-group';\nexport const TAB_DATA_KEY = 'data-diplodoc-key';\nexport const TAB_DATA_ID = 'data-diplodoc-id';\nexport const TAB_DATA_VERTICAL_TAB = 'data-diplodoc-vertical-tab';\nexport const TAB_ACTIVE_KEY = 'data-diplodoc-is-active';\nexport const TAB_RADIO_KEY = 'data-diplodoc-input';\n\nexport const DEFAULT_TABS_GROUP_PREFIX = 'defaultTabsGroup-';\nexport const ACTIVE_TAB_TEXT = '{selected}';\n\nexport interface Tab {\n group?: string;\n key: string;\n align: TabsOrientation;\n}\n\nexport interface SelectedTabEvent {\n tab: Tab;\n currentTabId?: string;\n}\n\nexport const GLOBAL_SYMBOL: unique symbol = Symbol.for('diplodocTabs');\n\ndeclare global {\n interface Window {\n [GLOBAL_SYMBOL]: TabsController;\n }\n}\n", "export const getEventTarget = (event: Event) => {\n const path = event.composedPath();\n return Array.isArray(path) && path.length > 0 ? path[0] : event.target;\n};\n\nexport const isCustom = (event: Event) => {\n const target = getEventTarget(event);\n return !target || !(target as HTMLElement).matches;\n};\n\nexport const getClosestScrollableParent = (element: HTMLElement): HTMLElement | undefined => {\n if (Math.abs(element.scrollHeight - element.clientHeight) > 1) {\n return element;\n }\n\n return element.parentElement ? getClosestScrollableParent(element.parentElement) : undefined;\n};\n\nexport interface ElementOffset {\n top: number;\n left: number;\n scrollTop: number;\n scrollLeft: number;\n}\n\nexport const getOffsetByScrollableParent = (\n element: HTMLElement,\n scrollableParent: HTMLElement,\n): ElementOffset => {\n const elementBounds = element.getBoundingClientRect();\n const scrollableParentBounds = scrollableParent.getBoundingClientRect();\n return {\n top: elementBounds.top - scrollableParentBounds.top,\n left: elementBounds.left - scrollableParentBounds.left,\n scrollTop: scrollableParent.scrollTop,\n scrollLeft: scrollableParent.scrollLeft,\n };\n};\n", "import {\n ACTIVE_CLASSNAME,\n DEFAULT_TABS_GROUP_PREFIX,\n GROUP_DATA_KEY,\n SelectedTabEvent,\n TABS_CLASSNAME,\n TABS_LIST_CLASSNAME,\n TABS_VERTICAL_CLASSNAME,\n TAB_CLASSNAME,\n TAB_DATA_ID,\n TAB_DATA_KEY,\n TAB_PANEL_CLASSNAME,\n Tab,\n VERTICAL_TAB_FORCED_OPEN,\n} from '../common';\nimport type {TabsOrientation} from '../plugin/transform';\nimport {\n ElementOffset,\n getClosestScrollableParent,\n getEventTarget,\n getOffsetByScrollableParent,\n isCustom,\n} from './utils';\n\nconst Selector = {\n TABS: `.${TABS_CLASSNAME}`,\n TAB_LIST: `.${TABS_LIST_CLASSNAME}`,\n TAB: `.${TAB_CLASSNAME}`,\n TAB_PANEL: `.${TAB_PANEL_CLASSNAME}`,\n VERTICAL_TABS: `.${TABS_VERTICAL_CLASSNAME}`,\n};\n\nexport interface ISelectTabByIdOptions {\n scrollToElement: boolean;\n}\n\ntype Handler = (data: SelectedTabEvent) => void;\n\ntype TabSwitchDirection = 'left' | 'right';\n\nexport class TabsController {\n private _document: Document;\n\n private _onSelectTabHandlers: Set<Handler> = new Set();\n\n constructor(document: Document) {\n this._document = document;\n this._document.addEventListener('click', (event) => {\n const target = getEventTarget(event) as HTMLElement;\n const areVertical = this.areTabsVertical(target);\n\n if (isCustom(event)) {\n return;\n }\n\n if (!(this.isValidTabElement(target) || areVertical)) {\n return;\n }\n\n const tab = this.getTabDataFromHTMLElement(target);\n\n if (tab) {\n this._selectTab(tab, target);\n }\n });\n this._document.addEventListener('keydown', (event) => {\n let direction: TabSwitchDirection | null = null;\n switch (event.key) {\n case 'ArrowLeft': {\n direction = 'left';\n break;\n }\n case 'ArrowRight': {\n direction = 'right';\n break;\n }\n case 'ArrowUp': {\n direction = 'left';\n break;\n }\n case 'ArrowDown': {\n direction = 'right';\n break;\n }\n }\n if (!direction) {\n return;\n }\n\n const target = getEventTarget(event) as HTMLElement;\n\n if (isCustom(event) || !this.isValidTabElement(target)) {\n return;\n }\n\n const {tabs, nodes} = this.getTabs(target);\n const currentTab = this.getTabDataFromHTMLElement(target);\n const currentTabIndex = tabs.findIndex(\n ({key}) => currentTab?.key && key === currentTab.key,\n );\n if (!currentTab || tabs.length <= 1 || currentTabIndex === -1) {\n return;\n }\n\n const newIndex =\n (currentTabIndex + (direction === 'left' ? -1 : 1) + tabs.length) % tabs.length;\n\n this.selectTab(tabs[newIndex]);\n nodes[newIndex].focus();\n });\n }\n\n onSelectTab(handler: Handler) {\n this._onSelectTabHandlers.add(handler);\n\n return () => {\n this._onSelectTabHandlers.delete(handler);\n };\n }\n\n selectTabById(id: string, options?: ISelectTabByIdOptions) {\n const target = this._document.querySelector(\n `${Selector.TAB}[${TAB_DATA_ID}=\"${id}\"]`,\n ) as HTMLElement;\n\n if (!target || !this.isValidTabElement(target)) {\n return;\n }\n\n const tab = this.getTabDataFromHTMLElement(target);\n\n if (tab) {\n this._selectTab(tab, target);\n }\n\n if (options?.scrollToElement) {\n target.scrollIntoView();\n }\n }\n\n selectTab(tab: Tab) {\n this._selectTab(tab);\n }\n\n private _selectTab(tab: Tab, targetTab?: HTMLElement) {\n const {group, key, align} = tab;\n\n if (!group) {\n return;\n }\n\n const scrollableParent = targetTab && getClosestScrollableParent(targetTab);\n const previousTargetOffset =\n scrollableParent && getOffsetByScrollableParent(targetTab, scrollableParent);\n\n const updatedTabs = this.updateHTML({group, key, align}, targetTab, align);\n\n if (updatedTabs > 0) {\n this.fireSelectTabEvent({group, key, align}, targetTab?.dataset.diplodocId);\n\n if (previousTargetOffset) {\n this.resetScroll(targetTab, scrollableParent, previousTargetOffset);\n }\n }\n }\n\n private updateHTML(\n tab: Required<Tab>,\n target: HTMLElement | undefined,\n align: TabsOrientation,\n ) {\n switch (align) {\n case 'radio': {\n return this.updateHTMLVertical(tab, target);\n }\n case 'horizontal': {\n return this.updateHTMLHorizontal(tab);\n }\n }\n\n return 0;\n }\n\n private updateHTMLVertical(tab: Required<Tab>, target: HTMLElement | undefined) {\n const {group, key} = tab;\n\n const {isForced, root} = this.didTabOpenForce(target);\n\n const singleTabSelector = isForced\n ? `.yfm-vertical-tab[${VERTICAL_TAB_FORCED_OPEN}=\"true\"]`\n : '';\n\n const tabs = this._document.querySelectorAll(\n `${Selector.TABS}[${GROUP_DATA_KEY}=\"${group}\"] ${Selector.TAB}[${TAB_DATA_KEY}=\"${key}\"]${singleTabSelector}`,\n );\n\n if (isForced) {\n root?.removeAttribute(VERTICAL_TAB_FORCED_OPEN);\n }\n\n let updated = 0;\n\n tabs.forEach((tab) => {\n const root = tab.parentNode!;\n const elements = root.children;\n\n for (let i = 0; i < elements.length; i += 2) {\n const [title, content] = [elements.item(i), elements.item(i + 1)] as HTMLElement[];\n\n const input = title.children.item(0) as HTMLInputElement;\n\n if (title === tab) {\n const checked = input.checked;\n\n if (checked) {\n title.classList.remove('active');\n content?.classList.remove('active');\n\n input.removeAttribute('checked');\n } else {\n title.classList.add('active');\n content?.classList.add('active');\n\n input.setAttribute('checked', 'true');\n }\n\n continue;\n }\n\n if (input.hasAttribute('checked')) {\n title.classList.remove('active');\n content?.classList.remove('active');\n\n input.removeAttribute('checked');\n }\n\n updated++;\n }\n });\n\n return updated;\n }\n\n private updateHTMLHorizontal(tab: Required<Tab>) {\n const {group, key} = tab;\n\n const tabs = this._document.querySelectorAll(\n `${Selector.TABS}[${GROUP_DATA_KEY}=\"${group}\"] ${Selector.TAB}[${TAB_DATA_KEY}=\"${key}\"]`,\n );\n\n let updated = 0;\n\n tabs.forEach((element) => {\n const htmlElem = element as HTMLElement;\n if (!this.isValidTabElement(htmlElem) || htmlElem.dataset.diplodocIsActive === 'true') {\n return;\n }\n\n updated++;\n\n const tab = element;\n const tabList = tab.parentNode;\n const tabsContainer = tabList?.parentNode;\n const allTabs = Array.from(tabList?.querySelectorAll(Selector.TAB) || []);\n const allPanels = Array.from(tabsContainer?.children || []).filter((node) =>\n node.classList.contains(TAB_PANEL_CLASSNAME),\n );\n const targetIndex = allTabs.indexOf(tab);\n\n allTabs.forEach((tab, i) => {\n const panel = allPanels[i];\n const isTargetTab = i === targetIndex;\n const htmlElem = tab as HTMLElement;\n\n htmlElem.dataset.diplodocIsActive = isTargetTab ? 'true' : 'false';\n\n tab.classList.toggle(ACTIVE_CLASSNAME, isTargetTab);\n tab.setAttribute('aria-selected', isTargetTab.toString());\n tab.setAttribute('tabindex', isTargetTab ? '0' : '-1');\n panel.classList.toggle(ACTIVE_CLASSNAME, isTargetTab);\n });\n });\n\n return updated;\n }\n\n private resetScroll(\n target: HTMLElement,\n scrollableParent: HTMLElement,\n previousTargetOffset: ElementOffset,\n ) {\n const targetOffset = getOffsetByScrollableParent(target, scrollableParent);\n const topDelta = targetOffset.top - previousTargetOffset.top;\n const leftDelta = targetOffset.left - previousTargetOffset.left;\n const scrollTopDelta = targetOffset.scrollTop - previousTargetOffset.scrollTop;\n const scrollLeftDelta = targetOffset.scrollLeft - previousTargetOffset.scrollLeft;\n scrollableParent.scrollTo(\n scrollableParent.scrollLeft + leftDelta - scrollLeftDelta,\n scrollableParent.scrollTop + topDelta - scrollTopDelta,\n );\n }\n\n private didTabOpenForce(target?: HTMLElement) {\n if (!target) {\n return {};\n }\n\n const root = target.dataset.diplodocVerticalTab ? target : target.parentElement;\n\n const isForced = typeof root?.dataset.diplodocRadioForced !== 'undefined';\n\n return {root, isForced};\n }\n\n private fireSelectTabEvent(tab: Required<Tab>, diplodocId?: string) {\n const {group, key, align} = tab;\n\n const eventTab: Tab = group.startsWith(DEFAULT_TABS_GROUP_PREFIX) ? {key, align} : tab;\n\n this._onSelectTabHandlers.forEach((handler) => {\n handler({tab: eventTab, currentTabId: diplodocId});\n });\n }\n\n private isValidTabElement(element: HTMLElement) {\n const tabList =\n element.matches(Selector.TAB) && element.dataset.diplodocId\n ? element.closest(Selector.TAB_LIST)\n : null;\n\n return tabList?.closest(Selector.TABS);\n }\n\n private areTabsVertical(target: HTMLElement) {\n const parent = target.parentElement;\n\n return target.dataset.diplodocVerticalTab || Boolean(parent?.dataset.diplodocVerticalTab);\n }\n\n private getTabDataFromHTMLElement(target: HTMLElement): Tab | null {\n if (this.areTabsVertical(target)) {\n const tab = target.dataset.diplodocVerticalTab ? target : target.parentElement!;\n\n const key = tab.dataset.diplodocKey;\n const group = (tab.closest(Selector.TABS) as HTMLElement)?.dataset.diplodocGroup;\n return key && group ? {group, key, align: 'radio'} : null;\n }\n\n const key = target.dataset.diplodocKey;\n const group = (target.closest(Selector.TABS) as HTMLElement)?.dataset.diplodocGroup;\n return key && group ? {group, key, align: 'horizontal'} : null;\n }\n\n private getTabs(target: HTMLElement): {tabs: Tab[]; nodes: NodeListOf<HTMLElement>} {\n const group = (target.closest(Selector.TABS) as HTMLElement)?.dataset.diplodocGroup;\n const nodes = (\n target.closest(Selector.TAB_LIST) as HTMLElement\n )?.querySelectorAll<HTMLElement>(Selector.TAB);\n\n const tabs: Tab[] = [];\n nodes.forEach((tabEl) => {\n const key = tabEl?.dataset.diplodocKey;\n if (!key) {\n return;\n }\n\n /** horizontal-only supported feature (used in left/right button click) */\n tabs.push({\n group,\n key,\n align: 'horizontal',\n });\n });\n\n return {tabs, nodes};\n }\n}\n", "import {GLOBAL_SYMBOL} from '../common';\nimport {TabsController} from './TabsController';\nimport './scss/tabs.scss';\n\nif (typeof window !== 'undefined' && typeof document !== 'undefined' && !window[GLOBAL_SYMBOL]) {\n window[GLOBAL_SYMBOL] = new TabsController(document);\n}\n", "import getRootNode from 'get-root-node-polyfill';\n\nif (typeof document !== 'undefined') {\n // matches polyfill for old edge\n (function (e) {\n const matches =\n e.matches ||\n e.matchesSelector ||\n e.webkitMatchesSelector ||\n e.mozMatchesSelector ||\n e.msMatchesSelector ||\n e.oMatchesSelector;\n\n if (matches) {\n e.matches = e.matchesSelector = matches;\n } else {\n e.matches = e.matchesSelector = function matches(selector) {\n const rootNode = e.getRootNode ? e.getRootNode() : getRootNode.call(e);\n const matches = rootNode.querySelectorAll(selector);\n const th = this;\n return Array.prototype.some.call(matches, (e) => {\n return e === th;\n });\n };\n }\n })(Element.prototype);\n}\n", "export const getEventTarget = (event: Event) => {\n const path = event.composedPath();\n return Array.isArray(path) && path.length > 0 ? path[0] : event.target;\n};\n\nexport const isCustom = (event: Event) => {\n const target = getEventTarget(event);\n return !target || !(target as HTMLElement).matches;\n};\n", "import {getEventTarget, isCustom} from './utils';\n\nconst BUTTON_SELECTOR = '.yfm-clipboard-button';\n\nfunction copyToClipboard(text: string) {\n if (!text) {\n return Promise.resolve();\n }\n\n if (navigator.clipboard && typeof navigator.clipboard.writeText) {\n return navigator.clipboard.writeText(text);\n }\n const textarea = document.createElement('textarea');\n textarea.setAttribute('style', 'position: absolute; left: 1000%');\n textarea.textContent = text;\n document.body.append(textarea);\n\n textarea.select();\n document.execCommand('copy');\n\n document.body.removeChild(textarea);\n\n return Promise.resolve();\n}\n\nfunction notifySuccess(svgButton: HTMLElement | null) {\n if (!svgButton) {\n return;\n }\n\n const id = svgButton.getAttribute('data-animation');\n // @ts-expect-error\n const icon = svgButton.getRootNode().getElementById(`visibileAnimation-${id}`);\n\n if (!icon) {\n return;\n }\n\n icon.beginElement();\n}\n\nif (typeof document !== 'undefined') {\n document.addEventListener('click', (event) => {\n const target = getEventTarget(event) as HTMLElement;\n\n if (isCustom(event) || !target.matches(BUTTON_SELECTOR)) {\n return;\n }\n\n const parent = target.parentNode;\n\n if (!parent) {\n return;\n }\n\n const code = parent.querySelector<HTMLElement>('pre code');\n if (!code) {\n return;\n }\n\n copyToClipboard(code.innerText).then(() => {\n notifySuccess(parent.querySelector('.yfm-clipboard-icon'));\n });\n });\n}\n", "export const Selector = {\n TITLE: '.yfm .yfm-term_title',\n CONTENT: '.yfm .yfm-term_dfn',\n};\nexport const openClass = 'open';\nexport const openDefinitionClass = Selector.CONTENT.replace(/\\./g, '') + ' ' + openClass;\nlet isListenerNeeded = true;\n\nexport function createDefinitionElement(termElement: HTMLElement) {\n const termKey = termElement.getAttribute('term-key');\n const definitionTemplate = document.getElementById(\n `${termKey}_template`,\n ) as HTMLTemplateElement;\n const definitionElement = definitionTemplate?.content.cloneNode(true).firstChild as HTMLElement;\n\n definitionTemplate?.parentElement?.appendChild(definitionElement);\n definitionTemplate.remove();\n\n return definitionElement;\n}\n\nexport function setDefinitionId(definitionElement: HTMLElement, termElement: HTMLElement): void {\n const termId = termElement.getAttribute('id') || Math.random().toString(36).substr(2, 8);\n definitionElement?.setAttribute('term-id', termId);\n}\n\nexport function setDefinitonAriaAttributes(\n definitionElement: HTMLElement,\n termElement: HTMLElement,\n): void {\n const ariaLive = termElement.getAttribute('aria-live') || 'polite';\n definitionElement?.setAttribute('aria-live', ariaLive);\n definitionElement?.setAttribute('aria-modal', 'true');\n}\n\nexport function setDefinitionPosition(\n definitionElement: HTMLElement,\n termElement: HTMLElement,\n): void {\n const {\n x: termX,\n y: termY,\n right: termRight,\n left: termLeft,\n width: termWidth,\n height: termHeight,\n } = termElement.getBoundingClientRect();\n\n const termParent = termParentElement(termElement);\n\n if (!termParent) {\n return;\n }\n\n const {right: termParentRight, left: termParentLeft} = termParent.getBoundingClientRect();\n\n if ((termParentRight < termLeft || termParentLeft > termRight) && !isListenerNeeded) {\n closeDefinition(definitionElement);\n return;\n }\n\n if (isListenerNeeded && termParent) {\n termParent.addEventListener('scroll', termOnResize);\n isListenerNeeded = false;\n }\n\n const relativeX = Number(definitionElement.getAttribute('relativeX'));\n const relativeY = Number(definitionElement.getAttribute('relativeY'));\n\n if (relativeX === termX && relativeY === termY) {\n return;\n }\n\n definitionElement.setAttribute('relativeX', String(termX));\n definitionElement.setAttribute('relativeY', String(termY));\n\n const offsetTop = termHeight + 5;\n const definitionParent = definitionElement.parentElement;\n\n if (!definitionParent) {\n return;\n }\n\n const {width: definitionWidth} = definitionElement.getBoundingClientRect();\n const {left: definitionParentLeft} = definitionParent.getBoundingClientRect();\n\n // If definition not fit document change base alignment\n const definitionLeftCoordinate = Number(getCoords(termElement).left);\n const definitionRightCoordinate = definitionWidth + definitionLeftCoordinate;\n\n const definitionOutOfScreenOnLeft = definitionLeftCoordinate - definitionWidth < 0;\n const definitionOutOfScreenOnRight = definitionRightCoordinate > document.body.clientWidth;\n\n const isAlignSwapped = definitionOutOfScreenOnRight || document.dir === 'rtl';\n const fitDefinitionDocument =\n isAlignSwapped && !definitionOutOfScreenOnLeft ? definitionWidth - termWidth : 0;\n const customHeaderTop = getCoords(definitionParent).top - definitionParent.offsetTop;\n const offsetRight = 5;\n const shiftLeft = definitionOutOfScreenOnRight\n ? definitionRightCoordinate - document.body.clientWidth + offsetRight\n : 0;\n const offsetLeft =\n getCoords(termElement).left -\n definitionParentLeft +\n definitionParent.offsetLeft -\n fitDefinitionDocument;\n\n const isShiftLeftNeeded = offsetLeft + definitionWidth >= document.body.clientWidth;\n\n definitionElement.style.top =\n Number(getCoords(termElement).top + offsetTop - customHeaderTop) + 'px';\n definitionElement.style.left = Number(offsetLeft - (isShiftLeftNeeded ? shiftLeft : 0)) + 'px';\n}\n\nfunction termOnResize() {\n const openedDefinition = document.getElementsByClassName(openDefinitionClass)[0] as HTMLElement;\n\n if (!openedDefinition) {\n return;\n }\n const termId = openedDefinition.getAttribute('term-id') || '';\n const termElement = document.getElementById(termId);\n\n if (!termElement) {\n return;\n }\n\n setDefinitionPosition(openedDefinition, termElement);\n}\n\nfunction termParentElement(term: HTMLElement | null) {\n if (!term) {\n return null;\n }\n\n const closestScrollableParent = term.closest('table') || term.closest('code');\n\n return closestScrollableParent || term.parentElement;\n}\n\nexport function openDefinition(target: HTMLElement) {\n const openedDefinition = document.getElementsByClassName(openDefinitionClass)[0] as HTMLElement;\n\n const termId = target.getAttribute('id');\n const termKey = target.getAttribute('term-key');\n let definitionElement = document.getElementById(termKey + '_element');\n\n if (termKey && !definitionElement) {\n definitionElement = createDefinitionElement(target);\n }\n\n const isSameTerm = openedDefinition && termId === openedDefinition.getAttribute('term-id');\n if (isSameTerm) {\n closeDefinition(openedDefinition);\n return;\n }\n\n const isTargetDefinitionContent = target.closest(\n [Selector.CONTENT.replace(' ', ''), openClass].join('.'),\n );\n\n if (openedDefinition && !isTargetDefinitionContent) {\n closeDefinition(openedDefinition);\n }\n\n if (!target.matches(Selector.TITLE) || !definitionElement) {\n return;\n }\n\n setDefinitionId(definitionElement, target);\n setDefinitonAriaAttributes(definitionElement, target);\n setDefinitionPosition(definitionElement, target);\n\n definitionElement.classList.toggle(openClass);\n\n trapFocus(definitionElement);\n}\n\nexport function closeDefinition(definition: HTMLElement) {\n definition.classList.remove(openClass);\n const termId = definition.getAttribute('term-id') || '';\n const term = document.getElementById(termId);\n const termParent = termParentElement(term);\n\n if (!termParent) {\n return;\n }\n\n termParent.removeEventListener('scroll', termOnResize);\n term?.focus(); // Set focus back to open button after closing popup\n\n isListenerNeeded = true;\n}\n\nfunction getCoords(elem: HTMLElement) {\n const box = elem.getBoundingClientRect();\n\n const body = document.body;\n const docEl = document.documentElement;\n\n const scrollTop = window.pageYOffset || docEl.scrollTop || body.scrollTop;\n const scrollLeft = window.pageXOffset || docEl.scrollLeft || body.scrollLeft;\n\n const clientTop = docEl.clientTop || body.clientTop || 0;\n const clientLeft = docEl.clientLeft || body.clientLeft || 0;\n\n const top = box.top + scrollTop - clientTop;\n const left = box.left + scrollLeft - clientLeft;\n\n return {top: Math.round(top), left: Math.round(left)};\n}\n\nexport function trapFocus(element: HTMLElement) {\n const focusableElements = element.querySelectorAll(\n 'button, [href], input, select, textarea, [tabindex]:not([tabindex=\"-1\"])',\n );\n const firstFocusableElement = focusableElements[0] as HTMLElement;\n const lastFocusableElement = focusableElements[focusableElements.length - 1] as HTMLElement;\n\n if (firstFocusableElement) {\n firstFocusableElement.focus();\n }\n\n element.addEventListener('keydown', function (e) {\n const isTabPressed = e.key === 'Tab' || e.keyCode === 9;\n if (!isTabPressed) {\n return;\n }\n\n if (e.shiftKey) {\n if (document.activeElement === firstFocusableElement) {\n lastFocusableElement.focus();\n e.preventDefault();\n }\n } else if (document.activeElement === lastFocusableElement) {\n firstFocusableElement.focus();\n e.preventDefault();\n }\n });\n}\n", "import {getEventTarget, isCustom} from '../utils';\n\nimport {\n closeDefinition,\n openClass,\n openDefinition,\n openDefinitionClass,\n setDefinitionPosition,\n} from './utils';\n\nif (typeof document !== 'undefined') {\n document.addEventListener('click', (event) => {\n if (getEventTarget(event) || !isCustom(event)) {\n openDefinition(getEventTarget(event) as HTMLElement);\n }\n });\n\n document.addEventListener('keydown', (event) => {\n const openedDefinition = document.getElementsByClassName(\n openDefinitionClass,\n )[0] as HTMLElement;\n\n if (event.key === 'Enter' && document.activeElement) {\n openDefinition(document.activeElement as HTMLElement);\n }\n\n if (event.key === 'Escape' && openedDefinition) {\n closeDefinition(openedDefinition);\n }\n });\n\n window.addEventListener('resize', () => {\n const openedDefinition = document.getElementsByClassName(\n openDefinitionClass,\n )[0] as HTMLElement;\n\n if (!openedDefinition) {\n return;\n }\n\n const termId = openedDefinition.getAttribute('term-id') || '';\n const termElement = document.getElementById(termId);\n\n if (!termElement) {\n openedDefinition.classList.toggle(openClass);\n return;\n }\n\n setDefinitionPosition(openedDefinition, termElement);\n });\n}\n", "export const WIDE_ELEMENTS_SELECTOR = '[wide-content]';\n", "export default `<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"16\" height=\"16\" fill=\"none\" viewBox=\"0 0 16 16\"><path fill=\"currentColor\" fill-rule=\"evenodd\" d=\"M7.754 2.004a.75.75 0 0 0 0 1.5h4.75v4.742a.75.75 0 0 0 1.5 0V2.754a.75.75 0 0 0-.75-.75zm.492 11.992a.75.75 0 0 0 0-1.5h-4.75V7.754a.75.75 0 0 0-1.5 0v5.492a.75.75 0 0 0 .75.75z\" clip-rule=\"evenodd\"/></svg>`;\n", "export default `<svg width=\"28\" height=\"28\" viewBox=\"0 0 28 28\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" class=\"close-action\"><path fillRule=\"evenodd\" clipRule=\"evenodd\" d=\"M9.46967 9.46967C9.76256 9.17678 10.2374 9.17678 10.5303 9.46967L14 12.9393L17.4697 9.46967C17.7626 9.17678 18.2374 9.17678 18.5303 9.46967C18.8232 9.76256 18.8232 10.2374 18.5303 10.5303L15.0607 14L18.5303 17.4697C18.8232 17.7626 18.8232 18.2374 18.5303 18.5303C18.2374 18.8232 17.7626 18.8232 17.4697 18.5303L14 15.0607L10.5303 18.5303C10.2374 18.8232 9.76256 18.8232 9.46967 18.5303C9.17678 18.2374 9.17678 17.7626 9.46967 17.4697L12.9393 14L9.46967 10.5303C9.17678 10.2374 9.17678 9.76256 9.46967 9.46967Z\" fill=\"var(--g-color-text-primary)\" fillOpacity=\"0.85\"/></svg>`;\n", "import closeIcon from './icons/close';\n\nconst remove = () => {\n if (!window.wideTemplate) {\n return;\n }\n\n window.wideTemplate.style.display = 'none';\n window.wideTemplate.content(undefined);\n};\n\nconst tbodyOf = (node: HTMLElement) => {\n if (node.tagName !== 'TABLE') {\n return undefined;\n }\n\n const elements = Array.from(node.children);\n\n const thead = elements.find((child) => child.tagName === 'THEAD');\n\n if (thead) {\n return undefined;\n }\n\n const tbody = elements.find((child) => child.tagName === 'TBODY');\n\n return tbody;\n};\n\ntype ModalContainer = NonNullable<typeof window.wideTemplate>;\n\n/* @todo refactor to markup with innerHTML @v8tenko */\n\nconst container = () => {\n if (window.wideTemplate) {\n return window.wideTemplate;\n }\n\n const template = document.createElement('div') as ModalContainer;\n template.classList.add('dc-doc-page', 'wide-container');\n\n const overlay = document.createElement('div');\n overlay.classList.add('wide-content-overlay');\n overlay.addEventListener('click', remove);\n\n const wrapper = document.createElement('div');\n wrapper.classList.add('yfm', 'wide-content-wrapper');\n\n const toolbar = document.createElement('div');\n toolbar.classList.add('wide-toolbar');\n\n const close = document.createElement('div');\n close.classList.add('wide-actions');\n close.addEventListener('click', remove);\n close.innerHTML = closeIcon;\n\n const title = document.createElement('p');\n title.classList.add('wide-entity-name');\n\n template.label = (content?: string) => {\n title.innerHTML = content || '';\n };\n\n const content = document.createElement('div');\n content.classList.add('wide-content');\n\n template.content = (target?: Element) => {\n if (typeof target === 'undefined') {\n content.innerHTML = '';\n\n return;\n }\n\n const cloned = target.cloneNode(true) as HTMLElement;\n\n const tbody = tbodyOf(cloned);\n\n /* used to stretch single tbody to 100% */\n tbody?.classList?.add('wide-thead-content');\n\n content.replaceChildren(cloned);\n };\n\n toolbar.append(title, close);\n wrapper.append(toolbar, content);\n template.append(overlay, wrapper);\n\n template.style.display = 'none';\n document.body.appendChild(template);\n\n window.wideTemplate = template;\n\n return template;\n};\n\nconst render = (content: HTMLElement) => {\n const template = container();\n\n template.label(content.title);\n template.content(content);\n\n template.style.display = 'flex';\n};\n\nexport const modal = {\n render,\n remove,\n};\n", "import {WIDE_ELEMENTS_SELECTOR} from './constants';\nimport expand from './icons/expand';\nimport {modal} from './modal';\n\nconst wrap = (target: HTMLElement) => {\n if (target.parentElement?.classList.contains('wide-element-wrapper')) {\n return;\n }\n\n target.classList.add('wide-inner-element');\n\n const handler = document.createElement('div');\n\n handler.innerHTML = expand;\n handler.classList.add('wide-content-viewer');\n handler.addEventListener('click', () => modal.render(target));\n\n const container = document.createElement('div');\n\n container.classList.add('wide-element-wrapper');\n\n target.before(container);\n\n container.appendChild(target);\n container.appendChild(handler);\n};\n\nexport const applyWideMode = () => {\n const allWideElements = Array.from(\n document.querySelectorAll(WIDE_ELEMENTS_SELECTOR),\n ) as HTMLElement[];\n\n allWideElements.forEach(wrap);\n};\n", "import {applyWideMode} from './apply';\n\nif (typeof window !== 'undefined' && typeof document !== 'undefined') {\n window.addEventListener('load', applyWideMode);\n}\n", "import {applyWideMode} from './wide-mode/apply';\n\nconst patch = () => {\n applyWideMode();\n};\n\nif (typeof window !== 'undefined') {\n window.patchAfterRender = patch;\n}\n"],
5
+ "mappings": "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",
6
6
  "names": ["getRootNode", "GLOBAL_KEY", "Selector", "ClassName", "getEventTarget", "event", "path", "isCustom", "target", "YfmCutController", "doc", "title", "element", "TABS_CLASSNAME", "TABS_VERTICAL_CLASSNAME", "TABS_LIST_CLASSNAME", "TAB_CLASSNAME", "TAB_PANEL_CLASSNAME", "ACTIVE_CLASSNAME", "VERTICAL_TAB_FORCED_OPEN", "GROUP_DATA_KEY", "TAB_DATA_KEY", "TAB_DATA_ID", "DEFAULT_TABS_GROUP_PREFIX", "GLOBAL_SYMBOL", "getEventTarget", "event", "path", "isCustom", "target", "getClosestScrollableParent", "element", "getOffsetByScrollableParent", "scrollableParent", "elementBounds", "scrollableParentBounds", "Selector", "TabsController", "document", "areVertical", "tab", "direction", "tabs", "nodes", "currentTab", "currentTabIndex", "key", "newIndex", "handler", "id", "options", "targetTab", "group", "align", "previousTargetOffset", "isForced", "root", "singleTabSelector", "updated", "elements", "i", "title", "content", "input", "htmlElem", "tabList", "tabsContainer", "allTabs", "allPanels", "node", "targetIndex", "panel", "isTargetTab", "targetOffset", "topDelta", "leftDelta", "scrollTopDelta", "scrollLeftDelta", "diplodocId", "eventTab", "parent", "_a", "_b", "tabEl", "matches", "getRootNode", "e", "content", "container"]
7
7
  }