@aquera/nile-elements 2.0.16 → 2.0.17

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 (354) hide show
  1. package/README.md +3 -0
  2. package/dist/{index-f6944844.cjs.js → index-0c0c869d.cjs.js} +2 -2
  3. package/dist/{index-f6944844.cjs.js.map → index-0c0c869d.cjs.js.map} +1 -1
  4. package/dist/{index-403841c7.cjs.js → index-129ef6fb.cjs.js} +3 -3
  5. package/dist/{index-403841c7.cjs.js.map → index-129ef6fb.cjs.js.map} +1 -1
  6. package/dist/{index-1faa963c.esm.js → index-36f2a6b5.esm.js} +1 -1
  7. package/dist/index-4df50481.esm.js +1 -0
  8. package/dist/index-5d34cff1.esm.js +1 -0
  9. package/dist/index-7ae95edd.cjs.js +2 -0
  10. package/dist/{index-3ca67627.cjs.js.map → index-7ae95edd.cjs.js.map} +1 -1
  11. package/dist/index-7ca72b78.esm.js +1 -0
  12. package/dist/index-bbe23ad8.cjs.js +2 -0
  13. package/dist/index-bbe23ad8.cjs.js.map +1 -0
  14. package/dist/index-ccc6a799.cjs.js +5 -0
  15. package/dist/index-ccc6a799.cjs.js.map +1 -0
  16. package/dist/index.cjs.js +1 -1
  17. package/dist/index.esm.js +1 -1
  18. package/dist/index.js +122 -70
  19. package/dist/nile-auto-complete/index.cjs.js +1 -1
  20. package/dist/nile-auto-complete/nile-auto-complete.cjs.js +1 -1
  21. package/dist/nile-auto-complete/portal-manager.cjs.js +1 -1
  22. package/dist/nile-auto-complete/portal-utils.cjs.js +1 -1
  23. package/dist/nile-code-editor/extensionSetup.cjs.js +2 -2
  24. package/dist/nile-code-editor/index.cjs.js +1 -1
  25. package/dist/nile-code-editor/nile-code-editor.cjs.js +1 -1
  26. package/dist/nile-code-editor/theme.cjs.js +1 -1
  27. package/dist/nile-color-picker/index.cjs.js +1 -1
  28. package/dist/nile-color-picker/nile-color-picker.cjs.js +1 -1
  29. package/dist/nile-combobox/index.cjs.js +1 -1
  30. package/dist/nile-combobox/nile-combobox.cjs.js +1 -1
  31. package/dist/nile-combobox/portal-manager.cjs.js +1 -1
  32. package/dist/nile-context-menu/index.cjs.js +1 -1
  33. package/dist/nile-context-menu/nile-context-menu.cjs.js +1 -1
  34. package/dist/nile-context-submenu/index.cjs.js +1 -1
  35. package/dist/nile-context-submenu/nile-context-submenu.cjs.js +1 -1
  36. package/dist/nile-detail/index.cjs.js +1 -1
  37. package/dist/nile-detail/nile-detail.cjs.js +1 -1
  38. package/dist/nile-dropdown/index.cjs.js +1 -1
  39. package/dist/nile-dropdown/nile-dropdown.cjs.js +1 -1
  40. package/dist/nile-dropdown/portal-manager.cjs.js +1 -1
  41. package/dist/nile-file-upload/index.cjs.js +1 -1
  42. package/dist/nile-file-upload/nile-file-upload.cjs.js +1 -1
  43. package/dist/nile-file-upload/nile-file-upload.template.cjs.js +1 -1
  44. package/dist/nile-floating-panel/index.cjs.js +1 -1
  45. package/dist/nile-floating-panel/nile-floating-panel.cjs.js +1 -1
  46. package/dist/nile-lite-tooltip/index.cjs.js +1 -1
  47. package/dist/nile-lite-tooltip/nile-lite-tooltip.cjs.js +1 -1
  48. package/dist/nile-markdown-editor/index.cjs.js +1 -1
  49. package/dist/nile-markdown-editor/nile-markdown-editor.cjs.js +1 -1
  50. package/dist/nile-popover/index.cjs.js +1 -1
  51. package/dist/nile-popover/nile-popover.cjs.js +1 -1
  52. package/dist/nile-popover/portal-manager.cjs.js +1 -1
  53. package/dist/nile-popup/index.cjs.js +1 -1
  54. package/dist/nile-popup/nile-popup.cjs.js +1 -1
  55. package/dist/nile-segmented-progress-bar/index.cjs.js +1 -1
  56. package/dist/nile-segmented-progress-bar/nile-segmented-progress-bar.cjs.js +1 -1
  57. package/dist/nile-select/index.cjs.js +1 -1
  58. package/dist/nile-select/nile-select.cjs.js +1 -1
  59. package/dist/nile-select/portal-manager.cjs.js +1 -1
  60. package/dist/nile-side-bar-action/index.cjs.js +1 -1
  61. package/dist/nile-side-bar-action/nile-side-bar-action.cjs.js +1 -1
  62. package/dist/nile-side-bar-action/portal-manager.cjs.js +1 -1
  63. package/dist/nile-tooltip/index.cjs.js +1 -1
  64. package/dist/nile-tooltip/nile-tooltip.cjs.js +1 -1
  65. package/dist/nile-virtual-select/index.cjs.js +1 -1
  66. package/dist/nile-virtual-select/nile-virtual-select.cjs.js +1 -1
  67. package/dist/nile-virtual-select/portal-manager.cjs.js +1 -1
  68. package/dist/nile-virtual-select/renderer.cjs.js +1 -1
  69. package/dist/nile-wysiwyg-editor/engine/commands.cjs.js +1 -1
  70. package/dist/nile-wysiwyg-editor/engine/commands.cjs.js.map +1 -1
  71. package/dist/nile-wysiwyg-editor/engine/commands.esm.js +1 -1
  72. package/dist/nile-wysiwyg-editor/engine/create-state.cjs.js +1 -1
  73. package/dist/nile-wysiwyg-editor/engine/create-state.cjs.js.map +1 -1
  74. package/dist/nile-wysiwyg-editor/engine/create-state.esm.js +1 -1
  75. package/dist/nile-wysiwyg-editor/engine/email-css.cjs.js +2 -0
  76. package/dist/nile-wysiwyg-editor/engine/email-css.cjs.js.map +1 -0
  77. package/dist/nile-wysiwyg-editor/engine/email-css.esm.js +1 -0
  78. package/dist/nile-wysiwyg-editor/engine/email-render.cjs.js +2 -0
  79. package/dist/nile-wysiwyg-editor/engine/email-render.cjs.js.map +1 -0
  80. package/dist/nile-wysiwyg-editor/engine/email-render.esm.js +1 -0
  81. package/dist/nile-wysiwyg-editor/engine/html-detect.cjs.js +2 -0
  82. package/dist/nile-wysiwyg-editor/engine/html-detect.cjs.js.map +1 -0
  83. package/dist/nile-wysiwyg-editor/engine/html-detect.esm.js +1 -0
  84. package/dist/nile-wysiwyg-editor/engine/index.cjs.js +1 -1
  85. package/dist/nile-wysiwyg-editor/engine/index.esm.js +1 -1
  86. package/dist/nile-wysiwyg-editor/engine/inputrules.cjs.js +1 -1
  87. package/dist/nile-wysiwyg-editor/engine/inputrules.cjs.js.map +1 -1
  88. package/dist/nile-wysiwyg-editor/engine/inputrules.esm.js +1 -1
  89. package/dist/nile-wysiwyg-editor/engine/keymap.cjs.js +1 -1
  90. package/dist/nile-wysiwyg-editor/engine/keymap.cjs.js.map +1 -1
  91. package/dist/nile-wysiwyg-editor/engine/keymap.esm.js +1 -1
  92. package/dist/nile-wysiwyg-editor/engine/plugins/code-highlight.cjs.js +1 -1
  93. package/dist/nile-wysiwyg-editor/engine/plugins/code-highlight.cjs.js.map +1 -1
  94. package/dist/nile-wysiwyg-editor/engine/plugins/code-highlight.esm.js +1 -1
  95. package/dist/nile-wysiwyg-editor/engine/plugins/embed-view.cjs.js +1 -1
  96. package/dist/nile-wysiwyg-editor/engine/plugins/embed-view.cjs.js.map +1 -1
  97. package/dist/nile-wysiwyg-editor/engine/plugins/embed-view.esm.js +1 -1
  98. package/dist/nile-wysiwyg-editor/engine/plugins/embeds.cjs.js +1 -1
  99. package/dist/nile-wysiwyg-editor/engine/plugins/embeds.cjs.js.map +1 -1
  100. package/dist/nile-wysiwyg-editor/engine/plugins/embeds.esm.js +1 -1
  101. package/dist/nile-wysiwyg-editor/engine/plugins/find-replace.cjs.js +1 -1
  102. package/dist/nile-wysiwyg-editor/engine/plugins/find-replace.cjs.js.map +1 -1
  103. package/dist/nile-wysiwyg-editor/engine/plugins/find-replace.esm.js +1 -1
  104. package/dist/nile-wysiwyg-editor/engine/plugins/format-painter.cjs.js +1 -1
  105. package/dist/nile-wysiwyg-editor/engine/plugins/format-painter.cjs.js.map +1 -1
  106. package/dist/nile-wysiwyg-editor/engine/plugins/format-painter.esm.js +1 -1
  107. package/dist/nile-wysiwyg-editor/engine/plugins/image-view.cjs.js +1 -1
  108. package/dist/nile-wysiwyg-editor/engine/plugins/image-view.cjs.js.map +1 -1
  109. package/dist/nile-wysiwyg-editor/engine/plugins/image-view.esm.js +1 -1
  110. package/dist/nile-wysiwyg-editor/engine/plugins/image.cjs.js +1 -1
  111. package/dist/nile-wysiwyg-editor/engine/plugins/image.cjs.js.map +1 -1
  112. package/dist/nile-wysiwyg-editor/engine/plugins/image.esm.js +1 -1
  113. package/dist/nile-wysiwyg-editor/engine/plugins/link.cjs.js +1 -1
  114. package/dist/nile-wysiwyg-editor/engine/plugins/link.cjs.js.map +1 -1
  115. package/dist/nile-wysiwyg-editor/engine/plugins/link.esm.js +1 -1
  116. package/dist/nile-wysiwyg-editor/engine/plugins/max-length.cjs.js +1 -1
  117. package/dist/nile-wysiwyg-editor/engine/plugins/max-length.cjs.js.map +1 -1
  118. package/dist/nile-wysiwyg-editor/engine/plugins/max-length.esm.js +1 -1
  119. package/dist/nile-wysiwyg-editor/engine/plugins/paste.cjs.js +1 -1
  120. package/dist/nile-wysiwyg-editor/engine/plugins/paste.cjs.js.map +1 -1
  121. package/dist/nile-wysiwyg-editor/engine/plugins/paste.esm.js +1 -1
  122. package/dist/nile-wysiwyg-editor/engine/plugins/placeholder.cjs.js +1 -1
  123. package/dist/nile-wysiwyg-editor/engine/plugins/placeholder.cjs.js.map +1 -1
  124. package/dist/nile-wysiwyg-editor/engine/plugins/placeholder.esm.js +1 -1
  125. package/dist/nile-wysiwyg-editor/engine/plugins/single-line.cjs.js +1 -1
  126. package/dist/nile-wysiwyg-editor/engine/plugins/single-line.cjs.js.map +1 -1
  127. package/dist/nile-wysiwyg-editor/engine/plugins/single-line.esm.js +1 -1
  128. package/dist/nile-wysiwyg-editor/engine/plugins/suggestions.cjs.js +1 -1
  129. package/dist/nile-wysiwyg-editor/engine/plugins/suggestions.cjs.js.map +1 -1
  130. package/dist/nile-wysiwyg-editor/engine/plugins/suggestions.esm.js +1 -1
  131. package/dist/nile-wysiwyg-editor/engine/plugins/tables.cjs.js +1 -1
  132. package/dist/nile-wysiwyg-editor/engine/plugins/tables.cjs.js.map +1 -1
  133. package/dist/nile-wysiwyg-editor/engine/plugins/tables.esm.js +1 -1
  134. package/dist/nile-wysiwyg-editor/engine/sanitize.cjs.js +2 -1
  135. package/dist/nile-wysiwyg-editor/engine/sanitize.cjs.js.map +1 -1
  136. package/dist/nile-wysiwyg-editor/engine/sanitize.esm.js +1 -1
  137. package/dist/nile-wysiwyg-editor/engine/schema.cjs.js +1 -1
  138. package/dist/nile-wysiwyg-editor/engine/schema.cjs.js.map +1 -1
  139. package/dist/nile-wysiwyg-editor/engine/schema.esm.js +1 -1
  140. package/dist/nile-wysiwyg-editor/engine/selection-state.cjs.js +1 -1
  141. package/dist/nile-wysiwyg-editor/engine/selection-state.cjs.js.map +1 -1
  142. package/dist/nile-wysiwyg-editor/engine/selection-state.esm.js +1 -1
  143. package/dist/nile-wysiwyg-editor/engine/serializer.cjs.js +1 -1
  144. package/dist/nile-wysiwyg-editor/engine/serializer.cjs.js.map +1 -1
  145. package/dist/nile-wysiwyg-editor/engine/serializer.esm.js +1 -1
  146. package/dist/nile-wysiwyg-editor/index.cjs.js +1 -1
  147. package/dist/nile-wysiwyg-editor/index.esm.js +1 -1
  148. package/dist/nile-wysiwyg-editor/nile-wysiwyg-editor.cjs.js +1 -1
  149. package/dist/nile-wysiwyg-editor/nile-wysiwyg-editor.cjs.js.map +1 -1
  150. package/dist/nile-wysiwyg-editor/nile-wysiwyg-editor.css.cjs.js +1 -1
  151. package/dist/nile-wysiwyg-editor/nile-wysiwyg-editor.css.cjs.js.map +1 -1
  152. package/dist/nile-wysiwyg-editor/nile-wysiwyg-editor.css.esm.js +45 -4
  153. package/dist/nile-wysiwyg-editor/nile-wysiwyg-editor.esm.js +2 -2
  154. package/dist/nile-wysiwyg-editor/nile-wysiwyg-toolbar/index.cjs.js +1 -1
  155. package/dist/nile-wysiwyg-editor/nile-wysiwyg-toolbar/nile-wysiwyg-toolbar.cjs.js +1 -1
  156. package/dist/nile-wysiwyg-editor/ui/bookmark-panel.cjs.js +1 -1
  157. package/dist/nile-wysiwyg-editor/ui/bookmark-panel.cjs.js.map +1 -1
  158. package/dist/nile-wysiwyg-editor/ui/bookmark-panel.esm.js +2 -2
  159. package/dist/nile-wysiwyg-editor/ui/bubble-menu.cjs.js +1 -1
  160. package/dist/nile-wysiwyg-editor/ui/bubble-menu.cjs.js.map +1 -1
  161. package/dist/nile-wysiwyg-editor/ui/bubble-menu.esm.js +5 -5
  162. package/dist/nile-wysiwyg-editor/ui/code-block-menu.cjs.js +1 -1
  163. package/dist/nile-wysiwyg-editor/ui/code-block-menu.cjs.js.map +1 -1
  164. package/dist/nile-wysiwyg-editor/ui/code-block-menu.esm.js +1 -1
  165. package/dist/nile-wysiwyg-editor/ui/embed-menu.cjs.js +1 -1
  166. package/dist/nile-wysiwyg-editor/ui/embed-menu.cjs.js.map +1 -1
  167. package/dist/nile-wysiwyg-editor/ui/embed-menu.esm.js +1 -1
  168. package/dist/nile-wysiwyg-editor/ui/embed-panel.cjs.js +1 -1
  169. package/dist/nile-wysiwyg-editor/ui/embed-panel.cjs.js.map +1 -1
  170. package/dist/nile-wysiwyg-editor/ui/embed-panel.esm.js +2 -2
  171. package/dist/nile-wysiwyg-editor/ui/emoji-picker.cjs.js +1 -1
  172. package/dist/nile-wysiwyg-editor/ui/emoji-picker.cjs.js.map +1 -1
  173. package/dist/nile-wysiwyg-editor/ui/emoji-picker.esm.js +1 -1
  174. package/dist/nile-wysiwyg-editor/ui/find-replace.cjs.js +1 -1
  175. package/dist/nile-wysiwyg-editor/ui/find-replace.cjs.js.map +1 -1
  176. package/dist/nile-wysiwyg-editor/ui/find-replace.esm.js +3 -3
  177. package/dist/nile-wysiwyg-editor/ui/image-menu.cjs.js +1 -1
  178. package/dist/nile-wysiwyg-editor/ui/image-menu.cjs.js.map +1 -1
  179. package/dist/nile-wysiwyg-editor/ui/image-menu.esm.js +3 -3
  180. package/dist/nile-wysiwyg-editor/ui/image-panel.cjs.js +1 -1
  181. package/dist/nile-wysiwyg-editor/ui/image-panel.cjs.js.map +1 -1
  182. package/dist/nile-wysiwyg-editor/ui/image-panel.esm.js +1 -1
  183. package/dist/nile-wysiwyg-editor/ui/insert-menu.cjs.js +1 -1
  184. package/dist/nile-wysiwyg-editor/ui/insert-menu.cjs.js.map +1 -1
  185. package/dist/nile-wysiwyg-editor/ui/insert-menu.esm.js +1 -1
  186. package/dist/nile-wysiwyg-editor/ui/link-editor.cjs.js +1 -1
  187. package/dist/nile-wysiwyg-editor/ui/link-editor.cjs.js.map +1 -1
  188. package/dist/nile-wysiwyg-editor/ui/link-editor.esm.js +9 -9
  189. package/dist/nile-wysiwyg-editor/ui/markdown-panel.cjs.js +1 -1
  190. package/dist/nile-wysiwyg-editor/ui/markdown-panel.cjs.js.map +1 -1
  191. package/dist/nile-wysiwyg-editor/ui/markdown-panel.esm.js +1 -1
  192. package/dist/nile-wysiwyg-editor/ui/math-panel.cjs.js +1 -1
  193. package/dist/nile-wysiwyg-editor/ui/math-panel.cjs.js.map +1 -1
  194. package/dist/nile-wysiwyg-editor/ui/math-panel.esm.js +1 -1
  195. package/dist/nile-wysiwyg-editor/ui/shortcut-help.cjs.js +1 -1
  196. package/dist/nile-wysiwyg-editor/ui/shortcut-help.cjs.js.map +1 -1
  197. package/dist/nile-wysiwyg-editor/ui/shortcut-help.esm.js +1 -1
  198. package/dist/nile-wysiwyg-editor/ui/source-view.cjs.js +1 -1
  199. package/dist/nile-wysiwyg-editor/ui/source-view.cjs.js.map +1 -1
  200. package/dist/nile-wysiwyg-editor/ui/source-view.esm.js +4 -4
  201. package/dist/nile-wysiwyg-editor/ui/special-chars.cjs.js +1 -1
  202. package/dist/nile-wysiwyg-editor/ui/special-chars.cjs.js.map +1 -1
  203. package/dist/nile-wysiwyg-editor/ui/special-chars.esm.js +1 -1
  204. package/dist/nile-wysiwyg-editor/ui/suggest-list.cjs.js +1 -1
  205. package/dist/nile-wysiwyg-editor/ui/suggest-list.cjs.js.map +1 -1
  206. package/dist/nile-wysiwyg-editor/ui/suggest-list.esm.js +23 -12
  207. package/dist/nile-wysiwyg-editor/ui/table-grid-picker.cjs.js +1 -1
  208. package/dist/nile-wysiwyg-editor/ui/table-grid-picker.cjs.js.map +1 -1
  209. package/dist/nile-wysiwyg-editor/ui/table-grid-picker.esm.js +7 -7
  210. package/dist/nile-wysiwyg-editor/ui/table-menu.cjs.js +1 -1
  211. package/dist/nile-wysiwyg-editor/ui/table-menu.cjs.js.map +1 -1
  212. package/dist/nile-wysiwyg-editor/ui/table-menu.esm.js +1 -1
  213. package/dist/src/nile-wysiwyg-editor/engine/create-state.d.ts +5 -0
  214. package/dist/src/nile-wysiwyg-editor/engine/create-state.js +2 -0
  215. package/dist/src/nile-wysiwyg-editor/engine/create-state.js.map +1 -1
  216. package/dist/src/nile-wysiwyg-editor/engine/email-css.d.ts +14 -0
  217. package/dist/src/nile-wysiwyg-editor/engine/email-css.js +140 -0
  218. package/dist/src/nile-wysiwyg-editor/engine/email-css.js.map +1 -0
  219. package/dist/src/nile-wysiwyg-editor/engine/email-fidelity.test.d.ts +1 -0
  220. package/dist/src/nile-wysiwyg-editor/engine/email-fidelity.test.js +1045 -0
  221. package/dist/src/nile-wysiwyg-editor/engine/email-fidelity.test.js.map +1 -0
  222. package/dist/src/nile-wysiwyg-editor/engine/email-render.d.ts +11 -0
  223. package/dist/src/nile-wysiwyg-editor/engine/email-render.js +93 -0
  224. package/dist/src/nile-wysiwyg-editor/engine/email-render.js.map +1 -0
  225. package/dist/src/nile-wysiwyg-editor/engine/html-detect.d.ts +2 -0
  226. package/dist/src/nile-wysiwyg-editor/engine/html-detect.js +24 -0
  227. package/dist/src/nile-wysiwyg-editor/engine/html-detect.js.map +1 -0
  228. package/dist/src/nile-wysiwyg-editor/engine/index.d.ts +4 -1
  229. package/dist/src/nile-wysiwyg-editor/engine/index.js +3 -1
  230. package/dist/src/nile-wysiwyg-editor/engine/index.js.map +1 -1
  231. package/dist/src/nile-wysiwyg-editor/engine/inputrules.d.ts +0 -5
  232. package/dist/src/nile-wysiwyg-editor/engine/inputrules.js +19 -0
  233. package/dist/src/nile-wysiwyg-editor/engine/inputrules.js.map +1 -1
  234. package/dist/src/nile-wysiwyg-editor/engine/plugins/image-view.js +3 -2
  235. package/dist/src/nile-wysiwyg-editor/engine/plugins/image-view.js.map +1 -1
  236. package/dist/src/nile-wysiwyg-editor/engine/plugins/link.d.ts +4 -0
  237. package/dist/src/nile-wysiwyg-editor/engine/plugins/link.js +56 -1
  238. package/dist/src/nile-wysiwyg-editor/engine/plugins/link.js.map +1 -1
  239. package/dist/src/nile-wysiwyg-editor/engine/plugins/paste.d.ts +5 -0
  240. package/dist/src/nile-wysiwyg-editor/engine/plugins/paste.js +27 -6
  241. package/dist/src/nile-wysiwyg-editor/engine/plugins/paste.js.map +1 -1
  242. package/dist/src/nile-wysiwyg-editor/engine/plugins/tables.js +30 -7
  243. package/dist/src/nile-wysiwyg-editor/engine/plugins/tables.js.map +1 -1
  244. package/dist/src/nile-wysiwyg-editor/engine/pm.test.js +46 -0
  245. package/dist/src/nile-wysiwyg-editor/engine/pm.test.js.map +1 -1
  246. package/dist/src/nile-wysiwyg-editor/engine/sanitize.d.ts +9 -1
  247. package/dist/src/nile-wysiwyg-editor/engine/sanitize.js +730 -7
  248. package/dist/src/nile-wysiwyg-editor/engine/sanitize.js.map +1 -1
  249. package/dist/src/nile-wysiwyg-editor/engine/schema.d.ts +3 -0
  250. package/dist/src/nile-wysiwyg-editor/engine/schema.js +215 -34
  251. package/dist/src/nile-wysiwyg-editor/engine/schema.js.map +1 -1
  252. package/dist/src/nile-wysiwyg-editor/engine/selection-state.js +3 -1
  253. package/dist/src/nile-wysiwyg-editor/engine/selection-state.js.map +1 -1
  254. package/dist/src/nile-wysiwyg-editor/engine/serializer.d.ts +12 -4
  255. package/dist/src/nile-wysiwyg-editor/engine/serializer.js +18 -8
  256. package/dist/src/nile-wysiwyg-editor/engine/serializer.js.map +1 -1
  257. package/dist/src/nile-wysiwyg-editor/nile-wysiwyg-editor-email-fidelity.test.d.ts +1 -0
  258. package/dist/src/nile-wysiwyg-editor/nile-wysiwyg-editor-email-fidelity.test.js +287 -0
  259. package/dist/src/nile-wysiwyg-editor/nile-wysiwyg-editor-email-fidelity.test.js.map +1 -0
  260. package/dist/src/nile-wysiwyg-editor/nile-wysiwyg-editor.css.js +45 -4
  261. package/dist/src/nile-wysiwyg-editor/nile-wysiwyg-editor.css.js.map +1 -1
  262. package/dist/src/nile-wysiwyg-editor/nile-wysiwyg-editor.d.ts +23 -0
  263. package/dist/src/nile-wysiwyg-editor/nile-wysiwyg-editor.js +113 -15
  264. package/dist/src/nile-wysiwyg-editor/nile-wysiwyg-editor.js.map +1 -1
  265. package/dist/src/nile-wysiwyg-editor/nile-wysiwyg-editor.test.js +213 -0
  266. package/dist/src/nile-wysiwyg-editor/nile-wysiwyg-editor.test.js.map +1 -1
  267. package/dist/src/nile-wysiwyg-editor/ui/bookmark-panel.js +2 -2
  268. package/dist/src/nile-wysiwyg-editor/ui/bookmark-panel.js.map +1 -1
  269. package/dist/src/nile-wysiwyg-editor/ui/bubble-menu.js +1 -1
  270. package/dist/src/nile-wysiwyg-editor/ui/bubble-menu.js.map +1 -1
  271. package/dist/src/nile-wysiwyg-editor/ui/embed-menu.js +1 -1
  272. package/dist/src/nile-wysiwyg-editor/ui/embed-menu.js.map +1 -1
  273. package/dist/src/nile-wysiwyg-editor/ui/embed-panel.js +1 -1
  274. package/dist/src/nile-wysiwyg-editor/ui/embed-panel.js.map +1 -1
  275. package/dist/src/nile-wysiwyg-editor/ui/emoji-picker.js +1 -1
  276. package/dist/src/nile-wysiwyg-editor/ui/emoji-picker.js.map +1 -1
  277. package/dist/src/nile-wysiwyg-editor/ui/find-replace.js +1 -1
  278. package/dist/src/nile-wysiwyg-editor/ui/find-replace.js.map +1 -1
  279. package/dist/src/nile-wysiwyg-editor/ui/image-menu.js +1 -1
  280. package/dist/src/nile-wysiwyg-editor/ui/image-menu.js.map +1 -1
  281. package/dist/src/nile-wysiwyg-editor/ui/image-panel.js +1 -1
  282. package/dist/src/nile-wysiwyg-editor/ui/image-panel.js.map +1 -1
  283. package/dist/src/nile-wysiwyg-editor/ui/insert-menu.js +1 -1
  284. package/dist/src/nile-wysiwyg-editor/ui/insert-menu.js.map +1 -1
  285. package/dist/src/nile-wysiwyg-editor/ui/link-editor.js +2 -2
  286. package/dist/src/nile-wysiwyg-editor/ui/link-editor.js.map +1 -1
  287. package/dist/src/nile-wysiwyg-editor/ui/markdown-panel.js +1 -1
  288. package/dist/src/nile-wysiwyg-editor/ui/markdown-panel.js.map +1 -1
  289. package/dist/src/nile-wysiwyg-editor/ui/math-panel.js +1 -1
  290. package/dist/src/nile-wysiwyg-editor/ui/math-panel.js.map +1 -1
  291. package/dist/src/nile-wysiwyg-editor/ui/shortcut-help.js +1 -1
  292. package/dist/src/nile-wysiwyg-editor/ui/shortcut-help.js.map +1 -1
  293. package/dist/src/nile-wysiwyg-editor/ui/source-view.js +2 -2
  294. package/dist/src/nile-wysiwyg-editor/ui/source-view.js.map +1 -1
  295. package/dist/src/nile-wysiwyg-editor/ui/special-chars.js +1 -1
  296. package/dist/src/nile-wysiwyg-editor/ui/special-chars.js.map +1 -1
  297. package/dist/src/nile-wysiwyg-editor/ui/suggest-list.js +14 -3
  298. package/dist/src/nile-wysiwyg-editor/ui/suggest-list.js.map +1 -1
  299. package/dist/src/nile-wysiwyg-editor/ui/table-grid-picker.js +2 -2
  300. package/dist/src/nile-wysiwyg-editor/ui/table-grid-picker.js.map +1 -1
  301. package/dist/src/nile-wysiwyg-editor/ui/table-menu.js +1 -1
  302. package/dist/src/nile-wysiwyg-editor/ui/table-menu.js.map +1 -1
  303. package/dist/src/version.js +1 -1
  304. package/dist/src/version.js.map +1 -1
  305. package/dist/tsconfig.tsbuildinfo +1 -1
  306. package/package.json +1 -1
  307. package/src/nile-wysiwyg-editor/engine/create-state.ts +7 -0
  308. package/src/nile-wysiwyg-editor/engine/email-css.ts +136 -0
  309. package/src/nile-wysiwyg-editor/engine/email-fidelity.test.ts +1347 -0
  310. package/src/nile-wysiwyg-editor/engine/email-render.ts +99 -0
  311. package/src/nile-wysiwyg-editor/engine/html-detect.ts +26 -0
  312. package/src/nile-wysiwyg-editor/engine/index.ts +10 -1
  313. package/src/nile-wysiwyg-editor/engine/inputrules.ts +18 -1
  314. package/src/nile-wysiwyg-editor/engine/plugins/image-view.ts +3 -2
  315. package/src/nile-wysiwyg-editor/engine/plugins/link.ts +58 -2
  316. package/src/nile-wysiwyg-editor/engine/plugins/paste.ts +31 -8
  317. package/src/nile-wysiwyg-editor/engine/plugins/tables.ts +29 -7
  318. package/src/nile-wysiwyg-editor/engine/pm.test.ts +73 -0
  319. package/src/nile-wysiwyg-editor/engine/sanitize.ts +729 -7
  320. package/src/nile-wysiwyg-editor/engine/schema.ts +206 -33
  321. package/src/nile-wysiwyg-editor/engine/selection-state.ts +3 -1
  322. package/src/nile-wysiwyg-editor/engine/serializer.ts +30 -8
  323. package/src/nile-wysiwyg-editor/nile-wysiwyg-editor-email-fidelity.test.ts +357 -0
  324. package/src/nile-wysiwyg-editor/nile-wysiwyg-editor.css.ts +45 -4
  325. package/src/nile-wysiwyg-editor/nile-wysiwyg-editor.test.ts +258 -0
  326. package/src/nile-wysiwyg-editor/nile-wysiwyg-editor.ts +119 -12
  327. package/src/nile-wysiwyg-editor/ui/bookmark-panel.ts +2 -2
  328. package/src/nile-wysiwyg-editor/ui/bubble-menu.ts +1 -1
  329. package/src/nile-wysiwyg-editor/ui/embed-menu.ts +1 -1
  330. package/src/nile-wysiwyg-editor/ui/embed-panel.ts +1 -1
  331. package/src/nile-wysiwyg-editor/ui/emoji-picker.ts +1 -1
  332. package/src/nile-wysiwyg-editor/ui/find-replace.ts +1 -1
  333. package/src/nile-wysiwyg-editor/ui/image-menu.ts +1 -1
  334. package/src/nile-wysiwyg-editor/ui/image-panel.ts +1 -1
  335. package/src/nile-wysiwyg-editor/ui/insert-menu.ts +1 -1
  336. package/src/nile-wysiwyg-editor/ui/link-editor.ts +2 -2
  337. package/src/nile-wysiwyg-editor/ui/markdown-panel.ts +1 -1
  338. package/src/nile-wysiwyg-editor/ui/math-panel.ts +1 -1
  339. package/src/nile-wysiwyg-editor/ui/shortcut-help.ts +1 -1
  340. package/src/nile-wysiwyg-editor/ui/source-view.ts +2 -2
  341. package/src/nile-wysiwyg-editor/ui/special-chars.ts +1 -1
  342. package/src/nile-wysiwyg-editor/ui/suggest-list.ts +14 -3
  343. package/src/nile-wysiwyg-editor/ui/table-grid-picker.ts +2 -2
  344. package/src/nile-wysiwyg-editor/ui/table-menu.ts +1 -1
  345. package/vscode-html-custom-data.json +15 -1
  346. package/web-test-runner.config.mjs +4 -0
  347. package/dist/index-3ca67627.cjs.js +0 -2
  348. package/dist/index-6f3fa4ab.esm.js +0 -1
  349. package/dist/index-7b1c9857.esm.js +0 -1
  350. package/dist/index-89c520e9.cjs.js +0 -5
  351. package/dist/index-89c520e9.cjs.js.map +0 -1
  352. package/dist/index-ba47645d.esm.js +0 -1
  353. package/dist/index-c3210a9c.cjs.js +0 -2
  354. package/dist/index-c3210a9c.cjs.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"code-highlight.cjs.js","sources":["../../../../../../node_modules/highlight.js/lib/languages/typescript.js","../../../../../../node_modules/highlight.js/lib/languages/java.js","../../../../../../node_modules/highlight.js/lib/languages/swift.js","../../../../../src/nile-wysiwyg-editor/engine/plugins/code-highlight.ts","../../../../../../node_modules/highlight.js/lib/languages/javascript.js","../../../../../../node_modules/highlight.js/lib/languages/json.js","../../../../../../node_modules/highlight.js/lib/languages/css.js","../../../../../../node_modules/highlight.js/lib/languages/scss.js","../../../../../../node_modules/highlight.js/lib/languages/sql.js","../../../../../../node_modules/highlight.js/lib/languages/python.js","../../../../../../node_modules/highlight.js/lib/languages/bash.js","../../../../../../node_modules/highlight.js/lib/languages/shell.js","../../../../../../node_modules/highlight.js/lib/languages/markdown.js","../../../../../../node_modules/highlight.js/lib/languages/plaintext.js","../../../../../../node_modules/highlight.js/lib/languages/c.js","../../../../../../node_modules/highlight.js/lib/languages/cpp.js","../../../../../../node_modules/highlight.js/lib/languages/csharp.js","../../../../../../node_modules/highlight.js/lib/languages/go.js","../../../../../../node_modules/highlight.js/lib/languages/rust.js","../../../../../../node_modules/highlight.js/lib/languages/php.js","../../../../../../node_modules/highlight.js/lib/languages/ruby.js","../../../../../../node_modules/highlight.js/lib/languages/kotlin.js","../../../../../../node_modules/highlight.js/lib/languages/yaml.js","../../../../../../node_modules/highlight.js/lib/languages/dockerfile.js","../../../../../../node_modules/highlight.js/lib/languages/diff.js","../../../../../../node_modules/highlight.js/lib/languages/graphql.js"],"sourcesContent":["const IDENT_RE = '[A-Za-z$_][0-9A-Za-z$_]*';\n\nconst KEYWORDS = [\n \"as\", // for exports\n \"in\",\n \"of\",\n \"if\",\n \"for\",\n \"while\",\n \"finally\",\n \"var\",\n \"new\",\n \"function\",\n \"do\",\n \"return\",\n \"void\",\n \"else\",\n \"break\",\n \"catch\",\n \"instanceof\",\n \"with\",\n \"throw\",\n \"case\",\n \"default\",\n \"try\",\n \"switch\",\n \"continue\",\n \"typeof\",\n \"delete\",\n \"let\",\n \"yield\",\n \"const\",\n \"class\",\n // JS handles these with a special rule\n // \"get\",\n // \"set\",\n \"debugger\",\n \"async\",\n \"await\",\n \"static\",\n \"import\",\n \"from\",\n \"export\",\n \"extends\",\n // It's reached stage 3, which is \"recommended for implementation\":\n \"using\"\n];\nconst LITERALS = [\n \"true\",\n \"false\",\n \"null\",\n \"undefined\",\n \"NaN\",\n \"Infinity\"\n];\n\n// https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects\nconst TYPES = [\n // Fundamental objects\n \"Object\",\n \"Function\",\n \"Boolean\",\n \"Symbol\",\n // numbers and dates\n \"Math\",\n \"Date\",\n \"Number\",\n \"BigInt\",\n // text\n \"String\",\n \"RegExp\",\n // Indexed collections\n \"Array\",\n \"Float32Array\",\n \"Float64Array\",\n \"Int8Array\",\n \"Uint8Array\",\n \"Uint8ClampedArray\",\n \"Int16Array\",\n \"Int32Array\",\n \"Uint16Array\",\n \"Uint32Array\",\n \"BigInt64Array\",\n \"BigUint64Array\",\n // Keyed collections\n \"Set\",\n \"Map\",\n \"WeakSet\",\n \"WeakMap\",\n // Structured data\n \"ArrayBuffer\",\n \"SharedArrayBuffer\",\n \"Atomics\",\n \"DataView\",\n \"JSON\",\n // Control abstraction objects\n \"Promise\",\n \"Generator\",\n \"GeneratorFunction\",\n \"AsyncFunction\",\n // Reflection\n \"Reflect\",\n \"Proxy\",\n // Internationalization\n \"Intl\",\n // WebAssembly\n \"WebAssembly\"\n];\n\nconst ERROR_TYPES = [\n \"Error\",\n \"EvalError\",\n \"InternalError\",\n \"RangeError\",\n \"ReferenceError\",\n \"SyntaxError\",\n \"TypeError\",\n \"URIError\"\n];\n\nconst BUILT_IN_GLOBALS = [\n \"setInterval\",\n \"setTimeout\",\n \"clearInterval\",\n \"clearTimeout\",\n\n \"require\",\n \"exports\",\n\n \"eval\",\n \"isFinite\",\n \"isNaN\",\n \"parseFloat\",\n \"parseInt\",\n \"decodeURI\",\n \"decodeURIComponent\",\n \"encodeURI\",\n \"encodeURIComponent\",\n \"escape\",\n \"unescape\"\n];\n\nconst BUILT_IN_VARIABLES = [\n \"arguments\",\n \"this\",\n \"super\",\n \"console\",\n \"window\",\n \"document\",\n \"localStorage\",\n \"sessionStorage\",\n \"module\",\n \"global\" // Node.js\n];\n\nconst BUILT_INS = [].concat(\n BUILT_IN_GLOBALS,\n TYPES,\n ERROR_TYPES\n);\n\n/*\nLanguage: JavaScript\nDescription: JavaScript (JS) is a lightweight, interpreted, or just-in-time compiled programming language with first-class functions.\nCategory: common, scripting, web\nWebsite: https://developer.mozilla.org/en-US/docs/Web/JavaScript\n*/\n\n\n/** @type LanguageFn */\nfunction javascript(hljs) {\n const regex = hljs.regex;\n /**\n * Takes a string like \"<Booger\" and checks to see\n * if we can find a matching \"</Booger\" later in the\n * content.\n * @param {RegExpMatchArray} match\n * @param {{after:number}} param1\n */\n const hasClosingTag = (match, { after }) => {\n const tag = \"</\" + match[0].slice(1);\n const pos = match.input.indexOf(tag, after);\n return pos !== -1;\n };\n\n const IDENT_RE$1 = IDENT_RE;\n const FRAGMENT = {\n begin: '<>',\n end: '</>'\n };\n // to avoid some special cases inside isTrulyOpeningTag\n const XML_SELF_CLOSING = /<[A-Za-z0-9\\\\._:-]+\\s*\\/>/;\n const XML_TAG = {\n begin: /<[A-Za-z0-9\\\\._:-]+/,\n end: /\\/[A-Za-z0-9\\\\._:-]+>|\\/>/,\n /**\n * @param {RegExpMatchArray} match\n * @param {CallbackResponse} response\n */\n isTrulyOpeningTag: (match, response) => {\n const afterMatchIndex = match[0].length + match.index;\n const nextChar = match.input[afterMatchIndex];\n if (\n // HTML should not include another raw `<` inside a tag\n // nested type?\n // `<Array<Array<number>>`, etc.\n nextChar === \"<\" ||\n // the , gives away that this is not HTML\n // `<T, A extends keyof T, V>`\n nextChar === \",\"\n ) {\n response.ignoreMatch();\n return;\n }\n\n // `<something>`\n // Quite possibly a tag, lets look for a matching closing tag...\n if (nextChar === \">\") {\n // if we cannot find a matching closing tag, then we\n // will ignore it\n if (!hasClosingTag(match, { after: afterMatchIndex })) {\n response.ignoreMatch();\n }\n }\n\n // `<blah />` (self-closing)\n // handled by simpleSelfClosing rule\n\n let m;\n const afterMatch = match.input.substring(afterMatchIndex);\n\n // some more template typing stuff\n // <T = any>(key?: string) => Modify<\n if ((m = afterMatch.match(/^\\s*=/))) {\n response.ignoreMatch();\n return;\n }\n\n // `<From extends string>`\n // technically this could be HTML, but it smells like a type\n // NOTE: This is ugh, but added specifically for https://github.com/highlightjs/highlight.js/issues/3276\n if ((m = afterMatch.match(/^\\s+extends\\s+/))) {\n if (m.index === 0) {\n response.ignoreMatch();\n // eslint-disable-next-line no-useless-return\n return;\n }\n }\n }\n };\n const KEYWORDS$1 = {\n $pattern: IDENT_RE,\n keyword: KEYWORDS,\n literal: LITERALS,\n built_in: BUILT_INS,\n \"variable.language\": BUILT_IN_VARIABLES\n };\n\n // https://tc39.es/ecma262/#sec-literals-numeric-literals\n const decimalDigits = '[0-9](_?[0-9])*';\n const frac = `\\\\.(${decimalDigits})`;\n // DecimalIntegerLiteral, including Annex B NonOctalDecimalIntegerLiteral\n // https://tc39.es/ecma262/#sec-additional-syntax-numeric-literals\n const decimalInteger = `0|[1-9](_?[0-9])*|0[0-7]*[89][0-9]*`;\n const NUMBER = {\n className: 'number',\n variants: [\n // DecimalLiteral\n { begin: `(\\\\b(${decimalInteger})((${frac})|\\\\.)?|(${frac}))` +\n `[eE][+-]?(${decimalDigits})\\\\b` },\n { begin: `\\\\b(${decimalInteger})\\\\b((${frac})\\\\b|\\\\.)?|(${frac})\\\\b` },\n\n // DecimalBigIntegerLiteral\n { begin: `\\\\b(0|[1-9](_?[0-9])*)n\\\\b` },\n\n // NonDecimalIntegerLiteral\n { begin: \"\\\\b0[xX][0-9a-fA-F](_?[0-9a-fA-F])*n?\\\\b\" },\n { begin: \"\\\\b0[bB][0-1](_?[0-1])*n?\\\\b\" },\n { begin: \"\\\\b0[oO][0-7](_?[0-7])*n?\\\\b\" },\n\n // LegacyOctalIntegerLiteral (does not include underscore separators)\n // https://tc39.es/ecma262/#sec-additional-syntax-numeric-literals\n { begin: \"\\\\b0[0-7]+n?\\\\b\" },\n ],\n relevance: 0\n };\n\n const SUBST = {\n className: 'subst',\n begin: '\\\\$\\\\{',\n end: '\\\\}',\n keywords: KEYWORDS$1,\n contains: [] // defined later\n };\n const HTML_TEMPLATE = {\n begin: '\\.?html`',\n end: '',\n starts: {\n end: '`',\n returnEnd: false,\n contains: [\n hljs.BACKSLASH_ESCAPE,\n SUBST\n ],\n subLanguage: 'xml'\n }\n };\n const CSS_TEMPLATE = {\n begin: '\\.?css`',\n end: '',\n starts: {\n end: '`',\n returnEnd: false,\n contains: [\n hljs.BACKSLASH_ESCAPE,\n SUBST\n ],\n subLanguage: 'css'\n }\n };\n const GRAPHQL_TEMPLATE = {\n begin: '\\.?gql`',\n end: '',\n starts: {\n end: '`',\n returnEnd: false,\n contains: [\n hljs.BACKSLASH_ESCAPE,\n SUBST\n ],\n subLanguage: 'graphql'\n }\n };\n const TEMPLATE_STRING = {\n className: 'string',\n begin: '`',\n end: '`',\n contains: [\n hljs.BACKSLASH_ESCAPE,\n SUBST\n ]\n };\n const JSDOC_COMMENT = hljs.COMMENT(\n /\\/\\*\\*(?!\\/)/,\n '\\\\*/',\n {\n relevance: 0,\n contains: [\n {\n begin: '(?=@[A-Za-z]+)',\n relevance: 0,\n contains: [\n {\n className: 'doctag',\n begin: '@[A-Za-z]+'\n },\n {\n className: 'type',\n begin: '\\\\{',\n end: '\\\\}',\n excludeEnd: true,\n excludeBegin: true,\n relevance: 0\n },\n {\n className: 'variable',\n begin: IDENT_RE$1 + '(?=\\\\s*(-)|$)',\n endsParent: true,\n relevance: 0\n },\n // eat spaces (not newlines) so we can find\n // types or variables\n {\n begin: /(?=[^\\n])\\s/,\n relevance: 0\n }\n ]\n }\n ]\n }\n );\n const COMMENT = {\n className: \"comment\",\n variants: [\n JSDOC_COMMENT,\n hljs.C_BLOCK_COMMENT_MODE,\n hljs.C_LINE_COMMENT_MODE\n ]\n };\n const SUBST_INTERNALS = [\n hljs.APOS_STRING_MODE,\n hljs.QUOTE_STRING_MODE,\n HTML_TEMPLATE,\n CSS_TEMPLATE,\n GRAPHQL_TEMPLATE,\n TEMPLATE_STRING,\n // Skip numbers when they are part of a variable name\n { match: /\\$\\d+/ },\n NUMBER,\n // This is intentional:\n // See https://github.com/highlightjs/highlight.js/issues/3288\n // hljs.REGEXP_MODE\n ];\n SUBST.contains = SUBST_INTERNALS\n .concat({\n // we need to pair up {} inside our subst to prevent\n // it from ending too early by matching another }\n begin: /\\{/,\n end: /\\}/,\n keywords: KEYWORDS$1,\n contains: [\n \"self\"\n ].concat(SUBST_INTERNALS)\n });\n const SUBST_AND_COMMENTS = [].concat(COMMENT, SUBST.contains);\n const PARAMS_CONTAINS = SUBST_AND_COMMENTS.concat([\n // eat recursive parens in sub expressions\n {\n begin: /(\\s*)\\(/,\n end: /\\)/,\n keywords: KEYWORDS$1,\n contains: [\"self\"].concat(SUBST_AND_COMMENTS)\n }\n ]);\n const PARAMS = {\n className: 'params',\n // convert this to negative lookbehind in v12\n begin: /(\\s*)\\(/, // to match the parms with\n end: /\\)/,\n excludeBegin: true,\n excludeEnd: true,\n keywords: KEYWORDS$1,\n contains: PARAMS_CONTAINS\n };\n\n // ES6 classes\n const CLASS_OR_EXTENDS = {\n variants: [\n // class Car extends vehicle\n {\n match: [\n /class/,\n /\\s+/,\n IDENT_RE$1,\n /\\s+/,\n /extends/,\n /\\s+/,\n regex.concat(IDENT_RE$1, \"(\", regex.concat(/\\./, IDENT_RE$1), \")*\")\n ],\n scope: {\n 1: \"keyword\",\n 3: \"title.class\",\n 5: \"keyword\",\n 7: \"title.class.inherited\"\n }\n },\n // class Car\n {\n match: [\n /class/,\n /\\s+/,\n IDENT_RE$1\n ],\n scope: {\n 1: \"keyword\",\n 3: \"title.class\"\n }\n },\n\n ]\n };\n\n const CLASS_REFERENCE = {\n relevance: 0,\n match:\n regex.either(\n // Hard coded exceptions\n /\\bJSON/,\n // Float32Array, OutT\n /\\b[A-Z][a-z]+([A-Z][a-z]*|\\d)*/,\n // CSSFactory, CSSFactoryT\n /\\b[A-Z]{2,}([A-Z][a-z]+|\\d)+([A-Z][a-z]*)*/,\n // FPs, FPsT\n /\\b[A-Z]{2,}[a-z]+([A-Z][a-z]+|\\d)*([A-Z][a-z]*)*/,\n // P\n // single letters are not highlighted\n // BLAH\n // this will be flagged as a UPPER_CASE_CONSTANT instead\n ),\n className: \"title.class\",\n keywords: {\n _: [\n // se we still get relevance credit for JS library classes\n ...TYPES,\n ...ERROR_TYPES\n ]\n }\n };\n\n const USE_STRICT = {\n label: \"use_strict\",\n className: 'meta',\n relevance: 10,\n begin: /^\\s*['\"]use (strict|asm)['\"]/\n };\n\n const FUNCTION_DEFINITION = {\n variants: [\n {\n match: [\n /function/,\n /\\s+/,\n IDENT_RE$1,\n /(?=\\s*\\()/\n ]\n },\n // anonymous function\n {\n match: [\n /function/,\n /\\s*(?=\\()/\n ]\n }\n ],\n className: {\n 1: \"keyword\",\n 3: \"title.function\"\n },\n label: \"func.def\",\n contains: [ PARAMS ],\n illegal: /%/\n };\n\n const UPPER_CASE_CONSTANT = {\n relevance: 0,\n match: /\\b[A-Z][A-Z_0-9]+\\b/,\n className: \"variable.constant\"\n };\n\n function noneOf(list) {\n return regex.concat(\"(?!\", list.join(\"|\"), \")\");\n }\n\n const FUNCTION_CALL = {\n match: regex.concat(\n /\\b/,\n noneOf([\n ...BUILT_IN_GLOBALS,\n \"super\",\n \"import\",\n \"await\",\n ].map(x => `${x}\\\\s*\\\\(`)),\n IDENT_RE$1, regex.lookahead(/\\s*\\(/)),\n className: \"title.function\",\n relevance: 0\n };\n\n const PROPERTY_ACCESS = {\n begin: regex.concat(/\\./, regex.lookahead(\n regex.concat(IDENT_RE$1, /(?![0-9A-Za-z$_(])/)\n )),\n end: IDENT_RE$1,\n excludeBegin: true,\n keywords: \"prototype\",\n className: \"property\",\n relevance: 0\n };\n\n const GETTER_OR_SETTER = {\n match: [\n /get|set/,\n /\\s+/,\n IDENT_RE$1,\n /(?=\\()/\n ],\n className: {\n 1: \"keyword\",\n 3: \"title.function\"\n },\n contains: [\n { // eat to avoid empty params\n begin: /\\(\\)/\n },\n PARAMS\n ]\n };\n\n const FUNC_LEAD_IN_RE = '(\\\\(' +\n '[^()]*(\\\\(' +\n '[^()]*(\\\\(' +\n '[^()]*' +\n '\\\\)[^()]*)*' +\n '\\\\)[^()]*)*' +\n '\\\\)|' + hljs.UNDERSCORE_IDENT_RE + ')\\\\s*=>';\n\n const FUNCTION_VARIABLE = {\n match: [\n /const|var|let/, /\\s+/,\n IDENT_RE$1, /\\s*/,\n /=\\s*/,\n /(async\\s*)?/, // async is optional\n regex.lookahead(FUNC_LEAD_IN_RE)\n ],\n keywords: \"async\",\n className: {\n 1: \"keyword\",\n 3: \"title.function\"\n },\n contains: [\n PARAMS\n ]\n };\n\n return {\n name: 'JavaScript',\n aliases: ['js', 'jsx', 'mjs', 'cjs'],\n keywords: KEYWORDS$1,\n // this will be extended by TypeScript\n exports: { PARAMS_CONTAINS, CLASS_REFERENCE },\n illegal: /#(?![$_A-Za-z])/,\n contains: [\n hljs.SHEBANG({\n label: \"shebang\",\n binary: \"node\",\n relevance: 5\n }),\n USE_STRICT,\n hljs.APOS_STRING_MODE,\n hljs.QUOTE_STRING_MODE,\n HTML_TEMPLATE,\n CSS_TEMPLATE,\n GRAPHQL_TEMPLATE,\n TEMPLATE_STRING,\n COMMENT,\n // Skip numbers when they are part of a variable name\n { match: /\\$\\d+/ },\n NUMBER,\n CLASS_REFERENCE,\n {\n scope: 'attr',\n match: IDENT_RE$1 + regex.lookahead(':'),\n relevance: 0\n },\n FUNCTION_VARIABLE,\n { // \"value\" container\n begin: '(' + hljs.RE_STARTERS_RE + '|\\\\b(case|return|throw)\\\\b)\\\\s*',\n keywords: 'return throw case',\n relevance: 0,\n contains: [\n COMMENT,\n hljs.REGEXP_MODE,\n {\n className: 'function',\n // we have to count the parens to make sure we actually have the\n // correct bounding ( ) before the =>. There could be any number of\n // sub-expressions inside also surrounded by parens.\n begin: FUNC_LEAD_IN_RE,\n returnBegin: true,\n end: '\\\\s*=>',\n contains: [\n {\n className: 'params',\n variants: [\n {\n begin: hljs.UNDERSCORE_IDENT_RE,\n relevance: 0\n },\n {\n className: null,\n begin: /\\(\\s*\\)/,\n skip: true\n },\n {\n begin: /(\\s*)\\(/,\n end: /\\)/,\n excludeBegin: true,\n excludeEnd: true,\n keywords: KEYWORDS$1,\n contains: PARAMS_CONTAINS\n }\n ]\n }\n ]\n },\n { // could be a comma delimited list of params to a function call\n begin: /,/,\n relevance: 0\n },\n {\n match: /\\s+/,\n relevance: 0\n },\n { // JSX\n variants: [\n { begin: FRAGMENT.begin, end: FRAGMENT.end },\n { match: XML_SELF_CLOSING },\n {\n begin: XML_TAG.begin,\n // we carefully check the opening tag to see if it truly\n // is a tag and not a false positive\n 'on:begin': XML_TAG.isTrulyOpeningTag,\n end: XML_TAG.end\n }\n ],\n subLanguage: 'xml',\n contains: [\n {\n begin: XML_TAG.begin,\n end: XML_TAG.end,\n skip: true,\n contains: ['self']\n }\n ]\n }\n ],\n },\n FUNCTION_DEFINITION,\n {\n // prevent this from getting swallowed up by function\n // since they appear \"function like\"\n beginKeywords: \"while if switch catch for\"\n },\n {\n // we have to count the parens to make sure we actually have the correct\n // bounding ( ). There could be any number of sub-expressions inside\n // also surrounded by parens.\n begin: '\\\\b(?!function)' + hljs.UNDERSCORE_IDENT_RE +\n '\\\\(' + // first parens\n '[^()]*(\\\\(' +\n '[^()]*(\\\\(' +\n '[^()]*' +\n '\\\\)[^()]*)*' +\n '\\\\)[^()]*)*' +\n '\\\\)\\\\s*\\\\{', // end parens\n returnBegin:true,\n label: \"func.def\",\n contains: [\n PARAMS,\n hljs.inherit(hljs.TITLE_MODE, { begin: IDENT_RE$1, className: \"title.function\" })\n ]\n },\n // catch ... so it won't trigger the property rule below\n {\n match: /\\.\\.\\./,\n relevance: 0\n },\n PROPERTY_ACCESS,\n // hack: prevents detection of keywords in some circumstances\n // .keyword()\n // $keyword = x\n {\n match: '\\\\$' + IDENT_RE$1,\n relevance: 0\n },\n {\n match: [ /\\bconstructor(?=\\s*\\()/ ],\n className: { 1: \"title.function\" },\n contains: [ PARAMS ]\n },\n FUNCTION_CALL,\n UPPER_CASE_CONSTANT,\n CLASS_OR_EXTENDS,\n GETTER_OR_SETTER,\n {\n match: /\\$[(.]/ // relevance booster for a pattern common to JS libs: `$(something)` and `$.something`\n }\n ]\n };\n}\n\n/*\nLanguage: TypeScript\nAuthor: Panu Horsmalahti <panu.horsmalahti@iki.fi>\nContributors: Ike Ku <dempfi@yahoo.com>\nDescription: TypeScript is a strict superset of JavaScript\nWebsite: https://www.typescriptlang.org\nCategory: common, scripting\n*/\n\n\n/** @type LanguageFn */\nfunction typescript(hljs) {\n const regex = hljs.regex;\n const tsLanguage = javascript(hljs);\n\n const IDENT_RE$1 = IDENT_RE;\n const TYPES = [\n \"any\",\n \"void\",\n \"number\",\n \"boolean\",\n \"string\",\n \"object\",\n \"never\",\n \"symbol\",\n \"bigint\",\n \"unknown\"\n ];\n const NAMESPACE = {\n begin: [\n /namespace/,\n /\\s+/,\n hljs.IDENT_RE\n ],\n beginScope: {\n 1: \"keyword\",\n 3: \"title.class\"\n }\n };\n const INTERFACE = {\n beginKeywords: 'interface',\n end: /\\{/,\n excludeEnd: true,\n keywords: {\n keyword: 'interface extends',\n built_in: TYPES\n },\n contains: [ tsLanguage.exports.CLASS_REFERENCE ]\n };\n const USE_STRICT = {\n className: 'meta',\n relevance: 10,\n begin: /^\\s*['\"]use strict['\"]/\n };\n const TS_SPECIFIC_KEYWORDS = [\n \"type\",\n // \"namespace\",\n \"interface\",\n \"public\",\n \"private\",\n \"protected\",\n \"implements\",\n \"declare\",\n \"abstract\",\n \"readonly\",\n \"enum\",\n \"override\",\n \"satisfies\"\n ];\n /*\n namespace is a TS keyword but it's fine to use it as a variable name too.\n const message = 'foo';\n const namespace = 'bar';\n */\n const KEYWORDS$1 = {\n $pattern: IDENT_RE,\n keyword: KEYWORDS.concat(TS_SPECIFIC_KEYWORDS),\n literal: LITERALS,\n built_in: BUILT_INS.concat(TYPES),\n \"variable.language\": BUILT_IN_VARIABLES\n };\n\n const DECORATOR = {\n className: 'meta',\n begin: '@' + IDENT_RE$1,\n };\n\n const swapMode = (mode, label, replacement) => {\n const indx = mode.contains.findIndex(m => m.label === label);\n if (indx === -1) { throw new Error(\"can not find mode to replace\"); }\n\n mode.contains.splice(indx, 1, replacement);\n };\n\n\n // this should update anywhere keywords is used since\n // it will be the same actual JS object\n Object.assign(tsLanguage.keywords, KEYWORDS$1);\n\n tsLanguage.exports.PARAMS_CONTAINS.push(DECORATOR);\n\n // highlight the function params\n const ATTRIBUTE_HIGHLIGHT = tsLanguage.contains.find(c => c.scope === \"attr\");\n\n // take default attr rule and extend it to support optionals\n const OPTIONAL_KEY_OR_ARGUMENT = Object.assign({},\n ATTRIBUTE_HIGHLIGHT,\n { match: regex.concat(IDENT_RE$1, regex.lookahead(/\\s*\\?:/)) }\n );\n tsLanguage.exports.PARAMS_CONTAINS.push([\n tsLanguage.exports.CLASS_REFERENCE, // class reference for highlighting the params types\n ATTRIBUTE_HIGHLIGHT, // highlight the params key\n OPTIONAL_KEY_OR_ARGUMENT, // Added for optional property assignment highlighting\n ]);\n\n // Add the optional property assignment highlighting for objects or classes\n tsLanguage.contains = tsLanguage.contains.concat([\n DECORATOR,\n NAMESPACE,\n INTERFACE,\n OPTIONAL_KEY_OR_ARGUMENT, // Added for optional property assignment highlighting\n ]);\n\n // TS gets a simpler shebang rule than JS\n swapMode(tsLanguage, \"shebang\", hljs.SHEBANG());\n // JS use strict rule purposely excludes `asm` which makes no sense\n swapMode(tsLanguage, \"use_strict\", USE_STRICT);\n\n const functionDeclaration = tsLanguage.contains.find(m => m.label === \"func.def\");\n functionDeclaration.relevance = 0; // () => {} is more typical in TypeScript\n\n Object.assign(tsLanguage, {\n name: 'TypeScript',\n aliases: [\n 'ts',\n 'tsx',\n 'mts',\n 'cts'\n ]\n });\n\n return tsLanguage;\n}\n\nmodule.exports = typescript;\n","// https://docs.oracle.com/javase/specs/jls/se15/html/jls-3.html#jls-3.10\nvar decimalDigits = '[0-9](_*[0-9])*';\nvar frac = `\\\\.(${decimalDigits})`;\nvar hexDigits = '[0-9a-fA-F](_*[0-9a-fA-F])*';\nvar NUMERIC = {\n className: 'number',\n variants: [\n // DecimalFloatingPointLiteral\n // including ExponentPart\n { begin: `(\\\\b(${decimalDigits})((${frac})|\\\\.)?|(${frac}))` +\n `[eE][+-]?(${decimalDigits})[fFdD]?\\\\b` },\n // excluding ExponentPart\n { begin: `\\\\b(${decimalDigits})((${frac})[fFdD]?\\\\b|\\\\.([fFdD]\\\\b)?)` },\n { begin: `(${frac})[fFdD]?\\\\b` },\n { begin: `\\\\b(${decimalDigits})[fFdD]\\\\b` },\n\n // HexadecimalFloatingPointLiteral\n { begin: `\\\\b0[xX]((${hexDigits})\\\\.?|(${hexDigits})?\\\\.(${hexDigits}))` +\n `[pP][+-]?(${decimalDigits})[fFdD]?\\\\b` },\n\n // DecimalIntegerLiteral\n { begin: '\\\\b(0|[1-9](_*[0-9])*)[lL]?\\\\b' },\n\n // HexIntegerLiteral\n { begin: `\\\\b0[xX](${hexDigits})[lL]?\\\\b` },\n\n // OctalIntegerLiteral\n { begin: '\\\\b0(_*[0-7])*[lL]?\\\\b' },\n\n // BinaryIntegerLiteral\n { begin: '\\\\b0[bB][01](_*[01])*[lL]?\\\\b' },\n ],\n relevance: 0\n};\n\n/*\nLanguage: Java\nAuthor: Vsevolod Solovyov <vsevolod.solovyov@gmail.com>\nCategory: common, enterprise\nWebsite: https://www.java.com/\n*/\n\n\n/**\n * Allows recursive regex expressions to a given depth\n *\n * ie: recurRegex(\"(abc~~~)\", /~~~/g, 2) becomes:\n * (abc(abc(abc)))\n *\n * @param {string} re\n * @param {RegExp} substitution (should be a g mode regex)\n * @param {number} depth\n * @returns {string}``\n */\nfunction recurRegex(re, substitution, depth) {\n if (depth === -1) return \"\";\n\n return re.replace(substitution, _ => {\n return recurRegex(re, substitution, depth - 1);\n });\n}\n\n/** @type LanguageFn */\nfunction java(hljs) {\n const regex = hljs.regex;\n const JAVA_IDENT_RE = '[\\u00C0-\\u02B8a-zA-Z_$][\\u00C0-\\u02B8a-zA-Z_$0-9]*';\n const GENERIC_IDENT_RE = JAVA_IDENT_RE\n + recurRegex('(?:<' + JAVA_IDENT_RE + '~~~(?:\\\\s*,\\\\s*' + JAVA_IDENT_RE + '~~~)*>)?', /~~~/g, 2);\n const MAIN_KEYWORDS = [\n 'synchronized',\n 'abstract',\n 'private',\n 'var',\n 'static',\n 'if',\n 'const ',\n 'for',\n 'while',\n 'strictfp',\n 'finally',\n 'protected',\n 'import',\n 'native',\n 'final',\n 'void',\n 'enum',\n 'else',\n 'break',\n 'transient',\n 'catch',\n 'instanceof',\n 'volatile',\n 'case',\n 'assert',\n 'package',\n 'default',\n 'public',\n 'try',\n 'switch',\n 'continue',\n 'throws',\n 'protected',\n 'public',\n 'private',\n 'module',\n 'requires',\n 'exports',\n 'do',\n 'sealed',\n 'yield',\n 'permits',\n 'goto',\n 'when'\n ];\n\n const BUILT_INS = [\n 'super',\n 'this'\n ];\n\n const LITERALS = [\n 'false',\n 'true',\n 'null'\n ];\n\n const TYPES = [\n 'char',\n 'boolean',\n 'long',\n 'float',\n 'int',\n 'byte',\n 'short',\n 'double'\n ];\n\n const KEYWORDS = {\n keyword: MAIN_KEYWORDS,\n literal: LITERALS,\n type: TYPES,\n built_in: BUILT_INS\n };\n\n const ANNOTATION = {\n className: 'meta',\n begin: '@' + JAVA_IDENT_RE,\n contains: [\n {\n begin: /\\(/,\n end: /\\)/,\n contains: [ \"self\" ] // allow nested () inside our annotation\n }\n ]\n };\n const PARAMS = {\n className: 'params',\n begin: /\\(/,\n end: /\\)/,\n keywords: KEYWORDS,\n relevance: 0,\n contains: [ hljs.C_BLOCK_COMMENT_MODE ],\n endsParent: true\n };\n\n return {\n name: 'Java',\n aliases: [ 'jsp' ],\n keywords: KEYWORDS,\n illegal: /<\\/|#/,\n contains: [\n hljs.COMMENT(\n '/\\\\*\\\\*',\n '\\\\*/',\n {\n relevance: 0,\n contains: [\n {\n // eat up @'s in emails to prevent them to be recognized as doctags\n begin: /\\w+@/,\n relevance: 0\n },\n {\n className: 'doctag',\n begin: '@[A-Za-z]+'\n }\n ]\n }\n ),\n // relevance boost\n {\n begin: /import java\\.[a-z]+\\./,\n keywords: \"import\",\n relevance: 2\n },\n hljs.C_LINE_COMMENT_MODE,\n hljs.C_BLOCK_COMMENT_MODE,\n {\n begin: /\"\"\"/,\n end: /\"\"\"/,\n className: \"string\",\n contains: [ hljs.BACKSLASH_ESCAPE ]\n },\n hljs.APOS_STRING_MODE,\n hljs.QUOTE_STRING_MODE,\n {\n match: [\n /\\b(?:class|interface|enum|extends|implements|new)/,\n /\\s+/,\n JAVA_IDENT_RE\n ],\n className: {\n 1: \"keyword\",\n 3: \"title.class\"\n }\n },\n {\n // Exceptions for hyphenated keywords\n match: /non-sealed/,\n scope: \"keyword\"\n },\n {\n begin: [\n regex.concat(/(?!else)/, JAVA_IDENT_RE),\n /\\s+/,\n JAVA_IDENT_RE,\n /\\s+/,\n /=(?!=)/\n ],\n className: {\n 1: \"type\",\n 3: \"variable\",\n 5: \"operator\"\n }\n },\n {\n begin: [\n /record/,\n /\\s+/,\n JAVA_IDENT_RE\n ],\n className: {\n 1: \"keyword\",\n 3: \"title.class\"\n },\n contains: [\n PARAMS,\n hljs.C_LINE_COMMENT_MODE,\n hljs.C_BLOCK_COMMENT_MODE\n ]\n },\n {\n // Expression keywords prevent 'keyword Name(...)' from being\n // recognized as a function definition\n beginKeywords: 'new throw return else',\n relevance: 0\n },\n {\n begin: [\n '(?:' + GENERIC_IDENT_RE + '\\\\s+)',\n hljs.UNDERSCORE_IDENT_RE,\n /\\s*(?=\\()/\n ],\n className: { 2: \"title.function\" },\n keywords: KEYWORDS,\n contains: [\n {\n className: 'params',\n begin: /\\(/,\n end: /\\)/,\n keywords: KEYWORDS,\n relevance: 0,\n contains: [\n ANNOTATION,\n hljs.APOS_STRING_MODE,\n hljs.QUOTE_STRING_MODE,\n NUMERIC,\n hljs.C_BLOCK_COMMENT_MODE\n ]\n },\n hljs.C_LINE_COMMENT_MODE,\n hljs.C_BLOCK_COMMENT_MODE\n ]\n },\n NUMERIC,\n ANNOTATION\n ]\n };\n}\n\nmodule.exports = java;\n","/**\n * @param {string} value\n * @returns {RegExp}\n * */\n\n/**\n * @param {RegExp | string } re\n * @returns {string}\n */\nfunction source(re) {\n if (!re) return null;\n if (typeof re === \"string\") return re;\n\n return re.source;\n}\n\n/**\n * @param {RegExp | string } re\n * @returns {string}\n */\nfunction lookahead(re) {\n return concat('(?=', re, ')');\n}\n\n/**\n * @param {...(RegExp | string) } args\n * @returns {string}\n */\nfunction concat(...args) {\n const joined = args.map((x) => source(x)).join(\"\");\n return joined;\n}\n\n/**\n * @param { Array<string | RegExp | Object> } args\n * @returns {object}\n */\nfunction stripOptionsFromArgs(args) {\n const opts = args[args.length - 1];\n\n if (typeof opts === 'object' && opts.constructor === Object) {\n args.splice(args.length - 1, 1);\n return opts;\n } else {\n return {};\n }\n}\n\n/** @typedef { {capture?: boolean} } RegexEitherOptions */\n\n/**\n * Any of the passed expresssions may match\n *\n * Creates a huge this | this | that | that match\n * @param {(RegExp | string)[] | [...(RegExp | string)[], RegexEitherOptions]} args\n * @returns {string}\n */\nfunction either(...args) {\n /** @type { object & {capture?: boolean} } */\n const opts = stripOptionsFromArgs(args);\n const joined = '('\n + (opts.capture ? \"\" : \"?:\")\n + args.map((x) => source(x)).join(\"|\") + \")\";\n return joined;\n}\n\nconst keywordWrapper = keyword => concat(\n /\\b/,\n keyword,\n /\\w$/.test(keyword) ? /\\b/ : /\\B/\n);\n\n// Keywords that require a leading dot.\nconst dotKeywords = [\n 'Protocol', // contextual\n 'Type' // contextual\n].map(keywordWrapper);\n\n// Keywords that may have a leading dot.\nconst optionalDotKeywords = [\n 'init',\n 'self'\n].map(keywordWrapper);\n\n// should register as keyword, not type\nconst keywordTypes = [\n 'Any',\n 'Self'\n];\n\n// Regular keywords and literals.\nconst keywords = [\n // strings below will be fed into the regular `keywords` engine while regex\n // will result in additional modes being created to scan for those keywords to\n // avoid conflicts with other rules\n 'actor',\n 'any', // contextual\n 'associatedtype',\n 'async',\n 'await',\n /as\\?/, // operator\n /as!/, // operator\n 'as', // operator\n 'borrowing', // contextual\n 'break',\n 'case',\n 'catch',\n 'class',\n 'consume', // contextual\n 'consuming', // contextual\n 'continue',\n 'convenience', // contextual\n 'copy', // contextual\n 'default',\n 'defer',\n 'deinit',\n 'didSet', // contextual\n 'distributed',\n 'do',\n 'dynamic', // contextual\n 'each',\n 'else',\n 'enum',\n 'extension',\n 'fallthrough',\n /fileprivate\\(set\\)/,\n 'fileprivate',\n 'final', // contextual\n 'for',\n 'func',\n 'get', // contextual\n 'guard',\n 'if',\n 'import',\n 'indirect', // contextual\n 'infix', // contextual\n /init\\?/,\n /init!/,\n 'inout',\n /internal\\(set\\)/,\n 'internal',\n 'in',\n 'is', // operator\n 'isolated', // contextual\n 'nonisolated', // contextual\n 'lazy', // contextual\n 'let',\n 'macro',\n 'mutating', // contextual\n 'nonmutating', // contextual\n /open\\(set\\)/, // contextual\n 'open', // contextual\n 'operator',\n 'optional', // contextual\n 'override', // contextual\n 'package',\n 'postfix', // contextual\n 'precedencegroup',\n 'prefix', // contextual\n /private\\(set\\)/,\n 'private',\n 'protocol',\n /public\\(set\\)/,\n 'public',\n 'repeat',\n 'required', // contextual\n 'rethrows',\n 'return',\n 'set', // contextual\n 'some', // contextual\n 'static',\n 'struct',\n 'subscript',\n 'super',\n 'switch',\n 'throws',\n 'throw',\n /try\\?/, // operator\n /try!/, // operator\n 'try', // operator\n 'typealias',\n /unowned\\(safe\\)/, // contextual\n /unowned\\(unsafe\\)/, // contextual\n 'unowned', // contextual\n 'var',\n 'weak', // contextual\n 'where',\n 'while',\n 'willSet' // contextual\n];\n\n// NOTE: Contextual keywords are reserved only in specific contexts.\n// Ideally, these should be matched using modes to avoid false positives.\n\n// Literals.\nconst literals = [\n 'false',\n 'nil',\n 'true'\n];\n\n// Keywords used in precedence groups.\nconst precedencegroupKeywords = [\n 'assignment',\n 'associativity',\n 'higherThan',\n 'left',\n 'lowerThan',\n 'none',\n 'right'\n];\n\n// Keywords that start with a number sign (#).\n// #(un)available is handled separately.\nconst numberSignKeywords = [\n '#colorLiteral',\n '#column',\n '#dsohandle',\n '#else',\n '#elseif',\n '#endif',\n '#error',\n '#file',\n '#fileID',\n '#fileLiteral',\n '#filePath',\n '#function',\n '#if',\n '#imageLiteral',\n '#keyPath',\n '#line',\n '#selector',\n '#sourceLocation',\n '#warning'\n];\n\n// Global functions in the Standard Library.\nconst builtIns = [\n 'abs',\n 'all',\n 'any',\n 'assert',\n 'assertionFailure',\n 'debugPrint',\n 'dump',\n 'fatalError',\n 'getVaList',\n 'isKnownUniquelyReferenced',\n 'max',\n 'min',\n 'numericCast',\n 'pointwiseMax',\n 'pointwiseMin',\n 'precondition',\n 'preconditionFailure',\n 'print',\n 'readLine',\n 'repeatElement',\n 'sequence',\n 'stride',\n 'swap',\n 'swift_unboxFromSwiftValueWithType',\n 'transcode',\n 'type',\n 'unsafeBitCast',\n 'unsafeDowncast',\n 'withExtendedLifetime',\n 'withUnsafeMutablePointer',\n 'withUnsafePointer',\n 'withVaList',\n 'withoutActuallyEscaping',\n 'zip'\n];\n\n// Valid first characters for operators.\nconst operatorHead = either(\n /[/=\\-+!*%<>&|^~?]/,\n /[\\u00A1-\\u00A7]/,\n /[\\u00A9\\u00AB]/,\n /[\\u00AC\\u00AE]/,\n /[\\u00B0\\u00B1]/,\n /[\\u00B6\\u00BB\\u00BF\\u00D7\\u00F7]/,\n /[\\u2016-\\u2017]/,\n /[\\u2020-\\u2027]/,\n /[\\u2030-\\u203E]/,\n /[\\u2041-\\u2053]/,\n /[\\u2055-\\u205E]/,\n /[\\u2190-\\u23FF]/,\n /[\\u2500-\\u2775]/,\n /[\\u2794-\\u2BFF]/,\n /[\\u2E00-\\u2E7F]/,\n /[\\u3001-\\u3003]/,\n /[\\u3008-\\u3020]/,\n /[\\u3030]/\n);\n\n// Valid characters for operators.\nconst operatorCharacter = either(\n operatorHead,\n /[\\u0300-\\u036F]/,\n /[\\u1DC0-\\u1DFF]/,\n /[\\u20D0-\\u20FF]/,\n /[\\uFE00-\\uFE0F]/,\n /[\\uFE20-\\uFE2F]/\n // TODO: The following characters are also allowed, but the regex isn't supported yet.\n // /[\\u{E0100}-\\u{E01EF}]/u\n);\n\n// Valid operator.\nconst operator = concat(operatorHead, operatorCharacter, '*');\n\n// Valid first characters for identifiers.\nconst identifierHead = either(\n /[a-zA-Z_]/,\n /[\\u00A8\\u00AA\\u00AD\\u00AF\\u00B2-\\u00B5\\u00B7-\\u00BA]/,\n /[\\u00BC-\\u00BE\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u00FF]/,\n /[\\u0100-\\u02FF\\u0370-\\u167F\\u1681-\\u180D\\u180F-\\u1DBF]/,\n /[\\u1E00-\\u1FFF]/,\n /[\\u200B-\\u200D\\u202A-\\u202E\\u203F-\\u2040\\u2054\\u2060-\\u206F]/,\n /[\\u2070-\\u20CF\\u2100-\\u218F\\u2460-\\u24FF\\u2776-\\u2793]/,\n /[\\u2C00-\\u2DFF\\u2E80-\\u2FFF]/,\n /[\\u3004-\\u3007\\u3021-\\u302F\\u3031-\\u303F\\u3040-\\uD7FF]/,\n /[\\uF900-\\uFD3D\\uFD40-\\uFDCF\\uFDF0-\\uFE1F\\uFE30-\\uFE44]/,\n /[\\uFE47-\\uFEFE\\uFF00-\\uFFFD]/ // Should be /[\\uFE47-\\uFFFD]/, but we have to exclude FEFF.\n // The following characters are also allowed, but the regexes aren't supported yet.\n // /[\\u{10000}-\\u{1FFFD}\\u{20000-\\u{2FFFD}\\u{30000}-\\u{3FFFD}\\u{40000}-\\u{4FFFD}]/u,\n // /[\\u{50000}-\\u{5FFFD}\\u{60000-\\u{6FFFD}\\u{70000}-\\u{7FFFD}\\u{80000}-\\u{8FFFD}]/u,\n // /[\\u{90000}-\\u{9FFFD}\\u{A0000-\\u{AFFFD}\\u{B0000}-\\u{BFFFD}\\u{C0000}-\\u{CFFFD}]/u,\n // /[\\u{D0000}-\\u{DFFFD}\\u{E0000-\\u{EFFFD}]/u\n);\n\n// Valid characters for identifiers.\nconst identifierCharacter = either(\n identifierHead,\n /\\d/,\n /[\\u0300-\\u036F\\u1DC0-\\u1DFF\\u20D0-\\u20FF\\uFE20-\\uFE2F]/\n);\n\n// Valid identifier.\nconst identifier = concat(identifierHead, identifierCharacter, '*');\n\n// Valid type identifier.\nconst typeIdentifier = concat(/[A-Z]/, identifierCharacter, '*');\n\n// Built-in attributes, which are highlighted as keywords.\n// @available is handled separately.\n// https://docs.swift.org/swift-book/documentation/the-swift-programming-language/attributes\nconst keywordAttributes = [\n 'attached',\n 'autoclosure',\n concat(/convention\\(/, either('swift', 'block', 'c'), /\\)/),\n 'discardableResult',\n 'dynamicCallable',\n 'dynamicMemberLookup',\n 'escaping',\n 'freestanding',\n 'frozen',\n 'GKInspectable',\n 'IBAction',\n 'IBDesignable',\n 'IBInspectable',\n 'IBOutlet',\n 'IBSegueAction',\n 'inlinable',\n 'main',\n 'nonobjc',\n 'NSApplicationMain',\n 'NSCopying',\n 'NSManaged',\n concat(/objc\\(/, identifier, /\\)/),\n 'objc',\n 'objcMembers',\n 'propertyWrapper',\n 'requires_stored_property_inits',\n 'resultBuilder',\n 'Sendable',\n 'testable',\n 'UIApplicationMain',\n 'unchecked',\n 'unknown',\n 'usableFromInline',\n 'warn_unqualified_access'\n];\n\n// Contextual keywords used in @available and #(un)available.\nconst availabilityKeywords = [\n 'iOS',\n 'iOSApplicationExtension',\n 'macOS',\n 'macOSApplicationExtension',\n 'macCatalyst',\n 'macCatalystApplicationExtension',\n 'watchOS',\n 'watchOSApplicationExtension',\n 'tvOS',\n 'tvOSApplicationExtension',\n 'swift'\n];\n\n/*\nLanguage: Swift\nDescription: Swift is a general-purpose programming language built using a modern approach to safety, performance, and software design patterns.\nAuthor: Steven Van Impe <steven.vanimpe@icloud.com>\nContributors: Chris Eidhof <chris@eidhof.nl>, Nate Cook <natecook@gmail.com>, Alexander Lichter <manniL@gmx.net>, Richard Gibson <gibson042@github>\nWebsite: https://swift.org\nCategory: common, system\n*/\n\n\n/** @type LanguageFn */\nfunction swift(hljs) {\n const WHITESPACE = {\n match: /\\s+/,\n relevance: 0\n };\n // https://docs.swift.org/swift-book/ReferenceManual/LexicalStructure.html#ID411\n const BLOCK_COMMENT = hljs.COMMENT(\n '/\\\\*',\n '\\\\*/',\n { contains: [ 'self' ] }\n );\n const COMMENTS = [\n hljs.C_LINE_COMMENT_MODE,\n BLOCK_COMMENT\n ];\n\n // https://docs.swift.org/swift-book/ReferenceManual/LexicalStructure.html#ID413\n // https://docs.swift.org/swift-book/ReferenceManual/zzSummaryOfTheGrammar.html\n const DOT_KEYWORD = {\n match: [\n /\\./,\n either(...dotKeywords, ...optionalDotKeywords)\n ],\n className: { 2: \"keyword\" }\n };\n const KEYWORD_GUARD = {\n // Consume .keyword to prevent highlighting properties and methods as keywords.\n match: concat(/\\./, either(...keywords)),\n relevance: 0\n };\n const PLAIN_KEYWORDS = keywords\n .filter(kw => typeof kw === 'string')\n .concat([ \"_|0\" ]); // seems common, so 0 relevance\n const REGEX_KEYWORDS = keywords\n .filter(kw => typeof kw !== 'string') // find regex\n .concat(keywordTypes)\n .map(keywordWrapper);\n const KEYWORD = { variants: [\n {\n className: 'keyword',\n match: either(...REGEX_KEYWORDS, ...optionalDotKeywords)\n }\n ] };\n // find all the regular keywords\n const KEYWORDS = {\n $pattern: either(\n /\\b\\w+/, // regular keywords\n /#\\w+/ // number keywords\n ),\n keyword: PLAIN_KEYWORDS\n .concat(numberSignKeywords),\n literal: literals\n };\n const KEYWORD_MODES = [\n DOT_KEYWORD,\n KEYWORD_GUARD,\n KEYWORD\n ];\n\n // https://github.com/apple/swift/tree/main/stdlib/public/core\n const BUILT_IN_GUARD = {\n // Consume .built_in to prevent highlighting properties and methods.\n match: concat(/\\./, either(...builtIns)),\n relevance: 0\n };\n const BUILT_IN = {\n className: 'built_in',\n match: concat(/\\b/, either(...builtIns), /(?=\\()/)\n };\n const BUILT_INS = [\n BUILT_IN_GUARD,\n BUILT_IN\n ];\n\n // https://docs.swift.org/swift-book/ReferenceManual/LexicalStructure.html#ID418\n const OPERATOR_GUARD = {\n // Prevent -> from being highlighting as an operator.\n match: /->/,\n relevance: 0\n };\n const OPERATOR = {\n className: 'operator',\n relevance: 0,\n variants: [\n { match: operator },\n {\n // dot-operator: only operators that start with a dot are allowed to use dots as\n // characters (..., ...<, .*, etc). So there rule here is: a dot followed by one or more\n // characters that may also include dots.\n match: `\\\\.(\\\\.|${operatorCharacter})+` }\n ]\n };\n const OPERATORS = [\n OPERATOR_GUARD,\n OPERATOR\n ];\n\n // https://docs.swift.org/swift-book/ReferenceManual/LexicalStructure.html#grammar_numeric-literal\n // TODO: Update for leading `-` after lookbehind is supported everywhere\n const decimalDigits = '([0-9]_*)+';\n const hexDigits = '([0-9a-fA-F]_*)+';\n const NUMBER = {\n className: 'number',\n relevance: 0,\n variants: [\n // decimal floating-point-literal (subsumes decimal-literal)\n { match: `\\\\b(${decimalDigits})(\\\\.(${decimalDigits}))?` + `([eE][+-]?(${decimalDigits}))?\\\\b` },\n // hexadecimal floating-point-literal (subsumes hexadecimal-literal)\n { match: `\\\\b0x(${hexDigits})(\\\\.(${hexDigits}))?` + `([pP][+-]?(${decimalDigits}))?\\\\b` },\n // octal-literal\n { match: /\\b0o([0-7]_*)+\\b/ },\n // binary-literal\n { match: /\\b0b([01]_*)+\\b/ }\n ]\n };\n\n // https://docs.swift.org/swift-book/ReferenceManual/LexicalStructure.html#grammar_string-literal\n const ESCAPED_CHARACTER = (rawDelimiter = \"\") => ({\n className: 'subst',\n variants: [\n { match: concat(/\\\\/, rawDelimiter, /[0\\\\tnr\"']/) },\n { match: concat(/\\\\/, rawDelimiter, /u\\{[0-9a-fA-F]{1,8}\\}/) }\n ]\n });\n const ESCAPED_NEWLINE = (rawDelimiter = \"\") => ({\n className: 'subst',\n match: concat(/\\\\/, rawDelimiter, /[\\t ]*(?:[\\r\\n]|\\r\\n)/)\n });\n const INTERPOLATION = (rawDelimiter = \"\") => ({\n className: 'subst',\n label: \"interpol\",\n begin: concat(/\\\\/, rawDelimiter, /\\(/),\n end: /\\)/\n });\n const MULTILINE_STRING = (rawDelimiter = \"\") => ({\n begin: concat(rawDelimiter, /\"\"\"/),\n end: concat(/\"\"\"/, rawDelimiter),\n contains: [\n ESCAPED_CHARACTER(rawDelimiter),\n ESCAPED_NEWLINE(rawDelimiter),\n INTERPOLATION(rawDelimiter)\n ]\n });\n const SINGLE_LINE_STRING = (rawDelimiter = \"\") => ({\n begin: concat(rawDelimiter, /\"/),\n end: concat(/\"/, rawDelimiter),\n contains: [\n ESCAPED_CHARACTER(rawDelimiter),\n INTERPOLATION(rawDelimiter)\n ]\n });\n const STRING = {\n className: 'string',\n variants: [\n MULTILINE_STRING(),\n MULTILINE_STRING(\"#\"),\n MULTILINE_STRING(\"##\"),\n MULTILINE_STRING(\"###\"),\n SINGLE_LINE_STRING(),\n SINGLE_LINE_STRING(\"#\"),\n SINGLE_LINE_STRING(\"##\"),\n SINGLE_LINE_STRING(\"###\")\n ]\n };\n\n const REGEXP_CONTENTS = [\n hljs.BACKSLASH_ESCAPE,\n {\n begin: /\\[/,\n end: /\\]/,\n relevance: 0,\n contains: [ hljs.BACKSLASH_ESCAPE ]\n }\n ];\n\n const BARE_REGEXP_LITERAL = {\n begin: /\\/[^\\s](?=[^/\\n]*\\/)/,\n end: /\\//,\n contains: REGEXP_CONTENTS\n };\n\n const EXTENDED_REGEXP_LITERAL = (rawDelimiter) => {\n const begin = concat(rawDelimiter, /\\//);\n const end = concat(/\\//, rawDelimiter);\n return {\n begin,\n end,\n contains: [\n ...REGEXP_CONTENTS,\n {\n scope: \"comment\",\n begin: `#(?!.*${end})`,\n end: /$/,\n },\n ],\n };\n };\n\n // https://docs.swift.org/swift-book/documentation/the-swift-programming-language/lexicalstructure/#Regular-Expression-Literals\n const REGEXP = {\n scope: \"regexp\",\n variants: [\n EXTENDED_REGEXP_LITERAL('###'),\n EXTENDED_REGEXP_LITERAL('##'),\n EXTENDED_REGEXP_LITERAL('#'),\n BARE_REGEXP_LITERAL\n ]\n };\n\n // https://docs.swift.org/swift-book/ReferenceManual/LexicalStructure.html#ID412\n const QUOTED_IDENTIFIER = { match: concat(/`/, identifier, /`/) };\n const IMPLICIT_PARAMETER = {\n className: 'variable',\n match: /\\$\\d+/\n };\n const PROPERTY_WRAPPER_PROJECTION = {\n className: 'variable',\n match: `\\\\$${identifierCharacter}+`\n };\n const IDENTIFIERS = [\n QUOTED_IDENTIFIER,\n IMPLICIT_PARAMETER,\n PROPERTY_WRAPPER_PROJECTION\n ];\n\n // https://docs.swift.org/swift-book/ReferenceManual/Attributes.html\n const AVAILABLE_ATTRIBUTE = {\n match: /(@|#(un)?)available/,\n scope: 'keyword',\n starts: { contains: [\n {\n begin: /\\(/,\n end: /\\)/,\n keywords: availabilityKeywords,\n contains: [\n ...OPERATORS,\n NUMBER,\n STRING\n ]\n }\n ] }\n };\n\n const KEYWORD_ATTRIBUTE = {\n scope: 'keyword',\n match: concat(/@/, either(...keywordAttributes), lookahead(either(/\\(/, /\\s+/))),\n };\n\n const USER_DEFINED_ATTRIBUTE = {\n scope: 'meta',\n match: concat(/@/, identifier)\n };\n\n const ATTRIBUTES = [\n AVAILABLE_ATTRIBUTE,\n KEYWORD_ATTRIBUTE,\n USER_DEFINED_ATTRIBUTE\n ];\n\n // https://docs.swift.org/swift-book/ReferenceManual/Types.html\n const TYPE = {\n match: lookahead(/\\b[A-Z]/),\n relevance: 0,\n contains: [\n { // Common Apple frameworks, for relevance boost\n className: 'type',\n match: concat(/(AV|CA|CF|CG|CI|CL|CM|CN|CT|MK|MP|MTK|MTL|NS|SCN|SK|UI|WK|XC)/, identifierCharacter, '+')\n },\n { // Type identifier\n className: 'type',\n match: typeIdentifier,\n relevance: 0\n },\n { // Optional type\n match: /[?!]+/,\n relevance: 0\n },\n { // Variadic parameter\n match: /\\.\\.\\./,\n relevance: 0\n },\n { // Protocol composition\n match: concat(/\\s+&\\s+/, lookahead(typeIdentifier)),\n relevance: 0\n }\n ]\n };\n const GENERIC_ARGUMENTS = {\n begin: /</,\n end: />/,\n keywords: KEYWORDS,\n contains: [\n ...COMMENTS,\n ...KEYWORD_MODES,\n ...ATTRIBUTES,\n OPERATOR_GUARD,\n TYPE\n ]\n };\n TYPE.contains.push(GENERIC_ARGUMENTS);\n\n // https://docs.swift.org/swift-book/ReferenceManual/Expressions.html#ID552\n // Prevents element names from being highlighted as keywords.\n const TUPLE_ELEMENT_NAME = {\n match: concat(identifier, /\\s*:/),\n keywords: \"_|0\",\n relevance: 0\n };\n // Matches tuples as well as the parameter list of a function type.\n const TUPLE = {\n begin: /\\(/,\n end: /\\)/,\n relevance: 0,\n keywords: KEYWORDS,\n contains: [\n 'self',\n TUPLE_ELEMENT_NAME,\n ...COMMENTS,\n REGEXP,\n ...KEYWORD_MODES,\n ...BUILT_INS,\n ...OPERATORS,\n NUMBER,\n STRING,\n ...IDENTIFIERS,\n ...ATTRIBUTES,\n TYPE\n ]\n };\n\n const GENERIC_PARAMETERS = {\n begin: /</,\n end: />/,\n keywords: 'repeat each',\n contains: [\n ...COMMENTS,\n TYPE\n ]\n };\n const FUNCTION_PARAMETER_NAME = {\n begin: either(\n lookahead(concat(identifier, /\\s*:/)),\n lookahead(concat(identifier, /\\s+/, identifier, /\\s*:/))\n ),\n end: /:/,\n relevance: 0,\n contains: [\n {\n className: 'keyword',\n match: /\\b_\\b/\n },\n {\n className: 'params',\n match: identifier\n }\n ]\n };\n const FUNCTION_PARAMETERS = {\n begin: /\\(/,\n end: /\\)/,\n keywords: KEYWORDS,\n contains: [\n FUNCTION_PARAMETER_NAME,\n ...COMMENTS,\n ...KEYWORD_MODES,\n ...OPERATORS,\n NUMBER,\n STRING,\n ...ATTRIBUTES,\n TYPE,\n TUPLE\n ],\n endsParent: true,\n illegal: /[\"']/\n };\n // https://docs.swift.org/swift-book/ReferenceManual/Declarations.html#ID362\n // https://docs.swift.org/swift-book/documentation/the-swift-programming-language/declarations/#Macro-Declaration\n const FUNCTION_OR_MACRO = {\n match: [\n /(func|macro)/,\n /\\s+/,\n either(QUOTED_IDENTIFIER.match, identifier, operator)\n ],\n className: {\n 1: \"keyword\",\n 3: \"title.function\"\n },\n contains: [\n GENERIC_PARAMETERS,\n FUNCTION_PARAMETERS,\n WHITESPACE\n ],\n illegal: [\n /\\[/,\n /%/\n ]\n };\n\n // https://docs.swift.org/swift-book/ReferenceManual/Declarations.html#ID375\n // https://docs.swift.org/swift-book/ReferenceManual/Declarations.html#ID379\n const INIT_SUBSCRIPT = {\n match: [\n /\\b(?:subscript|init[?!]?)/,\n /\\s*(?=[<(])/,\n ],\n className: { 1: \"keyword\" },\n contains: [\n GENERIC_PARAMETERS,\n FUNCTION_PARAMETERS,\n WHITESPACE\n ],\n illegal: /\\[|%/\n };\n // https://docs.swift.org/swift-book/ReferenceManual/Declarations.html#ID380\n const OPERATOR_DECLARATION = {\n match: [\n /operator/,\n /\\s+/,\n operator\n ],\n className: {\n 1: \"keyword\",\n 3: \"title\"\n }\n };\n\n // https://docs.swift.org/swift-book/ReferenceManual/Declarations.html#ID550\n const PRECEDENCEGROUP = {\n begin: [\n /precedencegroup/,\n /\\s+/,\n typeIdentifier\n ],\n className: {\n 1: \"keyword\",\n 3: \"title\"\n },\n contains: [ TYPE ],\n keywords: [\n ...precedencegroupKeywords,\n ...literals\n ],\n end: /}/\n };\n\n const CLASS_FUNC_DECLARATION = {\n match: [\n /class\\b/, \n /\\s+/,\n /func\\b/,\n /\\s+/,\n /\\b[A-Za-z_][A-Za-z0-9_]*\\b/ \n ],\n scope: {\n 1: \"keyword\",\n 3: \"keyword\",\n 5: \"title.function\"\n }\n };\n\n const CLASS_VAR_DECLARATION = {\n match: [\n /class\\b/,\n /\\s+/, \n /var\\b/, \n ],\n scope: {\n 1: \"keyword\",\n 3: \"keyword\"\n }\n };\n\n const TYPE_DECLARATION = {\n begin: [\n /(struct|protocol|class|extension|enum|actor)/,\n /\\s+/,\n identifier,\n /\\s*/,\n ],\n beginScope: {\n 1: \"keyword\",\n 3: \"title.class\"\n },\n keywords: KEYWORDS,\n contains: [\n GENERIC_PARAMETERS,\n ...KEYWORD_MODES,\n {\n begin: /:/,\n end: /\\{/,\n keywords: KEYWORDS,\n contains: [\n {\n scope: \"title.class.inherited\",\n match: typeIdentifier,\n },\n ...KEYWORD_MODES,\n ],\n relevance: 0,\n },\n ]\n };\n\n // Add supported submodes to string interpolation.\n for (const variant of STRING.variants) {\n const interpolation = variant.contains.find(mode => mode.label === \"interpol\");\n // TODO: Interpolation can contain any expression, so there's room for improvement here.\n interpolation.keywords = KEYWORDS;\n const submodes = [\n ...KEYWORD_MODES,\n ...BUILT_INS,\n ...OPERATORS,\n NUMBER,\n STRING,\n ...IDENTIFIERS\n ];\n interpolation.contains = [\n ...submodes,\n {\n begin: /\\(/,\n end: /\\)/,\n contains: [\n 'self',\n ...submodes\n ]\n }\n ];\n }\n\n return {\n name: 'Swift',\n keywords: KEYWORDS,\n contains: [\n ...COMMENTS,\n FUNCTION_OR_MACRO,\n INIT_SUBSCRIPT,\n CLASS_FUNC_DECLARATION,\n CLASS_VAR_DECLARATION,\n TYPE_DECLARATION,\n OPERATOR_DECLARATION,\n PRECEDENCEGROUP,\n {\n beginKeywords: 'import',\n end: /$/,\n contains: [ ...COMMENTS ],\n relevance: 0\n },\n REGEXP,\n ...KEYWORD_MODES,\n ...BUILT_INS,\n ...OPERATORS,\n NUMBER,\n STRING,\n ...IDENTIFIERS,\n ...ATTRIBUTES,\n TYPE,\n TUPLE\n ]\n };\n}\n\nmodule.exports = swift;\n","import { Plugin, PluginKey } from 'prosemirror-state';\nimport { Decoration, DecorationSet } from 'prosemirror-view';\nimport { Node as PMNode } from 'prosemirror-model';\nimport hljs from 'highlight.js/lib/core';\nimport javascript from 'highlight.js/lib/languages/javascript';\nimport typescript from 'highlight.js/lib/languages/typescript';\nimport json from 'highlight.js/lib/languages/json';\nimport xml from 'highlight.js/lib/languages/xml';\nimport css from 'highlight.js/lib/languages/css';\nimport scss from 'highlight.js/lib/languages/scss';\nimport sql from 'highlight.js/lib/languages/sql';\nimport python from 'highlight.js/lib/languages/python';\nimport java from 'highlight.js/lib/languages/java';\nimport bash from 'highlight.js/lib/languages/bash';\nimport shell from 'highlight.js/lib/languages/shell';\nimport markdown from 'highlight.js/lib/languages/markdown';\nimport plaintext from 'highlight.js/lib/languages/plaintext';\nimport c from 'highlight.js/lib/languages/c';\nimport cpp from 'highlight.js/lib/languages/cpp';\nimport csharp from 'highlight.js/lib/languages/csharp';\nimport go from 'highlight.js/lib/languages/go';\nimport rust from 'highlight.js/lib/languages/rust';\nimport php from 'highlight.js/lib/languages/php';\nimport ruby from 'highlight.js/lib/languages/ruby';\nimport kotlin from 'highlight.js/lib/languages/kotlin';\nimport swift from 'highlight.js/lib/languages/swift';\nimport yaml from 'highlight.js/lib/languages/yaml';\nimport dockerfile from 'highlight.js/lib/languages/dockerfile';\nimport diff from 'highlight.js/lib/languages/diff';\nimport graphql from 'highlight.js/lib/languages/graphql';\n\nhljs.registerLanguage('javascript', javascript);\nhljs.registerLanguage('typescript', typescript);\nhljs.registerLanguage('json', json);\nhljs.registerLanguage('xml', xml);\nhljs.registerAliases(['html'], { languageName: 'xml' });\nhljs.registerLanguage('css', css);\nhljs.registerLanguage('scss', scss);\nhljs.registerLanguage('sql', sql);\nhljs.registerLanguage('python', python);\nhljs.registerLanguage('java', java);\nhljs.registerLanguage('bash', bash);\nhljs.registerLanguage('shell', shell);\nhljs.registerLanguage('markdown', markdown);\nhljs.registerLanguage('plaintext', plaintext);\nhljs.registerLanguage('c', c);\nhljs.registerLanguage('cpp', cpp);\nhljs.registerLanguage('csharp', csharp);\nhljs.registerLanguage('go', go);\nhljs.registerLanguage('rust', rust);\nhljs.registerLanguage('php', php);\nhljs.registerLanguage('ruby', ruby);\nhljs.registerLanguage('kotlin', kotlin);\nhljs.registerLanguage('swift', swift);\nhljs.registerLanguage('yaml', yaml);\nhljs.registerLanguage('dockerfile', dockerfile);\nhljs.registerLanguage('diff', diff);\nhljs.registerLanguage('graphql', graphql);\n\nexport const codeHighlightKey = new PluginKey<DecorationSet>('nileCodeHighlight');\n\n/** Languages offered in the code block language picker. '' = auto-detect. */\nexport const CODE_LANGUAGES: { value: string; label: string }[] = [\n { value: '', label: 'Auto' },\n { value: 'plaintext', label: 'Plain text' },\n { value: 'javascript', label: 'JavaScript' },\n { value: 'typescript', label: 'TypeScript' },\n { value: 'json', label: 'JSON' },\n { value: 'html', label: 'HTML' },\n { value: 'css', label: 'CSS' },\n { value: 'scss', label: 'SCSS' },\n { value: 'sql', label: 'SQL' },\n { value: 'python', label: 'Python' },\n { value: 'java', label: 'Java' },\n { value: 'c', label: 'C' },\n { value: 'cpp', label: 'C++' },\n { value: 'csharp', label: 'C#' },\n { value: 'go', label: 'Go' },\n { value: 'rust', label: 'Rust' },\n { value: 'php', label: 'PHP' },\n { value: 'ruby', label: 'Ruby' },\n { value: 'kotlin', label: 'Kotlin' },\n { value: 'swift', label: 'Swift' },\n { value: 'bash', label: 'Bash' },\n { value: 'shell', label: 'Shell' },\n { value: 'yaml', label: 'YAML' },\n { value: 'dockerfile', label: 'Dockerfile' },\n { value: 'graphql', label: 'GraphQL' },\n { value: 'diff', label: 'Diff' },\n { value: 'markdown', label: 'Markdown' },\n];\n\nconst AUTO_DETECT_SUBSET = [\n 'javascript', 'typescript', 'json', 'xml', 'css', 'sql', 'python', 'java',\n 'bash', 'go', 'rust', 'ruby',\n];\n\nconst MAX_HIGHLIGHT_LENGTH = 20000;\n\n/**\n * Converts highlight.js' emitted HTML into inline decorations. hljs escapes\n * but never reorders text, so parsed text offsets map 1:1 onto the node.\n */\nfunction decorationsForCode(text: string, language: string | null, base: number): Decoration[] {\n if (!text || text.length > MAX_HIGHLIGHT_LENGTH) return [];\n let value: string;\n try {\n if (language && hljs.getLanguage(language)) {\n value = hljs.highlight(text, { language }).value;\n } else if (language === 'plaintext') {\n return [];\n } else {\n value = hljs.highlightAuto(text, AUTO_DETECT_SUBSET).value;\n }\n } catch {\n return [];\n }\n\n const template = document.createElement('template');\n template.innerHTML = value;\n const decorations: Decoration[] = [];\n let offset = 0;\n const walk = (node: globalThis.Node, classes: string[]): void => {\n node.childNodes.forEach(child => {\n if (child.nodeType === 3) {\n const length = child.nodeValue?.length ?? 0;\n if (classes.length && length) {\n decorations.push(\n Decoration.inline(base + offset, base + offset + length, {\n class: classes.join(' '),\n })\n );\n }\n offset += length;\n } else if (child.nodeType === 1) {\n const el = child as Element;\n walk(el, [...classes, ...el.className.split(/\\s+/).filter(Boolean)]);\n }\n });\n };\n walk(template.content, []);\n return decorations;\n}\n\nfunction buildDecorations(doc: PMNode): DecorationSet {\n const decorations: Decoration[] = [];\n doc.descendants((node, pos) => {\n if (node.type.name === 'code_block') {\n decorations.push(\n ...decorationsForCode(node.textContent, node.attrs.language, pos + 1)\n );\n return false;\n }\n return true;\n });\n return decorations.length ? DecorationSet.create(doc, decorations) : DecorationSet.empty;\n}\n\n/** Syntax highlighting for code blocks, recomputed on document changes. */\nexport function codeHighlightPlugin(): Plugin<DecorationSet> {\n return new Plugin<DecorationSet>({\n key: codeHighlightKey,\n state: {\n init: (_config, state) => buildDecorations(state.doc),\n apply: (tr, old) => (tr.docChanged ? buildDecorations(tr.doc) : old),\n },\n props: {\n decorations(state) {\n return codeHighlightKey.getState(state);\n },\n },\n });\n}\n","const IDENT_RE = '[A-Za-z$_][0-9A-Za-z$_]*';\n\nconst KEYWORDS = [\n \"as\", // for exports\n \"in\",\n \"of\",\n \"if\",\n \"for\",\n \"while\",\n \"finally\",\n \"var\",\n \"new\",\n \"function\",\n \"do\",\n \"return\",\n \"void\",\n \"else\",\n \"break\",\n \"catch\",\n \"instanceof\",\n \"with\",\n \"throw\",\n \"case\",\n \"default\",\n \"try\",\n \"switch\",\n \"continue\",\n \"typeof\",\n \"delete\",\n \"let\",\n \"yield\",\n \"const\",\n \"class\",\n // JS handles these with a special rule\n // \"get\",\n // \"set\",\n \"debugger\",\n \"async\",\n \"await\",\n \"static\",\n \"import\",\n \"from\",\n \"export\",\n \"extends\",\n // It's reached stage 3, which is \"recommended for implementation\":\n \"using\"\n];\nconst LITERALS = [\n \"true\",\n \"false\",\n \"null\",\n \"undefined\",\n \"NaN\",\n \"Infinity\"\n];\n\n// https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects\nconst TYPES = [\n // Fundamental objects\n \"Object\",\n \"Function\",\n \"Boolean\",\n \"Symbol\",\n // numbers and dates\n \"Math\",\n \"Date\",\n \"Number\",\n \"BigInt\",\n // text\n \"String\",\n \"RegExp\",\n // Indexed collections\n \"Array\",\n \"Float32Array\",\n \"Float64Array\",\n \"Int8Array\",\n \"Uint8Array\",\n \"Uint8ClampedArray\",\n \"Int16Array\",\n \"Int32Array\",\n \"Uint16Array\",\n \"Uint32Array\",\n \"BigInt64Array\",\n \"BigUint64Array\",\n // Keyed collections\n \"Set\",\n \"Map\",\n \"WeakSet\",\n \"WeakMap\",\n // Structured data\n \"ArrayBuffer\",\n \"SharedArrayBuffer\",\n \"Atomics\",\n \"DataView\",\n \"JSON\",\n // Control abstraction objects\n \"Promise\",\n \"Generator\",\n \"GeneratorFunction\",\n \"AsyncFunction\",\n // Reflection\n \"Reflect\",\n \"Proxy\",\n // Internationalization\n \"Intl\",\n // WebAssembly\n \"WebAssembly\"\n];\n\nconst ERROR_TYPES = [\n \"Error\",\n \"EvalError\",\n \"InternalError\",\n \"RangeError\",\n \"ReferenceError\",\n \"SyntaxError\",\n \"TypeError\",\n \"URIError\"\n];\n\nconst BUILT_IN_GLOBALS = [\n \"setInterval\",\n \"setTimeout\",\n \"clearInterval\",\n \"clearTimeout\",\n\n \"require\",\n \"exports\",\n\n \"eval\",\n \"isFinite\",\n \"isNaN\",\n \"parseFloat\",\n \"parseInt\",\n \"decodeURI\",\n \"decodeURIComponent\",\n \"encodeURI\",\n \"encodeURIComponent\",\n \"escape\",\n \"unescape\"\n];\n\nconst BUILT_IN_VARIABLES = [\n \"arguments\",\n \"this\",\n \"super\",\n \"console\",\n \"window\",\n \"document\",\n \"localStorage\",\n \"sessionStorage\",\n \"module\",\n \"global\" // Node.js\n];\n\nconst BUILT_INS = [].concat(\n BUILT_IN_GLOBALS,\n TYPES,\n ERROR_TYPES\n);\n\n/*\nLanguage: JavaScript\nDescription: JavaScript (JS) is a lightweight, interpreted, or just-in-time compiled programming language with first-class functions.\nCategory: common, scripting, web\nWebsite: https://developer.mozilla.org/en-US/docs/Web/JavaScript\n*/\n\n\n/** @type LanguageFn */\nfunction javascript(hljs) {\n const regex = hljs.regex;\n /**\n * Takes a string like \"<Booger\" and checks to see\n * if we can find a matching \"</Booger\" later in the\n * content.\n * @param {RegExpMatchArray} match\n * @param {{after:number}} param1\n */\n const hasClosingTag = (match, { after }) => {\n const tag = \"</\" + match[0].slice(1);\n const pos = match.input.indexOf(tag, after);\n return pos !== -1;\n };\n\n const IDENT_RE$1 = IDENT_RE;\n const FRAGMENT = {\n begin: '<>',\n end: '</>'\n };\n // to avoid some special cases inside isTrulyOpeningTag\n const XML_SELF_CLOSING = /<[A-Za-z0-9\\\\._:-]+\\s*\\/>/;\n const XML_TAG = {\n begin: /<[A-Za-z0-9\\\\._:-]+/,\n end: /\\/[A-Za-z0-9\\\\._:-]+>|\\/>/,\n /**\n * @param {RegExpMatchArray} match\n * @param {CallbackResponse} response\n */\n isTrulyOpeningTag: (match, response) => {\n const afterMatchIndex = match[0].length + match.index;\n const nextChar = match.input[afterMatchIndex];\n if (\n // HTML should not include another raw `<` inside a tag\n // nested type?\n // `<Array<Array<number>>`, etc.\n nextChar === \"<\" ||\n // the , gives away that this is not HTML\n // `<T, A extends keyof T, V>`\n nextChar === \",\"\n ) {\n response.ignoreMatch();\n return;\n }\n\n // `<something>`\n // Quite possibly a tag, lets look for a matching closing tag...\n if (nextChar === \">\") {\n // if we cannot find a matching closing tag, then we\n // will ignore it\n if (!hasClosingTag(match, { after: afterMatchIndex })) {\n response.ignoreMatch();\n }\n }\n\n // `<blah />` (self-closing)\n // handled by simpleSelfClosing rule\n\n let m;\n const afterMatch = match.input.substring(afterMatchIndex);\n\n // some more template typing stuff\n // <T = any>(key?: string) => Modify<\n if ((m = afterMatch.match(/^\\s*=/))) {\n response.ignoreMatch();\n return;\n }\n\n // `<From extends string>`\n // technically this could be HTML, but it smells like a type\n // NOTE: This is ugh, but added specifically for https://github.com/highlightjs/highlight.js/issues/3276\n if ((m = afterMatch.match(/^\\s+extends\\s+/))) {\n if (m.index === 0) {\n response.ignoreMatch();\n // eslint-disable-next-line no-useless-return\n return;\n }\n }\n }\n };\n const KEYWORDS$1 = {\n $pattern: IDENT_RE,\n keyword: KEYWORDS,\n literal: LITERALS,\n built_in: BUILT_INS,\n \"variable.language\": BUILT_IN_VARIABLES\n };\n\n // https://tc39.es/ecma262/#sec-literals-numeric-literals\n const decimalDigits = '[0-9](_?[0-9])*';\n const frac = `\\\\.(${decimalDigits})`;\n // DecimalIntegerLiteral, including Annex B NonOctalDecimalIntegerLiteral\n // https://tc39.es/ecma262/#sec-additional-syntax-numeric-literals\n const decimalInteger = `0|[1-9](_?[0-9])*|0[0-7]*[89][0-9]*`;\n const NUMBER = {\n className: 'number',\n variants: [\n // DecimalLiteral\n { begin: `(\\\\b(${decimalInteger})((${frac})|\\\\.)?|(${frac}))` +\n `[eE][+-]?(${decimalDigits})\\\\b` },\n { begin: `\\\\b(${decimalInteger})\\\\b((${frac})\\\\b|\\\\.)?|(${frac})\\\\b` },\n\n // DecimalBigIntegerLiteral\n { begin: `\\\\b(0|[1-9](_?[0-9])*)n\\\\b` },\n\n // NonDecimalIntegerLiteral\n { begin: \"\\\\b0[xX][0-9a-fA-F](_?[0-9a-fA-F])*n?\\\\b\" },\n { begin: \"\\\\b0[bB][0-1](_?[0-1])*n?\\\\b\" },\n { begin: \"\\\\b0[oO][0-7](_?[0-7])*n?\\\\b\" },\n\n // LegacyOctalIntegerLiteral (does not include underscore separators)\n // https://tc39.es/ecma262/#sec-additional-syntax-numeric-literals\n { begin: \"\\\\b0[0-7]+n?\\\\b\" },\n ],\n relevance: 0\n };\n\n const SUBST = {\n className: 'subst',\n begin: '\\\\$\\\\{',\n end: '\\\\}',\n keywords: KEYWORDS$1,\n contains: [] // defined later\n };\n const HTML_TEMPLATE = {\n begin: '\\.?html`',\n end: '',\n starts: {\n end: '`',\n returnEnd: false,\n contains: [\n hljs.BACKSLASH_ESCAPE,\n SUBST\n ],\n subLanguage: 'xml'\n }\n };\n const CSS_TEMPLATE = {\n begin: '\\.?css`',\n end: '',\n starts: {\n end: '`',\n returnEnd: false,\n contains: [\n hljs.BACKSLASH_ESCAPE,\n SUBST\n ],\n subLanguage: 'css'\n }\n };\n const GRAPHQL_TEMPLATE = {\n begin: '\\.?gql`',\n end: '',\n starts: {\n end: '`',\n returnEnd: false,\n contains: [\n hljs.BACKSLASH_ESCAPE,\n SUBST\n ],\n subLanguage: 'graphql'\n }\n };\n const TEMPLATE_STRING = {\n className: 'string',\n begin: '`',\n end: '`',\n contains: [\n hljs.BACKSLASH_ESCAPE,\n SUBST\n ]\n };\n const JSDOC_COMMENT = hljs.COMMENT(\n /\\/\\*\\*(?!\\/)/,\n '\\\\*/',\n {\n relevance: 0,\n contains: [\n {\n begin: '(?=@[A-Za-z]+)',\n relevance: 0,\n contains: [\n {\n className: 'doctag',\n begin: '@[A-Za-z]+'\n },\n {\n className: 'type',\n begin: '\\\\{',\n end: '\\\\}',\n excludeEnd: true,\n excludeBegin: true,\n relevance: 0\n },\n {\n className: 'variable',\n begin: IDENT_RE$1 + '(?=\\\\s*(-)|$)',\n endsParent: true,\n relevance: 0\n },\n // eat spaces (not newlines) so we can find\n // types or variables\n {\n begin: /(?=[^\\n])\\s/,\n relevance: 0\n }\n ]\n }\n ]\n }\n );\n const COMMENT = {\n className: \"comment\",\n variants: [\n JSDOC_COMMENT,\n hljs.C_BLOCK_COMMENT_MODE,\n hljs.C_LINE_COMMENT_MODE\n ]\n };\n const SUBST_INTERNALS = [\n hljs.APOS_STRING_MODE,\n hljs.QUOTE_STRING_MODE,\n HTML_TEMPLATE,\n CSS_TEMPLATE,\n GRAPHQL_TEMPLATE,\n TEMPLATE_STRING,\n // Skip numbers when they are part of a variable name\n { match: /\\$\\d+/ },\n NUMBER,\n // This is intentional:\n // See https://github.com/highlightjs/highlight.js/issues/3288\n // hljs.REGEXP_MODE\n ];\n SUBST.contains = SUBST_INTERNALS\n .concat({\n // we need to pair up {} inside our subst to prevent\n // it from ending too early by matching another }\n begin: /\\{/,\n end: /\\}/,\n keywords: KEYWORDS$1,\n contains: [\n \"self\"\n ].concat(SUBST_INTERNALS)\n });\n const SUBST_AND_COMMENTS = [].concat(COMMENT, SUBST.contains);\n const PARAMS_CONTAINS = SUBST_AND_COMMENTS.concat([\n // eat recursive parens in sub expressions\n {\n begin: /(\\s*)\\(/,\n end: /\\)/,\n keywords: KEYWORDS$1,\n contains: [\"self\"].concat(SUBST_AND_COMMENTS)\n }\n ]);\n const PARAMS = {\n className: 'params',\n // convert this to negative lookbehind in v12\n begin: /(\\s*)\\(/, // to match the parms with\n end: /\\)/,\n excludeBegin: true,\n excludeEnd: true,\n keywords: KEYWORDS$1,\n contains: PARAMS_CONTAINS\n };\n\n // ES6 classes\n const CLASS_OR_EXTENDS = {\n variants: [\n // class Car extends vehicle\n {\n match: [\n /class/,\n /\\s+/,\n IDENT_RE$1,\n /\\s+/,\n /extends/,\n /\\s+/,\n regex.concat(IDENT_RE$1, \"(\", regex.concat(/\\./, IDENT_RE$1), \")*\")\n ],\n scope: {\n 1: \"keyword\",\n 3: \"title.class\",\n 5: \"keyword\",\n 7: \"title.class.inherited\"\n }\n },\n // class Car\n {\n match: [\n /class/,\n /\\s+/,\n IDENT_RE$1\n ],\n scope: {\n 1: \"keyword\",\n 3: \"title.class\"\n }\n },\n\n ]\n };\n\n const CLASS_REFERENCE = {\n relevance: 0,\n match:\n regex.either(\n // Hard coded exceptions\n /\\bJSON/,\n // Float32Array, OutT\n /\\b[A-Z][a-z]+([A-Z][a-z]*|\\d)*/,\n // CSSFactory, CSSFactoryT\n /\\b[A-Z]{2,}([A-Z][a-z]+|\\d)+([A-Z][a-z]*)*/,\n // FPs, FPsT\n /\\b[A-Z]{2,}[a-z]+([A-Z][a-z]+|\\d)*([A-Z][a-z]*)*/,\n // P\n // single letters are not highlighted\n // BLAH\n // this will be flagged as a UPPER_CASE_CONSTANT instead\n ),\n className: \"title.class\",\n keywords: {\n _: [\n // se we still get relevance credit for JS library classes\n ...TYPES,\n ...ERROR_TYPES\n ]\n }\n };\n\n const USE_STRICT = {\n label: \"use_strict\",\n className: 'meta',\n relevance: 10,\n begin: /^\\s*['\"]use (strict|asm)['\"]/\n };\n\n const FUNCTION_DEFINITION = {\n variants: [\n {\n match: [\n /function/,\n /\\s+/,\n IDENT_RE$1,\n /(?=\\s*\\()/\n ]\n },\n // anonymous function\n {\n match: [\n /function/,\n /\\s*(?=\\()/\n ]\n }\n ],\n className: {\n 1: \"keyword\",\n 3: \"title.function\"\n },\n label: \"func.def\",\n contains: [ PARAMS ],\n illegal: /%/\n };\n\n const UPPER_CASE_CONSTANT = {\n relevance: 0,\n match: /\\b[A-Z][A-Z_0-9]+\\b/,\n className: \"variable.constant\"\n };\n\n function noneOf(list) {\n return regex.concat(\"(?!\", list.join(\"|\"), \")\");\n }\n\n const FUNCTION_CALL = {\n match: regex.concat(\n /\\b/,\n noneOf([\n ...BUILT_IN_GLOBALS,\n \"super\",\n \"import\",\n \"await\",\n ].map(x => `${x}\\\\s*\\\\(`)),\n IDENT_RE$1, regex.lookahead(/\\s*\\(/)),\n className: \"title.function\",\n relevance: 0\n };\n\n const PROPERTY_ACCESS = {\n begin: regex.concat(/\\./, regex.lookahead(\n regex.concat(IDENT_RE$1, /(?![0-9A-Za-z$_(])/)\n )),\n end: IDENT_RE$1,\n excludeBegin: true,\n keywords: \"prototype\",\n className: \"property\",\n relevance: 0\n };\n\n const GETTER_OR_SETTER = {\n match: [\n /get|set/,\n /\\s+/,\n IDENT_RE$1,\n /(?=\\()/\n ],\n className: {\n 1: \"keyword\",\n 3: \"title.function\"\n },\n contains: [\n { // eat to avoid empty params\n begin: /\\(\\)/\n },\n PARAMS\n ]\n };\n\n const FUNC_LEAD_IN_RE = '(\\\\(' +\n '[^()]*(\\\\(' +\n '[^()]*(\\\\(' +\n '[^()]*' +\n '\\\\)[^()]*)*' +\n '\\\\)[^()]*)*' +\n '\\\\)|' + hljs.UNDERSCORE_IDENT_RE + ')\\\\s*=>';\n\n const FUNCTION_VARIABLE = {\n match: [\n /const|var|let/, /\\s+/,\n IDENT_RE$1, /\\s*/,\n /=\\s*/,\n /(async\\s*)?/, // async is optional\n regex.lookahead(FUNC_LEAD_IN_RE)\n ],\n keywords: \"async\",\n className: {\n 1: \"keyword\",\n 3: \"title.function\"\n },\n contains: [\n PARAMS\n ]\n };\n\n return {\n name: 'JavaScript',\n aliases: ['js', 'jsx', 'mjs', 'cjs'],\n keywords: KEYWORDS$1,\n // this will be extended by TypeScript\n exports: { PARAMS_CONTAINS, CLASS_REFERENCE },\n illegal: /#(?![$_A-Za-z])/,\n contains: [\n hljs.SHEBANG({\n label: \"shebang\",\n binary: \"node\",\n relevance: 5\n }),\n USE_STRICT,\n hljs.APOS_STRING_MODE,\n hljs.QUOTE_STRING_MODE,\n HTML_TEMPLATE,\n CSS_TEMPLATE,\n GRAPHQL_TEMPLATE,\n TEMPLATE_STRING,\n COMMENT,\n // Skip numbers when they are part of a variable name\n { match: /\\$\\d+/ },\n NUMBER,\n CLASS_REFERENCE,\n {\n scope: 'attr',\n match: IDENT_RE$1 + regex.lookahead(':'),\n relevance: 0\n },\n FUNCTION_VARIABLE,\n { // \"value\" container\n begin: '(' + hljs.RE_STARTERS_RE + '|\\\\b(case|return|throw)\\\\b)\\\\s*',\n keywords: 'return throw case',\n relevance: 0,\n contains: [\n COMMENT,\n hljs.REGEXP_MODE,\n {\n className: 'function',\n // we have to count the parens to make sure we actually have the\n // correct bounding ( ) before the =>. There could be any number of\n // sub-expressions inside also surrounded by parens.\n begin: FUNC_LEAD_IN_RE,\n returnBegin: true,\n end: '\\\\s*=>',\n contains: [\n {\n className: 'params',\n variants: [\n {\n begin: hljs.UNDERSCORE_IDENT_RE,\n relevance: 0\n },\n {\n className: null,\n begin: /\\(\\s*\\)/,\n skip: true\n },\n {\n begin: /(\\s*)\\(/,\n end: /\\)/,\n excludeBegin: true,\n excludeEnd: true,\n keywords: KEYWORDS$1,\n contains: PARAMS_CONTAINS\n }\n ]\n }\n ]\n },\n { // could be a comma delimited list of params to a function call\n begin: /,/,\n relevance: 0\n },\n {\n match: /\\s+/,\n relevance: 0\n },\n { // JSX\n variants: [\n { begin: FRAGMENT.begin, end: FRAGMENT.end },\n { match: XML_SELF_CLOSING },\n {\n begin: XML_TAG.begin,\n // we carefully check the opening tag to see if it truly\n // is a tag and not a false positive\n 'on:begin': XML_TAG.isTrulyOpeningTag,\n end: XML_TAG.end\n }\n ],\n subLanguage: 'xml',\n contains: [\n {\n begin: XML_TAG.begin,\n end: XML_TAG.end,\n skip: true,\n contains: ['self']\n }\n ]\n }\n ],\n },\n FUNCTION_DEFINITION,\n {\n // prevent this from getting swallowed up by function\n // since they appear \"function like\"\n beginKeywords: \"while if switch catch for\"\n },\n {\n // we have to count the parens to make sure we actually have the correct\n // bounding ( ). There could be any number of sub-expressions inside\n // also surrounded by parens.\n begin: '\\\\b(?!function)' + hljs.UNDERSCORE_IDENT_RE +\n '\\\\(' + // first parens\n '[^()]*(\\\\(' +\n '[^()]*(\\\\(' +\n '[^()]*' +\n '\\\\)[^()]*)*' +\n '\\\\)[^()]*)*' +\n '\\\\)\\\\s*\\\\{', // end parens\n returnBegin:true,\n label: \"func.def\",\n contains: [\n PARAMS,\n hljs.inherit(hljs.TITLE_MODE, { begin: IDENT_RE$1, className: \"title.function\" })\n ]\n },\n // catch ... so it won't trigger the property rule below\n {\n match: /\\.\\.\\./,\n relevance: 0\n },\n PROPERTY_ACCESS,\n // hack: prevents detection of keywords in some circumstances\n // .keyword()\n // $keyword = x\n {\n match: '\\\\$' + IDENT_RE$1,\n relevance: 0\n },\n {\n match: [ /\\bconstructor(?=\\s*\\()/ ],\n className: { 1: \"title.function\" },\n contains: [ PARAMS ]\n },\n FUNCTION_CALL,\n UPPER_CASE_CONSTANT,\n CLASS_OR_EXTENDS,\n GETTER_OR_SETTER,\n {\n match: /\\$[(.]/ // relevance booster for a pattern common to JS libs: `$(something)` and `$.something`\n }\n ]\n };\n}\n\nmodule.exports = javascript;\n","const EXTENDED_NUMBER_RE = '([-+]?)(\\\\b0[xX][a-fA-F0-9]+|(\\\\b\\\\d+(\\\\.\\\\d*)?|\\\\.\\\\d+)([eE][-+]?\\\\d+)?)|NaN|[-+]?Infinity'; // 0x..., 0..., decimal, float\n\nconst EXTENDED_NUMBER_MODE = {\n scope: 'number',\n match: EXTENDED_NUMBER_RE,\n relevance: 0\n};\n\n/*\nLanguage: JSON\nDescription: JSON (JavaScript Object Notation) is a lightweight data-interchange format.\nWebsites: http://www.json.org, https://www.json5.org\nCategory: common, protocols, web\n*/\n\n\nfunction json(hljs) {\n const ATTRIBUTE = {\n className: 'attr',\n begin: /((\"(\\\\.|[^\\\\\"\\r\\n])*\")|('(\\\\.|[^\\\\'\\r\\n])*'))(?=\\s*:)/,\n relevance: 1.01\n };\n const PUNCTUATION = {\n match: /[{}[\\],:]/,\n className: \"punctuation\",\n relevance: 0\n };\n const LITERALS = [\n \"true\",\n \"false\",\n \"null\"\n ];\n // NOTE: normally we would rely on `keywords` for this but using a mode here allows us\n // - to use the very tight `illegal: \\S` rule later to flag any other character\n // - as illegal indicating that despite looking like JSON we do not truly have\n // - JSON and thus improve false-positively greatly since JSON will try and claim\n // - all sorts of JSON looking stuff\n const LITERALS_MODE = {\n scope: \"literal\",\n beginKeywords: LITERALS.join(\" \"),\n };\n\n return {\n name: 'JSON',\n aliases: ['jsonc', 'json5'],\n keywords:{\n literal: LITERALS,\n },\n contains: [\n ATTRIBUTE,\n PUNCTUATION,\n hljs.APOS_STRING_MODE,\n hljs.QUOTE_STRING_MODE,\n LITERALS_MODE,\n EXTENDED_NUMBER_MODE,\n hljs.C_LINE_COMMENT_MODE,\n hljs.C_BLOCK_COMMENT_MODE\n ],\n illegal: '\\\\S'\n };\n}\n\nmodule.exports = json;\n","const MODES = (hljs) => {\n return {\n IMPORTANT: {\n scope: 'meta',\n begin: '!important'\n },\n BLOCK_COMMENT: hljs.C_BLOCK_COMMENT_MODE,\n HEXCOLOR: {\n scope: 'number',\n begin: /#(([0-9a-fA-F]{3,4})|(([0-9a-fA-F]{2}){3,4}))\\b/\n },\n UNICODE_RANGE: {\n scope: 'number',\n begin: /\\b[Uu]\\+[0-9A-Fa-f][0-9A-Fa-f?]{0,4}(-[0-9A-Fa-f][0-9A-Fa-f]{0,4})?/\n },\n FUNCTION_DISPATCH: {\n className: \"built_in\",\n begin: /[\\w-]+(?=\\()/\n },\n ATTRIBUTE_SELECTOR_MODE: {\n scope: 'selector-attr',\n begin: /\\[/,\n end: /\\]/,\n illegal: '$',\n contains: [\n hljs.APOS_STRING_MODE,\n hljs.QUOTE_STRING_MODE\n ]\n },\n CSS_NUMBER_MODE: {\n scope: 'number',\n begin: hljs.NUMBER_RE + '(' +\n '%|em|ex|ch|rem' +\n '|vw|vh|vmin|vmax' +\n '|cm|mm|in|pt|pc|px' +\n '|deg|grad|rad|turn' +\n '|s|ms' +\n '|Hz|kHz' +\n '|dpi|dpcm|dppx' +\n ')?',\n relevance: 0\n },\n CSS_VARIABLE: {\n className: \"attr\",\n begin: /--[A-Za-z_][A-Za-z0-9_-]*/\n }\n };\n};\n\nconst HTML_TAGS = [\n 'a',\n 'abbr',\n 'address',\n 'article',\n 'aside',\n 'audio',\n 'b',\n 'blockquote',\n 'body',\n 'button',\n 'canvas',\n 'caption',\n 'cite',\n 'code',\n 'dd',\n 'del',\n 'details',\n 'dfn',\n 'div',\n 'dl',\n 'dt',\n 'em',\n 'fieldset',\n 'figcaption',\n 'figure',\n 'footer',\n 'form',\n 'h1',\n 'h2',\n 'h3',\n 'h4',\n 'h5',\n 'h6',\n 'header',\n 'hgroup',\n 'html',\n 'i',\n 'iframe',\n 'img',\n 'input',\n 'ins',\n 'kbd',\n 'label',\n 'legend',\n 'li',\n 'main',\n 'mark',\n 'menu',\n 'nav',\n 'object',\n 'ol',\n 'optgroup',\n 'option',\n 'p',\n 'picture',\n 'q',\n 'quote',\n 'samp',\n 'section',\n 'select',\n 'source',\n 'span',\n 'strong',\n 'summary',\n 'sup',\n 'table',\n 'tbody',\n 'td',\n 'textarea',\n 'tfoot',\n 'th',\n 'thead',\n 'time',\n 'tr',\n 'ul',\n 'var',\n 'video'\n];\n\nconst SVG_TAGS = [\n 'defs',\n 'g',\n 'marker',\n 'mask',\n 'pattern',\n 'svg',\n 'switch',\n 'symbol',\n 'feBlend',\n 'feColorMatrix',\n 'feComponentTransfer',\n 'feComposite',\n 'feConvolveMatrix',\n 'feDiffuseLighting',\n 'feDisplacementMap',\n 'feFlood',\n 'feGaussianBlur',\n 'feImage',\n 'feMerge',\n 'feMorphology',\n 'feOffset',\n 'feSpecularLighting',\n 'feTile',\n 'feTurbulence',\n 'linearGradient',\n 'radialGradient',\n 'stop',\n 'circle',\n 'ellipse',\n 'image',\n 'line',\n 'path',\n 'polygon',\n 'polyline',\n 'rect',\n 'text',\n 'use',\n 'textPath',\n 'tspan',\n 'foreignObject',\n 'clipPath'\n];\n\nconst TAGS = [\n ...HTML_TAGS,\n ...SVG_TAGS,\n];\n\n// Sorting, then reversing makes sure longer attributes/elements like\n// `font-weight` are matched fully instead of getting false positives on say `font`\n\nconst MEDIA_FEATURES = [\n 'any-hover',\n 'any-pointer',\n 'aspect-ratio',\n 'color',\n 'color-gamut',\n 'color-index',\n 'device-aspect-ratio',\n 'device-height',\n 'device-width',\n 'display-mode',\n 'forced-colors',\n 'grid',\n 'height',\n 'hover',\n 'inverted-colors',\n 'monochrome',\n 'orientation',\n 'overflow-block',\n 'overflow-inline',\n 'pointer',\n 'prefers-color-scheme',\n 'prefers-contrast',\n 'prefers-reduced-motion',\n 'prefers-reduced-transparency',\n 'resolution',\n 'scan',\n 'scripting',\n 'update',\n 'width',\n // TODO: find a better solution?\n 'min-width',\n 'max-width',\n 'min-height',\n 'max-height'\n].sort().reverse();\n\n// https://developer.mozilla.org/en-US/docs/Web/CSS/Pseudo-classes\nconst PSEUDO_CLASSES = [\n 'active',\n 'any-link',\n 'blank',\n 'checked',\n 'current',\n 'default',\n 'defined',\n 'dir', // dir()\n 'disabled',\n 'drop',\n 'empty',\n 'enabled',\n 'first',\n 'first-child',\n 'first-of-type',\n 'fullscreen',\n 'future',\n 'focus',\n 'focus-visible',\n 'focus-within',\n 'has', // has()\n 'host', // host or host()\n 'host-context', // host-context()\n 'hover',\n 'indeterminate',\n 'in-range',\n 'invalid',\n 'is', // is()\n 'lang', // lang()\n 'last-child',\n 'last-of-type',\n 'left',\n 'link',\n 'local-link',\n 'not', // not()\n 'nth-child', // nth-child()\n 'nth-col', // nth-col()\n 'nth-last-child', // nth-last-child()\n 'nth-last-col', // nth-last-col()\n 'nth-last-of-type', //nth-last-of-type()\n 'nth-of-type', //nth-of-type()\n 'only-child',\n 'only-of-type',\n 'optional',\n 'out-of-range',\n 'past',\n 'placeholder-shown',\n 'read-only',\n 'read-write',\n 'required',\n 'right',\n 'root',\n 'scope',\n 'target',\n 'target-within',\n 'user-invalid',\n 'valid',\n 'visited',\n 'where' // where()\n].sort().reverse();\n\n// https://developer.mozilla.org/en-US/docs/Web/CSS/Pseudo-elements\nconst PSEUDO_ELEMENTS = [\n 'after',\n 'backdrop',\n 'before',\n 'cue',\n 'cue-region',\n 'first-letter',\n 'first-line',\n 'grammar-error',\n 'marker',\n 'part',\n 'placeholder',\n 'selection',\n 'slotted',\n 'spelling-error'\n].sort().reverse();\n\nconst ATTRIBUTES = [\n 'accent-color',\n 'align-content',\n 'align-items',\n 'align-self',\n 'alignment-baseline',\n 'all',\n 'anchor-name',\n 'animation',\n 'animation-composition',\n 'animation-delay',\n 'animation-direction',\n 'animation-duration',\n 'animation-fill-mode',\n 'animation-iteration-count',\n 'animation-name',\n 'animation-play-state',\n 'animation-range',\n 'animation-range-end',\n 'animation-range-start',\n 'animation-timeline',\n 'animation-timing-function',\n 'appearance',\n 'aspect-ratio',\n 'backdrop-filter',\n 'backface-visibility',\n 'background',\n 'background-attachment',\n 'background-blend-mode',\n 'background-clip',\n 'background-color',\n 'background-image',\n 'background-origin',\n 'background-position',\n 'background-position-x',\n 'background-position-y',\n 'background-repeat',\n 'background-size',\n 'baseline-shift',\n 'block-size',\n 'border',\n 'border-block',\n 'border-block-color',\n 'border-block-end',\n 'border-block-end-color',\n 'border-block-end-style',\n 'border-block-end-width',\n 'border-block-start',\n 'border-block-start-color',\n 'border-block-start-style',\n 'border-block-start-width',\n 'border-block-style',\n 'border-block-width',\n 'border-bottom',\n 'border-bottom-color',\n 'border-bottom-left-radius',\n 'border-bottom-right-radius',\n 'border-bottom-style',\n 'border-bottom-width',\n 'border-collapse',\n 'border-color',\n 'border-end-end-radius',\n 'border-end-start-radius',\n 'border-image',\n 'border-image-outset',\n 'border-image-repeat',\n 'border-image-slice',\n 'border-image-source',\n 'border-image-width',\n 'border-inline',\n 'border-inline-color',\n 'border-inline-end',\n 'border-inline-end-color',\n 'border-inline-end-style',\n 'border-inline-end-width',\n 'border-inline-start',\n 'border-inline-start-color',\n 'border-inline-start-style',\n 'border-inline-start-width',\n 'border-inline-style',\n 'border-inline-width',\n 'border-left',\n 'border-left-color',\n 'border-left-style',\n 'border-left-width',\n 'border-radius',\n 'border-right',\n 'border-right-color',\n 'border-right-style',\n 'border-right-width',\n 'border-spacing',\n 'border-start-end-radius',\n 'border-start-start-radius',\n 'border-style',\n 'border-top',\n 'border-top-color',\n 'border-top-left-radius',\n 'border-top-right-radius',\n 'border-top-style',\n 'border-top-width',\n 'border-width',\n 'bottom',\n 'box-align',\n 'box-decoration-break',\n 'box-direction',\n 'box-flex',\n 'box-flex-group',\n 'box-lines',\n 'box-ordinal-group',\n 'box-orient',\n 'box-pack',\n 'box-shadow',\n 'box-sizing',\n 'break-after',\n 'break-before',\n 'break-inside',\n 'caption-side',\n 'caret-color',\n 'clear',\n 'clip',\n 'clip-path',\n 'clip-rule',\n 'color',\n 'color-interpolation',\n 'color-interpolation-filters',\n 'color-profile',\n 'color-rendering',\n 'color-scheme',\n 'column-count',\n 'column-fill',\n 'column-gap',\n 'column-rule',\n 'column-rule-color',\n 'column-rule-style',\n 'column-rule-width',\n 'column-span',\n 'column-width',\n 'columns',\n 'contain',\n 'contain-intrinsic-block-size',\n 'contain-intrinsic-height',\n 'contain-intrinsic-inline-size',\n 'contain-intrinsic-size',\n 'contain-intrinsic-width',\n 'container',\n 'container-name',\n 'container-type',\n 'content',\n 'content-visibility',\n 'counter-increment',\n 'counter-reset',\n 'counter-set',\n 'cue',\n 'cue-after',\n 'cue-before',\n 'cursor',\n 'cx',\n 'cy',\n 'direction',\n 'display',\n 'dominant-baseline',\n 'empty-cells',\n 'enable-background',\n 'field-sizing',\n 'fill',\n 'fill-opacity',\n 'fill-rule',\n 'filter',\n 'flex',\n 'flex-basis',\n 'flex-direction',\n 'flex-flow',\n 'flex-grow',\n 'flex-shrink',\n 'flex-wrap',\n 'float',\n 'flood-color',\n 'flood-opacity',\n 'flow',\n 'font',\n 'font-display',\n 'font-family',\n 'font-feature-settings',\n 'font-kerning',\n 'font-language-override',\n 'font-optical-sizing',\n 'font-palette',\n 'font-size',\n 'font-size-adjust',\n 'font-smooth',\n 'font-smoothing',\n 'font-stretch',\n 'font-style',\n 'font-synthesis',\n 'font-synthesis-position',\n 'font-synthesis-small-caps',\n 'font-synthesis-style',\n 'font-synthesis-weight',\n 'font-variant',\n 'font-variant-alternates',\n 'font-variant-caps',\n 'font-variant-east-asian',\n 'font-variant-emoji',\n 'font-variant-ligatures',\n 'font-variant-numeric',\n 'font-variant-position',\n 'font-variation-settings',\n 'font-weight',\n 'forced-color-adjust',\n 'gap',\n 'glyph-orientation-horizontal',\n 'glyph-orientation-vertical',\n 'grid',\n 'grid-area',\n 'grid-auto-columns',\n 'grid-auto-flow',\n 'grid-auto-rows',\n 'grid-column',\n 'grid-column-end',\n 'grid-column-start',\n 'grid-gap',\n 'grid-row',\n 'grid-row-end',\n 'grid-row-start',\n 'grid-template',\n 'grid-template-areas',\n 'grid-template-columns',\n 'grid-template-rows',\n 'hanging-punctuation',\n 'height',\n 'hyphenate-character',\n 'hyphenate-limit-chars',\n 'hyphens',\n 'icon',\n 'image-orientation',\n 'image-rendering',\n 'image-resolution',\n 'ime-mode',\n 'initial-letter',\n 'initial-letter-align',\n 'inline-size',\n 'inset',\n 'inset-area',\n 'inset-block',\n 'inset-block-end',\n 'inset-block-start',\n 'inset-inline',\n 'inset-inline-end',\n 'inset-inline-start',\n 'isolation',\n 'justify-content',\n 'justify-items',\n 'justify-self',\n 'kerning',\n 'left',\n 'letter-spacing',\n 'lighting-color',\n 'line-break',\n 'line-height',\n 'line-height-step',\n 'list-style',\n 'list-style-image',\n 'list-style-position',\n 'list-style-type',\n 'margin',\n 'margin-block',\n 'margin-block-end',\n 'margin-block-start',\n 'margin-bottom',\n 'margin-inline',\n 'margin-inline-end',\n 'margin-inline-start',\n 'margin-left',\n 'margin-right',\n 'margin-top',\n 'margin-trim',\n 'marker',\n 'marker-end',\n 'marker-mid',\n 'marker-start',\n 'marks',\n 'mask',\n 'mask-border',\n 'mask-border-mode',\n 'mask-border-outset',\n 'mask-border-repeat',\n 'mask-border-slice',\n 'mask-border-source',\n 'mask-border-width',\n 'mask-clip',\n 'mask-composite',\n 'mask-image',\n 'mask-mode',\n 'mask-origin',\n 'mask-position',\n 'mask-repeat',\n 'mask-size',\n 'mask-type',\n 'masonry-auto-flow',\n 'math-depth',\n 'math-shift',\n 'math-style',\n 'max-block-size',\n 'max-height',\n 'max-inline-size',\n 'max-width',\n 'min-block-size',\n 'min-height',\n 'min-inline-size',\n 'min-width',\n 'mix-blend-mode',\n 'nav-down',\n 'nav-index',\n 'nav-left',\n 'nav-right',\n 'nav-up',\n 'none',\n 'normal',\n 'object-fit',\n 'object-position',\n 'offset',\n 'offset-anchor',\n 'offset-distance',\n 'offset-path',\n 'offset-position',\n 'offset-rotate',\n 'opacity',\n 'order',\n 'orphans',\n 'outline',\n 'outline-color',\n 'outline-offset',\n 'outline-style',\n 'outline-width',\n 'overflow',\n 'overflow-anchor',\n 'overflow-block',\n 'overflow-clip-margin',\n 'overflow-inline',\n 'overflow-wrap',\n 'overflow-x',\n 'overflow-y',\n 'overlay',\n 'overscroll-behavior',\n 'overscroll-behavior-block',\n 'overscroll-behavior-inline',\n 'overscroll-behavior-x',\n 'overscroll-behavior-y',\n 'padding',\n 'padding-block',\n 'padding-block-end',\n 'padding-block-start',\n 'padding-bottom',\n 'padding-inline',\n 'padding-inline-end',\n 'padding-inline-start',\n 'padding-left',\n 'padding-right',\n 'padding-top',\n 'page',\n 'page-break-after',\n 'page-break-before',\n 'page-break-inside',\n 'paint-order',\n 'pause',\n 'pause-after',\n 'pause-before',\n 'perspective',\n 'perspective-origin',\n 'place-content',\n 'place-items',\n 'place-self',\n 'pointer-events',\n 'position',\n 'position-anchor',\n 'position-visibility',\n 'print-color-adjust',\n 'quotes',\n 'r',\n 'resize',\n 'rest',\n 'rest-after',\n 'rest-before',\n 'right',\n 'rotate',\n 'row-gap',\n 'ruby-align',\n 'ruby-position',\n 'scale',\n 'scroll-behavior',\n 'scroll-margin',\n 'scroll-margin-block',\n 'scroll-margin-block-end',\n 'scroll-margin-block-start',\n 'scroll-margin-bottom',\n 'scroll-margin-inline',\n 'scroll-margin-inline-end',\n 'scroll-margin-inline-start',\n 'scroll-margin-left',\n 'scroll-margin-right',\n 'scroll-margin-top',\n 'scroll-padding',\n 'scroll-padding-block',\n 'scroll-padding-block-end',\n 'scroll-padding-block-start',\n 'scroll-padding-bottom',\n 'scroll-padding-inline',\n 'scroll-padding-inline-end',\n 'scroll-padding-inline-start',\n 'scroll-padding-left',\n 'scroll-padding-right',\n 'scroll-padding-top',\n 'scroll-snap-align',\n 'scroll-snap-stop',\n 'scroll-snap-type',\n 'scroll-timeline',\n 'scroll-timeline-axis',\n 'scroll-timeline-name',\n 'scrollbar-color',\n 'scrollbar-gutter',\n 'scrollbar-width',\n 'shape-image-threshold',\n 'shape-margin',\n 'shape-outside',\n 'shape-rendering',\n 'speak',\n 'speak-as',\n 'src', // @font-face\n 'stop-color',\n 'stop-opacity',\n 'stroke',\n 'stroke-dasharray',\n 'stroke-dashoffset',\n 'stroke-linecap',\n 'stroke-linejoin',\n 'stroke-miterlimit',\n 'stroke-opacity',\n 'stroke-width',\n 'tab-size',\n 'table-layout',\n 'text-align',\n 'text-align-all',\n 'text-align-last',\n 'text-anchor',\n 'text-combine-upright',\n 'text-decoration',\n 'text-decoration-color',\n 'text-decoration-line',\n 'text-decoration-skip',\n 'text-decoration-skip-ink',\n 'text-decoration-style',\n 'text-decoration-thickness',\n 'text-emphasis',\n 'text-emphasis-color',\n 'text-emphasis-position',\n 'text-emphasis-style',\n 'text-indent',\n 'text-justify',\n 'text-orientation',\n 'text-overflow',\n 'text-rendering',\n 'text-shadow',\n 'text-size-adjust',\n 'text-transform',\n 'text-underline-offset',\n 'text-underline-position',\n 'text-wrap',\n 'text-wrap-mode',\n 'text-wrap-style',\n 'timeline-scope',\n 'top',\n 'touch-action',\n 'transform',\n 'transform-box',\n 'transform-origin',\n 'transform-style',\n 'transition',\n 'transition-behavior',\n 'transition-delay',\n 'transition-duration',\n 'transition-property',\n 'transition-timing-function',\n 'translate',\n 'unicode-bidi',\n 'unicode-range',\n 'user-modify',\n 'user-select',\n 'vector-effect',\n 'vertical-align',\n 'view-timeline',\n 'view-timeline-axis',\n 'view-timeline-inset',\n 'view-timeline-name',\n 'view-transition-name',\n 'visibility',\n 'voice-balance',\n 'voice-duration',\n 'voice-family',\n 'voice-pitch',\n 'voice-range',\n 'voice-rate',\n 'voice-stress',\n 'voice-volume',\n 'white-space',\n 'white-space-collapse',\n 'widows',\n 'width',\n 'will-change',\n 'word-break',\n 'word-spacing',\n 'word-wrap',\n 'writing-mode',\n 'x',\n 'y',\n 'z-index',\n 'zoom'\n].sort().reverse();\n\n/*\nLanguage: CSS\nCategory: common, css, web\nWebsite: https://developer.mozilla.org/en-US/docs/Web/CSS\n*/\n\n\n/** @type LanguageFn */\nfunction css(hljs) {\n const regex = hljs.regex;\n const modes = MODES(hljs);\n const VENDOR_PREFIX = { begin: /-(webkit|moz|ms|o)-(?=[a-z])/ };\n const AT_MODIFIERS = \"and or not only\";\n const AT_PROPERTY_RE = /@-?\\w[\\w]*(-\\w+)*/; // @-webkit-keyframes\n const IDENT_RE = '[a-zA-Z-][a-zA-Z0-9_-]*';\n const STRINGS = [\n hljs.APOS_STRING_MODE,\n hljs.QUOTE_STRING_MODE\n ];\n\n return {\n name: 'CSS',\n case_insensitive: true,\n illegal: /[=|'\\$]/,\n keywords: { keyframePosition: \"from to\" },\n classNameAliases: {\n // for visual continuity with `tag {}` and because we\n // don't have a great class for this?\n keyframePosition: \"selector-tag\" },\n contains: [\n modes.BLOCK_COMMENT,\n VENDOR_PREFIX,\n // to recognize keyframe 40% etc which are outside the scope of our\n // attribute value mode\n modes.CSS_NUMBER_MODE,\n {\n className: 'selector-id',\n begin: /#[A-Za-z0-9_-]+/,\n relevance: 0\n },\n {\n className: 'selector-class',\n begin: '\\\\.' + IDENT_RE,\n relevance: 0\n },\n modes.ATTRIBUTE_SELECTOR_MODE,\n {\n className: 'selector-pseudo',\n variants: [\n { begin: ':(' + PSEUDO_CLASSES.join('|') + ')' },\n { begin: ':(:)?(' + PSEUDO_ELEMENTS.join('|') + ')' }\n ]\n },\n // we may actually need this (12/2020)\n // { // pseudo-selector params\n // begin: /\\(/,\n // end: /\\)/,\n // contains: [ hljs.CSS_NUMBER_MODE ]\n // },\n modes.CSS_VARIABLE,\n {\n className: 'attribute',\n begin: '\\\\b(' + ATTRIBUTES.join('|') + ')\\\\b'\n },\n // attribute values\n {\n begin: /:/,\n end: /[;}{]/,\n contains: [\n modes.BLOCK_COMMENT,\n modes.HEXCOLOR,\n modes.IMPORTANT,\n modes.CSS_NUMBER_MODE,\n modes.UNICODE_RANGE,\n ...STRINGS,\n // needed to highlight these as strings and to avoid issues with\n // illegal characters that might be inside urls that would trigger the\n // languages illegal stack\n {\n begin: /(url|data-uri)\\(/,\n end: /\\)/,\n relevance: 0, // from keywords\n keywords: { built_in: \"url data-uri\" },\n contains: [\n ...STRINGS,\n {\n className: \"string\",\n // any character other than `)` as in `url()` will be the start\n // of a string, which ends with `)` (from the parent mode)\n begin: /[^)]/,\n endsWithParent: true,\n excludeEnd: true\n }\n ]\n },\n modes.FUNCTION_DISPATCH\n ]\n },\n {\n begin: regex.lookahead(/@/),\n end: '[{;]',\n relevance: 0,\n illegal: /:/, // break on Less variables @var: ...\n contains: [\n {\n className: 'keyword',\n begin: AT_PROPERTY_RE\n },\n {\n begin: /\\s/,\n endsWithParent: true,\n excludeEnd: true,\n relevance: 0,\n keywords: {\n $pattern: /[a-z-]+/,\n keyword: AT_MODIFIERS,\n attribute: MEDIA_FEATURES.join(\" \")\n },\n contains: [\n {\n begin: /[a-z-]+(?=:)/,\n className: \"attribute\"\n },\n ...STRINGS,\n modes.CSS_NUMBER_MODE\n ]\n }\n ]\n },\n {\n className: 'selector-tag',\n begin: '\\\\b(' + TAGS.join('|') + ')\\\\b'\n }\n ]\n };\n}\n\nmodule.exports = css;\n","const MODES = (hljs) => {\n return {\n IMPORTANT: {\n scope: 'meta',\n begin: '!important'\n },\n BLOCK_COMMENT: hljs.C_BLOCK_COMMENT_MODE,\n HEXCOLOR: {\n scope: 'number',\n begin: /#(([0-9a-fA-F]{3,4})|(([0-9a-fA-F]{2}){3,4}))\\b/\n },\n UNICODE_RANGE: {\n scope: 'number',\n begin: /\\b[Uu]\\+[0-9A-Fa-f][0-9A-Fa-f?]{0,4}(-[0-9A-Fa-f][0-9A-Fa-f]{0,4})?/\n },\n FUNCTION_DISPATCH: {\n className: \"built_in\",\n begin: /[\\w-]+(?=\\()/\n },\n ATTRIBUTE_SELECTOR_MODE: {\n scope: 'selector-attr',\n begin: /\\[/,\n end: /\\]/,\n illegal: '$',\n contains: [\n hljs.APOS_STRING_MODE,\n hljs.QUOTE_STRING_MODE\n ]\n },\n CSS_NUMBER_MODE: {\n scope: 'number',\n begin: hljs.NUMBER_RE + '(' +\n '%|em|ex|ch|rem' +\n '|vw|vh|vmin|vmax' +\n '|cm|mm|in|pt|pc|px' +\n '|deg|grad|rad|turn' +\n '|s|ms' +\n '|Hz|kHz' +\n '|dpi|dpcm|dppx' +\n ')?',\n relevance: 0\n },\n CSS_VARIABLE: {\n className: \"attr\",\n begin: /--[A-Za-z_][A-Za-z0-9_-]*/\n }\n };\n};\n\nconst HTML_TAGS = [\n 'a',\n 'abbr',\n 'address',\n 'article',\n 'aside',\n 'audio',\n 'b',\n 'blockquote',\n 'body',\n 'button',\n 'canvas',\n 'caption',\n 'cite',\n 'code',\n 'dd',\n 'del',\n 'details',\n 'dfn',\n 'div',\n 'dl',\n 'dt',\n 'em',\n 'fieldset',\n 'figcaption',\n 'figure',\n 'footer',\n 'form',\n 'h1',\n 'h2',\n 'h3',\n 'h4',\n 'h5',\n 'h6',\n 'header',\n 'hgroup',\n 'html',\n 'i',\n 'iframe',\n 'img',\n 'input',\n 'ins',\n 'kbd',\n 'label',\n 'legend',\n 'li',\n 'main',\n 'mark',\n 'menu',\n 'nav',\n 'object',\n 'ol',\n 'optgroup',\n 'option',\n 'p',\n 'picture',\n 'q',\n 'quote',\n 'samp',\n 'section',\n 'select',\n 'source',\n 'span',\n 'strong',\n 'summary',\n 'sup',\n 'table',\n 'tbody',\n 'td',\n 'textarea',\n 'tfoot',\n 'th',\n 'thead',\n 'time',\n 'tr',\n 'ul',\n 'var',\n 'video'\n];\n\nconst SVG_TAGS = [\n 'defs',\n 'g',\n 'marker',\n 'mask',\n 'pattern',\n 'svg',\n 'switch',\n 'symbol',\n 'feBlend',\n 'feColorMatrix',\n 'feComponentTransfer',\n 'feComposite',\n 'feConvolveMatrix',\n 'feDiffuseLighting',\n 'feDisplacementMap',\n 'feFlood',\n 'feGaussianBlur',\n 'feImage',\n 'feMerge',\n 'feMorphology',\n 'feOffset',\n 'feSpecularLighting',\n 'feTile',\n 'feTurbulence',\n 'linearGradient',\n 'radialGradient',\n 'stop',\n 'circle',\n 'ellipse',\n 'image',\n 'line',\n 'path',\n 'polygon',\n 'polyline',\n 'rect',\n 'text',\n 'use',\n 'textPath',\n 'tspan',\n 'foreignObject',\n 'clipPath'\n];\n\nconst TAGS = [\n ...HTML_TAGS,\n ...SVG_TAGS,\n];\n\n// Sorting, then reversing makes sure longer attributes/elements like\n// `font-weight` are matched fully instead of getting false positives on say `font`\n\nconst MEDIA_FEATURES = [\n 'any-hover',\n 'any-pointer',\n 'aspect-ratio',\n 'color',\n 'color-gamut',\n 'color-index',\n 'device-aspect-ratio',\n 'device-height',\n 'device-width',\n 'display-mode',\n 'forced-colors',\n 'grid',\n 'height',\n 'hover',\n 'inverted-colors',\n 'monochrome',\n 'orientation',\n 'overflow-block',\n 'overflow-inline',\n 'pointer',\n 'prefers-color-scheme',\n 'prefers-contrast',\n 'prefers-reduced-motion',\n 'prefers-reduced-transparency',\n 'resolution',\n 'scan',\n 'scripting',\n 'update',\n 'width',\n // TODO: find a better solution?\n 'min-width',\n 'max-width',\n 'min-height',\n 'max-height'\n].sort().reverse();\n\n// https://developer.mozilla.org/en-US/docs/Web/CSS/Pseudo-classes\nconst PSEUDO_CLASSES = [\n 'active',\n 'any-link',\n 'blank',\n 'checked',\n 'current',\n 'default',\n 'defined',\n 'dir', // dir()\n 'disabled',\n 'drop',\n 'empty',\n 'enabled',\n 'first',\n 'first-child',\n 'first-of-type',\n 'fullscreen',\n 'future',\n 'focus',\n 'focus-visible',\n 'focus-within',\n 'has', // has()\n 'host', // host or host()\n 'host-context', // host-context()\n 'hover',\n 'indeterminate',\n 'in-range',\n 'invalid',\n 'is', // is()\n 'lang', // lang()\n 'last-child',\n 'last-of-type',\n 'left',\n 'link',\n 'local-link',\n 'not', // not()\n 'nth-child', // nth-child()\n 'nth-col', // nth-col()\n 'nth-last-child', // nth-last-child()\n 'nth-last-col', // nth-last-col()\n 'nth-last-of-type', //nth-last-of-type()\n 'nth-of-type', //nth-of-type()\n 'only-child',\n 'only-of-type',\n 'optional',\n 'out-of-range',\n 'past',\n 'placeholder-shown',\n 'read-only',\n 'read-write',\n 'required',\n 'right',\n 'root',\n 'scope',\n 'target',\n 'target-within',\n 'user-invalid',\n 'valid',\n 'visited',\n 'where' // where()\n].sort().reverse();\n\n// https://developer.mozilla.org/en-US/docs/Web/CSS/Pseudo-elements\nconst PSEUDO_ELEMENTS = [\n 'after',\n 'backdrop',\n 'before',\n 'cue',\n 'cue-region',\n 'first-letter',\n 'first-line',\n 'grammar-error',\n 'marker',\n 'part',\n 'placeholder',\n 'selection',\n 'slotted',\n 'spelling-error'\n].sort().reverse();\n\nconst ATTRIBUTES = [\n 'accent-color',\n 'align-content',\n 'align-items',\n 'align-self',\n 'alignment-baseline',\n 'all',\n 'anchor-name',\n 'animation',\n 'animation-composition',\n 'animation-delay',\n 'animation-direction',\n 'animation-duration',\n 'animation-fill-mode',\n 'animation-iteration-count',\n 'animation-name',\n 'animation-play-state',\n 'animation-range',\n 'animation-range-end',\n 'animation-range-start',\n 'animation-timeline',\n 'animation-timing-function',\n 'appearance',\n 'aspect-ratio',\n 'backdrop-filter',\n 'backface-visibility',\n 'background',\n 'background-attachment',\n 'background-blend-mode',\n 'background-clip',\n 'background-color',\n 'background-image',\n 'background-origin',\n 'background-position',\n 'background-position-x',\n 'background-position-y',\n 'background-repeat',\n 'background-size',\n 'baseline-shift',\n 'block-size',\n 'border',\n 'border-block',\n 'border-block-color',\n 'border-block-end',\n 'border-block-end-color',\n 'border-block-end-style',\n 'border-block-end-width',\n 'border-block-start',\n 'border-block-start-color',\n 'border-block-start-style',\n 'border-block-start-width',\n 'border-block-style',\n 'border-block-width',\n 'border-bottom',\n 'border-bottom-color',\n 'border-bottom-left-radius',\n 'border-bottom-right-radius',\n 'border-bottom-style',\n 'border-bottom-width',\n 'border-collapse',\n 'border-color',\n 'border-end-end-radius',\n 'border-end-start-radius',\n 'border-image',\n 'border-image-outset',\n 'border-image-repeat',\n 'border-image-slice',\n 'border-image-source',\n 'border-image-width',\n 'border-inline',\n 'border-inline-color',\n 'border-inline-end',\n 'border-inline-end-color',\n 'border-inline-end-style',\n 'border-inline-end-width',\n 'border-inline-start',\n 'border-inline-start-color',\n 'border-inline-start-style',\n 'border-inline-start-width',\n 'border-inline-style',\n 'border-inline-width',\n 'border-left',\n 'border-left-color',\n 'border-left-style',\n 'border-left-width',\n 'border-radius',\n 'border-right',\n 'border-right-color',\n 'border-right-style',\n 'border-right-width',\n 'border-spacing',\n 'border-start-end-radius',\n 'border-start-start-radius',\n 'border-style',\n 'border-top',\n 'border-top-color',\n 'border-top-left-radius',\n 'border-top-right-radius',\n 'border-top-style',\n 'border-top-width',\n 'border-width',\n 'bottom',\n 'box-align',\n 'box-decoration-break',\n 'box-direction',\n 'box-flex',\n 'box-flex-group',\n 'box-lines',\n 'box-ordinal-group',\n 'box-orient',\n 'box-pack',\n 'box-shadow',\n 'box-sizing',\n 'break-after',\n 'break-before',\n 'break-inside',\n 'caption-side',\n 'caret-color',\n 'clear',\n 'clip',\n 'clip-path',\n 'clip-rule',\n 'color',\n 'color-interpolation',\n 'color-interpolation-filters',\n 'color-profile',\n 'color-rendering',\n 'color-scheme',\n 'column-count',\n 'column-fill',\n 'column-gap',\n 'column-rule',\n 'column-rule-color',\n 'column-rule-style',\n 'column-rule-width',\n 'column-span',\n 'column-width',\n 'columns',\n 'contain',\n 'contain-intrinsic-block-size',\n 'contain-intrinsic-height',\n 'contain-intrinsic-inline-size',\n 'contain-intrinsic-size',\n 'contain-intrinsic-width',\n 'container',\n 'container-name',\n 'container-type',\n 'content',\n 'content-visibility',\n 'counter-increment',\n 'counter-reset',\n 'counter-set',\n 'cue',\n 'cue-after',\n 'cue-before',\n 'cursor',\n 'cx',\n 'cy',\n 'direction',\n 'display',\n 'dominant-baseline',\n 'empty-cells',\n 'enable-background',\n 'field-sizing',\n 'fill',\n 'fill-opacity',\n 'fill-rule',\n 'filter',\n 'flex',\n 'flex-basis',\n 'flex-direction',\n 'flex-flow',\n 'flex-grow',\n 'flex-shrink',\n 'flex-wrap',\n 'float',\n 'flood-color',\n 'flood-opacity',\n 'flow',\n 'font',\n 'font-display',\n 'font-family',\n 'font-feature-settings',\n 'font-kerning',\n 'font-language-override',\n 'font-optical-sizing',\n 'font-palette',\n 'font-size',\n 'font-size-adjust',\n 'font-smooth',\n 'font-smoothing',\n 'font-stretch',\n 'font-style',\n 'font-synthesis',\n 'font-synthesis-position',\n 'font-synthesis-small-caps',\n 'font-synthesis-style',\n 'font-synthesis-weight',\n 'font-variant',\n 'font-variant-alternates',\n 'font-variant-caps',\n 'font-variant-east-asian',\n 'font-variant-emoji',\n 'font-variant-ligatures',\n 'font-variant-numeric',\n 'font-variant-position',\n 'font-variation-settings',\n 'font-weight',\n 'forced-color-adjust',\n 'gap',\n 'glyph-orientation-horizontal',\n 'glyph-orientation-vertical',\n 'grid',\n 'grid-area',\n 'grid-auto-columns',\n 'grid-auto-flow',\n 'grid-auto-rows',\n 'grid-column',\n 'grid-column-end',\n 'grid-column-start',\n 'grid-gap',\n 'grid-row',\n 'grid-row-end',\n 'grid-row-start',\n 'grid-template',\n 'grid-template-areas',\n 'grid-template-columns',\n 'grid-template-rows',\n 'hanging-punctuation',\n 'height',\n 'hyphenate-character',\n 'hyphenate-limit-chars',\n 'hyphens',\n 'icon',\n 'image-orientation',\n 'image-rendering',\n 'image-resolution',\n 'ime-mode',\n 'initial-letter',\n 'initial-letter-align',\n 'inline-size',\n 'inset',\n 'inset-area',\n 'inset-block',\n 'inset-block-end',\n 'inset-block-start',\n 'inset-inline',\n 'inset-inline-end',\n 'inset-inline-start',\n 'isolation',\n 'justify-content',\n 'justify-items',\n 'justify-self',\n 'kerning',\n 'left',\n 'letter-spacing',\n 'lighting-color',\n 'line-break',\n 'line-height',\n 'line-height-step',\n 'list-style',\n 'list-style-image',\n 'list-style-position',\n 'list-style-type',\n 'margin',\n 'margin-block',\n 'margin-block-end',\n 'margin-block-start',\n 'margin-bottom',\n 'margin-inline',\n 'margin-inline-end',\n 'margin-inline-start',\n 'margin-left',\n 'margin-right',\n 'margin-top',\n 'margin-trim',\n 'marker',\n 'marker-end',\n 'marker-mid',\n 'marker-start',\n 'marks',\n 'mask',\n 'mask-border',\n 'mask-border-mode',\n 'mask-border-outset',\n 'mask-border-repeat',\n 'mask-border-slice',\n 'mask-border-source',\n 'mask-border-width',\n 'mask-clip',\n 'mask-composite',\n 'mask-image',\n 'mask-mode',\n 'mask-origin',\n 'mask-position',\n 'mask-repeat',\n 'mask-size',\n 'mask-type',\n 'masonry-auto-flow',\n 'math-depth',\n 'math-shift',\n 'math-style',\n 'max-block-size',\n 'max-height',\n 'max-inline-size',\n 'max-width',\n 'min-block-size',\n 'min-height',\n 'min-inline-size',\n 'min-width',\n 'mix-blend-mode',\n 'nav-down',\n 'nav-index',\n 'nav-left',\n 'nav-right',\n 'nav-up',\n 'none',\n 'normal',\n 'object-fit',\n 'object-position',\n 'offset',\n 'offset-anchor',\n 'offset-distance',\n 'offset-path',\n 'offset-position',\n 'offset-rotate',\n 'opacity',\n 'order',\n 'orphans',\n 'outline',\n 'outline-color',\n 'outline-offset',\n 'outline-style',\n 'outline-width',\n 'overflow',\n 'overflow-anchor',\n 'overflow-block',\n 'overflow-clip-margin',\n 'overflow-inline',\n 'overflow-wrap',\n 'overflow-x',\n 'overflow-y',\n 'overlay',\n 'overscroll-behavior',\n 'overscroll-behavior-block',\n 'overscroll-behavior-inline',\n 'overscroll-behavior-x',\n 'overscroll-behavior-y',\n 'padding',\n 'padding-block',\n 'padding-block-end',\n 'padding-block-start',\n 'padding-bottom',\n 'padding-inline',\n 'padding-inline-end',\n 'padding-inline-start',\n 'padding-left',\n 'padding-right',\n 'padding-top',\n 'page',\n 'page-break-after',\n 'page-break-before',\n 'page-break-inside',\n 'paint-order',\n 'pause',\n 'pause-after',\n 'pause-before',\n 'perspective',\n 'perspective-origin',\n 'place-content',\n 'place-items',\n 'place-self',\n 'pointer-events',\n 'position',\n 'position-anchor',\n 'position-visibility',\n 'print-color-adjust',\n 'quotes',\n 'r',\n 'resize',\n 'rest',\n 'rest-after',\n 'rest-before',\n 'right',\n 'rotate',\n 'row-gap',\n 'ruby-align',\n 'ruby-position',\n 'scale',\n 'scroll-behavior',\n 'scroll-margin',\n 'scroll-margin-block',\n 'scroll-margin-block-end',\n 'scroll-margin-block-start',\n 'scroll-margin-bottom',\n 'scroll-margin-inline',\n 'scroll-margin-inline-end',\n 'scroll-margin-inline-start',\n 'scroll-margin-left',\n 'scroll-margin-right',\n 'scroll-margin-top',\n 'scroll-padding',\n 'scroll-padding-block',\n 'scroll-padding-block-end',\n 'scroll-padding-block-start',\n 'scroll-padding-bottom',\n 'scroll-padding-inline',\n 'scroll-padding-inline-end',\n 'scroll-padding-inline-start',\n 'scroll-padding-left',\n 'scroll-padding-right',\n 'scroll-padding-top',\n 'scroll-snap-align',\n 'scroll-snap-stop',\n 'scroll-snap-type',\n 'scroll-timeline',\n 'scroll-timeline-axis',\n 'scroll-timeline-name',\n 'scrollbar-color',\n 'scrollbar-gutter',\n 'scrollbar-width',\n 'shape-image-threshold',\n 'shape-margin',\n 'shape-outside',\n 'shape-rendering',\n 'speak',\n 'speak-as',\n 'src', // @font-face\n 'stop-color',\n 'stop-opacity',\n 'stroke',\n 'stroke-dasharray',\n 'stroke-dashoffset',\n 'stroke-linecap',\n 'stroke-linejoin',\n 'stroke-miterlimit',\n 'stroke-opacity',\n 'stroke-width',\n 'tab-size',\n 'table-layout',\n 'text-align',\n 'text-align-all',\n 'text-align-last',\n 'text-anchor',\n 'text-combine-upright',\n 'text-decoration',\n 'text-decoration-color',\n 'text-decoration-line',\n 'text-decoration-skip',\n 'text-decoration-skip-ink',\n 'text-decoration-style',\n 'text-decoration-thickness',\n 'text-emphasis',\n 'text-emphasis-color',\n 'text-emphasis-position',\n 'text-emphasis-style',\n 'text-indent',\n 'text-justify',\n 'text-orientation',\n 'text-overflow',\n 'text-rendering',\n 'text-shadow',\n 'text-size-adjust',\n 'text-transform',\n 'text-underline-offset',\n 'text-underline-position',\n 'text-wrap',\n 'text-wrap-mode',\n 'text-wrap-style',\n 'timeline-scope',\n 'top',\n 'touch-action',\n 'transform',\n 'transform-box',\n 'transform-origin',\n 'transform-style',\n 'transition',\n 'transition-behavior',\n 'transition-delay',\n 'transition-duration',\n 'transition-property',\n 'transition-timing-function',\n 'translate',\n 'unicode-bidi',\n 'unicode-range',\n 'user-modify',\n 'user-select',\n 'vector-effect',\n 'vertical-align',\n 'view-timeline',\n 'view-timeline-axis',\n 'view-timeline-inset',\n 'view-timeline-name',\n 'view-transition-name',\n 'visibility',\n 'voice-balance',\n 'voice-duration',\n 'voice-family',\n 'voice-pitch',\n 'voice-range',\n 'voice-rate',\n 'voice-stress',\n 'voice-volume',\n 'white-space',\n 'white-space-collapse',\n 'widows',\n 'width',\n 'will-change',\n 'word-break',\n 'word-spacing',\n 'word-wrap',\n 'writing-mode',\n 'x',\n 'y',\n 'z-index',\n 'zoom'\n].sort().reverse();\n\n/*\nLanguage: SCSS\nDescription: Scss is an extension of the syntax of CSS.\nAuthor: Kurt Emch <kurt@kurtemch.com>\nWebsite: https://sass-lang.com\nCategory: common, css, web\n*/\n\n\n/** @type LanguageFn */\nfunction scss(hljs) {\n const modes = MODES(hljs);\n const PSEUDO_ELEMENTS$1 = PSEUDO_ELEMENTS;\n const PSEUDO_CLASSES$1 = PSEUDO_CLASSES;\n\n const AT_IDENTIFIER = '@[a-z-]+'; // @font-face\n const AT_MODIFIERS = \"and or not only\";\n const IDENT_RE = '[a-zA-Z-][a-zA-Z0-9_-]*';\n const VARIABLE = {\n className: 'variable',\n begin: '(\\\\$' + IDENT_RE + ')\\\\b',\n relevance: 0\n };\n\n return {\n name: 'SCSS',\n case_insensitive: true,\n illegal: '[=/|\\']',\n contains: [\n hljs.C_LINE_COMMENT_MODE,\n hljs.C_BLOCK_COMMENT_MODE,\n // to recognize keyframe 40% etc which are outside the scope of our\n // attribute value mode\n modes.CSS_NUMBER_MODE,\n {\n className: 'selector-id',\n begin: '#[A-Za-z0-9_-]+',\n relevance: 0\n },\n {\n className: 'selector-class',\n begin: '\\\\.[A-Za-z0-9_-]+',\n relevance: 0\n },\n modes.ATTRIBUTE_SELECTOR_MODE,\n {\n className: 'selector-tag',\n begin: '\\\\b(' + TAGS.join('|') + ')\\\\b',\n // was there, before, but why?\n relevance: 0\n },\n {\n className: 'selector-pseudo',\n begin: ':(' + PSEUDO_CLASSES$1.join('|') + ')'\n },\n {\n className: 'selector-pseudo',\n begin: ':(:)?(' + PSEUDO_ELEMENTS$1.join('|') + ')'\n },\n VARIABLE,\n { // pseudo-selector params\n begin: /\\(/,\n end: /\\)/,\n contains: [ modes.CSS_NUMBER_MODE ]\n },\n modes.CSS_VARIABLE,\n {\n className: 'attribute',\n begin: '\\\\b(' + ATTRIBUTES.join('|') + ')\\\\b'\n },\n { begin: '\\\\b(whitespace|wait|w-resize|visible|vertical-text|vertical-ideographic|uppercase|upper-roman|upper-alpha|underline|transparent|top|thin|thick|text|text-top|text-bottom|tb-rl|table-header-group|table-footer-group|sw-resize|super|strict|static|square|solid|small-caps|separate|se-resize|scroll|s-resize|rtl|row-resize|ridge|right|repeat|repeat-y|repeat-x|relative|progress|pointer|overline|outside|outset|oblique|nowrap|not-allowed|normal|none|nw-resize|no-repeat|no-drop|newspaper|ne-resize|n-resize|move|middle|medium|ltr|lr-tb|lowercase|lower-roman|lower-alpha|loose|list-item|line|line-through|line-edge|lighter|left|keep-all|justify|italic|inter-word|inter-ideograph|inside|inset|inline|inline-block|inherit|inactive|ideograph-space|ideograph-parenthesis|ideograph-numeric|ideograph-alpha|horizontal|hidden|help|hand|groove|fixed|ellipsis|e-resize|double|dotted|distribute|distribute-space|distribute-letter|distribute-all-lines|disc|disabled|default|decimal|dashed|crosshair|collapse|col-resize|circle|char|center|capitalize|break-word|break-all|bottom|both|bolder|bold|block|bidi-override|below|baseline|auto|always|all-scroll|absolute|table|table-cell)\\\\b' },\n {\n begin: /:/,\n end: /[;}{]/,\n relevance: 0,\n contains: [\n modes.BLOCK_COMMENT,\n VARIABLE,\n modes.HEXCOLOR,\n modes.CSS_NUMBER_MODE,\n modes.UNICODE_RANGE,\n hljs.QUOTE_STRING_MODE,\n hljs.APOS_STRING_MODE,\n modes.IMPORTANT,\n modes.FUNCTION_DISPATCH\n ]\n },\n // matching these here allows us to treat them more like regular CSS\n // rules so everything between the {} gets regular rule highlighting,\n // which is what we want for page and font-face\n {\n begin: '@(page|font-face)',\n keywords: {\n $pattern: AT_IDENTIFIER,\n keyword: '@page @font-face'\n }\n },\n {\n begin: '@',\n end: '[{;]',\n returnBegin: true,\n keywords: {\n $pattern: /[a-z-]+/,\n keyword: AT_MODIFIERS,\n attribute: MEDIA_FEATURES.join(\" \")\n },\n contains: [\n {\n begin: AT_IDENTIFIER,\n className: \"keyword\"\n },\n {\n begin: /[a-z-]+(?=:)/,\n className: \"attribute\"\n },\n VARIABLE,\n hljs.QUOTE_STRING_MODE,\n hljs.APOS_STRING_MODE,\n modes.HEXCOLOR,\n modes.CSS_NUMBER_MODE\n ]\n },\n modes.FUNCTION_DISPATCH\n ]\n };\n}\n\nmodule.exports = scss;\n","/*\n Language: SQL\n Website: https://en.wikipedia.org/wiki/SQL\n Category: common, database\n */\n\n/*\n\nGoals:\n\nSQL is intended to highlight basic/common SQL keywords and expressions\n\n- If pretty much every single SQL server includes supports, then it's a canidate.\n- It is NOT intended to include tons of vendor specific keywords (Oracle, MySQL,\n PostgreSQL) although the list of data types is purposely a bit more expansive.\n- For more specific SQL grammars please see:\n - PostgreSQL and PL/pgSQL - core\n - T-SQL - https://github.com/highlightjs/highlightjs-tsql\n - sql_more (core)\n\n */\n\nfunction sql(hljs) {\n const regex = hljs.regex;\n const COMMENT_MODE = hljs.COMMENT('--', '$');\n const STRING = {\n scope: 'string',\n variants: [\n {\n begin: /'/,\n end: /'/,\n contains: [ { match: /''/ } ]\n }\n ]\n };\n const QUOTED_IDENTIFIER = {\n begin: /\"/,\n end: /\"/,\n contains: [ { match: /\"\"/ } ]\n };\n\n const LITERALS = [\n \"true\",\n \"false\",\n // Not sure it's correct to call NULL literal, and clauses like IS [NOT] NULL look strange that way.\n // \"null\",\n \"unknown\"\n ];\n\n const MULTI_WORD_TYPES = [\n \"double precision\",\n \"large object\",\n \"with timezone\",\n \"without timezone\"\n ];\n\n const TYPES = [\n 'bigint',\n 'binary',\n 'blob',\n 'boolean',\n 'char',\n 'character',\n 'clob',\n 'date',\n 'dec',\n 'decfloat',\n 'decimal',\n 'float',\n 'int',\n 'integer',\n 'interval',\n 'nchar',\n 'nclob',\n 'national',\n 'numeric',\n 'real',\n 'row',\n 'smallint',\n 'time',\n 'timestamp',\n 'varchar',\n 'varying', // modifier (character varying)\n 'varbinary'\n ];\n\n const NON_RESERVED_WORDS = [\n \"add\",\n \"asc\",\n \"collation\",\n \"desc\",\n \"final\",\n \"first\",\n \"last\",\n \"view\"\n ];\n\n // https://jakewheat.github.io/sql-overview/sql-2016-foundation-grammar.html#reserved-word\n const RESERVED_WORDS = [\n \"abs\",\n \"acos\",\n \"all\",\n \"allocate\",\n \"alter\",\n \"and\",\n \"any\",\n \"are\",\n \"array\",\n \"array_agg\",\n \"array_max_cardinality\",\n \"as\",\n \"asensitive\",\n \"asin\",\n \"asymmetric\",\n \"at\",\n \"atan\",\n \"atomic\",\n \"authorization\",\n \"avg\",\n \"begin\",\n \"begin_frame\",\n \"begin_partition\",\n \"between\",\n \"bigint\",\n \"binary\",\n \"blob\",\n \"boolean\",\n \"both\",\n \"by\",\n \"call\",\n \"called\",\n \"cardinality\",\n \"cascaded\",\n \"case\",\n \"cast\",\n \"ceil\",\n \"ceiling\",\n \"char\",\n \"char_length\",\n \"character\",\n \"character_length\",\n \"check\",\n \"classifier\",\n \"clob\",\n \"close\",\n \"coalesce\",\n \"collate\",\n \"collect\",\n \"column\",\n \"commit\",\n \"condition\",\n \"connect\",\n \"constraint\",\n \"contains\",\n \"convert\",\n \"copy\",\n \"corr\",\n \"corresponding\",\n \"cos\",\n \"cosh\",\n \"count\",\n \"covar_pop\",\n \"covar_samp\",\n \"create\",\n \"cross\",\n \"cube\",\n \"cume_dist\",\n \"current\",\n \"current_catalog\",\n \"current_date\",\n \"current_default_transform_group\",\n \"current_path\",\n \"current_role\",\n \"current_row\",\n \"current_schema\",\n \"current_time\",\n \"current_timestamp\",\n \"current_path\",\n \"current_role\",\n \"current_transform_group_for_type\",\n \"current_user\",\n \"cursor\",\n \"cycle\",\n \"date\",\n \"day\",\n \"deallocate\",\n \"dec\",\n \"decimal\",\n \"decfloat\",\n \"declare\",\n \"default\",\n \"define\",\n \"delete\",\n \"dense_rank\",\n \"deref\",\n \"describe\",\n \"deterministic\",\n \"disconnect\",\n \"distinct\",\n \"double\",\n \"drop\",\n \"dynamic\",\n \"each\",\n \"element\",\n \"else\",\n \"empty\",\n \"end\",\n \"end_frame\",\n \"end_partition\",\n \"end-exec\",\n \"equals\",\n \"escape\",\n \"every\",\n \"except\",\n \"exec\",\n \"execute\",\n \"exists\",\n \"exp\",\n \"external\",\n \"extract\",\n \"false\",\n \"fetch\",\n \"filter\",\n \"first_value\",\n \"float\",\n \"floor\",\n \"for\",\n \"foreign\",\n \"frame_row\",\n \"free\",\n \"from\",\n \"full\",\n \"function\",\n \"fusion\",\n \"get\",\n \"global\",\n \"grant\",\n \"group\",\n \"grouping\",\n \"groups\",\n \"having\",\n \"hold\",\n \"hour\",\n \"identity\",\n \"in\",\n \"indicator\",\n \"initial\",\n \"inner\",\n \"inout\",\n \"insensitive\",\n \"insert\",\n \"int\",\n \"integer\",\n \"intersect\",\n \"intersection\",\n \"interval\",\n \"into\",\n \"is\",\n \"join\",\n \"json_array\",\n \"json_arrayagg\",\n \"json_exists\",\n \"json_object\",\n \"json_objectagg\",\n \"json_query\",\n \"json_table\",\n \"json_table_primitive\",\n \"json_value\",\n \"lag\",\n \"language\",\n \"large\",\n \"last_value\",\n \"lateral\",\n \"lead\",\n \"leading\",\n \"left\",\n \"like\",\n \"like_regex\",\n \"listagg\",\n \"ln\",\n \"local\",\n \"localtime\",\n \"localtimestamp\",\n \"log\",\n \"log10\",\n \"lower\",\n \"match\",\n \"match_number\",\n \"match_recognize\",\n \"matches\",\n \"max\",\n \"member\",\n \"merge\",\n \"method\",\n \"min\",\n \"minute\",\n \"mod\",\n \"modifies\",\n \"module\",\n \"month\",\n \"multiset\",\n \"national\",\n \"natural\",\n \"nchar\",\n \"nclob\",\n \"new\",\n \"no\",\n \"none\",\n \"normalize\",\n \"not\",\n \"nth_value\",\n \"ntile\",\n \"null\",\n \"nullif\",\n \"numeric\",\n \"octet_length\",\n \"occurrences_regex\",\n \"of\",\n \"offset\",\n \"old\",\n \"omit\",\n \"on\",\n \"one\",\n \"only\",\n \"open\",\n \"or\",\n \"order\",\n \"out\",\n \"outer\",\n \"over\",\n \"overlaps\",\n \"overlay\",\n \"parameter\",\n \"partition\",\n \"pattern\",\n \"per\",\n \"percent\",\n \"percent_rank\",\n \"percentile_cont\",\n \"percentile_disc\",\n \"period\",\n \"portion\",\n \"position\",\n \"position_regex\",\n \"power\",\n \"precedes\",\n \"precision\",\n \"prepare\",\n \"primary\",\n \"procedure\",\n \"ptf\",\n \"range\",\n \"rank\",\n \"reads\",\n \"real\",\n \"recursive\",\n \"ref\",\n \"references\",\n \"referencing\",\n \"regr_avgx\",\n \"regr_avgy\",\n \"regr_count\",\n \"regr_intercept\",\n \"regr_r2\",\n \"regr_slope\",\n \"regr_sxx\",\n \"regr_sxy\",\n \"regr_syy\",\n \"release\",\n \"result\",\n \"return\",\n \"returns\",\n \"revoke\",\n \"right\",\n \"rollback\",\n \"rollup\",\n \"row\",\n \"row_number\",\n \"rows\",\n \"running\",\n \"savepoint\",\n \"scope\",\n \"scroll\",\n \"search\",\n \"second\",\n \"seek\",\n \"select\",\n \"sensitive\",\n \"session_user\",\n \"set\",\n \"show\",\n \"similar\",\n \"sin\",\n \"sinh\",\n \"skip\",\n \"smallint\",\n \"some\",\n \"specific\",\n \"specifictype\",\n \"sql\",\n \"sqlexception\",\n \"sqlstate\",\n \"sqlwarning\",\n \"sqrt\",\n \"start\",\n \"static\",\n \"stddev_pop\",\n \"stddev_samp\",\n \"submultiset\",\n \"subset\",\n \"substring\",\n \"substring_regex\",\n \"succeeds\",\n \"sum\",\n \"symmetric\",\n \"system\",\n \"system_time\",\n \"system_user\",\n \"table\",\n \"tablesample\",\n \"tan\",\n \"tanh\",\n \"then\",\n \"time\",\n \"timestamp\",\n \"timezone_hour\",\n \"timezone_minute\",\n \"to\",\n \"trailing\",\n \"translate\",\n \"translate_regex\",\n \"translation\",\n \"treat\",\n \"trigger\",\n \"trim\",\n \"trim_array\",\n \"true\",\n \"truncate\",\n \"uescape\",\n \"union\",\n \"unique\",\n \"unknown\",\n \"unnest\",\n \"update\",\n \"upper\",\n \"user\",\n \"using\",\n \"value\",\n \"values\",\n \"value_of\",\n \"var_pop\",\n \"var_samp\",\n \"varbinary\",\n \"varchar\",\n \"varying\",\n \"versioning\",\n \"when\",\n \"whenever\",\n \"where\",\n \"width_bucket\",\n \"window\",\n \"with\",\n \"within\",\n \"without\",\n \"year\",\n ];\n\n // these are reserved words we have identified to be functions\n // and should only be highlighted in a dispatch-like context\n // ie, array_agg(...), etc.\n const RESERVED_FUNCTIONS = [\n \"abs\",\n \"acos\",\n \"array_agg\",\n \"asin\",\n \"atan\",\n \"avg\",\n \"cast\",\n \"ceil\",\n \"ceiling\",\n \"coalesce\",\n \"corr\",\n \"cos\",\n \"cosh\",\n \"count\",\n \"covar_pop\",\n \"covar_samp\",\n \"cume_dist\",\n \"dense_rank\",\n \"deref\",\n \"element\",\n \"exp\",\n \"extract\",\n \"first_value\",\n \"floor\",\n \"json_array\",\n \"json_arrayagg\",\n \"json_exists\",\n \"json_object\",\n \"json_objectagg\",\n \"json_query\",\n \"json_table\",\n \"json_table_primitive\",\n \"json_value\",\n \"lag\",\n \"last_value\",\n \"lead\",\n \"listagg\",\n \"ln\",\n \"log\",\n \"log10\",\n \"lower\",\n \"max\",\n \"min\",\n \"mod\",\n \"nth_value\",\n \"ntile\",\n \"nullif\",\n \"percent_rank\",\n \"percentile_cont\",\n \"percentile_disc\",\n \"position\",\n \"position_regex\",\n \"power\",\n \"rank\",\n \"regr_avgx\",\n \"regr_avgy\",\n \"regr_count\",\n \"regr_intercept\",\n \"regr_r2\",\n \"regr_slope\",\n \"regr_sxx\",\n \"regr_sxy\",\n \"regr_syy\",\n \"row_number\",\n \"sin\",\n \"sinh\",\n \"sqrt\",\n \"stddev_pop\",\n \"stddev_samp\",\n \"substring\",\n \"substring_regex\",\n \"sum\",\n \"tan\",\n \"tanh\",\n \"translate\",\n \"translate_regex\",\n \"treat\",\n \"trim\",\n \"trim_array\",\n \"unnest\",\n \"upper\",\n \"value_of\",\n \"var_pop\",\n \"var_samp\",\n \"width_bucket\",\n ];\n\n // these functions can\n const POSSIBLE_WITHOUT_PARENS = [\n \"current_catalog\",\n \"current_date\",\n \"current_default_transform_group\",\n \"current_path\",\n \"current_role\",\n \"current_schema\",\n \"current_transform_group_for_type\",\n \"current_user\",\n \"session_user\",\n \"system_time\",\n \"system_user\",\n \"current_time\",\n \"localtime\",\n \"current_timestamp\",\n \"localtimestamp\"\n ];\n\n // those exist to boost relevance making these very\n // \"SQL like\" keyword combos worth +1 extra relevance\n const COMBOS = [\n \"create table\",\n \"insert into\",\n \"primary key\",\n \"foreign key\",\n \"not null\",\n \"alter table\",\n \"add constraint\",\n \"grouping sets\",\n \"on overflow\",\n \"character set\",\n \"respect nulls\",\n \"ignore nulls\",\n \"nulls first\",\n \"nulls last\",\n \"depth first\",\n \"breadth first\"\n ];\n\n const FUNCTIONS = RESERVED_FUNCTIONS;\n\n const KEYWORDS = [\n ...RESERVED_WORDS,\n ...NON_RESERVED_WORDS\n ].filter((keyword) => {\n return !RESERVED_FUNCTIONS.includes(keyword);\n });\n\n const VARIABLE = {\n scope: \"variable\",\n match: /@[a-z0-9][a-z0-9_]*/,\n };\n\n const OPERATOR = {\n scope: \"operator\",\n match: /[-+*/=%^~]|&&?|\\|\\|?|!=?|<(?:=>?|<|>)?|>[>=]?/,\n relevance: 0,\n };\n\n const FUNCTION_CALL = {\n match: regex.concat(/\\b/, regex.either(...FUNCTIONS), /\\s*\\(/),\n relevance: 0,\n keywords: { built_in: FUNCTIONS }\n };\n\n // turns a multi-word keyword combo into a regex that doesn't\n // care about extra whitespace etc.\n // input: \"START QUERY\"\n // output: /\\bSTART\\s+QUERY\\b/\n function kws_to_regex(list) {\n return regex.concat(\n /\\b/,\n regex.either(...list.map((kw) => {\n return kw.replace(/\\s+/, \"\\\\s+\")\n })),\n /\\b/\n )\n }\n\n const MULTI_WORD_KEYWORDS = {\n scope: \"keyword\",\n match: kws_to_regex(COMBOS),\n relevance: 0,\n };\n\n // keywords with less than 3 letters are reduced in relevancy\n function reduceRelevancy(list, {\n exceptions, when\n } = {}) {\n const qualifyFn = when;\n exceptions = exceptions || [];\n return list.map((item) => {\n if (item.match(/\\|\\d+$/) || exceptions.includes(item)) {\n return item;\n } else if (qualifyFn(item)) {\n return `${item}|0`;\n } else {\n return item;\n }\n });\n }\n\n return {\n name: 'SQL',\n case_insensitive: true,\n // does not include {} or HTML tags `</`\n illegal: /[{}]|<\\//,\n keywords: {\n $pattern: /\\b[\\w\\.]+/,\n keyword:\n reduceRelevancy(KEYWORDS, { when: (x) => x.length < 3 }),\n literal: LITERALS,\n type: TYPES,\n built_in: POSSIBLE_WITHOUT_PARENS\n },\n contains: [\n {\n scope: \"type\",\n match: kws_to_regex(MULTI_WORD_TYPES)\n },\n MULTI_WORD_KEYWORDS,\n FUNCTION_CALL,\n VARIABLE,\n STRING,\n QUOTED_IDENTIFIER,\n hljs.C_NUMBER_MODE,\n hljs.C_BLOCK_COMMENT_MODE,\n COMMENT_MODE,\n OPERATOR\n ]\n };\n}\n\nmodule.exports = sql;\n","/*\nLanguage: Python\nDescription: Python is an interpreted, object-oriented, high-level programming language with dynamic semantics.\nWebsite: https://www.python.org\nCategory: common\n*/\n\nfunction python(hljs) {\n const regex = hljs.regex;\n const IDENT_RE = /[\\p{XID_Start}_]\\p{XID_Continue}*/u;\n const RESERVED_WORDS = [\n 'and',\n 'as',\n 'assert',\n 'async',\n 'await',\n 'break',\n 'case',\n 'class',\n 'continue',\n 'def',\n 'del',\n 'elif',\n 'else',\n 'except',\n 'finally',\n 'for',\n 'from',\n 'global',\n 'if',\n 'import',\n 'in',\n 'is',\n 'lambda',\n 'match',\n 'nonlocal|10',\n 'not',\n 'or',\n 'pass',\n 'raise',\n 'return',\n 'try',\n 'while',\n 'with',\n 'yield'\n ];\n\n const BUILT_INS = [\n '__import__',\n 'abs',\n 'all',\n 'any',\n 'ascii',\n 'bin',\n 'bool',\n 'breakpoint',\n 'bytearray',\n 'bytes',\n 'callable',\n 'chr',\n 'classmethod',\n 'compile',\n 'complex',\n 'delattr',\n 'dict',\n 'dir',\n 'divmod',\n 'enumerate',\n 'eval',\n 'exec',\n 'filter',\n 'float',\n 'format',\n 'frozenset',\n 'getattr',\n 'globals',\n 'hasattr',\n 'hash',\n 'help',\n 'hex',\n 'id',\n 'input',\n 'int',\n 'isinstance',\n 'issubclass',\n 'iter',\n 'len',\n 'list',\n 'locals',\n 'map',\n 'max',\n 'memoryview',\n 'min',\n 'next',\n 'object',\n 'oct',\n 'open',\n 'ord',\n 'pow',\n 'print',\n 'property',\n 'range',\n 'repr',\n 'reversed',\n 'round',\n 'set',\n 'setattr',\n 'slice',\n 'sorted',\n 'staticmethod',\n 'str',\n 'sum',\n 'super',\n 'tuple',\n 'type',\n 'vars',\n 'zip'\n ];\n\n const LITERALS = [\n '__debug__',\n 'Ellipsis',\n 'False',\n 'None',\n 'NotImplemented',\n 'True'\n ];\n\n // https://docs.python.org/3/library/typing.html\n // TODO: Could these be supplemented by a CamelCase matcher in certain\n // contexts, leaving these remaining only for relevance hinting?\n const TYPES = [\n \"Any\",\n \"Callable\",\n \"Coroutine\",\n \"Dict\",\n \"List\",\n \"Literal\",\n \"Generic\",\n \"Optional\",\n \"Sequence\",\n \"Set\",\n \"Tuple\",\n \"Type\",\n \"Union\"\n ];\n\n const KEYWORDS = {\n $pattern: /[A-Za-z]\\w+|__\\w+__/,\n keyword: RESERVED_WORDS,\n built_in: BUILT_INS,\n literal: LITERALS,\n type: TYPES\n };\n\n const PROMPT = {\n className: 'meta',\n begin: /^(>>>|\\.\\.\\.) /\n };\n\n const SUBST = {\n className: 'subst',\n begin: /\\{/,\n end: /\\}/,\n keywords: KEYWORDS,\n illegal: /#/\n };\n\n const LITERAL_BRACKET = {\n begin: /\\{\\{/,\n relevance: 0\n };\n\n const STRING = {\n className: 'string',\n contains: [ hljs.BACKSLASH_ESCAPE ],\n variants: [\n {\n begin: /([uU]|[bB]|[rR]|[bB][rR]|[rR][bB])?'''/,\n end: /'''/,\n contains: [\n hljs.BACKSLASH_ESCAPE,\n PROMPT\n ],\n relevance: 10\n },\n {\n begin: /([uU]|[bB]|[rR]|[bB][rR]|[rR][bB])?\"\"\"/,\n end: /\"\"\"/,\n contains: [\n hljs.BACKSLASH_ESCAPE,\n PROMPT\n ],\n relevance: 10\n },\n {\n begin: /([fF][rR]|[rR][fF]|[fF])'''/,\n end: /'''/,\n contains: [\n hljs.BACKSLASH_ESCAPE,\n PROMPT,\n LITERAL_BRACKET,\n SUBST\n ]\n },\n {\n begin: /([fF][rR]|[rR][fF]|[fF])\"\"\"/,\n end: /\"\"\"/,\n contains: [\n hljs.BACKSLASH_ESCAPE,\n PROMPT,\n LITERAL_BRACKET,\n SUBST\n ]\n },\n {\n begin: /([uU]|[rR])'/,\n end: /'/,\n relevance: 10\n },\n {\n begin: /([uU]|[rR])\"/,\n end: /\"/,\n relevance: 10\n },\n {\n begin: /([bB]|[bB][rR]|[rR][bB])'/,\n end: /'/\n },\n {\n begin: /([bB]|[bB][rR]|[rR][bB])\"/,\n end: /\"/\n },\n {\n begin: /([fF][rR]|[rR][fF]|[fF])'/,\n end: /'/,\n contains: [\n hljs.BACKSLASH_ESCAPE,\n LITERAL_BRACKET,\n SUBST\n ]\n },\n {\n begin: /([fF][rR]|[rR][fF]|[fF])\"/,\n end: /\"/,\n contains: [\n hljs.BACKSLASH_ESCAPE,\n LITERAL_BRACKET,\n SUBST\n ]\n },\n hljs.APOS_STRING_MODE,\n hljs.QUOTE_STRING_MODE\n ]\n };\n\n // https://docs.python.org/3.9/reference/lexical_analysis.html#numeric-literals\n const digitpart = '[0-9](_?[0-9])*';\n const pointfloat = `(\\\\b(${digitpart}))?\\\\.(${digitpart})|\\\\b(${digitpart})\\\\.`;\n // Whitespace after a number (or any lexical token) is needed only if its absence\n // would change the tokenization\n // https://docs.python.org/3.9/reference/lexical_analysis.html#whitespace-between-tokens\n // We deviate slightly, requiring a word boundary or a keyword\n // to avoid accidentally recognizing *prefixes* (e.g., `0` in `0x41` or `08` or `0__1`)\n const lookahead = `\\\\b|${RESERVED_WORDS.join('|')}`;\n const NUMBER = {\n className: 'number',\n relevance: 0,\n variants: [\n // exponentfloat, pointfloat\n // https://docs.python.org/3.9/reference/lexical_analysis.html#floating-point-literals\n // optionally imaginary\n // https://docs.python.org/3.9/reference/lexical_analysis.html#imaginary-literals\n // Note: no leading \\b because floats can start with a decimal point\n // and we don't want to mishandle e.g. `fn(.5)`,\n // no trailing \\b for pointfloat because it can end with a decimal point\n // and we don't want to mishandle e.g. `0..hex()`; this should be safe\n // because both MUST contain a decimal point and so cannot be confused with\n // the interior part of an identifier\n {\n begin: `(\\\\b(${digitpart})|(${pointfloat}))[eE][+-]?(${digitpart})[jJ]?(?=${lookahead})`\n },\n {\n begin: `(${pointfloat})[jJ]?`\n },\n\n // decinteger, bininteger, octinteger, hexinteger\n // https://docs.python.org/3.9/reference/lexical_analysis.html#integer-literals\n // optionally \"long\" in Python 2\n // https://docs.python.org/2.7/reference/lexical_analysis.html#integer-and-long-integer-literals\n // decinteger is optionally imaginary\n // https://docs.python.org/3.9/reference/lexical_analysis.html#imaginary-literals\n {\n begin: `\\\\b([1-9](_?[0-9])*|0+(_?0)*)[lLjJ]?(?=${lookahead})`\n },\n {\n begin: `\\\\b0[bB](_?[01])+[lL]?(?=${lookahead})`\n },\n {\n begin: `\\\\b0[oO](_?[0-7])+[lL]?(?=${lookahead})`\n },\n {\n begin: `\\\\b0[xX](_?[0-9a-fA-F])+[lL]?(?=${lookahead})`\n },\n\n // imagnumber (digitpart-based)\n // https://docs.python.org/3.9/reference/lexical_analysis.html#imaginary-literals\n {\n begin: `\\\\b(${digitpart})[jJ](?=${lookahead})`\n }\n ]\n };\n const COMMENT_TYPE = {\n className: \"comment\",\n begin: regex.lookahead(/# type:/),\n end: /$/,\n keywords: KEYWORDS,\n contains: [\n { // prevent keywords from coloring `type`\n begin: /# type:/\n },\n // comment within a datatype comment includes no keywords\n {\n begin: /#/,\n end: /\\b\\B/,\n endsWithParent: true\n }\n ]\n };\n const PARAMS = {\n className: 'params',\n variants: [\n // Exclude params in functions without params\n {\n className: \"\",\n begin: /\\(\\s*\\)/,\n skip: true\n },\n {\n begin: /\\(/,\n end: /\\)/,\n excludeBegin: true,\n excludeEnd: true,\n keywords: KEYWORDS,\n contains: [\n 'self',\n PROMPT,\n NUMBER,\n STRING,\n hljs.HASH_COMMENT_MODE\n ]\n }\n ]\n };\n SUBST.contains = [\n STRING,\n NUMBER,\n PROMPT\n ];\n\n return {\n name: 'Python',\n aliases: [\n 'py',\n 'gyp',\n 'ipython'\n ],\n unicodeRegex: true,\n keywords: KEYWORDS,\n illegal: /(<\\/|\\?)|=>/,\n contains: [\n PROMPT,\n NUMBER,\n {\n // very common convention\n scope: 'variable.language',\n match: /\\bself\\b/\n },\n {\n // eat \"if\" prior to string so that it won't accidentally be\n // labeled as an f-string\n beginKeywords: \"if\",\n relevance: 0\n },\n { match: /\\bor\\b/, scope: \"keyword\" },\n STRING,\n COMMENT_TYPE,\n hljs.HASH_COMMENT_MODE,\n {\n match: [\n /\\bdef/, /\\s+/,\n IDENT_RE,\n ],\n scope: {\n 1: \"keyword\",\n 3: \"title.function\"\n },\n contains: [ PARAMS ]\n },\n {\n variants: [\n {\n match: [\n /\\bclass/, /\\s+/,\n IDENT_RE, /\\s*/,\n /\\(\\s*/, IDENT_RE,/\\s*\\)/\n ],\n },\n {\n match: [\n /\\bclass/, /\\s+/,\n IDENT_RE\n ],\n }\n ],\n scope: {\n 1: \"keyword\",\n 3: \"title.class\",\n 6: \"title.class.inherited\",\n }\n },\n {\n className: 'meta',\n begin: /^[\\t ]*@/,\n end: /(?=#)|$/,\n contains: [\n NUMBER,\n PARAMS,\n STRING\n ]\n }\n ]\n };\n}\n\nmodule.exports = python;\n","/*\nLanguage: Bash\nAuthor: vah <vahtenberg@gmail.com>\nContributrors: Benjamin Pannell <contact@sierrasoftworks.com>\nWebsite: https://www.gnu.org/software/bash/\nCategory: common, scripting\n*/\n\n/** @type LanguageFn */\nfunction bash(hljs) {\n const regex = hljs.regex;\n const VAR = {};\n const BRACED_VAR = {\n begin: /\\$\\{/,\n end: /\\}/,\n contains: [\n \"self\",\n {\n begin: /:-/,\n contains: [ VAR ]\n } // default values\n ]\n };\n Object.assign(VAR, {\n className: 'variable',\n variants: [\n { begin: regex.concat(/\\$[\\w\\d#@][\\w\\d_]*/,\n // negative look-ahead tries to avoid matching patterns that are not\n // Perl at all like $ident$, @ident@, etc.\n `(?![\\\\w\\\\d])(?![$])`) },\n BRACED_VAR\n ]\n });\n\n const SUBST = {\n className: 'subst',\n begin: /\\$\\(/,\n end: /\\)/,\n contains: [ hljs.BACKSLASH_ESCAPE ]\n };\n const COMMENT = hljs.inherit(\n hljs.COMMENT(),\n {\n match: [\n /(^|\\s)/,\n /#.*$/\n ],\n scope: {\n 2: 'comment'\n }\n }\n );\n const HERE_DOC = {\n begin: /<<-?\\s*(?=\\w+)/,\n starts: { contains: [\n hljs.END_SAME_AS_BEGIN({\n begin: /(\\w+)/,\n end: /(\\w+)/,\n className: 'string'\n })\n ] }\n };\n const QUOTE_STRING = {\n className: 'string',\n begin: /\"/,\n end: /\"/,\n contains: [\n hljs.BACKSLASH_ESCAPE,\n VAR,\n SUBST\n ]\n };\n SUBST.contains.push(QUOTE_STRING);\n const ESCAPED_QUOTE = {\n match: /\\\\\"/\n };\n const APOS_STRING = {\n className: 'string',\n begin: /'/,\n end: /'/\n };\n const ESCAPED_APOS = {\n match: /\\\\'/\n };\n const ARITHMETIC = {\n begin: /\\$?\\(\\(/,\n end: /\\)\\)/,\n contains: [\n {\n begin: /\\d+#[0-9a-f]+/,\n className: \"number\"\n },\n hljs.NUMBER_MODE,\n VAR\n ]\n };\n const SH_LIKE_SHELLS = [\n \"fish\",\n \"bash\",\n \"zsh\",\n \"sh\",\n \"csh\",\n \"ksh\",\n \"tcsh\",\n \"dash\",\n \"scsh\",\n ];\n const KNOWN_SHEBANG = hljs.SHEBANG({\n binary: `(${SH_LIKE_SHELLS.join(\"|\")})`,\n relevance: 10\n });\n const FUNCTION = {\n className: 'function',\n begin: /\\w[\\w\\d_]*\\s*\\(\\s*\\)\\s*\\{/,\n returnBegin: true,\n contains: [ hljs.inherit(hljs.TITLE_MODE, { begin: /\\w[\\w\\d_]*/ }) ],\n relevance: 0\n };\n\n const KEYWORDS = [\n \"if\",\n \"then\",\n \"else\",\n \"elif\",\n \"fi\",\n \"time\",\n \"for\",\n \"while\",\n \"until\",\n \"in\",\n \"do\",\n \"done\",\n \"case\",\n \"esac\",\n \"coproc\",\n \"function\",\n \"select\"\n ];\n\n const LITERALS = [\n \"true\",\n \"false\"\n ];\n\n // to consume paths to prevent keyword matches inside them\n const PATH_MODE = { match: /(\\/[a-z._-]+)+/ };\n\n // http://www.gnu.org/software/bash/manual/html_node/Shell-Builtin-Commands.html\n const SHELL_BUILT_INS = [\n \"break\",\n \"cd\",\n \"continue\",\n \"eval\",\n \"exec\",\n \"exit\",\n \"export\",\n \"getopts\",\n \"hash\",\n \"pwd\",\n \"readonly\",\n \"return\",\n \"shift\",\n \"test\",\n \"times\",\n \"trap\",\n \"umask\",\n \"unset\"\n ];\n\n const BASH_BUILT_INS = [\n \"alias\",\n \"bind\",\n \"builtin\",\n \"caller\",\n \"command\",\n \"declare\",\n \"echo\",\n \"enable\",\n \"help\",\n \"let\",\n \"local\",\n \"logout\",\n \"mapfile\",\n \"printf\",\n \"read\",\n \"readarray\",\n \"source\",\n \"sudo\",\n \"type\",\n \"typeset\",\n \"ulimit\",\n \"unalias\"\n ];\n\n const ZSH_BUILT_INS = [\n \"autoload\",\n \"bg\",\n \"bindkey\",\n \"bye\",\n \"cap\",\n \"chdir\",\n \"clone\",\n \"comparguments\",\n \"compcall\",\n \"compctl\",\n \"compdescribe\",\n \"compfiles\",\n \"compgroups\",\n \"compquote\",\n \"comptags\",\n \"comptry\",\n \"compvalues\",\n \"dirs\",\n \"disable\",\n \"disown\",\n \"echotc\",\n \"echoti\",\n \"emulate\",\n \"fc\",\n \"fg\",\n \"float\",\n \"functions\",\n \"getcap\",\n \"getln\",\n \"history\",\n \"integer\",\n \"jobs\",\n \"kill\",\n \"limit\",\n \"log\",\n \"noglob\",\n \"popd\",\n \"print\",\n \"pushd\",\n \"pushln\",\n \"rehash\",\n \"sched\",\n \"setcap\",\n \"setopt\",\n \"stat\",\n \"suspend\",\n \"ttyctl\",\n \"unfunction\",\n \"unhash\",\n \"unlimit\",\n \"unsetopt\",\n \"vared\",\n \"wait\",\n \"whence\",\n \"where\",\n \"which\",\n \"zcompile\",\n \"zformat\",\n \"zftp\",\n \"zle\",\n \"zmodload\",\n \"zparseopts\",\n \"zprof\",\n \"zpty\",\n \"zregexparse\",\n \"zsocket\",\n \"zstyle\",\n \"ztcp\"\n ];\n\n const GNU_CORE_UTILS = [\n \"chcon\",\n \"chgrp\",\n \"chown\",\n \"chmod\",\n \"cp\",\n \"dd\",\n \"df\",\n \"dir\",\n \"dircolors\",\n \"ln\",\n \"ls\",\n \"mkdir\",\n \"mkfifo\",\n \"mknod\",\n \"mktemp\",\n \"mv\",\n \"realpath\",\n \"rm\",\n \"rmdir\",\n \"shred\",\n \"sync\",\n \"touch\",\n \"truncate\",\n \"vdir\",\n \"b2sum\",\n \"base32\",\n \"base64\",\n \"cat\",\n \"cksum\",\n \"comm\",\n \"csplit\",\n \"cut\",\n \"expand\",\n \"fmt\",\n \"fold\",\n \"head\",\n \"join\",\n \"md5sum\",\n \"nl\",\n \"numfmt\",\n \"od\",\n \"paste\",\n \"ptx\",\n \"pr\",\n \"sha1sum\",\n \"sha224sum\",\n \"sha256sum\",\n \"sha384sum\",\n \"sha512sum\",\n \"shuf\",\n \"sort\",\n \"split\",\n \"sum\",\n \"tac\",\n \"tail\",\n \"tr\",\n \"tsort\",\n \"unexpand\",\n \"uniq\",\n \"wc\",\n \"arch\",\n \"basename\",\n \"chroot\",\n \"date\",\n \"dirname\",\n \"du\",\n \"echo\",\n \"env\",\n \"expr\",\n \"factor\",\n // \"false\", // keyword literal already\n \"groups\",\n \"hostid\",\n \"id\",\n \"link\",\n \"logname\",\n \"nice\",\n \"nohup\",\n \"nproc\",\n \"pathchk\",\n \"pinky\",\n \"printenv\",\n \"printf\",\n \"pwd\",\n \"readlink\",\n \"runcon\",\n \"seq\",\n \"sleep\",\n \"stat\",\n \"stdbuf\",\n \"stty\",\n \"tee\",\n \"test\",\n \"timeout\",\n // \"true\", // keyword literal already\n \"tty\",\n \"uname\",\n \"unlink\",\n \"uptime\",\n \"users\",\n \"who\",\n \"whoami\",\n \"yes\"\n ];\n\n return {\n name: 'Bash',\n aliases: [\n 'sh',\n 'zsh'\n ],\n keywords: {\n $pattern: /\\b[a-z][a-z0-9._-]+\\b/,\n keyword: KEYWORDS,\n literal: LITERALS,\n built_in: [\n ...SHELL_BUILT_INS,\n ...BASH_BUILT_INS,\n // Shell modifiers\n \"set\",\n \"shopt\",\n ...ZSH_BUILT_INS,\n ...GNU_CORE_UTILS\n ]\n },\n contains: [\n KNOWN_SHEBANG, // to catch known shells and boost relevancy\n hljs.SHEBANG(), // to catch unknown shells but still highlight the shebang\n FUNCTION,\n ARITHMETIC,\n COMMENT,\n HERE_DOC,\n PATH_MODE,\n QUOTE_STRING,\n ESCAPED_QUOTE,\n APOS_STRING,\n ESCAPED_APOS,\n VAR\n ]\n };\n}\n\nmodule.exports = bash;\n","/*\nLanguage: Shell Session\nRequires: bash.js\nAuthor: TSUYUSATO Kitsune <make.just.on@gmail.com>\nCategory: common\nAudit: 2020\n*/\n\n/** @type LanguageFn */\nfunction shell(hljs) {\n return {\n name: 'Shell Session',\n aliases: [\n 'console',\n 'shellsession'\n ],\n contains: [\n {\n className: 'meta.prompt',\n // We cannot add \\s (spaces) in the regular expression otherwise it will be too broad and produce unexpected result.\n // For instance, in the following example, it would match \"echo /path/to/home >\" as a prompt:\n // echo /path/to/home > t.exe\n begin: /^\\s{0,3}[/~\\w\\d[\\]()@-]*[>%$#][ ]?/,\n starts: {\n end: /[^\\\\](?=\\s*$)/,\n subLanguage: 'bash'\n }\n }\n ]\n };\n}\n\nmodule.exports = shell;\n","/*\nLanguage: Markdown\nRequires: xml.js\nAuthor: John Crepezzi <john.crepezzi@gmail.com>\nWebsite: https://daringfireball.net/projects/markdown/\nCategory: common, markup\n*/\n\nfunction markdown(hljs) {\n const regex = hljs.regex;\n const INLINE_HTML = {\n begin: /<\\/?[A-Za-z_]/,\n end: '>',\n subLanguage: 'xml',\n relevance: 0\n };\n const HORIZONTAL_RULE = {\n begin: '^[-\\\\*]{3,}',\n end: '$'\n };\n const CODE = {\n className: 'code',\n variants: [\n // TODO: fix to allow these to work with sublanguage also\n { begin: '(`{3,})[^`](.|\\\\n)*?\\\\1`*[ ]*' },\n { begin: '(~{3,})[^~](.|\\\\n)*?\\\\1~*[ ]*' },\n // needed to allow markdown as a sublanguage to work\n {\n begin: '```',\n end: '```+[ ]*$'\n },\n {\n begin: '~~~',\n end: '~~~+[ ]*$'\n },\n { begin: '`.+?`' },\n {\n begin: '(?=^( {4}|\\\\t))',\n // use contains to gobble up multiple lines to allow the block to be whatever size\n // but only have a single open/close tag vs one per line\n contains: [\n {\n begin: '^( {4}|\\\\t)',\n end: '(\\\\n)$'\n }\n ],\n relevance: 0\n }\n ]\n };\n const LIST = {\n className: 'bullet',\n begin: '^[ \\t]*([*+-]|(\\\\d+\\\\.))(?=\\\\s+)',\n end: '\\\\s+',\n excludeEnd: true\n };\n const LINK_REFERENCE = {\n begin: /^\\[[^\\n]+\\]:/,\n returnBegin: true,\n contains: [\n {\n className: 'symbol',\n begin: /\\[/,\n end: /\\]/,\n excludeBegin: true,\n excludeEnd: true\n },\n {\n className: 'link',\n begin: /:\\s*/,\n end: /$/,\n excludeBegin: true\n }\n ]\n };\n const URL_SCHEME = /[A-Za-z][A-Za-z0-9+.-]*/;\n const LINK = {\n variants: [\n // too much like nested array access in so many languages\n // to have any real relevance\n {\n begin: /\\[.+?\\]\\[.*?\\]/,\n relevance: 0\n },\n // popular internet URLs\n {\n begin: /\\[.+?\\]\\(((data|javascript|mailto):|(?:http|ftp)s?:\\/\\/).*?\\)/,\n relevance: 2\n },\n {\n begin: regex.concat(/\\[.+?\\]\\(/, URL_SCHEME, /:\\/\\/.*?\\)/),\n relevance: 2\n },\n // relative urls\n {\n begin: /\\[.+?\\]\\([./?&#].*?\\)/,\n relevance: 1\n },\n // whatever else, lower relevance (might not be a link at all)\n {\n begin: /\\[.*?\\]\\(.*?\\)/,\n relevance: 0\n }\n ],\n returnBegin: true,\n contains: [\n {\n // empty strings for alt or link text\n match: /\\[(?=\\])/ },\n {\n className: 'string',\n relevance: 0,\n begin: '\\\\[',\n end: '\\\\]',\n excludeBegin: true,\n returnEnd: true\n },\n {\n className: 'link',\n relevance: 0,\n begin: '\\\\]\\\\(',\n end: '\\\\)',\n excludeBegin: true,\n excludeEnd: true\n },\n {\n className: 'symbol',\n relevance: 0,\n begin: '\\\\]\\\\[',\n end: '\\\\]',\n excludeBegin: true,\n excludeEnd: true\n }\n ]\n };\n const BOLD = {\n className: 'strong',\n contains: [], // defined later\n variants: [\n {\n begin: /_{2}(?!\\s)/,\n end: /_{2}/\n },\n {\n begin: /\\*{2}(?!\\s)/,\n end: /\\*{2}/\n }\n ]\n };\n const ITALIC = {\n className: 'emphasis',\n contains: [], // defined later\n variants: [\n {\n begin: /\\*(?![*\\s])/,\n end: /\\*/\n },\n {\n begin: /_(?![_\\s])/,\n end: /_/,\n relevance: 0\n }\n ]\n };\n\n // 3 level deep nesting is not allowed because it would create confusion\n // in cases like `***testing***` because where we don't know if the last\n // `***` is starting a new bold/italic or finishing the last one\n const BOLD_WITHOUT_ITALIC = hljs.inherit(BOLD, { contains: [] });\n const ITALIC_WITHOUT_BOLD = hljs.inherit(ITALIC, { contains: [] });\n BOLD.contains.push(ITALIC_WITHOUT_BOLD);\n ITALIC.contains.push(BOLD_WITHOUT_ITALIC);\n\n let CONTAINABLE = [\n INLINE_HTML,\n LINK\n ];\n\n [\n BOLD,\n ITALIC,\n BOLD_WITHOUT_ITALIC,\n ITALIC_WITHOUT_BOLD\n ].forEach(m => {\n m.contains = m.contains.concat(CONTAINABLE);\n });\n\n CONTAINABLE = CONTAINABLE.concat(BOLD, ITALIC);\n\n const HEADER = {\n className: 'section',\n variants: [\n {\n begin: '^#{1,6}',\n end: '$',\n contains: CONTAINABLE\n },\n {\n begin: '(?=^.+?\\\\n[=-]{2,}$)',\n contains: [\n { begin: '^[=-]*$' },\n {\n begin: '^',\n end: \"\\\\n\",\n contains: CONTAINABLE\n }\n ]\n }\n ]\n };\n\n const BLOCKQUOTE = {\n className: 'quote',\n begin: '^>\\\\s+',\n contains: CONTAINABLE,\n end: '$'\n };\n\n const ENTITY = {\n //https://spec.commonmark.org/0.31.2/#entity-references\n scope: 'literal',\n match: /&([a-zA-Z0-9]+|#[0-9]{1,7}|#[Xx][0-9a-fA-F]{1,6});/\n };\n\n return {\n name: 'Markdown',\n aliases: [\n 'md',\n 'mkdown',\n 'mkd'\n ],\n contains: [\n HEADER,\n INLINE_HTML,\n LIST,\n BOLD,\n ITALIC,\n BLOCKQUOTE,\n CODE,\n HORIZONTAL_RULE,\n LINK,\n LINK_REFERENCE,\n ENTITY\n ]\n };\n}\n\nmodule.exports = markdown;\n","/*\nLanguage: Plain text\nAuthor: Egor Rogov (e.rogov@postgrespro.ru)\nDescription: Plain text without any highlighting.\nCategory: common\n*/\n\nfunction plaintext(hljs) {\n return {\n name: 'Plain text',\n aliases: [\n 'text',\n 'txt'\n ],\n disableAutodetect: true\n };\n}\n\nmodule.exports = plaintext;\n","/*\nLanguage: C\nCategory: common, system\nWebsite: https://en.wikipedia.org/wiki/C_(programming_language)\n*/\n\n/** @type LanguageFn */\nfunction c(hljs) {\n const regex = hljs.regex;\n // added for historic reasons because `hljs.C_LINE_COMMENT_MODE` does\n // not include such support nor can we be sure all the grammars depending\n // on it would desire this behavior\n const C_LINE_COMMENT_MODE = hljs.COMMENT('//', '$', { contains: [ { begin: /\\\\\\n/ } ] });\n const DECLTYPE_AUTO_RE = 'decltype\\\\(auto\\\\)';\n const NAMESPACE_RE = '[a-zA-Z_]\\\\w*::';\n const TEMPLATE_ARGUMENT_RE = '<[^<>]+>';\n const FUNCTION_TYPE_RE = '('\n + DECLTYPE_AUTO_RE + '|'\n + regex.optional(NAMESPACE_RE)\n + '[a-zA-Z_]\\\\w*' + regex.optional(TEMPLATE_ARGUMENT_RE)\n + ')';\n\n\n const TYPES = {\n className: 'type',\n variants: [\n { begin: '\\\\b[a-z\\\\d_]*_t\\\\b' },\n { match: /\\batomic_[a-z]{3,6}\\b/ }\n ]\n\n };\n\n // https://en.cppreference.com/w/cpp/language/escape\n // \\\\ \\x \\xFF \\u2837 \\u00323747 \\374\n const CHARACTER_ESCAPES = '\\\\\\\\(x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4,8}|[0-7]{3}|\\\\S)';\n const STRINGS = {\n className: 'string',\n variants: [\n {\n begin: '(u8?|U|L)?\"',\n end: '\"',\n illegal: '\\\\n',\n contains: [ hljs.BACKSLASH_ESCAPE ]\n },\n {\n begin: '(u8?|U|L)?\\'(' + CHARACTER_ESCAPES + \"|.)\",\n end: '\\'',\n illegal: '.'\n },\n hljs.END_SAME_AS_BEGIN({\n begin: /(?:u8?|U|L)?R\"([^()\\\\ ]{0,16})\\(/,\n end: /\\)([^()\\\\ ]{0,16})\"/\n })\n ]\n };\n\n const NUMBERS = {\n className: 'number',\n variants: [\n { match: /\\b(0b[01']+)/ }, \n { match: /(-?)\\b([\\d']+(\\.[\\d']*)?|\\.[\\d']+)((ll|LL|l|L)(u|U)?|(u|U)(ll|LL|l|L)?|f|F|b|B)/ }, \n { match: /(-?)\\b(0[xX][a-fA-F0-9]+(?:'[a-fA-F0-9]+)*(?:\\.[a-fA-F0-9]*(?:'[a-fA-F0-9]*)*)?(?:[pP][-+]?[0-9]+)?(l|L)?(u|U)?)/ }, \n { match: /(-?)\\b\\d+(?:'\\d+)*(?:\\.\\d*(?:'\\d*)*)?(?:[eE][-+]?\\d+)?/ } \n ],\n relevance: 0\n }; \n \n const PREPROCESSOR = {\n className: 'meta',\n begin: /#\\s*[a-z]+\\b/,\n end: /$/,\n keywords: { keyword:\n 'if else elif endif define undef warning error line '\n + 'pragma _Pragma ifdef ifndef elifdef elifndef include' },\n contains: [\n {\n begin: /\\\\\\n/,\n relevance: 0\n },\n hljs.inherit(STRINGS, { className: 'string' }),\n {\n className: 'string',\n begin: /<.*?>/\n },\n C_LINE_COMMENT_MODE,\n hljs.C_BLOCK_COMMENT_MODE\n ]\n };\n\n const TITLE_MODE = {\n className: 'title',\n begin: regex.optional(NAMESPACE_RE) + hljs.IDENT_RE,\n relevance: 0\n };\n\n const FUNCTION_TITLE = regex.optional(NAMESPACE_RE) + hljs.IDENT_RE + '\\\\s*\\\\(';\n\n const C_KEYWORDS = [\n \"asm\",\n \"auto\",\n \"break\",\n \"case\",\n \"continue\",\n \"default\",\n \"do\",\n \"else\",\n \"enum\",\n \"extern\",\n \"for\",\n \"fortran\",\n \"goto\",\n \"if\",\n \"inline\",\n \"register\",\n \"restrict\",\n \"return\",\n \"sizeof\",\n \"typeof\",\n \"typeof_unqual\",\n \"struct\",\n \"switch\",\n \"typedef\",\n \"union\",\n \"volatile\",\n \"while\",\n \"_Alignas\",\n \"_Alignof\",\n \"_Atomic\",\n \"_Generic\",\n \"_Noreturn\",\n \"_Static_assert\",\n \"_Thread_local\",\n // aliases\n \"alignas\",\n \"alignof\",\n \"noreturn\",\n \"static_assert\",\n \"thread_local\",\n // not a C keyword but is, for all intents and purposes, treated exactly like one.\n \"_Pragma\"\n ];\n\n const C_TYPES = [\n \"float\",\n \"double\",\n \"signed\",\n \"unsigned\",\n \"int\",\n \"short\",\n \"long\",\n \"char\",\n \"void\",\n \"_Bool\",\n \"_BitInt\",\n \"_Complex\",\n \"_Imaginary\",\n \"_Decimal32\",\n \"_Decimal64\",\n \"_Decimal96\",\n \"_Decimal128\",\n \"_Decimal64x\",\n \"_Decimal128x\",\n \"_Float16\",\n \"_Float32\",\n \"_Float64\",\n \"_Float128\",\n \"_Float32x\",\n \"_Float64x\",\n \"_Float128x\",\n // modifiers\n \"const\",\n \"static\",\n \"constexpr\",\n // aliases\n \"complex\",\n \"bool\",\n \"imaginary\"\n ];\n\n const KEYWORDS = {\n keyword: C_KEYWORDS,\n type: C_TYPES,\n literal: 'true false NULL',\n // TODO: apply hinting work similar to what was done in cpp.js\n built_in: 'std string wstring cin cout cerr clog stdin stdout stderr stringstream istringstream ostringstream '\n + 'auto_ptr deque list queue stack vector map set pair bitset multiset multimap unordered_set '\n + 'unordered_map unordered_multiset unordered_multimap priority_queue make_pair array shared_ptr abort terminate abs acos '\n + 'asin atan2 atan calloc ceil cosh cos exit exp fabs floor fmod fprintf fputs free frexp '\n + 'fscanf future isalnum isalpha iscntrl isdigit isgraph islower isprint ispunct isspace isupper '\n + 'isxdigit tolower toupper labs ldexp log10 log malloc realloc memchr memcmp memcpy memset modf pow '\n + 'printf putchar puts scanf sinh sin snprintf sprintf sqrt sscanf strcat strchr strcmp '\n + 'strcpy strcspn strlen strncat strncmp strncpy strpbrk strrchr strspn strstr tanh tan '\n + 'vfprintf vprintf vsprintf endl initializer_list unique_ptr',\n };\n\n const EXPRESSION_CONTAINS = [\n PREPROCESSOR,\n TYPES,\n C_LINE_COMMENT_MODE,\n hljs.C_BLOCK_COMMENT_MODE,\n NUMBERS,\n STRINGS\n ];\n\n const EXPRESSION_CONTEXT = {\n // This mode covers expression context where we can't expect a function\n // definition and shouldn't highlight anything that looks like one:\n // `return some()`, `else if()`, `(x*sum(1, 2))`\n variants: [\n {\n begin: /=/,\n end: /;/\n },\n {\n begin: /\\(/,\n end: /\\)/\n },\n {\n beginKeywords: 'new throw return else',\n end: /;/\n }\n ],\n keywords: KEYWORDS,\n contains: EXPRESSION_CONTAINS.concat([\n {\n begin: /\\(/,\n end: /\\)/,\n keywords: KEYWORDS,\n contains: EXPRESSION_CONTAINS.concat([ 'self' ]),\n relevance: 0\n }\n ]),\n relevance: 0\n };\n\n const FUNCTION_DECLARATION = {\n begin: '(' + FUNCTION_TYPE_RE + '[\\\\*&\\\\s]+)+' + FUNCTION_TITLE,\n returnBegin: true,\n end: /[{;=]/,\n excludeEnd: true,\n keywords: KEYWORDS,\n illegal: /[^\\w\\s\\*&:<>.]/,\n contains: [\n { // to prevent it from being confused as the function title\n begin: DECLTYPE_AUTO_RE,\n keywords: KEYWORDS,\n relevance: 0\n },\n {\n begin: FUNCTION_TITLE,\n returnBegin: true,\n contains: [ hljs.inherit(TITLE_MODE, { className: \"title.function\" }) ],\n relevance: 0\n },\n // allow for multiple declarations, e.g.:\n // extern void f(int), g(char);\n {\n relevance: 0,\n match: /,/\n },\n {\n className: 'params',\n begin: /\\(/,\n end: /\\)/,\n keywords: KEYWORDS,\n relevance: 0,\n contains: [\n C_LINE_COMMENT_MODE,\n hljs.C_BLOCK_COMMENT_MODE,\n STRINGS,\n NUMBERS,\n TYPES,\n // Count matching parentheses.\n {\n begin: /\\(/,\n end: /\\)/,\n keywords: KEYWORDS,\n relevance: 0,\n contains: [\n 'self',\n C_LINE_COMMENT_MODE,\n hljs.C_BLOCK_COMMENT_MODE,\n STRINGS,\n NUMBERS,\n TYPES\n ]\n }\n ]\n },\n TYPES,\n C_LINE_COMMENT_MODE,\n hljs.C_BLOCK_COMMENT_MODE,\n PREPROCESSOR\n ]\n };\n\n return {\n name: \"C\",\n aliases: [ 'h' ],\n keywords: KEYWORDS,\n // Until differentiations are added between `c` and `cpp`, `c` will\n // not be auto-detected to avoid auto-detect conflicts between C and C++\n disableAutodetect: true,\n illegal: '</',\n contains: [].concat(\n EXPRESSION_CONTEXT,\n FUNCTION_DECLARATION,\n EXPRESSION_CONTAINS,\n [\n PREPROCESSOR,\n {\n begin: hljs.IDENT_RE + '::',\n keywords: KEYWORDS\n },\n {\n className: 'class',\n beginKeywords: 'enum class struct union',\n end: /[{;:<>=]/,\n contains: [\n { beginKeywords: \"final class struct\" },\n hljs.TITLE_MODE\n ]\n }\n ]),\n exports: {\n preprocessor: PREPROCESSOR,\n strings: STRINGS,\n keywords: KEYWORDS\n }\n };\n}\n\nmodule.exports = c;\n","/*\nLanguage: C++\nCategory: common, system\nWebsite: https://isocpp.org\n*/\n\n/** @type LanguageFn */\nfunction cpp(hljs) {\n const regex = hljs.regex;\n // added for historic reasons because `hljs.C_LINE_COMMENT_MODE` does\n // not include such support nor can we be sure all the grammars depending\n // on it would desire this behavior\n const C_LINE_COMMENT_MODE = hljs.COMMENT('//', '$', { contains: [ { begin: /\\\\\\n/ } ] });\n const DECLTYPE_AUTO_RE = 'decltype\\\\(auto\\\\)';\n const NAMESPACE_RE = '[a-zA-Z_]\\\\w*::';\n const TEMPLATE_ARGUMENT_RE = '<[^<>]+>';\n const FUNCTION_TYPE_RE = '(?!struct)('\n + DECLTYPE_AUTO_RE + '|'\n + regex.optional(NAMESPACE_RE)\n + '[a-zA-Z_]\\\\w*' + regex.optional(TEMPLATE_ARGUMENT_RE)\n + ')';\n\n const CPP_PRIMITIVE_TYPES = {\n className: 'type',\n begin: '\\\\b[a-z\\\\d_]*_t\\\\b'\n };\n\n // https://en.cppreference.com/w/cpp/language/escape\n // \\\\ \\x \\xFF \\u2837 \\u00323747 \\374\n const CHARACTER_ESCAPES = '\\\\\\\\(x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4,8}|[0-7]{3}|\\\\S)';\n const STRINGS = {\n className: 'string',\n variants: [\n {\n begin: '(u8?|U|L)?\"',\n end: '\"',\n illegal: '\\\\n',\n contains: [ hljs.BACKSLASH_ESCAPE ]\n },\n {\n begin: '(u8?|U|L)?\\'(' + CHARACTER_ESCAPES + '|.)',\n end: '\\'',\n illegal: '.'\n },\n hljs.END_SAME_AS_BEGIN({\n begin: /(?:u8?|U|L)?R\"([^()\\\\ ]{0,16})\\(/,\n end: /\\)([^()\\\\ ]{0,16})\"/\n })\n ]\n };\n\n const NUMBERS = {\n className: 'number',\n variants: [\n // Floating-point literal.\n { begin:\n \"[+-]?(?:\" // Leading sign.\n // Decimal.\n + \"(?:\"\n +\"[0-9](?:'?[0-9])*\\\\.(?:[0-9](?:'?[0-9])*)?\"\n + \"|\\\\.[0-9](?:'?[0-9])*\"\n + \")(?:[Ee][+-]?[0-9](?:'?[0-9])*)?\"\n + \"|[0-9](?:'?[0-9])*[Ee][+-]?[0-9](?:'?[0-9])*\"\n // Hexadecimal.\n + \"|0[Xx](?:\"\n +\"[0-9A-Fa-f](?:'?[0-9A-Fa-f])*(?:\\\\.(?:[0-9A-Fa-f](?:'?[0-9A-Fa-f])*)?)?\"\n + \"|\\\\.[0-9A-Fa-f](?:'?[0-9A-Fa-f])*\"\n + \")[Pp][+-]?[0-9](?:'?[0-9])*\"\n + \")(?:\" // Literal suffixes.\n + \"[Ff](?:16|32|64|128)?\"\n + \"|(BF|bf)16\"\n + \"|[Ll]\"\n + \"|\" // Literal suffix is optional.\n + \")\"\n },\n // Integer literal.\n { begin:\n \"[+-]?\\\\b(?:\" // Leading sign.\n + \"0[Bb][01](?:'?[01])*\" // Binary.\n + \"|0[Xx][0-9A-Fa-f](?:'?[0-9A-Fa-f])*\" // Hexadecimal.\n + \"|0(?:'?[0-7])*\" // Octal or just a lone zero.\n + \"|[1-9](?:'?[0-9])*\" // Decimal.\n + \")(?:\" // Literal suffixes.\n + \"[Uu](?:LL?|ll?)\"\n + \"|[Uu][Zz]?\"\n + \"|(?:LL?|ll?)[Uu]?\"\n + \"|[Zz][Uu]\"\n + \"|\" // Literal suffix is optional.\n + \")\"\n // Note: there are user-defined literal suffixes too, but perhaps having the custom suffix not part of the\n // literal highlight actually makes it stand out more.\n }\n ],\n relevance: 0\n };\n\n const PREPROCESSOR = {\n className: 'meta',\n begin: /#\\s*[a-z]+\\b/,\n end: /$/,\n keywords: { keyword:\n 'if else elif endif define undef warning error line '\n + 'pragma _Pragma ifdef ifndef include' },\n contains: [\n {\n begin: /\\\\\\n/,\n relevance: 0\n },\n hljs.inherit(STRINGS, { className: 'string' }),\n {\n className: 'string',\n begin: /<.*?>/\n },\n C_LINE_COMMENT_MODE,\n hljs.C_BLOCK_COMMENT_MODE\n ]\n };\n\n const TITLE_MODE = {\n className: 'title',\n begin: regex.optional(NAMESPACE_RE) + hljs.IDENT_RE,\n relevance: 0\n };\n\n const FUNCTION_TITLE = regex.optional(NAMESPACE_RE) + hljs.IDENT_RE + '\\\\s*\\\\(';\n\n // https://en.cppreference.com/w/cpp/keyword\n const RESERVED_KEYWORDS = [\n 'alignas',\n 'alignof',\n 'and',\n 'and_eq',\n 'asm',\n 'atomic_cancel',\n 'atomic_commit',\n 'atomic_noexcept',\n 'auto',\n 'bitand',\n 'bitor',\n 'break',\n 'case',\n 'catch',\n 'class',\n 'co_await',\n 'co_return',\n 'co_yield',\n 'compl',\n 'concept',\n 'const_cast|10',\n 'consteval',\n 'constexpr',\n 'constinit',\n 'continue',\n 'decltype',\n 'default',\n 'delete',\n 'do',\n 'dynamic_cast|10',\n 'else',\n 'enum',\n 'explicit',\n 'export',\n 'extern',\n 'false',\n 'final',\n 'for',\n 'friend',\n 'goto',\n 'if',\n 'import',\n 'inline',\n 'module',\n 'mutable',\n 'namespace',\n 'new',\n 'noexcept',\n 'not',\n 'not_eq',\n 'nullptr',\n 'operator',\n 'or',\n 'or_eq',\n 'override',\n 'private',\n 'protected',\n 'public',\n 'reflexpr',\n 'register',\n 'reinterpret_cast|10',\n 'requires',\n 'return',\n 'sizeof',\n 'static_assert',\n 'static_cast|10',\n 'struct',\n 'switch',\n 'synchronized',\n 'template',\n 'this',\n 'thread_local',\n 'throw',\n 'transaction_safe',\n 'transaction_safe_dynamic',\n 'true',\n 'try',\n 'typedef',\n 'typeid',\n 'typename',\n 'union',\n 'using',\n 'virtual',\n 'volatile',\n 'while',\n 'xor',\n 'xor_eq'\n ];\n\n // https://en.cppreference.com/w/cpp/keyword\n const RESERVED_TYPES = [\n 'bool',\n 'char',\n 'char16_t',\n 'char32_t',\n 'char8_t',\n 'double',\n 'float',\n 'int',\n 'long',\n 'short',\n 'void',\n 'wchar_t',\n 'unsigned',\n 'signed',\n 'const',\n 'static'\n ];\n\n const TYPE_HINTS = [\n 'any',\n 'auto_ptr',\n 'barrier',\n 'binary_semaphore',\n 'bitset',\n 'complex',\n 'condition_variable',\n 'condition_variable_any',\n 'counting_semaphore',\n 'deque',\n 'false_type',\n 'flat_map',\n 'flat_set',\n 'future',\n 'imaginary',\n 'initializer_list',\n 'istringstream',\n 'jthread',\n 'latch',\n 'lock_guard',\n 'multimap',\n 'multiset',\n 'mutex',\n 'optional',\n 'ostringstream',\n 'packaged_task',\n 'pair',\n 'promise',\n 'priority_queue',\n 'queue',\n 'recursive_mutex',\n 'recursive_timed_mutex',\n 'scoped_lock',\n 'set',\n 'shared_future',\n 'shared_lock',\n 'shared_mutex',\n 'shared_timed_mutex',\n 'shared_ptr',\n 'stack',\n 'string_view',\n 'stringstream',\n 'timed_mutex',\n 'thread',\n 'true_type',\n 'tuple',\n 'unique_lock',\n 'unique_ptr',\n 'unordered_map',\n 'unordered_multimap',\n 'unordered_multiset',\n 'unordered_set',\n 'variant',\n 'vector',\n 'weak_ptr',\n 'wstring',\n 'wstring_view'\n ];\n\n const FUNCTION_HINTS = [\n 'abort',\n 'abs',\n 'acos',\n 'apply',\n 'as_const',\n 'asin',\n 'atan',\n 'atan2',\n 'calloc',\n 'ceil',\n 'cerr',\n 'cin',\n 'clog',\n 'cos',\n 'cosh',\n 'cout',\n 'declval',\n 'endl',\n 'exchange',\n 'exit',\n 'exp',\n 'fabs',\n 'floor',\n 'fmod',\n 'forward',\n 'fprintf',\n 'fputs',\n 'free',\n 'frexp',\n 'fscanf',\n 'future',\n 'invoke',\n 'isalnum',\n 'isalpha',\n 'iscntrl',\n 'isdigit',\n 'isgraph',\n 'islower',\n 'isprint',\n 'ispunct',\n 'isspace',\n 'isupper',\n 'isxdigit',\n 'labs',\n 'launder',\n 'ldexp',\n 'log',\n 'log10',\n 'make_pair',\n 'make_shared',\n 'make_shared_for_overwrite',\n 'make_tuple',\n 'make_unique',\n 'malloc',\n 'memchr',\n 'memcmp',\n 'memcpy',\n 'memset',\n 'modf',\n 'move',\n 'pow',\n 'printf',\n 'putchar',\n 'puts',\n 'realloc',\n 'scanf',\n 'sin',\n 'sinh',\n 'snprintf',\n 'sprintf',\n 'sqrt',\n 'sscanf',\n 'std',\n 'stderr',\n 'stdin',\n 'stdout',\n 'strcat',\n 'strchr',\n 'strcmp',\n 'strcpy',\n 'strcspn',\n 'strlen',\n 'strncat',\n 'strncmp',\n 'strncpy',\n 'strpbrk',\n 'strrchr',\n 'strspn',\n 'strstr',\n 'swap',\n 'tan',\n 'tanh',\n 'terminate',\n 'to_underlying',\n 'tolower',\n 'toupper',\n 'vfprintf',\n 'visit',\n 'vprintf',\n 'vsprintf'\n ];\n\n const LITERALS = [\n 'NULL',\n 'false',\n 'nullopt',\n 'nullptr',\n 'true'\n ];\n\n // https://en.cppreference.com/w/cpp/keyword\n const BUILT_IN = [ '_Pragma' ];\n\n const CPP_KEYWORDS = {\n type: RESERVED_TYPES,\n keyword: RESERVED_KEYWORDS,\n literal: LITERALS,\n built_in: BUILT_IN,\n _type_hints: TYPE_HINTS\n };\n\n const FUNCTION_DISPATCH = {\n className: 'function.dispatch',\n relevance: 0,\n keywords: {\n // Only for relevance, not highlighting.\n _hint: FUNCTION_HINTS },\n begin: regex.concat(\n /\\b/,\n `(?!${RESERVED_KEYWORDS.join('|')})`,\n hljs.IDENT_RE,\n regex.lookahead(/(<[^<>]+>|)\\s*\\(/))\n };\n\n const EXPRESSION_CONTAINS = [\n FUNCTION_DISPATCH,\n PREPROCESSOR,\n CPP_PRIMITIVE_TYPES,\n C_LINE_COMMENT_MODE,\n hljs.C_BLOCK_COMMENT_MODE,\n NUMBERS,\n STRINGS\n ];\n\n const EXPRESSION_CONTEXT = {\n // This mode covers expression context where we can't expect a function\n // definition and shouldn't highlight anything that looks like one:\n // `return some()`, `else if()`, `(x*sum(1, 2))`\n variants: [\n {\n begin: /=/,\n end: /;/\n },\n {\n begin: /\\(/,\n end: /\\)/\n },\n {\n beginKeywords: 'new throw return else',\n end: /;/\n }\n ],\n keywords: CPP_KEYWORDS,\n contains: EXPRESSION_CONTAINS.concat([\n {\n begin: /\\(/,\n end: /\\)/,\n keywords: CPP_KEYWORDS,\n contains: EXPRESSION_CONTAINS.concat([ 'self' ]),\n relevance: 0\n }\n ]),\n relevance: 0\n };\n\n const FUNCTION_DECLARATION = {\n className: 'function',\n begin: '(' + FUNCTION_TYPE_RE + '[\\\\*&\\\\s]+)+' + FUNCTION_TITLE,\n returnBegin: true,\n end: /[{;=]/,\n excludeEnd: true,\n keywords: CPP_KEYWORDS,\n illegal: /[^\\w\\s\\*&:<>.]/,\n contains: [\n { // to prevent it from being confused as the function title\n begin: DECLTYPE_AUTO_RE,\n keywords: CPP_KEYWORDS,\n relevance: 0\n },\n {\n begin: FUNCTION_TITLE,\n returnBegin: true,\n contains: [ TITLE_MODE ],\n relevance: 0\n },\n // needed because we do not have look-behind on the below rule\n // to prevent it from grabbing the final : in a :: pair\n {\n begin: /::/,\n relevance: 0\n },\n // initializers\n {\n begin: /:/,\n endsWithParent: true,\n contains: [\n STRINGS,\n NUMBERS\n ]\n },\n // allow for multiple declarations, e.g.:\n // extern void f(int), g(char);\n {\n relevance: 0,\n match: /,/\n },\n {\n className: 'params',\n begin: /\\(/,\n end: /\\)/,\n keywords: CPP_KEYWORDS,\n relevance: 0,\n contains: [\n C_LINE_COMMENT_MODE,\n hljs.C_BLOCK_COMMENT_MODE,\n STRINGS,\n NUMBERS,\n CPP_PRIMITIVE_TYPES,\n // Count matching parentheses.\n {\n begin: /\\(/,\n end: /\\)/,\n keywords: CPP_KEYWORDS,\n relevance: 0,\n contains: [\n 'self',\n C_LINE_COMMENT_MODE,\n hljs.C_BLOCK_COMMENT_MODE,\n STRINGS,\n NUMBERS,\n CPP_PRIMITIVE_TYPES\n ]\n }\n ]\n },\n CPP_PRIMITIVE_TYPES,\n C_LINE_COMMENT_MODE,\n hljs.C_BLOCK_COMMENT_MODE,\n PREPROCESSOR\n ]\n };\n\n return {\n name: 'C++',\n aliases: [\n 'cc',\n 'c++',\n 'h++',\n 'hpp',\n 'hh',\n 'hxx',\n 'cxx'\n ],\n keywords: CPP_KEYWORDS,\n illegal: '</',\n classNameAliases: { 'function.dispatch': 'built_in' },\n contains: [].concat(\n EXPRESSION_CONTEXT,\n FUNCTION_DECLARATION,\n FUNCTION_DISPATCH,\n EXPRESSION_CONTAINS,\n [\n PREPROCESSOR,\n { // containers: ie, `vector <int> rooms (9);`\n begin: '\\\\b(deque|list|queue|priority_queue|pair|stack|vector|map|set|bitset|multiset|multimap|unordered_map|unordered_set|unordered_multiset|unordered_multimap|array|tuple|optional|variant|function|flat_map|flat_set)\\\\s*<(?!<)',\n end: '>',\n keywords: CPP_KEYWORDS,\n contains: [\n 'self',\n CPP_PRIMITIVE_TYPES\n ]\n },\n {\n begin: hljs.IDENT_RE + '::',\n keywords: CPP_KEYWORDS\n },\n {\n match: [\n // extra complexity to deal with `enum class` and `enum struct`\n /\\b(?:enum(?:\\s+(?:class|struct))?|class|struct|union)/,\n /\\s+/,\n /\\w+/\n ],\n className: {\n 1: 'keyword',\n 3: 'title.class'\n }\n }\n ])\n };\n}\n\nmodule.exports = cpp;\n","/*\nLanguage: C#\nAuthor: Jason Diamond <jason@diamond.name>\nContributor: Nicolas LLOBERA <nllobera@gmail.com>, Pieter Vantorre <pietervantorre@gmail.com>, David Pine <david.pine@microsoft.com>\nWebsite: https://docs.microsoft.com/dotnet/csharp/\nCategory: common\n*/\n\n/** @type LanguageFn */\nfunction csharp(hljs) {\n const BUILT_IN_KEYWORDS = [\n 'bool',\n 'byte',\n 'char',\n 'decimal',\n 'delegate',\n 'double',\n 'dynamic',\n 'enum',\n 'float',\n 'int',\n 'long',\n 'nint',\n 'nuint',\n 'object',\n 'sbyte',\n 'short',\n 'string',\n 'ulong',\n 'uint',\n 'ushort'\n ];\n const FUNCTION_MODIFIERS = [\n 'public',\n 'private',\n 'protected',\n 'static',\n 'internal',\n 'protected',\n 'abstract',\n 'async',\n 'extern',\n 'override',\n 'unsafe',\n 'virtual',\n 'new',\n 'sealed',\n 'partial'\n ];\n const LITERAL_KEYWORDS = [\n 'default',\n 'false',\n 'null',\n 'true'\n ];\n const NORMAL_KEYWORDS = [\n 'abstract',\n 'as',\n 'base',\n 'break',\n 'case',\n 'catch',\n 'class',\n 'const',\n 'continue',\n 'do',\n 'else',\n 'event',\n 'explicit',\n 'extern',\n 'finally',\n 'fixed',\n 'for',\n 'foreach',\n 'goto',\n 'if',\n 'implicit',\n 'in',\n 'interface',\n 'internal',\n 'is',\n 'lock',\n 'namespace',\n 'new',\n 'operator',\n 'out',\n 'override',\n 'params',\n 'private',\n 'protected',\n 'public',\n 'readonly',\n 'record',\n 'ref',\n 'return',\n 'scoped',\n 'sealed',\n 'sizeof',\n 'stackalloc',\n 'static',\n 'struct',\n 'switch',\n 'this',\n 'throw',\n 'try',\n 'typeof',\n 'unchecked',\n 'unsafe',\n 'using',\n 'virtual',\n 'void',\n 'volatile',\n 'while'\n ];\n const CONTEXTUAL_KEYWORDS = [\n 'add',\n 'alias',\n 'and',\n 'ascending',\n 'args',\n 'async',\n 'await',\n 'by',\n 'descending',\n 'dynamic',\n 'equals',\n 'file',\n 'from',\n 'get',\n 'global',\n 'group',\n 'init',\n 'into',\n 'join',\n 'let',\n 'nameof',\n 'not',\n 'notnull',\n 'on',\n 'or',\n 'orderby',\n 'partial',\n 'record',\n 'remove',\n 'required',\n 'scoped',\n 'select',\n 'set',\n 'unmanaged',\n 'value|0',\n 'var',\n 'when',\n 'where',\n 'with',\n 'yield'\n ];\n\n const KEYWORDS = {\n keyword: NORMAL_KEYWORDS.concat(CONTEXTUAL_KEYWORDS),\n built_in: BUILT_IN_KEYWORDS,\n literal: LITERAL_KEYWORDS\n };\n const TITLE_MODE = hljs.inherit(hljs.TITLE_MODE, { begin: '[a-zA-Z](\\\\.?\\\\w)*' });\n const NUMBERS = {\n className: 'number',\n variants: [\n { begin: '\\\\b(0b[01\\']+)' },\n { begin: '(-?)\\\\b([\\\\d\\']+(\\\\.[\\\\d\\']*)?|\\\\.[\\\\d\\']+)(u|U|l|L|ul|UL|f|F|b|B)' },\n { begin: '(-?)(\\\\b0[xX][a-fA-F0-9\\'_]+|(\\\\b[\\\\d\\'_]+(\\\\.[\\\\d\\'_]*)?|\\\\.[\\\\d\\'_]+)([eE][-+]?[\\\\d\\'_]+)?)' }\n ],\n relevance: 0\n };\n const RAW_STRING = {\n className: 'string',\n begin: /\"\"\"(\"*)(?!\")(.|\\n)*?\"\"\"\\1/,\n relevance: 1\n };\n const VERBATIM_STRING = {\n className: 'string',\n begin: '@\"',\n end: '\"',\n contains: [ { begin: '\"\"' } ]\n };\n const VERBATIM_STRING_NO_LF = hljs.inherit(VERBATIM_STRING, { illegal: /\\n/ });\n const SUBST = {\n className: 'subst',\n begin: /\\{/,\n end: /\\}/,\n keywords: KEYWORDS\n };\n const SUBST_NO_LF = hljs.inherit(SUBST, { illegal: /\\n/ });\n const INTERPOLATED_STRING = {\n className: 'string',\n begin: /\\$\"/,\n end: '\"',\n illegal: /\\n/,\n contains: [\n { begin: /\\{\\{/ },\n { begin: /\\}\\}/ },\n hljs.BACKSLASH_ESCAPE,\n SUBST_NO_LF\n ]\n };\n const INTERPOLATED_VERBATIM_STRING = {\n className: 'string',\n begin: /\\$@\"/,\n end: '\"',\n contains: [\n { begin: /\\{\\{/ },\n { begin: /\\}\\}/ },\n { begin: '\"\"' },\n SUBST\n ]\n };\n const INTERPOLATED_VERBATIM_STRING_NO_LF = hljs.inherit(INTERPOLATED_VERBATIM_STRING, {\n illegal: /\\n/,\n contains: [\n { begin: /\\{\\{/ },\n { begin: /\\}\\}/ },\n { begin: '\"\"' },\n SUBST_NO_LF\n ]\n });\n SUBST.contains = [\n INTERPOLATED_VERBATIM_STRING,\n INTERPOLATED_STRING,\n VERBATIM_STRING,\n hljs.APOS_STRING_MODE,\n hljs.QUOTE_STRING_MODE,\n NUMBERS,\n hljs.C_BLOCK_COMMENT_MODE\n ];\n SUBST_NO_LF.contains = [\n INTERPOLATED_VERBATIM_STRING_NO_LF,\n INTERPOLATED_STRING,\n VERBATIM_STRING_NO_LF,\n hljs.APOS_STRING_MODE,\n hljs.QUOTE_STRING_MODE,\n NUMBERS,\n hljs.inherit(hljs.C_BLOCK_COMMENT_MODE, { illegal: /\\n/ })\n ];\n const STRING = { variants: [\n RAW_STRING,\n INTERPOLATED_VERBATIM_STRING,\n INTERPOLATED_STRING,\n VERBATIM_STRING,\n hljs.APOS_STRING_MODE,\n hljs.QUOTE_STRING_MODE\n ] };\n\n const GENERIC_MODIFIER = {\n begin: \"<\",\n end: \">\",\n contains: [\n { beginKeywords: \"in out\" },\n TITLE_MODE\n ]\n };\n const TYPE_IDENT_RE = hljs.IDENT_RE + '(<' + hljs.IDENT_RE + '(\\\\s*,\\\\s*' + hljs.IDENT_RE + ')*>)?(\\\\[\\\\])?';\n const AT_IDENTIFIER = {\n // prevents expressions like `@class` from incorrect flagging\n // `class` as a keyword\n begin: \"@\" + hljs.IDENT_RE,\n relevance: 0\n };\n\n return {\n name: 'C#',\n aliases: [\n 'cs',\n 'c#'\n ],\n keywords: KEYWORDS,\n illegal: /::/,\n contains: [\n hljs.COMMENT(\n '///',\n '$',\n {\n returnBegin: true,\n contains: [\n {\n className: 'doctag',\n variants: [\n {\n begin: '///',\n relevance: 0\n },\n { begin: '<!--|-->' },\n {\n begin: '</?',\n end: '>'\n }\n ]\n }\n ]\n }\n ),\n hljs.C_LINE_COMMENT_MODE,\n hljs.C_BLOCK_COMMENT_MODE,\n {\n className: 'meta',\n begin: '#',\n end: '$',\n keywords: { keyword: 'if else elif endif define undef warning error line region endregion pragma checksum' }\n },\n STRING,\n NUMBERS,\n {\n beginKeywords: 'class interface',\n relevance: 0,\n end: /[{;=]/,\n illegal: /[^\\s:,]/,\n contains: [\n { beginKeywords: \"where class\" },\n TITLE_MODE,\n GENERIC_MODIFIER,\n hljs.C_LINE_COMMENT_MODE,\n hljs.C_BLOCK_COMMENT_MODE\n ]\n },\n {\n beginKeywords: 'namespace',\n relevance: 0,\n end: /[{;=]/,\n illegal: /[^\\s:]/,\n contains: [\n TITLE_MODE,\n hljs.C_LINE_COMMENT_MODE,\n hljs.C_BLOCK_COMMENT_MODE\n ]\n },\n {\n beginKeywords: 'record',\n relevance: 0,\n end: /[{;=]/,\n illegal: /[^\\s:]/,\n contains: [\n TITLE_MODE,\n GENERIC_MODIFIER,\n hljs.C_LINE_COMMENT_MODE,\n hljs.C_BLOCK_COMMENT_MODE\n ]\n },\n {\n // [Attributes(\"\")]\n className: 'meta',\n begin: '^\\\\s*\\\\[(?=[\\\\w])',\n excludeBegin: true,\n end: '\\\\]',\n excludeEnd: true,\n contains: [\n {\n className: 'string',\n begin: /\"/,\n end: /\"/\n }\n ]\n },\n {\n // Expression keywords prevent 'keyword Name(...)' from being\n // recognized as a function definition\n beginKeywords: 'new return throw await else',\n relevance: 0\n },\n {\n className: 'function',\n begin: '(' + TYPE_IDENT_RE + '\\\\s+)+' + hljs.IDENT_RE + '\\\\s*(<[^=]+>\\\\s*)?\\\\(',\n returnBegin: true,\n end: /\\s*[{;=]/,\n excludeEnd: true,\n keywords: KEYWORDS,\n contains: [\n // prevents these from being highlighted `title`\n {\n beginKeywords: FUNCTION_MODIFIERS.join(\" \"),\n relevance: 0\n },\n {\n begin: hljs.IDENT_RE + '\\\\s*(<[^=]+>\\\\s*)?\\\\(',\n returnBegin: true,\n contains: [\n hljs.TITLE_MODE,\n GENERIC_MODIFIER\n ],\n relevance: 0\n },\n { match: /\\(\\)/ },\n {\n className: 'params',\n begin: /\\(/,\n end: /\\)/,\n excludeBegin: true,\n excludeEnd: true,\n keywords: KEYWORDS,\n relevance: 0,\n contains: [\n STRING,\n NUMBERS,\n hljs.C_BLOCK_COMMENT_MODE\n ]\n },\n hljs.C_LINE_COMMENT_MODE,\n hljs.C_BLOCK_COMMENT_MODE\n ]\n },\n AT_IDENTIFIER\n ]\n };\n}\n\nmodule.exports = csharp;\n","/*\nLanguage: Go\nAuthor: Stephan Kountso aka StepLg <steplg@gmail.com>\nContributors: Evgeny Stepanischev <imbolk@gmail.com>\nDescription: Google go language (golang). For info about language\nWebsite: http://golang.org/\nCategory: common, system\n*/\n\nfunction go(hljs) {\n const LITERALS = [\n \"true\",\n \"false\",\n \"iota\",\n \"nil\"\n ];\n const BUILT_INS = [\n \"append\",\n \"cap\",\n \"close\",\n \"complex\",\n \"copy\",\n \"imag\",\n \"len\",\n \"make\",\n \"new\",\n \"panic\",\n \"print\",\n \"println\",\n \"real\",\n \"recover\",\n \"delete\"\n ];\n const TYPES = [\n \"bool\",\n \"byte\",\n \"complex64\",\n \"complex128\",\n \"error\",\n \"float32\",\n \"float64\",\n \"int8\",\n \"int16\",\n \"int32\",\n \"int64\",\n \"string\",\n \"uint8\",\n \"uint16\",\n \"uint32\",\n \"uint64\",\n \"int\",\n \"uint\",\n \"uintptr\",\n \"rune\"\n ];\n const KWS = [\n \"break\",\n \"case\",\n \"chan\",\n \"const\",\n \"continue\",\n \"default\",\n \"defer\",\n \"else\",\n \"fallthrough\",\n \"for\",\n \"func\",\n \"go\",\n \"goto\",\n \"if\",\n \"import\",\n \"interface\",\n \"map\",\n \"package\",\n \"range\",\n \"return\",\n \"select\",\n \"struct\",\n \"switch\",\n \"type\",\n \"var\",\n ];\n const KEYWORDS = {\n keyword: KWS,\n type: TYPES,\n literal: LITERALS,\n built_in: BUILT_INS\n };\n return {\n name: 'Go',\n aliases: [ 'golang' ],\n keywords: KEYWORDS,\n illegal: '</',\n contains: [\n hljs.C_LINE_COMMENT_MODE,\n hljs.C_BLOCK_COMMENT_MODE,\n {\n className: 'string',\n variants: [\n hljs.QUOTE_STRING_MODE,\n hljs.APOS_STRING_MODE,\n {\n begin: '`',\n end: '`'\n }\n ]\n },\n {\n className: 'number',\n variants: [\n {\n match: /-?\\b0[xX]\\.[a-fA-F0-9](_?[a-fA-F0-9])*[pP][+-]?\\d(_?\\d)*i?/, // hex without a present digit before . (making a digit afterwards required)\n relevance: 0\n },\n {\n match: /-?\\b0[xX](_?[a-fA-F0-9])+((\\.([a-fA-F0-9](_?[a-fA-F0-9])*)?)?[pP][+-]?\\d(_?\\d)*)?i?/, // hex with a present digit before . (making a digit afterwards optional)\n relevance: 0\n },\n {\n match: /-?\\b0[oO](_?[0-7])*i?/, // leading 0o octal\n relevance: 0\n },\n {\n match: /-?\\.\\d(_?\\d)*([eE][+-]?\\d(_?\\d)*)?i?/, // decimal without a present digit before . (making a digit afterwards required)\n relevance: 0\n },\n {\n match: /-?\\b\\d(_?\\d)*(\\.(\\d(_?\\d)*)?)?([eE][+-]?\\d(_?\\d)*)?i?/, // decimal with a present digit before . (making a digit afterwards optional)\n relevance: 0\n }\n ]\n },\n { begin: /:=/ // relevance booster\n },\n {\n className: 'function',\n beginKeywords: 'func',\n end: '\\\\s*(\\\\{|$)',\n excludeEnd: true,\n contains: [\n hljs.TITLE_MODE,\n {\n className: 'params',\n begin: /\\(/,\n end: /\\)/,\n endsParent: true,\n keywords: KEYWORDS,\n illegal: /[\"']/\n }\n ]\n }\n ]\n };\n}\n\nmodule.exports = go;\n","/*\nLanguage: Rust\nAuthor: Andrey Vlasovskikh <andrey.vlasovskikh@gmail.com>\nContributors: Roman Shmatov <romanshmatov@gmail.com>, Kasper Andersen <kma_untrusted@protonmail.com>\nWebsite: https://www.rust-lang.org\nCategory: common, system\n*/\n\n/** @type LanguageFn */\n\nfunction rust(hljs) {\n const regex = hljs.regex;\n // ============================================\n // Added to support the r# keyword, which is a raw identifier in Rust.\n const RAW_IDENTIFIER = /(r#)?/;\n const UNDERSCORE_IDENT_RE = regex.concat(RAW_IDENTIFIER, hljs.UNDERSCORE_IDENT_RE);\n const IDENT_RE = regex.concat(RAW_IDENTIFIER, hljs.IDENT_RE);\n // ============================================\n const FUNCTION_INVOKE = {\n className: \"title.function.invoke\",\n relevance: 0,\n begin: regex.concat(\n /\\b/,\n /(?!let|for|while|if|else|match\\b)/,\n IDENT_RE,\n regex.lookahead(/\\s*\\(/))\n };\n const NUMBER_SUFFIX = '([ui](8|16|32|64|128|size)|f(32|64))\\?';\n const KEYWORDS = [\n \"abstract\",\n \"as\",\n \"async\",\n \"await\",\n \"become\",\n \"box\",\n \"break\",\n \"const\",\n \"continue\",\n \"crate\",\n \"do\",\n \"dyn\",\n \"else\",\n \"enum\",\n \"extern\",\n \"false\",\n \"final\",\n \"fn\",\n \"for\",\n \"if\",\n \"impl\",\n \"in\",\n \"let\",\n \"loop\",\n \"macro\",\n \"match\",\n \"mod\",\n \"move\",\n \"mut\",\n \"override\",\n \"priv\",\n \"pub\",\n \"ref\",\n \"return\",\n \"self\",\n \"Self\",\n \"static\",\n \"struct\",\n \"super\",\n \"trait\",\n \"true\",\n \"try\",\n \"type\",\n \"typeof\",\n \"union\",\n \"unsafe\",\n \"unsized\",\n \"use\",\n \"virtual\",\n \"where\",\n \"while\",\n \"yield\"\n ];\n const LITERALS = [\n \"true\",\n \"false\",\n \"Some\",\n \"None\",\n \"Ok\",\n \"Err\"\n ];\n const BUILTINS = [\n // functions\n 'drop ',\n // traits\n \"Copy\",\n \"Send\",\n \"Sized\",\n \"Sync\",\n \"Drop\",\n \"Fn\",\n \"FnMut\",\n \"FnOnce\",\n \"ToOwned\",\n \"Clone\",\n \"Debug\",\n \"PartialEq\",\n \"PartialOrd\",\n \"Eq\",\n \"Ord\",\n \"AsRef\",\n \"AsMut\",\n \"Into\",\n \"From\",\n \"Default\",\n \"Iterator\",\n \"Extend\",\n \"IntoIterator\",\n \"DoubleEndedIterator\",\n \"ExactSizeIterator\",\n \"SliceConcatExt\",\n \"ToString\",\n // macros\n \"assert!\",\n \"assert_eq!\",\n \"bitflags!\",\n \"bytes!\",\n \"cfg!\",\n \"col!\",\n \"concat!\",\n \"concat_idents!\",\n \"debug_assert!\",\n \"debug_assert_eq!\",\n \"env!\",\n \"eprintln!\",\n \"panic!\",\n \"file!\",\n \"format!\",\n \"format_args!\",\n \"include_bytes!\",\n \"include_str!\",\n \"line!\",\n \"local_data_key!\",\n \"module_path!\",\n \"option_env!\",\n \"print!\",\n \"println!\",\n \"select!\",\n \"stringify!\",\n \"try!\",\n \"unimplemented!\",\n \"unreachable!\",\n \"vec!\",\n \"write!\",\n \"writeln!\",\n \"macro_rules!\",\n \"assert_ne!\",\n \"debug_assert_ne!\"\n ];\n const TYPES = [\n \"i8\",\n \"i16\",\n \"i32\",\n \"i64\",\n \"i128\",\n \"isize\",\n \"u8\",\n \"u16\",\n \"u32\",\n \"u64\",\n \"u128\",\n \"usize\",\n \"f32\",\n \"f64\",\n \"str\",\n \"char\",\n \"bool\",\n \"Box\",\n \"Option\",\n \"Result\",\n \"String\",\n \"Vec\"\n ];\n return {\n name: 'Rust',\n aliases: [ 'rs' ],\n keywords: {\n $pattern: hljs.IDENT_RE + '!?',\n type: TYPES,\n keyword: KEYWORDS,\n literal: LITERALS,\n built_in: BUILTINS\n },\n illegal: '</',\n contains: [\n hljs.C_LINE_COMMENT_MODE,\n hljs.COMMENT('/\\\\*', '\\\\*/', { contains: [ 'self' ] }),\n hljs.inherit(hljs.QUOTE_STRING_MODE, {\n begin: /b?\"/,\n illegal: null\n }),\n {\n className: 'symbol',\n // negative lookahead to avoid matching `'`\n begin: /'[a-zA-Z_][a-zA-Z0-9_]*(?!')/\n },\n {\n scope: 'string',\n variants: [\n { begin: /b?r(#*)\"(.|\\n)*?\"\\1(?!#)/ },\n {\n begin: /b?'/,\n end: /'/,\n contains: [\n {\n scope: \"char.escape\",\n match: /\\\\('|\\w|x\\w{2}|u\\w{4}|U\\w{8})/\n }\n ]\n }\n ]\n },\n {\n className: 'number',\n variants: [\n { begin: '\\\\b0b([01_]+)' + NUMBER_SUFFIX },\n { begin: '\\\\b0o([0-7_]+)' + NUMBER_SUFFIX },\n { begin: '\\\\b0x([A-Fa-f0-9_]+)' + NUMBER_SUFFIX },\n { begin: '\\\\b(\\\\d[\\\\d_]*(\\\\.[0-9_]+)?([eE][+-]?[0-9_]+)?)'\n + NUMBER_SUFFIX }\n ],\n relevance: 0\n },\n {\n begin: [\n /fn/,\n /\\s+/,\n UNDERSCORE_IDENT_RE\n ],\n className: {\n 1: \"keyword\",\n 3: \"title.function\"\n }\n },\n {\n className: 'meta',\n begin: '#!?\\\\[',\n end: '\\\\]',\n contains: [\n {\n className: 'string',\n begin: /\"/,\n end: /\"/,\n contains: [\n hljs.BACKSLASH_ESCAPE\n ]\n }\n ]\n },\n {\n begin: [\n /let/,\n /\\s+/,\n /(?:mut\\s+)?/,\n UNDERSCORE_IDENT_RE\n ],\n className: {\n 1: \"keyword\",\n 3: \"keyword\",\n 4: \"variable\"\n }\n },\n // must come before impl/for rule later\n {\n begin: [\n /for/,\n /\\s+/,\n UNDERSCORE_IDENT_RE,\n /\\s+/,\n /in/\n ],\n className: {\n 1: \"keyword\",\n 3: \"variable\",\n 5: \"keyword\"\n }\n },\n {\n begin: [\n /type/,\n /\\s+/,\n UNDERSCORE_IDENT_RE\n ],\n className: {\n 1: \"keyword\",\n 3: \"title.class\"\n }\n },\n {\n begin: [\n /(?:trait|enum|struct|union|impl|for)/,\n /\\s+/,\n UNDERSCORE_IDENT_RE\n ],\n className: {\n 1: \"keyword\",\n 3: \"title.class\"\n }\n },\n {\n begin: hljs.IDENT_RE + '::',\n keywords: {\n keyword: \"Self\",\n built_in: BUILTINS,\n type: TYPES\n }\n },\n {\n className: \"punctuation\",\n begin: '->'\n },\n FUNCTION_INVOKE\n ]\n };\n}\n\nmodule.exports = rust;\n","/*\nLanguage: PHP\nAuthor: Victor Karamzin <Victor.Karamzin@enterra-inc.com>\nContributors: Evgeny Stepanischev <imbolk@gmail.com>, Ivan Sagalaev <maniac@softwaremaniacs.org>\nWebsite: https://www.php.net\nCategory: common\n*/\n\n/**\n * @param {HLJSApi} hljs\n * @returns {LanguageDetail}\n * */\nfunction php(hljs) {\n const regex = hljs.regex;\n // negative look-ahead tries to avoid matching patterns that are not\n // Perl at all like $ident$, @ident@, etc.\n const NOT_PERL_ETC = /(?![A-Za-z0-9])(?![$])/;\n const IDENT_RE = regex.concat(\n /[a-zA-Z_\\x7f-\\xff][a-zA-Z0-9_\\x7f-\\xff]*/,\n NOT_PERL_ETC);\n // Will not detect camelCase classes\n const PASCAL_CASE_CLASS_NAME_RE = regex.concat(\n /(\\\\?[A-Z][a-z0-9_\\x7f-\\xff]+|\\\\?[A-Z]+(?=[A-Z][a-z0-9_\\x7f-\\xff])){1,}/,\n NOT_PERL_ETC);\n const UPCASE_NAME_RE = regex.concat(\n /[A-Z]+/,\n NOT_PERL_ETC);\n const VARIABLE = {\n scope: 'variable',\n match: '\\\\$+' + IDENT_RE,\n };\n const PREPROCESSOR = {\n scope: \"meta\",\n variants: [\n { begin: /<\\?php/, relevance: 10 }, // boost for obvious PHP\n { begin: /<\\?=/ },\n // less relevant per PSR-1 which says not to use short-tags\n { begin: /<\\?/, relevance: 0.1 },\n { begin: /\\?>/ } // end php tag\n ]\n };\n const SUBST = {\n scope: 'subst',\n variants: [\n { begin: /\\$\\w+/ },\n {\n begin: /\\{\\$/,\n end: /\\}/\n }\n ]\n };\n const SINGLE_QUOTED = hljs.inherit(hljs.APOS_STRING_MODE, { illegal: null, });\n const DOUBLE_QUOTED = hljs.inherit(hljs.QUOTE_STRING_MODE, {\n illegal: null,\n contains: hljs.QUOTE_STRING_MODE.contains.concat(SUBST),\n });\n\n const HEREDOC = {\n begin: /<<<[ \\t]*(?:(\\w+)|\"(\\w+)\")\\n/,\n end: /[ \\t]*(\\w+)\\b/,\n contains: hljs.QUOTE_STRING_MODE.contains.concat(SUBST),\n 'on:begin': (m, resp) => { resp.data._beginMatch = m[1] || m[2]; },\n 'on:end': (m, resp) => { if (resp.data._beginMatch !== m[1]) resp.ignoreMatch(); },\n };\n\n const NOWDOC = hljs.END_SAME_AS_BEGIN({\n begin: /<<<[ \\t]*'(\\w+)'\\n/,\n end: /[ \\t]*(\\w+)\\b/,\n });\n // list of valid whitespaces because non-breaking space might be part of a IDENT_RE\n const WHITESPACE = '[ \\t\\n]';\n const STRING = {\n scope: 'string',\n variants: [\n DOUBLE_QUOTED,\n SINGLE_QUOTED,\n HEREDOC,\n NOWDOC\n ]\n };\n const NUMBER = {\n scope: 'number',\n variants: [\n { begin: `\\\\b0[bB][01]+(?:_[01]+)*\\\\b` }, // Binary w/ underscore support\n { begin: `\\\\b0[oO][0-7]+(?:_[0-7]+)*\\\\b` }, // Octals w/ underscore support\n { begin: `\\\\b0[xX][\\\\da-fA-F]+(?:_[\\\\da-fA-F]+)*\\\\b` }, // Hex w/ underscore support\n // Decimals w/ underscore support, with optional fragments and scientific exponent (e) suffix.\n { begin: `(?:\\\\b\\\\d+(?:_\\\\d+)*(\\\\.(?:\\\\d+(?:_\\\\d+)*))?|\\\\B\\\\.\\\\d+)(?:[eE][+-]?\\\\d+)?` }\n ],\n relevance: 0\n };\n const LITERALS = [\n \"false\",\n \"null\",\n \"true\"\n ];\n const KWS = [\n // Magic constants:\n // <https://www.php.net/manual/en/language.constants.predefined.php>\n \"__CLASS__\",\n \"__DIR__\",\n \"__FILE__\",\n \"__FUNCTION__\",\n \"__COMPILER_HALT_OFFSET__\",\n \"__LINE__\",\n \"__METHOD__\",\n \"__NAMESPACE__\",\n \"__TRAIT__\",\n // Function that look like language construct or language construct that look like function:\n // List of keywords that may not require parenthesis\n \"die\",\n \"echo\",\n \"exit\",\n \"include\",\n \"include_once\",\n \"print\",\n \"require\",\n \"require_once\",\n // These are not language construct (function) but operate on the currently-executing function and can access the current symbol table\n // 'compact extract func_get_arg func_get_args func_num_args get_called_class get_parent_class ' +\n // Other keywords:\n // <https://www.php.net/manual/en/reserved.php>\n // <https://www.php.net/manual/en/language.types.type-juggling.php>\n \"array\",\n \"abstract\",\n \"and\",\n \"as\",\n \"binary\",\n \"bool\",\n \"boolean\",\n \"break\",\n \"callable\",\n \"case\",\n \"catch\",\n \"class\",\n \"clone\",\n \"const\",\n \"continue\",\n \"declare\",\n \"default\",\n \"do\",\n \"double\",\n \"else\",\n \"elseif\",\n \"empty\",\n \"enddeclare\",\n \"endfor\",\n \"endforeach\",\n \"endif\",\n \"endswitch\",\n \"endwhile\",\n \"enum\",\n \"eval\",\n \"extends\",\n \"final\",\n \"finally\",\n \"float\",\n \"for\",\n \"foreach\",\n \"from\",\n \"global\",\n \"goto\",\n \"if\",\n \"implements\",\n \"instanceof\",\n \"insteadof\",\n \"int\",\n \"integer\",\n \"interface\",\n \"isset\",\n \"iterable\",\n \"list\",\n \"match|0\",\n \"mixed\",\n \"new\",\n \"never\",\n \"object\",\n \"or\",\n \"private\",\n \"protected\",\n \"public\",\n \"readonly\",\n \"real\",\n \"return\",\n \"string\",\n \"switch\",\n \"throw\",\n \"trait\",\n \"try\",\n \"unset\",\n \"use\",\n \"var\",\n \"void\",\n \"while\",\n \"xor\",\n \"yield\"\n ];\n\n const BUILT_INS = [\n // Standard PHP library:\n // <https://www.php.net/manual/en/book.spl.php>\n \"Error|0\",\n \"AppendIterator\",\n \"ArgumentCountError\",\n \"ArithmeticError\",\n \"ArrayIterator\",\n \"ArrayObject\",\n \"AssertionError\",\n \"BadFunctionCallException\",\n \"BadMethodCallException\",\n \"CachingIterator\",\n \"CallbackFilterIterator\",\n \"CompileError\",\n \"Countable\",\n \"DirectoryIterator\",\n \"DivisionByZeroError\",\n \"DomainException\",\n \"EmptyIterator\",\n \"ErrorException\",\n \"Exception\",\n \"FilesystemIterator\",\n \"FilterIterator\",\n \"GlobIterator\",\n \"InfiniteIterator\",\n \"InvalidArgumentException\",\n \"IteratorIterator\",\n \"LengthException\",\n \"LimitIterator\",\n \"LogicException\",\n \"MultipleIterator\",\n \"NoRewindIterator\",\n \"OutOfBoundsException\",\n \"OutOfRangeException\",\n \"OuterIterator\",\n \"OverflowException\",\n \"ParentIterator\",\n \"ParseError\",\n \"RangeException\",\n \"RecursiveArrayIterator\",\n \"RecursiveCachingIterator\",\n \"RecursiveCallbackFilterIterator\",\n \"RecursiveDirectoryIterator\",\n \"RecursiveFilterIterator\",\n \"RecursiveIterator\",\n \"RecursiveIteratorIterator\",\n \"RecursiveRegexIterator\",\n \"RecursiveTreeIterator\",\n \"RegexIterator\",\n \"RuntimeException\",\n \"SeekableIterator\",\n \"SplDoublyLinkedList\",\n \"SplFileInfo\",\n \"SplFileObject\",\n \"SplFixedArray\",\n \"SplHeap\",\n \"SplMaxHeap\",\n \"SplMinHeap\",\n \"SplObjectStorage\",\n \"SplObserver\",\n \"SplPriorityQueue\",\n \"SplQueue\",\n \"SplStack\",\n \"SplSubject\",\n \"SplTempFileObject\",\n \"TypeError\",\n \"UnderflowException\",\n \"UnexpectedValueException\",\n \"UnhandledMatchError\",\n // Reserved interfaces:\n // <https://www.php.net/manual/en/reserved.interfaces.php>\n \"ArrayAccess\",\n \"BackedEnum\",\n \"Closure\",\n \"Fiber\",\n \"Generator\",\n \"Iterator\",\n \"IteratorAggregate\",\n \"Serializable\",\n \"Stringable\",\n \"Throwable\",\n \"Traversable\",\n \"UnitEnum\",\n \"WeakReference\",\n \"WeakMap\",\n // Reserved classes:\n // <https://www.php.net/manual/en/reserved.classes.php>\n \"Directory\",\n \"__PHP_Incomplete_Class\",\n \"parent\",\n \"php_user_filter\",\n \"self\",\n \"static\",\n \"stdClass\"\n ];\n\n /** Dual-case keywords\n *\n * [\"then\",\"FILE\"] =>\n * [\"then\", \"THEN\", \"FILE\", \"file\"]\n *\n * @param {string[]} items */\n const dualCase = (items) => {\n /** @type string[] */\n const result = [];\n items.forEach(item => {\n result.push(item);\n if (item.toLowerCase() === item) {\n result.push(item.toUpperCase());\n } else {\n result.push(item.toLowerCase());\n }\n });\n return result;\n };\n\n const KEYWORDS = {\n keyword: KWS,\n literal: dualCase(LITERALS),\n built_in: BUILT_INS,\n };\n\n /**\n * @param {string[]} items */\n const normalizeKeywords = (items) => {\n return items.map(item => {\n return item.replace(/\\|\\d+$/, \"\");\n });\n };\n\n const CONSTRUCTOR_CALL = { variants: [\n {\n match: [\n /new/,\n regex.concat(WHITESPACE, \"+\"),\n // to prevent built ins from being confused as the class constructor call\n regex.concat(\"(?!\", normalizeKeywords(BUILT_INS).join(\"\\\\b|\"), \"\\\\b)\"),\n PASCAL_CASE_CLASS_NAME_RE,\n ],\n scope: {\n 1: \"keyword\",\n 4: \"title.class\",\n },\n }\n ] };\n\n const CONSTANT_REFERENCE = regex.concat(IDENT_RE, \"\\\\b(?!\\\\()\");\n\n const LEFT_AND_RIGHT_SIDE_OF_DOUBLE_COLON = { variants: [\n {\n match: [\n regex.concat(\n /::/,\n regex.lookahead(/(?!class\\b)/)\n ),\n CONSTANT_REFERENCE,\n ],\n scope: { 2: \"variable.constant\", },\n },\n {\n match: [\n /::/,\n /class/,\n ],\n scope: { 2: \"variable.language\", },\n },\n {\n match: [\n PASCAL_CASE_CLASS_NAME_RE,\n regex.concat(\n /::/,\n regex.lookahead(/(?!class\\b)/)\n ),\n CONSTANT_REFERENCE,\n ],\n scope: {\n 1: \"title.class\",\n 3: \"variable.constant\",\n },\n },\n {\n match: [\n PASCAL_CASE_CLASS_NAME_RE,\n regex.concat(\n \"::\",\n regex.lookahead(/(?!class\\b)/)\n ),\n ],\n scope: { 1: \"title.class\", },\n },\n {\n match: [\n PASCAL_CASE_CLASS_NAME_RE,\n /::/,\n /class/,\n ],\n scope: {\n 1: \"title.class\",\n 3: \"variable.language\",\n },\n }\n ] };\n\n const NAMED_ARGUMENT = {\n scope: 'attr',\n match: regex.concat(IDENT_RE, regex.lookahead(':'), regex.lookahead(/(?!::)/)),\n };\n const PARAMS_MODE = {\n relevance: 0,\n begin: /\\(/,\n end: /\\)/,\n keywords: KEYWORDS,\n contains: [\n NAMED_ARGUMENT,\n VARIABLE,\n LEFT_AND_RIGHT_SIDE_OF_DOUBLE_COLON,\n hljs.C_BLOCK_COMMENT_MODE,\n hljs.C_LINE_COMMENT_MODE,\n hljs.HASH_COMMENT_MODE,\n STRING,\n NUMBER,\n CONSTRUCTOR_CALL,\n ],\n };\n const FUNCTION_INVOKE = {\n relevance: 0,\n match: [\n /\\b/,\n // to prevent keywords from being confused as the function title\n regex.concat(\"(?!fn\\\\b|function\\\\b|\", normalizeKeywords(KWS).join(\"\\\\b|\"), \"|\", normalizeKeywords(BUILT_INS).join(\"\\\\b|\"), \"\\\\b)\"),\n IDENT_RE,\n regex.concat(WHITESPACE, \"*\"),\n regex.lookahead(/(?=\\()/)\n ],\n scope: { 3: \"title.function.invoke\", },\n contains: [ PARAMS_MODE ]\n };\n PARAMS_MODE.contains.push(FUNCTION_INVOKE);\n\n const ATTRIBUTE_CONTAINS = [\n NAMED_ARGUMENT,\n LEFT_AND_RIGHT_SIDE_OF_DOUBLE_COLON,\n hljs.C_BLOCK_COMMENT_MODE,\n hljs.C_LINE_COMMENT_MODE,\n hljs.HASH_COMMENT_MODE,\n STRING,\n NUMBER,\n CONSTRUCTOR_CALL,\n ];\n\n const ATTRIBUTES = {\n begin: regex.concat(/#\\[\\s*\\\\?/,\n regex.either(\n PASCAL_CASE_CLASS_NAME_RE,\n UPCASE_NAME_RE\n )\n ),\n beginScope: \"meta\",\n end: /]/,\n endScope: \"meta\",\n keywords: {\n literal: LITERALS,\n keyword: [\n 'new',\n 'array',\n ]\n },\n contains: [\n {\n begin: /\\[/,\n end: /]/,\n keywords: {\n literal: LITERALS,\n keyword: [\n 'new',\n 'array',\n ]\n },\n contains: [\n 'self',\n ...ATTRIBUTE_CONTAINS,\n ]\n },\n ...ATTRIBUTE_CONTAINS,\n {\n scope: 'meta',\n variants: [\n { match: PASCAL_CASE_CLASS_NAME_RE },\n { match: UPCASE_NAME_RE }\n ]\n }\n ]\n };\n\n return {\n case_insensitive: false,\n keywords: KEYWORDS,\n contains: [\n ATTRIBUTES,\n hljs.HASH_COMMENT_MODE,\n hljs.COMMENT('//', '$'),\n hljs.COMMENT(\n '/\\\\*',\n '\\\\*/',\n { contains: [\n {\n scope: 'doctag',\n match: '@[A-Za-z]+'\n }\n ] }\n ),\n {\n match: /__halt_compiler\\(\\);/,\n keywords: '__halt_compiler',\n starts: {\n scope: \"comment\",\n end: hljs.MATCH_NOTHING_RE,\n contains: [\n {\n match: /\\?>/,\n scope: \"meta\",\n endsParent: true\n }\n ]\n }\n },\n PREPROCESSOR,\n {\n scope: 'variable.language',\n match: /\\$this\\b/\n },\n VARIABLE,\n FUNCTION_INVOKE,\n LEFT_AND_RIGHT_SIDE_OF_DOUBLE_COLON,\n {\n match: [\n /const/,\n /\\s/,\n IDENT_RE,\n ],\n scope: {\n 1: \"keyword\",\n 3: \"variable.constant\",\n },\n },\n CONSTRUCTOR_CALL,\n {\n scope: 'function',\n relevance: 0,\n beginKeywords: 'fn function',\n end: /[;{]/,\n excludeEnd: true,\n illegal: '[$%\\\\[]',\n contains: [\n { beginKeywords: 'use', },\n hljs.UNDERSCORE_TITLE_MODE,\n {\n begin: '=>', // No markup, just a relevance booster\n endsParent: true\n },\n {\n scope: 'params',\n begin: '\\\\(',\n end: '\\\\)',\n excludeBegin: true,\n excludeEnd: true,\n keywords: KEYWORDS,\n contains: [\n 'self',\n ATTRIBUTES,\n VARIABLE,\n LEFT_AND_RIGHT_SIDE_OF_DOUBLE_COLON,\n hljs.C_BLOCK_COMMENT_MODE,\n hljs.C_LINE_COMMENT_MODE,\n hljs.HASH_COMMENT_MODE,\n STRING,\n NUMBER\n ]\n },\n ]\n },\n {\n scope: 'class',\n variants: [\n {\n beginKeywords: \"enum\",\n illegal: /[($\"]/\n },\n {\n beginKeywords: \"class interface trait\",\n illegal: /[:($\"]/\n }\n ],\n relevance: 0,\n end: /\\{/,\n excludeEnd: true,\n contains: [\n { beginKeywords: 'extends implements' },\n hljs.UNDERSCORE_TITLE_MODE\n ]\n },\n // both use and namespace still use \"old style\" rules (vs multi-match)\n // because the namespace name can include `\\` and we still want each\n // element to be treated as its own *individual* title\n {\n beginKeywords: 'namespace',\n relevance: 0,\n end: ';',\n illegal: /[.']/,\n contains: [ hljs.inherit(hljs.UNDERSCORE_TITLE_MODE, { scope: \"title.class\" }) ]\n },\n {\n beginKeywords: 'use',\n relevance: 0,\n end: ';',\n contains: [\n // TODO: title.function vs title.class\n {\n match: /\\b(as|const|function)\\b/,\n scope: \"keyword\"\n },\n // TODO: could be title.class or title.function\n hljs.UNDERSCORE_TITLE_MODE\n ]\n },\n STRING,\n NUMBER,\n ]\n };\n}\n\nmodule.exports = php;\n","/*\nLanguage: Ruby\nDescription: Ruby is a dynamic, open source programming language with a focus on simplicity and productivity.\nWebsite: https://www.ruby-lang.org/\nAuthor: Anton Kovalyov <anton@kovalyov.net>\nContributors: Peter Leonov <gojpeg@yandex.ru>, Vasily Polovnyov <vast@whiteants.net>, Loren Segal <lsegal@soen.ca>, Pascal Hurni <phi@ruby-reactive.org>, Cedric Sohrauer <sohrauer@googlemail.com>\nCategory: common, scripting\n*/\n\nfunction ruby(hljs) {\n const regex = hljs.regex;\n const RUBY_METHOD_RE = '([a-zA-Z_]\\\\w*[!?=]?|[-+~]@|<<|>>|=~|===?|<=>|[<>]=?|\\\\*\\\\*|[-/+%^&*~`|]|\\\\[\\\\]=?)';\n // TODO: move concepts like CAMEL_CASE into `modes.js`\n const CLASS_NAME_RE = regex.either(\n /\\b([A-Z]+[a-z0-9]+)+/,\n // ends in caps\n /\\b([A-Z]+[a-z0-9]+)+[A-Z]+/,\n )\n ;\n const CLASS_NAME_WITH_NAMESPACE_RE = regex.concat(CLASS_NAME_RE, /(::\\w+)*/);\n // very popular ruby built-ins that one might even assume\n // are actual keywords (despite that not being the case)\n const PSEUDO_KWS = [\n \"include\",\n \"extend\",\n \"prepend\",\n \"public\",\n \"private\",\n \"protected\",\n \"raise\",\n \"throw\"\n ];\n const RUBY_KEYWORDS = {\n \"variable.constant\": [\n \"__FILE__\",\n \"__LINE__\",\n \"__ENCODING__\"\n ],\n \"variable.language\": [\n \"self\",\n \"super\",\n ],\n keyword: [\n \"alias\",\n \"and\",\n \"begin\",\n \"BEGIN\",\n \"break\",\n \"case\",\n \"class\",\n \"defined\",\n \"do\",\n \"else\",\n \"elsif\",\n \"end\",\n \"END\",\n \"ensure\",\n \"for\",\n \"if\",\n \"in\",\n \"module\",\n \"next\",\n \"not\",\n \"or\",\n \"redo\",\n \"require\",\n \"rescue\",\n \"retry\",\n \"return\",\n \"then\",\n \"undef\",\n \"unless\",\n \"until\",\n \"when\",\n \"while\",\n \"yield\",\n ...PSEUDO_KWS\n ],\n built_in: [\n \"proc\",\n \"lambda\",\n \"attr_accessor\",\n \"attr_reader\",\n \"attr_writer\",\n \"define_method\",\n \"private_constant\",\n \"module_function\"\n ],\n literal: [\n \"true\",\n \"false\",\n \"nil\"\n ]\n };\n const YARDOCTAG = {\n className: 'doctag',\n begin: '@[A-Za-z]+'\n };\n const IRB_OBJECT = {\n begin: '#<',\n end: '>'\n };\n const COMMENT_MODES = [\n hljs.COMMENT(\n '#',\n '$',\n { contains: [ YARDOCTAG ] }\n ),\n hljs.COMMENT(\n '^=begin',\n '^=end',\n {\n contains: [ YARDOCTAG ],\n relevance: 10\n }\n ),\n hljs.COMMENT('^__END__', hljs.MATCH_NOTHING_RE)\n ];\n const SUBST = {\n className: 'subst',\n begin: /#\\{/,\n end: /\\}/,\n keywords: RUBY_KEYWORDS\n };\n const STRING = {\n className: 'string',\n contains: [\n hljs.BACKSLASH_ESCAPE,\n SUBST\n ],\n variants: [\n {\n begin: /'/,\n end: /'/\n },\n {\n begin: /\"/,\n end: /\"/\n },\n {\n begin: /`/,\n end: /`/\n },\n {\n begin: /%[qQwWx]?\\(/,\n end: /\\)/\n },\n {\n begin: /%[qQwWx]?\\[/,\n end: /\\]/\n },\n {\n begin: /%[qQwWx]?\\{/,\n end: /\\}/\n },\n {\n begin: /%[qQwWx]?</,\n end: />/\n },\n {\n begin: /%[qQwWx]?\\//,\n end: /\\//\n },\n {\n begin: /%[qQwWx]?%/,\n end: /%/\n },\n {\n begin: /%[qQwWx]?-/,\n end: /-/\n },\n {\n begin: /%[qQwWx]?\\|/,\n end: /\\|/\n },\n // in the following expressions, \\B in the beginning suppresses recognition of ?-sequences\n // where ? is the last character of a preceding identifier, as in: `func?4`\n { begin: /\\B\\?(\\\\\\d{1,3})/ },\n { begin: /\\B\\?(\\\\x[A-Fa-f0-9]{1,2})/ },\n { begin: /\\B\\?(\\\\u\\{?[A-Fa-f0-9]{1,6}\\}?)/ },\n { begin: /\\B\\?(\\\\M-\\\\C-|\\\\M-\\\\c|\\\\c\\\\M-|\\\\M-|\\\\C-\\\\M-)[\\x20-\\x7e]/ },\n { begin: /\\B\\?\\\\(c|C-)[\\x20-\\x7e]/ },\n { begin: /\\B\\?\\\\?\\S/ },\n // heredocs\n {\n // this guard makes sure that we have an entire heredoc and not a false\n // positive (auto-detect, etc.)\n begin: regex.concat(\n /<<[-~]?'?/,\n regex.lookahead(/(\\w+)(?=\\W)[^\\n]*\\n(?:[^\\n]*\\n)*?\\s*\\1\\b/)\n ),\n contains: [\n hljs.END_SAME_AS_BEGIN({\n begin: /(\\w+)/,\n end: /(\\w+)/,\n contains: [\n hljs.BACKSLASH_ESCAPE,\n SUBST\n ]\n })\n ]\n }\n ]\n };\n\n // Ruby syntax is underdocumented, but this grammar seems to be accurate\n // as of version 2.7.2 (confirmed with (irb and `Ripper.sexp(...)`)\n // https://docs.ruby-lang.org/en/2.7.0/doc/syntax/literals_rdoc.html#label-Numbers\n const decimal = '[1-9](_?[0-9])*|0';\n const digits = '[0-9](_?[0-9])*';\n const NUMBER = {\n className: 'number',\n relevance: 0,\n variants: [\n // decimal integer/float, optionally exponential or rational, optionally imaginary\n { begin: `\\\\b(${decimal})(\\\\.(${digits}))?([eE][+-]?(${digits})|r)?i?\\\\b` },\n\n // explicit decimal/binary/octal/hexadecimal integer,\n // optionally rational and/or imaginary\n { begin: \"\\\\b0[dD][0-9](_?[0-9])*r?i?\\\\b\" },\n { begin: \"\\\\b0[bB][0-1](_?[0-1])*r?i?\\\\b\" },\n { begin: \"\\\\b0[oO][0-7](_?[0-7])*r?i?\\\\b\" },\n { begin: \"\\\\b0[xX][0-9a-fA-F](_?[0-9a-fA-F])*r?i?\\\\b\" },\n\n // 0-prefixed implicit octal integer, optionally rational and/or imaginary\n { begin: \"\\\\b0(_?[0-7])+r?i?\\\\b\" }\n ]\n };\n\n const PARAMS = {\n variants: [\n {\n match: /\\(\\)/,\n },\n {\n className: 'params',\n begin: /\\(/,\n end: /(?=\\))/,\n excludeBegin: true,\n endsParent: true,\n keywords: RUBY_KEYWORDS,\n }\n ]\n };\n\n const INCLUDE_EXTEND = {\n match: [\n /(include|extend)\\s+/,\n CLASS_NAME_WITH_NAMESPACE_RE\n ],\n scope: {\n 2: \"title.class\"\n },\n keywords: RUBY_KEYWORDS\n };\n\n const CLASS_DEFINITION = {\n variants: [\n {\n match: [\n /class\\s+/,\n CLASS_NAME_WITH_NAMESPACE_RE,\n /\\s+<\\s+/,\n CLASS_NAME_WITH_NAMESPACE_RE\n ]\n },\n {\n match: [\n /\\b(class|module)\\s+/,\n CLASS_NAME_WITH_NAMESPACE_RE\n ]\n }\n ],\n scope: {\n 2: \"title.class\",\n 4: \"title.class.inherited\"\n },\n keywords: RUBY_KEYWORDS\n };\n\n const UPPER_CASE_CONSTANT = {\n relevance: 0,\n match: /\\b[A-Z][A-Z_0-9]+\\b/,\n className: \"variable.constant\"\n };\n\n const METHOD_DEFINITION = {\n match: [\n /def/, /\\s+/,\n RUBY_METHOD_RE\n ],\n scope: {\n 1: \"keyword\",\n 3: \"title.function\"\n },\n contains: [\n PARAMS\n ]\n };\n\n const OBJECT_CREATION = {\n relevance: 0,\n match: [\n CLASS_NAME_WITH_NAMESPACE_RE,\n /\\.new[. (]/\n ],\n scope: {\n 1: \"title.class\"\n }\n };\n\n // CamelCase\n const CLASS_REFERENCE = {\n relevance: 0,\n match: CLASS_NAME_RE,\n scope: \"title.class\"\n };\n\n const RUBY_DEFAULT_CONTAINS = [\n STRING,\n CLASS_DEFINITION,\n INCLUDE_EXTEND,\n OBJECT_CREATION,\n UPPER_CASE_CONSTANT,\n CLASS_REFERENCE,\n METHOD_DEFINITION,\n {\n // swallow namespace qualifiers before symbols\n begin: hljs.IDENT_RE + '::' },\n {\n className: 'symbol',\n begin: hljs.UNDERSCORE_IDENT_RE + '(!|\\\\?)?:',\n relevance: 0\n },\n {\n className: 'symbol',\n begin: ':(?!\\\\s)',\n contains: [\n STRING,\n { begin: RUBY_METHOD_RE }\n ],\n relevance: 0\n },\n NUMBER,\n {\n // negative-look forward attempts to prevent false matches like:\n // @ident@ or $ident$ that might indicate this is not ruby at all\n className: \"variable\",\n begin: '(\\\\$\\\\W)|((\\\\$|@@?)(\\\\w+))(?=[^@$?])' + `(?![A-Za-z])(?![@$?'])`\n },\n {\n className: 'params',\n begin: /\\|(?!=)/,\n end: /\\|/,\n excludeBegin: true,\n excludeEnd: true,\n relevance: 0, // this could be a lot of things (in other languages) other than params\n keywords: RUBY_KEYWORDS\n },\n { // regexp container\n begin: '(' + hljs.RE_STARTERS_RE + '|unless)\\\\s*',\n keywords: 'unless',\n contains: [\n {\n className: 'regexp',\n contains: [\n hljs.BACKSLASH_ESCAPE,\n SUBST\n ],\n illegal: /\\n/,\n variants: [\n {\n begin: '/',\n end: '/[a-z]*'\n },\n {\n begin: /%r\\{/,\n end: /\\}[a-z]*/\n },\n {\n begin: '%r\\\\(',\n end: '\\\\)[a-z]*'\n },\n {\n begin: '%r!',\n end: '![a-z]*'\n },\n {\n begin: '%r\\\\[',\n end: '\\\\][a-z]*'\n }\n ]\n }\n ].concat(IRB_OBJECT, COMMENT_MODES),\n relevance: 0\n }\n ].concat(IRB_OBJECT, COMMENT_MODES);\n\n SUBST.contains = RUBY_DEFAULT_CONTAINS;\n PARAMS.contains = RUBY_DEFAULT_CONTAINS;\n\n // >>\n // ?>\n const SIMPLE_PROMPT = \"[>?]>\";\n // irb(main):001:0>\n const DEFAULT_PROMPT = \"[\\\\w#]+\\\\(\\\\w+\\\\):\\\\d+:\\\\d+[>*]\";\n const RVM_PROMPT = \"(\\\\w+-)?\\\\d+\\\\.\\\\d+\\\\.\\\\d+(p\\\\d+)?[^\\\\d][^>]+>\";\n\n const IRB_DEFAULT = [\n {\n begin: /^\\s*=>/,\n starts: {\n end: '$',\n contains: RUBY_DEFAULT_CONTAINS\n }\n },\n {\n className: 'meta.prompt',\n begin: '^(' + SIMPLE_PROMPT + \"|\" + DEFAULT_PROMPT + '|' + RVM_PROMPT + ')(?=[ ])',\n starts: {\n end: '$',\n keywords: RUBY_KEYWORDS,\n contains: RUBY_DEFAULT_CONTAINS\n }\n }\n ];\n\n COMMENT_MODES.unshift(IRB_OBJECT);\n\n return {\n name: 'Ruby',\n aliases: [\n 'rb',\n 'gemspec',\n 'podspec',\n 'thor',\n 'irb'\n ],\n keywords: RUBY_KEYWORDS,\n illegal: /\\/\\*/,\n contains: [ hljs.SHEBANG({ binary: \"ruby\" }) ]\n .concat(IRB_DEFAULT)\n .concat(COMMENT_MODES)\n .concat(RUBY_DEFAULT_CONTAINS)\n };\n}\n\nmodule.exports = ruby;\n","// https://docs.oracle.com/javase/specs/jls/se15/html/jls-3.html#jls-3.10\nvar decimalDigits = '[0-9](_*[0-9])*';\nvar frac = `\\\\.(${decimalDigits})`;\nvar hexDigits = '[0-9a-fA-F](_*[0-9a-fA-F])*';\nvar NUMERIC = {\n className: 'number',\n variants: [\n // DecimalFloatingPointLiteral\n // including ExponentPart\n { begin: `(\\\\b(${decimalDigits})((${frac})|\\\\.)?|(${frac}))` +\n `[eE][+-]?(${decimalDigits})[fFdD]?\\\\b` },\n // excluding ExponentPart\n { begin: `\\\\b(${decimalDigits})((${frac})[fFdD]?\\\\b|\\\\.([fFdD]\\\\b)?)` },\n { begin: `(${frac})[fFdD]?\\\\b` },\n { begin: `\\\\b(${decimalDigits})[fFdD]\\\\b` },\n\n // HexadecimalFloatingPointLiteral\n { begin: `\\\\b0[xX]((${hexDigits})\\\\.?|(${hexDigits})?\\\\.(${hexDigits}))` +\n `[pP][+-]?(${decimalDigits})[fFdD]?\\\\b` },\n\n // DecimalIntegerLiteral\n { begin: '\\\\b(0|[1-9](_*[0-9])*)[lL]?\\\\b' },\n\n // HexIntegerLiteral\n { begin: `\\\\b0[xX](${hexDigits})[lL]?\\\\b` },\n\n // OctalIntegerLiteral\n { begin: '\\\\b0(_*[0-7])*[lL]?\\\\b' },\n\n // BinaryIntegerLiteral\n { begin: '\\\\b0[bB][01](_*[01])*[lL]?\\\\b' },\n ],\n relevance: 0\n};\n\n/*\n Language: Kotlin\n Description: Kotlin is an OSS statically typed programming language that targets the JVM, Android, JavaScript and Native.\n Author: Sergey Mashkov <cy6erGn0m@gmail.com>\n Website: https://kotlinlang.org\n Category: common\n */\n\n\nfunction kotlin(hljs) {\n const KEYWORDS = {\n keyword:\n 'abstract as val var vararg get set class object open private protected public noinline '\n + 'crossinline dynamic final enum if else do while for when throw try catch finally '\n + 'import package is in fun override companion reified inline lateinit init '\n + 'interface annotation data sealed internal infix operator out by constructor super '\n + 'tailrec where const inner suspend typealias external expect actual',\n built_in:\n 'Byte Short Char Int Long Boolean Float Double Void Unit Nothing',\n literal:\n 'true false null'\n };\n const KEYWORDS_WITH_LABEL = {\n className: 'keyword',\n begin: /\\b(break|continue|return|this)\\b/,\n starts: { contains: [\n {\n className: 'symbol',\n begin: /@\\w+/\n }\n ] }\n };\n const LABEL = {\n className: 'symbol',\n begin: hljs.UNDERSCORE_IDENT_RE + '@'\n };\n\n // for string templates\n const SUBST = {\n className: 'subst',\n begin: /\\$\\{/,\n end: /\\}/,\n contains: [ hljs.C_NUMBER_MODE ]\n };\n const VARIABLE = {\n className: 'variable',\n begin: '\\\\$' + hljs.UNDERSCORE_IDENT_RE\n };\n const STRING = {\n className: 'string',\n variants: [\n {\n begin: '\"\"\"',\n end: '\"\"\"(?=[^\"])',\n contains: [\n VARIABLE,\n SUBST\n ]\n },\n // Can't use built-in modes easily, as we want to use STRING in the meta\n // context as 'meta-string' and there's no syntax to remove explicitly set\n // classNames in built-in modes.\n {\n begin: '\\'',\n end: '\\'',\n illegal: /\\n/,\n contains: [ hljs.BACKSLASH_ESCAPE ]\n },\n {\n begin: '\"',\n end: '\"',\n illegal: /\\n/,\n contains: [\n hljs.BACKSLASH_ESCAPE,\n VARIABLE,\n SUBST\n ]\n }\n ]\n };\n SUBST.contains.push(STRING);\n\n const ANNOTATION_USE_SITE = {\n className: 'meta',\n begin: '@(?:file|property|field|get|set|receiver|param|setparam|delegate)\\\\s*:(?:\\\\s*' + hljs.UNDERSCORE_IDENT_RE + ')?'\n };\n const ANNOTATION = {\n className: 'meta',\n begin: '@' + hljs.UNDERSCORE_IDENT_RE,\n contains: [\n {\n begin: /\\(/,\n end: /\\)/,\n contains: [\n hljs.inherit(STRING, { className: 'string' }),\n \"self\"\n ]\n }\n ]\n };\n\n // https://kotlinlang.org/docs/reference/whatsnew11.html#underscores-in-numeric-literals\n // According to the doc above, the number mode of kotlin is the same as java 8,\n // so the code below is copied from java.js\n const KOTLIN_NUMBER_MODE = NUMERIC;\n const KOTLIN_NESTED_COMMENT = hljs.COMMENT(\n '/\\\\*', '\\\\*/',\n { contains: [ hljs.C_BLOCK_COMMENT_MODE ] }\n );\n const KOTLIN_PAREN_TYPE = { variants: [\n {\n className: 'type',\n begin: hljs.UNDERSCORE_IDENT_RE\n },\n {\n begin: /\\(/,\n end: /\\)/,\n contains: [] // defined later\n }\n ] };\n const KOTLIN_PAREN_TYPE2 = KOTLIN_PAREN_TYPE;\n KOTLIN_PAREN_TYPE2.variants[1].contains = [ KOTLIN_PAREN_TYPE ];\n KOTLIN_PAREN_TYPE.variants[1].contains = [ KOTLIN_PAREN_TYPE2 ];\n\n return {\n name: 'Kotlin',\n aliases: [\n 'kt',\n 'kts'\n ],\n keywords: KEYWORDS,\n contains: [\n hljs.COMMENT(\n '/\\\\*\\\\*',\n '\\\\*/',\n {\n relevance: 0,\n contains: [\n {\n className: 'doctag',\n begin: '@[A-Za-z]+'\n }\n ]\n }\n ),\n hljs.C_LINE_COMMENT_MODE,\n KOTLIN_NESTED_COMMENT,\n KEYWORDS_WITH_LABEL,\n LABEL,\n ANNOTATION_USE_SITE,\n ANNOTATION,\n {\n className: 'function',\n beginKeywords: 'fun',\n end: '[(]|$',\n returnBegin: true,\n excludeEnd: true,\n keywords: KEYWORDS,\n relevance: 5,\n contains: [\n {\n begin: hljs.UNDERSCORE_IDENT_RE + '\\\\s*\\\\(',\n returnBegin: true,\n relevance: 0,\n contains: [ hljs.UNDERSCORE_TITLE_MODE ]\n },\n {\n className: 'type',\n begin: /</,\n end: />/,\n keywords: 'reified',\n relevance: 0\n },\n {\n className: 'params',\n begin: /\\(/,\n end: /\\)/,\n endsParent: true,\n keywords: KEYWORDS,\n relevance: 0,\n contains: [\n {\n begin: /:/,\n end: /[=,\\/]/,\n endsWithParent: true,\n contains: [\n KOTLIN_PAREN_TYPE,\n hljs.C_LINE_COMMENT_MODE,\n KOTLIN_NESTED_COMMENT\n ],\n relevance: 0\n },\n hljs.C_LINE_COMMENT_MODE,\n KOTLIN_NESTED_COMMENT,\n ANNOTATION_USE_SITE,\n ANNOTATION,\n STRING,\n hljs.C_NUMBER_MODE\n ]\n },\n KOTLIN_NESTED_COMMENT\n ]\n },\n {\n begin: [\n /class|interface|trait/,\n /\\s+/,\n hljs.UNDERSCORE_IDENT_RE\n ],\n beginScope: {\n 3: \"title.class\"\n },\n keywords: 'class interface trait',\n end: /[:\\{(]|$/,\n excludeEnd: true,\n illegal: 'extends implements',\n contains: [\n { beginKeywords: 'public protected internal private constructor' },\n hljs.UNDERSCORE_TITLE_MODE,\n {\n className: 'type',\n begin: /</,\n end: />/,\n excludeBegin: true,\n excludeEnd: true,\n relevance: 0\n },\n {\n className: 'type',\n begin: /[,:]\\s*/,\n end: /[<\\(,){\\s]|$/,\n excludeBegin: true,\n returnEnd: true\n },\n ANNOTATION_USE_SITE,\n ANNOTATION\n ]\n },\n STRING,\n {\n className: 'meta',\n begin: \"^#!/usr/bin/env\",\n end: '$',\n illegal: '\\n'\n },\n KOTLIN_NUMBER_MODE\n ]\n };\n}\n\nmodule.exports = kotlin;\n","/*\nLanguage: YAML\nDescription: Yet Another Markdown Language\nAuthor: Stefan Wienert <stwienert@gmail.com>\nContributors: Carl Baxter <carl@cbax.tech>\nRequires: ruby.js\nWebsite: https://yaml.org\nCategory: common, config\n*/\nfunction yaml(hljs) {\n const LITERALS = 'true false yes no null';\n\n // YAML spec allows non-reserved URI characters in tags.\n const URI_CHARACTERS = '[\\\\w#;/?:@&=+$,.~*\\'()[\\\\]]+';\n\n // Define keys as starting with a word character\n // ...containing word chars, spaces, colons, forward-slashes, hyphens and periods\n // ...and ending with a colon followed immediately by a space, tab or newline.\n // The YAML spec allows for much more than this, but this covers most use-cases.\n const KEY = {\n className: 'attr',\n variants: [\n // added brackets support and special char support\n { begin: /[\\w*@][\\w*@ :()\\./-]*:(?=[ \\t]|$)/ },\n { // double quoted keys - with brackets and special char support\n begin: /\"[\\w*@][\\w*@ :()\\./-]*\":(?=[ \\t]|$)/ },\n { // single quoted keys - with brackets and special char support\n begin: /'[\\w*@][\\w*@ :()\\./-]*':(?=[ \\t]|$)/ },\n ]\n };\n \n const TEMPLATE_VARIABLES = {\n className: 'template-variable',\n variants: [\n { // jinja templates Ansible\n begin: /\\{\\{/,\n end: /\\}\\}/\n },\n { // Ruby i18n\n begin: /%\\{/,\n end: /\\}/\n }\n ]\n };\n\n const SINGLE_QUOTE_STRING = {\n className: 'string',\n relevance: 0,\n begin: /'/,\n end: /'/,\n contains: [\n {\n match: /''/,\n scope: 'char.escape',\n relevance: 0\n }\n ]\n };\n\n const STRING = {\n className: 'string',\n relevance: 0,\n variants: [\n {\n begin: /\"/,\n end: /\"/\n },\n { begin: /\\S+/ }\n ],\n contains: [\n hljs.BACKSLASH_ESCAPE,\n TEMPLATE_VARIABLES\n ]\n };\n\n // Strings inside of value containers (objects) can't contain braces,\n // brackets, or commas\n const CONTAINER_STRING = hljs.inherit(STRING, { variants: [\n {\n begin: /'/,\n end: /'/,\n contains: [\n {\n begin: /''/,\n relevance: 0\n }\n ]\n },\n {\n begin: /\"/,\n end: /\"/\n },\n { begin: /[^\\s,{}[\\]]+/ }\n ] });\n\n const DATE_RE = '[0-9]{4}(-[0-9][0-9]){0,2}';\n const TIME_RE = '([Tt \\\\t][0-9][0-9]?(:[0-9][0-9]){2})?';\n const FRACTION_RE = '(\\\\.[0-9]*)?';\n const ZONE_RE = '([ \\\\t])*(Z|[-+][0-9][0-9]?(:[0-9][0-9])?)?';\n const TIMESTAMP = {\n className: 'number',\n begin: '\\\\b' + DATE_RE + TIME_RE + FRACTION_RE + ZONE_RE + '\\\\b'\n };\n\n const VALUE_CONTAINER = {\n end: ',',\n endsWithParent: true,\n excludeEnd: true,\n keywords: LITERALS,\n relevance: 0\n };\n const OBJECT = {\n begin: /\\{/,\n end: /\\}/,\n contains: [ VALUE_CONTAINER ],\n illegal: '\\\\n',\n relevance: 0\n };\n const ARRAY = {\n begin: '\\\\[',\n end: '\\\\]',\n contains: [ VALUE_CONTAINER ],\n illegal: '\\\\n',\n relevance: 0\n };\n\n const MODES = [\n KEY,\n {\n className: 'meta',\n begin: '^---\\\\s*$',\n relevance: 10\n },\n { // multi line string\n // Blocks start with a | or > followed by a newline\n //\n // Indentation of subsequent lines must be the same to\n // be considered part of the block\n className: 'string',\n begin: '[\\\\|>]([1-9]?[+-])?[ ]*\\\\n( +)[^ ][^\\\\n]*\\\\n(\\\\2[^\\\\n]+\\\\n?)*'\n },\n { // Ruby/Rails erb\n begin: '<%[%=-]?',\n end: '[%-]?%>',\n subLanguage: 'ruby',\n excludeBegin: true,\n excludeEnd: true,\n relevance: 0\n },\n { // named tags\n className: 'type',\n begin: '!\\\\w+!' + URI_CHARACTERS\n },\n // https://yaml.org/spec/1.2/spec.html#id2784064\n { // verbatim tags\n className: 'type',\n begin: '!<' + URI_CHARACTERS + \">\"\n },\n { // primary tags\n className: 'type',\n begin: '!' + URI_CHARACTERS\n },\n { // secondary tags\n className: 'type',\n begin: '!!' + URI_CHARACTERS\n },\n { // fragment id &ref\n className: 'meta',\n begin: '&' + hljs.UNDERSCORE_IDENT_RE + '$'\n },\n { // fragment reference *ref\n className: 'meta',\n begin: '\\\\*' + hljs.UNDERSCORE_IDENT_RE + '$'\n },\n { // array listing\n className: 'bullet',\n // TODO: remove |$ hack when we have proper look-ahead support\n begin: '-(?=[ ]|$)',\n relevance: 0\n },\n hljs.HASH_COMMENT_MODE,\n {\n beginKeywords: LITERALS,\n keywords: { literal: LITERALS }\n },\n TIMESTAMP,\n // numbers are any valid C-style number that\n // sit isolated from other words\n {\n className: 'number',\n begin: hljs.C_NUMBER_RE + '\\\\b',\n relevance: 0\n },\n OBJECT,\n ARRAY,\n SINGLE_QUOTE_STRING,\n STRING\n ];\n\n const VALUE_MODES = [ ...MODES ];\n VALUE_MODES.pop();\n VALUE_MODES.push(CONTAINER_STRING);\n VALUE_CONTAINER.contains = VALUE_MODES;\n\n return {\n name: 'YAML',\n case_insensitive: true,\n aliases: [ 'yml' ],\n contains: MODES\n };\n}\n\nmodule.exports = yaml;\n","/*\nLanguage: Dockerfile\nRequires: bash.js\nAuthor: Alexis Hénaut <alexis@henaut.net>\nDescription: language definition for Dockerfile files\nWebsite: https://docs.docker.com/engine/reference/builder/\nCategory: config\n*/\n\n/** @type LanguageFn */\nfunction dockerfile(hljs) {\n const KEYWORDS = [\n \"from\",\n \"maintainer\",\n \"expose\",\n \"env\",\n \"arg\",\n \"user\",\n \"onbuild\",\n \"stopsignal\"\n ];\n return {\n name: 'Dockerfile',\n aliases: [ 'docker' ],\n case_insensitive: true,\n keywords: KEYWORDS,\n contains: [\n hljs.HASH_COMMENT_MODE,\n hljs.APOS_STRING_MODE,\n hljs.QUOTE_STRING_MODE,\n hljs.NUMBER_MODE,\n {\n beginKeywords: 'run cmd entrypoint volume add copy workdir label healthcheck shell',\n starts: {\n end: /[^\\\\]$/,\n subLanguage: 'bash'\n }\n }\n ],\n illegal: '</'\n };\n}\n\nmodule.exports = dockerfile;\n","/*\nLanguage: Diff\nDescription: Unified and context diff\nAuthor: Vasily Polovnyov <vast@whiteants.net>\nWebsite: https://www.gnu.org/software/diffutils/\nCategory: common\n*/\n\n/** @type LanguageFn */\nfunction diff(hljs) {\n const regex = hljs.regex;\n return {\n name: 'Diff',\n aliases: [ 'patch' ],\n contains: [\n {\n className: 'meta',\n relevance: 10,\n match: regex.either(\n /^@@ +-\\d+,\\d+ +\\+\\d+,\\d+ +@@/, // @@ -1,2 +1,2 @@\n /^@@ +-\\d+ +\\+\\d+,\\d+ +@@/, // @@ -1 +1,2 @@\n /^@@ +-\\d+,\\d+ +\\+\\d+ +@@/, // @@ -1,2 +1 @@\n /^@@ +-\\d+ +\\+\\d+ +@@/, // @@ -1 +1 @@\n /^\\*\\*\\* +\\d+,\\d+ +\\*\\*\\*\\*$/,\n /^--- +\\d+,\\d+ +----$/\n )\n },\n {\n className: 'comment',\n variants: [\n {\n begin: regex.either(\n /Index: /,\n /^index/,\n /={3,}/,\n /^-{3}/,\n /^\\*{3} /,\n /^\\+{3}/,\n /^diff --git/\n ),\n end: /$/\n },\n { match: /^\\*{15}$/ }\n ]\n },\n {\n className: 'addition',\n begin: /^\\+/,\n end: /$/\n },\n {\n className: 'deletion',\n begin: /^-/,\n end: /$/\n },\n {\n className: 'addition',\n begin: /^!/,\n end: /$/\n }\n ]\n };\n}\n\nmodule.exports = diff;\n","/*\n Language: GraphQL\n Author: John Foster (GH jf990), and others\n Description: GraphQL is a query language for APIs\n Category: web, common\n*/\n\n/** @type LanguageFn */\nfunction graphql(hljs) {\n const regex = hljs.regex;\n const GQL_NAME = /[_A-Za-z][_0-9A-Za-z]*/;\n return {\n name: \"GraphQL\",\n aliases: [ \"gql\" ],\n case_insensitive: true,\n disableAutodetect: false,\n keywords: {\n keyword: [\n \"query\",\n \"mutation\",\n \"subscription\",\n \"type\",\n \"input\",\n \"schema\",\n \"directive\",\n \"interface\",\n \"union\",\n \"scalar\",\n \"fragment\",\n \"enum\",\n \"on\"\n ],\n literal: [\n \"true\",\n \"false\",\n \"null\"\n ]\n },\n contains: [\n hljs.HASH_COMMENT_MODE,\n hljs.QUOTE_STRING_MODE,\n hljs.NUMBER_MODE,\n {\n scope: \"punctuation\",\n match: /[.]{3}/,\n relevance: 0\n },\n {\n scope: \"punctuation\",\n begin: /[\\!\\(\\)\\:\\=\\[\\]\\{\\|\\}]{1}/,\n relevance: 0\n },\n {\n scope: \"variable\",\n begin: /\\$/,\n end: /\\W/,\n excludeEnd: true,\n relevance: 0\n },\n {\n scope: \"meta\",\n match: /@\\w+/,\n excludeEnd: true\n },\n {\n scope: \"symbol\",\n begin: regex.concat(GQL_NAME, regex.lookahead(/\\s*:/)),\n relevance: 0\n }\n ],\n illegal: [\n /[;<']/,\n /BEGIN/\n ]\n };\n}\n\nmodule.exports = graphql;\n"],"names":["javascript","hljs","regex","IDENT_RE$1","IDENT_RE","FRAGMENT","XML_TAG","begin","end","isTrulyOpeningTag","match","response","afterMatchIndex","length","index","nextChar","input","ignoreMatch","m","n","_ref2","after","tag","slice","indexOf","afterMatch","substring","KEYWORDS$1","$pattern","keyword","KEYWORDS","literal","LITERALS","built_in","BUILT_INS","BUILT_IN_VARIABLES","decimalDigits","frac","concat","decimalInteger","NUMBER","className","variants","relevance","SUBST","keywords","contains","HTML_TEMPLATE","starts","returnEnd","BACKSLASH_ESCAPE","subLanguage","CSS_TEMPLATE","GRAPHQL_TEMPLATE","TEMPLATE_STRING","COMMENT","excludeEnd","excludeBegin","endsParent","C_BLOCK_COMMENT_MODE","C_LINE_COMMENT_MODE","SUBST_INTERNALS","APOS_STRING_MODE","QUOTE_STRING_MODE","SUBST_AND_COMMENTS","PARAMS_CONTAINS","PARAMS","CLASS_OR_EXTENDS","scope","CLASS_REFERENCE","either","_","TYPES","ERROR_TYPES","FUNCTION_DEFINITION","label","illegal","FUNCTION_CALL","list","BUILT_IN_GLOBALS","map","x","join","lookahead","PROPERTY_ACCESS","GETTER_OR_SETTER","FUNC_LEAD_IN_RE","UNDERSCORE_IDENT_RE","FUNCTION_VARIABLE","name","aliases","exports","SHEBANG","binary","RE_STARTERS_RE","REGEXP_MODE","returnBegin","skip","beginKeywords","inherit","TITLE_MODE","recurRegex","re","substitution","depth","replace","source","_len","arguments","args","Array","_key","_len2","_key2","opts","constructor","Object","splice","stripOptionsFromArgs","capture","buildDecorations","doc","decorations","descendants","node","pos","type","push","text","language","base","value","getLanguage","highlight","highlightAuto","AUTO_DETECT_SUBSET","_unused","template","document","createElement","innerHTML","offset","walk","classes","childNodes","forEach","child","nodeType","_e$nodeValue$length","_e$nodeValue","nodeValue","Decoration","inline","class","el","split","filter","Boolean","content","decorationsForCode","textContent","attrs","DecorationSet","create","empty","codeHighlightPlugin","Plugin","key","codeHighlightKey","state","init","_config","apply","tr","old","docChanged","props","getState","_export","javascript_1","typescript_1","tsLanguage","NAMESPACE","beginScope","INTERFACE","DECORATOR","swapMode","c","mode","replacement","indx","findIndex","Error","assign","ATTRIBUTE_HIGHLIGHT","find","OPTIONAL_KEY_OR_ARGUMENT","EXTENDED_NUMBER_MODE","json_1","LITERALS_MODE","TAGS","MEDIA_FEATURES","sort","reverse","PSEUDO_CLASSES","PSEUDO_ELEMENTS","ATTRIBUTES","modes","IMPORTANT","BLOCK_COMMENT","HEXCOLOR","UNICODE_RANGE","FUNCTION_DISPATCH","ATTRIBUTE_SELECTOR_MODE","CSS_NUMBER_MODE","NUMBER_RE","CSS_VARIABLE","STRINGS","case_insensitive","keyframePosition","classNameAliases","endsWithParent","attribute","scss_1","MODES","PSEUDO_ELEMENTS$1","PSEUDO_CLASSES$1","AT_IDENTIFIER","VARIABLE","sql_1","U","COMMENT_MODE","RESERVED_FUNCTIONS","FUNCTIONS","includes","kws_to_regex","kw","MULTI_WORD_KEYWORDS","exceptions","when","qualifyFn","item","reduceRelevancy","C_NUMBER_MODE","python_1","W","RESERVED_WORDS","PROMPT","LITERAL_BRACKET","STRING","digitpart","pointfloat","COMMENT_TYPE","HASH_COMMENT_MODE","unicodeRegex","hexDigits","NUMERIC","java_1","Y","JAVA_IDENT_RE","GENERIC_IDENT_RE","ANNOTATION","VAR","BRACED_VAR","HERE_DOC","END_SAME_AS_BEGIN","QUOTE_STRING","ARITHMETIC","NUMBER_MODE","KNOWN_SHEBANG","FUNCTION","INLINE_HTML","LINK","BOLD","ITALIC","BOLD_WITHOUT_ITALIC","ITALIC_WITHOUT_BOLD","CONTAINABLE","disableAutodetect","c_1","DECLTYPE_AUTO_RE","NAMESPACE_RE","FUNCTION_TYPE_RE","optional","NUMBERS","PREPROCESSOR","FUNCTION_TITLE","EXPRESSION_CONTAINS","EXPRESSION_CONTEXT","FUNCTION_DECLARATION","preprocessor","strings","CPP_PRIMITIVE_TYPES","RESERVED_KEYWORDS","CPP_KEYWORDS","_type_hints","_hint","csharp_1","le","VERBATIM_STRING","VERBATIM_STRING_NO_LF","SUBST_NO_LF","INTERPOLATED_STRING","INTERPOLATED_VERBATIM_STRING","INTERPOLATED_VERBATIM_STRING_NO_LF","GENERIC_MODIFIER","TYPE_IDENT_RE","go_1","de","rust_1","ue","RAW_IDENTIFIER","FUNCTION_INVOKE","NUMBER_SUFFIX","BUILTINS","php_1","ge","NOT_PERL_ETC","PASCAL_CASE_CLASS_NAME_RE","UPCASE_NAME_RE","SINGLE_QUOTED","WHITESPACE","onBegin","resp","data","_beginMatch","onEnd","KWS","items","result","toLowerCase","toUpperCase","dualCase","normalizeKeywords","CONSTRUCTOR_CALL","CONSTANT_REFERENCE","LEFT_AND_RIGHT_SIDE_OF_DOUBLE_COLON","NAMED_ARGUMENT","PARAMS_MODE","ATTRIBUTE_CONTAINS","endScope","MATCH_NOTHING_RE","UNDERSCORE_TITLE_MODE","RUBY_METHOD_RE","CLASS_NAME_RE","CLASS_NAME_WITH_NAMESPACE_RE","RUBY_KEYWORDS","YARDOCTAG","IRB_OBJECT","COMMENT_MODES","digits","RUBY_DEFAULT_CONTAINS","IRB_DEFAULT","unshift","kotlin_1","_e","LABEL","ANNOTATION_USE_SITE","KOTLIN_NUMBER_MODE","KOTLIN_NESTED_COMMENT","KOTLIN_PAREN_TYPE","KOTLIN_PAREN_TYPE2","keywordWrapper","test","dotKeywords","optionalDotKeywords","keywordTypes","literals","precedencegroupKeywords","numberSignKeywords","builtIns","operatorHead","operatorCharacter","operator","identifierHead","identifierCharacter","identifier","typeIdentifier","keywordAttributes","availabilityKeywords","swift_1","COMMENTS","DOT_KEYWORD","KEYWORD_GUARD","PLAIN_KEYWORDS","KEYWORD","KEYWORD_MODES","OPERATOR_GUARD","OPERATORS","ESCAPED_CHARACTER","rawDelimiter","ESCAPED_NEWLINE","INTERPOLATION","MULTILINE_STRING","SINGLE_LINE_STRING","REGEXP_CONTENTS","BARE_REGEXP_LITERAL","EXTENDED_REGEXP_LITERAL","REGEXP","QUOTED_IDENTIFIER","IDENTIFIERS","TYPE","GENERIC_ARGUMENTS","TUPLE","GENERIC_PARAMETERS","FUNCTION_PARAMETERS","FUNCTION_OR_MACRO","INIT_SUBSCRIPT","OPERATOR_DECLARATION","PRECEDENCEGROUP","TYPE_DECLARATION","_iterator","_createForOfIteratorHelper","_step","s","done","variant","interpolation","submodes","err","e","f","yaml_1","URI_CHARACTERS","CONTAINER_STRING","TIMESTAMP","VALUE_CONTAINER","OBJECT","ARRAY","C_NUMBER_RE","VALUE_MODES","pop","registerLanguage","typescript","json","xml","registerAliases","languageName","css","scss","sql","python","java","bash","shell","markdown","plaintext","cpp","csharp","go","rust","php","ruby","kotlin","swift","yaml","dockerfile","diff","graphql","PluginKey","CODE_LANGUAGES"],"mappings":"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,CAAA,CACnB7C,QAAS,CAAA,CACPd,OAASC,CAAAA,CAAAA,CAAAA,CAEXc,SAAU,CA/BM,CAChBL,UAAW,MACXlC,CAAAA,KAAAA,CAAO,wDACPoC,SAAW,CAAA,IAAA,CAAA,CAEO,CAClBjC,KAAO,CAAA,WAAA,CACP+B,UAAW,aACXE,CAAAA,SAAAA,CAAW,GA0BT1C,CAAK6D,CAAAA,gBAAAA,CACL7D,EAAK8D,iBACLwI,CAAAA,CAAAA,CACAF,CACApM,CAAAA,CAAAA,CAAK2D,mBACL3D,CAAAA,CAAAA,CAAK0D,sBAEPiB,OAAS,CAAA,KAAA,CAEb,UCiHM4H,CAAAA,CAAO,CA3HX,GACA,CAAA,MAAA,CACA,UACA,SACA,CAAA,OAAA,CACA,QACA,GACA,CAAA,YAAA,CACA,OACA,QACA,CAAA,QAAA,CACA,SACA,CAAA,MAAA,CACA,MACA,CAAA,IAAA,CACA,MACA,SACA,CAAA,KAAA,CACA,MACA,IACA,CAAA,IAAA,CACA,KACA,UACA,CAAA,YAAA,CACA,SACA,QACA,CAAA,MAAA,CACA,KACA,IACA,CAAA,IAAA,CACA,KACA,IACA,CAAA,IAAA,CACA,SACA,QACA,CAAA,MAAA,CACA,IACA,QACA,CAAA,KAAA,CACA,QACA,KACA,CAAA,KAAA,CACA,QACA,QACA,CAAA,IAAA,CACA,OACA,MACA,CAAA,MAAA,CACA,MACA,QACA,CAAA,IAAA,CACA,WACA,QACA,CAAA,GAAA,CACA,UACA,GACA,CAAA,OAAA,CACA,OACA,SACA,CAAA,QAAA,CACA,QACA,CAAA,MAAA,CACA,QACA,CAAA,SAAA,CACA,MACA,OACA,CAAA,OAAA,CACA,KACA,UACA,CAAA,OAAA,CACA,KACA,OACA,CAAA,MAAA,CACA,KACA,IACA,CAAA,KAAA,CACA,QAIA,MACA,CAAA,GAAA,CACA,SACA,MACA,CAAA,SAAA,CACA,MACA,QACA,CAAA,QAAA,CACA,UACA,eACA,CAAA,qBAAA,CACA,cACA,kBACA,CAAA,mBAAA,CACA,oBACA,SACA,CAAA,gBAAA,CACA,UACA,SACA,CAAA,cAAA,CACA,WACA,oBACA,CAAA,QAAA,CACA,eACA,gBACA,CAAA,gBAAA,CACA,OACA,QACA,CAAA,SAAA,CACA,QACA,MACA,CAAA,MAAA,CACA,SACA,CAAA,UAAA,CACA,MACA,CAAA,MAAA,CACA,MACA,UACA,CAAA,OAAA,CACA,gBACA,UAWIC,CAAAA,CAAAA,CAAAA,CAAiB,CACrB,WACA,CAAA,aAAA,CACA,eACA,OACA,CAAA,aAAA,CACA,cACA,qBACA,CAAA,eAAA,CACA,eACA,cACA,CAAA,eAAA,CACA,OACA,QACA,CAAA,OAAA,CACA,kBACA,YACA,CAAA,aAAA,CACA,iBACA,iBACA,CAAA,SAAA,CACA,uBACA,kBACA,CAAA,wBAAA,CACA,+BACA,YACA,CAAA,MAAA,CACA,YACA,QACA,CAAA,OAAA,CAEA,YACA,WACA,CAAA,YAAA,CACA,cACAC,IAAOC,CAAAA,CAAAA,CAAAA,OAAAA,CAAAA,CAAAA,CAGHC,EAAiB,CACrB,QAAA,CACA,UACA,CAAA,OAAA,CACA,SACA,CAAA,SAAA,CACA,UACA,SACA,CAAA,KAAA,CACA,WACA,MACA,CAAA,OAAA,CACA,UACA,OACA,CAAA,aAAA,CACA,gBACA,YACA,CAAA,QAAA,CACA,QACA,eACA,CAAA,cAAA,CACA,MACA,MACA,CAAA,cAAA,CACA,QACA,eACA,CAAA,UAAA,CACA,SACA,CAAA,IAAA,CACA,MACA,CAAA,YAAA,CACA,eACA,MACA,CAAA,MAAA,CACA,aACA,KACA,CAAA,WAAA,CACA,UACA,gBACA,CAAA,cAAA,CACA,mBACA,aACA,CAAA,YAAA,CACA,eACA,UACA,CAAA,cAAA,CACA,OACA,mBACA,CAAA,WAAA,CACA,aACA,UACA,CAAA,OAAA,CACA,MACA,CAAA,OAAA,CACA,QACA,CAAA,eAAA,CACA,eACA,OACA,CAAA,SAAA,CACA,SACAF,IAAOC,CAAAA,CAAAA,CAAAA,OAAAA,CAAAA,CAAAA,CAGHE,EAAkB,CACtB,OAAA,CACA,WACA,QACA,CAAA,KAAA,CACA,aACA,cACA,CAAA,YAAA,CACA,gBACA,QACA,CAAA,MAAA,CACA,cACA,WACA,CAAA,SAAA,CACA,kBACAH,IAAOC,CAAAA,CAAAA,CAAAA,OAAAA,CAAAA,CAAAA,CAEHG,EAAa,CACjB,cAAA,CACA,gBACA,aACA,CAAA,YAAA,CACA,qBACA,KACA,CAAA,aAAA,CACA,YACA,uBACA,CAAA,iBAAA,CACA,sBACA,oBACA,CAAA,qBAAA,CACA,4BACA,gBACA,CAAA,sBAAA,CACA,kBACA,qBACA,CAAA,uBAAA,CACA,oBACA,CAAA,2BAAA,CACA,YACA,CAAA,cAAA,CACA,kBACA,qBACA,CAAA,YAAA,CACA,wBACA,uBACA,CAAA,iBAAA,CACA,mBACA,kBACA,CAAA,mBAAA,CACA,sBACA,uBACA,CAAA,uBAAA,CACA,oBACA,iBACA,CAAA,gBAAA,CACA,aACA,QACA,CAAA,cAAA,CACA,qBACA,kBACA,CAAA,wBAAA,CACA,yBACA,wBACA,CAAA,oBAAA,CACA,2BACA,0BACA,CAAA,0BAAA,CACA,qBACA,oBACA,CAAA,eAAA,CACA,sBACA,2BACA,CAAA,4BAAA,CACA,sBACA,qBACA,CAAA,iBAAA,CACA,eACA,uBACA,CAAA,yBAAA,CACA,eACA,qBACA,CAAA,qBAAA,CACA,qBACA,qBACA,CAAA,oBAAA,CACA,eACA,CAAA,qBAAA,CACA,mBACA,CAAA,yBAAA,CACA,0BACA,yBACA,CAAA,qBAAA,CACA,4BACA,2BACA,CAAA,2BAAA,CACA,sBACA,qBACA,CAAA,aAAA,CACA,oBACA,mBACA,CAAA,mBAAA,CACA,gBACA,cACA,CAAA,oBAAA,CACA,qBACA,oBACA,CAAA,gBAAA,CACA,0BACA,2BACA,CAAA,cAAA,CACA,aACA,kBACA,CAAA,wBAAA,CACA,0BACA,kBACA,CAAA,kBAAA,CACA,eACA,QACA,CAAA,WAAA,CACA,uBACA,eACA,CAAA,UAAA,CACA,iBACA,WACA,CAAA,mBAAA,CACA,aACA,UACA,CAAA,YAAA,CACA,aACA,aACA,CAAA,cAAA,CACA,eACA,cACA,CAAA,aAAA,CACA,OACA,CAAA,MAAA,CACA,WACA,CAAA,WAAA,CACA,QACA,qBACA,CAAA,6BAAA,CACA,gBACA,iBACA,CAAA,cAAA,CACA,eACA,aACA,CAAA,YAAA,CACA,cACA,mBACA,CAAA,mBAAA,CACA,oBACA,aACA,CAAA,cAAA,CACA,UACA,SACA,CAAA,8BAAA,CACA,2BACA,+BACA,CAAA,wBAAA,CACA,yBACA,CAAA,WAAA,CACA,gBACA,CAAA,gBAAA,CACA,UACA,oBACA,CAAA,mBAAA,CACA,gBACA,aACA,CAAA,KAAA,CACA,YACA,YACA,CAAA,QAAA,CACA,KACA,IACA,CAAA,WAAA,CACA,UACA,mBACA,CAAA,aAAA,CACA,oBACA,cACA,CAAA,MAAA,CACA,eACA,WACA,CAAA,QAAA,CACA,MACA,CAAA,YAAA,CACA,gBACA,CAAA,WAAA,CACA,YACA,aACA,CAAA,WAAA,CACA,QACA,aACA,CAAA,eAAA,CACA,OACA,MACA,CAAA,cAAA,CACA,cACA,uBACA,CAAA,cAAA,CACA,yBACA,qBACA,CAAA,cAAA,CACA,YACA,kBACA,CAAA,aAAA,CACA,iBACA,cACA,CAAA,YAAA,CACA,iBACA,yBACA,CAAA,2BAAA,CACA,uBACA,uBACA,CAAA,cAAA,CACA,0BACA,mBACA,CAAA,yBAAA,CACA,qBACA,wBACA,CAAA,sBAAA,CACA,wBACA,yBACA,CAAA,aAAA,CACA,sBACA,KACA,CAAA,8BAAA,CACA,6BACA,MACA,CAAA,WAAA,CACA,oBACA,gBACA,CAAA,gBAAA,CACA,aACA,CAAA,iBAAA,CACA,mBACA,CAAA,UAAA,CACA,WACA,cACA,CAAA,gBAAA,CACA,gBACA,qBACA,CAAA,uBAAA,CACA,qBACA,qBACA,CAAA,QAAA,CACA,sBACA,uBACA,CAAA,SAAA,CACA,OACA,mBACA,CAAA,iBAAA,CACA,mBACA,UACA,CAAA,gBAAA,CACA,uBACA,aACA,CAAA,OAAA,CACA,aACA,aACA,CAAA,iBAAA,CACA,oBACA,cACA,CAAA,kBAAA,CACA,qBACA,WACA,CAAA,iBAAA,CACA,gBACA,cACA,CAAA,SAAA,CACA,OACA,gBACA,CAAA,gBAAA,CACA,aACA,aACA,CAAA,kBAAA,CACA,aACA,kBACA,CAAA,qBAAA,CACA,kBACA,QACA,CAAA,cAAA,CACA,kBACA,CAAA,oBAAA,CACA,eACA,CAAA,eAAA,CACA,oBACA,qBACA,CAAA,aAAA,CACA,eACA,YACA,CAAA,aAAA,CACA,SACA,YACA,CAAA,YAAA,CACA,eACA,OACA,CAAA,MAAA,CACA,cACA,kBACA,CAAA,oBAAA,CACA,qBACA,mBACA,CAAA,oBAAA,CACA,oBACA,WACA,CAAA,gBAAA,CACA,aACA,WACA,CAAA,aAAA,CACA,gBACA,aACA,CAAA,WAAA,CACA,YACA,mBACA,CAAA,YAAA,CACA,aACA,YACA,CAAA,gBAAA,CACA,aACA,iBACA,CAAA,WAAA,CACA,iBACA,YACA,CAAA,iBAAA,CACA,YACA,gBACA,CAAA,UAAA,CACA,YACA,UACA,CAAA,WAAA,CACA,QACA,CAAA,MAAA,CACA,QACA,CAAA,YAAA,CACA,kBACA,QACA,CAAA,eAAA,CACA,kBACA,aACA,CAAA,iBAAA,CACA,gBACA,SACA,CAAA,OAAA,CACA,UACA,SACA,CAAA,eAAA,CACA,iBACA,eACA,CAAA,eAAA,CACA,WACA,iBACA,CAAA,gBAAA,CACA,uBACA,iBACA,CAAA,eAAA,CACA,YACA,CAAA,YAAA,CACA,SACA,CAAA,qBAAA,CACA,4BACA,4BACA,CAAA,uBAAA,CACA,wBACA,SACA,CAAA,eAAA,CACA,oBACA,qBACA,CAAA,gBAAA,CACA,iBACA,oBACA,CAAA,sBAAA,CACA,eACA,eACA,CAAA,aAAA,CACA,OACA,kBACA,CAAA,mBAAA,CACA,oBACA,aACA,CAAA,OAAA,CACA,aACA,CAAA,cAAA,CACA,aACA,CAAA,oBAAA,CACA,gBACA,aACA,CAAA,YAAA,CACA,iBACA,UACA,CAAA,iBAAA,CACA,sBACA,oBACA,CAAA,QAAA,CACA,IACA,QACA,CAAA,MAAA,CACA,aACA,aACA,CAAA,OAAA,CACA,SACA,SACA,CAAA,YAAA,CACA,gBACA,OACA,CAAA,iBAAA,CACA,gBACA,qBACA,CAAA,yBAAA,CACA,4BACA,sBACA,CAAA,sBAAA,CACA,2BACA,4BACA,CAAA,oBAAA,CACA,sBACA,mBACA,CAAA,gBAAA,CACA,uBACA,0BACA,CAAA,4BAAA,CACA,wBACA,uBACA,CAAA,2BAAA,CACA,8BACA,qBACA,CAAA,sBAAA,CACA,qBACA,mBACA,CAAA,kBAAA,CACA,kBACA,CAAA,iBAAA,CACA,sBACA,CAAA,sBAAA,CACA,kBACA,kBACA,CAAA,iBAAA,CACA,wBACA,cACA,CAAA,eAAA,CACA,kBACA,OACA,CAAA,UAAA,CACA,MACA,YACA,CAAA,cAAA,CACA,SACA,kBACA,CAAA,mBAAA,CACA,iBACA,iBACA,CAAA,mBAAA,CACA,iBACA,cACA,CAAA,UAAA,CACA,eACA,YACA,CAAA,gBAAA,CACA,kBACA,aACA,CAAA,sBAAA,CACA,kBACA,uBACA,CAAA,sBAAA,CACA,uBACA,0BACA,CAAA,uBAAA,CACA,4BACA,eACA,CAAA,qBAAA,CACA,yBACA,qBACA,CAAA,aAAA,CACA,eACA,kBACA,CAAA,eAAA,CACA,iBACA,aACA,CAAA,kBAAA,CACA,gBACA,CAAA,uBAAA,CACA,yBACA,CAAA,WAAA,CACA,iBACA,iBACA,CAAA,gBAAA,CACA,MACA,cACA,CAAA,WAAA,CACA,gBACA,kBACA,CAAA,iBAAA,CACA,aACA,qBACA,CAAA,kBAAA,CACA,sBACA,qBACA,CAAA,4BAAA,CACA,YACA,cACA,CAAA,eAAA,CACA,cACA,aACA,CAAA,eAAA,CACA,iBACA,eACA,CAAA,oBAAA,CACA,sBACA,oBACA,CAAA,sBAAA,CACA,aACA,eACA,CAAA,gBAAA,CACA,eACA,aACA,CAAA,aAAA,CACA,aACA,cACA,CAAA,cAAA,CACA,cACA,sBACA,CAAA,QAAA,CACA,QACA,aACA,CAAA,YAAA,CACA,eACA,WACA,CAAA,cAAA,CACA,GACA,CAAA,GAAA,CACA,SACA,CAAA,MAAA,CAAA,CACAJ,OAAOC,OA2IT,CAAA,CAAA,IAjIA,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A,CAAO,eACPkC,SAAW,CAAA,WAAA,CAAA,EAAAH,MAAA,CAEVmL,GACHV,CAAMO,CAAAA,eAAAA,EAAAA,CAAAA,CAAAA,CAAAA,CAKd,CACE7K,SAAAA,CAAW,cACXlC,CAAAA,KAAAA,CAAO,OAASiM,CAAKtH,CAAAA,IAAAA,CAAK,KAAO,MAIzC,CAAA,CAAA,CAAA,EAAA,CAAA,CC3wBMsH,CAAO,CAAA,CA3HX,IACA,MACA,CAAA,SAAA,CACA,UACA,OACA,CAAA,OAAA,CACA,IACA,YACA,CAAA,MAAA,CACA,SACA,QACA,CAAA,SAAA,CACA,OACA,MACA,CAAA,IAAA,CACA,MACA,SACA,CAAA,KAAA,CACA,MACA,IACA,CAAA,IAAA,CACA,KACA,UACA,CAAA,YAAA,CACA,SACA,QACA,CAAA,MAAA,CACA,KACA,IACA,CAAA,IAAA,CACA,KACA,IACA,CAAA,IAAA,CACA,SACA,QACA,CAAA,MAAA,CACA,GACA,CAAA,QAAA,CACA,KACA,CAAA,OAAA,CACA,MACA,KACA,CAAA,OAAA,CACA,SACA,IACA,CAAA,MAAA,CACA,OACA,MACA,CAAA,KAAA,CACA,SACA,IACA,CAAA,UAAA,CACA,SACA,GACA,CAAA,SAAA,CACA,IACA,OACA,CAAA,MAAA,CACA,UACA,QACA,CAAA,QAAA,CACA,OACA,QACA,CAAA,SAAA,CACA,MACA,OACA,CAAA,OAAA,CACA,KACA,UACA,CAAA,OAAA,CACA,KACA,OACA,CAAA,MAAA,CACA,KACA,IACA,CAAA,KAAA,CACA,QAIA,MACA,CAAA,GAAA,CACA,SACA,MACA,CAAA,SAAA,CACA,MACA,QACA,CAAA,QAAA,CACA,SACA,CAAA,eAAA,CACA,qBACA,CAAA,aAAA,CACA,mBACA,mBACA,CAAA,mBAAA,CACA,UACA,gBACA,CAAA,SAAA,CACA,UACA,cACA,CAAA,UAAA,CACA,qBACA,QACA,CAAA,cAAA,CACA,iBACA,gBACA,CAAA,MAAA,CACA,SACA,SACA,CAAA,OAAA,CACA,OACA,MACA,CAAA,SAAA,CACA,WACA,MACA,CAAA,MAAA,CACA,MACA,UACA,CAAA,OAAA,CACA,gBACA,UAWIC,CAAAA,CAAAA,CAAAA,CAAiB,CACrB,WACA,CAAA,aAAA,CACA,eACA,OACA,CAAA,aAAA,CACA,cACA,qBACA,CAAA,eAAA,CACA,eACA,cACA,CAAA,eAAA,CACA,OACA,QACA,CAAA,OAAA,CACA,iBACA,CAAA,YAAA,CACA,aACA,CAAA,gBAAA,CACA,kBACA,SACA,CAAA,sBAAA,CACA,mBACA,wBACA,CAAA,8BAAA,CACA,aACA,MACA,CAAA,WAAA,CACA,SACA,OAEA,CAAA,WAAA,CACA,YACA,YACA,CAAA,YAAA,CAAA,CACAC,OAAOC,OAGHC,CAAAA,CAAAA,CAAAA,CAAAA,CAAiB,CACrB,QACA,CAAA,UAAA,CACA,OACA,CAAA,SAAA,CACA,SACA,CAAA,SAAA,CACA,UACA,KACA,CAAA,UAAA,CACA,OACA,OACA,CAAA,SAAA,CACA,QACA,aACA,CAAA,eAAA,CACA,aACA,QACA,CAAA,OAAA,CACA,gBACA,cACA,CAAA,KAAA,CACA,OACA,cACA,CAAA,OAAA,CACA,gBACA,UACA,CAAA,SAAA,CACA,IACA,CAAA,MAAA,CACA,YACA,CAAA,cAAA,CACA,OACA,MACA,CAAA,YAAA,CACA,MACA,WACA,CAAA,SAAA,CACA,iBACA,cACA,CAAA,kBAAA,CACA,cACA,YACA,CAAA,cAAA,CACA,WACA,cACA,CAAA,MAAA,CACA,oBACA,WACA,CAAA,YAAA,CACA,WACA,OACA,CAAA,MAAA,CACA,QACA,QACA,CAAA,eAAA,CACA,eACA,OACA,CAAA,SAAA,CACA,SACAF,IAAOC,CAAAA,CAAAA,CAAAA,OAAAA,CAAAA,CAAAA,CAGHE,EAAkB,CACtB,OAAA,CACA,WACA,QACA,CAAA,KAAA,CACA,aACA,cACA,CAAA,YAAA,CACA,gBACA,QACA,CAAA,MAAA,CACA,cACA,WACA,CAAA,SAAA,CACA,gBACAH,CAAAA,CAAAA,IAAAA,CAAAA,CAAAA,CAAOC,OAEHG,CAAAA,CAAAA,CAAAA,CAAAA,CAAa,CACjB,cACA,CAAA,eAAA,CACA,cACA,YACA,CAAA,oBAAA,CACA,MACA,aACA,CAAA,WAAA,CACA,wBACA,iBACA,CAAA,qBAAA,CACA,qBACA,qBACA,CAAA,2BAAA,CACA,iBACA,sBACA,CAAA,iBAAA,CACA,sBACA,uBACA,CAAA,oBAAA,CACA,4BACA,YACA,CAAA,cAAA,CACA,kBACA,qBACA,CAAA,YAAA,CACA,wBACA,uBACA,CAAA,iBAAA,CACA,mBACA,kBACA,CAAA,mBAAA,CACA,sBACA,uBACA,CAAA,uBAAA,CACA,oBACA,iBACA,CAAA,gBAAA,CACA,aACA,QACA,CAAA,cAAA,CACA,qBACA,kBACA,CAAA,wBAAA,CACA,wBACA,CAAA,wBAAA,CACA,oBACA,CAAA,0BAAA,CACA,2BACA,0BACA,CAAA,oBAAA,CACA,qBACA,eACA,CAAA,qBAAA,CACA,4BACA,4BACA,CAAA,qBAAA,CACA,sBACA,iBACA,CAAA,cAAA,CACA,wBACA,yBACA,CAAA,cAAA,CACA,sBACA,qBACA,CAAA,oBAAA,CACA,sBACA,oBACA,CAAA,eAAA,CACA,sBACA,mBACA,CAAA,yBAAA,CACA,0BACA,yBACA,CAAA,qBAAA,CACA,4BACA,2BACA,CAAA,2BAAA,CACA,sBACA,qBACA,CAAA,aAAA,CACA,oBACA,mBACA,CAAA,mBAAA,CACA,gBACA,cACA,CAAA,oBAAA,CACA,qBACA,oBACA,CAAA,gBAAA,CACA,0BACA,2BACA,CAAA,cAAA,CACA,YACA,CAAA,kBAAA,CACA,wBACA,CAAA,yBAAA,CACA,mBACA,kBACA,CAAA,cAAA,CACA,SACA,WACA,CAAA,sBAAA,CACA,gBACA,UACA,CAAA,gBAAA,CACA,YACA,mBACA,CAAA,YAAA,CACA,WACA,YACA,CAAA,YAAA,CACA,cACA,cACA,CAAA,cAAA,CACA,eACA,aACA,CAAA,OAAA,CACA,MACA,CAAA,WAAA,CACA,WACA,CAAA,OAAA,CACA,sBACA,6BACA,CAAA,eAAA,CACA,kBACA,cACA,CAAA,cAAA,CACA,cACA,YACA,CAAA,aAAA,CACA,oBACA,mBACA,CAAA,mBAAA,CACA,cACA,cACA,CAAA,SAAA,CACA,UACA,8BACA,CAAA,0BAAA,CACA,gCACA,wBACA,CAAA,yBAAA,CACA,WACA,CAAA,gBAAA,CACA,gBACA,CAAA,SAAA,CACA,qBACA,mBACA,CAAA,eAAA,CACA,cACA,KACA,CAAA,WAAA,CACA,aACA,QACA,CAAA,IAAA,CACA,KACA,WACA,CAAA,SAAA,CACA,oBACA,aACA,CAAA,mBAAA,CACA,eACA,MACA,CAAA,cAAA,CACA,YACA,QACA,CAAA,MAAA,CACA,aACA,gBACA,CAAA,WAAA,CACA,YACA,aACA,CAAA,WAAA,CACA,QACA,aACA,CAAA,eAAA,CACA,OACA,MACA,CAAA,cAAA,CACA,cACA,uBACA,CAAA,cAAA,CACA,yBACA,qBACA,CAAA,cAAA,CACA,YACA,kBACA,CAAA,aAAA,CACA,iBACA,cACA,CAAA,YAAA,CACA,gBACA,CAAA,yBAAA,CACA,2BACA,CAAA,sBAAA,CACA,wBACA,cACA,CAAA,yBAAA,CACA,oBACA,yBACA,CAAA,oBAAA,CACA,yBACA,sBACA,CAAA,uBAAA,CACA,0BACA,aACA,CAAA,qBAAA,CACA,MACA,8BACA,CAAA,4BAAA,CACA,OACA,WACA,CAAA,mBAAA,CACA,iBACA,gBACA,CAAA,aAAA,CACA,kBACA,mBACA,CAAA,UAAA,CACA,WACA,cACA,CAAA,gBAAA,CACA,gBACA,qBACA,CAAA,uBAAA,CACA,qBACA,qBACA,CAAA,QAAA,CACA,sBACA,uBACA,CAAA,SAAA,CACA,OACA,mBACA,CAAA,iBAAA,CACA,mBACA,UACA,CAAA,gBAAA,CACA,uBACA,aACA,CAAA,OAAA,CACA,YACA,CAAA,aAAA,CACA,iBACA,CAAA,mBAAA,CACA,eACA,kBACA,CAAA,oBAAA,CACA,YACA,iBACA,CAAA,eAAA,CACA,eACA,SACA,CAAA,MAAA,CACA,iBACA,gBACA,CAAA,YAAA,CACA,cACA,kBACA,CAAA,YAAA,CACA,mBACA,qBACA,CAAA,iBAAA,CACA,SACA,cACA,CAAA,kBAAA,CACA,qBACA,eACA,CAAA,eAAA,CACA,oBACA,qBACA,CAAA,aAAA,CACA,eACA,YACA,CAAA,aAAA,CACA,SACA,YACA,CAAA,YAAA,CACA,eACA,OACA,CAAA,MAAA,CACA,cACA,kBACA,CAAA,oBAAA,CACA,qBACA,mBACA,CAAA,oBAAA,CACA,oBACA,WACA,CAAA,gBAAA,CACA,YACA,CAAA,WAAA,CACA,aACA,CAAA,eAAA,CACA,cACA,WACA,CAAA,WAAA,CACA,oBACA,YACA,CAAA,YAAA,CACA,aACA,gBACA,CAAA,YAAA,CACA,kBACA,WACA,CAAA,gBAAA,CACA,aACA,iBACA,CAAA,WAAA,CACA,iBACA,UACA,CAAA,WAAA,CACA,WACA,WACA,CAAA,QAAA,CACA,MACA,CAAA,QAAA,CACA,YACA,CAAA,iBAAA,CACA,SACA,eACA,CAAA,iBAAA,CACA,cACA,iBACA,CAAA,eAAA,CACA,UACA,OACA,CAAA,SAAA,CACA,UACA,eACA,CAAA,gBAAA,CACA,gBACA,eACA,CAAA,UAAA,CACA,kBACA,gBACA,CAAA,sBAAA,CACA,kBACA,eACA,CAAA,YAAA,CACA,YACA,CAAA,SAAA,CACA,qBACA,CAAA,2BAAA,CACA,6BACA,uBACA,CAAA,uBAAA,CACA,UACA,eACA,CAAA,mBAAA,CACA,sBACA,gBACA,CAAA,gBAAA,CACA,qBACA,sBACA,CAAA,cAAA,CACA,gBACA,aACA,CAAA,MAAA,CACA,mBACA,mBACA,CAAA,mBAAA,CACA,cACA,OACA,CAAA,aAAA,CACA,eACA,aACA,CAAA,oBAAA,CACA,gBACA,aACA,CAAA,YAAA,CACA,iBACA,UACA,CAAA,iBAAA,CACA,sBACA,oBACA,CAAA,QAAA,CACA,IACA,QACA,CAAA,MAAA,CACA,aACA,aACA,CAAA,OAAA,CACA,SACA,SACA,CAAA,YAAA,CACA,gBACA,OACA,CAAA,iBAAA,CACA,eACA,CAAA,qBAAA,CACA,yBACA,CAAA,2BAAA,CACA,uBACA,sBACA,CAAA,0BAAA,CACA,6BACA,oBACA,CAAA,qBAAA,CACA,oBACA,gBACA,CAAA,sBAAA,CACA,2BACA,4BACA,CAAA,uBAAA,CACA,wBACA,2BACA,CAAA,6BAAA,CACA,sBACA,sBACA,CAAA,oBAAA,CACA,oBACA,kBACA,CAAA,kBAAA,CACA,kBACA,sBACA,CAAA,sBAAA,CACA,kBACA,kBACA,CAAA,iBAAA,CACA,wBACA,cACA,CAAA,eAAA,CACA,kBACA,OACA,CAAA,UAAA,CACA,MACA,YACA,CAAA,cAAA,CACA,SACA,kBACA,CAAA,mBAAA,CACA,iBACA,iBACA,CAAA,mBAAA,CACA,iBACA,cACA,CAAA,UAAA,CACA,cACA,CAAA,YAAA,CACA,gBACA,CAAA,iBAAA,CACA,cACA,sBACA,CAAA,iBAAA,CACA,wBACA,sBACA,CAAA,sBAAA,CACA,2BACA,uBACA,CAAA,2BAAA,CACA,gBACA,qBACA,CAAA,wBAAA,CACA,sBACA,aACA,CAAA,cAAA,CACA,mBACA,eACA,CAAA,gBAAA,CACA,cACA,kBACA,CAAA,gBAAA,CACA,wBACA,yBACA,CAAA,WAAA,CACA,iBACA,iBACA,CAAA,gBAAA,CACA,MACA,cACA,CAAA,WAAA,CACA,gBACA,kBACA,CAAA,iBAAA,CACA,aACA,qBACA,CAAA,kBAAA,CACA,sBACA,qBACA,CAAA,4BAAA,CACA,YACA,cACA,CAAA,eAAA,CACA,cACA,aACA,CAAA,eAAA,CACA,gBACA,CAAA,eAAA,CACA,oBACA,CAAA,qBAAA,CACA,qBACA,sBACA,CAAA,YAAA,CACA,gBACA,gBACA,CAAA,cAAA,CACA,cACA,aACA,CAAA,YAAA,CACA,eACA,cACA,CAAA,aAAA,CACA,uBACA,QACA,CAAA,OAAA,CACA,cACA,YACA,CAAA,cAAA,CACA,YACA,cACA,CAAA,GAAA,CACA,GACA,CAAA,SAAA,CACA,MACAJ,CAAAA,CAAAA,IAAAA,CAAAA,CAAAA,CAAOC,UAiIToB,CAAAA,CArHA,QAqHAA,CAAAA,CAAAA,CArHc9N,CACZ,CAAA,CAAA,GAAM8M,CAAAA,EA5zBO9M,SAAAA,CAAAA,QACN,CACL+M,SAAW,CAAA,CACT5I,MAAO,MACP7D,CAAAA,KAAAA,CAAO,cAET0M,aAAehN,CAAAA,CAAAA,CAAK0D,qBACpBuJ,QAAU,CAAA,CACR9I,KAAO,CAAA,QAAA,CACP7D,KAAO,CAAA,iDAAA,CAAA,CAET4M,cAAe,CACb/I,KAAAA,CAAO,SACP7D,KAAO,CAAA,qEAAA,CAAA,CAET6M,kBAAmB,CACjB3K,SAAAA,CAAW,WACXlC,KAAO,CAAA,cAAA,CAAA,CAET8M,wBAAyB,CACvBjJ,KAAAA,CAAO,gBACP7D,KAAO,CAAA,IAAA,CACPC,IAAK,IACLoE,CAAAA,OAAAA,CAAS,IACT9B,QAAU,CAAA,CACR7C,EAAK6D,gBACL7D,CAAAA,CAAAA,CAAK8D,oBAGTuJ,eAAiB,CAAA,CACflJ,MAAO,QACP7D,CAAAA,KAAAA,CAAON,EAAKsN,SAALtN,CAAAA,iGAAAA,CASP0C,UAAW,CAEb6K,CAAAA,CAAAA,YAAAA,CAAc,CACZ/K,SAAW,CAAA,MAAA,CACXlC,MAAO,2BAgxBGyN,CAAAA,CAAAA,EAAAA,CAAM/N,CACdgO,CAAAA,CAAAA,CAAAA,CAAoBpB,CACpBqB,CAAAA,CAAAA,CAAmBtB,EAEnBuB,CAAgB,CAAA,UAAA,CAGhBC,EAAW,CACf3L,SAAAA,CAAW,WACXlC,KAAO,CAAA,iCAAA,CACPoC,UAAW,CAGb,CAAA,CAAA,MAAO,CACL8C,IAAM,CAAA,MAAA,CACNiI,kBAAkB,CAClB9I,CAAAA,OAAAA,CAAS,SACT9B,QAAU,CAAA,CACR7C,EAAK2D,mBACL3D,CAAAA,CAAAA,CAAK0D,qBAGLoJ,CAAMO,CAAAA,eAAAA,CACN,CACE7K,SAAW,CAAA,aAAA,CACXlC,MAAO,iBACPoC,CAAAA,SAAAA,CAAW,GAEb,CACEF,SAAAA,CAAW,iBACXlC,KAAO,CAAA,mBAAA,CACPoC,UAAW,CAEboK,CAAAA,CAAAA,CAAAA,CAAMM,wBACN,CACE5K,SAAAA,CAAW,cACXlC,CAAAA,KAAAA,CAAO,MAASiM,CAAAA,CAAAA,CAAKtH,KAAK,GAAO,CAAA,CAAA,MAAA,CAEjCvC,UAAW,CAEb,CAAA,CAAA,CACEF,UAAW,iBACXlC,CAAAA,KAAAA,CAAO,KAAO2N,CAAiBhJ,CAAAA,IAAAA,CAAK,KAAO,GAE7C,CAAA,CAAA,CACEzC,UAAW,iBACXlC,CAAAA,KAAAA,CAAO,SAAW0N,CAAkB/I,CAAAA,IAAAA,CAAK,KAAO,GAElDkJ,CAAAA,CAAAA,CAAAA,CACA,CACE7N,KAAO,CAAA,IAAA,CACPC,IAAK,IACLsC,CAAAA,QAAAA,CAAU,CAAEiK,CAAMO,CAAAA,eAAAA,CAAAA,CAAAA,CAEpBP,EAAMS,YACN,CAAA,CACE/K,UAAW,WACXlC,CAAAA,KAAAA,CAAO,OAASuM,CAAW5H,CAAAA,IAAAA,CAAK,KAAO,MAEzC,CAAA,CAAA,CAAE3E,KAAO,CAAA,4oCAAA,CAAA,CACT,CACEA,KAAAA,CAAO,IACPC,GAAK,CAAA,OAAA,CACLmC,UAAW,CACXG,CAAAA,QAAAA,CAAU,CACRiK,CAAME,CAAAA,aAAAA,CACNmB,EACArB,CAAMG,CAAAA,QAAAA,CACNH,EAAMO,eACNP,CAAAA,CAAAA,CAAMI,cACNlN,CAAK8D,CAAAA,iBAAAA,CACL9D,EAAK6D,gBACLiJ,CAAAA,CAAAA,CAAMC,SACND,CAAAA,CAAAA,CAAMK,iBAMV,CAAA,CAAA,CAAA,CACE7M,MAAO,mBACPsC,CAAAA,QAAAA,CAAU,CACRjB,QAAUuM,CAAAA,CAAAA,CACVtM,QAAS,kBAGb,CAAA,CAAA,CAAA,CACEtB,MAAO,GACPC,CAAAA,GAAAA,CAAK,OACLwF,WAAa,CAAA,CAAA,CAAA,CACbnD,SAAU,CACRjB,QAAAA,CAAU,UACVC,OAvFa,CAAA,iBAAA,CAwFbiM,SAAWrB,CAAAA,CAAAA,CAAevH,IAAK,CAAA,GAAA,CAAA,CAAA,CAEjCpC,SAAU,CACR,CACEvC,MAAO4N,CACP1L,CAAAA,SAAAA,CAAW,WAEb,CACElC,KAAAA,CAAO,eACPkC,SAAW,CAAA,WAAA,CAAA,CAEb2L,EACAnO,CAAK8D,CAAAA,iBAAAA,CACL9D,EAAK6D,gBACLiJ,CAAAA,CAAAA,CAAMG,SACNH,CAAMO,CAAAA,eAAAA,CAAAA,CAAAA,CAGVP,EAAMK,iBAGZ,CAAA,CAAA,EAAA,QC1PAiB,CA9pBA,CAAA,QA8pBAA,CAAAA,CA9pBAC,CAAarO,GACX,GAAMC,CAAAA,CAAAA,CAAQD,EAAKC,KACbqO,CAAAA,CAAAA,CAAetO,EAAKsD,OAAQ,CAAA,IAAA,CAAM,KA8blCiL,CAAqB,CAAA,CACzB,MACA,MACA,CAAA,WAAA,CACA,MACA,CAAA,MAAA,CACA,KACA,CAAA,MAAA,CACA,OACA,SACA,CAAA,UAAA,CACA,OACA,KACA,CAAA,MAAA,CACA,QACA,WACA,CAAA,YAAA,CACA,YACA,YACA,CAAA,OAAA,CACA,UACA,KACA,CAAA,SAAA,CACA,cACA,OACA,CAAA,YAAA,CACA,gBACA,aACA,CAAA,aAAA,CACA,iBACA,YACA,CAAA,YAAA,CACA,uBACA,YACA,CAAA,KAAA,CACA,aACA,MACA,CAAA,SAAA,CACA,KACA,KACA,CAAA,OAAA,CACA,QACA,KACA,CAAA,KAAA,CACA,MACA,WACA,CAAA,OAAA,CACA,SACA,cACA,CAAA,iBAAA,CACA,kBACA,UACA,CAAA,gBAAA,CACA,OACA,CAAA,MAAA,CACA,WACA,CAAA,WAAA,CACA,aACA,gBACA,CAAA,SAAA,CACA,aACA,UACA,CAAA,UAAA,CACA,WACA,YACA,CAAA,KAAA,CACA,OACA,MACA,CAAA,YAAA,CACA,cACA,WACA,CAAA,iBAAA,CACA,MACA,KACA,CAAA,MAAA,CACA,YACA,iBACA,CAAA,OAAA,CACA,OACA,YACA,CAAA,QAAA,CACA,QACA,UACA,CAAA,SAAA,CACA,WACA,cA2CIC,CAAAA,CAAAA,CAAAA,CAAYD,EAEZ1M,CAAW,CAAA,CArff,MACA,MACA,CAAA,KAAA,CACA,WACA,OACA,CAAA,KAAA,CACA,MACA,KACA,CAAA,OAAA,CACA,YACA,uBACA,CAAA,IAAA,CACA,YACA,CAAA,MAAA,CACA,YACA,CAAA,IAAA,CACA,OACA,QACA,CAAA,eAAA,CACA,MACA,OACA,CAAA,aAAA,CACA,kBACA,SACA,CAAA,QAAA,CACA,SACA,MACA,CAAA,SAAA,CACA,OACA,IACA,CAAA,MAAA,CACA,SACA,aACA,CAAA,UAAA,CACA,OACA,MACA,CAAA,MAAA,CACA,SACA,CAAA,MAAA,CACA,aACA,CAAA,WAAA,CACA,mBACA,OACA,CAAA,YAAA,CACA,OACA,OACA,CAAA,UAAA,CACA,UACA,SACA,CAAA,QAAA,CACA,SACA,WACA,CAAA,SAAA,CACA,aACA,UACA,CAAA,SAAA,CACA,OACA,MACA,CAAA,eAAA,CACA,MACA,MACA,CAAA,OAAA,CACA,WACA,CAAA,YAAA,CACA,QACA,CAAA,OAAA,CACA,OACA,WACA,CAAA,SAAA,CACA,kBACA,cACA,CAAA,iCAAA,CACA,eACA,cACA,CAAA,aAAA,CACA,iBACA,cACA,CAAA,mBAAA,CACA,eACA,cACA,CAAA,kCAAA,CACA,eACA,QACA,CAAA,OAAA,CACA,OACA,KACA,CAAA,YAAA,CACA,MACA,SACA,CAAA,UAAA,CACA,UACA,SACA,CAAA,QAAA,CACA,SACA,YACA,CAAA,OAAA,CACA,WACA,eACA,CAAA,YAAA,CACA,WACA,QACA,CAAA,MAAA,CACA,UACA,MACA,CAAA,SAAA,CACA,OACA,OACA,CAAA,KAAA,CACA,YACA,eACA,CAAA,UAAA,CACA,QACA,CAAA,QAAA,CACA,OACA,CAAA,QAAA,CACA,OACA,SACA,CAAA,QAAA,CACA,MACA,UACA,CAAA,SAAA,CACA,QACA,OACA,CAAA,QAAA,CACA,cACA,OACA,CAAA,OAAA,CACA,MACA,SACA,CAAA,WAAA,CACA,OACA,MACA,CAAA,MAAA,CACA,WACA,QACA,CAAA,KAAA,CACA,SACA,OACA,CAAA,OAAA,CACA,WACA,QACA,CAAA,QAAA,CACA,OACA,MACA,CAAA,UAAA,CACA,KACA,WACA,CAAA,SAAA,CACA,QACA,OACA,CAAA,aAAA,CACA,SACA,KACA,CAAA,SAAA,CACA,YACA,cACA,CAAA,UAAA,CACA,OACA,IACA,CAAA,MAAA,CACA,YACA,CAAA,eAAA,CACA,aACA,CAAA,aAAA,CACA,iBACA,YACA,CAAA,YAAA,CACA,uBACA,YACA,CAAA,KAAA,CACA,WACA,OACA,CAAA,YAAA,CACA,UACA,MACA,CAAA,SAAA,CACA,OACA,MACA,CAAA,YAAA,CACA,UACA,IACA,CAAA,OAAA,CACA,YACA,gBACA,CAAA,KAAA,CACA,QACA,OACA,CAAA,OAAA,CACA,eACA,iBACA,CAAA,SAAA,CACA,MACA,QACA,CAAA,OAAA,CACA,SACA,KACA,CAAA,QAAA,CACA,MACA,UACA,CAAA,QAAA,CACA,QACA,UACA,CAAA,UAAA,CACA,UACA,OACA,CAAA,OAAA,CACA,MACA,IACA,CAAA,MAAA,CACA,WACA,CAAA,KAAA,CACA,WACA,CAAA,OAAA,CACA,OACA,QACA,CAAA,SAAA,CACA,eACA,mBACA,CAAA,IAAA,CACA,SACA,KACA,CAAA,MAAA,CACA,KACA,KACA,CAAA,MAAA,CACA,OACA,IACA,CAAA,OAAA,CACA,MACA,OACA,CAAA,MAAA,CACA,WACA,SACA,CAAA,WAAA,CACA,WACA,CAAA,SAAA,CACA,KACA,CAAA,SAAA,CACA,eACA,iBACA,CAAA,iBAAA,CACA,SACA,SACA,CAAA,UAAA,CACA,iBACA,OACA,CAAA,UAAA,CACA,YACA,SACA,CAAA,SAAA,CACA,YACA,KACA,CAAA,OAAA,CACA,OACA,OACA,CAAA,MAAA,CACA,YACA,KACA,CAAA,YAAA,CACA,aACA,CAAA,WAAA,CACA,WACA,CAAA,YAAA,CACA,iBACA,SACA,CAAA,YAAA,CACA,WACA,UACA,CAAA,UAAA,CACA,UACA,QACA,CAAA,QAAA,CACA,UACA,QACA,CAAA,OAAA,CACA,WACA,QACA,CAAA,KAAA,CACA,aACA,MACA,CAAA,SAAA,CACA,YACA,OACA,CAAA,QAAA,CACA,SACA,QACA,CAAA,MAAA,CACA,SACA,WACA,CAAA,cAAA,CACA,MACA,MACA,CAAA,SAAA,CACA,MACA,MACA,CAAA,MAAA,CACA,WACA,MACA,CAAA,UAAA,CACA,eACA,KACA,CAAA,cAAA,CACA,WACA,YACA,CAAA,MAAA,CACA,QACA,QACA,CAAA,YAAA,CACA,aACA,CAAA,aAAA,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MAAA,CACA,QACA,MACA,CAAA,OAAA,CACA,QAIA,OACA,CAAA,MAAA,CACA,UACA,QACA,CAAA,SAAA,CACA,UACA,MACA,CAAA,QAAA,CACA,OACA,KACA,CAAA,OAAA,CACA,SACA,SACA,CAAA,QAAA,CACA,OACA,WACA,CAAA,QAAA,CACA,OACA,MACA,CAAA,SAAA,CACA,QACA,CAAA,SAAA,CAkMI,KACA,CAAA,OAAA,CA/LJ,WACA,IACA,CAAA,SAAA,CACA,MACA,KACA,CAAA,OAAA,CACA,QACA,eACA,CAAA,UAAA,CACA,UACA,cACA,CAAA,WAAA,CACA,aACA,WACA,CAAA,UAAA,CACA,UACA,YACA,CAAA,MAAA,CACA,UACA,QACA,CAAA,QAAA,CACA,SACA,SACA,CAAA,IAAA,CACA,KACA,OACA,CAAA,WAAA,CACA,SACA,OACA,CAAA,SAAA,CACA,UACA,MACA,CAAA,MAAA,CACA,QACA,KACA,CAAA,QAAA,CACA,OACA,OACA,CAAA,OAAA,CACA,SACA,QACA,CAAA,OAAA,CACA,SACA,QACA,CAAA,MAAA,CACA,SACA,CAAA,QAAA,CACA,YACA,CAAA,QAAA,CACA,UACA,UACA,CAAA,OAAA,CACA,OACA,QACA,CAAA,OAAA,CACA,QACA,UACA,CAAA,SAAA,CACA,OACA,KACA,CAAA,UAAA,CACA,aACA,OACA,CAAA,MAAA,CACA,cACA,SACA,CAAA,QAAA,CACA,OAIA,OACA,CAAA,OAAA,CACA,QACA,OACA,CAAA,IAAA,CACA,KACA,IACA,CAAA,KAAA,CACA,YACA,IACA,CAAA,IAAA,CACA,QACA,QACA,CAAA,OAAA,CACA,SACA,IACA,CAAA,UAAA,CACA,KACA,OACA,CAAA,OAAA,CACA,OACA,OACA,CAAA,UAAA,CACA,OACA,OACA,CAAA,QAAA,CACA,QACA,CAAA,KAAA,CACA,OACA,CAAA,MAAA,CACA,SACA,KACA,CAAA,QAAA,CACA,MACA,MACA,CAAA,MAAA,CACA,OACA,QACA,CAAA,IAAA,CACA,SACA,IACA,CAAA,OAAA,CACA,MACA,IACA,CAAA,SAA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CA,UACA,CAAA,QAAA,CACA,QACA,QAmLAjG,CAAAA,CAAAA,OAAAA,CAASwQ,CACTtQ,CAAAA,OAAAA,CAde,CACf,MAAA,CACA,QACA,SACA,CAAA,SAAA,CACA,QAUAE,QANe,CAAA,CAAE,WAOjBsQ,WAnLiB,CAAA,CACjB,MACA,UACA,CAAA,SAAA,CACA,mBACA,QACA,CAAA,SAAA,CACA,qBACA,wBACA,CAAA,oBAAA,CACA,QACA,YACA,CAAA,UAAA,CACA,WACA,QACA,CAAA,WAAA,CACA,mBACA,eACA,CAAA,SAAA,CACA,QACA,YACA,CAAA,UAAA,CACA,WACA,OACA,CAAA,UAAA,CACA,gBACA,eACA,CAAA,MAAA,CACA,UACA,gBACA,CAAA,OAAA,CACA,kBACA,uBACA,CAAA,aAAA,CACA,MACA,eACA,CAAA,aAAA,CACA,cACA,CAAA,oBAAA,CACA,YACA,CAAA,OAAA,CACA,cACA,cACA,CAAA,aAAA,CACA,SACA,WACA,CAAA,OAAA,CACA,cACA,YACA,CAAA,eAAA,CACA,qBACA,oBACA,CAAA,eAAA,CACA,UACA,QACA,CAAA,UAAA,CACA,UACA,cA6HInF,CAAAA,CAAAA,CAAAA,CAAAA,CAAoB,CACxB3K,SAAW,CAAA,mBAAA,CACXE,SAAW,CAAA,CAAA,CACXE,QAAU,CAAA,CAER2P,MA/HmB,CACrB,OAAA,CACA,MACA,MACA,CAAA,OAAA,CACA,WACA,MACA,CAAA,MAAA,CACA,QACA,QACA,CAAA,MAAA,CACA,OACA,KACA,CAAA,MAAA,CACA,MACA,MACA,CAAA,MAAA,CACA,UACA,MACA,CAAA,UAAA,CACA,MACA,CAAA,KAAA,CACA,MACA,CAAA,OAAA,CACA,OACA,SACA,CAAA,SAAA,CACA,QACA,MACA,CAAA,OAAA,CACA,SACA,QACA,CAAA,QAAA,CACA,UACA,SACA,CAAA,SAAA,CACA,UACA,SACA,CAAA,SAAA,CACA,UACA,SACA,CAAA,SAAA,CACA,UACA,UACA,CAAA,MAAA,CACA,UACA,OACA,CAAA,KAAA,CACA,QACA,WACA,CAAA,aAAA,CACA,4B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A,CACA,WACA,MACA,CAAA,SAAA,CACA,QACA,KACA,CAAA,OAAA,CACA,SACA,IACA,CAAA,SAAA,CACA,YACA,QACA,CAAA,UAAA,CACA,OACA,QACA,CAAA,QAAA,CACA,SACA,OACA,CAAA,OAAA,CACA,MACA,OACA,CAAA,KAAA,CACA,MACA,MACA,CAAA,OAAA,CACA,MACA,OAGIrS,CAAAA,CAAAA,CAAAA,CAAY,CAGhB,SACA,CAAA,gBAAA,CACA,qBACA,iBACA,CAAA,eAAA,CACA,cACA,gBACA,CAAA,0BAAA,CACA,wBACA,CAAA,iBAAA,CACA,wBACA,CAAA,cAAA,CACA,YACA,mBACA,CAAA,qBAAA,CACA,kBACA,eACA,CAAA,gBAAA,CACA,YACA,oBACA,CAAA,gBAAA,CACA,eACA,kBACA,CAAA,0BAAA,CACA,mBACA,iBACA,CAAA,eAAA,CACA,iBACA,kBACA,CAAA,kBAAA,CACA,uBACA,qBACA,CAAA,eAAA,CACA,oBACA,gBACA,CAAA,YAAA,CACA,iBACA,wBACA,CAAA,0BAAA,CACA,kCACA,4BACA,CAAA,yBAAA,CACA,oBACA,2BACA,CAAA,wBAAA,CACA,wBACA,eACA,CAAA,kBAAA,CACA,mBACA,qBACA,CAAA,aAAA,CACA,gBACA,eACA,CAAA,SAAA,CACA,aACA,YACA,CAAA,kBAAA,CACA,aACA,CAAA,kBAAA,CACA,UACA,CAAA,UAAA,CACA,aACA,mBACA,CAAA,WAAA,CACA,qBACA,0BACA,CAAA,qBAAA,CAGA,cACA,YACA,CAAA,SAAA,CACA,QACA,WACA,CAAA,UAAA,CACA,oBACA,cACA,CAAA,YAAA,CACA,YACA,aACA,CAAA,UAAA,CACA,gBACA,SAGA,CAAA,WAAA,CACA,wBACA,CAAA,QAAA,CACA,iBACA,CAAA,MAAA,CACA,SACA,UAuBIJ,CAAAA,CAAAA,CAAAA,CAAW,CACfD,OAAS0S,CAAAA,CAAAA,CACTxS,QAhBgByS,SAAAA,CAAAA,CAAAA,CAEhB,GAAMC,CAAAA,CAAS,CAAA,EAAA,CASf,MARAD,CAAAA,CAAMvL,CAAAA,OAAAA,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AAA,CACA,SACA,QACA,CAAA,UAAA,CACA,WACA,QACA,CAAA,KAAA,CACA,OACA,QACA,CAAA,QAAA,CACA,YACA,OACA,CAAA,QAAA,CACA,SACA,OACA,CAAA,OAAA,CACA,OACA,KACA,CAAA,WAAA,CACA,kBACA,mBACA,CAAA,SAAA,CACA,KACA,CAAA,MAAA,CACA,OACA,CAAA,OAAA,CACA,WAOIkU,EAAW,CAAA,CACf,QACA,KACA,CAAA,MAAA,CAAA,CAIIC,GAA0B,CAC9B,YAAA,CACA,gBACA,YACA,CAAA,MAAA,CACA,YACA,MACA,CAAA,OAAA,CAAA,CAKIC,GAAqB,CACzB,eAAA,CACA,UACA,YACA,CAAA,OAAA,CACA,UACA,QACA,CAAA,QAAA,CACA,QACA,SACA,CAAA,cAAA,CACA,YACA,WACA,CAAA,KAAA,CACA,gBACA,UACA,CAAA,OAAA,CACA,YACA,iBACA,CAAA,UAAA,CAAA,CAIIC,GAAW,CACf,KAAA,CACA,MACA,KACA,CAAA,QAAA,CACA,mBACA,YACA,CAAA,MAAA,CACA,YACA,CAAA,WAAA,CACA,2BACA,CAAA,KAAA,CACA,MACA,aACA,CAAA,cAAA,CACA,eACA,cACA,CAAA,qBAAA,CACA,QACA,UACA,CAAA,eAAA,CACA,WACA,QACA,CAAA,MAAA,CACA,oCACA,WACA,CAAA,MAAA,CACA,gBACA,gBACA,CAAA,sBAAA,CACA,2BACA,mBACA,CAAA,YAAA,CACA,0BACA,KAIIC,CAAAA,CAAAA,EAAAA,CAAe7S,GACnB,mBACA,CAAA,iBAAA,CACA,iBACA,gBACA,CAAA,gBAAA,CACA,mCACA,iBACA,CAAA,iBAAA,CACA,kBACA,iBACA,CAAA,iBAAA,CACA,kBACA,iBACA,CAAA,iBAAA,CACA,kBACA,iBACA,CAAA,iBAAA,CACA,YAII8S,EAAoB9S,CAAAA,EAAAA,CACxB6S,EACA,CAAA,iBAAA,CACA,iBACA,CAAA,iBAAA,CACA,kBACA,iBAMIE,CAAAA,CAAAA,EAAAA,CAAW/U,GAAO6U,EAAcC,CAAAA,EAAAA,CAAmB,KAGnDE,EAAiBhT,C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","x_google_ignoreList":[0,1,2,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25]}
1
+ {"version":3,"file":"code-highlight.cjs.js","sources":["../../../../../../node_modules/highlight.js/lib/languages/typescript.js","../../../../../../node_modules/highlight.js/lib/languages/java.js","../../../../../../node_modules/highlight.js/lib/languages/swift.js","../../../../../src/nile-wysiwyg-editor/engine/plugins/code-highlight.ts","../../../../../../node_modules/highlight.js/lib/languages/javascript.js","../../../../../../node_modules/highlight.js/lib/languages/json.js","../../../../../../node_modules/highlight.js/lib/languages/css.js","../../../../../../node_modules/highlight.js/lib/languages/scss.js","../../../../../../node_modules/highlight.js/lib/languages/sql.js","../../../../../../node_modules/highlight.js/lib/languages/python.js","../../../../../../node_modules/highlight.js/lib/languages/bash.js","../../../../../../node_modules/highlight.js/lib/languages/shell.js","../../../../../../node_modules/highlight.js/lib/languages/markdown.js","../../../../../../node_modules/highlight.js/lib/languages/plaintext.js","../../../../../../node_modules/highlight.js/lib/languages/c.js","../../../../../../node_modules/highlight.js/lib/languages/cpp.js","../../../../../../node_modules/highlight.js/lib/languages/csharp.js","../../../../../../node_modules/highlight.js/lib/languages/go.js","../../../../../../node_modules/highlight.js/lib/languages/rust.js","../../../../../../node_modules/highlight.js/lib/languages/php.js","../../../../../../node_modules/highlight.js/lib/languages/ruby.js","../../../../../../node_modules/highlight.js/lib/languages/kotlin.js","../../../../../../node_modules/highlight.js/lib/languages/yaml.js","../../../../../../node_modules/highlight.js/lib/languages/dockerfile.js","../../../../../../node_modules/highlight.js/lib/languages/diff.js","../../../../../../node_modules/highlight.js/lib/languages/graphql.js"],"sourcesContent":["const IDENT_RE = '[A-Za-z$_][0-9A-Za-z$_]*';\n\nconst KEYWORDS = [\n \"as\", // for exports\n \"in\",\n \"of\",\n \"if\",\n \"for\",\n \"while\",\n \"finally\",\n \"var\",\n \"new\",\n \"function\",\n \"do\",\n \"return\",\n \"void\",\n \"else\",\n \"break\",\n \"catch\",\n \"instanceof\",\n \"with\",\n \"throw\",\n \"case\",\n \"default\",\n \"try\",\n \"switch\",\n \"continue\",\n \"typeof\",\n \"delete\",\n \"let\",\n \"yield\",\n \"const\",\n \"class\",\n // JS handles these with a special rule\n // \"get\",\n // \"set\",\n \"debugger\",\n \"async\",\n \"await\",\n \"static\",\n \"import\",\n \"from\",\n \"export\",\n \"extends\",\n // It's reached stage 3, which is \"recommended for implementation\":\n \"using\"\n];\nconst LITERALS = [\n \"true\",\n \"false\",\n \"null\",\n \"undefined\",\n \"NaN\",\n \"Infinity\"\n];\n\n// https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects\nconst TYPES = [\n // Fundamental objects\n \"Object\",\n \"Function\",\n \"Boolean\",\n \"Symbol\",\n // numbers and dates\n \"Math\",\n \"Date\",\n \"Number\",\n \"BigInt\",\n // text\n \"String\",\n \"RegExp\",\n // Indexed collections\n \"Array\",\n \"Float32Array\",\n \"Float64Array\",\n \"Int8Array\",\n \"Uint8Array\",\n \"Uint8ClampedArray\",\n \"Int16Array\",\n \"Int32Array\",\n \"Uint16Array\",\n \"Uint32Array\",\n \"BigInt64Array\",\n \"BigUint64Array\",\n // Keyed collections\n \"Set\",\n \"Map\",\n \"WeakSet\",\n \"WeakMap\",\n // Structured data\n \"ArrayBuffer\",\n \"SharedArrayBuffer\",\n \"Atomics\",\n \"DataView\",\n \"JSON\",\n // Control abstraction objects\n \"Promise\",\n \"Generator\",\n \"GeneratorFunction\",\n \"AsyncFunction\",\n // Reflection\n \"Reflect\",\n \"Proxy\",\n // Internationalization\n \"Intl\",\n // WebAssembly\n \"WebAssembly\"\n];\n\nconst ERROR_TYPES = [\n \"Error\",\n \"EvalError\",\n \"InternalError\",\n \"RangeError\",\n \"ReferenceError\",\n \"SyntaxError\",\n \"TypeError\",\n \"URIError\"\n];\n\nconst BUILT_IN_GLOBALS = [\n \"setInterval\",\n \"setTimeout\",\n \"clearInterval\",\n \"clearTimeout\",\n\n \"require\",\n \"exports\",\n\n \"eval\",\n \"isFinite\",\n \"isNaN\",\n \"parseFloat\",\n \"parseInt\",\n \"decodeURI\",\n \"decodeURIComponent\",\n \"encodeURI\",\n \"encodeURIComponent\",\n \"escape\",\n \"unescape\"\n];\n\nconst BUILT_IN_VARIABLES = [\n \"arguments\",\n \"this\",\n \"super\",\n \"console\",\n \"window\",\n \"document\",\n \"localStorage\",\n \"sessionStorage\",\n \"module\",\n \"global\" // Node.js\n];\n\nconst BUILT_INS = [].concat(\n BUILT_IN_GLOBALS,\n TYPES,\n ERROR_TYPES\n);\n\n/*\nLanguage: JavaScript\nDescription: JavaScript (JS) is a lightweight, interpreted, or just-in-time compiled programming language with first-class functions.\nCategory: common, scripting, web\nWebsite: https://developer.mozilla.org/en-US/docs/Web/JavaScript\n*/\n\n\n/** @type LanguageFn */\nfunction javascript(hljs) {\n const regex = hljs.regex;\n /**\n * Takes a string like \"<Booger\" and checks to see\n * if we can find a matching \"</Booger\" later in the\n * content.\n * @param {RegExpMatchArray} match\n * @param {{after:number}} param1\n */\n const hasClosingTag = (match, { after }) => {\n const tag = \"</\" + match[0].slice(1);\n const pos = match.input.indexOf(tag, after);\n return pos !== -1;\n };\n\n const IDENT_RE$1 = IDENT_RE;\n const FRAGMENT = {\n begin: '<>',\n end: '</>'\n };\n // to avoid some special cases inside isTrulyOpeningTag\n const XML_SELF_CLOSING = /<[A-Za-z0-9\\\\._:-]+\\s*\\/>/;\n const XML_TAG = {\n begin: /<[A-Za-z0-9\\\\._:-]+/,\n end: /\\/[A-Za-z0-9\\\\._:-]+>|\\/>/,\n /**\n * @param {RegExpMatchArray} match\n * @param {CallbackResponse} response\n */\n isTrulyOpeningTag: (match, response) => {\n const afterMatchIndex = match[0].length + match.index;\n const nextChar = match.input[afterMatchIndex];\n if (\n // HTML should not include another raw `<` inside a tag\n // nested type?\n // `<Array<Array<number>>`, etc.\n nextChar === \"<\" ||\n // the , gives away that this is not HTML\n // `<T, A extends keyof T, V>`\n nextChar === \",\"\n ) {\n response.ignoreMatch();\n return;\n }\n\n // `<something>`\n // Quite possibly a tag, lets look for a matching closing tag...\n if (nextChar === \">\") {\n // if we cannot find a matching closing tag, then we\n // will ignore it\n if (!hasClosingTag(match, { after: afterMatchIndex })) {\n response.ignoreMatch();\n }\n }\n\n // `<blah />` (self-closing)\n // handled by simpleSelfClosing rule\n\n let m;\n const afterMatch = match.input.substring(afterMatchIndex);\n\n // some more template typing stuff\n // <T = any>(key?: string) => Modify<\n if ((m = afterMatch.match(/^\\s*=/))) {\n response.ignoreMatch();\n return;\n }\n\n // `<From extends string>`\n // technically this could be HTML, but it smells like a type\n // NOTE: This is ugh, but added specifically for https://github.com/highlightjs/highlight.js/issues/3276\n if ((m = afterMatch.match(/^\\s+extends\\s+/))) {\n if (m.index === 0) {\n response.ignoreMatch();\n // eslint-disable-next-line no-useless-return\n return;\n }\n }\n }\n };\n const KEYWORDS$1 = {\n $pattern: IDENT_RE,\n keyword: KEYWORDS,\n literal: LITERALS,\n built_in: BUILT_INS,\n \"variable.language\": BUILT_IN_VARIABLES\n };\n\n // https://tc39.es/ecma262/#sec-literals-numeric-literals\n const decimalDigits = '[0-9](_?[0-9])*';\n const frac = `\\\\.(${decimalDigits})`;\n // DecimalIntegerLiteral, including Annex B NonOctalDecimalIntegerLiteral\n // https://tc39.es/ecma262/#sec-additional-syntax-numeric-literals\n const decimalInteger = `0|[1-9](_?[0-9])*|0[0-7]*[89][0-9]*`;\n const NUMBER = {\n className: 'number',\n variants: [\n // DecimalLiteral\n { begin: `(\\\\b(${decimalInteger})((${frac})|\\\\.)?|(${frac}))` +\n `[eE][+-]?(${decimalDigits})\\\\b` },\n { begin: `\\\\b(${decimalInteger})\\\\b((${frac})\\\\b|\\\\.)?|(${frac})\\\\b` },\n\n // DecimalBigIntegerLiteral\n { begin: `\\\\b(0|[1-9](_?[0-9])*)n\\\\b` },\n\n // NonDecimalIntegerLiteral\n { begin: \"\\\\b0[xX][0-9a-fA-F](_?[0-9a-fA-F])*n?\\\\b\" },\n { begin: \"\\\\b0[bB][0-1](_?[0-1])*n?\\\\b\" },\n { begin: \"\\\\b0[oO][0-7](_?[0-7])*n?\\\\b\" },\n\n // LegacyOctalIntegerLiteral (does not include underscore separators)\n // https://tc39.es/ecma262/#sec-additional-syntax-numeric-literals\n { begin: \"\\\\b0[0-7]+n?\\\\b\" },\n ],\n relevance: 0\n };\n\n const SUBST = {\n className: 'subst',\n begin: '\\\\$\\\\{',\n end: '\\\\}',\n keywords: KEYWORDS$1,\n contains: [] // defined later\n };\n const HTML_TEMPLATE = {\n begin: '\\.?html`',\n end: '',\n starts: {\n end: '`',\n returnEnd: false,\n contains: [\n hljs.BACKSLASH_ESCAPE,\n SUBST\n ],\n subLanguage: 'xml'\n }\n };\n const CSS_TEMPLATE = {\n begin: '\\.?css`',\n end: '',\n starts: {\n end: '`',\n returnEnd: false,\n contains: [\n hljs.BACKSLASH_ESCAPE,\n SUBST\n ],\n subLanguage: 'css'\n }\n };\n const GRAPHQL_TEMPLATE = {\n begin: '\\.?gql`',\n end: '',\n starts: {\n end: '`',\n returnEnd: false,\n contains: [\n hljs.BACKSLASH_ESCAPE,\n SUBST\n ],\n subLanguage: 'graphql'\n }\n };\n const TEMPLATE_STRING = {\n className: 'string',\n begin: '`',\n end: '`',\n contains: [\n hljs.BACKSLASH_ESCAPE,\n SUBST\n ]\n };\n const JSDOC_COMMENT = hljs.COMMENT(\n /\\/\\*\\*(?!\\/)/,\n '\\\\*/',\n {\n relevance: 0,\n contains: [\n {\n begin: '(?=@[A-Za-z]+)',\n relevance: 0,\n contains: [\n {\n className: 'doctag',\n begin: '@[A-Za-z]+'\n },\n {\n className: 'type',\n begin: '\\\\{',\n end: '\\\\}',\n excludeEnd: true,\n excludeBegin: true,\n relevance: 0\n },\n {\n className: 'variable',\n begin: IDENT_RE$1 + '(?=\\\\s*(-)|$)',\n endsParent: true,\n relevance: 0\n },\n // eat spaces (not newlines) so we can find\n // types or variables\n {\n begin: /(?=[^\\n])\\s/,\n relevance: 0\n }\n ]\n }\n ]\n }\n );\n const COMMENT = {\n className: \"comment\",\n variants: [\n JSDOC_COMMENT,\n hljs.C_BLOCK_COMMENT_MODE,\n hljs.C_LINE_COMMENT_MODE\n ]\n };\n const SUBST_INTERNALS = [\n hljs.APOS_STRING_MODE,\n hljs.QUOTE_STRING_MODE,\n HTML_TEMPLATE,\n CSS_TEMPLATE,\n GRAPHQL_TEMPLATE,\n TEMPLATE_STRING,\n // Skip numbers when they are part of a variable name\n { match: /\\$\\d+/ },\n NUMBER,\n // This is intentional:\n // See https://github.com/highlightjs/highlight.js/issues/3288\n // hljs.REGEXP_MODE\n ];\n SUBST.contains = SUBST_INTERNALS\n .concat({\n // we need to pair up {} inside our subst to prevent\n // it from ending too early by matching another }\n begin: /\\{/,\n end: /\\}/,\n keywords: KEYWORDS$1,\n contains: [\n \"self\"\n ].concat(SUBST_INTERNALS)\n });\n const SUBST_AND_COMMENTS = [].concat(COMMENT, SUBST.contains);\n const PARAMS_CONTAINS = SUBST_AND_COMMENTS.concat([\n // eat recursive parens in sub expressions\n {\n begin: /(\\s*)\\(/,\n end: /\\)/,\n keywords: KEYWORDS$1,\n contains: [\"self\"].concat(SUBST_AND_COMMENTS)\n }\n ]);\n const PARAMS = {\n className: 'params',\n // convert this to negative lookbehind in v12\n begin: /(\\s*)\\(/, // to match the parms with\n end: /\\)/,\n excludeBegin: true,\n excludeEnd: true,\n keywords: KEYWORDS$1,\n contains: PARAMS_CONTAINS\n };\n\n // ES6 classes\n const CLASS_OR_EXTENDS = {\n variants: [\n // class Car extends vehicle\n {\n match: [\n /class/,\n /\\s+/,\n IDENT_RE$1,\n /\\s+/,\n /extends/,\n /\\s+/,\n regex.concat(IDENT_RE$1, \"(\", regex.concat(/\\./, IDENT_RE$1), \")*\")\n ],\n scope: {\n 1: \"keyword\",\n 3: \"title.class\",\n 5: \"keyword\",\n 7: \"title.class.inherited\"\n }\n },\n // class Car\n {\n match: [\n /class/,\n /\\s+/,\n IDENT_RE$1\n ],\n scope: {\n 1: \"keyword\",\n 3: \"title.class\"\n }\n },\n\n ]\n };\n\n const CLASS_REFERENCE = {\n relevance: 0,\n match:\n regex.either(\n // Hard coded exceptions\n /\\bJSON/,\n // Float32Array, OutT\n /\\b[A-Z][a-z]+([A-Z][a-z]*|\\d)*/,\n // CSSFactory, CSSFactoryT\n /\\b[A-Z]{2,}([A-Z][a-z]+|\\d)+([A-Z][a-z]*)*/,\n // FPs, FPsT\n /\\b[A-Z]{2,}[a-z]+([A-Z][a-z]+|\\d)*([A-Z][a-z]*)*/,\n // P\n // single letters are not highlighted\n // BLAH\n // this will be flagged as a UPPER_CASE_CONSTANT instead\n ),\n className: \"title.class\",\n keywords: {\n _: [\n // se we still get relevance credit for JS library classes\n ...TYPES,\n ...ERROR_TYPES\n ]\n }\n };\n\n const USE_STRICT = {\n label: \"use_strict\",\n className: 'meta',\n relevance: 10,\n begin: /^\\s*['\"]use (strict|asm)['\"]/\n };\n\n const FUNCTION_DEFINITION = {\n variants: [\n {\n match: [\n /function/,\n /\\s+/,\n IDENT_RE$1,\n /(?=\\s*\\()/\n ]\n },\n // anonymous function\n {\n match: [\n /function/,\n /\\s*(?=\\()/\n ]\n }\n ],\n className: {\n 1: \"keyword\",\n 3: \"title.function\"\n },\n label: \"func.def\",\n contains: [ PARAMS ],\n illegal: /%/\n };\n\n const UPPER_CASE_CONSTANT = {\n relevance: 0,\n match: /\\b[A-Z][A-Z_0-9]+\\b/,\n className: \"variable.constant\"\n };\n\n function noneOf(list) {\n return regex.concat(\"(?!\", list.join(\"|\"), \")\");\n }\n\n const FUNCTION_CALL = {\n match: regex.concat(\n /\\b/,\n noneOf([\n ...BUILT_IN_GLOBALS,\n \"super\",\n \"import\",\n \"await\",\n ].map(x => `${x}\\\\s*\\\\(`)),\n IDENT_RE$1, regex.lookahead(/\\s*\\(/)),\n className: \"title.function\",\n relevance: 0\n };\n\n const PROPERTY_ACCESS = {\n begin: regex.concat(/\\./, regex.lookahead(\n regex.concat(IDENT_RE$1, /(?![0-9A-Za-z$_(])/)\n )),\n end: IDENT_RE$1,\n excludeBegin: true,\n keywords: \"prototype\",\n className: \"property\",\n relevance: 0\n };\n\n const GETTER_OR_SETTER = {\n match: [\n /get|set/,\n /\\s+/,\n IDENT_RE$1,\n /(?=\\()/\n ],\n className: {\n 1: \"keyword\",\n 3: \"title.function\"\n },\n contains: [\n { // eat to avoid empty params\n begin: /\\(\\)/\n },\n PARAMS\n ]\n };\n\n const FUNC_LEAD_IN_RE = '(\\\\(' +\n '[^()]*(\\\\(' +\n '[^()]*(\\\\(' +\n '[^()]*' +\n '\\\\)[^()]*)*' +\n '\\\\)[^()]*)*' +\n '\\\\)|' + hljs.UNDERSCORE_IDENT_RE + ')\\\\s*=>';\n\n const FUNCTION_VARIABLE = {\n match: [\n /const|var|let/, /\\s+/,\n IDENT_RE$1, /\\s*/,\n /=\\s*/,\n /(async\\s*)?/, // async is optional\n regex.lookahead(FUNC_LEAD_IN_RE)\n ],\n keywords: \"async\",\n className: {\n 1: \"keyword\",\n 3: \"title.function\"\n },\n contains: [\n PARAMS\n ]\n };\n\n return {\n name: 'JavaScript',\n aliases: ['js', 'jsx', 'mjs', 'cjs'],\n keywords: KEYWORDS$1,\n // this will be extended by TypeScript\n exports: { PARAMS_CONTAINS, CLASS_REFERENCE },\n illegal: /#(?![$_A-Za-z])/,\n contains: [\n hljs.SHEBANG({\n label: \"shebang\",\n binary: \"node\",\n relevance: 5\n }),\n USE_STRICT,\n hljs.APOS_STRING_MODE,\n hljs.QUOTE_STRING_MODE,\n HTML_TEMPLATE,\n CSS_TEMPLATE,\n GRAPHQL_TEMPLATE,\n TEMPLATE_STRING,\n COMMENT,\n // Skip numbers when they are part of a variable name\n { match: /\\$\\d+/ },\n NUMBER,\n CLASS_REFERENCE,\n {\n scope: 'attr',\n match: IDENT_RE$1 + regex.lookahead(':'),\n relevance: 0\n },\n FUNCTION_VARIABLE,\n { // \"value\" container\n begin: '(' + hljs.RE_STARTERS_RE + '|\\\\b(case|return|throw)\\\\b)\\\\s*',\n keywords: 'return throw case',\n relevance: 0,\n contains: [\n COMMENT,\n hljs.REGEXP_MODE,\n {\n className: 'function',\n // we have to count the parens to make sure we actually have the\n // correct bounding ( ) before the =>. There could be any number of\n // sub-expressions inside also surrounded by parens.\n begin: FUNC_LEAD_IN_RE,\n returnBegin: true,\n end: '\\\\s*=>',\n contains: [\n {\n className: 'params',\n variants: [\n {\n begin: hljs.UNDERSCORE_IDENT_RE,\n relevance: 0\n },\n {\n className: null,\n begin: /\\(\\s*\\)/,\n skip: true\n },\n {\n begin: /(\\s*)\\(/,\n end: /\\)/,\n excludeBegin: true,\n excludeEnd: true,\n keywords: KEYWORDS$1,\n contains: PARAMS_CONTAINS\n }\n ]\n }\n ]\n },\n { // could be a comma delimited list of params to a function call\n begin: /,/,\n relevance: 0\n },\n {\n match: /\\s+/,\n relevance: 0\n },\n { // JSX\n variants: [\n { begin: FRAGMENT.begin, end: FRAGMENT.end },\n { match: XML_SELF_CLOSING },\n {\n begin: XML_TAG.begin,\n // we carefully check the opening tag to see if it truly\n // is a tag and not a false positive\n 'on:begin': XML_TAG.isTrulyOpeningTag,\n end: XML_TAG.end\n }\n ],\n subLanguage: 'xml',\n contains: [\n {\n begin: XML_TAG.begin,\n end: XML_TAG.end,\n skip: true,\n contains: ['self']\n }\n ]\n }\n ],\n },\n FUNCTION_DEFINITION,\n {\n // prevent this from getting swallowed up by function\n // since they appear \"function like\"\n beginKeywords: \"while if switch catch for\"\n },\n {\n // we have to count the parens to make sure we actually have the correct\n // bounding ( ). There could be any number of sub-expressions inside\n // also surrounded by parens.\n begin: '\\\\b(?!function)' + hljs.UNDERSCORE_IDENT_RE +\n '\\\\(' + // first parens\n '[^()]*(\\\\(' +\n '[^()]*(\\\\(' +\n '[^()]*' +\n '\\\\)[^()]*)*' +\n '\\\\)[^()]*)*' +\n '\\\\)\\\\s*\\\\{', // end parens\n returnBegin:true,\n label: \"func.def\",\n contains: [\n PARAMS,\n hljs.inherit(hljs.TITLE_MODE, { begin: IDENT_RE$1, className: \"title.function\" })\n ]\n },\n // catch ... so it won't trigger the property rule below\n {\n match: /\\.\\.\\./,\n relevance: 0\n },\n PROPERTY_ACCESS,\n // hack: prevents detection of keywords in some circumstances\n // .keyword()\n // $keyword = x\n {\n match: '\\\\$' + IDENT_RE$1,\n relevance: 0\n },\n {\n match: [ /\\bconstructor(?=\\s*\\()/ ],\n className: { 1: \"title.function\" },\n contains: [ PARAMS ]\n },\n FUNCTION_CALL,\n UPPER_CASE_CONSTANT,\n CLASS_OR_EXTENDS,\n GETTER_OR_SETTER,\n {\n match: /\\$[(.]/ // relevance booster for a pattern common to JS libs: `$(something)` and `$.something`\n }\n ]\n };\n}\n\n/*\nLanguage: TypeScript\nAuthor: Panu Horsmalahti <panu.horsmalahti@iki.fi>\nContributors: Ike Ku <dempfi@yahoo.com>\nDescription: TypeScript is a strict superset of JavaScript\nWebsite: https://www.typescriptlang.org\nCategory: common, scripting\n*/\n\n\n/** @type LanguageFn */\nfunction typescript(hljs) {\n const regex = hljs.regex;\n const tsLanguage = javascript(hljs);\n\n const IDENT_RE$1 = IDENT_RE;\n const TYPES = [\n \"any\",\n \"void\",\n \"number\",\n \"boolean\",\n \"string\",\n \"object\",\n \"never\",\n \"symbol\",\n \"bigint\",\n \"unknown\"\n ];\n const NAMESPACE = {\n begin: [\n /namespace/,\n /\\s+/,\n hljs.IDENT_RE\n ],\n beginScope: {\n 1: \"keyword\",\n 3: \"title.class\"\n }\n };\n const INTERFACE = {\n beginKeywords: 'interface',\n end: /\\{/,\n excludeEnd: true,\n keywords: {\n keyword: 'interface extends',\n built_in: TYPES\n },\n contains: [ tsLanguage.exports.CLASS_REFERENCE ]\n };\n const USE_STRICT = {\n className: 'meta',\n relevance: 10,\n begin: /^\\s*['\"]use strict['\"]/\n };\n const TS_SPECIFIC_KEYWORDS = [\n \"type\",\n // \"namespace\",\n \"interface\",\n \"public\",\n \"private\",\n \"protected\",\n \"implements\",\n \"declare\",\n \"abstract\",\n \"readonly\",\n \"enum\",\n \"override\",\n \"satisfies\"\n ];\n /*\n namespace is a TS keyword but it's fine to use it as a variable name too.\n const message = 'foo';\n const namespace = 'bar';\n */\n const KEYWORDS$1 = {\n $pattern: IDENT_RE,\n keyword: KEYWORDS.concat(TS_SPECIFIC_KEYWORDS),\n literal: LITERALS,\n built_in: BUILT_INS.concat(TYPES),\n \"variable.language\": BUILT_IN_VARIABLES\n };\n\n const DECORATOR = {\n className: 'meta',\n begin: '@' + IDENT_RE$1,\n };\n\n const swapMode = (mode, label, replacement) => {\n const indx = mode.contains.findIndex(m => m.label === label);\n if (indx === -1) { throw new Error(\"can not find mode to replace\"); }\n\n mode.contains.splice(indx, 1, replacement);\n };\n\n\n // this should update anywhere keywords is used since\n // it will be the same actual JS object\n Object.assign(tsLanguage.keywords, KEYWORDS$1);\n\n tsLanguage.exports.PARAMS_CONTAINS.push(DECORATOR);\n\n // highlight the function params\n const ATTRIBUTE_HIGHLIGHT = tsLanguage.contains.find(c => c.scope === \"attr\");\n\n // take default attr rule and extend it to support optionals\n const OPTIONAL_KEY_OR_ARGUMENT = Object.assign({},\n ATTRIBUTE_HIGHLIGHT,\n { match: regex.concat(IDENT_RE$1, regex.lookahead(/\\s*\\?:/)) }\n );\n tsLanguage.exports.PARAMS_CONTAINS.push([\n tsLanguage.exports.CLASS_REFERENCE, // class reference for highlighting the params types\n ATTRIBUTE_HIGHLIGHT, // highlight the params key\n OPTIONAL_KEY_OR_ARGUMENT, // Added for optional property assignment highlighting\n ]);\n\n // Add the optional property assignment highlighting for objects or classes\n tsLanguage.contains = tsLanguage.contains.concat([\n DECORATOR,\n NAMESPACE,\n INTERFACE,\n OPTIONAL_KEY_OR_ARGUMENT, // Added for optional property assignment highlighting\n ]);\n\n // TS gets a simpler shebang rule than JS\n swapMode(tsLanguage, \"shebang\", hljs.SHEBANG());\n // JS use strict rule purposely excludes `asm` which makes no sense\n swapMode(tsLanguage, \"use_strict\", USE_STRICT);\n\n const functionDeclaration = tsLanguage.contains.find(m => m.label === \"func.def\");\n functionDeclaration.relevance = 0; // () => {} is more typical in TypeScript\n\n Object.assign(tsLanguage, {\n name: 'TypeScript',\n aliases: [\n 'ts',\n 'tsx',\n 'mts',\n 'cts'\n ]\n });\n\n return tsLanguage;\n}\n\nmodule.exports = typescript;\n","// https://docs.oracle.com/javase/specs/jls/se15/html/jls-3.html#jls-3.10\nvar decimalDigits = '[0-9](_*[0-9])*';\nvar frac = `\\\\.(${decimalDigits})`;\nvar hexDigits = '[0-9a-fA-F](_*[0-9a-fA-F])*';\nvar NUMERIC = {\n className: 'number',\n variants: [\n // DecimalFloatingPointLiteral\n // including ExponentPart\n { begin: `(\\\\b(${decimalDigits})((${frac})|\\\\.)?|(${frac}))` +\n `[eE][+-]?(${decimalDigits})[fFdD]?\\\\b` },\n // excluding ExponentPart\n { begin: `\\\\b(${decimalDigits})((${frac})[fFdD]?\\\\b|\\\\.([fFdD]\\\\b)?)` },\n { begin: `(${frac})[fFdD]?\\\\b` },\n { begin: `\\\\b(${decimalDigits})[fFdD]\\\\b` },\n\n // HexadecimalFloatingPointLiteral\n { begin: `\\\\b0[xX]((${hexDigits})\\\\.?|(${hexDigits})?\\\\.(${hexDigits}))` +\n `[pP][+-]?(${decimalDigits})[fFdD]?\\\\b` },\n\n // DecimalIntegerLiteral\n { begin: '\\\\b(0|[1-9](_*[0-9])*)[lL]?\\\\b' },\n\n // HexIntegerLiteral\n { begin: `\\\\b0[xX](${hexDigits})[lL]?\\\\b` },\n\n // OctalIntegerLiteral\n { begin: '\\\\b0(_*[0-7])*[lL]?\\\\b' },\n\n // BinaryIntegerLiteral\n { begin: '\\\\b0[bB][01](_*[01])*[lL]?\\\\b' },\n ],\n relevance: 0\n};\n\n/*\nLanguage: Java\nAuthor: Vsevolod Solovyov <vsevolod.solovyov@gmail.com>\nCategory: common, enterprise\nWebsite: https://www.java.com/\n*/\n\n\n/**\n * Allows recursive regex expressions to a given depth\n *\n * ie: recurRegex(\"(abc~~~)\", /~~~/g, 2) becomes:\n * (abc(abc(abc)))\n *\n * @param {string} re\n * @param {RegExp} substitution (should be a g mode regex)\n * @param {number} depth\n * @returns {string}``\n */\nfunction recurRegex(re, substitution, depth) {\n if (depth === -1) return \"\";\n\n return re.replace(substitution, _ => {\n return recurRegex(re, substitution, depth - 1);\n });\n}\n\n/** @type LanguageFn */\nfunction java(hljs) {\n const regex = hljs.regex;\n const JAVA_IDENT_RE = '[\\u00C0-\\u02B8a-zA-Z_$][\\u00C0-\\u02B8a-zA-Z_$0-9]*';\n const GENERIC_IDENT_RE = JAVA_IDENT_RE\n + recurRegex('(?:<' + JAVA_IDENT_RE + '~~~(?:\\\\s*,\\\\s*' + JAVA_IDENT_RE + '~~~)*>)?', /~~~/g, 2);\n const MAIN_KEYWORDS = [\n 'synchronized',\n 'abstract',\n 'private',\n 'var',\n 'static',\n 'if',\n 'const ',\n 'for',\n 'while',\n 'strictfp',\n 'finally',\n 'protected',\n 'import',\n 'native',\n 'final',\n 'void',\n 'enum',\n 'else',\n 'break',\n 'transient',\n 'catch',\n 'instanceof',\n 'volatile',\n 'case',\n 'assert',\n 'package',\n 'default',\n 'public',\n 'try',\n 'switch',\n 'continue',\n 'throws',\n 'protected',\n 'public',\n 'private',\n 'module',\n 'requires',\n 'exports',\n 'do',\n 'sealed',\n 'yield',\n 'permits',\n 'goto',\n 'when'\n ];\n\n const BUILT_INS = [\n 'super',\n 'this'\n ];\n\n const LITERALS = [\n 'false',\n 'true',\n 'null'\n ];\n\n const TYPES = [\n 'char',\n 'boolean',\n 'long',\n 'float',\n 'int',\n 'byte',\n 'short',\n 'double'\n ];\n\n const KEYWORDS = {\n keyword: MAIN_KEYWORDS,\n literal: LITERALS,\n type: TYPES,\n built_in: BUILT_INS\n };\n\n const ANNOTATION = {\n className: 'meta',\n begin: '@' + JAVA_IDENT_RE,\n contains: [\n {\n begin: /\\(/,\n end: /\\)/,\n contains: [ \"self\" ] // allow nested () inside our annotation\n }\n ]\n };\n const PARAMS = {\n className: 'params',\n begin: /\\(/,\n end: /\\)/,\n keywords: KEYWORDS,\n relevance: 0,\n contains: [ hljs.C_BLOCK_COMMENT_MODE ],\n endsParent: true\n };\n\n return {\n name: 'Java',\n aliases: [ 'jsp' ],\n keywords: KEYWORDS,\n illegal: /<\\/|#/,\n contains: [\n hljs.COMMENT(\n '/\\\\*\\\\*',\n '\\\\*/',\n {\n relevance: 0,\n contains: [\n {\n // eat up @'s in emails to prevent them to be recognized as doctags\n begin: /\\w+@/,\n relevance: 0\n },\n {\n className: 'doctag',\n begin: '@[A-Za-z]+'\n }\n ]\n }\n ),\n // relevance boost\n {\n begin: /import java\\.[a-z]+\\./,\n keywords: \"import\",\n relevance: 2\n },\n hljs.C_LINE_COMMENT_MODE,\n hljs.C_BLOCK_COMMENT_MODE,\n {\n begin: /\"\"\"/,\n end: /\"\"\"/,\n className: \"string\",\n contains: [ hljs.BACKSLASH_ESCAPE ]\n },\n hljs.APOS_STRING_MODE,\n hljs.QUOTE_STRING_MODE,\n {\n match: [\n /\\b(?:class|interface|enum|extends|implements|new)/,\n /\\s+/,\n JAVA_IDENT_RE\n ],\n className: {\n 1: \"keyword\",\n 3: \"title.class\"\n }\n },\n {\n // Exceptions for hyphenated keywords\n match: /non-sealed/,\n scope: \"keyword\"\n },\n {\n begin: [\n regex.concat(/(?!else)/, JAVA_IDENT_RE),\n /\\s+/,\n JAVA_IDENT_RE,\n /\\s+/,\n /=(?!=)/\n ],\n className: {\n 1: \"type\",\n 3: \"variable\",\n 5: \"operator\"\n }\n },\n {\n begin: [\n /record/,\n /\\s+/,\n JAVA_IDENT_RE\n ],\n className: {\n 1: \"keyword\",\n 3: \"title.class\"\n },\n contains: [\n PARAMS,\n hljs.C_LINE_COMMENT_MODE,\n hljs.C_BLOCK_COMMENT_MODE\n ]\n },\n {\n // Expression keywords prevent 'keyword Name(...)' from being\n // recognized as a function definition\n beginKeywords: 'new throw return else',\n relevance: 0\n },\n {\n begin: [\n '(?:' + GENERIC_IDENT_RE + '\\\\s+)',\n hljs.UNDERSCORE_IDENT_RE,\n /\\s*(?=\\()/\n ],\n className: { 2: \"title.function\" },\n keywords: KEYWORDS,\n contains: [\n {\n className: 'params',\n begin: /\\(/,\n end: /\\)/,\n keywords: KEYWORDS,\n relevance: 0,\n contains: [\n ANNOTATION,\n hljs.APOS_STRING_MODE,\n hljs.QUOTE_STRING_MODE,\n NUMERIC,\n hljs.C_BLOCK_COMMENT_MODE\n ]\n },\n hljs.C_LINE_COMMENT_MODE,\n hljs.C_BLOCK_COMMENT_MODE\n ]\n },\n NUMERIC,\n ANNOTATION\n ]\n };\n}\n\nmodule.exports = java;\n","/**\n * @param {string} value\n * @returns {RegExp}\n * */\n\n/**\n * @param {RegExp | string } re\n * @returns {string}\n */\nfunction source(re) {\n if (!re) return null;\n if (typeof re === \"string\") return re;\n\n return re.source;\n}\n\n/**\n * @param {RegExp | string } re\n * @returns {string}\n */\nfunction lookahead(re) {\n return concat('(?=', re, ')');\n}\n\n/**\n * @param {...(RegExp | string) } args\n * @returns {string}\n */\nfunction concat(...args) {\n const joined = args.map((x) => source(x)).join(\"\");\n return joined;\n}\n\n/**\n * @param { Array<string | RegExp | Object> } args\n * @returns {object}\n */\nfunction stripOptionsFromArgs(args) {\n const opts = args[args.length - 1];\n\n if (typeof opts === 'object' && opts.constructor === Object) {\n args.splice(args.length - 1, 1);\n return opts;\n } else {\n return {};\n }\n}\n\n/** @typedef { {capture?: boolean} } RegexEitherOptions */\n\n/**\n * Any of the passed expresssions may match\n *\n * Creates a huge this | this | that | that match\n * @param {(RegExp | string)[] | [...(RegExp | string)[], RegexEitherOptions]} args\n * @returns {string}\n */\nfunction either(...args) {\n /** @type { object & {capture?: boolean} } */\n const opts = stripOptionsFromArgs(args);\n const joined = '('\n + (opts.capture ? \"\" : \"?:\")\n + args.map((x) => source(x)).join(\"|\") + \")\";\n return joined;\n}\n\nconst keywordWrapper = keyword => concat(\n /\\b/,\n keyword,\n /\\w$/.test(keyword) ? /\\b/ : /\\B/\n);\n\n// Keywords that require a leading dot.\nconst dotKeywords = [\n 'Protocol', // contextual\n 'Type' // contextual\n].map(keywordWrapper);\n\n// Keywords that may have a leading dot.\nconst optionalDotKeywords = [\n 'init',\n 'self'\n].map(keywordWrapper);\n\n// should register as keyword, not type\nconst keywordTypes = [\n 'Any',\n 'Self'\n];\n\n// Regular keywords and literals.\nconst keywords = [\n // strings below will be fed into the regular `keywords` engine while regex\n // will result in additional modes being created to scan for those keywords to\n // avoid conflicts with other rules\n 'actor',\n 'any', // contextual\n 'associatedtype',\n 'async',\n 'await',\n /as\\?/, // operator\n /as!/, // operator\n 'as', // operator\n 'borrowing', // contextual\n 'break',\n 'case',\n 'catch',\n 'class',\n 'consume', // contextual\n 'consuming', // contextual\n 'continue',\n 'convenience', // contextual\n 'copy', // contextual\n 'default',\n 'defer',\n 'deinit',\n 'didSet', // contextual\n 'distributed',\n 'do',\n 'dynamic', // contextual\n 'each',\n 'else',\n 'enum',\n 'extension',\n 'fallthrough',\n /fileprivate\\(set\\)/,\n 'fileprivate',\n 'final', // contextual\n 'for',\n 'func',\n 'get', // contextual\n 'guard',\n 'if',\n 'import',\n 'indirect', // contextual\n 'infix', // contextual\n /init\\?/,\n /init!/,\n 'inout',\n /internal\\(set\\)/,\n 'internal',\n 'in',\n 'is', // operator\n 'isolated', // contextual\n 'nonisolated', // contextual\n 'lazy', // contextual\n 'let',\n 'macro',\n 'mutating', // contextual\n 'nonmutating', // contextual\n /open\\(set\\)/, // contextual\n 'open', // contextual\n 'operator',\n 'optional', // contextual\n 'override', // contextual\n 'package',\n 'postfix', // contextual\n 'precedencegroup',\n 'prefix', // contextual\n /private\\(set\\)/,\n 'private',\n 'protocol',\n /public\\(set\\)/,\n 'public',\n 'repeat',\n 'required', // contextual\n 'rethrows',\n 'return',\n 'set', // contextual\n 'some', // contextual\n 'static',\n 'struct',\n 'subscript',\n 'super',\n 'switch',\n 'throws',\n 'throw',\n /try\\?/, // operator\n /try!/, // operator\n 'try', // operator\n 'typealias',\n /unowned\\(safe\\)/, // contextual\n /unowned\\(unsafe\\)/, // contextual\n 'unowned', // contextual\n 'var',\n 'weak', // contextual\n 'where',\n 'while',\n 'willSet' // contextual\n];\n\n// NOTE: Contextual keywords are reserved only in specific contexts.\n// Ideally, these should be matched using modes to avoid false positives.\n\n// Literals.\nconst literals = [\n 'false',\n 'nil',\n 'true'\n];\n\n// Keywords used in precedence groups.\nconst precedencegroupKeywords = [\n 'assignment',\n 'associativity',\n 'higherThan',\n 'left',\n 'lowerThan',\n 'none',\n 'right'\n];\n\n// Keywords that start with a number sign (#).\n// #(un)available is handled separately.\nconst numberSignKeywords = [\n '#colorLiteral',\n '#column',\n '#dsohandle',\n '#else',\n '#elseif',\n '#endif',\n '#error',\n '#file',\n '#fileID',\n '#fileLiteral',\n '#filePath',\n '#function',\n '#if',\n '#imageLiteral',\n '#keyPath',\n '#line',\n '#selector',\n '#sourceLocation',\n '#warning'\n];\n\n// Global functions in the Standard Library.\nconst builtIns = [\n 'abs',\n 'all',\n 'any',\n 'assert',\n 'assertionFailure',\n 'debugPrint',\n 'dump',\n 'fatalError',\n 'getVaList',\n 'isKnownUniquelyReferenced',\n 'max',\n 'min',\n 'numericCast',\n 'pointwiseMax',\n 'pointwiseMin',\n 'precondition',\n 'preconditionFailure',\n 'print',\n 'readLine',\n 'repeatElement',\n 'sequence',\n 'stride',\n 'swap',\n 'swift_unboxFromSwiftValueWithType',\n 'transcode',\n 'type',\n 'unsafeBitCast',\n 'unsafeDowncast',\n 'withExtendedLifetime',\n 'withUnsafeMutablePointer',\n 'withUnsafePointer',\n 'withVaList',\n 'withoutActuallyEscaping',\n 'zip'\n];\n\n// Valid first characters for operators.\nconst operatorHead = either(\n /[/=\\-+!*%<>&|^~?]/,\n /[\\u00A1-\\u00A7]/,\n /[\\u00A9\\u00AB]/,\n /[\\u00AC\\u00AE]/,\n /[\\u00B0\\u00B1]/,\n /[\\u00B6\\u00BB\\u00BF\\u00D7\\u00F7]/,\n /[\\u2016-\\u2017]/,\n /[\\u2020-\\u2027]/,\n /[\\u2030-\\u203E]/,\n /[\\u2041-\\u2053]/,\n /[\\u2055-\\u205E]/,\n /[\\u2190-\\u23FF]/,\n /[\\u2500-\\u2775]/,\n /[\\u2794-\\u2BFF]/,\n /[\\u2E00-\\u2E7F]/,\n /[\\u3001-\\u3003]/,\n /[\\u3008-\\u3020]/,\n /[\\u3030]/\n);\n\n// Valid characters for operators.\nconst operatorCharacter = either(\n operatorHead,\n /[\\u0300-\\u036F]/,\n /[\\u1DC0-\\u1DFF]/,\n /[\\u20D0-\\u20FF]/,\n /[\\uFE00-\\uFE0F]/,\n /[\\uFE20-\\uFE2F]/\n // TODO: The following characters are also allowed, but the regex isn't supported yet.\n // /[\\u{E0100}-\\u{E01EF}]/u\n);\n\n// Valid operator.\nconst operator = concat(operatorHead, operatorCharacter, '*');\n\n// Valid first characters for identifiers.\nconst identifierHead = either(\n /[a-zA-Z_]/,\n /[\\u00A8\\u00AA\\u00AD\\u00AF\\u00B2-\\u00B5\\u00B7-\\u00BA]/,\n /[\\u00BC-\\u00BE\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u00FF]/,\n /[\\u0100-\\u02FF\\u0370-\\u167F\\u1681-\\u180D\\u180F-\\u1DBF]/,\n /[\\u1E00-\\u1FFF]/,\n /[\\u200B-\\u200D\\u202A-\\u202E\\u203F-\\u2040\\u2054\\u2060-\\u206F]/,\n /[\\u2070-\\u20CF\\u2100-\\u218F\\u2460-\\u24FF\\u2776-\\u2793]/,\n /[\\u2C00-\\u2DFF\\u2E80-\\u2FFF]/,\n /[\\u3004-\\u3007\\u3021-\\u302F\\u3031-\\u303F\\u3040-\\uD7FF]/,\n /[\\uF900-\\uFD3D\\uFD40-\\uFDCF\\uFDF0-\\uFE1F\\uFE30-\\uFE44]/,\n /[\\uFE47-\\uFEFE\\uFF00-\\uFFFD]/ // Should be /[\\uFE47-\\uFFFD]/, but we have to exclude FEFF.\n // The following characters are also allowed, but the regexes aren't supported yet.\n // /[\\u{10000}-\\u{1FFFD}\\u{20000-\\u{2FFFD}\\u{30000}-\\u{3FFFD}\\u{40000}-\\u{4FFFD}]/u,\n // /[\\u{50000}-\\u{5FFFD}\\u{60000-\\u{6FFFD}\\u{70000}-\\u{7FFFD}\\u{80000}-\\u{8FFFD}]/u,\n // /[\\u{90000}-\\u{9FFFD}\\u{A0000-\\u{AFFFD}\\u{B0000}-\\u{BFFFD}\\u{C0000}-\\u{CFFFD}]/u,\n // /[\\u{D0000}-\\u{DFFFD}\\u{E0000-\\u{EFFFD}]/u\n);\n\n// Valid characters for identifiers.\nconst identifierCharacter = either(\n identifierHead,\n /\\d/,\n /[\\u0300-\\u036F\\u1DC0-\\u1DFF\\u20D0-\\u20FF\\uFE20-\\uFE2F]/\n);\n\n// Valid identifier.\nconst identifier = concat(identifierHead, identifierCharacter, '*');\n\n// Valid type identifier.\nconst typeIdentifier = concat(/[A-Z]/, identifierCharacter, '*');\n\n// Built-in attributes, which are highlighted as keywords.\n// @available is handled separately.\n// https://docs.swift.org/swift-book/documentation/the-swift-programming-language/attributes\nconst keywordAttributes = [\n 'attached',\n 'autoclosure',\n concat(/convention\\(/, either('swift', 'block', 'c'), /\\)/),\n 'discardableResult',\n 'dynamicCallable',\n 'dynamicMemberLookup',\n 'escaping',\n 'freestanding',\n 'frozen',\n 'GKInspectable',\n 'IBAction',\n 'IBDesignable',\n 'IBInspectable',\n 'IBOutlet',\n 'IBSegueAction',\n 'inlinable',\n 'main',\n 'nonobjc',\n 'NSApplicationMain',\n 'NSCopying',\n 'NSManaged',\n concat(/objc\\(/, identifier, /\\)/),\n 'objc',\n 'objcMembers',\n 'propertyWrapper',\n 'requires_stored_property_inits',\n 'resultBuilder',\n 'Sendable',\n 'testable',\n 'UIApplicationMain',\n 'unchecked',\n 'unknown',\n 'usableFromInline',\n 'warn_unqualified_access'\n];\n\n// Contextual keywords used in @available and #(un)available.\nconst availabilityKeywords = [\n 'iOS',\n 'iOSApplicationExtension',\n 'macOS',\n 'macOSApplicationExtension',\n 'macCatalyst',\n 'macCatalystApplicationExtension',\n 'watchOS',\n 'watchOSApplicationExtension',\n 'tvOS',\n 'tvOSApplicationExtension',\n 'swift'\n];\n\n/*\nLanguage: Swift\nDescription: Swift is a general-purpose programming language built using a modern approach to safety, performance, and software design patterns.\nAuthor: Steven Van Impe <steven.vanimpe@icloud.com>\nContributors: Chris Eidhof <chris@eidhof.nl>, Nate Cook <natecook@gmail.com>, Alexander Lichter <manniL@gmx.net>, Richard Gibson <gibson042@github>\nWebsite: https://swift.org\nCategory: common, system\n*/\n\n\n/** @type LanguageFn */\nfunction swift(hljs) {\n const WHITESPACE = {\n match: /\\s+/,\n relevance: 0\n };\n // https://docs.swift.org/swift-book/ReferenceManual/LexicalStructure.html#ID411\n const BLOCK_COMMENT = hljs.COMMENT(\n '/\\\\*',\n '\\\\*/',\n { contains: [ 'self' ] }\n );\n const COMMENTS = [\n hljs.C_LINE_COMMENT_MODE,\n BLOCK_COMMENT\n ];\n\n // https://docs.swift.org/swift-book/ReferenceManual/LexicalStructure.html#ID413\n // https://docs.swift.org/swift-book/ReferenceManual/zzSummaryOfTheGrammar.html\n const DOT_KEYWORD = {\n match: [\n /\\./,\n either(...dotKeywords, ...optionalDotKeywords)\n ],\n className: { 2: \"keyword\" }\n };\n const KEYWORD_GUARD = {\n // Consume .keyword to prevent highlighting properties and methods as keywords.\n match: concat(/\\./, either(...keywords)),\n relevance: 0\n };\n const PLAIN_KEYWORDS = keywords\n .filter(kw => typeof kw === 'string')\n .concat([ \"_|0\" ]); // seems common, so 0 relevance\n const REGEX_KEYWORDS = keywords\n .filter(kw => typeof kw !== 'string') // find regex\n .concat(keywordTypes)\n .map(keywordWrapper);\n const KEYWORD = { variants: [\n {\n className: 'keyword',\n match: either(...REGEX_KEYWORDS, ...optionalDotKeywords)\n }\n ] };\n // find all the regular keywords\n const KEYWORDS = {\n $pattern: either(\n /\\b\\w+/, // regular keywords\n /#\\w+/ // number keywords\n ),\n keyword: PLAIN_KEYWORDS\n .concat(numberSignKeywords),\n literal: literals\n };\n const KEYWORD_MODES = [\n DOT_KEYWORD,\n KEYWORD_GUARD,\n KEYWORD\n ];\n\n // https://github.com/apple/swift/tree/main/stdlib/public/core\n const BUILT_IN_GUARD = {\n // Consume .built_in to prevent highlighting properties and methods.\n match: concat(/\\./, either(...builtIns)),\n relevance: 0\n };\n const BUILT_IN = {\n className: 'built_in',\n match: concat(/\\b/, either(...builtIns), /(?=\\()/)\n };\n const BUILT_INS = [\n BUILT_IN_GUARD,\n BUILT_IN\n ];\n\n // https://docs.swift.org/swift-book/ReferenceManual/LexicalStructure.html#ID418\n const OPERATOR_GUARD = {\n // Prevent -> from being highlighting as an operator.\n match: /->/,\n relevance: 0\n };\n const OPERATOR = {\n className: 'operator',\n relevance: 0,\n variants: [\n { match: operator },\n {\n // dot-operator: only operators that start with a dot are allowed to use dots as\n // characters (..., ...<, .*, etc). So there rule here is: a dot followed by one or more\n // characters that may also include dots.\n match: `\\\\.(\\\\.|${operatorCharacter})+` }\n ]\n };\n const OPERATORS = [\n OPERATOR_GUARD,\n OPERATOR\n ];\n\n // https://docs.swift.org/swift-book/ReferenceManual/LexicalStructure.html#grammar_numeric-literal\n // TODO: Update for leading `-` after lookbehind is supported everywhere\n const decimalDigits = '([0-9]_*)+';\n const hexDigits = '([0-9a-fA-F]_*)+';\n const NUMBER = {\n className: 'number',\n relevance: 0,\n variants: [\n // decimal floating-point-literal (subsumes decimal-literal)\n { match: `\\\\b(${decimalDigits})(\\\\.(${decimalDigits}))?` + `([eE][+-]?(${decimalDigits}))?\\\\b` },\n // hexadecimal floating-point-literal (subsumes hexadecimal-literal)\n { match: `\\\\b0x(${hexDigits})(\\\\.(${hexDigits}))?` + `([pP][+-]?(${decimalDigits}))?\\\\b` },\n // octal-literal\n { match: /\\b0o([0-7]_*)+\\b/ },\n // binary-literal\n { match: /\\b0b([01]_*)+\\b/ }\n ]\n };\n\n // https://docs.swift.org/swift-book/ReferenceManual/LexicalStructure.html#grammar_string-literal\n const ESCAPED_CHARACTER = (rawDelimiter = \"\") => ({\n className: 'subst',\n variants: [\n { match: concat(/\\\\/, rawDelimiter, /[0\\\\tnr\"']/) },\n { match: concat(/\\\\/, rawDelimiter, /u\\{[0-9a-fA-F]{1,8}\\}/) }\n ]\n });\n const ESCAPED_NEWLINE = (rawDelimiter = \"\") => ({\n className: 'subst',\n match: concat(/\\\\/, rawDelimiter, /[\\t ]*(?:[\\r\\n]|\\r\\n)/)\n });\n const INTERPOLATION = (rawDelimiter = \"\") => ({\n className: 'subst',\n label: \"interpol\",\n begin: concat(/\\\\/, rawDelimiter, /\\(/),\n end: /\\)/\n });\n const MULTILINE_STRING = (rawDelimiter = \"\") => ({\n begin: concat(rawDelimiter, /\"\"\"/),\n end: concat(/\"\"\"/, rawDelimiter),\n contains: [\n ESCAPED_CHARACTER(rawDelimiter),\n ESCAPED_NEWLINE(rawDelimiter),\n INTERPOLATION(rawDelimiter)\n ]\n });\n const SINGLE_LINE_STRING = (rawDelimiter = \"\") => ({\n begin: concat(rawDelimiter, /\"/),\n end: concat(/\"/, rawDelimiter),\n contains: [\n ESCAPED_CHARACTER(rawDelimiter),\n INTERPOLATION(rawDelimiter)\n ]\n });\n const STRING = {\n className: 'string',\n variants: [\n MULTILINE_STRING(),\n MULTILINE_STRING(\"#\"),\n MULTILINE_STRING(\"##\"),\n MULTILINE_STRING(\"###\"),\n SINGLE_LINE_STRING(),\n SINGLE_LINE_STRING(\"#\"),\n SINGLE_LINE_STRING(\"##\"),\n SINGLE_LINE_STRING(\"###\")\n ]\n };\n\n const REGEXP_CONTENTS = [\n hljs.BACKSLASH_ESCAPE,\n {\n begin: /\\[/,\n end: /\\]/,\n relevance: 0,\n contains: [ hljs.BACKSLASH_ESCAPE ]\n }\n ];\n\n const BARE_REGEXP_LITERAL = {\n begin: /\\/[^\\s](?=[^/\\n]*\\/)/,\n end: /\\//,\n contains: REGEXP_CONTENTS\n };\n\n const EXTENDED_REGEXP_LITERAL = (rawDelimiter) => {\n const begin = concat(rawDelimiter, /\\//);\n const end = concat(/\\//, rawDelimiter);\n return {\n begin,\n end,\n contains: [\n ...REGEXP_CONTENTS,\n {\n scope: \"comment\",\n begin: `#(?!.*${end})`,\n end: /$/,\n },\n ],\n };\n };\n\n // https://docs.swift.org/swift-book/documentation/the-swift-programming-language/lexicalstructure/#Regular-Expression-Literals\n const REGEXP = {\n scope: \"regexp\",\n variants: [\n EXTENDED_REGEXP_LITERAL('###'),\n EXTENDED_REGEXP_LITERAL('##'),\n EXTENDED_REGEXP_LITERAL('#'),\n BARE_REGEXP_LITERAL\n ]\n };\n\n // https://docs.swift.org/swift-book/ReferenceManual/LexicalStructure.html#ID412\n const QUOTED_IDENTIFIER = { match: concat(/`/, identifier, /`/) };\n const IMPLICIT_PARAMETER = {\n className: 'variable',\n match: /\\$\\d+/\n };\n const PROPERTY_WRAPPER_PROJECTION = {\n className: 'variable',\n match: `\\\\$${identifierCharacter}+`\n };\n const IDENTIFIERS = [\n QUOTED_IDENTIFIER,\n IMPLICIT_PARAMETER,\n PROPERTY_WRAPPER_PROJECTION\n ];\n\n // https://docs.swift.org/swift-book/ReferenceManual/Attributes.html\n const AVAILABLE_ATTRIBUTE = {\n match: /(@|#(un)?)available/,\n scope: 'keyword',\n starts: { contains: [\n {\n begin: /\\(/,\n end: /\\)/,\n keywords: availabilityKeywords,\n contains: [\n ...OPERATORS,\n NUMBER,\n STRING\n ]\n }\n ] }\n };\n\n const KEYWORD_ATTRIBUTE = {\n scope: 'keyword',\n match: concat(/@/, either(...keywordAttributes), lookahead(either(/\\(/, /\\s+/))),\n };\n\n const USER_DEFINED_ATTRIBUTE = {\n scope: 'meta',\n match: concat(/@/, identifier)\n };\n\n const ATTRIBUTES = [\n AVAILABLE_ATTRIBUTE,\n KEYWORD_ATTRIBUTE,\n USER_DEFINED_ATTRIBUTE\n ];\n\n // https://docs.swift.org/swift-book/ReferenceManual/Types.html\n const TYPE = {\n match: lookahead(/\\b[A-Z]/),\n relevance: 0,\n contains: [\n { // Common Apple frameworks, for relevance boost\n className: 'type',\n match: concat(/(AV|CA|CF|CG|CI|CL|CM|CN|CT|MK|MP|MTK|MTL|NS|SCN|SK|UI|WK|XC)/, identifierCharacter, '+')\n },\n { // Type identifier\n className: 'type',\n match: typeIdentifier,\n relevance: 0\n },\n { // Optional type\n match: /[?!]+/,\n relevance: 0\n },\n { // Variadic parameter\n match: /\\.\\.\\./,\n relevance: 0\n },\n { // Protocol composition\n match: concat(/\\s+&\\s+/, lookahead(typeIdentifier)),\n relevance: 0\n }\n ]\n };\n const GENERIC_ARGUMENTS = {\n begin: /</,\n end: />/,\n keywords: KEYWORDS,\n contains: [\n ...COMMENTS,\n ...KEYWORD_MODES,\n ...ATTRIBUTES,\n OPERATOR_GUARD,\n TYPE\n ]\n };\n TYPE.contains.push(GENERIC_ARGUMENTS);\n\n // https://docs.swift.org/swift-book/ReferenceManual/Expressions.html#ID552\n // Prevents element names from being highlighted as keywords.\n const TUPLE_ELEMENT_NAME = {\n match: concat(identifier, /\\s*:/),\n keywords: \"_|0\",\n relevance: 0\n };\n // Matches tuples as well as the parameter list of a function type.\n const TUPLE = {\n begin: /\\(/,\n end: /\\)/,\n relevance: 0,\n keywords: KEYWORDS,\n contains: [\n 'self',\n TUPLE_ELEMENT_NAME,\n ...COMMENTS,\n REGEXP,\n ...KEYWORD_MODES,\n ...BUILT_INS,\n ...OPERATORS,\n NUMBER,\n STRING,\n ...IDENTIFIERS,\n ...ATTRIBUTES,\n TYPE\n ]\n };\n\n const GENERIC_PARAMETERS = {\n begin: /</,\n end: />/,\n keywords: 'repeat each',\n contains: [\n ...COMMENTS,\n TYPE\n ]\n };\n const FUNCTION_PARAMETER_NAME = {\n begin: either(\n lookahead(concat(identifier, /\\s*:/)),\n lookahead(concat(identifier, /\\s+/, identifier, /\\s*:/))\n ),\n end: /:/,\n relevance: 0,\n contains: [\n {\n className: 'keyword',\n match: /\\b_\\b/\n },\n {\n className: 'params',\n match: identifier\n }\n ]\n };\n const FUNCTION_PARAMETERS = {\n begin: /\\(/,\n end: /\\)/,\n keywords: KEYWORDS,\n contains: [\n FUNCTION_PARAMETER_NAME,\n ...COMMENTS,\n ...KEYWORD_MODES,\n ...OPERATORS,\n NUMBER,\n STRING,\n ...ATTRIBUTES,\n TYPE,\n TUPLE\n ],\n endsParent: true,\n illegal: /[\"']/\n };\n // https://docs.swift.org/swift-book/ReferenceManual/Declarations.html#ID362\n // https://docs.swift.org/swift-book/documentation/the-swift-programming-language/declarations/#Macro-Declaration\n const FUNCTION_OR_MACRO = {\n match: [\n /(func|macro)/,\n /\\s+/,\n either(QUOTED_IDENTIFIER.match, identifier, operator)\n ],\n className: {\n 1: \"keyword\",\n 3: \"title.function\"\n },\n contains: [\n GENERIC_PARAMETERS,\n FUNCTION_PARAMETERS,\n WHITESPACE\n ],\n illegal: [\n /\\[/,\n /%/\n ]\n };\n\n // https://docs.swift.org/swift-book/ReferenceManual/Declarations.html#ID375\n // https://docs.swift.org/swift-book/ReferenceManual/Declarations.html#ID379\n const INIT_SUBSCRIPT = {\n match: [\n /\\b(?:subscript|init[?!]?)/,\n /\\s*(?=[<(])/,\n ],\n className: { 1: \"keyword\" },\n contains: [\n GENERIC_PARAMETERS,\n FUNCTION_PARAMETERS,\n WHITESPACE\n ],\n illegal: /\\[|%/\n };\n // https://docs.swift.org/swift-book/ReferenceManual/Declarations.html#ID380\n const OPERATOR_DECLARATION = {\n match: [\n /operator/,\n /\\s+/,\n operator\n ],\n className: {\n 1: \"keyword\",\n 3: \"title\"\n }\n };\n\n // https://docs.swift.org/swift-book/ReferenceManual/Declarations.html#ID550\n const PRECEDENCEGROUP = {\n begin: [\n /precedencegroup/,\n /\\s+/,\n typeIdentifier\n ],\n className: {\n 1: \"keyword\",\n 3: \"title\"\n },\n contains: [ TYPE ],\n keywords: [\n ...precedencegroupKeywords,\n ...literals\n ],\n end: /}/\n };\n\n const CLASS_FUNC_DECLARATION = {\n match: [\n /class\\b/, \n /\\s+/,\n /func\\b/,\n /\\s+/,\n /\\b[A-Za-z_][A-Za-z0-9_]*\\b/ \n ],\n scope: {\n 1: \"keyword\",\n 3: \"keyword\",\n 5: \"title.function\"\n }\n };\n\n const CLASS_VAR_DECLARATION = {\n match: [\n /class\\b/,\n /\\s+/, \n /var\\b/, \n ],\n scope: {\n 1: \"keyword\",\n 3: \"keyword\"\n }\n };\n\n const TYPE_DECLARATION = {\n begin: [\n /(struct|protocol|class|extension|enum|actor)/,\n /\\s+/,\n identifier,\n /\\s*/,\n ],\n beginScope: {\n 1: \"keyword\",\n 3: \"title.class\"\n },\n keywords: KEYWORDS,\n contains: [\n GENERIC_PARAMETERS,\n ...KEYWORD_MODES,\n {\n begin: /:/,\n end: /\\{/,\n keywords: KEYWORDS,\n contains: [\n {\n scope: \"title.class.inherited\",\n match: typeIdentifier,\n },\n ...KEYWORD_MODES,\n ],\n relevance: 0,\n },\n ]\n };\n\n // Add supported submodes to string interpolation.\n for (const variant of STRING.variants) {\n const interpolation = variant.contains.find(mode => mode.label === \"interpol\");\n // TODO: Interpolation can contain any expression, so there's room for improvement here.\n interpolation.keywords = KEYWORDS;\n const submodes = [\n ...KEYWORD_MODES,\n ...BUILT_INS,\n ...OPERATORS,\n NUMBER,\n STRING,\n ...IDENTIFIERS\n ];\n interpolation.contains = [\n ...submodes,\n {\n begin: /\\(/,\n end: /\\)/,\n contains: [\n 'self',\n ...submodes\n ]\n }\n ];\n }\n\n return {\n name: 'Swift',\n keywords: KEYWORDS,\n contains: [\n ...COMMENTS,\n FUNCTION_OR_MACRO,\n INIT_SUBSCRIPT,\n CLASS_FUNC_DECLARATION,\n CLASS_VAR_DECLARATION,\n TYPE_DECLARATION,\n OPERATOR_DECLARATION,\n PRECEDENCEGROUP,\n {\n beginKeywords: 'import',\n end: /$/,\n contains: [ ...COMMENTS ],\n relevance: 0\n },\n REGEXP,\n ...KEYWORD_MODES,\n ...BUILT_INS,\n ...OPERATORS,\n NUMBER,\n STRING,\n ...IDENTIFIERS,\n ...ATTRIBUTES,\n TYPE,\n TUPLE\n ]\n };\n}\n\nmodule.exports = swift;\n","import { Plugin, PluginKey } from 'prosemirror-state';\nimport { Decoration, DecorationSet } from 'prosemirror-view';\nimport { Node as PMNode } from 'prosemirror-model';\nimport hljs from 'highlight.js/lib/core';\nimport javascript from 'highlight.js/lib/languages/javascript';\nimport typescript from 'highlight.js/lib/languages/typescript';\nimport json from 'highlight.js/lib/languages/json';\nimport xml from 'highlight.js/lib/languages/xml';\nimport css from 'highlight.js/lib/languages/css';\nimport scss from 'highlight.js/lib/languages/scss';\nimport sql from 'highlight.js/lib/languages/sql';\nimport python from 'highlight.js/lib/languages/python';\nimport java from 'highlight.js/lib/languages/java';\nimport bash from 'highlight.js/lib/languages/bash';\nimport shell from 'highlight.js/lib/languages/shell';\nimport markdown from 'highlight.js/lib/languages/markdown';\nimport plaintext from 'highlight.js/lib/languages/plaintext';\nimport c from 'highlight.js/lib/languages/c';\nimport cpp from 'highlight.js/lib/languages/cpp';\nimport csharp from 'highlight.js/lib/languages/csharp';\nimport go from 'highlight.js/lib/languages/go';\nimport rust from 'highlight.js/lib/languages/rust';\nimport php from 'highlight.js/lib/languages/php';\nimport ruby from 'highlight.js/lib/languages/ruby';\nimport kotlin from 'highlight.js/lib/languages/kotlin';\nimport swift from 'highlight.js/lib/languages/swift';\nimport yaml from 'highlight.js/lib/languages/yaml';\nimport dockerfile from 'highlight.js/lib/languages/dockerfile';\nimport diff from 'highlight.js/lib/languages/diff';\nimport graphql from 'highlight.js/lib/languages/graphql';\n\nhljs.registerLanguage('javascript', javascript);\nhljs.registerLanguage('typescript', typescript);\nhljs.registerLanguage('json', json);\nhljs.registerLanguage('xml', xml);\nhljs.registerAliases(['html'], { languageName: 'xml' });\nhljs.registerLanguage('css', css);\nhljs.registerLanguage('scss', scss);\nhljs.registerLanguage('sql', sql);\nhljs.registerLanguage('python', python);\nhljs.registerLanguage('java', java);\nhljs.registerLanguage('bash', bash);\nhljs.registerLanguage('shell', shell);\nhljs.registerLanguage('markdown', markdown);\nhljs.registerLanguage('plaintext', plaintext);\nhljs.registerLanguage('c', c);\nhljs.registerLanguage('cpp', cpp);\nhljs.registerLanguage('csharp', csharp);\nhljs.registerLanguage('go', go);\nhljs.registerLanguage('rust', rust);\nhljs.registerLanguage('php', php);\nhljs.registerLanguage('ruby', ruby);\nhljs.registerLanguage('kotlin', kotlin);\nhljs.registerLanguage('swift', swift);\nhljs.registerLanguage('yaml', yaml);\nhljs.registerLanguage('dockerfile', dockerfile);\nhljs.registerLanguage('diff', diff);\nhljs.registerLanguage('graphql', graphql);\n\nexport const codeHighlightKey = new PluginKey<DecorationSet>('nileCodeHighlight');\n\n/** Languages offered in the code block language picker. '' = auto-detect. */\nexport const CODE_LANGUAGES: { value: string; label: string }[] = [\n { value: '', label: 'Auto' },\n { value: 'plaintext', label: 'Plain text' },\n { value: 'javascript', label: 'JavaScript' },\n { value: 'typescript', label: 'TypeScript' },\n { value: 'json', label: 'JSON' },\n { value: 'html', label: 'HTML' },\n { value: 'css', label: 'CSS' },\n { value: 'scss', label: 'SCSS' },\n { value: 'sql', label: 'SQL' },\n { value: 'python', label: 'Python' },\n { value: 'java', label: 'Java' },\n { value: 'c', label: 'C' },\n { value: 'cpp', label: 'C++' },\n { value: 'csharp', label: 'C#' },\n { value: 'go', label: 'Go' },\n { value: 'rust', label: 'Rust' },\n { value: 'php', label: 'PHP' },\n { value: 'ruby', label: 'Ruby' },\n { value: 'kotlin', label: 'Kotlin' },\n { value: 'swift', label: 'Swift' },\n { value: 'bash', label: 'Bash' },\n { value: 'shell', label: 'Shell' },\n { value: 'yaml', label: 'YAML' },\n { value: 'dockerfile', label: 'Dockerfile' },\n { value: 'graphql', label: 'GraphQL' },\n { value: 'diff', label: 'Diff' },\n { value: 'markdown', label: 'Markdown' },\n];\n\nconst AUTO_DETECT_SUBSET = [\n 'javascript', 'typescript', 'json', 'xml', 'css', 'sql', 'python', 'java',\n 'bash', 'go', 'rust', 'ruby',\n];\n\nconst MAX_HIGHLIGHT_LENGTH = 20000;\n\n/**\n * Converts highlight.js' emitted HTML into inline decorations. hljs escapes\n * but never reorders text, so parsed text offsets map 1:1 onto the node.\n */\nfunction decorationsForCode(text: string, language: string | null, base: number): Decoration[] {\n if (!text || text.length > MAX_HIGHLIGHT_LENGTH) return [];\n let value: string;\n try {\n if (language && hljs.getLanguage(language)) {\n value = hljs.highlight(text, { language }).value;\n } else if (language === 'plaintext') {\n return [];\n } else {\n value = hljs.highlightAuto(text, AUTO_DETECT_SUBSET).value;\n }\n } catch {\n return [];\n }\n\n const template = document.createElement('template');\n template.innerHTML = value;\n const decorations: Decoration[] = [];\n let offset = 0;\n const walk = (node: globalThis.Node, classes: string[]): void => {\n node.childNodes.forEach(child => {\n if (child.nodeType === 3) {\n const length = child.nodeValue?.length ?? 0;\n if (classes.length && length) {\n decorations.push(\n Decoration.inline(base + offset, base + offset + length, {\n class: classes.join(' '),\n })\n );\n }\n offset += length;\n } else if (child.nodeType === 1) {\n const el = child as Element;\n walk(el, [...classes, ...el.className.split(/\\s+/).filter(Boolean)]);\n }\n });\n };\n walk(template.content, []);\n return decorations;\n}\n\nfunction buildDecorations(doc: PMNode): DecorationSet {\n const decorations: Decoration[] = [];\n doc.descendants((node, pos) => {\n if (node.type.name === 'code_block') {\n decorations.push(\n ...decorationsForCode(node.textContent, node.attrs.language, pos + 1)\n );\n return false;\n }\n return true;\n });\n return decorations.length ? DecorationSet.create(doc, decorations) : DecorationSet.empty;\n}\n\n/** Syntax highlighting for code blocks, recomputed on document changes. */\nexport function codeHighlightPlugin(): Plugin<DecorationSet> {\n return new Plugin<DecorationSet>({\n key: codeHighlightKey,\n state: {\n init: (_config, state) => buildDecorations(state.doc),\n apply: (tr, old) => (tr.docChanged ? buildDecorations(tr.doc) : old),\n },\n props: {\n decorations(state) {\n return codeHighlightKey.getState(state);\n },\n },\n });\n}\n","const IDENT_RE = '[A-Za-z$_][0-9A-Za-z$_]*';\n\nconst KEYWORDS = [\n \"as\", // for exports\n \"in\",\n \"of\",\n \"if\",\n \"for\",\n \"while\",\n \"finally\",\n \"var\",\n \"new\",\n \"function\",\n \"do\",\n \"return\",\n \"void\",\n \"else\",\n \"break\",\n \"catch\",\n \"instanceof\",\n \"with\",\n \"throw\",\n \"case\",\n \"default\",\n \"try\",\n \"switch\",\n \"continue\",\n \"typeof\",\n \"delete\",\n \"let\",\n \"yield\",\n \"const\",\n \"class\",\n // JS handles these with a special rule\n // \"get\",\n // \"set\",\n \"debugger\",\n \"async\",\n \"await\",\n \"static\",\n \"import\",\n \"from\",\n \"export\",\n \"extends\",\n // It's reached stage 3, which is \"recommended for implementation\":\n \"using\"\n];\nconst LITERALS = [\n \"true\",\n \"false\",\n \"null\",\n \"undefined\",\n \"NaN\",\n \"Infinity\"\n];\n\n// https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects\nconst TYPES = [\n // Fundamental objects\n \"Object\",\n \"Function\",\n \"Boolean\",\n \"Symbol\",\n // numbers and dates\n \"Math\",\n \"Date\",\n \"Number\",\n \"BigInt\",\n // text\n \"String\",\n \"RegExp\",\n // Indexed collections\n \"Array\",\n \"Float32Array\",\n \"Float64Array\",\n \"Int8Array\",\n \"Uint8Array\",\n \"Uint8ClampedArray\",\n \"Int16Array\",\n \"Int32Array\",\n \"Uint16Array\",\n \"Uint32Array\",\n \"BigInt64Array\",\n \"BigUint64Array\",\n // Keyed collections\n \"Set\",\n \"Map\",\n \"WeakSet\",\n \"WeakMap\",\n // Structured data\n \"ArrayBuffer\",\n \"SharedArrayBuffer\",\n \"Atomics\",\n \"DataView\",\n \"JSON\",\n // Control abstraction objects\n \"Promise\",\n \"Generator\",\n \"GeneratorFunction\",\n \"AsyncFunction\",\n // Reflection\n \"Reflect\",\n \"Proxy\",\n // Internationalization\n \"Intl\",\n // WebAssembly\n \"WebAssembly\"\n];\n\nconst ERROR_TYPES = [\n \"Error\",\n \"EvalError\",\n \"InternalError\",\n \"RangeError\",\n \"ReferenceError\",\n \"SyntaxError\",\n \"TypeError\",\n \"URIError\"\n];\n\nconst BUILT_IN_GLOBALS = [\n \"setInterval\",\n \"setTimeout\",\n \"clearInterval\",\n \"clearTimeout\",\n\n \"require\",\n \"exports\",\n\n \"eval\",\n \"isFinite\",\n \"isNaN\",\n \"parseFloat\",\n \"parseInt\",\n \"decodeURI\",\n \"decodeURIComponent\",\n \"encodeURI\",\n \"encodeURIComponent\",\n \"escape\",\n \"unescape\"\n];\n\nconst BUILT_IN_VARIABLES = [\n \"arguments\",\n \"this\",\n \"super\",\n \"console\",\n \"window\",\n \"document\",\n \"localStorage\",\n \"sessionStorage\",\n \"module\",\n \"global\" // Node.js\n];\n\nconst BUILT_INS = [].concat(\n BUILT_IN_GLOBALS,\n TYPES,\n ERROR_TYPES\n);\n\n/*\nLanguage: JavaScript\nDescription: JavaScript (JS) is a lightweight, interpreted, or just-in-time compiled programming language with first-class functions.\nCategory: common, scripting, web\nWebsite: https://developer.mozilla.org/en-US/docs/Web/JavaScript\n*/\n\n\n/** @type LanguageFn */\nfunction javascript(hljs) {\n const regex = hljs.regex;\n /**\n * Takes a string like \"<Booger\" and checks to see\n * if we can find a matching \"</Booger\" later in the\n * content.\n * @param {RegExpMatchArray} match\n * @param {{after:number}} param1\n */\n const hasClosingTag = (match, { after }) => {\n const tag = \"</\" + match[0].slice(1);\n const pos = match.input.indexOf(tag, after);\n return pos !== -1;\n };\n\n const IDENT_RE$1 = IDENT_RE;\n const FRAGMENT = {\n begin: '<>',\n end: '</>'\n };\n // to avoid some special cases inside isTrulyOpeningTag\n const XML_SELF_CLOSING = /<[A-Za-z0-9\\\\._:-]+\\s*\\/>/;\n const XML_TAG = {\n begin: /<[A-Za-z0-9\\\\._:-]+/,\n end: /\\/[A-Za-z0-9\\\\._:-]+>|\\/>/,\n /**\n * @param {RegExpMatchArray} match\n * @param {CallbackResponse} response\n */\n isTrulyOpeningTag: (match, response) => {\n const afterMatchIndex = match[0].length + match.index;\n const nextChar = match.input[afterMatchIndex];\n if (\n // HTML should not include another raw `<` inside a tag\n // nested type?\n // `<Array<Array<number>>`, etc.\n nextChar === \"<\" ||\n // the , gives away that this is not HTML\n // `<T, A extends keyof T, V>`\n nextChar === \",\"\n ) {\n response.ignoreMatch();\n return;\n }\n\n // `<something>`\n // Quite possibly a tag, lets look for a matching closing tag...\n if (nextChar === \">\") {\n // if we cannot find a matching closing tag, then we\n // will ignore it\n if (!hasClosingTag(match, { after: afterMatchIndex })) {\n response.ignoreMatch();\n }\n }\n\n // `<blah />` (self-closing)\n // handled by simpleSelfClosing rule\n\n let m;\n const afterMatch = match.input.substring(afterMatchIndex);\n\n // some more template typing stuff\n // <T = any>(key?: string) => Modify<\n if ((m = afterMatch.match(/^\\s*=/))) {\n response.ignoreMatch();\n return;\n }\n\n // `<From extends string>`\n // technically this could be HTML, but it smells like a type\n // NOTE: This is ugh, but added specifically for https://github.com/highlightjs/highlight.js/issues/3276\n if ((m = afterMatch.match(/^\\s+extends\\s+/))) {\n if (m.index === 0) {\n response.ignoreMatch();\n // eslint-disable-next-line no-useless-return\n return;\n }\n }\n }\n };\n const KEYWORDS$1 = {\n $pattern: IDENT_RE,\n keyword: KEYWORDS,\n literal: LITERALS,\n built_in: BUILT_INS,\n \"variable.language\": BUILT_IN_VARIABLES\n };\n\n // https://tc39.es/ecma262/#sec-literals-numeric-literals\n const decimalDigits = '[0-9](_?[0-9])*';\n const frac = `\\\\.(${decimalDigits})`;\n // DecimalIntegerLiteral, including Annex B NonOctalDecimalIntegerLiteral\n // https://tc39.es/ecma262/#sec-additional-syntax-numeric-literals\n const decimalInteger = `0|[1-9](_?[0-9])*|0[0-7]*[89][0-9]*`;\n const NUMBER = {\n className: 'number',\n variants: [\n // DecimalLiteral\n { begin: `(\\\\b(${decimalInteger})((${frac})|\\\\.)?|(${frac}))` +\n `[eE][+-]?(${decimalDigits})\\\\b` },\n { begin: `\\\\b(${decimalInteger})\\\\b((${frac})\\\\b|\\\\.)?|(${frac})\\\\b` },\n\n // DecimalBigIntegerLiteral\n { begin: `\\\\b(0|[1-9](_?[0-9])*)n\\\\b` },\n\n // NonDecimalIntegerLiteral\n { begin: \"\\\\b0[xX][0-9a-fA-F](_?[0-9a-fA-F])*n?\\\\b\" },\n { begin: \"\\\\b0[bB][0-1](_?[0-1])*n?\\\\b\" },\n { begin: \"\\\\b0[oO][0-7](_?[0-7])*n?\\\\b\" },\n\n // LegacyOctalIntegerLiteral (does not include underscore separators)\n // https://tc39.es/ecma262/#sec-additional-syntax-numeric-literals\n { begin: \"\\\\b0[0-7]+n?\\\\b\" },\n ],\n relevance: 0\n };\n\n const SUBST = {\n className: 'subst',\n begin: '\\\\$\\\\{',\n end: '\\\\}',\n keywords: KEYWORDS$1,\n contains: [] // defined later\n };\n const HTML_TEMPLATE = {\n begin: '\\.?html`',\n end: '',\n starts: {\n end: '`',\n returnEnd: false,\n contains: [\n hljs.BACKSLASH_ESCAPE,\n SUBST\n ],\n subLanguage: 'xml'\n }\n };\n const CSS_TEMPLATE = {\n begin: '\\.?css`',\n end: '',\n starts: {\n end: '`',\n returnEnd: false,\n contains: [\n hljs.BACKSLASH_ESCAPE,\n SUBST\n ],\n subLanguage: 'css'\n }\n };\n const GRAPHQL_TEMPLATE = {\n begin: '\\.?gql`',\n end: '',\n starts: {\n end: '`',\n returnEnd: false,\n contains: [\n hljs.BACKSLASH_ESCAPE,\n SUBST\n ],\n subLanguage: 'graphql'\n }\n };\n const TEMPLATE_STRING = {\n className: 'string',\n begin: '`',\n end: '`',\n contains: [\n hljs.BACKSLASH_ESCAPE,\n SUBST\n ]\n };\n const JSDOC_COMMENT = hljs.COMMENT(\n /\\/\\*\\*(?!\\/)/,\n '\\\\*/',\n {\n relevance: 0,\n contains: [\n {\n begin: '(?=@[A-Za-z]+)',\n relevance: 0,\n contains: [\n {\n className: 'doctag',\n begin: '@[A-Za-z]+'\n },\n {\n className: 'type',\n begin: '\\\\{',\n end: '\\\\}',\n excludeEnd: true,\n excludeBegin: true,\n relevance: 0\n },\n {\n className: 'variable',\n begin: IDENT_RE$1 + '(?=\\\\s*(-)|$)',\n endsParent: true,\n relevance: 0\n },\n // eat spaces (not newlines) so we can find\n // types or variables\n {\n begin: /(?=[^\\n])\\s/,\n relevance: 0\n }\n ]\n }\n ]\n }\n );\n const COMMENT = {\n className: \"comment\",\n variants: [\n JSDOC_COMMENT,\n hljs.C_BLOCK_COMMENT_MODE,\n hljs.C_LINE_COMMENT_MODE\n ]\n };\n const SUBST_INTERNALS = [\n hljs.APOS_STRING_MODE,\n hljs.QUOTE_STRING_MODE,\n HTML_TEMPLATE,\n CSS_TEMPLATE,\n GRAPHQL_TEMPLATE,\n TEMPLATE_STRING,\n // Skip numbers when they are part of a variable name\n { match: /\\$\\d+/ },\n NUMBER,\n // This is intentional:\n // See https://github.com/highlightjs/highlight.js/issues/3288\n // hljs.REGEXP_MODE\n ];\n SUBST.contains = SUBST_INTERNALS\n .concat({\n // we need to pair up {} inside our subst to prevent\n // it from ending too early by matching another }\n begin: /\\{/,\n end: /\\}/,\n keywords: KEYWORDS$1,\n contains: [\n \"self\"\n ].concat(SUBST_INTERNALS)\n });\n const SUBST_AND_COMMENTS = [].concat(COMMENT, SUBST.contains);\n const PARAMS_CONTAINS = SUBST_AND_COMMENTS.concat([\n // eat recursive parens in sub expressions\n {\n begin: /(\\s*)\\(/,\n end: /\\)/,\n keywords: KEYWORDS$1,\n contains: [\"self\"].concat(SUBST_AND_COMMENTS)\n }\n ]);\n const PARAMS = {\n className: 'params',\n // convert this to negative lookbehind in v12\n begin: /(\\s*)\\(/, // to match the parms with\n end: /\\)/,\n excludeBegin: true,\n excludeEnd: true,\n keywords: KEYWORDS$1,\n contains: PARAMS_CONTAINS\n };\n\n // ES6 classes\n const CLASS_OR_EXTENDS = {\n variants: [\n // class Car extends vehicle\n {\n match: [\n /class/,\n /\\s+/,\n IDENT_RE$1,\n /\\s+/,\n /extends/,\n /\\s+/,\n regex.concat(IDENT_RE$1, \"(\", regex.concat(/\\./, IDENT_RE$1), \")*\")\n ],\n scope: {\n 1: \"keyword\",\n 3: \"title.class\",\n 5: \"keyword\",\n 7: \"title.class.inherited\"\n }\n },\n // class Car\n {\n match: [\n /class/,\n /\\s+/,\n IDENT_RE$1\n ],\n scope: {\n 1: \"keyword\",\n 3: \"title.class\"\n }\n },\n\n ]\n };\n\n const CLASS_REFERENCE = {\n relevance: 0,\n match:\n regex.either(\n // Hard coded exceptions\n /\\bJSON/,\n // Float32Array, OutT\n /\\b[A-Z][a-z]+([A-Z][a-z]*|\\d)*/,\n // CSSFactory, CSSFactoryT\n /\\b[A-Z]{2,}([A-Z][a-z]+|\\d)+([A-Z][a-z]*)*/,\n // FPs, FPsT\n /\\b[A-Z]{2,}[a-z]+([A-Z][a-z]+|\\d)*([A-Z][a-z]*)*/,\n // P\n // single letters are not highlighted\n // BLAH\n // this will be flagged as a UPPER_CASE_CONSTANT instead\n ),\n className: \"title.class\",\n keywords: {\n _: [\n // se we still get relevance credit for JS library classes\n ...TYPES,\n ...ERROR_TYPES\n ]\n }\n };\n\n const USE_STRICT = {\n label: \"use_strict\",\n className: 'meta',\n relevance: 10,\n begin: /^\\s*['\"]use (strict|asm)['\"]/\n };\n\n const FUNCTION_DEFINITION = {\n variants: [\n {\n match: [\n /function/,\n /\\s+/,\n IDENT_RE$1,\n /(?=\\s*\\()/\n ]\n },\n // anonymous function\n {\n match: [\n /function/,\n /\\s*(?=\\()/\n ]\n }\n ],\n className: {\n 1: \"keyword\",\n 3: \"title.function\"\n },\n label: \"func.def\",\n contains: [ PARAMS ],\n illegal: /%/\n };\n\n const UPPER_CASE_CONSTANT = {\n relevance: 0,\n match: /\\b[A-Z][A-Z_0-9]+\\b/,\n className: \"variable.constant\"\n };\n\n function noneOf(list) {\n return regex.concat(\"(?!\", list.join(\"|\"), \")\");\n }\n\n const FUNCTION_CALL = {\n match: regex.concat(\n /\\b/,\n noneOf([\n ...BUILT_IN_GLOBALS,\n \"super\",\n \"import\",\n \"await\",\n ].map(x => `${x}\\\\s*\\\\(`)),\n IDENT_RE$1, regex.lookahead(/\\s*\\(/)),\n className: \"title.function\",\n relevance: 0\n };\n\n const PROPERTY_ACCESS = {\n begin: regex.concat(/\\./, regex.lookahead(\n regex.concat(IDENT_RE$1, /(?![0-9A-Za-z$_(])/)\n )),\n end: IDENT_RE$1,\n excludeBegin: true,\n keywords: \"prototype\",\n className: \"property\",\n relevance: 0\n };\n\n const GETTER_OR_SETTER = {\n match: [\n /get|set/,\n /\\s+/,\n IDENT_RE$1,\n /(?=\\()/\n ],\n className: {\n 1: \"keyword\",\n 3: \"title.function\"\n },\n contains: [\n { // eat to avoid empty params\n begin: /\\(\\)/\n },\n PARAMS\n ]\n };\n\n const FUNC_LEAD_IN_RE = '(\\\\(' +\n '[^()]*(\\\\(' +\n '[^()]*(\\\\(' +\n '[^()]*' +\n '\\\\)[^()]*)*' +\n '\\\\)[^()]*)*' +\n '\\\\)|' + hljs.UNDERSCORE_IDENT_RE + ')\\\\s*=>';\n\n const FUNCTION_VARIABLE = {\n match: [\n /const|var|let/, /\\s+/,\n IDENT_RE$1, /\\s*/,\n /=\\s*/,\n /(async\\s*)?/, // async is optional\n regex.lookahead(FUNC_LEAD_IN_RE)\n ],\n keywords: \"async\",\n className: {\n 1: \"keyword\",\n 3: \"title.function\"\n },\n contains: [\n PARAMS\n ]\n };\n\n return {\n name: 'JavaScript',\n aliases: ['js', 'jsx', 'mjs', 'cjs'],\n keywords: KEYWORDS$1,\n // this will be extended by TypeScript\n exports: { PARAMS_CONTAINS, CLASS_REFERENCE },\n illegal: /#(?![$_A-Za-z])/,\n contains: [\n hljs.SHEBANG({\n label: \"shebang\",\n binary: \"node\",\n relevance: 5\n }),\n USE_STRICT,\n hljs.APOS_STRING_MODE,\n hljs.QUOTE_STRING_MODE,\n HTML_TEMPLATE,\n CSS_TEMPLATE,\n GRAPHQL_TEMPLATE,\n TEMPLATE_STRING,\n COMMENT,\n // Skip numbers when they are part of a variable name\n { match: /\\$\\d+/ },\n NUMBER,\n CLASS_REFERENCE,\n {\n scope: 'attr',\n match: IDENT_RE$1 + regex.lookahead(':'),\n relevance: 0\n },\n FUNCTION_VARIABLE,\n { // \"value\" container\n begin: '(' + hljs.RE_STARTERS_RE + '|\\\\b(case|return|throw)\\\\b)\\\\s*',\n keywords: 'return throw case',\n relevance: 0,\n contains: [\n COMMENT,\n hljs.REGEXP_MODE,\n {\n className: 'function',\n // we have to count the parens to make sure we actually have the\n // correct bounding ( ) before the =>. There could be any number of\n // sub-expressions inside also surrounded by parens.\n begin: FUNC_LEAD_IN_RE,\n returnBegin: true,\n end: '\\\\s*=>',\n contains: [\n {\n className: 'params',\n variants: [\n {\n begin: hljs.UNDERSCORE_IDENT_RE,\n relevance: 0\n },\n {\n className: null,\n begin: /\\(\\s*\\)/,\n skip: true\n },\n {\n begin: /(\\s*)\\(/,\n end: /\\)/,\n excludeBegin: true,\n excludeEnd: true,\n keywords: KEYWORDS$1,\n contains: PARAMS_CONTAINS\n }\n ]\n }\n ]\n },\n { // could be a comma delimited list of params to a function call\n begin: /,/,\n relevance: 0\n },\n {\n match: /\\s+/,\n relevance: 0\n },\n { // JSX\n variants: [\n { begin: FRAGMENT.begin, end: FRAGMENT.end },\n { match: XML_SELF_CLOSING },\n {\n begin: XML_TAG.begin,\n // we carefully check the opening tag to see if it truly\n // is a tag and not a false positive\n 'on:begin': XML_TAG.isTrulyOpeningTag,\n end: XML_TAG.end\n }\n ],\n subLanguage: 'xml',\n contains: [\n {\n begin: XML_TAG.begin,\n end: XML_TAG.end,\n skip: true,\n contains: ['self']\n }\n ]\n }\n ],\n },\n FUNCTION_DEFINITION,\n {\n // prevent this from getting swallowed up by function\n // since they appear \"function like\"\n beginKeywords: \"while if switch catch for\"\n },\n {\n // we have to count the parens to make sure we actually have the correct\n // bounding ( ). There could be any number of sub-expressions inside\n // also surrounded by parens.\n begin: '\\\\b(?!function)' + hljs.UNDERSCORE_IDENT_RE +\n '\\\\(' + // first parens\n '[^()]*(\\\\(' +\n '[^()]*(\\\\(' +\n '[^()]*' +\n '\\\\)[^()]*)*' +\n '\\\\)[^()]*)*' +\n '\\\\)\\\\s*\\\\{', // end parens\n returnBegin:true,\n label: \"func.def\",\n contains: [\n PARAMS,\n hljs.inherit(hljs.TITLE_MODE, { begin: IDENT_RE$1, className: \"title.function\" })\n ]\n },\n // catch ... so it won't trigger the property rule below\n {\n match: /\\.\\.\\./,\n relevance: 0\n },\n PROPERTY_ACCESS,\n // hack: prevents detection of keywords in some circumstances\n // .keyword()\n // $keyword = x\n {\n match: '\\\\$' + IDENT_RE$1,\n relevance: 0\n },\n {\n match: [ /\\bconstructor(?=\\s*\\()/ ],\n className: { 1: \"title.function\" },\n contains: [ PARAMS ]\n },\n FUNCTION_CALL,\n UPPER_CASE_CONSTANT,\n CLASS_OR_EXTENDS,\n GETTER_OR_SETTER,\n {\n match: /\\$[(.]/ // relevance booster for a pattern common to JS libs: `$(something)` and `$.something`\n }\n ]\n };\n}\n\nmodule.exports = javascript;\n","const EXTENDED_NUMBER_RE = '([-+]?)(\\\\b0[xX][a-fA-F0-9]+|(\\\\b\\\\d+(\\\\.\\\\d*)?|\\\\.\\\\d+)([eE][-+]?\\\\d+)?)|NaN|[-+]?Infinity'; // 0x..., 0..., decimal, float\n\nconst EXTENDED_NUMBER_MODE = {\n scope: 'number',\n match: EXTENDED_NUMBER_RE,\n relevance: 0\n};\n\n/*\nLanguage: JSON\nDescription: JSON (JavaScript Object Notation) is a lightweight data-interchange format.\nWebsites: http://www.json.org, https://www.json5.org\nCategory: common, protocols, web\n*/\n\n\nfunction json(hljs) {\n const ATTRIBUTE = {\n className: 'attr',\n begin: /((\"(\\\\.|[^\\\\\"\\r\\n])*\")|('(\\\\.|[^\\\\'\\r\\n])*'))(?=\\s*:)/,\n relevance: 1.01\n };\n const PUNCTUATION = {\n match: /[{}[\\],:]/,\n className: \"punctuation\",\n relevance: 0\n };\n const LITERALS = [\n \"true\",\n \"false\",\n \"null\"\n ];\n // NOTE: normally we would rely on `keywords` for this but using a mode here allows us\n // - to use the very tight `illegal: \\S` rule later to flag any other character\n // - as illegal indicating that despite looking like JSON we do not truly have\n // - JSON and thus improve false-positively greatly since JSON will try and claim\n // - all sorts of JSON looking stuff\n const LITERALS_MODE = {\n scope: \"literal\",\n beginKeywords: LITERALS.join(\" \"),\n };\n\n return {\n name: 'JSON',\n aliases: ['jsonc', 'json5'],\n keywords:{\n literal: LITERALS,\n },\n contains: [\n ATTRIBUTE,\n PUNCTUATION,\n hljs.APOS_STRING_MODE,\n hljs.QUOTE_STRING_MODE,\n LITERALS_MODE,\n EXTENDED_NUMBER_MODE,\n hljs.C_LINE_COMMENT_MODE,\n hljs.C_BLOCK_COMMENT_MODE\n ],\n illegal: '\\\\S'\n };\n}\n\nmodule.exports = json;\n","const MODES = (hljs) => {\n return {\n IMPORTANT: {\n scope: 'meta',\n begin: '!important'\n },\n BLOCK_COMMENT: hljs.C_BLOCK_COMMENT_MODE,\n HEXCOLOR: {\n scope: 'number',\n begin: /#(([0-9a-fA-F]{3,4})|(([0-9a-fA-F]{2}){3,4}))\\b/\n },\n UNICODE_RANGE: {\n scope: 'number',\n begin: /\\b[Uu]\\+[0-9A-Fa-f][0-9A-Fa-f?]{0,4}(-[0-9A-Fa-f][0-9A-Fa-f]{0,4})?/\n },\n FUNCTION_DISPATCH: {\n className: \"built_in\",\n begin: /[\\w-]+(?=\\()/\n },\n ATTRIBUTE_SELECTOR_MODE: {\n scope: 'selector-attr',\n begin: /\\[/,\n end: /\\]/,\n illegal: '$',\n contains: [\n hljs.APOS_STRING_MODE,\n hljs.QUOTE_STRING_MODE\n ]\n },\n CSS_NUMBER_MODE: {\n scope: 'number',\n begin: hljs.NUMBER_RE + '(' +\n '%|em|ex|ch|rem' +\n '|vw|vh|vmin|vmax' +\n '|cm|mm|in|pt|pc|px' +\n '|deg|grad|rad|turn' +\n '|s|ms' +\n '|Hz|kHz' +\n '|dpi|dpcm|dppx' +\n ')?',\n relevance: 0\n },\n CSS_VARIABLE: {\n className: \"attr\",\n begin: /--[A-Za-z_][A-Za-z0-9_-]*/\n }\n };\n};\n\nconst HTML_TAGS = [\n 'a',\n 'abbr',\n 'address',\n 'article',\n 'aside',\n 'audio',\n 'b',\n 'blockquote',\n 'body',\n 'button',\n 'canvas',\n 'caption',\n 'cite',\n 'code',\n 'dd',\n 'del',\n 'details',\n 'dfn',\n 'div',\n 'dl',\n 'dt',\n 'em',\n 'fieldset',\n 'figcaption',\n 'figure',\n 'footer',\n 'form',\n 'h1',\n 'h2',\n 'h3',\n 'h4',\n 'h5',\n 'h6',\n 'header',\n 'hgroup',\n 'html',\n 'i',\n 'iframe',\n 'img',\n 'input',\n 'ins',\n 'kbd',\n 'label',\n 'legend',\n 'li',\n 'main',\n 'mark',\n 'menu',\n 'nav',\n 'object',\n 'ol',\n 'optgroup',\n 'option',\n 'p',\n 'picture',\n 'q',\n 'quote',\n 'samp',\n 'section',\n 'select',\n 'source',\n 'span',\n 'strong',\n 'summary',\n 'sup',\n 'table',\n 'tbody',\n 'td',\n 'textarea',\n 'tfoot',\n 'th',\n 'thead',\n 'time',\n 'tr',\n 'ul',\n 'var',\n 'video'\n];\n\nconst SVG_TAGS = [\n 'defs',\n 'g',\n 'marker',\n 'mask',\n 'pattern',\n 'svg',\n 'switch',\n 'symbol',\n 'feBlend',\n 'feColorMatrix',\n 'feComponentTransfer',\n 'feComposite',\n 'feConvolveMatrix',\n 'feDiffuseLighting',\n 'feDisplacementMap',\n 'feFlood',\n 'feGaussianBlur',\n 'feImage',\n 'feMerge',\n 'feMorphology',\n 'feOffset',\n 'feSpecularLighting',\n 'feTile',\n 'feTurbulence',\n 'linearGradient',\n 'radialGradient',\n 'stop',\n 'circle',\n 'ellipse',\n 'image',\n 'line',\n 'path',\n 'polygon',\n 'polyline',\n 'rect',\n 'text',\n 'use',\n 'textPath',\n 'tspan',\n 'foreignObject',\n 'clipPath'\n];\n\nconst TAGS = [\n ...HTML_TAGS,\n ...SVG_TAGS,\n];\n\n// Sorting, then reversing makes sure longer attributes/elements like\n// `font-weight` are matched fully instead of getting false positives on say `font`\n\nconst MEDIA_FEATURES = [\n 'any-hover',\n 'any-pointer',\n 'aspect-ratio',\n 'color',\n 'color-gamut',\n 'color-index',\n 'device-aspect-ratio',\n 'device-height',\n 'device-width',\n 'display-mode',\n 'forced-colors',\n 'grid',\n 'height',\n 'hover',\n 'inverted-colors',\n 'monochrome',\n 'orientation',\n 'overflow-block',\n 'overflow-inline',\n 'pointer',\n 'prefers-color-scheme',\n 'prefers-contrast',\n 'prefers-reduced-motion',\n 'prefers-reduced-transparency',\n 'resolution',\n 'scan',\n 'scripting',\n 'update',\n 'width',\n // TODO: find a better solution?\n 'min-width',\n 'max-width',\n 'min-height',\n 'max-height'\n].sort().reverse();\n\n// https://developer.mozilla.org/en-US/docs/Web/CSS/Pseudo-classes\nconst PSEUDO_CLASSES = [\n 'active',\n 'any-link',\n 'blank',\n 'checked',\n 'current',\n 'default',\n 'defined',\n 'dir', // dir()\n 'disabled',\n 'drop',\n 'empty',\n 'enabled',\n 'first',\n 'first-child',\n 'first-of-type',\n 'fullscreen',\n 'future',\n 'focus',\n 'focus-visible',\n 'focus-within',\n 'has', // has()\n 'host', // host or host()\n 'host-context', // host-context()\n 'hover',\n 'indeterminate',\n 'in-range',\n 'invalid',\n 'is', // is()\n 'lang', // lang()\n 'last-child',\n 'last-of-type',\n 'left',\n 'link',\n 'local-link',\n 'not', // not()\n 'nth-child', // nth-child()\n 'nth-col', // nth-col()\n 'nth-last-child', // nth-last-child()\n 'nth-last-col', // nth-last-col()\n 'nth-last-of-type', //nth-last-of-type()\n 'nth-of-type', //nth-of-type()\n 'only-child',\n 'only-of-type',\n 'optional',\n 'out-of-range',\n 'past',\n 'placeholder-shown',\n 'read-only',\n 'read-write',\n 'required',\n 'right',\n 'root',\n 'scope',\n 'target',\n 'target-within',\n 'user-invalid',\n 'valid',\n 'visited',\n 'where' // where()\n].sort().reverse();\n\n// https://developer.mozilla.org/en-US/docs/Web/CSS/Pseudo-elements\nconst PSEUDO_ELEMENTS = [\n 'after',\n 'backdrop',\n 'before',\n 'cue',\n 'cue-region',\n 'first-letter',\n 'first-line',\n 'grammar-error',\n 'marker',\n 'part',\n 'placeholder',\n 'selection',\n 'slotted',\n 'spelling-error'\n].sort().reverse();\n\nconst ATTRIBUTES = [\n 'accent-color',\n 'align-content',\n 'align-items',\n 'align-self',\n 'alignment-baseline',\n 'all',\n 'anchor-name',\n 'animation',\n 'animation-composition',\n 'animation-delay',\n 'animation-direction',\n 'animation-duration',\n 'animation-fill-mode',\n 'animation-iteration-count',\n 'animation-name',\n 'animation-play-state',\n 'animation-range',\n 'animation-range-end',\n 'animation-range-start',\n 'animation-timeline',\n 'animation-timing-function',\n 'appearance',\n 'aspect-ratio',\n 'backdrop-filter',\n 'backface-visibility',\n 'background',\n 'background-attachment',\n 'background-blend-mode',\n 'background-clip',\n 'background-color',\n 'background-image',\n 'background-origin',\n 'background-position',\n 'background-position-x',\n 'background-position-y',\n 'background-repeat',\n 'background-size',\n 'baseline-shift',\n 'block-size',\n 'border',\n 'border-block',\n 'border-block-color',\n 'border-block-end',\n 'border-block-end-color',\n 'border-block-end-style',\n 'border-block-end-width',\n 'border-block-start',\n 'border-block-start-color',\n 'border-block-start-style',\n 'border-block-start-width',\n 'border-block-style',\n 'border-block-width',\n 'border-bottom',\n 'border-bottom-color',\n 'border-bottom-left-radius',\n 'border-bottom-right-radius',\n 'border-bottom-style',\n 'border-bottom-width',\n 'border-collapse',\n 'border-color',\n 'border-end-end-radius',\n 'border-end-start-radius',\n 'border-image',\n 'border-image-outset',\n 'border-image-repeat',\n 'border-image-slice',\n 'border-image-source',\n 'border-image-width',\n 'border-inline',\n 'border-inline-color',\n 'border-inline-end',\n 'border-inline-end-color',\n 'border-inline-end-style',\n 'border-inline-end-width',\n 'border-inline-start',\n 'border-inline-start-color',\n 'border-inline-start-style',\n 'border-inline-start-width',\n 'border-inline-style',\n 'border-inline-width',\n 'border-left',\n 'border-left-color',\n 'border-left-style',\n 'border-left-width',\n 'border-radius',\n 'border-right',\n 'border-right-color',\n 'border-right-style',\n 'border-right-width',\n 'border-spacing',\n 'border-start-end-radius',\n 'border-start-start-radius',\n 'border-style',\n 'border-top',\n 'border-top-color',\n 'border-top-left-radius',\n 'border-top-right-radius',\n 'border-top-style',\n 'border-top-width',\n 'border-width',\n 'bottom',\n 'box-align',\n 'box-decoration-break',\n 'box-direction',\n 'box-flex',\n 'box-flex-group',\n 'box-lines',\n 'box-ordinal-group',\n 'box-orient',\n 'box-pack',\n 'box-shadow',\n 'box-sizing',\n 'break-after',\n 'break-before',\n 'break-inside',\n 'caption-side',\n 'caret-color',\n 'clear',\n 'clip',\n 'clip-path',\n 'clip-rule',\n 'color',\n 'color-interpolation',\n 'color-interpolation-filters',\n 'color-profile',\n 'color-rendering',\n 'color-scheme',\n 'column-count',\n 'column-fill',\n 'column-gap',\n 'column-rule',\n 'column-rule-color',\n 'column-rule-style',\n 'column-rule-width',\n 'column-span',\n 'column-width',\n 'columns',\n 'contain',\n 'contain-intrinsic-block-size',\n 'contain-intrinsic-height',\n 'contain-intrinsic-inline-size',\n 'contain-intrinsic-size',\n 'contain-intrinsic-width',\n 'container',\n 'container-name',\n 'container-type',\n 'content',\n 'content-visibility',\n 'counter-increment',\n 'counter-reset',\n 'counter-set',\n 'cue',\n 'cue-after',\n 'cue-before',\n 'cursor',\n 'cx',\n 'cy',\n 'direction',\n 'display',\n 'dominant-baseline',\n 'empty-cells',\n 'enable-background',\n 'field-sizing',\n 'fill',\n 'fill-opacity',\n 'fill-rule',\n 'filter',\n 'flex',\n 'flex-basis',\n 'flex-direction',\n 'flex-flow',\n 'flex-grow',\n 'flex-shrink',\n 'flex-wrap',\n 'float',\n 'flood-color',\n 'flood-opacity',\n 'flow',\n 'font',\n 'font-display',\n 'font-family',\n 'font-feature-settings',\n 'font-kerning',\n 'font-language-override',\n 'font-optical-sizing',\n 'font-palette',\n 'font-size',\n 'font-size-adjust',\n 'font-smooth',\n 'font-smoothing',\n 'font-stretch',\n 'font-style',\n 'font-synthesis',\n 'font-synthesis-position',\n 'font-synthesis-small-caps',\n 'font-synthesis-style',\n 'font-synthesis-weight',\n 'font-variant',\n 'font-variant-alternates',\n 'font-variant-caps',\n 'font-variant-east-asian',\n 'font-variant-emoji',\n 'font-variant-ligatures',\n 'font-variant-numeric',\n 'font-variant-position',\n 'font-variation-settings',\n 'font-weight',\n 'forced-color-adjust',\n 'gap',\n 'glyph-orientation-horizontal',\n 'glyph-orientation-vertical',\n 'grid',\n 'grid-area',\n 'grid-auto-columns',\n 'grid-auto-flow',\n 'grid-auto-rows',\n 'grid-column',\n 'grid-column-end',\n 'grid-column-start',\n 'grid-gap',\n 'grid-row',\n 'grid-row-end',\n 'grid-row-start',\n 'grid-template',\n 'grid-template-areas',\n 'grid-template-columns',\n 'grid-template-rows',\n 'hanging-punctuation',\n 'height',\n 'hyphenate-character',\n 'hyphenate-limit-chars',\n 'hyphens',\n 'icon',\n 'image-orientation',\n 'image-rendering',\n 'image-resolution',\n 'ime-mode',\n 'initial-letter',\n 'initial-letter-align',\n 'inline-size',\n 'inset',\n 'inset-area',\n 'inset-block',\n 'inset-block-end',\n 'inset-block-start',\n 'inset-inline',\n 'inset-inline-end',\n 'inset-inline-start',\n 'isolation',\n 'justify-content',\n 'justify-items',\n 'justify-self',\n 'kerning',\n 'left',\n 'letter-spacing',\n 'lighting-color',\n 'line-break',\n 'line-height',\n 'line-height-step',\n 'list-style',\n 'list-style-image',\n 'list-style-position',\n 'list-style-type',\n 'margin',\n 'margin-block',\n 'margin-block-end',\n 'margin-block-start',\n 'margin-bottom',\n 'margin-inline',\n 'margin-inline-end',\n 'margin-inline-start',\n 'margin-left',\n 'margin-right',\n 'margin-top',\n 'margin-trim',\n 'marker',\n 'marker-end',\n 'marker-mid',\n 'marker-start',\n 'marks',\n 'mask',\n 'mask-border',\n 'mask-border-mode',\n 'mask-border-outset',\n 'mask-border-repeat',\n 'mask-border-slice',\n 'mask-border-source',\n 'mask-border-width',\n 'mask-clip',\n 'mask-composite',\n 'mask-image',\n 'mask-mode',\n 'mask-origin',\n 'mask-position',\n 'mask-repeat',\n 'mask-size',\n 'mask-type',\n 'masonry-auto-flow',\n 'math-depth',\n 'math-shift',\n 'math-style',\n 'max-block-size',\n 'max-height',\n 'max-inline-size',\n 'max-width',\n 'min-block-size',\n 'min-height',\n 'min-inline-size',\n 'min-width',\n 'mix-blend-mode',\n 'nav-down',\n 'nav-index',\n 'nav-left',\n 'nav-right',\n 'nav-up',\n 'none',\n 'normal',\n 'object-fit',\n 'object-position',\n 'offset',\n 'offset-anchor',\n 'offset-distance',\n 'offset-path',\n 'offset-position',\n 'offset-rotate',\n 'opacity',\n 'order',\n 'orphans',\n 'outline',\n 'outline-color',\n 'outline-offset',\n 'outline-style',\n 'outline-width',\n 'overflow',\n 'overflow-anchor',\n 'overflow-block',\n 'overflow-clip-margin',\n 'overflow-inline',\n 'overflow-wrap',\n 'overflow-x',\n 'overflow-y',\n 'overlay',\n 'overscroll-behavior',\n 'overscroll-behavior-block',\n 'overscroll-behavior-inline',\n 'overscroll-behavior-x',\n 'overscroll-behavior-y',\n 'padding',\n 'padding-block',\n 'padding-block-end',\n 'padding-block-start',\n 'padding-bottom',\n 'padding-inline',\n 'padding-inline-end',\n 'padding-inline-start',\n 'padding-left',\n 'padding-right',\n 'padding-top',\n 'page',\n 'page-break-after',\n 'page-break-before',\n 'page-break-inside',\n 'paint-order',\n 'pause',\n 'pause-after',\n 'pause-before',\n 'perspective',\n 'perspective-origin',\n 'place-content',\n 'place-items',\n 'place-self',\n 'pointer-events',\n 'position',\n 'position-anchor',\n 'position-visibility',\n 'print-color-adjust',\n 'quotes',\n 'r',\n 'resize',\n 'rest',\n 'rest-after',\n 'rest-before',\n 'right',\n 'rotate',\n 'row-gap',\n 'ruby-align',\n 'ruby-position',\n 'scale',\n 'scroll-behavior',\n 'scroll-margin',\n 'scroll-margin-block',\n 'scroll-margin-block-end',\n 'scroll-margin-block-start',\n 'scroll-margin-bottom',\n 'scroll-margin-inline',\n 'scroll-margin-inline-end',\n 'scroll-margin-inline-start',\n 'scroll-margin-left',\n 'scroll-margin-right',\n 'scroll-margin-top',\n 'scroll-padding',\n 'scroll-padding-block',\n 'scroll-padding-block-end',\n 'scroll-padding-block-start',\n 'scroll-padding-bottom',\n 'scroll-padding-inline',\n 'scroll-padding-inline-end',\n 'scroll-padding-inline-start',\n 'scroll-padding-left',\n 'scroll-padding-right',\n 'scroll-padding-top',\n 'scroll-snap-align',\n 'scroll-snap-stop',\n 'scroll-snap-type',\n 'scroll-timeline',\n 'scroll-timeline-axis',\n 'scroll-timeline-name',\n 'scrollbar-color',\n 'scrollbar-gutter',\n 'scrollbar-width',\n 'shape-image-threshold',\n 'shape-margin',\n 'shape-outside',\n 'shape-rendering',\n 'speak',\n 'speak-as',\n 'src', // @font-face\n 'stop-color',\n 'stop-opacity',\n 'stroke',\n 'stroke-dasharray',\n 'stroke-dashoffset',\n 'stroke-linecap',\n 'stroke-linejoin',\n 'stroke-miterlimit',\n 'stroke-opacity',\n 'stroke-width',\n 'tab-size',\n 'table-layout',\n 'text-align',\n 'text-align-all',\n 'text-align-last',\n 'text-anchor',\n 'text-combine-upright',\n 'text-decoration',\n 'text-decoration-color',\n 'text-decoration-line',\n 'text-decoration-skip',\n 'text-decoration-skip-ink',\n 'text-decoration-style',\n 'text-decoration-thickness',\n 'text-emphasis',\n 'text-emphasis-color',\n 'text-emphasis-position',\n 'text-emphasis-style',\n 'text-indent',\n 'text-justify',\n 'text-orientation',\n 'text-overflow',\n 'text-rendering',\n 'text-shadow',\n 'text-size-adjust',\n 'text-transform',\n 'text-underline-offset',\n 'text-underline-position',\n 'text-wrap',\n 'text-wrap-mode',\n 'text-wrap-style',\n 'timeline-scope',\n 'top',\n 'touch-action',\n 'transform',\n 'transform-box',\n 'transform-origin',\n 'transform-style',\n 'transition',\n 'transition-behavior',\n 'transition-delay',\n 'transition-duration',\n 'transition-property',\n 'transition-timing-function',\n 'translate',\n 'unicode-bidi',\n 'unicode-range',\n 'user-modify',\n 'user-select',\n 'vector-effect',\n 'vertical-align',\n 'view-timeline',\n 'view-timeline-axis',\n 'view-timeline-inset',\n 'view-timeline-name',\n 'view-transition-name',\n 'visibility',\n 'voice-balance',\n 'voice-duration',\n 'voice-family',\n 'voice-pitch',\n 'voice-range',\n 'voice-rate',\n 'voice-stress',\n 'voice-volume',\n 'white-space',\n 'white-space-collapse',\n 'widows',\n 'width',\n 'will-change',\n 'word-break',\n 'word-spacing',\n 'word-wrap',\n 'writing-mode',\n 'x',\n 'y',\n 'z-index',\n 'zoom'\n].sort().reverse();\n\n/*\nLanguage: CSS\nCategory: common, css, web\nWebsite: https://developer.mozilla.org/en-US/docs/Web/CSS\n*/\n\n\n/** @type LanguageFn */\nfunction css(hljs) {\n const regex = hljs.regex;\n const modes = MODES(hljs);\n const VENDOR_PREFIX = { begin: /-(webkit|moz|ms|o)-(?=[a-z])/ };\n const AT_MODIFIERS = \"and or not only\";\n const AT_PROPERTY_RE = /@-?\\w[\\w]*(-\\w+)*/; // @-webkit-keyframes\n const IDENT_RE = '[a-zA-Z-][a-zA-Z0-9_-]*';\n const STRINGS = [\n hljs.APOS_STRING_MODE,\n hljs.QUOTE_STRING_MODE\n ];\n\n return {\n name: 'CSS',\n case_insensitive: true,\n illegal: /[=|'\\$]/,\n keywords: { keyframePosition: \"from to\" },\n classNameAliases: {\n // for visual continuity with `tag {}` and because we\n // don't have a great class for this?\n keyframePosition: \"selector-tag\" },\n contains: [\n modes.BLOCK_COMMENT,\n VENDOR_PREFIX,\n // to recognize keyframe 40% etc which are outside the scope of our\n // attribute value mode\n modes.CSS_NUMBER_MODE,\n {\n className: 'selector-id',\n begin: /#[A-Za-z0-9_-]+/,\n relevance: 0\n },\n {\n className: 'selector-class',\n begin: '\\\\.' + IDENT_RE,\n relevance: 0\n },\n modes.ATTRIBUTE_SELECTOR_MODE,\n {\n className: 'selector-pseudo',\n variants: [\n { begin: ':(' + PSEUDO_CLASSES.join('|') + ')' },\n { begin: ':(:)?(' + PSEUDO_ELEMENTS.join('|') + ')' }\n ]\n },\n // we may actually need this (12/2020)\n // { // pseudo-selector params\n // begin: /\\(/,\n // end: /\\)/,\n // contains: [ hljs.CSS_NUMBER_MODE ]\n // },\n modes.CSS_VARIABLE,\n {\n className: 'attribute',\n begin: '\\\\b(' + ATTRIBUTES.join('|') + ')\\\\b'\n },\n // attribute values\n {\n begin: /:/,\n end: /[;}{]/,\n contains: [\n modes.BLOCK_COMMENT,\n modes.HEXCOLOR,\n modes.IMPORTANT,\n modes.CSS_NUMBER_MODE,\n modes.UNICODE_RANGE,\n ...STRINGS,\n // needed to highlight these as strings and to avoid issues with\n // illegal characters that might be inside urls that would trigger the\n // languages illegal stack\n {\n begin: /(url|data-uri)\\(/,\n end: /\\)/,\n relevance: 0, // from keywords\n keywords: { built_in: \"url data-uri\" },\n contains: [\n ...STRINGS,\n {\n className: \"string\",\n // any character other than `)` as in `url()` will be the start\n // of a string, which ends with `)` (from the parent mode)\n begin: /[^)]/,\n endsWithParent: true,\n excludeEnd: true\n }\n ]\n },\n modes.FUNCTION_DISPATCH\n ]\n },\n {\n begin: regex.lookahead(/@/),\n end: '[{;]',\n relevance: 0,\n illegal: /:/, // break on Less variables @var: ...\n contains: [\n {\n className: 'keyword',\n begin: AT_PROPERTY_RE\n },\n {\n begin: /\\s/,\n endsWithParent: true,\n excludeEnd: true,\n relevance: 0,\n keywords: {\n $pattern: /[a-z-]+/,\n keyword: AT_MODIFIERS,\n attribute: MEDIA_FEATURES.join(\" \")\n },\n contains: [\n {\n begin: /[a-z-]+(?=:)/,\n className: \"attribute\"\n },\n ...STRINGS,\n modes.CSS_NUMBER_MODE\n ]\n }\n ]\n },\n {\n className: 'selector-tag',\n begin: '\\\\b(' + TAGS.join('|') + ')\\\\b'\n }\n ]\n };\n}\n\nmodule.exports = css;\n","const MODES = (hljs) => {\n return {\n IMPORTANT: {\n scope: 'meta',\n begin: '!important'\n },\n BLOCK_COMMENT: hljs.C_BLOCK_COMMENT_MODE,\n HEXCOLOR: {\n scope: 'number',\n begin: /#(([0-9a-fA-F]{3,4})|(([0-9a-fA-F]{2}){3,4}))\\b/\n },\n UNICODE_RANGE: {\n scope: 'number',\n begin: /\\b[Uu]\\+[0-9A-Fa-f][0-9A-Fa-f?]{0,4}(-[0-9A-Fa-f][0-9A-Fa-f]{0,4})?/\n },\n FUNCTION_DISPATCH: {\n className: \"built_in\",\n begin: /[\\w-]+(?=\\()/\n },\n ATTRIBUTE_SELECTOR_MODE: {\n scope: 'selector-attr',\n begin: /\\[/,\n end: /\\]/,\n illegal: '$',\n contains: [\n hljs.APOS_STRING_MODE,\n hljs.QUOTE_STRING_MODE\n ]\n },\n CSS_NUMBER_MODE: {\n scope: 'number',\n begin: hljs.NUMBER_RE + '(' +\n '%|em|ex|ch|rem' +\n '|vw|vh|vmin|vmax' +\n '|cm|mm|in|pt|pc|px' +\n '|deg|grad|rad|turn' +\n '|s|ms' +\n '|Hz|kHz' +\n '|dpi|dpcm|dppx' +\n ')?',\n relevance: 0\n },\n CSS_VARIABLE: {\n className: \"attr\",\n begin: /--[A-Za-z_][A-Za-z0-9_-]*/\n }\n };\n};\n\nconst HTML_TAGS = [\n 'a',\n 'abbr',\n 'address',\n 'article',\n 'aside',\n 'audio',\n 'b',\n 'blockquote',\n 'body',\n 'button',\n 'canvas',\n 'caption',\n 'cite',\n 'code',\n 'dd',\n 'del',\n 'details',\n 'dfn',\n 'div',\n 'dl',\n 'dt',\n 'em',\n 'fieldset',\n 'figcaption',\n 'figure',\n 'footer',\n 'form',\n 'h1',\n 'h2',\n 'h3',\n 'h4',\n 'h5',\n 'h6',\n 'header',\n 'hgroup',\n 'html',\n 'i',\n 'iframe',\n 'img',\n 'input',\n 'ins',\n 'kbd',\n 'label',\n 'legend',\n 'li',\n 'main',\n 'mark',\n 'menu',\n 'nav',\n 'object',\n 'ol',\n 'optgroup',\n 'option',\n 'p',\n 'picture',\n 'q',\n 'quote',\n 'samp',\n 'section',\n 'select',\n 'source',\n 'span',\n 'strong',\n 'summary',\n 'sup',\n 'table',\n 'tbody',\n 'td',\n 'textarea',\n 'tfoot',\n 'th',\n 'thead',\n 'time',\n 'tr',\n 'ul',\n 'var',\n 'video'\n];\n\nconst SVG_TAGS = [\n 'defs',\n 'g',\n 'marker',\n 'mask',\n 'pattern',\n 'svg',\n 'switch',\n 'symbol',\n 'feBlend',\n 'feColorMatrix',\n 'feComponentTransfer',\n 'feComposite',\n 'feConvolveMatrix',\n 'feDiffuseLighting',\n 'feDisplacementMap',\n 'feFlood',\n 'feGaussianBlur',\n 'feImage',\n 'feMerge',\n 'feMorphology',\n 'feOffset',\n 'feSpecularLighting',\n 'feTile',\n 'feTurbulence',\n 'linearGradient',\n 'radialGradient',\n 'stop',\n 'circle',\n 'ellipse',\n 'image',\n 'line',\n 'path',\n 'polygon',\n 'polyline',\n 'rect',\n 'text',\n 'use',\n 'textPath',\n 'tspan',\n 'foreignObject',\n 'clipPath'\n];\n\nconst TAGS = [\n ...HTML_TAGS,\n ...SVG_TAGS,\n];\n\n// Sorting, then reversing makes sure longer attributes/elements like\n// `font-weight` are matched fully instead of getting false positives on say `font`\n\nconst MEDIA_FEATURES = [\n 'any-hover',\n 'any-pointer',\n 'aspect-ratio',\n 'color',\n 'color-gamut',\n 'color-index',\n 'device-aspect-ratio',\n 'device-height',\n 'device-width',\n 'display-mode',\n 'forced-colors',\n 'grid',\n 'height',\n 'hover',\n 'inverted-colors',\n 'monochrome',\n 'orientation',\n 'overflow-block',\n 'overflow-inline',\n 'pointer',\n 'prefers-color-scheme',\n 'prefers-contrast',\n 'prefers-reduced-motion',\n 'prefers-reduced-transparency',\n 'resolution',\n 'scan',\n 'scripting',\n 'update',\n 'width',\n // TODO: find a better solution?\n 'min-width',\n 'max-width',\n 'min-height',\n 'max-height'\n].sort().reverse();\n\n// https://developer.mozilla.org/en-US/docs/Web/CSS/Pseudo-classes\nconst PSEUDO_CLASSES = [\n 'active',\n 'any-link',\n 'blank',\n 'checked',\n 'current',\n 'default',\n 'defined',\n 'dir', // dir()\n 'disabled',\n 'drop',\n 'empty',\n 'enabled',\n 'first',\n 'first-child',\n 'first-of-type',\n 'fullscreen',\n 'future',\n 'focus',\n 'focus-visible',\n 'focus-within',\n 'has', // has()\n 'host', // host or host()\n 'host-context', // host-context()\n 'hover',\n 'indeterminate',\n 'in-range',\n 'invalid',\n 'is', // is()\n 'lang', // lang()\n 'last-child',\n 'last-of-type',\n 'left',\n 'link',\n 'local-link',\n 'not', // not()\n 'nth-child', // nth-child()\n 'nth-col', // nth-col()\n 'nth-last-child', // nth-last-child()\n 'nth-last-col', // nth-last-col()\n 'nth-last-of-type', //nth-last-of-type()\n 'nth-of-type', //nth-of-type()\n 'only-child',\n 'only-of-type',\n 'optional',\n 'out-of-range',\n 'past',\n 'placeholder-shown',\n 'read-only',\n 'read-write',\n 'required',\n 'right',\n 'root',\n 'scope',\n 'target',\n 'target-within',\n 'user-invalid',\n 'valid',\n 'visited',\n 'where' // where()\n].sort().reverse();\n\n// https://developer.mozilla.org/en-US/docs/Web/CSS/Pseudo-elements\nconst PSEUDO_ELEMENTS = [\n 'after',\n 'backdrop',\n 'before',\n 'cue',\n 'cue-region',\n 'first-letter',\n 'first-line',\n 'grammar-error',\n 'marker',\n 'part',\n 'placeholder',\n 'selection',\n 'slotted',\n 'spelling-error'\n].sort().reverse();\n\nconst ATTRIBUTES = [\n 'accent-color',\n 'align-content',\n 'align-items',\n 'align-self',\n 'alignment-baseline',\n 'all',\n 'anchor-name',\n 'animation',\n 'animation-composition',\n 'animation-delay',\n 'animation-direction',\n 'animation-duration',\n 'animation-fill-mode',\n 'animation-iteration-count',\n 'animation-name',\n 'animation-play-state',\n 'animation-range',\n 'animation-range-end',\n 'animation-range-start',\n 'animation-timeline',\n 'animation-timing-function',\n 'appearance',\n 'aspect-ratio',\n 'backdrop-filter',\n 'backface-visibility',\n 'background',\n 'background-attachment',\n 'background-blend-mode',\n 'background-clip',\n 'background-color',\n 'background-image',\n 'background-origin',\n 'background-position',\n 'background-position-x',\n 'background-position-y',\n 'background-repeat',\n 'background-size',\n 'baseline-shift',\n 'block-size',\n 'border',\n 'border-block',\n 'border-block-color',\n 'border-block-end',\n 'border-block-end-color',\n 'border-block-end-style',\n 'border-block-end-width',\n 'border-block-start',\n 'border-block-start-color',\n 'border-block-start-style',\n 'border-block-start-width',\n 'border-block-style',\n 'border-block-width',\n 'border-bottom',\n 'border-bottom-color',\n 'border-bottom-left-radius',\n 'border-bottom-right-radius',\n 'border-bottom-style',\n 'border-bottom-width',\n 'border-collapse',\n 'border-color',\n 'border-end-end-radius',\n 'border-end-start-radius',\n 'border-image',\n 'border-image-outset',\n 'border-image-repeat',\n 'border-image-slice',\n 'border-image-source',\n 'border-image-width',\n 'border-inline',\n 'border-inline-color',\n 'border-inline-end',\n 'border-inline-end-color',\n 'border-inline-end-style',\n 'border-inline-end-width',\n 'border-inline-start',\n 'border-inline-start-color',\n 'border-inline-start-style',\n 'border-inline-start-width',\n 'border-inline-style',\n 'border-inline-width',\n 'border-left',\n 'border-left-color',\n 'border-left-style',\n 'border-left-width',\n 'border-radius',\n 'border-right',\n 'border-right-color',\n 'border-right-style',\n 'border-right-width',\n 'border-spacing',\n 'border-start-end-radius',\n 'border-start-start-radius',\n 'border-style',\n 'border-top',\n 'border-top-color',\n 'border-top-left-radius',\n 'border-top-right-radius',\n 'border-top-style',\n 'border-top-width',\n 'border-width',\n 'bottom',\n 'box-align',\n 'box-decoration-break',\n 'box-direction',\n 'box-flex',\n 'box-flex-group',\n 'box-lines',\n 'box-ordinal-group',\n 'box-orient',\n 'box-pack',\n 'box-shadow',\n 'box-sizing',\n 'break-after',\n 'break-before',\n 'break-inside',\n 'caption-side',\n 'caret-color',\n 'clear',\n 'clip',\n 'clip-path',\n 'clip-rule',\n 'color',\n 'color-interpolation',\n 'color-interpolation-filters',\n 'color-profile',\n 'color-rendering',\n 'color-scheme',\n 'column-count',\n 'column-fill',\n 'column-gap',\n 'column-rule',\n 'column-rule-color',\n 'column-rule-style',\n 'column-rule-width',\n 'column-span',\n 'column-width',\n 'columns',\n 'contain',\n 'contain-intrinsic-block-size',\n 'contain-intrinsic-height',\n 'contain-intrinsic-inline-size',\n 'contain-intrinsic-size',\n 'contain-intrinsic-width',\n 'container',\n 'container-name',\n 'container-type',\n 'content',\n 'content-visibility',\n 'counter-increment',\n 'counter-reset',\n 'counter-set',\n 'cue',\n 'cue-after',\n 'cue-before',\n 'cursor',\n 'cx',\n 'cy',\n 'direction',\n 'display',\n 'dominant-baseline',\n 'empty-cells',\n 'enable-background',\n 'field-sizing',\n 'fill',\n 'fill-opacity',\n 'fill-rule',\n 'filter',\n 'flex',\n 'flex-basis',\n 'flex-direction',\n 'flex-flow',\n 'flex-grow',\n 'flex-shrink',\n 'flex-wrap',\n 'float',\n 'flood-color',\n 'flood-opacity',\n 'flow',\n 'font',\n 'font-display',\n 'font-family',\n 'font-feature-settings',\n 'font-kerning',\n 'font-language-override',\n 'font-optical-sizing',\n 'font-palette',\n 'font-size',\n 'font-size-adjust',\n 'font-smooth',\n 'font-smoothing',\n 'font-stretch',\n 'font-style',\n 'font-synthesis',\n 'font-synthesis-position',\n 'font-synthesis-small-caps',\n 'font-synthesis-style',\n 'font-synthesis-weight',\n 'font-variant',\n 'font-variant-alternates',\n 'font-variant-caps',\n 'font-variant-east-asian',\n 'font-variant-emoji',\n 'font-variant-ligatures',\n 'font-variant-numeric',\n 'font-variant-position',\n 'font-variation-settings',\n 'font-weight',\n 'forced-color-adjust',\n 'gap',\n 'glyph-orientation-horizontal',\n 'glyph-orientation-vertical',\n 'grid',\n 'grid-area',\n 'grid-auto-columns',\n 'grid-auto-flow',\n 'grid-auto-rows',\n 'grid-column',\n 'grid-column-end',\n 'grid-column-start',\n 'grid-gap',\n 'grid-row',\n 'grid-row-end',\n 'grid-row-start',\n 'grid-template',\n 'grid-template-areas',\n 'grid-template-columns',\n 'grid-template-rows',\n 'hanging-punctuation',\n 'height',\n 'hyphenate-character',\n 'hyphenate-limit-chars',\n 'hyphens',\n 'icon',\n 'image-orientation',\n 'image-rendering',\n 'image-resolution',\n 'ime-mode',\n 'initial-letter',\n 'initial-letter-align',\n 'inline-size',\n 'inset',\n 'inset-area',\n 'inset-block',\n 'inset-block-end',\n 'inset-block-start',\n 'inset-inline',\n 'inset-inline-end',\n 'inset-inline-start',\n 'isolation',\n 'justify-content',\n 'justify-items',\n 'justify-self',\n 'kerning',\n 'left',\n 'letter-spacing',\n 'lighting-color',\n 'line-break',\n 'line-height',\n 'line-height-step',\n 'list-style',\n 'list-style-image',\n 'list-style-position',\n 'list-style-type',\n 'margin',\n 'margin-block',\n 'margin-block-end',\n 'margin-block-start',\n 'margin-bottom',\n 'margin-inline',\n 'margin-inline-end',\n 'margin-inline-start',\n 'margin-left',\n 'margin-right',\n 'margin-top',\n 'margin-trim',\n 'marker',\n 'marker-end',\n 'marker-mid',\n 'marker-start',\n 'marks',\n 'mask',\n 'mask-border',\n 'mask-border-mode',\n 'mask-border-outset',\n 'mask-border-repeat',\n 'mask-border-slice',\n 'mask-border-source',\n 'mask-border-width',\n 'mask-clip',\n 'mask-composite',\n 'mask-image',\n 'mask-mode',\n 'mask-origin',\n 'mask-position',\n 'mask-repeat',\n 'mask-size',\n 'mask-type',\n 'masonry-auto-flow',\n 'math-depth',\n 'math-shift',\n 'math-style',\n 'max-block-size',\n 'max-height',\n 'max-inline-size',\n 'max-width',\n 'min-block-size',\n 'min-height',\n 'min-inline-size',\n 'min-width',\n 'mix-blend-mode',\n 'nav-down',\n 'nav-index',\n 'nav-left',\n 'nav-right',\n 'nav-up',\n 'none',\n 'normal',\n 'object-fit',\n 'object-position',\n 'offset',\n 'offset-anchor',\n 'offset-distance',\n 'offset-path',\n 'offset-position',\n 'offset-rotate',\n 'opacity',\n 'order',\n 'orphans',\n 'outline',\n 'outline-color',\n 'outline-offset',\n 'outline-style',\n 'outline-width',\n 'overflow',\n 'overflow-anchor',\n 'overflow-block',\n 'overflow-clip-margin',\n 'overflow-inline',\n 'overflow-wrap',\n 'overflow-x',\n 'overflow-y',\n 'overlay',\n 'overscroll-behavior',\n 'overscroll-behavior-block',\n 'overscroll-behavior-inline',\n 'overscroll-behavior-x',\n 'overscroll-behavior-y',\n 'padding',\n 'padding-block',\n 'padding-block-end',\n 'padding-block-start',\n 'padding-bottom',\n 'padding-inline',\n 'padding-inline-end',\n 'padding-inline-start',\n 'padding-left',\n 'padding-right',\n 'padding-top',\n 'page',\n 'page-break-after',\n 'page-break-before',\n 'page-break-inside',\n 'paint-order',\n 'pause',\n 'pause-after',\n 'pause-before',\n 'perspective',\n 'perspective-origin',\n 'place-content',\n 'place-items',\n 'place-self',\n 'pointer-events',\n 'position',\n 'position-anchor',\n 'position-visibility',\n 'print-color-adjust',\n 'quotes',\n 'r',\n 'resize',\n 'rest',\n 'rest-after',\n 'rest-before',\n 'right',\n 'rotate',\n 'row-gap',\n 'ruby-align',\n 'ruby-position',\n 'scale',\n 'scroll-behavior',\n 'scroll-margin',\n 'scroll-margin-block',\n 'scroll-margin-block-end',\n 'scroll-margin-block-start',\n 'scroll-margin-bottom',\n 'scroll-margin-inline',\n 'scroll-margin-inline-end',\n 'scroll-margin-inline-start',\n 'scroll-margin-left',\n 'scroll-margin-right',\n 'scroll-margin-top',\n 'scroll-padding',\n 'scroll-padding-block',\n 'scroll-padding-block-end',\n 'scroll-padding-block-start',\n 'scroll-padding-bottom',\n 'scroll-padding-inline',\n 'scroll-padding-inline-end',\n 'scroll-padding-inline-start',\n 'scroll-padding-left',\n 'scroll-padding-right',\n 'scroll-padding-top',\n 'scroll-snap-align',\n 'scroll-snap-stop',\n 'scroll-snap-type',\n 'scroll-timeline',\n 'scroll-timeline-axis',\n 'scroll-timeline-name',\n 'scrollbar-color',\n 'scrollbar-gutter',\n 'scrollbar-width',\n 'shape-image-threshold',\n 'shape-margin',\n 'shape-outside',\n 'shape-rendering',\n 'speak',\n 'speak-as',\n 'src', // @font-face\n 'stop-color',\n 'stop-opacity',\n 'stroke',\n 'stroke-dasharray',\n 'stroke-dashoffset',\n 'stroke-linecap',\n 'stroke-linejoin',\n 'stroke-miterlimit',\n 'stroke-opacity',\n 'stroke-width',\n 'tab-size',\n 'table-layout',\n 'text-align',\n 'text-align-all',\n 'text-align-last',\n 'text-anchor',\n 'text-combine-upright',\n 'text-decoration',\n 'text-decoration-color',\n 'text-decoration-line',\n 'text-decoration-skip',\n 'text-decoration-skip-ink',\n 'text-decoration-style',\n 'text-decoration-thickness',\n 'text-emphasis',\n 'text-emphasis-color',\n 'text-emphasis-position',\n 'text-emphasis-style',\n 'text-indent',\n 'text-justify',\n 'text-orientation',\n 'text-overflow',\n 'text-rendering',\n 'text-shadow',\n 'text-size-adjust',\n 'text-transform',\n 'text-underline-offset',\n 'text-underline-position',\n 'text-wrap',\n 'text-wrap-mode',\n 'text-wrap-style',\n 'timeline-scope',\n 'top',\n 'touch-action',\n 'transform',\n 'transform-box',\n 'transform-origin',\n 'transform-style',\n 'transition',\n 'transition-behavior',\n 'transition-delay',\n 'transition-duration',\n 'transition-property',\n 'transition-timing-function',\n 'translate',\n 'unicode-bidi',\n 'unicode-range',\n 'user-modify',\n 'user-select',\n 'vector-effect',\n 'vertical-align',\n 'view-timeline',\n 'view-timeline-axis',\n 'view-timeline-inset',\n 'view-timeline-name',\n 'view-transition-name',\n 'visibility',\n 'voice-balance',\n 'voice-duration',\n 'voice-family',\n 'voice-pitch',\n 'voice-range',\n 'voice-rate',\n 'voice-stress',\n 'voice-volume',\n 'white-space',\n 'white-space-collapse',\n 'widows',\n 'width',\n 'will-change',\n 'word-break',\n 'word-spacing',\n 'word-wrap',\n 'writing-mode',\n 'x',\n 'y',\n 'z-index',\n 'zoom'\n].sort().reverse();\n\n/*\nLanguage: SCSS\nDescription: Scss is an extension of the syntax of CSS.\nAuthor: Kurt Emch <kurt@kurtemch.com>\nWebsite: https://sass-lang.com\nCategory: common, css, web\n*/\n\n\n/** @type LanguageFn */\nfunction scss(hljs) {\n const modes = MODES(hljs);\n const PSEUDO_ELEMENTS$1 = PSEUDO_ELEMENTS;\n const PSEUDO_CLASSES$1 = PSEUDO_CLASSES;\n\n const AT_IDENTIFIER = '@[a-z-]+'; // @font-face\n const AT_MODIFIERS = \"and or not only\";\n const IDENT_RE = '[a-zA-Z-][a-zA-Z0-9_-]*';\n const VARIABLE = {\n className: 'variable',\n begin: '(\\\\$' + IDENT_RE + ')\\\\b',\n relevance: 0\n };\n\n return {\n name: 'SCSS',\n case_insensitive: true,\n illegal: '[=/|\\']',\n contains: [\n hljs.C_LINE_COMMENT_MODE,\n hljs.C_BLOCK_COMMENT_MODE,\n // to recognize keyframe 40% etc which are outside the scope of our\n // attribute value mode\n modes.CSS_NUMBER_MODE,\n {\n className: 'selector-id',\n begin: '#[A-Za-z0-9_-]+',\n relevance: 0\n },\n {\n className: 'selector-class',\n begin: '\\\\.[A-Za-z0-9_-]+',\n relevance: 0\n },\n modes.ATTRIBUTE_SELECTOR_MODE,\n {\n className: 'selector-tag',\n begin: '\\\\b(' + TAGS.join('|') + ')\\\\b',\n // was there, before, but why?\n relevance: 0\n },\n {\n className: 'selector-pseudo',\n begin: ':(' + PSEUDO_CLASSES$1.join('|') + ')'\n },\n {\n className: 'selector-pseudo',\n begin: ':(:)?(' + PSEUDO_ELEMENTS$1.join('|') + ')'\n },\n VARIABLE,\n { // pseudo-selector params\n begin: /\\(/,\n end: /\\)/,\n contains: [ modes.CSS_NUMBER_MODE ]\n },\n modes.CSS_VARIABLE,\n {\n className: 'attribute',\n begin: '\\\\b(' + ATTRIBUTES.join('|') + ')\\\\b'\n },\n { begin: '\\\\b(whitespace|wait|w-resize|visible|vertical-text|vertical-ideographic|uppercase|upper-roman|upper-alpha|underline|transparent|top|thin|thick|text|text-top|text-bottom|tb-rl|table-header-group|table-footer-group|sw-resize|super|strict|static|square|solid|small-caps|separate|se-resize|scroll|s-resize|rtl|row-resize|ridge|right|repeat|repeat-y|repeat-x|relative|progress|pointer|overline|outside|outset|oblique|nowrap|not-allowed|normal|none|nw-resize|no-repeat|no-drop|newspaper|ne-resize|n-resize|move|middle|medium|ltr|lr-tb|lowercase|lower-roman|lower-alpha|loose|list-item|line|line-through|line-edge|lighter|left|keep-all|justify|italic|inter-word|inter-ideograph|inside|inset|inline|inline-block|inherit|inactive|ideograph-space|ideograph-parenthesis|ideograph-numeric|ideograph-alpha|horizontal|hidden|help|hand|groove|fixed|ellipsis|e-resize|double|dotted|distribute|distribute-space|distribute-letter|distribute-all-lines|disc|disabled|default|decimal|dashed|crosshair|collapse|col-resize|circle|char|center|capitalize|break-word|break-all|bottom|both|bolder|bold|block|bidi-override|below|baseline|auto|always|all-scroll|absolute|table|table-cell)\\\\b' },\n {\n begin: /:/,\n end: /[;}{]/,\n relevance: 0,\n contains: [\n modes.BLOCK_COMMENT,\n VARIABLE,\n modes.HEXCOLOR,\n modes.CSS_NUMBER_MODE,\n modes.UNICODE_RANGE,\n hljs.QUOTE_STRING_MODE,\n hljs.APOS_STRING_MODE,\n modes.IMPORTANT,\n modes.FUNCTION_DISPATCH\n ]\n },\n // matching these here allows us to treat them more like regular CSS\n // rules so everything between the {} gets regular rule highlighting,\n // which is what we want for page and font-face\n {\n begin: '@(page|font-face)',\n keywords: {\n $pattern: AT_IDENTIFIER,\n keyword: '@page @font-face'\n }\n },\n {\n begin: '@',\n end: '[{;]',\n returnBegin: true,\n keywords: {\n $pattern: /[a-z-]+/,\n keyword: AT_MODIFIERS,\n attribute: MEDIA_FEATURES.join(\" \")\n },\n contains: [\n {\n begin: AT_IDENTIFIER,\n className: \"keyword\"\n },\n {\n begin: /[a-z-]+(?=:)/,\n className: \"attribute\"\n },\n VARIABLE,\n hljs.QUOTE_STRING_MODE,\n hljs.APOS_STRING_MODE,\n modes.HEXCOLOR,\n modes.CSS_NUMBER_MODE\n ]\n },\n modes.FUNCTION_DISPATCH\n ]\n };\n}\n\nmodule.exports = scss;\n","/*\n Language: SQL\n Website: https://en.wikipedia.org/wiki/SQL\n Category: common, database\n */\n\n/*\n\nGoals:\n\nSQL is intended to highlight basic/common SQL keywords and expressions\n\n- If pretty much every single SQL server includes supports, then it's a canidate.\n- It is NOT intended to include tons of vendor specific keywords (Oracle, MySQL,\n PostgreSQL) although the list of data types is purposely a bit more expansive.\n- For more specific SQL grammars please see:\n - PostgreSQL and PL/pgSQL - core\n - T-SQL - https://github.com/highlightjs/highlightjs-tsql\n - sql_more (core)\n\n */\n\nfunction sql(hljs) {\n const regex = hljs.regex;\n const COMMENT_MODE = hljs.COMMENT('--', '$');\n const STRING = {\n scope: 'string',\n variants: [\n {\n begin: /'/,\n end: /'/,\n contains: [ { match: /''/ } ]\n }\n ]\n };\n const QUOTED_IDENTIFIER = {\n begin: /\"/,\n end: /\"/,\n contains: [ { match: /\"\"/ } ]\n };\n\n const LITERALS = [\n \"true\",\n \"false\",\n // Not sure it's correct to call NULL literal, and clauses like IS [NOT] NULL look strange that way.\n // \"null\",\n \"unknown\"\n ];\n\n const MULTI_WORD_TYPES = [\n \"double precision\",\n \"large object\",\n \"with timezone\",\n \"without timezone\"\n ];\n\n const TYPES = [\n 'bigint',\n 'binary',\n 'blob',\n 'boolean',\n 'char',\n 'character',\n 'clob',\n 'date',\n 'dec',\n 'decfloat',\n 'decimal',\n 'float',\n 'int',\n 'integer',\n 'interval',\n 'nchar',\n 'nclob',\n 'national',\n 'numeric',\n 'real',\n 'row',\n 'smallint',\n 'time',\n 'timestamp',\n 'varchar',\n 'varying', // modifier (character varying)\n 'varbinary'\n ];\n\n const NON_RESERVED_WORDS = [\n \"add\",\n \"asc\",\n \"collation\",\n \"desc\",\n \"final\",\n \"first\",\n \"last\",\n \"view\"\n ];\n\n // https://jakewheat.github.io/sql-overview/sql-2016-foundation-grammar.html#reserved-word\n const RESERVED_WORDS = [\n \"abs\",\n \"acos\",\n \"all\",\n \"allocate\",\n \"alter\",\n \"and\",\n \"any\",\n \"are\",\n \"array\",\n \"array_agg\",\n \"array_max_cardinality\",\n \"as\",\n \"asensitive\",\n \"asin\",\n \"asymmetric\",\n \"at\",\n \"atan\",\n \"atomic\",\n \"authorization\",\n \"avg\",\n \"begin\",\n \"begin_frame\",\n \"begin_partition\",\n \"between\",\n \"bigint\",\n \"binary\",\n \"blob\",\n \"boolean\",\n \"both\",\n \"by\",\n \"call\",\n \"called\",\n \"cardinality\",\n \"cascaded\",\n \"case\",\n \"cast\",\n \"ceil\",\n \"ceiling\",\n \"char\",\n \"char_length\",\n \"character\",\n \"character_length\",\n \"check\",\n \"classifier\",\n \"clob\",\n \"close\",\n \"coalesce\",\n \"collate\",\n \"collect\",\n \"column\",\n \"commit\",\n \"condition\",\n \"connect\",\n \"constraint\",\n \"contains\",\n \"convert\",\n \"copy\",\n \"corr\",\n \"corresponding\",\n \"cos\",\n \"cosh\",\n \"count\",\n \"covar_pop\",\n \"covar_samp\",\n \"create\",\n \"cross\",\n \"cube\",\n \"cume_dist\",\n \"current\",\n \"current_catalog\",\n \"current_date\",\n \"current_default_transform_group\",\n \"current_path\",\n \"current_role\",\n \"current_row\",\n \"current_schema\",\n \"current_time\",\n \"current_timestamp\",\n \"current_path\",\n \"current_role\",\n \"current_transform_group_for_type\",\n \"current_user\",\n \"cursor\",\n \"cycle\",\n \"date\",\n \"day\",\n \"deallocate\",\n \"dec\",\n \"decimal\",\n \"decfloat\",\n \"declare\",\n \"default\",\n \"define\",\n \"delete\",\n \"dense_rank\",\n \"deref\",\n \"describe\",\n \"deterministic\",\n \"disconnect\",\n \"distinct\",\n \"double\",\n \"drop\",\n \"dynamic\",\n \"each\",\n \"element\",\n \"else\",\n \"empty\",\n \"end\",\n \"end_frame\",\n \"end_partition\",\n \"end-exec\",\n \"equals\",\n \"escape\",\n \"every\",\n \"except\",\n \"exec\",\n \"execute\",\n \"exists\",\n \"exp\",\n \"external\",\n \"extract\",\n \"false\",\n \"fetch\",\n \"filter\",\n \"first_value\",\n \"float\",\n \"floor\",\n \"for\",\n \"foreign\",\n \"frame_row\",\n \"free\",\n \"from\",\n \"full\",\n \"function\",\n \"fusion\",\n \"get\",\n \"global\",\n \"grant\",\n \"group\",\n \"grouping\",\n \"groups\",\n \"having\",\n \"hold\",\n \"hour\",\n \"identity\",\n \"in\",\n \"indicator\",\n \"initial\",\n \"inner\",\n \"inout\",\n \"insensitive\",\n \"insert\",\n \"int\",\n \"integer\",\n \"intersect\",\n \"intersection\",\n \"interval\",\n \"into\",\n \"is\",\n \"join\",\n \"json_array\",\n \"json_arrayagg\",\n \"json_exists\",\n \"json_object\",\n \"json_objectagg\",\n \"json_query\",\n \"json_table\",\n \"json_table_primitive\",\n \"json_value\",\n \"lag\",\n \"language\",\n \"large\",\n \"last_value\",\n \"lateral\",\n \"lead\",\n \"leading\",\n \"left\",\n \"like\",\n \"like_regex\",\n \"listagg\",\n \"ln\",\n \"local\",\n \"localtime\",\n \"localtimestamp\",\n \"log\",\n \"log10\",\n \"lower\",\n \"match\",\n \"match_number\",\n \"match_recognize\",\n \"matches\",\n \"max\",\n \"member\",\n \"merge\",\n \"method\",\n \"min\",\n \"minute\",\n \"mod\",\n \"modifies\",\n \"module\",\n \"month\",\n \"multiset\",\n \"national\",\n \"natural\",\n \"nchar\",\n \"nclob\",\n \"new\",\n \"no\",\n \"none\",\n \"normalize\",\n \"not\",\n \"nth_value\",\n \"ntile\",\n \"null\",\n \"nullif\",\n \"numeric\",\n \"octet_length\",\n \"occurrences_regex\",\n \"of\",\n \"offset\",\n \"old\",\n \"omit\",\n \"on\",\n \"one\",\n \"only\",\n \"open\",\n \"or\",\n \"order\",\n \"out\",\n \"outer\",\n \"over\",\n \"overlaps\",\n \"overlay\",\n \"parameter\",\n \"partition\",\n \"pattern\",\n \"per\",\n \"percent\",\n \"percent_rank\",\n \"percentile_cont\",\n \"percentile_disc\",\n \"period\",\n \"portion\",\n \"position\",\n \"position_regex\",\n \"power\",\n \"precedes\",\n \"precision\",\n \"prepare\",\n \"primary\",\n \"procedure\",\n \"ptf\",\n \"range\",\n \"rank\",\n \"reads\",\n \"real\",\n \"recursive\",\n \"ref\",\n \"references\",\n \"referencing\",\n \"regr_avgx\",\n \"regr_avgy\",\n \"regr_count\",\n \"regr_intercept\",\n \"regr_r2\",\n \"regr_slope\",\n \"regr_sxx\",\n \"regr_sxy\",\n \"regr_syy\",\n \"release\",\n \"result\",\n \"return\",\n \"returns\",\n \"revoke\",\n \"right\",\n \"rollback\",\n \"rollup\",\n \"row\",\n \"row_number\",\n \"rows\",\n \"running\",\n \"savepoint\",\n \"scope\",\n \"scroll\",\n \"search\",\n \"second\",\n \"seek\",\n \"select\",\n \"sensitive\",\n \"session_user\",\n \"set\",\n \"show\",\n \"similar\",\n \"sin\",\n \"sinh\",\n \"skip\",\n \"smallint\",\n \"some\",\n \"specific\",\n \"specifictype\",\n \"sql\",\n \"sqlexception\",\n \"sqlstate\",\n \"sqlwarning\",\n \"sqrt\",\n \"start\",\n \"static\",\n \"stddev_pop\",\n \"stddev_samp\",\n \"submultiset\",\n \"subset\",\n \"substring\",\n \"substring_regex\",\n \"succeeds\",\n \"sum\",\n \"symmetric\",\n \"system\",\n \"system_time\",\n \"system_user\",\n \"table\",\n \"tablesample\",\n \"tan\",\n \"tanh\",\n \"then\",\n \"time\",\n \"timestamp\",\n \"timezone_hour\",\n \"timezone_minute\",\n \"to\",\n \"trailing\",\n \"translate\",\n \"translate_regex\",\n \"translation\",\n \"treat\",\n \"trigger\",\n \"trim\",\n \"trim_array\",\n \"true\",\n \"truncate\",\n \"uescape\",\n \"union\",\n \"unique\",\n \"unknown\",\n \"unnest\",\n \"update\",\n \"upper\",\n \"user\",\n \"using\",\n \"value\",\n \"values\",\n \"value_of\",\n \"var_pop\",\n \"var_samp\",\n \"varbinary\",\n \"varchar\",\n \"varying\",\n \"versioning\",\n \"when\",\n \"whenever\",\n \"where\",\n \"width_bucket\",\n \"window\",\n \"with\",\n \"within\",\n \"without\",\n \"year\",\n ];\n\n // these are reserved words we have identified to be functions\n // and should only be highlighted in a dispatch-like context\n // ie, array_agg(...), etc.\n const RESERVED_FUNCTIONS = [\n \"abs\",\n \"acos\",\n \"array_agg\",\n \"asin\",\n \"atan\",\n \"avg\",\n \"cast\",\n \"ceil\",\n \"ceiling\",\n \"coalesce\",\n \"corr\",\n \"cos\",\n \"cosh\",\n \"count\",\n \"covar_pop\",\n \"covar_samp\",\n \"cume_dist\",\n \"dense_rank\",\n \"deref\",\n \"element\",\n \"exp\",\n \"extract\",\n \"first_value\",\n \"floor\",\n \"json_array\",\n \"json_arrayagg\",\n \"json_exists\",\n \"json_object\",\n \"json_objectagg\",\n \"json_query\",\n \"json_table\",\n \"json_table_primitive\",\n \"json_value\",\n \"lag\",\n \"last_value\",\n \"lead\",\n \"listagg\",\n \"ln\",\n \"log\",\n \"log10\",\n \"lower\",\n \"max\",\n \"min\",\n \"mod\",\n \"nth_value\",\n \"ntile\",\n \"nullif\",\n \"percent_rank\",\n \"percentile_cont\",\n \"percentile_disc\",\n \"position\",\n \"position_regex\",\n \"power\",\n \"rank\",\n \"regr_avgx\",\n \"regr_avgy\",\n \"regr_count\",\n \"regr_intercept\",\n \"regr_r2\",\n \"regr_slope\",\n \"regr_sxx\",\n \"regr_sxy\",\n \"regr_syy\",\n \"row_number\",\n \"sin\",\n \"sinh\",\n \"sqrt\",\n \"stddev_pop\",\n \"stddev_samp\",\n \"substring\",\n \"substring_regex\",\n \"sum\",\n \"tan\",\n \"tanh\",\n \"translate\",\n \"translate_regex\",\n \"treat\",\n \"trim\",\n \"trim_array\",\n \"unnest\",\n \"upper\",\n \"value_of\",\n \"var_pop\",\n \"var_samp\",\n \"width_bucket\",\n ];\n\n // these functions can\n const POSSIBLE_WITHOUT_PARENS = [\n \"current_catalog\",\n \"current_date\",\n \"current_default_transform_group\",\n \"current_path\",\n \"current_role\",\n \"current_schema\",\n \"current_transform_group_for_type\",\n \"current_user\",\n \"session_user\",\n \"system_time\",\n \"system_user\",\n \"current_time\",\n \"localtime\",\n \"current_timestamp\",\n \"localtimestamp\"\n ];\n\n // those exist to boost relevance making these very\n // \"SQL like\" keyword combos worth +1 extra relevance\n const COMBOS = [\n \"create table\",\n \"insert into\",\n \"primary key\",\n \"foreign key\",\n \"not null\",\n \"alter table\",\n \"add constraint\",\n \"grouping sets\",\n \"on overflow\",\n \"character set\",\n \"respect nulls\",\n \"ignore nulls\",\n \"nulls first\",\n \"nulls last\",\n \"depth first\",\n \"breadth first\"\n ];\n\n const FUNCTIONS = RESERVED_FUNCTIONS;\n\n const KEYWORDS = [\n ...RESERVED_WORDS,\n ...NON_RESERVED_WORDS\n ].filter((keyword) => {\n return !RESERVED_FUNCTIONS.includes(keyword);\n });\n\n const VARIABLE = {\n scope: \"variable\",\n match: /@[a-z0-9][a-z0-9_]*/,\n };\n\n const OPERATOR = {\n scope: \"operator\",\n match: /[-+*/=%^~]|&&?|\\|\\|?|!=?|<(?:=>?|<|>)?|>[>=]?/,\n relevance: 0,\n };\n\n const FUNCTION_CALL = {\n match: regex.concat(/\\b/, regex.either(...FUNCTIONS), /\\s*\\(/),\n relevance: 0,\n keywords: { built_in: FUNCTIONS }\n };\n\n // turns a multi-word keyword combo into a regex that doesn't\n // care about extra whitespace etc.\n // input: \"START QUERY\"\n // output: /\\bSTART\\s+QUERY\\b/\n function kws_to_regex(list) {\n return regex.concat(\n /\\b/,\n regex.either(...list.map((kw) => {\n return kw.replace(/\\s+/, \"\\\\s+\")\n })),\n /\\b/\n )\n }\n\n const MULTI_WORD_KEYWORDS = {\n scope: \"keyword\",\n match: kws_to_regex(COMBOS),\n relevance: 0,\n };\n\n // keywords with less than 3 letters are reduced in relevancy\n function reduceRelevancy(list, {\n exceptions, when\n } = {}) {\n const qualifyFn = when;\n exceptions = exceptions || [];\n return list.map((item) => {\n if (item.match(/\\|\\d+$/) || exceptions.includes(item)) {\n return item;\n } else if (qualifyFn(item)) {\n return `${item}|0`;\n } else {\n return item;\n }\n });\n }\n\n return {\n name: 'SQL',\n case_insensitive: true,\n // does not include {} or HTML tags `</`\n illegal: /[{}]|<\\//,\n keywords: {\n $pattern: /\\b[\\w\\.]+/,\n keyword:\n reduceRelevancy(KEYWORDS, { when: (x) => x.length < 3 }),\n literal: LITERALS,\n type: TYPES,\n built_in: POSSIBLE_WITHOUT_PARENS\n },\n contains: [\n {\n scope: \"type\",\n match: kws_to_regex(MULTI_WORD_TYPES)\n },\n MULTI_WORD_KEYWORDS,\n FUNCTION_CALL,\n VARIABLE,\n STRING,\n QUOTED_IDENTIFIER,\n hljs.C_NUMBER_MODE,\n hljs.C_BLOCK_COMMENT_MODE,\n COMMENT_MODE,\n OPERATOR\n ]\n };\n}\n\nmodule.exports = sql;\n","/*\nLanguage: Python\nDescription: Python is an interpreted, object-oriented, high-level programming language with dynamic semantics.\nWebsite: https://www.python.org\nCategory: common\n*/\n\nfunction python(hljs) {\n const regex = hljs.regex;\n const IDENT_RE = /[\\p{XID_Start}_]\\p{XID_Continue}*/u;\n const RESERVED_WORDS = [\n 'and',\n 'as',\n 'assert',\n 'async',\n 'await',\n 'break',\n 'case',\n 'class',\n 'continue',\n 'def',\n 'del',\n 'elif',\n 'else',\n 'except',\n 'finally',\n 'for',\n 'from',\n 'global',\n 'if',\n 'import',\n 'in',\n 'is',\n 'lambda',\n 'match',\n 'nonlocal|10',\n 'not',\n 'or',\n 'pass',\n 'raise',\n 'return',\n 'try',\n 'while',\n 'with',\n 'yield'\n ];\n\n const BUILT_INS = [\n '__import__',\n 'abs',\n 'all',\n 'any',\n 'ascii',\n 'bin',\n 'bool',\n 'breakpoint',\n 'bytearray',\n 'bytes',\n 'callable',\n 'chr',\n 'classmethod',\n 'compile',\n 'complex',\n 'delattr',\n 'dict',\n 'dir',\n 'divmod',\n 'enumerate',\n 'eval',\n 'exec',\n 'filter',\n 'float',\n 'format',\n 'frozenset',\n 'getattr',\n 'globals',\n 'hasattr',\n 'hash',\n 'help',\n 'hex',\n 'id',\n 'input',\n 'int',\n 'isinstance',\n 'issubclass',\n 'iter',\n 'len',\n 'list',\n 'locals',\n 'map',\n 'max',\n 'memoryview',\n 'min',\n 'next',\n 'object',\n 'oct',\n 'open',\n 'ord',\n 'pow',\n 'print',\n 'property',\n 'range',\n 'repr',\n 'reversed',\n 'round',\n 'set',\n 'setattr',\n 'slice',\n 'sorted',\n 'staticmethod',\n 'str',\n 'sum',\n 'super',\n 'tuple',\n 'type',\n 'vars',\n 'zip'\n ];\n\n const LITERALS = [\n '__debug__',\n 'Ellipsis',\n 'False',\n 'None',\n 'NotImplemented',\n 'True'\n ];\n\n // https://docs.python.org/3/library/typing.html\n // TODO: Could these be supplemented by a CamelCase matcher in certain\n // contexts, leaving these remaining only for relevance hinting?\n const TYPES = [\n \"Any\",\n \"Callable\",\n \"Coroutine\",\n \"Dict\",\n \"List\",\n \"Literal\",\n \"Generic\",\n \"Optional\",\n \"Sequence\",\n \"Set\",\n \"Tuple\",\n \"Type\",\n \"Union\"\n ];\n\n const KEYWORDS = {\n $pattern: /[A-Za-z]\\w+|__\\w+__/,\n keyword: RESERVED_WORDS,\n built_in: BUILT_INS,\n literal: LITERALS,\n type: TYPES\n };\n\n const PROMPT = {\n className: 'meta',\n begin: /^(>>>|\\.\\.\\.) /\n };\n\n const SUBST = {\n className: 'subst',\n begin: /\\{/,\n end: /\\}/,\n keywords: KEYWORDS,\n illegal: /#/\n };\n\n const LITERAL_BRACKET = {\n begin: /\\{\\{/,\n relevance: 0\n };\n\n const STRING = {\n className: 'string',\n contains: [ hljs.BACKSLASH_ESCAPE ],\n variants: [\n {\n begin: /([uU]|[bB]|[rR]|[bB][rR]|[rR][bB])?'''/,\n end: /'''/,\n contains: [\n hljs.BACKSLASH_ESCAPE,\n PROMPT\n ],\n relevance: 10\n },\n {\n begin: /([uU]|[bB]|[rR]|[bB][rR]|[rR][bB])?\"\"\"/,\n end: /\"\"\"/,\n contains: [\n hljs.BACKSLASH_ESCAPE,\n PROMPT\n ],\n relevance: 10\n },\n {\n begin: /([fF][rR]|[rR][fF]|[fF])'''/,\n end: /'''/,\n contains: [\n hljs.BACKSLASH_ESCAPE,\n PROMPT,\n LITERAL_BRACKET,\n SUBST\n ]\n },\n {\n begin: /([fF][rR]|[rR][fF]|[fF])\"\"\"/,\n end: /\"\"\"/,\n contains: [\n hljs.BACKSLASH_ESCAPE,\n PROMPT,\n LITERAL_BRACKET,\n SUBST\n ]\n },\n {\n begin: /([uU]|[rR])'/,\n end: /'/,\n relevance: 10\n },\n {\n begin: /([uU]|[rR])\"/,\n end: /\"/,\n relevance: 10\n },\n {\n begin: /([bB]|[bB][rR]|[rR][bB])'/,\n end: /'/\n },\n {\n begin: /([bB]|[bB][rR]|[rR][bB])\"/,\n end: /\"/\n },\n {\n begin: /([fF][rR]|[rR][fF]|[fF])'/,\n end: /'/,\n contains: [\n hljs.BACKSLASH_ESCAPE,\n LITERAL_BRACKET,\n SUBST\n ]\n },\n {\n begin: /([fF][rR]|[rR][fF]|[fF])\"/,\n end: /\"/,\n contains: [\n hljs.BACKSLASH_ESCAPE,\n LITERAL_BRACKET,\n SUBST\n ]\n },\n hljs.APOS_STRING_MODE,\n hljs.QUOTE_STRING_MODE\n ]\n };\n\n // https://docs.python.org/3.9/reference/lexical_analysis.html#numeric-literals\n const digitpart = '[0-9](_?[0-9])*';\n const pointfloat = `(\\\\b(${digitpart}))?\\\\.(${digitpart})|\\\\b(${digitpart})\\\\.`;\n // Whitespace after a number (or any lexical token) is needed only if its absence\n // would change the tokenization\n // https://docs.python.org/3.9/reference/lexical_analysis.html#whitespace-between-tokens\n // We deviate slightly, requiring a word boundary or a keyword\n // to avoid accidentally recognizing *prefixes* (e.g., `0` in `0x41` or `08` or `0__1`)\n const lookahead = `\\\\b|${RESERVED_WORDS.join('|')}`;\n const NUMBER = {\n className: 'number',\n relevance: 0,\n variants: [\n // exponentfloat, pointfloat\n // https://docs.python.org/3.9/reference/lexical_analysis.html#floating-point-literals\n // optionally imaginary\n // https://docs.python.org/3.9/reference/lexical_analysis.html#imaginary-literals\n // Note: no leading \\b because floats can start with a decimal point\n // and we don't want to mishandle e.g. `fn(.5)`,\n // no trailing \\b for pointfloat because it can end with a decimal point\n // and we don't want to mishandle e.g. `0..hex()`; this should be safe\n // because both MUST contain a decimal point and so cannot be confused with\n // the interior part of an identifier\n {\n begin: `(\\\\b(${digitpart})|(${pointfloat}))[eE][+-]?(${digitpart})[jJ]?(?=${lookahead})`\n },\n {\n begin: `(${pointfloat})[jJ]?`\n },\n\n // decinteger, bininteger, octinteger, hexinteger\n // https://docs.python.org/3.9/reference/lexical_analysis.html#integer-literals\n // optionally \"long\" in Python 2\n // https://docs.python.org/2.7/reference/lexical_analysis.html#integer-and-long-integer-literals\n // decinteger is optionally imaginary\n // https://docs.python.org/3.9/reference/lexical_analysis.html#imaginary-literals\n {\n begin: `\\\\b([1-9](_?[0-9])*|0+(_?0)*)[lLjJ]?(?=${lookahead})`\n },\n {\n begin: `\\\\b0[bB](_?[01])+[lL]?(?=${lookahead})`\n },\n {\n begin: `\\\\b0[oO](_?[0-7])+[lL]?(?=${lookahead})`\n },\n {\n begin: `\\\\b0[xX](_?[0-9a-fA-F])+[lL]?(?=${lookahead})`\n },\n\n // imagnumber (digitpart-based)\n // https://docs.python.org/3.9/reference/lexical_analysis.html#imaginary-literals\n {\n begin: `\\\\b(${digitpart})[jJ](?=${lookahead})`\n }\n ]\n };\n const COMMENT_TYPE = {\n className: \"comment\",\n begin: regex.lookahead(/# type:/),\n end: /$/,\n keywords: KEYWORDS,\n contains: [\n { // prevent keywords from coloring `type`\n begin: /# type:/\n },\n // comment within a datatype comment includes no keywords\n {\n begin: /#/,\n end: /\\b\\B/,\n endsWithParent: true\n }\n ]\n };\n const PARAMS = {\n className: 'params',\n variants: [\n // Exclude params in functions without params\n {\n className: \"\",\n begin: /\\(\\s*\\)/,\n skip: true\n },\n {\n begin: /\\(/,\n end: /\\)/,\n excludeBegin: true,\n excludeEnd: true,\n keywords: KEYWORDS,\n contains: [\n 'self',\n PROMPT,\n NUMBER,\n STRING,\n hljs.HASH_COMMENT_MODE\n ]\n }\n ]\n };\n SUBST.contains = [\n STRING,\n NUMBER,\n PROMPT\n ];\n\n return {\n name: 'Python',\n aliases: [\n 'py',\n 'gyp',\n 'ipython'\n ],\n unicodeRegex: true,\n keywords: KEYWORDS,\n illegal: /(<\\/|\\?)|=>/,\n contains: [\n PROMPT,\n NUMBER,\n {\n // very common convention\n scope: 'variable.language',\n match: /\\bself\\b/\n },\n {\n // eat \"if\" prior to string so that it won't accidentally be\n // labeled as an f-string\n beginKeywords: \"if\",\n relevance: 0\n },\n { match: /\\bor\\b/, scope: \"keyword\" },\n STRING,\n COMMENT_TYPE,\n hljs.HASH_COMMENT_MODE,\n {\n match: [\n /\\bdef/, /\\s+/,\n IDENT_RE,\n ],\n scope: {\n 1: \"keyword\",\n 3: \"title.function\"\n },\n contains: [ PARAMS ]\n },\n {\n variants: [\n {\n match: [\n /\\bclass/, /\\s+/,\n IDENT_RE, /\\s*/,\n /\\(\\s*/, IDENT_RE,/\\s*\\)/\n ],\n },\n {\n match: [\n /\\bclass/, /\\s+/,\n IDENT_RE\n ],\n }\n ],\n scope: {\n 1: \"keyword\",\n 3: \"title.class\",\n 6: \"title.class.inherited\",\n }\n },\n {\n className: 'meta',\n begin: /^[\\t ]*@/,\n end: /(?=#)|$/,\n contains: [\n NUMBER,\n PARAMS,\n STRING\n ]\n }\n ]\n };\n}\n\nmodule.exports = python;\n","/*\nLanguage: Bash\nAuthor: vah <vahtenberg@gmail.com>\nContributrors: Benjamin Pannell <contact@sierrasoftworks.com>\nWebsite: https://www.gnu.org/software/bash/\nCategory: common, scripting\n*/\n\n/** @type LanguageFn */\nfunction bash(hljs) {\n const regex = hljs.regex;\n const VAR = {};\n const BRACED_VAR = {\n begin: /\\$\\{/,\n end: /\\}/,\n contains: [\n \"self\",\n {\n begin: /:-/,\n contains: [ VAR ]\n } // default values\n ]\n };\n Object.assign(VAR, {\n className: 'variable',\n variants: [\n { begin: regex.concat(/\\$[\\w\\d#@][\\w\\d_]*/,\n // negative look-ahead tries to avoid matching patterns that are not\n // Perl at all like $ident$, @ident@, etc.\n `(?![\\\\w\\\\d])(?![$])`) },\n BRACED_VAR\n ]\n });\n\n const SUBST = {\n className: 'subst',\n begin: /\\$\\(/,\n end: /\\)/,\n contains: [ hljs.BACKSLASH_ESCAPE ]\n };\n const COMMENT = hljs.inherit(\n hljs.COMMENT(),\n {\n match: [\n /(^|\\s)/,\n /#.*$/\n ],\n scope: {\n 2: 'comment'\n }\n }\n );\n const HERE_DOC = {\n begin: /<<-?\\s*(?=\\w+)/,\n starts: { contains: [\n hljs.END_SAME_AS_BEGIN({\n begin: /(\\w+)/,\n end: /(\\w+)/,\n className: 'string'\n })\n ] }\n };\n const QUOTE_STRING = {\n className: 'string',\n begin: /\"/,\n end: /\"/,\n contains: [\n hljs.BACKSLASH_ESCAPE,\n VAR,\n SUBST\n ]\n };\n SUBST.contains.push(QUOTE_STRING);\n const ESCAPED_QUOTE = {\n match: /\\\\\"/\n };\n const APOS_STRING = {\n className: 'string',\n begin: /'/,\n end: /'/\n };\n const ESCAPED_APOS = {\n match: /\\\\'/\n };\n const ARITHMETIC = {\n begin: /\\$?\\(\\(/,\n end: /\\)\\)/,\n contains: [\n {\n begin: /\\d+#[0-9a-f]+/,\n className: \"number\"\n },\n hljs.NUMBER_MODE,\n VAR\n ]\n };\n const SH_LIKE_SHELLS = [\n \"fish\",\n \"bash\",\n \"zsh\",\n \"sh\",\n \"csh\",\n \"ksh\",\n \"tcsh\",\n \"dash\",\n \"scsh\",\n ];\n const KNOWN_SHEBANG = hljs.SHEBANG({\n binary: `(${SH_LIKE_SHELLS.join(\"|\")})`,\n relevance: 10\n });\n const FUNCTION = {\n className: 'function',\n begin: /\\w[\\w\\d_]*\\s*\\(\\s*\\)\\s*\\{/,\n returnBegin: true,\n contains: [ hljs.inherit(hljs.TITLE_MODE, { begin: /\\w[\\w\\d_]*/ }) ],\n relevance: 0\n };\n\n const KEYWORDS = [\n \"if\",\n \"then\",\n \"else\",\n \"elif\",\n \"fi\",\n \"time\",\n \"for\",\n \"while\",\n \"until\",\n \"in\",\n \"do\",\n \"done\",\n \"case\",\n \"esac\",\n \"coproc\",\n \"function\",\n \"select\"\n ];\n\n const LITERALS = [\n \"true\",\n \"false\"\n ];\n\n // to consume paths to prevent keyword matches inside them\n const PATH_MODE = { match: /(\\/[a-z._-]+)+/ };\n\n // http://www.gnu.org/software/bash/manual/html_node/Shell-Builtin-Commands.html\n const SHELL_BUILT_INS = [\n \"break\",\n \"cd\",\n \"continue\",\n \"eval\",\n \"exec\",\n \"exit\",\n \"export\",\n \"getopts\",\n \"hash\",\n \"pwd\",\n \"readonly\",\n \"return\",\n \"shift\",\n \"test\",\n \"times\",\n \"trap\",\n \"umask\",\n \"unset\"\n ];\n\n const BASH_BUILT_INS = [\n \"alias\",\n \"bind\",\n \"builtin\",\n \"caller\",\n \"command\",\n \"declare\",\n \"echo\",\n \"enable\",\n \"help\",\n \"let\",\n \"local\",\n \"logout\",\n \"mapfile\",\n \"printf\",\n \"read\",\n \"readarray\",\n \"source\",\n \"sudo\",\n \"type\",\n \"typeset\",\n \"ulimit\",\n \"unalias\"\n ];\n\n const ZSH_BUILT_INS = [\n \"autoload\",\n \"bg\",\n \"bindkey\",\n \"bye\",\n \"cap\",\n \"chdir\",\n \"clone\",\n \"comparguments\",\n \"compcall\",\n \"compctl\",\n \"compdescribe\",\n \"compfiles\",\n \"compgroups\",\n \"compquote\",\n \"comptags\",\n \"comptry\",\n \"compvalues\",\n \"dirs\",\n \"disable\",\n \"disown\",\n \"echotc\",\n \"echoti\",\n \"emulate\",\n \"fc\",\n \"fg\",\n \"float\",\n \"functions\",\n \"getcap\",\n \"getln\",\n \"history\",\n \"integer\",\n \"jobs\",\n \"kill\",\n \"limit\",\n \"log\",\n \"noglob\",\n \"popd\",\n \"print\",\n \"pushd\",\n \"pushln\",\n \"rehash\",\n \"sched\",\n \"setcap\",\n \"setopt\",\n \"stat\",\n \"suspend\",\n \"ttyctl\",\n \"unfunction\",\n \"unhash\",\n \"unlimit\",\n \"unsetopt\",\n \"vared\",\n \"wait\",\n \"whence\",\n \"where\",\n \"which\",\n \"zcompile\",\n \"zformat\",\n \"zftp\",\n \"zle\",\n \"zmodload\",\n \"zparseopts\",\n \"zprof\",\n \"zpty\",\n \"zregexparse\",\n \"zsocket\",\n \"zstyle\",\n \"ztcp\"\n ];\n\n const GNU_CORE_UTILS = [\n \"chcon\",\n \"chgrp\",\n \"chown\",\n \"chmod\",\n \"cp\",\n \"dd\",\n \"df\",\n \"dir\",\n \"dircolors\",\n \"ln\",\n \"ls\",\n \"mkdir\",\n \"mkfifo\",\n \"mknod\",\n \"mktemp\",\n \"mv\",\n \"realpath\",\n \"rm\",\n \"rmdir\",\n \"shred\",\n \"sync\",\n \"touch\",\n \"truncate\",\n \"vdir\",\n \"b2sum\",\n \"base32\",\n \"base64\",\n \"cat\",\n \"cksum\",\n \"comm\",\n \"csplit\",\n \"cut\",\n \"expand\",\n \"fmt\",\n \"fold\",\n \"head\",\n \"join\",\n \"md5sum\",\n \"nl\",\n \"numfmt\",\n \"od\",\n \"paste\",\n \"ptx\",\n \"pr\",\n \"sha1sum\",\n \"sha224sum\",\n \"sha256sum\",\n \"sha384sum\",\n \"sha512sum\",\n \"shuf\",\n \"sort\",\n \"split\",\n \"sum\",\n \"tac\",\n \"tail\",\n \"tr\",\n \"tsort\",\n \"unexpand\",\n \"uniq\",\n \"wc\",\n \"arch\",\n \"basename\",\n \"chroot\",\n \"date\",\n \"dirname\",\n \"du\",\n \"echo\",\n \"env\",\n \"expr\",\n \"factor\",\n // \"false\", // keyword literal already\n \"groups\",\n \"hostid\",\n \"id\",\n \"link\",\n \"logname\",\n \"nice\",\n \"nohup\",\n \"nproc\",\n \"pathchk\",\n \"pinky\",\n \"printenv\",\n \"printf\",\n \"pwd\",\n \"readlink\",\n \"runcon\",\n \"seq\",\n \"sleep\",\n \"stat\",\n \"stdbuf\",\n \"stty\",\n \"tee\",\n \"test\",\n \"timeout\",\n // \"true\", // keyword literal already\n \"tty\",\n \"uname\",\n \"unlink\",\n \"uptime\",\n \"users\",\n \"who\",\n \"whoami\",\n \"yes\"\n ];\n\n return {\n name: 'Bash',\n aliases: [\n 'sh',\n 'zsh'\n ],\n keywords: {\n $pattern: /\\b[a-z][a-z0-9._-]+\\b/,\n keyword: KEYWORDS,\n literal: LITERALS,\n built_in: [\n ...SHELL_BUILT_INS,\n ...BASH_BUILT_INS,\n // Shell modifiers\n \"set\",\n \"shopt\",\n ...ZSH_BUILT_INS,\n ...GNU_CORE_UTILS\n ]\n },\n contains: [\n KNOWN_SHEBANG, // to catch known shells and boost relevancy\n hljs.SHEBANG(), // to catch unknown shells but still highlight the shebang\n FUNCTION,\n ARITHMETIC,\n COMMENT,\n HERE_DOC,\n PATH_MODE,\n QUOTE_STRING,\n ESCAPED_QUOTE,\n APOS_STRING,\n ESCAPED_APOS,\n VAR\n ]\n };\n}\n\nmodule.exports = bash;\n","/*\nLanguage: Shell Session\nRequires: bash.js\nAuthor: TSUYUSATO Kitsune <make.just.on@gmail.com>\nCategory: common\nAudit: 2020\n*/\n\n/** @type LanguageFn */\nfunction shell(hljs) {\n return {\n name: 'Shell Session',\n aliases: [\n 'console',\n 'shellsession'\n ],\n contains: [\n {\n className: 'meta.prompt',\n // We cannot add \\s (spaces) in the regular expression otherwise it will be too broad and produce unexpected result.\n // For instance, in the following example, it would match \"echo /path/to/home >\" as a prompt:\n // echo /path/to/home > t.exe\n begin: /^\\s{0,3}[/~\\w\\d[\\]()@-]*[>%$#][ ]?/,\n starts: {\n end: /[^\\\\](?=\\s*$)/,\n subLanguage: 'bash'\n }\n }\n ]\n };\n}\n\nmodule.exports = shell;\n","/*\nLanguage: Markdown\nRequires: xml.js\nAuthor: John Crepezzi <john.crepezzi@gmail.com>\nWebsite: https://daringfireball.net/projects/markdown/\nCategory: common, markup\n*/\n\nfunction markdown(hljs) {\n const regex = hljs.regex;\n const INLINE_HTML = {\n begin: /<\\/?[A-Za-z_]/,\n end: '>',\n subLanguage: 'xml',\n relevance: 0\n };\n const HORIZONTAL_RULE = {\n begin: '^[-\\\\*]{3,}',\n end: '$'\n };\n const CODE = {\n className: 'code',\n variants: [\n // TODO: fix to allow these to work with sublanguage also\n { begin: '(`{3,})[^`](.|\\\\n)*?\\\\1`*[ ]*' },\n { begin: '(~{3,})[^~](.|\\\\n)*?\\\\1~*[ ]*' },\n // needed to allow markdown as a sublanguage to work\n {\n begin: '```',\n end: '```+[ ]*$'\n },\n {\n begin: '~~~',\n end: '~~~+[ ]*$'\n },\n { begin: '`.+?`' },\n {\n begin: '(?=^( {4}|\\\\t))',\n // use contains to gobble up multiple lines to allow the block to be whatever size\n // but only have a single open/close tag vs one per line\n contains: [\n {\n begin: '^( {4}|\\\\t)',\n end: '(\\\\n)$'\n }\n ],\n relevance: 0\n }\n ]\n };\n const LIST = {\n className: 'bullet',\n begin: '^[ \\t]*([*+-]|(\\\\d+\\\\.))(?=\\\\s+)',\n end: '\\\\s+',\n excludeEnd: true\n };\n const LINK_REFERENCE = {\n begin: /^\\[[^\\n]+\\]:/,\n returnBegin: true,\n contains: [\n {\n className: 'symbol',\n begin: /\\[/,\n end: /\\]/,\n excludeBegin: true,\n excludeEnd: true\n },\n {\n className: 'link',\n begin: /:\\s*/,\n end: /$/,\n excludeBegin: true\n }\n ]\n };\n const URL_SCHEME = /[A-Za-z][A-Za-z0-9+.-]*/;\n const LINK = {\n variants: [\n // too much like nested array access in so many languages\n // to have any real relevance\n {\n begin: /\\[.+?\\]\\[.*?\\]/,\n relevance: 0\n },\n // popular internet URLs\n {\n begin: /\\[.+?\\]\\(((data|javascript|mailto):|(?:http|ftp)s?:\\/\\/).*?\\)/,\n relevance: 2\n },\n {\n begin: regex.concat(/\\[.+?\\]\\(/, URL_SCHEME, /:\\/\\/.*?\\)/),\n relevance: 2\n },\n // relative urls\n {\n begin: /\\[.+?\\]\\([./?&#].*?\\)/,\n relevance: 1\n },\n // whatever else, lower relevance (might not be a link at all)\n {\n begin: /\\[.*?\\]\\(.*?\\)/,\n relevance: 0\n }\n ],\n returnBegin: true,\n contains: [\n {\n // empty strings for alt or link text\n match: /\\[(?=\\])/ },\n {\n className: 'string',\n relevance: 0,\n begin: '\\\\[',\n end: '\\\\]',\n excludeBegin: true,\n returnEnd: true\n },\n {\n className: 'link',\n relevance: 0,\n begin: '\\\\]\\\\(',\n end: '\\\\)',\n excludeBegin: true,\n excludeEnd: true\n },\n {\n className: 'symbol',\n relevance: 0,\n begin: '\\\\]\\\\[',\n end: '\\\\]',\n excludeBegin: true,\n excludeEnd: true\n }\n ]\n };\n const BOLD = {\n className: 'strong',\n contains: [], // defined later\n variants: [\n {\n begin: /_{2}(?!\\s)/,\n end: /_{2}/\n },\n {\n begin: /\\*{2}(?!\\s)/,\n end: /\\*{2}/\n }\n ]\n };\n const ITALIC = {\n className: 'emphasis',\n contains: [], // defined later\n variants: [\n {\n begin: /\\*(?![*\\s])/,\n end: /\\*/\n },\n {\n begin: /_(?![_\\s])/,\n end: /_/,\n relevance: 0\n }\n ]\n };\n\n // 3 level deep nesting is not allowed because it would create confusion\n // in cases like `***testing***` because where we don't know if the last\n // `***` is starting a new bold/italic or finishing the last one\n const BOLD_WITHOUT_ITALIC = hljs.inherit(BOLD, { contains: [] });\n const ITALIC_WITHOUT_BOLD = hljs.inherit(ITALIC, { contains: [] });\n BOLD.contains.push(ITALIC_WITHOUT_BOLD);\n ITALIC.contains.push(BOLD_WITHOUT_ITALIC);\n\n let CONTAINABLE = [\n INLINE_HTML,\n LINK\n ];\n\n [\n BOLD,\n ITALIC,\n BOLD_WITHOUT_ITALIC,\n ITALIC_WITHOUT_BOLD\n ].forEach(m => {\n m.contains = m.contains.concat(CONTAINABLE);\n });\n\n CONTAINABLE = CONTAINABLE.concat(BOLD, ITALIC);\n\n const HEADER = {\n className: 'section',\n variants: [\n {\n begin: '^#{1,6}',\n end: '$',\n contains: CONTAINABLE\n },\n {\n begin: '(?=^.+?\\\\n[=-]{2,}$)',\n contains: [\n { begin: '^[=-]*$' },\n {\n begin: '^',\n end: \"\\\\n\",\n contains: CONTAINABLE\n }\n ]\n }\n ]\n };\n\n const BLOCKQUOTE = {\n className: 'quote',\n begin: '^>\\\\s+',\n contains: CONTAINABLE,\n end: '$'\n };\n\n const ENTITY = {\n //https://spec.commonmark.org/0.31.2/#entity-references\n scope: 'literal',\n match: /&([a-zA-Z0-9]+|#[0-9]{1,7}|#[Xx][0-9a-fA-F]{1,6});/\n };\n\n return {\n name: 'Markdown',\n aliases: [\n 'md',\n 'mkdown',\n 'mkd'\n ],\n contains: [\n HEADER,\n INLINE_HTML,\n LIST,\n BOLD,\n ITALIC,\n BLOCKQUOTE,\n CODE,\n HORIZONTAL_RULE,\n LINK,\n LINK_REFERENCE,\n ENTITY\n ]\n };\n}\n\nmodule.exports = markdown;\n","/*\nLanguage: Plain text\nAuthor: Egor Rogov (e.rogov@postgrespro.ru)\nDescription: Plain text without any highlighting.\nCategory: common\n*/\n\nfunction plaintext(hljs) {\n return {\n name: 'Plain text',\n aliases: [\n 'text',\n 'txt'\n ],\n disableAutodetect: true\n };\n}\n\nmodule.exports = plaintext;\n","/*\nLanguage: C\nCategory: common, system\nWebsite: https://en.wikipedia.org/wiki/C_(programming_language)\n*/\n\n/** @type LanguageFn */\nfunction c(hljs) {\n const regex = hljs.regex;\n // added for historic reasons because `hljs.C_LINE_COMMENT_MODE` does\n // not include such support nor can we be sure all the grammars depending\n // on it would desire this behavior\n const C_LINE_COMMENT_MODE = hljs.COMMENT('//', '$', { contains: [ { begin: /\\\\\\n/ } ] });\n const DECLTYPE_AUTO_RE = 'decltype\\\\(auto\\\\)';\n const NAMESPACE_RE = '[a-zA-Z_]\\\\w*::';\n const TEMPLATE_ARGUMENT_RE = '<[^<>]+>';\n const FUNCTION_TYPE_RE = '('\n + DECLTYPE_AUTO_RE + '|'\n + regex.optional(NAMESPACE_RE)\n + '[a-zA-Z_]\\\\w*' + regex.optional(TEMPLATE_ARGUMENT_RE)\n + ')';\n\n\n const TYPES = {\n className: 'type',\n variants: [\n { begin: '\\\\b[a-z\\\\d_]*_t\\\\b' },\n { match: /\\batomic_[a-z]{3,6}\\b/ }\n ]\n\n };\n\n // https://en.cppreference.com/w/cpp/language/escape\n // \\\\ \\x \\xFF \\u2837 \\u00323747 \\374\n const CHARACTER_ESCAPES = '\\\\\\\\(x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4,8}|[0-7]{3}|\\\\S)';\n const STRINGS = {\n className: 'string',\n variants: [\n {\n begin: '(u8?|U|L)?\"',\n end: '\"',\n illegal: '\\\\n',\n contains: [ hljs.BACKSLASH_ESCAPE ]\n },\n {\n begin: '(u8?|U|L)?\\'(' + CHARACTER_ESCAPES + \"|.)\",\n end: '\\'',\n illegal: '.'\n },\n hljs.END_SAME_AS_BEGIN({\n begin: /(?:u8?|U|L)?R\"([^()\\\\ ]{0,16})\\(/,\n end: /\\)([^()\\\\ ]{0,16})\"/\n })\n ]\n };\n\n const NUMBERS = {\n className: 'number',\n variants: [\n { match: /\\b(0b[01']+)/ }, \n { match: /(-?)\\b([\\d']+(\\.[\\d']*)?|\\.[\\d']+)((ll|LL|l|L)(u|U)?|(u|U)(ll|LL|l|L)?|f|F|b|B)/ }, \n { match: /(-?)\\b(0[xX][a-fA-F0-9]+(?:'[a-fA-F0-9]+)*(?:\\.[a-fA-F0-9]*(?:'[a-fA-F0-9]*)*)?(?:[pP][-+]?[0-9]+)?(l|L)?(u|U)?)/ }, \n { match: /(-?)\\b\\d+(?:'\\d+)*(?:\\.\\d*(?:'\\d*)*)?(?:[eE][-+]?\\d+)?/ } \n ],\n relevance: 0\n }; \n \n const PREPROCESSOR = {\n className: 'meta',\n begin: /#\\s*[a-z]+\\b/,\n end: /$/,\n keywords: { keyword:\n 'if else elif endif define undef warning error line '\n + 'pragma _Pragma ifdef ifndef elifdef elifndef include' },\n contains: [\n {\n begin: /\\\\\\n/,\n relevance: 0\n },\n hljs.inherit(STRINGS, { className: 'string' }),\n {\n className: 'string',\n begin: /<.*?>/\n },\n C_LINE_COMMENT_MODE,\n hljs.C_BLOCK_COMMENT_MODE\n ]\n };\n\n const TITLE_MODE = {\n className: 'title',\n begin: regex.optional(NAMESPACE_RE) + hljs.IDENT_RE,\n relevance: 0\n };\n\n const FUNCTION_TITLE = regex.optional(NAMESPACE_RE) + hljs.IDENT_RE + '\\\\s*\\\\(';\n\n const C_KEYWORDS = [\n \"asm\",\n \"auto\",\n \"break\",\n \"case\",\n \"continue\",\n \"default\",\n \"do\",\n \"else\",\n \"enum\",\n \"extern\",\n \"for\",\n \"fortran\",\n \"goto\",\n \"if\",\n \"inline\",\n \"register\",\n \"restrict\",\n \"return\",\n \"sizeof\",\n \"typeof\",\n \"typeof_unqual\",\n \"struct\",\n \"switch\",\n \"typedef\",\n \"union\",\n \"volatile\",\n \"while\",\n \"_Alignas\",\n \"_Alignof\",\n \"_Atomic\",\n \"_Generic\",\n \"_Noreturn\",\n \"_Static_assert\",\n \"_Thread_local\",\n // aliases\n \"alignas\",\n \"alignof\",\n \"noreturn\",\n \"static_assert\",\n \"thread_local\",\n // not a C keyword but is, for all intents and purposes, treated exactly like one.\n \"_Pragma\"\n ];\n\n const C_TYPES = [\n \"float\",\n \"double\",\n \"signed\",\n \"unsigned\",\n \"int\",\n \"short\",\n \"long\",\n \"char\",\n \"void\",\n \"_Bool\",\n \"_BitInt\",\n \"_Complex\",\n \"_Imaginary\",\n \"_Decimal32\",\n \"_Decimal64\",\n \"_Decimal96\",\n \"_Decimal128\",\n \"_Decimal64x\",\n \"_Decimal128x\",\n \"_Float16\",\n \"_Float32\",\n \"_Float64\",\n \"_Float128\",\n \"_Float32x\",\n \"_Float64x\",\n \"_Float128x\",\n // modifiers\n \"const\",\n \"static\",\n \"constexpr\",\n // aliases\n \"complex\",\n \"bool\",\n \"imaginary\"\n ];\n\n const KEYWORDS = {\n keyword: C_KEYWORDS,\n type: C_TYPES,\n literal: 'true false NULL',\n // TODO: apply hinting work similar to what was done in cpp.js\n built_in: 'std string wstring cin cout cerr clog stdin stdout stderr stringstream istringstream ostringstream '\n + 'auto_ptr deque list queue stack vector map set pair bitset multiset multimap unordered_set '\n + 'unordered_map unordered_multiset unordered_multimap priority_queue make_pair array shared_ptr abort terminate abs acos '\n + 'asin atan2 atan calloc ceil cosh cos exit exp fabs floor fmod fprintf fputs free frexp '\n + 'fscanf future isalnum isalpha iscntrl isdigit isgraph islower isprint ispunct isspace isupper '\n + 'isxdigit tolower toupper labs ldexp log10 log malloc realloc memchr memcmp memcpy memset modf pow '\n + 'printf putchar puts scanf sinh sin snprintf sprintf sqrt sscanf strcat strchr strcmp '\n + 'strcpy strcspn strlen strncat strncmp strncpy strpbrk strrchr strspn strstr tanh tan '\n + 'vfprintf vprintf vsprintf endl initializer_list unique_ptr',\n };\n\n const EXPRESSION_CONTAINS = [\n PREPROCESSOR,\n TYPES,\n C_LINE_COMMENT_MODE,\n hljs.C_BLOCK_COMMENT_MODE,\n NUMBERS,\n STRINGS\n ];\n\n const EXPRESSION_CONTEXT = {\n // This mode covers expression context where we can't expect a function\n // definition and shouldn't highlight anything that looks like one:\n // `return some()`, `else if()`, `(x*sum(1, 2))`\n variants: [\n {\n begin: /=/,\n end: /;/\n },\n {\n begin: /\\(/,\n end: /\\)/\n },\n {\n beginKeywords: 'new throw return else',\n end: /;/\n }\n ],\n keywords: KEYWORDS,\n contains: EXPRESSION_CONTAINS.concat([\n {\n begin: /\\(/,\n end: /\\)/,\n keywords: KEYWORDS,\n contains: EXPRESSION_CONTAINS.concat([ 'self' ]),\n relevance: 0\n }\n ]),\n relevance: 0\n };\n\n const FUNCTION_DECLARATION = {\n begin: '(' + FUNCTION_TYPE_RE + '[\\\\*&\\\\s]+)+' + FUNCTION_TITLE,\n returnBegin: true,\n end: /[{;=]/,\n excludeEnd: true,\n keywords: KEYWORDS,\n illegal: /[^\\w\\s\\*&:<>.]/,\n contains: [\n { // to prevent it from being confused as the function title\n begin: DECLTYPE_AUTO_RE,\n keywords: KEYWORDS,\n relevance: 0\n },\n {\n begin: FUNCTION_TITLE,\n returnBegin: true,\n contains: [ hljs.inherit(TITLE_MODE, { className: \"title.function\" }) ],\n relevance: 0\n },\n // allow for multiple declarations, e.g.:\n // extern void f(int), g(char);\n {\n relevance: 0,\n match: /,/\n },\n {\n className: 'params',\n begin: /\\(/,\n end: /\\)/,\n keywords: KEYWORDS,\n relevance: 0,\n contains: [\n C_LINE_COMMENT_MODE,\n hljs.C_BLOCK_COMMENT_MODE,\n STRINGS,\n NUMBERS,\n TYPES,\n // Count matching parentheses.\n {\n begin: /\\(/,\n end: /\\)/,\n keywords: KEYWORDS,\n relevance: 0,\n contains: [\n 'self',\n C_LINE_COMMENT_MODE,\n hljs.C_BLOCK_COMMENT_MODE,\n STRINGS,\n NUMBERS,\n TYPES\n ]\n }\n ]\n },\n TYPES,\n C_LINE_COMMENT_MODE,\n hljs.C_BLOCK_COMMENT_MODE,\n PREPROCESSOR\n ]\n };\n\n return {\n name: \"C\",\n aliases: [ 'h' ],\n keywords: KEYWORDS,\n // Until differentiations are added between `c` and `cpp`, `c` will\n // not be auto-detected to avoid auto-detect conflicts between C and C++\n disableAutodetect: true,\n illegal: '</',\n contains: [].concat(\n EXPRESSION_CONTEXT,\n FUNCTION_DECLARATION,\n EXPRESSION_CONTAINS,\n [\n PREPROCESSOR,\n {\n begin: hljs.IDENT_RE + '::',\n keywords: KEYWORDS\n },\n {\n className: 'class',\n beginKeywords: 'enum class struct union',\n end: /[{;:<>=]/,\n contains: [\n { beginKeywords: \"final class struct\" },\n hljs.TITLE_MODE\n ]\n }\n ]),\n exports: {\n preprocessor: PREPROCESSOR,\n strings: STRINGS,\n keywords: KEYWORDS\n }\n };\n}\n\nmodule.exports = c;\n","/*\nLanguage: C++\nCategory: common, system\nWebsite: https://isocpp.org\n*/\n\n/** @type LanguageFn */\nfunction cpp(hljs) {\n const regex = hljs.regex;\n // added for historic reasons because `hljs.C_LINE_COMMENT_MODE` does\n // not include such support nor can we be sure all the grammars depending\n // on it would desire this behavior\n const C_LINE_COMMENT_MODE = hljs.COMMENT('//', '$', { contains: [ { begin: /\\\\\\n/ } ] });\n const DECLTYPE_AUTO_RE = 'decltype\\\\(auto\\\\)';\n const NAMESPACE_RE = '[a-zA-Z_]\\\\w*::';\n const TEMPLATE_ARGUMENT_RE = '<[^<>]+>';\n const FUNCTION_TYPE_RE = '(?!struct)('\n + DECLTYPE_AUTO_RE + '|'\n + regex.optional(NAMESPACE_RE)\n + '[a-zA-Z_]\\\\w*' + regex.optional(TEMPLATE_ARGUMENT_RE)\n + ')';\n\n const CPP_PRIMITIVE_TYPES = {\n className: 'type',\n begin: '\\\\b[a-z\\\\d_]*_t\\\\b'\n };\n\n // https://en.cppreference.com/w/cpp/language/escape\n // \\\\ \\x \\xFF \\u2837 \\u00323747 \\374\n const CHARACTER_ESCAPES = '\\\\\\\\(x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4,8}|[0-7]{3}|\\\\S)';\n const STRINGS = {\n className: 'string',\n variants: [\n {\n begin: '(u8?|U|L)?\"',\n end: '\"',\n illegal: '\\\\n',\n contains: [ hljs.BACKSLASH_ESCAPE ]\n },\n {\n begin: '(u8?|U|L)?\\'(' + CHARACTER_ESCAPES + '|.)',\n end: '\\'',\n illegal: '.'\n },\n hljs.END_SAME_AS_BEGIN({\n begin: /(?:u8?|U|L)?R\"([^()\\\\ ]{0,16})\\(/,\n end: /\\)([^()\\\\ ]{0,16})\"/\n })\n ]\n };\n\n const NUMBERS = {\n className: 'number',\n variants: [\n // Floating-point literal.\n { begin:\n \"[+-]?(?:\" // Leading sign.\n // Decimal.\n + \"(?:\"\n +\"[0-9](?:'?[0-9])*\\\\.(?:[0-9](?:'?[0-9])*)?\"\n + \"|\\\\.[0-9](?:'?[0-9])*\"\n + \")(?:[Ee][+-]?[0-9](?:'?[0-9])*)?\"\n + \"|[0-9](?:'?[0-9])*[Ee][+-]?[0-9](?:'?[0-9])*\"\n // Hexadecimal.\n + \"|0[Xx](?:\"\n +\"[0-9A-Fa-f](?:'?[0-9A-Fa-f])*(?:\\\\.(?:[0-9A-Fa-f](?:'?[0-9A-Fa-f])*)?)?\"\n + \"|\\\\.[0-9A-Fa-f](?:'?[0-9A-Fa-f])*\"\n + \")[Pp][+-]?[0-9](?:'?[0-9])*\"\n + \")(?:\" // Literal suffixes.\n + \"[Ff](?:16|32|64|128)?\"\n + \"|(BF|bf)16\"\n + \"|[Ll]\"\n + \"|\" // Literal suffix is optional.\n + \")\"\n },\n // Integer literal.\n { begin:\n \"[+-]?\\\\b(?:\" // Leading sign.\n + \"0[Bb][01](?:'?[01])*\" // Binary.\n + \"|0[Xx][0-9A-Fa-f](?:'?[0-9A-Fa-f])*\" // Hexadecimal.\n + \"|0(?:'?[0-7])*\" // Octal or just a lone zero.\n + \"|[1-9](?:'?[0-9])*\" // Decimal.\n + \")(?:\" // Literal suffixes.\n + \"[Uu](?:LL?|ll?)\"\n + \"|[Uu][Zz]?\"\n + \"|(?:LL?|ll?)[Uu]?\"\n + \"|[Zz][Uu]\"\n + \"|\" // Literal suffix is optional.\n + \")\"\n // Note: there are user-defined literal suffixes too, but perhaps having the custom suffix not part of the\n // literal highlight actually makes it stand out more.\n }\n ],\n relevance: 0\n };\n\n const PREPROCESSOR = {\n className: 'meta',\n begin: /#\\s*[a-z]+\\b/,\n end: /$/,\n keywords: { keyword:\n 'if else elif endif define undef warning error line '\n + 'pragma _Pragma ifdef ifndef include' },\n contains: [\n {\n begin: /\\\\\\n/,\n relevance: 0\n },\n hljs.inherit(STRINGS, { className: 'string' }),\n {\n className: 'string',\n begin: /<.*?>/\n },\n C_LINE_COMMENT_MODE,\n hljs.C_BLOCK_COMMENT_MODE\n ]\n };\n\n const TITLE_MODE = {\n className: 'title',\n begin: regex.optional(NAMESPACE_RE) + hljs.IDENT_RE,\n relevance: 0\n };\n\n const FUNCTION_TITLE = regex.optional(NAMESPACE_RE) + hljs.IDENT_RE + '\\\\s*\\\\(';\n\n // https://en.cppreference.com/w/cpp/keyword\n const RESERVED_KEYWORDS = [\n 'alignas',\n 'alignof',\n 'and',\n 'and_eq',\n 'asm',\n 'atomic_cancel',\n 'atomic_commit',\n 'atomic_noexcept',\n 'auto',\n 'bitand',\n 'bitor',\n 'break',\n 'case',\n 'catch',\n 'class',\n 'co_await',\n 'co_return',\n 'co_yield',\n 'compl',\n 'concept',\n 'const_cast|10',\n 'consteval',\n 'constexpr',\n 'constinit',\n 'continue',\n 'decltype',\n 'default',\n 'delete',\n 'do',\n 'dynamic_cast|10',\n 'else',\n 'enum',\n 'explicit',\n 'export',\n 'extern',\n 'false',\n 'final',\n 'for',\n 'friend',\n 'goto',\n 'if',\n 'import',\n 'inline',\n 'module',\n 'mutable',\n 'namespace',\n 'new',\n 'noexcept',\n 'not',\n 'not_eq',\n 'nullptr',\n 'operator',\n 'or',\n 'or_eq',\n 'override',\n 'private',\n 'protected',\n 'public',\n 'reflexpr',\n 'register',\n 'reinterpret_cast|10',\n 'requires',\n 'return',\n 'sizeof',\n 'static_assert',\n 'static_cast|10',\n 'struct',\n 'switch',\n 'synchronized',\n 'template',\n 'this',\n 'thread_local',\n 'throw',\n 'transaction_safe',\n 'transaction_safe_dynamic',\n 'true',\n 'try',\n 'typedef',\n 'typeid',\n 'typename',\n 'union',\n 'using',\n 'virtual',\n 'volatile',\n 'while',\n 'xor',\n 'xor_eq'\n ];\n\n // https://en.cppreference.com/w/cpp/keyword\n const RESERVED_TYPES = [\n 'bool',\n 'char',\n 'char16_t',\n 'char32_t',\n 'char8_t',\n 'double',\n 'float',\n 'int',\n 'long',\n 'short',\n 'void',\n 'wchar_t',\n 'unsigned',\n 'signed',\n 'const',\n 'static'\n ];\n\n const TYPE_HINTS = [\n 'any',\n 'auto_ptr',\n 'barrier',\n 'binary_semaphore',\n 'bitset',\n 'complex',\n 'condition_variable',\n 'condition_variable_any',\n 'counting_semaphore',\n 'deque',\n 'false_type',\n 'flat_map',\n 'flat_set',\n 'future',\n 'imaginary',\n 'initializer_list',\n 'istringstream',\n 'jthread',\n 'latch',\n 'lock_guard',\n 'multimap',\n 'multiset',\n 'mutex',\n 'optional',\n 'ostringstream',\n 'packaged_task',\n 'pair',\n 'promise',\n 'priority_queue',\n 'queue',\n 'recursive_mutex',\n 'recursive_timed_mutex',\n 'scoped_lock',\n 'set',\n 'shared_future',\n 'shared_lock',\n 'shared_mutex',\n 'shared_timed_mutex',\n 'shared_ptr',\n 'stack',\n 'string_view',\n 'stringstream',\n 'timed_mutex',\n 'thread',\n 'true_type',\n 'tuple',\n 'unique_lock',\n 'unique_ptr',\n 'unordered_map',\n 'unordered_multimap',\n 'unordered_multiset',\n 'unordered_set',\n 'variant',\n 'vector',\n 'weak_ptr',\n 'wstring',\n 'wstring_view'\n ];\n\n const FUNCTION_HINTS = [\n 'abort',\n 'abs',\n 'acos',\n 'apply',\n 'as_const',\n 'asin',\n 'atan',\n 'atan2',\n 'calloc',\n 'ceil',\n 'cerr',\n 'cin',\n 'clog',\n 'cos',\n 'cosh',\n 'cout',\n 'declval',\n 'endl',\n 'exchange',\n 'exit',\n 'exp',\n 'fabs',\n 'floor',\n 'fmod',\n 'forward',\n 'fprintf',\n 'fputs',\n 'free',\n 'frexp',\n 'fscanf',\n 'future',\n 'invoke',\n 'isalnum',\n 'isalpha',\n 'iscntrl',\n 'isdigit',\n 'isgraph',\n 'islower',\n 'isprint',\n 'ispunct',\n 'isspace',\n 'isupper',\n 'isxdigit',\n 'labs',\n 'launder',\n 'ldexp',\n 'log',\n 'log10',\n 'make_pair',\n 'make_shared',\n 'make_shared_for_overwrite',\n 'make_tuple',\n 'make_unique',\n 'malloc',\n 'memchr',\n 'memcmp',\n 'memcpy',\n 'memset',\n 'modf',\n 'move',\n 'pow',\n 'printf',\n 'putchar',\n 'puts',\n 'realloc',\n 'scanf',\n 'sin',\n 'sinh',\n 'snprintf',\n 'sprintf',\n 'sqrt',\n 'sscanf',\n 'std',\n 'stderr',\n 'stdin',\n 'stdout',\n 'strcat',\n 'strchr',\n 'strcmp',\n 'strcpy',\n 'strcspn',\n 'strlen',\n 'strncat',\n 'strncmp',\n 'strncpy',\n 'strpbrk',\n 'strrchr',\n 'strspn',\n 'strstr',\n 'swap',\n 'tan',\n 'tanh',\n 'terminate',\n 'to_underlying',\n 'tolower',\n 'toupper',\n 'vfprintf',\n 'visit',\n 'vprintf',\n 'vsprintf'\n ];\n\n const LITERALS = [\n 'NULL',\n 'false',\n 'nullopt',\n 'nullptr',\n 'true'\n ];\n\n // https://en.cppreference.com/w/cpp/keyword\n const BUILT_IN = [ '_Pragma' ];\n\n const CPP_KEYWORDS = {\n type: RESERVED_TYPES,\n keyword: RESERVED_KEYWORDS,\n literal: LITERALS,\n built_in: BUILT_IN,\n _type_hints: TYPE_HINTS\n };\n\n const FUNCTION_DISPATCH = {\n className: 'function.dispatch',\n relevance: 0,\n keywords: {\n // Only for relevance, not highlighting.\n _hint: FUNCTION_HINTS },\n begin: regex.concat(\n /\\b/,\n `(?!${RESERVED_KEYWORDS.join('|')})`,\n hljs.IDENT_RE,\n regex.lookahead(/(<[^<>]+>|)\\s*\\(/))\n };\n\n const EXPRESSION_CONTAINS = [\n FUNCTION_DISPATCH,\n PREPROCESSOR,\n CPP_PRIMITIVE_TYPES,\n C_LINE_COMMENT_MODE,\n hljs.C_BLOCK_COMMENT_MODE,\n NUMBERS,\n STRINGS\n ];\n\n const EXPRESSION_CONTEXT = {\n // This mode covers expression context where we can't expect a function\n // definition and shouldn't highlight anything that looks like one:\n // `return some()`, `else if()`, `(x*sum(1, 2))`\n variants: [\n {\n begin: /=/,\n end: /;/\n },\n {\n begin: /\\(/,\n end: /\\)/\n },\n {\n beginKeywords: 'new throw return else',\n end: /;/\n }\n ],\n keywords: CPP_KEYWORDS,\n contains: EXPRESSION_CONTAINS.concat([\n {\n begin: /\\(/,\n end: /\\)/,\n keywords: CPP_KEYWORDS,\n contains: EXPRESSION_CONTAINS.concat([ 'self' ]),\n relevance: 0\n }\n ]),\n relevance: 0\n };\n\n const FUNCTION_DECLARATION = {\n className: 'function',\n begin: '(' + FUNCTION_TYPE_RE + '[\\\\*&\\\\s]+)+' + FUNCTION_TITLE,\n returnBegin: true,\n end: /[{;=]/,\n excludeEnd: true,\n keywords: CPP_KEYWORDS,\n illegal: /[^\\w\\s\\*&:<>.]/,\n contains: [\n { // to prevent it from being confused as the function title\n begin: DECLTYPE_AUTO_RE,\n keywords: CPP_KEYWORDS,\n relevance: 0\n },\n {\n begin: FUNCTION_TITLE,\n returnBegin: true,\n contains: [ TITLE_MODE ],\n relevance: 0\n },\n // needed because we do not have look-behind on the below rule\n // to prevent it from grabbing the final : in a :: pair\n {\n begin: /::/,\n relevance: 0\n },\n // initializers\n {\n begin: /:/,\n endsWithParent: true,\n contains: [\n STRINGS,\n NUMBERS\n ]\n },\n // allow for multiple declarations, e.g.:\n // extern void f(int), g(char);\n {\n relevance: 0,\n match: /,/\n },\n {\n className: 'params',\n begin: /\\(/,\n end: /\\)/,\n keywords: CPP_KEYWORDS,\n relevance: 0,\n contains: [\n C_LINE_COMMENT_MODE,\n hljs.C_BLOCK_COMMENT_MODE,\n STRINGS,\n NUMBERS,\n CPP_PRIMITIVE_TYPES,\n // Count matching parentheses.\n {\n begin: /\\(/,\n end: /\\)/,\n keywords: CPP_KEYWORDS,\n relevance: 0,\n contains: [\n 'self',\n C_LINE_COMMENT_MODE,\n hljs.C_BLOCK_COMMENT_MODE,\n STRINGS,\n NUMBERS,\n CPP_PRIMITIVE_TYPES\n ]\n }\n ]\n },\n CPP_PRIMITIVE_TYPES,\n C_LINE_COMMENT_MODE,\n hljs.C_BLOCK_COMMENT_MODE,\n PREPROCESSOR\n ]\n };\n\n return {\n name: 'C++',\n aliases: [\n 'cc',\n 'c++',\n 'h++',\n 'hpp',\n 'hh',\n 'hxx',\n 'cxx'\n ],\n keywords: CPP_KEYWORDS,\n illegal: '</',\n classNameAliases: { 'function.dispatch': 'built_in' },\n contains: [].concat(\n EXPRESSION_CONTEXT,\n FUNCTION_DECLARATION,\n FUNCTION_DISPATCH,\n EXPRESSION_CONTAINS,\n [\n PREPROCESSOR,\n { // containers: ie, `vector <int> rooms (9);`\n begin: '\\\\b(deque|list|queue|priority_queue|pair|stack|vector|map|set|bitset|multiset|multimap|unordered_map|unordered_set|unordered_multiset|unordered_multimap|array|tuple|optional|variant|function|flat_map|flat_set)\\\\s*<(?!<)',\n end: '>',\n keywords: CPP_KEYWORDS,\n contains: [\n 'self',\n CPP_PRIMITIVE_TYPES\n ]\n },\n {\n begin: hljs.IDENT_RE + '::',\n keywords: CPP_KEYWORDS\n },\n {\n match: [\n // extra complexity to deal with `enum class` and `enum struct`\n /\\b(?:enum(?:\\s+(?:class|struct))?|class|struct|union)/,\n /\\s+/,\n /\\w+/\n ],\n className: {\n 1: 'keyword',\n 3: 'title.class'\n }\n }\n ])\n };\n}\n\nmodule.exports = cpp;\n","/*\nLanguage: C#\nAuthor: Jason Diamond <jason@diamond.name>\nContributor: Nicolas LLOBERA <nllobera@gmail.com>, Pieter Vantorre <pietervantorre@gmail.com>, David Pine <david.pine@microsoft.com>\nWebsite: https://docs.microsoft.com/dotnet/csharp/\nCategory: common\n*/\n\n/** @type LanguageFn */\nfunction csharp(hljs) {\n const BUILT_IN_KEYWORDS = [\n 'bool',\n 'byte',\n 'char',\n 'decimal',\n 'delegate',\n 'double',\n 'dynamic',\n 'enum',\n 'float',\n 'int',\n 'long',\n 'nint',\n 'nuint',\n 'object',\n 'sbyte',\n 'short',\n 'string',\n 'ulong',\n 'uint',\n 'ushort'\n ];\n const FUNCTION_MODIFIERS = [\n 'public',\n 'private',\n 'protected',\n 'static',\n 'internal',\n 'protected',\n 'abstract',\n 'async',\n 'extern',\n 'override',\n 'unsafe',\n 'virtual',\n 'new',\n 'sealed',\n 'partial'\n ];\n const LITERAL_KEYWORDS = [\n 'default',\n 'false',\n 'null',\n 'true'\n ];\n const NORMAL_KEYWORDS = [\n 'abstract',\n 'as',\n 'base',\n 'break',\n 'case',\n 'catch',\n 'class',\n 'const',\n 'continue',\n 'do',\n 'else',\n 'event',\n 'explicit',\n 'extern',\n 'finally',\n 'fixed',\n 'for',\n 'foreach',\n 'goto',\n 'if',\n 'implicit',\n 'in',\n 'interface',\n 'internal',\n 'is',\n 'lock',\n 'namespace',\n 'new',\n 'operator',\n 'out',\n 'override',\n 'params',\n 'private',\n 'protected',\n 'public',\n 'readonly',\n 'record',\n 'ref',\n 'return',\n 'scoped',\n 'sealed',\n 'sizeof',\n 'stackalloc',\n 'static',\n 'struct',\n 'switch',\n 'this',\n 'throw',\n 'try',\n 'typeof',\n 'unchecked',\n 'unsafe',\n 'using',\n 'virtual',\n 'void',\n 'volatile',\n 'while'\n ];\n const CONTEXTUAL_KEYWORDS = [\n 'add',\n 'alias',\n 'and',\n 'ascending',\n 'args',\n 'async',\n 'await',\n 'by',\n 'descending',\n 'dynamic',\n 'equals',\n 'file',\n 'from',\n 'get',\n 'global',\n 'group',\n 'init',\n 'into',\n 'join',\n 'let',\n 'nameof',\n 'not',\n 'notnull',\n 'on',\n 'or',\n 'orderby',\n 'partial',\n 'record',\n 'remove',\n 'required',\n 'scoped',\n 'select',\n 'set',\n 'unmanaged',\n 'value|0',\n 'var',\n 'when',\n 'where',\n 'with',\n 'yield'\n ];\n\n const KEYWORDS = {\n keyword: NORMAL_KEYWORDS.concat(CONTEXTUAL_KEYWORDS),\n built_in: BUILT_IN_KEYWORDS,\n literal: LITERAL_KEYWORDS\n };\n const TITLE_MODE = hljs.inherit(hljs.TITLE_MODE, { begin: '[a-zA-Z](\\\\.?\\\\w)*' });\n const NUMBERS = {\n className: 'number',\n variants: [\n { begin: '\\\\b(0b[01\\']+)' },\n { begin: '(-?)\\\\b([\\\\d\\']+(\\\\.[\\\\d\\']*)?|\\\\.[\\\\d\\']+)(u|U|l|L|ul|UL|f|F|b|B)' },\n { begin: '(-?)(\\\\b0[xX][a-fA-F0-9\\'_]+|(\\\\b[\\\\d\\'_]+(\\\\.[\\\\d\\'_]*)?|\\\\.[\\\\d\\'_]+)([eE][-+]?[\\\\d\\'_]+)?)' }\n ],\n relevance: 0\n };\n const RAW_STRING = {\n className: 'string',\n begin: /\"\"\"(\"*)(?!\")(.|\\n)*?\"\"\"\\1/,\n relevance: 1\n };\n const VERBATIM_STRING = {\n className: 'string',\n begin: '@\"',\n end: '\"',\n contains: [ { begin: '\"\"' } ]\n };\n const VERBATIM_STRING_NO_LF = hljs.inherit(VERBATIM_STRING, { illegal: /\\n/ });\n const SUBST = {\n className: 'subst',\n begin: /\\{/,\n end: /\\}/,\n keywords: KEYWORDS\n };\n const SUBST_NO_LF = hljs.inherit(SUBST, { illegal: /\\n/ });\n const INTERPOLATED_STRING = {\n className: 'string',\n begin: /\\$\"/,\n end: '\"',\n illegal: /\\n/,\n contains: [\n { begin: /\\{\\{/ },\n { begin: /\\}\\}/ },\n hljs.BACKSLASH_ESCAPE,\n SUBST_NO_LF\n ]\n };\n const INTERPOLATED_VERBATIM_STRING = {\n className: 'string',\n begin: /\\$@\"/,\n end: '\"',\n contains: [\n { begin: /\\{\\{/ },\n { begin: /\\}\\}/ },\n { begin: '\"\"' },\n SUBST\n ]\n };\n const INTERPOLATED_VERBATIM_STRING_NO_LF = hljs.inherit(INTERPOLATED_VERBATIM_STRING, {\n illegal: /\\n/,\n contains: [\n { begin: /\\{\\{/ },\n { begin: /\\}\\}/ },\n { begin: '\"\"' },\n SUBST_NO_LF\n ]\n });\n SUBST.contains = [\n INTERPOLATED_VERBATIM_STRING,\n INTERPOLATED_STRING,\n VERBATIM_STRING,\n hljs.APOS_STRING_MODE,\n hljs.QUOTE_STRING_MODE,\n NUMBERS,\n hljs.C_BLOCK_COMMENT_MODE\n ];\n SUBST_NO_LF.contains = [\n INTERPOLATED_VERBATIM_STRING_NO_LF,\n INTERPOLATED_STRING,\n VERBATIM_STRING_NO_LF,\n hljs.APOS_STRING_MODE,\n hljs.QUOTE_STRING_MODE,\n NUMBERS,\n hljs.inherit(hljs.C_BLOCK_COMMENT_MODE, { illegal: /\\n/ })\n ];\n const STRING = { variants: [\n RAW_STRING,\n INTERPOLATED_VERBATIM_STRING,\n INTERPOLATED_STRING,\n VERBATIM_STRING,\n hljs.APOS_STRING_MODE,\n hljs.QUOTE_STRING_MODE\n ] };\n\n const GENERIC_MODIFIER = {\n begin: \"<\",\n end: \">\",\n contains: [\n { beginKeywords: \"in out\" },\n TITLE_MODE\n ]\n };\n const TYPE_IDENT_RE = hljs.IDENT_RE + '(<' + hljs.IDENT_RE + '(\\\\s*,\\\\s*' + hljs.IDENT_RE + ')*>)?(\\\\[\\\\])?';\n const AT_IDENTIFIER = {\n // prevents expressions like `@class` from incorrect flagging\n // `class` as a keyword\n begin: \"@\" + hljs.IDENT_RE,\n relevance: 0\n };\n\n return {\n name: 'C#',\n aliases: [\n 'cs',\n 'c#'\n ],\n keywords: KEYWORDS,\n illegal: /::/,\n contains: [\n hljs.COMMENT(\n '///',\n '$',\n {\n returnBegin: true,\n contains: [\n {\n className: 'doctag',\n variants: [\n {\n begin: '///',\n relevance: 0\n },\n { begin: '<!--|-->' },\n {\n begin: '</?',\n end: '>'\n }\n ]\n }\n ]\n }\n ),\n hljs.C_LINE_COMMENT_MODE,\n hljs.C_BLOCK_COMMENT_MODE,\n {\n className: 'meta',\n begin: '#',\n end: '$',\n keywords: { keyword: 'if else elif endif define undef warning error line region endregion pragma checksum' }\n },\n STRING,\n NUMBERS,\n {\n beginKeywords: 'class interface',\n relevance: 0,\n end: /[{;=]/,\n illegal: /[^\\s:,]/,\n contains: [\n { beginKeywords: \"where class\" },\n TITLE_MODE,\n GENERIC_MODIFIER,\n hljs.C_LINE_COMMENT_MODE,\n hljs.C_BLOCK_COMMENT_MODE\n ]\n },\n {\n beginKeywords: 'namespace',\n relevance: 0,\n end: /[{;=]/,\n illegal: /[^\\s:]/,\n contains: [\n TITLE_MODE,\n hljs.C_LINE_COMMENT_MODE,\n hljs.C_BLOCK_COMMENT_MODE\n ]\n },\n {\n beginKeywords: 'record',\n relevance: 0,\n end: /[{;=]/,\n illegal: /[^\\s:]/,\n contains: [\n TITLE_MODE,\n GENERIC_MODIFIER,\n hljs.C_LINE_COMMENT_MODE,\n hljs.C_BLOCK_COMMENT_MODE\n ]\n },\n {\n // [Attributes(\"\")]\n className: 'meta',\n begin: '^\\\\s*\\\\[(?=[\\\\w])',\n excludeBegin: true,\n end: '\\\\]',\n excludeEnd: true,\n contains: [\n {\n className: 'string',\n begin: /\"/,\n end: /\"/\n }\n ]\n },\n {\n // Expression keywords prevent 'keyword Name(...)' from being\n // recognized as a function definition\n beginKeywords: 'new return throw await else',\n relevance: 0\n },\n {\n className: 'function',\n begin: '(' + TYPE_IDENT_RE + '\\\\s+)+' + hljs.IDENT_RE + '\\\\s*(<[^=]+>\\\\s*)?\\\\(',\n returnBegin: true,\n end: /\\s*[{;=]/,\n excludeEnd: true,\n keywords: KEYWORDS,\n contains: [\n // prevents these from being highlighted `title`\n {\n beginKeywords: FUNCTION_MODIFIERS.join(\" \"),\n relevance: 0\n },\n {\n begin: hljs.IDENT_RE + '\\\\s*(<[^=]+>\\\\s*)?\\\\(',\n returnBegin: true,\n contains: [\n hljs.TITLE_MODE,\n GENERIC_MODIFIER\n ],\n relevance: 0\n },\n { match: /\\(\\)/ },\n {\n className: 'params',\n begin: /\\(/,\n end: /\\)/,\n excludeBegin: true,\n excludeEnd: true,\n keywords: KEYWORDS,\n relevance: 0,\n contains: [\n STRING,\n NUMBERS,\n hljs.C_BLOCK_COMMENT_MODE\n ]\n },\n hljs.C_LINE_COMMENT_MODE,\n hljs.C_BLOCK_COMMENT_MODE\n ]\n },\n AT_IDENTIFIER\n ]\n };\n}\n\nmodule.exports = csharp;\n","/*\nLanguage: Go\nAuthor: Stephan Kountso aka StepLg <steplg@gmail.com>\nContributors: Evgeny Stepanischev <imbolk@gmail.com>\nDescription: Google go language (golang). For info about language\nWebsite: http://golang.org/\nCategory: common, system\n*/\n\nfunction go(hljs) {\n const LITERALS = [\n \"true\",\n \"false\",\n \"iota\",\n \"nil\"\n ];\n const BUILT_INS = [\n \"append\",\n \"cap\",\n \"close\",\n \"complex\",\n \"copy\",\n \"imag\",\n \"len\",\n \"make\",\n \"new\",\n \"panic\",\n \"print\",\n \"println\",\n \"real\",\n \"recover\",\n \"delete\"\n ];\n const TYPES = [\n \"bool\",\n \"byte\",\n \"complex64\",\n \"complex128\",\n \"error\",\n \"float32\",\n \"float64\",\n \"int8\",\n \"int16\",\n \"int32\",\n \"int64\",\n \"string\",\n \"uint8\",\n \"uint16\",\n \"uint32\",\n \"uint64\",\n \"int\",\n \"uint\",\n \"uintptr\",\n \"rune\"\n ];\n const KWS = [\n \"break\",\n \"case\",\n \"chan\",\n \"const\",\n \"continue\",\n \"default\",\n \"defer\",\n \"else\",\n \"fallthrough\",\n \"for\",\n \"func\",\n \"go\",\n \"goto\",\n \"if\",\n \"import\",\n \"interface\",\n \"map\",\n \"package\",\n \"range\",\n \"return\",\n \"select\",\n \"struct\",\n \"switch\",\n \"type\",\n \"var\",\n ];\n const KEYWORDS = {\n keyword: KWS,\n type: TYPES,\n literal: LITERALS,\n built_in: BUILT_INS\n };\n return {\n name: 'Go',\n aliases: [ 'golang' ],\n keywords: KEYWORDS,\n illegal: '</',\n contains: [\n hljs.C_LINE_COMMENT_MODE,\n hljs.C_BLOCK_COMMENT_MODE,\n {\n className: 'string',\n variants: [\n hljs.QUOTE_STRING_MODE,\n hljs.APOS_STRING_MODE,\n {\n begin: '`',\n end: '`'\n }\n ]\n },\n {\n className: 'number',\n variants: [\n {\n match: /-?\\b0[xX]\\.[a-fA-F0-9](_?[a-fA-F0-9])*[pP][+-]?\\d(_?\\d)*i?/, // hex without a present digit before . (making a digit afterwards required)\n relevance: 0\n },\n {\n match: /-?\\b0[xX](_?[a-fA-F0-9])+((\\.([a-fA-F0-9](_?[a-fA-F0-9])*)?)?[pP][+-]?\\d(_?\\d)*)?i?/, // hex with a present digit before . (making a digit afterwards optional)\n relevance: 0\n },\n {\n match: /-?\\b0[oO](_?[0-7])*i?/, // leading 0o octal\n relevance: 0\n },\n {\n match: /-?\\.\\d(_?\\d)*([eE][+-]?\\d(_?\\d)*)?i?/, // decimal without a present digit before . (making a digit afterwards required)\n relevance: 0\n },\n {\n match: /-?\\b\\d(_?\\d)*(\\.(\\d(_?\\d)*)?)?([eE][+-]?\\d(_?\\d)*)?i?/, // decimal with a present digit before . (making a digit afterwards optional)\n relevance: 0\n }\n ]\n },\n { begin: /:=/ // relevance booster\n },\n {\n className: 'function',\n beginKeywords: 'func',\n end: '\\\\s*(\\\\{|$)',\n excludeEnd: true,\n contains: [\n hljs.TITLE_MODE,\n {\n className: 'params',\n begin: /\\(/,\n end: /\\)/,\n endsParent: true,\n keywords: KEYWORDS,\n illegal: /[\"']/\n }\n ]\n }\n ]\n };\n}\n\nmodule.exports = go;\n","/*\nLanguage: Rust\nAuthor: Andrey Vlasovskikh <andrey.vlasovskikh@gmail.com>\nContributors: Roman Shmatov <romanshmatov@gmail.com>, Kasper Andersen <kma_untrusted@protonmail.com>\nWebsite: https://www.rust-lang.org\nCategory: common, system\n*/\n\n/** @type LanguageFn */\n\nfunction rust(hljs) {\n const regex = hljs.regex;\n // ============================================\n // Added to support the r# keyword, which is a raw identifier in Rust.\n const RAW_IDENTIFIER = /(r#)?/;\n const UNDERSCORE_IDENT_RE = regex.concat(RAW_IDENTIFIER, hljs.UNDERSCORE_IDENT_RE);\n const IDENT_RE = regex.concat(RAW_IDENTIFIER, hljs.IDENT_RE);\n // ============================================\n const FUNCTION_INVOKE = {\n className: \"title.function.invoke\",\n relevance: 0,\n begin: regex.concat(\n /\\b/,\n /(?!let|for|while|if|else|match\\b)/,\n IDENT_RE,\n regex.lookahead(/\\s*\\(/))\n };\n const NUMBER_SUFFIX = '([ui](8|16|32|64|128|size)|f(32|64))\\?';\n const KEYWORDS = [\n \"abstract\",\n \"as\",\n \"async\",\n \"await\",\n \"become\",\n \"box\",\n \"break\",\n \"const\",\n \"continue\",\n \"crate\",\n \"do\",\n \"dyn\",\n \"else\",\n \"enum\",\n \"extern\",\n \"false\",\n \"final\",\n \"fn\",\n \"for\",\n \"if\",\n \"impl\",\n \"in\",\n \"let\",\n \"loop\",\n \"macro\",\n \"match\",\n \"mod\",\n \"move\",\n \"mut\",\n \"override\",\n \"priv\",\n \"pub\",\n \"ref\",\n \"return\",\n \"self\",\n \"Self\",\n \"static\",\n \"struct\",\n \"super\",\n \"trait\",\n \"true\",\n \"try\",\n \"type\",\n \"typeof\",\n \"union\",\n \"unsafe\",\n \"unsized\",\n \"use\",\n \"virtual\",\n \"where\",\n \"while\",\n \"yield\"\n ];\n const LITERALS = [\n \"true\",\n \"false\",\n \"Some\",\n \"None\",\n \"Ok\",\n \"Err\"\n ];\n const BUILTINS = [\n // functions\n 'drop ',\n // traits\n \"Copy\",\n \"Send\",\n \"Sized\",\n \"Sync\",\n \"Drop\",\n \"Fn\",\n \"FnMut\",\n \"FnOnce\",\n \"ToOwned\",\n \"Clone\",\n \"Debug\",\n \"PartialEq\",\n \"PartialOrd\",\n \"Eq\",\n \"Ord\",\n \"AsRef\",\n \"AsMut\",\n \"Into\",\n \"From\",\n \"Default\",\n \"Iterator\",\n \"Extend\",\n \"IntoIterator\",\n \"DoubleEndedIterator\",\n \"ExactSizeIterator\",\n \"SliceConcatExt\",\n \"ToString\",\n // macros\n \"assert!\",\n \"assert_eq!\",\n \"bitflags!\",\n \"bytes!\",\n \"cfg!\",\n \"col!\",\n \"concat!\",\n \"concat_idents!\",\n \"debug_assert!\",\n \"debug_assert_eq!\",\n \"env!\",\n \"eprintln!\",\n \"panic!\",\n \"file!\",\n \"format!\",\n \"format_args!\",\n \"include_bytes!\",\n \"include_str!\",\n \"line!\",\n \"local_data_key!\",\n \"module_path!\",\n \"option_env!\",\n \"print!\",\n \"println!\",\n \"select!\",\n \"stringify!\",\n \"try!\",\n \"unimplemented!\",\n \"unreachable!\",\n \"vec!\",\n \"write!\",\n \"writeln!\",\n \"macro_rules!\",\n \"assert_ne!\",\n \"debug_assert_ne!\"\n ];\n const TYPES = [\n \"i8\",\n \"i16\",\n \"i32\",\n \"i64\",\n \"i128\",\n \"isize\",\n \"u8\",\n \"u16\",\n \"u32\",\n \"u64\",\n \"u128\",\n \"usize\",\n \"f32\",\n \"f64\",\n \"str\",\n \"char\",\n \"bool\",\n \"Box\",\n \"Option\",\n \"Result\",\n \"String\",\n \"Vec\"\n ];\n return {\n name: 'Rust',\n aliases: [ 'rs' ],\n keywords: {\n $pattern: hljs.IDENT_RE + '!?',\n type: TYPES,\n keyword: KEYWORDS,\n literal: LITERALS,\n built_in: BUILTINS\n },\n illegal: '</',\n contains: [\n hljs.C_LINE_COMMENT_MODE,\n hljs.COMMENT('/\\\\*', '\\\\*/', { contains: [ 'self' ] }),\n hljs.inherit(hljs.QUOTE_STRING_MODE, {\n begin: /b?\"/,\n illegal: null\n }),\n {\n className: 'symbol',\n // negative lookahead to avoid matching `'`\n begin: /'[a-zA-Z_][a-zA-Z0-9_]*(?!')/\n },\n {\n scope: 'string',\n variants: [\n { begin: /b?r(#*)\"(.|\\n)*?\"\\1(?!#)/ },\n {\n begin: /b?'/,\n end: /'/,\n contains: [\n {\n scope: \"char.escape\",\n match: /\\\\('|\\w|x\\w{2}|u\\w{4}|U\\w{8})/\n }\n ]\n }\n ]\n },\n {\n className: 'number',\n variants: [\n { begin: '\\\\b0b([01_]+)' + NUMBER_SUFFIX },\n { begin: '\\\\b0o([0-7_]+)' + NUMBER_SUFFIX },\n { begin: '\\\\b0x([A-Fa-f0-9_]+)' + NUMBER_SUFFIX },\n { begin: '\\\\b(\\\\d[\\\\d_]*(\\\\.[0-9_]+)?([eE][+-]?[0-9_]+)?)'\n + NUMBER_SUFFIX }\n ],\n relevance: 0\n },\n {\n begin: [\n /fn/,\n /\\s+/,\n UNDERSCORE_IDENT_RE\n ],\n className: {\n 1: \"keyword\",\n 3: \"title.function\"\n }\n },\n {\n className: 'meta',\n begin: '#!?\\\\[',\n end: '\\\\]',\n contains: [\n {\n className: 'string',\n begin: /\"/,\n end: /\"/,\n contains: [\n hljs.BACKSLASH_ESCAPE\n ]\n }\n ]\n },\n {\n begin: [\n /let/,\n /\\s+/,\n /(?:mut\\s+)?/,\n UNDERSCORE_IDENT_RE\n ],\n className: {\n 1: \"keyword\",\n 3: \"keyword\",\n 4: \"variable\"\n }\n },\n // must come before impl/for rule later\n {\n begin: [\n /for/,\n /\\s+/,\n UNDERSCORE_IDENT_RE,\n /\\s+/,\n /in/\n ],\n className: {\n 1: \"keyword\",\n 3: \"variable\",\n 5: \"keyword\"\n }\n },\n {\n begin: [\n /type/,\n /\\s+/,\n UNDERSCORE_IDENT_RE\n ],\n className: {\n 1: \"keyword\",\n 3: \"title.class\"\n }\n },\n {\n begin: [\n /(?:trait|enum|struct|union|impl|for)/,\n /\\s+/,\n UNDERSCORE_IDENT_RE\n ],\n className: {\n 1: \"keyword\",\n 3: \"title.class\"\n }\n },\n {\n begin: hljs.IDENT_RE + '::',\n keywords: {\n keyword: \"Self\",\n built_in: BUILTINS,\n type: TYPES\n }\n },\n {\n className: \"punctuation\",\n begin: '->'\n },\n FUNCTION_INVOKE\n ]\n };\n}\n\nmodule.exports = rust;\n","/*\nLanguage: PHP\nAuthor: Victor Karamzin <Victor.Karamzin@enterra-inc.com>\nContributors: Evgeny Stepanischev <imbolk@gmail.com>, Ivan Sagalaev <maniac@softwaremaniacs.org>\nWebsite: https://www.php.net\nCategory: common\n*/\n\n/**\n * @param {HLJSApi} hljs\n * @returns {LanguageDetail}\n * */\nfunction php(hljs) {\n const regex = hljs.regex;\n // negative look-ahead tries to avoid matching patterns that are not\n // Perl at all like $ident$, @ident@, etc.\n const NOT_PERL_ETC = /(?![A-Za-z0-9])(?![$])/;\n const IDENT_RE = regex.concat(\n /[a-zA-Z_\\x7f-\\xff][a-zA-Z0-9_\\x7f-\\xff]*/,\n NOT_PERL_ETC);\n // Will not detect camelCase classes\n const PASCAL_CASE_CLASS_NAME_RE = regex.concat(\n /(\\\\?[A-Z][a-z0-9_\\x7f-\\xff]+|\\\\?[A-Z]+(?=[A-Z][a-z0-9_\\x7f-\\xff])){1,}/,\n NOT_PERL_ETC);\n const UPCASE_NAME_RE = regex.concat(\n /[A-Z]+/,\n NOT_PERL_ETC);\n const VARIABLE = {\n scope: 'variable',\n match: '\\\\$+' + IDENT_RE,\n };\n const PREPROCESSOR = {\n scope: \"meta\",\n variants: [\n { begin: /<\\?php/, relevance: 10 }, // boost for obvious PHP\n { begin: /<\\?=/ },\n // less relevant per PSR-1 which says not to use short-tags\n { begin: /<\\?/, relevance: 0.1 },\n { begin: /\\?>/ } // end php tag\n ]\n };\n const SUBST = {\n scope: 'subst',\n variants: [\n { begin: /\\$\\w+/ },\n {\n begin: /\\{\\$/,\n end: /\\}/\n }\n ]\n };\n const SINGLE_QUOTED = hljs.inherit(hljs.APOS_STRING_MODE, { illegal: null, });\n const DOUBLE_QUOTED = hljs.inherit(hljs.QUOTE_STRING_MODE, {\n illegal: null,\n contains: hljs.QUOTE_STRING_MODE.contains.concat(SUBST),\n });\n\n const HEREDOC = {\n begin: /<<<[ \\t]*(?:(\\w+)|\"(\\w+)\")\\n/,\n end: /[ \\t]*(\\w+)\\b/,\n contains: hljs.QUOTE_STRING_MODE.contains.concat(SUBST),\n 'on:begin': (m, resp) => { resp.data._beginMatch = m[1] || m[2]; },\n 'on:end': (m, resp) => { if (resp.data._beginMatch !== m[1]) resp.ignoreMatch(); },\n };\n\n const NOWDOC = hljs.END_SAME_AS_BEGIN({\n begin: /<<<[ \\t]*'(\\w+)'\\n/,\n end: /[ \\t]*(\\w+)\\b/,\n });\n // list of valid whitespaces because non-breaking space might be part of a IDENT_RE\n const WHITESPACE = '[ \\t\\n]';\n const STRING = {\n scope: 'string',\n variants: [\n DOUBLE_QUOTED,\n SINGLE_QUOTED,\n HEREDOC,\n NOWDOC\n ]\n };\n const NUMBER = {\n scope: 'number',\n variants: [\n { begin: `\\\\b0[bB][01]+(?:_[01]+)*\\\\b` }, // Binary w/ underscore support\n { begin: `\\\\b0[oO][0-7]+(?:_[0-7]+)*\\\\b` }, // Octals w/ underscore support\n { begin: `\\\\b0[xX][\\\\da-fA-F]+(?:_[\\\\da-fA-F]+)*\\\\b` }, // Hex w/ underscore support\n // Decimals w/ underscore support, with optional fragments and scientific exponent (e) suffix.\n { begin: `(?:\\\\b\\\\d+(?:_\\\\d+)*(\\\\.(?:\\\\d+(?:_\\\\d+)*))?|\\\\B\\\\.\\\\d+)(?:[eE][+-]?\\\\d+)?` }\n ],\n relevance: 0\n };\n const LITERALS = [\n \"false\",\n \"null\",\n \"true\"\n ];\n const KWS = [\n // Magic constants:\n // <https://www.php.net/manual/en/language.constants.predefined.php>\n \"__CLASS__\",\n \"__DIR__\",\n \"__FILE__\",\n \"__FUNCTION__\",\n \"__COMPILER_HALT_OFFSET__\",\n \"__LINE__\",\n \"__METHOD__\",\n \"__NAMESPACE__\",\n \"__TRAIT__\",\n // Function that look like language construct or language construct that look like function:\n // List of keywords that may not require parenthesis\n \"die\",\n \"echo\",\n \"exit\",\n \"include\",\n \"include_once\",\n \"print\",\n \"require\",\n \"require_once\",\n // These are not language construct (function) but operate on the currently-executing function and can access the current symbol table\n // 'compact extract func_get_arg func_get_args func_num_args get_called_class get_parent_class ' +\n // Other keywords:\n // <https://www.php.net/manual/en/reserved.php>\n // <https://www.php.net/manual/en/language.types.type-juggling.php>\n \"array\",\n \"abstract\",\n \"and\",\n \"as\",\n \"binary\",\n \"bool\",\n \"boolean\",\n \"break\",\n \"callable\",\n \"case\",\n \"catch\",\n \"class\",\n \"clone\",\n \"const\",\n \"continue\",\n \"declare\",\n \"default\",\n \"do\",\n \"double\",\n \"else\",\n \"elseif\",\n \"empty\",\n \"enddeclare\",\n \"endfor\",\n \"endforeach\",\n \"endif\",\n \"endswitch\",\n \"endwhile\",\n \"enum\",\n \"eval\",\n \"extends\",\n \"final\",\n \"finally\",\n \"float\",\n \"for\",\n \"foreach\",\n \"from\",\n \"global\",\n \"goto\",\n \"if\",\n \"implements\",\n \"instanceof\",\n \"insteadof\",\n \"int\",\n \"integer\",\n \"interface\",\n \"isset\",\n \"iterable\",\n \"list\",\n \"match|0\",\n \"mixed\",\n \"new\",\n \"never\",\n \"object\",\n \"or\",\n \"private\",\n \"protected\",\n \"public\",\n \"readonly\",\n \"real\",\n \"return\",\n \"string\",\n \"switch\",\n \"throw\",\n \"trait\",\n \"try\",\n \"unset\",\n \"use\",\n \"var\",\n \"void\",\n \"while\",\n \"xor\",\n \"yield\"\n ];\n\n const BUILT_INS = [\n // Standard PHP library:\n // <https://www.php.net/manual/en/book.spl.php>\n \"Error|0\",\n \"AppendIterator\",\n \"ArgumentCountError\",\n \"ArithmeticError\",\n \"ArrayIterator\",\n \"ArrayObject\",\n \"AssertionError\",\n \"BadFunctionCallException\",\n \"BadMethodCallException\",\n \"CachingIterator\",\n \"CallbackFilterIterator\",\n \"CompileError\",\n \"Countable\",\n \"DirectoryIterator\",\n \"DivisionByZeroError\",\n \"DomainException\",\n \"EmptyIterator\",\n \"ErrorException\",\n \"Exception\",\n \"FilesystemIterator\",\n \"FilterIterator\",\n \"GlobIterator\",\n \"InfiniteIterator\",\n \"InvalidArgumentException\",\n \"IteratorIterator\",\n \"LengthException\",\n \"LimitIterator\",\n \"LogicException\",\n \"MultipleIterator\",\n \"NoRewindIterator\",\n \"OutOfBoundsException\",\n \"OutOfRangeException\",\n \"OuterIterator\",\n \"OverflowException\",\n \"ParentIterator\",\n \"ParseError\",\n \"RangeException\",\n \"RecursiveArrayIterator\",\n \"RecursiveCachingIterator\",\n \"RecursiveCallbackFilterIterator\",\n \"RecursiveDirectoryIterator\",\n \"RecursiveFilterIterator\",\n \"RecursiveIterator\",\n \"RecursiveIteratorIterator\",\n \"RecursiveRegexIterator\",\n \"RecursiveTreeIterator\",\n \"RegexIterator\",\n \"RuntimeException\",\n \"SeekableIterator\",\n \"SplDoublyLinkedList\",\n \"SplFileInfo\",\n \"SplFileObject\",\n \"SplFixedArray\",\n \"SplHeap\",\n \"SplMaxHeap\",\n \"SplMinHeap\",\n \"SplObjectStorage\",\n \"SplObserver\",\n \"SplPriorityQueue\",\n \"SplQueue\",\n \"SplStack\",\n \"SplSubject\",\n \"SplTempFileObject\",\n \"TypeError\",\n \"UnderflowException\",\n \"UnexpectedValueException\",\n \"UnhandledMatchError\",\n // Reserved interfaces:\n // <https://www.php.net/manual/en/reserved.interfaces.php>\n \"ArrayAccess\",\n \"BackedEnum\",\n \"Closure\",\n \"Fiber\",\n \"Generator\",\n \"Iterator\",\n \"IteratorAggregate\",\n \"Serializable\",\n \"Stringable\",\n \"Throwable\",\n \"Traversable\",\n \"UnitEnum\",\n \"WeakReference\",\n \"WeakMap\",\n // Reserved classes:\n // <https://www.php.net/manual/en/reserved.classes.php>\n \"Directory\",\n \"__PHP_Incomplete_Class\",\n \"parent\",\n \"php_user_filter\",\n \"self\",\n \"static\",\n \"stdClass\"\n ];\n\n /** Dual-case keywords\n *\n * [\"then\",\"FILE\"] =>\n * [\"then\", \"THEN\", \"FILE\", \"file\"]\n *\n * @param {string[]} items */\n const dualCase = (items) => {\n /** @type string[] */\n const result = [];\n items.forEach(item => {\n result.push(item);\n if (item.toLowerCase() === item) {\n result.push(item.toUpperCase());\n } else {\n result.push(item.toLowerCase());\n }\n });\n return result;\n };\n\n const KEYWORDS = {\n keyword: KWS,\n literal: dualCase(LITERALS),\n built_in: BUILT_INS,\n };\n\n /**\n * @param {string[]} items */\n const normalizeKeywords = (items) => {\n return items.map(item => {\n return item.replace(/\\|\\d+$/, \"\");\n });\n };\n\n const CONSTRUCTOR_CALL = { variants: [\n {\n match: [\n /new/,\n regex.concat(WHITESPACE, \"+\"),\n // to prevent built ins from being confused as the class constructor call\n regex.concat(\"(?!\", normalizeKeywords(BUILT_INS).join(\"\\\\b|\"), \"\\\\b)\"),\n PASCAL_CASE_CLASS_NAME_RE,\n ],\n scope: {\n 1: \"keyword\",\n 4: \"title.class\",\n },\n }\n ] };\n\n const CONSTANT_REFERENCE = regex.concat(IDENT_RE, \"\\\\b(?!\\\\()\");\n\n const LEFT_AND_RIGHT_SIDE_OF_DOUBLE_COLON = { variants: [\n {\n match: [\n regex.concat(\n /::/,\n regex.lookahead(/(?!class\\b)/)\n ),\n CONSTANT_REFERENCE,\n ],\n scope: { 2: \"variable.constant\", },\n },\n {\n match: [\n /::/,\n /class/,\n ],\n scope: { 2: \"variable.language\", },\n },\n {\n match: [\n PASCAL_CASE_CLASS_NAME_RE,\n regex.concat(\n /::/,\n regex.lookahead(/(?!class\\b)/)\n ),\n CONSTANT_REFERENCE,\n ],\n scope: {\n 1: \"title.class\",\n 3: \"variable.constant\",\n },\n },\n {\n match: [\n PASCAL_CASE_CLASS_NAME_RE,\n regex.concat(\n \"::\",\n regex.lookahead(/(?!class\\b)/)\n ),\n ],\n scope: { 1: \"title.class\", },\n },\n {\n match: [\n PASCAL_CASE_CLASS_NAME_RE,\n /::/,\n /class/,\n ],\n scope: {\n 1: \"title.class\",\n 3: \"variable.language\",\n },\n }\n ] };\n\n const NAMED_ARGUMENT = {\n scope: 'attr',\n match: regex.concat(IDENT_RE, regex.lookahead(':'), regex.lookahead(/(?!::)/)),\n };\n const PARAMS_MODE = {\n relevance: 0,\n begin: /\\(/,\n end: /\\)/,\n keywords: KEYWORDS,\n contains: [\n NAMED_ARGUMENT,\n VARIABLE,\n LEFT_AND_RIGHT_SIDE_OF_DOUBLE_COLON,\n hljs.C_BLOCK_COMMENT_MODE,\n hljs.C_LINE_COMMENT_MODE,\n hljs.HASH_COMMENT_MODE,\n STRING,\n NUMBER,\n CONSTRUCTOR_CALL,\n ],\n };\n const FUNCTION_INVOKE = {\n relevance: 0,\n match: [\n /\\b/,\n // to prevent keywords from being confused as the function title\n regex.concat(\"(?!fn\\\\b|function\\\\b|\", normalizeKeywords(KWS).join(\"\\\\b|\"), \"|\", normalizeKeywords(BUILT_INS).join(\"\\\\b|\"), \"\\\\b)\"),\n IDENT_RE,\n regex.concat(WHITESPACE, \"*\"),\n regex.lookahead(/(?=\\()/)\n ],\n scope: { 3: \"title.function.invoke\", },\n contains: [ PARAMS_MODE ]\n };\n PARAMS_MODE.contains.push(FUNCTION_INVOKE);\n\n const ATTRIBUTE_CONTAINS = [\n NAMED_ARGUMENT,\n LEFT_AND_RIGHT_SIDE_OF_DOUBLE_COLON,\n hljs.C_BLOCK_COMMENT_MODE,\n hljs.C_LINE_COMMENT_MODE,\n hljs.HASH_COMMENT_MODE,\n STRING,\n NUMBER,\n CONSTRUCTOR_CALL,\n ];\n\n const ATTRIBUTES = {\n begin: regex.concat(/#\\[\\s*\\\\?/,\n regex.either(\n PASCAL_CASE_CLASS_NAME_RE,\n UPCASE_NAME_RE\n )\n ),\n beginScope: \"meta\",\n end: /]/,\n endScope: \"meta\",\n keywords: {\n literal: LITERALS,\n keyword: [\n 'new',\n 'array',\n ]\n },\n contains: [\n {\n begin: /\\[/,\n end: /]/,\n keywords: {\n literal: LITERALS,\n keyword: [\n 'new',\n 'array',\n ]\n },\n contains: [\n 'self',\n ...ATTRIBUTE_CONTAINS,\n ]\n },\n ...ATTRIBUTE_CONTAINS,\n {\n scope: 'meta',\n variants: [\n { match: PASCAL_CASE_CLASS_NAME_RE },\n { match: UPCASE_NAME_RE }\n ]\n }\n ]\n };\n\n return {\n case_insensitive: false,\n keywords: KEYWORDS,\n contains: [\n ATTRIBUTES,\n hljs.HASH_COMMENT_MODE,\n hljs.COMMENT('//', '$'),\n hljs.COMMENT(\n '/\\\\*',\n '\\\\*/',\n { contains: [\n {\n scope: 'doctag',\n match: '@[A-Za-z]+'\n }\n ] }\n ),\n {\n match: /__halt_compiler\\(\\);/,\n keywords: '__halt_compiler',\n starts: {\n scope: \"comment\",\n end: hljs.MATCH_NOTHING_RE,\n contains: [\n {\n match: /\\?>/,\n scope: \"meta\",\n endsParent: true\n }\n ]\n }\n },\n PREPROCESSOR,\n {\n scope: 'variable.language',\n match: /\\$this\\b/\n },\n VARIABLE,\n FUNCTION_INVOKE,\n LEFT_AND_RIGHT_SIDE_OF_DOUBLE_COLON,\n {\n match: [\n /const/,\n /\\s/,\n IDENT_RE,\n ],\n scope: {\n 1: \"keyword\",\n 3: \"variable.constant\",\n },\n },\n CONSTRUCTOR_CALL,\n {\n scope: 'function',\n relevance: 0,\n beginKeywords: 'fn function',\n end: /[;{]/,\n excludeEnd: true,\n illegal: '[$%\\\\[]',\n contains: [\n { beginKeywords: 'use', },\n hljs.UNDERSCORE_TITLE_MODE,\n {\n begin: '=>', // No markup, just a relevance booster\n endsParent: true\n },\n {\n scope: 'params',\n begin: '\\\\(',\n end: '\\\\)',\n excludeBegin: true,\n excludeEnd: true,\n keywords: KEYWORDS,\n contains: [\n 'self',\n ATTRIBUTES,\n VARIABLE,\n LEFT_AND_RIGHT_SIDE_OF_DOUBLE_COLON,\n hljs.C_BLOCK_COMMENT_MODE,\n hljs.C_LINE_COMMENT_MODE,\n hljs.HASH_COMMENT_MODE,\n STRING,\n NUMBER\n ]\n },\n ]\n },\n {\n scope: 'class',\n variants: [\n {\n beginKeywords: \"enum\",\n illegal: /[($\"]/\n },\n {\n beginKeywords: \"class interface trait\",\n illegal: /[:($\"]/\n }\n ],\n relevance: 0,\n end: /\\{/,\n excludeEnd: true,\n contains: [\n { beginKeywords: 'extends implements' },\n hljs.UNDERSCORE_TITLE_MODE\n ]\n },\n // both use and namespace still use \"old style\" rules (vs multi-match)\n // because the namespace name can include `\\` and we still want each\n // element to be treated as its own *individual* title\n {\n beginKeywords: 'namespace',\n relevance: 0,\n end: ';',\n illegal: /[.']/,\n contains: [ hljs.inherit(hljs.UNDERSCORE_TITLE_MODE, { scope: \"title.class\" }) ]\n },\n {\n beginKeywords: 'use',\n relevance: 0,\n end: ';',\n contains: [\n // TODO: title.function vs title.class\n {\n match: /\\b(as|const|function)\\b/,\n scope: \"keyword\"\n },\n // TODO: could be title.class or title.function\n hljs.UNDERSCORE_TITLE_MODE\n ]\n },\n STRING,\n NUMBER,\n ]\n };\n}\n\nmodule.exports = php;\n","/*\nLanguage: Ruby\nDescription: Ruby is a dynamic, open source programming language with a focus on simplicity and productivity.\nWebsite: https://www.ruby-lang.org/\nAuthor: Anton Kovalyov <anton@kovalyov.net>\nContributors: Peter Leonov <gojpeg@yandex.ru>, Vasily Polovnyov <vast@whiteants.net>, Loren Segal <lsegal@soen.ca>, Pascal Hurni <phi@ruby-reactive.org>, Cedric Sohrauer <sohrauer@googlemail.com>\nCategory: common, scripting\n*/\n\nfunction ruby(hljs) {\n const regex = hljs.regex;\n const RUBY_METHOD_RE = '([a-zA-Z_]\\\\w*[!?=]?|[-+~]@|<<|>>|=~|===?|<=>|[<>]=?|\\\\*\\\\*|[-/+%^&*~`|]|\\\\[\\\\]=?)';\n // TODO: move concepts like CAMEL_CASE into `modes.js`\n const CLASS_NAME_RE = regex.either(\n /\\b([A-Z]+[a-z0-9]+)+/,\n // ends in caps\n /\\b([A-Z]+[a-z0-9]+)+[A-Z]+/,\n )\n ;\n const CLASS_NAME_WITH_NAMESPACE_RE = regex.concat(CLASS_NAME_RE, /(::\\w+)*/);\n // very popular ruby built-ins that one might even assume\n // are actual keywords (despite that not being the case)\n const PSEUDO_KWS = [\n \"include\",\n \"extend\",\n \"prepend\",\n \"public\",\n \"private\",\n \"protected\",\n \"raise\",\n \"throw\"\n ];\n const RUBY_KEYWORDS = {\n \"variable.constant\": [\n \"__FILE__\",\n \"__LINE__\",\n \"__ENCODING__\"\n ],\n \"variable.language\": [\n \"self\",\n \"super\",\n ],\n keyword: [\n \"alias\",\n \"and\",\n \"begin\",\n \"BEGIN\",\n \"break\",\n \"case\",\n \"class\",\n \"defined\",\n \"do\",\n \"else\",\n \"elsif\",\n \"end\",\n \"END\",\n \"ensure\",\n \"for\",\n \"if\",\n \"in\",\n \"module\",\n \"next\",\n \"not\",\n \"or\",\n \"redo\",\n \"require\",\n \"rescue\",\n \"retry\",\n \"return\",\n \"then\",\n \"undef\",\n \"unless\",\n \"until\",\n \"when\",\n \"while\",\n \"yield\",\n ...PSEUDO_KWS\n ],\n built_in: [\n \"proc\",\n \"lambda\",\n \"attr_accessor\",\n \"attr_reader\",\n \"attr_writer\",\n \"define_method\",\n \"private_constant\",\n \"module_function\"\n ],\n literal: [\n \"true\",\n \"false\",\n \"nil\"\n ]\n };\n const YARDOCTAG = {\n className: 'doctag',\n begin: '@[A-Za-z]+'\n };\n const IRB_OBJECT = {\n begin: '#<',\n end: '>'\n };\n const COMMENT_MODES = [\n hljs.COMMENT(\n '#',\n '$',\n { contains: [ YARDOCTAG ] }\n ),\n hljs.COMMENT(\n '^=begin',\n '^=end',\n {\n contains: [ YARDOCTAG ],\n relevance: 10\n }\n ),\n hljs.COMMENT('^__END__', hljs.MATCH_NOTHING_RE)\n ];\n const SUBST = {\n className: 'subst',\n begin: /#\\{/,\n end: /\\}/,\n keywords: RUBY_KEYWORDS\n };\n const STRING = {\n className: 'string',\n contains: [\n hljs.BACKSLASH_ESCAPE,\n SUBST\n ],\n variants: [\n {\n begin: /'/,\n end: /'/\n },\n {\n begin: /\"/,\n end: /\"/\n },\n {\n begin: /`/,\n end: /`/\n },\n {\n begin: /%[qQwWx]?\\(/,\n end: /\\)/\n },\n {\n begin: /%[qQwWx]?\\[/,\n end: /\\]/\n },\n {\n begin: /%[qQwWx]?\\{/,\n end: /\\}/\n },\n {\n begin: /%[qQwWx]?</,\n end: />/\n },\n {\n begin: /%[qQwWx]?\\//,\n end: /\\//\n },\n {\n begin: /%[qQwWx]?%/,\n end: /%/\n },\n {\n begin: /%[qQwWx]?-/,\n end: /-/\n },\n {\n begin: /%[qQwWx]?\\|/,\n end: /\\|/\n },\n // in the following expressions, \\B in the beginning suppresses recognition of ?-sequences\n // where ? is the last character of a preceding identifier, as in: `func?4`\n { begin: /\\B\\?(\\\\\\d{1,3})/ },\n { begin: /\\B\\?(\\\\x[A-Fa-f0-9]{1,2})/ },\n { begin: /\\B\\?(\\\\u\\{?[A-Fa-f0-9]{1,6}\\}?)/ },\n { begin: /\\B\\?(\\\\M-\\\\C-|\\\\M-\\\\c|\\\\c\\\\M-|\\\\M-|\\\\C-\\\\M-)[\\x20-\\x7e]/ },\n { begin: /\\B\\?\\\\(c|C-)[\\x20-\\x7e]/ },\n { begin: /\\B\\?\\\\?\\S/ },\n // heredocs\n {\n // this guard makes sure that we have an entire heredoc and not a false\n // positive (auto-detect, etc.)\n begin: regex.concat(\n /<<[-~]?'?/,\n regex.lookahead(/(\\w+)(?=\\W)[^\\n]*\\n(?:[^\\n]*\\n)*?\\s*\\1\\b/)\n ),\n contains: [\n hljs.END_SAME_AS_BEGIN({\n begin: /(\\w+)/,\n end: /(\\w+)/,\n contains: [\n hljs.BACKSLASH_ESCAPE,\n SUBST\n ]\n })\n ]\n }\n ]\n };\n\n // Ruby syntax is underdocumented, but this grammar seems to be accurate\n // as of version 2.7.2 (confirmed with (irb and `Ripper.sexp(...)`)\n // https://docs.ruby-lang.org/en/2.7.0/doc/syntax/literals_rdoc.html#label-Numbers\n const decimal = '[1-9](_?[0-9])*|0';\n const digits = '[0-9](_?[0-9])*';\n const NUMBER = {\n className: 'number',\n relevance: 0,\n variants: [\n // decimal integer/float, optionally exponential or rational, optionally imaginary\n { begin: `\\\\b(${decimal})(\\\\.(${digits}))?([eE][+-]?(${digits})|r)?i?\\\\b` },\n\n // explicit decimal/binary/octal/hexadecimal integer,\n // optionally rational and/or imaginary\n { begin: \"\\\\b0[dD][0-9](_?[0-9])*r?i?\\\\b\" },\n { begin: \"\\\\b0[bB][0-1](_?[0-1])*r?i?\\\\b\" },\n { begin: \"\\\\b0[oO][0-7](_?[0-7])*r?i?\\\\b\" },\n { begin: \"\\\\b0[xX][0-9a-fA-F](_?[0-9a-fA-F])*r?i?\\\\b\" },\n\n // 0-prefixed implicit octal integer, optionally rational and/or imaginary\n { begin: \"\\\\b0(_?[0-7])+r?i?\\\\b\" }\n ]\n };\n\n const PARAMS = {\n variants: [\n {\n match: /\\(\\)/,\n },\n {\n className: 'params',\n begin: /\\(/,\n end: /(?=\\))/,\n excludeBegin: true,\n endsParent: true,\n keywords: RUBY_KEYWORDS,\n }\n ]\n };\n\n const INCLUDE_EXTEND = {\n match: [\n /(include|extend)\\s+/,\n CLASS_NAME_WITH_NAMESPACE_RE\n ],\n scope: {\n 2: \"title.class\"\n },\n keywords: RUBY_KEYWORDS\n };\n\n const CLASS_DEFINITION = {\n variants: [\n {\n match: [\n /class\\s+/,\n CLASS_NAME_WITH_NAMESPACE_RE,\n /\\s+<\\s+/,\n CLASS_NAME_WITH_NAMESPACE_RE\n ]\n },\n {\n match: [\n /\\b(class|module)\\s+/,\n CLASS_NAME_WITH_NAMESPACE_RE\n ]\n }\n ],\n scope: {\n 2: \"title.class\",\n 4: \"title.class.inherited\"\n },\n keywords: RUBY_KEYWORDS\n };\n\n const UPPER_CASE_CONSTANT = {\n relevance: 0,\n match: /\\b[A-Z][A-Z_0-9]+\\b/,\n className: \"variable.constant\"\n };\n\n const METHOD_DEFINITION = {\n match: [\n /def/, /\\s+/,\n RUBY_METHOD_RE\n ],\n scope: {\n 1: \"keyword\",\n 3: \"title.function\"\n },\n contains: [\n PARAMS\n ]\n };\n\n const OBJECT_CREATION = {\n relevance: 0,\n match: [\n CLASS_NAME_WITH_NAMESPACE_RE,\n /\\.new[. (]/\n ],\n scope: {\n 1: \"title.class\"\n }\n };\n\n // CamelCase\n const CLASS_REFERENCE = {\n relevance: 0,\n match: CLASS_NAME_RE,\n scope: \"title.class\"\n };\n\n const RUBY_DEFAULT_CONTAINS = [\n STRING,\n CLASS_DEFINITION,\n INCLUDE_EXTEND,\n OBJECT_CREATION,\n UPPER_CASE_CONSTANT,\n CLASS_REFERENCE,\n METHOD_DEFINITION,\n {\n // swallow namespace qualifiers before symbols\n begin: hljs.IDENT_RE + '::' },\n {\n className: 'symbol',\n begin: hljs.UNDERSCORE_IDENT_RE + '(!|\\\\?)?:',\n relevance: 0\n },\n {\n className: 'symbol',\n begin: ':(?!\\\\s)',\n contains: [\n STRING,\n { begin: RUBY_METHOD_RE }\n ],\n relevance: 0\n },\n NUMBER,\n {\n // negative-look forward attempts to prevent false matches like:\n // @ident@ or $ident$ that might indicate this is not ruby at all\n className: \"variable\",\n begin: '(\\\\$\\\\W)|((\\\\$|@@?)(\\\\w+))(?=[^@$?])' + `(?![A-Za-z])(?![@$?'])`\n },\n {\n className: 'params',\n begin: /\\|(?!=)/,\n end: /\\|/,\n excludeBegin: true,\n excludeEnd: true,\n relevance: 0, // this could be a lot of things (in other languages) other than params\n keywords: RUBY_KEYWORDS\n },\n { // regexp container\n begin: '(' + hljs.RE_STARTERS_RE + '|unless)\\\\s*',\n keywords: 'unless',\n contains: [\n {\n className: 'regexp',\n contains: [\n hljs.BACKSLASH_ESCAPE,\n SUBST\n ],\n illegal: /\\n/,\n variants: [\n {\n begin: '/',\n end: '/[a-z]*'\n },\n {\n begin: /%r\\{/,\n end: /\\}[a-z]*/\n },\n {\n begin: '%r\\\\(',\n end: '\\\\)[a-z]*'\n },\n {\n begin: '%r!',\n end: '![a-z]*'\n },\n {\n begin: '%r\\\\[',\n end: '\\\\][a-z]*'\n }\n ]\n }\n ].concat(IRB_OBJECT, COMMENT_MODES),\n relevance: 0\n }\n ].concat(IRB_OBJECT, COMMENT_MODES);\n\n SUBST.contains = RUBY_DEFAULT_CONTAINS;\n PARAMS.contains = RUBY_DEFAULT_CONTAINS;\n\n // >>\n // ?>\n const SIMPLE_PROMPT = \"[>?]>\";\n // irb(main):001:0>\n const DEFAULT_PROMPT = \"[\\\\w#]+\\\\(\\\\w+\\\\):\\\\d+:\\\\d+[>*]\";\n const RVM_PROMPT = \"(\\\\w+-)?\\\\d+\\\\.\\\\d+\\\\.\\\\d+(p\\\\d+)?[^\\\\d][^>]+>\";\n\n const IRB_DEFAULT = [\n {\n begin: /^\\s*=>/,\n starts: {\n end: '$',\n contains: RUBY_DEFAULT_CONTAINS\n }\n },\n {\n className: 'meta.prompt',\n begin: '^(' + SIMPLE_PROMPT + \"|\" + DEFAULT_PROMPT + '|' + RVM_PROMPT + ')(?=[ ])',\n starts: {\n end: '$',\n keywords: RUBY_KEYWORDS,\n contains: RUBY_DEFAULT_CONTAINS\n }\n }\n ];\n\n COMMENT_MODES.unshift(IRB_OBJECT);\n\n return {\n name: 'Ruby',\n aliases: [\n 'rb',\n 'gemspec',\n 'podspec',\n 'thor',\n 'irb'\n ],\n keywords: RUBY_KEYWORDS,\n illegal: /\\/\\*/,\n contains: [ hljs.SHEBANG({ binary: \"ruby\" }) ]\n .concat(IRB_DEFAULT)\n .concat(COMMENT_MODES)\n .concat(RUBY_DEFAULT_CONTAINS)\n };\n}\n\nmodule.exports = ruby;\n","// https://docs.oracle.com/javase/specs/jls/se15/html/jls-3.html#jls-3.10\nvar decimalDigits = '[0-9](_*[0-9])*';\nvar frac = `\\\\.(${decimalDigits})`;\nvar hexDigits = '[0-9a-fA-F](_*[0-9a-fA-F])*';\nvar NUMERIC = {\n className: 'number',\n variants: [\n // DecimalFloatingPointLiteral\n // including ExponentPart\n { begin: `(\\\\b(${decimalDigits})((${frac})|\\\\.)?|(${frac}))` +\n `[eE][+-]?(${decimalDigits})[fFdD]?\\\\b` },\n // excluding ExponentPart\n { begin: `\\\\b(${decimalDigits})((${frac})[fFdD]?\\\\b|\\\\.([fFdD]\\\\b)?)` },\n { begin: `(${frac})[fFdD]?\\\\b` },\n { begin: `\\\\b(${decimalDigits})[fFdD]\\\\b` },\n\n // HexadecimalFloatingPointLiteral\n { begin: `\\\\b0[xX]((${hexDigits})\\\\.?|(${hexDigits})?\\\\.(${hexDigits}))` +\n `[pP][+-]?(${decimalDigits})[fFdD]?\\\\b` },\n\n // DecimalIntegerLiteral\n { begin: '\\\\b(0|[1-9](_*[0-9])*)[lL]?\\\\b' },\n\n // HexIntegerLiteral\n { begin: `\\\\b0[xX](${hexDigits})[lL]?\\\\b` },\n\n // OctalIntegerLiteral\n { begin: '\\\\b0(_*[0-7])*[lL]?\\\\b' },\n\n // BinaryIntegerLiteral\n { begin: '\\\\b0[bB][01](_*[01])*[lL]?\\\\b' },\n ],\n relevance: 0\n};\n\n/*\n Language: Kotlin\n Description: Kotlin is an OSS statically typed programming language that targets the JVM, Android, JavaScript and Native.\n Author: Sergey Mashkov <cy6erGn0m@gmail.com>\n Website: https://kotlinlang.org\n Category: common\n */\n\n\nfunction kotlin(hljs) {\n const KEYWORDS = {\n keyword:\n 'abstract as val var vararg get set class object open private protected public noinline '\n + 'crossinline dynamic final enum if else do while for when throw try catch finally '\n + 'import package is in fun override companion reified inline lateinit init '\n + 'interface annotation data sealed internal infix operator out by constructor super '\n + 'tailrec where const inner suspend typealias external expect actual',\n built_in:\n 'Byte Short Char Int Long Boolean Float Double Void Unit Nothing',\n literal:\n 'true false null'\n };\n const KEYWORDS_WITH_LABEL = {\n className: 'keyword',\n begin: /\\b(break|continue|return|this)\\b/,\n starts: { contains: [\n {\n className: 'symbol',\n begin: /@\\w+/\n }\n ] }\n };\n const LABEL = {\n className: 'symbol',\n begin: hljs.UNDERSCORE_IDENT_RE + '@'\n };\n\n // for string templates\n const SUBST = {\n className: 'subst',\n begin: /\\$\\{/,\n end: /\\}/,\n contains: [ hljs.C_NUMBER_MODE ]\n };\n const VARIABLE = {\n className: 'variable',\n begin: '\\\\$' + hljs.UNDERSCORE_IDENT_RE\n };\n const STRING = {\n className: 'string',\n variants: [\n {\n begin: '\"\"\"',\n end: '\"\"\"(?=[^\"])',\n contains: [\n VARIABLE,\n SUBST\n ]\n },\n // Can't use built-in modes easily, as we want to use STRING in the meta\n // context as 'meta-string' and there's no syntax to remove explicitly set\n // classNames in built-in modes.\n {\n begin: '\\'',\n end: '\\'',\n illegal: /\\n/,\n contains: [ hljs.BACKSLASH_ESCAPE ]\n },\n {\n begin: '\"',\n end: '\"',\n illegal: /\\n/,\n contains: [\n hljs.BACKSLASH_ESCAPE,\n VARIABLE,\n SUBST\n ]\n }\n ]\n };\n SUBST.contains.push(STRING);\n\n const ANNOTATION_USE_SITE = {\n className: 'meta',\n begin: '@(?:file|property|field|get|set|receiver|param|setparam|delegate)\\\\s*:(?:\\\\s*' + hljs.UNDERSCORE_IDENT_RE + ')?'\n };\n const ANNOTATION = {\n className: 'meta',\n begin: '@' + hljs.UNDERSCORE_IDENT_RE,\n contains: [\n {\n begin: /\\(/,\n end: /\\)/,\n contains: [\n hljs.inherit(STRING, { className: 'string' }),\n \"self\"\n ]\n }\n ]\n };\n\n // https://kotlinlang.org/docs/reference/whatsnew11.html#underscores-in-numeric-literals\n // According to the doc above, the number mode of kotlin is the same as java 8,\n // so the code below is copied from java.js\n const KOTLIN_NUMBER_MODE = NUMERIC;\n const KOTLIN_NESTED_COMMENT = hljs.COMMENT(\n '/\\\\*', '\\\\*/',\n { contains: [ hljs.C_BLOCK_COMMENT_MODE ] }\n );\n const KOTLIN_PAREN_TYPE = { variants: [\n {\n className: 'type',\n begin: hljs.UNDERSCORE_IDENT_RE\n },\n {\n begin: /\\(/,\n end: /\\)/,\n contains: [] // defined later\n }\n ] };\n const KOTLIN_PAREN_TYPE2 = KOTLIN_PAREN_TYPE;\n KOTLIN_PAREN_TYPE2.variants[1].contains = [ KOTLIN_PAREN_TYPE ];\n KOTLIN_PAREN_TYPE.variants[1].contains = [ KOTLIN_PAREN_TYPE2 ];\n\n return {\n name: 'Kotlin',\n aliases: [\n 'kt',\n 'kts'\n ],\n keywords: KEYWORDS,\n contains: [\n hljs.COMMENT(\n '/\\\\*\\\\*',\n '\\\\*/',\n {\n relevance: 0,\n contains: [\n {\n className: 'doctag',\n begin: '@[A-Za-z]+'\n }\n ]\n }\n ),\n hljs.C_LINE_COMMENT_MODE,\n KOTLIN_NESTED_COMMENT,\n KEYWORDS_WITH_LABEL,\n LABEL,\n ANNOTATION_USE_SITE,\n ANNOTATION,\n {\n className: 'function',\n beginKeywords: 'fun',\n end: '[(]|$',\n returnBegin: true,\n excludeEnd: true,\n keywords: KEYWORDS,\n relevance: 5,\n contains: [\n {\n begin: hljs.UNDERSCORE_IDENT_RE + '\\\\s*\\\\(',\n returnBegin: true,\n relevance: 0,\n contains: [ hljs.UNDERSCORE_TITLE_MODE ]\n },\n {\n className: 'type',\n begin: /</,\n end: />/,\n keywords: 'reified',\n relevance: 0\n },\n {\n className: 'params',\n begin: /\\(/,\n end: /\\)/,\n endsParent: true,\n keywords: KEYWORDS,\n relevance: 0,\n contains: [\n {\n begin: /:/,\n end: /[=,\\/]/,\n endsWithParent: true,\n contains: [\n KOTLIN_PAREN_TYPE,\n hljs.C_LINE_COMMENT_MODE,\n KOTLIN_NESTED_COMMENT\n ],\n relevance: 0\n },\n hljs.C_LINE_COMMENT_MODE,\n KOTLIN_NESTED_COMMENT,\n ANNOTATION_USE_SITE,\n ANNOTATION,\n STRING,\n hljs.C_NUMBER_MODE\n ]\n },\n KOTLIN_NESTED_COMMENT\n ]\n },\n {\n begin: [\n /class|interface|trait/,\n /\\s+/,\n hljs.UNDERSCORE_IDENT_RE\n ],\n beginScope: {\n 3: \"title.class\"\n },\n keywords: 'class interface trait',\n end: /[:\\{(]|$/,\n excludeEnd: true,\n illegal: 'extends implements',\n contains: [\n { beginKeywords: 'public protected internal private constructor' },\n hljs.UNDERSCORE_TITLE_MODE,\n {\n className: 'type',\n begin: /</,\n end: />/,\n excludeBegin: true,\n excludeEnd: true,\n relevance: 0\n },\n {\n className: 'type',\n begin: /[,:]\\s*/,\n end: /[<\\(,){\\s]|$/,\n excludeBegin: true,\n returnEnd: true\n },\n ANNOTATION_USE_SITE,\n ANNOTATION\n ]\n },\n STRING,\n {\n className: 'meta',\n begin: \"^#!/usr/bin/env\",\n end: '$',\n illegal: '\\n'\n },\n KOTLIN_NUMBER_MODE\n ]\n };\n}\n\nmodule.exports = kotlin;\n","/*\nLanguage: YAML\nDescription: Yet Another Markdown Language\nAuthor: Stefan Wienert <stwienert@gmail.com>\nContributors: Carl Baxter <carl@cbax.tech>\nRequires: ruby.js\nWebsite: https://yaml.org\nCategory: common, config\n*/\nfunction yaml(hljs) {\n const LITERALS = 'true false yes no null';\n\n // YAML spec allows non-reserved URI characters in tags.\n const URI_CHARACTERS = '[\\\\w#;/?:@&=+$,.~*\\'()[\\\\]]+';\n\n // Define keys as starting with a word character\n // ...containing word chars, spaces, colons, forward-slashes, hyphens and periods\n // ...and ending with a colon followed immediately by a space, tab or newline.\n // The YAML spec allows for much more than this, but this covers most use-cases.\n const KEY = {\n className: 'attr',\n variants: [\n // added brackets support and special char support\n { begin: /[\\w*@][\\w*@ :()\\./-]*:(?=[ \\t]|$)/ },\n { // double quoted keys - with brackets and special char support\n begin: /\"[\\w*@][\\w*@ :()\\./-]*\":(?=[ \\t]|$)/ },\n { // single quoted keys - with brackets and special char support\n begin: /'[\\w*@][\\w*@ :()\\./-]*':(?=[ \\t]|$)/ },\n ]\n };\n \n const TEMPLATE_VARIABLES = {\n className: 'template-variable',\n variants: [\n { // jinja templates Ansible\n begin: /\\{\\{/,\n end: /\\}\\}/\n },\n { // Ruby i18n\n begin: /%\\{/,\n end: /\\}/\n }\n ]\n };\n\n const SINGLE_QUOTE_STRING = {\n className: 'string',\n relevance: 0,\n begin: /'/,\n end: /'/,\n contains: [\n {\n match: /''/,\n scope: 'char.escape',\n relevance: 0\n }\n ]\n };\n\n const STRING = {\n className: 'string',\n relevance: 0,\n variants: [\n {\n begin: /\"/,\n end: /\"/\n },\n { begin: /\\S+/ }\n ],\n contains: [\n hljs.BACKSLASH_ESCAPE,\n TEMPLATE_VARIABLES\n ]\n };\n\n // Strings inside of value containers (objects) can't contain braces,\n // brackets, or commas\n const CONTAINER_STRING = hljs.inherit(STRING, { variants: [\n {\n begin: /'/,\n end: /'/,\n contains: [\n {\n begin: /''/,\n relevance: 0\n }\n ]\n },\n {\n begin: /\"/,\n end: /\"/\n },\n { begin: /[^\\s,{}[\\]]+/ }\n ] });\n\n const DATE_RE = '[0-9]{4}(-[0-9][0-9]){0,2}';\n const TIME_RE = '([Tt \\\\t][0-9][0-9]?(:[0-9][0-9]){2})?';\n const FRACTION_RE = '(\\\\.[0-9]*)?';\n const ZONE_RE = '([ \\\\t])*(Z|[-+][0-9][0-9]?(:[0-9][0-9])?)?';\n const TIMESTAMP = {\n className: 'number',\n begin: '\\\\b' + DATE_RE + TIME_RE + FRACTION_RE + ZONE_RE + '\\\\b'\n };\n\n const VALUE_CONTAINER = {\n end: ',',\n endsWithParent: true,\n excludeEnd: true,\n keywords: LITERALS,\n relevance: 0\n };\n const OBJECT = {\n begin: /\\{/,\n end: /\\}/,\n contains: [ VALUE_CONTAINER ],\n illegal: '\\\\n',\n relevance: 0\n };\n const ARRAY = {\n begin: '\\\\[',\n end: '\\\\]',\n contains: [ VALUE_CONTAINER ],\n illegal: '\\\\n',\n relevance: 0\n };\n\n const MODES = [\n KEY,\n {\n className: 'meta',\n begin: '^---\\\\s*$',\n relevance: 10\n },\n { // multi line string\n // Blocks start with a | or > followed by a newline\n //\n // Indentation of subsequent lines must be the same to\n // be considered part of the block\n className: 'string',\n begin: '[\\\\|>]([1-9]?[+-])?[ ]*\\\\n( +)[^ ][^\\\\n]*\\\\n(\\\\2[^\\\\n]+\\\\n?)*'\n },\n { // Ruby/Rails erb\n begin: '<%[%=-]?',\n end: '[%-]?%>',\n subLanguage: 'ruby',\n excludeBegin: true,\n excludeEnd: true,\n relevance: 0\n },\n { // named tags\n className: 'type',\n begin: '!\\\\w+!' + URI_CHARACTERS\n },\n // https://yaml.org/spec/1.2/spec.html#id2784064\n { // verbatim tags\n className: 'type',\n begin: '!<' + URI_CHARACTERS + \">\"\n },\n { // primary tags\n className: 'type',\n begin: '!' + URI_CHARACTERS\n },\n { // secondary tags\n className: 'type',\n begin: '!!' + URI_CHARACTERS\n },\n { // fragment id &ref\n className: 'meta',\n begin: '&' + hljs.UNDERSCORE_IDENT_RE + '$'\n },\n { // fragment reference *ref\n className: 'meta',\n begin: '\\\\*' + hljs.UNDERSCORE_IDENT_RE + '$'\n },\n { // array listing\n className: 'bullet',\n // TODO: remove |$ hack when we have proper look-ahead support\n begin: '-(?=[ ]|$)',\n relevance: 0\n },\n hljs.HASH_COMMENT_MODE,\n {\n beginKeywords: LITERALS,\n keywords: { literal: LITERALS }\n },\n TIMESTAMP,\n // numbers are any valid C-style number that\n // sit isolated from other words\n {\n className: 'number',\n begin: hljs.C_NUMBER_RE + '\\\\b',\n relevance: 0\n },\n OBJECT,\n ARRAY,\n SINGLE_QUOTE_STRING,\n STRING\n ];\n\n const VALUE_MODES = [ ...MODES ];\n VALUE_MODES.pop();\n VALUE_MODES.push(CONTAINER_STRING);\n VALUE_CONTAINER.contains = VALUE_MODES;\n\n return {\n name: 'YAML',\n case_insensitive: true,\n aliases: [ 'yml' ],\n contains: MODES\n };\n}\n\nmodule.exports = yaml;\n","/*\nLanguage: Dockerfile\nRequires: bash.js\nAuthor: Alexis Hénaut <alexis@henaut.net>\nDescription: language definition for Dockerfile files\nWebsite: https://docs.docker.com/engine/reference/builder/\nCategory: config\n*/\n\n/** @type LanguageFn */\nfunction dockerfile(hljs) {\n const KEYWORDS = [\n \"from\",\n \"maintainer\",\n \"expose\",\n \"env\",\n \"arg\",\n \"user\",\n \"onbuild\",\n \"stopsignal\"\n ];\n return {\n name: 'Dockerfile',\n aliases: [ 'docker' ],\n case_insensitive: true,\n keywords: KEYWORDS,\n contains: [\n hljs.HASH_COMMENT_MODE,\n hljs.APOS_STRING_MODE,\n hljs.QUOTE_STRING_MODE,\n hljs.NUMBER_MODE,\n {\n beginKeywords: 'run cmd entrypoint volume add copy workdir label healthcheck shell',\n starts: {\n end: /[^\\\\]$/,\n subLanguage: 'bash'\n }\n }\n ],\n illegal: '</'\n };\n}\n\nmodule.exports = dockerfile;\n","/*\nLanguage: Diff\nDescription: Unified and context diff\nAuthor: Vasily Polovnyov <vast@whiteants.net>\nWebsite: https://www.gnu.org/software/diffutils/\nCategory: common\n*/\n\n/** @type LanguageFn */\nfunction diff(hljs) {\n const regex = hljs.regex;\n return {\n name: 'Diff',\n aliases: [ 'patch' ],\n contains: [\n {\n className: 'meta',\n relevance: 10,\n match: regex.either(\n /^@@ +-\\d+,\\d+ +\\+\\d+,\\d+ +@@/, // @@ -1,2 +1,2 @@\n /^@@ +-\\d+ +\\+\\d+,\\d+ +@@/, // @@ -1 +1,2 @@\n /^@@ +-\\d+,\\d+ +\\+\\d+ +@@/, // @@ -1,2 +1 @@\n /^@@ +-\\d+ +\\+\\d+ +@@/, // @@ -1 +1 @@\n /^\\*\\*\\* +\\d+,\\d+ +\\*\\*\\*\\*$/,\n /^--- +\\d+,\\d+ +----$/\n )\n },\n {\n className: 'comment',\n variants: [\n {\n begin: regex.either(\n /Index: /,\n /^index/,\n /={3,}/,\n /^-{3}/,\n /^\\*{3} /,\n /^\\+{3}/,\n /^diff --git/\n ),\n end: /$/\n },\n { match: /^\\*{15}$/ }\n ]\n },\n {\n className: 'addition',\n begin: /^\\+/,\n end: /$/\n },\n {\n className: 'deletion',\n begin: /^-/,\n end: /$/\n },\n {\n className: 'addition',\n begin: /^!/,\n end: /$/\n }\n ]\n };\n}\n\nmodule.exports = diff;\n","/*\n Language: GraphQL\n Author: John Foster (GH jf990), and others\n Description: GraphQL is a query language for APIs\n Category: web, common\n*/\n\n/** @type LanguageFn */\nfunction graphql(hljs) {\n const regex = hljs.regex;\n const GQL_NAME = /[_A-Za-z][_0-9A-Za-z]*/;\n return {\n name: \"GraphQL\",\n aliases: [ \"gql\" ],\n case_insensitive: true,\n disableAutodetect: false,\n keywords: {\n keyword: [\n \"query\",\n \"mutation\",\n \"subscription\",\n \"type\",\n \"input\",\n \"schema\",\n \"directive\",\n \"interface\",\n \"union\",\n \"scalar\",\n \"fragment\",\n \"enum\",\n \"on\"\n ],\n literal: [\n \"true\",\n \"false\",\n \"null\"\n ]\n },\n contains: [\n hljs.HASH_COMMENT_MODE,\n hljs.QUOTE_STRING_MODE,\n hljs.NUMBER_MODE,\n {\n scope: \"punctuation\",\n match: /[.]{3}/,\n relevance: 0\n },\n {\n scope: \"punctuation\",\n begin: /[\\!\\(\\)\\:\\=\\[\\]\\{\\|\\}]{1}/,\n relevance: 0\n },\n {\n scope: \"variable\",\n begin: /\\$/,\n end: /\\W/,\n excludeEnd: true,\n relevance: 0\n },\n {\n scope: \"meta\",\n match: /@\\w+/,\n excludeEnd: true\n },\n {\n scope: \"symbol\",\n begin: regex.concat(GQL_NAME, regex.lookahead(/\\s*:/)),\n relevance: 0\n }\n ],\n illegal: [\n /[;<']/,\n /BEGIN/\n ]\n };\n}\n\nmodule.exports = graphql;\n"],"names":["javascript","hljs","regex","IDENT_RE$1","IDENT_RE","FRAGMENT","XML_TAG","begin","end","isTrulyOpeningTag","match","response","afterMatchIndex","length","index","nextChar","input","ignoreMatch","m","after","tag","slice","indexOf","hasClosingTag","afterMatch","substring","KEYWORDS$1","$pattern","keyword","KEYWORDS","literal","LITERALS","built_in","BUILT_INS","BUILT_IN_VARIABLES","decimalDigits","frac","decimalInteger","NUMBER","className","variants","relevance","SUBST","keywords","contains","HTML_TEMPLATE","starts","returnEnd","BACKSLASH_ESCAPE","subLanguage","CSS_TEMPLATE","GRAPHQL_TEMPLATE","TEMPLATE_STRING","COMMENT","excludeEnd","excludeBegin","endsParent","C_BLOCK_COMMENT_MODE","C_LINE_COMMENT_MODE","SUBST_INTERNALS","APOS_STRING_MODE","QUOTE_STRING_MODE","concat","SUBST_AND_COMMENTS","PARAMS_CONTAINS","PARAMS","CLASS_OR_EXTENDS","scope","CLASS_REFERENCE","either","_","TYPES","ERROR_TYPES","FUNCTION_DEFINITION","label","illegal","FUNCTION_CALL","list","BUILT_IN_GLOBALS","map","x","join","lookahead","PROPERTY_ACCESS","GETTER_OR_SETTER","FUNC_LEAD_IN_RE","UNDERSCORE_IDENT_RE","FUNCTION_VARIABLE","name","aliases","exports","SHEBANG","binary","RE_STARTERS_RE","REGEXP_MODE","returnBegin","skip","beginKeywords","inherit","TITLE_MODE","recurRegex","re","substitution","depth","replace","source","_len","arguments","args","Array","_key","_len2","_key2","opts","constructor","Object","splice","stripOptionsFromArgs","capture","buildDecorations","doc","decorations","descendants","node","pos","type","push","text","language","base","value","getLanguage","highlight","highlightAuto","AUTO_DETECT_SUBSET","_unused","template","document","createElement","innerHTML","offset","walk","classes","childNodes","forEach","child","nodeType","_e$nodeValue$length","_e$nodeValue","nodeValue","Decoration","inline","class","el","split","filter","Boolean","content","decorationsForCode","textContent","attrs","DecorationSet","create","empty","codeHighlightPlugin","Plugin","key","codeHighlightKey","state","init","_config","apply","tr","old","docChanged","props","getState","_export","javascript_1","n","_ref","typescript_1","tsLanguage","NAMESPACE","beginScope","INTERFACE","DECORATOR","swapMode","mode","replacement","indx","findIndex","Error","assign","ATTRIBUTE_HIGHLIGHT","find","c","OPTIONAL_KEY_OR_ARGUMENT","EXTENDED_NUMBER_MODE","json_1","LITERALS_MODE","TAGS","MEDIA_FEATURES","sort","reverse","PSEUDO_CLASSES","PSEUDO_ELEMENTS","ATTRIBUTES","modes","IMPORTANT","BLOCK_COMMENT","HEXCOLOR","UNICODE_RANGE","FUNCTION_DISPATCH","ATTRIBUTE_SELECTOR_MODE","CSS_NUMBER_MODE","NUMBER_RE","CSS_VARIABLE","STRINGS","case_insensitive","keyframePosition","classNameAliases","endsWithParent","attribute","scss_1","PSEUDO_ELEMENTS$1","PSEUDO_CLASSES$1","AT_IDENTIFIER","VARIABLE","sql_1","COMMENT_MODE","RESERVED_FUNCTIONS","FUNCTIONS","includes","kws_to_regex","kw","MULTI_WORD_KEYWORDS","exceptions","when","_ref3","qualifyFn","item","reduceRelevancy","C_NUMBER_MODE","python_1","RESERVED_WORDS","PROMPT","LITERAL_BRACKET","STRING","digitpart","pointfloat","COMMENT_TYPE","HASH_COMMENT_MODE","unicodeRegex","hexDigits","NUMERIC","java_1","JAVA_IDENT_RE","GENERIC_IDENT_RE","ANNOTATION","VAR","BRACED_VAR","HERE_DOC","END_SAME_AS_BEGIN","QUOTE_STRING","ARITHMETIC","NUMBER_MODE","KNOWN_SHEBANG","FUNCTION","INLINE_HTML","LINK","BOLD","ITALIC","BOLD_WITHOUT_ITALIC","ITALIC_WITHOUT_BOLD","CONTAINABLE","disableAutodetect","c_1","DECLTYPE_AUTO_RE","NAMESPACE_RE","FUNCTION_TYPE_RE","optional","NUMBERS","PREPROCESSOR","FUNCTION_TITLE","EXPRESSION_CONTAINS","EXPRESSION_CONTEXT","FUNCTION_DECLARATION","preprocessor","strings","CPP_PRIMITIVE_TYPES","RESERVED_KEYWORDS","CPP_KEYWORDS","_type_hints","_hint","csharp_1","le","VERBATIM_STRING","VERBATIM_STRING_NO_LF","SUBST_NO_LF","INTERPOLATED_STRING","INTERPOLATED_VERBATIM_STRING","INTERPOLATED_VERBATIM_STRING_NO_LF","GENERIC_MODIFIER","TYPE_IDENT_RE","go_1","de","rust_1","ue","RAW_IDENTIFIER","FUNCTION_INVOKE","NUMBER_SUFFIX","BUILTINS","php_1","ge","NOT_PERL_ETC","PASCAL_CASE_CLASS_NAME_RE","UPCASE_NAME_RE","SINGLE_QUOTED","WHITESPACE","onBegin","resp","data","_beginMatch","onEnd","KWS","items","result","toLowerCase","toUpperCase","dualCase","normalizeKeywords","CONSTRUCTOR_CALL","CONSTANT_REFERENCE","LEFT_AND_RIGHT_SIDE_OF_DOUBLE_COLON","NAMED_ARGUMENT","PARAMS_MODE","ATTRIBUTE_CONTAINS","endScope","MATCH_NOTHING_RE","UNDERSCORE_TITLE_MODE","RUBY_METHOD_RE","CLASS_NAME_RE","CLASS_NAME_WITH_NAMESPACE_RE","RUBY_KEYWORDS","YARDOCTAG","IRB_OBJECT","COMMENT_MODES","digits","RUBY_DEFAULT_CONTAINS","IRB_DEFAULT","unshift","kotlin_1","_e","LABEL","ANNOTATION_USE_SITE","KOTLIN_NUMBER_MODE","KOTLIN_NESTED_COMMENT","KOTLIN_PAREN_TYPE","KOTLIN_PAREN_TYPE2","keywordWrapper","test","dotKeywords","optionalDotKeywords","keywordTypes","literals","precedencegroupKeywords","numberSignKeywords","builtIns","operatorHead","operatorCharacter","operator","identifierHead","identifierCharacter","identifier","typeIdentifier","keywordAttributes","availabilityKeywords","swift_1","COMMENTS","DOT_KEYWORD","KEYWORD_GUARD","PLAIN_KEYWORDS","KEYWORD","KEYWORD_MODES","OPERATOR_GUARD","OPERATORS","ESCAPED_CHARACTER","rawDelimiter","ESCAPED_NEWLINE","INTERPOLATION","MULTILINE_STRING","SINGLE_LINE_STRING","REGEXP_CONTENTS","BARE_REGEXP_LITERAL","EXTENDED_REGEXP_LITERAL","REGEXP","QUOTED_IDENTIFIER","IDENTIFIERS","TYPE","GENERIC_ARGUMENTS","TUPLE","GENERIC_PARAMETERS","FUNCTION_PARAMETERS","FUNCTION_OR_MACRO","INIT_SUBSCRIPT","OPERATOR_DECLARATION","PRECEDENCEGROUP","TYPE_DECLARATION","_iterator","_createForOfIteratorHelper","_step","s","done","variant","interpolation","submodes","err","e","f","yaml_1","URI_CHARACTERS","CONTAINER_STRING","TIMESTAMP","VALUE_CONTAINER","OBJECT","ARRAY","MODES","C_NUMBER_RE","VALUE_MODES","pop","registerLanguage","typescript","json","xml","registerAliases","languageName","css","scss","sql","python","java","bash","shell","markdown","plaintext","cpp","csharp","go","rust","php","ruby","kotlin","swift","yaml","dockerfile","diff","graphql","PluginKey","CODE_LANGUAGES"],"mappings":"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AAA,SAAA,CACA,eACA,UACA,CAAA,oBAAA,CACA,SACA,cACA,CAAA,gBAAA,CACA,iBACA,MACA,CAAA,QAAA,CACA,UACA,OACA,CAAA,MAAA,CACA,MACA,CAAA,SAAA,CACA,UACA,CAAA,MAAA,CACA,OACA,KACA,CAAA,UAAA,CACA,QACA,eACA,CAAA,UAAA,CAAA,CAWIC,EAAiB,CACrB,WAAA,CACA,cACA,cACA,CAAA,OAAA,CACA,cACA,aACA,CAAA,qBAAA,CACA,gBACA,cACA,CAAA,cAAA,CACA,gBACA,MACA,CAAA,QAAA,CACA,QACA,iBACA,CAAA,YAAA,CACA,cACA,gBACA,CAAA,iBAAA,CACA,UACA,sBACA,CAAA,kBAAA,CACA,yBACA,8BACA,CAAA,YAAA,CACA,OACA,WACA,CAAA,QAAA,CACA,QAEA,WACA,CAAA,WAAA,CACA,aACA,YACAC,CAAAA,CAAAA,IAAAA,CAAAA,CAAAA,CAAOC,UAGHC,CAAiB,CAAA,CACrB,QACA,CAAA,UAAA,CACA,OACA,CAAA,SAAA,CACA,UACA,SACA,CAAA,SAAA,CACA,MACA,UACA,CAAA,MAAA,CACA,QACA,SACA,CAAA,OAAA,CACA,cACA,eACA,CAAA,YAAA,CACA,SACA,OACA,CAAA,eAAA,CACA,eACA,KACA,CAAA,MAAA,CACA,eACA,OACA,CAAA,eAAA,CACA,UACA,CAAA,SAAA,CACA,IACA,CAAA,MAAA,CACA,aACA,cACA,CAAA,MAAA,CACA,OACA,YACA,CAAA,KAAA,CACA,YACA,SACA,CAAA,gBAAA,CACA,eACA,kBACA,CAAA,aAAA,CACA,aACA,cACA,CAAA,UAAA,CACA,eACA,MACA,CAAA,mBAAA,CACA,YACA,YACA,CAAA,UAAA,CACA,OACA,CAAA,MAAA,CACA,OACA,CAAA,QAAA,CACA,gBACA,cACA,CAAA,OAAA,CACA,UACA,OACAF,CAAAA,CAAAA,IAAAA,CAAAA,CAAAA,CAAOC,UAGHE,CAAkB,CAAA,CACtB,QACA,UACA,CAAA,QAAA,CACA,MACA,YACA,CAAA,cAAA,CACA,aACA,eACA,CAAA,QAAA,CACA,OACA,aACA,CAAA,WAAA,CACA,UACA,gBACAH,CAAAA,CAAAA,IAAAA,CAAAA,CAAAA,CAAOC,UAEHG,CAAa,CAAA,CACjB,eACA,eACA,CAAA,aAAA,CACA,aACA,oBACA,CAAA,KAAA,CACA,cACA,WACA,CAAA,uBAAA,CACA,kBACA,qBACA,CAAA,oBAAA,CACA,sBACA,2BACA,CAAA,gBAAA,CACA,uBACA,iBACA,CAAA,qBAAA,CACA,uBACA,CAAA,oBAAA,CACA,2BACA,CAAA,YAAA,CACA,eACA,iBACA,CAAA,qBAAA,CACA,aACA,uBACA,CAAA,uBAAA,CACA,kBACA,kBACA,CAAA,kBAAA,CACA,oBACA,qBACA,CAAA,uBAAA,CACA,wBACA,mBACA,CAAA,iBAAA,CACA,iBACA,YACA,CAAA,QAAA,CACA,eACA,oBACA,CAAA,kBAAA,CACA,yBACA,wBACA,CAAA,wBAAA,CACA,qBACA,0BACA,CAAA,0BAAA,CACA,2BACA,oBACA,CAAA,oBAAA,CACA,gBACA,qBACA,CAAA,2BAAA,CACA,6BACA,qBACA,CAAA,qBAAA,CACA,kBACA,cACA,CAAA,uBAAA,CACA,0BACA,cACA,CAAA,qBAAA,CACA,sBACA,oBACA,CAAA,qBAAA,CACA,oBACA,CAAA,eAAA,CACA,qBACA,CAAA,mBAAA,CACA,0BACA,yBACA,CAAA,yBAAA,CACA,sBACA,2BACA,CAAA,2BAAA,CACA,4BACA,qBACA,CAAA,qBAAA,CACA,cACA,mBACA,CAAA,mBAAA,CACA,oBACA,eACA,CAAA,cAAA,CACA,qBACA,oBACA,CAAA,oBAAA,CACA,iBACA,yBACA,CAAA,2BAAA,CACA,eACA,YACA,CAAA,kBAAA,CACA,yBACA,yBACA,CAAA,kBAAA,CACA,mBACA,cACA,CAAA,QAAA,CACA,YACA,sBACA,CAAA,eAAA,CACA,WACA,gBACA,CAAA,WAAA,CACA,oBACA,YACA,CAAA,UAAA,CACA,aACA,YACA,CAAA,aAAA,CACA,eACA,cACA,CAAA,cAAA,CACA,aACA,CAAA,OAAA,CACA,MACA,CAAA,WAAA,CACA,YACA,OACA,CAAA,qBAAA,CACA,8BACA,eACA,CAAA,iBAAA,CACA,eACA,cACA,CAAA,aAAA,CACA,aACA,aACA,CAAA,mBAAA,CACA,oBACA,mBACA,CAAA,aAAA,CACA,eACA,SACA,CAAA,SAAA,CACA,+BACA,0BACA,CAAA,+BAAA,CACA,wBACA,CAAA,yBAAA,CACA,WACA,CAAA,gBAAA,CACA,iBACA,SACA,CAAA,oBAAA,CACA,oBACA,eACA,CAAA,aAAA,CACA,MACA,WACA,CAAA,YAAA,CACA,SACA,IACA,CAAA,IAAA,CACA,YACA,SACA,CAAA,mBAAA,CACA,cACA,mBACA,CAAA,cAAA,CACA,OACA,cACA,CAAA,WAAA,CACA,QACA,CAAA,MAAA,CACA,YACA,CAAA,gBAAA,CACA,YACA,WACA,CAAA,aAAA,CACA,YACA,OACA,CAAA,aAAA,CACA,gBACA,MACA,CAAA,MAAA,CACA,eACA,aACA,CAAA,uBAAA,CACA,eACA,wBACA,CAAA,qBAAA,CACA,eACA,WACA,CAAA,kBAAA,CACA,cACA,gBACA,CAAA,cAAA,CACA,aACA,gBACA,CAAA,yBAAA,CACA,4BACA,sBACA,CAAA,uBAAA,CACA,eACA,yBACA,CAAA,mBAAA,CACA,0BACA,oBACA,CAAA,wBAAA,CACA,uBACA,uBACA,CAAA,yBAAA,CACA,cACA,qBACA,CAAA,KAAA,CACA,+BACA,4BACA,CAAA,MAAA,CACA,YACA,mBACA,CAAA,gBAAA,CACA,gBACA,CAAA,aAAA,CACA,iBACA,CAAA,mBAAA,CACA,WACA,UACA,CAAA,cAAA,CACA,iBACA,eACA,CAAA,qBAAA,CACA,wBACA,oBACA,CAAA,qBAAA,CACA,SACA,qBACA,CAAA,uBAAA,CACA,UACA,MACA,CAAA,mBAAA,CACA,kBACA,kBACA,CAAA,UAAA,CACA,iBACA,sBACA,CAAA,aAAA,CACA,QACA,YACA,CAAA,aAAA,CACA,kBACA,mBACA,CAAA,cAAA,CACA,mBACA,oBACA,CAAA,WAAA,CACA,kBACA,eACA,CAAA,cAAA,CACA,UACA,MACA,CAAA,gBAAA,CACA,iBACA,YACA,CAAA,aAAA,CACA,mBACA,YACA,CAAA,kBAAA,CACA,sBACA,iBACA,CAAA,QAAA,CACA,cACA,CAAA,kBAAA,CACA,oBACA,CAAA,eAAA,CACA,gBACA,mBACA,CAAA,qBAAA,CACA,cACA,cACA,CAAA,YAAA,CACA,cACA,QACA,CAAA,YAAA,CACA,aACA,cACA,CAAA,OAAA,CACA,OACA,aACA,CAAA,kBAAA,CACA,qBACA,oBACA,CAAA,mBAAA,CACA,qBACA,mBACA,CAAA,WAAA,CACA,iBACA,YACA,CAAA,WAAA,CACA,cACA,eACA,CAAA,aAAA,CACA,YACA,WACA,CAAA,mBAAA,CACA,aACA,YACA,CAAA,YAAA,CACA,iBACA,YACA,CAAA,iBAAA,CACA,YACA,gBACA,CAAA,YAAA,CACA,kBACA,WACA,CAAA,gBAAA,CACA,WACA,WACA,CAAA,UAAA,CACA,WACA,CAAA,QAAA,CACA,MACA,CAAA,QAAA,CACA,aACA,iBACA,CAAA,QAAA,CACA,gBACA,iBACA,CAAA,aAAA,CACA,kBACA,eACA,CAAA,SAAA,CACA,QACA,SACA,CAAA,SAAA,CACA,gBACA,gBACA,CAAA,eAAA,CACA,gBACA,UACA,CAAA,iBAAA,CACA,iBACA,sBACA,CAAA,iBAAA,CACA,eACA,CAAA,YAAA,CACA,YACA,CAAA,SAAA,CACA,sBACA,2BACA,CAAA,4BAAA,CACA,wBACA,uBACA,CAAA,SAAA,CACA,gBACA,mBACA,CAAA,qBAAA,CACA,iBACA,gBACA,CAAA,oBAAA,CACA,uBACA,cACA,CAAA,eAAA,CACA,cACA,MACA,CAAA,kBAAA,CACA,oBACA,mBACA,CAAA,aAAA,CACA,OACA,CAAA,aAAA,CACA,cACA,CAAA,aAAA,CACA,qBACA,eACA,CAAA,aAAA,CACA,aACA,gBACA,CAAA,UAAA,CACA,kBACA,qBACA,CAAA,oBAAA,CACA,SACA,GACA,CAAA,QAAA,CACA,OACA,YACA,CAAA,aAAA,CACA,QACA,QACA,CAAA,SAAA,CACA,aACA,eACA,CAAA,OAAA,CACA,kBACA,eACA,CAAA,qBAAA,CACA,0BACA,2BACA,CAAA,sBAAA,CACA,uBACA,0BACA,CAAA,4BAAA,CACA,qBACA,qBACA,CAAA,mBAAA,CACA,iBACA,sBACA,CAAA,0BAAA,CACA,6BACA,uBACA,CAAA,uBAAA,CACA,4BACA,6BACA,CAAA,qBAAA,CACA,uBACA,oBACA,CAAA,mBAAA,CACA,kBACA,CAAA,kBAAA,CACA,iBACA,CAAA,sBAAA,CACA,uBACA,iBACA,CAAA,kBAAA,CACA,kBACA,uBACA,CAAA,cAAA,CACA,gBACA,iBACA,CAAA,OAAA,CACA,WACA,KACA,CAAA,YAAA,CACA,eACA,QACA,CAAA,kBAAA,CACA,oBACA,gBACA,CAAA,iBAAA,CACA,oBACA,gBACA,CAAA,cAAA,CACA,WACA,cACA,CAAA,YAAA,CACA,iBACA,iBACA,CAAA,aAAA,CACA,uBACA,iBACA,CAAA,uBAAA,CACA,uBACA,sBACA,CAAA,0BAAA,CACA,wBACA,2BACA,CAAA,eAAA,CACA,sBACA,wBACA,CAAA,qBAAA,CACA,cACA,cACA,CAAA,kBAAA,CACA,gBACA,gBACA,CAAA,aAAA,CACA,kBACA,CAAA,gBAAA,CACA,uBACA,CAAA,yBAAA,CACA,YACA,gBACA,CAAA,iBAAA,CACA,iBACA,KACA,CAAA,cAAA,CACA,YACA,eACA,CAAA,kBAAA,CACA,kBACA,YACA,CAAA,qBAAA,CACA,mBACA,qBACA,CAAA,qBAAA,CACA,6BACA,WACA,CAAA,cAAA,CACA,gBACA,aACA,CAAA,aAAA,CACA,gBACA,gBACA,CAAA,eAAA,CACA,qBACA,qBACA,CAAA,oBAAA,CACA,uBACA,YACA,CAAA,eAAA,CACA,iBACA,cACA,CAAA,aAAA,CACA,cACA,YACA,CAAA,cAAA,CACA,eACA,aACA,CAAA,sBAAA,CACA,SACA,OACA,CAAA,aAAA,CACA,aACA,cACA,CAAA,WAAA,CACA,cACA,CAAA,GAAA,CACA,GACA,CAAA,SAAA,CACA,QACAJ,IAAOC,CAAAA,CAAAA,CAAAA,OAAAA,CAAAA,CAAAA,K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cACPgC,CAAAA,SAAAA,CAAW,qBAEVmL,CACHV,EAAAA,CAAAA,CAAMO,eAKd,EAAA,CAAA,CAAA,CAAA,CAAA,CACEhL,SAAW,CAAA,cAAA,CACXhC,MAAO,MAASkM,CAAAA,CAAAA,CAAKxH,KAAK,GAAO,CAAA,CAAA,MAAA,CAAA,CAAA,CAIzC,IC3wBMwH,CAAAA,CAAO,CA3HX,GACA,CAAA,MAAA,CACA,UACA,SACA,CAAA,OAAA,CACA,QACA,GACA,CAAA,YAAA,CACA,OACA,QACA,CAAA,QAAA,CACA,UACA,MACA,CAAA,MAAA,CACA,KACA,KACA,CAAA,SAAA,CACA,MACA,KACA,CAAA,IAAA,CACA,KACA,IACA,CAAA,UAAA,CACA,aACA,QACA,CAAA,QAAA,CACA,OACA,IACA,CAAA,IAAA,CACA,KACA,IACA,CAAA,IAAA,CACA,KACA,QACA,CAAA,QAAA,CACA,MACA,CAAA,GAAA,CACA,QACA,CAAA,KAAA,CACA,QACA,KACA,CAAA,KAAA,CACA,QACA,QACA,CAAA,IAAA,CACA,OACA,MACA,CAAA,MAAA,CACA,MACA,QACA,CAAA,IAAA,CACA,WACA,QACA,CAAA,GAAA,CACA,UACA,GACA,CAAA,OAAA,CACA,OACA,SACA,CAAA,QAAA,CACA,SACA,MACA,CAAA,QAAA,CACA,UACA,KACA,CAAA,OAAA,CACA,QACA,IACA,CAAA,UAAA,CACA,QACA,IACA,CAAA,OAAA,CACA,OACA,IACA,CAAA,IAAA,CACA,MACA,OAIA,CAAA,MAAA,CACA,IACA,QACA,CAAA,MAAA,CACA,UACA,KACA,CAAA,QAAA,CACA,QACA,CAAA,SAAA,CACA,eACA,CAAA,qBAAA,CACA,cACA,kBACA,CAAA,mBAAA,CACA,oBACA,SACA,CAAA,gBAAA,CACA,UACA,SACA,CAAA,cAAA,CACA,WACA,oBACA,CAAA,QAAA,CACA,eACA,gBACA,CAAA,gBAAA,CACA,OACA,QACA,CAAA,SAAA,CACA,QACA,MACA,CAAA,MAAA,CACA,UACA,UACA,CAAA,MAAA,CACA,OACA,KACA,CAAA,UAAA,CACA,QACA,eACA,CAAA,UAAA,CAAA,CAWIC,EAAiB,CACrB,WAAA,CACA,cACA,cACA,CAAA,OAAA,CACA,cACA,aACA,CAAA,qBAAA,CACA,gBACA,cACA,CAAA,cAAA,CACA,gBACA,MACA,CAAA,QAAA,CACA,OACA,CAAA,iBAAA,CACA,YACA,CAAA,aAAA,CACA,iBACA,iBACA,CAAA,SAAA,CACA,uBACA,kBACA,CAAA,wBAAA,CACA,+BACA,YACA,CAAA,MAAA,CACA,YACA,QACA,CAAA,OAAA,CAEA,YACA,WACA,CAAA,YAAA,CACA,cACAC,IAAOC,CAAAA,CAAAA,CAAAA,OAAAA,CAAAA,CAAAA,CAGHC,EAAiB,CACrB,QAAA,CACA,UACA,CAAA,OAAA,CACA,SACA,CAAA,SAAA,CACA,UACA,SACA,CAAA,KAAA,CACA,WACA,MACA,CAAA,OAAA,CACA,UACA,OACA,CAAA,aAAA,CACA,gBACA,YACA,CAAA,QAAA,CACA,QACA,eACA,CAAA,cAAA,CACA,MACA,MACA,CAAA,cAAA,CACA,QACA,eACA,CAAA,UAAA,CACA,SACA,CAAA,IAAA,CACA,MACA,CAAA,YAAA,CACA,eACA,MACA,CAAA,MAAA,CACA,aACA,KACA,CAAA,WAAA,CACA,UACA,gBACA,CAAA,cAAA,CACA,mBACA,aACA,CAAA,YAAA,CACA,eACA,UACA,CAAA,cAAA,CACA,OACA,mBACA,CAAA,WAAA,CACA,aACA,UACA,CAAA,OAAA,CACA,OACA,OACA,CAAA,QAAA,CACA,gBACA,cACA,CAAA,OAAA,CACA,UACA,OACAF,CAAAA,CAAAA,IAAAA,CAAAA,CAAAA,CAAOC,UAGHE,CAAkB,CAAA,CACtB,QACA,UACA,CAAA,QAAA,CACA,MACA,YACA,CAAA,cAAA,CACA,aACA,eACA,CAAA,QAAA,CACA,OACA,aACA,CAAA,WAAA,CACA,SACA,CAAA,gBAAA,CAAA,CACAH,IAAOC,CAAAA,CAAAA,CAAAA,OAAAA,CAAAA,CAAAA,CAEHG,EAAa,CACjB,cAAA,CACA,gBACA,aACA,CAAA,YAAA,CACA,qBACA,KACA,CAAA,aAAA,CACA,YACA,uBACA,CAAA,iBAAA,CACA,sBACA,oBACA,CAAA,qBAAA,CACA,4BACA,gBACA,CAAA,sBAAA,CACA,kBACA,qBACA,CAAA,uBAAA,CACA,qBACA,2BACA,CAAA,YAAA,CACA,eACA,iBACA,CAAA,qBAAA,CACA,aACA,uBACA,CAAA,uBAAA,CACA,kBACA,kBACA,CAAA,kBAAA,CACA,oBACA,qBACA,CAAA,uBAAA,CACA,wBACA,mBACA,CAAA,iBAAA,CACA,iBACA,YACA,CAAA,QAAA,CACA,eACA,oBACA,CAAA,kBAAA,CACA,wBACA,CAAA,wBAAA,CACA,wBACA,CAAA,oBAAA,CACA,2BACA,0BACA,CAAA,0BAAA,CACA,qBACA,oBACA,CAAA,eAAA,CACA,sBACA,2BACA,CAAA,4BAAA,CACA,sBACA,qBACA,CAAA,iBAAA,CACA,eACA,uBACA,CAAA,yBAAA,CACA,eACA,qBACA,CAAA,qBAAA,CACA,qBACA,qBACA,CAAA,oBAAA,CACA,gBACA,qBACA,CAAA,mBAAA,CACA,0BACA,yBACA,CAAA,yBAAA,CACA,sBACA,2BACA,CAAA,2BAAA,CACA,4BACA,qBACA,CAAA,qBAAA,CACA,cACA,mBACA,CAAA,mBAAA,CACA,oBACA,eACA,CAAA,cAAA,CACA,qBACA,oBACA,CAAA,oBAAA,CACA,iBACA,yBACA,CAAA,2BAAA,CACA,cACA,CAAA,YAAA,CACA,kBACA,CAAA,wBAAA,CACA,0BACA,kBACA,CAAA,kBAAA,CACA,eACA,QACA,CAAA,WAAA,CACA,uBACA,eACA,CAAA,UAAA,CACA,iBACA,WACA,CAAA,mBAAA,CACA,aACA,UACA,CAAA,YAAA,CACA,aACA,aACA,CAAA,cAAA,CACA,eACA,cACA,CAAA,aAAA,CACA,OACA,CAAA,MAAA,CACA,WACA,CAAA,WAAA,CACA,QACA,qBACA,CAAA,6BAAA,CACA,gBACA,iBACA,CAAA,cAAA,CACA,eACA,aACA,CAAA,YAAA,CACA,cACA,mBACA,CAAA,mBAAA,CACA,oBACA,aACA,CAAA,cAAA,CACA,UACA,SACA,CAAA,8BAAA,CACA,2BACA,+BACA,CAAA,wBAAA,CACA,yBACA,CAAA,WAAA,CACA,gBACA,CAAA,gBAAA,CACA,UACA,oBACA,CAAA,mBAAA,CACA,gBACA,aACA,CAAA,KAAA,CACA,YACA,YACA,CAAA,QAAA,CACA,KACA,IACA,CAAA,WAAA,CACA,UACA,mBACA,CAAA,aAAA,CACA,oBACA,cACA,CAAA,MAAA,CACA,eACA,WACA,CAAA,QAAA,CACA,OACA,YACA,CAAA,gBAAA,CACA,YACA,WACA,CAAA,aAAA,CACA,YACA,OACA,CAAA,aAAA,CACA,gBACA,MACA,CAAA,MAAA,CACA,eACA,aACA,CAAA,uBAAA,CACA,eACA,wBACA,CAAA,qBAAA,CACA,eACA,WACA,CAAA,kBAAA,CACA,cACA,gBACA,CAAA,cAAA,CACA,YACA,CAAA,gBAAA,CACA,yBACA,CAAA,2BAAA,CACA,uBACA,uBACA,CAAA,cAAA,CACA,0BACA,mBACA,CAAA,yBAAA,CACA,qBACA,wBACA,CAAA,sBAAA,CACA,wBACA,yBACA,CAAA,aAAA,CACA,sBACA,KACA,CAAA,8BAAA,CACA,6BACA,MACA,CAAA,WAAA,CACA,oBACA,gBACA,CAAA,gBAAA,CACA,cACA,iBACA,CAAA,mBAAA,CACA,WACA,UACA,CAAA,cAAA,CACA,iBACA,eACA,CAAA,qBAAA,CACA,wBACA,oBACA,CAAA,qBAAA,CACA,SACA,qBACA,CAAA,uBAAA,CACA,UACA,MACA,CAAA,mBAAA,CACA,kBACA,kBACA,CAAA,UAAA,CACA,iBACA,sBACA,CAAA,aAAA,CACA,OACA,CAAA,YAAA,CACA,aACA,CAAA,iBAAA,CACA,oBACA,cACA,CAAA,kBAAA,CACA,qBACA,WACA,CAAA,iBAAA,CACA,gBACA,cACA,CAAA,SAAA,CACA,OACA,gBACA,CAAA,gBAAA,CACA,aACA,aACA,CAAA,kBAAA,CACA,aACA,kBACA,CAAA,qBAAA,CACA,kBACA,QACA,CAAA,cAAA,CACA,mBACA,oBACA,CAAA,eAAA,CACA,gBACA,mBACA,CAAA,qBAAA,CACA,cACA,cACA,CAAA,YAAA,CACA,cACA,QACA,CAAA,YAAA,CACA,aACA,cACA,CAAA,OAAA,CACA,OACA,aACA,CAAA,kBAAA,CACA,qBACA,oBACA,CAAA,mBAAA,CACA,qBACA,mBACA,CAAA,WAAA,CACA,gBACA,CAAA,YAAA,CACA,WACA,CAAA,aAAA,CACA,gBACA,aACA,CAAA,WAAA,CACA,YACA,mBACA,CAAA,YAAA,CACA,aACA,YACA,CAAA,gBAAA,CACA,aACA,iBACA,CAAA,WAAA,CACA,iBACA,YACA,CAAA,iBAAA,CACA,YACA,gBACA,CAAA,UAAA,CACA,YACA,UACA,CAAA,WAAA,CACA,QACA,CAAA,MAAA,CACA,QACA,CAAA,YAAA,CACA,kBACA,QACA,CAAA,eAAA,CACA,kBACA,aACA,CAAA,iBAAA,CACA,gBACA,SACA,CAAA,OAAA,CACA,UACA,SACA,CAAA,eAAA,CACA,iBACA,eACA,CAAA,eAAA,CACA,WACA,iBACA,CAAA,gBAAA,CACA,uBACA,iBACA,CAAA,eAAA,CACA,YACA,CAAA,YAAA,CACA,SACA,CAAA,qBAAA,CACA,4BACA,4BACA,CAAA,uBAAA,CACA,wBACA,SACA,CAAA,eAAA,CACA,oBACA,qBACA,CAAA,gBAAA,CACA,iBACA,oBACA,CAAA,sBAAA,CACA,eACA,eACA,CAAA,aAAA,CACA,OACA,kBACA,CAAA,mBAAA,CACA,oBACA,aACA,CAAA,OAAA,CACA,cACA,cACA,CAAA,aAAA,CACA,qBACA,eACA,CAAA,aAAA,CACA,aACA,gBACA,CAAA,UAAA,CACA,kBACA,qBACA,CAAA,oBAAA,CACA,SACA,GACA,CAAA,QAAA,CACA,OACA,YACA,CAAA,aAAA,CACA,QACA,QACA,CAAA,SAAA,CACA,aACA,eACA,CAAA,OAAA,CACA,iBACA,CAAA,eAAA,CACA,qBACA,CAAA,yBAAA,CACA,4BACA,sBACA,CAAA,sBAAA,CACA,2BACA,4BACA,CAAA,oBAAA,CACA,sBACA,mBACA,CAAA,gBAAA,CACA,uBACA,0BACA,CAAA,4BAAA,CACA,wBACA,uBACA,CAAA,2BAAA,CACA,8BACA,qBACA,CAAA,sBAAA,CACA,qBACA,mBACA,CAAA,kBAAA,CACA,mBACA,iBACA,CAAA,sBAAA,CACA,uBACA,iBACA,CAAA,kBAAA,CACA,kBACA,uBACA,CAAA,cAAA,CACA,gBACA,iBACA,CAAA,OAAA,CACA,WACA,KACA,CAAA,YAAA,CACA,eACA,QACA,CAAA,kBAAA,CACA,oBACA,gBACA,CAAA,iBAAA,CACA,oBACA,gBACA,CAAA,cAAA,CACA,UACA,CAAA,cAAA,CACA,YACA,CAAA,gBAAA,CACA,kBACA,aACA,CAAA,sBAAA,CACA,kBACA,uBACA,CAAA,sBAAA,CACA,uBACA,0BACA,CAAA,uBAAA,CACA,4BACA,eACA,CAAA,qBAAA,CACA,yBACA,qBACA,CAAA,aAAA,CACA,eACA,kBACA,CAAA,eAAA,CACA,iBACA,aACA,CAAA,kBAAA,CACA,iBACA,uBACA,CAAA,yBAAA,CACA,YACA,gBACA,CAAA,iBAAA,CACA,iBACA,KACA,CAAA,cAAA,CACA,YACA,eACA,CAAA,kBAAA,CACA,kBACA,YACA,CAAA,qBAAA,CACA,mBACA,qBACA,CAAA,qBAAA,CACA,6BACA,WACA,CAAA,cAAA,CACA,gBACA,aACA,CAAA,aAAA,CACA,eACA,CAAA,gBAAA,CACA,eACA,CAAA,oBAAA,CACA,sBACA,oBACA,CAAA,sBAAA,CACA,aACA,eACA,CAAA,gBAAA,CACA,eACA,aACA,CAAA,aAAA,CACA,aACA,cACA,CAAA,cAAA,CACA,cACA,sBACA,CAAA,QAAA,CACA,QACA,aACA,CAAA,YAAA,CACA,eACA,WACA,CAAA,cAAA,CACA,GACA,CAAA,GAAA,CACA,SACA,CAAA,MAAA,CAAA,CACAJ,OAAOC,OAiIT,CAAA,CAAA,CAAAoB,EArHA,QAqHAA,CAAAA,EArHc/N,CAAAA,CAAAA,CACZ,GAAM+M,CAAAA,CA5zBM,CAAC/M,SAAAA,SACN,CACLgN,SAAAA,CAAW,CACT9I,KAAO,CAAA,MAAA,CACP5D,MAAO,YAET2M,CAAAA,CAAAA,aAAAA,CAAejN,E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A,CA9pBapO,CACX,CAAA,CAAA,GAAMC,CAAAA,EAAQD,CAAKC,CAAAA,KAAAA,CACboO,EAAerO,CAAKoD,CAAAA,OAAAA,CAAQ,KAAM,GA8blCkL,CAAAA,CAAAA,CAAAA,CAAqB,CACzB,KACA,CAAA,MAAA,CACA,WACA,CAAA,MAAA,CACA,MACA,CAAA,KAAA,CACA,OACA,MACA,CAAA,SAAA,CACA,WACA,MACA,CAAA,KAAA,CACA,OACA,OACA,CAAA,WAAA,CACA,aACA,WACA,CAAA,YAAA,CACA,QACA,SACA,CAAA,KAAA,CACA,UACA,aACA,CAAA,OAAA,CACA,aACA,eACA,CAAA,aAAA,CACA,cACA,gBACA,CAAA,YAAA,CACA,aACA,sBACA,CAAA,YAAA,CACA,MACA,YACA,CAAA,MAAA,CACA,UACA,IACA,CAAA,KAAA,CACA,QACA,OACA,CAAA,KAAA,CACA,MACA,KACA,CAAA,WAAA,CACA,QACA,QACA,CAAA,cAAA,CACA,kBACA,iBACA,CAAA,UAAA,CACA,gBACA,CAAA,OAAA,CACA,MACA,CAAA,WAAA,CACA,YACA,YACA,CAAA,gBAAA,CACA,UACA,YACA,CAAA,UAAA,CACA,WACA,UACA,CAAA,YAAA,CACA,MACA,MACA,CAAA,MAAA,CACA,aACA,aACA,CAAA,WAAA,CACA,kBACA,KACA,CAAA,KAAA,CACA,OACA,WACA,CAAA,iBAAA,CACA,QACA,MACA,CAAA,YAAA,CACA,SACA,OACA,CAAA,UAAA,CACA,UACA,UACA,CAAA,cAAA,CAAA,CA2CIC,EAAYD,CAEZ1M,CAAAA,CAAAA,CAAW,CArff,KACA,CAAA,MAAA,CACA,MACA,UACA,CAAA,OAAA,CACA,MACA,KACA,CAAA,KAAA,CACA,QACA,WACA,CAAA,uBAAA,CACA,IACA,CAAA,YAAA,CACA,MACA,CAAA,YAAA,CACA,KACA,MACA,CAAA,QAAA,CACA,gBACA,KACA,CAAA,OAAA,CACA,cACA,iBACA,CAAA,SAAA,CACA,SACA,QACA,CAAA,MAAA,CACA,UACA,MACA,CAAA,IAAA,CACA,OACA,QACA,CAAA,aAAA,CACA,WACA,MACA,CAAA,MAAA,CACA,MACA,CAAA,SAAA,CACA,MACA,CAAA,aAAA,CACA,YACA,kBACA,CAAA,OAAA,CACA,aACA,MACA,CAAA,OAAA,CACA,WACA,SACA,CAAA,SAAA,CACA,SACA,QACA,CAAA,WAAA,CACA,UACA,YACA,CAAA,UAAA,CACA,UACA,MACA,CAAA,MAAA,CACA,gBACA,KACA,CAAA,MAAA,CACA,OACA,CAAA,WAAA,CACA,YACA,CAAA,QAAA,CACA,QACA,MACA,CAAA,WAAA,CACA,UACA,iBACA,CAAA,cAAA,CACA,kCACA,cACA,CAAA,cAAA,CACA,cACA,gBACA,CAAA,cAAA,CACA,oBACA,cACA,CAAA,cAAA,CACA,mCACA,cACA,CAAA,QAAA,CACA,QACA,MACA,CAAA,KAAA,CACA,aACA,KACA,CAAA,SAAA,CACA,WACA,SACA,CAAA,SAAA,CACA,SACA,QACA,CAAA,YAAA,CACA,QACA,UACA,CAAA,eAAA,CACA,aACA,UACA,CAAA,QAAA,CACA,OACA,SACA,CAAA,MAAA,CACA,UACA,MACA,CAAA,OAAA,CACA,MACA,WACA,CAAA,eAAA,CACA,UACA,CAAA,QAAA,CACA,QACA,CAAA,OAAA,CACA,SACA,MACA,CAAA,SAAA,CACA,SACA,KACA,CAAA,UAAA,CACA,UACA,OACA,CAAA,OAAA,CACA,SACA,aACA,CAAA,OAAA,CACA,QACA,KACA,CAAA,SAAA,CACA,YACA,MACA,CAAA,MAAA,CACA,OACA,UACA,CAAA,QAAA,CACA,MACA,QACA,CAAA,OAAA,CACA,QACA,UACA,CAAA,QAAA,CACA,SACA,MACA,CAAA,MAAA,CACA,WACA,IACA,CAAA,WAAA,CACA,UACA,OACA,CAAA,OAAA,CACA,cACA,QACA,CAAA,KAAA,CACA,UACA,WACA,CAAA,cAAA,CACA,WACA,MACA,CAAA,IAAA,CACA,MACA,CAAA,YAAA,CACA,eACA,CAAA,aAAA,CACA,cACA,gBACA,CAAA,YAAA,CACA,aACA,sBACA,CAAA,YAAA,CACA,MACA,UACA,CAAA,OAAA,CACA,aACA,SACA,CAAA,MAAA,CACA,UACA,MACA,CAAA,MAAA,CACA,aACA,SACA,CAAA,IAAA,CACA,QACA,WACA,CAAA,gBAAA,CACA,MACA,OACA,CAAA,OAAA,CACA,QACA,cACA,CAAA,iBAAA,CACA,UACA,KACA,CAAA,QAAA,CACA,QACA,QACA,CAAA,KAAA,CACA,SACA,KACA,CAAA,UAAA,CACA,SACA,OACA,CAAA,UAAA,CACA,WACA,SACA,CAAA,OAAA,CACA,QACA,KACA,CAAA,IAAA,CACA,MACA,CAAA,WAAA,CACA,KACA,CAAA,WAAA,CACA,QACA,MACA,CAAA,QAAA,CACA,UACA,cACA,CAAA,mBAAA,CACA,KACA,QACA,CAAA,KAAA,CACA,OACA,IACA,CAAA,KAAA,CACA,OACA,MACA,CAAA,IAAA,CACA,QACA,KACA,CAAA,OAAA,CACA,OACA,UACA,CAAA,SAAA,CACA,WACA,CAAA,WAAA,CACA,SACA,CAAA,KAAA,CACA,UACA,cACA,CAAA,iBAAA,CACA,kBACA,QACA,CAAA,SAAA,CACA,WACA,gBACA,CAAA,OAAA,CACA,WACA,WACA,CAAA,SAAA,CACA,UACA,WACA,CAAA,KAAA,CACA,QACA,MACA,CAAA,OAAA,CACA,OACA,WACA,CAAA,KAAA,CACA,YACA,CAAA,aAAA,CACA,WACA,CAAA,WAAA,CACA,aACA,gBACA,CAAA,SAAA,CACA,aACA,UACA,CAAA,UAAA,CACA,WACA,SACA,CAAA,QAAA,CACA,SACA,SACA,CAAA,QAAA,CACA,QACA,UACA,CAAA,QAAA,CACA,MACA,YACA,CAAA,MAAA,CACA,UACA,WACA,CAAA,OAAA,CACA,SACA,QACA,CAAA,QAAA,CACA,OACA,QACA,CAAA,WAAA,CACA,eACA,KACA,CAAA,MAAA,CACA,UACA,KACA,CAAA,MAAA,CACA,OACA,UACA,CAAA,MAAA,CACA,WACA,cACA,CAAA,KAAA,CACA,eACA,UACA,CAAA,YAAA,CACA,OACA,OACA,CAAA,QAAA,CACA,YACA,CAAA,aAAA,CACA,aACA,CAAA,QAAA,CACA,YACA,i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CA,CAAA,QAAA,CACA,UACA,SACA,CAAA,MAAA,CACA,SACA,MACA,CAAA,KAAA,CACA,QACA,QACA,CAAA,SAAA,CACA,SACA,MACA,CAAA,WAAA,CACA,SACA,MACA,CAAA,MAAA,CACA,SACA,CAAA,QAAA,CACA,SAkMI,CAAA,KAAA,CACA,QA/LJ,UACA,CAAA,IAAA,CACA,UACA,KACA,CAAA,KAAA,CACA,QACA,OACA,CAAA,eAAA,CACA,WACA,SACA,CAAA,cAAA,CACA,YACA,YACA,CAAA,WAAA,CACA,WACA,SACA,CAAA,YAAA,CACA,OACA,SACA,CAAA,QAAA,CACA,SACA,QACA,CAAA,SAAA,CACA,KACA,IACA,CAAA,OAAA,CACA,YACA,QACA,CAAA,OAAA,CACA,UACA,SACA,CAAA,MAAA,CACA,OACA,OACA,CAAA,KAAA,CACA,SACA,MACA,CAAA,OAAA,CACA,QACA,QACA,CAAA,QAAA,CACA,QACA,QACA,CAAA,QAAA,CACA,MACA,CAAA,SAAA,CACA,QACA,CAAA,YAAA,CACA,SACA,SACA,CAAA,UAAA,CACA,QACA,MACA,CAAA,QAAA,CACA,QACA,OACA,CAAA,UAAA,CACA,UACA,MACA,CAAA,KAAA,CACA,WACA,YACA,CAAA,OAAA,CACA,OACA,aACA,CAAA,SAAA,CACA,SACA,MAIA,CAAA,OAAA,CACA,QACA,OACA,CAAA,OAAA,CACA,KACA,IACA,CAAA,IAAA,CACA,MACA,WACA,CAAA,IAAA,CACA,KACA,OACA,CAAA,QAAA,CACA,QACA,QACA,CAAA,IAAA,CACA,WACA,IACA,CAAA,OAAA,CACA,QACA,MACA,CAAA,OAAA,CACA,WACA,MACA,CAAA,OAAA,CACA,QACA,CAAA,QAAA,CACA,KACA,CAAA,OAAA,CACA,OACA,QACA,CAAA,KAAA,CACA,SACA,KACA,CAAA,MAAA,CACA,OACA,MACA,CAAA,QAAA,CACA,KACA,QACA,CAAA,IAAA,CACA,QACA,KACA,CAAA,IAAA,CACA,UACA,WACA,CAAA,WAAA,CACA,YACA,WACA,CAAA,MAAA,CACA,MACA,CAAA,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,CAAAA,OAAAA,CAde,CACf,MAAA,CACA,QACA,SACA,CAAA,SAAA,CACA,QAUAE,QANe,CAAA,CAAE,WAOjBqQ,WAnLiB,CAAA,CACjB,MACA,UACA,CAAA,SAAA,CACA,mBACA,QACA,CAAA,SAAA,CACA,qBACA,wBACA,CAAA,oBAAA,CACA,QACA,YACA,CAAA,UAAA,CACA,WACA,QACA,CAAA,WAAA,CACA,mBACA,eACA,CAAA,SAAA,CACA,QACA,YACA,CAAA,UAAA,CACA,WACA,OACA,CAAA,UAAA,CACA,gBACA,eACA,CAAA,MAAA,CACA,UACA,gBACA,CAAA,OAAA,CACA,kBACA,uBACA,CAAA,aAAA,CACA,MACA,eACA,CAAA,aAAA,CACA,cACA,CAAA,oBAAA,CACA,YACA,CAAA,OAAA,CACA,cACA,cACA,CAAA,aAAA,CACA,SACA,WACA,CAAA,OAAA,CACA,cACA,YACA,CAAA,eAAA,CACA,qBACA,oBACA,CAAA,eAAA,CACA,UACA,QACA,CAAA,UAAA,CACA,UACA,cA6HIhF,CAAAA,CAAAA,CAAAA,CAAAA,CAAoB,CACxB9K,SAAW,CAAA,mBAAA,CACXE,SAAW,CAAA,CAAA,CACXE,QAAU,CAAA,CAER2P,MA/HmB,CACrB,OAAA,CACA,MACA,MACA,CAAA,OAAA,CACA,WACA,MACA,CAAA,MAAA,CACA,QACA,QACA,CAAA,MAAA,CACA,OACA,KACA,CAAA,MAAA,CACA,MACA,MACA,CAAA,MAAA,CACA,UACA,MACA,CAAA,UAAA,CACA,MACA,CAAA,KAAA,CACA,MACA,CAAA,OAAA,CACA,OACA,SACA,CAAA,SAAA,CACA,QACA,MACA,CAAA,OAAA,CACA,SACA,QACA,CAAA,QAAA,CACA,UACA,SACA,CAAA,SAAA,CACA,UACA,SACA,CAAA,SAAA,CACA,UACA,SACA,CAAA,SAAA,CACA,UACA,UACA,CAAA,MAAA,CACA,UACA,OACA,CAAA,KAAA,CACA,QACA,WACA,CAAA,aAAA,CACA,4BACA,YACA,CAAA,aAAA,CACA,SACA,QACA,CAAA,QAAA,CACA,SACA,QACA,CAAA,MAA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A,QACA,CAAA,QAAA,CACA,YACA,OACA,CAAA,QAAA,CACA,SACA,OACA,CAAA,OAAA,CACA,OACA,KACA,CAAA,WAAA,CACA,kBACA,mBACA,CAAA,SAAA,CACA,KACA,CAAA,MAAA,CACA,OACA,CAAA,OAAA,CACA,WAOIkU,EAAW,CAAA,CACf,QACA,KACA,CAAA,MAAA,CAAA,CAIIC,GAA0B,CAC9B,YAAA,CACA,gBACA,YACA,CAAA,MAAA,CACA,YACA,MACA,CAAA,OAAA,CAAA,CAKIC,GAAqB,CACzB,eAAA,CACA,UACA,YACA,CAAA,OAAA,CACA,UACA,QACA,CAAA,QAAA,CACA,QACA,SACA,CAAA,cAAA,CACA,YACA,WACA,CAAA,KAAA,CACA,gBACA,UACA,CAAA,OAAA,CACA,YACA,iBACA,CAAA,UAAA,CAAA,CAIIC,GAAW,CACf,KAAA,CACA,MACA,KACA,CAAA,QAAA,CACA,mBACA,YACA,CAAA,MAAA,CACA,YACA,CAAA,WAAA,CACA,2BACA,CAAA,KAAA,CACA,MACA,aACA,CAAA,cAAA,CACA,eACA,cACA,CAAA,qBAAA,CACA,QACA,UACA,CAAA,eAAA,CACA,WACA,QACA,CAAA,MAAA,CACA,oCACA,WACA,CAAA,MAAA,CACA,gBACA,gBACA,CAAA,sBAAA,CACA,2BACA,mBACA,CAAA,YAAA,CACA,0BACA,KAIIC,CAAAA,CAAAA,EAAAA,CAAe5S,GACnB,mBACA,CAAA,iBAAA,CACA,iBACA,gBACA,CAAA,gBAAA,CACA,mCACA,iBACA,CAAA,iBAAA,CACA,kBACA,iBACA,CAAA,iBAAA,CACA,kBACA,iBACA,CAAA,iBAAA,CACA,kBACA,iBACA,CAAA,iBAAA,CACA,YAII6S,EAAoB7S,CAAAA,EAAAA,CACxB4S,EACA,CAAA,iBAAA,CACA,iBACA,CAAA,iBAAA,CACA,kBACA,iBAMIE,CAAAA,CAAAA,EAAAA,CAAWrT,GAAOmT,EAAcC,CAAAA,EAAAA,CAAmB,KAGnDE,EAAiB/S,CAAAA,EAAAA,CACrB,YACA,sDACA,CAAA,wDAAA,CACA,yDACA,iBACA,CAAA,8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","x_google_ignoreList":[0,1,2,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25]}