@loopstack/loopstack-studio 0.25.1 → 0.25.2

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 (1667) hide show
  1. package/dist/_virtual/rolldown_runtime.js +20 -0
  2. package/dist/api/auth.js +2 -4
  3. package/dist/api/client.js +7 -9
  4. package/dist/api/config.js +2 -4
  5. package/dist/api/dashboard.js +2 -4
  6. package/dist/api/documents.js +2 -4
  7. package/dist/api/index.js +19 -21
  8. package/dist/api/processor.js +2 -4
  9. package/dist/api/secrets.js +2 -4
  10. package/dist/api/workflows.js +2 -4
  11. package/dist/api/workspaces.js +2 -4
  12. package/dist/app/EnvironmentEmbedRoot.js +31 -24
  13. package/dist/components/ai-elements/code-block.js +71 -53
  14. package/dist/components/ai-elements/message.js +82 -41
  15. package/dist/components/ai-elements/prompt-input.js +253 -162
  16. package/dist/components/ai-elements/reasoning.js +116 -78
  17. package/dist/components/ai-elements/shimmer.js +35 -23
  18. package/dist/components/ai-elements/sources.js +58 -29
  19. package/dist/components/data-table/ConfirmDialog.js +30 -14
  20. package/dist/components/data-table/DataList.js +198 -138
  21. package/dist/components/data-table/DataTable.js +234 -168
  22. package/dist/components/data-table/DataTableBatchAction.js +27 -18
  23. package/dist/components/data-table/DataTableFilters.js +78 -53
  24. package/dist/components/data-table/DataTablePagination.js +104 -72
  25. package/dist/components/data-table/DataTableToolbar.js +65 -53
  26. package/dist/components/dynamic-form/ArrayController.js +103 -85
  27. package/dist/components/dynamic-form/CodeContent.js +36 -28
  28. package/dist/components/dynamic-form/Form.js +56 -43
  29. package/dist/components/dynamic-form/FormBody.js +10 -12
  30. package/dist/components/dynamic-form/FormElement.js +41 -31
  31. package/dist/components/dynamic-form/FormElementHeader.js +20 -12
  32. package/dist/components/dynamic-form/InputController.js +38 -36
  33. package/dist/components/dynamic-form/MarkdownContent.js +74 -53
  34. package/dist/components/dynamic-form/MermaidDiagram.js +24 -22
  35. package/dist/components/dynamic-form/ObjectController.js +32 -24
  36. package/dist/components/dynamic-form/fields/BaseFieldWrapper.js +47 -35
  37. package/dist/components/dynamic-form/fields/CheckboxField.js +48 -39
  38. package/dist/components/dynamic-form/fields/CodeViewField.js +50 -42
  39. package/dist/components/dynamic-form/fields/InputField.js +90 -62
  40. package/dist/components/dynamic-form/fields/MarkdownViewField.js +19 -16
  41. package/dist/components/dynamic-form/fields/RadioField.js +62 -46
  42. package/dist/components/dynamic-form/fields/SelectField.js +58 -40
  43. package/dist/components/dynamic-form/fields/SliderField.js +100 -94
  44. package/dist/components/dynamic-form/fields/SwitchField.js +61 -42
  45. package/dist/components/dynamic-form/fields/TextareaField.js +72 -53
  46. package/dist/components/dynamic-form/fields/utils/text-validation-utils.js +2 -4
  47. package/dist/components/dynamic-form/hooks/useArrayDefaultValue.js +5 -6
  48. package/dist/components/dynamic-form/hooks/useFieldConfig.js +20 -19
  49. package/dist/components/dynamic-form/hooks/useMergeParentKey.js +2 -4
  50. package/dist/components/dynamic-form/hooks/useSortPropertyNames.js +2 -4
  51. package/dist/components/feedback/ErrorAlert.js +17 -11
  52. package/dist/components/feedback/ErrorBoundary.js +14 -16
  53. package/dist/components/feedback/ErrorSnackbar.js +30 -13
  54. package/dist/components/feedback/LoadingCentered.js +28 -15
  55. package/dist/components/feedback/Snackbar.js +44 -43
  56. package/dist/components/feedback/index.js +5 -5
  57. package/dist/components/index.js +47 -47
  58. package/dist/components/layout/MainLayout.js +25 -17
  59. package/dist/components/layout/StudioSidebar.js +202 -132
  60. package/dist/components/lists/CustomListView.js +74 -49
  61. package/dist/components/lists/ListView.js +102 -66
  62. package/dist/components/loopstack-elements/link.js +104 -65
  63. package/dist/components/loopstack-elements/tool.js +142 -70
  64. package/dist/components/messages/CompletionMessagePaper.js +85 -53
  65. package/dist/components/page/PageBreadcrumbs.js +83 -64
  66. package/dist/components/ui/DiscordLogo.js +22 -16
  67. package/dist/components/ui/GoogleLogo.js +44 -40
  68. package/dist/components/ui/accordion.js +52 -31
  69. package/dist/components/ui/alert-dialog.js +109 -59
  70. package/dist/components/ui/alert.js +36 -22
  71. package/dist/components/ui/avatar.js +35 -21
  72. package/dist/components/ui/badge.js +17 -13
  73. package/dist/components/ui/breadcrumb.js +82 -46
  74. package/dist/components/ui/button-group.js +5 -5
  75. package/dist/components/ui/button.js +21 -17
  76. package/dist/components/ui/card.js +74 -40
  77. package/dist/components/ui/checkbox.js +23 -17
  78. package/dist/components/ui/collapsible.js +25 -17
  79. package/dist/components/ui/command.js +2 -1
  80. package/dist/components/ui/context-menu.js +52 -32
  81. package/dist/components/ui/dialog.js +107 -62
  82. package/dist/components/ui/drawer.js +99 -54
  83. package/dist/components/ui/dropdown-menu.js +159 -91
  84. package/dist/components/ui/hover-card.js +2 -1
  85. package/dist/components/ui/input-group.js +56 -36
  86. package/dist/components/ui/input.js +15 -11
  87. package/dist/components/ui/label.js +15 -11
  88. package/dist/components/ui/popover.js +38 -25
  89. package/dist/components/ui/radio-group.js +33 -22
  90. package/dist/components/ui/scroll-area.js +43 -28
  91. package/dist/components/ui/select.js +134 -73
  92. package/dist/components/ui/separator.js +17 -13
  93. package/dist/components/ui/sheet.js +105 -60
  94. package/dist/components/ui/sidebar.js +451 -269
  95. package/dist/components/ui/skeleton.js +14 -10
  96. package/dist/components/ui/slider.js +15 -17
  97. package/dist/components/ui/switch.js +21 -15
  98. package/dist/components/ui/table.js +85 -46
  99. package/dist/components/ui/tabs.js +45 -26
  100. package/dist/components/ui/textarea.js +14 -10
  101. package/dist/components/ui/tooltip.js +41 -26
  102. package/dist/components/ui-widgets/UiActions.js +37 -30
  103. package/dist/components/ui-widgets/UiWidget.js +46 -34
  104. package/dist/components/ui-widgets/widgets/AiPromptInput.js +42 -28
  105. package/dist/components/ui-widgets/widgets/ButtonFullWidth.js +21 -16
  106. package/dist/components/ui-widgets/widgets/SandboxRun.js +26 -19
  107. package/dist/components/ui-widgets/widgets/SubmitButton.js +20 -15
  108. package/dist/events/api-client-events.js +2 -4
  109. package/dist/events/sse-client-events.js +2 -4
  110. package/dist/features/code-explorer/CodeExplorer.js +2 -1
  111. package/dist/features/code-explorer/components/CodeExplorerTree.js +2 -2
  112. package/dist/features/code-explorer/components/CodeExplorerTreeNode.js +29 -31
  113. package/dist/features/code-explorer/components/FileContentViewer.js +148 -108
  114. package/dist/features/code-explorer/components/FileTabsBar.js +2 -1
  115. package/dist/features/code-explorer/components/FileTabsBarBase.js +169 -134
  116. package/dist/features/code-explorer/index.js +1 -1
  117. package/dist/features/code-explorer/providers/CodeExplorerProvider.js +4 -4
  118. package/dist/features/code-explorer/utils/fileIcons.js +39 -41
  119. package/dist/features/dashboard/Dashboard.js +121 -79
  120. package/dist/features/dashboard/RunItem.js +68 -50
  121. package/dist/features/dashboard/RunList.js +28 -17
  122. package/dist/features/debug/components/ConfigFlowViewer.js +67 -49
  123. package/dist/features/debug/components/WorkflowDebugHeader.js +46 -30
  124. package/dist/features/debug/components/WorkflowDebugLegend.js +68 -56
  125. package/dist/features/debug/components/WorkflowFlowViewer.js +96 -76
  126. package/dist/features/debug/components/workflow-flow/StateNode.js +102 -73
  127. package/dist/features/debug/components/workflow-flow/WorkflowGraph.js +40 -35
  128. package/dist/features/debug/components/workflow-flow/WorkflowTransitionEdge.js +94 -61
  129. package/dist/features/debug/index.js +3 -3
  130. package/dist/features/debug/lib/edge-paths.js +31 -33
  131. package/dist/features/debug/lib/flow-utils.js +145 -147
  132. package/dist/features/documents/DocumentRenderer.js +77 -73
  133. package/dist/features/documents/components/DocumentItem.js +24 -21
  134. package/dist/features/documents/components/DocumentList.js +45 -39
  135. package/dist/features/documents/components/DocumentMetadataPills.js +59 -44
  136. package/dist/features/documents/document-details/DocumentDetails.js +413 -298
  137. package/dist/features/documents/document-details/PromptDetails.js +142 -105
  138. package/dist/features/documents/index.js +4 -4
  139. package/dist/features/documents/renderers/AiMessage.js +48 -39
  140. package/dist/features/documents/renderers/AiMessageContent.js +164 -108
  141. package/dist/features/documents/renderers/ChoicesRenderer.js +89 -77
  142. package/dist/features/documents/renderers/ClaudeMessage.js +91 -74
  143. package/dist/features/documents/renderers/ConfirmPromptRenderer.js +53 -44
  144. package/dist/features/documents/renderers/DocumentDebugRenderer.js +30 -26
  145. package/dist/features/documents/renderers/DocumentFormRenderer.js +85 -69
  146. package/dist/features/documents/renderers/DocumentMessageRenderer.js +9 -10
  147. package/dist/features/documents/renderers/ErrorMessageRenderer.js +13 -11
  148. package/dist/features/documents/renderers/LinkMessageRenderer.js +14 -15
  149. package/dist/features/documents/renderers/MarkdownMessageRenderer.js +10 -8
  150. package/dist/features/documents/renderers/PlainMessageRenderer.js +9 -7
  151. package/dist/features/documents/renderers/SecretInputRenderer.js +35 -37
  152. package/dist/features/documents/renderers/TextPromptRenderer.js +54 -45
  153. package/dist/features/documents/renderers/useDocumentTransition.js +7 -9
  154. package/dist/features/health/LocalHealthCheck.js +53 -54
  155. package/dist/features/health/index.js +1 -1
  156. package/dist/features/oauth/OAuthCallbackPage.js +2 -2
  157. package/dist/features/oauth/OAuthPromptRenderer.js +197 -148
  158. package/dist/features/oauth/index.js +2 -2
  159. package/dist/features/oauth/useOAuthPopup.js +71 -52
  160. package/dist/features/runs/Runs.js +187 -145
  161. package/dist/features/workbench/Workbench.js +98 -72
  162. package/dist/features/workbench/WorkflowItem.js +68 -49
  163. package/dist/features/workbench/WorkflowList.js +66 -51
  164. package/dist/features/workbench/components/NewRunDialog.js +309 -212
  165. package/dist/features/workbench/components/RemoteFileTabsBar.js +17 -18
  166. package/dist/features/workbench/components/RemoteFileTree.js +85 -54
  167. package/dist/features/workbench/components/WorkbenchFilesPanel.js +63 -52
  168. package/dist/features/workbench/components/WorkbenchFloatingPanel.js +51 -34
  169. package/dist/features/workbench/components/WorkbenchFlowPanel.js +44 -35
  170. package/dist/features/workbench/components/WorkbenchIconSidebar.js +68 -50
  171. package/dist/features/workbench/components/WorkbenchPreviewPanel.js +49 -51
  172. package/dist/features/workbench/components/WorkbenchSecretsPanel.js +172 -143
  173. package/dist/features/workbench/components/WorkbenchSettingsModal.js +60 -49
  174. package/dist/features/workbench/components/WorkflowForms.js +23 -17
  175. package/dist/features/workbench/components/WorkflowHistoryItem.js +122 -96
  176. package/dist/features/workbench/components/WorkflowHistoryList.js +54 -31
  177. package/dist/features/workbench/components/buttons/WorkflowButtons.js +99 -70
  178. package/dist/features/workbench/hooks/useAutoScrollBottom.js +25 -21
  179. package/dist/features/workbench/hooks/useScrollToListItem.js +21 -20
  180. package/dist/features/workbench/hooks/useWorkflowData.js +44 -31
  181. package/dist/features/workbench/hooks/useWorkflowListState.js +12 -13
  182. package/dist/features/workbench/index.js +7 -7
  183. package/dist/features/workbench/providers/RemoteFileExplorerProvider.js +138 -123
  184. package/dist/features/workbench/providers/ScrollProvider.js +19 -15
  185. package/dist/features/workbench/providers/WorkbenchLayoutProvider.js +75 -76
  186. package/dist/features/workspaces/Workspaces.js +226 -161
  187. package/dist/features/workspaces/components/CreateWorkspace.js +194 -137
  188. package/dist/features/workspaces/components/EnvironmentSlotSelector.js +25 -27
  189. package/dist/features/workspaces/components/ExecutionTimeline.js +185 -143
  190. package/dist/features/workspaces/components/NewWorkflowRunDialog.js +26 -18
  191. package/dist/features/workspaces/components/WorkflowRunForm.js +133 -85
  192. package/dist/features/workspaces/components/WorkspaceHomePage.js +80 -59
  193. package/dist/features/workspaces/components/workflow-form/ArgumentsView.js +69 -52
  194. package/dist/features/workspaces/components/workflow-form/HeaderSection.js +41 -27
  195. package/dist/features/workspaces/components/workflow-form/SelectionView.js +103 -64
  196. package/dist/features/workspaces/index.js +3 -3
  197. package/dist/hooks/index.js +6 -6
  198. package/dist/hooks/query-keys.js +31 -33
  199. package/dist/hooks/use-mobile.js +11 -12
  200. package/dist/hooks/useApi.js +14 -16
  201. package/dist/hooks/useAuth.js +53 -38
  202. package/dist/hooks/useConfig.js +37 -26
  203. package/dist/hooks/useDashboard.js +15 -12
  204. package/dist/hooks/useDebounce.js +11 -12
  205. package/dist/hooks/useDocuments.js +35 -23
  206. package/dist/hooks/useFiles.js +2 -1
  207. package/dist/hooks/useProcessor.js +17 -14
  208. package/dist/hooks/useSecrets.js +64 -45
  209. package/dist/hooks/useWorkflows.js +161 -109
  210. package/dist/hooks/useWorkspaces.js +123 -83
  211. package/dist/index.d.ts +1304 -0
  212. package/dist/index.js +80 -80
  213. package/dist/lib/requireParam.js +2 -4
  214. package/dist/lib/utils.js +5 -7
  215. package/dist/node_modules/@braintree/sanitize-url/dist/constants.js +4 -6
  216. package/dist/node_modules/@braintree/sanitize-url/dist/index.js +6 -8
  217. package/dist/node_modules/@chevrotain/gast/lib/src/helpers.js +17 -19
  218. package/dist/node_modules/@chevrotain/gast/lib/src/model.js +71 -73
  219. package/dist/node_modules/@chevrotain/gast/lib/src/visitor.js +13 -16
  220. package/dist/node_modules/@chevrotain/regexp-to-ast/lib/src/api.js +2 -2
  221. package/dist/node_modules/@chevrotain/regexp-to-ast/lib/src/base-regexp-visitor.js +2 -4
  222. package/dist/node_modules/@chevrotain/regexp-to-ast/lib/src/character-classes.js +34 -36
  223. package/dist/node_modules/@chevrotain/regexp-to-ast/lib/src/regexp-parser.js +110 -138
  224. package/dist/node_modules/@chevrotain/regexp-to-ast/lib/src/utils.js +11 -13
  225. package/dist/node_modules/@chevrotain/utils/lib/src/print.js +3 -5
  226. package/dist/node_modules/@chevrotain/utils/lib/src/timer.js +2 -4
  227. package/dist/node_modules/@chevrotain/utils/lib/src/to-fast-properties.js +2 -4
  228. package/dist/node_modules/@dagrejs/dagre/dist/dagre.esm.js +1913 -1812
  229. package/dist/node_modules/@iconify/utils/lib/customisations/defaults.js +6 -8
  230. package/dist/node_modules/@iconify/utils/lib/icon/defaults.js +8 -10
  231. package/dist/node_modules/@iconify/utils/lib/icon/merge.js +6 -8
  232. package/dist/node_modules/@iconify/utils/lib/icon/name.js +6 -8
  233. package/dist/node_modules/@iconify/utils/lib/icon/transformations.js +2 -4
  234. package/dist/node_modules/@iconify/utils/lib/icon-set/get-icon.js +10 -12
  235. package/dist/node_modules/@iconify/utils/lib/icon-set/tree.js +2 -4
  236. package/dist/node_modules/@iconify/utils/lib/svg/build.js +18 -20
  237. package/dist/node_modules/@iconify/utils/lib/svg/defs.js +6 -8
  238. package/dist/node_modules/@iconify/utils/lib/svg/html.js +2 -4
  239. package/dist/node_modules/@iconify/utils/lib/svg/id.js +8 -10
  240. package/dist/node_modules/@iconify/utils/lib/svg/size.js +5 -7
  241. package/dist/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/architecture-YZFGNWBL.js +2 -2
  242. package/dist/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-2KRD3SAO.js +17 -20
  243. package/dist/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-67CJDMHE.js +17 -20
  244. package/dist/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-7N4EOEYR.js +23 -28
  245. package/dist/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-AA7GKIK3.js +21 -26
  246. package/dist/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-CIAEETIT.js +17 -20
  247. package/dist/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-FOC6F5B3.js +17 -20
  248. package/dist/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-K5T4RW27.js +425 -436
  249. package/dist/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-KGLVRYIC.js +17 -20
  250. package/dist/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-LIHQZDEY.js +38 -45
  251. package/dist/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/chunk-ORNJ4GCN.js +22 -27
  252. package/dist/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/gitGraph-7Q5UKJZL.js +2 -2
  253. package/dist/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/info-OMHHGYJF.js +2 -2
  254. package/dist/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/packet-4T2RLAQJ.js +2 -2
  255. package/dist/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/pie-ZZUOXDRM.js +2 -2
  256. package/dist/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/radar-PYXPWWZC.js +2 -2
  257. package/dist/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/treeView-SZITEDCU.js +2 -2
  258. package/dist/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/treemap-W4RFUUIX.js +2 -2
  259. package/dist/node_modules/@mermaid-js/parser/dist/chunks/mermaid-parser.core/wardley-RL74JXVD.js +2 -2
  260. package/dist/node_modules/@mermaid-js/parser/dist/mermaid-parser.core.js +52 -56
  261. package/dist/node_modules/@shikijs/core/dist/index.js +1119 -583
  262. package/dist/node_modules/@shikijs/engine-oniguruma/dist/index.js +148 -163
  263. package/dist/node_modules/@shikijs/engine-oniguruma/dist/wasm-inlined.js +2 -4
  264. package/dist/node_modules/@shikijs/langs/dist/abap.js +2 -3
  265. package/dist/node_modules/@shikijs/langs/dist/actionscript-3.js +2 -3
  266. package/dist/node_modules/@shikijs/langs/dist/ada.js +2 -3
  267. package/dist/node_modules/@shikijs/langs/dist/angular-expression.js +2 -3
  268. package/dist/node_modules/@shikijs/langs/dist/angular-html.js +13 -15
  269. package/dist/node_modules/@shikijs/langs/dist/angular-inline-style.js +3 -5
  270. package/dist/node_modules/@shikijs/langs/dist/angular-inline-template.js +7 -9
  271. package/dist/node_modules/@shikijs/langs/dist/angular-let-declaration.js +3 -5
  272. package/dist/node_modules/@shikijs/langs/dist/angular-template-blocks.js +7 -9
  273. package/dist/node_modules/@shikijs/langs/dist/angular-template.js +3 -5
  274. package/dist/node_modules/@shikijs/langs/dist/angular-ts.js +15 -17
  275. package/dist/node_modules/@shikijs/langs/dist/apache.js +2 -3
  276. package/dist/node_modules/@shikijs/langs/dist/apex.js +2 -3
  277. package/dist/node_modules/@shikijs/langs/dist/apl.js +13 -15
  278. package/dist/node_modules/@shikijs/langs/dist/applescript.js +2 -3
  279. package/dist/node_modules/@shikijs/langs/dist/ara.js +2 -3
  280. package/dist/node_modules/@shikijs/langs/dist/asciidoc.js +2 -3
  281. package/dist/node_modules/@shikijs/langs/dist/asm.js +2 -3
  282. package/dist/node_modules/@shikijs/langs/dist/astro.js +15 -17
  283. package/dist/node_modules/@shikijs/langs/dist/awk.js +2 -3
  284. package/dist/node_modules/@shikijs/langs/dist/ballerina.js +2 -3
  285. package/dist/node_modules/@shikijs/langs/dist/bat.js +2 -3
  286. package/dist/node_modules/@shikijs/langs/dist/beancount.js +2 -3
  287. package/dist/node_modules/@shikijs/langs/dist/berry.js +2 -3
  288. package/dist/node_modules/@shikijs/langs/dist/bibtex.js +2 -3
  289. package/dist/node_modules/@shikijs/langs/dist/bicep.js +2 -3
  290. package/dist/node_modules/@shikijs/langs/dist/bird2.js +2 -3
  291. package/dist/node_modules/@shikijs/langs/dist/blade.js +17 -19
  292. package/dist/node_modules/@shikijs/langs/dist/bsl.js +3 -5
  293. package/dist/node_modules/@shikijs/langs/dist/c.js +2 -3
  294. package/dist/node_modules/@shikijs/langs/dist/c3.js +2 -3
  295. package/dist/node_modules/@shikijs/langs/dist/cadence.js +2 -3
  296. package/dist/node_modules/@shikijs/langs/dist/cairo.js +3 -5
  297. package/dist/node_modules/@shikijs/langs/dist/clarity.js +2 -3
  298. package/dist/node_modules/@shikijs/langs/dist/clojure.js +2 -3
  299. package/dist/node_modules/@shikijs/langs/dist/cmake.js +2 -3
  300. package/dist/node_modules/@shikijs/langs/dist/cobol.js +7 -9
  301. package/dist/node_modules/@shikijs/langs/dist/codeowners.js +2 -3
  302. package/dist/node_modules/@shikijs/langs/dist/codeql.js +2 -3
  303. package/dist/node_modules/@shikijs/langs/dist/coffee.js +3 -5
  304. package/dist/node_modules/@shikijs/langs/dist/common-lisp.js +2 -3
  305. package/dist/node_modules/@shikijs/langs/dist/coq.js +2 -3
  306. package/dist/node_modules/@shikijs/langs/dist/cpp-macro.js +9 -11
  307. package/dist/node_modules/@shikijs/langs/dist/cpp.js +11 -13
  308. package/dist/node_modules/@shikijs/langs/dist/crystal.js +15 -17
  309. package/dist/node_modules/@shikijs/langs/dist/csharp.js +2 -3
  310. package/dist/node_modules/@shikijs/langs/dist/css.js +2 -3
  311. package/dist/node_modules/@shikijs/langs/dist/csv.js +2 -3
  312. package/dist/node_modules/@shikijs/langs/dist/cue.js +2 -3
  313. package/dist/node_modules/@shikijs/langs/dist/cypher.js +2 -3
  314. package/dist/node_modules/@shikijs/langs/dist/d.js +2 -3
  315. package/dist/node_modules/@shikijs/langs/dist/dart.js +2 -3
  316. package/dist/node_modules/@shikijs/langs/dist/dax.js +2 -3
  317. package/dist/node_modules/@shikijs/langs/dist/desktop.js +2 -3
  318. package/dist/node_modules/@shikijs/langs/dist/diff.js +2 -3
  319. package/dist/node_modules/@shikijs/langs/dist/docker.js +2 -3
  320. package/dist/node_modules/@shikijs/langs/dist/dotenv.js +2 -3
  321. package/dist/node_modules/@shikijs/langs/dist/dream-maker.js +2 -3
  322. package/dist/node_modules/@shikijs/langs/dist/edge.js +9 -11
  323. package/dist/node_modules/@shikijs/langs/dist/elixir.js +3 -5
  324. package/dist/node_modules/@shikijs/langs/dist/elm.js +3 -5
  325. package/dist/node_modules/@shikijs/langs/dist/emacs-lisp.js +2 -3
  326. package/dist/node_modules/@shikijs/langs/dist/erb.js +7 -9
  327. package/dist/node_modules/@shikijs/langs/dist/erlang.js +3 -5
  328. package/dist/node_modules/@shikijs/langs/dist/es-tag-css.js +9 -11
  329. package/dist/node_modules/@shikijs/langs/dist/es-tag-glsl.js +9 -11
  330. package/dist/node_modules/@shikijs/langs/dist/es-tag-html.js +9 -11
  331. package/dist/node_modules/@shikijs/langs/dist/es-tag-sql.js +7 -9
  332. package/dist/node_modules/@shikijs/langs/dist/es-tag-xml.js +3 -5
  333. package/dist/node_modules/@shikijs/langs/dist/fennel.js +2 -3
  334. package/dist/node_modules/@shikijs/langs/dist/fish.js +2 -3
  335. package/dist/node_modules/@shikijs/langs/dist/fluent.js +2 -3
  336. package/dist/node_modules/@shikijs/langs/dist/fortran-fixed-form.js +3 -5
  337. package/dist/node_modules/@shikijs/langs/dist/fortran-free-form.js +2 -3
  338. package/dist/node_modules/@shikijs/langs/dist/fsharp.js +3 -5
  339. package/dist/node_modules/@shikijs/langs/dist/gdresource.js +7 -9
  340. package/dist/node_modules/@shikijs/langs/dist/gdscript.js +2 -3
  341. package/dist/node_modules/@shikijs/langs/dist/gdshader.js +2 -3
  342. package/dist/node_modules/@shikijs/langs/dist/genie.js +2 -3
  343. package/dist/node_modules/@shikijs/langs/dist/gherkin.js +2 -3
  344. package/dist/node_modules/@shikijs/langs/dist/git-commit.js +3 -5
  345. package/dist/node_modules/@shikijs/langs/dist/git-rebase.js +3 -5
  346. package/dist/node_modules/@shikijs/langs/dist/gleam.js +2 -3
  347. package/dist/node_modules/@shikijs/langs/dist/glimmer-js.js +11 -13
  348. package/dist/node_modules/@shikijs/langs/dist/glimmer-ts.js +11 -13
  349. package/dist/node_modules/@shikijs/langs/dist/glsl.js +3 -5
  350. package/dist/node_modules/@shikijs/langs/dist/gn.js +2 -3
  351. package/dist/node_modules/@shikijs/langs/dist/gnuplot.js +2 -3
  352. package/dist/node_modules/@shikijs/langs/dist/go.js +2 -3
  353. package/dist/node_modules/@shikijs/langs/dist/graphql.js +11 -13
  354. package/dist/node_modules/@shikijs/langs/dist/groovy.js +2 -3
  355. package/dist/node_modules/@shikijs/langs/dist/hack.js +7 -9
  356. package/dist/node_modules/@shikijs/langs/dist/haml.js +7 -9
  357. package/dist/node_modules/@shikijs/langs/dist/handlebars.js +11 -13
  358. package/dist/node_modules/@shikijs/langs/dist/haskell.js +2 -3
  359. package/dist/node_modules/@shikijs/langs/dist/haxe.js +2 -3
  360. package/dist/node_modules/@shikijs/langs/dist/hcl.js +2 -3
  361. package/dist/node_modules/@shikijs/langs/dist/hjson.js +2 -3
  362. package/dist/node_modules/@shikijs/langs/dist/hlsl.js +2 -3
  363. package/dist/node_modules/@shikijs/langs/dist/html-derivative.js +3 -5
  364. package/dist/node_modules/@shikijs/langs/dist/html.js +7 -9
  365. package/dist/node_modules/@shikijs/langs/dist/http.js +11 -13
  366. package/dist/node_modules/@shikijs/langs/dist/hurl.js +9 -11
  367. package/dist/node_modules/@shikijs/langs/dist/hxml.js +3 -5
  368. package/dist/node_modules/@shikijs/langs/dist/hy.js +2 -3
  369. package/dist/node_modules/@shikijs/langs/dist/imba.js +2 -3
  370. package/dist/node_modules/@shikijs/langs/dist/ini.js +2 -3
  371. package/dist/node_modules/@shikijs/langs/dist/java.js +2 -3
  372. package/dist/node_modules/@shikijs/langs/dist/javascript.js +2 -3
  373. package/dist/node_modules/@shikijs/langs/dist/jinja-html.js +3 -5
  374. package/dist/node_modules/@shikijs/langs/dist/jinja.js +3 -5
  375. package/dist/node_modules/@shikijs/langs/dist/jison.js +3 -5
  376. package/dist/node_modules/@shikijs/langs/dist/json.js +2 -3
  377. package/dist/node_modules/@shikijs/langs/dist/json5.js +2 -3
  378. package/dist/node_modules/@shikijs/langs/dist/jsonc.js +2 -3
  379. package/dist/node_modules/@shikijs/langs/dist/jsonl.js +2 -3
  380. package/dist/node_modules/@shikijs/langs/dist/jsonnet.js +2 -3
  381. package/dist/node_modules/@shikijs/langs/dist/jssm.js +2 -3
  382. package/dist/node_modules/@shikijs/langs/dist/jsx.js +2 -3
  383. package/dist/node_modules/@shikijs/langs/dist/julia.js +13 -15
  384. package/dist/node_modules/@shikijs/langs/dist/just.js +15 -17
  385. package/dist/node_modules/@shikijs/langs/dist/kdl.js +2 -3
  386. package/dist/node_modules/@shikijs/langs/dist/kotlin.js +2 -3
  387. package/dist/node_modules/@shikijs/langs/dist/kusto.js +2 -3
  388. package/dist/node_modules/@shikijs/langs/dist/latex.js +3 -5
  389. package/dist/node_modules/@shikijs/langs/dist/lean.js +2 -3
  390. package/dist/node_modules/@shikijs/langs/dist/less.js +2 -3
  391. package/dist/node_modules/@shikijs/langs/dist/liquid.js +11 -13
  392. package/dist/node_modules/@shikijs/langs/dist/llvm.js +2 -3
  393. package/dist/node_modules/@shikijs/langs/dist/log.js +2 -3
  394. package/dist/node_modules/@shikijs/langs/dist/logo.js +2 -3
  395. package/dist/node_modules/@shikijs/langs/dist/lua.js +3 -5
  396. package/dist/node_modules/@shikijs/langs/dist/luau.js +2 -3
  397. package/dist/node_modules/@shikijs/langs/dist/make.js +2 -3
  398. package/dist/node_modules/@shikijs/langs/dist/markdown-nix.js +2 -3
  399. package/dist/node_modules/@shikijs/langs/dist/markdown-vue.js +2 -3
  400. package/dist/node_modules/@shikijs/langs/dist/markdown.js +2 -3
  401. package/dist/node_modules/@shikijs/langs/dist/marko.js +11 -13
  402. package/dist/node_modules/@shikijs/langs/dist/matlab.js +2 -3
  403. package/dist/node_modules/@shikijs/langs/dist/mdc.js +9 -11
  404. package/dist/node_modules/@shikijs/langs/dist/mdx.js +2 -3
  405. package/dist/node_modules/@shikijs/langs/dist/mermaid.js +2 -3
  406. package/dist/node_modules/@shikijs/langs/dist/mipsasm.js +2 -3
  407. package/dist/node_modules/@shikijs/langs/dist/mojo.js +2 -3
  408. package/dist/node_modules/@shikijs/langs/dist/moonbit.js +2 -3
  409. package/dist/node_modules/@shikijs/langs/dist/move.js +2 -3
  410. package/dist/node_modules/@shikijs/langs/dist/narrat.js +2 -3
  411. package/dist/node_modules/@shikijs/langs/dist/nextflow-groovy.js +2 -3
  412. package/dist/node_modules/@shikijs/langs/dist/nextflow.js +3 -5
  413. package/dist/node_modules/@shikijs/langs/dist/nginx.js +3 -5
  414. package/dist/node_modules/@shikijs/langs/dist/nim.js +17 -19
  415. package/dist/node_modules/@shikijs/langs/dist/nix.js +3 -5
  416. package/dist/node_modules/@shikijs/langs/dist/nushell.js +2 -3
  417. package/dist/node_modules/@shikijs/langs/dist/objective-c.js +2 -3
  418. package/dist/node_modules/@shikijs/langs/dist/objective-cpp.js +2 -3
  419. package/dist/node_modules/@shikijs/langs/dist/ocaml.js +2 -3
  420. package/dist/node_modules/@shikijs/langs/dist/odin.js +2 -3
  421. package/dist/node_modules/@shikijs/langs/dist/openscad.js +2 -3
  422. package/dist/node_modules/@shikijs/langs/dist/pascal.js +2 -3
  423. package/dist/node_modules/@shikijs/langs/dist/perl.js +13 -15
  424. package/dist/node_modules/@shikijs/langs/dist/php.js +15 -17
  425. package/dist/node_modules/@shikijs/langs/dist/pkl.js +2 -3
  426. package/dist/node_modules/@shikijs/langs/dist/plsql.js +2 -3
  427. package/dist/node_modules/@shikijs/langs/dist/po.js +2 -3
  428. package/dist/node_modules/@shikijs/langs/dist/polar.js +2 -3
  429. package/dist/node_modules/@shikijs/langs/dist/postcss.js +2 -3
  430. package/dist/node_modules/@shikijs/langs/dist/powerquery.js +2 -3
  431. package/dist/node_modules/@shikijs/langs/dist/powershell.js +2 -3
  432. package/dist/node_modules/@shikijs/langs/dist/prisma.js +2 -3
  433. package/dist/node_modules/@shikijs/langs/dist/prolog.js +2 -3
  434. package/dist/node_modules/@shikijs/langs/dist/proto.js +2 -3
  435. package/dist/node_modules/@shikijs/langs/dist/pug.js +9 -11
  436. package/dist/node_modules/@shikijs/langs/dist/puppet.js +2 -3
  437. package/dist/node_modules/@shikijs/langs/dist/purescript.js +2 -3
  438. package/dist/node_modules/@shikijs/langs/dist/python.js +2 -3
  439. package/dist/node_modules/@shikijs/langs/dist/qml.js +3 -5
  440. package/dist/node_modules/@shikijs/langs/dist/qmldir.js +2 -3
  441. package/dist/node_modules/@shikijs/langs/dist/qss.js +2 -3
  442. package/dist/node_modules/@shikijs/langs/dist/r.js +2 -3
  443. package/dist/node_modules/@shikijs/langs/dist/racket.js +2 -3
  444. package/dist/node_modules/@shikijs/langs/dist/raku.js +2 -3
  445. package/dist/node_modules/@shikijs/langs/dist/razor.js +7 -9
  446. package/dist/node_modules/@shikijs/langs/dist/reg.js +2 -3
  447. package/dist/node_modules/@shikijs/langs/dist/regexp.js +2 -3
  448. package/dist/node_modules/@shikijs/langs/dist/rel.js +2 -3
  449. package/dist/node_modules/@shikijs/langs/dist/riscv.js +2 -3
  450. package/dist/node_modules/@shikijs/langs/dist/ron.js +2 -3
  451. package/dist/node_modules/@shikijs/langs/dist/rosmsg.js +2 -3
  452. package/dist/node_modules/@shikijs/langs/dist/rst.js +19 -21
  453. package/dist/node_modules/@shikijs/langs/dist/ruby.js +27 -29
  454. package/dist/node_modules/@shikijs/langs/dist/rust.js +2 -3
  455. package/dist/node_modules/@shikijs/langs/dist/sas.js +3 -5
  456. package/dist/node_modules/@shikijs/langs/dist/sass.js +2 -3
  457. package/dist/node_modules/@shikijs/langs/dist/scala.js +2 -3
  458. package/dist/node_modules/@shikijs/langs/dist/scheme.js +2 -3
  459. package/dist/node_modules/@shikijs/langs/dist/scss.js +3 -5
  460. package/dist/node_modules/@shikijs/langs/dist/sdbl.js +2 -3
  461. package/dist/node_modules/@shikijs/langs/dist/shaderlab.js +3 -5
  462. package/dist/node_modules/@shikijs/langs/dist/shellscript.js +2 -3
  463. package/dist/node_modules/@shikijs/langs/dist/shellsession.js +3 -5
  464. package/dist/node_modules/@shikijs/langs/dist/smalltalk.js +2 -3
  465. package/dist/node_modules/@shikijs/langs/dist/solidity.js +2 -3
  466. package/dist/node_modules/@shikijs/langs/dist/soy.js +3 -5
  467. package/dist/node_modules/@shikijs/langs/dist/sparql.js +3 -5
  468. package/dist/node_modules/@shikijs/langs/dist/splunk.js +2 -3
  469. package/dist/node_modules/@shikijs/langs/dist/sql.js +2 -3
  470. package/dist/node_modules/@shikijs/langs/dist/ssh-config.js +2 -3
  471. package/dist/node_modules/@shikijs/langs/dist/stata.js +3 -5
  472. package/dist/node_modules/@shikijs/langs/dist/stylus.js +2 -3
  473. package/dist/node_modules/@shikijs/langs/dist/surrealql.js +3 -5
  474. package/dist/node_modules/@shikijs/langs/dist/svelte.js +11 -13
  475. package/dist/node_modules/@shikijs/langs/dist/swift.js +2 -3
  476. package/dist/node_modules/@shikijs/langs/dist/system-verilog.js +2 -3
  477. package/dist/node_modules/@shikijs/langs/dist/systemd.js +2 -3
  478. package/dist/node_modules/@shikijs/langs/dist/talonscript.js +2 -3
  479. package/dist/node_modules/@shikijs/langs/dist/tasl.js +2 -3
  480. package/dist/node_modules/@shikijs/langs/dist/tcl.js +2 -3
  481. package/dist/node_modules/@shikijs/langs/dist/templ.js +9 -11
  482. package/dist/node_modules/@shikijs/langs/dist/terraform.js +2 -3
  483. package/dist/node_modules/@shikijs/langs/dist/tex.js +3 -5
  484. package/dist/node_modules/@shikijs/langs/dist/toml.js +2 -3
  485. package/dist/node_modules/@shikijs/langs/dist/ts-tags.js +15 -17
  486. package/dist/node_modules/@shikijs/langs/dist/tsv.js +2 -3
  487. package/dist/node_modules/@shikijs/langs/dist/tsx.js +2 -3
  488. package/dist/node_modules/@shikijs/langs/dist/turtle.js +2 -3
  489. package/dist/node_modules/@shikijs/langs/dist/twig.js +15 -17
  490. package/dist/node_modules/@shikijs/langs/dist/typescript.js +2 -3
  491. package/dist/node_modules/@shikijs/langs/dist/typespec.js +2 -3
  492. package/dist/node_modules/@shikijs/langs/dist/typst.js +2 -3
  493. package/dist/node_modules/@shikijs/langs/dist/v.js +2 -3
  494. package/dist/node_modules/@shikijs/langs/dist/vala.js +2 -3
  495. package/dist/node_modules/@shikijs/langs/dist/vb.js +2 -3
  496. package/dist/node_modules/@shikijs/langs/dist/verilog.js +2 -3
  497. package/dist/node_modules/@shikijs/langs/dist/vhdl.js +2 -3
  498. package/dist/node_modules/@shikijs/langs/dist/viml.js +2 -3
  499. package/dist/node_modules/@shikijs/langs/dist/vue-directives.js +2 -3
  500. package/dist/node_modules/@shikijs/langs/dist/vue-html.js +3 -5
  501. package/dist/node_modules/@shikijs/langs/dist/vue-interpolations.js +2 -3
  502. package/dist/node_modules/@shikijs/langs/dist/vue-sfc-style-variable-injection.js +3 -5
  503. package/dist/node_modules/@shikijs/langs/dist/vue-vine.js +15 -17
  504. package/dist/node_modules/@shikijs/langs/dist/vue.js +23 -25
  505. package/dist/node_modules/@shikijs/langs/dist/vyper.js +2 -3
  506. package/dist/node_modules/@shikijs/langs/dist/wasm.js +2 -3
  507. package/dist/node_modules/@shikijs/langs/dist/wenyan.js +2 -3
  508. package/dist/node_modules/@shikijs/langs/dist/wgsl.js +2 -3
  509. package/dist/node_modules/@shikijs/langs/dist/wikitext.js +2 -3
  510. package/dist/node_modules/@shikijs/langs/dist/wit.js +2 -3
  511. package/dist/node_modules/@shikijs/langs/dist/wolfram.js +2 -3
  512. package/dist/node_modules/@shikijs/langs/dist/xml.js +3 -5
  513. package/dist/node_modules/@shikijs/langs/dist/xsl.js +3 -5
  514. package/dist/node_modules/@shikijs/langs/dist/yaml.js +2 -3
  515. package/dist/node_modules/@shikijs/langs/dist/zenscript.js +2 -3
  516. package/dist/node_modules/@shikijs/langs/dist/zig.js +2 -3
  517. package/dist/node_modules/@shikijs/themes/dist/andromeeda.js +2 -4
  518. package/dist/node_modules/@shikijs/themes/dist/aurora-x.js +2 -4
  519. package/dist/node_modules/@shikijs/themes/dist/ayu-dark.js +2 -4
  520. package/dist/node_modules/@shikijs/themes/dist/ayu-light.js +2 -4
  521. package/dist/node_modules/@shikijs/themes/dist/ayu-mirage.js +2 -4
  522. package/dist/node_modules/@shikijs/themes/dist/catppuccin-frappe.js +2 -4
  523. package/dist/node_modules/@shikijs/themes/dist/catppuccin-latte.js +2 -4
  524. package/dist/node_modules/@shikijs/themes/dist/catppuccin-macchiato.js +2 -4
  525. package/dist/node_modules/@shikijs/themes/dist/catppuccin-mocha.js +2 -4
  526. package/dist/node_modules/@shikijs/themes/dist/dark-plus.js +2 -4
  527. package/dist/node_modules/@shikijs/themes/dist/dracula-soft.js +2 -4
  528. package/dist/node_modules/@shikijs/themes/dist/dracula.js +2 -4
  529. package/dist/node_modules/@shikijs/themes/dist/everforest-dark.js +2 -4
  530. package/dist/node_modules/@shikijs/themes/dist/everforest-light.js +2 -4
  531. package/dist/node_modules/@shikijs/themes/dist/github-dark-default.js +2 -4
  532. package/dist/node_modules/@shikijs/themes/dist/github-dark-dimmed.js +2 -4
  533. package/dist/node_modules/@shikijs/themes/dist/github-dark-high-contrast.js +2 -4
  534. package/dist/node_modules/@shikijs/themes/dist/github-dark.js +2 -4
  535. package/dist/node_modules/@shikijs/themes/dist/github-light-default.js +2 -4
  536. package/dist/node_modules/@shikijs/themes/dist/github-light-high-contrast.js +2 -4
  537. package/dist/node_modules/@shikijs/themes/dist/github-light.js +2 -4
  538. package/dist/node_modules/@shikijs/themes/dist/gruvbox-dark-hard.js +2 -4
  539. package/dist/node_modules/@shikijs/themes/dist/gruvbox-dark-medium.js +2 -4
  540. package/dist/node_modules/@shikijs/themes/dist/gruvbox-dark-soft.js +2 -4
  541. package/dist/node_modules/@shikijs/themes/dist/gruvbox-light-hard.js +2 -4
  542. package/dist/node_modules/@shikijs/themes/dist/gruvbox-light-medium.js +2 -4
  543. package/dist/node_modules/@shikijs/themes/dist/gruvbox-light-soft.js +2 -4
  544. package/dist/node_modules/@shikijs/themes/dist/horizon-bright.js +2 -4
  545. package/dist/node_modules/@shikijs/themes/dist/horizon.js +2 -4
  546. package/dist/node_modules/@shikijs/themes/dist/houston.js +2 -4
  547. package/dist/node_modules/@shikijs/themes/dist/kanagawa-dragon.js +2 -4
  548. package/dist/node_modules/@shikijs/themes/dist/kanagawa-lotus.js +2 -4
  549. package/dist/node_modules/@shikijs/themes/dist/kanagawa-wave.js +2 -4
  550. package/dist/node_modules/@shikijs/themes/dist/laserwave.js +2 -4
  551. package/dist/node_modules/@shikijs/themes/dist/light-plus.js +2 -4
  552. package/dist/node_modules/@shikijs/themes/dist/material-theme-darker.js +2 -4
  553. package/dist/node_modules/@shikijs/themes/dist/material-theme-lighter.js +2 -4
  554. package/dist/node_modules/@shikijs/themes/dist/material-theme-ocean.js +2 -4
  555. package/dist/node_modules/@shikijs/themes/dist/material-theme-palenight.js +2 -4
  556. package/dist/node_modules/@shikijs/themes/dist/material-theme.js +2 -4
  557. package/dist/node_modules/@shikijs/themes/dist/min-dark.js +2 -4
  558. package/dist/node_modules/@shikijs/themes/dist/min-light.js +2 -4
  559. package/dist/node_modules/@shikijs/themes/dist/monokai.js +2 -4
  560. package/dist/node_modules/@shikijs/themes/dist/night-owl-light.js +2 -4
  561. package/dist/node_modules/@shikijs/themes/dist/night-owl.js +2 -4
  562. package/dist/node_modules/@shikijs/themes/dist/nord.js +2 -4
  563. package/dist/node_modules/@shikijs/themes/dist/one-dark-pro.js +2 -4
  564. package/dist/node_modules/@shikijs/themes/dist/one-light.js +2 -4
  565. package/dist/node_modules/@shikijs/themes/dist/plastic.js +2 -4
  566. package/dist/node_modules/@shikijs/themes/dist/poimandres.js +2 -4
  567. package/dist/node_modules/@shikijs/themes/dist/red.js +2 -4
  568. package/dist/node_modules/@shikijs/themes/dist/rose-pine-dawn.js +2 -4
  569. package/dist/node_modules/@shikijs/themes/dist/rose-pine-moon.js +2 -4
  570. package/dist/node_modules/@shikijs/themes/dist/rose-pine.js +2 -4
  571. package/dist/node_modules/@shikijs/themes/dist/slack-dark.js +2 -4
  572. package/dist/node_modules/@shikijs/themes/dist/slack-ochin.js +2 -4
  573. package/dist/node_modules/@shikijs/themes/dist/snazzy-light.js +2 -4
  574. package/dist/node_modules/@shikijs/themes/dist/solarized-dark.js +2 -4
  575. package/dist/node_modules/@shikijs/themes/dist/solarized-light.js +2 -4
  576. package/dist/node_modules/@shikijs/themes/dist/synthwave-84.js +2 -4
  577. package/dist/node_modules/@shikijs/themes/dist/tokyo-night.js +2 -4
  578. package/dist/node_modules/@shikijs/themes/dist/vesper.js +2 -4
  579. package/dist/node_modules/@shikijs/themes/dist/vitesse-black.js +2 -4
  580. package/dist/node_modules/@shikijs/themes/dist/vitesse-dark.js +2 -4
  581. package/dist/node_modules/@shikijs/themes/dist/vitesse-light.js +2 -4
  582. package/dist/node_modules/@shikijs/types/dist/index.js +2 -4
  583. package/dist/node_modules/@shikijs/vscode-textmate/dist/index.js +947 -949
  584. package/dist/node_modules/@ungap/structured-clone/esm/deserialize.js +30 -30
  585. package/dist/node_modules/@ungap/structured-clone/esm/index.js +4 -6
  586. package/dist/node_modules/@ungap/structured-clone/esm/serialize.js +64 -64
  587. package/dist/node_modules/@ungap/structured-clone/esm/types.js +2 -0
  588. package/dist/node_modules/@upsetjs/venn.js/build/venn.esm.js +693 -695
  589. package/dist/node_modules/@xyflow/react/dist/esm/index.js +881 -883
  590. package/dist/node_modules/@xyflow/system/dist/esm/index.js +1221 -1223
  591. package/dist/node_modules/bail/index.js +2 -4
  592. package/dist/node_modules/ccount/index.js +2 -4
  593. package/dist/node_modules/character-entities-html4/index.js +2 -4
  594. package/dist/node_modules/character-entities-legacy/index.js +2 -4
  595. package/dist/node_modules/chevrotain/lib/src/api.js +10 -10
  596. package/dist/node_modules/chevrotain/lib/src/lang/lang_extensions.js +4 -6
  597. package/dist/node_modules/chevrotain/lib/src/parse/constants.js +2 -4
  598. package/dist/node_modules/chevrotain/lib/src/parse/cst/cst.js +9 -11
  599. package/dist/node_modules/chevrotain/lib/src/parse/cst/cst_visitor.js +15 -17
  600. package/dist/node_modules/chevrotain/lib/src/parse/errors_public.js +17 -19
  601. package/dist/node_modules/chevrotain/lib/src/parse/exceptions_public.js +24 -26
  602. package/dist/node_modules/chevrotain/lib/src/parse/grammar/checks.js +201 -203
  603. package/dist/node_modules/chevrotain/lib/src/parse/grammar/first.js +16 -18
  604. package/dist/node_modules/chevrotain/lib/src/parse/grammar/follow.js +17 -19
  605. package/dist/node_modules/chevrotain/lib/src/parse/grammar/gast/gast_resolver_public.js +12 -14
  606. package/dist/node_modules/chevrotain/lib/src/parse/grammar/interpreter.js +140 -142
  607. package/dist/node_modules/chevrotain/lib/src/parse/grammar/keys.js +4 -5
  608. package/dist/node_modules/chevrotain/lib/src/parse/grammar/llk_lookahead.js +25 -27
  609. package/dist/node_modules/chevrotain/lib/src/parse/grammar/lookahead.js +149 -151
  610. package/dist/node_modules/chevrotain/lib/src/parse/grammar/resolver.js +14 -16
  611. package/dist/node_modules/chevrotain/lib/src/parse/grammar/rest.js +38 -40
  612. package/dist/node_modules/chevrotain/lib/src/parse/parser/parser.js +64 -65
  613. package/dist/node_modules/chevrotain/lib/src/parse/parser/traits/error_handler.js +11 -13
  614. package/dist/node_modules/chevrotain/lib/src/parse/parser/traits/gast_recorder.js +101 -103
  615. package/dist/node_modules/chevrotain/lib/src/parse/parser/traits/lexer_adapter.js +5 -7
  616. package/dist/node_modules/chevrotain/lib/src/parse/parser/traits/looksahead.js +45 -47
  617. package/dist/node_modules/chevrotain/lib/src/parse/parser/traits/perf_tracer.js +6 -8
  618. package/dist/node_modules/chevrotain/lib/src/parse/parser/traits/recognizer_api.js +73 -75
  619. package/dist/node_modules/chevrotain/lib/src/parse/parser/traits/recognizer_engine.js +180 -182
  620. package/dist/node_modules/chevrotain/lib/src/parse/parser/traits/recoverable.js +23 -24
  621. package/dist/node_modules/chevrotain/lib/src/parse/parser/traits/tree_builder.js +26 -28
  622. package/dist/node_modules/chevrotain/lib/src/parse/parser/utils/apply_mixins.js +2 -4
  623. package/dist/node_modules/chevrotain/lib/src/scan/lexer.js +246 -246
  624. package/dist/node_modules/chevrotain/lib/src/scan/lexer_errors_public.js +2 -4
  625. package/dist/node_modules/chevrotain/lib/src/scan/lexer_public.js +31 -33
  626. package/dist/node_modules/chevrotain/lib/src/scan/reg_exp.js +64 -67
  627. package/dist/node_modules/chevrotain/lib/src/scan/reg_exp_parser.js +10 -12
  628. package/dist/node_modules/chevrotain/lib/src/scan/tokens.js +35 -36
  629. package/dist/node_modules/chevrotain/lib/src/scan/tokens_public.js +26 -28
  630. package/dist/node_modules/chevrotain-allstar/lib/all-star-lookahead.js +240 -242
  631. package/dist/node_modules/chevrotain-allstar/lib/atn.js +133 -134
  632. package/dist/node_modules/chevrotain-allstar/lib/dfa.js +10 -11
  633. package/dist/node_modules/chevrotain-allstar/lib/index.js +1 -1
  634. package/dist/node_modules/classcat/index.js +3 -5
  635. package/dist/node_modules/comma-separated-tokens/index.js +3 -5
  636. package/dist/node_modules/cose-base/cose-base.js +21 -21
  637. package/dist/node_modules/cytoscape/dist/cytoscape.esm.js +7940 -7937
  638. package/dist/node_modules/cytoscape-cose-bilkent/cytoscape-cose-bilkent.js +6 -8
  639. package/dist/node_modules/cytoscape-fcose/cytoscape-fcose.js +6 -8
  640. package/dist/node_modules/cytoscape-fcose/node_modules/cose-base/cose-base.js +20 -20
  641. package/dist/node_modules/cytoscape-fcose/node_modules/layout-base/layout-base.js +4 -6
  642. package/dist/node_modules/d3/src/index.js +95 -95
  643. package/dist/node_modules/d3-array/src/ascending.js +2 -4
  644. package/dist/node_modules/d3-array/src/bisect.js +8 -8
  645. package/dist/node_modules/d3-array/src/bisector.js +6 -8
  646. package/dist/node_modules/d3-array/src/descending.js +2 -4
  647. package/dist/node_modules/d3-array/src/max.js +2 -4
  648. package/dist/node_modules/d3-array/src/min.js +2 -4
  649. package/dist/node_modules/d3-array/src/number.js +2 -4
  650. package/dist/node_modules/d3-array/src/range.js +2 -4
  651. package/dist/node_modules/d3-array/src/ticks.js +11 -13
  652. package/dist/node_modules/d3-axis/src/axis.js +46 -48
  653. package/dist/node_modules/d3-axis/src/identity.js +2 -4
  654. package/dist/node_modules/d3-brush/src/brush.js +4 -6
  655. package/dist/node_modules/d3-color/src/color.js +84 -86
  656. package/dist/node_modules/d3-color/src/define.js +3 -5
  657. package/dist/node_modules/d3-color/src/lab.js +43 -45
  658. package/dist/node_modules/d3-color/src/math.js +2 -4
  659. package/dist/node_modules/d3-dispatch/src/dispatch.js +17 -18
  660. package/dist/node_modules/d3-drag/src/constant.js +2 -4
  661. package/dist/node_modules/d3-drag/src/drag.js +75 -77
  662. package/dist/node_modules/d3-drag/src/event.js +3 -5
  663. package/dist/node_modules/d3-drag/src/nodrag.js +9 -11
  664. package/dist/node_modules/d3-drag/src/noevent.js +4 -6
  665. package/dist/node_modules/d3-ease/src/cubic.js +2 -4
  666. package/dist/node_modules/d3-format/src/defaultLocale.js +6 -8
  667. package/dist/node_modules/d3-format/src/exponent.js +4 -6
  668. package/dist/node_modules/d3-format/src/formatDecimal.js +3 -5
  669. package/dist/node_modules/d3-format/src/formatGroup.js +2 -4
  670. package/dist/node_modules/d3-format/src/formatNumerals.js +2 -4
  671. package/dist/node_modules/d3-format/src/formatPrefixAuto.js +8 -10
  672. package/dist/node_modules/d3-format/src/formatRounded.js +4 -6
  673. package/dist/node_modules/d3-format/src/formatSpecifier.js +8 -10
  674. package/dist/node_modules/d3-format/src/formatTrim.js +2 -4
  675. package/dist/node_modules/d3-format/src/formatTypes.js +13 -15
  676. package/dist/node_modules/d3-format/src/identity.js +2 -4
  677. package/dist/node_modules/d3-format/src/locale.js +31 -33
  678. package/dist/node_modules/d3-format/src/precisionFixed.js +4 -6
  679. package/dist/node_modules/d3-format/src/precisionPrefix.js +4 -6
  680. package/dist/node_modules/d3-format/src/precisionRound.js +4 -6
  681. package/dist/node_modules/d3-hierarchy/src/accessors.js +2 -4
  682. package/dist/node_modules/d3-hierarchy/src/constant.js +3 -5
  683. package/dist/node_modules/d3-hierarchy/src/hierarchy/ancestors.js +2 -4
  684. package/dist/node_modules/d3-hierarchy/src/hierarchy/count.js +4 -6
  685. package/dist/node_modules/d3-hierarchy/src/hierarchy/descendants.js +2 -4
  686. package/dist/node_modules/d3-hierarchy/src/hierarchy/each.js +2 -4
  687. package/dist/node_modules/d3-hierarchy/src/hierarchy/eachAfter.js +2 -4
  688. package/dist/node_modules/d3-hierarchy/src/hierarchy/eachBefore.js +2 -4
  689. package/dist/node_modules/d3-hierarchy/src/hierarchy/find.js +2 -4
  690. package/dist/node_modules/d3-hierarchy/src/hierarchy/index.js +44 -46
  691. package/dist/node_modules/d3-hierarchy/src/hierarchy/iterator.js +2 -4
  692. package/dist/node_modules/d3-hierarchy/src/hierarchy/leaves.js +2 -4
  693. package/dist/node_modules/d3-hierarchy/src/hierarchy/links.js +2 -4
  694. package/dist/node_modules/d3-hierarchy/src/hierarchy/path.js +4 -6
  695. package/dist/node_modules/d3-hierarchy/src/hierarchy/sort.js +2 -4
  696. package/dist/node_modules/d3-hierarchy/src/hierarchy/sum.js +2 -4
  697. package/dist/node_modules/d3-hierarchy/src/treemap/dice.js +2 -4
  698. package/dist/node_modules/d3-hierarchy/src/treemap/index.js +14 -16
  699. package/dist/node_modules/d3-hierarchy/src/treemap/round.js +2 -4
  700. package/dist/node_modules/d3-hierarchy/src/treemap/slice.js +2 -4
  701. package/dist/node_modules/d3-hierarchy/src/treemap/squarify.js +9 -11
  702. package/dist/node_modules/d3-interpolate/src/array.js +4 -6
  703. package/dist/node_modules/d3-interpolate/src/basis.js +4 -6
  704. package/dist/node_modules/d3-interpolate/src/basisClosed.js +4 -6
  705. package/dist/node_modules/d3-interpolate/src/color.js +17 -19
  706. package/dist/node_modules/d3-interpolate/src/constant.js +2 -4
  707. package/dist/node_modules/d3-interpolate/src/date.js +2 -4
  708. package/dist/node_modules/d3-interpolate/src/hcl.js +6 -8
  709. package/dist/node_modules/d3-interpolate/src/number.js +2 -4
  710. package/dist/node_modules/d3-interpolate/src/numberArray.js +3 -5
  711. package/dist/node_modules/d3-interpolate/src/object.js +4 -6
  712. package/dist/node_modules/d3-interpolate/src/rgb.js +9 -11
  713. package/dist/node_modules/d3-interpolate/src/round.js +2 -4
  714. package/dist/node_modules/d3-interpolate/src/string.js +14 -16
  715. package/dist/node_modules/d3-interpolate/src/transform/decompose.js +5 -7
  716. package/dist/node_modules/d3-interpolate/src/transform/index.js +11 -13
  717. package/dist/node_modules/d3-interpolate/src/transform/parse.js +8 -10
  718. package/dist/node_modules/d3-interpolate/src/value.js +12 -14
  719. package/dist/node_modules/d3-interpolate/src/zoom.js +11 -13
  720. package/dist/node_modules/d3-path/src/path.js +14 -16
  721. package/dist/node_modules/d3-sankey/node_modules/d3-array/src/max.js +2 -4
  722. package/dist/node_modules/d3-sankey/node_modules/d3-array/src/min.js +2 -4
  723. package/dist/node_modules/d3-sankey/node_modules/d3-array/src/sum.js +2 -4
  724. package/dist/node_modules/d3-sankey/node_modules/d3-path/src/path.js +12 -13
  725. package/dist/node_modules/d3-sankey/node_modules/d3-shape/src/array.js +2 -4
  726. package/dist/node_modules/d3-sankey/node_modules/d3-shape/src/constant.js +2 -4
  727. package/dist/node_modules/d3-sankey/node_modules/d3-shape/src/link/index.js +17 -19
  728. package/dist/node_modules/d3-sankey/node_modules/d3-shape/src/point.js +3 -5
  729. package/dist/node_modules/d3-sankey/src/align.js +10 -12
  730. package/dist/node_modules/d3-sankey/src/constant.js +2 -4
  731. package/dist/node_modules/d3-sankey/src/sankey.js +168 -170
  732. package/dist/node_modules/d3-sankey/src/sankeyLinkHorizontal.js +6 -8
  733. package/dist/node_modules/d3-scale/src/band.js +9 -11
  734. package/dist/node_modules/d3-scale/src/constant.js +2 -4
  735. package/dist/node_modules/d3-scale/src/continuous.js +47 -49
  736. package/dist/node_modules/d3-scale/src/init.js +2 -4
  737. package/dist/node_modules/d3-scale/src/linear.js +13 -15
  738. package/dist/node_modules/d3-scale/src/nice.js +2 -4
  739. package/dist/node_modules/d3-scale/src/number.js +2 -4
  740. package/dist/node_modules/d3-scale/src/ordinal.js +16 -18
  741. package/dist/node_modules/d3-scale/src/tickFormat.js +14 -16
  742. package/dist/node_modules/d3-scale/src/time.js +34 -36
  743. package/dist/node_modules/d3-scale-chromatic/src/categorical/Tableau10.js +3 -5
  744. package/dist/node_modules/d3-scale-chromatic/src/colors.js +2 -4
  745. package/dist/node_modules/d3-selection/src/array.js +2 -4
  746. package/dist/node_modules/d3-selection/src/constant.js +2 -4
  747. package/dist/node_modules/d3-selection/src/creator.js +10 -12
  748. package/dist/node_modules/d3-selection/src/matcher.js +3 -5
  749. package/dist/node_modules/d3-selection/src/namespace.js +5 -7
  750. package/dist/node_modules/d3-selection/src/namespaces.js +3 -5
  751. package/dist/node_modules/d3-selection/src/pointer.js +4 -6
  752. package/dist/node_modules/d3-selection/src/select.js +4 -6
  753. package/dist/node_modules/d3-selection/src/selection/append.js +4 -6
  754. package/dist/node_modules/d3-selection/src/selection/attr.js +17 -19
  755. package/dist/node_modules/d3-selection/src/selection/call.js +2 -4
  756. package/dist/node_modules/d3-selection/src/selection/classed.js +23 -25
  757. package/dist/node_modules/d3-selection/src/selection/clone.js +5 -7
  758. package/dist/node_modules/d3-selection/src/selection/data.js +16 -18
  759. package/dist/node_modules/d3-selection/src/selection/datum.js +2 -4
  760. package/dist/node_modules/d3-selection/src/selection/dispatch.js +10 -12
  761. package/dist/node_modules/d3-selection/src/selection/each.js +2 -4
  762. package/dist/node_modules/d3-selection/src/selection/empty.js +2 -4
  763. package/dist/node_modules/d3-selection/src/selection/enter.js +11 -13
  764. package/dist/node_modules/d3-selection/src/selection/exit.js +5 -7
  765. package/dist/node_modules/d3-selection/src/selection/filter.js +6 -8
  766. package/dist/node_modules/d3-selection/src/selection/html.js +6 -8
  767. package/dist/node_modules/d3-selection/src/selection/index.js +79 -80
  768. package/dist/node_modules/d3-selection/src/selection/insert.js +6 -8
  769. package/dist/node_modules/d3-selection/src/selection/iterator.js +2 -4
  770. package/dist/node_modules/d3-selection/src/selection/join.js +2 -4
  771. package/dist/node_modules/d3-selection/src/selection/lower.js +4 -6
  772. package/dist/node_modules/d3-selection/src/selection/merge.js +4 -6
  773. package/dist/node_modules/d3-selection/src/selection/node.js +2 -4
  774. package/dist/node_modules/d3-selection/src/selection/nodes.js +2 -4
  775. package/dist/node_modules/d3-selection/src/selection/on.js +9 -11
  776. package/dist/node_modules/d3-selection/src/selection/order.js +2 -4
  777. package/dist/node_modules/d3-selection/src/selection/property.js +6 -8
  778. package/dist/node_modules/d3-selection/src/selection/raise.js +4 -6
  779. package/dist/node_modules/d3-selection/src/selection/remove.js +4 -6
  780. package/dist/node_modules/d3-selection/src/selection/select.js +6 -8
  781. package/dist/node_modules/d3-selection/src/selection/selectAll.js +9 -11
  782. package/dist/node_modules/d3-selection/src/selection/selectChild.js +8 -10
  783. package/dist/node_modules/d3-selection/src/selection/selectChildren.js +8 -10
  784. package/dist/node_modules/d3-selection/src/selection/size.js +2 -4
  785. package/dist/node_modules/d3-selection/src/selection/sort.js +6 -8
  786. package/dist/node_modules/d3-selection/src/selection/sparse.js +2 -4
  787. package/dist/node_modules/d3-selection/src/selection/style.js +12 -14
  788. package/dist/node_modules/d3-selection/src/selection/text.js +6 -8
  789. package/dist/node_modules/d3-selection/src/selector.js +4 -6
  790. package/dist/node_modules/d3-selection/src/selectorAll.js +4 -6
  791. package/dist/node_modules/d3-selection/src/sourceEvent.js +2 -4
  792. package/dist/node_modules/d3-selection/src/window.js +2 -4
  793. package/dist/node_modules/d3-shape/src/arc.js +36 -38
  794. package/dist/node_modules/d3-shape/src/array.js +2 -3
  795. package/dist/node_modules/d3-shape/src/constant.js +2 -4
  796. package/dist/node_modules/d3-shape/src/curve/basis.js +8 -10
  797. package/dist/node_modules/d3-shape/src/curve/basisClosed.js +16 -18
  798. package/dist/node_modules/d3-shape/src/curve/basisOpen.js +7 -9
  799. package/dist/node_modules/d3-shape/src/curve/bump.js +13 -15
  800. package/dist/node_modules/d3-shape/src/curve/bundle.js +7 -9
  801. package/dist/node_modules/d3-shape/src/curve/cardinal.js +8 -10
  802. package/dist/node_modules/d3-shape/src/curve/cardinalClosed.js +10 -12
  803. package/dist/node_modules/d3-shape/src/curve/cardinalOpen.js +7 -9
  804. package/dist/node_modules/d3-shape/src/curve/catmullRom.js +17 -19
  805. package/dist/node_modules/d3-shape/src/curve/catmullRomClosed.js +11 -13
  806. package/dist/node_modules/d3-shape/src/curve/catmullRomOpen.js +8 -10
  807. package/dist/node_modules/d3-shape/src/curve/linear.js +5 -7
  808. package/dist/node_modules/d3-shape/src/curve/linearClosed.js +10 -12
  809. package/dist/node_modules/d3-shape/src/curve/monotone.js +21 -23
  810. package/dist/node_modules/d3-shape/src/curve/natural.js +7 -9
  811. package/dist/node_modules/d3-shape/src/curve/step.js +17 -19
  812. package/dist/node_modules/d3-shape/src/descending.js +2 -4
  813. package/dist/node_modules/d3-shape/src/identity.js +2 -4
  814. package/dist/node_modules/d3-shape/src/line.js +17 -19
  815. package/dist/node_modules/d3-shape/src/math.js +6 -8
  816. package/dist/node_modules/d3-shape/src/noop.js +2 -4
  817. package/dist/node_modules/d3-shape/src/path.js +4 -6
  818. package/dist/node_modules/d3-shape/src/pie.js +13 -15
  819. package/dist/node_modules/d3-shape/src/point.js +3 -5
  820. package/dist/node_modules/d3-time/src/day.js +15 -17
  821. package/dist/node_modules/d3-time/src/duration.js +2 -4
  822. package/dist/node_modules/d3-time/src/hour.js +14 -16
  823. package/dist/node_modules/d3-time/src/interval.js +5 -7
  824. package/dist/node_modules/d3-time/src/millisecond.js +5 -7
  825. package/dist/node_modules/d3-time/src/minute.js +14 -16
  826. package/dist/node_modules/d3-time/src/month.js +12 -14
  827. package/dist/node_modules/d3-time/src/second.js +7 -9
  828. package/dist/node_modules/d3-time/src/ticks.js +64 -66
  829. package/dist/node_modules/d3-time/src/week.js +19 -21
  830. package/dist/node_modules/d3-time/src/year.js +8 -10
  831. package/dist/node_modules/d3-time-format/src/defaultLocale.js +6 -8
  832. package/dist/node_modules/d3-time-format/src/locale.js +344 -346
  833. package/dist/node_modules/d3-timer/src/timeout.js +4 -6
  834. package/dist/node_modules/d3-timer/src/timer.js +31 -33
  835. package/dist/node_modules/d3-transition/src/index.js +2 -2
  836. package/dist/node_modules/d3-transition/src/interrupt.js +3 -4
  837. package/dist/node_modules/d3-transition/src/selection/index.js +4 -5
  838. package/dist/node_modules/d3-transition/src/selection/interrupt.js +4 -6
  839. package/dist/node_modules/d3-transition/src/selection/transition.js +14 -16
  840. package/dist/node_modules/d3-transition/src/transition/attr.js +26 -28
  841. package/dist/node_modules/d3-transition/src/transition/attrTween.js +11 -13
  842. package/dist/node_modules/d3-transition/src/transition/delay.js +9 -11
  843. package/dist/node_modules/d3-transition/src/transition/duration.js +9 -11
  844. package/dist/node_modules/d3-transition/src/transition/ease.js +6 -8
  845. package/dist/node_modules/d3-transition/src/transition/easeVarying.js +6 -8
  846. package/dist/node_modules/d3-transition/src/transition/end.js +4 -6
  847. package/dist/node_modules/d3-transition/src/transition/filter.js +6 -8
  848. package/dist/node_modules/d3-transition/src/transition/index.js +61 -63
  849. package/dist/node_modules/d3-transition/src/transition/interpolate.js +7 -9
  850. package/dist/node_modules/d3-transition/src/transition/merge.js +4 -6
  851. package/dist/node_modules/d3-transition/src/transition/on.js +7 -9
  852. package/dist/node_modules/d3-transition/src/transition/remove.js +4 -6
  853. package/dist/node_modules/d3-transition/src/transition/schedule.js +18 -20
  854. package/dist/node_modules/d3-transition/src/transition/select.js +8 -10
  855. package/dist/node_modules/d3-transition/src/transition/selectAll.js +8 -10
  856. package/dist/node_modules/d3-transition/src/transition/selection.js +5 -7
  857. package/dist/node_modules/d3-transition/src/transition/style.js +19 -21
  858. package/dist/node_modules/d3-transition/src/transition/styleTween.js +6 -8
  859. package/dist/node_modules/d3-transition/src/transition/text.js +6 -8
  860. package/dist/node_modules/d3-transition/src/transition/textTween.js +6 -8
  861. package/dist/node_modules/d3-transition/src/transition/transition.js +8 -10
  862. package/dist/node_modules/d3-transition/src/transition/tween.js +12 -14
  863. package/dist/node_modules/d3-zoom/src/constant.js +2 -4
  864. package/dist/node_modules/d3-zoom/src/event.js +2 -4
  865. package/dist/node_modules/d3-zoom/src/index.js +2 -2
  866. package/dist/node_modules/d3-zoom/src/noevent.js +3 -5
  867. package/dist/node_modules/d3-zoom/src/transform.js +10 -12
  868. package/dist/node_modules/d3-zoom/src/zoom.js +114 -116
  869. package/dist/node_modules/dagre-d3-es/src/dagre/acyclic.js +12 -14
  870. package/dist/node_modules/dagre-d3-es/src/dagre/add-border-segments.js +9 -11
  871. package/dist/node_modules/dagre-d3-es/src/dagre/coordinate-system.js +34 -36
  872. package/dist/node_modules/dagre-d3-es/src/dagre/data/list.js +7 -9
  873. package/dist/node_modules/dagre-d3-es/src/dagre/greedy-fas.js +49 -51
  874. package/dist/node_modules/dagre-d3-es/src/dagre/index.js +2 -2
  875. package/dist/node_modules/dagre-d3-es/src/dagre/layout.js +163 -165
  876. package/dist/node_modules/dagre-d3-es/src/dagre/nesting-graph.js +43 -45
  877. package/dist/node_modules/dagre-d3-es/src/dagre/normalize.js +10 -12
  878. package/dist/node_modules/dagre-d3-es/src/dagre/order/add-subgraph-constraints.js +4 -6
  879. package/dist/node_modules/dagre-d3-es/src/dagre/order/barycenter.js +6 -8
  880. package/dist/node_modules/dagre-d3-es/src/dagre/order/build-layer-graph.js +12 -14
  881. package/dist/node_modules/dagre-d3-es/src/dagre/order/cross-count.js +20 -22
  882. package/dist/node_modules/dagre-d3-es/src/dagre/order/index.js +34 -36
  883. package/dist/node_modules/dagre-d3-es/src/dagre/order/init-order.js +13 -15
  884. package/dist/node_modules/dagre-d3-es/src/dagre/order/resolve-conflicts.js +30 -32
  885. package/dist/node_modules/dagre-d3-es/src/dagre/order/sort-subgraph.js +28 -30
  886. package/dist/node_modules/dagre-d3-es/src/dagre/order/sort.js +18 -20
  887. package/dist/node_modules/dagre-d3-es/src/dagre/parent-dummy-chains.js +10 -12
  888. package/dist/node_modules/dagre-d3-es/src/dagre/position/bk.js +148 -150
  889. package/dist/node_modules/dagre-d3-es/src/dagre/position/index.js +18 -20
  890. package/dist/node_modules/dagre-d3-es/src/dagre/rank/feasible-tree.js +17 -19
  891. package/dist/node_modules/dagre-d3-es/src/dagre/rank/index.js +14 -16
  892. package/dist/node_modules/dagre-d3-es/src/dagre/rank/network-simplex.js +63 -64
  893. package/dist/node_modules/dagre-d3-es/src/dagre/rank/util.js +8 -10
  894. package/dist/node_modules/dagre-d3-es/src/dagre/util.js +82 -84
  895. package/dist/node_modules/dagre-d3-es/src/graphlib/alg/dfs.js +13 -15
  896. package/dist/node_modules/dagre-d3-es/src/graphlib/alg/dijkstra.js +2 -3
  897. package/dist/node_modules/dagre-d3-es/src/graphlib/alg/floyd-warshall.js +2 -3
  898. package/dist/node_modules/dagre-d3-es/src/graphlib/alg/index.js +3 -3
  899. package/dist/node_modules/dagre-d3-es/src/graphlib/alg/postorder.js +4 -6
  900. package/dist/node_modules/dagre-d3-es/src/graphlib/alg/preorder.js +4 -6
  901. package/dist/node_modules/dagre-d3-es/src/graphlib/alg/topsort.js +11 -13
  902. package/dist/node_modules/dagre-d3-es/src/graphlib/graph.js +129 -131
  903. package/dist/node_modules/dagre-d3-es/src/graphlib/index.js +1 -1
  904. package/dist/node_modules/dagre-d3-es/src/graphlib/json.js +16 -18
  905. package/dist/node_modules/dayjs/dayjs.min.js +4 -6
  906. package/dist/node_modules/dayjs/plugin/advancedFormat.js +4 -6
  907. package/dist/node_modules/dayjs/plugin/customParseFormat.js +4 -6
  908. package/dist/node_modules/dayjs/plugin/duration.js +4 -6
  909. package/dist/node_modules/dayjs/plugin/isoWeek.js +4 -6
  910. package/dist/node_modules/decode-named-character-reference/index.dom.js +5 -7
  911. package/dist/node_modules/devlop/lib/default.js +2 -4
  912. package/dist/node_modules/dompurify/dist/purify.es.js +180 -182
  913. package/dist/node_modules/entities/dist/esm/decode-codepoint.js +4 -6
  914. package/dist/node_modules/entities/dist/esm/decode.js +85 -87
  915. package/dist/node_modules/entities/dist/esm/generated/decode-data-html.js +2 -4
  916. package/dist/node_modules/estree-util-is-identifier-name/lib/index.js +4 -6
  917. package/dist/node_modules/extend/index.js +6 -9
  918. package/dist/node_modules/hast-util-from-dom/lib/index.js +30 -32
  919. package/dist/node_modules/hast-util-from-html-isomorphic/lib/browser.js +8 -10
  920. package/dist/node_modules/hast-util-from-parse5/lib/index.js +80 -82
  921. package/dist/node_modules/hast-util-is-element/lib/index.js +15 -17
  922. package/dist/node_modules/hast-util-parse-selector/lib/index.js +5 -7
  923. package/dist/node_modules/hast-util-raw/lib/index.js +134 -136
  924. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/common/doctype.js +21 -23
  925. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/common/error-codes.js +3 -5
  926. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/common/foreign-content.js +89 -89
  927. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/common/html.js +249 -250
  928. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/common/token.js +4 -6
  929. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/common/unicode.js +14 -14
  930. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/index.js +4 -4
  931. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/parser/formatting-element-list.js +15 -17
  932. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/parser/index.js +1495 -1497
  933. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/parser/open-element-stack.js +146 -148
  934. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/serializer/index.js +19 -20
  935. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/tokenizer/index.js +798 -800
  936. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/tokenizer/preprocessor.js +31 -33
  937. package/dist/node_modules/hast-util-raw/node_modules/parse5/dist/tree-adapters/default.js +8 -10
  938. package/dist/node_modules/hast-util-sanitize/lib/index.js +104 -106
  939. package/dist/node_modules/hast-util-sanitize/lib/schema.js +11 -12
  940. package/dist/node_modules/hast-util-to-html/lib/handle/comment.js +7 -9
  941. package/dist/node_modules/hast-util-to-html/lib/handle/doctype.js +2 -4
  942. package/dist/node_modules/hast-util-to-html/lib/handle/element.js +23 -25
  943. package/dist/node_modules/hast-util-to-html/lib/handle/index.js +21 -22
  944. package/dist/node_modules/hast-util-to-html/lib/handle/raw.js +4 -6
  945. package/dist/node_modules/hast-util-to-html/lib/handle/root.js +2 -4
  946. package/dist/node_modules/hast-util-to-html/lib/handle/text.js +5 -7
  947. package/dist/node_modules/hast-util-to-html/lib/index.js +36 -38
  948. package/dist/node_modules/hast-util-to-html/lib/omission/closing.js +68 -70
  949. package/dist/node_modules/hast-util-to-html/lib/omission/omission.js +4 -6
  950. package/dist/node_modules/hast-util-to-html/lib/omission/opening.js +30 -32
  951. package/dist/node_modules/hast-util-to-html/lib/omission/util/siblings.js +9 -10
  952. package/dist/node_modules/hast-util-to-jsx-runtime/lib/index.js +190 -192
  953. package/dist/node_modules/hast-util-to-parse5/lib/index.js +69 -71
  954. package/dist/node_modules/hast-util-to-text/lib/index.js +59 -61
  955. package/dist/node_modules/hast-util-whitespace/lib/index.js +6 -8
  956. package/dist/node_modules/hastscript/lib/create-h.js +24 -26
  957. package/dist/node_modules/hastscript/lib/index.js +5 -7
  958. package/dist/node_modules/hastscript/lib/svg-case-sensitive-tag-names.js +2 -4
  959. package/dist/node_modules/html-url-attributes/lib/index.js +2 -4
  960. package/dist/node_modules/html-void-elements/index.js +2 -4
  961. package/dist/node_modules/inline-style-parser/cjs/index.js +4 -6
  962. package/dist/node_modules/internmap/src/index.js +20 -22
  963. package/dist/node_modules/katex/dist/katex.js +2307 -2301
  964. package/dist/node_modules/khroma/dist/channels/index.js +21 -23
  965. package/dist/node_modules/khroma/dist/channels/reusable.js +3 -5
  966. package/dist/node_modules/khroma/dist/channels/type.js +5 -7
  967. package/dist/node_modules/khroma/dist/color/hex.js +8 -10
  968. package/dist/node_modules/khroma/dist/color/hsl.js +17 -19
  969. package/dist/node_modules/khroma/dist/color/index.js +15 -17
  970. package/dist/node_modules/khroma/dist/color/keyword.js +8 -10
  971. package/dist/node_modules/khroma/dist/color/rgb.js +12 -14
  972. package/dist/node_modules/khroma/dist/constants.js +5 -7
  973. package/dist/node_modules/khroma/dist/methods/adjust.js +6 -8
  974. package/dist/node_modules/khroma/dist/methods/adjust_channel.js +6 -8
  975. package/dist/node_modules/khroma/dist/methods/change.js +7 -9
  976. package/dist/node_modules/khroma/dist/methods/channel.js +4 -6
  977. package/dist/node_modules/khroma/dist/methods/darken.js +3 -5
  978. package/dist/node_modules/khroma/dist/methods/invert.js +6 -8
  979. package/dist/node_modules/khroma/dist/methods/is_dark.js +3 -5
  980. package/dist/node_modules/khroma/dist/methods/is_light.js +3 -5
  981. package/dist/node_modules/khroma/dist/methods/lighten.js +3 -5
  982. package/dist/node_modules/khroma/dist/methods/luminance.js +6 -8
  983. package/dist/node_modules/khroma/dist/methods/mix.js +6 -8
  984. package/dist/node_modules/khroma/dist/methods/rgba.js +13 -15
  985. package/dist/node_modules/khroma/dist/methods/transparentize.js +3 -5
  986. package/dist/node_modules/khroma/dist/utils/channel.js +6 -8
  987. package/dist/node_modules/khroma/dist/utils/index.js +8 -10
  988. package/dist/node_modules/khroma/dist/utils/lang.js +2 -4
  989. package/dist/node_modules/khroma/dist/utils/unit.js +2 -4
  990. package/dist/node_modules/langium/lib/default-module.js +64 -66
  991. package/dist/node_modules/langium/lib/dependency-injection.js +39 -37
  992. package/dist/node_modules/langium/lib/documentation/comment-provider.js +5 -7
  993. package/dist/node_modules/langium/lib/documentation/documentation-provider.js +6 -8
  994. package/dist/node_modules/langium/lib/documentation/jsdoc.js +202 -204
  995. package/dist/node_modules/langium/lib/index.js +182 -0
  996. package/dist/node_modules/langium/lib/languages/generated/ast.js +534 -343
  997. package/dist/node_modules/langium/lib/languages/grammar-config.js +8 -10
  998. package/dist/node_modules/langium/lib/parser/async-parser.js +76 -4
  999. package/dist/node_modules/langium/lib/parser/completion-parser-builder.js +6 -8
  1000. package/dist/node_modules/langium/lib/parser/cst-node-builder.js +54 -56
  1001. package/dist/node_modules/langium/lib/parser/indentation-aware.js +141 -0
  1002. package/dist/node_modules/langium/lib/parser/langium-parser-builder.js +7 -9
  1003. package/dist/node_modules/langium/lib/parser/langium-parser.js +188 -190
  1004. package/dist/node_modules/langium/lib/parser/lexer.js +25 -25
  1005. package/dist/node_modules/langium/lib/parser/parser-builder-base.js +203 -204
  1006. package/dist/node_modules/langium/lib/parser/token-builder.js +30 -32
  1007. package/dist/node_modules/langium/lib/parser/value-converter.js +15 -17
  1008. package/dist/node_modules/langium/lib/references/linker.js +103 -104
  1009. package/dist/node_modules/langium/lib/references/name-provider.js +7 -9
  1010. package/dist/node_modules/langium/lib/references/references.js +51 -53
  1011. package/dist/node_modules/langium/lib/references/scope-computation.js +12 -14
  1012. package/dist/node_modules/langium/lib/references/scope-provider.js +11 -13
  1013. package/dist/node_modules/langium/lib/references/scope.js +56 -27
  1014. package/dist/node_modules/langium/lib/serializer/hydrator.js +69 -71
  1015. package/dist/node_modules/langium/lib/serializer/json-serializer.js +21 -23
  1016. package/dist/node_modules/langium/lib/service-registry.js +5 -7
  1017. package/dist/node_modules/langium/lib/syntax-tree.js +31 -33
  1018. package/dist/node_modules/langium/lib/utils/ast-utils.js +112 -77
  1019. package/dist/node_modules/langium/lib/utils/caching.js +42 -33
  1020. package/dist/node_modules/langium/lib/utils/cancellation.js +5 -7
  1021. package/dist/node_modules/langium/lib/utils/collections.js +33 -35
  1022. package/dist/node_modules/langium/lib/utils/cst-utils.js +161 -46
  1023. package/dist/node_modules/langium/lib/utils/disposable.js +3 -5
  1024. package/dist/node_modules/langium/lib/utils/errors.js +9 -8
  1025. package/dist/node_modules/langium/lib/utils/event.js +5 -7
  1026. package/dist/node_modules/langium/lib/utils/grammar-loader.js +14 -16
  1027. package/dist/node_modules/langium/lib/utils/grammar-utils.js +249 -172
  1028. package/dist/node_modules/langium/lib/utils/index.js +53 -0
  1029. package/dist/node_modules/langium/lib/utils/promise-utils.js +19 -18
  1030. package/dist/node_modules/langium/lib/utils/regexp-utils.js +76 -53
  1031. package/dist/node_modules/langium/lib/utils/stream.js +153 -155
  1032. package/dist/node_modules/langium/lib/utils/uri-utils.js +12 -14
  1033. package/dist/node_modules/langium/lib/validation/document-validator.js +103 -104
  1034. package/dist/node_modules/langium/lib/validation/validation-registry.js +14 -15
  1035. package/dist/node_modules/langium/lib/workspace/ast-descriptions.js +17 -19
  1036. package/dist/node_modules/langium/lib/workspace/ast-node-locator.js +2 -4
  1037. package/dist/node_modules/langium/lib/workspace/configuration.js +5 -7
  1038. package/dist/node_modules/langium/lib/workspace/document-builder.js +134 -131
  1039. package/dist/node_modules/langium/lib/workspace/documents.js +83 -85
  1040. package/dist/node_modules/langium/lib/workspace/file-system-provider.js +4 -5
  1041. package/dist/node_modules/langium/lib/workspace/index-manager.js +14 -16
  1042. package/dist/node_modules/langium/lib/workspace/profiler.js +89 -0
  1043. package/dist/node_modules/langium/lib/workspace/workspace-lock.js +9 -11
  1044. package/dist/node_modules/langium/lib/workspace/workspace-manager.js +33 -35
  1045. package/dist/node_modules/layout-base/layout-base.js +4 -6
  1046. package/dist/node_modules/lodash/_Symbol.js +7 -0
  1047. package/dist/node_modules/lodash/_baseGetTag.js +13 -0
  1048. package/dist/node_modules/lodash/_baseTrim.js +11 -0
  1049. package/dist/node_modules/lodash/_freeGlobal.js +6 -0
  1050. package/dist/node_modules/lodash/_getRawTag.js +17 -0
  1051. package/dist/node_modules/lodash/_objectToString.js +10 -0
  1052. package/dist/node_modules/lodash/_root.js +8 -0
  1053. package/dist/node_modules/lodash/_trimmedEndIndex.js +11 -0
  1054. package/dist/{frontend/studio/node_modules → node_modules}/lodash/debounce.js +8 -10
  1055. package/dist/node_modules/lodash/isObject.js +10 -0
  1056. package/dist/node_modules/lodash/isObjectLike.js +9 -0
  1057. package/dist/node_modules/lodash/isSymbol.js +12 -0
  1058. package/dist/node_modules/lodash/now.js +10 -0
  1059. package/dist/node_modules/lodash/toNumber.js +22 -0
  1060. package/dist/node_modules/lodash-es/_DataView.js +4 -6
  1061. package/dist/node_modules/lodash-es/_Hash.js +13 -14
  1062. package/dist/node_modules/lodash-es/_ListCache.js +13 -14
  1063. package/dist/node_modules/lodash-es/_Map.js +4 -6
  1064. package/dist/node_modules/lodash-es/_MapCache.js +13 -14
  1065. package/dist/node_modules/lodash-es/_Promise.js +4 -6
  1066. package/dist/node_modules/lodash-es/_Set.js +4 -6
  1067. package/dist/node_modules/lodash-es/_SetCache.js +9 -10
  1068. package/dist/node_modules/lodash-es/_Stack.js +11 -12
  1069. package/dist/node_modules/lodash-es/_Symbol.js +3 -5
  1070. package/dist/node_modules/lodash-es/_Uint8Array.js +3 -5
  1071. package/dist/node_modules/lodash-es/_WeakMap.js +4 -6
  1072. package/dist/node_modules/lodash-es/_apply.js +3 -4
  1073. package/dist/node_modules/lodash-es/_arrayEach.js +3 -4
  1074. package/dist/node_modules/lodash-es/_arrayFilter.js +3 -4
  1075. package/dist/node_modules/lodash-es/_arrayIncludes.js +5 -6
  1076. package/dist/node_modules/lodash-es/_arrayIncludesWith.js +3 -4
  1077. package/dist/node_modules/lodash-es/_arrayLikeKeys.js +12 -13
  1078. package/dist/node_modules/lodash-es/_arrayMap.js +3 -4
  1079. package/dist/node_modules/lodash-es/_arrayPush.js +3 -4
  1080. package/dist/node_modules/lodash-es/_arrayReduce.js +3 -4
  1081. package/dist/node_modules/lodash-es/_arraySome.js +3 -4
  1082. package/dist/node_modules/lodash-es/_asciiSize.js +3 -5
  1083. package/dist/node_modules/lodash-es/_assignMergeValue.js +6 -7
  1084. package/dist/node_modules/lodash-es/_assignValue.js +7 -8
  1085. package/dist/node_modules/lodash-es/_assocIndexOf.js +5 -6
  1086. package/dist/node_modules/lodash-es/_baseAssign.js +6 -7
  1087. package/dist/node_modules/lodash-es/_baseAssignIn.js +6 -7
  1088. package/dist/node_modules/lodash-es/_baseAssignValue.js +5 -6
  1089. package/dist/node_modules/lodash-es/_baseClone.js +50 -51
  1090. package/dist/node_modules/lodash-es/_baseCreate.js +5 -7
  1091. package/dist/node_modules/lodash-es/_baseEach.js +4 -6
  1092. package/dist/node_modules/lodash-es/_baseExtremum.js +5 -6
  1093. package/dist/node_modules/lodash-es/_baseFilter.js +5 -6
  1094. package/dist/node_modules/lodash-es/_baseFindIndex.js +3 -4
  1095. package/dist/node_modules/lodash-es/_baseFlatten.js +7 -8
  1096. package/dist/node_modules/lodash-es/_baseFor.js +3 -5
  1097. package/dist/node_modules/lodash-es/_baseForOwn.js +6 -7
  1098. package/dist/node_modules/lodash-es/_baseGet.js +7 -8
  1099. package/dist/node_modules/lodash-es/_baseGetAllKeys.js +6 -7
  1100. package/dist/node_modules/lodash-es/_baseGetTag.js +8 -9
  1101. package/dist/node_modules/lodash-es/_baseGt.js +3 -4
  1102. package/dist/node_modules/lodash-es/_baseHas.js +5 -6
  1103. package/dist/node_modules/lodash-es/_baseHasIn.js +3 -4
  1104. package/dist/node_modules/lodash-es/_baseIndexOf.js +7 -8
  1105. package/dist/node_modules/lodash-es/_baseIsArguments.js +7 -8
  1106. package/dist/node_modules/lodash-es/_baseIsEqual.js +6 -7
  1107. package/dist/node_modules/lodash-es/_baseIsEqualDeep.js +22 -23
  1108. package/dist/node_modules/lodash-es/_baseIsMap.js +7 -8
  1109. package/dist/node_modules/lodash-es/_baseIsMatch.js +8 -9
  1110. package/dist/node_modules/lodash-es/_baseIsNaN.js +3 -4
  1111. package/dist/node_modules/lodash-es/_baseIsNative.js +9 -10
  1112. package/dist/node_modules/lodash-es/_baseIsSet.js +7 -8
  1113. package/dist/node_modules/lodash-es/_baseIsTypedArray.js +9 -10
  1114. package/dist/node_modules/lodash-es/_baseIteratee.js +9 -10
  1115. package/dist/node_modules/lodash-es/_baseKeys.js +8 -9
  1116. package/dist/node_modules/lodash-es/_baseKeysIn.js +10 -11
  1117. package/dist/node_modules/lodash-es/_baseLt.js +3 -4
  1118. package/dist/node_modules/lodash-es/_baseMap.js +7 -8
  1119. package/dist/node_modules/lodash-es/_baseMatches.js +9 -10
  1120. package/dist/node_modules/lodash-es/_baseMatchesProperty.js +14 -15
  1121. package/dist/node_modules/lodash-es/_baseMerge.js +15 -16
  1122. package/dist/node_modules/lodash-es/_baseMergeDeep.js +23 -24
  1123. package/dist/node_modules/lodash-es/_baseOrderBy.js +22 -23
  1124. package/dist/node_modules/lodash-es/_basePick.js +7 -8
  1125. package/dist/node_modules/lodash-es/_basePickBy.js +8 -9
  1126. package/dist/node_modules/lodash-es/_baseProperty.js +3 -4
  1127. package/dist/node_modules/lodash-es/_basePropertyDeep.js +5 -6
  1128. package/dist/node_modules/lodash-es/_baseRange.js +5 -6
  1129. package/dist/node_modules/lodash-es/_baseReduce.js +3 -4
  1130. package/dist/node_modules/lodash-es/_baseRest.js +7 -8
  1131. package/dist/node_modules/lodash-es/_baseSet.js +13 -14
  1132. package/dist/node_modules/lodash-es/_baseSetToString.js +8 -10
  1133. package/dist/node_modules/lodash-es/_baseSortBy.js +3 -4
  1134. package/dist/node_modules/lodash-es/_baseTimes.js +3 -4
  1135. package/dist/node_modules/lodash-es/_baseToString.js +12 -13
  1136. package/dist/node_modules/lodash-es/_baseTrim.js +6 -7
  1137. package/dist/node_modules/lodash-es/_baseUnary.js +3 -4
  1138. package/dist/node_modules/lodash-es/_baseUniq.js +16 -17
  1139. package/dist/node_modules/lodash-es/_baseValues.js +5 -6
  1140. package/dist/node_modules/lodash-es/_baseZipObject.js +3 -4
  1141. package/dist/node_modules/lodash-es/_cacheHas.js +3 -4
  1142. package/dist/node_modules/lodash-es/_castFunction.js +5 -6
  1143. package/dist/node_modules/lodash-es/_castPath.js +8 -9
  1144. package/dist/node_modules/lodash-es/_cloneArrayBuffer.js +5 -6
  1145. package/dist/node_modules/lodash-es/_cloneBuffer.js +8 -9
  1146. package/dist/node_modules/lodash-es/_cloneDataView.js +5 -6
  1147. package/dist/node_modules/lodash-es/_cloneRegExp.js +5 -6
  1148. package/dist/node_modules/lodash-es/_cloneSymbol.js +6 -7
  1149. package/dist/node_modules/lodash-es/_cloneTypedArray.js +5 -6
  1150. package/dist/node_modules/lodash-es/_compareAscending.js +5 -6
  1151. package/dist/node_modules/lodash-es/_compareMultiple.js +5 -6
  1152. package/dist/node_modules/lodash-es/_copyArray.js +3 -4
  1153. package/dist/node_modules/lodash-es/_copyObject.js +6 -7
  1154. package/dist/node_modules/lodash-es/_copySymbols.js +6 -7
  1155. package/dist/node_modules/lodash-es/_copySymbolsIn.js +6 -7
  1156. package/dist/node_modules/lodash-es/_coreJsData.js +3 -5
  1157. package/dist/node_modules/lodash-es/_createAssigner.js +7 -8
  1158. package/dist/node_modules/lodash-es/_createBaseEach.js +5 -6
  1159. package/dist/node_modules/lodash-es/_createBaseFor.js +3 -4
  1160. package/dist/node_modules/lodash-es/_createFind.js +9 -10
  1161. package/dist/node_modules/lodash-es/_createRange.js +7 -8
  1162. package/dist/node_modules/lodash-es/_createSet.js +7 -9
  1163. package/dist/node_modules/lodash-es/_defineProperty.js +4 -6
  1164. package/dist/node_modules/lodash-es/_equalArrays.js +11 -12
  1165. package/dist/node_modules/lodash-es/_equalByTag.js +28 -29
  1166. package/dist/node_modules/lodash-es/_equalObjects.js +8 -9
  1167. package/dist/node_modules/lodash-es/_flatRest.js +7 -8
  1168. package/dist/node_modules/lodash-es/_freeGlobal.js +2 -4
  1169. package/dist/node_modules/lodash-es/_getAllKeys.js +7 -8
  1170. package/dist/node_modules/lodash-es/_getAllKeysIn.js +7 -8
  1171. package/dist/node_modules/lodash-es/_getMapData.js +5 -6
  1172. package/dist/node_modules/lodash-es/_getMatchData.js +7 -8
  1173. package/dist/node_modules/lodash-es/_getNative.js +7 -8
  1174. package/dist/node_modules/lodash-es/_getPrototype.js +3 -5
  1175. package/dist/node_modules/lodash-es/_getRawTag.js +9 -10
  1176. package/dist/node_modules/lodash-es/_getSymbols.js +7 -9
  1177. package/dist/node_modules/lodash-es/_getSymbolsIn.js +8 -10
  1178. package/dist/node_modules/lodash-es/_getTag.js +19 -21
  1179. package/dist/node_modules/lodash-es/_getValue.js +3 -4
  1180. package/dist/node_modules/lodash-es/_hasPath.js +12 -13
  1181. package/dist/node_modules/lodash-es/_hasUnicode.js +5 -6
  1182. package/dist/node_modules/lodash-es/_hashClear.js +5 -6
  1183. package/dist/node_modules/lodash-es/_hashDelete.js +4 -5
  1184. package/dist/node_modules/lodash-es/_hashGet.js +8 -9
  1185. package/dist/node_modules/lodash-es/_hashHas.js +6 -7
  1186. package/dist/node_modules/lodash-es/_hashSet.js +6 -7
  1187. package/dist/node_modules/lodash-es/_initCloneArray.js +5 -6
  1188. package/dist/node_modules/lodash-es/_initCloneByTag.js +28 -29
  1189. package/dist/node_modules/lodash-es/_initCloneObject.js +7 -8
  1190. package/dist/node_modules/lodash-es/_isFlattenable.js +8 -9
  1191. package/dist/node_modules/lodash-es/_isIndex.js +5 -6
  1192. package/dist/node_modules/lodash-es/_isIterateeCall.js +9 -10
  1193. package/dist/node_modules/lodash-es/_isKey.js +8 -9
  1194. package/dist/node_modules/lodash-es/_isKeyable.js +3 -4
  1195. package/dist/node_modules/lodash-es/_isMasked.js +8 -9
  1196. package/dist/node_modules/lodash-es/_isPrototype.js +5 -6
  1197. package/dist/node_modules/lodash-es/_isStrictComparable.js +5 -6
  1198. package/dist/node_modules/lodash-es/_listCacheClear.js +3 -4
  1199. package/dist/node_modules/lodash-es/_listCacheDelete.js +7 -8
  1200. package/dist/node_modules/lodash-es/_listCacheGet.js +5 -6
  1201. package/dist/node_modules/lodash-es/_listCacheHas.js +5 -6
  1202. package/dist/node_modules/lodash-es/_listCacheSet.js +5 -6
  1203. package/dist/node_modules/lodash-es/_mapCacheClear.js +9 -10
  1204. package/dist/node_modules/lodash-es/_mapCacheDelete.js +6 -7
  1205. package/dist/node_modules/lodash-es/_mapCacheGet.js +5 -6
  1206. package/dist/node_modules/lodash-es/_mapCacheHas.js +5 -6
  1207. package/dist/node_modules/lodash-es/_mapCacheSet.js +5 -6
  1208. package/dist/node_modules/lodash-es/_mapToArray.js +3 -4
  1209. package/dist/node_modules/lodash-es/_matchesStrictComparable.js +3 -4
  1210. package/dist/node_modules/lodash-es/_memoizeCapped.js +7 -8
  1211. package/dist/node_modules/lodash-es/_nativeCreate.js +3 -5
  1212. package/dist/node_modules/lodash-es/_nativeKeys.js +3 -5
  1213. package/dist/node_modules/lodash-es/_nativeKeysIn.js +3 -4
  1214. package/dist/node_modules/lodash-es/_nodeUtil.js +4 -6
  1215. package/dist/node_modules/lodash-es/_objectToString.js +5 -6
  1216. package/dist/node_modules/lodash-es/_overArg.js +3 -4
  1217. package/dist/node_modules/lodash-es/_overRest.js +8 -9
  1218. package/dist/node_modules/lodash-es/_root.js +3 -5
  1219. package/dist/node_modules/lodash-es/_safeGet.js +3 -4
  1220. package/dist/node_modules/lodash-es/_setCacheAdd.js +5 -6
  1221. package/dist/node_modules/lodash-es/_setCacheHas.js +3 -4
  1222. package/dist/node_modules/lodash-es/_setToArray.js +3 -4
  1223. package/dist/node_modules/lodash-es/_setToString.js +4 -6
  1224. package/dist/node_modules/lodash-es/_shortOut.js +6 -7
  1225. package/dist/node_modules/lodash-es/_stackClear.js +5 -6
  1226. package/dist/node_modules/lodash-es/_stackDelete.js +3 -4
  1227. package/dist/node_modules/lodash-es/_stackGet.js +3 -4
  1228. package/dist/node_modules/lodash-es/_stackHas.js +3 -4
  1229. package/dist/node_modules/lodash-es/_stackSet.js +10 -11
  1230. package/dist/node_modules/lodash-es/_strictIndexOf.js +3 -4
  1231. package/dist/node_modules/lodash-es/_stringSize.js +7 -8
  1232. package/dist/node_modules/lodash-es/_stringToPath.js +5 -7
  1233. package/dist/node_modules/lodash-es/_toKey.js +7 -8
  1234. package/dist/node_modules/lodash-es/_toSource.js +7 -8
  1235. package/dist/node_modules/lodash-es/_trimmedEndIndex.js +5 -6
  1236. package/dist/node_modules/lodash-es/_unicodeSize.js +16 -17
  1237. package/dist/node_modules/lodash-es/clone.js +6 -7
  1238. package/dist/node_modules/lodash-es/cloneDeep.js +6 -7
  1239. package/dist/node_modules/lodash-es/constant.js +3 -4
  1240. package/dist/node_modules/lodash-es/defaults.js +11 -13
  1241. package/dist/node_modules/lodash-es/eq.js +3 -4
  1242. package/dist/node_modules/lodash-es/filter.js +8 -9
  1243. package/dist/node_modules/lodash-es/find.js +4 -6
  1244. package/dist/node_modules/lodash-es/findIndex.js +9 -10
  1245. package/dist/node_modules/lodash-es/flatMap.js +6 -7
  1246. package/dist/node_modules/lodash-es/flatten.js +5 -6
  1247. package/dist/node_modules/lodash-es/forEach.js +8 -9
  1248. package/dist/node_modules/lodash-es/forIn.js +7 -8
  1249. package/dist/node_modules/lodash-es/forOwn.js +6 -7
  1250. package/dist/node_modules/lodash-es/get.js +5 -6
  1251. package/dist/node_modules/lodash-es/has.js +6 -7
  1252. package/dist/node_modules/lodash-es/hasIn.js +6 -7
  1253. package/dist/node_modules/lodash-es/identity.js +3 -4
  1254. package/dist/node_modules/lodash-es/isArguments.js +6 -8
  1255. package/dist/node_modules/lodash-es/isArray.js +2 -4
  1256. package/dist/node_modules/lodash-es/isArrayLike.js +6 -7
  1257. package/dist/node_modules/lodash-es/isArrayLikeObject.js +6 -7
  1258. package/dist/node_modules/lodash-es/isBuffer.js +4 -6
  1259. package/dist/node_modules/lodash-es/isEmpty.js +17 -18
  1260. package/dist/node_modules/lodash-es/isFunction.js +9 -10
  1261. package/dist/node_modules/lodash-es/isLength.js +5 -6
  1262. package/dist/node_modules/lodash-es/isMap.js +5 -7
  1263. package/dist/node_modules/lodash-es/isObject.js +3 -4
  1264. package/dist/node_modules/lodash-es/isObjectLike.js +3 -4
  1265. package/dist/node_modules/lodash-es/isPlainObject.js +12 -13
  1266. package/dist/node_modules/lodash-es/isSet.js +5 -7
  1267. package/dist/node_modules/lodash-es/isString.js +8 -9
  1268. package/dist/node_modules/lodash-es/isSymbol.js +7 -8
  1269. package/dist/node_modules/lodash-es/isTypedArray.js +5 -7
  1270. package/dist/node_modules/lodash-es/isUndefined.js +3 -4
  1271. package/dist/node_modules/lodash-es/keys.js +7 -8
  1272. package/dist/node_modules/lodash-es/keysIn.js +7 -8
  1273. package/dist/node_modules/lodash-es/last.js +3 -4
  1274. package/dist/node_modules/lodash-es/map.js +8 -9
  1275. package/dist/node_modules/lodash-es/mapValues.js +8 -9
  1276. package/dist/node_modules/lodash-es/max.js +7 -8
  1277. package/dist/node_modules/lodash-es/memoize.js +8 -9
  1278. package/dist/node_modules/lodash-es/merge.js +5 -7
  1279. package/dist/node_modules/lodash-es/min.js +7 -8
  1280. package/dist/node_modules/lodash-es/minBy.js +7 -8
  1281. package/dist/node_modules/lodash-es/noop.js +3 -4
  1282. package/dist/node_modules/lodash-es/now.js +4 -6
  1283. package/dist/node_modules/lodash-es/pick.js +5 -7
  1284. package/dist/node_modules/lodash-es/property.js +8 -9
  1285. package/dist/node_modules/lodash-es/range.js +3 -5
  1286. package/dist/node_modules/lodash-es/reduce.js +10 -11
  1287. package/dist/node_modules/lodash-es/size.js +12 -13
  1288. package/dist/node_modules/lodash-es/sortBy.js +7 -9
  1289. package/dist/node_modules/lodash-es/stubArray.js +3 -4
  1290. package/dist/node_modules/lodash-es/stubFalse.js +3 -4
  1291. package/dist/node_modules/lodash-es/toFinite.js +6 -7
  1292. package/dist/node_modules/lodash-es/toInteger.js +5 -6
  1293. package/dist/node_modules/lodash-es/toNumber.js +13 -14
  1294. package/dist/node_modules/lodash-es/toPlainObject.js +6 -7
  1295. package/dist/node_modules/lodash-es/toString.js +5 -6
  1296. package/dist/node_modules/lodash-es/union.js +7 -9
  1297. package/dist/node_modules/lodash-es/uniqBy.js +6 -7
  1298. package/dist/node_modules/lodash-es/uniqueId.js +7 -8
  1299. package/dist/node_modules/lodash-es/values.js +6 -7
  1300. package/dist/node_modules/lodash-es/zipObject.js +6 -7
  1301. package/dist/node_modules/longest-streak/index.js +2 -4
  1302. package/dist/node_modules/markdown-table/index.js +9 -11
  1303. package/dist/node_modules/marked/lib/marked.esm.js +685 -687
  1304. package/dist/node_modules/mdast-util-find-and-replace/lib/index.js +12 -14
  1305. package/dist/node_modules/mdast-util-find-and-replace/node_modules/escape-string-regexp/index.js +2 -4
  1306. package/dist/node_modules/mdast-util-from-markdown/lib/index.js +180 -182
  1307. package/dist/node_modules/mdast-util-gfm/lib/index.js +18 -20
  1308. package/dist/node_modules/mdast-util-gfm-autolink-literal/lib/index.js +67 -69
  1309. package/dist/node_modules/mdast-util-gfm-footnote/lib/index.js +45 -47
  1310. package/dist/node_modules/mdast-util-gfm-strikethrough/lib/index.js +13 -15
  1311. package/dist/node_modules/mdast-util-gfm-table/lib/index.js +28 -30
  1312. package/dist/node_modules/mdast-util-gfm-task-list-item/lib/index.js +14 -16
  1313. package/dist/node_modules/mdast-util-math/lib/index.js +13 -15
  1314. package/dist/node_modules/mdast-util-phrasing/lib/index.js +3 -5
  1315. package/dist/node_modules/mdast-util-to-hast/lib/footer.js +9 -11
  1316. package/dist/node_modules/mdast-util-to-hast/lib/handlers/blockquote.js +2 -4
  1317. package/dist/node_modules/mdast-util-to-hast/lib/handlers/break.js +2 -4
  1318. package/dist/node_modules/mdast-util-to-hast/lib/handlers/code.js +2 -4
  1319. package/dist/node_modules/mdast-util-to-hast/lib/handlers/delete.js +2 -4
  1320. package/dist/node_modules/mdast-util-to-hast/lib/handlers/emphasis.js +2 -4
  1321. package/dist/node_modules/mdast-util-to-hast/lib/handlers/footnote-reference.js +4 -6
  1322. package/dist/node_modules/mdast-util-to-hast/lib/handlers/heading.js +2 -4
  1323. package/dist/node_modules/mdast-util-to-hast/lib/handlers/html.js +2 -4
  1324. package/dist/node_modules/mdast-util-to-hast/lib/handlers/image-reference.js +6 -8
  1325. package/dist/node_modules/mdast-util-to-hast/lib/handlers/image.js +4 -6
  1326. package/dist/node_modules/mdast-util-to-hast/lib/handlers/index.js +53 -55
  1327. package/dist/node_modules/mdast-util-to-hast/lib/handlers/inline-code.js +2 -4
  1328. package/dist/node_modules/mdast-util-to-hast/lib/handlers/link-reference.js +6 -8
  1329. package/dist/node_modules/mdast-util-to-hast/lib/handlers/link.js +4 -6
  1330. package/dist/node_modules/mdast-util-to-hast/lib/handlers/list-item.js +13 -15
  1331. package/dist/node_modules/mdast-util-to-hast/lib/handlers/list.js +2 -4
  1332. package/dist/node_modules/mdast-util-to-hast/lib/handlers/paragraph.js +2 -4
  1333. package/dist/node_modules/mdast-util-to-hast/lib/handlers/root.js +2 -4
  1334. package/dist/node_modules/mdast-util-to-hast/lib/handlers/strong.js +2 -4
  1335. package/dist/node_modules/mdast-util-to-hast/lib/handlers/table-cell.js +2 -4
  1336. package/dist/node_modules/mdast-util-to-hast/lib/handlers/table-row.js +2 -4
  1337. package/dist/node_modules/mdast-util-to-hast/lib/handlers/table.js +4 -6
  1338. package/dist/node_modules/mdast-util-to-hast/lib/handlers/text.js +4 -6
  1339. package/dist/node_modules/mdast-util-to-hast/lib/handlers/thematic-break.js +2 -4
  1340. package/dist/node_modules/mdast-util-to-hast/lib/index.js +6 -8
  1341. package/dist/node_modules/mdast-util-to-hast/lib/revert.js +2 -4
  1342. package/dist/node_modules/mdast-util-to-hast/lib/state.js +59 -61
  1343. package/dist/node_modules/mdast-util-to-markdown/lib/handle/blockquote.js +4 -6
  1344. package/dist/node_modules/mdast-util-to-markdown/lib/handle/break.js +4 -6
  1345. package/dist/node_modules/mdast-util-to-markdown/lib/handle/code.js +16 -18
  1346. package/dist/node_modules/mdast-util-to-markdown/lib/handle/definition.js +4 -6
  1347. package/dist/node_modules/mdast-util-to-markdown/lib/handle/emphasis.js +12 -14
  1348. package/dist/node_modules/mdast-util-to-markdown/lib/handle/heading.js +6 -8
  1349. package/dist/node_modules/mdast-util-to-markdown/lib/handle/html.js +4 -6
  1350. package/dist/node_modules/mdast-util-to-markdown/lib/handle/image-reference.js +4 -6
  1351. package/dist/node_modules/mdast-util-to-markdown/lib/handle/image.js +6 -8
  1352. package/dist/node_modules/mdast-util-to-markdown/lib/handle/index.js +41 -43
  1353. package/dist/node_modules/mdast-util-to-markdown/lib/handle/inline-code.js +5 -7
  1354. package/dist/node_modules/mdast-util-to-markdown/lib/handle/link-reference.js +4 -6
  1355. package/dist/node_modules/mdast-util-to-markdown/lib/handle/link.js +9 -11
  1356. package/dist/node_modules/mdast-util-to-markdown/lib/handle/list-item.js +5 -7
  1357. package/dist/node_modules/mdast-util-to-markdown/lib/handle/list.js +10 -12
  1358. package/dist/node_modules/mdast-util-to-markdown/lib/handle/paragraph.js +2 -4
  1359. package/dist/node_modules/mdast-util-to-markdown/lib/handle/root.js +4 -6
  1360. package/dist/node_modules/mdast-util-to-markdown/lib/handle/strong.js +12 -14
  1361. package/dist/node_modules/mdast-util-to-markdown/lib/handle/text.js +2 -4
  1362. package/dist/node_modules/mdast-util-to-markdown/lib/handle/thematic-break.js +5 -7
  1363. package/dist/node_modules/mdast-util-to-markdown/lib/util/check-bullet-ordered.js +2 -4
  1364. package/dist/node_modules/mdast-util-to-markdown/lib/util/check-bullet-other.js +4 -6
  1365. package/dist/node_modules/mdast-util-to-markdown/lib/util/check-bullet.js +2 -4
  1366. package/dist/node_modules/mdast-util-to-markdown/lib/util/check-emphasis.js +2 -4
  1367. package/dist/node_modules/mdast-util-to-markdown/lib/util/check-fence.js +2 -4
  1368. package/dist/node_modules/mdast-util-to-markdown/lib/util/check-list-item-indent.js +2 -4
  1369. package/dist/node_modules/mdast-util-to-markdown/lib/util/check-quote.js +2 -4
  1370. package/dist/node_modules/mdast-util-to-markdown/lib/util/check-rule-repetition.js +2 -4
  1371. package/dist/node_modules/mdast-util-to-markdown/lib/util/check-rule.js +2 -4
  1372. package/dist/node_modules/mdast-util-to-markdown/lib/util/check-strong.js +2 -4
  1373. package/dist/node_modules/mdast-util-to-markdown/lib/util/encode-character-reference.js +2 -4
  1374. package/dist/node_modules/mdast-util-to-markdown/lib/util/encode-info.js +4 -6
  1375. package/dist/node_modules/mdast-util-to-markdown/lib/util/format-code-as-indented.js +2 -4
  1376. package/dist/node_modules/mdast-util-to-markdown/lib/util/format-heading-as-setext.js +7 -8
  1377. package/dist/node_modules/mdast-util-to-markdown/lib/util/format-link-as-autolink.js +4 -6
  1378. package/dist/node_modules/mdast-util-to-markdown/lib/util/pattern-in-scope.js +4 -6
  1379. package/dist/node_modules/mdast-util-to-string/lib/index.js +12 -14
  1380. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/architectureDiagram-Q4EWVU46.js +374 -378
  1381. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/blockDiagram-DXYQGD6D.js +1347 -1349
  1382. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/c4Diagram-AHTNJAMY.js +549 -555
  1383. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/chunk-336JU56O.js +38 -40
  1384. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/chunk-426QAEUC.js +7 -9
  1385. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/chunk-4BX2VUAB.js +4 -6
  1386. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/chunk-4TB4RGXK.js +198 -204
  1387. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/chunk-55IACEB6.js +5 -7
  1388. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/chunk-5FUZZQ4R.js +2345 -2347
  1389. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/chunk-5PVQY5BW.js +253 -257
  1390. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/chunk-AGHRB4JF.js +20 -22
  1391. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/chunk-BSJP7CBP.js +35 -37
  1392. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/chunk-EDXVE4YY.js +15 -17
  1393. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/chunk-ENJZ2VHE.js +344 -346
  1394. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/chunk-FMBD7UC4.js +3 -5
  1395. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/chunk-ICPOFSXX.js +718 -746
  1396. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/chunk-OYMX7WX6.js +588 -594
  1397. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/chunk-QZHKN3VN.js +4 -8
  1398. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/chunk-U2HBQHQK.js +204 -206
  1399. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/chunk-X2U36JSP.js +37 -39
  1400. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/chunk-XPW4576I.js +891 -893
  1401. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/chunk-YZCP3GAM.js +37 -39
  1402. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/chunk-ZZ45TVLE.js +13 -15
  1403. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/classDiagram-6PBFFD2Q.js +9 -11
  1404. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/classDiagram-v2-HSJHXN6E.js +9 -11
  1405. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/cose-bilkent-S5V4N54A.js +114 -116
  1406. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/dagre-KV5264BT.js +188 -190
  1407. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/diagram-5BDNPKRD.js +70 -72
  1408. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/diagram-G4DWMVQ6.js +185 -189
  1409. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/diagram-MMDJMWI5.js +154 -156
  1410. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/diagram-TYMM5635.js +72 -76
  1411. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/erDiagram-SMLLAGMA.js +75 -79
  1412. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/flowDiagram-DWJPFMVM.js +896 -900
  1413. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/ganttDiagram-T4ZO3ILL.js +685 -687
  1414. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/gitGraphDiagram-UUTBAWPF.js +569 -571
  1415. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/infoDiagram-42DDH7IO.js +15 -17
  1416. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/ishikawaDiagram-UXIWVN3A.js +304 -308
  1417. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/journeyDiagram-VCZTEJTY.js +377 -379
  1418. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/kanban-definition-6JOO6SKY.js +114 -116
  1419. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/mindmap-definition-QFDTVHPH.js +87 -91
  1420. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/pieDiagram-DEJITSTG.js +94 -96
  1421. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/quadrantDiagram-34T5L4WZ.js +273 -279
  1422. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/requirementDiagram-MS252O5E.js +59 -63
  1423. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/sankeyDiagram-XADWPNL6.js +202 -212
  1424. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/sequenceDiagram-FGHM5R23.js +564 -568
  1425. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/stateDiagram-FHFEXIEX.js +155 -157
  1426. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/stateDiagram-v2-QKLJ7IA2.js +9 -11
  1427. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/timeline-definition-GMOUNBTQ.js +559 -561
  1428. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/vennDiagram-DHZGUBPP.js +370 -372
  1429. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/wardleyDiagram-NUSXRM2D.js +450 -454
  1430. package/dist/node_modules/mermaid/dist/chunks/mermaid.core/xychartDiagram-5P7HB3ND.js +658 -680
  1431. package/dist/node_modules/mermaid/dist/mermaid.core.js +430 -434
  1432. package/dist/node_modules/micromark/lib/constructs.js +79 -80
  1433. package/dist/node_modules/micromark/lib/create-tokenizer.js +12 -14
  1434. package/dist/node_modules/micromark/lib/initialize/content.js +7 -9
  1435. package/dist/node_modules/micromark/lib/initialize/document.js +14 -15
  1436. package/dist/node_modules/micromark/lib/initialize/flow.js +7 -9
  1437. package/dist/node_modules/micromark/lib/initialize/text.js +6 -8
  1438. package/dist/node_modules/micromark/lib/parse.js +18 -20
  1439. package/dist/node_modules/micromark/lib/postprocess.js +4 -6
  1440. package/dist/node_modules/micromark/lib/preprocess.js +4 -6
  1441. package/dist/node_modules/micromark-core-commonmark/lib/attention.js +18 -20
  1442. package/dist/node_modules/micromark-core-commonmark/lib/autolink.js +15 -17
  1443. package/dist/node_modules/micromark-core-commonmark/lib/blank-line.js +9 -11
  1444. package/dist/node_modules/micromark-core-commonmark/lib/block-quote.js +13 -15
  1445. package/dist/node_modules/micromark-core-commonmark/lib/character-escape.js +6 -8
  1446. package/dist/node_modules/micromark-core-commonmark/lib/character-reference.js +14 -16
  1447. package/dist/node_modules/micromark-core-commonmark/lib/code-fenced.js +21 -22
  1448. package/dist/node_modules/micromark-core-commonmark/lib/code-indented.js +15 -16
  1449. package/dist/node_modules/micromark-core-commonmark/lib/code-text.js +11 -13
  1450. package/dist/node_modules/micromark-core-commonmark/lib/content.js +17 -18
  1451. package/dist/node_modules/micromark-core-commonmark/lib/definition.js +29 -30
  1452. package/dist/node_modules/micromark-core-commonmark/lib/hard-break-escape.js +6 -8
  1453. package/dist/node_modules/micromark-core-commonmark/lib/heading-atx.js +13 -15
  1454. package/dist/node_modules/micromark-core-commonmark/lib/html-flow.js +67 -68
  1455. package/dist/node_modules/micromark-core-commonmark/lib/html-text.js +64 -66
  1456. package/dist/node_modules/micromark-core-commonmark/lib/label-end.js +111 -112
  1457. package/dist/node_modules/micromark-core-commonmark/lib/label-start-image.js +6 -8
  1458. package/dist/node_modules/micromark-core-commonmark/lib/label-start-link.js +6 -8
  1459. package/dist/node_modules/micromark-core-commonmark/lib/line-ending.js +6 -8
  1460. package/dist/node_modules/micromark-core-commonmark/lib/list.js +31 -32
  1461. package/dist/node_modules/micromark-core-commonmark/lib/setext-underline.js +10 -12
  1462. package/dist/node_modules/micromark-core-commonmark/lib/thematic-break.js +9 -11
  1463. package/dist/node_modules/micromark-extension-gfm/index.js +14 -16
  1464. package/dist/node_modules/micromark-extension-gfm-autolink-literal/lib/syntax.js +120 -122
  1465. package/dist/node_modules/micromark-extension-gfm-footnote/lib/syntax.js +31 -33
  1466. package/dist/node_modules/micromark-extension-gfm-strikethrough/lib/syntax.js +9 -11
  1467. package/dist/node_modules/micromark-extension-gfm-table/lib/edit-map.js +4 -6
  1468. package/dist/node_modules/micromark-extension-gfm-table/lib/infer.js +2 -4
  1469. package/dist/node_modules/micromark-extension-gfm-table/lib/syntax.js +34 -36
  1470. package/dist/node_modules/micromark-extension-gfm-task-list-item/lib/syntax.js +18 -20
  1471. package/dist/node_modules/micromark-extension-math/lib/math-flow.js +20 -21
  1472. package/dist/node_modules/micromark-extension-math/lib/math-text.js +9 -11
  1473. package/dist/node_modules/micromark-extension-math/lib/syntax.js +6 -8
  1474. package/dist/node_modules/micromark-factory-destination/index.js +8 -10
  1475. package/dist/node_modules/micromark-factory-label/index.js +5 -7
  1476. package/dist/node_modules/micromark-factory-space/index.js +5 -7
  1477. package/dist/node_modules/micromark-factory-title/index.js +6 -8
  1478. package/dist/node_modules/micromark-factory-whitespace/index.js +5 -7
  1479. package/dist/node_modules/micromark-util-character/index.js +12 -14
  1480. package/dist/node_modules/micromark-util-chunked/index.js +4 -6
  1481. package/dist/node_modules/micromark-util-classify-character/index.js +5 -7
  1482. package/dist/node_modules/micromark-util-combine-extensions/index.js +11 -13
  1483. package/dist/node_modules/micromark-util-decode-numeric-character-reference/index.js +2 -4
  1484. package/dist/node_modules/micromark-util-decode-string/index.js +9 -11
  1485. package/dist/node_modules/micromark-util-html-tag-name/index.js +2 -4
  1486. package/dist/node_modules/micromark-util-normalize-identifier/index.js +2 -4
  1487. package/dist/node_modules/micromark-util-resolve-all/index.js +2 -4
  1488. package/dist/node_modules/micromark-util-sanitize-uri/index.js +4 -6
  1489. package/dist/node_modules/micromark-util-subtokenize/index.js +8 -10
  1490. package/dist/node_modules/micromark-util-subtokenize/lib/splice-buffer.js +8 -10
  1491. package/dist/node_modules/motion/dist/es/react.js +2 -2
  1492. package/dist/node_modules/nanoid/index.browser.js +4 -6
  1493. package/dist/node_modules/nanoid/url-alphabet/index.js +2 -4
  1494. package/dist/node_modules/property-information/index.js +23 -25
  1495. package/dist/node_modules/property-information/lib/aria.js +39 -41
  1496. package/dist/node_modules/property-information/lib/find.js +16 -18
  1497. package/dist/node_modules/property-information/lib/hast-to-react.js +2 -4
  1498. package/dist/node_modules/property-information/lib/html.js +94 -96
  1499. package/dist/node_modules/property-information/lib/normalize.js +2 -4
  1500. package/dist/node_modules/property-information/lib/svg.js +77 -79
  1501. package/dist/node_modules/property-information/lib/util/case-insensitive-transform.js +4 -6
  1502. package/dist/node_modules/property-information/lib/util/case-sensitive-transform.js +2 -4
  1503. package/dist/node_modules/property-information/lib/util/create.js +8 -10
  1504. package/dist/node_modules/property-information/lib/util/defined-info.js +11 -13
  1505. package/dist/node_modules/property-information/lib/util/info.js +3 -5
  1506. package/dist/node_modules/property-information/lib/util/merge.js +4 -6
  1507. package/dist/node_modules/property-information/lib/util/schema.js +3 -5
  1508. package/dist/node_modules/property-information/lib/util/types.js +14 -15
  1509. package/dist/node_modules/property-information/lib/xlink.js +3 -5
  1510. package/dist/node_modules/property-information/lib/xml.js +3 -5
  1511. package/dist/node_modules/property-information/lib/xmlns.js +5 -7
  1512. package/dist/node_modules/rehype-harden/dist/index.js +45 -47
  1513. package/dist/node_modules/rehype-katex/lib/index.js +23 -25
  1514. package/dist/node_modules/rehype-raw/lib/index.js +4 -6
  1515. package/dist/node_modules/rehype-sanitize/lib/index.js +4 -6
  1516. package/dist/node_modules/remark-gfm/lib/index.js +7 -9
  1517. package/dist/node_modules/remark-math/lib/index.js +7 -9
  1518. package/dist/node_modules/remark-parse/lib/index.js +4 -6
  1519. package/dist/node_modules/remark-rehype/lib/index.js +5 -7
  1520. package/dist/node_modules/remend/dist/index.js +324 -326
  1521. package/dist/node_modules/roughjs/bundled/rough.esm.js +875 -877
  1522. package/dist/node_modules/shiki/dist/bundle-full.js +11 -13
  1523. package/dist/node_modules/shiki/dist/{langs-bundle-full-DfKZStlK.js → langs.js} +6 -8
  1524. package/dist/node_modules/shiki/dist/themes.js +4 -6
  1525. package/dist/node_modules/shiki/dist/wasm.js +2 -2
  1526. package/dist/node_modules/space-separated-tokens/index.js +3 -5
  1527. package/dist/node_modules/streamdown/dist/chunk-BO2N2NFS.js +699 -701
  1528. package/dist/node_modules/streamdown/dist/highlighted-body-OFNGDK62.js +8 -10
  1529. package/dist/node_modules/streamdown/dist/index.js +1 -1
  1530. package/dist/node_modules/streamdown/dist/mermaid-GHXKKRXX.js +2 -2
  1531. package/dist/node_modules/streamdown/node_modules/marked/lib/marked.esm.js +712 -709
  1532. package/dist/node_modules/stringify-entities/lib/constant/dangerous.js +2 -4
  1533. package/dist/node_modules/stringify-entities/lib/core.js +16 -18
  1534. package/dist/node_modules/stringify-entities/lib/index.js +5 -7
  1535. package/dist/node_modules/stringify-entities/lib/util/format-smart.js +8 -10
  1536. package/dist/node_modules/stringify-entities/lib/util/to-decimal.js +4 -6
  1537. package/dist/node_modules/stringify-entities/lib/util/to-hexadecimal.js +4 -6
  1538. package/dist/node_modules/stringify-entities/lib/util/to-named.js +12 -14
  1539. package/dist/node_modules/style-to-js/cjs/index.js +7 -9
  1540. package/dist/node_modules/style-to-js/cjs/utilities.js +4 -6
  1541. package/dist/node_modules/style-to-object/cjs/index.js +6 -8
  1542. package/dist/node_modules/stylis/src/Enum.js +2 -4
  1543. package/dist/node_modules/stylis/src/Parser.js +36 -38
  1544. package/dist/node_modules/stylis/src/Serializer.js +15 -17
  1545. package/dist/node_modules/stylis/src/Tokenizer.js +51 -53
  1546. package/dist/node_modules/stylis/src/Utility.js +15 -17
  1547. package/dist/node_modules/trim-lines/index.js +8 -10
  1548. package/dist/node_modules/trough/lib/index.js +4 -6
  1549. package/dist/node_modules/ts-dedent/esm/index.js +2 -4
  1550. package/dist/node_modules/unified/lib/callable-instance.js +2 -4
  1551. package/dist/node_modules/unified/lib/index.js +101 -102
  1552. package/dist/node_modules/unified/node_modules/is-plain-obj/index.js +2 -4
  1553. package/dist/node_modules/unist-util-find-after/lib/index.js +4 -6
  1554. package/dist/node_modules/unist-util-is/lib/index.js +29 -31
  1555. package/dist/node_modules/unist-util-position/lib/index.js +5 -7
  1556. package/dist/node_modules/unist-util-stringify-position/lib/index.js +8 -10
  1557. package/dist/node_modules/unist-util-visit/lib/index.js +4 -6
  1558. package/dist/node_modules/unist-util-visit-parents/lib/color.js +2 -4
  1559. package/dist/node_modules/unist-util-visit-parents/lib/index.js +20 -21
  1560. package/dist/node_modules/uuid/dist/esm-browser/native.js +2 -3
  1561. package/dist/node_modules/uuid/dist/esm-browser/rng.js +6 -8
  1562. package/dist/node_modules/uuid/dist/esm-browser/stringify.js +5 -7
  1563. package/dist/node_modules/uuid/dist/esm-browser/v4.js +9 -10
  1564. package/dist/node_modules/vaul/dist/index.js +274 -276
  1565. package/dist/node_modules/vfile/lib/index.js +42 -44
  1566. package/dist/node_modules/vfile/lib/minpath.browser.js +20 -22
  1567. package/dist/node_modules/vfile/lib/minproc.browser.js +3 -5
  1568. package/dist/node_modules/vfile/lib/minurl.browser.js +6 -8
  1569. package/dist/node_modules/vfile/lib/minurl.shared.js +2 -4
  1570. package/dist/node_modules/vfile-location/lib/index.js +5 -7
  1571. package/dist/node_modules/vfile-message/lib/index.js +5 -7
  1572. package/dist/node_modules/vscode-jsonrpc/browser.js +6 -8
  1573. package/dist/node_modules/vscode-jsonrpc/lib/browser/main.js +9 -11
  1574. package/dist/node_modules/vscode-jsonrpc/lib/browser/ril.js +6 -8
  1575. package/dist/node_modules/vscode-jsonrpc/lib/common/api.js +26 -28
  1576. package/dist/node_modules/vscode-jsonrpc/lib/common/cancellation.js +15 -17
  1577. package/dist/node_modules/vscode-jsonrpc/lib/common/connection.js +11 -13
  1578. package/dist/node_modules/vscode-jsonrpc/lib/common/disposable.js +4 -6
  1579. package/dist/node_modules/vscode-jsonrpc/lib/common/events.js +6 -8
  1580. package/dist/node_modules/vscode-jsonrpc/lib/common/is.js +4 -6
  1581. package/dist/node_modules/vscode-jsonrpc/lib/common/linkedMap.js +4 -6
  1582. package/dist/node_modules/vscode-jsonrpc/lib/common/messageBuffer.js +4 -6
  1583. package/dist/node_modules/vscode-jsonrpc/lib/common/messageReader.js +9 -11
  1584. package/dist/node_modules/vscode-jsonrpc/lib/common/messageWriter.js +29 -31
  1585. package/dist/node_modules/vscode-jsonrpc/lib/common/messages.js +6 -8
  1586. package/dist/node_modules/vscode-jsonrpc/lib/common/ral.js +4 -6
  1587. package/dist/node_modules/vscode-jsonrpc/lib/common/semaphore.js +6 -8
  1588. package/dist/node_modules/vscode-jsonrpc/lib/common/sharedArrayCancellation.js +6 -8
  1589. package/dist/node_modules/vscode-languageserver-protocol/lib/browser/main.js +8 -10
  1590. package/dist/node_modules/vscode-languageserver-protocol/lib/common/api.js +21 -23
  1591. package/dist/node_modules/vscode-languageserver-protocol/lib/common/connection.js +6 -8
  1592. package/dist/node_modules/vscode-languageserver-protocol/lib/common/messages.js +6 -8
  1593. package/dist/node_modules/vscode-languageserver-protocol/lib/common/protocol.callHierarchy.js +6 -8
  1594. package/dist/node_modules/vscode-languageserver-protocol/lib/common/protocol.colorProvider.js +6 -8
  1595. package/dist/node_modules/vscode-languageserver-protocol/lib/common/protocol.configuration.js +6 -8
  1596. package/dist/node_modules/vscode-languageserver-protocol/lib/common/protocol.declaration.js +6 -8
  1597. package/dist/node_modules/vscode-languageserver-protocol/lib/common/protocol.diagnostic.js +12 -14
  1598. package/dist/node_modules/vscode-languageserver-protocol/lib/common/protocol.fileOperations.js +6 -8
  1599. package/dist/node_modules/vscode-languageserver-protocol/lib/common/protocol.foldingRange.js +6 -8
  1600. package/dist/node_modules/vscode-languageserver-protocol/lib/common/protocol.implementation.js +6 -8
  1601. package/dist/node_modules/vscode-languageserver-protocol/lib/common/protocol.inlayHint.js +6 -8
  1602. package/dist/node_modules/vscode-languageserver-protocol/lib/common/protocol.inlineCompletion.js +6 -8
  1603. package/dist/node_modules/vscode-languageserver-protocol/lib/common/protocol.inlineValue.js +6 -8
  1604. package/dist/node_modules/vscode-languageserver-protocol/lib/common/protocol.js +53 -55
  1605. package/dist/node_modules/vscode-languageserver-protocol/lib/common/protocol.linkedEditingRange.js +6 -8
  1606. package/dist/node_modules/vscode-languageserver-protocol/lib/common/protocol.moniker.js +6 -8
  1607. package/dist/node_modules/vscode-languageserver-protocol/lib/common/protocol.notebook.js +8 -10
  1608. package/dist/node_modules/vscode-languageserver-protocol/lib/common/protocol.progress.js +10 -12
  1609. package/dist/node_modules/vscode-languageserver-protocol/lib/common/protocol.selectionRange.js +6 -8
  1610. package/dist/node_modules/vscode-languageserver-protocol/lib/common/protocol.semanticTokens.js +6 -8
  1611. package/dist/node_modules/vscode-languageserver-protocol/lib/common/protocol.showDocument.js +6 -8
  1612. package/dist/node_modules/vscode-languageserver-protocol/lib/common/protocol.typeDefinition.js +6 -8
  1613. package/dist/node_modules/vscode-languageserver-protocol/lib/common/protocol.typeHierarchy.js +6 -8
  1614. package/dist/node_modules/vscode-languageserver-protocol/lib/common/protocol.workspaceFolder.js +6 -8
  1615. package/dist/node_modules/vscode-languageserver-protocol/lib/common/utils/is.js +4 -6
  1616. package/dist/node_modules/vscode-languageserver-textdocument/lib/esm/main.js +19 -21
  1617. package/dist/node_modules/vscode-languageserver-types/lib/esm/main.js +847 -849
  1618. package/dist/node_modules/vscode-uri/lib/esm/index.js +4 -6
  1619. package/dist/node_modules/web-namespaces/index.js +2 -4
  1620. package/dist/node_modules/zwitch/index.js +5 -7
  1621. package/dist/packages/contracts/dist/enums/index.js +12 -14
  1622. package/dist/packages/contracts/dist/enums/registry.enum.js +4 -6
  1623. package/dist/packages/contracts/dist/enums/sort-order.enum.js +4 -6
  1624. package/dist/packages/contracts/dist/enums/user-type.enum.js +4 -6
  1625. package/dist/packages/contracts/dist/enums/workflow-state.enum.js +4 -6
  1626. package/dist/pages/DashboardPage.js +99 -55
  1627. package/dist/pages/DebugPage.js +17 -12
  1628. package/dist/pages/DebugWorkflowDetailsPage.js +119 -91
  1629. package/dist/pages/DebugWorkflowsPage.js +37 -39
  1630. package/dist/pages/EmbedWorkbenchPage.js +62 -48
  1631. package/dist/pages/PreviewWorkbenchPage.js +324 -243
  1632. package/dist/pages/RunsListPage.js +61 -44
  1633. package/dist/pages/RunsPage.js +48 -31
  1634. package/dist/pages/StudioLandingPage.js +132 -97
  1635. package/dist/pages/WorkbenchPage.js +86 -56
  1636. package/dist/pages/WorkflowDebugPage.js +110 -74
  1637. package/dist/pages/WorkspacePage.js +115 -72
  1638. package/dist/pages/WorkspaceRunsPage.js +70 -43
  1639. package/dist/pages/WorkspacesPage.js +35 -24
  1640. package/dist/providers/ComponentOverridesProvider.js +12 -9
  1641. package/dist/providers/InvalidationEventsProvider.js +35 -33
  1642. package/dist/providers/QueryProvider.js +18 -14
  1643. package/dist/providers/SseProvider.js +29 -28
  1644. package/dist/providers/StudioProvider.js +19 -14
  1645. package/dist/routing/LocalRouter.js +9 -6
  1646. package/dist/services/createApiClient.js +5 -7
  1647. package/dist/services/eventEmitter.js +2 -3
  1648. package/dist/services/index.js +2 -2
  1649. package/dist/types/ai.types.js +5 -7
  1650. package/package.json +33 -33
  1651. package/dist/_virtual/_rolldown/runtime.js +0 -20
  1652. package/dist/frontend/studio/node_modules/lodash/_Symbol.js +0 -9
  1653. package/dist/frontend/studio/node_modules/lodash/_baseGetTag.js +0 -15
  1654. package/dist/frontend/studio/node_modules/lodash/_baseTrim.js +0 -13
  1655. package/dist/frontend/studio/node_modules/lodash/_freeGlobal.js +0 -8
  1656. package/dist/frontend/studio/node_modules/lodash/_getRawTag.js +0 -19
  1657. package/dist/frontend/studio/node_modules/lodash/_objectToString.js +0 -12
  1658. package/dist/frontend/studio/node_modules/lodash/_root.js +0 -10
  1659. package/dist/frontend/studio/node_modules/lodash/_trimmedEndIndex.js +0 -13
  1660. package/dist/frontend/studio/node_modules/lodash/isObject.js +0 -12
  1661. package/dist/frontend/studio/node_modules/lodash/isObjectLike.js +0 -11
  1662. package/dist/frontend/studio/node_modules/lodash/isSymbol.js +0 -14
  1663. package/dist/frontend/studio/node_modules/lodash/now.js +0 -12
  1664. package/dist/frontend/studio/node_modules/lodash/toNumber.js +0 -24
  1665. package/dist/node_modules/@shikijs/primitive/dist/index.js +0 -540
  1666. package/dist/node_modules/shiki/dist/chunk-CtajNgzt.js +0 -17
  1667. package/dist/node_modules/shiki/dist/engine-oniguruma.js +0 -7
@@ -1,3 +1,2 @@
1
- var e = [Object.freeze(JSON.parse("{\"displayName\":\"C#\",\"name\":\"csharp\",\"patterns\":[{\"include\":\"#preprocessor\"},{\"include\":\"#comment\"},{\"include\":\"#directives\"},{\"include\":\"#declarations\"},{\"include\":\"#script-top-level\"}],\"repository\":{\"accessor-getter\":{\"patterns\":[{\"begin\":\"\\\\{\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.curlybrace.open.cs\"}},\"contentName\":\"meta.accessor.getter.cs\",\"end\":\"}\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.curlybrace.close.cs\"}},\"patterns\":[{\"include\":\"#statement\"}]},{\"include\":\"#accessor-getter-expression\"},{\"include\":\"#punctuation-semicolon\"}]},\"accessor-getter-expression\":{\"begin\":\"=>\",\"beginCaptures\":{\"0\":{\"name\":\"keyword.operator.arrow.cs\"}},\"contentName\":\"meta.accessor.getter.cs\",\"end\":\"(?=[;}])\",\"patterns\":[{\"include\":\"#ref-modifier\"},{\"include\":\"#expression\"}]},\"accessor-setter\":{\"patterns\":[{\"begin\":\"\\\\{\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.curlybrace.open.cs\"}},\"contentName\":\"meta.accessor.setter.cs\",\"end\":\"}\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.curlybrace.close.cs\"}},\"patterns\":[{\"include\":\"#statement\"}]},{\"begin\":\"=>\",\"beginCaptures\":{\"0\":{\"name\":\"keyword.operator.arrow.cs\"}},\"contentName\":\"meta.accessor.setter.cs\",\"end\":\"(?=[;}])\",\"patterns\":[{\"include\":\"#ref-modifier\"},{\"include\":\"#expression\"}]},{\"include\":\"#punctuation-semicolon\"}]},\"anonymous-method-expression\":{\"patterns\":[{\"begin\":\"((?:\\\\b(?:async|static)\\\\b\\\\s*)*)(?:(@?[_[:alpha:]][_[:alnum:]]*)\\\\b|(\\\\()(?<tuple>(?:[^()]|\\\\(\\\\g<tuple>\\\\))*)(\\\\)))\\\\s*(=>)\",\"beginCaptures\":{\"1\":{\"patterns\":[{\"match\":\"async|static\",\"name\":\"storage.modifier.$0.cs\"}]},\"2\":{\"name\":\"entity.name.variable.parameter.cs\"},\"3\":{\"name\":\"punctuation.parenthesis.open.cs\"},\"4\":{\"patterns\":[{\"include\":\"#comment\"},{\"include\":\"#explicit-anonymous-function-parameter\"},{\"include\":\"#implicit-anonymous-function-parameter\"},{\"include\":\"#default-argument\"},{\"include\":\"#punctuation-comma\"}]},\"5\":{\"name\":\"punctuation.parenthesis.close.cs\"},\"6\":{\"name\":\"keyword.operator.arrow.cs\"}},\"end\":\"(?=[),;}])\",\"patterns\":[{\"include\":\"#intrusive\"},{\"begin\":\"(?=\\\\{)\",\"end\":\"(?=[),;}])\",\"patterns\":[{\"include\":\"#block\"},{\"include\":\"#intrusive\"}]},{\"begin\":\"\\\\b(ref)\\\\b|(?=\\\\S)\",\"beginCaptures\":{\"1\":{\"name\":\"storage.modifier.ref.cs\"}},\"end\":\"(?=[),;}])\",\"patterns\":[{\"include\":\"#expression\"}]}]},{\"begin\":\"((?:\\\\b(?:async|static)\\\\b\\\\s*)*)\\\\b(delegate)\\\\b\\\\s*\",\"beginCaptures\":{\"1\":{\"patterns\":[{\"match\":\"async|static\",\"name\":\"storage.modifier.$0.cs\"}]},\"2\":{\"name\":\"storage.type.delegate.cs\"}},\"end\":\"(?<=})|(?=[),;}])\",\"patterns\":[{\"include\":\"#intrusive\"},{\"begin\":\"\\\\(\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.open.cs\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.close.cs\"}},\"patterns\":[{\"include\":\"#intrusive\"},{\"include\":\"#explicit-anonymous-function-parameter\"},{\"include\":\"#punctuation-comma\"}]},{\"include\":\"#block\"}]}]},\"anonymous-object-creation-expression\":{\"begin\":\"\\\\b(new)\\\\b\\\\s*(?=\\\\{|//|/\\\\*|$)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.operator.expression.new.cs\"}},\"end\":\"(?<=})\",\"patterns\":[{\"include\":\"#comment\"},{\"include\":\"#initializer-expression\"}]},\"argument\":{\"patterns\":[{\"match\":\"\\\\b(ref|in)\\\\b\",\"name\":\"storage.modifier.$1.cs\"},{\"begin\":\"\\\\b(out)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"storage.modifier.out.cs\"}},\"end\":\"(?=[]),])\",\"patterns\":[{\"include\":\"#declaration-expression-local\"},{\"include\":\"#expression\"}]},{\"include\":\"#expression\"}]},\"argument-list\":{\"begin\":\"\\\\(\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.open.cs\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.close.cs\"}},\"patterns\":[{\"include\":\"#named-argument\"},{\"include\":\"#argument\"},{\"include\":\"#punctuation-comma\"}]},\"array-creation-expression\":{\"begin\":\"\\\\b(new|stackalloc)\\\\b\\\\s*(?<type_name>(?:(?:(?<identifier>@?[_[:alpha:]][_[:alnum:]]*)\\\\s*::\\\\s*)?(?<name_and_type_args>\\\\g<identifier>\\\\s*(?<type_args>\\\\s*<(?:[^<>]|\\\\g<type_args>)+>\\\\s*)?)(?:\\\\s*\\\\.\\\\s*\\\\g<name_and_type_args>)*|(?<tuple>\\\\s*\\\\((?:[^()]|\\\\g<tuple>)+\\\\)))(?:\\\\s*\\\\*\\\\s*)*(?:\\\\s*\\\\?\\\\s*)?(?:\\\\s*\\\\[(?:\\\\s*,\\\\s*)*]\\\\s*\\\\??\\\\s*)*)?\\\\s*(?=\\\\[)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.operator.expression.$1.cs\"},\"2\":{\"patterns\":[{\"include\":\"#type\"}]}},\"end\":\"(?<=])\",\"patterns\":[{\"include\":\"#bracketed-argument-list\"}]},\"as-expression\":{\"captures\":{\"1\":{\"name\":\"keyword.operator.expression.as.cs\"},\"2\":{\"patterns\":[{\"include\":\"#type\"}]}},\"match\":\"(?<!\\\\.)\\\\b(as)\\\\b\\\\s*(?<type_name>(?:(?:(?<identifier>@?[_[:alpha:]][_[:alnum:]]*)\\\\s*::\\\\s*)?(?<name_and_type_args>\\\\g<identifier>\\\\s*(?<type_args>\\\\s*<(?:[^<>]|\\\\g<type_args>)+>\\\\s*)?)(?:\\\\s*\\\\.\\\\s*\\\\g<name_and_type_args>)*|(?<tuple>\\\\s*\\\\((?:[^()]|\\\\g<tuple>)+\\\\)))(?:\\\\s*\\\\?(?!\\\\?))?(?:\\\\s*\\\\[\\\\s*(?:,\\\\s*)*](?:\\\\s*\\\\?(?!\\\\?))?)*)?\"},\"assignment-expression\":{\"begin\":\"(?:[-%*+/]|\\\\?\\\\?|[\\\\&^]|<<|>>>?|\\\\|)?=(?![=>])\",\"beginCaptures\":{\"0\":{\"patterns\":[{\"include\":\"#assignment-operators\"}]}},\"end\":\"(?=[]),;}])\",\"patterns\":[{\"include\":\"#ref-modifier\"},{\"include\":\"#expression\"}]},\"assignment-operators\":{\"patterns\":[{\"match\":\"(?:[-%*+/]|\\\\?\\\\?)=\",\"name\":\"keyword.operator.assignment.compound.cs\"},{\"match\":\"(?:[\\\\&^]|<<|>>>?|\\\\|)=\",\"name\":\"keyword.operator.assignment.compound.bitwise.cs\"},{\"match\":\"=\",\"name\":\"keyword.operator.assignment.cs\"}]},\"attribute\":{\"patterns\":[{\"include\":\"#type-name\"},{\"include\":\"#type-arguments\"},{\"include\":\"#attribute-arguments\"}]},\"attribute-arguments\":{\"begin\":\"(\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.parenthesis.open.cs\"}},\"end\":\"(\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.parenthesis.close.cs\"}},\"patterns\":[{\"include\":\"#attribute-named-argument\"},{\"include\":\"#expression\"},{\"include\":\"#punctuation-comma\"}]},\"attribute-named-argument\":{\"begin\":\"(@?[_[:alpha:]][_[:alnum:]]*)\\\\s*(?==)\",\"beginCaptures\":{\"1\":{\"name\":\"entity.name.variable.property.cs\"}},\"end\":\"(?=([),]))\",\"patterns\":[{\"include\":\"#operator-assignment\"},{\"include\":\"#expression\"}]},\"attribute-section\":{\"begin\":\"(\\\\[)(assembly|module|field|event|method|param|property|return|typevar|type)?(:)?\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.squarebracket.open.cs\"},\"2\":{\"name\":\"keyword.other.attribute-specifier.cs\"},\"3\":{\"name\":\"punctuation.separator.colon.cs\"}},\"end\":\"(])\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.squarebracket.close.cs\"}},\"patterns\":[{\"include\":\"#comment\"},{\"include\":\"#attribute\"},{\"include\":\"#punctuation-comma\"}]},\"await-expression\":{\"match\":\"(?<!\\\\.\\\\s*)\\\\b(await)\\\\b\",\"name\":\"keyword.operator.expression.await.cs\"},\"await-statement\":{\"begin\":\"(?<!\\\\.\\\\s*)\\\\b(await)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.operator.expression.await.cs\"}},\"end\":\"(?<=})|(?=[;}])\",\"patterns\":[{\"include\":\"#foreach-statement\"},{\"include\":\"#using-statement\"},{\"include\":\"#expression\"}]},\"base-class-constructor-call\":{\"begin\":\"(?:(@?[_[:alpha:]][_[:alnum:]]*)\\\\s*(\\\\.))*(@?[_[:alpha:]][_[:alnum:]]*)\\\\s*(<(?<type_args>[^()<>]|\\\\((?:[^()<>]|<[^()<>]*>|\\\\([^()<>]*\\\\))*\\\\)|<\\\\g<type_args>*>)*>\\\\s*)?(?=\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"entity.name.type.cs\"},\"2\":{\"name\":\"punctuation.accessor.cs\"},\"3\":{\"name\":\"entity.name.type.cs\"},\"4\":{\"patterns\":[{\"include\":\"#type-arguments\"}]}},\"end\":\"(?<=\\\\))\",\"patterns\":[{\"include\":\"#argument-list\"}]},\"base-types\":{\"begin\":\":\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.separator.colon.cs\"}},\"end\":\"(?=\\\\{|where|;)\",\"patterns\":[{\"include\":\"#base-class-constructor-call\"},{\"include\":\"#type\"},{\"include\":\"#punctuation-comma\"},{\"include\":\"#preprocessor\"}]},\"block\":{\"begin\":\"\\\\{\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.curlybrace.open.cs\"}},\"end\":\"}\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.curlybrace.close.cs\"}},\"patterns\":[{\"include\":\"#statement\"}]},\"boolean-literal\":{\"patterns\":[{\"match\":\"(?<!\\\\.)\\\\btrue\\\\b\",\"name\":\"constant.language.boolean.true.cs\"},{\"match\":\"(?<!\\\\.)\\\\bfalse\\\\b\",\"name\":\"constant.language.boolean.false.cs\"}]},\"bracketed-argument-list\":{\"begin\":\"\\\\[\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.squarebracket.open.cs\"}},\"end\":\"]\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.squarebracket.close.cs\"}},\"patterns\":[{\"include\":\"#named-argument\"},{\"include\":\"#argument\"},{\"include\":\"#punctuation-comma\"}]},\"bracketed-parameter-list\":{\"begin\":\"(?=(\\\\[))\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.squarebracket.open.cs\"}},\"end\":\"(?=(]))\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.squarebracket.close.cs\"}},\"patterns\":[{\"begin\":\"(?<=\\\\[)\",\"end\":\"(?=])\",\"patterns\":[{\"include\":\"#comment\"},{\"include\":\"#attribute-section\"},{\"include\":\"#parameter\"},{\"include\":\"#punctuation-comma\"},{\"include\":\"#variable-initializer\"}]}]},\"break-or-continue-statement\":{\"match\":\"(?<!\\\\.)\\\\b(break|continue)\\\\b\",\"name\":\"keyword.control.flow.$1.cs\"},\"case-guard\":{\"patterns\":[{\"include\":\"#parenthesized-expression\"},{\"include\":\"#expression\"}]},\"cast-expression\":{\"captures\":{\"1\":{\"name\":\"punctuation.parenthesis.open.cs\"},\"2\":{\"patterns\":[{\"include\":\"#type\"}]},\"7\":{\"name\":\"punctuation.parenthesis.close.cs\"}},\"match\":\"(\\\\()\\\\s*(?<type_name>(?:(?:(?<identifier>@?[_[:alpha:]][_[:alnum:]]*)\\\\s*::\\\\s*)?(?<name_and_type_args>\\\\g<identifier>\\\\s*(?<type_args>\\\\s*<(?:[^<>]|\\\\g<type_args>)+>\\\\s*)?)(?:\\\\s*\\\\.\\\\s*\\\\g<name_and_type_args>)*|(?<tuple>\\\\s*\\\\((?:[^()]|\\\\g<tuple>)+\\\\)))(?:\\\\s*\\\\?\\\\s*)?(?:\\\\s*\\\\[(?:\\\\s*,\\\\s*)*]\\\\s*\\\\??\\\\s*)*)\\\\s*(\\\\))(?=\\\\s*-*!*@?[(_[:alnum:]])\"},\"casted-constant-pattern\":{\"begin\":\"(\\\\()([.:@_\\\\s[:alnum:]]+)(\\\\))(?=[-!+~\\\\s]*@?[\\\"'(_[:alnum:]]+)\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.parenthesis.open.cs\"},\"2\":{\"patterns\":[{\"include\":\"#type-builtin\"},{\"include\":\"#type-name\"}]},\"3\":{\"name\":\"punctuation.parenthesis.close.cs\"}},\"end\":\"(?=[]\\\\&),:;=?^|}]|!=|\\\\b(and|or|when)\\\\b)\",\"patterns\":[{\"include\":\"#casted-constant-pattern\"},{\"begin\":\"\\\\(\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.open.cs\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.close.cs\"}},\"patterns\":[{\"include\":\"#constant-pattern\"}]},{\"include\":\"#constant-pattern\"},{\"captures\":{\"1\":{\"name\":\"entity.name.type.alias.cs\"},\"2\":{\"name\":\"punctuation.separator.coloncolon.cs\"}},\"match\":\"(@?[_[:alpha:]][_[:alnum:]]*)\\\\s*(::)\"},{\"captures\":{\"1\":{\"name\":\"entity.name.type.cs\"},\"2\":{\"name\":\"punctuation.accessor.cs\"}},\"match\":\"(@?[_[:alpha:]][_[:alnum:]]*)\\\\s*(\\\\.)\"},{\"match\":\"@?[_[:alpha:]][_[:alnum:]]*\",\"name\":\"variable.other.constant.cs\"}]},\"catch-clause\":{\"begin\":\"(?<!\\\\.)\\\\b(catch)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.exception.catch.cs\"}},\"end\":\"(?<=})\",\"patterns\":[{\"begin\":\"\\\\(\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.open.cs\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.close.cs\"}},\"patterns\":[{\"captures\":{\"1\":{\"patterns\":[{\"include\":\"#type\"}]},\"6\":{\"name\":\"entity.name.variable.local.cs\"}},\"match\":\"(?<type_name>(?:(?:(?<identifier>@?[_[:alpha:]][_[:alnum:]]*)\\\\s*::\\\\s*)?(?<name_and_type_args>\\\\g<identifier>\\\\s*(?<type_args>\\\\s*<(?:[^<>]|\\\\g<type_args>)+>\\\\s*)?)(?:\\\\s*\\\\.\\\\s*\\\\g<name_and_type_args>)*|(?<tuple>\\\\s*\\\\((?:[^()]|\\\\g<tuple>)+\\\\)))(?:\\\\s*\\\\?\\\\s*)?(?:\\\\s*\\\\[(?:\\\\s*,\\\\s*)*]\\\\s*\\\\??\\\\s*)*)\\\\s*(?:(\\\\g<identifier>)\\\\b)?\"}]},{\"include\":\"#when-clause\"},{\"include\":\"#comment\"},{\"include\":\"#block\"}]},\"char-character-escape\":{\"match\":\"\\\\\\\\(x\\\\h{1,4}|u\\\\h{4}|.)\",\"name\":\"constant.character.escape.cs\"},\"char-literal\":{\"begin\":\"'\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.char.begin.cs\"}},\"end\":\"(')|([^\\\\n\\\\\\\\])$\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.definition.char.end.cs\"},\"2\":{\"name\":\"invalid.illegal.newline.cs\"}},\"name\":\"string.quoted.single.cs\",\"patterns\":[{\"include\":\"#char-character-escape\"}]},\"class-declaration\":{\"begin\":\"(?=(\\\\brecord\\\\b\\\\s+)?\\\\bclass\\\\b)\",\"end\":\"(?<=})|(?=;)\",\"patterns\":[{\"begin\":\"(\\\\b(record)\\\\b\\\\s+)?\\\\b(class)\\\\b\\\\s+(@?[_[:alpha:]][_[:alnum:]]*)\\\\s*\",\"beginCaptures\":{\"2\":{\"name\":\"storage.type.record.cs\"},\"3\":{\"name\":\"storage.type.class.cs\"},\"4\":{\"name\":\"entity.name.type.class.cs\"}},\"end\":\"(?=\\\\{)|(?=;)\",\"patterns\":[{\"include\":\"#comment\"},{\"include\":\"#type-parameter-list\"},{\"include\":\"#parenthesized-parameter-list\"},{\"include\":\"#base-types\"},{\"include\":\"#generic-constraints\"}]},{\"begin\":\"\\\\{\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.curlybrace.open.cs\"}},\"end\":\"}\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.curlybrace.close.cs\"}},\"patterns\":[{\"include\":\"#class-or-struct-members\"}]},{\"include\":\"#preprocessor\"},{\"include\":\"#comment\"}]},\"class-or-struct-members\":{\"patterns\":[{\"include\":\"#preprocessor\"},{\"include\":\"#comment\"},{\"include\":\"#storage-modifier\"},{\"include\":\"#type-declarations\"},{\"include\":\"#constructor-declaration\"},{\"include\":\"#property-declaration\"},{\"include\":\"#fixed-size-buffer-declaration\"},{\"include\":\"#field-declaration\"},{\"include\":\"#event-declaration\"},{\"include\":\"#indexer-declaration\"},{\"include\":\"#variable-initializer\"},{\"include\":\"#destructor-declaration\"},{\"include\":\"#operator-declaration\"},{\"include\":\"#conversion-operator-declaration\"},{\"include\":\"#method-declaration\"},{\"include\":\"#attribute-section\"},{\"include\":\"#punctuation-semicolon\"}]},\"combinator-pattern\":{\"match\":\"\\\\b(and|or|not)\\\\b\",\"name\":\"keyword.operator.expression.pattern.combinator.$1.cs\"},\"comment\":{\"patterns\":[{\"begin\":\"(^\\\\s+)?(///)(?!/)\",\"captures\":{\"1\":{\"name\":\"punctuation.whitespace.comment.leading.cs\"},\"2\":{\"name\":\"punctuation.definition.comment.cs\"}},\"name\":\"comment.block.documentation.cs\",\"patterns\":[{\"include\":\"#xml-doc-comment\"}],\"while\":\"^(\\\\s*)(///)(?!/)\"},{\"begin\":\"(^\\\\s+)?(/\\\\*\\\\*)(?!/)\",\"captures\":{\"1\":{\"name\":\"punctuation.whitespace.comment.leading.cs\"},\"2\":{\"name\":\"punctuation.definition.comment.cs\"}},\"end\":\"(^\\\\s+)?(\\\\*/)\",\"name\":\"comment.block.documentation.cs\",\"patterns\":[{\"begin\":\"\\\\G(?=(?~\\\\*/)$)\",\"patterns\":[{\"include\":\"#xml-doc-comment\"}],\"while\":\"^(\\\\s*+)(\\\\*(?!/))?(?=(?~\\\\*/)$)\",\"whileCaptures\":{\"1\":{\"name\":\"punctuation.whitespace.comment.leading.cs\"},\"2\":{\"name\":\"punctuation.definition.comment.cs\"}}},{\"include\":\"#xml-doc-comment\"}]},{\"begin\":\"(^\\\\s+)?(//).*$\",\"captures\":{\"1\":{\"name\":\"punctuation.whitespace.comment.leading.cs\"},\"2\":{\"name\":\"punctuation.definition.comment.cs\"}},\"name\":\"comment.line.double-slash.cs\",\"while\":\"^(\\\\s*)(//).*$\"},{\"begin\":\"/\\\\*\",\"captures\":{\"0\":{\"name\":\"punctuation.definition.comment.cs\"}},\"end\":\"\\\\*/\",\"name\":\"comment.block.cs\"}]},\"conditional-operator\":{\"patterns\":[{\"match\":\"\\\\?(?!\\\\?|\\\\s*[.\\\\[])\",\"name\":\"keyword.operator.conditional.question-mark.cs\"},{\"match\":\":\",\"name\":\"keyword.operator.conditional.colon.cs\"}]},\"constant-pattern\":{\"patterns\":[{\"include\":\"#boolean-literal\"},{\"include\":\"#null-literal\"},{\"include\":\"#numeric-literal\"},{\"include\":\"#char-literal\"},{\"include\":\"#string-literal\"},{\"include\":\"#raw-string-literal\"},{\"include\":\"#verbatim-string-literal\"},{\"include\":\"#type-operator-expression\"},{\"include\":\"#expression-operator-expression\"},{\"include\":\"#expression-operators\"},{\"include\":\"#casted-constant-pattern\"}]},\"constructor-declaration\":{\"begin\":\"(@?[_[:alpha:]][_[:alnum:]]*)\\\\s*(?=\\\\(|$)\",\"beginCaptures\":{\"1\":{\"name\":\"entity.name.function.cs\"}},\"end\":\"(?<=})|(?=;)\",\"patterns\":[{\"begin\":\"(:)\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.separator.colon.cs\"}},\"end\":\"(?=\\\\{|=>)\",\"patterns\":[{\"include\":\"#constructor-initializer\"}]},{\"include\":\"#parenthesized-parameter-list\"},{\"include\":\"#preprocessor\"},{\"include\":\"#comment\"},{\"include\":\"#expression-body\"},{\"include\":\"#block\"}]},\"constructor-initializer\":{\"begin\":\"\\\\b(base|this)\\\\b\\\\s*(?=\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"variable.language.$1.cs\"}},\"end\":\"(?<=\\\\))\",\"patterns\":[{\"include\":\"#argument-list\"}]},\"context-control-paren-statement\":{\"patterns\":[{\"include\":\"#fixed-statement\"},{\"include\":\"#lock-statement\"},{\"include\":\"#using-statement\"}]},\"context-control-statement\":{\"match\":\"\\\\b(checked|unchecked|unsafe)\\\\b(?!\\\\s*[(@_[:alpha:]])\",\"name\":\"keyword.control.context.$1.cs\"},\"conversion-operator-declaration\":{\"begin\":\"\\\\b(?<explicit_or_implicit_keyword>(?:ex|im)plicit)\\\\s*\\\\b(?<operator_keyword>operator)\\\\s*(?<type_name>(?:ref\\\\s+(?:readonly\\\\s+)?)?(?:(?:(?<identifier>@?[_[:alpha:]][_[:alnum:]]*)\\\\s*::\\\\s*)?(?<name_and_type_args>\\\\g<identifier>\\\\s*(?<type_args>\\\\s*<(?:[^<>]|\\\\g<type_args>)+>\\\\s*)?)(?:\\\\s*\\\\.\\\\s*\\\\g<name_and_type_args>)*|(?<tuple>\\\\s*\\\\((?:[^()]|\\\\g<tuple>)+\\\\)))(?:\\\\s*\\\\?\\\\s*)?(?:\\\\s*\\\\[(?:\\\\s*,\\\\s*)*]\\\\s*\\\\??\\\\s*)*)\\\\s*(?=\\\\()\",\"beginCaptures\":{\"1\":{\"patterns\":[{\"captures\":{\"1\":{\"name\":\"storage.modifier.explicit.cs\"}},\"match\":\"\\\\b(explicit)\\\\b\"},{\"captures\":{\"1\":{\"name\":\"storage.modifier.implicit.cs\"}},\"match\":\"\\\\b(implicit)\\\\b\"}]},\"2\":{\"name\":\"storage.type.operator.cs\"},\"3\":{\"patterns\":[{\"include\":\"#type\"}]}},\"end\":\"(?<=})|(?=;)\",\"patterns\":[{\"include\":\"#comment\"},{\"include\":\"#parenthesized-parameter-list\"},{\"include\":\"#expression-body\"},{\"include\":\"#block\"}]},\"declaration-expression-local\":{\"captures\":{\"1\":{\"name\":\"storage.type.var.cs\"},\"2\":{\"patterns\":[{\"include\":\"#type\"}]},\"7\":{\"name\":\"entity.name.variable.local.cs\"}},\"match\":\"(?:\\\\b(var)\\\\b|(?<type_name>(?:(?:(?<identifier>@?[_[:alpha:]][_[:alnum:]]*)\\\\s*::\\\\s*)?(?<name_and_type_args>\\\\g<identifier>\\\\s*(?<type_args>\\\\s*<(?:[^<>]|\\\\g<type_args>)+>\\\\s*)?)(?:\\\\s*\\\\.\\\\s*\\\\g<name_and_type_args>)*|(?<tuple>\\\\s*\\\\((?:[^()]|\\\\g<tuple>)+\\\\)))(?:\\\\s*\\\\?\\\\s*)?(?:\\\\s*\\\\[(?:\\\\s*,\\\\s*)*]\\\\s*\\\\??\\\\s*)*))\\\\s+(\\\\g<identifier>)\\\\b\\\\s*(?=[]),])\"},\"declaration-expression-tuple\":{\"captures\":{\"1\":{\"name\":\"storage.type.var.cs\"},\"2\":{\"patterns\":[{\"include\":\"#type\"}]},\"7\":{\"name\":\"entity.name.variable.tuple-element.cs\"}},\"match\":\"(?:\\\\b(var)\\\\b|(?<type_name>(?:(?:(?<identifier>@?[_[:alpha:]][_[:alnum:]]*)\\\\s*::\\\\s*)?(?<name_and_type_args>\\\\g<identifier>\\\\s*(?<type_args>\\\\s*<(?:[^<>]|\\\\g<type_args>)+>\\\\s*)?)(?:\\\\s*\\\\.\\\\s*\\\\g<name_and_type_args>)*|(?<tuple>\\\\s*\\\\((?:[^()]|\\\\g<tuple>)+\\\\)))(?:\\\\s*\\\\?\\\\s*)?(?:\\\\s*\\\\[(?:\\\\s*,\\\\s*)*]\\\\s*\\\\??\\\\s*)*))\\\\s+(\\\\g<identifier>)\\\\b\\\\s*(?=[),])\"},\"declarations\":{\"patterns\":[{\"include\":\"#namespace-declaration\"},{\"include\":\"#type-declarations\"},{\"include\":\"#punctuation-semicolon\"}]},\"default-argument\":{\"begin\":\"=\",\"beginCaptures\":{\"0\":{\"name\":\"keyword.operator.assignment.cs\"}},\"end\":\"(?=[),])\",\"patterns\":[{\"include\":\"#expression\"}]},\"default-literal-expression\":{\"captures\":{\"1\":{\"name\":\"keyword.operator.expression.default.cs\"}},\"match\":\"\\\\b(default)\\\\b\"},\"delegate-declaration\":{\"begin\":\"\\\\b(delegate)\\\\b\\\\s+(?<type_name>(?:ref\\\\s+(?:readonly\\\\s+)?)?(?:(?:(?<identifier>@?[_[:alpha:]][_[:alnum:]]*)\\\\s*::\\\\s*)?(?<name_and_type_args>\\\\g<identifier>\\\\s*(?<type_args>\\\\s*<(?:[^<>]|\\\\g<type_args>)+>\\\\s*)?)(?:\\\\s*\\\\.\\\\s*\\\\g<name_and_type_args>)*|(?<tuple>\\\\s*\\\\((?:[^()]|\\\\g<tuple>)+\\\\)))(?:\\\\s*\\\\?\\\\s*)?(?:\\\\s*\\\\[(?:\\\\s*,\\\\s*)*]\\\\s*\\\\??\\\\s*)*)\\\\s+(\\\\g<identifier>)\\\\s*(<([^<>]+)>)?\\\\s*(?=\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"storage.type.delegate.cs\"},\"2\":{\"patterns\":[{\"include\":\"#type\"}]},\"7\":{\"name\":\"entity.name.type.delegate.cs\"},\"8\":{\"patterns\":[{\"include\":\"#type-parameter-list\"}]}},\"end\":\"(?=;)\",\"patterns\":[{\"include\":\"#comment\"},{\"include\":\"#parenthesized-parameter-list\"},{\"include\":\"#generic-constraints\"}]},\"designation-pattern\":{\"patterns\":[{\"include\":\"#intrusive\"},{\"begin\":\"\\\\(\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.open.cs\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.close.cs\"}},\"patterns\":[{\"include\":\"#punctuation-comma\"},{\"include\":\"#designation-pattern\"}]},{\"include\":\"#simple-designation-pattern\"}]},\"destructor-declaration\":{\"begin\":\"(~)(@?[_[:alpha:]][_[:alnum:]]*)\\\\s*(?=\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.tilde.cs\"},\"2\":{\"name\":\"entity.name.function.cs\"}},\"end\":\"(?<=})|(?=;)\",\"patterns\":[{\"include\":\"#comment\"},{\"include\":\"#parenthesized-parameter-list\"},{\"include\":\"#expression-body\"},{\"include\":\"#block\"}]},\"directives\":{\"patterns\":[{\"include\":\"#extern-alias-directive\"},{\"include\":\"#using-directive\"},{\"include\":\"#attribute-section\"},{\"include\":\"#punctuation-semicolon\"}]},\"discard-pattern\":{\"match\":\"_(?![_[:alnum:]])\",\"name\":\"variable.language.discard.cs\"},\"do-statement\":{\"begin\":\"(?<!\\\\.)\\\\b(do)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.loop.do.cs\"}},\"end\":\"(?=[;}])\",\"patterns\":[{\"include\":\"#statement\"}]},\"double-raw-interpolation\":{\"begin\":\"(?<=[^{][^{]|^)(\\\\{*)(\\\\{\\\\{)(?=[^{])\",\"beginCaptures\":{\"1\":{\"name\":\"string.quoted.double.cs\"},\"2\":{\"name\":\"punctuation.definition.interpolation.begin.cs\"}},\"end\":\"}}\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.interpolation.end.cs\"}},\"name\":\"meta.embedded.interpolation.cs\",\"patterns\":[{\"include\":\"#expression\"}]},\"element-access-expression\":{\"begin\":\"(?:(?:(\\\\?)\\\\s*)?(\\\\.)\\\\s*|(->)\\\\s*)?(?:(@?[_[:alpha:]][_[:alnum:]]*)\\\\s*)?(?:(\\\\?)\\\\s*)?(?=\\\\[)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.operator.null-conditional.cs\"},\"2\":{\"name\":\"punctuation.accessor.cs\"},\"3\":{\"name\":\"punctuation.accessor.pointer.cs\"},\"4\":{\"name\":\"variable.other.object.property.cs\"},\"5\":{\"name\":\"keyword.operator.null-conditional.cs\"}},\"end\":\"(?<=])(?!\\\\s*\\\\[)\",\"patterns\":[{\"include\":\"#bracketed-argument-list\"}]},\"else-part\":{\"begin\":\"(?<!\\\\.)\\\\b(else)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.conditional.else.cs\"}},\"end\":\"(?<=})|(?=;)\",\"patterns\":[{\"include\":\"#statement\"}]},\"enum-declaration\":{\"begin\":\"(?=\\\\benum\\\\b)\",\"end\":\"(?<=})|(?=;)\",\"patterns\":[{\"begin\":\"(?=enum)\",\"end\":\"(?=\\\\{)|(?=;)\",\"patterns\":[{\"include\":\"#comment\"},{\"captures\":{\"1\":{\"name\":\"storage.type.enum.cs\"},\"2\":{\"name\":\"entity.name.type.enum.cs\"}},\"match\":\"(enum)\\\\s+(@?[_[:alpha:]][_[:alnum:]]*)\"},{\"begin\":\":\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.separator.colon.cs\"}},\"end\":\"(?=\\\\{)\",\"patterns\":[{\"include\":\"#type\"}]}]},{\"begin\":\"\\\\{\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.curlybrace.open.cs\"}},\"end\":\"}\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.curlybrace.close.cs\"}},\"patterns\":[{\"include\":\"#preprocessor\"},{\"include\":\"#comment\"},{\"include\":\"#attribute-section\"},{\"include\":\"#punctuation-comma\"},{\"begin\":\"@?[_[:alpha:]][_[:alnum:]]*\",\"beginCaptures\":{\"0\":{\"name\":\"entity.name.variable.enum-member.cs\"}},\"end\":\"(?=([,}]))\",\"patterns\":[{\"include\":\"#comment\"},{\"include\":\"#variable-initializer\"}]}]},{\"include\":\"#preprocessor\"},{\"include\":\"#comment\"}]},\"event-accessors\":{\"begin\":\"\\\\{\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.curlybrace.open.cs\"}},\"end\":\"}\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.curlybrace.close.cs\"}},\"patterns\":[{\"include\":\"#comment\"},{\"include\":\"#attribute-section\"},{\"begin\":\"\\\\b(add|remove)\\\\b\\\\s*(?=[;{]|=>|//|/\\\\*|$)\",\"beginCaptures\":{\"1\":{\"name\":\"storage.type.accessor.$1.cs\"}},\"end\":\"(?<=[;}])|(?=})\",\"patterns\":[{\"include\":\"#accessor-setter\"}]}]},\"event-declaration\":{\"begin\":\"\\\\b(event)\\\\b\\\\s*(?<return_type>(?<type_name>(?:(?:(?<identifier>@?[_[:alpha:]][_[:alnum:]]*)\\\\s*::\\\\s*)?(?<name_and_type_args>\\\\g<identifier>\\\\s*(?<type_args>\\\\s*<(?:[^<>]|\\\\g<type_args>)+>\\\\s*)?)(?:\\\\s*\\\\.\\\\s*\\\\g<name_and_type_args>)*|(?<tuple>\\\\s*\\\\((?:[^()]|\\\\g<tuple>)+\\\\)))(?:\\\\s*\\\\?\\\\s*)?(?:\\\\s*\\\\[(?:\\\\s*,\\\\s*)*]\\\\s*\\\\??\\\\s*)*)\\\\s+)(?<interface_name>\\\\g<type_name>\\\\s*\\\\.\\\\s*)?(\\\\g<identifier>)\\\\s*(?=[,;={]|//|/\\\\*|$)\",\"beginCaptures\":{\"1\":{\"name\":\"storage.type.event.cs\"},\"2\":{\"patterns\":[{\"include\":\"#type\"}]},\"8\":{\"patterns\":[{\"include\":\"#type\"},{\"include\":\"#punctuation-accessor\"}]},\"9\":{\"name\":\"entity.name.variable.event.cs\"}},\"end\":\"(?<=})|(?=;)\",\"patterns\":[{\"include\":\"#comment\"},{\"include\":\"#event-accessors\"},{\"match\":\"@?[_[:alpha:]][_[:alnum:]]*\",\"name\":\"entity.name.variable.event.cs\"},{\"include\":\"#punctuation-comma\"},{\"begin\":\"=\",\"beginCaptures\":{\"0\":{\"name\":\"keyword.operator.assignment.cs\"}},\"end\":\"(?<=,)|(?=;)\",\"patterns\":[{\"include\":\"#expression\"},{\"include\":\"#punctuation-comma\"}]}]},\"explicit-anonymous-function-parameter\":{\"captures\":{\"1\":{\"name\":\"storage.modifier.$1.cs\"},\"2\":{\"patterns\":[{\"include\":\"#type\"}]},\"7\":{\"name\":\"entity.name.variable.parameter.cs\"}},\"match\":\"(?:\\\\b(ref|params|out|in)\\\\b\\\\s*)?(?<type_name>(?:(?:(?<identifier>@?[_[:alpha:]][_[:alnum:]]*)\\\\s*::\\\\s*)?(?<name_and_type_args>\\\\g<identifier>\\\\s*(?<type_args><(?:[^<>]|\\\\g<type_args>)*>\\\\s*)?)(?:\\\\s*\\\\.\\\\s*\\\\g<name_and_type_args>)*|(?<tuple>\\\\s*\\\\((?:[^()]|\\\\g<tuple>)*\\\\)))(?:\\\\s*\\\\?\\\\s*)?(?:\\\\s*\\\\[(?:\\\\s*,\\\\s*)*]\\\\s*\\\\??\\\\s*)*)\\\\s*\\\\b(\\\\g<identifier>)\\\\b\"},\"expression\":{\"patterns\":[{\"include\":\"#preprocessor\"},{\"include\":\"#comment\"},{\"include\":\"#expression-operator-expression\"},{\"include\":\"#type-operator-expression\"},{\"include\":\"#default-literal-expression\"},{\"include\":\"#throw-expression\"},{\"include\":\"#raw-interpolated-string\"},{\"include\":\"#interpolated-string\"},{\"include\":\"#verbatim-interpolated-string\"},{\"include\":\"#type-builtin\"},{\"include\":\"#language-variable\"},{\"include\":\"#switch-statement-or-expression\"},{\"include\":\"#with-expression\"},{\"include\":\"#conditional-operator\"},{\"include\":\"#assignment-expression\"},{\"include\":\"#expression-operators\"},{\"include\":\"#await-expression\"},{\"include\":\"#query-expression\"},{\"include\":\"#as-expression\"},{\"include\":\"#is-expression\"},{\"include\":\"#boolean-literal\"},{\"include\":\"#null-literal\"},{\"include\":\"#anonymous-method-expression\"},{\"include\":\"#object-creation-expression\"},{\"include\":\"#array-creation-expression\"},{\"include\":\"#anonymous-object-creation-expression\"},{\"include\":\"#invocation-expression\"},{\"include\":\"#member-access-expression\"},{\"include\":\"#element-access-expression\"},{\"include\":\"#cast-expression\"},{\"include\":\"#literal\"},{\"include\":\"#parenthesized-expression\"},{\"include\":\"#tuple-deconstruction-assignment\"},{\"include\":\"#initializer-expression\"},{\"include\":\"#identifier\"}]},\"expression-body\":{\"begin\":\"=>\",\"beginCaptures\":{\"0\":{\"name\":\"keyword.operator.arrow.cs\"}},\"end\":\"(?=[),;}])\",\"patterns\":[{\"include\":\"#ref-modifier\"},{\"include\":\"#expression\"}]},\"expression-operator-expression\":{\"begin\":\"\\\\b(checked|unchecked|nameof)\\\\s*(\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.operator.expression.$1.cs\"},\"2\":{\"name\":\"punctuation.parenthesis.open.cs\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.close.cs\"}},\"patterns\":[{\"include\":\"#expression\"}]},\"expression-operators\":{\"patterns\":[{\"match\":\"<<|>>>?\",\"name\":\"keyword.operator.bitwise.shift.cs\"},{\"match\":\"[!=]=\",\"name\":\"keyword.operator.comparison.cs\"},{\"match\":\"<=|>=|[<>]\",\"name\":\"keyword.operator.relational.cs\"},{\"match\":\"!|&&|\\\\|\\\\|\",\"name\":\"keyword.operator.logical.cs\"},{\"match\":\"[\\\\&^|~]\",\"name\":\"keyword.operator.bitwise.cs\"},{\"match\":\"--\",\"name\":\"keyword.operator.decrement.cs\"},{\"match\":\"\\\\+\\\\+\",\"name\":\"keyword.operator.increment.cs\"},{\"match\":\"\\\\+|-(?!>)|[%*/]\",\"name\":\"keyword.operator.arithmetic.cs\"},{\"match\":\"\\\\?\\\\?\",\"name\":\"keyword.operator.null-coalescing.cs\"},{\"match\":\"\\\\.\\\\.\",\"name\":\"keyword.operator.range.cs\"}]},\"extern-alias-directive\":{\"begin\":\"\\\\b(extern)\\\\s+(alias)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.other.directive.extern.cs\"},\"2\":{\"name\":\"keyword.other.directive.alias.cs\"}},\"end\":\"(?=;)\",\"patterns\":[{\"match\":\"@?[_[:alpha:]][_[:alnum:]]*\",\"name\":\"variable.other.alias.cs\"}]},\"field-declaration\":{\"begin\":\"(?<type_name>(?:(?:(?<identifier>@?[_[:alpha:]][_[:alnum:]]*)\\\\s*::\\\\s*)?(?<name_and_type_args>\\\\g<identifier>\\\\s*(?<type_args>\\\\s*<(?:[^<>]|\\\\g<type_args>)+>\\\\s*)?)(?:\\\\s*\\\\.\\\\s*\\\\g<name_and_type_args>)*|(?<tuple>\\\\s*\\\\((?:[^()]|\\\\g<tuple>)+\\\\)))(?:\\\\s*\\\\?\\\\s*)?(?:\\\\s*\\\\[(?:\\\\s*,\\\\s*)*]\\\\s*\\\\??\\\\s*)*)\\\\s+(\\\\g<identifier>)\\\\s*(?!=[=>])(?=[,;=]|$)\",\"beginCaptures\":{\"1\":{\"patterns\":[{\"include\":\"#type\"}]},\"6\":{\"name\":\"entity.name.variable.field.cs\"}},\"end\":\"(?=;)\",\"patterns\":[{\"match\":\"@?[_[:alpha:]][_[:alnum:]]*\",\"name\":\"entity.name.variable.field.cs\"},{\"include\":\"#punctuation-comma\"},{\"include\":\"#comment\"},{\"include\":\"#variable-initializer\"},{\"include\":\"#class-or-struct-members\"}]},\"finally-clause\":{\"begin\":\"(?<!\\\\.)\\\\b(finally)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.exception.finally.cs\"}},\"end\":\"(?<=})\",\"patterns\":[{\"include\":\"#comment\"},{\"include\":\"#block\"}]},\"fixed-size-buffer-declaration\":{\"begin\":\"\\\\b(fixed)\\\\b\\\\s+(?<type_name>(?:(?<identifier>@?[_[:alpha:]][_[:alnum:]]*)\\\\s*::\\\\s*)?(?<name_and_type_args>\\\\g<identifier>\\\\s*(?<type_args>\\\\s*<(?:[^<>]|\\\\g<type_args>)+>\\\\s*)?)(?:\\\\s*\\\\.\\\\s*\\\\g<name_and_type_args>)*)\\\\s+(\\\\g<identifier>)\\\\s*(?=\\\\[)\",\"beginCaptures\":{\"1\":{\"name\":\"storage.modifier.fixed.cs\"},\"2\":{\"patterns\":[{\"include\":\"#type\"}]},\"6\":{\"name\":\"entity.name.variable.field.cs\"}},\"end\":\"(?=;)\",\"patterns\":[{\"include\":\"#bracketed-argument-list\"},{\"include\":\"#comment\"}]},\"fixed-statement\":{\"begin\":\"\\\\b(fixed)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.context.fixed.cs\"}},\"end\":\"(?<=\\\\))|(?=[;}])\",\"patterns\":[{\"include\":\"#intrusive\"},{\"begin\":\"\\\\(\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.open.cs\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.close.cs\"}},\"patterns\":[{\"include\":\"#intrusive\"},{\"include\":\"#local-variable-declaration\"}]}]},\"for-statement\":{\"begin\":\"\\\\b(for)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.loop.for.cs\"}},\"end\":\"(?<=\\\\))|(?=[;}])\",\"patterns\":[{\"begin\":\"\\\\(\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.open.cs\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.close.cs\"}},\"patterns\":[{\"begin\":\"(?=[^);])\",\"end\":\"(?=[);])\",\"patterns\":[{\"include\":\"#intrusive\"},{\"include\":\"#local-variable-declaration\"},{\"include\":\"#local-tuple-var-deconstruction\"},{\"include\":\"#tuple-deconstruction-assignment\"},{\"include\":\"#expression\"}]},{\"begin\":\"(?=;)\",\"end\":\"(?=\\\\))\",\"patterns\":[{\"include\":\"#intrusive\"},{\"include\":\"#expression\"},{\"include\":\"#punctuation-comma\"},{\"include\":\"#punctuation-semicolon\"}]}]}]},\"foreach-statement\":{\"begin\":\"\\\\b(foreach)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.loop.foreach.cs\"}},\"end\":\"(?<=\\\\))|(?=[;}])\",\"patterns\":[{\"include\":\"#intrusive\"},{\"begin\":\"\\\\(\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.open.cs\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.close.cs\"}},\"patterns\":[{\"include\":\"#intrusive\"},{\"captures\":{\"1\":{\"name\":\"storage.modifier.ref.cs\"},\"2\":{\"name\":\"storage.type.var.cs\"},\"3\":{\"patterns\":[{\"include\":\"#type\"}]},\"8\":{\"name\":\"entity.name.variable.local.cs\"},\"9\":{\"name\":\"keyword.control.loop.in.cs\"}},\"match\":\"(?:(?:\\\\b(ref)\\\\s+)?\\\\b(var)\\\\b|(?<type_name>(?:ref\\\\s+)?(?:(?:(?<identifier>@?[_[:alpha:]][_[:alnum:]]*)\\\\s*::\\\\s*)?(?<name_and_type_args>\\\\g<identifier>\\\\s*(?<type_args>\\\\s*<(?:[^<>]|\\\\g<type_args>)+>\\\\s*)?)(?:\\\\s*\\\\.\\\\s*\\\\g<name_and_type_args>)*|(?<tuple>\\\\s*\\\\((?:[^()]|\\\\g<tuple>)+\\\\)))(?:\\\\s*\\\\?\\\\s*)?(?:\\\\s*\\\\[(?:\\\\s*,\\\\s*)*]\\\\s*\\\\??\\\\s*)*))\\\\s+(\\\\g<identifier>)\\\\s+\\\\b(in)\\\\b\"},{\"captures\":{\"1\":{\"name\":\"storage.type.var.cs\"},\"2\":{\"patterns\":[{\"include\":\"#tuple-declaration-deconstruction-element-list\"}]},\"3\":{\"name\":\"keyword.control.loop.in.cs\"}},\"match\":\"(?:\\\\b(var)\\\\b\\\\s*)?(?<tuple>\\\\((?:[^()]|\\\\g<tuple>)+\\\\))\\\\s+\\\\b(in)\\\\b\"},{\"include\":\"#expression\"}]}]},\"generic-constraints\":{\"begin\":\"(where)\\\\s+(@?[_[:alpha:]][_[:alnum:]]*)\\\\s*(:)\",\"beginCaptures\":{\"1\":{\"name\":\"storage.modifier.where.cs\"},\"2\":{\"name\":\"entity.name.type.type-parameter.cs\"},\"3\":{\"name\":\"punctuation.separator.colon.cs\"}},\"end\":\"(?=\\\\{|where|;|=>)\",\"patterns\":[{\"match\":\"\\\\bclass\\\\b\",\"name\":\"storage.type.class.cs\"},{\"match\":\"\\\\bstruct\\\\b\",\"name\":\"storage.type.struct.cs\"},{\"match\":\"\\\\bdefault\\\\b\",\"name\":\"keyword.other.constraint.default.cs\"},{\"match\":\"\\\\bnotnull\\\\b\",\"name\":\"keyword.other.constraint.notnull.cs\"},{\"match\":\"\\\\bunmanaged\\\\b\",\"name\":\"keyword.other.constraint.unmanaged.cs\"},{\"captures\":{\"1\":{\"name\":\"keyword.operator.expression.new.cs\"},\"2\":{\"name\":\"punctuation.parenthesis.open.cs\"},\"3\":{\"name\":\"punctuation.parenthesis.close.cs\"}},\"match\":\"(new)\\\\s*(\\\\()\\\\s*(\\\\))\"},{\"include\":\"#type\"},{\"include\":\"#punctuation-comma\"},{\"include\":\"#generic-constraints\"}]},\"goto-statement\":{\"begin\":\"(?<!\\\\.)\\\\b(goto)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.flow.goto.cs\"}},\"end\":\"(?=[;}])\",\"patterns\":[{\"begin\":\"\\\\b(case)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.conditional.case.cs\"}},\"end\":\"(?=[;}])\",\"patterns\":[{\"include\":\"#expression\"}]},{\"captures\":{\"1\":{\"name\":\"keyword.control.conditional.default.cs\"}},\"match\":\"\\\\b(default)\\\\b\"},{\"match\":\"@?[_[:alpha:]][_[:alnum:]]*\",\"name\":\"entity.name.label.cs\"}]},\"group-by\":{\"captures\":{\"1\":{\"name\":\"keyword.operator.expression.query.by.cs\"}},\"match\":\"\\\\b(by)\\\\b\\\\s*\"},\"group-clause\":{\"begin\":\"\\\\b(group)\\\\b\\\\s*\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.operator.expression.query.group.cs\"}},\"end\":\"(?=[);])\",\"patterns\":[{\"include\":\"#group-by\"},{\"include\":\"#group-into\"},{\"include\":\"#query-body\"},{\"include\":\"#expression\"}]},\"group-into\":{\"captures\":{\"1\":{\"name\":\"keyword.operator.expression.query.into.cs\"},\"2\":{\"name\":\"entity.name.variable.range-variable.cs\"}},\"match\":\"\\\\b(into)\\\\b\\\\s*(@?[_[:alpha:]][_[:alnum:]]*)\\\\b\\\\s*\"},\"identifier\":{\"match\":\"@?[_[:alpha:]][_[:alnum:]]*\",\"name\":\"variable.other.readwrite.cs\"},\"if-statement\":{\"begin\":\"(?<!\\\\.)\\\\b(if)\\\\b\\\\s*(?=\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.conditional.if.cs\"}},\"end\":\"(?<=})|(?=;)\",\"patterns\":[{\"begin\":\"\\\\(\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.open.cs\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.close.cs\"}},\"patterns\":[{\"include\":\"#expression\"}]},{\"include\":\"#statement\"}]},\"implicit-anonymous-function-parameter\":{\"match\":\"@?[_[:alpha:]][_[:alnum:]]*\\\\b\",\"name\":\"entity.name.variable.parameter.cs\"},\"indexer-declaration\":{\"begin\":\"(?<return_type>(?<type_name>(?:ref\\\\s+(?:readonly\\\\s+)?)?(?:(?:(?<identifier>@?[_[:alpha:]][_[:alnum:]]*)\\\\s*::\\\\s*)?(?<name_and_type_args>\\\\g<identifier>\\\\s*(?<type_args>\\\\s*<(?:[^<>]|\\\\g<type_args>)+>\\\\s*)?)(?:\\\\s*\\\\.\\\\s*\\\\g<name_and_type_args>)*|(?<tuple>\\\\s*\\\\((?:[^()]|\\\\g<tuple>)+\\\\)))(?:\\\\s*\\\\?\\\\s*)?(?:\\\\s*\\\\[(?:\\\\s*,\\\\s*)*]\\\\s*\\\\??\\\\s*)*)\\\\s+)(?<interface_name>\\\\g<type_name>\\\\s*\\\\.\\\\s*)?(?<indexer_name>this)\\\\s*(?=\\\\[)\",\"beginCaptures\":{\"1\":{\"patterns\":[{\"include\":\"#type\"}]},\"7\":{\"patterns\":[{\"include\":\"#type\"},{\"include\":\"#punctuation-accessor\"}]},\"8\":{\"name\":\"variable.language.this.cs\"}},\"end\":\"(?<=})|(?=;)\",\"patterns\":[{\"include\":\"#comment\"},{\"include\":\"#bracketed-parameter-list\"},{\"include\":\"#property-accessors\"},{\"include\":\"#accessor-getter-expression\"},{\"include\":\"#variable-initializer\"}]},\"initializer-expression\":{\"begin\":\"\\\\{\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.curlybrace.open.cs\"}},\"end\":\"}\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.curlybrace.close.cs\"}},\"patterns\":[{\"include\":\"#expression\"},{\"include\":\"#punctuation-comma\"}]},\"interface-declaration\":{\"begin\":\"(?=\\\\binterface\\\\b)\",\"end\":\"(?<=})|(?=;)\",\"patterns\":[{\"begin\":\"(interface)\\\\b\\\\s+(@?[_[:alpha:]][_[:alnum:]]*)\",\"beginCaptures\":{\"1\":{\"name\":\"storage.type.interface.cs\"},\"2\":{\"name\":\"entity.name.type.interface.cs\"}},\"end\":\"(?=\\\\{)|(?=;)\",\"patterns\":[{\"include\":\"#comment\"},{\"include\":\"#type-parameter-list\"},{\"include\":\"#base-types\"},{\"include\":\"#generic-constraints\"}]},{\"begin\":\"\\\\{\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.curlybrace.open.cs\"}},\"end\":\"}\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.curlybrace.close.cs\"}},\"patterns\":[{\"include\":\"#interface-members\"}]},{\"include\":\"#preprocessor\"},{\"include\":\"#comment\"}]},\"interface-members\":{\"patterns\":[{\"include\":\"#preprocessor\"},{\"include\":\"#comment\"},{\"include\":\"#storage-modifier\"},{\"include\":\"#property-declaration\"},{\"include\":\"#event-declaration\"},{\"include\":\"#indexer-declaration\"},{\"include\":\"#method-declaration\"},{\"include\":\"#operator-declaration\"},{\"include\":\"#attribute-section\"},{\"include\":\"#punctuation-semicolon\"}]},\"interpolated-string\":{\"begin\":\"\\\\$\\\"\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.cs\"}},\"end\":\"(\\\")|([^\\\\n\\\\\\\\])$\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.definition.string.end.cs\"},\"2\":{\"name\":\"invalid.illegal.newline.cs\"}},\"name\":\"string.quoted.double.cs\",\"patterns\":[{\"include\":\"#string-character-escape\"},{\"include\":\"#interpolation\"}]},\"interpolation\":{\"begin\":\"(?<=[^{]|^)((?:\\\\{\\\\{)*)(\\\\{)(?=[^{])\",\"beginCaptures\":{\"1\":{\"name\":\"string.quoted.double.cs\"},\"2\":{\"name\":\"punctuation.definition.interpolation.begin.cs\"}},\"end\":\"}\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.interpolation.end.cs\"}},\"name\":\"meta.embedded.interpolation.cs\",\"patterns\":[{\"include\":\"#expression\"}]},\"intrusive\":{\"patterns\":[{\"include\":\"#preprocessor\"},{\"include\":\"#comment\"}]},\"invocation-expression\":{\"begin\":\"(?:(?:(\\\\?)\\\\s*)?(\\\\.)\\\\s*|(->)\\\\s*)?(@?[_[:alpha:]][_[:alnum:]]*)\\\\s*(<(?<type_args>[^()<>]|\\\\((?:[^()<>]|<[^()<>]*>|\\\\([^()<>]*\\\\))*\\\\)|<\\\\g<type_args>*>)*>\\\\s*)?(?=\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.operator.null-conditional.cs\"},\"2\":{\"name\":\"punctuation.accessor.cs\"},\"3\":{\"name\":\"punctuation.accessor.pointer.cs\"},\"4\":{\"name\":\"entity.name.function.cs\"},\"5\":{\"patterns\":[{\"include\":\"#type-arguments\"}]}},\"end\":\"(?<=\\\\))\",\"patterns\":[{\"include\":\"#argument-list\"}]},\"is-expression\":{\"begin\":\"(?<!\\\\.)\\\\b(is)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.operator.expression.pattern.is.cs\"}},\"end\":\"(?=[]\\\\&),:;=?^|}]|!=)\",\"patterns\":[{\"include\":\"#pattern\"}]},\"join-clause\":{\"begin\":\"\\\\b(join)\\\\b\\\\s*(?<type_name>(?:(?:(?<identifier>@?[_[:alpha:]][_[:alnum:]]*)\\\\s*::\\\\s*)?(?<name_and_type_args>\\\\g<identifier>\\\\s*(?<type_args>\\\\s*<(?:[^<>]|\\\\g<type_args>)+>\\\\s*)?)(?:\\\\s*\\\\.\\\\s*\\\\g<name_and_type_args>)*|(?<tuple>\\\\s*\\\\((?:[^()]|\\\\g<tuple>)+\\\\)))(?:\\\\s*\\\\?\\\\s*)?(?:\\\\s*\\\\[(?:\\\\s*,\\\\s*)*]\\\\s*\\\\??\\\\s*)*)?\\\\s+(\\\\g<identifier>)\\\\b\\\\s*\\\\b(in)\\\\b\\\\s*\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.operator.expression.query.join.cs\"},\"2\":{\"patterns\":[{\"include\":\"#type\"}]},\"7\":{\"name\":\"entity.name.variable.range-variable.cs\"},\"8\":{\"name\":\"keyword.operator.expression.query.in.cs\"}},\"end\":\"(?=[);])\",\"patterns\":[{\"include\":\"#join-on\"},{\"include\":\"#join-equals\"},{\"include\":\"#join-into\"},{\"include\":\"#query-body\"},{\"include\":\"#expression\"}]},\"join-equals\":{\"captures\":{\"1\":{\"name\":\"keyword.operator.expression.query.equals.cs\"}},\"match\":\"\\\\b(equals)\\\\b\\\\s*\"},\"join-into\":{\"captures\":{\"1\":{\"name\":\"keyword.operator.expression.query.into.cs\"},\"2\":{\"name\":\"entity.name.variable.range-variable.cs\"}},\"match\":\"\\\\b(into)\\\\b\\\\s*(@?[_[:alpha:]][_[:alnum:]]*)\\\\b\\\\s*\"},\"join-on\":{\"captures\":{\"1\":{\"name\":\"keyword.operator.expression.query.on.cs\"}},\"match\":\"\\\\b(on)\\\\b\\\\s*\"},\"labeled-statement\":{\"captures\":{\"1\":{\"name\":\"entity.name.label.cs\"},\"2\":{\"name\":\"punctuation.separator.colon.cs\"}},\"match\":\"(@?[_[:alpha:]][_[:alnum:]]*)\\\\s*(:)\"},\"language-variable\":{\"patterns\":[{\"match\":\"\\\\b(base|this)\\\\b\",\"name\":\"variable.language.$1.cs\"},{\"match\":\"\\\\b(value)\\\\b\",\"name\":\"variable.other.$1.cs\"}]},\"let-clause\":{\"begin\":\"\\\\b(let)\\\\b\\\\s*(@?[_[:alpha:]][_[:alnum:]]*)\\\\b\\\\s*(=)\\\\s*\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.operator.expression.query.let.cs\"},\"2\":{\"name\":\"entity.name.variable.range-variable.cs\"},\"3\":{\"name\":\"keyword.operator.assignment.cs\"}},\"end\":\"(?=[);])\",\"patterns\":[{\"include\":\"#query-body\"},{\"include\":\"#expression\"}]},\"list-pattern\":{\"begin\":\"(?=\\\\[)\",\"end\":\"(?=[]\\\\&),:;=?^|}]|!=|\\\\b(and|or|when)\\\\b)\",\"patterns\":[{\"begin\":\"\\\\[\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.squarebracket.open.cs\"}},\"end\":\"]\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.squarebracket.close.cs\"}},\"patterns\":[{\"include\":\"#pattern\"},{\"include\":\"#punctuation-comma\"}]},{\"begin\":\"(?<=])\",\"end\":\"(?=[]\\\\&),:;=?^|}]|!=|\\\\b(and|or|when)\\\\b)\",\"patterns\":[{\"include\":\"#intrusive\"},{\"include\":\"#simple-designation-pattern\"}]}]},\"literal\":{\"patterns\":[{\"include\":\"#boolean-literal\"},{\"include\":\"#null-literal\"},{\"include\":\"#numeric-literal\"},{\"include\":\"#char-literal\"},{\"include\":\"#raw-string-literal\"},{\"include\":\"#string-literal\"},{\"include\":\"#verbatim-string-literal\"},{\"include\":\"#tuple-literal\"}]},\"local-constant-declaration\":{\"begin\":\"\\\\b(?<const_keyword>const)\\\\b\\\\s*(?<type_name>(?:(?:(?<identifier>@?[_[:alpha:]][_[:alnum:]]*)\\\\s*::\\\\s*)?(?<name_and_type_args>\\\\g<identifier>\\\\s*(?<type_args>\\\\s*<(?:[^<>]|\\\\g<type_args>)+>\\\\s*)?)(?:\\\\s*\\\\.\\\\s*\\\\g<name_and_type_args>)*|(?<tuple>\\\\s*\\\\((?:[^()]|\\\\g<tuple>)+\\\\)))(?:\\\\s*\\\\?\\\\s*)?(?:\\\\s*\\\\[(?:\\\\s*,\\\\s*)*]\\\\s*\\\\??\\\\s*)*)\\\\s+(\\\\g<identifier>)\\\\s*(?=[,;=])\",\"beginCaptures\":{\"1\":{\"name\":\"storage.modifier.const.cs\"},\"2\":{\"patterns\":[{\"include\":\"#type\"}]},\"7\":{\"name\":\"entity.name.variable.local.cs\"}},\"end\":\"(?=;)\",\"patterns\":[{\"match\":\"@?[_[:alpha:]][_[:alnum:]]*\",\"name\":\"entity.name.variable.local.cs\"},{\"include\":\"#punctuation-comma\"},{\"include\":\"#comment\"},{\"include\":\"#variable-initializer\"}]},\"local-declaration\":{\"patterns\":[{\"include\":\"#local-constant-declaration\"},{\"include\":\"#local-variable-declaration\"},{\"include\":\"#local-function-declaration\"},{\"include\":\"#local-tuple-var-deconstruction\"},{\"include\":\"#local-tuple-declaration-deconstruction\"}]},\"local-function-declaration\":{\"begin\":\"\\\\b((?:(?:async|unsafe|static|extern)\\\\s+)*)(?<type_name>(?:ref\\\\s+(?:readonly\\\\s+)?)?(?:(?:(?<identifier>@?[_[:alpha:]][_[:alnum:]]*)\\\\s*::\\\\s*)?(?<name_and_type_args>\\\\g<identifier>\\\\s*(?<type_args>\\\\s*<(?:[^<>]|\\\\g<type_args>)+>\\\\s*)?)(?:\\\\s*\\\\.\\\\s*\\\\g<name_and_type_args>)*|(?<tuple>\\\\s*\\\\((?:[^()]|\\\\g<tuple>)+\\\\)))(?:\\\\s*\\\\?)?(?:\\\\s*\\\\[\\\\s*(?:,\\\\s*)*](?:\\\\s*\\\\?)?)*)\\\\s+(\\\\g<identifier>)\\\\s*(<[^<>]+>)?\\\\s*(?=\\\\()\",\"beginCaptures\":{\"1\":{\"patterns\":[{\"include\":\"#storage-modifier\"}]},\"2\":{\"patterns\":[{\"include\":\"#type\"}]},\"7\":{\"name\":\"entity.name.function.cs\"},\"8\":{\"patterns\":[{\"include\":\"#type-parameter-list\"}]}},\"end\":\"(?<=})|(?=;)\",\"patterns\":[{\"include\":\"#comment\"},{\"include\":\"#parenthesized-parameter-list\"},{\"include\":\"#generic-constraints\"},{\"include\":\"#expression-body\"},{\"include\":\"#block\"}]},\"local-tuple-declaration-deconstruction\":{\"captures\":{\"1\":{\"patterns\":[{\"include\":\"#tuple-declaration-deconstruction-element-list\"}]}},\"match\":\"(?<tuple>\\\\((?:[^()]|\\\\g<tuple>)+\\\\))\\\\s*(?!=[=>])(?==)\"},\"local-tuple-var-deconstruction\":{\"begin\":\"\\\\b(var)\\\\b\\\\s*(?<tuple>\\\\((?:[^()]|\\\\g<tuple>)+\\\\))\\\\s*(?=[);=])\",\"beginCaptures\":{\"1\":{\"name\":\"storage.type.var.cs\"},\"2\":{\"patterns\":[{\"include\":\"#tuple-declaration-deconstruction-element-list\"}]}},\"end\":\"(?=[);])\",\"patterns\":[{\"include\":\"#comment\"},{\"include\":\"#variable-initializer\"}]},\"local-variable-declaration\":{\"begin\":\"(?:(?:\\\\b(ref)\\\\s+(?:\\\\b(readonly)\\\\s+)?)?\\\\b(var)\\\\b|(?<type_name>(?:ref\\\\s+(?:readonly\\\\s+)?)?(?:(?:(?<identifier>@?[_[:alpha:]][_[:alnum:]]*)\\\\s*::\\\\s*)?(?<name_and_type_args>\\\\g<identifier>\\\\s*(?<type_args>\\\\s*<(?:[^<>]|\\\\g<type_args>)+>\\\\s*)?)(?:\\\\s*\\\\.\\\\s*\\\\g<name_and_type_args>)*|(?<tuple>\\\\s*\\\\((?:[^()]|\\\\g<tuple>)+\\\\)))(?:\\\\s*\\\\*\\\\s*)*(?:\\\\s*\\\\?\\\\s*)?(?:\\\\s*\\\\[(?:\\\\s*,\\\\s*)*]\\\\s*\\\\??\\\\s*)*))\\\\s+(\\\\g<identifier>)\\\\s*(?!=>)(?=[),;=])\",\"beginCaptures\":{\"1\":{\"name\":\"storage.modifier.ref.cs\"},\"2\":{\"name\":\"storage.modifier.readonly.cs\"},\"3\":{\"name\":\"storage.type.var.cs\"},\"4\":{\"patterns\":[{\"include\":\"#type\"}]},\"9\":{\"name\":\"entity.name.variable.local.cs\"}},\"end\":\"(?=[);}])\",\"patterns\":[{\"match\":\"@?[_[:alpha:]][_[:alnum:]]*\",\"name\":\"entity.name.variable.local.cs\"},{\"include\":\"#punctuation-comma\"},{\"include\":\"#comment\"},{\"include\":\"#variable-initializer\"}]},\"lock-statement\":{\"begin\":\"\\\\b(lock)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.context.lock.cs\"}},\"end\":\"(?<=\\\\))|(?=[;}])\",\"patterns\":[{\"include\":\"#intrusive\"},{\"begin\":\"\\\\(\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.open.cs\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.close.cs\"}},\"patterns\":[{\"include\":\"#intrusive\"},{\"include\":\"#expression\"}]}]},\"member-access-expression\":{\"patterns\":[{\"captures\":{\"1\":{\"name\":\"keyword.operator.null-conditional.cs\"},\"2\":{\"name\":\"punctuation.accessor.cs\"},\"3\":{\"name\":\"punctuation.accessor.pointer.cs\"},\"4\":{\"name\":\"variable.other.object.property.cs\"}},\"match\":\"(?:(?:(\\\\?)\\\\s*)?(\\\\.)\\\\s*|(->)\\\\s*)(@?[_[:alpha:]][_[:alnum:]]*)\\\\s*(?![(_[:alnum:]]|(\\\\?)?\\\\[|<)\"},{\"captures\":{\"1\":{\"name\":\"punctuation.accessor.cs\"},\"2\":{\"name\":\"variable.other.object.cs\"},\"3\":{\"patterns\":[{\"include\":\"#type-arguments\"}]}},\"match\":\"(\\\\.)?\\\\s*(@?[_[:alpha:]][_[:alnum:]]*)(?<type_params>\\\\s*<([^<>]|\\\\g<type_params>)+>\\\\s*)(?=(\\\\s*\\\\?)?\\\\s*\\\\.\\\\s*@?[_[:alpha:]][_[:alnum:]]*)\"},{\"captures\":{\"1\":{\"name\":\"variable.other.object.cs\"}},\"match\":\"(@?[_[:alpha:]][_[:alnum:]]*)(?=\\\\s*(?:(?:\\\\?\\\\s*)?\\\\.|->)\\\\s*@?[_[:alpha:]][_[:alnum:]]*)\"}]},\"method-declaration\":{\"begin\":\"(?<return_type>(?<type_name>(?:ref\\\\s+(?:readonly\\\\s+)?)?(?:(?:(?<identifier>@?[_[:alpha:]][_[:alnum:]]*)\\\\s*::\\\\s*)?(?<name_and_type_args>\\\\g<identifier>\\\\s*(?<type_args>\\\\s*<(?:[^<>]|\\\\g<type_args>)+>\\\\s*)?)(?:\\\\s*\\\\.\\\\s*\\\\g<name_and_type_args>)*|(?<tuple>\\\\s*\\\\((?:[^()]|\\\\g<tuple>)+\\\\)))(?:\\\\s*\\\\?\\\\s*)?(?:\\\\s*\\\\[(?:\\\\s*,\\\\s*)*]\\\\s*\\\\??\\\\s*)*)\\\\s+)(?<interface_name>\\\\g<type_name>\\\\s*\\\\.\\\\s*)?(\\\\g<identifier>)\\\\s*(<([^<>]+)>)?\\\\s*(?=\\\\()\",\"beginCaptures\":{\"1\":{\"patterns\":[{\"include\":\"#type\"}]},\"7\":{\"patterns\":[{\"include\":\"#type\"},{\"include\":\"#punctuation-accessor\"}]},\"8\":{\"name\":\"entity.name.function.cs\"},\"9\":{\"patterns\":[{\"include\":\"#type-parameter-list\"}]}},\"end\":\"(?<=})|(?=;)\",\"patterns\":[{\"include\":\"#comment\"},{\"include\":\"#parenthesized-parameter-list\"},{\"include\":\"#generic-constraints\"},{\"include\":\"#expression-body\"},{\"include\":\"#block\"}]},\"named-argument\":{\"begin\":\"(@?[_[:alpha:]][_[:alnum:]]*)\\\\s*(:)\",\"beginCaptures\":{\"1\":{\"name\":\"entity.name.variable.parameter.cs\"},\"2\":{\"name\":\"punctuation.separator.colon.cs\"}},\"end\":\"(?=([]),]))\",\"patterns\":[{\"include\":\"#argument\"}]},\"namespace-declaration\":{\"begin\":\"\\\\b(namespace)\\\\s+\",\"beginCaptures\":{\"1\":{\"name\":\"storage.type.namespace.cs\"}},\"end\":\"(?<=})|(?=;)\",\"patterns\":[{\"include\":\"#comment\"},{\"match\":\"@?[_[:alpha:]][_[:alnum:]]*\",\"name\":\"entity.name.type.namespace.cs\"},{\"include\":\"#punctuation-accessor\"},{\"begin\":\"\\\\{\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.curlybrace.open.cs\"}},\"end\":\"}\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.curlybrace.close.cs\"}},\"patterns\":[{\"include\":\"#declarations\"},{\"include\":\"#using-directive\"},{\"include\":\"#punctuation-semicolon\"}]}]},\"null-literal\":{\"match\":\"(?<!\\\\.)\\\\bnull\\\\b\",\"name\":\"constant.language.null.cs\"},\"numeric-literal\":{\"captures\":{\"0\":{\"patterns\":[{\"begin\":\"(?=.)\",\"end\":\"$\",\"patterns\":[{\"captures\":{\"2\":{\"name\":\"constant.numeric.decimal.cs\",\"patterns\":[{\"match\":\"(?<=\\\\h)_(?=\\\\h)\",\"name\":\"constant.numeric.other.separator.thousands.cs\"}]},\"3\":{\"name\":\"constant.numeric.other.separator.thousands.cs\"},\"4\":{\"name\":\"constant.numeric.other.separator.decimals.cs\"},\"5\":{\"name\":\"constant.numeric.decimal.cs\",\"patterns\":[{\"match\":\"(?<=\\\\h)_(?=\\\\h)\",\"name\":\"constant.numeric.other.separator.thousands.cs\"}]},\"6\":{\"name\":\"constant.numeric.other.separator.thousands.cs\"},\"8\":{\"name\":\"constant.numeric.other.exponent.cs\"},\"9\":{\"name\":\"keyword.operator.arithmetic.cs\"},\"10\":{\"name\":\"keyword.operator.arithmetic.cs\"},\"11\":{\"name\":\"constant.numeric.decimal.cs\",\"patterns\":[{\"match\":\"(?<=\\\\h)_(?=\\\\h)\",\"name\":\"constant.numeric.other.separator.thousands.cs\"}]},\"12\":{\"name\":\"constant.numeric.other.suffix.cs\"}},\"match\":\"\\\\G((?=[.0-9])(?!0[BXbx]))([0-9](?:[0-9]|((?<=\\\\h)_(?=\\\\h)))*)?((?<=[0-9])|\\\\.(?=[0-9]))([0-9](?:[0-9]|((?<=\\\\h)_(?=\\\\h)))*)?((?<!_)([Ee])(\\\\+?)(-?)([0-9](?:[0-9]|(?<=\\\\h)_(?=\\\\h))*))?([DFMdfm](?!\\\\w))?$\"},{\"captures\":{\"1\":{\"name\":\"constant.numeric.other.preffix.binary.cs\"},\"2\":{\"name\":\"constant.numeric.binary.cs\",\"patterns\":[{\"match\":\"(?<=\\\\h)_(?=\\\\h)\",\"name\":\"constant.numeric.other.separator.thousands.cs\"}]},\"3\":{\"name\":\"constant.numeric.other.separator.thousands.cs\"},\"4\":{\"name\":\"constant.numeric.other.suffix.cs\"}},\"match\":\"\\\\G(0[Bb])([01_](?:[01_]|((?<=\\\\h)_(?=\\\\h)))*)((?:(?:(?:(?:(?:[Uu]|[Uu]l)|[Uu]L)|l[Uu]?)|L[Uu]?)|[DFMdfm])(?!\\\\w))?$\"},{\"captures\":{\"1\":{\"name\":\"constant.numeric.other.preffix.hex.cs\"},\"2\":{\"name\":\"constant.numeric.hex.cs\",\"patterns\":[{\"match\":\"(?<=\\\\h)_(?=\\\\h)\",\"name\":\"constant.numeric.other.separator.thousands.cs\"}]},\"3\":{\"name\":\"constant.numeric.other.separator.thousands.cs\"},\"4\":{\"name\":\"constant.numeric.other.suffix.cs\"}},\"match\":\"\\\\G(0[Xx])(\\\\h(?:\\\\h|((?<=\\\\h)_(?=\\\\h)))*)((?:(?:(?:(?:(?:[Uu]|[Uu]l)|[Uu]L)|l[Uu]?)|L[Uu]?)|[DFMdfm])(?!\\\\w))?$\"},{\"captures\":{\"2\":{\"name\":\"constant.numeric.decimal.cs\",\"patterns\":[{\"match\":\"(?<=\\\\h)_(?=\\\\h)\",\"name\":\"constant.numeric.other.separator.thousands.cs\"}]},\"3\":{\"name\":\"constant.numeric.other.separator.thousands.cs\"},\"5\":{\"name\":\"constant.numeric.other.exponent.cs\"},\"6\":{\"name\":\"keyword.operator.arithmetic.cs\"},\"7\":{\"name\":\"keyword.operator.arithmetic.cs\"},\"8\":{\"name\":\"constant.numeric.decimal.cs\",\"patterns\":[{\"match\":\"(?<=\\\\h)_(?=\\\\h)\",\"name\":\"constant.numeric.other.separator.thousands.cs\"}]},\"9\":{\"name\":\"constant.numeric.other.suffix.cs\"}},\"match\":\"\\\\G((?=[.0-9])(?!0[BXbx]))([0-9](?:[0-9]|((?<=\\\\h)_(?=\\\\h)))*)((?<!_)([Ee])(\\\\+?)(-?)([0-9](?:[0-9]|(?<=\\\\h)_(?=\\\\h))*))?((?:(?:(?:(?:(?:[Uu]|[Uu]l)|[Uu]L)|l[Uu]?)|L[Uu]?)|[DFMdfm])(?!\\\\w))?$\"},{\"match\":\"(?:[0-9A-Z_a-z]|(?<=[Ee])[-+]|\\\\.\\\\d)+\",\"name\":\"invalid.illegal.constant.numeric.cs\"}]}]}},\"match\":\"(?<!\\\\w)\\\\.?\\\\d(?:[0-9A-Z_a-z]|(?<=[Ee])[-+]|\\\\.\\\\d)*\"},\"object-creation-expression\":{\"patterns\":[{\"include\":\"#object-creation-expression-with-parameters\"},{\"include\":\"#object-creation-expression-with-no-parameters\"}]},\"object-creation-expression-with-no-parameters\":{\"captures\":{\"1\":{\"name\":\"keyword.operator.expression.new.cs\"},\"2\":{\"patterns\":[{\"include\":\"#type\"}]}},\"match\":\"(new)\\\\s+(?<type_name>(?:(?:(?<identifier>@?[_[:alpha:]][_[:alnum:]]*)\\\\s*::\\\\s*)?(?<name_and_type_args>\\\\g<identifier>\\\\s*(?<type_args>\\\\s*<(?:[^<>]|\\\\g<type_args>)+>\\\\s*)?)(?:\\\\s*\\\\.\\\\s*\\\\g<name_and_type_args>)*|(?<tuple>\\\\s*\\\\((?:[^()]|\\\\g<tuple>)+\\\\)))(?:\\\\s*\\\\?\\\\s*)?(?:\\\\s*\\\\[(?:\\\\s*,\\\\s*)*]\\\\s*\\\\??\\\\s*)*)\\\\s*(?=\\\\{|//|/\\\\*|$)\"},\"object-creation-expression-with-parameters\":{\"begin\":\"(new)(?:\\\\s+(?<type_name>(?:(?:(?<identifier>@?[_[:alpha:]][_[:alnum:]]*)\\\\s*::\\\\s*)?(?<name_and_type_args>\\\\g<identifier>\\\\s*(?<type_args>\\\\s*<(?:[^<>]|\\\\g<type_args>)+>\\\\s*)?)(?:\\\\s*\\\\.\\\\s*\\\\g<name_and_type_args>)*|(?<tuple>\\\\s*\\\\((?:[^()]|\\\\g<tuple>)+\\\\)))(?:\\\\s*\\\\?\\\\s*)?(?:\\\\s*\\\\[(?:\\\\s*,\\\\s*)*]\\\\s*\\\\??\\\\s*)*))?\\\\s*(?=\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.operator.expression.new.cs\"},\"2\":{\"patterns\":[{\"include\":\"#type\"}]}},\"end\":\"(?<=\\\\))\",\"patterns\":[{\"include\":\"#argument-list\"}]},\"operator-assignment\":{\"match\":\"(?<![!=])(=)(?!=)\",\"name\":\"keyword.operator.assignment.cs\"},\"operator-declaration\":{\"begin\":\"(?<type_name>(?:ref\\\\s+(?:readonly\\\\s+)?)?(?:(?:(?<identifier>@?[_[:alpha:]][_[:alnum:]]*)\\\\s*::\\\\s*)?(?<name_and_type_args>\\\\g<identifier>\\\\s*(?<type_args>\\\\s*<(?:[^<>]|\\\\g<type_args>)+>\\\\s*)?)(?:\\\\s*\\\\.\\\\s*\\\\g<name_and_type_args>)*|(?<tuple>\\\\s*\\\\((?:[^()]|\\\\g<tuple>)+\\\\)))(?:\\\\s*\\\\?\\\\s*)?(?:\\\\s*\\\\[(?:\\\\s*,\\\\s*)*]\\\\s*\\\\??\\\\s*)*)\\\\s*\\\\b(?<operator_keyword>operator)\\\\b\\\\s*(?<operator>[-!%\\\\&*+/<=>^|~]+|true|false)\\\\s*(?=\\\\()\",\"beginCaptures\":{\"1\":{\"patterns\":[{\"include\":\"#type\"}]},\"6\":{\"name\":\"storage.type.operator.cs\"},\"7\":{\"name\":\"entity.name.function.cs\"}},\"end\":\"(?<=})|(?=;)\",\"patterns\":[{\"include\":\"#comment\"},{\"include\":\"#parenthesized-parameter-list\"},{\"include\":\"#expression-body\"},{\"include\":\"#block\"}]},\"orderby-clause\":{\"begin\":\"\\\\b(orderby)\\\\b\\\\s*\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.operator.expression.query.orderby.cs\"}},\"end\":\"(?=[);])\",\"patterns\":[{\"include\":\"#ordering-direction\"},{\"include\":\"#query-body\"},{\"include\":\"#expression\"},{\"include\":\"#punctuation-comma\"}]},\"ordering-direction\":{\"captures\":{\"1\":{\"name\":\"keyword.operator.expression.query.$1.cs\"}},\"match\":\"\\\\b((?:a|de)scending)\\\\b\"},\"parameter\":{\"captures\":{\"1\":{\"name\":\"storage.modifier.$1.cs\"},\"2\":{\"patterns\":[{\"include\":\"#type\"}]},\"7\":{\"name\":\"entity.name.variable.parameter.cs\"}},\"match\":\"(?:\\\\b(ref|params|out|in|this)\\\\b\\\\s+)?(?<type_name>(?:ref\\\\s+)?(?:(?:(?<identifier>@?[_[:alpha:]][_[:alnum:]]*)\\\\s*::\\\\s*)?(?<name_and_type_args>\\\\g<identifier>\\\\s*(?<type_args>\\\\s*<(?:[^<>]|\\\\g<type_args>)+>\\\\s*)?)(?:\\\\s*\\\\.\\\\s*\\\\g<name_and_type_args>)*|(?<tuple>\\\\s*\\\\((?:[^()]|\\\\g<tuple>)+\\\\)))(?:\\\\s*\\\\?\\\\s*)?(?:\\\\s*\\\\[(?:\\\\s*,\\\\s*)*]\\\\s*\\\\??\\\\s*)*)\\\\s+(\\\\g<identifier>)\"},\"parenthesized-expression\":{\"begin\":\"\\\\(\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.open.cs\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.close.cs\"}},\"patterns\":[{\"include\":\"#expression\"}]},\"parenthesized-parameter-list\":{\"begin\":\"(\\\\()\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.open.cs\"}},\"end\":\"(\\\\))\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.close.cs\"}},\"patterns\":[{\"include\":\"#comment\"},{\"include\":\"#attribute-section\"},{\"include\":\"#parameter\"},{\"include\":\"#punctuation-comma\"},{\"include\":\"#variable-initializer\"}]},\"pattern\":{\"patterns\":[{\"include\":\"#intrusive\"},{\"include\":\"#combinator-pattern\"},{\"include\":\"#discard-pattern\"},{\"include\":\"#constant-pattern\"},{\"include\":\"#relational-pattern\"},{\"include\":\"#var-pattern\"},{\"include\":\"#type-pattern\"},{\"include\":\"#positional-pattern\"},{\"include\":\"#property-pattern\"},{\"include\":\"#list-pattern\"},{\"include\":\"#slice-pattern\"}]},\"positional-pattern\":{\"begin\":\"(?=\\\\()\",\"end\":\"(?=[]\\\\&),:;=?^|}]|!=|\\\\b(and|or|when)\\\\b)\",\"patterns\":[{\"begin\":\"\\\\(\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.open.cs\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.close.cs\"}},\"patterns\":[{\"include\":\"#subpattern\"},{\"include\":\"#punctuation-comma\"}]},{\"begin\":\"(?<=\\\\))\",\"end\":\"(?=[]\\\\&),:;=?^|}]|!=|\\\\b(and|or|when)\\\\b)\",\"patterns\":[{\"include\":\"#intrusive\"},{\"include\":\"#property-pattern\"},{\"include\":\"#simple-designation-pattern\"}]}]},\"preprocessor\":{\"begin\":\"^\\\\s*(#)\\\\s*\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.separator.hash.cs\"}},\"end\":\"(?<=$)\",\"name\":\"meta.preprocessor.cs\",\"patterns\":[{\"include\":\"#preprocessor-comment\"},{\"include\":\"#preprocessor-define-or-undef\"},{\"include\":\"#preprocessor-if-or-elif\"},{\"include\":\"#preprocessor-else-or-endif\"},{\"include\":\"#preprocessor-warning-or-error\"},{\"include\":\"#preprocessor-region\"},{\"include\":\"#preprocessor-endregion\"},{\"include\":\"#preprocessor-load\"},{\"include\":\"#preprocessor-r\"},{\"include\":\"#preprocessor-line\"},{\"include\":\"#preprocessor-pragma-warning\"},{\"include\":\"#preprocessor-pragma-checksum\"},{\"include\":\"#preprocessor-app-directive\"}]},\"preprocessor-app-directive\":{\"begin\":\"\\\\s*(:)\\\\s*\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.separator.colon.cs\"}},\"end\":\"(?=$)\",\"patterns\":[{\"include\":\"#preprocessor-app-directive-package\"},{\"include\":\"#preprocessor-app-directive-property\"},{\"include\":\"#preprocessor-app-directive-project\"},{\"include\":\"#preprocessor-app-directive-sdk\"},{\"include\":\"#preprocessor-app-directive-generic\"}]},\"preprocessor-app-directive-generic\":{\"captures\":{\"1\":{\"name\":\"string.unquoted.preprocessor.message.cs\"}},\"match\":\"\\\\b(.*)?\\\\s*\"},\"preprocessor-app-directive-package\":{\"captures\":{\"1\":{\"name\":\"keyword.preprocessor.package.cs\"},\"2\":{\"patterns\":[{\"include\":\"#preprocessor-app-directive-package-name\"}]},\"3\":{\"name\":\"punctuation.separator.at.cs\"},\"4\":{\"name\":\"string.unquoted.preprocessor.message.cs\"}},\"match\":\"\\\\b(package)\\\\b\\\\s*([_[:alpha:]][._[:alnum:]]*)?(@)?(.*)?\\\\s*\"},\"preprocessor-app-directive-package-name\":{\"patterns\":[{\"captures\":{\"1\":{\"name\":\"punctuation.dot.cs\"},\"2\":{\"name\":\"entity.name.variable.preprocessor.symbol.cs\"}},\"match\":\"(\\\\.)([_[:alpha:]][_[:alnum:]]*)\"},{\"match\":\"[_[:alpha:]][_[:alnum:]]*\",\"name\":\"entity.name.variable.preprocessor.symbol.cs\"}]},\"preprocessor-app-directive-project\":{\"captures\":{\"1\":{\"name\":\"keyword.preprocessor.project.cs\"},\"2\":{\"name\":\"string.unquoted.preprocessor.message.cs\"}},\"match\":\"\\\\b(project)\\\\b\\\\s*(.*)?\\\\s*\"},\"preprocessor-app-directive-property\":{\"captures\":{\"1\":{\"name\":\"keyword.preprocessor.property.cs\"},\"2\":{\"name\":\"entity.name.variable.preprocessor.symbol.cs\"},\"3\":{\"name\":\"punctuation.separator.equals.cs\"},\"4\":{\"name\":\"string.unquoted.preprocessor.message.cs\"}},\"match\":\"\\\\b(property)\\\\b\\\\s*([_[:alpha:]][_[:alnum:]]*)?(=)?(.*)?\\\\s*\"},\"preprocessor-app-directive-sdk\":{\"captures\":{\"1\":{\"name\":\"keyword.preprocessor.sdk.cs\"},\"2\":{\"patterns\":[{\"include\":\"#preprocessor-app-directive-package-name\"}]},\"3\":{\"name\":\"punctuation.separator.at.cs\"},\"4\":{\"name\":\"string.unquoted.preprocessor.message.cs\"}},\"match\":\"\\\\b(sdk)\\\\b\\\\s*([_[:alpha:]][._[:alnum:]]*)?(@)?(.*)?\\\\s*\"},\"preprocessor-comment\":{\"patterns\":[{\"captures\":{\"1\":{\"name\":\"punctuation.definition.comment.cs\"}},\"match\":\"(//).*(?=$)\",\"name\":\"comment.line.double-slash.cs\"},{\"begin\":\"/\\\\*\",\"captures\":{\"0\":{\"name\":\"punctuation.definition.comment.cs\"}},\"end\":\"\\\\*/\",\"name\":\"comment.block.cs\"}]},\"preprocessor-define-or-undef\":{\"captures\":{\"1\":{\"name\":\"keyword.preprocessor.define.cs\"},\"2\":{\"name\":\"keyword.preprocessor.undef.cs\"},\"3\":{\"name\":\"entity.name.variable.preprocessor.symbol.cs\"}},\"match\":\"\\\\b(?:(define)|(undef))\\\\b\\\\s*\\\\b([_[:alpha:]][_[:alnum:]]*)\\\\b\"},\"preprocessor-else-or-endif\":{\"captures\":{\"1\":{\"name\":\"keyword.preprocessor.else.cs\"},\"2\":{\"name\":\"keyword.preprocessor.endif.cs\"}},\"match\":\"\\\\b(?:(else)|(endif))\\\\b\"},\"preprocessor-endregion\":{\"captures\":{\"1\":{\"name\":\"keyword.preprocessor.endregion.cs\"}},\"match\":\"\\\\b(endregion)\\\\b\"},\"preprocessor-expression\":{\"patterns\":[{\"begin\":\"\\\\(\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.open.cs\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.close.cs\"}},\"patterns\":[{\"include\":\"#preprocessor-expression\"}]},{\"captures\":{\"1\":{\"name\":\"constant.language.boolean.true.cs\"},\"2\":{\"name\":\"constant.language.boolean.false.cs\"},\"3\":{\"name\":\"entity.name.variable.preprocessor.symbol.cs\"}},\"match\":\"\\\\b(?:(true)|(false)|([_[:alpha:]][_[:alnum:]]*))\\\\b\"},{\"captures\":{\"1\":{\"name\":\"keyword.operator.comparison.cs\"},\"2\":{\"name\":\"keyword.operator.logical.cs\"}},\"match\":\"([!=]=)|(!|&&|\\\\|\\\\|)\"}]},\"preprocessor-if-or-elif\":{\"begin\":\"\\\\b(?:(if)|(elif))\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.preprocessor.if.cs\"},\"2\":{\"name\":\"keyword.preprocessor.elif.cs\"}},\"end\":\"(?=$)\",\"patterns\":[{\"include\":\"#preprocessor-comment\"},{\"include\":\"#preprocessor-expression\"}]},\"preprocessor-line\":{\"begin\":\"\\\\b(line)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.preprocessor.line.cs\"}},\"end\":\"(?=$)\",\"patterns\":[{\"captures\":{\"1\":{\"name\":\"keyword.preprocessor.default.cs\"},\"2\":{\"name\":\"keyword.preprocessor.hidden.cs\"}},\"match\":\"\\\\b(default|hidden)\"},{\"captures\":{\"0\":{\"name\":\"constant.numeric.decimal.cs\"}},\"match\":\"[0-9]+\"},{\"captures\":{\"0\":{\"name\":\"string.quoted.double.cs\"}},\"match\":\"\\\"[^\\\"]*\\\"\"}]},\"preprocessor-load\":{\"begin\":\"\\\\b(load)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.preprocessor.load.cs\"}},\"end\":\"(?=$)\",\"patterns\":[{\"captures\":{\"0\":{\"name\":\"string.quoted.double.cs\"}},\"match\":\"\\\"[^\\\"]*\\\"\"}]},\"preprocessor-pragma-checksum\":{\"captures\":{\"1\":{\"name\":\"keyword.preprocessor.pragma.cs\"},\"2\":{\"name\":\"keyword.preprocessor.checksum.cs\"},\"3\":{\"name\":\"string.quoted.double.cs\"},\"4\":{\"name\":\"string.quoted.double.cs\"},\"5\":{\"name\":\"string.quoted.double.cs\"}},\"match\":\"\\\\b(pragma)\\\\b\\\\s*\\\\b(checksum)\\\\b\\\\s*(\\\"[^\\\"]*\\\")\\\\s*(\\\"[^\\\"]*\\\")\\\\s*(\\\"[^\\\"]*\\\")\"},\"preprocessor-pragma-warning\":{\"captures\":{\"1\":{\"name\":\"keyword.preprocessor.pragma.cs\"},\"2\":{\"name\":\"keyword.preprocessor.warning.cs\"},\"3\":{\"name\":\"keyword.preprocessor.disable.cs\"},\"4\":{\"name\":\"keyword.preprocessor.restore.cs\"},\"5\":{\"patterns\":[{\"captures\":{\"0\":{\"name\":\"constant.numeric.decimal.cs\"}},\"match\":\"[0-9]+\"},{\"include\":\"#punctuation-comma\"}]}},\"match\":\"\\\\b(pragma)\\\\b\\\\s*\\\\b(warning)\\\\b\\\\s*\\\\b(?:(disable)|(restore))\\\\b(\\\\s*[0-9]+(?:\\\\s*,\\\\s*[0-9]+)?)?\"},\"preprocessor-r\":{\"begin\":\"\\\\b(r)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.preprocessor.r.cs\"}},\"end\":\"(?=$)\",\"patterns\":[{\"captures\":{\"0\":{\"name\":\"string.quoted.double.cs\"}},\"match\":\"\\\"[^\\\"]*\\\"\"}]},\"preprocessor-region\":{\"captures\":{\"1\":{\"name\":\"keyword.preprocessor.region.cs\"},\"2\":{\"name\":\"string.unquoted.preprocessor.message.cs\"}},\"match\":\"\\\\b(region)\\\\b\\\\s*(.*)(?=$)\"},\"preprocessor-warning-or-error\":{\"captures\":{\"1\":{\"name\":\"keyword.preprocessor.warning.cs\"},\"2\":{\"name\":\"keyword.preprocessor.error.cs\"},\"3\":{\"name\":\"string.unquoted.preprocessor.message.cs\"}},\"match\":\"\\\\b(?:(warning)|(error))\\\\b\\\\s*(.*)(?=$)\"},\"property-accessors\":{\"begin\":\"\\\\{\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.curlybrace.open.cs\"}},\"end\":\"}\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.curlybrace.close.cs\"}},\"patterns\":[{\"include\":\"#comment\"},{\"include\":\"#attribute-section\"},{\"match\":\"\\\\b(private|protected|internal)\\\\b\",\"name\":\"storage.modifier.$1.cs\"},{\"begin\":\"(?:\\\\b(readonly)\\\\s+)?\\\\b(get)\\\\b\\\\s*(?=[;{]|=>|//|/\\\\*|$)\",\"beginCaptures\":{\"1\":{\"name\":\"storage.modifier.readonly.cs\"},\"2\":{\"name\":\"storage.type.accessor.get.cs\"}},\"end\":\"(?<=[;}])|(?=})\",\"patterns\":[{\"include\":\"#accessor-getter\"}]},{\"begin\":\"\\\\b(set|init)\\\\b\\\\s*(?=[;{]|=>|//|/\\\\*|$)\",\"beginCaptures\":{\"1\":{\"name\":\"storage.type.accessor.$1.cs\"}},\"end\":\"(?<=[;}])|(?=})\",\"patterns\":[{\"include\":\"#accessor-setter\"}]}]},\"property-declaration\":{\"begin\":\"(?![[:word:]\\\\s]*\\\\b(?:class|interface|struct|enum|event)\\\\b)(?<return_type>(?<type_name>(?:ref\\\\s+(?:readonly\\\\s+)?)?(?:(?:(?<identifier>@?[_[:alpha:]][_[:alnum:]]*)\\\\s*::\\\\s*)?(?<name_and_type_args>\\\\g<identifier>\\\\s*(?<type_args>\\\\s*<(?:[^<>]|\\\\g<type_args>)+>\\\\s*)?)(?:\\\\s*\\\\.\\\\s*\\\\g<name_and_type_args>)*|(?<tuple>\\\\s*\\\\((?:[^()]|\\\\g<tuple>)+\\\\)))(?:\\\\s*\\\\?\\\\s*)?(?:\\\\s*\\\\[(?:\\\\s*,\\\\s*)*]\\\\s*\\\\??\\\\s*)*)\\\\s+)(?<interface_name>\\\\g<type_name>\\\\s*\\\\.\\\\s*)?(?<property_name>\\\\g<identifier>)\\\\s*(?=\\\\{|=>|//|/\\\\*|$)\",\"beginCaptures\":{\"1\":{\"patterns\":[{\"include\":\"#type\"}]},\"7\":{\"patterns\":[{\"include\":\"#type\"},{\"include\":\"#punctuation-accessor\"}]},\"8\":{\"name\":\"entity.name.variable.property.cs\"}},\"end\":\"(?<=})|(?=;)\",\"patterns\":[{\"include\":\"#comment\"},{\"include\":\"#property-accessors\"},{\"include\":\"#accessor-getter-expression\"},{\"include\":\"#variable-initializer\"},{\"include\":\"#class-or-struct-members\"}]},\"property-pattern\":{\"begin\":\"(?=\\\\{)\",\"end\":\"(?=[]\\\\&),:;=?^|}]|!=|\\\\b(and|or|when)\\\\b)\",\"patterns\":[{\"begin\":\"\\\\{\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.curlybrace.open.cs\"}},\"end\":\"}\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.curlybrace.close.cs\"}},\"patterns\":[{\"include\":\"#subpattern\"},{\"include\":\"#punctuation-comma\"}]},{\"begin\":\"(?<=})\",\"end\":\"(?=[]\\\\&),:;=?^|}]|!=|\\\\b(and|or|when)\\\\b)\",\"patterns\":[{\"include\":\"#intrusive\"},{\"include\":\"#simple-designation-pattern\"}]}]},\"punctuation-accessor\":{\"match\":\"\\\\.\",\"name\":\"punctuation.accessor.cs\"},\"punctuation-comma\":{\"match\":\",\",\"name\":\"punctuation.separator.comma.cs\"},\"punctuation-semicolon\":{\"match\":\";\",\"name\":\"punctuation.terminator.statement.cs\"},\"query-body\":{\"patterns\":[{\"include\":\"#let-clause\"},{\"include\":\"#where-clause\"},{\"include\":\"#join-clause\"},{\"include\":\"#orderby-clause\"},{\"include\":\"#select-clause\"},{\"include\":\"#group-clause\"}]},\"query-expression\":{\"begin\":\"\\\\b(from)\\\\b\\\\s*(?<type_name>(?:(?:(?<identifier>@?[_[:alpha:]][_[:alnum:]]*)\\\\s*::\\\\s*)?(?<name_and_type_args>\\\\g<identifier>\\\\s*(?<type_args>\\\\s*<(?:[^<>]|\\\\g<type_args>)+>\\\\s*)?)(?:\\\\s*\\\\.\\\\s*\\\\g<name_and_type_args>)*|(?<tuple>\\\\s*\\\\((?:[^()]|\\\\g<tuple>)+\\\\)))(?:\\\\s*\\\\?\\\\s*)?(?:\\\\s*\\\\[(?:\\\\s*,\\\\s*)*]\\\\s*\\\\??\\\\s*)*)?\\\\s+(\\\\g<identifier>)\\\\b\\\\s*\\\\b(in)\\\\b\\\\s*\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.operator.expression.query.from.cs\"},\"2\":{\"patterns\":[{\"include\":\"#type\"}]},\"7\":{\"name\":\"entity.name.variable.range-variable.cs\"},\"8\":{\"name\":\"keyword.operator.expression.query.in.cs\"}},\"end\":\"(?=[);])\",\"patterns\":[{\"include\":\"#query-body\"},{\"include\":\"#expression\"}]},\"raw-interpolated-string\":{\"patterns\":[{\"include\":\"#raw-interpolated-string-five-or-more-quote-one-or-more-interpolation\"},{\"include\":\"#raw-interpolated-string-three-or-more-quote-three-or-more-interpolation\"},{\"include\":\"#raw-interpolated-string-quadruple-quote-double-interpolation\"},{\"include\":\"#raw-interpolated-string-quadruple-quote-single-interpolation\"},{\"include\":\"#raw-interpolated-string-triple-quote-double-interpolation\"},{\"include\":\"#raw-interpolated-string-triple-quote-single-interpolation\"}]},\"raw-interpolated-string-five-or-more-quote-one-or-more-interpolation\":{\"begin\":\"\\\\$+\\\"\\\"\\\"\\\"\\\"+\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.cs\"}},\"end\":\"\\\"\\\"\\\"\\\"\\\"+\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.cs\"}},\"name\":\"string.quoted.double.cs\"},\"raw-interpolated-string-quadruple-quote-double-interpolation\":{\"begin\":\"\\\\$\\\\$\\\"\\\"\\\"\\\"\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.cs\"}},\"end\":\"\\\"\\\"\\\"\\\"\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.cs\"}},\"name\":\"string.quoted.double.cs\",\"patterns\":[{\"include\":\"#double-raw-interpolation\"}]},\"raw-interpolated-string-quadruple-quote-single-interpolation\":{\"begin\":\"\\\\$\\\"\\\"\\\"\\\"\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.cs\"}},\"end\":\"\\\"\\\"\\\"\\\"\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.cs\"}},\"name\":\"string.quoted.double.cs\",\"patterns\":[{\"include\":\"#raw-interpolation\"}]},\"raw-interpolated-string-three-or-more-quote-three-or-more-interpolation\":{\"begin\":\"\\\\$\\\\$\\\\$+\\\"\\\"\\\"+\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.cs\"}},\"end\":\"\\\"\\\"\\\"+\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.cs\"}},\"name\":\"string.quoted.double.cs\"},\"raw-interpolated-string-triple-quote-double-interpolation\":{\"begin\":\"\\\\$\\\\$\\\"\\\"\\\"\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.cs\"}},\"end\":\"\\\"\\\"\\\"\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.cs\"}},\"name\":\"string.quoted.double.cs\",\"patterns\":[{\"include\":\"#double-raw-interpolation\"}]},\"raw-interpolated-string-triple-quote-single-interpolation\":{\"begin\":\"\\\\$\\\"\\\"\\\"\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.cs\"}},\"end\":\"\\\"\\\"\\\"\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.cs\"}},\"name\":\"string.quoted.double.cs\",\"patterns\":[{\"include\":\"#raw-interpolation\"}]},\"raw-interpolation\":{\"begin\":\"(?<=[^{]|^)(\\\\{*)(\\\\{)(?=[^{])\",\"beginCaptures\":{\"1\":{\"name\":\"string.quoted.double.cs\"},\"2\":{\"name\":\"punctuation.definition.interpolation.begin.cs\"}},\"end\":\"}\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.interpolation.end.cs\"}},\"name\":\"meta.embedded.interpolation.cs\",\"patterns\":[{\"include\":\"#expression\"}]},\"raw-string-literal\":{\"patterns\":[{\"include\":\"#raw-string-literal-more\"},{\"include\":\"#raw-string-literal-quadruple\"},{\"include\":\"#raw-string-literal-triple\"}]},\"raw-string-literal-more\":{\"begin\":\"\\\"\\\"\\\"\\\"\\\"+\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.cs\"}},\"end\":\"\\\"\\\"\\\"\\\"\\\"+\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.cs\"}},\"name\":\"string.quoted.double.cs\"},\"raw-string-literal-quadruple\":{\"begin\":\"\\\"\\\"\\\"\\\"\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.cs\"}},\"end\":\"\\\"\\\"\\\"\\\"\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.cs\"}},\"name\":\"string.quoted.double.cs\"},\"raw-string-literal-triple\":{\"begin\":\"\\\"\\\"\\\"\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.cs\"}},\"end\":\"\\\"\\\"\\\"\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.cs\"}},\"name\":\"string.quoted.double.cs\"},\"readonly-modifier\":{\"match\":\"\\\\breadonly\\\\b\",\"name\":\"storage.modifier.readonly.cs\"},\"record-declaration\":{\"begin\":\"(?=\\\\brecord\\\\b)\",\"end\":\"(?<=})|(?=;)\",\"patterns\":[{\"begin\":\"(record)\\\\b\\\\s+(@?[_[:alpha:]][_[:alnum:]]*)\",\"beginCaptures\":{\"1\":{\"name\":\"storage.type.record.cs\"},\"2\":{\"name\":\"entity.name.type.class.cs\"}},\"end\":\"(?=\\\\{)|(?=;)\",\"patterns\":[{\"include\":\"#comment\"},{\"include\":\"#type-parameter-list\"},{\"include\":\"#parenthesized-parameter-list\"},{\"include\":\"#base-types\"},{\"include\":\"#generic-constraints\"}]},{\"begin\":\"\\\\{\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.curlybrace.open.cs\"}},\"end\":\"}\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.curlybrace.close.cs\"}},\"patterns\":[{\"include\":\"#class-or-struct-members\"}]},{\"include\":\"#preprocessor\"},{\"include\":\"#comment\"}]},\"ref-modifier\":{\"match\":\"\\\\bref\\\\b\",\"name\":\"storage.modifier.ref.cs\"},\"relational-pattern\":{\"begin\":\"<=?|>=?\",\"beginCaptures\":{\"0\":{\"name\":\"keyword.operator.relational.cs\"}},\"end\":\"(?=[]\\\\&),:;=?^|}]|!=|\\\\b(and|or|when)\\\\b)\",\"patterns\":[{\"include\":\"#expression\"}]},\"return-statement\":{\"begin\":\"(?<!\\\\.)\\\\b(return)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.flow.return.cs\"}},\"end\":\"(?=[;}])\",\"patterns\":[{\"include\":\"#ref-modifier\"},{\"include\":\"#expression\"}]},\"script-top-level\":{\"patterns\":[{\"include\":\"#statement\"},{\"include\":\"#method-declaration\"},{\"include\":\"#punctuation-semicolon\"}]},\"select-clause\":{\"begin\":\"\\\\b(select)\\\\b\\\\s*\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.operator.expression.query.select.cs\"}},\"end\":\"(?=[);])\",\"patterns\":[{\"include\":\"#query-body\"},{\"include\":\"#expression\"}]},\"simple-designation-pattern\":{\"patterns\":[{\"include\":\"#discard-pattern\"},{\"match\":\"@?[_[:alpha:]][_[:alnum:]]*\",\"name\":\"entity.name.variable.local.cs\"}]},\"slice-pattern\":{\"match\":\"\\\\.\\\\.\",\"name\":\"keyword.operator.range.cs\"},\"statement\":{\"patterns\":[{\"include\":\"#preprocessor\"},{\"include\":\"#comment\"},{\"include\":\"#while-statement\"},{\"include\":\"#do-statement\"},{\"include\":\"#for-statement\"},{\"include\":\"#foreach-statement\"},{\"include\":\"#if-statement\"},{\"include\":\"#else-part\"},{\"include\":\"#goto-statement\"},{\"include\":\"#return-statement\"},{\"include\":\"#break-or-continue-statement\"},{\"include\":\"#throw-statement\"},{\"include\":\"#yield-statement\"},{\"include\":\"#await-statement\"},{\"include\":\"#try-statement\"},{\"include\":\"#expression-operator-expression\"},{\"include\":\"#context-control-statement\"},{\"include\":\"#context-control-paren-statement\"},{\"include\":\"#labeled-statement\"},{\"include\":\"#object-creation-expression\"},{\"include\":\"#array-creation-expression\"},{\"include\":\"#anonymous-object-creation-expression\"},{\"include\":\"#local-declaration\"},{\"include\":\"#block\"},{\"include\":\"#expression\"},{\"include\":\"#punctuation-semicolon\"}]},\"storage-modifier\":{\"match\":\"(?<!\\\\.)\\\\b(new|public|protected|internal|private|abstract|virtual|override|sealed|static|partial|readonly|volatile|const|extern|async|unsafe|ref|required|file)\\\\b\",\"name\":\"storage.modifier.$1.cs\"},\"string-character-escape\":{\"match\":\"\\\\\\\\(x\\\\h{1,4}|U\\\\h{8}|u\\\\h{4}|.)\",\"name\":\"constant.character.escape.cs\"},\"string-literal\":{\"begin\":\"(?<!@)\\\"\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.cs\"}},\"end\":\"(\\\")|([^\\\\n\\\\\\\\])$\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.definition.string.end.cs\"},\"2\":{\"name\":\"invalid.illegal.newline.cs\"}},\"name\":\"string.quoted.double.cs\",\"patterns\":[{\"include\":\"#string-character-escape\"}]},\"struct-declaration\":{\"begin\":\"(?=(\\\\brecord\\\\b\\\\s+)?\\\\bstruct\\\\b)\",\"end\":\"(?<=})|(?=;)\",\"patterns\":[{\"begin\":\"(\\\\b(record)\\\\b\\\\s+)?(struct)\\\\b\\\\s+(@?[_[:alpha:]][_[:alnum:]]*)\",\"beginCaptures\":{\"2\":{\"name\":\"storage.type.record.cs\"},\"3\":{\"name\":\"storage.type.struct.cs\"},\"4\":{\"name\":\"entity.name.type.struct.cs\"}},\"end\":\"(?=\\\\{)|(?=;)\",\"patterns\":[{\"include\":\"#comment\"},{\"include\":\"#type-parameter-list\"},{\"include\":\"#parenthesized-parameter-list\"},{\"include\":\"#base-types\"},{\"include\":\"#generic-constraints\"}]},{\"begin\":\"\\\\{\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.curlybrace.open.cs\"}},\"end\":\"}\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.curlybrace.close.cs\"}},\"patterns\":[{\"include\":\"#class-or-struct-members\"}]},{\"include\":\"#preprocessor\"},{\"include\":\"#comment\"}]},\"subpattern\":{\"patterns\":[{\"captures\":{\"1\":{\"patterns\":[{\"match\":\"@?[_[:alpha:]][_[:alnum:]]*\",\"name\":\"variable.other.object.property.cs\"},{\"include\":\"#punctuation-accessor\"}]},\"2\":{\"name\":\"punctuation.separator.colon.cs\"}},\"match\":\"(@?[_[:alpha:]][_[:alnum:]]*(?:\\\\s*\\\\.\\\\s*@?[_[:alpha:]][_[:alnum:]]*)*)\\\\s*(:)\"},{\"include\":\"#pattern\"}]},\"switch-expression\":{\"begin\":\"\\\\{\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.curlybrace.open.cs\"}},\"end\":\"}\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.curlybrace.close.cs\"}},\"patterns\":[{\"include\":\"#punctuation-comma\"},{\"begin\":\"=>\",\"beginCaptures\":{\"0\":{\"name\":\"keyword.operator.arrow.cs\"}},\"end\":\"(?=[,}])\",\"patterns\":[{\"include\":\"#expression\"}]},{\"begin\":\"\\\\b(when)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.conditional.when.cs\"}},\"end\":\"(?==>|[,}])\",\"patterns\":[{\"include\":\"#case-guard\"}]},{\"begin\":\"(?!\\\\s)\",\"end\":\"(?=\\\\bwhen\\\\b|=>|[,}])\",\"patterns\":[{\"include\":\"#pattern\"}]}]},\"switch-label\":{\"begin\":\"\\\\b(case|default)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.conditional.$1.cs\"}},\"end\":\"(:)|(?=})\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.separator.colon.cs\"}},\"patterns\":[{\"begin\":\"\\\\b(when)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.conditional.when.cs\"}},\"end\":\"(?=[:}])\",\"patterns\":[{\"include\":\"#case-guard\"}]},{\"begin\":\"(?!\\\\s)\",\"end\":\"(?=\\\\bwhen\\\\b|[:}])\",\"patterns\":[{\"include\":\"#pattern\"}]}]},\"switch-statement\":{\"patterns\":[{\"include\":\"#intrusive\"},{\"begin\":\"\\\\(\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.open.cs\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.close.cs\"}},\"patterns\":[{\"include\":\"#expression\"}]},{\"begin\":\"\\\\{\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.curlybrace.open.cs\"}},\"end\":\"}\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.curlybrace.close.cs\"}},\"patterns\":[{\"include\":\"#switch-label\"},{\"include\":\"#statement\"}]}]},\"switch-statement-or-expression\":{\"begin\":\"(?<!\\\\.)\\\\b(switch)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.conditional.switch.cs\"}},\"end\":\"(?<=})|(?=})\",\"patterns\":[{\"include\":\"#intrusive\"},{\"begin\":\"(?=\\\\()\",\"end\":\"(?<=})|(?=})\",\"patterns\":[{\"include\":\"#switch-statement\"}]},{\"begin\":\"(?=\\\\{)\",\"end\":\"(?<=})|(?=})\",\"patterns\":[{\"include\":\"#switch-expression\"}]}]},\"throw-expression\":{\"captures\":{\"1\":{\"name\":\"keyword.control.flow.throw.cs\"}},\"match\":\"\\\\b(throw)\\\\b\"},\"throw-statement\":{\"begin\":\"(?<!\\\\.)\\\\b(throw)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.flow.throw.cs\"}},\"end\":\"(?=[;}])\",\"patterns\":[{\"include\":\"#expression\"}]},\"try-block\":{\"begin\":\"(?<!\\\\.)\\\\b(try)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.exception.try.cs\"}},\"end\":\"(?<=})\",\"patterns\":[{\"include\":\"#comment\"},{\"include\":\"#block\"}]},\"try-statement\":{\"patterns\":[{\"include\":\"#try-block\"},{\"include\":\"#catch-clause\"},{\"include\":\"#finally-clause\"}]},\"tuple-declaration-deconstruction-element-list\":{\"begin\":\"\\\\(\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.open.cs\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.close.cs\"}},\"patterns\":[{\"include\":\"#comment\"},{\"include\":\"#tuple-declaration-deconstruction-element-list\"},{\"include\":\"#declaration-expression-tuple\"},{\"include\":\"#punctuation-comma\"},{\"captures\":{\"1\":{\"name\":\"entity.name.variable.tuple-element.cs\"}},\"match\":\"(@?[_[:alpha:]][_[:alnum:]]*)\\\\b\\\\s*(?=[),])\"}]},\"tuple-deconstruction-assignment\":{\"captures\":{\"1\":{\"patterns\":[{\"include\":\"#tuple-deconstruction-element-list\"}]}},\"match\":\"(?<tuple>\\\\s*\\\\((?:[^()]|\\\\g<tuple>)+\\\\))\\\\s*(?!=[=>])(?==)\"},\"tuple-deconstruction-element-list\":{\"begin\":\"\\\\(\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.open.cs\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.close.cs\"}},\"patterns\":[{\"include\":\"#comment\"},{\"include\":\"#tuple-deconstruction-element-list\"},{\"include\":\"#declaration-expression-tuple\"},{\"include\":\"#punctuation-comma\"},{\"captures\":{\"1\":{\"name\":\"variable.other.readwrite.cs\"}},\"match\":\"(@?[_[:alpha:]][_[:alnum:]]*)\\\\b\\\\s*(?=[),])\"}]},\"tuple-element\":{\"captures\":{\"1\":{\"patterns\":[{\"include\":\"#type\"}]},\"6\":{\"name\":\"entity.name.variable.tuple-element.cs\"}},\"match\":\"(?<type_name>(?:(?:(?<identifier>@?[_[:alpha:]][_[:alnum:]]*)\\\\s*::\\\\s*)?(?<name_and_type_args>\\\\g<identifier>\\\\s*(?<type_args>\\\\s*<(?:[^<>]|\\\\g<type_args>)+>\\\\s*)?)(?:\\\\s*\\\\.\\\\s*\\\\g<name_and_type_args>)*|(?<tuple>\\\\s*\\\\((?:[^()]|\\\\g<tuple>)+\\\\)))(?:\\\\s*\\\\?\\\\s*)?(?:\\\\s*\\\\[(?:\\\\s*,\\\\s*)*]\\\\s*\\\\??\\\\s*)*)(?:(?<tuple_name>\\\\g<identifier>)\\\\b)?\"},\"tuple-literal\":{\"begin\":\"(\\\\()(?=.*[,:])\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.parenthesis.open.cs\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.close.cs\"}},\"patterns\":[{\"include\":\"#comment\"},{\"include\":\"#tuple-literal-element\"},{\"include\":\"#expression\"},{\"include\":\"#punctuation-comma\"}]},\"tuple-literal-element\":{\"begin\":\"(@?[_[:alpha:]][_[:alnum:]]*)\\\\s*(?=:)\",\"beginCaptures\":{\"1\":{\"name\":\"entity.name.variable.tuple-element.cs\"}},\"end\":\"(:)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.separator.colon.cs\"}}},\"tuple-type\":{\"begin\":\"\\\\(\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.open.cs\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.close.cs\"}},\"patterns\":[{\"include\":\"#tuple-element\"},{\"include\":\"#punctuation-comma\"}]},\"type\":{\"patterns\":[{\"include\":\"#comment\"},{\"include\":\"#ref-modifier\"},{\"include\":\"#readonly-modifier\"},{\"include\":\"#tuple-type\"},{\"include\":\"#type-builtin\"},{\"include\":\"#type-name\"},{\"include\":\"#type-arguments\"},{\"include\":\"#type-array-suffix\"},{\"include\":\"#type-nullable-suffix\"},{\"include\":\"#type-pointer-suffix\"}]},\"type-arguments\":{\"begin\":\"<\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.typeparameters.begin.cs\"}},\"end\":\">\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.typeparameters.end.cs\"}},\"patterns\":[{\"include\":\"#type\"},{\"include\":\"#punctuation-comma\"}]},\"type-array-suffix\":{\"begin\":\"\\\\[\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.squarebracket.open.cs\"}},\"end\":\"]\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.squarebracket.close.cs\"}},\"patterns\":[{\"include\":\"#intrusive\"},{\"include\":\"#punctuation-comma\"}]},\"type-builtin\":{\"captures\":{\"1\":{\"name\":\"keyword.type.$1.cs\"}},\"match\":\"\\\\b(bool|s?byte|u?short|n?u?int|u?long|float|double|decimal|char|string|object|void|dynamic)\\\\b\"},\"type-declarations\":{\"patterns\":[{\"include\":\"#preprocessor\"},{\"include\":\"#comment\"},{\"include\":\"#storage-modifier\"},{\"include\":\"#class-declaration\"},{\"include\":\"#delegate-declaration\"},{\"include\":\"#enum-declaration\"},{\"include\":\"#interface-declaration\"},{\"include\":\"#struct-declaration\"},{\"include\":\"#record-declaration\"},{\"include\":\"#attribute-section\"},{\"include\":\"#punctuation-semicolon\"}]},\"type-name\":{\"patterns\":[{\"captures\":{\"1\":{\"name\":\"entity.name.type.alias.cs\"},\"2\":{\"name\":\"punctuation.separator.coloncolon.cs\"}},\"match\":\"(@?[_[:alpha:]][_[:alnum:]]*)\\\\s*(::)\"},{\"captures\":{\"1\":{\"name\":\"entity.name.type.cs\"},\"2\":{\"name\":\"punctuation.accessor.cs\"}},\"match\":\"(@?[_[:alpha:]][_[:alnum:]]*)\\\\s*(\\\\.)\"},{\"captures\":{\"1\":{\"name\":\"punctuation.accessor.cs\"},\"2\":{\"name\":\"entity.name.type.cs\"}},\"match\":\"(\\\\.)\\\\s*(@?[_[:alpha:]][_[:alnum:]]*)\"},{\"match\":\"@?[_[:alpha:]][_[:alnum:]]*\",\"name\":\"entity.name.type.cs\"}]},\"type-nullable-suffix\":{\"match\":\"\\\\?\",\"name\":\"punctuation.separator.question-mark.cs\"},\"type-operator-expression\":{\"begin\":\"\\\\b(default|sizeof|typeof)\\\\s*(\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.operator.expression.$1.cs\"},\"2\":{\"name\":\"punctuation.parenthesis.open.cs\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.close.cs\"}},\"patterns\":[{\"include\":\"#type\"}]},\"type-parameter-list\":{\"begin\":\"<\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.typeparameters.begin.cs\"}},\"end\":\">\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.typeparameters.end.cs\"}},\"patterns\":[{\"match\":\"\\\\b(in|out)\\\\b\",\"name\":\"storage.modifier.$1.cs\"},{\"match\":\"(@?[_[:alpha:]][_[:alnum:]]*)\\\\b\",\"name\":\"entity.name.type.type-parameter.cs\"},{\"include\":\"#comment\"},{\"include\":\"#punctuation-comma\"},{\"include\":\"#attribute-section\"}]},\"type-pattern\":{\"begin\":\"(?=@?[_[:alpha:]][_[:alnum:]]*)\",\"end\":\"(?=[]\\\\&),:;=?^|}]|!=|\\\\b(and|or|when)\\\\b)\",\"patterns\":[{\"begin\":\"\\\\G\",\"end\":\"(?!\\\\G[@_[:alpha:]])(?=[]\\\\&(),:;=@^_{|}[:alpha:]]|(?:\\\\s|^)\\\\?|!=|\\\\b(and|or|when)\\\\b)\",\"patterns\":[{\"include\":\"#intrusive\"},{\"include\":\"#type-subpattern\"}]},{\"begin\":\"(?=[(@_{[:alpha:]])\",\"end\":\"(?=[]\\\\&),:;=?^|}]|!=|\\\\b(and|or|when)\\\\b)\",\"patterns\":[{\"include\":\"#intrusive\"},{\"include\":\"#positional-pattern\"},{\"include\":\"#property-pattern\"},{\"include\":\"#simple-designation-pattern\"}]}]},\"type-pointer-suffix\":{\"match\":\"\\\\*\",\"name\":\"punctuation.separator.asterisk.cs\"},\"type-subpattern\":{\"patterns\":[{\"include\":\"#type-builtin\"},{\"begin\":\"(@?[_[:alpha:]][_[:alnum:]]*)\\\\s*(::)\",\"beginCaptures\":{\"1\":{\"name\":\"entity.name.type.alias.cs\"},\"2\":{\"name\":\"punctuation.separator.coloncolon.cs\"}},\"end\":\"(?<=[_[:alnum:]])|(?=[]\\\\&(),.:-=?\\\\[^{|}]|!=|\\\\b(and|or|when)\\\\b)\",\"patterns\":[{\"include\":\"#intrusive\"},{\"match\":\"@?[_[:alpha:]][_[:alnum:]]*\",\"name\":\"entity.name.type.cs\"}]},{\"match\":\"@?[_[:alpha:]][_[:alnum:]]*\",\"name\":\"entity.name.type.cs\"},{\"begin\":\"\\\\.\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.accessor.cs\"}},\"end\":\"(?<=[_[:alnum:]])|(?=[]\\\\&(),:-=?\\\\[^{|}]|!=|\\\\b(and|or|when)\\\\b)\",\"patterns\":[{\"include\":\"#intrusive\"},{\"match\":\"@?[_[:alpha:]][_[:alnum:]]*\",\"name\":\"entity.name.type.cs\"}]},{\"include\":\"#type-arguments\"},{\"include\":\"#type-array-suffix\"},{\"match\":\"(?<!\\\\s)\\\\?\",\"name\":\"punctuation.separator.question-mark.cs\"}]},\"using-directive\":{\"patterns\":[{\"begin\":\"\\\\b(?:(global)\\\\s+)?(using)\\\\s+(static)\\\\b\\\\s*(?:(unsafe)\\\\b\\\\s*)?\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.other.directive.global.cs\"},\"2\":{\"name\":\"keyword.other.directive.using.cs\"},\"3\":{\"name\":\"keyword.other.directive.static.cs\"},\"4\":{\"name\":\"storage.modifier.unsafe.cs\"}},\"end\":\"(?=;)\",\"patterns\":[{\"include\":\"#type\"}]},{\"begin\":\"\\\\b(?:(global)\\\\s+)?(using)\\\\b\\\\s*(?:(unsafe)\\\\b\\\\s*)?(@?[_[:alpha:]][_[:alnum:]]*)\\\\s*(=)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.other.directive.global.cs\"},\"2\":{\"name\":\"keyword.other.directive.using.cs\"},\"3\":{\"name\":\"storage.modifier.unsafe.cs\"},\"4\":{\"name\":\"entity.name.type.alias.cs\"},\"5\":{\"name\":\"keyword.operator.assignment.cs\"}},\"end\":\"(?=;)\",\"patterns\":[{\"include\":\"#comment\"},{\"include\":\"#type\"}]},{\"begin\":\"\\\\b(?:(global)\\\\s+)?(using)\\\\b\\\\s*+(?!\\\\(|var\\\\b)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.other.directive.global.cs\"},\"2\":{\"name\":\"keyword.other.directive.using.cs\"}},\"end\":\"(?=;)\",\"patterns\":[{\"include\":\"#comment\"},{\"match\":\"@?[_[:alpha:]][_[:alnum:]]*\",\"name\":\"entity.name.type.namespace.cs\"},{\"include\":\"#punctuation-accessor\"},{\"include\":\"#operator-assignment\"}]}]},\"using-statement\":{\"begin\":\"\\\\b(using)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.context.using.cs\"}},\"end\":\"(?<=\\\\))|(?=[;}])\",\"patterns\":[{\"include\":\"#intrusive\"},{\"begin\":\"\\\\(\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.open.cs\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.close.cs\"}},\"patterns\":[{\"include\":\"#intrusive\"},{\"include\":\"#await-expression\"},{\"include\":\"#local-variable-declaration\"},{\"include\":\"#expression\"}]},{\"include\":\"#local-variable-declaration\"}]},\"var-pattern\":{\"begin\":\"\\\\b(var)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"storage.type.var.cs\"}},\"end\":\"(?=[]\\\\&),:;=?^|}]|!=|\\\\b(and|or|when)\\\\b)\",\"patterns\":[{\"include\":\"#designation-pattern\"}]},\"variable-initializer\":{\"begin\":\"(?<![!=])(=)(?![=>])\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.operator.assignment.cs\"}},\"end\":\"(?=[]),;}])\",\"patterns\":[{\"include\":\"#ref-modifier\"},{\"include\":\"#expression\"}]},\"verbatim-interpolated-string\":{\"begin\":\"(?:\\\\$@|@\\\\$)\\\"\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.cs\"}},\"end\":\"\\\"(?=[^\\\"])\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.cs\"}},\"name\":\"string.quoted.double.cs\",\"patterns\":[{\"include\":\"#verbatim-string-character-escape\"},{\"include\":\"#interpolation\"}]},\"verbatim-string-character-escape\":{\"match\":\"\\\"\\\"\",\"name\":\"constant.character.escape.cs\"},\"verbatim-string-literal\":{\"begin\":\"@\\\"\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.cs\"}},\"end\":\"\\\"(?=[^\\\"])\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.cs\"}},\"name\":\"string.quoted.double.cs\",\"patterns\":[{\"include\":\"#verbatim-string-character-escape\"}]},\"when-clause\":{\"begin\":\"(?<!\\\\.)\\\\b(when)\\\\b\\\\s*(\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.exception.when.cs\"},\"2\":{\"name\":\"punctuation.parenthesis.open.cs\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.close.cs\"}},\"patterns\":[{\"include\":\"#expression\"},{\"include\":\"#comment\"}]},\"where-clause\":{\"begin\":\"\\\\b(where)\\\\b\\\\s*\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.operator.expression.query.where.cs\"}},\"end\":\"(?=[);])\",\"patterns\":[{\"include\":\"#query-body\"},{\"include\":\"#expression\"}]},\"while-statement\":{\"begin\":\"(?<!\\\\.)\\\\b(while)\\\\b\\\\s*(?=\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.loop.while.cs\"}},\"end\":\"(?<=})|(?=;)\",\"patterns\":[{\"begin\":\"\\\\(\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.open.cs\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.close.cs\"}},\"patterns\":[{\"include\":\"#expression\"}]},{\"include\":\"#statement\"}]},\"with-expression\":{\"begin\":\"(?<!\\\\.)\\\\b(with)\\\\b\\\\s*(?=\\\\{|//|/\\\\*|$)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.operator.expression.with.cs\"}},\"end\":\"(?<=})\",\"patterns\":[{\"include\":\"#comment\"},{\"include\":\"#initializer-expression\"}]},\"xml-attribute\":{\"patterns\":[{\"captures\":{\"1\":{\"name\":\"entity.other.attribute-name.cs\"},\"2\":{\"name\":\"entity.other.attribute-name.namespace.cs\"},\"3\":{\"name\":\"punctuation.separator.colon.cs\"},\"4\":{\"name\":\"entity.other.attribute-name.localname.cs\"},\"5\":{\"name\":\"punctuation.separator.equals.cs\"}},\"match\":\"(?:^|\\\\s+)((?:([-_[:alnum:]]+)(:))?([-_[:alnum:]]+))(=)\"},{\"include\":\"#xml-string\"}]},\"xml-cdata\":{\"begin\":\"<!\\\\[CDATA\\\\[\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.cs\"}},\"end\":\"]]>\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.cs\"}},\"name\":\"string.unquoted.cdata.cs\"},\"xml-character-entity\":{\"patterns\":[{\"captures\":{\"1\":{\"name\":\"punctuation.definition.constant.cs\"},\"3\":{\"name\":\"punctuation.definition.constant.cs\"}},\"match\":\"(&)([:_[:alpha:]][-.:_[:alnum:]]*|#\\\\d+|#x\\\\h+)(;)\",\"name\":\"constant.character.entity.cs\"},{\"match\":\"&\",\"name\":\"invalid.illegal.bad-ampersand.cs\"}]},\"xml-comment\":{\"begin\":\"<!--\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.comment.cs\"}},\"end\":\"-->\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.comment.cs\"}},\"name\":\"comment.block.cs\"},\"xml-doc-comment\":{\"patterns\":[{\"include\":\"#xml-comment\"},{\"include\":\"#xml-character-entity\"},{\"include\":\"#xml-cdata\"},{\"include\":\"#xml-tag\"}]},\"xml-string\":{\"patterns\":[{\"begin\":\"'\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.cs\"}},\"end\":\"'\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.cs\"}},\"name\":\"string.quoted.single.cs\",\"patterns\":[{\"include\":\"#xml-character-entity\"}]},{\"begin\":\"\\\"\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.cs\"}},\"end\":\"\\\"\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.cs\"}},\"name\":\"string.quoted.double.cs\",\"patterns\":[{\"include\":\"#xml-character-entity\"}]}]},\"xml-tag\":{\"begin\":\"(</?)((?:([-_[:alnum:]]+)(:))?([-_[:alnum:]]+))\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.definition.tag.cs\"},\"2\":{\"name\":\"entity.name.tag.cs\"},\"3\":{\"name\":\"entity.name.tag.namespace.cs\"},\"4\":{\"name\":\"punctuation.separator.colon.cs\"},\"5\":{\"name\":\"entity.name.tag.localname.cs\"}},\"end\":\"(/?>)\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.definition.tag.cs\"}},\"name\":\"meta.tag.cs\",\"patterns\":[{\"include\":\"#xml-attribute\"}]},\"yield-break-statement\":{\"captures\":{\"1\":{\"name\":\"keyword.control.flow.yield.cs\"},\"2\":{\"name\":\"keyword.control.flow.break.cs\"}},\"match\":\"(?<!\\\\.)\\\\b(yield)\\\\b\\\\s*\\\\b(break)\\\\b\"},\"yield-return-statement\":{\"begin\":\"(?<!\\\\.)\\\\b(yield)\\\\b\\\\s*\\\\b(return)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.flow.yield.cs\"},\"2\":{\"name\":\"keyword.control.flow.return.cs\"}},\"end\":\"(?=[;}])\",\"patterns\":[{\"include\":\"#expression\"}]},\"yield-statement\":{\"patterns\":[{\"include\":\"#yield-return-statement\"},{\"include\":\"#yield-break-statement\"}]}},\"scopeName\":\"source.cs\",\"aliases\":[\"c#\",\"cs\"]}"))];
2
- //#endregion
3
- export { e as default };
1
+ var csharp_default = [Object.freeze(JSON.parse("{\"displayName\":\"C#\",\"name\":\"csharp\",\"patterns\":[{\"include\":\"#preprocessor\"},{\"include\":\"#comment\"},{\"include\":\"#directives\"},{\"include\":\"#declarations\"},{\"include\":\"#script-top-level\"}],\"repository\":{\"accessor-getter\":{\"patterns\":[{\"begin\":\"\\\\{\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.curlybrace.open.cs\"}},\"contentName\":\"meta.accessor.getter.cs\",\"end\":\"}\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.curlybrace.close.cs\"}},\"patterns\":[{\"include\":\"#statement\"}]},{\"include\":\"#accessor-getter-expression\"},{\"include\":\"#punctuation-semicolon\"}]},\"accessor-getter-expression\":{\"begin\":\"=>\",\"beginCaptures\":{\"0\":{\"name\":\"keyword.operator.arrow.cs\"}},\"contentName\":\"meta.accessor.getter.cs\",\"end\":\"(?=[;}])\",\"patterns\":[{\"include\":\"#ref-modifier\"},{\"include\":\"#expression\"}]},\"accessor-setter\":{\"patterns\":[{\"begin\":\"\\\\{\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.curlybrace.open.cs\"}},\"contentName\":\"meta.accessor.setter.cs\",\"end\":\"}\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.curlybrace.close.cs\"}},\"patterns\":[{\"include\":\"#statement\"}]},{\"begin\":\"=>\",\"beginCaptures\":{\"0\":{\"name\":\"keyword.operator.arrow.cs\"}},\"contentName\":\"meta.accessor.setter.cs\",\"end\":\"(?=[;}])\",\"patterns\":[{\"include\":\"#ref-modifier\"},{\"include\":\"#expression\"}]},{\"include\":\"#punctuation-semicolon\"}]},\"anonymous-method-expression\":{\"patterns\":[{\"begin\":\"((?:\\\\b(?:async|static)\\\\b\\\\s*)*)(?:(@?[_[:alpha:]][_[:alnum:]]*)\\\\b|(\\\\()(?<tuple>(?:[^()]|\\\\(\\\\g<tuple>\\\\))*)(\\\\)))\\\\s*(=>)\",\"beginCaptures\":{\"1\":{\"patterns\":[{\"match\":\"async|static\",\"name\":\"storage.modifier.$0.cs\"}]},\"2\":{\"name\":\"entity.name.variable.parameter.cs\"},\"3\":{\"name\":\"punctuation.parenthesis.open.cs\"},\"4\":{\"patterns\":[{\"include\":\"#comment\"},{\"include\":\"#explicit-anonymous-function-parameter\"},{\"include\":\"#implicit-anonymous-function-parameter\"},{\"include\":\"#default-argument\"},{\"include\":\"#punctuation-comma\"}]},\"5\":{\"name\":\"punctuation.parenthesis.close.cs\"},\"6\":{\"name\":\"keyword.operator.arrow.cs\"}},\"end\":\"(?=[),;}])\",\"patterns\":[{\"include\":\"#intrusive\"},{\"begin\":\"(?=\\\\{)\",\"end\":\"(?=[),;}])\",\"patterns\":[{\"include\":\"#block\"},{\"include\":\"#intrusive\"}]},{\"begin\":\"\\\\b(ref)\\\\b|(?=\\\\S)\",\"beginCaptures\":{\"1\":{\"name\":\"storage.modifier.ref.cs\"}},\"end\":\"(?=[),;}])\",\"patterns\":[{\"include\":\"#expression\"}]}]},{\"begin\":\"((?:\\\\b(?:async|static)\\\\b\\\\s*)*)\\\\b(delegate)\\\\b\\\\s*\",\"beginCaptures\":{\"1\":{\"patterns\":[{\"match\":\"async|static\",\"name\":\"storage.modifier.$0.cs\"}]},\"2\":{\"name\":\"storage.type.delegate.cs\"}},\"end\":\"(?<=})|(?=[),;}])\",\"patterns\":[{\"include\":\"#intrusive\"},{\"begin\":\"\\\\(\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.open.cs\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.close.cs\"}},\"patterns\":[{\"include\":\"#intrusive\"},{\"include\":\"#explicit-anonymous-function-parameter\"},{\"include\":\"#punctuation-comma\"}]},{\"include\":\"#block\"}]}]},\"anonymous-object-creation-expression\":{\"begin\":\"\\\\b(new)\\\\b\\\\s*(?=\\\\{|//|/\\\\*|$)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.operator.expression.new.cs\"}},\"end\":\"(?<=})\",\"patterns\":[{\"include\":\"#comment\"},{\"include\":\"#initializer-expression\"}]},\"argument\":{\"patterns\":[{\"match\":\"\\\\b(ref|in)\\\\b\",\"name\":\"storage.modifier.$1.cs\"},{\"begin\":\"\\\\b(out)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"storage.modifier.out.cs\"}},\"end\":\"(?=[]),])\",\"patterns\":[{\"include\":\"#declaration-expression-local\"},{\"include\":\"#expression\"}]},{\"include\":\"#expression\"}]},\"argument-list\":{\"begin\":\"\\\\(\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.open.cs\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.close.cs\"}},\"patterns\":[{\"include\":\"#named-argument\"},{\"include\":\"#argument\"},{\"include\":\"#punctuation-comma\"}]},\"array-creation-expression\":{\"begin\":\"\\\\b(new|stackalloc)\\\\b\\\\s*(?<type_name>(?:(?:(?<identifier>@?[_[:alpha:]][_[:alnum:]]*)\\\\s*::\\\\s*)?(?<name_and_type_args>\\\\g<identifier>\\\\s*(?<type_args>\\\\s*<(?:[^<>]|\\\\g<type_args>)+>\\\\s*)?)(?:\\\\s*\\\\.\\\\s*\\\\g<name_and_type_args>)*|(?<tuple>\\\\s*\\\\((?:[^()]|\\\\g<tuple>)+\\\\)))(?:\\\\s*\\\\*\\\\s*)*(?:\\\\s*\\\\?\\\\s*)?(?:\\\\s*\\\\[(?:\\\\s*,\\\\s*)*]\\\\s*\\\\??\\\\s*)*)?\\\\s*(?=\\\\[)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.operator.expression.$1.cs\"},\"2\":{\"patterns\":[{\"include\":\"#type\"}]}},\"end\":\"(?<=])\",\"patterns\":[{\"include\":\"#bracketed-argument-list\"}]},\"as-expression\":{\"captures\":{\"1\":{\"name\":\"keyword.operator.expression.as.cs\"},\"2\":{\"patterns\":[{\"include\":\"#type\"}]}},\"match\":\"(?<!\\\\.)\\\\b(as)\\\\b\\\\s*(?<type_name>(?:(?:(?<identifier>@?[_[:alpha:]][_[:alnum:]]*)\\\\s*::\\\\s*)?(?<name_and_type_args>\\\\g<identifier>\\\\s*(?<type_args>\\\\s*<(?:[^<>]|\\\\g<type_args>)+>\\\\s*)?)(?:\\\\s*\\\\.\\\\s*\\\\g<name_and_type_args>)*|(?<tuple>\\\\s*\\\\((?:[^()]|\\\\g<tuple>)+\\\\)))(?:\\\\s*\\\\?(?!\\\\?))?(?:\\\\s*\\\\[\\\\s*(?:,\\\\s*)*](?:\\\\s*\\\\?(?!\\\\?))?)*)?\"},\"assignment-expression\":{\"begin\":\"(?:[-%*+/]|\\\\?\\\\?|[\\\\&^]|<<|>>>?|\\\\|)?=(?![=>])\",\"beginCaptures\":{\"0\":{\"patterns\":[{\"include\":\"#assignment-operators\"}]}},\"end\":\"(?=[]),;}])\",\"patterns\":[{\"include\":\"#ref-modifier\"},{\"include\":\"#expression\"}]},\"assignment-operators\":{\"patterns\":[{\"match\":\"(?:[-%*+/]|\\\\?\\\\?)=\",\"name\":\"keyword.operator.assignment.compound.cs\"},{\"match\":\"(?:[\\\\&^]|<<|>>>?|\\\\|)=\",\"name\":\"keyword.operator.assignment.compound.bitwise.cs\"},{\"match\":\"=\",\"name\":\"keyword.operator.assignment.cs\"}]},\"attribute\":{\"patterns\":[{\"include\":\"#type-name\"},{\"include\":\"#type-arguments\"},{\"include\":\"#attribute-arguments\"}]},\"attribute-arguments\":{\"begin\":\"(\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.parenthesis.open.cs\"}},\"end\":\"(\\\\))\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.parenthesis.close.cs\"}},\"patterns\":[{\"include\":\"#attribute-named-argument\"},{\"include\":\"#expression\"},{\"include\":\"#punctuation-comma\"}]},\"attribute-named-argument\":{\"begin\":\"(@?[_[:alpha:]][_[:alnum:]]*)\\\\s*(?==)\",\"beginCaptures\":{\"1\":{\"name\":\"entity.name.variable.property.cs\"}},\"end\":\"(?=([),]))\",\"patterns\":[{\"include\":\"#operator-assignment\"},{\"include\":\"#expression\"}]},\"attribute-section\":{\"begin\":\"(\\\\[)(assembly|module|field|event|method|param|property|return|typevar|type)?(:)?\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.squarebracket.open.cs\"},\"2\":{\"name\":\"keyword.other.attribute-specifier.cs\"},\"3\":{\"name\":\"punctuation.separator.colon.cs\"}},\"end\":\"(])\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.squarebracket.close.cs\"}},\"patterns\":[{\"include\":\"#comment\"},{\"include\":\"#attribute\"},{\"include\":\"#punctuation-comma\"}]},\"await-expression\":{\"match\":\"(?<!\\\\.\\\\s*)\\\\b(await)\\\\b\",\"name\":\"keyword.operator.expression.await.cs\"},\"await-statement\":{\"begin\":\"(?<!\\\\.\\\\s*)\\\\b(await)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.operator.expression.await.cs\"}},\"end\":\"(?<=})|(?=[;}])\",\"patterns\":[{\"include\":\"#foreach-statement\"},{\"include\":\"#using-statement\"},{\"include\":\"#expression\"}]},\"base-class-constructor-call\":{\"begin\":\"(?:(@?[_[:alpha:]][_[:alnum:]]*)\\\\s*(\\\\.))*(@?[_[:alpha:]][_[:alnum:]]*)\\\\s*(<(?<type_args>[^()<>]|\\\\((?:[^()<>]|<[^()<>]*>|\\\\([^()<>]*\\\\))*\\\\)|<\\\\g<type_args>*>)*>\\\\s*)?(?=\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"entity.name.type.cs\"},\"2\":{\"name\":\"punctuation.accessor.cs\"},\"3\":{\"name\":\"entity.name.type.cs\"},\"4\":{\"patterns\":[{\"include\":\"#type-arguments\"}]}},\"end\":\"(?<=\\\\))\",\"patterns\":[{\"include\":\"#argument-list\"}]},\"base-types\":{\"begin\":\":\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.separator.colon.cs\"}},\"end\":\"(?=\\\\{|where|;)\",\"patterns\":[{\"include\":\"#base-class-constructor-call\"},{\"include\":\"#type\"},{\"include\":\"#punctuation-comma\"},{\"include\":\"#preprocessor\"}]},\"block\":{\"begin\":\"\\\\{\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.curlybrace.open.cs\"}},\"end\":\"}\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.curlybrace.close.cs\"}},\"patterns\":[{\"include\":\"#statement\"}]},\"boolean-literal\":{\"patterns\":[{\"match\":\"(?<!\\\\.)\\\\btrue\\\\b\",\"name\":\"constant.language.boolean.true.cs\"},{\"match\":\"(?<!\\\\.)\\\\bfalse\\\\b\",\"name\":\"constant.language.boolean.false.cs\"}]},\"bracketed-argument-list\":{\"begin\":\"\\\\[\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.squarebracket.open.cs\"}},\"end\":\"]\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.squarebracket.close.cs\"}},\"patterns\":[{\"include\":\"#named-argument\"},{\"include\":\"#argument\"},{\"include\":\"#punctuation-comma\"}]},\"bracketed-parameter-list\":{\"begin\":\"(?=(\\\\[))\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.squarebracket.open.cs\"}},\"end\":\"(?=(]))\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.squarebracket.close.cs\"}},\"patterns\":[{\"begin\":\"(?<=\\\\[)\",\"end\":\"(?=])\",\"patterns\":[{\"include\":\"#comment\"},{\"include\":\"#attribute-section\"},{\"include\":\"#parameter\"},{\"include\":\"#punctuation-comma\"},{\"include\":\"#variable-initializer\"}]}]},\"break-or-continue-statement\":{\"match\":\"(?<!\\\\.)\\\\b(break|continue)\\\\b\",\"name\":\"keyword.control.flow.$1.cs\"},\"case-guard\":{\"patterns\":[{\"include\":\"#parenthesized-expression\"},{\"include\":\"#expression\"}]},\"cast-expression\":{\"captures\":{\"1\":{\"name\":\"punctuation.parenthesis.open.cs\"},\"2\":{\"patterns\":[{\"include\":\"#type\"}]},\"7\":{\"name\":\"punctuation.parenthesis.close.cs\"}},\"match\":\"(\\\\()\\\\s*(?<type_name>(?:(?:(?<identifier>@?[_[:alpha:]][_[:alnum:]]*)\\\\s*::\\\\s*)?(?<name_and_type_args>\\\\g<identifier>\\\\s*(?<type_args>\\\\s*<(?:[^<>]|\\\\g<type_args>)+>\\\\s*)?)(?:\\\\s*\\\\.\\\\s*\\\\g<name_and_type_args>)*|(?<tuple>\\\\s*\\\\((?:[^()]|\\\\g<tuple>)+\\\\)))(?:\\\\s*\\\\?\\\\s*)?(?:\\\\s*\\\\[(?:\\\\s*,\\\\s*)*]\\\\s*\\\\??\\\\s*)*)\\\\s*(\\\\))(?=\\\\s*-*!*@?[(_[:alnum:]])\"},\"casted-constant-pattern\":{\"begin\":\"(\\\\()([.:@_\\\\s[:alnum:]]+)(\\\\))(?=[-!+~\\\\s]*@?[\\\"'(_[:alnum:]]+)\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.parenthesis.open.cs\"},\"2\":{\"patterns\":[{\"include\":\"#type-builtin\"},{\"include\":\"#type-name\"}]},\"3\":{\"name\":\"punctuation.parenthesis.close.cs\"}},\"end\":\"(?=[]\\\\&),:;=?^|}]|!=|\\\\b(and|or|when)\\\\b)\",\"patterns\":[{\"include\":\"#casted-constant-pattern\"},{\"begin\":\"\\\\(\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.open.cs\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.close.cs\"}},\"patterns\":[{\"include\":\"#constant-pattern\"}]},{\"include\":\"#constant-pattern\"},{\"captures\":{\"1\":{\"name\":\"entity.name.type.alias.cs\"},\"2\":{\"name\":\"punctuation.separator.coloncolon.cs\"}},\"match\":\"(@?[_[:alpha:]][_[:alnum:]]*)\\\\s*(::)\"},{\"captures\":{\"1\":{\"name\":\"entity.name.type.cs\"},\"2\":{\"name\":\"punctuation.accessor.cs\"}},\"match\":\"(@?[_[:alpha:]][_[:alnum:]]*)\\\\s*(\\\\.)\"},{\"match\":\"@?[_[:alpha:]][_[:alnum:]]*\",\"name\":\"variable.other.constant.cs\"}]},\"catch-clause\":{\"begin\":\"(?<!\\\\.)\\\\b(catch)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.exception.catch.cs\"}},\"end\":\"(?<=})\",\"patterns\":[{\"begin\":\"\\\\(\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.open.cs\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.close.cs\"}},\"patterns\":[{\"captures\":{\"1\":{\"patterns\":[{\"include\":\"#type\"}]},\"6\":{\"name\":\"entity.name.variable.local.cs\"}},\"match\":\"(?<type_name>(?:(?:(?<identifier>@?[_[:alpha:]][_[:alnum:]]*)\\\\s*::\\\\s*)?(?<name_and_type_args>\\\\g<identifier>\\\\s*(?<type_args>\\\\s*<(?:[^<>]|\\\\g<type_args>)+>\\\\s*)?)(?:\\\\s*\\\\.\\\\s*\\\\g<name_and_type_args>)*|(?<tuple>\\\\s*\\\\((?:[^()]|\\\\g<tuple>)+\\\\)))(?:\\\\s*\\\\?\\\\s*)?(?:\\\\s*\\\\[(?:\\\\s*,\\\\s*)*]\\\\s*\\\\??\\\\s*)*)\\\\s*(?:(\\\\g<identifier>)\\\\b)?\"}]},{\"include\":\"#when-clause\"},{\"include\":\"#comment\"},{\"include\":\"#block\"}]},\"char-character-escape\":{\"match\":\"\\\\\\\\(x\\\\h{1,4}|u\\\\h{4}|.)\",\"name\":\"constant.character.escape.cs\"},\"char-literal\":{\"begin\":\"'\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.char.begin.cs\"}},\"end\":\"(')|([^\\\\n\\\\\\\\])$\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.definition.char.end.cs\"},\"2\":{\"name\":\"invalid.illegal.newline.cs\"}},\"name\":\"string.quoted.single.cs\",\"patterns\":[{\"include\":\"#char-character-escape\"}]},\"class-declaration\":{\"begin\":\"(?=(\\\\brecord\\\\b\\\\s+)?\\\\bclass\\\\b)\",\"end\":\"(?<=})|(?=;)\",\"patterns\":[{\"begin\":\"(\\\\b(record)\\\\b\\\\s+)?\\\\b(class)\\\\b\\\\s+(@?[_[:alpha:]][_[:alnum:]]*)\\\\s*\",\"beginCaptures\":{\"2\":{\"name\":\"storage.type.record.cs\"},\"3\":{\"name\":\"storage.type.class.cs\"},\"4\":{\"name\":\"entity.name.type.class.cs\"}},\"end\":\"(?=\\\\{)|(?=;)\",\"patterns\":[{\"include\":\"#comment\"},{\"include\":\"#type-parameter-list\"},{\"include\":\"#parenthesized-parameter-list\"},{\"include\":\"#base-types\"},{\"include\":\"#generic-constraints\"}]},{\"begin\":\"\\\\{\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.curlybrace.open.cs\"}},\"end\":\"}\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.curlybrace.close.cs\"}},\"patterns\":[{\"include\":\"#class-or-struct-members\"}]},{\"include\":\"#preprocessor\"},{\"include\":\"#comment\"}]},\"class-or-struct-members\":{\"patterns\":[{\"include\":\"#preprocessor\"},{\"include\":\"#comment\"},{\"include\":\"#storage-modifier\"},{\"include\":\"#type-declarations\"},{\"include\":\"#constructor-declaration\"},{\"include\":\"#property-declaration\"},{\"include\":\"#fixed-size-buffer-declaration\"},{\"include\":\"#field-declaration\"},{\"include\":\"#event-declaration\"},{\"include\":\"#indexer-declaration\"},{\"include\":\"#variable-initializer\"},{\"include\":\"#destructor-declaration\"},{\"include\":\"#operator-declaration\"},{\"include\":\"#conversion-operator-declaration\"},{\"include\":\"#method-declaration\"},{\"include\":\"#attribute-section\"},{\"include\":\"#punctuation-semicolon\"}]},\"combinator-pattern\":{\"match\":\"\\\\b(and|or|not)\\\\b\",\"name\":\"keyword.operator.expression.pattern.combinator.$1.cs\"},\"comment\":{\"patterns\":[{\"begin\":\"(^\\\\s+)?(///)(?!/)\",\"captures\":{\"1\":{\"name\":\"punctuation.whitespace.comment.leading.cs\"},\"2\":{\"name\":\"punctuation.definition.comment.cs\"}},\"name\":\"comment.block.documentation.cs\",\"patterns\":[{\"include\":\"#xml-doc-comment\"}],\"while\":\"^(\\\\s*)(///)(?!/)\"},{\"begin\":\"(^\\\\s+)?(/\\\\*\\\\*)(?!/)\",\"captures\":{\"1\":{\"name\":\"punctuation.whitespace.comment.leading.cs\"},\"2\":{\"name\":\"punctuation.definition.comment.cs\"}},\"end\":\"(^\\\\s+)?(\\\\*/)\",\"name\":\"comment.block.documentation.cs\",\"patterns\":[{\"begin\":\"\\\\G(?=(?~\\\\*/)$)\",\"patterns\":[{\"include\":\"#xml-doc-comment\"}],\"while\":\"^(\\\\s*+)(\\\\*(?!/))?(?=(?~\\\\*/)$)\",\"whileCaptures\":{\"1\":{\"name\":\"punctuation.whitespace.comment.leading.cs\"},\"2\":{\"name\":\"punctuation.definition.comment.cs\"}}},{\"include\":\"#xml-doc-comment\"}]},{\"begin\":\"(^\\\\s+)?(//).*$\",\"captures\":{\"1\":{\"name\":\"punctuation.whitespace.comment.leading.cs\"},\"2\":{\"name\":\"punctuation.definition.comment.cs\"}},\"name\":\"comment.line.double-slash.cs\",\"while\":\"^(\\\\s*)(//).*$\"},{\"begin\":\"/\\\\*\",\"captures\":{\"0\":{\"name\":\"punctuation.definition.comment.cs\"}},\"end\":\"\\\\*/\",\"name\":\"comment.block.cs\"}]},\"conditional-operator\":{\"patterns\":[{\"match\":\"\\\\?(?!\\\\?|\\\\s*[.\\\\[])\",\"name\":\"keyword.operator.conditional.question-mark.cs\"},{\"match\":\":\",\"name\":\"keyword.operator.conditional.colon.cs\"}]},\"constant-pattern\":{\"patterns\":[{\"include\":\"#boolean-literal\"},{\"include\":\"#null-literal\"},{\"include\":\"#numeric-literal\"},{\"include\":\"#char-literal\"},{\"include\":\"#string-literal\"},{\"include\":\"#raw-string-literal\"},{\"include\":\"#verbatim-string-literal\"},{\"include\":\"#type-operator-expression\"},{\"include\":\"#expression-operator-expression\"},{\"include\":\"#expression-operators\"},{\"include\":\"#casted-constant-pattern\"}]},\"constructor-declaration\":{\"begin\":\"(@?[_[:alpha:]][_[:alnum:]]*)\\\\s*(?=\\\\(|$)\",\"beginCaptures\":{\"1\":{\"name\":\"entity.name.function.cs\"}},\"end\":\"(?<=})|(?=;)\",\"patterns\":[{\"begin\":\"(:)\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.separator.colon.cs\"}},\"end\":\"(?=\\\\{|=>)\",\"patterns\":[{\"include\":\"#constructor-initializer\"}]},{\"include\":\"#parenthesized-parameter-list\"},{\"include\":\"#preprocessor\"},{\"include\":\"#comment\"},{\"include\":\"#expression-body\"},{\"include\":\"#block\"}]},\"constructor-initializer\":{\"begin\":\"\\\\b(base|this)\\\\b\\\\s*(?=\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"variable.language.$1.cs\"}},\"end\":\"(?<=\\\\))\",\"patterns\":[{\"include\":\"#argument-list\"}]},\"context-control-paren-statement\":{\"patterns\":[{\"include\":\"#fixed-statement\"},{\"include\":\"#lock-statement\"},{\"include\":\"#using-statement\"}]},\"context-control-statement\":{\"match\":\"\\\\b(checked|unchecked|unsafe)\\\\b(?!\\\\s*[(@_[:alpha:]])\",\"name\":\"keyword.control.context.$1.cs\"},\"conversion-operator-declaration\":{\"begin\":\"\\\\b(?<explicit_or_implicit_keyword>(?:ex|im)plicit)\\\\s*\\\\b(?<operator_keyword>operator)\\\\s*(?<type_name>(?:ref\\\\s+(?:readonly\\\\s+)?)?(?:(?:(?<identifier>@?[_[:alpha:]][_[:alnum:]]*)\\\\s*::\\\\s*)?(?<name_and_type_args>\\\\g<identifier>\\\\s*(?<type_args>\\\\s*<(?:[^<>]|\\\\g<type_args>)+>\\\\s*)?)(?:\\\\s*\\\\.\\\\s*\\\\g<name_and_type_args>)*|(?<tuple>\\\\s*\\\\((?:[^()]|\\\\g<tuple>)+\\\\)))(?:\\\\s*\\\\?\\\\s*)?(?:\\\\s*\\\\[(?:\\\\s*,\\\\s*)*]\\\\s*\\\\??\\\\s*)*)\\\\s*(?=\\\\()\",\"beginCaptures\":{\"1\":{\"patterns\":[{\"captures\":{\"1\":{\"name\":\"storage.modifier.explicit.cs\"}},\"match\":\"\\\\b(explicit)\\\\b\"},{\"captures\":{\"1\":{\"name\":\"storage.modifier.implicit.cs\"}},\"match\":\"\\\\b(implicit)\\\\b\"}]},\"2\":{\"name\":\"storage.type.operator.cs\"},\"3\":{\"patterns\":[{\"include\":\"#type\"}]}},\"end\":\"(?<=})|(?=;)\",\"patterns\":[{\"include\":\"#comment\"},{\"include\":\"#parenthesized-parameter-list\"},{\"include\":\"#expression-body\"},{\"include\":\"#block\"}]},\"declaration-expression-local\":{\"captures\":{\"1\":{\"name\":\"storage.type.var.cs\"},\"2\":{\"patterns\":[{\"include\":\"#type\"}]},\"7\":{\"name\":\"entity.name.variable.local.cs\"}},\"match\":\"(?:\\\\b(var)\\\\b|(?<type_name>(?:(?:(?<identifier>@?[_[:alpha:]][_[:alnum:]]*)\\\\s*::\\\\s*)?(?<name_and_type_args>\\\\g<identifier>\\\\s*(?<type_args>\\\\s*<(?:[^<>]|\\\\g<type_args>)+>\\\\s*)?)(?:\\\\s*\\\\.\\\\s*\\\\g<name_and_type_args>)*|(?<tuple>\\\\s*\\\\((?:[^()]|\\\\g<tuple>)+\\\\)))(?:\\\\s*\\\\?\\\\s*)?(?:\\\\s*\\\\[(?:\\\\s*,\\\\s*)*]\\\\s*\\\\??\\\\s*)*))\\\\s+(\\\\g<identifier>)\\\\b\\\\s*(?=[]),])\"},\"declaration-expression-tuple\":{\"captures\":{\"1\":{\"name\":\"storage.type.var.cs\"},\"2\":{\"patterns\":[{\"include\":\"#type\"}]},\"7\":{\"name\":\"entity.name.variable.tuple-element.cs\"}},\"match\":\"(?:\\\\b(var)\\\\b|(?<type_name>(?:(?:(?<identifier>@?[_[:alpha:]][_[:alnum:]]*)\\\\s*::\\\\s*)?(?<name_and_type_args>\\\\g<identifier>\\\\s*(?<type_args>\\\\s*<(?:[^<>]|\\\\g<type_args>)+>\\\\s*)?)(?:\\\\s*\\\\.\\\\s*\\\\g<name_and_type_args>)*|(?<tuple>\\\\s*\\\\((?:[^()]|\\\\g<tuple>)+\\\\)))(?:\\\\s*\\\\?\\\\s*)?(?:\\\\s*\\\\[(?:\\\\s*,\\\\s*)*]\\\\s*\\\\??\\\\s*)*))\\\\s+(\\\\g<identifier>)\\\\b\\\\s*(?=[),])\"},\"declarations\":{\"patterns\":[{\"include\":\"#namespace-declaration\"},{\"include\":\"#type-declarations\"},{\"include\":\"#punctuation-semicolon\"}]},\"default-argument\":{\"begin\":\"=\",\"beginCaptures\":{\"0\":{\"name\":\"keyword.operator.assignment.cs\"}},\"end\":\"(?=[),])\",\"patterns\":[{\"include\":\"#expression\"}]},\"default-literal-expression\":{\"captures\":{\"1\":{\"name\":\"keyword.operator.expression.default.cs\"}},\"match\":\"\\\\b(default)\\\\b\"},\"delegate-declaration\":{\"begin\":\"\\\\b(delegate)\\\\b\\\\s+(?<type_name>(?:ref\\\\s+(?:readonly\\\\s+)?)?(?:(?:(?<identifier>@?[_[:alpha:]][_[:alnum:]]*)\\\\s*::\\\\s*)?(?<name_and_type_args>\\\\g<identifier>\\\\s*(?<type_args>\\\\s*<(?:[^<>]|\\\\g<type_args>)+>\\\\s*)?)(?:\\\\s*\\\\.\\\\s*\\\\g<name_and_type_args>)*|(?<tuple>\\\\s*\\\\((?:[^()]|\\\\g<tuple>)+\\\\)))(?:\\\\s*\\\\?\\\\s*)?(?:\\\\s*\\\\[(?:\\\\s*,\\\\s*)*]\\\\s*\\\\??\\\\s*)*)\\\\s+(\\\\g<identifier>)\\\\s*(<([^<>]+)>)?\\\\s*(?=\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"storage.type.delegate.cs\"},\"2\":{\"patterns\":[{\"include\":\"#type\"}]},\"7\":{\"name\":\"entity.name.type.delegate.cs\"},\"8\":{\"patterns\":[{\"include\":\"#type-parameter-list\"}]}},\"end\":\"(?=;)\",\"patterns\":[{\"include\":\"#comment\"},{\"include\":\"#parenthesized-parameter-list\"},{\"include\":\"#generic-constraints\"}]},\"designation-pattern\":{\"patterns\":[{\"include\":\"#intrusive\"},{\"begin\":\"\\\\(\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.open.cs\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.close.cs\"}},\"patterns\":[{\"include\":\"#punctuation-comma\"},{\"include\":\"#designation-pattern\"}]},{\"include\":\"#simple-designation-pattern\"}]},\"destructor-declaration\":{\"begin\":\"(~)(@?[_[:alpha:]][_[:alnum:]]*)\\\\s*(?=\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.tilde.cs\"},\"2\":{\"name\":\"entity.name.function.cs\"}},\"end\":\"(?<=})|(?=;)\",\"patterns\":[{\"include\":\"#comment\"},{\"include\":\"#parenthesized-parameter-list\"},{\"include\":\"#expression-body\"},{\"include\":\"#block\"}]},\"directives\":{\"patterns\":[{\"include\":\"#extern-alias-directive\"},{\"include\":\"#using-directive\"},{\"include\":\"#attribute-section\"},{\"include\":\"#punctuation-semicolon\"}]},\"discard-pattern\":{\"match\":\"_(?![_[:alnum:]])\",\"name\":\"variable.language.discard.cs\"},\"do-statement\":{\"begin\":\"(?<!\\\\.)\\\\b(do)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.loop.do.cs\"}},\"end\":\"(?=[;}])\",\"patterns\":[{\"include\":\"#statement\"}]},\"double-raw-interpolation\":{\"begin\":\"(?<=[^{][^{]|^)(\\\\{*)(\\\\{\\\\{)(?=[^{])\",\"beginCaptures\":{\"1\":{\"name\":\"string.quoted.double.cs\"},\"2\":{\"name\":\"punctuation.definition.interpolation.begin.cs\"}},\"end\":\"}}\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.interpolation.end.cs\"}},\"name\":\"meta.embedded.interpolation.cs\",\"patterns\":[{\"include\":\"#expression\"}]},\"element-access-expression\":{\"begin\":\"(?:(?:(\\\\?)\\\\s*)?(\\\\.)\\\\s*|(->)\\\\s*)?(?:(@?[_[:alpha:]][_[:alnum:]]*)\\\\s*)?(?:(\\\\?)\\\\s*)?(?=\\\\[)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.operator.null-conditional.cs\"},\"2\":{\"name\":\"punctuation.accessor.cs\"},\"3\":{\"name\":\"punctuation.accessor.pointer.cs\"},\"4\":{\"name\":\"variable.other.object.property.cs\"},\"5\":{\"name\":\"keyword.operator.null-conditional.cs\"}},\"end\":\"(?<=])(?!\\\\s*\\\\[)\",\"patterns\":[{\"include\":\"#bracketed-argument-list\"}]},\"else-part\":{\"begin\":\"(?<!\\\\.)\\\\b(else)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.conditional.else.cs\"}},\"end\":\"(?<=})|(?=;)\",\"patterns\":[{\"include\":\"#statement\"}]},\"enum-declaration\":{\"begin\":\"(?=\\\\benum\\\\b)\",\"end\":\"(?<=})|(?=;)\",\"patterns\":[{\"begin\":\"(?=enum)\",\"end\":\"(?=\\\\{)|(?=;)\",\"patterns\":[{\"include\":\"#comment\"},{\"captures\":{\"1\":{\"name\":\"storage.type.enum.cs\"},\"2\":{\"name\":\"entity.name.type.enum.cs\"}},\"match\":\"(enum)\\\\s+(@?[_[:alpha:]][_[:alnum:]]*)\"},{\"begin\":\":\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.separator.colon.cs\"}},\"end\":\"(?=\\\\{)\",\"patterns\":[{\"include\":\"#type\"}]}]},{\"begin\":\"\\\\{\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.curlybrace.open.cs\"}},\"end\":\"}\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.curlybrace.close.cs\"}},\"patterns\":[{\"include\":\"#preprocessor\"},{\"include\":\"#comment\"},{\"include\":\"#attribute-section\"},{\"include\":\"#punctuation-comma\"},{\"begin\":\"@?[_[:alpha:]][_[:alnum:]]*\",\"beginCaptures\":{\"0\":{\"name\":\"entity.name.variable.enum-member.cs\"}},\"end\":\"(?=([,}]))\",\"patterns\":[{\"include\":\"#comment\"},{\"include\":\"#variable-initializer\"}]}]},{\"include\":\"#preprocessor\"},{\"include\":\"#comment\"}]},\"event-accessors\":{\"begin\":\"\\\\{\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.curlybrace.open.cs\"}},\"end\":\"}\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.curlybrace.close.cs\"}},\"patterns\":[{\"include\":\"#comment\"},{\"include\":\"#attribute-section\"},{\"begin\":\"\\\\b(add|remove)\\\\b\\\\s*(?=[;{]|=>|//|/\\\\*|$)\",\"beginCaptures\":{\"1\":{\"name\":\"storage.type.accessor.$1.cs\"}},\"end\":\"(?<=[;}])|(?=})\",\"patterns\":[{\"include\":\"#accessor-setter\"}]}]},\"event-declaration\":{\"begin\":\"\\\\b(event)\\\\b\\\\s*(?<return_type>(?<type_name>(?:(?:(?<identifier>@?[_[:alpha:]][_[:alnum:]]*)\\\\s*::\\\\s*)?(?<name_and_type_args>\\\\g<identifier>\\\\s*(?<type_args>\\\\s*<(?:[^<>]|\\\\g<type_args>)+>\\\\s*)?)(?:\\\\s*\\\\.\\\\s*\\\\g<name_and_type_args>)*|(?<tuple>\\\\s*\\\\((?:[^()]|\\\\g<tuple>)+\\\\)))(?:\\\\s*\\\\?\\\\s*)?(?:\\\\s*\\\\[(?:\\\\s*,\\\\s*)*]\\\\s*\\\\??\\\\s*)*)\\\\s+)(?<interface_name>\\\\g<type_name>\\\\s*\\\\.\\\\s*)?(\\\\g<identifier>)\\\\s*(?=[,;={]|//|/\\\\*|$)\",\"beginCaptures\":{\"1\":{\"name\":\"storage.type.event.cs\"},\"2\":{\"patterns\":[{\"include\":\"#type\"}]},\"8\":{\"patterns\":[{\"include\":\"#type\"},{\"include\":\"#punctuation-accessor\"}]},\"9\":{\"name\":\"entity.name.variable.event.cs\"}},\"end\":\"(?<=})|(?=;)\",\"patterns\":[{\"include\":\"#comment\"},{\"include\":\"#event-accessors\"},{\"match\":\"@?[_[:alpha:]][_[:alnum:]]*\",\"name\":\"entity.name.variable.event.cs\"},{\"include\":\"#punctuation-comma\"},{\"begin\":\"=\",\"beginCaptures\":{\"0\":{\"name\":\"keyword.operator.assignment.cs\"}},\"end\":\"(?<=,)|(?=;)\",\"patterns\":[{\"include\":\"#expression\"},{\"include\":\"#punctuation-comma\"}]}]},\"explicit-anonymous-function-parameter\":{\"captures\":{\"1\":{\"name\":\"storage.modifier.$1.cs\"},\"2\":{\"patterns\":[{\"include\":\"#type\"}]},\"7\":{\"name\":\"entity.name.variable.parameter.cs\"}},\"match\":\"(?:\\\\b(ref|params|out|in)\\\\b\\\\s*)?(?<type_name>(?:(?:(?<identifier>@?[_[:alpha:]][_[:alnum:]]*)\\\\s*::\\\\s*)?(?<name_and_type_args>\\\\g<identifier>\\\\s*(?<type_args><(?:[^<>]|\\\\g<type_args>)*>\\\\s*)?)(?:\\\\s*\\\\.\\\\s*\\\\g<name_and_type_args>)*|(?<tuple>\\\\s*\\\\((?:[^()]|\\\\g<tuple>)*\\\\)))(?:\\\\s*\\\\?\\\\s*)?(?:\\\\s*\\\\[(?:\\\\s*,\\\\s*)*]\\\\s*\\\\??\\\\s*)*)\\\\s*\\\\b(\\\\g<identifier>)\\\\b\"},\"expression\":{\"patterns\":[{\"include\":\"#preprocessor\"},{\"include\":\"#comment\"},{\"include\":\"#expression-operator-expression\"},{\"include\":\"#type-operator-expression\"},{\"include\":\"#default-literal-expression\"},{\"include\":\"#throw-expression\"},{\"include\":\"#raw-interpolated-string\"},{\"include\":\"#interpolated-string\"},{\"include\":\"#verbatim-interpolated-string\"},{\"include\":\"#type-builtin\"},{\"include\":\"#language-variable\"},{\"include\":\"#switch-statement-or-expression\"},{\"include\":\"#with-expression\"},{\"include\":\"#conditional-operator\"},{\"include\":\"#assignment-expression\"},{\"include\":\"#expression-operators\"},{\"include\":\"#await-expression\"},{\"include\":\"#query-expression\"},{\"include\":\"#as-expression\"},{\"include\":\"#is-expression\"},{\"include\":\"#boolean-literal\"},{\"include\":\"#null-literal\"},{\"include\":\"#anonymous-method-expression\"},{\"include\":\"#object-creation-expression\"},{\"include\":\"#array-creation-expression\"},{\"include\":\"#anonymous-object-creation-expression\"},{\"include\":\"#invocation-expression\"},{\"include\":\"#member-access-expression\"},{\"include\":\"#element-access-expression\"},{\"include\":\"#cast-expression\"},{\"include\":\"#literal\"},{\"include\":\"#parenthesized-expression\"},{\"include\":\"#tuple-deconstruction-assignment\"},{\"include\":\"#initializer-expression\"},{\"include\":\"#identifier\"}]},\"expression-body\":{\"begin\":\"=>\",\"beginCaptures\":{\"0\":{\"name\":\"keyword.operator.arrow.cs\"}},\"end\":\"(?=[),;}])\",\"patterns\":[{\"include\":\"#ref-modifier\"},{\"include\":\"#expression\"}]},\"expression-operator-expression\":{\"begin\":\"\\\\b(checked|unchecked|nameof)\\\\s*(\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.operator.expression.$1.cs\"},\"2\":{\"name\":\"punctuation.parenthesis.open.cs\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.close.cs\"}},\"patterns\":[{\"include\":\"#expression\"}]},\"expression-operators\":{\"patterns\":[{\"match\":\"<<|>>>?\",\"name\":\"keyword.operator.bitwise.shift.cs\"},{\"match\":\"[!=]=\",\"name\":\"keyword.operator.comparison.cs\"},{\"match\":\"<=|>=|[<>]\",\"name\":\"keyword.operator.relational.cs\"},{\"match\":\"!|&&|\\\\|\\\\|\",\"name\":\"keyword.operator.logical.cs\"},{\"match\":\"[\\\\&^|~]\",\"name\":\"keyword.operator.bitwise.cs\"},{\"match\":\"--\",\"name\":\"keyword.operator.decrement.cs\"},{\"match\":\"\\\\+\\\\+\",\"name\":\"keyword.operator.increment.cs\"},{\"match\":\"\\\\+|-(?!>)|[%*/]\",\"name\":\"keyword.operator.arithmetic.cs\"},{\"match\":\"\\\\?\\\\?\",\"name\":\"keyword.operator.null-coalescing.cs\"},{\"match\":\"\\\\.\\\\.\",\"name\":\"keyword.operator.range.cs\"}]},\"extern-alias-directive\":{\"begin\":\"\\\\b(extern)\\\\s+(alias)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.other.directive.extern.cs\"},\"2\":{\"name\":\"keyword.other.directive.alias.cs\"}},\"end\":\"(?=;)\",\"patterns\":[{\"match\":\"@?[_[:alpha:]][_[:alnum:]]*\",\"name\":\"variable.other.alias.cs\"}]},\"field-declaration\":{\"begin\":\"(?<type_name>(?:(?:(?<identifier>@?[_[:alpha:]][_[:alnum:]]*)\\\\s*::\\\\s*)?(?<name_and_type_args>\\\\g<identifier>\\\\s*(?<type_args>\\\\s*<(?:[^<>]|\\\\g<type_args>)+>\\\\s*)?)(?:\\\\s*\\\\.\\\\s*\\\\g<name_and_type_args>)*|(?<tuple>\\\\s*\\\\((?:[^()]|\\\\g<tuple>)+\\\\)))(?:\\\\s*\\\\?\\\\s*)?(?:\\\\s*\\\\[(?:\\\\s*,\\\\s*)*]\\\\s*\\\\??\\\\s*)*)\\\\s+(\\\\g<identifier>)\\\\s*(?!=[=>])(?=[,;=]|$)\",\"beginCaptures\":{\"1\":{\"patterns\":[{\"include\":\"#type\"}]},\"6\":{\"name\":\"entity.name.variable.field.cs\"}},\"end\":\"(?=;)\",\"patterns\":[{\"match\":\"@?[_[:alpha:]][_[:alnum:]]*\",\"name\":\"entity.name.variable.field.cs\"},{\"include\":\"#punctuation-comma\"},{\"include\":\"#comment\"},{\"include\":\"#variable-initializer\"},{\"include\":\"#class-or-struct-members\"}]},\"finally-clause\":{\"begin\":\"(?<!\\\\.)\\\\b(finally)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.exception.finally.cs\"}},\"end\":\"(?<=})\",\"patterns\":[{\"include\":\"#comment\"},{\"include\":\"#block\"}]},\"fixed-size-buffer-declaration\":{\"begin\":\"\\\\b(fixed)\\\\b\\\\s+(?<type_name>(?:(?<identifier>@?[_[:alpha:]][_[:alnum:]]*)\\\\s*::\\\\s*)?(?<name_and_type_args>\\\\g<identifier>\\\\s*(?<type_args>\\\\s*<(?:[^<>]|\\\\g<type_args>)+>\\\\s*)?)(?:\\\\s*\\\\.\\\\s*\\\\g<name_and_type_args>)*)\\\\s+(\\\\g<identifier>)\\\\s*(?=\\\\[)\",\"beginCaptures\":{\"1\":{\"name\":\"storage.modifier.fixed.cs\"},\"2\":{\"patterns\":[{\"include\":\"#type\"}]},\"6\":{\"name\":\"entity.name.variable.field.cs\"}},\"end\":\"(?=;)\",\"patterns\":[{\"include\":\"#bracketed-argument-list\"},{\"include\":\"#comment\"}]},\"fixed-statement\":{\"begin\":\"\\\\b(fixed)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.context.fixed.cs\"}},\"end\":\"(?<=\\\\))|(?=[;}])\",\"patterns\":[{\"include\":\"#intrusive\"},{\"begin\":\"\\\\(\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.open.cs\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.close.cs\"}},\"patterns\":[{\"include\":\"#intrusive\"},{\"include\":\"#local-variable-declaration\"}]}]},\"for-statement\":{\"begin\":\"\\\\b(for)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.loop.for.cs\"}},\"end\":\"(?<=\\\\))|(?=[;}])\",\"patterns\":[{\"begin\":\"\\\\(\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.open.cs\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.close.cs\"}},\"patterns\":[{\"begin\":\"(?=[^);])\",\"end\":\"(?=[);])\",\"patterns\":[{\"include\":\"#intrusive\"},{\"include\":\"#local-variable-declaration\"},{\"include\":\"#local-tuple-var-deconstruction\"},{\"include\":\"#tuple-deconstruction-assignment\"},{\"include\":\"#expression\"}]},{\"begin\":\"(?=;)\",\"end\":\"(?=\\\\))\",\"patterns\":[{\"include\":\"#intrusive\"},{\"include\":\"#expression\"},{\"include\":\"#punctuation-comma\"},{\"include\":\"#punctuation-semicolon\"}]}]}]},\"foreach-statement\":{\"begin\":\"\\\\b(foreach)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.loop.foreach.cs\"}},\"end\":\"(?<=\\\\))|(?=[;}])\",\"patterns\":[{\"include\":\"#intrusive\"},{\"begin\":\"\\\\(\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.open.cs\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.close.cs\"}},\"patterns\":[{\"include\":\"#intrusive\"},{\"captures\":{\"1\":{\"name\":\"storage.modifier.ref.cs\"},\"2\":{\"name\":\"storage.type.var.cs\"},\"3\":{\"patterns\":[{\"include\":\"#type\"}]},\"8\":{\"name\":\"entity.name.variable.local.cs\"},\"9\":{\"name\":\"keyword.control.loop.in.cs\"}},\"match\":\"(?:(?:\\\\b(ref)\\\\s+)?\\\\b(var)\\\\b|(?<type_name>(?:ref\\\\s+)?(?:(?:(?<identifier>@?[_[:alpha:]][_[:alnum:]]*)\\\\s*::\\\\s*)?(?<name_and_type_args>\\\\g<identifier>\\\\s*(?<type_args>\\\\s*<(?:[^<>]|\\\\g<type_args>)+>\\\\s*)?)(?:\\\\s*\\\\.\\\\s*\\\\g<name_and_type_args>)*|(?<tuple>\\\\s*\\\\((?:[^()]|\\\\g<tuple>)+\\\\)))(?:\\\\s*\\\\?\\\\s*)?(?:\\\\s*\\\\[(?:\\\\s*,\\\\s*)*]\\\\s*\\\\??\\\\s*)*))\\\\s+(\\\\g<identifier>)\\\\s+\\\\b(in)\\\\b\"},{\"captures\":{\"1\":{\"name\":\"storage.type.var.cs\"},\"2\":{\"patterns\":[{\"include\":\"#tuple-declaration-deconstruction-element-list\"}]},\"3\":{\"name\":\"keyword.control.loop.in.cs\"}},\"match\":\"(?:\\\\b(var)\\\\b\\\\s*)?(?<tuple>\\\\((?:[^()]|\\\\g<tuple>)+\\\\))\\\\s+\\\\b(in)\\\\b\"},{\"include\":\"#expression\"}]}]},\"generic-constraints\":{\"begin\":\"(where)\\\\s+(@?[_[:alpha:]][_[:alnum:]]*)\\\\s*(:)\",\"beginCaptures\":{\"1\":{\"name\":\"storage.modifier.where.cs\"},\"2\":{\"name\":\"entity.name.type.type-parameter.cs\"},\"3\":{\"name\":\"punctuation.separator.colon.cs\"}},\"end\":\"(?=\\\\{|where|;|=>)\",\"patterns\":[{\"match\":\"\\\\bclass\\\\b\",\"name\":\"storage.type.class.cs\"},{\"match\":\"\\\\bstruct\\\\b\",\"name\":\"storage.type.struct.cs\"},{\"match\":\"\\\\bdefault\\\\b\",\"name\":\"keyword.other.constraint.default.cs\"},{\"match\":\"\\\\bnotnull\\\\b\",\"name\":\"keyword.other.constraint.notnull.cs\"},{\"match\":\"\\\\bunmanaged\\\\b\",\"name\":\"keyword.other.constraint.unmanaged.cs\"},{\"captures\":{\"1\":{\"name\":\"keyword.operator.expression.new.cs\"},\"2\":{\"name\":\"punctuation.parenthesis.open.cs\"},\"3\":{\"name\":\"punctuation.parenthesis.close.cs\"}},\"match\":\"(new)\\\\s*(\\\\()\\\\s*(\\\\))\"},{\"include\":\"#type\"},{\"include\":\"#punctuation-comma\"},{\"include\":\"#generic-constraints\"}]},\"goto-statement\":{\"begin\":\"(?<!\\\\.)\\\\b(goto)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.flow.goto.cs\"}},\"end\":\"(?=[;}])\",\"patterns\":[{\"begin\":\"\\\\b(case)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.conditional.case.cs\"}},\"end\":\"(?=[;}])\",\"patterns\":[{\"include\":\"#expression\"}]},{\"captures\":{\"1\":{\"name\":\"keyword.control.conditional.default.cs\"}},\"match\":\"\\\\b(default)\\\\b\"},{\"match\":\"@?[_[:alpha:]][_[:alnum:]]*\",\"name\":\"entity.name.label.cs\"}]},\"group-by\":{\"captures\":{\"1\":{\"name\":\"keyword.operator.expression.query.by.cs\"}},\"match\":\"\\\\b(by)\\\\b\\\\s*\"},\"group-clause\":{\"begin\":\"\\\\b(group)\\\\b\\\\s*\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.operator.expression.query.group.cs\"}},\"end\":\"(?=[);])\",\"patterns\":[{\"include\":\"#group-by\"},{\"include\":\"#group-into\"},{\"include\":\"#query-body\"},{\"include\":\"#expression\"}]},\"group-into\":{\"captures\":{\"1\":{\"name\":\"keyword.operator.expression.query.into.cs\"},\"2\":{\"name\":\"entity.name.variable.range-variable.cs\"}},\"match\":\"\\\\b(into)\\\\b\\\\s*(@?[_[:alpha:]][_[:alnum:]]*)\\\\b\\\\s*\"},\"identifier\":{\"match\":\"@?[_[:alpha:]][_[:alnum:]]*\",\"name\":\"variable.other.readwrite.cs\"},\"if-statement\":{\"begin\":\"(?<!\\\\.)\\\\b(if)\\\\b\\\\s*(?=\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.conditional.if.cs\"}},\"end\":\"(?<=})|(?=;)\",\"patterns\":[{\"begin\":\"\\\\(\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.open.cs\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.close.cs\"}},\"patterns\":[{\"include\":\"#expression\"}]},{\"include\":\"#statement\"}]},\"implicit-anonymous-function-parameter\":{\"match\":\"@?[_[:alpha:]][_[:alnum:]]*\\\\b\",\"name\":\"entity.name.variable.parameter.cs\"},\"indexer-declaration\":{\"begin\":\"(?<return_type>(?<type_name>(?:ref\\\\s+(?:readonly\\\\s+)?)?(?:(?:(?<identifier>@?[_[:alpha:]][_[:alnum:]]*)\\\\s*::\\\\s*)?(?<name_and_type_args>\\\\g<identifier>\\\\s*(?<type_args>\\\\s*<(?:[^<>]|\\\\g<type_args>)+>\\\\s*)?)(?:\\\\s*\\\\.\\\\s*\\\\g<name_and_type_args>)*|(?<tuple>\\\\s*\\\\((?:[^()]|\\\\g<tuple>)+\\\\)))(?:\\\\s*\\\\?\\\\s*)?(?:\\\\s*\\\\[(?:\\\\s*,\\\\s*)*]\\\\s*\\\\??\\\\s*)*)\\\\s+)(?<interface_name>\\\\g<type_name>\\\\s*\\\\.\\\\s*)?(?<indexer_name>this)\\\\s*(?=\\\\[)\",\"beginCaptures\":{\"1\":{\"patterns\":[{\"include\":\"#type\"}]},\"7\":{\"patterns\":[{\"include\":\"#type\"},{\"include\":\"#punctuation-accessor\"}]},\"8\":{\"name\":\"variable.language.this.cs\"}},\"end\":\"(?<=})|(?=;)\",\"patterns\":[{\"include\":\"#comment\"},{\"include\":\"#bracketed-parameter-list\"},{\"include\":\"#property-accessors\"},{\"include\":\"#accessor-getter-expression\"},{\"include\":\"#variable-initializer\"}]},\"initializer-expression\":{\"begin\":\"\\\\{\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.curlybrace.open.cs\"}},\"end\":\"}\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.curlybrace.close.cs\"}},\"patterns\":[{\"include\":\"#expression\"},{\"include\":\"#punctuation-comma\"}]},\"interface-declaration\":{\"begin\":\"(?=\\\\binterface\\\\b)\",\"end\":\"(?<=})|(?=;)\",\"patterns\":[{\"begin\":\"(interface)\\\\b\\\\s+(@?[_[:alpha:]][_[:alnum:]]*)\",\"beginCaptures\":{\"1\":{\"name\":\"storage.type.interface.cs\"},\"2\":{\"name\":\"entity.name.type.interface.cs\"}},\"end\":\"(?=\\\\{)|(?=;)\",\"patterns\":[{\"include\":\"#comment\"},{\"include\":\"#type-parameter-list\"},{\"include\":\"#base-types\"},{\"include\":\"#generic-constraints\"}]},{\"begin\":\"\\\\{\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.curlybrace.open.cs\"}},\"end\":\"}\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.curlybrace.close.cs\"}},\"patterns\":[{\"include\":\"#interface-members\"}]},{\"include\":\"#preprocessor\"},{\"include\":\"#comment\"}]},\"interface-members\":{\"patterns\":[{\"include\":\"#preprocessor\"},{\"include\":\"#comment\"},{\"include\":\"#storage-modifier\"},{\"include\":\"#property-declaration\"},{\"include\":\"#event-declaration\"},{\"include\":\"#indexer-declaration\"},{\"include\":\"#method-declaration\"},{\"include\":\"#operator-declaration\"},{\"include\":\"#attribute-section\"},{\"include\":\"#punctuation-semicolon\"}]},\"interpolated-string\":{\"begin\":\"\\\\$\\\"\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.cs\"}},\"end\":\"(\\\")|([^\\\\n\\\\\\\\])$\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.definition.string.end.cs\"},\"2\":{\"name\":\"invalid.illegal.newline.cs\"}},\"name\":\"string.quoted.double.cs\",\"patterns\":[{\"include\":\"#string-character-escape\"},{\"include\":\"#interpolation\"}]},\"interpolation\":{\"begin\":\"(?<=[^{]|^)((?:\\\\{\\\\{)*)(\\\\{)(?=[^{])\",\"beginCaptures\":{\"1\":{\"name\":\"string.quoted.double.cs\"},\"2\":{\"name\":\"punctuation.definition.interpolation.begin.cs\"}},\"end\":\"}\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.interpolation.end.cs\"}},\"name\":\"meta.embedded.interpolation.cs\",\"patterns\":[{\"include\":\"#expression\"}]},\"intrusive\":{\"patterns\":[{\"include\":\"#preprocessor\"},{\"include\":\"#comment\"}]},\"invocation-expression\":{\"begin\":\"(?:(?:(\\\\?)\\\\s*)?(\\\\.)\\\\s*|(->)\\\\s*)?(@?[_[:alpha:]][_[:alnum:]]*)\\\\s*(<(?<type_args>[^()<>]|\\\\((?:[^()<>]|<[^()<>]*>|\\\\([^()<>]*\\\\))*\\\\)|<\\\\g<type_args>*>)*>\\\\s*)?(?=\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.operator.null-conditional.cs\"},\"2\":{\"name\":\"punctuation.accessor.cs\"},\"3\":{\"name\":\"punctuation.accessor.pointer.cs\"},\"4\":{\"name\":\"entity.name.function.cs\"},\"5\":{\"patterns\":[{\"include\":\"#type-arguments\"}]}},\"end\":\"(?<=\\\\))\",\"patterns\":[{\"include\":\"#argument-list\"}]},\"is-expression\":{\"begin\":\"(?<!\\\\.)\\\\b(is)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.operator.expression.pattern.is.cs\"}},\"end\":\"(?=[]\\\\&),:;=?^|}]|!=)\",\"patterns\":[{\"include\":\"#pattern\"}]},\"join-clause\":{\"begin\":\"\\\\b(join)\\\\b\\\\s*(?<type_name>(?:(?:(?<identifier>@?[_[:alpha:]][_[:alnum:]]*)\\\\s*::\\\\s*)?(?<name_and_type_args>\\\\g<identifier>\\\\s*(?<type_args>\\\\s*<(?:[^<>]|\\\\g<type_args>)+>\\\\s*)?)(?:\\\\s*\\\\.\\\\s*\\\\g<name_and_type_args>)*|(?<tuple>\\\\s*\\\\((?:[^()]|\\\\g<tuple>)+\\\\)))(?:\\\\s*\\\\?\\\\s*)?(?:\\\\s*\\\\[(?:\\\\s*,\\\\s*)*]\\\\s*\\\\??\\\\s*)*)?\\\\s+(\\\\g<identifier>)\\\\b\\\\s*\\\\b(in)\\\\b\\\\s*\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.operator.expression.query.join.cs\"},\"2\":{\"patterns\":[{\"include\":\"#type\"}]},\"7\":{\"name\":\"entity.name.variable.range-variable.cs\"},\"8\":{\"name\":\"keyword.operator.expression.query.in.cs\"}},\"end\":\"(?=[);])\",\"patterns\":[{\"include\":\"#join-on\"},{\"include\":\"#join-equals\"},{\"include\":\"#join-into\"},{\"include\":\"#query-body\"},{\"include\":\"#expression\"}]},\"join-equals\":{\"captures\":{\"1\":{\"name\":\"keyword.operator.expression.query.equals.cs\"}},\"match\":\"\\\\b(equals)\\\\b\\\\s*\"},\"join-into\":{\"captures\":{\"1\":{\"name\":\"keyword.operator.expression.query.into.cs\"},\"2\":{\"name\":\"entity.name.variable.range-variable.cs\"}},\"match\":\"\\\\b(into)\\\\b\\\\s*(@?[_[:alpha:]][_[:alnum:]]*)\\\\b\\\\s*\"},\"join-on\":{\"captures\":{\"1\":{\"name\":\"keyword.operator.expression.query.on.cs\"}},\"match\":\"\\\\b(on)\\\\b\\\\s*\"},\"labeled-statement\":{\"captures\":{\"1\":{\"name\":\"entity.name.label.cs\"},\"2\":{\"name\":\"punctuation.separator.colon.cs\"}},\"match\":\"(@?[_[:alpha:]][_[:alnum:]]*)\\\\s*(:)\"},\"language-variable\":{\"patterns\":[{\"match\":\"\\\\b(base|this)\\\\b\",\"name\":\"variable.language.$1.cs\"},{\"match\":\"\\\\b(value)\\\\b\",\"name\":\"variable.other.$1.cs\"}]},\"let-clause\":{\"begin\":\"\\\\b(let)\\\\b\\\\s*(@?[_[:alpha:]][_[:alnum:]]*)\\\\b\\\\s*(=)\\\\s*\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.operator.expression.query.let.cs\"},\"2\":{\"name\":\"entity.name.variable.range-variable.cs\"},\"3\":{\"name\":\"keyword.operator.assignment.cs\"}},\"end\":\"(?=[);])\",\"patterns\":[{\"include\":\"#query-body\"},{\"include\":\"#expression\"}]},\"list-pattern\":{\"begin\":\"(?=\\\\[)\",\"end\":\"(?=[]\\\\&),:;=?^|}]|!=|\\\\b(and|or|when)\\\\b)\",\"patterns\":[{\"begin\":\"\\\\[\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.squarebracket.open.cs\"}},\"end\":\"]\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.squarebracket.close.cs\"}},\"patterns\":[{\"include\":\"#pattern\"},{\"include\":\"#punctuation-comma\"}]},{\"begin\":\"(?<=])\",\"end\":\"(?=[]\\\\&),:;=?^|}]|!=|\\\\b(and|or|when)\\\\b)\",\"patterns\":[{\"include\":\"#intrusive\"},{\"include\":\"#simple-designation-pattern\"}]}]},\"literal\":{\"patterns\":[{\"include\":\"#boolean-literal\"},{\"include\":\"#null-literal\"},{\"include\":\"#numeric-literal\"},{\"include\":\"#char-literal\"},{\"include\":\"#raw-string-literal\"},{\"include\":\"#string-literal\"},{\"include\":\"#verbatim-string-literal\"},{\"include\":\"#tuple-literal\"}]},\"local-constant-declaration\":{\"begin\":\"\\\\b(?<const_keyword>const)\\\\b\\\\s*(?<type_name>(?:(?:(?<identifier>@?[_[:alpha:]][_[:alnum:]]*)\\\\s*::\\\\s*)?(?<name_and_type_args>\\\\g<identifier>\\\\s*(?<type_args>\\\\s*<(?:[^<>]|\\\\g<type_args>)+>\\\\s*)?)(?:\\\\s*\\\\.\\\\s*\\\\g<name_and_type_args>)*|(?<tuple>\\\\s*\\\\((?:[^()]|\\\\g<tuple>)+\\\\)))(?:\\\\s*\\\\?\\\\s*)?(?:\\\\s*\\\\[(?:\\\\s*,\\\\s*)*]\\\\s*\\\\??\\\\s*)*)\\\\s+(\\\\g<identifier>)\\\\s*(?=[,;=])\",\"beginCaptures\":{\"1\":{\"name\":\"storage.modifier.const.cs\"},\"2\":{\"patterns\":[{\"include\":\"#type\"}]},\"7\":{\"name\":\"entity.name.variable.local.cs\"}},\"end\":\"(?=;)\",\"patterns\":[{\"match\":\"@?[_[:alpha:]][_[:alnum:]]*\",\"name\":\"entity.name.variable.local.cs\"},{\"include\":\"#punctuation-comma\"},{\"include\":\"#comment\"},{\"include\":\"#variable-initializer\"}]},\"local-declaration\":{\"patterns\":[{\"include\":\"#local-constant-declaration\"},{\"include\":\"#local-variable-declaration\"},{\"include\":\"#local-function-declaration\"},{\"include\":\"#local-tuple-var-deconstruction\"},{\"include\":\"#local-tuple-declaration-deconstruction\"}]},\"local-function-declaration\":{\"begin\":\"\\\\b((?:(?:async|unsafe|static|extern)\\\\s+)*)(?<type_name>(?:ref\\\\s+(?:readonly\\\\s+)?)?(?:(?:(?<identifier>@?[_[:alpha:]][_[:alnum:]]*)\\\\s*::\\\\s*)?(?<name_and_type_args>\\\\g<identifier>\\\\s*(?<type_args>\\\\s*<(?:[^<>]|\\\\g<type_args>)+>\\\\s*)?)(?:\\\\s*\\\\.\\\\s*\\\\g<name_and_type_args>)*|(?<tuple>\\\\s*\\\\((?:[^()]|\\\\g<tuple>)+\\\\)))(?:\\\\s*\\\\?)?(?:\\\\s*\\\\[\\\\s*(?:,\\\\s*)*](?:\\\\s*\\\\?)?)*)\\\\s+(\\\\g<identifier>)\\\\s*(<[^<>]+>)?\\\\s*(?=\\\\()\",\"beginCaptures\":{\"1\":{\"patterns\":[{\"include\":\"#storage-modifier\"}]},\"2\":{\"patterns\":[{\"include\":\"#type\"}]},\"7\":{\"name\":\"entity.name.function.cs\"},\"8\":{\"patterns\":[{\"include\":\"#type-parameter-list\"}]}},\"end\":\"(?<=})|(?=;)\",\"patterns\":[{\"include\":\"#comment\"},{\"include\":\"#parenthesized-parameter-list\"},{\"include\":\"#generic-constraints\"},{\"include\":\"#expression-body\"},{\"include\":\"#block\"}]},\"local-tuple-declaration-deconstruction\":{\"captures\":{\"1\":{\"patterns\":[{\"include\":\"#tuple-declaration-deconstruction-element-list\"}]}},\"match\":\"(?<tuple>\\\\((?:[^()]|\\\\g<tuple>)+\\\\))\\\\s*(?!=[=>])(?==)\"},\"local-tuple-var-deconstruction\":{\"begin\":\"\\\\b(var)\\\\b\\\\s*(?<tuple>\\\\((?:[^()]|\\\\g<tuple>)+\\\\))\\\\s*(?=[);=])\",\"beginCaptures\":{\"1\":{\"name\":\"storage.type.var.cs\"},\"2\":{\"patterns\":[{\"include\":\"#tuple-declaration-deconstruction-element-list\"}]}},\"end\":\"(?=[);])\",\"patterns\":[{\"include\":\"#comment\"},{\"include\":\"#variable-initializer\"}]},\"local-variable-declaration\":{\"begin\":\"(?:(?:\\\\b(ref)\\\\s+(?:\\\\b(readonly)\\\\s+)?)?\\\\b(var)\\\\b|(?<type_name>(?:ref\\\\s+(?:readonly\\\\s+)?)?(?:(?:(?<identifier>@?[_[:alpha:]][_[:alnum:]]*)\\\\s*::\\\\s*)?(?<name_and_type_args>\\\\g<identifier>\\\\s*(?<type_args>\\\\s*<(?:[^<>]|\\\\g<type_args>)+>\\\\s*)?)(?:\\\\s*\\\\.\\\\s*\\\\g<name_and_type_args>)*|(?<tuple>\\\\s*\\\\((?:[^()]|\\\\g<tuple>)+\\\\)))(?:\\\\s*\\\\*\\\\s*)*(?:\\\\s*\\\\?\\\\s*)?(?:\\\\s*\\\\[(?:\\\\s*,\\\\s*)*]\\\\s*\\\\??\\\\s*)*))\\\\s+(\\\\g<identifier>)\\\\s*(?!=>)(?=[),;=])\",\"beginCaptures\":{\"1\":{\"name\":\"storage.modifier.ref.cs\"},\"2\":{\"name\":\"storage.modifier.readonly.cs\"},\"3\":{\"name\":\"storage.type.var.cs\"},\"4\":{\"patterns\":[{\"include\":\"#type\"}]},\"9\":{\"name\":\"entity.name.variable.local.cs\"}},\"end\":\"(?=[);}])\",\"patterns\":[{\"match\":\"@?[_[:alpha:]][_[:alnum:]]*\",\"name\":\"entity.name.variable.local.cs\"},{\"include\":\"#punctuation-comma\"},{\"include\":\"#comment\"},{\"include\":\"#variable-initializer\"}]},\"lock-statement\":{\"begin\":\"\\\\b(lock)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.context.lock.cs\"}},\"end\":\"(?<=\\\\))|(?=[;}])\",\"patterns\":[{\"include\":\"#intrusive\"},{\"begin\":\"\\\\(\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.open.cs\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.close.cs\"}},\"patterns\":[{\"include\":\"#intrusive\"},{\"include\":\"#expression\"}]}]},\"member-access-expression\":{\"patterns\":[{\"captures\":{\"1\":{\"name\":\"keyword.operator.null-conditional.cs\"},\"2\":{\"name\":\"punctuation.accessor.cs\"},\"3\":{\"name\":\"punctuation.accessor.pointer.cs\"},\"4\":{\"name\":\"variable.other.object.property.cs\"}},\"match\":\"(?:(?:(\\\\?)\\\\s*)?(\\\\.)\\\\s*|(->)\\\\s*)(@?[_[:alpha:]][_[:alnum:]]*)\\\\s*(?![(_[:alnum:]]|(\\\\?)?\\\\[|<)\"},{\"captures\":{\"1\":{\"name\":\"punctuation.accessor.cs\"},\"2\":{\"name\":\"variable.other.object.cs\"},\"3\":{\"patterns\":[{\"include\":\"#type-arguments\"}]}},\"match\":\"(\\\\.)?\\\\s*(@?[_[:alpha:]][_[:alnum:]]*)(?<type_params>\\\\s*<([^<>]|\\\\g<type_params>)+>\\\\s*)(?=(\\\\s*\\\\?)?\\\\s*\\\\.\\\\s*@?[_[:alpha:]][_[:alnum:]]*)\"},{\"captures\":{\"1\":{\"name\":\"variable.other.object.cs\"}},\"match\":\"(@?[_[:alpha:]][_[:alnum:]]*)(?=\\\\s*(?:(?:\\\\?\\\\s*)?\\\\.|->)\\\\s*@?[_[:alpha:]][_[:alnum:]]*)\"}]},\"method-declaration\":{\"begin\":\"(?<return_type>(?<type_name>(?:ref\\\\s+(?:readonly\\\\s+)?)?(?:(?:(?<identifier>@?[_[:alpha:]][_[:alnum:]]*)\\\\s*::\\\\s*)?(?<name_and_type_args>\\\\g<identifier>\\\\s*(?<type_args>\\\\s*<(?:[^<>]|\\\\g<type_args>)+>\\\\s*)?)(?:\\\\s*\\\\.\\\\s*\\\\g<name_and_type_args>)*|(?<tuple>\\\\s*\\\\((?:[^()]|\\\\g<tuple>)+\\\\)))(?:\\\\s*\\\\?\\\\s*)?(?:\\\\s*\\\\[(?:\\\\s*,\\\\s*)*]\\\\s*\\\\??\\\\s*)*)\\\\s+)(?<interface_name>\\\\g<type_name>\\\\s*\\\\.\\\\s*)?(\\\\g<identifier>)\\\\s*(<([^<>]+)>)?\\\\s*(?=\\\\()\",\"beginCaptures\":{\"1\":{\"patterns\":[{\"include\":\"#type\"}]},\"7\":{\"patterns\":[{\"include\":\"#type\"},{\"include\":\"#punctuation-accessor\"}]},\"8\":{\"name\":\"entity.name.function.cs\"},\"9\":{\"patterns\":[{\"include\":\"#type-parameter-list\"}]}},\"end\":\"(?<=})|(?=;)\",\"patterns\":[{\"include\":\"#comment\"},{\"include\":\"#parenthesized-parameter-list\"},{\"include\":\"#generic-constraints\"},{\"include\":\"#expression-body\"},{\"include\":\"#block\"}]},\"named-argument\":{\"begin\":\"(@?[_[:alpha:]][_[:alnum:]]*)\\\\s*(:)\",\"beginCaptures\":{\"1\":{\"name\":\"entity.name.variable.parameter.cs\"},\"2\":{\"name\":\"punctuation.separator.colon.cs\"}},\"end\":\"(?=([]),]))\",\"patterns\":[{\"include\":\"#argument\"}]},\"namespace-declaration\":{\"begin\":\"\\\\b(namespace)\\\\s+\",\"beginCaptures\":{\"1\":{\"name\":\"storage.type.namespace.cs\"}},\"end\":\"(?<=})|(?=;)\",\"patterns\":[{\"include\":\"#comment\"},{\"match\":\"@?[_[:alpha:]][_[:alnum:]]*\",\"name\":\"entity.name.type.namespace.cs\"},{\"include\":\"#punctuation-accessor\"},{\"begin\":\"\\\\{\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.curlybrace.open.cs\"}},\"end\":\"}\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.curlybrace.close.cs\"}},\"patterns\":[{\"include\":\"#declarations\"},{\"include\":\"#using-directive\"},{\"include\":\"#punctuation-semicolon\"}]}]},\"null-literal\":{\"match\":\"(?<!\\\\.)\\\\bnull\\\\b\",\"name\":\"constant.language.null.cs\"},\"numeric-literal\":{\"captures\":{\"0\":{\"patterns\":[{\"begin\":\"(?=.)\",\"end\":\"$\",\"patterns\":[{\"captures\":{\"2\":{\"name\":\"constant.numeric.decimal.cs\",\"patterns\":[{\"match\":\"(?<=\\\\h)_(?=\\\\h)\",\"name\":\"constant.numeric.other.separator.thousands.cs\"}]},\"3\":{\"name\":\"constant.numeric.other.separator.thousands.cs\"},\"4\":{\"name\":\"constant.numeric.other.separator.decimals.cs\"},\"5\":{\"name\":\"constant.numeric.decimal.cs\",\"patterns\":[{\"match\":\"(?<=\\\\h)_(?=\\\\h)\",\"name\":\"constant.numeric.other.separator.thousands.cs\"}]},\"6\":{\"name\":\"constant.numeric.other.separator.thousands.cs\"},\"8\":{\"name\":\"constant.numeric.other.exponent.cs\"},\"9\":{\"name\":\"keyword.operator.arithmetic.cs\"},\"10\":{\"name\":\"keyword.operator.arithmetic.cs\"},\"11\":{\"name\":\"constant.numeric.decimal.cs\",\"patterns\":[{\"match\":\"(?<=\\\\h)_(?=\\\\h)\",\"name\":\"constant.numeric.other.separator.thousands.cs\"}]},\"12\":{\"name\":\"constant.numeric.other.suffix.cs\"}},\"match\":\"\\\\G((?=[.0-9])(?!0[BXbx]))([0-9](?:[0-9]|((?<=\\\\h)_(?=\\\\h)))*)?((?<=[0-9])|\\\\.(?=[0-9]))([0-9](?:[0-9]|((?<=\\\\h)_(?=\\\\h)))*)?((?<!_)([Ee])(\\\\+?)(-?)([0-9](?:[0-9]|(?<=\\\\h)_(?=\\\\h))*))?([DFMdfm](?!\\\\w))?$\"},{\"captures\":{\"1\":{\"name\":\"constant.numeric.other.preffix.binary.cs\"},\"2\":{\"name\":\"constant.numeric.binary.cs\",\"patterns\":[{\"match\":\"(?<=\\\\h)_(?=\\\\h)\",\"name\":\"constant.numeric.other.separator.thousands.cs\"}]},\"3\":{\"name\":\"constant.numeric.other.separator.thousands.cs\"},\"4\":{\"name\":\"constant.numeric.other.suffix.cs\"}},\"match\":\"\\\\G(0[Bb])([01_](?:[01_]|((?<=\\\\h)_(?=\\\\h)))*)((?:(?:(?:(?:(?:[Uu]|[Uu]l)|[Uu]L)|l[Uu]?)|L[Uu]?)|[DFMdfm])(?!\\\\w))?$\"},{\"captures\":{\"1\":{\"name\":\"constant.numeric.other.preffix.hex.cs\"},\"2\":{\"name\":\"constant.numeric.hex.cs\",\"patterns\":[{\"match\":\"(?<=\\\\h)_(?=\\\\h)\",\"name\":\"constant.numeric.other.separator.thousands.cs\"}]},\"3\":{\"name\":\"constant.numeric.other.separator.thousands.cs\"},\"4\":{\"name\":\"constant.numeric.other.suffix.cs\"}},\"match\":\"\\\\G(0[Xx])(\\\\h(?:\\\\h|((?<=\\\\h)_(?=\\\\h)))*)((?:(?:(?:(?:(?:[Uu]|[Uu]l)|[Uu]L)|l[Uu]?)|L[Uu]?)|[DFMdfm])(?!\\\\w))?$\"},{\"captures\":{\"2\":{\"name\":\"constant.numeric.decimal.cs\",\"patterns\":[{\"match\":\"(?<=\\\\h)_(?=\\\\h)\",\"name\":\"constant.numeric.other.separator.thousands.cs\"}]},\"3\":{\"name\":\"constant.numeric.other.separator.thousands.cs\"},\"5\":{\"name\":\"constant.numeric.other.exponent.cs\"},\"6\":{\"name\":\"keyword.operator.arithmetic.cs\"},\"7\":{\"name\":\"keyword.operator.arithmetic.cs\"},\"8\":{\"name\":\"constant.numeric.decimal.cs\",\"patterns\":[{\"match\":\"(?<=\\\\h)_(?=\\\\h)\",\"name\":\"constant.numeric.other.separator.thousands.cs\"}]},\"9\":{\"name\":\"constant.numeric.other.suffix.cs\"}},\"match\":\"\\\\G((?=[.0-9])(?!0[BXbx]))([0-9](?:[0-9]|((?<=\\\\h)_(?=\\\\h)))*)((?<!_)([Ee])(\\\\+?)(-?)([0-9](?:[0-9]|(?<=\\\\h)_(?=\\\\h))*))?((?:(?:(?:(?:(?:[Uu]|[Uu]l)|[Uu]L)|l[Uu]?)|L[Uu]?)|[DFMdfm])(?!\\\\w))?$\"},{\"match\":\"(?:[0-9A-Z_a-z]|(?<=[Ee])[-+]|\\\\.\\\\d)+\",\"name\":\"invalid.illegal.constant.numeric.cs\"}]}]}},\"match\":\"(?<!\\\\w)\\\\.?\\\\d(?:[0-9A-Z_a-z]|(?<=[Ee])[-+]|\\\\.\\\\d)*\"},\"object-creation-expression\":{\"patterns\":[{\"include\":\"#object-creation-expression-with-parameters\"},{\"include\":\"#object-creation-expression-with-no-parameters\"}]},\"object-creation-expression-with-no-parameters\":{\"captures\":{\"1\":{\"name\":\"keyword.operator.expression.new.cs\"},\"2\":{\"patterns\":[{\"include\":\"#type\"}]}},\"match\":\"(new)\\\\s+(?<type_name>(?:(?:(?<identifier>@?[_[:alpha:]][_[:alnum:]]*)\\\\s*::\\\\s*)?(?<name_and_type_args>\\\\g<identifier>\\\\s*(?<type_args>\\\\s*<(?:[^<>]|\\\\g<type_args>)+>\\\\s*)?)(?:\\\\s*\\\\.\\\\s*\\\\g<name_and_type_args>)*|(?<tuple>\\\\s*\\\\((?:[^()]|\\\\g<tuple>)+\\\\)))(?:\\\\s*\\\\?\\\\s*)?(?:\\\\s*\\\\[(?:\\\\s*,\\\\s*)*]\\\\s*\\\\??\\\\s*)*)\\\\s*(?=\\\\{|//|/\\\\*|$)\"},\"object-creation-expression-with-parameters\":{\"begin\":\"(new)(?:\\\\s+(?<type_name>(?:(?:(?<identifier>@?[_[:alpha:]][_[:alnum:]]*)\\\\s*::\\\\s*)?(?<name_and_type_args>\\\\g<identifier>\\\\s*(?<type_args>\\\\s*<(?:[^<>]|\\\\g<type_args>)+>\\\\s*)?)(?:\\\\s*\\\\.\\\\s*\\\\g<name_and_type_args>)*|(?<tuple>\\\\s*\\\\((?:[^()]|\\\\g<tuple>)+\\\\)))(?:\\\\s*\\\\?\\\\s*)?(?:\\\\s*\\\\[(?:\\\\s*,\\\\s*)*]\\\\s*\\\\??\\\\s*)*))?\\\\s*(?=\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.operator.expression.new.cs\"},\"2\":{\"patterns\":[{\"include\":\"#type\"}]}},\"end\":\"(?<=\\\\))\",\"patterns\":[{\"include\":\"#argument-list\"}]},\"operator-assignment\":{\"match\":\"(?<![!=])(=)(?!=)\",\"name\":\"keyword.operator.assignment.cs\"},\"operator-declaration\":{\"begin\":\"(?<type_name>(?:ref\\\\s+(?:readonly\\\\s+)?)?(?:(?:(?<identifier>@?[_[:alpha:]][_[:alnum:]]*)\\\\s*::\\\\s*)?(?<name_and_type_args>\\\\g<identifier>\\\\s*(?<type_args>\\\\s*<(?:[^<>]|\\\\g<type_args>)+>\\\\s*)?)(?:\\\\s*\\\\.\\\\s*\\\\g<name_and_type_args>)*|(?<tuple>\\\\s*\\\\((?:[^()]|\\\\g<tuple>)+\\\\)))(?:\\\\s*\\\\?\\\\s*)?(?:\\\\s*\\\\[(?:\\\\s*,\\\\s*)*]\\\\s*\\\\??\\\\s*)*)\\\\s*\\\\b(?<operator_keyword>operator)\\\\b\\\\s*(?<operator>[-!%\\\\&*+/<=>^|~]+|true|false)\\\\s*(?=\\\\()\",\"beginCaptures\":{\"1\":{\"patterns\":[{\"include\":\"#type\"}]},\"6\":{\"name\":\"storage.type.operator.cs\"},\"7\":{\"name\":\"entity.name.function.cs\"}},\"end\":\"(?<=})|(?=;)\",\"patterns\":[{\"include\":\"#comment\"},{\"include\":\"#parenthesized-parameter-list\"},{\"include\":\"#expression-body\"},{\"include\":\"#block\"}]},\"orderby-clause\":{\"begin\":\"\\\\b(orderby)\\\\b\\\\s*\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.operator.expression.query.orderby.cs\"}},\"end\":\"(?=[);])\",\"patterns\":[{\"include\":\"#ordering-direction\"},{\"include\":\"#query-body\"},{\"include\":\"#expression\"},{\"include\":\"#punctuation-comma\"}]},\"ordering-direction\":{\"captures\":{\"1\":{\"name\":\"keyword.operator.expression.query.$1.cs\"}},\"match\":\"\\\\b((?:a|de)scending)\\\\b\"},\"parameter\":{\"captures\":{\"1\":{\"name\":\"storage.modifier.$1.cs\"},\"2\":{\"patterns\":[{\"include\":\"#type\"}]},\"7\":{\"name\":\"entity.name.variable.parameter.cs\"}},\"match\":\"(?:\\\\b(ref|params|out|in|this)\\\\b\\\\s+)?(?<type_name>(?:ref\\\\s+)?(?:(?:(?<identifier>@?[_[:alpha:]][_[:alnum:]]*)\\\\s*::\\\\s*)?(?<name_and_type_args>\\\\g<identifier>\\\\s*(?<type_args>\\\\s*<(?:[^<>]|\\\\g<type_args>)+>\\\\s*)?)(?:\\\\s*\\\\.\\\\s*\\\\g<name_and_type_args>)*|(?<tuple>\\\\s*\\\\((?:[^()]|\\\\g<tuple>)+\\\\)))(?:\\\\s*\\\\?\\\\s*)?(?:\\\\s*\\\\[(?:\\\\s*,\\\\s*)*]\\\\s*\\\\??\\\\s*)*)\\\\s+(\\\\g<identifier>)\"},\"parenthesized-expression\":{\"begin\":\"\\\\(\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.open.cs\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.close.cs\"}},\"patterns\":[{\"include\":\"#expression\"}]},\"parenthesized-parameter-list\":{\"begin\":\"(\\\\()\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.open.cs\"}},\"end\":\"(\\\\))\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.close.cs\"}},\"patterns\":[{\"include\":\"#comment\"},{\"include\":\"#attribute-section\"},{\"include\":\"#parameter\"},{\"include\":\"#punctuation-comma\"},{\"include\":\"#variable-initializer\"}]},\"pattern\":{\"patterns\":[{\"include\":\"#intrusive\"},{\"include\":\"#combinator-pattern\"},{\"include\":\"#discard-pattern\"},{\"include\":\"#constant-pattern\"},{\"include\":\"#relational-pattern\"},{\"include\":\"#var-pattern\"},{\"include\":\"#type-pattern\"},{\"include\":\"#positional-pattern\"},{\"include\":\"#property-pattern\"},{\"include\":\"#list-pattern\"},{\"include\":\"#slice-pattern\"}]},\"positional-pattern\":{\"begin\":\"(?=\\\\()\",\"end\":\"(?=[]\\\\&),:;=?^|}]|!=|\\\\b(and|or|when)\\\\b)\",\"patterns\":[{\"begin\":\"\\\\(\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.open.cs\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.close.cs\"}},\"patterns\":[{\"include\":\"#subpattern\"},{\"include\":\"#punctuation-comma\"}]},{\"begin\":\"(?<=\\\\))\",\"end\":\"(?=[]\\\\&),:;=?^|}]|!=|\\\\b(and|or|when)\\\\b)\",\"patterns\":[{\"include\":\"#intrusive\"},{\"include\":\"#property-pattern\"},{\"include\":\"#simple-designation-pattern\"}]}]},\"preprocessor\":{\"begin\":\"^\\\\s*(#)\\\\s*\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.separator.hash.cs\"}},\"end\":\"(?<=$)\",\"name\":\"meta.preprocessor.cs\",\"patterns\":[{\"include\":\"#preprocessor-comment\"},{\"include\":\"#preprocessor-define-or-undef\"},{\"include\":\"#preprocessor-if-or-elif\"},{\"include\":\"#preprocessor-else-or-endif\"},{\"include\":\"#preprocessor-warning-or-error\"},{\"include\":\"#preprocessor-region\"},{\"include\":\"#preprocessor-endregion\"},{\"include\":\"#preprocessor-load\"},{\"include\":\"#preprocessor-r\"},{\"include\":\"#preprocessor-line\"},{\"include\":\"#preprocessor-pragma-warning\"},{\"include\":\"#preprocessor-pragma-checksum\"},{\"include\":\"#preprocessor-app-directive\"}]},\"preprocessor-app-directive\":{\"begin\":\"\\\\s*(:)\\\\s*\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.separator.colon.cs\"}},\"end\":\"(?=$)\",\"patterns\":[{\"include\":\"#preprocessor-app-directive-package\"},{\"include\":\"#preprocessor-app-directive-property\"},{\"include\":\"#preprocessor-app-directive-project\"},{\"include\":\"#preprocessor-app-directive-sdk\"},{\"include\":\"#preprocessor-app-directive-generic\"}]},\"preprocessor-app-directive-generic\":{\"captures\":{\"1\":{\"name\":\"string.unquoted.preprocessor.message.cs\"}},\"match\":\"\\\\b(.*)?\\\\s*\"},\"preprocessor-app-directive-package\":{\"captures\":{\"1\":{\"name\":\"keyword.preprocessor.package.cs\"},\"2\":{\"patterns\":[{\"include\":\"#preprocessor-app-directive-package-name\"}]},\"3\":{\"name\":\"punctuation.separator.at.cs\"},\"4\":{\"name\":\"string.unquoted.preprocessor.message.cs\"}},\"match\":\"\\\\b(package)\\\\b\\\\s*([_[:alpha:]][._[:alnum:]]*)?(@)?(.*)?\\\\s*\"},\"preprocessor-app-directive-package-name\":{\"patterns\":[{\"captures\":{\"1\":{\"name\":\"punctuation.dot.cs\"},\"2\":{\"name\":\"entity.name.variable.preprocessor.symbol.cs\"}},\"match\":\"(\\\\.)([_[:alpha:]][_[:alnum:]]*)\"},{\"match\":\"[_[:alpha:]][_[:alnum:]]*\",\"name\":\"entity.name.variable.preprocessor.symbol.cs\"}]},\"preprocessor-app-directive-project\":{\"captures\":{\"1\":{\"name\":\"keyword.preprocessor.project.cs\"},\"2\":{\"name\":\"string.unquoted.preprocessor.message.cs\"}},\"match\":\"\\\\b(project)\\\\b\\\\s*(.*)?\\\\s*\"},\"preprocessor-app-directive-property\":{\"captures\":{\"1\":{\"name\":\"keyword.preprocessor.property.cs\"},\"2\":{\"name\":\"entity.name.variable.preprocessor.symbol.cs\"},\"3\":{\"name\":\"punctuation.separator.equals.cs\"},\"4\":{\"name\":\"string.unquoted.preprocessor.message.cs\"}},\"match\":\"\\\\b(property)\\\\b\\\\s*([_[:alpha:]][_[:alnum:]]*)?(=)?(.*)?\\\\s*\"},\"preprocessor-app-directive-sdk\":{\"captures\":{\"1\":{\"name\":\"keyword.preprocessor.sdk.cs\"},\"2\":{\"patterns\":[{\"include\":\"#preprocessor-app-directive-package-name\"}]},\"3\":{\"name\":\"punctuation.separator.at.cs\"},\"4\":{\"name\":\"string.unquoted.preprocessor.message.cs\"}},\"match\":\"\\\\b(sdk)\\\\b\\\\s*([_[:alpha:]][._[:alnum:]]*)?(@)?(.*)?\\\\s*\"},\"preprocessor-comment\":{\"patterns\":[{\"captures\":{\"1\":{\"name\":\"punctuation.definition.comment.cs\"}},\"match\":\"(//).*(?=$)\",\"name\":\"comment.line.double-slash.cs\"},{\"begin\":\"/\\\\*\",\"captures\":{\"0\":{\"name\":\"punctuation.definition.comment.cs\"}},\"end\":\"\\\\*/\",\"name\":\"comment.block.cs\"}]},\"preprocessor-define-or-undef\":{\"captures\":{\"1\":{\"name\":\"keyword.preprocessor.define.cs\"},\"2\":{\"name\":\"keyword.preprocessor.undef.cs\"},\"3\":{\"name\":\"entity.name.variable.preprocessor.symbol.cs\"}},\"match\":\"\\\\b(?:(define)|(undef))\\\\b\\\\s*\\\\b([_[:alpha:]][_[:alnum:]]*)\\\\b\"},\"preprocessor-else-or-endif\":{\"captures\":{\"1\":{\"name\":\"keyword.preprocessor.else.cs\"},\"2\":{\"name\":\"keyword.preprocessor.endif.cs\"}},\"match\":\"\\\\b(?:(else)|(endif))\\\\b\"},\"preprocessor-endregion\":{\"captures\":{\"1\":{\"name\":\"keyword.preprocessor.endregion.cs\"}},\"match\":\"\\\\b(endregion)\\\\b\"},\"preprocessor-expression\":{\"patterns\":[{\"begin\":\"\\\\(\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.open.cs\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.close.cs\"}},\"patterns\":[{\"include\":\"#preprocessor-expression\"}]},{\"captures\":{\"1\":{\"name\":\"constant.language.boolean.true.cs\"},\"2\":{\"name\":\"constant.language.boolean.false.cs\"},\"3\":{\"name\":\"entity.name.variable.preprocessor.symbol.cs\"}},\"match\":\"\\\\b(?:(true)|(false)|([_[:alpha:]][_[:alnum:]]*))\\\\b\"},{\"captures\":{\"1\":{\"name\":\"keyword.operator.comparison.cs\"},\"2\":{\"name\":\"keyword.operator.logical.cs\"}},\"match\":\"([!=]=)|(!|&&|\\\\|\\\\|)\"}]},\"preprocessor-if-or-elif\":{\"begin\":\"\\\\b(?:(if)|(elif))\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.preprocessor.if.cs\"},\"2\":{\"name\":\"keyword.preprocessor.elif.cs\"}},\"end\":\"(?=$)\",\"patterns\":[{\"include\":\"#preprocessor-comment\"},{\"include\":\"#preprocessor-expression\"}]},\"preprocessor-line\":{\"begin\":\"\\\\b(line)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.preprocessor.line.cs\"}},\"end\":\"(?=$)\",\"patterns\":[{\"captures\":{\"1\":{\"name\":\"keyword.preprocessor.default.cs\"},\"2\":{\"name\":\"keyword.preprocessor.hidden.cs\"}},\"match\":\"\\\\b(default|hidden)\"},{\"captures\":{\"0\":{\"name\":\"constant.numeric.decimal.cs\"}},\"match\":\"[0-9]+\"},{\"captures\":{\"0\":{\"name\":\"string.quoted.double.cs\"}},\"match\":\"\\\"[^\\\"]*\\\"\"}]},\"preprocessor-load\":{\"begin\":\"\\\\b(load)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.preprocessor.load.cs\"}},\"end\":\"(?=$)\",\"patterns\":[{\"captures\":{\"0\":{\"name\":\"string.quoted.double.cs\"}},\"match\":\"\\\"[^\\\"]*\\\"\"}]},\"preprocessor-pragma-checksum\":{\"captures\":{\"1\":{\"name\":\"keyword.preprocessor.pragma.cs\"},\"2\":{\"name\":\"keyword.preprocessor.checksum.cs\"},\"3\":{\"name\":\"string.quoted.double.cs\"},\"4\":{\"name\":\"string.quoted.double.cs\"},\"5\":{\"name\":\"string.quoted.double.cs\"}},\"match\":\"\\\\b(pragma)\\\\b\\\\s*\\\\b(checksum)\\\\b\\\\s*(\\\"[^\\\"]*\\\")\\\\s*(\\\"[^\\\"]*\\\")\\\\s*(\\\"[^\\\"]*\\\")\"},\"preprocessor-pragma-warning\":{\"captures\":{\"1\":{\"name\":\"keyword.preprocessor.pragma.cs\"},\"2\":{\"name\":\"keyword.preprocessor.warning.cs\"},\"3\":{\"name\":\"keyword.preprocessor.disable.cs\"},\"4\":{\"name\":\"keyword.preprocessor.restore.cs\"},\"5\":{\"patterns\":[{\"captures\":{\"0\":{\"name\":\"constant.numeric.decimal.cs\"}},\"match\":\"[0-9]+\"},{\"include\":\"#punctuation-comma\"}]}},\"match\":\"\\\\b(pragma)\\\\b\\\\s*\\\\b(warning)\\\\b\\\\s*\\\\b(?:(disable)|(restore))\\\\b(\\\\s*[0-9]+(?:\\\\s*,\\\\s*[0-9]+)?)?\"},\"preprocessor-r\":{\"begin\":\"\\\\b(r)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.preprocessor.r.cs\"}},\"end\":\"(?=$)\",\"patterns\":[{\"captures\":{\"0\":{\"name\":\"string.quoted.double.cs\"}},\"match\":\"\\\"[^\\\"]*\\\"\"}]},\"preprocessor-region\":{\"captures\":{\"1\":{\"name\":\"keyword.preprocessor.region.cs\"},\"2\":{\"name\":\"string.unquoted.preprocessor.message.cs\"}},\"match\":\"\\\\b(region)\\\\b\\\\s*(.*)(?=$)\"},\"preprocessor-warning-or-error\":{\"captures\":{\"1\":{\"name\":\"keyword.preprocessor.warning.cs\"},\"2\":{\"name\":\"keyword.preprocessor.error.cs\"},\"3\":{\"name\":\"string.unquoted.preprocessor.message.cs\"}},\"match\":\"\\\\b(?:(warning)|(error))\\\\b\\\\s*(.*)(?=$)\"},\"property-accessors\":{\"begin\":\"\\\\{\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.curlybrace.open.cs\"}},\"end\":\"}\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.curlybrace.close.cs\"}},\"patterns\":[{\"include\":\"#comment\"},{\"include\":\"#attribute-section\"},{\"match\":\"\\\\b(private|protected|internal)\\\\b\",\"name\":\"storage.modifier.$1.cs\"},{\"begin\":\"(?:\\\\b(readonly)\\\\s+)?\\\\b(get)\\\\b\\\\s*(?=[;{]|=>|//|/\\\\*|$)\",\"beginCaptures\":{\"1\":{\"name\":\"storage.modifier.readonly.cs\"},\"2\":{\"name\":\"storage.type.accessor.get.cs\"}},\"end\":\"(?<=[;}])|(?=})\",\"patterns\":[{\"include\":\"#accessor-getter\"}]},{\"begin\":\"\\\\b(set|init)\\\\b\\\\s*(?=[;{]|=>|//|/\\\\*|$)\",\"beginCaptures\":{\"1\":{\"name\":\"storage.type.accessor.$1.cs\"}},\"end\":\"(?<=[;}])|(?=})\",\"patterns\":[{\"include\":\"#accessor-setter\"}]}]},\"property-declaration\":{\"begin\":\"(?![[:word:]\\\\s]*\\\\b(?:class|interface|struct|enum|event)\\\\b)(?<return_type>(?<type_name>(?:ref\\\\s+(?:readonly\\\\s+)?)?(?:(?:(?<identifier>@?[_[:alpha:]][_[:alnum:]]*)\\\\s*::\\\\s*)?(?<name_and_type_args>\\\\g<identifier>\\\\s*(?<type_args>\\\\s*<(?:[^<>]|\\\\g<type_args>)+>\\\\s*)?)(?:\\\\s*\\\\.\\\\s*\\\\g<name_and_type_args>)*|(?<tuple>\\\\s*\\\\((?:[^()]|\\\\g<tuple>)+\\\\)))(?:\\\\s*\\\\?\\\\s*)?(?:\\\\s*\\\\[(?:\\\\s*,\\\\s*)*]\\\\s*\\\\??\\\\s*)*)\\\\s+)(?<interface_name>\\\\g<type_name>\\\\s*\\\\.\\\\s*)?(?<property_name>\\\\g<identifier>)\\\\s*(?=\\\\{|=>|//|/\\\\*|$)\",\"beginCaptures\":{\"1\":{\"patterns\":[{\"include\":\"#type\"}]},\"7\":{\"patterns\":[{\"include\":\"#type\"},{\"include\":\"#punctuation-accessor\"}]},\"8\":{\"name\":\"entity.name.variable.property.cs\"}},\"end\":\"(?<=})|(?=;)\",\"patterns\":[{\"include\":\"#comment\"},{\"include\":\"#property-accessors\"},{\"include\":\"#accessor-getter-expression\"},{\"include\":\"#variable-initializer\"},{\"include\":\"#class-or-struct-members\"}]},\"property-pattern\":{\"begin\":\"(?=\\\\{)\",\"end\":\"(?=[]\\\\&),:;=?^|}]|!=|\\\\b(and|or|when)\\\\b)\",\"patterns\":[{\"begin\":\"\\\\{\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.curlybrace.open.cs\"}},\"end\":\"}\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.curlybrace.close.cs\"}},\"patterns\":[{\"include\":\"#subpattern\"},{\"include\":\"#punctuation-comma\"}]},{\"begin\":\"(?<=})\",\"end\":\"(?=[]\\\\&),:;=?^|}]|!=|\\\\b(and|or|when)\\\\b)\",\"patterns\":[{\"include\":\"#intrusive\"},{\"include\":\"#simple-designation-pattern\"}]}]},\"punctuation-accessor\":{\"match\":\"\\\\.\",\"name\":\"punctuation.accessor.cs\"},\"punctuation-comma\":{\"match\":\",\",\"name\":\"punctuation.separator.comma.cs\"},\"punctuation-semicolon\":{\"match\":\";\",\"name\":\"punctuation.terminator.statement.cs\"},\"query-body\":{\"patterns\":[{\"include\":\"#let-clause\"},{\"include\":\"#where-clause\"},{\"include\":\"#join-clause\"},{\"include\":\"#orderby-clause\"},{\"include\":\"#select-clause\"},{\"include\":\"#group-clause\"}]},\"query-expression\":{\"begin\":\"\\\\b(from)\\\\b\\\\s*(?<type_name>(?:(?:(?<identifier>@?[_[:alpha:]][_[:alnum:]]*)\\\\s*::\\\\s*)?(?<name_and_type_args>\\\\g<identifier>\\\\s*(?<type_args>\\\\s*<(?:[^<>]|\\\\g<type_args>)+>\\\\s*)?)(?:\\\\s*\\\\.\\\\s*\\\\g<name_and_type_args>)*|(?<tuple>\\\\s*\\\\((?:[^()]|\\\\g<tuple>)+\\\\)))(?:\\\\s*\\\\?\\\\s*)?(?:\\\\s*\\\\[(?:\\\\s*,\\\\s*)*]\\\\s*\\\\??\\\\s*)*)?\\\\s+(\\\\g<identifier>)\\\\b\\\\s*\\\\b(in)\\\\b\\\\s*\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.operator.expression.query.from.cs\"},\"2\":{\"patterns\":[{\"include\":\"#type\"}]},\"7\":{\"name\":\"entity.name.variable.range-variable.cs\"},\"8\":{\"name\":\"keyword.operator.expression.query.in.cs\"}},\"end\":\"(?=[);])\",\"patterns\":[{\"include\":\"#query-body\"},{\"include\":\"#expression\"}]},\"raw-interpolated-string\":{\"patterns\":[{\"include\":\"#raw-interpolated-string-five-or-more-quote-one-or-more-interpolation\"},{\"include\":\"#raw-interpolated-string-three-or-more-quote-three-or-more-interpolation\"},{\"include\":\"#raw-interpolated-string-quadruple-quote-double-interpolation\"},{\"include\":\"#raw-interpolated-string-quadruple-quote-single-interpolation\"},{\"include\":\"#raw-interpolated-string-triple-quote-double-interpolation\"},{\"include\":\"#raw-interpolated-string-triple-quote-single-interpolation\"}]},\"raw-interpolated-string-five-or-more-quote-one-or-more-interpolation\":{\"begin\":\"\\\\$+\\\"\\\"\\\"\\\"\\\"+\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.cs\"}},\"end\":\"\\\"\\\"\\\"\\\"\\\"+\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.cs\"}},\"name\":\"string.quoted.double.cs\"},\"raw-interpolated-string-quadruple-quote-double-interpolation\":{\"begin\":\"\\\\$\\\\$\\\"\\\"\\\"\\\"\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.cs\"}},\"end\":\"\\\"\\\"\\\"\\\"\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.cs\"}},\"name\":\"string.quoted.double.cs\",\"patterns\":[{\"include\":\"#double-raw-interpolation\"}]},\"raw-interpolated-string-quadruple-quote-single-interpolation\":{\"begin\":\"\\\\$\\\"\\\"\\\"\\\"\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.cs\"}},\"end\":\"\\\"\\\"\\\"\\\"\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.cs\"}},\"name\":\"string.quoted.double.cs\",\"patterns\":[{\"include\":\"#raw-interpolation\"}]},\"raw-interpolated-string-three-or-more-quote-three-or-more-interpolation\":{\"begin\":\"\\\\$\\\\$\\\\$+\\\"\\\"\\\"+\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.cs\"}},\"end\":\"\\\"\\\"\\\"+\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.cs\"}},\"name\":\"string.quoted.double.cs\"},\"raw-interpolated-string-triple-quote-double-interpolation\":{\"begin\":\"\\\\$\\\\$\\\"\\\"\\\"\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.cs\"}},\"end\":\"\\\"\\\"\\\"\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.cs\"}},\"name\":\"string.quoted.double.cs\",\"patterns\":[{\"include\":\"#double-raw-interpolation\"}]},\"raw-interpolated-string-triple-quote-single-interpolation\":{\"begin\":\"\\\\$\\\"\\\"\\\"\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.cs\"}},\"end\":\"\\\"\\\"\\\"\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.cs\"}},\"name\":\"string.quoted.double.cs\",\"patterns\":[{\"include\":\"#raw-interpolation\"}]},\"raw-interpolation\":{\"begin\":\"(?<=[^{]|^)(\\\\{*)(\\\\{)(?=[^{])\",\"beginCaptures\":{\"1\":{\"name\":\"string.quoted.double.cs\"},\"2\":{\"name\":\"punctuation.definition.interpolation.begin.cs\"}},\"end\":\"}\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.interpolation.end.cs\"}},\"name\":\"meta.embedded.interpolation.cs\",\"patterns\":[{\"include\":\"#expression\"}]},\"raw-string-literal\":{\"patterns\":[{\"include\":\"#raw-string-literal-more\"},{\"include\":\"#raw-string-literal-quadruple\"},{\"include\":\"#raw-string-literal-triple\"}]},\"raw-string-literal-more\":{\"begin\":\"\\\"\\\"\\\"\\\"\\\"+\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.cs\"}},\"end\":\"\\\"\\\"\\\"\\\"\\\"+\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.cs\"}},\"name\":\"string.quoted.double.cs\"},\"raw-string-literal-quadruple\":{\"begin\":\"\\\"\\\"\\\"\\\"\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.cs\"}},\"end\":\"\\\"\\\"\\\"\\\"\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.cs\"}},\"name\":\"string.quoted.double.cs\"},\"raw-string-literal-triple\":{\"begin\":\"\\\"\\\"\\\"\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.cs\"}},\"end\":\"\\\"\\\"\\\"\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.cs\"}},\"name\":\"string.quoted.double.cs\"},\"readonly-modifier\":{\"match\":\"\\\\breadonly\\\\b\",\"name\":\"storage.modifier.readonly.cs\"},\"record-declaration\":{\"begin\":\"(?=\\\\brecord\\\\b)\",\"end\":\"(?<=})|(?=;)\",\"patterns\":[{\"begin\":\"(record)\\\\b\\\\s+(@?[_[:alpha:]][_[:alnum:]]*)\",\"beginCaptures\":{\"1\":{\"name\":\"storage.type.record.cs\"},\"2\":{\"name\":\"entity.name.type.class.cs\"}},\"end\":\"(?=\\\\{)|(?=;)\",\"patterns\":[{\"include\":\"#comment\"},{\"include\":\"#type-parameter-list\"},{\"include\":\"#parenthesized-parameter-list\"},{\"include\":\"#base-types\"},{\"include\":\"#generic-constraints\"}]},{\"begin\":\"\\\\{\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.curlybrace.open.cs\"}},\"end\":\"}\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.curlybrace.close.cs\"}},\"patterns\":[{\"include\":\"#class-or-struct-members\"}]},{\"include\":\"#preprocessor\"},{\"include\":\"#comment\"}]},\"ref-modifier\":{\"match\":\"\\\\bref\\\\b\",\"name\":\"storage.modifier.ref.cs\"},\"relational-pattern\":{\"begin\":\"<=?|>=?\",\"beginCaptures\":{\"0\":{\"name\":\"keyword.operator.relational.cs\"}},\"end\":\"(?=[]\\\\&),:;=?^|}]|!=|\\\\b(and|or|when)\\\\b)\",\"patterns\":[{\"include\":\"#expression\"}]},\"return-statement\":{\"begin\":\"(?<!\\\\.)\\\\b(return)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.flow.return.cs\"}},\"end\":\"(?=[;}])\",\"patterns\":[{\"include\":\"#ref-modifier\"},{\"include\":\"#expression\"}]},\"script-top-level\":{\"patterns\":[{\"include\":\"#statement\"},{\"include\":\"#method-declaration\"},{\"include\":\"#punctuation-semicolon\"}]},\"select-clause\":{\"begin\":\"\\\\b(select)\\\\b\\\\s*\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.operator.expression.query.select.cs\"}},\"end\":\"(?=[);])\",\"patterns\":[{\"include\":\"#query-body\"},{\"include\":\"#expression\"}]},\"simple-designation-pattern\":{\"patterns\":[{\"include\":\"#discard-pattern\"},{\"match\":\"@?[_[:alpha:]][_[:alnum:]]*\",\"name\":\"entity.name.variable.local.cs\"}]},\"slice-pattern\":{\"match\":\"\\\\.\\\\.\",\"name\":\"keyword.operator.range.cs\"},\"statement\":{\"patterns\":[{\"include\":\"#preprocessor\"},{\"include\":\"#comment\"},{\"include\":\"#while-statement\"},{\"include\":\"#do-statement\"},{\"include\":\"#for-statement\"},{\"include\":\"#foreach-statement\"},{\"include\":\"#if-statement\"},{\"include\":\"#else-part\"},{\"include\":\"#goto-statement\"},{\"include\":\"#return-statement\"},{\"include\":\"#break-or-continue-statement\"},{\"include\":\"#throw-statement\"},{\"include\":\"#yield-statement\"},{\"include\":\"#await-statement\"},{\"include\":\"#try-statement\"},{\"include\":\"#expression-operator-expression\"},{\"include\":\"#context-control-statement\"},{\"include\":\"#context-control-paren-statement\"},{\"include\":\"#labeled-statement\"},{\"include\":\"#object-creation-expression\"},{\"include\":\"#array-creation-expression\"},{\"include\":\"#anonymous-object-creation-expression\"},{\"include\":\"#local-declaration\"},{\"include\":\"#block\"},{\"include\":\"#expression\"},{\"include\":\"#punctuation-semicolon\"}]},\"storage-modifier\":{\"match\":\"(?<!\\\\.)\\\\b(new|public|protected|internal|private|abstract|virtual|override|sealed|static|partial|readonly|volatile|const|extern|async|unsafe|ref|required|file)\\\\b\",\"name\":\"storage.modifier.$1.cs\"},\"string-character-escape\":{\"match\":\"\\\\\\\\(x\\\\h{1,4}|U\\\\h{8}|u\\\\h{4}|.)\",\"name\":\"constant.character.escape.cs\"},\"string-literal\":{\"begin\":\"(?<!@)\\\"\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.cs\"}},\"end\":\"(\\\")|([^\\\\n\\\\\\\\])$\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.definition.string.end.cs\"},\"2\":{\"name\":\"invalid.illegal.newline.cs\"}},\"name\":\"string.quoted.double.cs\",\"patterns\":[{\"include\":\"#string-character-escape\"}]},\"struct-declaration\":{\"begin\":\"(?=(\\\\brecord\\\\b\\\\s+)?\\\\bstruct\\\\b)\",\"end\":\"(?<=})|(?=;)\",\"patterns\":[{\"begin\":\"(\\\\b(record)\\\\b\\\\s+)?(struct)\\\\b\\\\s+(@?[_[:alpha:]][_[:alnum:]]*)\",\"beginCaptures\":{\"2\":{\"name\":\"storage.type.record.cs\"},\"3\":{\"name\":\"storage.type.struct.cs\"},\"4\":{\"name\":\"entity.name.type.struct.cs\"}},\"end\":\"(?=\\\\{)|(?=;)\",\"patterns\":[{\"include\":\"#comment\"},{\"include\":\"#type-parameter-list\"},{\"include\":\"#parenthesized-parameter-list\"},{\"include\":\"#base-types\"},{\"include\":\"#generic-constraints\"}]},{\"begin\":\"\\\\{\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.curlybrace.open.cs\"}},\"end\":\"}\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.curlybrace.close.cs\"}},\"patterns\":[{\"include\":\"#class-or-struct-members\"}]},{\"include\":\"#preprocessor\"},{\"include\":\"#comment\"}]},\"subpattern\":{\"patterns\":[{\"captures\":{\"1\":{\"patterns\":[{\"match\":\"@?[_[:alpha:]][_[:alnum:]]*\",\"name\":\"variable.other.object.property.cs\"},{\"include\":\"#punctuation-accessor\"}]},\"2\":{\"name\":\"punctuation.separator.colon.cs\"}},\"match\":\"(@?[_[:alpha:]][_[:alnum:]]*(?:\\\\s*\\\\.\\\\s*@?[_[:alpha:]][_[:alnum:]]*)*)\\\\s*(:)\"},{\"include\":\"#pattern\"}]},\"switch-expression\":{\"begin\":\"\\\\{\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.curlybrace.open.cs\"}},\"end\":\"}\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.curlybrace.close.cs\"}},\"patterns\":[{\"include\":\"#punctuation-comma\"},{\"begin\":\"=>\",\"beginCaptures\":{\"0\":{\"name\":\"keyword.operator.arrow.cs\"}},\"end\":\"(?=[,}])\",\"patterns\":[{\"include\":\"#expression\"}]},{\"begin\":\"\\\\b(when)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.conditional.when.cs\"}},\"end\":\"(?==>|[,}])\",\"patterns\":[{\"include\":\"#case-guard\"}]},{\"begin\":\"(?!\\\\s)\",\"end\":\"(?=\\\\bwhen\\\\b|=>|[,}])\",\"patterns\":[{\"include\":\"#pattern\"}]}]},\"switch-label\":{\"begin\":\"\\\\b(case|default)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.conditional.$1.cs\"}},\"end\":\"(:)|(?=})\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.separator.colon.cs\"}},\"patterns\":[{\"begin\":\"\\\\b(when)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.conditional.when.cs\"}},\"end\":\"(?=[:}])\",\"patterns\":[{\"include\":\"#case-guard\"}]},{\"begin\":\"(?!\\\\s)\",\"end\":\"(?=\\\\bwhen\\\\b|[:}])\",\"patterns\":[{\"include\":\"#pattern\"}]}]},\"switch-statement\":{\"patterns\":[{\"include\":\"#intrusive\"},{\"begin\":\"\\\\(\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.open.cs\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.close.cs\"}},\"patterns\":[{\"include\":\"#expression\"}]},{\"begin\":\"\\\\{\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.curlybrace.open.cs\"}},\"end\":\"}\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.curlybrace.close.cs\"}},\"patterns\":[{\"include\":\"#switch-label\"},{\"include\":\"#statement\"}]}]},\"switch-statement-or-expression\":{\"begin\":\"(?<!\\\\.)\\\\b(switch)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.conditional.switch.cs\"}},\"end\":\"(?<=})|(?=})\",\"patterns\":[{\"include\":\"#intrusive\"},{\"begin\":\"(?=\\\\()\",\"end\":\"(?<=})|(?=})\",\"patterns\":[{\"include\":\"#switch-statement\"}]},{\"begin\":\"(?=\\\\{)\",\"end\":\"(?<=})|(?=})\",\"patterns\":[{\"include\":\"#switch-expression\"}]}]},\"throw-expression\":{\"captures\":{\"1\":{\"name\":\"keyword.control.flow.throw.cs\"}},\"match\":\"\\\\b(throw)\\\\b\"},\"throw-statement\":{\"begin\":\"(?<!\\\\.)\\\\b(throw)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.flow.throw.cs\"}},\"end\":\"(?=[;}])\",\"patterns\":[{\"include\":\"#expression\"}]},\"try-block\":{\"begin\":\"(?<!\\\\.)\\\\b(try)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.exception.try.cs\"}},\"end\":\"(?<=})\",\"patterns\":[{\"include\":\"#comment\"},{\"include\":\"#block\"}]},\"try-statement\":{\"patterns\":[{\"include\":\"#try-block\"},{\"include\":\"#catch-clause\"},{\"include\":\"#finally-clause\"}]},\"tuple-declaration-deconstruction-element-list\":{\"begin\":\"\\\\(\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.open.cs\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.close.cs\"}},\"patterns\":[{\"include\":\"#comment\"},{\"include\":\"#tuple-declaration-deconstruction-element-list\"},{\"include\":\"#declaration-expression-tuple\"},{\"include\":\"#punctuation-comma\"},{\"captures\":{\"1\":{\"name\":\"entity.name.variable.tuple-element.cs\"}},\"match\":\"(@?[_[:alpha:]][_[:alnum:]]*)\\\\b\\\\s*(?=[),])\"}]},\"tuple-deconstruction-assignment\":{\"captures\":{\"1\":{\"patterns\":[{\"include\":\"#tuple-deconstruction-element-list\"}]}},\"match\":\"(?<tuple>\\\\s*\\\\((?:[^()]|\\\\g<tuple>)+\\\\))\\\\s*(?!=[=>])(?==)\"},\"tuple-deconstruction-element-list\":{\"begin\":\"\\\\(\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.open.cs\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.close.cs\"}},\"patterns\":[{\"include\":\"#comment\"},{\"include\":\"#tuple-deconstruction-element-list\"},{\"include\":\"#declaration-expression-tuple\"},{\"include\":\"#punctuation-comma\"},{\"captures\":{\"1\":{\"name\":\"variable.other.readwrite.cs\"}},\"match\":\"(@?[_[:alpha:]][_[:alnum:]]*)\\\\b\\\\s*(?=[),])\"}]},\"tuple-element\":{\"captures\":{\"1\":{\"patterns\":[{\"include\":\"#type\"}]},\"6\":{\"name\":\"entity.name.variable.tuple-element.cs\"}},\"match\":\"(?<type_name>(?:(?:(?<identifier>@?[_[:alpha:]][_[:alnum:]]*)\\\\s*::\\\\s*)?(?<name_and_type_args>\\\\g<identifier>\\\\s*(?<type_args>\\\\s*<(?:[^<>]|\\\\g<type_args>)+>\\\\s*)?)(?:\\\\s*\\\\.\\\\s*\\\\g<name_and_type_args>)*|(?<tuple>\\\\s*\\\\((?:[^()]|\\\\g<tuple>)+\\\\)))(?:\\\\s*\\\\?\\\\s*)?(?:\\\\s*\\\\[(?:\\\\s*,\\\\s*)*]\\\\s*\\\\??\\\\s*)*)(?:(?<tuple_name>\\\\g<identifier>)\\\\b)?\"},\"tuple-literal\":{\"begin\":\"(\\\\()(?=.*[,:])\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.parenthesis.open.cs\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.close.cs\"}},\"patterns\":[{\"include\":\"#comment\"},{\"include\":\"#tuple-literal-element\"},{\"include\":\"#expression\"},{\"include\":\"#punctuation-comma\"}]},\"tuple-literal-element\":{\"begin\":\"(@?[_[:alpha:]][_[:alnum:]]*)\\\\s*(?=:)\",\"beginCaptures\":{\"1\":{\"name\":\"entity.name.variable.tuple-element.cs\"}},\"end\":\"(:)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.separator.colon.cs\"}}},\"tuple-type\":{\"begin\":\"\\\\(\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.open.cs\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.close.cs\"}},\"patterns\":[{\"include\":\"#tuple-element\"},{\"include\":\"#punctuation-comma\"}]},\"type\":{\"patterns\":[{\"include\":\"#comment\"},{\"include\":\"#ref-modifier\"},{\"include\":\"#readonly-modifier\"},{\"include\":\"#tuple-type\"},{\"include\":\"#type-builtin\"},{\"include\":\"#type-name\"},{\"include\":\"#type-arguments\"},{\"include\":\"#type-array-suffix\"},{\"include\":\"#type-nullable-suffix\"},{\"include\":\"#type-pointer-suffix\"}]},\"type-arguments\":{\"begin\":\"<\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.typeparameters.begin.cs\"}},\"end\":\">\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.typeparameters.end.cs\"}},\"patterns\":[{\"include\":\"#type\"},{\"include\":\"#punctuation-comma\"}]},\"type-array-suffix\":{\"begin\":\"\\\\[\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.squarebracket.open.cs\"}},\"end\":\"]\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.squarebracket.close.cs\"}},\"patterns\":[{\"include\":\"#intrusive\"},{\"include\":\"#punctuation-comma\"}]},\"type-builtin\":{\"captures\":{\"1\":{\"name\":\"keyword.type.$1.cs\"}},\"match\":\"\\\\b(bool|s?byte|u?short|n?u?int|u?long|float|double|decimal|char|string|object|void|dynamic)\\\\b\"},\"type-declarations\":{\"patterns\":[{\"include\":\"#preprocessor\"},{\"include\":\"#comment\"},{\"include\":\"#storage-modifier\"},{\"include\":\"#class-declaration\"},{\"include\":\"#delegate-declaration\"},{\"include\":\"#enum-declaration\"},{\"include\":\"#interface-declaration\"},{\"include\":\"#struct-declaration\"},{\"include\":\"#record-declaration\"},{\"include\":\"#attribute-section\"},{\"include\":\"#punctuation-semicolon\"}]},\"type-name\":{\"patterns\":[{\"captures\":{\"1\":{\"name\":\"entity.name.type.alias.cs\"},\"2\":{\"name\":\"punctuation.separator.coloncolon.cs\"}},\"match\":\"(@?[_[:alpha:]][_[:alnum:]]*)\\\\s*(::)\"},{\"captures\":{\"1\":{\"name\":\"entity.name.type.cs\"},\"2\":{\"name\":\"punctuation.accessor.cs\"}},\"match\":\"(@?[_[:alpha:]][_[:alnum:]]*)\\\\s*(\\\\.)\"},{\"captures\":{\"1\":{\"name\":\"punctuation.accessor.cs\"},\"2\":{\"name\":\"entity.name.type.cs\"}},\"match\":\"(\\\\.)\\\\s*(@?[_[:alpha:]][_[:alnum:]]*)\"},{\"match\":\"@?[_[:alpha:]][_[:alnum:]]*\",\"name\":\"entity.name.type.cs\"}]},\"type-nullable-suffix\":{\"match\":\"\\\\?\",\"name\":\"punctuation.separator.question-mark.cs\"},\"type-operator-expression\":{\"begin\":\"\\\\b(default|sizeof|typeof)\\\\s*(\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.operator.expression.$1.cs\"},\"2\":{\"name\":\"punctuation.parenthesis.open.cs\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.close.cs\"}},\"patterns\":[{\"include\":\"#type\"}]},\"type-parameter-list\":{\"begin\":\"<\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.typeparameters.begin.cs\"}},\"end\":\">\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.typeparameters.end.cs\"}},\"patterns\":[{\"match\":\"\\\\b(in|out)\\\\b\",\"name\":\"storage.modifier.$1.cs\"},{\"match\":\"(@?[_[:alpha:]][_[:alnum:]]*)\\\\b\",\"name\":\"entity.name.type.type-parameter.cs\"},{\"include\":\"#comment\"},{\"include\":\"#punctuation-comma\"},{\"include\":\"#attribute-section\"}]},\"type-pattern\":{\"begin\":\"(?=@?[_[:alpha:]][_[:alnum:]]*)\",\"end\":\"(?=[]\\\\&),:;=?^|}]|!=|\\\\b(and|or|when)\\\\b)\",\"patterns\":[{\"begin\":\"\\\\G\",\"end\":\"(?!\\\\G[@_[:alpha:]])(?=[]\\\\&(),:;=@^_{|}[:alpha:]]|(?:\\\\s|^)\\\\?|!=|\\\\b(and|or|when)\\\\b)\",\"patterns\":[{\"include\":\"#intrusive\"},{\"include\":\"#type-subpattern\"}]},{\"begin\":\"(?=[(@_{[:alpha:]])\",\"end\":\"(?=[]\\\\&),:;=?^|}]|!=|\\\\b(and|or|when)\\\\b)\",\"patterns\":[{\"include\":\"#intrusive\"},{\"include\":\"#positional-pattern\"},{\"include\":\"#property-pattern\"},{\"include\":\"#simple-designation-pattern\"}]}]},\"type-pointer-suffix\":{\"match\":\"\\\\*\",\"name\":\"punctuation.separator.asterisk.cs\"},\"type-subpattern\":{\"patterns\":[{\"include\":\"#type-builtin\"},{\"begin\":\"(@?[_[:alpha:]][_[:alnum:]]*)\\\\s*(::)\",\"beginCaptures\":{\"1\":{\"name\":\"entity.name.type.alias.cs\"},\"2\":{\"name\":\"punctuation.separator.coloncolon.cs\"}},\"end\":\"(?<=[_[:alnum:]])|(?=[]\\\\&(),.:-=?\\\\[^{|}]|!=|\\\\b(and|or|when)\\\\b)\",\"patterns\":[{\"include\":\"#intrusive\"},{\"match\":\"@?[_[:alpha:]][_[:alnum:]]*\",\"name\":\"entity.name.type.cs\"}]},{\"match\":\"@?[_[:alpha:]][_[:alnum:]]*\",\"name\":\"entity.name.type.cs\"},{\"begin\":\"\\\\.\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.accessor.cs\"}},\"end\":\"(?<=[_[:alnum:]])|(?=[]\\\\&(),:-=?\\\\[^{|}]|!=|\\\\b(and|or|when)\\\\b)\",\"patterns\":[{\"include\":\"#intrusive\"},{\"match\":\"@?[_[:alpha:]][_[:alnum:]]*\",\"name\":\"entity.name.type.cs\"}]},{\"include\":\"#type-arguments\"},{\"include\":\"#type-array-suffix\"},{\"match\":\"(?<!\\\\s)\\\\?\",\"name\":\"punctuation.separator.question-mark.cs\"}]},\"using-directive\":{\"patterns\":[{\"begin\":\"\\\\b(?:(global)\\\\s+)?(using)\\\\s+(static)\\\\b\\\\s*(?:(unsafe)\\\\b\\\\s*)?\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.other.directive.global.cs\"},\"2\":{\"name\":\"keyword.other.directive.using.cs\"},\"3\":{\"name\":\"keyword.other.directive.static.cs\"},\"4\":{\"name\":\"storage.modifier.unsafe.cs\"}},\"end\":\"(?=;)\",\"patterns\":[{\"include\":\"#type\"}]},{\"begin\":\"\\\\b(?:(global)\\\\s+)?(using)\\\\b\\\\s*(?:(unsafe)\\\\b\\\\s*)?(@?[_[:alpha:]][_[:alnum:]]*)\\\\s*(=)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.other.directive.global.cs\"},\"2\":{\"name\":\"keyword.other.directive.using.cs\"},\"3\":{\"name\":\"storage.modifier.unsafe.cs\"},\"4\":{\"name\":\"entity.name.type.alias.cs\"},\"5\":{\"name\":\"keyword.operator.assignment.cs\"}},\"end\":\"(?=;)\",\"patterns\":[{\"include\":\"#comment\"},{\"include\":\"#type\"}]},{\"begin\":\"\\\\b(?:(global)\\\\s+)?(using)\\\\b\\\\s*+(?!\\\\(|var\\\\b)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.other.directive.global.cs\"},\"2\":{\"name\":\"keyword.other.directive.using.cs\"}},\"end\":\"(?=;)\",\"patterns\":[{\"include\":\"#comment\"},{\"match\":\"@?[_[:alpha:]][_[:alnum:]]*\",\"name\":\"entity.name.type.namespace.cs\"},{\"include\":\"#punctuation-accessor\"},{\"include\":\"#operator-assignment\"}]}]},\"using-statement\":{\"begin\":\"\\\\b(using)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.context.using.cs\"}},\"end\":\"(?<=\\\\))|(?=[;}])\",\"patterns\":[{\"include\":\"#intrusive\"},{\"begin\":\"\\\\(\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.open.cs\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.close.cs\"}},\"patterns\":[{\"include\":\"#intrusive\"},{\"include\":\"#await-expression\"},{\"include\":\"#local-variable-declaration\"},{\"include\":\"#expression\"}]},{\"include\":\"#local-variable-declaration\"}]},\"var-pattern\":{\"begin\":\"\\\\b(var)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"storage.type.var.cs\"}},\"end\":\"(?=[]\\\\&),:;=?^|}]|!=|\\\\b(and|or|when)\\\\b)\",\"patterns\":[{\"include\":\"#designation-pattern\"}]},\"variable-initializer\":{\"begin\":\"(?<![!=])(=)(?![=>])\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.operator.assignment.cs\"}},\"end\":\"(?=[]),;}])\",\"patterns\":[{\"include\":\"#ref-modifier\"},{\"include\":\"#expression\"}]},\"verbatim-interpolated-string\":{\"begin\":\"(?:\\\\$@|@\\\\$)\\\"\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.cs\"}},\"end\":\"\\\"(?=[^\\\"])\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.cs\"}},\"name\":\"string.quoted.double.cs\",\"patterns\":[{\"include\":\"#verbatim-string-character-escape\"},{\"include\":\"#interpolation\"}]},\"verbatim-string-character-escape\":{\"match\":\"\\\"\\\"\",\"name\":\"constant.character.escape.cs\"},\"verbatim-string-literal\":{\"begin\":\"@\\\"\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.cs\"}},\"end\":\"\\\"(?=[^\\\"])\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.cs\"}},\"name\":\"string.quoted.double.cs\",\"patterns\":[{\"include\":\"#verbatim-string-character-escape\"}]},\"when-clause\":{\"begin\":\"(?<!\\\\.)\\\\b(when)\\\\b\\\\s*(\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.exception.when.cs\"},\"2\":{\"name\":\"punctuation.parenthesis.open.cs\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.close.cs\"}},\"patterns\":[{\"include\":\"#expression\"},{\"include\":\"#comment\"}]},\"where-clause\":{\"begin\":\"\\\\b(where)\\\\b\\\\s*\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.operator.expression.query.where.cs\"}},\"end\":\"(?=[);])\",\"patterns\":[{\"include\":\"#query-body\"},{\"include\":\"#expression\"}]},\"while-statement\":{\"begin\":\"(?<!\\\\.)\\\\b(while)\\\\b\\\\s*(?=\\\\()\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.loop.while.cs\"}},\"end\":\"(?<=})|(?=;)\",\"patterns\":[{\"begin\":\"\\\\(\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.open.cs\"}},\"end\":\"\\\\)\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.parenthesis.close.cs\"}},\"patterns\":[{\"include\":\"#expression\"}]},{\"include\":\"#statement\"}]},\"with-expression\":{\"begin\":\"(?<!\\\\.)\\\\b(with)\\\\b\\\\s*(?=\\\\{|//|/\\\\*|$)\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.operator.expression.with.cs\"}},\"end\":\"(?<=})\",\"patterns\":[{\"include\":\"#comment\"},{\"include\":\"#initializer-expression\"}]},\"xml-attribute\":{\"patterns\":[{\"captures\":{\"1\":{\"name\":\"entity.other.attribute-name.cs\"},\"2\":{\"name\":\"entity.other.attribute-name.namespace.cs\"},\"3\":{\"name\":\"punctuation.separator.colon.cs\"},\"4\":{\"name\":\"entity.other.attribute-name.localname.cs\"},\"5\":{\"name\":\"punctuation.separator.equals.cs\"}},\"match\":\"(?:^|\\\\s+)((?:([-_[:alnum:]]+)(:))?([-_[:alnum:]]+))(=)\"},{\"include\":\"#xml-string\"}]},\"xml-cdata\":{\"begin\":\"<!\\\\[CDATA\\\\[\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.cs\"}},\"end\":\"]]>\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.cs\"}},\"name\":\"string.unquoted.cdata.cs\"},\"xml-character-entity\":{\"patterns\":[{\"captures\":{\"1\":{\"name\":\"punctuation.definition.constant.cs\"},\"3\":{\"name\":\"punctuation.definition.constant.cs\"}},\"match\":\"(&)([:_[:alpha:]][-.:_[:alnum:]]*|#\\\\d+|#x\\\\h+)(;)\",\"name\":\"constant.character.entity.cs\"},{\"match\":\"&\",\"name\":\"invalid.illegal.bad-ampersand.cs\"}]},\"xml-comment\":{\"begin\":\"<!--\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.comment.cs\"}},\"end\":\"-->\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.comment.cs\"}},\"name\":\"comment.block.cs\"},\"xml-doc-comment\":{\"patterns\":[{\"include\":\"#xml-comment\"},{\"include\":\"#xml-character-entity\"},{\"include\":\"#xml-cdata\"},{\"include\":\"#xml-tag\"}]},\"xml-string\":{\"patterns\":[{\"begin\":\"'\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.cs\"}},\"end\":\"'\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.cs\"}},\"name\":\"string.quoted.single.cs\",\"patterns\":[{\"include\":\"#xml-character-entity\"}]},{\"begin\":\"\\\"\",\"beginCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.begin.cs\"}},\"end\":\"\\\"\",\"endCaptures\":{\"0\":{\"name\":\"punctuation.definition.string.end.cs\"}},\"name\":\"string.quoted.double.cs\",\"patterns\":[{\"include\":\"#xml-character-entity\"}]}]},\"xml-tag\":{\"begin\":\"(</?)((?:([-_[:alnum:]]+)(:))?([-_[:alnum:]]+))\",\"beginCaptures\":{\"1\":{\"name\":\"punctuation.definition.tag.cs\"},\"2\":{\"name\":\"entity.name.tag.cs\"},\"3\":{\"name\":\"entity.name.tag.namespace.cs\"},\"4\":{\"name\":\"punctuation.separator.colon.cs\"},\"5\":{\"name\":\"entity.name.tag.localname.cs\"}},\"end\":\"(/?>)\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.definition.tag.cs\"}},\"name\":\"meta.tag.cs\",\"patterns\":[{\"include\":\"#xml-attribute\"}]},\"yield-break-statement\":{\"captures\":{\"1\":{\"name\":\"keyword.control.flow.yield.cs\"},\"2\":{\"name\":\"keyword.control.flow.break.cs\"}},\"match\":\"(?<!\\\\.)\\\\b(yield)\\\\b\\\\s*\\\\b(break)\\\\b\"},\"yield-return-statement\":{\"begin\":\"(?<!\\\\.)\\\\b(yield)\\\\b\\\\s*\\\\b(return)\\\\b\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.flow.yield.cs\"},\"2\":{\"name\":\"keyword.control.flow.return.cs\"}},\"end\":\"(?=[;}])\",\"patterns\":[{\"include\":\"#expression\"}]},\"yield-statement\":{\"patterns\":[{\"include\":\"#yield-return-statement\"},{\"include\":\"#yield-break-statement\"}]}},\"scopeName\":\"source.cs\",\"aliases\":[\"c#\",\"cs\"]}"))];
2
+ export { csharp_default as default };